payload-live-preview 2.1.2 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/README.md +191 -62
  2. package/dist/adapters/astro/index.d.ts +7 -7
  3. package/dist/adapters/astro/index.js +1 -1
  4. package/dist/adapters/astro/index.js.map +1 -1
  5. package/dist/adapters/astro/middleware-entry.d.ts +3 -3
  6. package/dist/adapters/astro/middleware-entry.js +1 -1
  7. package/dist/adapters/astro/middleware-entry.js.map +1 -1
  8. package/dist/adapters/nextjs/index.d.ts +2 -2
  9. package/dist/adapters/nextjs/index.js +1 -1
  10. package/dist/adapters/nextjs/index.js.map +1 -1
  11. package/dist/adapters/nuxt/index.d.ts +4 -4
  12. package/dist/adapters/nuxt/index.js +1 -1
  13. package/dist/adapters/nuxt/index.js.map +1 -1
  14. package/dist/adapters/nuxt/module.d.ts +1 -1
  15. package/dist/adapters/react/index.d.ts +2 -2
  16. package/dist/adapters/react/index.js +1 -1
  17. package/dist/adapters/react/index.js.map +1 -1
  18. package/dist/adapters/sveltekit/index.d.ts +5 -5
  19. package/dist/adapters/sveltekit/index.js +1 -1
  20. package/dist/adapters/sveltekit/index.js.map +1 -1
  21. package/dist/adapters/vue/index.d.ts +2 -2
  22. package/dist/adapters/vue/index.js +1 -1
  23. package/dist/adapters/vue/index.js.map +1 -1
  24. package/dist/annotate.d.ts +22 -15
  25. package/dist/annotate.js +1 -1
  26. package/dist/annotate.js.map +1 -1
  27. package/dist/client.cjs +1 -1
  28. package/dist/client.cjs.map +1 -1
  29. package/dist/client.d.cts +114 -114
  30. package/dist/client.d.ts +114 -114
  31. package/dist/client.js +1 -1
  32. package/dist/client.js.map +1 -1
  33. package/dist/codegen-cli.js +1 -1
  34. package/dist/codegen-cli.js.map +1 -1
  35. package/dist/codegen.cjs +1 -1
  36. package/dist/codegen.cjs.map +1 -1
  37. package/dist/codegen.d.cts +14 -16
  38. package/dist/codegen.d.ts +14 -16
  39. package/dist/codegen.js +1 -1
  40. package/dist/codegen.js.map +1 -1
  41. package/dist/core.cjs +1 -1
  42. package/dist/core.cjs.map +1 -1
  43. package/dist/core.d.cts +178 -172
  44. package/dist/core.d.ts +178 -172
  45. package/dist/core.js +1 -1
  46. package/dist/core.js.map +1 -1
  47. package/dist/doctor-cli.d.ts +1 -1
  48. package/dist/doctor-cli.js +1 -1
  49. package/dist/doctor-cli.js.map +1 -1
  50. package/dist/doctor.d.ts +15 -2
  51. package/dist/doctor.js +1 -1
  52. package/dist/doctor.js.map +1 -1
  53. package/dist/{document-session-DWi9H3Qk.d.ts → document-session-Bkd181PV.d.ts} +3 -2
  54. package/dist/{fragment-endpoint-B2qcRw5T.d.ts → fragment-endpoint-DGGLIijM.d.ts} +1 -1
  55. package/dist/fragment.cjs.map +1 -1
  56. package/dist/fragment.d.cts +3 -3
  57. package/dist/fragment.d.ts +3 -3
  58. package/dist/fragment.js.map +1 -1
  59. package/dist/index.cjs +1 -1
  60. package/dist/index.cjs.map +1 -1
  61. package/dist/index.d.cts +183 -177
  62. package/dist/index.d.ts +183 -177
  63. package/dist/index.js +1 -1
  64. package/dist/index.js.map +1 -1
  65. package/dist/lean.cjs +1 -1
  66. package/dist/lean.cjs.map +1 -1
  67. package/dist/lean.js +1 -1
  68. package/dist/lean.js.map +1 -1
  69. package/dist/lexical.cjs +1 -1
  70. package/dist/lexical.cjs.map +1 -1
  71. package/dist/lexical.js +1 -1
  72. package/dist/lexical.js.map +1 -1
  73. package/dist/{locals-B1mF3aTb.d.ts → locals-zz2gi9dj.d.ts} +1 -1
  74. package/dist/{middleware-BGobLN9P.d.ts → middleware-CI-UTf6R.d.ts} +2 -2
  75. package/dist/{options-Cm8fC7dj.d.ts → options-CnYybG51.d.ts} +8 -0
  76. package/dist/plugins.cjs +1 -1
  77. package/dist/plugins.cjs.map +1 -1
  78. package/dist/plugins.d.cts +3 -3
  79. package/dist/plugins.d.ts +3 -3
  80. package/dist/plugins.js +1 -1
  81. package/dist/plugins.js.map +1 -1
  82. package/dist/{probe-DGPDsnbj.d.ts → probe-D-IHg9dF.d.ts} +3 -3
  83. package/dist/structural.cjs +2 -2
  84. package/dist/structural.cjs.map +1 -1
  85. package/dist/structural.d.cts +27 -27
  86. package/dist/structural.d.ts +27 -27
  87. package/dist/structural.js +2 -2
  88. package/dist/structural.js.map +1 -1
  89. package/package.json +11 -6
@@ -87,11 +87,11 @@ declare const DIAGNOSTIC_CODES: Readonly<{
87
87
  readonly AuditFrameOptionsBlocks: "LP0703";
88
88
  /** Binding attributes are served to anonymous visitors. */
89
89
  readonly AuditBindingsExposed: "LP0704";
90
- /** More bindings than the default visibility gate will write eagerly. */
90
+ /** More bindings than the visibility gate will write eagerly. */
91
91
  readonly AuditGateThresholdExceeded: "LP0705";
92
92
  /** Owner markers exist, but some bindings are outside all of them. */
93
93
  readonly AuditUnownedBindings: "LP0706";
94
- /** The preview response carries no bindings at all. */
94
+ /** The preview response carries no bindings and no fragment boundary. */
95
95
  readonly AuditNoBindings: "LP0707";
96
96
  /** The URL did not return an HTML page, so nothing else can be judged. */
97
97
  readonly AuditNotAPage: "LP0708";
@@ -109,7 +109,7 @@ declare const DIAGNOSTIC_CODES: Readonly<{
109
109
  readonly FragmentStrategyUnavailable: "LP0806";
110
110
  /** A revision changed a field with no binding; `onUnfaithfulPatch` refreshed the route. */
111
111
  readonly UnboundChangeRefresh: "LP0807";
112
- /** `onUnfaithfulPatch: 'escalate'` found no route or fragment strategy to hand an unfaithful patch to; the page keeps it. */
112
+ /** `onUnfaithfulPatch: 'escalate'` found no route or fragment strategy, or no boundary, to hand an unfaithful patch to; the page keeps it. */
113
113
  readonly EscalationUnavailable: "LP0808";
114
114
  /** A fragment inserted an Astro island the page cannot start: it never loaded the island element or that client directive. */
115
115
  readonly IslandStartUnavailable: "LP0809";
@@ -1,3 +1,3 @@
1
- "use strict";var e,t=(e=(...e)=>console.warn(...e),(...t)=>{try{("object"==typeof(n=e(...t))&&null!==n||"function"==typeof n)&&"function"==typeof n.then&&Promise.resolve(n).catch(()=>{})}catch{}var n}),n=/* @__PURE__ */new WeakSet;function o(e){return n.add(e),e}var r=/* @__PURE__ */Symbol.for("payload-live-preview.trusted-types");function i(e){const t=function(){const e=function(){const e=globalThis,t=e[r];if(void 0!==t)return t;const n={};return e[r]=n,n}();if(void 0!==e.override)return e.override;if(void 0!==e.auto)return e.auto;const t=function(){const e=globalThis.trustedTypes;if("object"==typeof e&&null!==e)return"function"==typeof e.createPolicy?e:void 0}();try{e.auto=void 0===t?null:t.createPolicy("payload-live-preview",{createHTML:e=>e})}catch{e.auto=null}return e.auto}();return null===t?e:t.createHTML(e)}var a=/* @__PURE__ */new Set(["http:","https:","mailto:","tel:"]),s=/^(?:\.{1,2}\/|[a-zA-Z0-9_-]+\/?)/,l=/^[\\/]{2}/,u=/[\t\n\r]/g,c=/[\s\u0000-\u001f\u180e\u2000-\u2029]/g,d=/^([a-z][a-z0-9+.-]*):/i;function isSafeUrl(e){if("string"!=typeof e)return!1;const t=e.trim().replace(u,"");if(0===t.length)return!1;if(t.startsWith("#")||t.startsWith("?"))return!0;if(l.test(t))return!0;if(t.startsWith("/"))return!0;try{const e=new URL(t);return a.has(e.protocol)}catch{return s.test(t)&&!function(e){const t=d.exec(e.replace(c,""))?.[1];return void 0!==t&&!a.has(`${t.toLowerCase()}:`)}(t)}}var f=/* @__PURE__ */new Set;function p(e){f.has(e)||(f.add(e),function(e){try{console.warn(e)}catch{}}(`[live-preview] LP0409: the strict sanitizer removed \`${e}\` from written markup; the 1.x default (\`sanitizerPolicy: 'compat'\`) kept it. ${function(e){return e.startsWith("data-payload-")?"A binding inside CMS content is refused by design — an editor could otherwise aim a write at any element on the page (docs/security.md)":"id"===e||"name"===e?"CMS content that can name an element can shadow a global of that name — DOM clobbering, refused by design (docs/security.md)":"Put it on an element the template owns, or set `sanitizerPolicy: 'compat'` to keep every `data-*` as 1.x did"}(e)}.`))}var m=/* @__PURE__ */new Set(["p","br","strong","b","em","i","u","s","strike","mark","small","h1","h2","h3","h4","h5","h6","ul","ol","li","dl","dt","dd","blockquote","code","pre","kbd","samp","var","a","span","div","section","article","aside","header","footer","nav","figure","figcaption","img","picture","source","audio","video","sub","sup","hr","time","abbr","cite","q","table","thead","tbody","tfoot","tr","th","td","caption","colgroup","col"]),h=/* @__PURE__ */new Set(["input","button","textarea","select","option","label"]),y=/* @__PURE__ */new Set(["script","style","iframe","object","embed","link","meta","base","form","input","button","select","textarea","svg","math","template","frame","frameset","noframes","noscript"]),b=/* @__PURE__ */new Set(["id","class","lang","dir","title","role","tabindex"]),v="aria-",g="data-",w={a:/* @__PURE__ */new Set(["href","target","rel","download","hreflang","type"]),img:/* @__PURE__ */new Set(["src","srcset","sizes","alt","width","height","loading","decoding"]),picture:/* @__PURE__ */new Set([]),source:/* @__PURE__ */new Set(["src","srcset","sizes","type","media"]),audio:/* @__PURE__ */new Set(["src","controls","autoplay","loop","muted","preload"]),video:/* @__PURE__ */new Set(["src","poster","controls","autoplay","loop","muted","preload","width","height","playsinline"]),time:/* @__PURE__ */new Set(["datetime"]),abbr:/* @__PURE__ */new Set(["title"]),q:/* @__PURE__ */new Set(["cite"]),blockquote:/* @__PURE__ */new Set(["cite"]),table:/* @__PURE__ */new Set(["summary"]),th:/* @__PURE__ */new Set(["colspan","rowspan","scope","headers","abbr"]),td:/* @__PURE__ */new Set(["colspan","rowspan","headers"]),col:/* @__PURE__ */new Set(["span"]),colgroup:/* @__PURE__ */new Set(["span"]),ol:/* @__PURE__ */new Set(["start","reversed","type"]),li:/* @__PURE__ */new Set(["value"]),code:/* @__PURE__ */new Set(["class"]),pre:/* @__PURE__ */new Set(["class"])},A=/* @__PURE__ */new Set(["href","src","cite","poster"]),S=class extends Error{name="SanitizerEnvironmentError"},x=/* @__PURE__ */new Set(["id","name","data-payload-key","data-payload-morph","data-payload-nested-key","data-payload-nested-template"]),k=/* @__PURE__ */Symbol.for("payload-live-preview.sanitizer-document");function T(e,t,n){const o=n?.document??function(){if("undefined"==typeof __INLINE_BUILD__||!__INLINE_BUILD__){const e=globalThis[k];if(e)return e}return"undefined"==typeof document?void 0:document}();if(!o)throw"undefined"!=typeof __INLINE_BUILD__&&__INLINE_BUILD__?new Error("sanitizeHtml needs a DOM"):new S("sanitizeHtml needs a DOM; pass one per call during SSR: { document } (linkedom, jsdom).");if(""===e)return"";const r=function(e,t){const n=e?.policy??t??"strict";if(!e){const e=/* @__PURE__ */new Map;for(const[t,n]of Object.entries(w))e.set(t,n);return{allowedTags:m,attrByTag:e,allowFormControls:!1,templateMode:!1,mode:n,allowedData:/* @__PURE__ */new Set}}const o=new Set(m);if(e.additionalAllowedTags?.forEach(e=>o.add(e)),!0===e.allowFormControls)for(const e of h)o.add(e);const r=/* @__PURE__ */new Map;for(const[e,t]of Object.entries(w))r.set(e,t);for(const[t,n]of Object.entries(e.additionalAllowedAttributes??{})){const e=new Set(r.get(t));for(const t of n)e.add(t);r.set(t,e)}return{allowedTags:o,attrByTag:r,allowFormControls:!0===e.allowFormControls,templateMode:!0===e.templateMode,mode:n,allowedData:new Set(e.allowedDataAttributes?.map(e=>e.toLowerCase()))}}(n,t);let a=e;for(let e=0;e<6;e+=1){const e=o.createElement("template");e.innerHTML=i(a),E(e.content,r);const t=e.innerHTML;if(t===a)return t;a=t}return function(e,t){if(!function(){try{const e=globalThis.process?.env;return void 0!==e&&"production"!==e.NODE_ENV}catch{return!1}}())return;const n=globalThis,o=n.__payloadLivePreviewDeprecationsWarned??=/* @__PURE__ */new Set;if(!o.has(e)){o.add(e);try{console.warn(`[payload-live-preview] ${t}`)}catch{}}}("sanitizer-unsettled",`sanitizeHtml: the output did not settle after ${String(6)} passes, so it returned an empty string (ADR 0016).`),""}function E(e,t){for(const n of Array.from(e.childNodes))1===n.nodeType?L(n,t):8===n.nodeType&&n.remove()}function L(e,t){const n=e.tagName.toLowerCase();if(!y.has(n)||t.allowFormControls&&h.has(n)){if(!t.allowedTags.has(n))return E(e,t),void e.replaceWith(...e.childNodes);!function(e,t,n){const o=n.attrByTag.get(t);for(const t of Array.from(e.attributes)){const r=t.name.toLowerCase();if(r.startsWith("on")||"style"===r)e.removeAttribute(t.name);else if("is"!==r){if("strict"===n.mode){if(n.templateMode&&x.has(r))continue;if("id"===r||"name"===r||r.startsWith("data-payload-")){e.removeAttribute(t.name),"name"===r&&!0!==o?.has(r)||p(r);continue}if(r.startsWith(g)){n.allowedData.has(r)||(e.removeAttribute(t.name),p(r));continue}if(b.has(r)||r.startsWith(v))continue}else if(b.has(r)||r.startsWith(v)||r.startsWith(g))continue;o?.has(r)?A.has(r)&&!isSafeUrl(t.value)?e.removeAttribute(t.name):"srcset"!==r||M(t.value)||e.removeAttribute(t.name):e.removeAttribute(t.name)}else e.setAttribute("is","")}}(e,n,t),"a"===n&&function(e){const t=e.getAttribute("href");null!==t&&function isExternalHttpUrl(e){const t=e.trim().replace(u,"");return/^https?:\/\//i.test(t)||l.test(t)}(t)&&(e.setAttribute("rel","noopener noreferrer"),e.hasAttribute("target")||e.setAttribute("target","_blank"))}(e),E(e,t)}else e.remove()}function M(e){for(const t of e.split(",")){const e=t.trim();if(0===e.length)continue;const[n=e]=e.split(/\s/,1);if(!isSafeUrl(n)||!isSafeUrl(e))return!1}return!0}var D=Object.freeze({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","/":"&#x2F;","`":"&#x60;","=":"&#x3D;"}),N=/[&<>"'/`=]/g;function escapeHtml(e){return e.replace(N,e=>D[e])}var _=/* @__PURE__ */new Set(["style","srcdoc","formaction","form","id","name","is","srcset","imagesrcset"]);function C(e){return!e.startsWith("on")&&!_.has(e)}var I=/\{\{([\s\S]*?)\}\}/g;function z(e){if(null==e)return"";if("string"==typeof e)return e;if("number"==typeof e||"boolean"==typeof e||"bigint"==typeof e)return String(e);try{return JSON.stringify(e)}catch{return""}}function j(e){if("object"!=typeof e||null===e)return;const t=e.id;return"string"==typeof t||"number"==typeof t?t:void 0}function W(e){if("object"!=typeof e||null===e)return;const t=e.blockType;return"string"==typeof t?t:void 0}function P(e,t){return t.every(e=>void 0!==j(e))?function(e,t){const n=[],o=/* @__PURE__ */new Map;for(let t=0;t<e.length;t+=1){const n=j(e[t]);void 0!==n&&o.set(n,t)}const r=/* @__PURE__ */new Set;for(let i=0;i<t.length;i+=1){const a=t[i],s=j(a);if(void 0===s){n.push({kind:"insert",index:i,value:a});continue}const l=o.get(s);if(void 0===l){n.push({kind:"insert",index:i,value:a});continue}r.add(l);const u=e[l];W(u)===W(a)?(l!==i&&n.push({kind:"move",from:l,to:i,value:a}),O(u,a)||n.push({kind:"update",index:i,value:a})):n.push({kind:"replace",index:i,oldValue:u,value:a})}for(let t=0;t<e.length;t+=1)r.has(t)||n.push({kind:"remove",index:t,value:e[t]});return n}(e,t):function(e,t){const n=[],o=Math.min(e.length,t.length);for(let r=0;r<o;r+=1)O(e[r],t[r])||n.push({kind:"update",index:r,value:t[r]});if(t.length>e.length)for(let o=e.length;o<t.length;o+=1)n.push({kind:"insert",index:o,value:t[o]});if(e.length>t.length)for(let o=t.length;o<e.length;o+=1)n.push({kind:"remove",index:o,value:e[o]});return n}(e,t)}function O(e,t){if(Object.is(e,t))return!0;if("object"!=typeof e||"object"!=typeof t||null===e||null===t)return!1;const n=e,o=t,r=Object.keys(n),i=Object.keys(o);if(r.length!==i.length)return!1;for(const e of r)if(!Object.is(n[e],o[e]))return!1;return!0}var B="data-payload-island",U="data-payload-owned";function $(e){if(e.tagName.toLowerCase().includes("-")&&!e.hasAttribute("data-payload-morph"))return!0;if(function(e){return function(e){return"astro-island"===e.tagName.toLowerCase()||e.hasAttribute(B)}(e)&&!("patch"===e.getAttribute(B))}(e)||e.hasAttribute(U))return!0;const t=e.getAttribute("contenteditable");return null!==t&&"false"!==t}var H=["component-url","component-export","renderer-url","client","opts","before-hydration-url"],R=/* @__PURE__ */new WeakMap;function q(e){return"astro-island"===e.tagName.toLowerCase()}function F(e){let t="";for(const n of e.querySelectorAll("astro-slot, template[data-astro-template]"))n.parentElement?.closest("astro-island")===e&&(t+=`${n.getAttribute("name")??n.getAttribute("data-astro-template")??""}\0${n.innerHTML}\0`);return t}function K(e,t){if(!q(e)||!q(t))return!0;const n=F(t);if(!H.every(n=>e.getAttribute(n)===t.getAttribute(n))||(R.get(e)??F(e))!==n||e.getAttribute("props")!==t.getAttribute("props")&&!function(e){const t=e.ownerDocument.defaultView?.customElements.get("astro-island");return void 0!==t&&e instanceof t&&Array.isArray(t.observedAttributes)&&t.observedAttributes.includes("props")}(e))return R.set(t,n),!1;R.set(e,n);const o=t.getAttribute("props");return o!==e.getAttribute("props")&&(e.setAttribute("ssr",""),null===o?e.removeAttribute("props"):e.setAttribute("props",o)),!0}var V=/* @__PURE__ */new Set(["open","value","checked","selected"]);function G(e,t){for(const n of t.keyAttributes){const t=e.getAttribute(n);if(null!==t&&t.length>0)return`${n}=${t}`}}function J(e,t,n){if(!Z(e,t))return t;const o=n.boundary??$,r=o(e),i=o(t);if(r||i)return r&&i&&(n.retainBoundary?.(e,t)??1)?e:t;const a=Q(e);return function(e,t){for(const n of Array.from(e.attributes))t.hasAttribute(n.name)||V.has(n.name.toLowerCase())||e.removeAttribute(n.name);for(const n of Array.from(t.attributes))e.getAttribute(n.name)!==n.value&&e.setAttribute(n.name,n.value)}(e,t),!0!==n.retainChildrenOf?.(e,t)&&function(e,t,n){const o=function(e,t){const n=/* @__PURE__ */new Map;let o;for(const r of Array.from(e.children)){const e=G(r,t);void 0!==e&&(n.has(e)?o??=e.slice(e.indexOf("=")+1):n.set(e,r))}return void 0!==o&&t.onDuplicateKey?.(e,o),n}(e,n),r=new Set(o.values()),i=Array.from(e.childNodes).filter(e=>!r.has(e)),a=/* @__PURE__ */new Set,s=/* @__PURE__ */new Set,l=Array.from(t.childNodes);let u=e.firstChild,c=0;for(let t=0;t<l.length;t+=1){const r=l[t];let d=null,f=r instanceof Element?G(r,n):void 0;if(void 0!==f&&s.has(f)&&(f=void 0),void 0!==f){s.add(f);const e=o.get(f);if(void 0!==e&&!a.has(e)&&(d=X(e,r,n)===e?e:null,null===d)){e.replaceWith(r),a.add(r),u=r.nextSibling;continue}}else{for(;c<i.length;){const o=i[c];if(c+=1,!a.has(o)){if(Z(o,r)){d=X(o,r,n)===o?o:null,null===d&&(e.replaceChild(r,o),a.add(r),u=r.nextSibling);break}if(o instanceof Element){const n=l[t+1];if(!(r instanceof Element)||void 0!==n&&Z(o,n)){c-=1;break}e.replaceChild(r,o),a.add(r),u=r.nextSibling;break}if(!(r instanceof Element)){e.replaceChild(r,o),a.add(r),u=r.nextSibling;break}}}if(null===d&&a.has(r))continue}const p=d??r;for(a.add(p);null!==u&&u!==p&&!a.has(u)&&Y(u);)u=u.nextSibling;p!==u&&e.insertBefore(p,u),u=p.nextSibling}for(const t of Array.from(e.childNodes))a.has(t)||t.remove()}(e,t,n),ee(a),e}function X(e,t,n){return e instanceof Element&&t instanceof Element?J(e,t,n):(e.nodeValue!==t.nodeValue&&(e.nodeValue=t.nodeValue),e)}function Y(e){return e.nodeType===Node.TEXT_NODE&&0===(e.nodeValue??"").trim().length}function Z(e,t){return e.nodeType===t.nodeType&&(!(e instanceof Element&&t instanceof Element)||e.tagName===t.tagName&&e.namespaceURI===t.namespaceURI)}function Q(e){const t=e.ownerDocument.activeElement;return t instanceof HTMLElement&&e.contains(t)?{element:t,selection:t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement?[t.selectionStart,t.selectionEnd]:null}:null}function ee(e){if(null===e)return;const{element:t,selection:n}=e;if(t.ownerDocument.activeElement!==t&&t.isConnected)try{t.focus({preventScroll:!0});const[e,o]=n??[null,null];null!==e&&null!==o&&t.setSelectionRange(e,o)}catch{}}var te=["input","textarea","select","option","button","label","details","summary","dialog","video","audio","progress","meter"],ne=["type","name","placeholder","open","disabled","readonly","required","checked","selected","value","min","max","step","rows","cols","for","controls","muted","loop","poster","src"],oe=/<([a-z][a-z0-9]*(?:-[a-z0-9]+)+)\b/gi,re=/* @__PURE__ */new Map,ie="data-payload-key",ae="data-payload-nested-key",se="data-payload-nested-template";function le(){/* @__PURE__ */
2
- return new WeakMap}function ue(e){const t=de(e.container,e.patches,e);return null===t?null:fe(t,e.store,{morph:e.morph??!0,onDuplicateKey:e.onDuplicateKey})}function ce(e,t){return t.hasAttribute(ae)&&t.hasAttribute(se)}function de(e,t,n){const o=function(e,t,n){const{template:o,nextItems:r,forceRender:i=!1,store:a,sanitizerPolicy:s}=n,l=a.get(e),u=function(e){const t=e.children,n=t[0];if(void 0===n)return[];const o=[];for(const{name:e,value:r}of Array.from(n.attributes)){if(!C(e)||e.startsWith("data-payload-"))continue;let n=!0;for(let o=1;o<t.length&&n;o+=1)n=t[o]?.getAttribute(e)===r;n&&o.push([e,r])}return o}(e),c=function(e){const t=/* @__PURE__ */new Set;for(const n of e)if("object"==typeof n&&null!==n)for(const e of Object.keys(n))t.add(e);return t}(r),d=Array.from(e.children),f=ge(d,ie),p=/* @__PURE__ */new Set,m=[];for(let a=0;a<r.length;a+=1){const h=r[a],y=ve(h);let b=void 0===y?d[a]??null:we(f,y)??null;null!==b&&p.has(b)&&(b=null),null!==b&&p.add(b);const v=t.replaces.has(a),g=i||t.renders.has(a)||null===b?Ae(e.ownerDocument,o,h,a,s,u,c):void 0;if(null===g)return null;const w=void 0===g?[]:pe(v?null:b,g,h,void 0===y?void 0:l?.get(y),n);if(null===w)return null;m.push([a,b,g,w,v])}return m}(e,function(e){const t=/* @__PURE__ */new Set,n=/* @__PURE__ */new Set;for(const o of e)"insert"===o.kind||"update"===o.kind?t.add(o.index):"replace"===o.kind&&(t.add(o.index),n.add(o.index));return{renders:t,replaces:n}}(t),n);return null===o?null:[e,o,n.nextItems]}function fe(e,t,n){const[o,r,i]=e,a=/* @__PURE__ */new Set;let s=!1;const l=Q(o);for(const[e,i,l,u,c]of r){let r=i;if(void 0!==l){const e=!(!n.morph||c||null===i)&&J(i,l,{keyAttributes:[ie,ae],boundary:$,retainBoundary:K,retainChildrenOf:ce,...void 0!==n.onDuplicateKey?{onDuplicateKey:n.onDuplicateKey}:{}})===i;if(!e)for(const[e,t]of u)null!==e&&(he(e,t),t.replaceWith(e));for(const[,,e]of u)void 0!==e&&fe(e,t,n);e?s=!0:(null!==i&&(i.replaceWith(l),s=!0),r=l)}if(null===r)continue;const d=o.children[e]??null;r!==d&&(o.insertBefore(r,d),s=!0),a.add(r)}for(const e of Array.from(o.children))a.has(e)||(e.remove(),s=!0);ee(l);const u=function(e,t){let n=t.get(e);return n||(n=/* @__PURE__ */new Map,t.set(e,n)),n}(o,t);u.clear();for(const e of i)be(u,e);return s}function pe(e,t,n,o,r){const i=ge(null===e?[]:me(e),ae),a=[];for(const e of me(t)){const t=e.getAttribute(ae);if(null===t)continue;const s=we(i,t)??null,l=e.getAttribute(se),u=l?s:null,c=u?.getAttribute(se)??null;let d;if(l){const i=ye(n,t);if(void 0!==i||null!==u){const n=i??[],a=P(null===u?[]:ye(o,t)??[],n),s=null!==u&&c!==l;if((a.length>0||s)&&(d=de(u??e,a,{template:l,nextItems:n,forceRender:s,store:r.store,sanitizerPolicy:r.sanitizerPolicy})??void 0,void 0===d))return null}}a.push([u,e,d])}return a}function me(e){return Array.from(e.querySelectorAll(`[${ae}]`)).filter(t=>{let n=t.parentElement;for(;null!==n&&n!==e;){if(n.hasAttribute(ae))return!1;n=n.parentElement}return n===e})}function he(e,t){for(const n of Array.from(e.attributes))t.hasAttribute(n.name)||e.removeAttribute(n.name);for(const n of Array.from(t.attributes))e.getAttribute(n.name)!==n.value&&e.setAttribute(n.name,n.value)}function ye(e,t){if("object"!=typeof e||null===e)return;const n=e[t];return Array.isArray(n)?n:void 0}function be(e,t){const n=ve(t);void 0!==n&&e.set(n,t)}function ve(e){if("object"!=typeof e||null===e)return;const t=e.id;return"string"==typeof t||"number"==typeof t?String(t):void 0}function ge(e,t){const n=/* @__PURE__ */new Map;for(let o=e.length-1;o>=0;o-=1){const r=e[o];if(void 0===r)continue;const i=r.getAttribute(t);if(null===i)continue;const a=n.get(i);void 0===a?n.set(i,[r]):a.push(r)}return n}function we(e,t){return e.get(t)?.pop()}function Ae(e,t,n,o,r,a,s){const l=T(function(e,t,n,o,r){const i="object"==typeof t&&null!==t?t:null;return e.replace(I,(e,a)=>null!==i&&function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}(i,a)?escapeHtml(o(Reflect.get(i,a))):null===i&&"value"===a?escapeHtml(o(t)):"index"===a?String(n):null!==i&&!0===r?.has(a)?"":e)}(t,n,o,z,s),r,function(e){const t=function(e,t){const n=e.get(t);return void 0!==n&&(e.delete(t),e.set(t,n)),n}(re,e);if(void 0!==t)return t;const n=new Set(te);for(const t of e.matchAll(oe)){const e=t[1]?.toLowerCase();void 0!==e&&n.add(e)}const o={};for(const e of n)o[e]=ne;return i=e,a={additionalAllowedTags:[...n],additionalAllowedAttributes:o,allowFormControls:!0,templateMode:!0},(r=re).set(i,a),function(e){for(const t of e.keys()){if(e.size<=64)break;e.delete(t)}}(r),a;var r,i,a}(t)),u=e.createElement("template");u.innerHTML=i(l);const c=u.content.firstElementChild;if(!c)return null;!function(e,t){for(const[n,o]of t)e.hasAttribute(n)||e.setAttribute(n,o)}(c,a);const d=ve(n);return void 0!==d&&c.setAttribute(ie,d),c}function Se(e){return Array.from(e.children,e=>e.getAttribute(ie))}function xe(e){if("object"!=typeof e||null===e)return;const t=e.id;return"string"==typeof t||"number"==typeof t?String(t):void 0}function ke(e,t,n,o){Te(e,t,"LP0405",`LP0405: two items of "${n}" share the key "${o}"; later ones pair by position. Make \`id\` unique per item.`)}function Te(e,n,o,r){let i=e.get(n);void 0===i&&(i=/* @__PURE__ */new Set,e.set(n,i)),i.has(o)||(i.add(o),t(`[live-preview] ${r}`))}exports.ISLAND_ATTRIBUTE=B,exports.KEY_ATTRIBUTE=ie,exports.OWNED_ATTRIBUTE=U,exports.applyStructuralPatches=ue,exports.createStructuralArrayRenderer=function(){const e=/* @__PURE__ */new WeakMap,n=/* @__PURE__ */new WeakSet,r=/* @__PURE__ */new WeakMap,i=le();return{name:"structural-array",render:/* @__PURE__ */o((o,a,s)=>{const l=function(e){return null==e||""===e}(a)?[]:a;if(!Array.isArray(l))return!1;const u=o.element,c=o.arrayTemplate;if(void 0===c||0===c.length)return function(e,n,o){e.has(n)||(e.add(n),t(`[live-preview] LP0403: Skipping structural update for "${o}": <${n.tagName.toLowerCase()} data-payload-structural> needs data-payload-array-template (for example "<li>{{label}}</li>").`))}(n,u,o.fieldName),!1;const d=e.get(u),f=Se(u),p=P(d?.values??f.map((e,t)=>null===e?{__payloadDomPosition:t}:{id:e}),l),m=function(e,t,n){return void 0===e||e.template!==t||!function(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}(e.domSnapshot,n)}(d,c,f);if(0===p.length&&!m)return e.set(u,{values:l.slice(),template:c,domSnapshot:f}),!1;!function(e,t,n,o,r){const i=r.map(xe),a=/* @__PURE__ */new Set,s=i.find(e=>!(void 0===e||!a.has(e)&&(a.add(e),1)));if(void 0!==s&&ke(e,t,n,s),i.some(e=>void 0===e)&&Te(e,t,"LP0404",`LP0404: an item of "${n}" has no id and pairs by position, so an insert re-renders every row after it. Give items a stable id.`),o?.length===r.length&&r.length>1){const r=new Set(o.map(xe).filter(e=>void 0!==e)),a=i.some(e=>void 0!==e&&r.has(e));r.size>0&&!a&&Te(e,t,"LP0406",`LP0406: every key of "${n}" changed at once; the source generates ids per message, so no item can be retained across updates.`)}}(r,u,o.fieldName,d?.values,l);const h=ue({template:c,container:u,patches:p,nextItems:l,store:i,forceRender:m,sanitizerPolicy:s.sanitizerPolicy,onDuplicateKey:(e,t)=>{ke(r,e,o.fieldName,t)}});return null!==h&&(e.set(u,{values:l.slice(),template:c,domSnapshot:Se(u)}),!!h&&void 0)})}},exports.createStructuralStore=le,exports.dependencyMapFromBinding=function(e,t){const n={};for(const o of t)o!==e&&(n[o]=[e]);return n},exports.isMorphBoundary=$,exports.isMorphCompatible=function(e,t,n=$){return e.tagName===t.tagName&&e.namespaceURI===t.namespaceURI&&!n(e)&&!n(t)},exports.mergeDependencyMaps=function(...e){const t=/* @__PURE__ */new Map;for(const n of e)for(const[e,o]of Object.entries(n)){let n=t.get(e);void 0===n&&(n=/* @__PURE__ */new Set,t.set(e,n));for(const e of o)n.add(e)}const n={};for(const[e,o]of t)n[e]=[...o];return n},exports.morphElement=J,exports.parseDependencyList=function(e){if(null==e)return[];const t=/* @__PURE__ */new Set,n=[];for(const o of e.split(/[\s,]+/)){const e=o.trim();0===e.length||t.has(e)||(t.add(e),n.push(e))}return n},exports.retainIslandBoundary=K;
1
+ "use strict";var e,t=(e=(...e)=>console.warn(...e),(...t)=>{try{("object"==typeof(n=e(...t))&&null!==n||"function"==typeof n)&&"function"==typeof n.then&&Promise.resolve(n).catch(()=>{})}catch{}var n}),n=/* @__PURE__ */new WeakSet;function o(e){return n.add(e),e}var r=/* @__PURE__ */Symbol.for("payload-live-preview.trusted-types");function i(e){const t=function(){const e=function(){const e=globalThis,t=e[r];if(void 0!==t)return t;const n={};return e[r]=n,n}();if(void 0!==e.override)return e.override;if(void 0!==e.auto)return e.auto;const t=function(){const e=globalThis.trustedTypes;if("object"==typeof e&&null!==e)return"function"==typeof e.createPolicy?e:void 0}();try{e.auto=void 0===t?null:t.createPolicy("payload-live-preview",{createHTML:e=>e})}catch{e.auto=null}return e.auto}();return null===t?e:t.createHTML(e)}var a=/* @__PURE__ */new Set(["http:","https:","mailto:","tel:"]),s=/^(?:\.{1,2}\/|[a-zA-Z0-9_-]+\/?)/,l=/^[\\/]{2}/,u=/[\t\n\r]/g,c=/[\s\u0000-\u001f\u180e\u2000-\u2029]/g,d=/^([a-z][a-z0-9+.-]*):/i;function isSafeUrl(e){if("string"!=typeof e)return!1;const t=e.trim().replace(u,"");if(0===t.length)return!1;if(t.startsWith("#")||t.startsWith("?"))return!0;if(l.test(t))return!0;if(t.startsWith("/"))return!0;try{const e=new URL(t);return a.has(e.protocol)}catch{return s.test(t)&&!function(e){const t=d.exec(e.replace(c,""))?.[1];return void 0!==t&&!a.has(`${t.toLowerCase()}:`)}(t)}}var f=/* @__PURE__ */new Set;function p(e){f.has(e)||(f.add(e),function(e){try{console.warn(e)}catch{}}(`[live-preview] LP0409: the strict sanitizer removed \`${e}\` from written markup; the 1.x default (\`sanitizerPolicy: 'compat'\`) kept it. ${function(e){return e.startsWith("data-payload-")?"A binding inside CMS content is refused by design — an editor could otherwise aim a write at any element on the page (docs/security.md)":"id"===e||"name"===e?"CMS content that can name an element can shadow a global of that name — DOM clobbering, refused by design (docs/security.md)":"Put it on an element the template owns, or set `sanitizerPolicy: 'compat'` to keep every `data-*` as 1.x did"}(e)}.`))}var m=/* @__PURE__ */new Set(["p","br","strong","b","em","i","u","s","strike","mark","small","h1","h2","h3","h4","h5","h6","ul","ol","li","dl","dt","dd","blockquote","code","pre","kbd","samp","var","a","span","div","section","article","aside","header","footer","nav","figure","figcaption","img","picture","source","audio","video","sub","sup","hr","time","abbr","cite","q","table","thead","tbody","tfoot","tr","th","td","caption","colgroup","col"]),h=/* @__PURE__ */new Set(["input","button","textarea","select","option","label"]),y=/* @__PURE__ */new Set(["script","style","iframe","object","embed","link","meta","base","form","input","button","select","textarea","svg","math","template","frame","frameset","noframes","noscript"]),v=/* @__PURE__ */new Set(["id","class","lang","dir","title","role","tabindex"]),b="aria-",g="data-",w={a:/* @__PURE__ */new Set(["href","target","rel","download","hreflang","type"]),img:/* @__PURE__ */new Set(["src","srcset","sizes","alt","width","height","loading","decoding"]),picture:/* @__PURE__ */new Set([]),source:/* @__PURE__ */new Set(["src","srcset","sizes","type","media"]),audio:/* @__PURE__ */new Set(["src","controls","autoplay","loop","muted","preload"]),video:/* @__PURE__ */new Set(["src","poster","controls","autoplay","loop","muted","preload","width","height","playsinline"]),time:/* @__PURE__ */new Set(["datetime"]),abbr:/* @__PURE__ */new Set(["title"]),q:/* @__PURE__ */new Set(["cite"]),blockquote:/* @__PURE__ */new Set(["cite"]),table:/* @__PURE__ */new Set(["summary"]),th:/* @__PURE__ */new Set(["colspan","rowspan","scope","headers","abbr"]),td:/* @__PURE__ */new Set(["colspan","rowspan","headers"]),col:/* @__PURE__ */new Set(["span"]),colgroup:/* @__PURE__ */new Set(["span"]),ol:/* @__PURE__ */new Set(["start","reversed","type"]),li:/* @__PURE__ */new Set(["value"]),code:/* @__PURE__ */new Set(["class"]),pre:/* @__PURE__ */new Set(["class"])},A=/* @__PURE__ */new Set(["href","src","cite","poster"]),S=class extends Error{name="SanitizerEnvironmentError"},x=/* @__PURE__ */new Set(["id","name","data-payload-key","data-payload-morph","data-payload-nested-key","data-payload-nested-template"]),k=/* @__PURE__ */Symbol.for("payload-live-preview.sanitizer-document");function E(e,t,n){const o=n?.document??function(){if("undefined"==typeof __INLINE_BUILD__||!__INLINE_BUILD__){const e=globalThis[k];if(e)return e}return"undefined"==typeof document?void 0:document}();if(!o)throw T();if(""===e)return"";const r=function(e,t){const n=e?.policy??t??"strict";if(!e){const e=/* @__PURE__ */new Map;for(const[t,n]of Object.entries(w))e.set(t,n);return{allowedTags:m,attrByTag:e,allowFormControls:!1,templateMode:!1,mode:n,allowedData:/* @__PURE__ */new Set}}const o=new Set(m);if(e.additionalAllowedTags?.forEach(e=>o.add(e)),!0===e.allowFormControls)for(const e of h)o.add(e);const r=/* @__PURE__ */new Map;for(const[e,t]of Object.entries(w))r.set(e,t);for(const[t,n]of Object.entries(e.additionalAllowedAttributes??{})){const e=new Set(r.get(t));for(const t of n)e.add(t);r.set(t,e)}return{allowedTags:o,attrByTag:r,allowFormControls:!0===e.allowFormControls,templateMode:!0===e.templateMode,mode:n,allowedData:new Set(e.allowedDataAttributes?.map(e=>e.toLowerCase()))}}(n,t);let a=e;for(let e=0;e<6;e+=1){const e=o.createElement("template");e.innerHTML=i(a);const t=e.content;M(t,r);const n=L(t);if(n===a)return n;a=n}return function(e,t){if(!function(){try{const e=globalThis.process?.env;return void 0!==e&&"production"!==e.NODE_ENV}catch{return!1}}())return;const n=globalThis,o=n.__payloadLivePreviewDeprecationsWarned??=/* @__PURE__ */new Set;if(!o.has(e)){o.add(e);try{console.warn(`[payload-live-preview] ${t}`)}catch{}}}("sanitizer-unsettled",`sanitizeHtml: the output did not settle after ${String(6)} passes, so it returned an empty string (ADR 0016).`),""}function T(){return"undefined"!=typeof __INLINE_BUILD__&&__INLINE_BUILD__?new Error("sanitizeHtml needs a DOM"):new S("sanitizeHtml needs a DOM; pass one per call during SSR: { document } (linkedom, jsdom).")}function L(e){const t=e.ownerDocument?.createElement("div");if(void 0===t)throw T();const n=e.firstChild;if(t.append(e),t.firstChild!==n)throw T();return t.innerHTML}function M(e,t){for(const n of Array.from(e.childNodes))1===n.nodeType?D(n,t):8===n.nodeType&&n.remove()}function D(e,t){const n=e.tagName.toLowerCase();if(!y.has(n)||t.allowFormControls&&h.has(n)){if(!t.allowedTags.has(n))return M(e,t),void e.replaceWith(...e.childNodes);!function(e,t,n){const o=n.attrByTag.get(t);for(const t of Array.from(e.attributes)){const r=t.name.toLowerCase();if(r.startsWith("on")||"style"===r)e.removeAttribute(t.name);else if("is"!==r){if("strict"===n.mode){if(n.templateMode&&x.has(r))continue;if("id"===r||"name"===r||r.startsWith("data-payload-")){e.removeAttribute(t.name),"name"===r&&!0!==o?.has(r)||p(r);continue}if(r.startsWith(g)){n.allowedData.has(r)||(e.removeAttribute(t.name),p(r));continue}if(v.has(r)||r.startsWith(b))continue}else if(v.has(r)||r.startsWith(b)||r.startsWith(g))continue;o?.has(r)?A.has(r)&&!isSafeUrl(t.value)?e.removeAttribute(t.name):"srcset"!==r||N(t.value)||e.removeAttribute(t.name):e.removeAttribute(t.name)}else e.setAttribute("is","")}}(e,n,t),"a"===n&&function(e){const t=e.getAttribute("href");null!==t&&function isExternalHttpUrl(e){const t=e.trim().replace(u,"");return/^https?:\/\//i.test(t)||l.test(t)}(t)&&(e.setAttribute("rel","noopener noreferrer"),e.hasAttribute("target")||e.setAttribute("target","_blank"))}(e),M(e,t)}else e.remove()}function N(e){for(const t of e.split(",")){const e=t.trim();if(0===e.length)continue;const[n=e]=e.split(/\s/,1);if(!isSafeUrl(n)||!isSafeUrl(e))return!1}return!0}var _=Object.freeze({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","/":"&#x2F;","`":"&#x60;","=":"&#x3D;"}),C=/[&<>"'/`=]/g;function escapeHtml(e){return e.replace(C,e=>_[e])}var I=/* @__PURE__ */new Set(["style","srcdoc","formaction","form","id","name","is","srcset","imagesrcset"]);function z(e){return!e.startsWith("on")&&!I.has(e)}var j=/\{\{([\s\S]*?)\}\}/g;function W(e){if(null==e)return"";if("string"==typeof e)return e;if("number"==typeof e||"boolean"==typeof e||"bigint"==typeof e)return String(e);try{return JSON.stringify(e)}catch{return""}}function P(e){if("object"!=typeof e||null===e)return;const t=e.id;return"string"==typeof t||"number"==typeof t?t:void 0}function O(e){if("object"!=typeof e||null===e)return;const t=e.blockType;return"string"==typeof t?t:void 0}function B(e,t){return t.every(e=>void 0!==P(e))?function(e,t){const n=[],o=/* @__PURE__ */new Map;for(let t=0;t<e.length;t+=1){const n=P(e[t]);void 0!==n&&o.set(n,t)}const r=/* @__PURE__ */new Set;for(let i=0;i<t.length;i+=1){const a=t[i],s=P(a);if(void 0===s){n.push({kind:"insert",index:i,value:a});continue}const l=o.get(s);if(void 0===l){n.push({kind:"insert",index:i,value:a});continue}r.add(l);const u=e[l];O(u)===O(a)?(l!==i&&n.push({kind:"move",from:l,to:i,value:a}),U(u,a)||n.push({kind:"update",index:i,value:a})):n.push({kind:"replace",index:i,oldValue:u,value:a})}for(let t=0;t<e.length;t+=1)r.has(t)||n.push({kind:"remove",index:t,value:e[t]});return n}(e,t):function(e,t){const n=[],o=Math.min(e.length,t.length);for(let r=0;r<o;r+=1)U(e[r],t[r])||n.push({kind:"update",index:r,value:t[r]});if(t.length>e.length)for(let o=e.length;o<t.length;o+=1)n.push({kind:"insert",index:o,value:t[o]});if(e.length>t.length)for(let o=t.length;o<e.length;o+=1)n.push({kind:"remove",index:o,value:e[o]});return n}(e,t)}function U(e,t){if(Object.is(e,t))return!0;if("object"!=typeof e||"object"!=typeof t||null===e||null===t)return!1;const n=e,o=t,r=Object.keys(n),i=Object.keys(o);if(r.length!==i.length)return!1;for(const e of r)if(!Object.is(n[e],o[e]))return!1;return!0}var $="data-payload-island",H="data-payload-owned";function R(e){if(e.tagName.toLowerCase().includes("-")&&!e.hasAttribute("data-payload-morph"))return!0;if(function(e){return function(e){return"astro-island"===e.tagName.toLowerCase()||e.hasAttribute($)}(e)&&!("patch"===e.getAttribute($))}(e)||e.hasAttribute(H))return!0;const t=e.getAttribute("contenteditable");return null!==t&&"false"!==t}var q=["component-url","component-export","renderer-url","client","opts","before-hydration-url"],F=/* @__PURE__ */new WeakMap;function K(e){return"astro-island"===e.tagName.toLowerCase()}function V(e){let t="";for(const n of e.querySelectorAll("astro-slot, template[data-astro-template]"))n.parentElement?.closest("astro-island")===e&&(t+=`${n.getAttribute("name")??n.getAttribute("data-astro-template")??""}\0${n.innerHTML}\0`);return t}function G(e,t){if(!K(e)||!K(t))return!0;const n=V(t);if(!q.every(n=>e.getAttribute(n)===t.getAttribute(n))||(F.get(e)??V(e))!==n||e.getAttribute("props")!==t.getAttribute("props")&&!function(e){const t=e.ownerDocument.defaultView?.customElements.get("astro-island");return void 0!==t&&e instanceof t&&Array.isArray(t.observedAttributes)&&t.observedAttributes.includes("props")}(e))return F.set(t,n),!1;F.set(e,n);const o=t.getAttribute("props");return o!==e.getAttribute("props")&&(e.setAttribute("ssr",""),null===o?e.removeAttribute("props"):e.setAttribute("props",o)),!0}var J=/* @__PURE__ */new Set(["open","value","checked","selected"]);function X(e,t){for(const n of t.keyAttributes){const t=e.getAttribute(n);if(null!==t&&t.length>0)return`${n}=${t}`}}function Y(e,t,n){if(!ee(e,t))return t;const o=n.boundary??R,r=o(e),i=o(t);if(r||i)return r&&i&&(n.retainBoundary?.(e,t)??1)?e:t;const a=te(e);return function(e,t){for(const n of Array.from(e.attributes))t.hasAttribute(n.name)||J.has(n.name.toLowerCase())||e.removeAttribute(n.name);for(const n of Array.from(t.attributes))e.getAttribute(n.name)!==n.value&&e.setAttribute(n.name,n.value)}(e,t),!0!==n.retainChildrenOf?.(e,t)&&function(e,t,n){const o=function(e,t){const n=/* @__PURE__ */new Map;let o;for(const r of Array.from(e.children)){const e=X(r,t);void 0!==e&&(n.has(e)?o??=e.slice(e.indexOf("=")+1):n.set(e,r))}return void 0!==o&&t.onDuplicateKey?.(e,o),n}(e,n),r=new Set(o.values()),i=Array.from(e.childNodes).filter(e=>!r.has(e)),a=/* @__PURE__ */new Set,s=/* @__PURE__ */new Set,l=Array.from(t.childNodes);let u=e.firstChild,c=0;for(let t=0;t<l.length;t+=1){const r=l[t];let d=null,f=r instanceof Element?X(r,n):void 0;if(void 0!==f&&s.has(f)&&(f=void 0),void 0!==f){s.add(f);const e=o.get(f);if(void 0!==e&&!a.has(e)&&(d=Z(e,r,n)===e?e:null,null===d)){e.replaceWith(r),a.add(r),u=r.nextSibling;continue}}else{for(;c<i.length;){const o=i[c];if(c+=1,!a.has(o)){if(ee(o,r)){d=Z(o,r,n)===o?o:null,null===d&&(e.replaceChild(r,o),a.add(r),u=r.nextSibling);break}if(o instanceof Element){const n=l[t+1];if(!(r instanceof Element)||void 0!==n&&ee(o,n)){c-=1;break}e.replaceChild(r,o),a.add(r),u=r.nextSibling;break}if(!(r instanceof Element)){e.replaceChild(r,o),a.add(r),u=r.nextSibling;break}}}if(null===d&&a.has(r))continue}const p=d??r;for(a.add(p);null!==u&&u!==p&&!a.has(u)&&Q(u);)u=u.nextSibling;p!==u&&e.insertBefore(p,u),u=p.nextSibling}for(const t of Array.from(e.childNodes))a.has(t)||t.remove()}(e,t,n),ne(a),e}function Z(e,t,n){return e instanceof Element&&t instanceof Element?Y(e,t,n):(e.nodeValue!==t.nodeValue&&(e.nodeValue=t.nodeValue),e)}function Q(e){return e.nodeType===Node.TEXT_NODE&&0===(e.nodeValue??"").trim().length}function ee(e,t){return e.nodeType===t.nodeType&&(!(e instanceof Element&&t instanceof Element)||e.tagName===t.tagName&&e.namespaceURI===t.namespaceURI)}function te(e){const t=e.ownerDocument.activeElement;return t instanceof HTMLElement&&e.contains(t)?{element:t,selection:t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement?[t.selectionStart,t.selectionEnd]:null}:null}function ne(e){if(null===e)return;const{element:t,selection:n}=e;if(t.ownerDocument.activeElement!==t&&t.isConnected)try{t.focus({preventScroll:!0});const[e,o]=n??[null,null];null!==e&&null!==o&&t.setSelectionRange(e,o)}catch{}}var oe=["input","textarea","select","option","button","label","details","summary","dialog","video","audio","progress","meter"],re=["type","name","placeholder","open","disabled","readonly","required","checked","selected","value","min","max","step","rows","cols","for","controls","muted","loop","poster","src"],ie=/<([a-z][a-z0-9]*(?:-[a-z0-9]+)+)\b/gi,ae=/* @__PURE__ */new Map,se="data-payload-key",le="data-payload-nested-key",ue="data-payload-nested-template";function ce(){/* @__PURE__ */
2
+ return new WeakMap}function de(e){const t=pe(e.container,e.patches,e);return null===t?null:me(t,e.store,{morph:e.morph??!0,onDuplicateKey:e.onDuplicateKey})}function fe(e,t){return t.hasAttribute(le)&&t.hasAttribute(ue)}function pe(e,t,n){const o=function(e,t,n){const{template:o,nextItems:r,forceRender:i=!1,store:a,sanitizerPolicy:s}=n,l=a.get(e),u=function(e){const t=e.children,n=t[0];if(void 0===n)return[];const o=[];for(const{name:e,value:r}of Array.from(n.attributes)){if(!z(e)||e.startsWith("data-payload-"))continue;let n=!0;for(let o=1;o<t.length&&n;o+=1)n=t[o]?.getAttribute(e)===r;n&&o.push([e,r])}return o}(e),c=function(e){const t=/* @__PURE__ */new Set;for(const n of e)if("object"==typeof n&&null!==n)for(const e of Object.keys(n))t.add(e);return t}(r),d=Array.from(e.children),f=Ae(d,se),p=/* @__PURE__ */new Set,m=[];for(let a=0;a<r.length;a+=1){const h=r[a],y=we(h);let v=void 0===y?d[a]??null:Se(f,y)??null;null!==v&&p.has(v)&&(v=null),null!==v&&p.add(v);const b=t.replaces.has(a),g=i||t.renders.has(a)||null===v?xe(e.ownerDocument,o,h,a,s,u,c):void 0;if(null===g)return null;const w=void 0===g?[]:he(b?null:v,g,h,void 0===y?void 0:l?.get(y),n);if(null===w)return null;m.push([a,v,g,w,b])}return m}(e,function(e){const t=/* @__PURE__ */new Set,n=/* @__PURE__ */new Set;for(const o of e)"insert"===o.kind||"update"===o.kind?t.add(o.index):"replace"===o.kind&&(t.add(o.index),n.add(o.index));return{renders:t,replaces:n}}(t),n);return null===o?null:[e,o,n.nextItems]}function me(e,t,n){const[o,r,i]=e,a=/* @__PURE__ */new Set;let s=!1;const l=te(o);for(const[e,i,l,u,c]of r){let r=i;if(void 0!==l){const e=!(!n.morph||c||null===i)&&Y(i,l,{keyAttributes:[se,le],boundary:R,retainBoundary:G,retainChildrenOf:fe,...void 0!==n.onDuplicateKey?{onDuplicateKey:n.onDuplicateKey}:{}})===i;if(!e)for(const[e,t]of u)null!==e&&(ve(e,t),t.replaceWith(e));for(const[,,e]of u)void 0!==e&&me(e,t,n);e?s=!0:(null!==i&&(i.replaceWith(l),s=!0),r=l)}if(null===r)continue;const d=o.children[e]??null;r!==d&&(o.insertBefore(r,d),s=!0),a.add(r)}for(const e of Array.from(o.children))a.has(e)||(e.remove(),s=!0);ne(l);const u=function(e,t){let n=t.get(e);return n||(n=/* @__PURE__ */new Map,t.set(e,n)),n}(o,t);u.clear();for(const e of i)ge(u,e);return s}function he(e,t,n,o,r){const i=Ae(null===e?[]:ye(e),le),a=[];for(const e of ye(t)){const t=e.getAttribute(le);if(null===t)continue;const s=Se(i,t)??null,l=e.getAttribute(ue),u=l?s:null,c=u?.getAttribute(ue)??null;let d;if(l){const i=be(n,t);if(void 0!==i||null!==u){const n=i??[],a=B(null===u?[]:be(o,t)??[],n),s=null!==u&&c!==l;if((a.length>0||s)&&(d=pe(u??e,a,{template:l,nextItems:n,forceRender:s,store:r.store,sanitizerPolicy:r.sanitizerPolicy})??void 0,void 0===d))return null}}a.push([u,e,d])}return a}function ye(e){return Array.from(e.querySelectorAll(`[${le}]`)).filter(t=>{let n=t.parentElement;for(;null!==n&&n!==e;){if(n.hasAttribute(le))return!1;n=n.parentElement}return n===e})}function ve(e,t){for(const n of Array.from(e.attributes))t.hasAttribute(n.name)||e.removeAttribute(n.name);for(const n of Array.from(t.attributes))e.getAttribute(n.name)!==n.value&&e.setAttribute(n.name,n.value)}function be(e,t){if("object"!=typeof e||null===e)return;const n=e[t];return Array.isArray(n)?n:void 0}function ge(e,t){const n=we(t);void 0!==n&&e.set(n,t)}function we(e){if("object"!=typeof e||null===e)return;const t=e.id;return"string"==typeof t||"number"==typeof t?String(t):void 0}function Ae(e,t){const n=/* @__PURE__ */new Map;for(let o=e.length-1;o>=0;o-=1){const r=e[o];if(void 0===r)continue;const i=r.getAttribute(t);if(null===i)continue;const a=n.get(i);void 0===a?n.set(i,[r]):a.push(r)}return n}function Se(e,t){return e.get(t)?.pop()}function xe(e,t,n,o,r,a,s){const l=E(function(e,t,n,o,r){const i="object"==typeof t&&null!==t?t:null;return e.replace(j,(e,a)=>null!==i&&function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}(i,a)?escapeHtml(o(Reflect.get(i,a))):null===i&&"value"===a?escapeHtml(o(t)):"index"===a?String(n):null!==i&&!0===r?.has(a)?"":e)}(t,n,o,W,s),r,function(e){const t=function(e,t){const n=e.get(t);return void 0!==n&&(e.delete(t),e.set(t,n)),n}(ae,e);if(void 0!==t)return t;const n=new Set(oe);for(const t of e.matchAll(ie)){const e=t[1]?.toLowerCase();void 0!==e&&n.add(e)}const o={};for(const e of n)o[e]=re;return i=e,a={additionalAllowedTags:[...n],additionalAllowedAttributes:o,allowFormControls:!0,templateMode:!0},(r=ae).set(i,a),function(e){for(const t of e.keys()){if(e.size<=64)break;e.delete(t)}}(r),a;var r,i,a}(t)),u=e.createElement("template");u.innerHTML=i(l);const c=u.content.firstElementChild;if(!c)return null;!function(e,t){for(const[n,o]of t)e.hasAttribute(n)||e.setAttribute(n,o)}(c,a);const d=we(n);return void 0!==d&&c.setAttribute(se,d),c}function ke(e){return Array.from(e.children,e=>e.getAttribute(se))}function Ee(e){if("object"!=typeof e||null===e)return;const t=e.id;return"string"==typeof t||"number"==typeof t?String(t):void 0}function Te(e,t,n,o){Le(e,t,"LP0405",`LP0405: two items of "${n}" share the key "${o}"; later ones pair by position. Make \`id\` unique per item.`)}function Le(e,n,o,r){let i=e.get(n);void 0===i&&(i=/* @__PURE__ */new Set,e.set(n,i)),i.has(o)||(i.add(o),t(`[live-preview] ${r}`))}exports.ISLAND_ATTRIBUTE=$,exports.KEY_ATTRIBUTE=se,exports.OWNED_ATTRIBUTE=H,exports.applyStructuralPatches=de,exports.createStructuralArrayRenderer=function(){const e=/* @__PURE__ */new WeakMap,n=/* @__PURE__ */new WeakSet,r=/* @__PURE__ */new WeakMap,i=ce();return{name:"structural-array",render:/* @__PURE__ */o((o,a,s)=>{const l=function(e){return null==e||""===e}(a)?[]:a;if(!Array.isArray(l))return!1;const u=o.element,c=o.arrayTemplate;if(void 0===c||0===c.length)return function(e,n,o){e.has(n)||(e.add(n),t(`[live-preview] LP0403: Skipping structural update for "${o}": <${n.tagName.toLowerCase()} data-payload-structural> needs data-payload-array-template (for example "<li>{{label}}</li>").`))}(n,u,o.fieldName),!1;const d=e.get(u),f=ke(u),p=B(d?.values??f.map((e,t)=>null===e?{__payloadDomPosition:t}:{id:e}),l),m=function(e,t,n){return void 0===e||e.template!==t||!function(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}(e.domSnapshot,n)}(d,c,f);if(0===p.length&&!m)return e.set(u,{values:l.slice(),template:c,domSnapshot:f}),!1;!function(e,t,n,o,r){const i=r.map(Ee),a=/* @__PURE__ */new Set,s=i.find(e=>!(void 0===e||!a.has(e)&&(a.add(e),1)));if(void 0!==s&&Te(e,t,n,s),i.some(e=>void 0===e)&&Le(e,t,"LP0404",`LP0404: an item of "${n}" has no id and pairs by position, so an insert re-renders every row after it. Give items a stable id.`),o?.length===r.length&&r.length>1){const r=new Set(o.map(Ee).filter(e=>void 0!==e)),a=i.some(e=>void 0!==e&&r.has(e));r.size>0&&!a&&Le(e,t,"LP0406",`LP0406: every key of "${n}" changed at once; the source generates ids per message, so no item can be retained across updates.`)}}(r,u,o.fieldName,d?.values,l);const h=de({template:c,container:u,patches:p,nextItems:l,store:i,forceRender:m,sanitizerPolicy:s.sanitizerPolicy,onDuplicateKey:(e,t)=>{Te(r,e,o.fieldName,t)}});return null!==h&&(e.set(u,{values:l.slice(),template:c,domSnapshot:ke(u)}),!!h&&void 0)})}},exports.createStructuralStore=ce,exports.dependencyMapFromBinding=function(e,t){const n={};for(const o of t)o!==e&&(n[o]=[e]);return n},exports.isMorphBoundary=R,exports.isMorphCompatible=function(e,t,n=R){return e.tagName===t.tagName&&e.namespaceURI===t.namespaceURI&&!n(e)&&!n(t)},exports.mergeDependencyMaps=function(...e){const t=/* @__PURE__ */new Map;for(const n of e)for(const[e,o]of Object.entries(n)){let n=t.get(e);void 0===n&&(n=/* @__PURE__ */new Set,t.set(e,n));for(const e of o)n.add(e)}const n={};for(const[e,o]of t)n[e]=[...o];return n},exports.morphElement=Y,exports.parseDependencyList=function(e){if(null==e)return[];const t=/* @__PURE__ */new Set,n=[];for(const o of e.split(/[\s,]+/)){const e=o.trim();0===e.length||t.has(e)||(t.add(e),n.push(e))}return n},exports.retainIslandBoundary=G;
3
3
  //# sourceMappingURL=structural.cjs.map