{
  "version": 3,
  "sources": ["/cdn/shop/t/11/assets/adpapper-option-panel.js?adpver=20260527-2"],
  "sourcesContent": ["(() => {\r\n  const ROOT_SELECTOR = '[data-adpapper-option-panel]';\r\n  const PANEL_INIT_FLAG = 'adpapperPanelReady';\r\n\r\n  const PRINT_COLORS = ['\u9ED2\u8272', '\u7DD1\u8272', '\u91D1\u8D64\u8272', '\u9752\u8272', '\u7D3A\u8272', '\u30D4\u30F3\u30AF'];\r\n  const PAPER_COLORS = ['\u767D\u8272', '\u30D4\u30F3\u30AF', '\u30D6\u30EB\u30FC', '\u30A4\u30A8\u30ED\u30FC', '\u30B0\u30EA\u30FC\u30F3'];\r\n\r\n  const MODE_OPTIONS = [\r\n    { value: 'overall', label: '\u5168\u4F53\u30DA\u30FC\u30B8\u8272\u6570\u8A2D\u5B9A' },\r\n    { value: 'page', label: '\u30DA\u30FC\u30B8\u5225\u8272\u6570\u8A2D\u5B9A' }\r\n  ];\r\n\r\n  const OVERALL_PRINT_OPTIONS = [\r\n    { value: 'single_1', label: '\u7247\u97621\u8272' },\r\n    { value: 'single_2', label: '\u7247\u97622\u8272' },\r\n    { value: 'double_1', label: '\u4E21\u97621\u8272' },\r\n    { value: 'double_2', label: '\u4E21\u97622\u8272' }\r\n  ];\r\n\r\n  const getAddonPreset = (label) => {\r\n    switch (label) {\r\n      case '\u3054\u5165\u7A3F\u30C7\u30B6\u30A4\u30F3\u6570(\u30AA\u30E2\u30C6)':\r\n        return { includeBlank: false, blankLabel: '', defaultValue: '1\u3064\u306E\u30C7\u30B6\u30A4\u30F3' };\r\n      case '\u8868\u7D19\u4ED8\u3051/\u88FD\u672C\u30C6\u30FC\u30D7':\r\n        return { includeBlank: false, blankLabel: '', defaultValue: 'A) \u57FA\u672C\uFF08\u8868\u7D19\u4ED8\u3051\u306A\u3057\uFF09' };\r\n      case '\u7A74\u3042\u3051 \u9078\u629E':\r\n      case '\u30CA\u30F3\u30D0\u30EA\u30F3\u30B0 \u9078\u629E (\u6841 & \u8272)':\r\n      case '\u30DB\u30C1\u30AD\u30B9\u6B62\u3081 \u52A0\u5DE5':\r\n      case '\u30DF\u30B7\u30F3\u52A0\u5DE5 (\u4F8B)2\u679A\u8907\u5199\u30012\u679A\u3068\u3082\u30DF\u30B7\u30F3\u52A0\u5DE5\u2192\u300E2\u7B87\u6240\u300F \u203B\u30DF\u30B7\u30F3\u4F4D\u7F6E\u306F\u8A18\u8F09\u3057\u3066\u304F\u3060\u3055\u3044':\r\n      case '\u7528\u7D19\u306E\u539A\u3055\u5909\u66F4':\r\n      case '\u30BB\u30C3\u30C8\u7CCA\u52A0\u5DE5':\r\n      case '\u7DB4\u3058\u65B9':\r\n        return { includeBlank: true, blankLabel: '\u306A\u3057', defaultValue: '' };\r\n      default:\r\n        return { includeBlank: true, blankLabel: '\u306A\u3057', defaultValue: '' };\r\n    }\r\n  };\r\n\r\n  const ADDON_LABEL_MAP = {\r\n    'after:BIND_TYPE': '\u7DB4\u3058\u65B9',\r\n    'after:BIND_WAY': '\u7DB4\u3058\u65B9',\r\n    'after:DESIGN_SUM': '\u3054\u5165\u7A3F\u30C7\u30B6\u30A4\u30F3\u6570(\u30AA\u30E2\u30C6)',\r\n    'after:DESIGN_SUM_2': '\u3054\u5165\u7A3F\u30C7\u30B6\u30A4\u30F3\u6570(\u30AA\u30E2\u30C6)',\r\n    'after:DESIGN_SUM_3': '\u3054\u5165\u7A3F\u30C7\u30B6\u30A4\u30F3\u6570(\u30AA\u30E2\u30C6)',\r\n    'after:DESIGN_SUM_4': '\u3054\u5165\u7A3F\u30C7\u30B6\u30A4\u30F3\u6570(\u30AA\u30E2\u30C6)',\r\n    'after:COVERTAPE2': '\u8868\u7D19\u4ED8\u3051/\u88FD\u672C\u30C6\u30FC\u30D7',\r\n    'after:MAKEHOLE': '\u7A74\u3042\u3051 \u9078\u629E',\r\n    'after:NUMBER_OPTION': '\u30CA\u30F3\u30D0\u30EA\u30F3\u30B0 \u9078\u629E (\u6841 & \u8272)',\r\n    'after:NUMBER_OPTION_R4': '\u30CA\u30F3\u30D0\u30EA\u30F3\u30B0 \u9078\u629E (\u6841 & \u8272)',\r\n    'after:STAPLER': '\u30DB\u30C1\u30AD\u30B9\u6B62\u3081 \u52A0\u5DE5',\r\n    'after:TICKET': '\u30DF\u30B7\u30F3\u52A0\u5DE5 (\u4F8B)2\u679A\u8907\u5199\u30012\u679A\u3068\u3082\u30DF\u30B7\u30F3\u52A0\u5DE5\u2192\u300E2\u7B87\u6240\u300F \u203B\u30DF\u30B7\u30F3\u4F4D\u7F6E\u306F\u8A18\u8F09\u3057\u3066\u304F\u3060\u3055\u3044',\r\n    'after:HEAVY_PAPER_A4': '\u7528\u7D19\u306E\u539A\u3055\u5909\u66F4',\r\n    'after:HEAVY_PAPER_A5': '\u7528\u7D19\u306E\u539A\u3055\u5909\u66F4',\r\n    'after:HEAVY_PAPER_B5': '\u7528\u7D19\u306E\u539A\u3055\u5909\u66F4',\r\n    'after:HEAVY_PAPER_B6': '\u7528\u7D19\u306E\u539A\u3055\u5909\u66F4',\r\n    'after:BIND_SET_2': '\u30BB\u30C3\u30C8\u7CCA\u52A0\u5DE5',\r\n    'after:BIND_SET_3': '\u30BB\u30C3\u30C8\u7CCA\u52A0\u5DE5',\r\n    'after:BIND_SET_4': '\u30BB\u30C3\u30C8\u7CCA\u52A0\u5DE5'\r\n  };\r\n\r\n  const ADDON_ORDER = {\r\n    '\u7DB4\u3058\u65B9': 10,\r\n    '\u3054\u5165\u7A3F\u30C7\u30B6\u30A4\u30F3\u6570(\u30AA\u30E2\u30C6)': 20,\r\n    '\u8868\u7D19\u4ED8\u3051/\u88FD\u672C\u30C6\u30FC\u30D7': 30,\r\n    '\u7A74\u3042\u3051 \u9078\u629E': 40,\r\n    '\u30CA\u30F3\u30D0\u30EA\u30F3\u30B0 \u9078\u629E (\u6841 & \u8272)': 50,\r\n    '\u30DB\u30C1\u30AD\u30B9\u6B62\u3081 \u52A0\u5DE5': 60,\r\n    '\u30DF\u30B7\u30F3\u52A0\u5DE5 (\u4F8B)2\u679A\u8907\u5199\u30012\u679A\u3068\u3082\u30DF\u30B7\u30F3\u52A0\u5DE5\u2192\u300E2\u7B87\u6240\u300F \u203B\u30DF\u30B7\u30F3\u4F4D\u7F6E\u306F\u8A18\u8F09\u3057\u3066\u304F\u3060\u3055\u3044': 70,\r\n    '\u7528\u7D19\u306E\u539A\u3055\u5909\u66F4': 80,\r\n    '\u30BB\u30C3\u30C8\u7CCA\u52A0\u5DE5': 90\r\n  };\r\n\r\n  const normalizeText = (value) => String(value || '').replace(/\\s+/g, ' ').trim();\r\n\r\n  const escapeHtml = (value) => String(value || '')\r\n    .replace(/&/g, '&amp;')\r\n    .replace(/</g, '&lt;')\r\n    .replace(/>/g, '&gt;')\r\n    .replace(/\"/g, '&quot;')\r\n    .replace(/'/g, '&#39;');\r\n\r\n  const parseLines = (text) =>\r\n    String(text || '')\r\n      .split(/\\r?\\n/)\r\n      .map((line) => line.trim())\r\n      .filter(Boolean);\r\n\r\n  const parseGroupedMap = (text) => {\r\n    const groups = new Map();\r\n\r\n    parseLines(text).forEach((line) => {\r\n      const index = line.indexOf('=');\r\n      if (index < 0) return;\r\n\r\n      const key = line.slice(0, index).trim();\r\n      const tableId = line.slice(index + 1).trim();\r\n      const parts = key.split('|');\r\n      const controlName = normalizeText(parts[0] || '');\r\n      const optionText = normalizeText(parts.slice(1).join('|'));\r\n      if (!controlName) return;\r\n\r\n      if (!groups.has(controlName)) groups.set(controlName, []);\r\n      groups.get(controlName).push({ controlName, optionText, tableId });\r\n    });\r\n\r\n    return groups;\r\n  };\r\n\r\n  const parseDeltaTable = (text) => {\r\n    const table = new Map();\r\n\r\n    parseLines(text).forEach((line) => {\r\n      const index = line.indexOf('=');\r\n      if (index < 0) return;\r\n\r\n      const key = line.slice(0, index).trim();\r\n      const raw = line.slice(index + 1).trim();\r\n      if (!key) return;\r\n\r\n      const nums = raw.split('|').map((part) => {\r\n        const cleaned = String(part || '').replace(/[^\\d.-]/g, '');\r\n        const num = Number(cleaned);\r\n        return Number.isFinite(num) ? num : null;\r\n      });\r\n\r\n      table.set(key, nums);\r\n    });\r\n\r\n    return table;\r\n  };\r\n\r\n  const readJsonScript = (id) => {\r\n    const el = document.getElementById(id);\r\n    if (!el) return null;\r\n    try {\r\n      return JSON.parse(el.textContent || 'null');\r\n    } catch (_) {\r\n      return null;\r\n    }\r\n  };\r\n\r\n  const buildMoneyFormatter = (engine) => {\r\n    try {\r\n      return new Intl.NumberFormat(engine.localeCode || 'ja', {\r\n        style: 'currency',\r\n        currency: engine.currencyCode || 'JPY',\r\n        maximumFractionDigits: 0\r\n      });\r\n    } catch (_) {\r\n      return new Intl.NumberFormat('ja-JP', {\r\n        style: 'currency',\r\n        currency: 'JPY',\r\n        maximumFractionDigits: 0\r\n      });\r\n    }\r\n  };\r\n\r\n  const formatMoney = (formatter, amount) => {\r\n    const num = Number(amount);\r\n    if (!Number.isFinite(num)) return '';\r\n    return formatter.format(num);\r\n  };\r\n\r\n  const getVariantData = (sectionId) => readJsonScript(`EunchangProductVariants-${sectionId}`) || [];\r\n  const getOptionNames = (sectionId) => readJsonScript(`EunchangProductOptions-${sectionId}`) || [];\r\n\r\n  const detectPageFields = (groups) => {\r\n    const fields = [];\r\n\r\n    Array.from(groups.entries()).forEach(([controlName, items]) => {\r\n      const controlMatch = controlName.match(/BIG_(\\d)P_([A-Z]{2})/);\r\n      const pageNo = Number(controlMatch?.[1] || 999);\r\n      const suffix = String(controlMatch?.[2] || '');\r\n\r\n      let side = '';\r\n      if (suffix === 'AK') side = 'front';\r\n      if (suffix === 'BK' || suffix === 'BG') side = 'back';\r\n\r\n      if (!side) {\r\n        const textJoined = items.map((item) => normalizeText(item.optionText)).join(' ');\r\n        if (/(\\d)P\\(\u8868\\)/.test(textJoined)) side = 'front';\r\n        if (/(\\d)P\\(\u88CF\\)/.test(textJoined)) side = 'back';\r\n      }\r\n\r\n      if (!side || !Number.isFinite(pageNo)) return;\r\n\r\n      const sideCode = side === 'front' ? '1' : '2';\r\n      fields.push({\r\n        controlName,\r\n        pageNo,\r\n        side,\r\n        shortLabel: `${pageNo}-${sideCode}`,\r\n        fullLabel: `${pageNo}-${sideCode} ${pageNo}\u30DA\u30FC\u30B8(${side === 'front' ? '\u8868\u9762' : '\u88CF\u9762'})`,\r\n        items\r\n      });\r\n    });\r\n\r\n    fields.sort((a, b) => {\r\n      if (a.pageNo !== b.pageNo) return a.pageNo - b.pageNo;\r\n      return a.side === 'front' ? -1 : 1;\r\n    });\r\n\r\n    return fields;\r\n  };\r\n\r\n  const detectAddonFields = (groups) => {\r\n    const fields = [];\r\n\r\n    Array.from(groups.entries()).forEach(([controlName, items]) => {\r\n      const label = ADDON_LABEL_MAP[controlName] || controlName;\r\n      fields.push({ controlName, label, items });\r\n    });\r\n\r\n    fields.sort((a, b) => {\r\n      const orderA = ADDON_ORDER[a.label] ?? 999;\r\n      const orderB = ADDON_ORDER[b.label] ?? 999;\r\n      if (orderA !== orderB) return orderA - orderB;\r\n      return a.label.localeCompare(b.label, 'ja');\r\n    });\r\n    return fields;\r\n  };\r\n\r\n  const createRadioGroup = (name, options, selectedValue, className = '') => {\r\n    return `\r\n      <div class=\"adpapper-option-builder__radios ${className}\">\r\n        ${options.map((option, index) => {\r\n          const checked = String(option.value) === String(selectedValue) ? ' checked' : '';\r\n          const id = `${name}-${index}`;\r\n          return `\r\n            <label class=\"adpapper-option-builder__radio\" for=\"${escapeHtml(id)}\">\r\n              <input id=\"${escapeHtml(id)}\" type=\"radio\" name=\"${escapeHtml(name)}\" value=\"${escapeHtml(option.value)}\"${checked}>\r\n              <span>${escapeHtml(option.label)}</span>\r\n            </label>\r\n          `;\r\n        }).join('')}\r\n      </div>\r\n    `;\r\n  };\r\n\r\n  const qtyOptionsToRadio = (qtyBreaks) => qtyBreaks.map((qty) => ({ value: String(qty), label: `${qty}` }));\r\n\r\n  const buildBuilderMarkup = (ctx) => {\r\n    const qtyOptions = qtyOptionsToRadio(ctx.qtyBreaks);\r\n    const addonRows = ctx.addonFields.map((field) => {\r\n      const preset = getAddonPreset(field.label);\r\n      const options = [];\r\n      if (preset.includeBlank) {\r\n        options.push({ value: '', label: preset.blankLabel || '\u306A\u3057' });\r\n      }\r\n      options.push(...field.items.map((item) => ({\r\n        value: normalizeText(item.optionText),\r\n        label: normalizeText(item.optionText),\r\n        tableId: item.tableId\r\n      })));\r\n\r\n      return `\r\n        <div class=\"adpapper-option-builder__line adpapper-option-builder__line--strong\" data-addon-line=\"${escapeHtml(field.controlName)}\">\r\n          <div class=\"adpapper-option-builder__line-label\">${escapeHtml(field.label)}</div>\r\n          <div class=\"adpapper-option-builder__line-value\">\r\n            ${createRadioGroup(`addon-${field.controlName}`, options, preset.defaultValue, 'adpapper-option-builder__radios--row')}\r\n          </div>\r\n        </div>\r\n      `;\r\n    }).join('');\r\n\r\n    const pageRows = ctx.pageFields.map((field) => {\r\n      return `\r\n        <div class=\"adpapper-option-builder__page-item\" data-page-item=\"${escapeHtml(field.controlName)}\">\r\n          <div class=\"adpapper-option-builder__page-title\">${escapeHtml(field.shortLabel)}</div>\r\n          <div class=\"adpapper-option-builder__line\">\r\n            <div class=\"adpapper-option-builder__line-label\">\u8272\u6570</div>\r\n            <div class=\"adpapper-option-builder__line-value\">\r\n              ${createRadioGroup(`page-count-${field.controlName}`, [{ value: '1', label: '1\u8272' }, { value: '2', label: '2\u8272' }], '1', 'adpapper-option-builder__radios--row')}\r\n            </div>\r\n          </div>\r\n          <div class=\"adpapper-option-builder__line\" data-page-color-wrap=\"${escapeHtml(field.controlName)}-1\">\r\n            <div class=\"adpapper-option-builder__line-label\">\u82721</div>\r\n            <div class=\"adpapper-option-builder__line-value\">\r\n              ${createRadioGroup(`page-color-1-${field.controlName}`, PRINT_COLORS.map((color) => ({ value: color, label: color })), PRINT_COLORS[0], 'adpapper-option-builder__radios--row')}\r\n            </div>\r\n          </div>\r\n          <div class=\"adpapper-option-builder__line\" data-page-color-wrap=\"${escapeHtml(field.controlName)}-2\" hidden>\r\n            <div class=\"adpapper-option-builder__line-label\">\u82722</div>\r\n            <div class=\"adpapper-option-builder__line-value\">\r\n              ${createRadioGroup(`page-color-2-${field.controlName}`, PRINT_COLORS.map((color) => ({ value: color, label: color })), PRINT_COLORS[1], 'adpapper-option-builder__radios--row')}\r\n            </div>\r\n          </div>\r\n        </div>\r\n      `;\r\n    }).join('');\r\n\r\n    return `\r\n      <div class=\"adpapper-option-builder__section\">\r\n        <div class=\"adpapper-option-builder__title\">\u3054\u6CE8\u6587\u5185\u5BB9</div>\r\n\r\n        <div class=\"adpapper-option-builder__line\">\r\n          <div class=\"adpapper-option-builder__line-label\">\u6570\u91CF</div>\r\n          <div class=\"adpapper-option-builder__line-value\">\r\n            ${createRadioGroup('qty', qtyOptions, qtyOptions[0]?.value || '', 'adpapper-option-builder__radios--row')}\r\n          </div>\r\n        </div>\r\n\r\n        <div class=\"adpapper-option-builder__line adpapper-option-builder__line--strong\">\r\n          <div class=\"adpapper-option-builder__line-label\">\u5370\u5237\u8272\u6570\u8A2D\u5B9A</div>\r\n          <div class=\"adpapper-option-builder__line-value\">\r\n            ${createRadioGroup('print-setting-mode', MODE_OPTIONS, 'overall', 'adpapper-option-builder__radios--row')}\r\n          </div>\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"adpapper-option-builder__section\" data-mode-section=\"overall\" style=\"margin-top:0.4rem; padding-top:1rem;\">\r\n        <div class=\"adpapper-option-builder__line\">\r\n          <div class=\"adpapper-option-builder__line-label\">\u5168\u4F53\u30DA\u30FC\u30B8\u8272\u6570\u8A2D\u5B9A</div>\r\n          <div class=\"adpapper-option-builder__line-value\">\r\n            ${createRadioGroup('overall-print-mode', OVERALL_PRINT_OPTIONS, 'single_1', 'adpapper-option-builder__radios--row')}\r\n          </div>\r\n        </div>\r\n\r\n        <div class=\"adpapper-option-builder__line\" data-overall-color-wrap=\"front1\">\r\n          <div class=\"adpapper-option-builder__line-label\">\u88681\u8272</div>\r\n          <div class=\"adpapper-option-builder__line-value\">\r\n            ${createRadioGroup('overall-color-front1', PRINT_COLORS.map((color) => ({ value: color, label: color })), PRINT_COLORS[0], 'adpapper-option-builder__radios--row')}\r\n          </div>\r\n        </div>\r\n\r\n        <div class=\"adpapper-option-builder__line\" data-overall-color-wrap=\"front2\" hidden>\r\n          <div class=\"adpapper-option-builder__line-label\">\u88682\u8272</div>\r\n          <div class=\"adpapper-option-builder__line-value\">\r\n            ${createRadioGroup('overall-color-front2', PRINT_COLORS.map((color) => ({ value: color, label: color })), PRINT_COLORS[1], 'adpapper-option-builder__radios--row')}\r\n          </div>\r\n        </div>\r\n\r\n        <div class=\"adpapper-option-builder__line\" data-overall-color-wrap=\"back1\" hidden>\r\n          <div class=\"adpapper-option-builder__line-label\">\u88CF1\u8272</div>\r\n          <div class=\"adpapper-option-builder__line-value\">\r\n            ${createRadioGroup('overall-color-back1', PRINT_COLORS.map((color) => ({ value: color, label: color })), PRINT_COLORS[0], 'adpapper-option-builder__radios--row')}\r\n          </div>\r\n        </div>\r\n\r\n        <div class=\"adpapper-option-builder__line\" data-overall-color-wrap=\"back2\" hidden>\r\n          <div class=\"adpapper-option-builder__line-label\">\u88CF2\u8272</div>\r\n          <div class=\"adpapper-option-builder__line-value\">\r\n            ${createRadioGroup('overall-color-back2', PRINT_COLORS.map((color) => ({ value: color, label: color })), PRINT_COLORS[1], 'adpapper-option-builder__radios--row')}\r\n          </div>\r\n        </div>\r\n\r\n        <div class=\"adpapper-option-builder__paper-divider\"></div>\r\n        <div class=\"adpapper-option-builder__subheading\">\u4E0A\u4E2D\u4E0B \u7528\u7D19\u8272\u9078\u629E</div>\r\n\r\n        <div class=\"adpapper-option-builder__paper-block\">\r\n          <div class=\"adpapper-option-builder__line adpapper-option-builder__line--paper\">\r\n            <div class=\"adpapper-option-builder__line-label\">A(\u4E0A\u7D19)</div>\r\n            <div class=\"adpapper-option-builder__line-value\">\r\n              ${createRadioGroup('paper-A', PAPER_COLORS.map((color) => ({ value: color, label: color })), PAPER_COLORS[0], 'adpapper-option-builder__radios--row')}\r\n            </div>\r\n          </div>\r\n\r\n          <div class=\"adpapper-option-builder__line adpapper-option-builder__line--paper\">\r\n            <div class=\"adpapper-option-builder__line-label\">B(\u4E2D\u7D191)</div>\r\n            <div class=\"adpapper-option-builder__line-value\">\r\n              ${createRadioGroup('paper-B', PAPER_COLORS.map((color) => ({ value: color, label: color })), PAPER_COLORS[0], 'adpapper-option-builder__radios--row')}\r\n            </div>\r\n          </div>\r\n\r\n          <div class=\"adpapper-option-builder__line adpapper-option-builder__line--paper\">\r\n            <div class=\"adpapper-option-builder__line-label\">C(\u4E2D\u7D192)</div>\r\n            <div class=\"adpapper-option-builder__line-value\">\r\n              ${createRadioGroup('paper-C', PAPER_COLORS.map((color) => ({ value: color, label: color })), PAPER_COLORS[0], 'adpapper-option-builder__radios--row')}\r\n            </div>\r\n          </div>\r\n\r\n          <div class=\"adpapper-option-builder__line adpapper-option-builder__line--paper\">\r\n            <div class=\"adpapper-option-builder__line-label\">D(\u4E0B\u7D19)</div>\r\n            <div class=\"adpapper-option-builder__line-value\">\r\n              ${createRadioGroup('paper-D', PAPER_COLORS.map((color) => ({ value: color, label: color })), PAPER_COLORS[0], 'adpapper-option-builder__radios--row')}\r\n            </div>\r\n          </div>\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"adpapper-option-builder__section\" data-mode-section=\"page\" hidden>\r\n        <div class=\"adpapper-option-builder__section-title\">\u30DA\u30FC\u30B8\u5225\u8272\u6570\u8A2D\u5B9A</div>\r\n        <div class=\"adpapper-option-builder__page-list\">\r\n          ${pageRows}\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"adpapper-option-builder__section\">\r\n        <div class=\"adpapper-option-builder__section-title\">\u52A0\u5DE5\u30AA\u30D7\u30B7\u30E7\u30F3</div>\r\n        ${addonRows}\r\n      </div>\r\n\r\n      <p class=\"adpapper-option-builder__note\">\u203B \u5225\u9014\u304A\u898B\u7A4D\u308A\u306E\u9805\u76EE\u3092\u9078\u629E\u3057\u305F\u5834\u5408\u306E\u307F\u3001\u5408\u8A08\u91D1\u984D\u306F\u300C\u5225\u9014\u304A\u898B\u7A4D\u308A\u300D\u3068\u8868\u793A\u3055\u308C\u307E\u3059\u3002</p>\r\n    `;\r\n  };\r\n\r\n  const getSelectedValue = (root, name) => {\r\n    const checked = root.querySelector(`input[name=\"${CSS.escape(name)}\"]:checked`);\r\n    return normalizeText(checked?.value || '');\r\n  };\r\n\r\n  const syncModeVisibility = (ctx) => {\r\n    const mode = getSelectedValue(ctx.panel, 'print-setting-mode') || 'overall';\r\n    ctx.panel.querySelectorAll('[data-mode-section]').forEach((section) => {\r\n      section.hidden = section.dataset.modeSection !== mode;\r\n    });\r\n  };\r\n\r\n  const syncOverallColorVisibility = (ctx) => {\r\n    const overallMode = getSelectedValue(ctx.panel, 'overall-print-mode') || 'single_1';\r\n    const visibleMap = {\r\n      front1: true,\r\n      front2: overallMode === 'single_2' || overallMode === 'double_2',\r\n      back1: overallMode === 'double_1' || overallMode === 'double_2',\r\n      back2: overallMode === 'double_2'\r\n    };\r\n\r\n    Object.entries(visibleMap).forEach(([key, visible]) => {\r\n      const wrap = ctx.panel.querySelector(`[data-overall-color-wrap=\"${CSS.escape(key)}\"]`);\r\n      if (wrap) wrap.hidden = !visible;\r\n    });\r\n  };\r\n\r\n  const syncPageColorVisibility = (ctx) => {\r\n    ctx.pageFields.forEach((field) => {\r\n      const count = getSelectedValue(ctx.panel, `page-count-${field.controlName}`) || '1';\r\n      const wrap2 = ctx.panel.querySelector(`[data-page-color-wrap=\"${CSS.escape(field.controlName)}-2\"]`);\r\n      if (wrap2) wrap2.hidden = count !== '2';\r\n    });\r\n  };\r\n\r\n  const getQtyIndex = (ctx, qty) => ctx.qtyBreaks.findIndex((value) => Number(value) === Number(qty));\r\n\r\n  const findPageTableId = (field, colorCount) => {\r\n    const wanted = `_${colorCount}\u8272`;\r\n    const found = field.items.find((item) => normalizeText(item.optionText).endsWith(wanted));\r\n    return found?.tableId || '';\r\n  };\r\n\r\n  const collectPageSelections = (ctx) => {\r\n    const mode = getSelectedValue(ctx.panel, 'print-setting-mode') || 'overall';\r\n\r\n    if (mode === 'overall') {\r\n      const overallMode = getSelectedValue(ctx.panel, 'overall-print-mode') || 'single_1';\r\n      return ctx.pageFields.map((field) => {\r\n        let count = 1;\r\n        if (field.side === 'front') {\r\n          count = (overallMode === 'single_2' || overallMode === 'double_2') ? 2 : 1;\r\n        } else {\r\n          count = (overallMode === 'single_1' || overallMode === 'single_2') ? 0 : (overallMode === 'double_1' ? 1 : 2);\r\n        }\r\n        return { field, count };\r\n      });\r\n    }\r\n\r\n    return ctx.pageFields.map((field) => {\r\n      const count = Number(getSelectedValue(ctx.panel, `page-count-${field.controlName}`) || '1');\r\n      return { field, count };\r\n    });\r\n  };\r\n\r\n  const collectAddonSelections = (ctx) => {\r\n    return ctx.addonFields.map((field) => {\r\n      const value = getSelectedValue(ctx.panel, `addon-${field.controlName}`);\r\n      if (!value) return null;\r\n      const item = field.items.find((entry) => normalizeText(entry.optionText) === value);\r\n      return item ? { field, item, label: normalizeText(value).replace(/^A\\)\\s*\u57FA\u672C\uFF08\u8868\u7D19\u4ED8\u3051\u306A\u3057\uFF09$/, '\u306A\u3057') } : null;\r\n    }).filter(Boolean);\r\n  };\r\n\r\n  const resolveVariantByQtyAndTotal = (ctx, qty, total) => {\r\n    if (!Array.isArray(ctx.variants) || !ctx.variants.length) return null;\r\n    if (!Array.isArray(ctx.optionNames) || !ctx.optionNames.length) return null;\r\n\r\n    const qtyIndex = ctx.optionNames.findIndex((name) => normalizeText(name) === '\u6570\u91CF');\r\n    if (qtyIndex < 0) return null;\r\n\r\n    return ctx.variants.find((variant) => {\r\n      const options = Array.isArray(variant.options) ? variant.options : [];\r\n      const variantQty = String(options[qtyIndex] || variant[`option${qtyIndex + 1}`] || '');\r\n      const variantPrice = Number(variant.price);\r\n      return variantQty === String(qty) && variantPrice === Number(total);\r\n    }) || null;\r\n  };\r\n\r\n  const updateDisplayedPrice = (ctx, result) => {\r\n    const priceRoot = document.getElementById(`price-${ctx.sectionId}`);\r\n    if (!priceRoot) return;\r\n    const priceText = result.isEstimate ? '\u5225\u9014\u304A\u898B\u7A4D\u308A' : formatMoney(ctx.formatter, result.total);\r\n    priceRoot.querySelectorAll('.price-item, .price-item--regular, .price-item--sale, .money').forEach((el) => {\r\n      el.textContent = priceText;\r\n    });\r\n  };\r\n\r\n  const syncSummary = (ctx, result) => {\r\n    const summaryRoot = ctx.panel.querySelector('[data-eunchang-option-summary]');\r\n    if (!summaryRoot) return;\r\n\r\n    const optionSummaryEl = summaryRoot.querySelector('[data-option-summary]');\r\n    const totalPriceEl = summaryRoot.querySelector('[data-total-price]');\r\n\r\n    if (totalPriceEl) {\r\n      totalPriceEl.textContent = result.isEstimate ? '\u5225\u9014\u304A\u898B\u7A4D\u308A' : formatMoney(ctx.formatter, result.total);\r\n    }\r\n\r\n    const lines = [];\r\n    const qty = getSelectedValue(ctx.panel, 'qty');\r\n    if (qty) lines.push(`\u6570\u91CF\uFF1A${qty}`);\r\n\r\n    const mode = getSelectedValue(ctx.panel, 'print-setting-mode') || 'overall';\r\n    lines.push(`\u5370\u5237\u8272\u6570\u8A2D\u5B9A\uFF1A${mode === 'overall' ? '\u5168\u4F53\u30DA\u30FC\u30B8\u8272\u6570\u8A2D\u5B9A' : '\u30DA\u30FC\u30B8\u5225\u8272\u6570\u8A2D\u5B9A'}`);\r\n\r\n    if (mode === 'overall') {\r\n      const overallMode = getSelectedValue(ctx.panel, 'overall-print-mode') || 'single_1';\r\n      const modeLabel = OVERALL_PRINT_OPTIONS.find((item) => item.value === overallMode)?.label || overallMode;\r\n      lines.push(`\u5168\u4F53\u30DA\u30FC\u30B8\u8272\u6570\u8A2D\u5B9A\uFF1A${modeLabel}`);\r\n\r\n      ['front1', 'front2', 'back1', 'back2'].forEach((key) => {\r\n        const wrap = ctx.panel.querySelector(`[data-overall-color-wrap=\"${CSS.escape(key)}\"]`);\r\n        if (!wrap || wrap.hidden) return;\r\n        const map = { front1: '\u88681\u8272', front2: '\u88682\u8272', back1: '\u88CF1\u8272', back2: '\u88CF2\u8272' };\r\n        const value = getSelectedValue(ctx.panel, `overall-color-${key}`);\r\n        if (value) lines.push(`${map[key]}\uFF1A${value}`);\r\n      });\r\n\r\n      ['A', 'B', 'C', 'D'].forEach((key) => {\r\n        const value = getSelectedValue(ctx.panel, `paper-${key}`);\r\n        if (value) lines.push(`${key}\u7D19\u8272\uFF1A${value}`);\r\n      });\r\n    } else {\r\n      result.pageSelections.forEach(({ field, count }) => {\r\n        lines.push(`${field.shortLabel}\uFF1A${count}\u8272`);\r\n        const color1 = getSelectedValue(ctx.panel, `page-color-1-${field.controlName}`);\r\n        if (color1) lines.push(`${field.shortLabel} \u82721\uFF1A${color1}`);\r\n        if (count === 2) {\r\n          const color2 = getSelectedValue(ctx.panel, `page-color-2-${field.controlName}`);\r\n          if (color2) lines.push(`${field.shortLabel} \u82722\uFF1A${color2}`);\r\n        }\r\n      });\r\n    }\r\n\r\n    result.addonSelections.forEach((entry) => {\r\n      lines.push(`${entry.field.label}\uFF1A${entry.label}`);\r\n    });\r\n\r\n    if (result.discount) {\r\n      lines.push(`\u88FD\u4F5C\u4E8B\u4F8B\u5272\u5F15\uFF1A-${formatMoney(ctx.formatter, result.discount)}`);\r\n    }\r\n\r\n    optionSummaryEl.innerHTML = lines.length\r\n      ? `<div>${lines.map((line) => escapeHtml(line)).join(' / ')}</div>`\r\n      : '<div>\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002</div>';\r\n  };\r\n\r\n  const syncHiddenProperties = (ctx, result) => {\r\n    const form = document.getElementById(ctx.productFormId);\r\n    if (!form) return;\r\n\r\n    const ensureHidden = (name, value) => {\r\n      let input = form.querySelector(`input[name=\"${CSS.escape(name)}\"]`);\r\n      if (!input) {\r\n        input = document.createElement('input');\r\n        input.type = 'hidden';\r\n        input.name = name;\r\n        form.appendChild(input);\r\n      }\r\n      input.value = value;\r\n    };\r\n\r\n    const qty = getSelectedValue(ctx.panel, 'qty');\r\n    ensureHidden('properties[\u6570\u91CF]', qty);\r\n    ensureHidden('properties[_adpapper_total_price]', result.isEstimate ? 'ESTIMATE' : String(Math.round(result.total)));\r\n  };\r\n\r\n  const syncVariantId = (ctx, result) => {\r\n    const form = document.getElementById(ctx.productFormId);\r\n    if (!form) return;\r\n    const idInput = form.querySelector('input[name=\"id\"]');\r\n    if (!idInput) return;\r\n\r\n    if (result.matchedVariant?.id) {\r\n      idInput.value = String(result.matchedVariant.id);\r\n      document.dispatchEvent(new CustomEvent('variant:change', {\r\n        detail: { sectionId: ctx.sectionId, variant: result.matchedVariant }\r\n      }));\r\n    }\r\n  };\r\n\r\n  const buildPriceResult = (ctx) => {\r\n    const qty = Number(getSelectedValue(ctx.panel, 'qty') || 0);\r\n    const qtyIndex = getQtyIndex(ctx, qty);\r\n    const caseAgreeChecked = Boolean(document.querySelector(`#ProductInfo-${CSS.escape(String(ctx.sectionId))} [data-case-agree-checkbox]:checked`));\r\n\r\n    if (!qty || qtyIndex < 0 || !Number.isFinite(Number(ctx.basePrices[qtyIndex]))) {\r\n      return { isEstimate: true, total: null, subtotal: null, discount: 0, pageSelections: [], addonSelections: [], matchedVariant: null };\r\n    }\r\n\r\n    let subtotal = Number(ctx.basePrices[qtyIndex]) || 0;\r\n    const pageSelections = collectPageSelections(ctx);\r\n    const addonSelections = collectAddonSelections(ctx);\r\n\r\n    for (const entry of pageSelections) {\r\n      if (entry.field.side === 'front' && entry.count <= 1) continue;\r\n      if (entry.field.side === 'back' && entry.count <= 0) continue;\r\n\r\n      const tableId = findPageTableId(entry.field, entry.count);\r\n      const deltaRow = ctx.pagePrintDeltas.get(tableId);\r\n      const delta = Array.isArray(deltaRow) ? Number(deltaRow[qtyIndex]) : NaN;\r\n      if (!tableId || !Number.isFinite(delta)) {\r\n        return { isEstimate: true, total: null, subtotal, discount: 0, pageSelections, addonSelections, matchedVariant: null };\r\n      }\r\n      subtotal += delta;\r\n    }\r\n\r\n    for (const entry of addonSelections) {\r\n      if (!entry.item.tableId || entry.item.tableId === 'NONE') continue;\r\n      if (entry.item.tableId === 'ESTIMATE') {\r\n        return { isEstimate: true, total: null, subtotal, discount: 0, pageSelections, addonSelections, matchedVariant: null };\r\n      }\r\n\r\n      const deltaRow = ctx.addonDeltas.get(entry.item.tableId);\r\n      const delta = Array.isArray(deltaRow) ? Number(deltaRow[qtyIndex]) : NaN;\r\n      if (!Number.isFinite(delta)) {\r\n        return { isEstimate: true, total: null, subtotal, discount: 0, pageSelections, addonSelections, matchedVariant: null };\r\n      }\r\n\r\n      subtotal += delta;\r\n    }\r\n\r\n    const discount = caseAgreeChecked ? Number(ctx.engine.caseAgreeDiscount || 0) : 0;\r\n    const total = Math.max(0, subtotal - discount);\r\n    const matchedVariant = resolveVariantByQtyAndTotal(ctx, qty, total);\r\n\r\n    return {\r\n      isEstimate: false,\r\n      subtotal,\r\n      total,\r\n      discount,\r\n      pageSelections,\r\n      addonSelections,\r\n      matchedVariant\r\n    };\r\n  };\r\n\r\n  const moveActionsIntoPanel = (ctx) => {\r\n    const slot = ctx.panel.querySelector('[data-adpapper-actions-slot]');\r\n    if (!slot || slot.dataset.moved === 'true') return;\r\n\r\n    const infoRoot = document.getElementById(`ProductInfo-${ctx.sectionId}`);\r\n    if (!infoRoot) return;\r\n\r\n    const buyBottom = infoRoot.querySelector('.product__buy-buttons-bottom');\r\n    if (!buyBottom) return;\r\n\r\n    const selectors = [\r\n      '.product-template-download-box',\r\n      '.product-upload-box',\r\n      '[data-case-agree-root]',\r\n      '.eunchang-proxy-guide-btn',\r\n      'product-form',\r\n      '.product-form',\r\n      'pickup-availability',\r\n      '.product-cart-guide-note'\r\n    ];\r\n\r\n    selectors.forEach((selector) => {\r\n      buyBottom.querySelectorAll(selector).forEach((node) => {\r\n        if (node.closest('[data-adpapper-actions-slot]')) return;\r\n        slot.appendChild(node);\r\n      });\r\n    });\r\n\r\n    slot.dataset.moved = 'true';\r\n  };\r\n\r\n  const insertShippingInfoBox = (ctx) => {\r\n    const infoRoot = document.getElementById(`ProductInfo-${ctx.sectionId}`);\r\n    if (!infoRoot) return;\r\n\r\n    const estimateBox = infoRoot.querySelector('.eunchang-shipping-estimate');\r\n    if (!estimateBox) return;\r\n    if (infoRoot.querySelector('.adpapper-shipping-note-box')) return;\r\n\r\n    const box = document.createElement('div');\r\n    box.className = 'adpapper-shipping-note-box';\r\n    box.innerHTML = `\r\n      <div>- 1\u4E07\u5186\u4EE5\u4E0A\u3067\u9001\u6599\u7121\u6599\uFF01</div>\r\n      <div>\uFF08\u5730\u57DF\u306B\u3088\u308A\u4E2D\u7D99\u6599\u304C\u767A\u751F\u3059\u308B\u5834\u5408\u304C\u3054\u3056\u3044\u307E\u3059\u3002\uFF09</div>\r\n      <div>- \u30DB\u30FC\u30E0\u30DA\u30FC\u30B8\u306B\u3054\u5E0C\u671B\u6570\u91CF\u304C\u306A\u3044\u5834\u5408 \u2192 <a href=\"/pages/contact\">\u3053\u3061\u3089</a></div>\r\n      <div>\uFF08\u5C0F\u30ED\u30C3\u30C8\u30FB\u5927\u30ED\u30C3\u30C8\u5927\u6B53\u8FCE\uFF09</div>\r\n      <div>- \u7279\u6B8A\u52A0\u5DE5 \u2192 <a href=\"/pages/contact\">\u3053\u3061\u3089</a></div>\r\n      <div>\u203B\u30D5\u30EB\u30AB\u30E9\u30FC\u5370\u5237\u30FB\u6E1B\u611F\u52A0\u5DE5\uFF08\u4E00\u90E8\u8907\u5199\u3092\u9632\u3050\u52A0\u5DE5\uFF09\u30FB\u30BB\u30C3\u30C8\u7CCA\u52A0\u5DE5\u30FB\u4E0A\u7D1960N\u7B49\u3001\u3054\u5E0C\u671B\u306E\u52A0\u5DE5\u306F\u304A\u554F\u3044\u5408\u308F\u305B\u304F\u3060\u3055\u3044\u307E\u305B\uFF01</div>\r\n    `;\r\n    estimateBox.insertAdjacentElement('afterend', box);\r\n  };\r\n\r\n  const hideNativeVariantUI = (ctx) => {\r\n    const infoRoot = document.getElementById(`ProductInfo-${ctx.sectionId}`);\r\n    if (!infoRoot) return;\r\n\r\n    const hideNode = (node) => {\r\n      if (!node) return;\r\n      node.style.display = 'none';\r\n      node.setAttribute('aria-hidden', 'true');\r\n    };\r\n\r\n    const variantRoots = Array.from(infoRoot.querySelectorAll('variant-selects, variant-radios'));\r\n    variantRoots.forEach((root) => {\r\n      const text = normalizeText(root.textContent || '');\r\n      if (text.includes('\u6570\u91CF') || text.includes('\u4FA1\u683C\u30B3\u30FC\u30C9')) {\r\n        hideNode(root);\r\n      }\r\n\r\n      root.querySelectorAll('.product-form__input, fieldset, .product-form__buttons').forEach((wrapper) => {\r\n        const blockText = normalizeText(wrapper.textContent || '');\r\n        const hasTargetName = wrapper.querySelector('[name*=\"\u6570\u91CF\"], [name*=\"\u4FA1\u683C\u30B3\u30FC\u30C9\"], [value*=\"\u4FA1\u683C\u30B3\u30FC\u30C9\"]');\r\n        if (blockText.includes('\u6570\u91CF') || blockText.includes('\u4FA1\u683C\u30B3\u30FC\u30C9') || hasTargetName) {\r\n          hideNode(wrapper);\r\n        }\r\n      });\r\n    });\r\n\r\n    infoRoot.querySelectorAll('.product-form__input, .product-form__input--pill, .product-form__input--dropdown, .product-form__input--swatch, fieldset').forEach((wrapper) => {\r\n      const text = normalizeText(wrapper.textContent || '');\r\n      const hasTargetName = wrapper.querySelector('[name*=\"\u6570\u91CF\"], [name*=\"\u4FA1\u683C\u30B3\u30FC\u30C9\"], select[name*=\"\u6570\u91CF\"], select[name*=\"\u4FA1\u683C\u30B3\u30FC\u30C9\"]');\r\n      if (text.includes('\u6570\u91CF') || text.includes('\u4FA1\u683C\u30B3\u30FC\u30C9') || hasTargetName) {\r\n        hideNode(wrapper);\r\n      }\r\n    });\r\n  };\r\n\r\n  const refresh = (ctx) => {\r\n    syncModeVisibility(ctx);\r\n    syncOverallColorVisibility(ctx);\r\n    syncPageColorVisibility(ctx);\r\n\r\n    const result = buildPriceResult(ctx);\r\n    syncSummary(ctx, result);\r\n    syncHiddenProperties(ctx, result);\r\n    syncVariantId(ctx, result);\r\n    updateDisplayedPrice(ctx, result);\r\n  };\r\n\r\n  const bindEvents = (ctx) => {\r\n    ctx.panel.addEventListener('change', () => refresh(ctx));\r\n    document.addEventListener('change', (event) => {\r\n      if (event.target.closest(`#ProductInfo-${CSS.escape(String(ctx.sectionId))}`)?.matches('[data-case-agree-checkbox]')) {\r\n        refresh(ctx);\r\n      }\r\n    });\r\n  };\r\n\r\n  const buildContext = (panel) => {\r\n    const sectionId = panel.dataset.sectionId;\r\n    const productFormId = panel.dataset.formId || '';\r\n    const engine = readJsonScript(`AdpapperPriceEngineMeta-${sectionId}`);\r\n    if (!engine || !engine.enabled) return null;\r\n\r\n    const pageGroups = parseGroupedMap(engine.pagePrintMapText);\r\n    const addonGroups = parseGroupedMap(engine.addonOptionMapText);\r\n\r\n    return {\r\n      panel,\r\n      sectionId,\r\n      productFormId,\r\n      engine,\r\n      formatter: buildMoneyFormatter(engine),\r\n      qtyBreaks: Array.isArray(engine.qtyBreaks) ? engine.qtyBreaks.map((n) => Number(n)) : [],\r\n      basePrices: Array.isArray(engine.basePrices) ? engine.basePrices.map((n) => Number(n)) : [],\r\n      pageFields: detectPageFields(pageGroups),\r\n      addonFields: detectAddonFields(addonGroups),\r\n      pagePrintDeltas: parseDeltaTable(engine.pagePrintDeltasText),\r\n      addonDeltas: parseDeltaTable(engine.addonDeltasText),\r\n      variants: getVariantData(sectionId),\r\n      optionNames: getOptionNames(sectionId)\r\n    };\r\n  };\r\n\r\n  const initPanel = (panel) => {\r\n    if (panel[PANEL_INIT_FLAG]) return;\r\n    const ctx = buildContext(panel);\r\n    if (!ctx) return;\r\n\r\n    const builderRoot = panel.querySelector('[data-adpapper-option-builder]');\r\n    if (!builderRoot) return;\r\n\r\n    builderRoot.innerHTML = buildBuilderMarkup(ctx);\r\n    insertShippingInfoBox(ctx);\r\n    hideNativeVariantUI(ctx);\r\n    moveActionsIntoPanel(ctx);\r\n    bindEvents(ctx);\r\n    refresh(ctx);\r\n\r\n    panel[PANEL_INIT_FLAG] = true;\r\n  };\r\n\r\n  const boot = () => {\r\n    document.querySelectorAll(ROOT_SELECTOR).forEach(initPanel);\r\n  };\r\n\r\n  document.addEventListener('DOMContentLoaded', boot);\r\n  document.addEventListener('shopify:section:load', boot);\r\n})();\r\n"],
  "mappings": "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",
  "names": []
}
