/******/ (() => { // webpackBootstrap
/******/ 	"use strict";
/******/ 	var __webpack_modules__ = ({

/***/ "./src/classic-editor/index.js"
/*!*************************************!*\
  !*** ./src/classic-editor/index.js ***!
  \*************************************/
(__unused_webpack_module, __webpack_exports__, __webpack_require__) {

__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _style_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./style.css */ "./src/classic-editor/style.css");
/* harmony import */ var _shared_share_bar_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../shared/share-bar.css */ "./src/shared/share-bar.css");
/* harmony import */ var _open_review__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./open-review */ "./src/classic-editor/open-review.js");
/* harmony import */ var _shared_status_themes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../shared/status-themes */ "./src/shared/status-themes.js");
/* harmony import */ var _shared_is_publish_blocked__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../shared/is-publish-blocked */ "./src/shared/is-publish-blocked.js");
/* harmony import */ var _shared_publish_guard_ui__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../shared/publish-guard-ui */ "./src/shared/publish-guard-ui.js");
/* harmony import */ var _shared_share_bar_icons__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../shared/share-bar-icons */ "./src/shared/share-bar-icons.js");
/* harmony import */ var _shared_resolve_classic_root__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../shared/resolve-classic-root */ "./src/shared/resolve-classic-root.js");
/* harmony import */ var _shared_review_notice_dom__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../shared/review-notice-dom */ "./src/shared/review-notice-dom.js");









(function bootClassicEditor(attempt) {
  const {
    flowEW
  } = window;
  if (!flowEW) {
    return;
  }
  const root = (0,_shared_resolve_classic_root__WEBPACK_IMPORTED_MODULE_7__.resolveClassicRoot)();
  if (!root) {
    if (attempt < 150) {
      requestAnimationFrame(function () {
        bootClassicEditor(attempt + 1);
      });
    }
    return;
  }
  if (root.dataset.flowEwClassicReady === '1') {
    return;
  }
  root.dataset.flowEwClassicReady = '1';
  (function runClassicEditor(root) {
    const {
      restUrl,
      nonce,
      postId,
      currentUserId,
      currentUserCan,
      activeReview,
      reviewMandatory,
      reviewerMeta = 0,
      i18n
    } = flowEW;
    const STATUS_LABELS = {
      pending: i18n.statusPending,
      in_review: i18n.statusInReview,
      changes_requested: i18n.statusChangesReq,
      approved: i18n.statusApproved,
      open_review: i18n.statusOpenReview
    };
    // Palette lives in src/shared/status-themes.js — keep CSS/SCSS mirrors in sync.

    let review = activeReview;
    let loading = false;
    const $ = (sel, ctx) => (ctx || document).querySelector(sel);
    const submitBox = $('#submitdiv');
    const reviewBox = $('#flow-ew-review');
    if (submitBox && reviewBox && submitBox.nextElementSibling !== reviewBox) {
      submitBox.insertAdjacentElement('afterend', reviewBox);
    }
    function api(path, method) {
      return fetch(restUrl + path, {
        method: method || 'POST',
        credentials: 'same-origin',
        headers: {
          'Content-Type': 'application/json',
          'X-WP-Nonce': nonce
        }
      }).then(r => r.json());
    }
    function apiPost(path, body) {
      return fetch(restUrl + path, {
        method: 'POST',
        credentials: 'same-origin',
        headers: {
          'Content-Type': 'application/json',
          'X-WP-Nonce': nonce
        },
        body: body ? JSON.stringify(body) : undefined
      }).then(r => {
        if (!r.ok) {
          return r.json().then(e => Promise.reject(e));
        }
        if (r.status === 204) {
          return null;
        }
        return r.json();
      });
    }
    function setLoading(val) {
      loading = val;
      const spinner = $('#flow-ew-classic-spinner');
      if (spinner) {
        spinner.classList.toggle('is-active', val);
      }
      root.querySelectorAll('button, select, .flow-ew-reviewer-combobox__input').forEach(el => {
        el.disabled = val;
      });
    }
    function currentReviewerId() {
      const fromReview = Number(review?.reviewer_id || review?.reviewer && review.reviewer.id || 0);
      const fromMeta = Number(reviewerMeta || 0);
      return fromReview > 0 ? fromReview : fromMeta;
    }
    function isAlreadyPublished() {
      if (flowEW && flowEW.isPublished) {
        return true;
      }
      const orig = $('#original_post_status');
      return !!(orig && orig.value === 'publish');
    }
    function isPublishBlockedLocal() {
      return (0,_shared_is_publish_blocked__WEBPACK_IMPORTED_MODULE_4__.isPublishBlocked)({
        reviewMandatory,
        isPublished: isAlreadyPublished(),
        review,
        reviewerMeta
      });
    }
    function noticeState() {
      return {
        reviewMandatory,
        isPublished: isAlreadyPublished(),
        review,
        reviewerMeta,
        currentUserCan
      };
    }
    function refreshReviewNotices() {
      (0,_shared_review_notice_dom__WEBPACK_IMPORTED_MODULE_8__.ensureReviewNotices)(noticeState());
    }
    function syncReviewNoticeVisibilityLocal() {
      (0,_shared_review_notice_dom__WEBPACK_IMPORTED_MODULE_8__.syncReviewNoticeVisibility)(noticeState());
    }
    function getElementorEditorRoots() {
      return [document.getElementById('elementor-editor-wrapper-v2'), document.getElementById('elementor-editor-wrapper')].filter(Boolean);
    }
    function findElementorPublishButtons() {
      const seen = new Set();
      const list = [];
      const roots = getElementorEditorRoots();
      for (let r = 0; r < roots.length; r++) {
        const buttons = roots[r].querySelectorAll('button.MuiButton-root');
        for (let i = 0; i < buttons.length; i++) {
          const b = buttons[i];
          if (seen.has(b)) {
            continue;
          }
          const label = b.textContent.replace(/\s+/g, ' ').trim();
          if (/^(Publish|Submit)$/i.test(label)) {
            seen.add(b);
            list.push(b);
          }
        }
      }
      return list;
    }
    function setPublishGuardStyles(el, blocked) {
      (0,_shared_publish_guard_ui__WEBPACK_IMPORTED_MODULE_5__.applyPublishGuardControl)(el, blocked);
    }
    let publishGuardDebounce;
    let publishGuardObserver;
    function updatePublishGuard() {
      const blocked = isPublishBlockedLocal();
      refreshReviewNotices();
      syncReviewNoticeVisibilityLocal();
      const publishBtn = $('#publish');
      if (publishBtn) {
        setPublishGuardStyles(publishBtn, blocked);
      }
      findElementorPublishButtons().forEach(b => setPublishGuardStyles(b, blocked));
    }
    function schedulePublishGuard() {
      clearTimeout(publishGuardDebounce);
      publishGuardDebounce = setTimeout(updatePublishGuard, 80);
    }
    function setupElementorPublishGuardObserver() {
      if (publishGuardObserver) {
        return;
      }
      const roots = getElementorEditorRoots();
      if (!roots.length) {
        return;
      }
      publishGuardObserver = new MutationObserver(schedulePublishGuard);
      for (let i = 0; i < roots.length; i++) {
        publishGuardObserver.observe(roots[i], {
          childList: true,
          subtree: true
        });
      }
    }
    let publishGuardAttachAttempts = 0;
    function tryAttachElementorPublishGuardObserver() {
      setupElementorPublishGuardObserver();
      publishGuardAttachAttempts++;
      if (!publishGuardObserver && publishGuardAttachAttempts < 200) {
        requestAnimationFrame(tryAttachElementorPublishGuardObserver);
      }
    }
    tryAttachElementorPublishGuardObserver();
    window.addEventListener('resize', schedulePublishGuard);
    function applyStatusTheme(el, status) {
      const themeStyle = (0,_shared_status_themes__WEBPACK_IMPORTED_MODULE_3__.statusThemeStyle)(status);
      ['--flow-status-bg', '--flow-status-text', '--flow-status-border', '--flow-badge-color'].forEach(prop => {
        el.style.removeProperty(prop);
      });
      Object.entries(themeStyle).forEach(([prop, value]) => {
        el.style.setProperty(prop, value);
      });
    }
    function renderBadge() {
      const display = review && (review.display_status || review.status);
      const label = display ? STATUS_LABELS[display] || '' : '';
      const visible = !!display && !!label;
      const drawerRoot = root.closest('.flow-ew-elementor-drawer, .flow-ew-bricks-drawer, .flow-ew-breakdance-drawer, .flow-ew-avada-drawer, .flow-ew-beaver-drawer, .flow-ew-divi-drawer');
      const drawerSlot = drawerRoot ? drawerRoot.querySelector('.flow-ew-drawer-status') : $('.flow-ew-drawer-status');
      if (drawerSlot) {
        if (visible) {
          applyStatusTheme(drawerSlot, display);
          drawerSlot.setAttribute('data-status', display);
          drawerSlot.innerHTML = '<span class="flow-ew-classic__badge-dot"></span>' + escHtml(label);
          drawerSlot.removeAttribute('hidden');
        } else {
          drawerSlot.removeAttribute('data-status');
          drawerSlot.setAttribute('hidden', '');
          drawerSlot.innerHTML = '';
        }
        return;
      }

      // Strip any pre-existing body badge (older renders / cached pages).
      const existing = $('.flow-ew-classic__status', root);
      if (existing) {
        existing.remove();
      }
    }
    function renderNotice() {
      const existing = $('.flow-ew-classic__notice', root);
      if (existing) {
        existing.remove();
      }
    }
    function renderActions() {
      const container = root.querySelector('#flow-ew-classic-actions');
      if (!container) {
        return;
      }
      container.innerHTML = '';
      if (!review) {
        return;
      }
      const status = review.status;
      const reviewerId = Number(review.reviewer_id || review.reviewer && review.reviewer.id || 0);
      const isReviewer = reviewerId === currentUserId;
      const hasPending = !!review.has_pending_reviewers;
      if ((status === 'pending' || hasPending) && currentUserCan.assignReviewer) {
        container.appendChild(makeButton(i18n.sendForReview, 'send', 'button-primary', !reviewerId));
      }
      if (status === 'changes_requested' && !hasPending && currentUserId === Number(flowEW.postAuthorId || 0)) {
        container.appendChild(makeButton(i18n.resubmit, 'resubmit', 'button-primary'));
      }
      if (status === 'in_review' && isReviewer && currentUserCan.reviewPosts) {
        container.appendChild(makeButton(i18n.approve, 'approve', 'button-primary flow-ew-classic__btn--approve'));
        container.appendChild(makeButton(i18n.requestChanges, 'request-changes', 'flow-ew-classic__btn--changes'));
      }
    }
    function makeButton(text, action, cls, disabled) {
      const btn = document.createElement('button');
      btn.type = 'button';
      const isBeaver = root.classList.contains('flow-ew-classic--beaver');
      if (isBeaver) {
        btn.className = 'fl-builder-button flow-ew-classic__btn';
        if (action === 'send' || action === 'resubmit') {
          btn.classList.add('fl-builder-button-primary');
        }
        if (cls) {
          cls.split(/\s+/).forEach(function (part) {
            if (part && part !== 'button' && part !== 'button-primary') {
              btn.classList.add(part);
            }
          });
        }
      } else {
        btn.className = 'button flow-ew-classic__btn ' + (cls || '');
      }
      btn.dataset.action = action;
      btn.textContent = text;
      if (disabled) {
        btn.disabled = true;
      }
      return btn;
    }
    function renderShareBar() {
      const existing = $('#flow-ew-share');
      if (existing) {
        existing.remove();
      }
      if (!review || !review.revision_preview_url || review.status === 'pending' && !review.is_open) {
        return;
      }
      const url = review.revision_preview_url;
      const div = document.createElement('div');
      div.className = 'flow-ew-classic__share';
      div.id = 'flow-ew-share';
      div.innerHTML = '<span class="flow-ew-classic__share-label">' + escHtml(i18n.snapshotLink) + '</span>' + '<span class="flow-ew-classic__share-row">' + '<a href="' + escAttr(url) + '" target="_blank" rel="noreferrer" class="flow-ew-classic__share-link" title="' + escAttr(url) + '"><span class="flow-ew-classic__share-link-text">' + escHtml(url) + '</span></a>' + '<button type="button" class="button flow-ew-classic__share-copy" data-url="' + escAttr(url) + '">' + (0,_shared_share_bar_icons__WEBPACK_IMPORTED_MODULE_6__.shareBarIconHtml)('copy') + '</button>' + '<a href="' + escAttr(url) + '" target="_blank" rel="noreferrer" class="flow-ew-classic__share-goto" aria-label="' + escAttr(i18n.goToReview || 'Go to review') + '">' + (0,_shared_share_bar_icons__WEBPACK_IMPORTED_MODULE_6__.shareBarIconHtml)('external') + '</a>' + '</span>';
      const spinner = $('#flow-ew-classic-spinner');
      root.insertBefore(div, spinner);
    }
    function fullRender() {
      renderBadge();
      renderNotice();
      renderActions();
      renderShareBar();
      updatePublishGuard();
      updateSendEnabled();
      flowEW.activeReview = review;
      document.dispatchEvent(new CustomEvent('flow-ew:classic-render', {
        detail: {
          review
        }
      }));
    }
    document.addEventListener('flow-ew:set-review', function (e) {
      const next = e && e.detail ? e.detail.review : null;
      review = next || null;
      flowEW.activeReview = review;
      fullRender();
    });
    const clearBtn = root.querySelector('.flow-ew-reviewer-combobox__clear');
    function syncClearBtn() {
      if (!clearBtn) {
        return;
      }
      // REST `prepare_review` returns nested `reviewer.id`; the localized
      // `activeReview` payload uses flat `reviewer_id`. Read both.
      const rid = review ? Number(review.reviewer_id || review.reviewer && review.reviewer.id || 0) : 0;
      clearBtn.toggleAttribute('hidden', rid <= 0);
    }

    // Reviewer select
    const reviewerSelect = $('#flow-ew-reviewer-select');
    if (reviewerSelect) {
      reviewerSelect.addEventListener('change', function () {
        const newId = Number(this.value);
        if (!newId) {
          return;
        }
        setLoading(true);
        apiPost('/reviews', {
          post_id: postId,
          reviewer_id: newId
        }).then(data => {
          review = data;
          fullRender();
          syncClearBtn();
        }).catch(() => {}).finally(() => setLoading(false));
      });
    }
    if (clearBtn) {
      clearBtn.addEventListener('click', function () {
        if (loading || !review) {
          return;
        }
        setLoading(true);
        apiPost('/reviews/' + review.id + '/cancel').then(data => {
          review = data || null;
          if (reviewerSelect) {
            reviewerSelect.value = '';
          }
          const input = $('#flow-ew-reviewer-input');
          if (input) {
            input.value = '';
          }
          fullRender();
          syncClearBtn();
        }).catch(() => {}).finally(() => setLoading(false));
      });
    }
    const comboboxRoot = document.getElementById('flow-ew-reviewer-combobox');
    if (comboboxRoot && !document.getElementById('flow-ew-avada-drawer') && !document.getElementById('flow-ew-beaver-drawer') && !document.getElementById('flow-ew-divi-drawer')) {
      initReviewerCombobox(comboboxRoot);
    }
    function initReviewerCombobox(root) {
      const input = root.querySelector('.flow-ew-reviewer-combobox__input');
      const list = root.querySelector('.flow-ew-reviewer-combobox__list');
      const sel = root.querySelector('#flow-ew-reviewer-select');
      if (!input || !list || !sel) {
        return;
      }
      const options = Array.from(list.querySelectorAll('[role="option"]'));
      let activeIndex = -1;
      function setOpen(openList) {
        list.hidden = !openList;
        input.setAttribute('aria-expanded', openList ? 'true' : 'false');
      }
      function filterOptions(q) {
        const needle = (q || '').toLowerCase().trim();
        options.forEach(function (li) {
          const label = (li.dataset.label || li.textContent || '').toLowerCase().trim();
          const show = !needle || label.includes(needle);
          li.hidden = !show;
          li.style.display = show ? '' : 'none';
        });
      }
      function visibleOptions() {
        return options.filter(function (li) {
          return !li.hidden && li.style.display !== 'none';
        });
      }
      function chooseOption(li) {
        if (!li || li.hidden) {
          return;
        }
        const id = li.dataset.value;
        const label = li.dataset.label || li.textContent.trim();
        sel.value = id;
        input.value = label;
        setOpen(false);
        activeIndex = -1;
        sel.dispatchEvent(new Event('change', {
          bubbles: true
        }));
      }
      input.addEventListener('focus', function () {
        if (input.disabled) return;
        filterOptions(input.value);
        setOpen(true);
      });
      input.addEventListener('input', function () {
        if (input.disabled) return;
        filterOptions(input.value);
        setOpen(true);
        activeIndex = -1;
      });
      list.addEventListener('mousedown', function (e) {
        const li = e.target.closest('[role="option"]');
        if (li && !li.hidden) {
          e.preventDefault();
          chooseOption(li);
        }
      });
      document.addEventListener('click', function (e) {
        if (!root.contains(e.target)) {
          setOpen(false);
          activeIndex = -1;
        }
      });
      input.addEventListener('keydown', function (e) {
        if (input.disabled) return;
        const vis = visibleOptions();
        if (e.key === 'ArrowDown') {
          e.preventDefault();
          if (!list.hidden && vis.length) {
            activeIndex = Math.min(activeIndex + 1, vis.length - 1);
            vis[activeIndex].focus();
          } else {
            filterOptions(input.value);
            setOpen(true);
            activeIndex = 0;
            if (vis[0]) vis[0].focus();
          }
        } else if (e.key === 'ArrowUp') {
          e.preventDefault();
          if (!list.hidden && vis.length) {
            activeIndex = Math.max(activeIndex - 1, 0);
            vis[activeIndex].focus();
          }
        } else if (e.key === 'Enter') {
          const focused = list.querySelector('[role="option"]:focus');
          if (focused && !focused.hidden) {
            e.preventDefault();
            chooseOption(focused);
          }
        } else if (e.key === 'Escape') {
          setOpen(false);
          activeIndex = -1;
          input.focus();
        }
      });
    }
    function updateSendEnabled() {
      const sendBtn = root.querySelector('[data-action="send"]');
      if (!sendBtn) {
        return;
      }
      const sel = $('#flow-ew-reviewer-select');
      sendBtn.disabled = loading || !sel || !Number(sel.value);
    }
    function updatePostStatusDisplay(newStatus) {
      const hiddenStatus = $('#post_status');
      if (hiddenStatus) {
        hiddenStatus.value = newStatus;
      }
      const display = $('#post-status-display');
      if (display) {
        const map = {
          pending: i18n.statusPending,
          draft: 'Draft',
          publish: 'Published'
        };
        display.textContent = map[newStatus] || newStatus;
      }
    }
    function sendForReview() {
      if (!review || loading) {
        return;
      }
      setLoading(true);
      apiPost('/reviews/' + review.id + '/send').then(data => {
        if (data && data.id) {
          review = data;
        }
        if (!isAlreadyPublished()) {
          updatePostStatusDisplay('pending');
        }
        fullRender();
      }).catch(() => {}).finally(() => setLoading(false));
    }

    // Action buttons (delegated)
    root.addEventListener('click', function (e) {
      const btn = e.target.closest('[data-action]');
      if (!btn || loading || !review) {
        return;
      }
      const action = btn.dataset.action;
      if (action === 'send') {
        sendForReview();
        return;
      }
      const endpoint = '/reviews/' + review.id + '/' + action;
      setLoading(true);
      apiPost(endpoint).then(data => {
        if (data && data.id) {
          review = data;
        } else if (data && data.success) {
          const statusMap = {
            approve: 'approved',
            'request-changes': 'changes_requested',
            resubmit: 'in_review'
          };
          if (statusMap[action]) {
            review = {
              ...review,
              status: statusMap[action]
            };
          }
        }
        fullRender();
      }).catch(() => {}).finally(() => setLoading(false));
    });

    // Copy button (delegated)
    root.addEventListener('click', function (e) {
      const copyBtn = e.target.closest('.flow-ew-classic__share-copy');
      if (!copyBtn) {
        return;
      }
      const url = copyBtn.dataset.url;
      if (!url) {
        return;
      }
      navigator.clipboard.writeText(url).then(() => {
        copyBtn.innerHTML = (0,_shared_share_bar_icons__WEBPACK_IMPORTED_MODULE_6__.shareBarIconHtml)('copied');
        copyBtn.classList.add('flow-ew-classic__share-copy--done');
        setTimeout(() => {
          copyBtn.innerHTML = (0,_shared_share_bar_icons__WEBPACK_IMPORTED_MODULE_6__.shareBarIconHtml)('copy');
          copyBtn.classList.remove('flow-ew-classic__share-copy--done');
        }, 2000);
      });
    });

    // Reload review data after Classic Editor save (post_updated redirect)
    function reloadReview() {
      api('/reviews/' + postId, 'GET').then(data => {
        if (data && data.id) {
          review = data;
        } else {
          review = null;
        }
        fullRender();
      }).catch(() => {});
    }
    if (window.jQuery) {
      window.jQuery(document).on('heartbeat-tick.wp-refresh-nonces', function () {
        setTimeout(reloadReview, 500);
      });
    }

    // Allow external triggers (e.g. Elementor save) to reload review data.
    document.addEventListener('flow-ew:reload-review', function () {
      reloadReview();
    });

    // Normalize PHP-rendered markup (actions/share/button classes) on first boot.
    fullRender();
    syncClearBtn();
    function escHtml(str) {
      const d = document.createElement('div');
      d.textContent = str;
      return d.innerHTML;
    }
    function escAttr(str) {
      return str.replace(/&/g, '&amp;').replace(/"/g, '&quot;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
    }
  })(root);
})(0);

/***/ },

/***/ "./src/classic-editor/open-review.js"
/*!*******************************************!*\
  !*** ./src/classic-editor/open-review.js ***!
  \*******************************************/
(__unused_webpack_module, __webpack_exports__, __webpack_require__) {

__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _shared_resolve_classic_root__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../shared/resolve-classic-root */ "./src/shared/resolve-classic-root.js");
/**
 * Open Review checkbox for the Classic Editor metabox (also reused by the
 * Elementor and Bricks drawers, which render the same panel HTML and load this
 * companion bundle). Rendered above the reviewer field — toggling on
 * auto-creates a review with no reviewer assigned if one doesn't exist yet,
 * then opens it.
 */

(function bootOpenReview(attempt) {
  const {
    flowEW
  } = window;
  if (!flowEW) {
    return;
  }
  const slot = (0,_shared_resolve_classic_root__WEBPACK_IMPORTED_MODULE_0__.resolveClassicOpenSlot)();
  if (!slot) {
    if (attempt < 150) {
      requestAnimationFrame(function () {
        bootOpenReview(attempt + 1);
      });
    }
    return;
  }
  if (slot.dataset.flowEwOpenReviewReady === '1') {
    return;
  }
  slot.dataset.flowEwOpenReviewReady = '1';
  (function runOpenReview(slot) {
    if (!flowEW.currentUserCan?.assignReviewer) {
      return;
    }
    if (!flowEW.openReviewEnabled) {
      return;
    }
    const {
      restUrl,
      nonce,
      postId
    } = flowEW;
    let currentReview = flowEW.activeReview || null;
    let isOpen = !!(currentReview && currentReview.is_open);
    let loading = false;
    const wrapper = document.createElement('div');
    wrapper.className = 'flow-ew-classic-open';
    const row = document.createElement('label');
    row.className = 'flow-ew-classic-open__row';
    const checkbox = document.createElement('input');
    checkbox.type = 'checkbox';
    checkbox.checked = isOpen;
    const labelText = document.createElement('span');
    labelText.textContent = flowEW.i18n && flowEW.i18n.openLabel || 'Open review';
    row.appendChild(checkbox);
    row.appendChild(labelText);
    const desc = document.createElement('p');
    desc.className = 'flow-ew-classic-open__desc';
    desc.textContent = flowEW.i18n && flowEW.i18n.openReviewDesc || '';
    wrapper.appendChild(row);
    if (desc.textContent) {
      wrapper.appendChild(desc);
    }

    // Extension slot for add-ons (e.g. Pro's "Open to public" sub-checkbox).
    const extras = document.createElement('div');
    extras.className = 'flow-ew-open-review-extras';
    wrapper.appendChild(extras);
    slot.appendChild(wrapper);
    function sync(review) {
      currentReview = review;
      isOpen = !!(review && review.is_open);
      checkbox.checked = isOpen;
    }
    function jsonRequest(url, body) {
      const opts = {
        method: 'POST',
        credentials: 'same-origin',
        headers: {
          'Content-Type': 'application/json',
          'X-WP-Nonce': nonce
        }
      };
      if (body !== undefined) {
        opts.body = JSON.stringify(body);
      }
      return fetch(url, opts).then(function (r) {
        if (!r.ok) {
          throw new Error('Failed');
        }
        return r.json();
      });
    }
    checkbox.addEventListener('change', function () {
      if (loading) {
        checkbox.checked = isOpen;
        return;
      }
      const wantOpen = checkbox.checked;
      loading = true;
      const ensureReview = currentReview ? Promise.resolve(currentReview) : jsonRequest(restUrl + '/reviews', {
        post_id: postId,
        reviewer_id: 0
      });
      ensureReview.then(function (review) {
        return jsonRequest(restUrl + '/reviews/' + review.id + '/' + (wantOpen ? 'open' : 'close'));
      }).then(function (data) {
        sync(data);
        flowEW.activeReview = data;
        document.dispatchEvent(new CustomEvent('flow-ew:set-review', {
          detail: {
            review: data
          }
        }));
      }).catch(function () {
        checkbox.checked = isOpen;
      }).finally(function () {
        loading = false;
      });
    });
    document.addEventListener('flow-ew:classic-render', function (e) {
      sync(e.detail && e.detail.review || null);
    });
  })(slot);
})(0);

/***/ },

/***/ "./src/shared/is-publish-blocked.js"
/*!******************************************!*\
  !*** ./src/shared/is-publish-blocked.js ***!
  \******************************************/
(__unused_webpack_module, __webpack_exports__, __webpack_require__) {

__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   isPublishBlocked: () => (/* binding */ isPublishBlocked)
/* harmony export */ });
/**
 * Mirrors PublishGuard / classic-editor publish blocking — show review
 * notices only while this returns true.
 *
 * @param {{
 *   reviewMandatory?: boolean,
 *   isPublished?: boolean,
 *   review?: object|null,
 *   reviewerMeta?: number,
 * }} args
 */
function isPublishBlocked({
  reviewMandatory,
  isPublished,
  review,
  reviewerMeta = 0
}) {
  if (!reviewMandatory || isPublished) {
    return false;
  }
  const fromReview = Number(review?.reviewer_id ?? review?.reviewer?.id ?? 0);
  const fromMeta = Number(reviewerMeta ?? 0);
  const reviewerId = fromReview > 0 ? fromReview : fromMeta;
  return !(review?.status === 'approved' && reviewerId > 0);
}

/***/ },

/***/ "./src/shared/publish-guard-ui.js"
/*!****************************************!*\
  !*** ./src/shared/publish-guard-ui.js ***!
  \****************************************/
(__unused_webpack_module, __webpack_exports__, __webpack_require__) {

__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   applyPublishGuardControl: () => (/* binding */ applyPublishGuardControl),
/* harmony export */   findBricksPublishControl: () => (/* binding */ findBricksPublishControl),
/* harmony export */   getPublishGuardTooltip: () => (/* binding */ getPublishGuardTooltip),
/* harmony export */   publishGuardTooltipTarget: () => (/* binding */ publishGuardTooltipTarget),
/* harmony export */   syncGutenbergPublishGuardTooltips: () => (/* binding */ syncGutenbergPublishGuardTooltips),
/* harmony export */   syncPublishGuardTooltip: () => (/* binding */ syncPublishGuardTooltip)
/* harmony export */ });
/**
 * Shared publish-guard UI helpers (opacity lock + hover tooltip).
 */

function getPublishGuardTooltip() {
  const i18n = window.flowEW?.i18n || {};
  return i18n.publishGuardTooltip || 'Post can go live only after approval by a reviewer.';
}

/**
 * @param {Element|null|undefined} el
 * @returns {Element|null}
 */
function publishGuardTooltipTarget(el) {
  if (!el || !el.closest) {
    return null;
  }
  if (el.id === 'publish') {
    return el.closest('#publishing-action') || el.parentElement || el;
  }
  const panelToggle = el.closest('.editor-post-publish-panel__toggle, .editor-post-schedule__panel-dropdown');
  if (panelToggle) {
    return panelToggle;
  }
  return el.parentElement || el;
}

/**
 * @param {Element|null|undefined} el
 * @param {boolean} blocked
 */
function applyPublishGuardControl(el, blocked) {
  if (!el) {
    return;
  }
  const hint = getPublishGuardTooltip();
  const tooltipEl = publishGuardTooltipTarget(el);
  if (blocked) {
    el.style.opacity = '0.4';
    el.style.pointerEvents = 'none';
    el.style.cursor = 'not-allowed';
    if (tooltipEl) {
      tooltipEl.setAttribute('title', hint);
      tooltipEl.style.cursor = 'not-allowed';
      tooltipEl.dataset.flowEwPublishGuardTooltip = '1';
    }
    return;
  }
  el.style.opacity = '';
  el.style.pointerEvents = '';
  el.style.cursor = '';
  if (tooltipEl?.dataset.flowEwPublishGuardTooltip === '1') {
    tooltipEl.removeAttribute('title');
    tooltipEl.style.cursor = '';
    delete tooltipEl.dataset.flowEwPublishGuardTooltip;
  }
}
const GUTENBERG_TOOLTIP_SELECTORS = ['.edit-post-header .editor-post-publish-panel__toggle', '.edit-post-header .editor-post-publish-button'];

/**
 * @param {boolean} blocked
 */
function syncGutenbergPublishGuardTooltips(blocked) {
  const hint = getPublishGuardTooltip();
  GUTENBERG_TOOLTIP_SELECTORS.forEach(selector => {
    document.querySelectorAll(selector).forEach(el => {
      if (blocked) {
        el.setAttribute('title', hint);
        el.style.cursor = 'not-allowed';
        el.dataset.flowEwPublishGuardTooltip = '1';
        return;
      }
      if (el.dataset.flowEwPublishGuardTooltip === '1') {
        el.removeAttribute('title');
        el.style.cursor = '';
        delete el.dataset.flowEwPublishGuardTooltip;
      }
    });
  });
}

/**
 * @param {Element|null|undefined} el
 * @param {boolean} blocked
 */
function syncPublishGuardTooltip(el, blocked) {
  if (!el) {
    return;
  }
  const hint = getPublishGuardTooltip();
  if (blocked) {
    el.setAttribute('title', hint);
    el.dataset.flowEwPublishGuardTooltip = '1';
    return;
  }
  if (el.dataset.flowEwPublishGuardTooltip === '1') {
    el.removeAttribute('title');
    delete el.dataset.flowEwPublishGuardTooltip;
  }
}

/** @returns {Element|null} */
function findBricksPublishControl() {
  return document.querySelector('#bricks-toolbar li:has([data-name="publish"])');
}

/***/ },

/***/ "./src/shared/resolve-classic-root.js"
/*!********************************************!*\
  !*** ./src/shared/resolve-classic-root.js ***!
  \********************************************/
(__unused_webpack_module, __webpack_exports__, __webpack_require__) {

__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   resolveClassicOpenSlot: () => (/* binding */ resolveClassicOpenSlot),
/* harmony export */   resolveClassicRoot: () => (/* binding */ resolveClassicRoot)
/* harmony export */ });
/**
 * Prefer the visible builder drawer panel over the Classic Editor metabox.
 * On `post.php?action=elementor` both can exist in the DOM with duplicate IDs.
 */
function resolveClassicRoot() {
  const builderSelectors = ['#flow-ew-elementor-drawer #flow-ew-classic', '#flow-ew-bricks-drawer #flow-ew-classic', '#flow-ew-breakdance-drawer #flow-ew-classic', '#flow-ew-avada-drawer #flow-ew-classic', '#flow-ew-beaver-drawer #flow-ew-classic', '#flow-ew-divi-drawer #flow-ew-classic'];
  for (let i = 0; i < builderSelectors.length; i++) {
    const el = document.querySelector(builderSelectors[i]);
    if (el) {
      return el;
    }
  }
  return document.getElementById('flow-ew-classic');
}
function resolveClassicOpenSlot() {
  const builderSelectors = ['#flow-ew-elementor-drawer #flow-ew-classic-open-slot', '#flow-ew-bricks-drawer #flow-ew-classic-open-slot', '#flow-ew-breakdance-drawer #flow-ew-classic-open-slot', '#flow-ew-avada-drawer #flow-ew-classic-open-slot', '#flow-ew-beaver-drawer #flow-ew-classic-open-slot', '#flow-ew-divi-drawer #flow-ew-classic-open-slot'];
  for (let i = 0; i < builderSelectors.length; i++) {
    const el = document.querySelector(builderSelectors[i]);
    if (el) {
      return el;
    }
  }
  return document.getElementById('flow-ew-classic-open-slot');
}

/***/ },

/***/ "./src/shared/review-notice-dom.js"
/*!*****************************************!*\
  !*** ./src/shared/review-notice-dom.js ***!
  \*****************************************/
(__unused_webpack_module, __webpack_exports__, __webpack_require__) {

__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   ensureReviewNotices: () => (/* binding */ ensureReviewNotices),
/* harmony export */   syncReviewNoticeVisibility: () => (/* binding */ syncReviewNoticeVisibility)
/* harmony export */ });
/* harmony import */ var _is_publish_blocked__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./is-publish-blocked */ "./src/shared/is-publish-blocked.js");
/* harmony import */ var _resolve_classic_root__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./resolve-classic-root */ "./src/shared/resolve-classic-root.js");


function escHtml(str) {
  const d = document.createElement('div');
  d.textContent = str;
  return d.innerHTML;
}
function collectClassicRoots() {
  const roots = [];
  const primary = (0,_resolve_classic_root__WEBPACK_IMPORTED_MODULE_1__.resolveClassicRoot)();
  if (primary) {
    roots.push(primary);
  }
  document.querySelectorAll('#flow-ew-classic').forEach(el => {
    if (!roots.includes(el)) {
      roots.push(el);
    }
  });
  return roots;
}

/**
 * Toggle publish-guard notices. Works on PHP-rendered and JS-fallback notices.
 */
function syncReviewNoticeVisibility(args) {
  const blocked = (0,_is_publish_blocked__WEBPACK_IMPORTED_MODULE_0__.isPublishBlocked)(args);
  document.querySelectorAll('.flow-ew-review-notice').forEach(el => {
    if (el.dataset.flowEwPublishGuardOnly === '1') {
      el.hidden = !blocked;
      return;
    }
    el.hidden = false;
  });
}
function buildNoticeSpec(flowEW, review, publishBlocked) {
  const i18n = flowEW.i18n || {};
  const noReviewers = !!flowEW.noReviewers;
  const reviewMandatory = !!flowEW.reviewMandatory;
  if (noReviewers && !reviewMandatory) {
    return {
      variant: 'in-review',
      role: 'alert',
      publishGuardOnly: false,
      title: i18n.noReviewRolesTitle || 'No Review Roles Assigned',
      descHtml: flowEW.reviewRolesHintHtml || ''
    };
  }
  if (!publishBlocked) {
    return null;
  }
  if (noReviewers) {
    const descParts = [i18n.reviewMandatoryDesc || i18n.publishGuardTooltip || 'Post can go live only after approval by a reviewer.'];
    if (flowEW.reviewRolesHintHtml) {
      descParts.push(flowEW.reviewRolesHintHtml);
    }
    return {
      variant: 'changes-requested',
      role: 'alert',
      publishGuardOnly: true,
      title: i18n.noReviewRolesTitle || 'No Review Roles Assigned',
      descHtml: descParts.join(' ')
    };
  }
  return {
    variant: 'in-review',
    role: 'note',
    publishGuardOnly: true,
    title: i18n.reviewMandatoryTitle || 'Review Mode set to Mandatory',
    descHtml: i18n.reviewMandatoryDesc || i18n.publishGuardTooltip || 'Post can go live only after approval by a reviewer.'
  };
}
function renderNoticeElement(spec) {
  const div = document.createElement('div');
  div.className = 'flow-ew-review-notice flow-ew-review-notice--' + spec.variant;
  div.setAttribute('role', spec.role);
  div.dataset.flowEwJsNotice = '1';
  if (spec.publishGuardOnly) {
    div.dataset.flowEwPublishGuardOnly = '1';
  }
  div.innerHTML = '<p class="flow-ew-review-notice__title">' + escHtml(spec.title) + '</p>' + '<p class="flow-ew-review-notice__desc">' + spec.descHtml + '</p>';
  return div;
}
function insertNotice(root, notice) {
  const anchor = root.querySelector('#flow-ew-classic-open-slot') || root.firstElementChild;
  if (anchor) {
    anchor.insertAdjacentElement('afterend', notice);
    return;
  }
  root.prepend(notice);
}

/**
 * Ensure review mode notices exist in builder/classic panels (SSR fallback).
 */
function ensureReviewNotices({
  review,
  reviewMandatory,
  reviewerMeta,
  isPublished,
  currentUserCan
}) {
  const flowEW = window.flowEW;
  if (!flowEW || !currentUserCan?.assignReviewer) {
    document.querySelectorAll('.flow-ew-review-notice[data-flow-ew-js-notice="1"]').forEach(el => el.remove());
    syncReviewNoticeVisibility({
      reviewMandatory,
      isPublished,
      review,
      reviewerMeta
    });
    return;
  }
  const publishBlocked = (0,_is_publish_blocked__WEBPACK_IMPORTED_MODULE_0__.isPublishBlocked)({
    reviewMandatory,
    isPublished,
    review,
    reviewerMeta
  });
  const spec = buildNoticeSpec(flowEW, review, publishBlocked);
  collectClassicRoots().forEach(root => {
    const jsNotice = root.querySelector('.flow-ew-review-notice[data-flow-ew-js-notice="1"]');
    const hasPhpNotice = root.querySelector('.flow-ew-review-notice:not([data-flow-ew-js-notice])');
    if (!spec) {
      if (jsNotice) {
        jsNotice.remove();
      }
      return;
    }
    if (hasPhpNotice) {
      if (jsNotice) {
        jsNotice.remove();
      }
      return;
    }
    if (jsNotice) {
      const next = renderNoticeElement(spec);
      jsNotice.replaceWith(next);
      return;
    }
    insertNotice(root, renderNoticeElement(spec));
  });
  syncReviewNoticeVisibility({
    reviewMandatory,
    isPublished,
    review,
    reviewerMeta
  });
}

/***/ },

/***/ "./src/shared/share-bar-icons.js"
/*!***************************************!*\
  !*** ./src/shared/share-bar-icons.js ***!
  \***************************************/
(__unused_webpack_module, __webpack_exports__, __webpack_require__) {

__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   ShareBarIcon: () => (/* binding */ ShareBarIcon),
/* harmony export */   shareBarIconHtml: () => (/* binding */ shareBarIconHtml)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-runtime */ "react/jsx-runtime");
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);

/** @typedef {'copy' | 'copied' | 'external'} ShareBarIconName */

const iconClass = 'flow-ew-share-icon';
const svgAttrs = ' viewBox="0 0 24 24" aria-hidden="true"';

/** Figma 24px Icon/regular-copy (Frame 38). */
const figmaCopyPath = 'M18 0H8C6.897 0 6 0.897 6 2V6H2C0.897 6 0 6.897 0 8V18C0 19.103 0.897 20 2 20H12C13.103 20 14 19.103 14 18V14H18C19.103 14 20 13.103 20 12V2C20 0.897 19.103 0 18 0ZM2 18V8H12L12.002 18H2ZM18 12H14V8C14 6.897 13.103 6 12 6H8V2H18V12Z';

/** Figma 24px Icon/regular-arrow-up-right-stroke (Frame 38). */
const figmaExternalPath = 'M9.71 9V0H0.71V2H6.3L0 8.29L1.42 9.71L7.71 3.41V9H9.71Z';

/**
 * @param {ShareBarIconName} name
 * @returns {string}
 */
function shareBarIconHtml(name) {
  if (name === 'copied') {
    return '<svg class="' + iconClass + ' flow-ew-share-icon--copied"' + svgAttrs + '>' + '<path fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M5 13l4 4L19 7"/>' + '</svg>';
  }
  if (name === 'external') {
    return '<svg class="' + iconClass + ' flow-ew-share-icon--external"' + svgAttrs + ' xmlns="http://www.w3.org/2000/svg">' + '<path fill="currentColor" d="' + figmaExternalPath + '" transform="translate(7.145 7.145)"/>' + '</svg>';
  }
  return '<svg class="' + iconClass + ' flow-ew-share-icon--copy"' + svgAttrs + ' xmlns="http://www.w3.org/2000/svg">' + '<path fill="currentColor" d="' + figmaCopyPath + '" transform="translate(2 2)"/>' + '</svg>';
}

/**
 * @param {ShareBarIconName} name
 */
function ShareBarIcon({
  name
}) {
  if (name === 'copied') {
    return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("svg", {
      className: `${iconClass} flow-ew-share-icon--copied`,
      viewBox: "0 0 24 24",
      "aria-hidden": "true",
      children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("path", {
        fill: "none",
        stroke: "currentColor",
        strokeWidth: "2",
        strokeLinecap: "round",
        strokeLinejoin: "round",
        d: "M5 13l4 4L19 7"
      })
    });
  }
  if (name === 'external') {
    return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("svg", {
      className: `${iconClass} flow-ew-share-icon--external`,
      viewBox: "0 0 24 24",
      "aria-hidden": "true",
      xmlns: "http://www.w3.org/2000/svg",
      children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("path", {
        fill: "currentColor",
        d: figmaExternalPath,
        transform: "translate(7.145 7.145)"
      })
    });
  }
  return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("svg", {
    className: `${iconClass} flow-ew-share-icon--copy`,
    viewBox: "0 0 24 24",
    "aria-hidden": "true",
    xmlns: "http://www.w3.org/2000/svg",
    children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("path", {
      fill: "currentColor",
      d: figmaCopyPath,
      transform: "translate(2 2)"
    })
  });
}

/***/ },

/***/ "./src/shared/status-themes.js"
/*!*************************************!*\
  !*** ./src/shared/status-themes.js ***!
  \*************************************/
(__unused_webpack_module, __webpack_exports__, __webpack_require__) {

__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   STATUS_COLORS: () => (/* binding */ STATUS_COLORS),
/* harmony export */   STATUS_THEMES: () => (/* binding */ STATUS_THEMES),
/* harmony export */   statusTextColor: () => (/* binding */ statusTextColor),
/* harmony export */   statusThemeStyle: () => (/* binding */ statusThemeStyle)
/* harmony export */ });
/**
 * Unified review status colors — single source of truth for JS surfaces.
 * Keep in sync with assets/css/status-themes.css and src/review-page/_tokens.scss.
 */
const STATUS_THEMES = {
  open_review: {
    bg: '#dff4ff',
    text: '#1579a5',
    border: '#b6e6ff'
  },
  approved: {
    bg: '#e7f5e4',
    text: '#458037',
    border: '#cae8c4'
  },
  in_review: {
    bg: '#fcf0ce',
    text: '#957500',
    border: '#f2dda4'
  },
  changes_requested: {
    bg: '#ffebea',
    text: '#c92122',
    border: '#ffd1d0'
  },
  pending: {
    bg: '#e6f3f5',
    text: '#5e777b',
    border: '#cde3e7'
  }
};

/** @param {string|undefined|null} status */
function statusThemeStyle(status) {
  const theme = status ? STATUS_THEMES[status] : null;
  if (!theme) {
    return {};
  }
  return {
    '--flow-status-bg': theme.bg,
    '--flow-status-text': theme.text,
    '--flow-status-border': theme.border,
    '--flow-badge-color': theme.text
  };
}

/** @param {string|undefined|null} status */
function statusTextColor(status) {
  return status && STATUS_THEMES[status]?.text || '#666';
}

/** Text colors only — backward compat for callers that only need the accent. */
const STATUS_COLORS = Object.fromEntries(Object.entries(STATUS_THEMES).map(([key, theme]) => [key, theme.text]));

/***/ },

/***/ "./src/classic-editor/style.css"
/*!**************************************!*\
  !*** ./src/classic-editor/style.css ***!
  \**************************************/
(__unused_webpack_module, __webpack_exports__, __webpack_require__) {

__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ },

/***/ "./src/shared/share-bar.css"
/*!**********************************!*\
  !*** ./src/shared/share-bar.css ***!
  \**********************************/
(__unused_webpack_module, __webpack_exports__, __webpack_require__) {

__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ },

/***/ "react/jsx-runtime"
/*!**********************************!*\
  !*** external "ReactJSXRuntime" ***!
  \**********************************/
(module) {

module.exports = window["ReactJSXRuntime"];

/***/ }

/******/ 	});
/************************************************************************/
/******/ 	// 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] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			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](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/******/ 	// expose the modules object (__webpack_modules__)
/******/ 	__webpack_require__.m = __webpack_modules__;
/******/ 	
/************************************************************************/
/******/ 	/* webpack/runtime/chunk loaded */
/******/ 	(() => {
/******/ 		var deferred = [];
/******/ 		__webpack_require__.O = (result, chunkIds, fn, priority) => {
/******/ 			if(chunkIds) {
/******/ 				priority = priority || 0;
/******/ 				for(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];
/******/ 				deferred[i] = [chunkIds, fn, priority];
/******/ 				return;
/******/ 			}
/******/ 			var notFulfilled = Infinity;
/******/ 			for (var i = 0; i < deferred.length; i++) {
/******/ 				var [chunkIds, fn, priority] = deferred[i];
/******/ 				var fulfilled = true;
/******/ 				for (var j = 0; j < chunkIds.length; j++) {
/******/ 					if ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {
/******/ 						chunkIds.splice(j--, 1);
/******/ 					} else {
/******/ 						fulfilled = false;
/******/ 						if(priority < notFulfilled) notFulfilled = priority;
/******/ 					}
/******/ 				}
/******/ 				if(fulfilled) {
/******/ 					deferred.splice(i--, 1)
/******/ 					var r = fn();
/******/ 					if (r !== undefined) result = r;
/******/ 				}
/******/ 			}
/******/ 			return result;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* 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/hasOwnProperty shorthand */
/******/ 	(() => {
/******/ 		__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ 	})();
/******/ 	
/******/ 	/* 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/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 = {
/******/ 			"classic-editor/index": 0,
/******/ 			"classic-editor/style-index": 0
/******/ 		};
/******/ 		
/******/ 		// no chunk on demand loading
/******/ 		
/******/ 		// no prefetching
/******/ 		
/******/ 		// no preloaded
/******/ 		
/******/ 		// no HMR
/******/ 		
/******/ 		// no HMR manifest
/******/ 		
/******/ 		__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);
/******/ 		
/******/ 		// 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;
/******/ 			}
/******/ 			return __webpack_require__.O(result);
/******/ 		}
/******/ 		
/******/ 		var chunkLoadingGlobal = globalThis["webpackChunkjumplinks_editorial_workflow"] = globalThis["webpackChunkjumplinks_editorial_workflow"] || [];
/******/ 		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 depends on other loaded chunks and execution need to be delayed
/******/ 	var __webpack_exports__ = __webpack_require__.O(undefined, ["classic-editor/style-index"], () => (__webpack_require__("./src/classic-editor/index.js")))
/******/ 	__webpack_exports__ = __webpack_require__.O(__webpack_exports__);
/******/ 	
/******/ })()
;
//# sourceMappingURL=index.js.map