PluginProbe
TableKit – WordPress Table Builder for Data Tables, WooCommerce Product Tables & Post Tables / 2.2.14
TableKit – WordPress Table Builder for Data Tables, WooCommerce Product Tables & Post Tables v2.2.14
2.2.14 2.2.13 2.2.12 2.2.11 2.2.10 2.2.9 2.2.8 2.2.7 2.2.6 2.2.5 2.2.4 2.2.3 trunk 1.0.0 1.0.1 2.0.0 2.0.1 2.1.0 2.1.1 2.1.2 2.2.0 2.2.1 2.2.2
← All changes | build/blocks/table-builder/index.js +1 -1 2.2.82.2.14 View file →
@@ -1 +1 @@
1 -(()=>{"use strict";var e,t={689(e,t,o){var r=o(609);const l=window.wp.blocks,a=window.wp.blockEditor,n=JSON.parse('{"UU":"tablebuilder/table-builder","uK":{"blockID":{"type":"string"},"blockClass":{"type":"string"},"blocksCSS":{"type":"object"},"hasFixedLayout":{"type":"boolean","default":true},"responsiveBreakpoint":{"type":"number","default":768},"caption":{"type":"string"},"captionPosition":{"type":"string","default":"bottom"},"rowCount":{"type":"number","default":2},"columnCount":{"type":"number","default":2},"hasBorderCollaps":{"type":"boolean","default":true},"borderVerticalSpacingDesktop":{"type":"object"},"borderVerticalSpacingTablet":{"type":"object"},"borderVerticalSpacingMobile":{"type":"object"},"borderVerticalSpacingTabletLandscape":{"type":"object"},"borderVerticalSpacingMobileLandscape":{"type":"object"},"borderVerticalSpacingLaptop":{"type":"object"},"borderVerticalSpacingWideScreen":{"type":"object"},"borderHorizontalSpacingDesktop":{"type":"object"},"borderHorizontalSpacingTablet":{"type":"object"},"borderHorizontalSpacingMobile":{"type":"object"},"borderHorizontalSpacingTabletLandscape":{"type":"object"},"borderHorizontalSpacingMobileLandscape":{"type":"object"},"borderHorizontalSpacingLaptop":{"type":"object"},"borderHorizontalSpacingWideScreen":{"type":"object"},"hasHeader":{"type":"boolean","default":true},"headers":{"type":"array","default":[{"title":"Header 1"},{"title":"Header 2"}]},"columnWidths":{"type":"array","default":[]},"rowHeights":{"type":"array","default":[]},"headerHeight":{"type":"number","default":0},"resizerEnabled":{"type":"boolean","default":true},"isEmpty":{"type":"boolean","default":true},"hasFooter":{"type":"boolean","default":true},"showRowPerPage":{"type":"boolean","default":true},"showResult":{"type":"boolean","default":true},"showPaginationControl":{"type":"boolean","default":true},"ShowSearchInput":{"type":"boolean","default":true},"showExportButton":{"type":"boolean","default":true},"showCaption":{"type":"boolean","default":true},"footers":{"type":"array","default":[{"title":"Footer 1"},{"title":"Footer 2"}]},"paddingDesktop":{"type":"object","default":{"top":"10px","right":"10px","bottom":"10px","left":"10px"}},"paddingTablet":{"type":"object"},"paddingMobile":{"type":"object"},"paddingTabletLandscape":{"type":"object"},"paddingMobileLandscape":{"type":"object"},"paddingLaptop":{"type":"object"},"paddingWideScreen":{"type":"object"},"background":{"type":"object"},"hoverBackground":{"type":"object"},"hoverColor":{"type":"string"},"border":{"type":"object","default":{"width":"1px","style":"solid","color":"#000"}},"backgroundHover":{"type":"object"},"borderHoverColor":{"type":"string"},"typography":{"type":"object"},"headerTypography":{"type":"object"},"headerColor":{"type":"string"},"headerBackground":{"type":"object"},"headerBorder":{"type":"object"},"headerPaddingDesktop":{"type":"object"},"headerPaddingTablet":{"type":"object"},"headerPaddingMobile":{"type":"object"},"headerPaddingMobileLandscape":{"type":"object"},"headerPaddingTabletLandscape":{"type":"object"},"headerPaddingLaptop":{"type":"object"},"headerPaddingWideScreen":{"type":"object"},"headerBorderRadiusDesktop":{"type":"object"},"headerBorderRadiusTablet":{"type":"object"},"headerBorderRadiusMobile":{"type":"object"},"headerBorderRadiusTabletLandscape":{"type":"object"},"headerBorderRadiusMobileLandscape":{"type":"object"},"headerBorderRadiusLaptop":{"type":"object"},"headerBorderRadiusWideScreen":{"type":"object"},"footerTypography":{"type":"object"},"headerBoxShadow":{"type":"object"},"footerColor":{"type":"string"},"footerBackground":{"type":"object"},"footerBorder":{"type":"object"},"footerPaddingDesktop":{"type":"object"},"footerPaddingTablet":{"type":"object"},"footerPaddingMobile":{"type":"object"},"footerPaddingMobileLandscape":{"type":"object"},"footerPaddingTabletLandscape":{"type":"object"},"footerPaddingLaptop":{"type":"object"},"footerPaddingWideScreen":{"type":"object"},"footerBorderRadiusDesktop":{"type":"object"},"footerBorderRadiusTablet":{"type":"object"},"footerBorderRadiusMobile":{"type":"object"},"footerBorderRadiusTabletLandscape":{"type":"object"},"footerBorderRadiusMobileLandscape":{"type":"object"},"footerBorderRadiusLaptop":{"type":"object"},"footerBorderRadiusWideScreen":{"type":"object"},"alignmentDesktop":{"type":"string","default":"center"},"alignmentTablet":{"type":"string"},"alignmentMobile":{"type":"string"},"commonVerticalAlignDesktop":{"type":"string","default":"center"},"commonVerticalAlignTablet":{"type":"string"},"commonVerticalAlignMobile":{"type":"string"},"cellTypography":{"type":"object"},"cellAlignmentDesktop":{"type":"string"},"cellAlignmentTablet":{"type":"string"},"cellAlignmentMobile":{"type":"string"},"cellAlignmentMobileLandscape":{"type":"string"},"cellAlignmentTabletLandscape":{"type":"string"},"cellAlignmentLaptop":{"type":"string"},"cellAlignmentWideScreen":{"type":"string"},"cellBorder":{"type":"object"},"cellBorderRadiusDesktop":{"type":"object"},"cellBorderRadiusTablet":{"type":"object"},"cellBorderRadiusMobile":{"type":"object"},"cellPaddingDesktop":{"type":"object"},"cellPaddingTablet":{"type":"object"},"cellPaddingMobile":{"type":"object"},"headerAlignmentDesktop":{"type":"string"},"headerAlignmentTablet":{"type":"string"},"headerAlignmentMobile":{"type":"string"},"footerAlignmentDesktop":{"type":"string"},"footerAlignmentTablet":{"type":"string"},"footerAlignmentMobile":{"type":"string"},"footerAlignmentMobileLandscape":{"type":"string"},"footerAlignmentTabletLandscape":{"type":"string"},"footerAlignmentLaptop":{"type":"string"},"footerAlignmentWideScreen":{"type":"string"},"captionTypography":{"type":"object"},"captionColor":{"type":"string"},"captionBackground":{"type":"object"},"captionBorder":{"type":"object"},"captionMarginDesktop":{"type":"object"},"captionMarginTablet":{"type":"object"},"captionMarginMobile":{"type":"object"},"captionMarginMobileLandscape":{"type":"object"},"captionMarginTabletLandscape":{"type":"object"},"captionMarginLaptop":{"type":"object"},"captionMarginWideScreen":{"type":"object"},"captionPaddingDesktop":{"type":"object"},"captionPaddingTablet":{"type":"object"},"captionPaddingMobile":{"type":"object"},"captionBorderRadiusDesktop":{"type":"object"},"captionBorderRadiusTablet":{"type":"object"},"captionBorderRadiusMobile":{"type":"object"},"captionBorderRadiusTabletLandscape":{"type":"object"},"captionBorderRadiusMobileLandscape":{"type":"object"},"captionBorderRadiusLaptop":{"type":"object"},"captionBorderRadiusWideScreen":{"type":"object"},"color":{"type":"string"},"cellColor":{"type":"string"},"cellBackground":{"type":"object"},"tableBuilderBoxShadow":{"type":"object"},"columnItems":{"type":"array"},"variationType":{"type":"string"},"enableSorting":{"type":"boolean","default":true},"mergeTableCell":{"type":"object"},"evenCellColor":{"type":"string"},"evenCellBgColor":{"type":"object"},"oddCellColor":{"type":"string"},"oddCellBgColor":{"type":"object"},"shortId":{"type":"string"}}}'),i=[{attributes:n.uK,save({attributes:e}){const{caption:t,headers:o,footers:l,hasHeader:n,hasFooter:i,isEmpty:s,columnWidths:c}=e,d={enableSorting:e.enableSorting||!1,tableConditionalFormat:e.tableConditionalFormat||[],mergeTableCell:e.mergeTableCell,freezeSettings:e.freezeSettings,blockClass:e.blockClass||"",enableFreeze:e.enableFreeze||!1,columnWidths:e.columnWidths||[],rowHeights:e.rowHeights||[],headerHeight:e.headerHeight||0},u=a.useBlockProps.save({"data-settings":JSON.stringify(d)}),h=a.useInnerBlocksProps.save({className:"gkit-table__body"}),b=c&&c.length>0&&c.some(e=>e>0),p=b?c.reduce((e,t)=>e+(t||0),0):0,m=e=>b&&c[e]&&0!==p?{width:`${(c[e]/p*100).toFixed(4)}%`}:{},g=o.map((e,t)=>(0,r.createElement)("th",{key:t,className:"gkit-table__header-content",style:m(t)},(0,r.createElement)(a.RichText.Content,{identifier:`header-${t}`,tagName:"div",value:e.title}))),f=l.map((e,t)=>(0,r.createElement)("td",{key:t,className:"gkit-table__footer-content",style:m(t)},(0,r.createElement)(a.RichText.Content,{identifier:`footer-${t}`,tagName:"div",value:e.title})));return(0,r.createElement)("figure",{...u},!s&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("table",{className:"gkit-table",style:b?{tableLayout:"fixed",width:"100%"}:void 0},n&&(0,r.createElement)("thead",{className:"gkit-table__header"},(0,r.createElement)("tr",null,g)),(0,r.createElement)("tbody",{...h}),i&&(0,r.createElement)("tfoot",{className:"gkit-table__footer"},(0,r.createElement)("tr",null,f))),e.showCaption&&(0,r.createElement)(a.RichText.Content,{identifier:"caption",tagName:"figcaption",className:"gkit-table__caption",value:t})))}},{attributes:n.uK,save({attributes:e}){const{caption:t,headers:o,footers:l,hasHeader:n,hasFooter:i,isEmpty:s}=e,c={enableSorting:e.enableSorting||!1,tableConditionalFormat:e.tableConditionalFormat||[],mergeTableCell:e.mergeTableCell,freezeSettings:e.freezeSettings,blockClass:e.blockClass||"",enableFreeze:e.enableFreeze||!1},d=a.useBlockProps.save({"data-settings":JSON.stringify(c)}),u=a.useInnerBlocksProps.save({className:"gkit-table__body"}),h=o.map((e,t)=>(0,r.createElement)("th",{key:t,className:"gkit-table__header-content"},(0,r.createElement)(a.RichText.Content,{identifier:`header-${t}`,tagName:"div",value:e.title}))),b=l.map((e,t)=>(0,r.createElement)("td",{key:t,className:"gkit-table__footer-content"},(0,r.createElement)(a.RichText.Content,{identifier:`footer-${t}`,tagName:"div",value:e.title})));return(0,r.createElement)("figure",{...d},!s&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("table",{className:"gkit-table"},n&&(0,r.createElement)("thead",{className:"gkit-table__header"},(0,r.createElement)("tr",null,h)),(0,r.createElement)("tbody",{...u}),i&&(0,r.createElement)("tfoot",{className:"gkit-table__footer"},(0,r.createElement)("tr",null,b))),e.showCaption&&(0,r.createElement)(a.RichText.Content,{identifier:"caption",tagName:"figcaption",className:"gkit-table__caption",value:t})))}},{attributes:n.uK,save({attributes:e}){const{caption:t,headers:o,footers:l,hasHeader:n,hasFooter:i,isEmpty:s}=e,c=a.useBlockProps.save({"data-settings":JSON.stringify(e)}),d=a.useInnerBlocksProps.save({className:"gkit-table__body"}),u=o.map((e,t)=>(0,r.createElement)("th",{key:t,className:"gkit-table__header-content"},(0,r.createElement)(a.RichText.Content,{identifier:`header-${t}`,tagName:"div",value:e.title}))),h=l.map((e,t)=>(0,r.createElement)("td",{key:t,className:"gkit-table__footer-content"},(0,r.createElement)(a.RichText.Content,{identifier:`footer-${t}`,tagName:"div",value:e.title})));return(0,r.createElement)("figure",{...c},!s&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("table",{className:"gkit-table"},n&&(0,r.createElement)("thead",{className:"gkit-table__header"},(0,r.createElement)("tr",null,u)),(0,r.createElement)("tbody",{...d}),i&&(0,r.createElement)("tfoot",{className:"gkit-table__footer"},(0,r.createElement)("tr",null,h))),(0,r.createElement)(a.RichText.Content,{identifier:"caption",tagName:"figcaption",className:"gkit-table__caption",value:t})))}}],s=window.wp.i18n,c=window.wp.element,d=window.wp.primitives;var u=o(848);const h=(0,u.jsx)(d.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,u.jsx)(d.Path,{d:"M13 5.5H4V4h9v1.5Zm7 7H4V11h16v1.5Zm-7 7H4V18h9v1.5Z"})}),b=(0,u.jsx)(d.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,u.jsx)(d.Path,{d:"M7.5 5.5h9V4h-9v1.5Zm-3.5 7h16V11H4v1.5Zm3.5 7h9V18h-9v1.5Z"})}),p=(0,u.jsx)(d.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,u.jsx)(d.Path,{d:"M11.111 5.5H20V4h-8.889v1.5ZM4 12.5h16V11H4v1.5Zm7.111 7H20V18h-8.889v1.5Z"})}),m=window.wp.data,g=[{category:"Cell Options",options:[{label:(0,s.__)("Text Color","table-builder-block"),value:"cellTextColor"},{label:(0,s.__)("Background Color","table-builder-block"),value:"cellBackgroundColor"},{label:(0,s.__)("CSS Class","table-builder-block"),value:"cellCssClass"},{label:(0,s.__)("Content","table-builder-block"),value:"cellContent"}]},{category:"Row Options",options:[{label:(0,s.__)("Text Color","table-builder-block"),value:"rowTextColor"},{label:(0,s.__)("Background Color","table-builder-block"),value:"rowBackgroundColor"},{label:(0,s.__)("CSS Class","table-builder-block"),value:"rowCssClass"}]},{category:"Column Options",options:[{label:(0,s.__)("Text Color","table-builder-block"),value:"columnTextColor"},{label:(0,s.__)("Background Color","table-builder-block"),value:"columnBackgroundColor"},{label:(0,s.__)("CSS Class","table-builder-block"),value:"columnCssClass"}]}],f=[{label:(0,s.__)("Is Equal To","table-builder-block"),value:"equal"},{label:(0,s.__)("Not Equal","table-builder-block"),value:"notEqual"},{label:(0,s.__)("Contains","table-builder-block"),value:"contains"},{label:(0,s.__)("Does Not Contain","table-builder-block"),value:"notContains"}],y=window.wp.components,v=e=>{if(!e||"string"!=typeof e)return null;const t=e.trim();return t.includes(",")?t.split(",")[1]?.trim():t},_={equal:(e,t)=>e===t,notEqual:(e,t)=>e!==t,contains:(e,t)=>e.includes(t),notContains:(e,t)=>!e.includes(t),greaterThan:(e,t)=>isNaN(e)||isNaN(t)?e>t:parseFloat(e)>parseFloat(t),lessThan:(e,t)=>isNaN(e)||isNaN(t)?e<t:parseFloat(e)<parseFloat(t),greaterThanOrEqual:(e,t)=>isNaN(e)||isNaN(t)?e>=t:parseFloat(e)>=parseFloat(t),lessThanOrEqual:(e,t)=>isNaN(e)||isNaN(t)?e<=t:parseFloat(e)<=parseFloat(t)},C=e=>{if(!e?.element||!e?.data)return;const t=(()=>{const e=document.querySelector('iframe[name="editor-canvas"]')||document.querySelector(".block-editor-iframe__container iframe")||document.querySelector("iframe");try{if(e?.contentDocument)return e.contentDocument;if(e?.contentWindow?.document)return e.contentWindow.document}catch(e){console.warn("[table-builder][conditional-formatting.apply] Blocked cross-origin frame access. Using current document.")}return document})().querySelector(`.${e.element}`)||document.querySelector(`.${e.element}`);if(!t)return;const o=Array.from(t.querySelectorAll("table")),r=[...new Set([...o])];r.length&&r.forEach(t=>{(e=>{e.querySelectorAll("[data-conditional-formatting='true']").forEach(e=>{["color","backgroundColor","background","backgroundSize"].forEach(t=>{e.style[t]=""});const t=e.getAttribute("data-previous-class");t&&(e.classList.remove(t),e.removeAttribute("data-previous-class")),e.removeAttribute("data-conditional-formatting")})})(t);const o=(e=>{const t=new Map,o=e.querySelector("tr:first-child");return o&&o.querySelectorAll("th, td").forEach((e,o)=>{const r=e.textContent.trim().toLowerCase().replace(/\s+/g,"");t.set(r,o)}),t})(t);e.data.forEach(e=>{((e,t,o)=>{const{columnKey:r,comparisonType:l="equal",comparisonValue:a="",formatAction:n,formatTextColor:i,formatBackground:s,formatCssClass:c}=t;if(!r||!n)return;const d=o.get(r);if(void 0===d)return;const u=Array.from(e.querySelectorAll("tr")).slice(1),h=a.toString().trim().toLowerCase(),b=n.startsWith("column"),p=n.startsWith("row");u.forEach(e=>{const t=e.querySelectorAll("td, th"),o=t[d];if(!o)return;const r=o.textContent.trim().toLowerCase(),a=_[l]?.(r,h);let u=[];b?u=[o]:a&&(u=p?Array.from(t):[o]),u.forEach(e=>{((e,t)=>{const{formatAction:o,formatTextColor:r,formatBackground:l,formatCssClass:a}=t;if(o.includes("TextColor")&&r){const t=v(r);t&&(e.style.color=t)}if(o.includes("BackgroundColor")&&l){const t=(e=>{if(!e)return{background:"",size:""};let t="";return"classic"===e.backgroundType&&e.backgroundColor?t=v(e.backgroundColor)||"":"gradient"===e.backgroundType&&e.gradient&&(t=(e=>{if(!e)return"";if("linear"===e.type){const t=e.angle||0,o=e.stops?.map(e=>`${e.color} ${e.position}%`).join(", ");return`linear-gradient(${t}deg, ${o})`}if("radial"===e.type){const t=e.stops?.map(e=>`${e.color} ${e.position}%`).join(", ");return`radial-gradient(circle, ${t})`}return""})(e.gradient)),{background:t,size:""}})(l);t.background&&(e.style.background=t.background),t.size&&(e.style.backgroundSize=t.size)}if(o.includes("CssClass")&&a){const t="string"!=typeof(n=a)?"":n.toLowerCase().trim().replace(/[^\w-]+/g,"-").replace(/^-+|-+$/g,"").replace(/-+/g,"-").replace(/script/g,"");if(t){const o=e.getAttribute("data-previous-class");o&&e.classList.remove(o),e.classList.add(t),e.setAttribute("data-previous-class",t)}}var n;e.setAttribute("data-conditional-formatting","true")})(e,{formatAction:n,formatTextColor:i,formatBackground:s,formatCssClass:c})})})})(t,e,o)})})},k=({attributes:e,setAttributes:t,clientId:o})=>{const{GkitColor:a,GkitPanelBody:n,GkitBackgrounGroup:i,GkitRepeater:d,GkitSelect:u,GkitText:h}=window.GkitComponents||{},{headers:b,tableConditionalFormat:p=[],tableDataset:v}=e,_=(0,c.useRef)(null),k=(0,c.useRef)(null),w=(0,c.useRef)({data:p,element:e?.blockClass});(0,c.useEffect)(()=>{w.current={data:p,element:e?.blockClass}},[p,e?.blockClass]);const E=(()=>{const t=v?.tableHeader||b||e?.PostData?.tableHeader;return t?.map(e=>{const t=("string"==typeof e?e:e?.title||"").trim(),o=t.toLowerCase().replace(/\s+/g,"");return{label:t,value:o}})||[]})();k.current||(k.current=(()=>{let e;return function(...t){clearTimeout(e),e=setTimeout(()=>{clearTimeout(e),(()=>{C(w.current)})(...t)},100)}})()),(0,c.useEffect)(()=>{if(!e?.blockClass)return;const t=document.querySelector('iframe[name="editor-canvas"]')||document.querySelector("iframe");let o=document;try{o=t?.contentDocument||t?.contentWindow?.document||document}catch(e){o=document}const r=o.querySelector(`.${e.blockClass}`);return r?(k.current(),_.current=new MutationObserver(e=>{let t=!1;e.forEach(e=>{"childList"===e.type&&Array.from(e.addedNodes).some(e=>1===e.nodeType&&("TR"===e.tagName||"TD"===e.tagName||"TH"===e.tagName||e.querySelector?.("tr, td, th")))&&(t=!0),"attributes"===e.type&&["class","data-freeze","data-frozen"].includes(e.attributeName)&&(t=!0)}),t&&k.current()}),_.current.observe(r,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["class","data-freeze","data-frozen"]}),()=>{_.current&&(_.current.disconnect(),_.current=null)}):void 0},[e?.blockClass]),(0,c.useEffect)(()=>{p?.length>0&&k.current()},[JSON.stringify(p)]);const S=(e=>{const t=(0,m.useSelect)(e=>{const{getSelectedBlockClientId:t,getBlock:o}=e("core/block-editor"),r=t(),l=r?o(r):null;return"tablebuilder/data-table"===l?.name||"tablebuilder/post-table"===l?.name},[]);return(0,c.useMemo)(()=>e.map(e=>({...e,options:e.options.filter(e=>!("cellContent"===e.value&&t))})),[e,t])})(g);return(0,r.createElement)(n,{title:(0,s.__)("Conditional Formatting","table-builder-block"),initialOpen:!1},(0,r.createElement)(d,{onChange:e=>t({tableConditionalFormat:e}),itemLabelName:"columnKey",repeaterFields:p,isClone:!1},(0,r.createElement)(u,{label:(0,s.__)("Target Column","table-builder-block"),name:"columnKey",options:E,default:E[0]?.value||""}),(0,r.createElement)(u,{label:(0,s.__)("Condition Type","table-builder-block"),name:"comparisonType",options:f,conditionalShow:!1,condition:{name:"columnKey",value:""},default:"equal"}),(0,r.createElement)(h,{label:(0,s.__)("Comparison Value","table-builder-block"),placeholder:(0,s.__)("Enter comparison value","table-builder-block"),name:"comparisonValue",labelBlock:"block",conditionType:"or",condition:f.map(({value:e})=>({name:"comparisonType",value:e}))}),(0,r.createElement)(u,{label:(0,s.__)("Apply Formatting","table-builder-block"),name:"formatAction",children:S.map((e,t)=>(0,r.createElement)("optgroup",{key:t,label:(0,s.__)(e.category,"table-builder-block")},e.options.map((e,t)=>(0,r.createElement)("option",{key:t,value:e.value},e.label)))),conditionalShow:!1,condition:{name:"comparisonValue",value:""},default:"cellTextColor"}),(0,r.createElement)(h,{label:(0,s.__)("Replace Text","table-builder-block"),placeholder:(0,s.__)("Enter Value","table-builder-block"),name:"formatText",labelBlock:"block",conditionType:"or",condition:[{name:"formatAction",value:"cellContent"}]}),(0,r.createElement)(y.Button,{variant:"primary",onClick:()=>{const e=(0,m.select)("core/block-editor").getBlocks().filter(e=>"tablebuilder/table-builder"===e.name);p.forEach(({columnKey:t,comparisonValue:o,formatAction:r,formatText:a})=>{if(!t||!r.includes("Content")||!a)return;const n=b?.findIndex(({title:e})=>e?.trim().toLowerCase().replace(/\s+/g,"")===t);-1!==n&&e.forEach(e=>{e.innerBlocks.forEach(e=>{if("tablebuilder/table-builder-row"!==e.name)return;const t=e.innerBlocks[n];if("tablebuilder/table-builder-item"!==t?.name)return;const r=t.innerBlocks.map(e=>{const t=e.attributes?.content?.text||e.attributes?.content;return t?.toString().trim().toLowerCase()===o?.toString().trim().toLowerCase()?(0,l.createBlock)(e.name,{...e.attributes,content:a}):e});(0,m.dispatch)("core/block-editor").replaceInnerBlocks(t.clientId,r,!1)})})})},className:"table-builder-replace-button",style:{display:"flex",justifyContent:"center",alignItems:"center",background:"#3B67FE",color:"#fff",padding:"10px",borderRadius:"4px",fontWeight:500,width:"100%",marginBottom:"15px"},condition:[{name:"formatAction",value:"cellContent"}]},"Replace"),(0,r.createElement)(h,{label:(0,s.__)("CSS Class","table-builder-block"),placeholder:(0,s.__)("Enter CSS class name","table-builder-block"),name:"formatCssClass",labelBlock:"block",conditionType:"or",condition:[{name:"formatAction",value:"cellCssClass"},{name:"formatAction",value:"rowCssClass"},{name:"formatAction",value:"columnCssClass"}]}),(0,r.createElement)(i,{label:(0,s.__)("Background Color","table-builder-block"),name:"formatBackground",exclude:{video:!0,image:!0},conditionType:"or",condition:[{name:"formatAction",value:"cellBackgroundColor"},{name:"formatAction",value:"rowBackgroundColor"},{name:"formatAction",value:"columnBackgroundColor"}]}),(0,r.createElement)(a,{label:(0,s.__)("Text Color","table-builder-block"),name:"formatTextColor",conditionType:"or",condition:[{name:"formatAction",value:"cellTextColor"},{name:"formatAction",value:"rowTextColor"},{name:"formatAction",value:"columnTextColor"}]})))},w=({freezeRows:e=0,freezeColumns:t=0,freezeWarning:o="",setFreezeWarning:l,freezeSettings:a={}})=>{const n=()=>{const{from:e,to:t}=a?.leftFreeze||{};return e>0||t>0},i=()=>{const{from:e,to:t}=a?.rightFreeze||{};return e>0||t>0},s=e>0||t>0||a?.fixedHeader||a?.fixedColumns&&(n()||i()),c=(e,t)=>e||t?e<=0&&t<=0?null:e&&!t?`Column ${e}`:!e&&t?`Column ${t}`:e===t?`Column ${e}`:`Columns ${e} to ${t}`:null;return(0,r.createElement)("div",{className:"freeze-instruction"},o&&(0,r.createElement)("div",{className:"freeze-warning"},(0,r.createElement)("span",{className:"freeze-warning-text"},o),(0,r.createElement)(y.Button,{variant:"link",onClick:()=>l(""),className:"freeze-warning-close"},"×")),s&&(()=>{const e=[];if(a?.fixedHeader&&e.push((0,r.createElement)("li",{key:"header"},"Freeze Header: Enabled")),a?.fixedColumns){if(n()){const t=c(a.leftFreeze?.from,a.leftFreeze?.to);t&&e.push((0,r.createElement)("li",{key:"left"},"Left: ",t," Selected"))}if(i()){const t=c(a.rightFreeze?.from,a.rightFreeze?.to);t&&e.push((0,r.createElement)("li",{key:"right"},"Right: ",t," Selected"))}}return e.length>0?(0,r.createElement)("div",{className:"freeze-current-status"},(0,r.createElement)("strong",null,"Current Freeze:"),(0,r.createElement)("ul",{className:"freeze-status-list"},e)):null})())},E=({attributes:e,setAttributes:t,setFreezePopOverOpen:o,freezerRef:l})=>{const a=(()=>{const t=e?.freezeSettings;return t?{enableFixedHeader:t.fixedHeader||!1,enableFixedColumns:t.fixedColumns||!1,leftRange:{from:t.leftFreeze?.from>0?String(t.leftFreeze.from):"",to:t.leftFreeze?.to>0?String(t.leftFreeze.to):""},rightRange:{from:t.rightFreeze?.from>0?String(t.rightFreeze.from):"",to:t.rightFreeze?.to>0?String(t.rightFreeze.to):""}}:{enableFixedHeader:!1,enableFixedColumns:!1,leftRange:{from:"",to:""},rightRange:{from:"",to:""}}})(),[n,i]=(0,c.useState)(a.enableFixedHeader),[s,d]=(0,c.useState)(a.enableFixedColumns),[u,h]=(0,c.useState)(a.leftRange),[b,p]=(0,c.useState)(a.rightRange),m=e?.columnCount||0,g=(0,c.useMemo)(()=>Array.from({length:m},(e,t)=>({label:`Column ${t+1}`,value:String(t+1)})),[m]),f=(0,c.useMemo)(()=>{const e=parseInt(b.from||"0");return g.filter(t=>0===e||parseInt(t.value)<e)},[g,b.from]),v=(0,c.useMemo)(()=>{const e=parseInt(u.to||u.from||"0");return g.filter(t=>parseInt(t.value)>e)},[g,u]),_=()=>o(!1),C=(0,c.useCallback)(()=>({fixedHeader:n,fixedColumns:s,leftFreeze:{from:parseInt(u.from)||0,to:parseInt(u.to||u.from)||0},rightFreeze:{from:parseInt(b.from)||0,to:parseInt(b.to||b.from)||0}}),[n,s,u,b]);(0,c.useEffect)(()=>{const o=C();t({freezeSettings:{...e.freezeSettings||{},...o}}),!n&&l.current&&l.current.updateConfig?.(o),!s&&l.current&&l.current.updateConfig?.(o)},[n,s]);const k=(e,t,o)=>{("left"===e?h:p)(e=>{const r={...e,[t]:o};return"from"===t&&o&&!e.to&&(r.to=o),r})},E=({label:e,range:t,rangeType:o,options:l})=>{const a="left"===o?f:v;return(0,r.createElement)("div",{className:"table-freeze-popover__select-range"},(0,r.createElement)("strong",null,e),(0,r.createElement)("div",{className:"table-freeze-popover__select-range-inner"},(0,r.createElement)(y.SelectControl,{label:"Start",value:t.from,options:[{label:"-- Select --",value:""},...a],onChange:e=>k(o,"from",e)}),(0,r.createElement)(y.SelectControl,{label:"End",value:t.to,options:[{label:"-- Select --",value:""},...a.filter(e=>parseInt(e.value)>=parseInt(t.from||"0"))],onChange:e=>k(o,"to",e),disabled:!t.from})))},S=n||s&&(u.from||b.from),z=()=>!(!u.to||!b.from)&&parseInt(u.to)>=parseInt(b.from);return(0,r.createElement)(y.Modal,{title:"Freeze / Unfreeze Table Rows & Columns",onRequestClose:_,className:"table-freeze-popover-modal",size:"large"},(0,r.createElement)("div",{className:"table-freeze-popover-container"},(0,r.createElement)(w,{freezeRows:0,freezeColumns:0,freezeWarning:z()?"Warning: Left and right freeze columns overlap!":"",setFreezeWarning:()=>{},freezeSettings:C()}),(0,r.createElement)("div",{className:"freeze-toggle-controls"},(0,r.createElement)(y.ToggleControl,{label:"Enable Freeze Header",help:"Keeps the header always visible while scrolling vertically.",className:"freeze-toggle",checked:n,onChange:i}),(0,r.createElement)(y.ToggleControl,{label:"Enable Freeze Columns",help:"Pins selected columns on the left or right edge while scrolling horizontally.",className:"freeze-toggle",checked:s,onChange:d})),s&&(0,r.createElement)("div",{className:"freeze-column-ranges"},(0,r.createElement)(E,{label:"Select From Left",range:u,rangeType:"left",options:g}),(0,r.createElement)(E,{label:"Select From Right",range:b,rangeType:"right",options:g})),(0,r.createElement)("div",{className:"table-freeze-popover__button-wrapper"},(0,r.createElement)(y.Button,{variant:"primary",onClick:()=>{const o=C();t({freezeSettings:{...e.freezeSettings||{},...o}}),l.current?.updateConfig?.(o),_()},disabled:!S||z(),className:"table-freeze-popover__button"},"Apply Freeze"),S&&(0,r.createElement)(y.Button,{variant:"secondary",onClick:()=>{i(!1),d(!1),h({from:"",to:""}),p({from:"",to:""}),t({freezeSettings:{...e.freezeSettings||{},fixedHeader:!1,fixedColumns:!1,leftFreeze:{from:0,to:0},rightFreeze:{from:0,to:0}}}),l.current?.destroy(),l.current=null,_()},className:"table-freeze-popover__button table-freeze-popover__clear-button"},"Clear All Freeze"))))},S=e=>{if(!e||"string"!=typeof e)return null;const t=e.trim();if(t.includes(",")){const e=t.split(",");return e.length>1?e[1].trim():null}return t};class z{constructor(e,t={}){if(this.table="string"==typeof e?document.querySelector(e):e,!this.table)throw new Error("Table element not found");this.config={fixedHeader:!1,fixedColumns:!1,leftFreeze:{from:null,to:null},rightFreeze:{from:null,to:null},minColumnWidth:120,...t},this.cellPositions=new Map,this.isInitialized=!1,this.observer=null,this.resizeObserver=null,this.debounceTimer=null,this.resizeDebounceTimer=null,this.init()}init(){this.isInitialized&&this.cleanup(),this.ensureTableWidth(),this.trackCellPositions(),this.applyStyles(),this.observeDOMChanges(),this.observeTableResize(),this.isInitialized=!0}observeDOMChanges(){const e=this.table.querySelector("tbody");e&&(this.observer&&this.observer.disconnect(),this.observer=new MutationObserver(e=>{e.some(e=>"childList"===e.type&&(e.addedNodes.length||e.removedNodes.length))&&(clearTimeout(this.debounceTimer),this.debounceTimer=setTimeout(()=>this.refreshPositions(),100))}),this.observer.observe(e,{childList:!0,subtree:!1}))}observeTableResize(){this.resizeObserver&&this.resizeObserver.disconnect();const e=this.table.closest(".table-freezer-container")||this.setupTableContainer();this.resizeObserver=new ResizeObserver(()=>{clearTimeout(this.resizeDebounceTimer),this.resizeDebounceTimer=setTimeout(()=>this.refreshPositions(),100)}),this.resizeObserver.observe(e)}ensureTableWidth(){const e=this.table.querySelectorAll("tr");if(0===e.length)return;const t=e[0].querySelectorAll("th, td");t.forEach(e=>{const t=this.config.minColumnWidth;e.style.width||e.offsetWidth<t&&(e.style.minWidth=`${t}px`,e.style.width=`${t}px`)}),this.table.style.minWidth=t.length*this.config.minColumnWidth+"px"}trackCellPositions(){const e=this.table.querySelectorAll("tr");if(this.cellPositions.clear(),!e.length)return;const t=e[0].querySelectorAll("th, td"),o=[];let r=0;t.forEach(e=>{const t=e.getBoundingClientRect().width;o.push({width:t,left:r}),r+=t}),e.forEach((e,t)=>{e.querySelectorAll("th, td").forEach((e,r)=>{const l=o[r];l&&(this.cellPositions.set(`${t}-${r}`,{left:l.left,width:l.width,rowIndex:t,cellIndex:r}),e.setAttribute("data-row-index",t),e.setAttribute("data-cell-index",r))})})}applyStyles(){this.setupTableContainer(),this.config.fixedColumns&&(null!==this.config.leftFreeze.from&&null!==this.config.leftFreeze.to&&this.applyLeftFreeze(),null!==this.config.rightFreeze.from&&null!==this.config.rightFreeze.to&&this.applyRightFreeze()),this.config.fixedHeader&&this.applyFixedHeader()}setupTableContainer(){let e=this.table.closest(".table-freezer-container");if(!e){const t=document.createElement("div");t.className="table-freezer-container",t.style.cssText="\n overflow: auto;\n position: relative;\n max-width: 100%;\n max-height: 500px;\n border: 1px solid #dee2e6;\n ",this.table.parentNode.insertBefore(t,this.table),t.appendChild(this.table),e=t}return this.table.style.position||(this.table.style.position="relative"),e}applyFixedHeader(){const e=this.table.querySelector("thead");e&&(this.config.headerBgColor&&(e.style.backgroundColor=S(this.config.headerBgColor)),this.config.headerColor&&(e.style.color=S(this.config.headerColor)),e.style.position="sticky",e.style.top="0",e.style.zIndex="20",e.setAttribute("data-frozen","header"))}clearFrozenColumns(e="left"){this.table.querySelectorAll(`[data-frozen="${e}"]`).forEach(e=>{e.removeAttribute("data-frozen"),e.removeAttribute("data-freeze-position"),e.style.position="",e.style.left="",e.style.right="",e.style.zIndex="",e.hasAttribute("data-conditional-formatting")||(e.style.backgroundColor="",e.style.color="")})}applyFrozenCellStyles(e,{position:t,left:o,right:r,zIndex:l,bgColor:a,color:n}){e.style.position="sticky",e.style.zIndex=l,"left"===t?(e.style.left=`${Math.round(o)}px`,e.setAttribute("data-freeze-position",Math.round(o))):(e.style.right=`${Math.round(r)}px`,e.setAttribute("data-freeze-position",Math.round(r))),e.hasAttribute("data-conditional-formatting")||(a&&(e.style.backgroundColor=S(a)),n&&(e.style.color=S(n))),e.setAttribute("data-frozen",t)}applyLeftFreeze(){let{from:e,to:t}=this.config.leftFreeze;if(null===e||null===t)return;t<e&&(t=e),this.clearFrozenColumns("left");let o=0;for(let r=e-1;r<t;r++){const e=this.table.querySelectorAll(`[data-cell-index="${r}"]`);if(!e.length)continue;e.forEach(e=>{const t=0===parseInt(e.getAttribute("data-row-index"))&&this.config.fixedHeader?20:15;this.applyFrozenCellStyles(e,{position:"left",left:o,zIndex:t,bgColor:this.config.leftColumnBgColor,color:this.config.leftColumnColor})});const t=this.cellPositions.get(`0-${r}`);t&&(o+=t.width)}}applyRightFreeze(){let{from:e,to:t}=this.config.rightFreeze;if(null===e||null===t)return;t<e&&(t=e),this.clearFrozenColumns("right");let o=0;for(let r=t-1;r>=e-1;r--){const e=this.table.querySelectorAll(`[data-cell-index="${r}"]`);if(!e.length)continue;e.forEach(e=>{const t=0===parseInt(e.getAttribute("data-row-index"))&&this.config.fixedHeader?20:15;this.applyFrozenCellStyles(e,{position:"right",right:o,zIndex:t,bgColor:this.config.rightColumnBgColor,color:this.config.rightColumnColor})});const t=this.cellPositions.get(`0-${r}`);t&&(o+=t.width)}}updateConfig(e){this.config={...this.config,...e},this.refreshPositions()}cleanup(){["left","right"].forEach(e=>this.clearFrozenColumns(e)),this.table.querySelectorAll("thead, tr, th, td").forEach(e=>{["data-frozen","data-freeze-position","data-row-index","data-cell-index","data-left-position","data-cell-width"].forEach(t=>e.removeAttribute(t)),"THEAD"===e.tagName||"TH"===e.tagName?(e.style.backgroundColor="",e.style.color=""):e.hasAttribute("data-conditional-formatting")||(e.style.position="",e.style.left="",e.style.right="",e.style.top="",e.style.zIndex="")}),this.table.style.position="",this.table.style.minWidth="",this.cellPositions.clear()}destroy(){this.cleanup(),this.observer&&this.observer.disconnect(),this.resizeObserver&&this.resizeObserver.disconnect(),clearTimeout(this.debounceTimer),clearTimeout(this.resizeDebounceTimer);const e=this.table.closest(".table-freezer-container");e&&e.parentNode&&(e.parentNode.insertBefore(this.table,e),e.remove()),this.isInitialized=!1}getCellPosition(e,t){return this.cellPositions.get(`${e}-${t}`)}refreshPositions(){this.trackCellPositions(),this.applyStyles()}}const x=({attributes:e,setAttributes:t,clientId:o})=>{const{GkitPanelBody:l,GkitColor:a,GkitSwitcher:n,GkitTabs:i}=window.GkitComponents||{},{freezeSettings:d}=e,[u,h]=(0,c.useState)(!1),b=(0,c.useRef)(null),p=document.querySelector('iframe[name="editor-canvas"]')||document.querySelector("iframe");let m=null;try{m=p?.contentDocument||p?.contentWindow?.document}catch(e){m=null}const g=(()=>{if(!m||!o)return null;const e=m.querySelector(`[data-block="${o}"]`)||m.querySelector(`#block-${o}`)||m.querySelector(`.wp-block[data-block="${o}"]`);return e?e.querySelector("table"):null})();return(0,c.useEffect)(()=>{g&&(d&&e?.enableFreeze?b.current?b.current.updateConfig(d):b.current=new z(g,d):(b.current?.destroy(),b.current=null))},[d,g,e?.enableFreeze]),(0,r.createElement)(l,{title:(0,s.__)("Freeze Table","table-builder-block"),initialOpen:!1},(0,r.createElement)(n,{label:(0,s.__)("Enable Freeze","table-builder-block"),value:e?.enableFreeze,onChange:e=>t({enableFreeze:e})}),e?.enableFreeze&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)(y.Button,{variant:"primary",onClick:()=>h(e=>!e),className:"table-builder-Freeze-button",style:{display:"flex",justifyContent:"center",alignItems:"center",background:"#3B67FE",color:"#fff",padding:"10px",borderRadius:"4px",fontWeight:500,width:"100%",marginBottom:"15px"}},"Freeze Settings"),(0,r.createElement)(y.__experimentalHeading,null,(0,s.__)("Freeze Header","table-builder-block")),(0,r.createElement)(a,{label:(0,s.__)("Color","table-builder-block"),value:d?.headerColor,onChange:e=>t({freezeSettings:{...d,headerColor:e}})}),(0,r.createElement)(a,{label:(0,s.__)("Background","table-builder-block"),value:d?.headerBgColor,onChange:e=>t({freezeSettings:{...d,headerBgColor:e}})}),(0,r.createElement)(y.__experimentalDivider,null),(0,r.createElement)(y.__experimentalHeading,null,(0,s.__)("Freeze Column","table-builder-block")),(0,r.createElement)(i,{type:"normal",tabs:[{name:"left-tab",title:(0,s.__)("Left","table-builder-block")},{name:"right-tab",title:(0,s.__)("Right","table-builder-block")}]},e=>"left-tab"===e.name?(0,r.createElement)(r.Fragment,null,(0,r.createElement)(a,{label:(0,s.__)("Color","table-builder-block"),value:d?.leftColumnColor,onChange:e=>t({freezeSettings:{...d,leftColumnColor:e}})}),(0,r.createElement)(a,{label:(0,s.__)("Background","table-builder-block"),value:d?.leftColumnBgColor,onChange:e=>t({freezeSettings:{...d,leftColumnBgColor:e}})})):"right-tab"===e.name?(0,r.createElement)(r.Fragment,null,(0,r.createElement)(a,{label:(0,s.__)("Background","table-builder-block"),value:d?.rightColumnColor,onChange:e=>t({freezeSettings:{...d,rightColumnColor:e}})}),(0,r.createElement)(a,{label:(0,s.__)("Background","table-builder-block"),value:d?.rightColumnBgColor,onChange:e=>t({freezeSettings:{...d,rightColumnBgColor:e}})})):void 0)),u&&(0,r.createElement)(E,{attributes:e,setAttributes:t,setFreezePopOverOpen:h,freezerRef:b}))},T=(0,c.memo)(({attributes:e,setAttributes:t,device:o,advancedControl:l,clientId:n})=>{const{GkitBoxShadow:i,GkitColor:c,GkitPanelBody:d,GkitResponsive:u,GkitTabs:m,GkitBackgrounGroup:g,GkitSlider:f,GkitChoose:y,GkitBoxControl:v,GkitBorderControl:_,GkitSwitcher:C,GkitTypography:w,GkitNumber:E}=window.GkitComponents,{AdvancedColumnStyle:S,HeaderStyle:z,CaptionStyle:T,CellStyle:A,CommonStyle:B,ShortCode:H}=window?.tableBuilder?.components,{gkitResponsiveValue:L,responsiveHelper:M,useFontFamilyinBlock:R}=window.GkitHelpers,{useProActive:F,useTableFreeInitialization:N}=window?.tableBuilder?.helpers,$=e?.mergeTableCell&&Object.values(e?.mergeTableCell).some(e=>!0===e.hidden),q=F();return R([e?.headerTypography,e?.footerTypography,e?.typography,e?.captionTypography]),N(e,q),(0,r.createElement)(r.Fragment,null,(0,r.createElement)(a.InspectorControls,null,(0,r.createElement)(m,{type:"top-level",tabs:[{name:"content",title:(0,s.__)("Content","table-builder-block")},{name:"style",title:(0,s.__)("Style","table-builder-block")},{name:"advanced",title:(0,s.__)("Advanced","table-builder-block")}]},a=>{switch(a.name){case"content":return(0,r.createElement)(r.Fragment,null,(0,r.createElement)(d,{title:(0,s.__)("Settings","table-builder-block"),initialOpen:!0},(0,r.createElement)(C,{label:(0,s.__)("Enable Header","table-builder-block"),value:e?.hasHeader,onChange:e=>t({hasHeader:e}),help:!e?.hasHeader&&(0,r.createElement)("span",{className:"table-builder-block__notice"},(0,s.__)("Sort & duplicate columns not work without header","table-builder-block"))}),(0,r.createElement)(C,{label:(0,s.__)("Enable Footer","table-builder-block"),value:e?.hasFooter,onChange:e=>t({hasFooter:e})}),(0,r.createElement)(C,{label:(0,s.__)("Enable Sort","table-builder-block"),value:!!q&&e?.enableSorting,onChange:e=>t({enableSorting:e}),disabled:!q,help:q?!0!==$?(0,r.createElement)("span",{className:"table-builder-block__notice"},(0,s.__)("Sorting work at frontend","table-builder-block")):(0,r.createElement)("span",{className:"table-builder-block__notice"},(0,s.__)("Merged cells detected. Please disable sorting to prevent layout issues.","table-builder-block")):(0,s.__)("Pro Feature","table-builder-block")}),(0,r.createElement)(C,{label:(0,s.__)("Fixed width table cells","table-builder-block"),value:e?.hasFixedLayout,onChange:e=>t({hasFixedLayout:e})}),(0,r.createElement)(C,{label:(0,s.__)("Border Collapse","table-builder-block"),value:e?.hasBorderCollaps,onChange:e=>t({hasBorderCollaps:e})}),!e?.hasBorderCollaps&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)(u,null,(0,r.createElement)(f,{label:(0,s.__)("Vertical Spacing","table-builder-block"),value:L(e,"borderVerticalSpacing",o),onChange:e=>M("borderVerticalSpacing",e,o,t),sizeUnits:["px","em"],range:{min:0,max:100}})),(0,r.createElement)(u,null,(0,r.createElement)(f,{label:(0,s.__)("Horizontal Spacing","table-builder-block"),value:L(e,"borderHorizontalSpacing",o),onChange:e=>M("borderHorizontalSpacing",e,o,t),sizeUnits:["px","em"],range:{min:0,max:100}}))),(0,r.createElement)(C,{label:(0,s.__)("Enable Caption","table-builder-block"),value:e?.showCaption,onChange:e=>t({showCaption:e})}),e?.showCaption&&(0,r.createElement)(y,{label:(0,s.__)("Caption Position","table-builder-block"),value:e?.captionPosition,onChange:e=>t({captionPosition:e}),isToggle:!1,options:[{label:(0,s.__)("Top","table-builder-block"),value:"top"},{label:(0,s.__)("Bottom","table-builder-block"),value:"bottom"}]})),(0,r.createElement)(H,{attributes:e,setAttributes:t,device:o}));case"style":return(0,r.createElement)(r.Fragment,null,(0,r.createElement)(B,{attributes:e,setAttributes:t,device:o,verticalAlign:!0}),e.hasHeader&&(0,r.createElement)(z,{attributes:e,setAttributes:t,device:o}),(0,r.createElement)(S,{attributes:e,setAttributes:t,columnItems:"columnItems",header:e?.headers}),e.hasFooter&&(0,r.createElement)(d,{title:(0,s.__)("Footer","table-builder-block")},(0,r.createElement)(u,null,(0,r.createElement)(y,{label:(0,s.__)("Alignment","table-builder-block"),value:L(e,"footerAlignment",o),options:[{label:"Left",value:"left",icon:h},{label:"Center",value:"center",icon:b},{label:"Right",value:"right",icon:p}],onChange:e=>M("footerAlignment",e,o,t)})),(0,r.createElement)(w,{label:(0,s.__)("Typography","table-builder-block"),onChange:e=>t({footerTypography:e}),value:e?.footerTypography}),(0,r.createElement)(c,{label:(0,s.__)("Color","table-builder-block"),onChange:e=>t({footerColor:e}),value:e?.footerColor}),(0,r.createElement)(g,{label:(0,s.__)("Background","table-builder-block"),onChange:e=>t({footerBackground:e}),value:e?.footerBackground,exclude:{video:!0,image:!0}}),(0,r.createElement)(_,{label:(0,s.__)("Border","table-builder-block"),value:e.footerBorder,onChange:e=>t({footerBorder:e})}),(0,r.createElement)(u,null,(0,r.createElement)(v,{label:(0,s.__)("Border Radius","table-builder-block"),values:L(e,"footerBorderRadius",o),onChange:e=>M("footerBorderRadius",e,o,t)})),(0,r.createElement)(u,null,(0,r.createElement)(v,{label:(0,s.__)("Padding","table-builder-block"),values:L(e,"footerPadding",o),onChange:e=>M("footerPadding",e,o,t)}))),(0,r.createElement)(A,{attributes:e,setAttributes:t,device:o}),(0,r.createElement)(T,{attributes:e,setAttributes:t,device:o}));case"advanced":return(0,r.createElement)(r.Fragment,null,q&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)(x,{attributes:e,setAttributes:t,clientId:n}),(0,r.createElement)(k,{attributes:e,setAttributes:t,clientId:n}),(0,r.createElement)(d,{title:(0,s.__)("Resizer","table-builder-block")},(0,r.createElement)(C,{label:(0,s.__)("Enable Resizer","table-builder-block"),value:e?.resizerEnabled,onChange:e=>t({resizerEnabled:e}),help:(0,s.__)("Allow resizing table columns and rows in the editor.","table-builder-block")}))),l)}})))});class A{constructor(e,t,o,r,l=()=>{},a=()=>{}){this.getModalTable=e,this.getExternalTable=t,this.cells=o||{},this.setAttributes=r,this.onMergeModeChange=l,this.onMergeWarning=a,this.selectedCell=null,this.mergeMode="merge",this.isSelecting=!1,this.startCoords=null,this.invalidSelection=!1,this.focusedCell=null,this.isShiftSelecting=!1}getKey(e,t){return`${e}-${t}`}static assignDataAttributes(e){e&&e.querySelectorAll("tr").forEach((e,t)=>{Array.from(e.querySelectorAll("td, th")).forEach((e,o)=>{e.setAttribute("data-row",t),e.setAttribute("data-col",o)})})}getSectionType(e){if(!e?.parentElement?.parentElement)return null;const t=e.parentElement.parentElement;return"THEAD"===t.tagName?"thead":"TFOOT"===t.tagName?"tfoot":"tbody"}restoreTableState(){const e=this.getModalTable(),t=this.getExternalTable();e&&t&&(A.assignDataAttributes(e),A.assignDataAttributes(t),Object.keys(this.cells).forEach(o=>{const r=this.cells[o];if(!r)return;const[l,a]=o.split("-").map(Number);[e.querySelector(`[data-row="${l}"][data-col="${a}"]`),t.querySelector(`[data-row="${l}"][data-col="${a}"]`)].forEach(e=>{e&&(e.removeAttribute("rowspan"),e.removeAttribute("colspan"),e.style.display="",r.hidden||"none"===r.display?e.style.display="none":(r.rowSpan>1&&(e.rowSpan=r.rowSpan),r.colSpan>1&&(e.colSpan=r.colSpan)))})}))}clearSelection(){[this.getModalTable(),this.getExternalTable()].forEach(e=>{e&&e.querySelectorAll(".selected").forEach(e=>e.classList.remove("selected"))}),this.selectedCell=null}handleCellSelection(e){if(!e)return;const t=parseInt(e.dataset.row),o=parseInt(e.dataset.col),r=this.getKey(t,o),l=this.cells[r];this.clearSelection(),e.classList.add("selected");const a=this.getExternalTable()?.querySelector(`[data-row="${t}"][data-col="${o}"]`);a&&a.classList.add("selected"),this.selectedCell={row:t,col:o,element:e},this.focusedCell={row:t,col:o};const n=l&&(l.rowSpan>1||l.colSpan>1)||e.rowSpan>1||e.colSpan>1;this.mergeMode=n?"unmerge":"merge",this.onMergeModeChange(this.mergeMode)}updateSelectionRange(e){if(!this.startCoords||!e)return;const t=this.getModalTable(),o=this.getExternalTable();if(!t||!o)return;const r=t.querySelector(`[data-row="${this.startCoords.row}"][data-col="${this.startCoords.col}"]`);if(!r)return;const l=this.getSectionType(r),a=this.getSectionType(e);this.invalidSelection=l!==a;const n=this.startCoords.row,i=this.startCoords.col,s=parseInt(e.dataset.row),c=parseInt(e.dataset.col),d=Math.min(n,s),u=Math.max(n,s),h=Math.min(i,c),b=Math.max(i,c);this.clearSelection();let p=!1;for(let e=d;e<=u;e++)for(let r=h;r<=b;r++){const a=t.querySelector(`[data-row="${e}"][data-col="${r}"]`),n=o.querySelector(`[data-row="${e}"][data-col="${r}"]`);a&&this.getSectionType(a)===l&&(a.classList.add("selected"),"none"===a.style.display&&(p=!0),n&&n.classList.add("selected"))}this.mergeMode=p?"unmerge":"merge",this.onMergeModeChange(this.mergeMode)}handleMerge(){const e=this.getModalTable(),t=this.getExternalTable();if(!e||!t)return!1;const o=e.querySelectorAll(".selected");return!(o.length<1)&&(1===o.length&&"unmerge"===this.mergeMode?this.unmergeCell():o.length>1&&this.mergeCells(o))}mergeCells(e){if(e.length<2)return!1;const t=this.getSectionType(e[0]);if(!t)return!1;for(let o of e)if(this.getSectionType(o)!==t)return console.warn("Cannot merge cells from different table sections."),!1;const o=Array.from(e).map(e=>({row:parseInt(e.dataset.row),col:parseInt(e.dataset.col),element:e})),r=o.map(e=>e.row),l=o.map(e=>e.col),a=Math.min(...r),n=Math.max(...r),i=Math.min(...l),s=Math.max(...l),c=n-a+1,d=s-i+1,u=o.find(e=>e.row===a&&e.col===i);if(!u)return!1;this.getModalTable();const h=this.getExternalTable(),b={...this.cells};u.element.rowSpan=c,u.element.colSpan=d;const p=h.querySelector(`[data-row="${a}"][data-col="${i}"]`);return p&&(p.rowSpan=c,p.colSpan=d),b[this.getKey(a,i)]={rowSpan:c,colSpan:d,hidden:!1,display:"","data-row":a,"data-col":i},o.forEach(e=>{if(e.element!==u.element){const t=this.getKey(e.row,e.col);e.element.style.display="none";const o=h.querySelector(`[data-row="${e.row}"][data-col="${e.col}"]`);o&&(o.style.display="none"),b[t]={rowSpan:1,colSpan:1,hidden:!0,display:"none","data-row":e.row,"data-col":e.col}}}),this.setAttributes(b),this.clearSelection(),!0}unmergeCell(){if(!this.selectedCell)return!1;const{row:e,col:t,element:o}=this.selectedCell,r=this.getKey(e,t),l=this.cells[r];if(!l)return!1;const a=this.getModalTable(),n=this.getExternalTable(),i={...this.cells},s=l.rowSpan||1,c=l.colSpan||1;o.rowSpan=1,o.colSpan=1;const d=n.querySelector(`[data-row="${e}"][data-col="${t}"]`);d&&(d.rowSpan=1,d.colSpan=1);for(let o=e;o<e+s;o++)for(let e=t;e<t+c;e++){const t=this.getKey(o,e),r=a.querySelector(`[data-row="${o}"][data-col="${e}"]`);r&&(r.style.display="");const l=n.querySelector(`[data-row="${o}"][data-col="${e}"]`);l&&(l.style.display=""),i[t]={rowSpan:1,colSpan:1,hidden:!1,display:"","data-row":o,"data-col":e}}return this.setAttributes(i),this.clearSelection(),!0}handleMouseDown(e){const t=e.target.closest("td, th");t&&(this.isShiftSelecting=e.shiftKey,this.isShiftSelecting&&this.startCoords?this.updateSelectionRange(t):(this.isSelecting=!0,this.invalidSelection=!1,this.startCoords={row:parseInt(t.dataset.row),col:parseInt(t.dataset.col)},this.handleCellSelection(t)))}handleMouseOver(e){if(!this.isSelecting||this.isShiftSelecting)return;const t=e.target.closest("td, th");t&&this.updateSelectionRange(t)}handleMouseUp(){this.isSelecting=!1,this.isShiftSelecting=!1,this.invalidSelection&&(this.clearSelection(),this.mergeMode="merge",this.onMergeModeChange(this.mergeMode),this.onMergeWarning&&requestAnimationFrame(()=>{this.onMergeWarning("Cannot select cells across different table sections (thead, tbody, tfoot).")})),this.invalidSelection=!1}getMergeMode(){return this.mergeMode}getSelectedCellsCount(){const e=this.getModalTable();return e?e.querySelectorAll(".selected").length:0}moveFocus(e){if(!this.focusedCell){const e=this.getModalTable();if(!e)return;const t=e.querySelector("td, th");return void(t&&(this.focusedCell={row:parseInt(t.dataset.row),col:parseInt(t.dataset.col)},this.handleCellSelection(t)))}const t=this.getModalTable();if(!t)return;let o=this.focusedCell.row,r=this.focusedCell.col;switch(e){case"up":o=Math.max(0,o-1);break;case"down":o+=1;break;case"left":r=Math.max(0,r-1);break;case"right":r+=1}const l=t.querySelector(`[data-row="${o}"][data-col="${r}"]`);l&&"none"!==l.style.display&&(this.handleCellSelection(l),l.scrollIntoView({block:"nearest",inline:"nearest"}))}expandSelection(e){if(!this.startCoords){if(!this.focusedCell)return;this.startCoords={...this.focusedCell}}if(!this.focusedCell)return;const t=this.getModalTable();if(!t)return;let o=this.focusedCell.row,r=this.focusedCell.col;switch(e){case"up":o=Math.max(0,o-1);break;case"down":o+=1;break;case"left":r=Math.max(0,r-1);break;case"right":r+=1}const l=t.querySelector(`[data-row="${o}"][data-col="${r}"]`);l&&"none"!==l.style.display&&(this.focusedCell={row:parseInt(l.dataset.row),col:parseInt(l.dataset.col)},this.updateSelectionRange(l),l.scrollIntoView({block:"nearest",inline:"nearest"}))}clearAllMerges(){const e=this.getModalTable(),t=this.getExternalTable();if(!e||!t)return!1;const o={};return e.querySelectorAll("td, th").forEach(e=>{const r=parseInt(e.dataset.row),l=parseInt(e.dataset.col),a=this.getKey(r,l);e.rowSpan=1,e.colSpan=1,e.style.display="";const n=t.querySelector(`[data-row="${r}"][data-col="${l}"]`);n&&(n.rowSpan=1,n.colSpan=1,n.style.display=""),o[a]={rowSpan:1,colSpan:1,hidden:!1,display:"","data-row":r,"data-col":l}}),this.setAttributes(o),this.clearSelection(),!0}}const B=({mergeMode:e,selectedCount:t,mergeWarning:o,setMergeWarning:l})=>{const a=(0,c.useRef)(null),n="merge"===e,i=n?"Select cells using mouse or keyboard arrows. Keyboard: Hold Shift + use Arrow Keys. Mouse: Hold Shift + use Mouse Cursor to select cells.":'Selected cell is merged. Click "Unmerge Cell" or press Enter/Space to split it back into individual cells.',s=t>0?`${t} cell${1!==t?"s":""} selected`:"No cells selected",d=0===t?"Click any cell to start":"unmerge"===e?"Ready to unmerge":t>1?"Ready to merge":"Select more cells to merge";return(0,c.useEffect)(()=>{if(o&&a.current){a.current.classList.add("table-merge-popover-modal__toast--visible");const e=setTimeout(()=>{l(""),a.current?.classList.remove("table-merge-popover-modal__toast--visible")},4e3);return()=>clearTimeout(e)}},[o,l]),(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:"table-merge-popover-modal__instruction"},(0,r.createElement)("div",{className:"table-merge-popover-modal__instruction-container"},(0,r.createElement)("div",{className:"table-merge-popover-modal__instruction-header"},(0,r.createElement)("span",{className:"table-merge-popover-modal__instruction-mode "+(n?"merge-active":"")},n?"🔗 Merge Mode":"✂️ Unmerge Mode"),(0,r.createElement)("span",{className:"table-merge-popover-modal__instruction-status"},s),(0,r.createElement)("span",{className:"table-merge-popover-modal__instruction-actionText "+(t>1&&n?"merge-active":"")},"• ",d))),(0,r.createElement)("p",{className:"table-merge-popover-modal__instruction-text"},"💡 ",(0,r.createElement)("strong",null,"How to select:")," ",i)),o&&(0,r.createElement)("div",{ref:a,className:"table-merge-popover-modal__toast"},(0,r.createElement)("span",{style:{fontSize:"18px"}},"⚠️"),(0,r.createElement)("span",null,(0,r.createElement)("strong",null,"Warning:")," ",o)))},H=({attributes:e,setAttributes:t,setMergePopOverOpen:o,isVisible:l,externalTableRef:a})=>{const n=(0,c.useRef)(null),i=(0,c.useRef)(null),[s,d]=(0,c.useState)(""),[u,h]=(0,c.useState)("merge"),[b,p]=(0,c.useState)(0),[m,g]=(0,c.useState)(e.mergeTableCell||{});(0,c.useEffect)(()=>{g(e.mergeTableCell||{})},[e.mergeTableCell]);const f=()=>i.current,v=()=>a.current,_=()=>{n.current&&(h(n.current.getMergeMode()),p(n.current.getSelectedCellsCount()))},C=()=>{n.current&&n.current.clearSelection(),o(!1)};(0,c.useEffect)(()=>{const e=new A(f,v,m,e=>{g(e),t({mergeTableCell:e})},h,e=>d(e));n.current=e;const o=f();if(!o)return;const r=t=>{e.handleMouseDown(t),_()},l=t=>{e.handleMouseOver(t),_()},a=t=>{e.handleMouseUp(t),_()};o.addEventListener("mousedown",r),o.addEventListener("mouseover",l),document.addEventListener("mouseup",a);const i=t=>{if(e)if(["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"].includes(t.key)){t.preventDefault();const o=t.key.replace("Arrow","").toLowerCase();t.shiftKey?e.expandSelection(o):e.moveFocus(o),_()}else"Enter"===t.key||" "===t.key?(t.preventDefault(),k()):"Escape"===t.key&&(t.preventDefault(),e.clearSelection(),_())};return document.addEventListener("keydown",i),A.assignDataAttributes(o),A.assignDataAttributes(v()),e.restoreTableState(),_(),()=>{o.removeEventListener("mousedown",r),o.removeEventListener("mouseover",l),document.removeEventListener("mouseup",a),document.removeEventListener("keydown",i)}},[m,t,e.rowCount,e.columnCount]);const k=()=>{n.current&&n.current.handleMerge()&&setTimeout(()=>{C()},100)};(0,c.useEffect)(()=>{const e=document.querySelector(".components-modal__screen-overlay");e&&(e.style.visibility=l?"visible":"hidden")},[l]);const w=b>=1&&("unmerge"===u||b>1);return(0,r.createElement)(y.Modal,{title:"Merge/Unmerge Table Cells",onRequestClose:C,size:"fill",className:"table-merge-popover-modal",style:l?{display:"block"}:{display:"none"}},(0,r.createElement)(B,{mergeMode:u,selectedCount:b,mergeWarning:s,setMergeWarning:d}),(0,r.createElement)("div",{className:"table-merge-popover__scrollable-container"},(0,r.createElement)("table",{className:"table-merge-popover",ref:i},e?.hasHeader&&(0,r.createElement)("thead",{className:"table-merge-popover__header"},(0,r.createElement)("tr",null,e?.headers?.map((e,t)=>(0,r.createElement)("th",{key:t},e.title)))),(0,r.createElement)("tbody",{className:"table-merge-popover__body"},Array.from({length:e?.rowCount||0}).map((t,o)=>(0,r.createElement)("tr",{key:o},Array.from({length:e?.columnCount||0}).map((e,t)=>(0,r.createElement)("td",{key:t,"data-row":o,"data-col":t},"Cell ",o+1,"-",t+1))))),e?.hasFooter&&(0,r.createElement)("tfoot",{className:"table-merge-popover__footer"},(0,r.createElement)("tr",null,e?.footers?.map((e,t)=>(0,r.createElement)("td",{key:t},e.title)))))),(0,r.createElement)("div",{className:"table-merge-popover__button-wrapper"},(0,r.createElement)("div",{className:"table-merge-popover__shortcuts"},(0,r.createElement)("small",{style:{color:"#666",fontSize:"12px",lineHeight:"1.4"}},(0,r.createElement)("strong",null,"⌨️ Keyboard shortcuts:")," Arrow keys to navigate | Shift + Arrows to select | Enter/Space to merge/unmerge | Esc to clear"),(0,r.createElement)("small",{style:{color:"#666",fontSize:"12px",marginTop:"4px",display:"block"}},(0,r.createElement)("strong",null,"🖱️ Mouse shortcuts:")," Click & drag to select | Shift + Click to extend selection")),(0,r.createElement)("div",{style:{display:"flex",gap:"8px"}},(0,r.createElement)(y.Button,{variant:"tertiary",onClick:()=>{n.current&&window.confirm("Are you sure you want to clear all merged cells? This action cannot be undone.")&&(n.current.clearAllMerges(),_())},className:"table-merge-popover__clear-button",isDestructive:!0,disabled:!(()=>{const e=m||{};return Object.values(e).some(e=>e&&(e.rowSpan>1||e.colSpan>1||!0===e.hidden))})()},"Clear All Merges"),(0,r.createElement)(y.Button,{variant:"primary",onClick:k,className:"table-merge-popover__button",disabled:!w},0===b?"Select a cell":1===b&&"unmerge"===u?"Unmerge Cell":b>1?`Merge ${b} Cells`:"Select more cells to merge"))))},L=(0,u.jsx)(d.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:(0,u.jsx)(d.Path,{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM5 4.5h14c.3 0 .5.2.5.5v3.5h-15V5c0-.3.2-.5.5-.5zm8 5.5h6.5v3.5H13V10zm-1.5 3.5h-7V10h7v3.5zm-7 5.5v-4h7v4.5H5c-.3 0-.5-.2-.5-.5zm14.5.5h-6V15h6.5v4c0 .3-.2.5-.5.5z"})}),M=e=>e.map(e=>wp.blocks.createBlock(e.name,{...e.attributes},e.innerBlocks?.length?M(e.innerBlocks):[])),R=(e=!1,t=!1)=>{const o=document.createElement("div");if(o.className="column-selection-overlay",o.style.cssText="\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(37, 99, 235, 0.35);\n border: 2px solid rgba(37, 99, 235, 0.3);\n pointer-events: none;\n z-index: 1;\n border-radius: inherit;\n ",t&&e){const e=document.createElement("span");e.className="column-indicator-badge",e.textContent="Selected",e.style.cssText="\n position: absolute;\n top: 4px;\n right: 4px;\n padding: 2px 8px;\n background: #2563eb;\n color: white;\n font-size: 11px;\n font-weight: 600;\n border-radius: 4px;\n pointer-events: none;\n z-index: 2;\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n ",o.appendChild(e)}return o},F=(e,t,o=!0)=>{const r=e?.querySelector("thead"),l=e?.querySelector("tbody"),a=e?.querySelector("tfoot");if(r){const e=r.querySelectorAll("th")[t];if(e)if(o){"static"===window.getComputedStyle(e).position&&(e.style.position="relative");const t=e.querySelector(".column-selection-overlay");t&&t.remove();const o=R(!0,!0);e.appendChild(o)}else{const t=e.querySelector(".column-selection-overlay");t&&t.remove()}}l&&l.querySelectorAll("tr").forEach(e=>{const r=e.querySelectorAll("td, th")[t];if(r)if(o){"static"===window.getComputedStyle(r).position&&(r.style.position="relative");const e=r.querySelector(".column-selection-overlay");e&&e.remove();const t=R(!1);r.appendChild(t)}else{const e=r.querySelector(".column-selection-overlay");e&&e.remove()}}),a&&a.querySelectorAll("tr").forEach(e=>{const r=e.querySelectorAll("td, th")[t];if(r)if(o){"static"===window.getComputedStyle(r).position&&(r.style.position="relative");const e=r.querySelector(".column-selection-overlay");e&&e.remove();const t=R(!0);r.appendChild(t)}else{const e=r.querySelector(".column-selection-overlay");e&&e.remove()}})};class N{constructor(e,t={}){var o,r,l;if(!e||"TABLE"!==e?.tagName?.toUpperCase())throw new Error("TableColumnResizer: invalid table element");this.table=e,this.doc=e.ownerDocument,this.win=e.ownerDocument.defaultView||window,this.options={minWidth:null!==(o=t.minWidth)&&void 0!==o?o:50,onResize:null!==(r=t.onResize)&&void 0!==r?r:null,onResizeEnd:null!==(l=t.onResizeEnd)&&void 0!==l?l:null},this._dragging=!1,this._col=null,this._colIndex=-1,this._startX=0,this._startW=0,this._raf=null,this._previewLine=null,this._tooltip=null,this._widths=[],this._positionCache=new WeakMap,this._onMove=this._onMove.bind(this),this._onUp=this._onUp.bind(this),this._init()}getColumnWidths(){return this._headers().map(e=>e.offsetWidth)}setColumnWidths(e){if(!Array.isArray(e)||!e.length)return;const t=e.reduce((e,t)=>e+(t||0),0);0!==t&&(this._widths=e.map(e=>e||0),this._headers().forEach((o,r)=>{e[r]&&this._applyPct(r,e[r],t)}))}destroy(){this.table.querySelectorAll(".gkit-col-resizer").forEach(e=>e.remove()),this.table.querySelectorAll(".gkit-col-preview-line, .gkit-resize-tooltip--col").forEach(e=>e.remove()),this.table.classList.remove("gkit-table-resizable","gkit-is-resizing"),this.table.style.tableLayout="",this.table.style.width="",this.table.querySelectorAll("thead th, tbody td, tbody th, tfoot td, tfoot th").forEach(e=>{e.style.width="",e.style.minWidth=""}),this._observer?.disconnect(),clearTimeout(this._reinitTimer),this._reinitRaf&&cancelAnimationFrame(this._reinitRaf),this._raf&&cancelAnimationFrame(this._raf),this._cleanup()}_init(){this.table.classList.add("gkit-table-resizable"),this.table.style.tableLayout="fixed",this.table.style.width="100%";const e=this._headers();e.length&&(this._widths=e.map(e=>e.offsetWidth),e.forEach((e,t)=>this._addHandle(e,t)),this._observe())}_addHandle(e,t,o){var r;if(e.querySelector(".gkit-col-resizer"))return;const l=this.doc.createElement("div");l.className="gkit-col-resizer",l.setAttribute("aria-label",`Resize column ${t+1}`);const a=null!==(r=null!=o?o:this._positionCache.get(e))&&void 0!==r?r:this.win.getComputedStyle(e).position;this._positionCache.set(e,a),"static"===a&&(e.style.position="relative"),e.appendChild(l),l.addEventListener("mousedown",o=>this._onDown(o,e,t)),l.addEventListener("dblclick",o=>this._onDblClick(o,e,t)),l.addEventListener("touchstart",o=>this._onTouchStart(o,e,t),{passive:!1})}_onDown(e,t,o){0===e.button&&(e.preventDefault(),e.stopPropagation(),this._dragging=!0,this._col=t,this._colIndex=o,this._startX=e.pageX,this._startW=t.offsetWidth,this.table.classList.add("gkit-is-resizing"),this.doc.body.style.userSelect="none",this.doc.body.style.cursor="col-resize",e.target.classList.add("gkit-col-resizer--active"),this._previewLine=this.doc.createElement("div"),this._previewLine.className="gkit-col-preview-line",this._updatePreviewLine(this._startW,t),this.table.appendChild(this._previewLine),this._tooltip=this.doc.createElement("div"),this._tooltip.className="gkit-resize-tooltip gkit-resize-tooltip--col",this._tooltip.textContent=`Width: ${Math.round(this._startW)}px`,this._updateTooltipCol(this._startW,t),this.table.appendChild(this._tooltip),this.doc.addEventListener("mousemove",this._onMove),this.doc.addEventListener("mouseup",this._onUp))}_onTouchStart(e,t,o){e.preventDefault();const r=e.touches[0];this._dragging=!0,this._col=t,this._colIndex=o,this._startX=r.pageX,this._startW=t.offsetWidth,this.table.classList.add("gkit-is-resizing");const l=e=>{e.preventDefault();const t=Math.max(this.options.minWidth,this._startW+(e.touches[0].pageX-this._startX));this._applyWidth(this._colIndex,t)},a=()=>{this._finalize(),this.doc.removeEventListener("touchmove",l),this.doc.removeEventListener("touchend",a)};this.doc.addEventListener("touchmove",l,{passive:!1}),this.doc.addEventListener("touchend",a)}_onMove(e){this._dragging&&(e.preventDefault(),this._raf&&cancelAnimationFrame(this._raf),this._raf=requestAnimationFrame(()=>{const t=Math.max(this.options.minWidth,this._startW+(e.pageX-this._startX));this._applyWidth(this._colIndex,t),this.options.onResize?.(this._colIndex,t),this._updatePreviewLine(t,this._col),this._tooltip&&(this._tooltip.textContent=`Width: ${Math.round(t)}px`,this._updateTooltipCol(t,this._col))}))}_onUp(e){this._dragging&&(e.preventDefault(),this._raf&&(cancelAnimationFrame(this._raf),this._raf=null),this._finalize(),this._cleanup())}_finalize(){this._dragging=!1,this.table.classList.remove("gkit-is-resizing"),this.table.querySelectorAll(".gkit-col-resizer--active").forEach(e=>e.classList.remove("gkit-col-resizer--active")),this._previewLine?.remove(),this._previewLine=null,this._tooltip?.remove(),this._tooltip=null;const e=this.getColumnWidths();this._widths=[...e],this.options.onResizeEnd?.(e)}_onDblClick(e,t,o){e.preventDefault(),e.stopPropagation();const r=t.style.width;t.style.width="auto";const l=Math.max(this.options.minWidth,t.scrollWidth+2);t.style.width=r,this._applyWidth(o,l);const a=this.getColumnWidths();this._widths=[...a],this.options.onResizeEnd?.(a)}_updatePreviewLine(e,t){if(!this._previewLine)return;const o=this.table.getBoundingClientRect().left,r=t.getBoundingClientRect().left;this._previewLine.style.left=`${r-o+e}px`}_updateTooltipCol(e,t){if(!this._tooltip)return;const o=this.table.getBoundingClientRect().left,r=t.getBoundingClientRect().left-o+e;this._tooltip.style.left=`${Math.max(4,Math.min(r+8,this.table.offsetWidth-90-4))}px`,this._tooltip.style.top="4px"}_cleanup(){this.doc.body.style.userSelect="",this.doc.body.style.cursor="",this.doc.removeEventListener("mousemove",this._onMove),this.doc.removeEventListener("mouseup",this._onUp)}_applyWidth(e,t){const o=this._headers(),r=this._widths.length===o.length?[...this._widths]:o.map(e=>e.offsetWidth);r[e]=t,this._widths=r;const l=r.reduce((e,t)=>e+t,0);o.forEach((e,t)=>this._applyPct(t,r[t],l))}_applyPct(e,t,o){const r=`${(t/o*100).toFixed(4)}%`,l=`${this.options.minWidth}px`,a=this._headers()[e];a&&(a.style.width=r,a.style.minWidth=l),this.table.querySelectorAll("tbody tr, tfoot tr").forEach(t=>{const o=t.querySelectorAll("td, th")[e];o&&"none"!==o.style.display&&(o.style.width=r,o.style.minWidth=l)})}_headers(){const e=Array.from(this.table.querySelectorAll("thead th"));if(e.length)return e;const t=this.table.querySelector("tr");return t?Array.from(t.querySelectorAll("th, td")):[]}_observe(){const e=this.table.querySelector("thead");e&&"undefined"!=typeof MutationObserver&&(this._observer=new MutationObserver(()=>{clearTimeout(this._reinitTimer),this._reinitRaf&&cancelAnimationFrame(this._reinitRaf),this._reinitTimer=setTimeout(()=>{this._reinitRaf=requestAnimationFrame(()=>{this._reinitRaf=null;const e=this._headers(),t=e.map(e=>{if(this._positionCache.has(e))return this._positionCache.get(e);const t=this.win.getComputedStyle(e).position;return this._positionCache.set(e,t),t});this.table.querySelectorAll(".gkit-col-resizer").forEach(e=>e.remove()),e.forEach((e,o)=>this._addHandle(e,o,t[o]))})},100)}),this._observer.observe(e,{childList:!0,subtree:!0}))}}class ${constructor(e,t={}){var o,r,l,a;if(!e||"TABLE"!==e?.tagName?.toUpperCase())throw new Error("TableRowResizer: invalid table element");this.table=e,this.doc=e.ownerDocument,this.win=e.ownerDocument.defaultView||window,this.options={minHeight:null!==(o=t.minHeight)&&void 0!==o?o:30,onResize:null!==(r=t.onResize)&&void 0!==r?r:null,onResizeEnd:null!==(l=t.onResizeEnd)&&void 0!==l?l:null,onHeaderResizeEnd:null!==(a=t.onHeaderResizeEnd)&&void 0!==a?a:null},this._dragging=!1,this._row=null,this._rowIndex=-1,this._section="tbody",this._startY=0,this._startH=0,this._raf=null,this._previewLine=null,this._tooltip=null,this._heights=[],this._headerHeight=0,this._onMove=this._onMove.bind(this),this._onUp=this._onUp.bind(this),this._init()}getRowHeights(){return this._rows().map(e=>e.offsetHeight)}getHeaderHeight(){var e;return null!==(e=this._headerRow()?.offsetHeight)&&void 0!==e?e:0}setRowHeights(e){Array.isArray(e)&&e.length&&(this._heights=e.map(e=>e||0),this._rows().forEach((t,o)=>{e[o]&&(t.style.height=`${e[o]}px`)}))}setHeaderHeight(e){if(!e)return;this._headerHeight=e;const t=this._headerRow();t&&(t.style.height=`${e}px`)}destroy(){this.table.querySelectorAll(".gkit-row-resizer").forEach(e=>e.remove()),this.table.querySelectorAll(".gkit-row-preview-line, .gkit-resize-tooltip--row").forEach(e=>e.remove()),this.table.classList.remove("gkit-table-row-resizable","gkit-is-row-resizing"),this.table.querySelectorAll("tr").forEach(e=>{e.style.height=""}),this._observer?.disconnect(),this._theadObserver?.disconnect(),clearTimeout(this._reinitTimer),clearTimeout(this._theadReinitTimer),this._raf&&cancelAnimationFrame(this._raf),this._cleanup()}_init(){this.table.classList.add("gkit-table-row-resizable");const e=this._headerRow();e&&(this._headerHeight=e.offsetHeight,this._addHandles(e,0,"thead"));const t=this._rows();t.length&&(this._heights=t.map(e=>e.offsetHeight),t.forEach((e,t)=>this._addHandles(e,t,"tbody"))),this._observe()}_addHandles(e,t,o){const r=e.querySelector("td, th");if(!r)return;if(r.querySelector(".gkit-row-resizer"))return;"static"===this.win.getComputedStyle(r).position&&(r.style.position="relative");const l=this.doc.createElement("div");l.className="gkit-row-resizer",l.dataset.rowIndex=t,l.dataset.section=o,l.setAttribute("aria-label","thead"===o?"Resize header row":`Resize row ${t+1}`),r.appendChild(l),l.addEventListener("mousedown",r=>this._onDown(r,e,t,o)),l.addEventListener("dblclick",r=>this._onDblClick(r,e,t,o)),l.addEventListener("touchstart",r=>this._onTouchStart(r,e,t,o),{passive:!1})}_onDown(e,t,o,r){0===e.button&&(e.preventDefault(),e.stopPropagation(),this._dragging=!0,this._row=t,this._rowIndex=o,this._section=r,this._startY=e.pageY,this._startH=t.offsetHeight,this.table.classList.add("gkit-is-row-resizing"),this.doc.body.style.userSelect="none",this.doc.body.style.cursor="row-resize",t.querySelectorAll(".gkit-row-resizer").forEach(e=>e.classList.add("gkit-row-resizer--active")),this._previewLine=this.doc.createElement("div"),this._previewLine.className="gkit-row-preview-line",this._updatePreviewLine(this._startH,t),this.table.appendChild(this._previewLine),this._tooltip=this.doc.createElement("div"),this._tooltip.className="gkit-resize-tooltip gkit-resize-tooltip--row",this._tooltip.textContent=`Height: ${Math.round(this._startH)}px`,this._updateTooltipRow(this._startH,t),this.table.appendChild(this._tooltip),this.doc.addEventListener("mousemove",this._onMove),this.doc.addEventListener("mouseup",this._onUp))}_onTouchStart(e,t,o,r){e.preventDefault();const l=e.touches[0];this._dragging=!0,this._row=t,this._rowIndex=o,this._section=r,this._startY=l.pageY,this._startH=t.offsetHeight,this.table.classList.add("gkit-is-row-resizing");const a=e=>{e.preventDefault();const t=Math.max(this.options.minHeight,this._startH+(e.touches[0].pageY-this._startY));this._applyHeight(this._rowIndex,t,this._section)},n=()=>{this._finalize(),this.doc.removeEventListener("touchmove",a),this.doc.removeEventListener("touchend",n)};this.doc.addEventListener("touchmove",a,{passive:!1}),this.doc.addEventListener("touchend",n)}_onMove(e){this._dragging&&(e.preventDefault(),this._raf&&cancelAnimationFrame(this._raf),this._raf=requestAnimationFrame(()=>{const t=Math.max(this.options.minHeight,this._startH+(e.pageY-this._startY));this._applyHeight(this._rowIndex,t,this._section),this.options.onResize?.(this._rowIndex,t,this._section),this._updatePreviewLine(t,this._row),this._tooltip&&(this._tooltip.textContent=`Height: ${Math.round(t)}px`,this._updateTooltipRow(t,this._row))}))}_onUp(e){this._dragging&&(e.preventDefault(),this._raf&&(cancelAnimationFrame(this._raf),this._raf=null),this._finalize(),this._cleanup())}_finalize(){if(this._dragging=!1,this.table.classList.remove("gkit-is-row-resizing"),this.table.querySelectorAll(".gkit-row-resizer--active").forEach(e=>e.classList.remove("gkit-row-resizer--active")),this._previewLine?.remove(),this._previewLine=null,this._tooltip?.remove(),this._tooltip=null,"thead"===this._section){var e;this._headerHeight=null!==(e=this._headerRow()?.offsetHeight)&&void 0!==e?e:this._headerHeight,this.options.onHeaderResizeEnd?.(this._headerHeight)}else{const e=this.getRowHeights();this._heights=[...e],this.options.onResizeEnd?.(e)}}_onDblClick(e,t,o,r){e.preventDefault(),e.stopPropagation(),t.style.height="";const l=Math.max(this.options.minHeight,t.offsetHeight);if(this._applyHeight(o,l,r),"thead"===r)this._headerHeight=l,this.options.onHeaderResizeEnd?.(l);else{const e=this.getRowHeights();this._heights=[...e],this.options.onResizeEnd?.(e)}}_updatePreviewLine(e,t){if(!this._previewLine)return;const o=this.table.getBoundingClientRect().top,r=t.getBoundingClientRect().top;this._previewLine.style.top=`${r-o+e}px`}_updateTooltipRow(e,t){if(!this._tooltip)return;const o=this.table.getBoundingClientRect().top,r=t.getBoundingClientRect().top-o+e;this._tooltip.style.top=`${Math.min(r-22-4,this.table.offsetHeight-22-4)}px`,this._tooltip.style.left="4px"}_cleanup(){this.doc.body.style.userSelect="",this.doc.body.style.cursor="",this.doc.removeEventListener("mousemove",this._onMove),this.doc.removeEventListener("mouseup",this._onUp)}_applyHeight(e,t,o){if("thead"===o){this._headerHeight=t;const e=this._headerRow();return void(e&&(e.style.height=`${t}px`))}const r=this._rows(),l=this._heights.length===r.length?[...this._heights]:r.map(e=>e.offsetHeight);l[e]=t,this._heights=l,r[e]&&(r[e].style.height=`${t}px`)}_rows(){return Array.from(this.table.querySelectorAll("tbody tr"))}_headerRow(){var e;return null!==(e=this.table.querySelector("thead tr"))&&void 0!==e?e:null}_observe(){if("undefined"==typeof MutationObserver)return;const e=this.table.querySelector("tbody");e&&(this._observer=new MutationObserver(()=>{clearTimeout(this._reinitTimer),this._reinitTimer=setTimeout(()=>{this.table.querySelectorAll("tbody .gkit-row-resizer").forEach(e=>e.remove()),this._rows().forEach((e,t)=>this._addHandles(e,t,"tbody"))},100)}),this._observer.observe(e,{childList:!0,subtree:!0}));const t=this.table.querySelector("thead");t&&(this._theadObserver=new MutationObserver(()=>{clearTimeout(this._theadReinitTimer),this._theadReinitTimer=setTimeout(()=>{this.table.querySelectorAll("thead .gkit-row-resizer").forEach(e=>e.remove());const e=this._headerRow();e&&this._addHandles(e,0,"thead")},100)}),this._theadObserver.observe(t,{childList:!0,subtree:!0}))}}(0,l.registerBlockType)(n.UU,{edit:function({attributes:e,setAttributes:t,clientId:o,advancedControl:l,onReplace:n,isSelected:i}){const{caption:d,rowCount:u,columnCount:h,headers:b,footers:p,hasHeader:g,hasFooter:f,isEmpty:v,responsiveBreakpoint:_}=e,{GkitStyle:C,GkitNumber:k,GkitSwitcher:w}=window.GkitComponents,{TableBuilderPlaceholder:E}=window?.tableBuilder?.components,{useDeviceType:S,useBlockStyles:z,useDeviceList:x}=window.GkitHelpers,{useProActive:A}=window?.tableBuilder?.helpers,B=x(),R=B?.map(e=>"Mobile"===e?.slug?{...e,value:String(_||768)}:e),q=S(),j=Array.from({length:u},()=>["tablebuilder/table-builder-row"]),P=(0,a.useBlockProps)(),I=(0,c.useRef)(),W=A(),{selectBlock:D}=(0,m.useDispatch)("core/block-editor");(0,c.useEffect)(()=>{D(o)},[]);const V=(0,m.useSelect)(e=>{const{getBlocksByClientId:t}=e("core/block-editor"),r=t(o)[0];return r?.innerBlocks?.length||0},[o]),O=(0,c.useRef)(u);(0,c.useEffect)(()=>{V>0&&V!==u&&!v&&O.current!==V&&(O.current=V,t({rowCount:V}))},[V,u,v,t]);const G=(0,a.useInnerBlocksProps)({className:"gkit-table__body"},{allowedBlocks:["tablebuilder/table-builder-row"],renderAppender:!1,template:j}),U=(e,o,r,l,a)=>{const n=JSON.parse(JSON.stringify(l));n[e][o]=r,t({[a]:n})},K=b.map((e,t)=>(0,r.createElement)("th",{key:t,className:"gkit-table__header-content"},(0,r.createElement)(a.RichText,{identifier:`header-${t}`,tagName:"div",value:e.title,onChange:e=>U(t,"title",e,b,"headers"),placeholder:"Header"}))),Z=p.map((e,t)=>(0,r.createElement)("td",{key:t,className:"gkit-table__footer-content"},(0,r.createElement)(a.RichText,{identifier:`footer-${t}`,tagName:"div",value:e.title,onChange:e=>U(t,"title",e,p,"footers"),placeholder:"Footer"}))),[Y,X]=(0,c.useState)(null);(0,c.useEffect)(()=>{if(W&&I.current&&!v){const e=((e,t)=>{const o=e?.querySelector("thead"),r=e?.querySelector("tbody"),l=e?.querySelector("tfoot");if(!o)return;const a="selected-column",n=()=>{o.querySelectorAll("th").forEach((t,o)=>{t.classList.remove(a),F(e,o,!1)}),t(null)};r&&r.querySelectorAll("td, th").forEach(e=>{e.addEventListener("focus",n,!0),e.addEventListener("click",e=>{e.target.closest("thead")||n()})}),l&&l.querySelectorAll("td, th").forEach(e=>{e.addEventListener("focus",n,!0),e.addEventListener("click",n)}),o.querySelectorAll("th").forEach((r,l)=>{r.columnClickHandler&&r.removeEventListener("click",r.columnClickHandler),r.columnClickHandler=i=>{i.stopPropagation();const s=r.classList.contains(a),c=o.querySelectorAll("th");s?n():(c.forEach((t,o)=>{t.classList.remove(a),F(e,o,!1)}),r.classList.add(a),"static"===window.getComputedStyle(r).position&&(r.style.position="relative"),F(e,l,!0),t(l))},r.addEventListener("click",r.columnClickHandler),Object.assign(r.style,{cursor:"pointer",transition:"all 0.2s ease"}),r.addEventListener("mouseenter",()=>{if(!r.classList.contains(a)){"static"===window.getComputedStyle(r).position&&(r.style.position="relative");const e=r.querySelector(".column-hover-overlay");e&&e.remove();const t=document.createElement("div");t.className="column-hover-overlay",t.style.cssText="\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(37, 99, 235, 0.05);\n pointer-events: none;\n z-index: 1;\n border-radius: inherit;\n ",r.appendChild(t)}}),r.addEventListener("mouseleave",()=>{const e=r.querySelector(".column-hover-overlay");e&&e.remove()}),r.title=`Click to select/deselect column ${l+1}`}),r&&(r.clearSelectionHandler&&r.removeEventListener("click",r.clearSelectionHandler),r.clearSelectionHandler=n,r.addEventListener("click",r.clearSelectionHandler)),l&&(l.clearSelectionHandler&&l.removeEventListener("click",l.clearSelectionHandler),l.clearSelectionHandler=n,l.addEventListener("click",l.clearSelectionHandler))})(I.current,X);return()=>{e&&"function"==typeof e&&e()}}},[W,h,v,g]),W&&(function(e,{enabled:t=!0,columnWidths:o=[],setAttributes:r,deps:l=[]}){const a=(0,c.useRef)(null),n=(0,c.useRef)(o);n.current=o,(0,c.useEffect)(()=>{const o=e.current;if(!t||!o)return;a.current?.destroy(),a.current=new N(o,{minWidth:50,onResizeEnd:e=>r({columnWidths:e})});const l=n.current,i=o.querySelectorAll("thead th");return l?.length&&i.length===l.length&&a.current.setColumnWidths(l),()=>{a.current?.destroy(),a.current=null}},[t,...l])}(I,{enabled:!v&&!1!==e?.resizerEnabled,columnWidths:e.columnWidths,setAttributes:t,deps:[h,g,v]}),function(e,{enabled:t=!0,rowHeights:o=[],headerHeight:r=0,setAttributes:l,deps:a=[]}){const n=(0,c.useRef)(null),i=(0,c.useRef)(o);i.current=o;const s=(0,c.useRef)(r);s.current=r,(0,c.useEffect)(()=>{const o=e.current;if(!t||!o)return;n.current?.destroy(),n.current=new $(o,{minHeight:30,onResizeEnd:e=>l({rowHeights:e}),onHeaderResizeEnd:e=>l({headerHeight:e})});const r=i.current;r?.length&&n.current.setRowHeights(r);const a=s.current;return a&&n.current.setHeaderHeight(a),()=>{n.current?.destroy(),n.current=null}},[t,...a])}(I,{enabled:!v&&!1!==e?.resizerEnabled,rowHeights:e.rowHeights,headerHeight:e.headerHeight,setAttributes:t,deps:[V,v]})),(0,c.useEffect)(()=>{!i&&null!==Y&&I.current&&((e=>{if(!e)return;const t=e.querySelector("thead"),o=e.querySelector("tbody"),r=e.querySelector("tfoot");t&&t.querySelectorAll("th").forEach(e=>{e.classList.remove("selected-column");const t=e.querySelector(".column-selection-overlay");t&&t.remove()}),o&&o.querySelectorAll("td, th").forEach(e=>{const t=e.querySelector(".column-selection-overlay");t&&t.remove()}),r&&r.querySelectorAll("td, th").forEach(e=>{const t=e.querySelector(".column-selection-overlay");t&&t.remove()})})(I.current),X(null))},[i,Y]);const J=!e?.variationType,Q="blank"===e?.variationType,ee=()=>(0,r.createElement)(E,{attributes:e,setAttributes:t,clientId:o,onReplace:n,blockName:"tablebuilder/table-builder"}),[te,oe]=(0,c.useState)(!1),[re,le]=(0,c.useState)(!0);return(0,c.useEffect)(()=>{const e=setTimeout(()=>le(!1),0);return()=>clearTimeout(e)},[]),z(e,t,"blocksCSS",((e,t)=>{const{parseCSS:o,backgroundGenerator:r,getBoxShadowValue:l,getBoxValue:a,getBorderValue:n,getSliderValue:i,getTypographyValue:s,getColor:c}=window.GkitHelpers,{applyStyle:d}=window?.tableBuilder?.helpers,u=e.blockClass;return o([[...d(u,e?.columnItems,e?.headers),{selector:`.${u}`,color:c(e.color),display:"flex","box-shadow":l(e?.tableBuilderBoxShadow),"flex-direction":"top"===e?.captionPosition?"column-reverse":"column"},{selector:`.${u} .gkit-table`,background:r(e?.background).background,"table-layout":e?.hasFixedLayout&&"fixed","border-collapse":e?.hasBorderCollaps&&"collapse",width:"100%"},{selector:`.${u} th, .${u} td`,...n(e?.border)},{selector:`.${u} thead`,color:c(e.headerColor),background:r(e?.headerBackground).background,...n(e?.headerBorder),"box-shadow":l(e?.headerBoxShadow)},{selector:`.${u} thead th`,...n(e?.headerBorder)},{selector:`.${u} tfoot td`,color:c(e.footerColor),background:r(e?.footerBackground).background,...n(e?.footerBorder)},{selector:`.${u} tbody td`,...n(e?.cellBorder)},{selector:`.${u} .gkit-table .gkit-table__body tr:hover`,background:r(e?.hoverBackground).background,color:c(e.hoverColor)},{selector:`.${u} tbody`,background:r(e?.cellBackground).background},{selector:`.${u} .gkit-table__caption`,color:c(e.captionColor),background:r(e?.captionBackground).background,...n(e?.captionBorder)},{selector:`.${u} .gkit-table .gkit-table__body-row:nth-child(even)`,color:c(e.evenCellColor),background:r(e?.evenCellBgColor).background},{selector:`.${u} .gkit-table .gkit-table__body-row:nth-child(odd)`,color:c(e.oddCellColor),background:r(e?.oddCellBgColor).background}],t=>[..."Mobile"===t?[{selector:`.${u}`,"-webkit-overflow-scrolling":"touch"},{selector:`.${u} table`,width:"max-content !important","min-width":"100% !important","table-layout":"auto !important"},{selector:`.${u} th, .${u} td`,"white-space":"nowrap",width:"auto !important"}]:[],{selector:`.${u}`,"text-align":e[`alignment${t}`],...s(e.typography,t)},{selector:`.${u} .gkit-table`,"-webkit-border-vertical-spacing":!e?.hasBorderCollaps&&i(e?.[`borderVerticalSpacing${t}`]),"-webkit-border-horizontal-spacing":!e?.hasBorderCollaps&&i(e?.[`borderHorizontalSpacing${t}`])},{selector:`.${u} th, .${u} td`,...a(e[`padding${t}`],"padding"),"vertical-align":e[`commonVerticalAlign${t}`]},{selector:`.${u} thead`,"text-align":e[`headerAlignment${t}`]},{selector:`.${u} thead th`,...s(e.headerTypography,t),...a(e[`headerPadding${t}`],"padding"),...a(e[`headerBorderRadius${t}`],"border-radius")},{selector:`.${u} tfoot td`,...s(e.footerTypography,t),...a(e[`footerPadding${t}`],"padding"),...a(e[`footerBorderRadius${t}`],"border-radius"),"text-align":e[`footerAlignment${t}`]},{selector:`.${u} .gkit-table__caption`,...s(e.captionTypography,t),...a(e[`captionPadding${t}`],"padding"),...a(e[`captionMargin${t}`],"margin"),...a(e[`captionBorderRadius${t}`],"border-radius"),"text-align":e[`captionAlignment${t}`]},{selector:`.${u} tbody td`,...s(e.cellTypography,t),...a(e[`cellPadding${t}`],"padding"),...a(e[`cellBorderRadius${t}`],"border-radius"),"text-align":e[`cellAlignment${t}`]}]],t)})(e,R)),(0,r.createElement)(r.Fragment,null,(0,r.createElement)(C,{blocksCSS:e?.blocksCSS}),W&&(0,r.createElement)(a.BlockControls,null,(0,r.createElement)(y.Toolbar,null,(0,r.createElement)(y.ToolbarButton,{icon:(0,r.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},(0,r.createElement)("path",{fill:"none",d:"M0 0h24v24H0z"}),(0,r.createElement)("path",{d:"m20 3 1 1v16l-1 1H4l-1-1V4l1-1h16zm-9 2H5v6h2V9l3 3-3 3v-2H5v6h6v-2h2v2h6v-6h-2v2l-3-3 3-3v2h2V5h-6v2h-2V5zm2 8v2h-2v-2h2zm0-4v2h-2V9h2z"})),onClick:()=>{oe(!te),re&&le(!1)},title:"Merge selected columns"})),g&&(0,r.createElement)(y.Toolbar,null,(0,r.createElement)(y.ToolbarButton,{icon:(0,r.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},(0,r.createElement)("g",{fill:"#0F0F0F"},(0,r.createElement)("path",{d:"M18 3H4L3 4v14a1 1 0 1 1-2 0V4c0-2 1-3 3-3h14a1 1 0 1 1 0 2ZM13 11a1 1 0 1 1 2 0v2h2a1 1 0 1 1 0 2h-2v2a1 1 0 1 1-2 0v-2h-2a1 1 0 1 1 0-2h2v-2Z"}),(0,r.createElement)("path",{fillRule:"evenodd",d:"M20 5c2 0 3 1 3 3v12c0 2-1 3-3 3H8c-2 0-3-1-3-3V8c0-2 1-3 3-3h12Zm0 2 1 1v12l-1 1H8l-1-1V8l1-1h12Z",clipRule:"evenodd"}))),onClick:()=>((e,t,o,r)=>{if(null==r||r<0||r>=e.columnCount)return;const{columnCount:l,headers:a,footers:n,columnWidths:i}=e,s=[...a];s.splice(r+1,0,{...s[r]});const c=[...n];c.splice(r+1,0,{...c[r]});const d={columnCount:l+1,headers:s,footers:c};if(i&&i.length>0){var u;const e=[...i],t=null!==(u=i[r])&&void 0!==u?u:Math.round(i.reduce((e,t)=>e+(t||0),0)/i.length);e.splice(r+1,0,t),d.columnWidths=e}t(d),setTimeout(()=>{const{getBlocks:e}=wp.data.select("core/block-editor"),{replaceInnerBlocks:t}=wp.data.dispatch("core/block-editor");try{e(o).forEach(o=>{const l=e(o.clientId);if(l[r]){const e=l[r],a=wp.blocks.createBlock(e.name,{...e.attributes},M(e.innerBlocks||[])),n=[...l];n.splice(r+1,0,a),t(o.clientId,n,!1)}})}catch(e){console.error("Column duplication failed:",e)}},100)})(e,t,o,Y),title:"Duplicate selected column"}))),W&&(re||te)&&(0,r.createElement)(H,{attributes:e,setAttributes:t,setMergePopOverOpen:oe,isVisible:!re&&te,externalTableRef:I}),e?.variationType&&(0,r.createElement)(T,{attributes:e,setAttributes:t,device:q,advancedControl:l,clientId:o}),(0,r.createElement)("figure",{...P},v?(0,r.createElement)(r.Fragment,null,J?ee():Q?(0,r.createElement)(y.Placeholder,{label:(0,s.__)("Table","table-builder-block"),icon:(0,r.createElement)(a.BlockIcon,{icon:L,showColors:!0}),instructions:(0,s.__)("Insert a table for sharing data.","table-builder-block")},(0,r.createElement)("form",{className:"blocks-table__placeholder-form",onSubmit:()=>t({isEmpty:!1})},(0,r.createElement)(w,{label:(0,s.__)("Show Header","table-builder-block"),value:e?.hasHeader,onChange:e=>t({hasHeader:e})}),(0,r.createElement)(w,{label:(0,s.__)("Show Footer","table-builder-block"),value:e?.hasFooter,onChange:e=>t({hasFooter:e})}),(0,r.createElement)(k,{__next40pxDefaultSize:!0,label:(0,s.__)("Column count","table-builder-block"),value:h,onChange:e=>{const o=Array.from({length:e},(e,t)=>({title:`Header ${t+1}`})),r=Array.from({length:e},(e,t)=>({title:`Footer ${t+1}`}));t({columnCount:e,headers:o,footers:r})},min:1,className:"blocks-table__placeholder-input"}),(0,r.createElement)(k,{__next40pxDefaultSize:!0,label:(0,s.__)("Row count","table-builder-block"),value:u,onChange:e=>t({rowCount:e}),min:1,className:"blocks-table__placeholder-input"}),(0,r.createElement)(y.Button,{__next40pxDefaultSize:!0,variant:"primary",type:"submit"},(0,s.__)("Create Table","table-builder-block")))):ee()):(0,r.createElement)(r.Fragment,null,(0,r.createElement)("table",{className:"gkit-table",ref:I},g&&(0,r.createElement)("thead",{className:"gkit-table__header"},(0,r.createElement)("tr",null,K)),(0,r.createElement)("tbody",{...G}),f&&(0,r.createElement)("tfoot",{className:"gkit-table__footer"},(0,r.createElement)("tr",null,Z))),e.showCaption&&(0,r.createElement)(a.RichText,{identifier:"caption",tagName:"figcaption",className:"gkit-table__caption",value:d,onChange:e=>t({caption:e}),placeholder:(0,s.__)("Caption for Table","table-builder-block")}))))},icon:{src:(0,r.createElement)("svg",{viewBox:"0 0 23 22",xmlns:"http://www.w3.org/2000/svg",className:"tablekit-block-icon"},(0,r.createElement)("path",{d:"M19.588 0C21.016 0 22.025 1.25785 22.025 2.61914V16.2255H22.001L22.5182 16.4324C22.7993 16.545 22.9875 16.8126 22.9994 17.1149C23.0112 17.4174 22.8439 17.6982 22.5722 17.8324L20.7945 18.7107L22.2871 20.2027C22.5872 20.5024 22.5871 20.9882 22.2871 21.2879C21.9871 21.5875 21.5007 21.5876 21.2007 21.2879L19.7081 19.796L18.8287 21.5727C18.6944 21.8441 18.4123 22.0112 18.1094 21.9994C17.8067 21.9874 17.5388 21.7986 17.4261 21.5178L16.5248 19.2713H2.437C1.00906 19.2713 0 18.0135 0 16.6522V2.61914C0 1.25785 1.00906 0 2.437 0H19.588ZM18.2135 19.3523L18.8047 18.1571C18.8607 18.044 18.9432 17.9462 19.0448 17.8733L19.1528 17.8094L20.3503 17.2178L16.7839 15.7898L18.2135 19.3523ZM8.36643 17.7364H15.9085L14.689 14.6966C14.5748 14.4116 14.6419 14.0853 14.8591 13.8682C15.0764 13.6511 15.4031 13.5842 15.6884 13.6983L20.4884 15.6189V13.2296H8.36643V17.7364ZM1.53663 16.6522C1.53663 17.3277 2.01123 17.7364 2.437 17.7364H6.8298V13.2296H1.53663V16.6522ZM1.53663 11.6947H6.8298V7.38177H1.53663V11.6947ZM8.36643 11.6947H20.4884V7.38177H8.36643V11.6947ZM2.437 1.53491C2.01123 1.53491 1.53663 1.94363 1.53663 2.61914V5.84686H6.8298V1.53491H2.437ZM8.36643 5.84686H20.4884V2.61914C20.4884 1.94363 20.0138 1.53491 19.588 1.53491H8.36643V5.84686Z"}))},save:function({attributes:e}){var t;const{caption:o,headers:l,footers:n,hasHeader:i,hasFooter:s,isEmpty:c,columnWidths:d,rowHeights:u}=e,h={enableSorting:e.enableSorting||!1,tableConditionalFormat:e.tableConditionalFormat||[],mergeTableCell:e.mergeTableCell,freezeSettings:e.freezeSettings,blockClass:e.blockClass||"",enableFreeze:e.enableFreeze||!1,columnWidths:e.columnWidths||[],rowHeights:e.rowHeights||[],headerHeight:e.headerHeight||0,resizerEnabled:null===(t=e.resizerEnabled)||void 0===t||t},b=a.useBlockProps.save({"data-settings":JSON.stringify(h)}),p=a.useInnerBlocksProps.save({className:"gkit-table__body"}),m=d&&d.length>0&&d.some(e=>e>0),g=m?d.reduce((e,t)=>e+(t||0),0):0,f=e=>m&&d[e]&&0!==g?{width:`${(d[e]/g*100).toFixed(4)}%`}:{},y=l.map((e,t)=>(0,r.createElement)("th",{key:t,className:"gkit-table__header-content",style:f(t)},(0,r.createElement)(a.RichText.Content,{identifier:`header-${t}`,tagName:"div",value:e.title}))),v=n.map((e,t)=>(0,r.createElement)("td",{key:t,className:"gkit-table__footer-content",style:f(t)},(0,r.createElement)(a.RichText.Content,{identifier:`footer-${t}`,tagName:"div",value:e.title})));return(0,r.createElement)("figure",{...b},!c&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("table",{className:"gkit-table",style:m?{tableLayout:"fixed",width:"100%"}:void 0},i&&(0,r.createElement)("thead",{className:"gkit-table__header"},(0,r.createElement)("tr",null,y)),(0,r.createElement)("tbody",{...p}),s&&(0,r.createElement)("tfoot",{className:"gkit-table__footer"},(0,r.createElement)("tr",null,v))),e.showCaption&&(0,r.createElement)(a.RichText.Content,{identifier:"caption",tagName:"figcaption",className:"gkit-table__caption",value:o})))},deprecated:i})},20(e,t,o){var r=o(609),l=Symbol.for("react.element"),a=(Symbol.for("react.fragment"),Object.prototype.hasOwnProperty),n=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};t.jsx=function(e,t,o){var r,s={},c=null,d=null;for(r in void 0!==o&&(c=""+o),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(d=t.ref),t)a.call(t,r)&&!i.hasOwnProperty(r)&&(s[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===s[r]&&(s[r]=t[r]);return{$$typeof:l,type:e,key:c,ref:d,props:s,_owner:n.current}}},848(e,t,o){e.exports=o(20)},609(e){e.exports=window.React}},o={};function r(e){var l=o[e];if(void 0!==l)return l.exports;var a=o[e]={exports:{}};return t[e](a,a.exports,r),a.exports}r.m=t,e=[],r.O=(t,o,l,a)=>{if(!o){var n=1/0;for(d=0;d<e.length;d++){for(var[o,l,a]=e[d],i=!0,s=0;s<o.length;s++)(!1&a||n>=a)&&Object.keys(r.O).every(e=>r.O[e](o[s]))?o.splice(s--,1):(i=!1,a<n&&(n=a));if(i){e.splice(d--,1);var c=l();void 0!==c&&(t=c)}}return t}a=a||0;for(var d=e.length;d>0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[o,l,a]},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={283:0,595:0};r.O.j=t=>0===e[t];var t=(t,o)=>{var l,a,[n,i,s]=o,c=0;if(n.some(t=>0!==e[t])){for(l in i)r.o(i,l)&&(r.m[l]=i[l]);if(s)var d=s(r)}for(t&&t(o);c<n.length;c++)a=n[c],r.o(e,a)&&e[a]&&e[a][0](),e[a]=0;return r.O(d)},o=globalThis.webpackChunktable_builder_block=globalThis.webpackChunktable_builder_block||[];o.forEach(t.bind(null,0)),o.push=t.bind(null,o.push.bind(o))})();var l=r.O(void 0,[595],()=>r(689));l=r.O(l)})();
1 +(()=>{"use strict";var e,t={689(e,t,o){var r=o(609);const l=window.wp.blocks,a=window.wp.blockEditor,n=JSON.parse('{"UU":"tablebuilder/table-builder","uK":{"blockID":{"type":"string"},"blockClass":{"type":"string"},"blocksCSS":{"type":"object"},"hasFixedLayout":{"type":"boolean","default":true},"responsiveBreakpoint":{"type":"number","default":768},"caption":{"type":"string"},"captionPosition":{"type":"string","default":"bottom"},"rowCount":{"type":"number","default":2},"columnCount":{"type":"number","default":2},"hasBorderCollaps":{"type":"boolean","default":true},"borderVerticalSpacingDesktop":{"type":"object"},"borderVerticalSpacingTablet":{"type":"object"},"borderVerticalSpacingMobile":{"type":"object"},"borderVerticalSpacingTabletLandscape":{"type":"object"},"borderVerticalSpacingMobileLandscape":{"type":"object"},"borderVerticalSpacingLaptop":{"type":"object"},"borderVerticalSpacingWideScreen":{"type":"object"},"borderHorizontalSpacingDesktop":{"type":"object"},"borderHorizontalSpacingTablet":{"type":"object"},"borderHorizontalSpacingMobile":{"type":"object"},"borderHorizontalSpacingTabletLandscape":{"type":"object"},"borderHorizontalSpacingMobileLandscape":{"type":"object"},"borderHorizontalSpacingLaptop":{"type":"object"},"borderHorizontalSpacingWideScreen":{"type":"object"},"hasHeader":{"type":"boolean","default":true},"headers":{"type":"array","default":[{"title":"Header 1"},{"title":"Header 2"}]},"columnWidths":{"type":"array","default":[]},"rowHeights":{"type":"array","default":[]},"headerHeight":{"type":"number","default":0},"resizerEnabled":{"type":"boolean","default":true},"isEmpty":{"type":"boolean","default":true},"hasFooter":{"type":"boolean","default":true},"showRowPerPage":{"type":"boolean","default":true},"showResult":{"type":"boolean","default":true},"showPaginationControl":{"type":"boolean","default":true},"ShowSearchInput":{"type":"boolean","default":true},"showExportButton":{"type":"boolean","default":true},"showCaption":{"type":"boolean","default":true},"footers":{"type":"array","default":[{"title":"Footer 1"},{"title":"Footer 2"}]},"paddingDesktop":{"type":"object","default":{"top":"10px","right":"10px","bottom":"10px","left":"10px"}},"paddingTablet":{"type":"object"},"paddingMobile":{"type":"object"},"paddingTabletLandscape":{"type":"object"},"paddingMobileLandscape":{"type":"object"},"paddingLaptop":{"type":"object"},"paddingWideScreen":{"type":"object"},"background":{"type":"object"},"hoverBackground":{"type":"object"},"hoverColor":{"type":"string"},"border":{"type":"object","default":{"width":"1px","style":"solid","color":"#000"}},"borderRadiusDesktop":{"type":"object"},"borderRadiusTablet":{"type":"object"},"borderRadiusMobile":{"type":"object"},"borderRadiusTabletLandscape":{"type":"object"},"borderRadiusMobileLandscape":{"type":"object"},"borderRadiusLaptop":{"type":"object"},"borderRadiusWideScreen":{"type":"object"},"backgroundHover":{"type":"object"},"borderHoverColor":{"type":"string"},"typography":{"type":"object"},"headerTypography":{"type":"object"},"headerColor":{"type":"string"},"headerBackground":{"type":"object"},"headerBorder":{"type":"object"},"headerPaddingDesktop":{"type":"object"},"headerPaddingTablet":{"type":"object"},"headerPaddingMobile":{"type":"object"},"headerPaddingMobileLandscape":{"type":"object"},"headerPaddingTabletLandscape":{"type":"object"},"headerPaddingLaptop":{"type":"object"},"headerPaddingWideScreen":{"type":"object"},"headerBorderRadiusDesktop":{"type":"object"},"headerBorderRadiusTablet":{"type":"object"},"headerBorderRadiusMobile":{"type":"object"},"headerBorderRadiusTabletLandscape":{"type":"object"},"headerBorderRadiusMobileLandscape":{"type":"object"},"headerBorderRadiusLaptop":{"type":"object"},"headerBorderRadiusWideScreen":{"type":"object"},"footerTypography":{"type":"object"},"headerBoxShadow":{"type":"object"},"footerColor":{"type":"string"},"footerBackground":{"type":"object"},"footerBorder":{"type":"object"},"footerPaddingDesktop":{"type":"object"},"footerPaddingTablet":{"type":"object"},"footerPaddingMobile":{"type":"object"},"footerPaddingMobileLandscape":{"type":"object"},"footerPaddingTabletLandscape":{"type":"object"},"footerPaddingLaptop":{"type":"object"},"footerPaddingWideScreen":{"type":"object"},"footerBorderRadiusDesktop":{"type":"object"},"footerBorderRadiusTablet":{"type":"object"},"footerBorderRadiusMobile":{"type":"object"},"footerBorderRadiusTabletLandscape":{"type":"object"},"footerBorderRadiusMobileLandscape":{"type":"object"},"footerBorderRadiusLaptop":{"type":"object"},"footerBorderRadiusWideScreen":{"type":"object"},"alignmentDesktop":{"type":"string","default":"center"},"alignmentTablet":{"type":"string"},"alignmentMobile":{"type":"string"},"commonVerticalAlignDesktop":{"type":"string","default":"center"},"commonVerticalAlignTablet":{"type":"string"},"commonVerticalAlignMobile":{"type":"string"},"cellTypography":{"type":"object"},"cellAlignmentDesktop":{"type":"string"},"cellAlignmentTablet":{"type":"string"},"cellAlignmentMobile":{"type":"string"},"cellAlignmentMobileLandscape":{"type":"string"},"cellAlignmentTabletLandscape":{"type":"string"},"cellAlignmentLaptop":{"type":"string"},"cellAlignmentWideScreen":{"type":"string"},"cellBorder":{"type":"object"},"cellBorderRadiusDesktop":{"type":"object"},"cellBorderRadiusTablet":{"type":"object"},"cellBorderRadiusMobile":{"type":"object"},"cellPaddingDesktop":{"type":"object"},"cellPaddingTablet":{"type":"object"},"cellPaddingMobile":{"type":"object"},"headerAlignmentDesktop":{"type":"string"},"headerAlignmentTablet":{"type":"string"},"headerAlignmentMobile":{"type":"string"},"footerAlignmentDesktop":{"type":"string"},"footerAlignmentTablet":{"type":"string"},"footerAlignmentMobile":{"type":"string"},"footerAlignmentMobileLandscape":{"type":"string"},"footerAlignmentTabletLandscape":{"type":"string"},"footerAlignmentLaptop":{"type":"string"},"footerAlignmentWideScreen":{"type":"string"},"captionTypography":{"type":"object"},"captionColor":{"type":"string"},"captionBackground":{"type":"object"},"captionBorder":{"type":"object"},"captionMarginDesktop":{"type":"object"},"captionMarginTablet":{"type":"object"},"captionMarginMobile":{"type":"object"},"captionMarginMobileLandscape":{"type":"object"},"captionMarginTabletLandscape":{"type":"object"},"captionMarginLaptop":{"type":"object"},"captionMarginWideScreen":{"type":"object"},"captionPaddingDesktop":{"type":"object"},"captionPaddingTablet":{"type":"object"},"captionPaddingMobile":{"type":"object"},"captionBorderRadiusDesktop":{"type":"object"},"captionBorderRadiusTablet":{"type":"object"},"captionBorderRadiusMobile":{"type":"object"},"captionBorderRadiusTabletLandscape":{"type":"object"},"captionBorderRadiusMobileLandscape":{"type":"object"},"captionBorderRadiusLaptop":{"type":"object"},"captionBorderRadiusWideScreen":{"type":"object"},"color":{"type":"string"},"cellColor":{"type":"string"},"cellBackground":{"type":"object"},"tableBuilderBoxShadow":{"type":"object"},"columnItems":{"type":"array"},"variationType":{"type":"string"},"enableSorting":{"type":"boolean","default":true},"mergeTableCell":{"type":"object"},"evenCellColor":{"type":"string"},"evenCellBgColor":{"type":"object"},"oddCellColor":{"type":"string"},"oddCellBgColor":{"type":"object"},"shortId":{"type":"string"}}}'),i=[{attributes:n.uK,save({attributes:e}){const{caption:t,headers:o,footers:l,hasHeader:n,hasFooter:i,isEmpty:s,columnWidths:c}=e,d={enableSorting:e.enableSorting||!1,tableConditionalFormat:e.tableConditionalFormat||[],mergeTableCell:e.mergeTableCell,freezeSettings:e.freezeSettings,blockClass:e.blockClass||"",enableFreeze:e.enableFreeze||!1,columnWidths:e.columnWidths||[],rowHeights:e.rowHeights||[],headerHeight:e.headerHeight||0},u=a.useBlockProps.save({"data-settings":JSON.stringify(d)}),h=a.useInnerBlocksProps.save({className:"gkit-table__body"}),b=c&&c.length>0&&c.some(e=>e>0),p=b?c.reduce((e,t)=>e+(t||0),0):0,m=e=>b&&c[e]&&0!==p?{width:`${(c[e]/p*100).toFixed(4)}%`}:{},g=o.map((e,t)=>(0,r.createElement)("th",{key:t,className:"gkit-table__header-content",style:m(t)},(0,r.createElement)(a.RichText.Content,{identifier:`header-${t}`,tagName:"div",value:e.title}))),f=l.map((e,t)=>(0,r.createElement)("td",{key:t,className:"gkit-table__footer-content",style:m(t)},(0,r.createElement)(a.RichText.Content,{identifier:`footer-${t}`,tagName:"div",value:e.title})));return(0,r.createElement)("figure",{...u},!s&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("table",{className:"gkit-table",style:b?{tableLayout:"fixed",width:"100%"}:void 0},n&&(0,r.createElement)("thead",{className:"gkit-table__header"},(0,r.createElement)("tr",null,g)),(0,r.createElement)("tbody",{...h}),i&&(0,r.createElement)("tfoot",{className:"gkit-table__footer"},(0,r.createElement)("tr",null,f))),e.showCaption&&(0,r.createElement)(a.RichText.Content,{identifier:"caption",tagName:"figcaption",className:"gkit-table__caption",value:t})))}},{attributes:n.uK,save({attributes:e}){const{caption:t,headers:o,footers:l,hasHeader:n,hasFooter:i,isEmpty:s}=e,c={enableSorting:e.enableSorting||!1,tableConditionalFormat:e.tableConditionalFormat||[],mergeTableCell:e.mergeTableCell,freezeSettings:e.freezeSettings,blockClass:e.blockClass||"",enableFreeze:e.enableFreeze||!1},d=a.useBlockProps.save({"data-settings":JSON.stringify(c)}),u=a.useInnerBlocksProps.save({className:"gkit-table__body"}),h=o.map((e,t)=>(0,r.createElement)("th",{key:t,className:"gkit-table__header-content"},(0,r.createElement)(a.RichText.Content,{identifier:`header-${t}`,tagName:"div",value:e.title}))),b=l.map((e,t)=>(0,r.createElement)("td",{key:t,className:"gkit-table__footer-content"},(0,r.createElement)(a.RichText.Content,{identifier:`footer-${t}`,tagName:"div",value:e.title})));return(0,r.createElement)("figure",{...d},!s&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("table",{className:"gkit-table"},n&&(0,r.createElement)("thead",{className:"gkit-table__header"},(0,r.createElement)("tr",null,h)),(0,r.createElement)("tbody",{...u}),i&&(0,r.createElement)("tfoot",{className:"gkit-table__footer"},(0,r.createElement)("tr",null,b))),e.showCaption&&(0,r.createElement)(a.RichText.Content,{identifier:"caption",tagName:"figcaption",className:"gkit-table__caption",value:t})))}},{attributes:n.uK,save({attributes:e}){const{caption:t,headers:o,footers:l,hasHeader:n,hasFooter:i,isEmpty:s}=e,c=a.useBlockProps.save({"data-settings":JSON.stringify(e)}),d=a.useInnerBlocksProps.save({className:"gkit-table__body"}),u=o.map((e,t)=>(0,r.createElement)("th",{key:t,className:"gkit-table__header-content"},(0,r.createElement)(a.RichText.Content,{identifier:`header-${t}`,tagName:"div",value:e.title}))),h=l.map((e,t)=>(0,r.createElement)("td",{key:t,className:"gkit-table__footer-content"},(0,r.createElement)(a.RichText.Content,{identifier:`footer-${t}`,tagName:"div",value:e.title})));return(0,r.createElement)("figure",{...c},!s&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("table",{className:"gkit-table"},n&&(0,r.createElement)("thead",{className:"gkit-table__header"},(0,r.createElement)("tr",null,u)),(0,r.createElement)("tbody",{...d}),i&&(0,r.createElement)("tfoot",{className:"gkit-table__footer"},(0,r.createElement)("tr",null,h))),(0,r.createElement)(a.RichText.Content,{identifier:"caption",tagName:"figcaption",className:"gkit-table__caption",value:t})))}}],s=window.wp.i18n,c=window.wp.element,d=window.wp.primitives;var u=o(848);const h=(0,u.jsx)(d.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,u.jsx)(d.Path,{d:"M13 5.5H4V4h9v1.5Zm7 7H4V11h16v1.5Zm-7 7H4V18h9v1.5Z"})}),b=(0,u.jsx)(d.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,u.jsx)(d.Path,{d:"M7.5 5.5h9V4h-9v1.5Zm-3.5 7h16V11H4v1.5Zm3.5 7h9V18h-9v1.5Z"})}),p=(0,u.jsx)(d.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,u.jsx)(d.Path,{d:"M11.111 5.5H20V4h-8.889v1.5ZM4 12.5h16V11H4v1.5Zm7.111 7H20V18h-8.889v1.5Z"})}),m=window.wp.data,g=[{category:"Cell Options",options:[{label:(0,s.__)("Text Color","table-builder-block"),value:"cellTextColor"},{label:(0,s.__)("Background Color","table-builder-block"),value:"cellBackgroundColor"},{label:(0,s.__)("CSS Class","table-builder-block"),value:"cellCssClass"},{label:(0,s.__)("Content","table-builder-block"),value:"cellContent"}]},{category:"Row Options",options:[{label:(0,s.__)("Text Color","table-builder-block"),value:"rowTextColor"},{label:(0,s.__)("Background Color","table-builder-block"),value:"rowBackgroundColor"},{label:(0,s.__)("CSS Class","table-builder-block"),value:"rowCssClass"}]},{category:"Column Options",options:[{label:(0,s.__)("Text Color","table-builder-block"),value:"columnTextColor"},{label:(0,s.__)("Background Color","table-builder-block"),value:"columnBackgroundColor"},{label:(0,s.__)("CSS Class","table-builder-block"),value:"columnCssClass"}]}],f=[{label:(0,s.__)("Is Equal To","table-builder-block"),value:"equal"},{label:(0,s.__)("Not Equal","table-builder-block"),value:"notEqual"},{label:(0,s.__)("Contains","table-builder-block"),value:"contains"},{label:(0,s.__)("Does Not Contain","table-builder-block"),value:"notContains"}],y=window.wp.components,v=e=>{if(!e||"string"!=typeof e)return null;const t=e.trim();return t.includes(",")?t.split(",")[1]?.trim():t},_={equal:(e,t)=>e===t,notEqual:(e,t)=>e!==t,contains:(e,t)=>e.includes(t),notContains:(e,t)=>!e.includes(t),greaterThan:(e,t)=>isNaN(e)||isNaN(t)?e>t:parseFloat(e)>parseFloat(t),lessThan:(e,t)=>isNaN(e)||isNaN(t)?e<t:parseFloat(e)<parseFloat(t),greaterThanOrEqual:(e,t)=>isNaN(e)||isNaN(t)?e>=t:parseFloat(e)>=parseFloat(t),lessThanOrEqual:(e,t)=>isNaN(e)||isNaN(t)?e<=t:parseFloat(e)<=parseFloat(t)},C=e=>{if(!e?.element||!e?.data)return;const t=(()=>{const e=document.querySelector('iframe[name="editor-canvas"]')||document.querySelector(".block-editor-iframe__container iframe")||document.querySelector("iframe");try{if(e?.contentDocument)return e.contentDocument;if(e?.contentWindow?.document)return e.contentWindow.document}catch(e){console.warn("[table-builder][conditional-formatting.apply] Blocked cross-origin frame access. Using current document.")}return document})().querySelector(`.${e.element}`)||document.querySelector(`.${e.element}`);if(!t)return;const o=Array.from(t.querySelectorAll("table")),r=[...new Set([...o])];r.length&&r.forEach(t=>{(e=>{e.querySelectorAll("[data-conditional-formatting='true']").forEach(e=>{["color","backgroundColor","background","backgroundSize"].forEach(t=>{e.style[t]=""});const t=e.getAttribute("data-previous-class");t&&(e.classList.remove(t),e.removeAttribute("data-previous-class")),e.removeAttribute("data-conditional-formatting")})})(t);const o=(e=>{const t=new Map,o=e.querySelector("tr:first-child");return o&&o.querySelectorAll("th, td").forEach((e,o)=>{const r=e.textContent.trim().toLowerCase().replace(/\s+/g,"");t.set(r,o)}),t})(t);e.data.forEach(e=>{((e,t,o)=>{const{columnKey:r,comparisonType:l="equal",comparisonValue:a="",formatAction:n,formatTextColor:i,formatBackground:s,formatCssClass:c}=t;if(!r||!n)return;const d=o.get(r);if(void 0===d)return;const u=Array.from(e.querySelectorAll("tr")).slice(1),h=a.toString().trim().toLowerCase(),b=n.startsWith("column"),p=n.startsWith("row");u.forEach(e=>{const t=e.querySelectorAll("td, th"),o=t[d];if(!o)return;const r=o.textContent.trim().toLowerCase(),a=_[l]?.(r,h);let u=[];b?u=[o]:a&&(u=p?Array.from(t):[o]),u.forEach(e=>{((e,t)=>{const{formatAction:o,formatTextColor:r,formatBackground:l,formatCssClass:a}=t;if(o.includes("TextColor")&&r){const t=v(r);t&&(e.style.color=t)}if(o.includes("BackgroundColor")&&l){const t=(e=>{if(!e)return{background:"",size:""};let t="";return"classic"===e.backgroundType&&e.backgroundColor?t=v(e.backgroundColor)||"":"gradient"===e.backgroundType&&e.gradient&&(t=(e=>{if(!e)return"";if("linear"===e.type){const t=e.angle||0,o=e.stops?.map(e=>`${e.color} ${e.position}%`).join(", ");return`linear-gradient(${t}deg, ${o})`}if("radial"===e.type){const t=e.stops?.map(e=>`${e.color} ${e.position}%`).join(", ");return`radial-gradient(circle, ${t})`}return""})(e.gradient)),{background:t,size:""}})(l);t.background&&(e.style.background=t.background),t.size&&(e.style.backgroundSize=t.size)}if(o.includes("CssClass")&&a){const t="string"!=typeof(n=a)?"":n.toLowerCase().trim().replace(/[^\w-]+/g,"-").replace(/^-+|-+$/g,"").replace(/-+/g,"-").replace(/script/g,"");if(t){const o=e.getAttribute("data-previous-class");o&&e.classList.remove(o),e.classList.add(t),e.setAttribute("data-previous-class",t)}}var n;e.setAttribute("data-conditional-formatting","true")})(e,{formatAction:n,formatTextColor:i,formatBackground:s,formatCssClass:c})})})})(t,e,o)})})},k=({attributes:e,setAttributes:t,clientId:o})=>{const{GkitColor:a,GkitPanelBody:n,GkitBackgrounGroup:i,GkitRepeater:d,GkitSelect:u,GkitText:h}=window.GkitComponents||{},{headers:b,tableConditionalFormat:p=[],tableDataset:v}=e,_=(0,c.useRef)(null),k=(0,c.useRef)(null),w=(0,c.useRef)({data:p,element:e?.blockClass});(0,c.useEffect)(()=>{w.current={data:p,element:e?.blockClass}},[p,e?.blockClass]);const E=(()=>{const t=v?.tableHeader||b||e?.PostData?.tableHeader;return t?.map(e=>{const t=("string"==typeof e?e:e?.title||"").trim(),o=t.toLowerCase().replace(/\s+/g,"");return{label:t,value:o}})||[]})();k.current||(k.current=(()=>{let e;return function(...t){clearTimeout(e),e=setTimeout(()=>{clearTimeout(e),(()=>{C(w.current)})(...t)},100)}})()),(0,c.useEffect)(()=>{if(!e?.blockClass)return;const t=document.querySelector('iframe[name="editor-canvas"]')||document.querySelector("iframe");let o=document;try{o=t?.contentDocument||t?.contentWindow?.document||document}catch(e){o=document}const r=o.querySelector(`.${e.blockClass}`);return r?(k.current(),_.current=new MutationObserver(e=>{let t=!1;e.forEach(e=>{"childList"===e.type&&Array.from(e.addedNodes).some(e=>1===e.nodeType&&("TR"===e.tagName||"TD"===e.tagName||"TH"===e.tagName||e.querySelector?.("tr, td, th")))&&(t=!0),"attributes"===e.type&&["class","data-freeze","data-frozen"].includes(e.attributeName)&&(t=!0)}),t&&k.current()}),_.current.observe(r,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["class","data-freeze","data-frozen"]}),()=>{_.current&&(_.current.disconnect(),_.current=null)}):void 0},[e?.blockClass]),(0,c.useEffect)(()=>{p?.length>0&&k.current()},[JSON.stringify(p)]);const S=(e=>{const t=(0,m.useSelect)(e=>{const{getSelectedBlockClientId:t,getBlock:o}=e("core/block-editor"),r=t(),l=r?o(r):null;return"tablebuilder/data-table"===l?.name||"tablebuilder/post-table"===l?.name},[]);return(0,c.useMemo)(()=>e.map(e=>({...e,options:e.options.filter(e=>!("cellContent"===e.value&&t))})),[e,t])})(g);return(0,r.createElement)(n,{title:(0,s.__)("Conditional Formatting","table-builder-block"),initialOpen:!1},(0,r.createElement)(d,{onChange:e=>t({tableConditionalFormat:e}),itemLabelName:"columnKey",repeaterFields:p,isClone:!1},(0,r.createElement)(u,{label:(0,s.__)("Target Column","table-builder-block"),name:"columnKey",options:E,default:E[0]?.value||""}),(0,r.createElement)(u,{label:(0,s.__)("Condition Type","table-builder-block"),name:"comparisonType",options:f,conditionalShow:!1,condition:{name:"columnKey",value:""},default:"equal"}),(0,r.createElement)(h,{label:(0,s.__)("Comparison Value","table-builder-block"),placeholder:(0,s.__)("Enter comparison value","table-builder-block"),name:"comparisonValue",labelBlock:"block",conditionType:"or",condition:f.map(({value:e})=>({name:"comparisonType",value:e}))}),(0,r.createElement)(u,{label:(0,s.__)("Apply Formatting","table-builder-block"),name:"formatAction",children:S.map((e,t)=>(0,r.createElement)("optgroup",{key:t,label:(0,s.__)(e.category,"table-builder-block")},e.options.map((e,t)=>(0,r.createElement)("option",{key:t,value:e.value},e.label)))),conditionalShow:!1,condition:{name:"comparisonValue",value:""},default:"cellTextColor"}),(0,r.createElement)(h,{label:(0,s.__)("Replace Text","table-builder-block"),placeholder:(0,s.__)("Enter Value","table-builder-block"),name:"formatText",labelBlock:"block",conditionType:"or",condition:[{name:"formatAction",value:"cellContent"}]}),(0,r.createElement)(y.Button,{variant:"primary",onClick:()=>{const e=(0,m.select)("core/block-editor").getBlocks().filter(e=>"tablebuilder/table-builder"===e.name);p.forEach(({columnKey:t,comparisonValue:o,formatAction:r,formatText:a})=>{if(!t||!r.includes("Content")||!a)return;const n=b?.findIndex(({title:e})=>e?.trim().toLowerCase().replace(/\s+/g,"")===t);-1!==n&&e.forEach(e=>{e.innerBlocks.forEach(e=>{if("tablebuilder/table-builder-row"!==e.name)return;const t=e.innerBlocks[n];if("tablebuilder/table-builder-item"!==t?.name)return;const r=t.innerBlocks.map(e=>{const t=e.attributes?.content?.text||e.attributes?.content;return t?.toString().trim().toLowerCase()===o?.toString().trim().toLowerCase()?(0,l.createBlock)(e.name,{...e.attributes,content:a}):e});(0,m.dispatch)("core/block-editor").replaceInnerBlocks(t.clientId,r,!1)})})})},className:"table-builder-replace-button",style:{display:"flex",justifyContent:"center",alignItems:"center",background:"#3B67FE",color:"#fff",padding:"10px",borderRadius:"4px",fontWeight:500,width:"100%",marginBottom:"15px"},condition:[{name:"formatAction",value:"cellContent"}]},"Replace"),(0,r.createElement)(h,{label:(0,s.__)("CSS Class","table-builder-block"),placeholder:(0,s.__)("Enter CSS class name","table-builder-block"),name:"formatCssClass",labelBlock:"block",conditionType:"or",condition:[{name:"formatAction",value:"cellCssClass"},{name:"formatAction",value:"rowCssClass"},{name:"formatAction",value:"columnCssClass"}]}),(0,r.createElement)(i,{label:(0,s.__)("Background Color","table-builder-block"),name:"formatBackground",exclude:{video:!0,image:!0},conditionType:"or",condition:[{name:"formatAction",value:"cellBackgroundColor"},{name:"formatAction",value:"rowBackgroundColor"},{name:"formatAction",value:"columnBackgroundColor"}]}),(0,r.createElement)(a,{label:(0,s.__)("Text Color","table-builder-block"),name:"formatTextColor",conditionType:"or",condition:[{name:"formatAction",value:"cellTextColor"},{name:"formatAction",value:"rowTextColor"},{name:"formatAction",value:"columnTextColor"}]})))},w=({freezeRows:e=0,freezeColumns:t=0,freezeWarning:o="",setFreezeWarning:l,freezeSettings:a={}})=>{const n=()=>{const{from:e,to:t}=a?.leftFreeze||{};return e>0||t>0},i=()=>{const{from:e,to:t}=a?.rightFreeze||{};return e>0||t>0},s=e>0||t>0||a?.fixedHeader||a?.fixedColumns&&(n()||i()),c=(e,t)=>e||t?e<=0&&t<=0?null:e&&!t?`Column ${e}`:!e&&t?`Column ${t}`:e===t?`Column ${e}`:`Columns ${e} to ${t}`:null;return(0,r.createElement)("div",{className:"freeze-instruction"},o&&(0,r.createElement)("div",{className:"freeze-warning"},(0,r.createElement)("span",{className:"freeze-warning-text"},o),(0,r.createElement)(y.Button,{variant:"link",onClick:()=>l(""),className:"freeze-warning-close"},"×")),s&&(()=>{const e=[];if(a?.fixedHeader&&e.push((0,r.createElement)("li",{key:"header"},"Freeze Header: Enabled")),a?.fixedColumns){if(n()){const t=c(a.leftFreeze?.from,a.leftFreeze?.to);t&&e.push((0,r.createElement)("li",{key:"left"},"Left: ",t," Selected"))}if(i()){const t=c(a.rightFreeze?.from,a.rightFreeze?.to);t&&e.push((0,r.createElement)("li",{key:"right"},"Right: ",t," Selected"))}}return e.length>0?(0,r.createElement)("div",{className:"freeze-current-status"},(0,r.createElement)("strong",null,"Current Freeze:"),(0,r.createElement)("ul",{className:"freeze-status-list"},e)):null})())},E=({attributes:e,setAttributes:t,setFreezePopOverOpen:o,freezerRef:l})=>{const a=(()=>{const t=e?.freezeSettings;return t?{enableFixedHeader:t.fixedHeader||!1,enableFixedColumns:t.fixedColumns||!1,leftRange:{from:t.leftFreeze?.from>0?String(t.leftFreeze.from):"",to:t.leftFreeze?.to>0?String(t.leftFreeze.to):""},rightRange:{from:t.rightFreeze?.from>0?String(t.rightFreeze.from):"",to:t.rightFreeze?.to>0?String(t.rightFreeze.to):""}}:{enableFixedHeader:!1,enableFixedColumns:!1,leftRange:{from:"",to:""},rightRange:{from:"",to:""}}})(),[n,i]=(0,c.useState)(a.enableFixedHeader),[s,d]=(0,c.useState)(a.enableFixedColumns),[u,h]=(0,c.useState)(a.leftRange),[b,p]=(0,c.useState)(a.rightRange),m=e?.columnCount||0,g=(0,c.useMemo)(()=>Array.from({length:m},(e,t)=>({label:`Column ${t+1}`,value:String(t+1)})),[m]),f=(0,c.useMemo)(()=>{const e=parseInt(b.from||"0");return g.filter(t=>0===e||parseInt(t.value)<e)},[g,b.from]),v=(0,c.useMemo)(()=>{const e=parseInt(u.to||u.from||"0");return g.filter(t=>parseInt(t.value)>e)},[g,u]),_=()=>o(!1),C=(0,c.useCallback)(()=>({fixedHeader:n,fixedColumns:s,leftFreeze:{from:parseInt(u.from)||0,to:parseInt(u.to||u.from)||0},rightFreeze:{from:parseInt(b.from)||0,to:parseInt(b.to||b.from)||0}}),[n,s,u,b]);(0,c.useEffect)(()=>{const o=C();t({freezeSettings:{...e.freezeSettings||{},...o}}),!n&&l.current&&l.current.updateConfig?.(o),!s&&l.current&&l.current.updateConfig?.(o)},[n,s]);const k=(e,t,o)=>{("left"===e?h:p)(e=>{const r={...e,[t]:o};return"from"===t&&o&&!e.to&&(r.to=o),r})},E=({label:e,range:t,rangeType:o,options:l})=>{const a="left"===o?f:v;return(0,r.createElement)("div",{className:"table-freeze-popover__select-range"},(0,r.createElement)("strong",null,e),(0,r.createElement)("div",{className:"table-freeze-popover__select-range-inner"},(0,r.createElement)(y.SelectControl,{label:"Start",value:t.from,options:[{label:"-- Select --",value:""},...a],onChange:e=>k(o,"from",e)}),(0,r.createElement)(y.SelectControl,{label:"End",value:t.to,options:[{label:"-- Select --",value:""},...a.filter(e=>parseInt(e.value)>=parseInt(t.from||"0"))],onChange:e=>k(o,"to",e),disabled:!t.from})))},S=n||s&&(u.from||b.from),z=()=>!(!u.to||!b.from)&&parseInt(u.to)>=parseInt(b.from);return(0,r.createElement)(y.Modal,{title:"Freeze / Unfreeze Table Rows & Columns",onRequestClose:_,className:"table-freeze-popover-modal",size:"large"},(0,r.createElement)("div",{className:"table-freeze-popover-container"},(0,r.createElement)(w,{freezeRows:0,freezeColumns:0,freezeWarning:z()?"Warning: Left and right freeze columns overlap!":"",setFreezeWarning:()=>{},freezeSettings:C()}),(0,r.createElement)("div",{className:"freeze-toggle-controls"},(0,r.createElement)(y.ToggleControl,{label:"Enable Freeze Header",help:"Keeps the header always visible while scrolling vertically.",className:"freeze-toggle",checked:n,onChange:i}),(0,r.createElement)(y.ToggleControl,{label:"Enable Freeze Columns",help:"Pins selected columns on the left or right edge while scrolling horizontally.",className:"freeze-toggle",checked:s,onChange:d})),s&&(0,r.createElement)("div",{className:"freeze-column-ranges"},(0,r.createElement)(E,{label:"Select From Left",range:u,rangeType:"left",options:g}),(0,r.createElement)(E,{label:"Select From Right",range:b,rangeType:"right",options:g})),(0,r.createElement)("div",{className:"table-freeze-popover__button-wrapper"},(0,r.createElement)(y.Button,{variant:"primary",onClick:()=>{const o=C();t({freezeSettings:{...e.freezeSettings||{},...o}}),l.current?.updateConfig?.(o),_()},disabled:!S||z(),className:"table-freeze-popover__button"},"Apply Freeze"),S&&(0,r.createElement)(y.Button,{variant:"secondary",onClick:()=>{i(!1),d(!1),h({from:"",to:""}),p({from:"",to:""}),t({freezeSettings:{...e.freezeSettings||{},fixedHeader:!1,fixedColumns:!1,leftFreeze:{from:0,to:0},rightFreeze:{from:0,to:0}}}),l.current?.destroy(),l.current=null,_()},className:"table-freeze-popover__button table-freeze-popover__clear-button"},"Clear All Freeze"))))},S=e=>{if(!e||"string"!=typeof e)return null;const t=e.trim();if(t.includes(",")){const e=t.split(",");return e.length>1?e[1].trim():null}return t};class z{constructor(e,t={}){if(this.table="string"==typeof e?document.querySelector(e):e,!this.table)throw new Error("Table element not found");this.config={fixedHeader:!1,fixedColumns:!1,leftFreeze:{from:null,to:null},rightFreeze:{from:null,to:null},minColumnWidth:120,mobileBreakpoint:768,...t},this.cellPositions=new Map,this.isInitialized=!1,this.observer=null,this.resizeObserver=null,this.debounceTimer=null,this.resizeDebounceTimer=null,this.init()}init(){this.isInitialized&&this.cleanup(),this.ensureTableWidth(),this.trackCellPositions(),this.applyStyles(),this.observeDOMChanges(),this.observeTableResize(),this.isInitialized=!0}observeDOMChanges(){const e=this.table.querySelector("tbody");e&&(this.observer&&this.observer.disconnect(),this.observer=new MutationObserver(e=>{e.some(e=>"childList"===e.type&&(e.addedNodes.length||e.removedNodes.length))&&(clearTimeout(this.debounceTimer),this.debounceTimer=setTimeout(()=>this.refreshPositions(),100))}),this.observer.observe(e,{childList:!0,subtree:!1}))}observeTableResize(){this.resizeObserver&&this.resizeObserver.disconnect();const e=this.table.closest(".table-freezer-container")||this.setupTableContainer();this.resizeObserver=new ResizeObserver(()=>{clearTimeout(this.resizeDebounceTimer),this.resizeDebounceTimer=setTimeout(()=>this.refreshPositions(),100)}),this.resizeObserver.observe(e)}ensureTableWidth(){if("undefined"!=typeof window&&window.matchMedia(`(max-width: ${this.config.mobileBreakpoint}px)`).matches)return;const e=this.table.querySelectorAll("tr");if(0===e.length)return;const t=e[0].querySelectorAll("th, td");t.forEach(e=>{const t=this.config.minColumnWidth;e.style.width||e.offsetWidth<t&&(e.style.minWidth=`${t}px`,e.style.width=`${t}px`)}),this.table.style.minWidth=t.length*this.config.minColumnWidth+"px"}trackCellPositions(){const e=this.table.querySelectorAll("tr");if(this.cellPositions.clear(),!e.length)return;const t=e[0].querySelectorAll("th, td"),o=[];let r=0;t.forEach(e=>{const t=e.getBoundingClientRect().width;o.push({width:t,left:r}),r+=t}),e.forEach((e,t)=>{e.querySelectorAll("th, td").forEach((e,r)=>{const l=o[r];l&&(this.cellPositions.set(`${t}-${r}`,{left:l.left,width:l.width,rowIndex:t,cellIndex:r}),e.setAttribute("data-row-index",t),e.setAttribute("data-cell-index",r))})})}applyStyles(){this.setupTableContainer(),this.config.fixedColumns&&(null!==this.config.leftFreeze.from&&null!==this.config.leftFreeze.to&&this.applyLeftFreeze(),null!==this.config.rightFreeze.from&&null!==this.config.rightFreeze.to&&this.applyRightFreeze()),this.config.fixedHeader&&this.applyFixedHeader()}setupTableContainer(){let e=this.table.closest(".table-freezer-container");if(!e){const t=document.createElement("div");t.className="table-freezer-container",t.style.cssText="\n overflow: auto;\n position: relative;\n max-width: 100%;\n max-height: 500px;\n border: 1px solid #dee2e6;\n ",this.table.parentNode.insertBefore(t,this.table),t.appendChild(this.table),e=t}return this.table.style.position||(this.table.style.position="relative"),e}applyFixedHeader(){const e=this.table.querySelector("thead");e&&(this.config.headerBgColor&&(e.style.backgroundColor=S(this.config.headerBgColor)),this.config.headerColor&&(e.style.color=S(this.config.headerColor)),e.style.position="sticky",e.style.top="0",e.style.zIndex="20",e.setAttribute("data-frozen","header"))}clearFrozenColumns(e="left"){this.table.querySelectorAll(`[data-frozen="${e}"]`).forEach(e=>{e.removeAttribute("data-frozen"),e.removeAttribute("data-freeze-position"),e.style.position="",e.style.left="",e.style.right="",e.style.zIndex="",e.hasAttribute("data-conditional-formatting")||(e.style.backgroundColor="",e.style.color="")})}applyFrozenCellStyles(e,{position:t,left:o,right:r,zIndex:l,bgColor:a,color:n}){e.style.position="sticky",e.style.zIndex=l,"left"===t?(e.style.left=`${Math.round(o)}px`,e.setAttribute("data-freeze-position",Math.round(o))):(e.style.right=`${Math.round(r)}px`,e.setAttribute("data-freeze-position",Math.round(r))),e.hasAttribute("data-conditional-formatting")||(a&&(e.style.backgroundColor=S(a)),n&&(e.style.color=S(n))),e.setAttribute("data-frozen",t)}applyLeftFreeze(){let{from:e,to:t}=this.config.leftFreeze;if(null===e||null===t)return;t<e&&(t=e),this.clearFrozenColumns("left");let o=0;for(let r=e-1;r<t;r++){const e=this.table.querySelectorAll(`[data-cell-index="${r}"]`);if(!e.length)continue;e.forEach(e=>{const t=0===parseInt(e.getAttribute("data-row-index"))&&this.config.fixedHeader?20:15;this.applyFrozenCellStyles(e,{position:"left",left:o,zIndex:t,bgColor:this.config.leftColumnBgColor,color:this.config.leftColumnColor})});const t=this.cellPositions.get(`0-${r}`);t&&(o+=t.width)}}applyRightFreeze(){let{from:e,to:t}=this.config.rightFreeze;if(null===e||null===t)return;t<e&&(t=e),this.clearFrozenColumns("right");let o=0;for(let r=t-1;r>=e-1;r--){const e=this.table.querySelectorAll(`[data-cell-index="${r}"]`);if(!e.length)continue;e.forEach(e=>{const t=0===parseInt(e.getAttribute("data-row-index"))&&this.config.fixedHeader?20:15;this.applyFrozenCellStyles(e,{position:"right",right:o,zIndex:t,bgColor:this.config.rightColumnBgColor,color:this.config.rightColumnColor})});const t=this.cellPositions.get(`0-${r}`);t&&(o+=t.width)}}updateConfig(e){this.config={...this.config,...e},this.refreshPositions()}cleanup(){["left","right"].forEach(e=>this.clearFrozenColumns(e)),this.table.querySelectorAll("thead, tr, th, td").forEach(e=>{["data-frozen","data-freeze-position","data-row-index","data-cell-index","data-left-position","data-cell-width"].forEach(t=>e.removeAttribute(t)),"THEAD"===e.tagName||"TH"===e.tagName?(e.style.backgroundColor="",e.style.color=""):e.hasAttribute("data-conditional-formatting")||(e.style.position="",e.style.left="",e.style.right="",e.style.top="",e.style.zIndex="")}),this.table.style.position="",this.table.style.minWidth="",this.cellPositions.clear()}destroy(){this.cleanup(),this.observer&&this.observer.disconnect(),this.resizeObserver&&this.resizeObserver.disconnect(),clearTimeout(this.debounceTimer),clearTimeout(this.resizeDebounceTimer);const e=this.table.closest(".table-freezer-container");e&&e.parentNode&&(e.parentNode.insertBefore(this.table,e),e.remove()),this.isInitialized=!1}getCellPosition(e,t){return this.cellPositions.get(`${e}-${t}`)}refreshPositions(){this.trackCellPositions(),this.applyStyles()}}const x=({attributes:e,setAttributes:t,clientId:o})=>{const{GkitPanelBody:l,GkitColor:a,GkitSwitcher:n,GkitTabs:i}=window.GkitComponents||{},{freezeSettings:d}=e,[u,h]=(0,c.useState)(!1),b=(0,c.useRef)(null),p=document.querySelector('iframe[name="editor-canvas"]')||document.querySelector("iframe");let m=null;try{m=p?.contentDocument||p?.contentWindow?.document}catch(e){m=null}const g=(()=>{if(!m||!o)return null;const e=m.querySelector(`[data-block="${o}"]`)||m.querySelector(`#block-${o}`)||m.querySelector(`.wp-block[data-block="${o}"]`);return e?e.querySelector("table"):null})();return(0,c.useEffect)(()=>{g&&(d&&e?.enableFreeze?b.current?b.current.updateConfig(d):b.current=new z(g,d):(b.current?.destroy(),b.current=null))},[d,g,e?.enableFreeze]),(0,r.createElement)(l,{title:(0,s.__)("Freeze Table","table-builder-block"),initialOpen:!1},(0,r.createElement)(n,{label:(0,s.__)("Enable Freeze","table-builder-block"),value:e?.enableFreeze,onChange:e=>t({enableFreeze:e})}),e?.enableFreeze&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)(y.Button,{variant:"primary",onClick:()=>h(e=>!e),className:"table-builder-Freeze-button",style:{display:"flex",justifyContent:"center",alignItems:"center",background:"#3B67FE",color:"#fff",padding:"10px",borderRadius:"4px",fontWeight:500,width:"100%",marginBottom:"15px"}},"Freeze Settings"),(0,r.createElement)(y.__experimentalHeading,null,(0,s.__)("Freeze Header","table-builder-block")),(0,r.createElement)(a,{label:(0,s.__)("Color","table-builder-block"),value:d?.headerColor,onChange:e=>t({freezeSettings:{...d,headerColor:e}})}),(0,r.createElement)(a,{label:(0,s.__)("Background","table-builder-block"),value:d?.headerBgColor,onChange:e=>t({freezeSettings:{...d,headerBgColor:e}})}),(0,r.createElement)(y.__experimentalDivider,null),(0,r.createElement)(y.__experimentalHeading,null,(0,s.__)("Freeze Column","table-builder-block")),(0,r.createElement)(i,{type:"normal",tabs:[{name:"left-tab",title:(0,s.__)("Left","table-builder-block")},{name:"right-tab",title:(0,s.__)("Right","table-builder-block")}]},e=>"left-tab"===e.name?(0,r.createElement)(r.Fragment,null,(0,r.createElement)(a,{label:(0,s.__)("Color","table-builder-block"),value:d?.leftColumnColor,onChange:e=>t({freezeSettings:{...d,leftColumnColor:e}})}),(0,r.createElement)(a,{label:(0,s.__)("Background","table-builder-block"),value:d?.leftColumnBgColor,onChange:e=>t({freezeSettings:{...d,leftColumnBgColor:e}})})):"right-tab"===e.name?(0,r.createElement)(r.Fragment,null,(0,r.createElement)(a,{label:(0,s.__)("Background","table-builder-block"),value:d?.rightColumnColor,onChange:e=>t({freezeSettings:{...d,rightColumnColor:e}})}),(0,r.createElement)(a,{label:(0,s.__)("Background","table-builder-block"),value:d?.rightColumnBgColor,onChange:e=>t({freezeSettings:{...d,rightColumnBgColor:e}})})):void 0)),u&&(0,r.createElement)(E,{attributes:e,setAttributes:t,setFreezePopOverOpen:h,freezerRef:b}))},T=(0,c.memo)(({attributes:e,setAttributes:t,device:o,advancedControl:l,clientId:n})=>{const{GkitBoxShadow:i,GkitColor:c,GkitPanelBody:d,GkitResponsive:u,GkitTabs:m,GkitBackgrounGroup:g,GkitSlider:f,GkitChoose:y,GkitBoxControl:v,GkitBorderControl:_,GkitSwitcher:C,GkitTypography:w,GkitNumber:E}=window.GkitComponents,{AdvancedColumnStyle:S,HeaderStyle:z,CaptionStyle:T,CellStyle:A,CommonStyle:B,ShortCode:H}=window?.tableBuilder?.components,{gkitResponsiveValue:L,responsiveHelper:R,useFontFamilyinBlock:M}=window.GkitHelpers,{useProActive:F,useTableFreeInitialization:N}=window?.tableBuilder?.helpers,$=e?.mergeTableCell&&Object.values(e?.mergeTableCell).some(e=>!0===e.hidden),q=F();return M([e?.headerTypography,e?.footerTypography,e?.typography,e?.captionTypography]),N(e,q),(0,r.createElement)(r.Fragment,null,(0,r.createElement)(a.InspectorControls,null,(0,r.createElement)(m,{type:"top-level",tabs:[{name:"content",title:(0,s.__)("Content","table-builder-block")},{name:"style",title:(0,s.__)("Style","table-builder-block")},{name:"advanced",title:(0,s.__)("Advanced","table-builder-block")}]},a=>{switch(a.name){case"content":return(0,r.createElement)(r.Fragment,null,(0,r.createElement)(d,{title:(0,s.__)("Settings","table-builder-block"),initialOpen:!0},(0,r.createElement)(C,{label:(0,s.__)("Enable Header","table-builder-block"),value:e?.hasHeader,onChange:e=>t({hasHeader:e}),help:!e?.hasHeader&&(0,r.createElement)("span",{className:"table-builder-block__notice"},(0,s.__)("Sort & duplicate columns not work without header","table-builder-block"))}),(0,r.createElement)(C,{label:(0,s.__)("Enable Footer","table-builder-block"),value:e?.hasFooter,onChange:e=>t({hasFooter:e})}),(0,r.createElement)(C,{label:(0,s.__)("Enable Sort","table-builder-block"),value:!!q&&e?.enableSorting,onChange:e=>t({enableSorting:e}),disabled:!q,help:q?!0!==$?(0,r.createElement)("span",{className:"table-builder-block__notice"},(0,s.__)("Sorting work at frontend","table-builder-block")):(0,r.createElement)("span",{className:"table-builder-block__notice"},(0,s.__)("Merged cells detected. Please disable sorting to prevent layout issues.","table-builder-block")):(0,s.__)("Pro Feature","table-builder-block")}),(0,r.createElement)(C,{label:(0,s.__)("Fixed width table cells","table-builder-block"),value:e?.hasFixedLayout,onChange:e=>t({hasFixedLayout:e})}),(0,r.createElement)(C,{label:(0,s.__)("Border Collapse","table-builder-block"),value:e?.hasBorderCollaps,onChange:e=>t({hasBorderCollaps:e})}),!e?.hasBorderCollaps&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)(u,null,(0,r.createElement)(f,{label:(0,s.__)("Vertical Spacing","table-builder-block"),value:L(e,"borderVerticalSpacing",o),onChange:e=>R("borderVerticalSpacing",e,o,t),sizeUnits:["px","em"],range:{min:0,max:100}})),(0,r.createElement)(u,null,(0,r.createElement)(f,{label:(0,s.__)("Horizontal Spacing","table-builder-block"),value:L(e,"borderHorizontalSpacing",o),onChange:e=>R("borderHorizontalSpacing",e,o,t),sizeUnits:["px","em"],range:{min:0,max:100}}))),(0,r.createElement)(C,{label:(0,s.__)("Enable Caption","table-builder-block"),value:e?.showCaption,onChange:e=>t({showCaption:e})}),e?.showCaption&&(0,r.createElement)(y,{label:(0,s.__)("Caption Position","table-builder-block"),value:e?.captionPosition,onChange:e=>t({captionPosition:e}),isToggle:!1,options:[{label:(0,s.__)("Top","table-builder-block"),value:"top"},{label:(0,s.__)("Bottom","table-builder-block"),value:"bottom"}]})),(0,r.createElement)(H,{attributes:e,setAttributes:t,device:o}));case"style":return(0,r.createElement)(r.Fragment,null,(0,r.createElement)(B,{attributes:e,setAttributes:t,device:o,verticalAlign:!0}),e.hasHeader&&(0,r.createElement)(z,{attributes:e,setAttributes:t,device:o}),(0,r.createElement)(S,{attributes:e,setAttributes:t,columnItems:"columnItems",header:e?.headers}),e.hasFooter&&(0,r.createElement)(d,{title:(0,s.__)("Footer","table-builder-block")},(0,r.createElement)(u,null,(0,r.createElement)(y,{label:(0,s.__)("Alignment","table-builder-block"),value:L(e,"footerAlignment",o),options:[{label:"Left",value:"left",icon:h},{label:"Center",value:"center",icon:b},{label:"Right",value:"right",icon:p}],onChange:e=>R("footerAlignment",e,o,t)})),(0,r.createElement)(w,{label:(0,s.__)("Typography","table-builder-block"),onChange:e=>t({footerTypography:e}),value:e?.footerTypography}),(0,r.createElement)(c,{label:(0,s.__)("Color","table-builder-block"),onChange:e=>t({footerColor:e}),value:e?.footerColor}),(0,r.createElement)(g,{label:(0,s.__)("Background","table-builder-block"),onChange:e=>t({footerBackground:e}),value:e?.footerBackground,exclude:{video:!0,image:!0}}),(0,r.createElement)(_,{label:(0,s.__)("Border","table-builder-block"),value:e.footerBorder,onChange:e=>t({footerBorder:e})}),(0,r.createElement)(u,null,(0,r.createElement)(v,{label:(0,s.__)("Border Radius","table-builder-block"),values:L(e,"footerBorderRadius",o),onChange:e=>R("footerBorderRadius",e,o,t)})),(0,r.createElement)(u,null,(0,r.createElement)(v,{label:(0,s.__)("Padding","table-builder-block"),values:L(e,"footerPadding",o),onChange:e=>R("footerPadding",e,o,t)}))),(0,r.createElement)(A,{attributes:e,setAttributes:t,device:o}),(0,r.createElement)(T,{attributes:e,setAttributes:t,device:o}));case"advanced":return(0,r.createElement)(r.Fragment,null,q&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)(x,{attributes:e,setAttributes:t,clientId:n}),(0,r.createElement)(k,{attributes:e,setAttributes:t,clientId:n}),(0,r.createElement)(d,{title:(0,s.__)("Resizer","table-builder-block")},(0,r.createElement)(C,{label:(0,s.__)("Enable Resizer","table-builder-block"),value:e?.resizerEnabled,onChange:e=>t({resizerEnabled:e}),help:(0,s.__)("Allow resizing table columns and rows in the editor.","table-builder-block")}))),l)}})))});class A{constructor(e,t,o,r,l=()=>{},a=()=>{}){this.getModalTable=e,this.getExternalTable=t,this.cells=o||{},this.setAttributes=r,this.onMergeModeChange=l,this.onMergeWarning=a,this.selectedCell=null,this.mergeMode="merge",this.isSelecting=!1,this.startCoords=null,this.invalidSelection=!1,this.focusedCell=null,this.isShiftSelecting=!1}getKey(e,t){return`${e}-${t}`}static assignDataAttributes(e){e&&e.querySelectorAll("tr").forEach((e,t)=>{Array.from(e.querySelectorAll("td, th")).forEach((e,o)=>{e.setAttribute("data-row",t),e.setAttribute("data-col",o)})})}getSectionType(e){if(!e?.parentElement?.parentElement)return null;const t=e.parentElement.parentElement;return"THEAD"===t.tagName?"thead":"TFOOT"===t.tagName?"tfoot":"tbody"}restoreTableState(){const e=this.getModalTable(),t=this.getExternalTable();e&&t&&(A.assignDataAttributes(e),A.assignDataAttributes(t),Object.keys(this.cells).forEach(o=>{const r=this.cells[o];if(!r)return;const[l,a]=o.split("-").map(Number);[e.querySelector(`[data-row="${l}"][data-col="${a}"]`),t.querySelector(`[data-row="${l}"][data-col="${a}"]`)].forEach(e=>{e&&(e.removeAttribute("rowspan"),e.removeAttribute("colspan"),e.style.display="",r.hidden||"none"===r.display?e.style.display="none":(r.rowSpan>1&&(e.rowSpan=r.rowSpan),r.colSpan>1&&(e.colSpan=r.colSpan)))})}))}clearSelection(){[this.getModalTable(),this.getExternalTable()].forEach(e=>{e&&e.querySelectorAll(".selected").forEach(e=>e.classList.remove("selected"))}),this.selectedCell=null}handleCellSelection(e){if(!e)return;const t=parseInt(e.dataset.row),o=parseInt(e.dataset.col),r=this.getKey(t,o),l=this.cells[r];this.clearSelection(),e.classList.add("selected");const a=this.getExternalTable()?.querySelector(`[data-row="${t}"][data-col="${o}"]`);a&&a.classList.add("selected"),this.selectedCell={row:t,col:o,element:e},this.focusedCell={row:t,col:o};const n=l&&(l.rowSpan>1||l.colSpan>1)||e.rowSpan>1||e.colSpan>1;this.mergeMode=n?"unmerge":"merge",this.onMergeModeChange(this.mergeMode)}updateSelectionRange(e){if(!this.startCoords||!e)return;const t=this.getModalTable(),o=this.getExternalTable();if(!t||!o)return;const r=t.querySelector(`[data-row="${this.startCoords.row}"][data-col="${this.startCoords.col}"]`);if(!r)return;const l=this.getSectionType(r),a=this.getSectionType(e);this.invalidSelection=l!==a;const n=this.startCoords.row,i=this.startCoords.col,s=parseInt(e.dataset.row),c=parseInt(e.dataset.col),d=Math.min(n,s),u=Math.max(n,s),h=Math.min(i,c),b=Math.max(i,c);this.clearSelection();let p=!1;for(let e=d;e<=u;e++)for(let r=h;r<=b;r++){const a=t.querySelector(`[data-row="${e}"][data-col="${r}"]`),n=o.querySelector(`[data-row="${e}"][data-col="${r}"]`);a&&this.getSectionType(a)===l&&(a.classList.add("selected"),"none"===a.style.display&&(p=!0),n&&n.classList.add("selected"))}this.mergeMode=p?"unmerge":"merge",this.onMergeModeChange(this.mergeMode)}handleMerge(){const e=this.getModalTable(),t=this.getExternalTable();if(!e||!t)return!1;const o=e.querySelectorAll(".selected");return!(o.length<1)&&(1===o.length&&"unmerge"===this.mergeMode?this.unmergeCell():o.length>1&&this.mergeCells(o))}mergeCells(e){if(e.length<2)return!1;const t=this.getSectionType(e[0]);if(!t)return!1;for(let o of e)if(this.getSectionType(o)!==t)return console.warn("Cannot merge cells from different table sections."),!1;const o=Array.from(e).map(e=>({row:parseInt(e.dataset.row),col:parseInt(e.dataset.col),element:e})),r=o.map(e=>e.row),l=o.map(e=>e.col),a=Math.min(...r),n=Math.max(...r),i=Math.min(...l),s=Math.max(...l),c=n-a+1,d=s-i+1,u=o.find(e=>e.row===a&&e.col===i);if(!u)return!1;this.getModalTable();const h=this.getExternalTable(),b={...this.cells};u.element.rowSpan=c,u.element.colSpan=d;const p=h.querySelector(`[data-row="${a}"][data-col="${i}"]`);return p&&(p.rowSpan=c,p.colSpan=d),b[this.getKey(a,i)]={rowSpan:c,colSpan:d,hidden:!1,display:"","data-row":a,"data-col":i},o.forEach(e=>{if(e.element!==u.element){const t=this.getKey(e.row,e.col);e.element.style.display="none";const o=h.querySelector(`[data-row="${e.row}"][data-col="${e.col}"]`);o&&(o.style.display="none"),b[t]={rowSpan:1,colSpan:1,hidden:!0,display:"none","data-row":e.row,"data-col":e.col}}}),this.setAttributes(b),this.clearSelection(),!0}unmergeCell(){if(!this.selectedCell)return!1;const{row:e,col:t,element:o}=this.selectedCell,r=this.getKey(e,t),l=this.cells[r];if(!l)return!1;const a=this.getModalTable(),n=this.getExternalTable(),i={...this.cells},s=l.rowSpan||1,c=l.colSpan||1;o.rowSpan=1,o.colSpan=1;const d=n.querySelector(`[data-row="${e}"][data-col="${t}"]`);d&&(d.rowSpan=1,d.colSpan=1);for(let o=e;o<e+s;o++)for(let e=t;e<t+c;e++){const t=this.getKey(o,e),r=a.querySelector(`[data-row="${o}"][data-col="${e}"]`);r&&(r.style.display="");const l=n.querySelector(`[data-row="${o}"][data-col="${e}"]`);l&&(l.style.display=""),i[t]={rowSpan:1,colSpan:1,hidden:!1,display:"","data-row":o,"data-col":e}}return this.setAttributes(i),this.clearSelection(),!0}handleMouseDown(e){const t=e.target.closest("td, th");t&&(this.isShiftSelecting=e.shiftKey,this.isShiftSelecting&&this.startCoords?this.updateSelectionRange(t):(this.isSelecting=!0,this.invalidSelection=!1,this.startCoords={row:parseInt(t.dataset.row),col:parseInt(t.dataset.col)},this.handleCellSelection(t)))}handleMouseOver(e){if(!this.isSelecting||this.isShiftSelecting)return;const t=e.target.closest("td, th");t&&this.updateSelectionRange(t)}handleMouseUp(){this.isSelecting=!1,this.isShiftSelecting=!1,this.invalidSelection&&(this.clearSelection(),this.mergeMode="merge",this.onMergeModeChange(this.mergeMode),this.onMergeWarning&&requestAnimationFrame(()=>{this.onMergeWarning("Cannot select cells across different table sections (thead, tbody, tfoot).")})),this.invalidSelection=!1}getMergeMode(){return this.mergeMode}getSelectedCellsCount(){const e=this.getModalTable();return e?e.querySelectorAll(".selected").length:0}moveFocus(e){if(!this.focusedCell){const e=this.getModalTable();if(!e)return;const t=e.querySelector("td, th");return void(t&&(this.focusedCell={row:parseInt(t.dataset.row),col:parseInt(t.dataset.col)},this.handleCellSelection(t)))}const t=this.getModalTable();if(!t)return;let o=this.focusedCell.row,r=this.focusedCell.col;switch(e){case"up":o=Math.max(0,o-1);break;case"down":o+=1;break;case"left":r=Math.max(0,r-1);break;case"right":r+=1}const l=t.querySelector(`[data-row="${o}"][data-col="${r}"]`);l&&"none"!==l.style.display&&(this.handleCellSelection(l),l.scrollIntoView({block:"nearest",inline:"nearest"}))}expandSelection(e){if(!this.startCoords){if(!this.focusedCell)return;this.startCoords={...this.focusedCell}}if(!this.focusedCell)return;const t=this.getModalTable();if(!t)return;let o=this.focusedCell.row,r=this.focusedCell.col;switch(e){case"up":o=Math.max(0,o-1);break;case"down":o+=1;break;case"left":r=Math.max(0,r-1);break;case"right":r+=1}const l=t.querySelector(`[data-row="${o}"][data-col="${r}"]`);l&&"none"!==l.style.display&&(this.focusedCell={row:parseInt(l.dataset.row),col:parseInt(l.dataset.col)},this.updateSelectionRange(l),l.scrollIntoView({block:"nearest",inline:"nearest"}))}clearAllMerges(){const e=this.getModalTable(),t=this.getExternalTable();if(!e||!t)return!1;const o={};return e.querySelectorAll("td, th").forEach(e=>{const r=parseInt(e.dataset.row),l=parseInt(e.dataset.col),a=this.getKey(r,l);e.rowSpan=1,e.colSpan=1,e.style.display="";const n=t.querySelector(`[data-row="${r}"][data-col="${l}"]`);n&&(n.rowSpan=1,n.colSpan=1,n.style.display=""),o[a]={rowSpan:1,colSpan:1,hidden:!1,display:"","data-row":r,"data-col":l}}),this.setAttributes(o),this.clearSelection(),!0}}const B=({mergeMode:e,selectedCount:t,mergeWarning:o,setMergeWarning:l})=>{const a=(0,c.useRef)(null),n="merge"===e,i=n?"Select cells using mouse or keyboard arrows. Keyboard: Hold Shift + use Arrow Keys. Mouse: Hold Shift + use Mouse Cursor to select cells.":'Selected cell is merged. Click "Unmerge Cell" or press Enter/Space to split it back into individual cells.',s=t>0?`${t} cell${1!==t?"s":""} selected`:"No cells selected",d=0===t?"Click any cell to start":"unmerge"===e?"Ready to unmerge":t>1?"Ready to merge":"Select more cells to merge";return(0,c.useEffect)(()=>{if(o&&a.current){a.current.classList.add("table-merge-popover-modal__toast--visible");const e=setTimeout(()=>{l(""),a.current?.classList.remove("table-merge-popover-modal__toast--visible")},4e3);return()=>clearTimeout(e)}},[o,l]),(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:"table-merge-popover-modal__instruction"},(0,r.createElement)("div",{className:"table-merge-popover-modal__instruction-container"},(0,r.createElement)("div",{className:"table-merge-popover-modal__instruction-header"},(0,r.createElement)("span",{className:"table-merge-popover-modal__instruction-mode "+(n?"merge-active":"")},n?"🔗 Merge Mode":"✂️ Unmerge Mode"),(0,r.createElement)("span",{className:"table-merge-popover-modal__instruction-status"},s),(0,r.createElement)("span",{className:"table-merge-popover-modal__instruction-actionText "+(t>1&&n?"merge-active":"")},"• ",d))),(0,r.createElement)("p",{className:"table-merge-popover-modal__instruction-text"},"💡 ",(0,r.createElement)("strong",null,"How to select:")," ",i)),o&&(0,r.createElement)("div",{ref:a,className:"table-merge-popover-modal__toast"},(0,r.createElement)("span",{style:{fontSize:"18px"}},"⚠️"),(0,r.createElement)("span",null,(0,r.createElement)("strong",null,"Warning:")," ",o)))},H=({attributes:e,setAttributes:t,setMergePopOverOpen:o,isVisible:l,externalTableRef:a})=>{const n=(0,c.useRef)(null),i=(0,c.useRef)(null),[s,d]=(0,c.useState)(""),[u,h]=(0,c.useState)("merge"),[b,p]=(0,c.useState)(0),[m,g]=(0,c.useState)(e.mergeTableCell||{});(0,c.useEffect)(()=>{g(e.mergeTableCell||{})},[e.mergeTableCell]);const f=()=>i.current,v=()=>a.current,_=()=>{n.current&&(h(n.current.getMergeMode()),p(n.current.getSelectedCellsCount()))},C=()=>{n.current&&n.current.clearSelection(),o(!1)};(0,c.useEffect)(()=>{const e=new A(f,v,m,e=>{g(e),t({mergeTableCell:e})},h,e=>d(e));n.current=e;const o=f();if(!o)return;const r=t=>{e.handleMouseDown(t),_()},l=t=>{e.handleMouseOver(t),_()},a=t=>{e.handleMouseUp(t),_()};o.addEventListener("mousedown",r),o.addEventListener("mouseover",l),document.addEventListener("mouseup",a);const i=t=>{if(e)if(["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"].includes(t.key)){t.preventDefault();const o=t.key.replace("Arrow","").toLowerCase();t.shiftKey?e.expandSelection(o):e.moveFocus(o),_()}else"Enter"===t.key||" "===t.key?(t.preventDefault(),k()):"Escape"===t.key&&(t.preventDefault(),e.clearSelection(),_())};return document.addEventListener("keydown",i),A.assignDataAttributes(o),A.assignDataAttributes(v()),e.restoreTableState(),_(),()=>{o.removeEventListener("mousedown",r),o.removeEventListener("mouseover",l),document.removeEventListener("mouseup",a),document.removeEventListener("keydown",i)}},[m,t,e.rowCount,e.columnCount]);const k=()=>{n.current&&n.current.handleMerge()&&setTimeout(()=>{C()},100)};(0,c.useEffect)(()=>{const e=document.querySelector(".components-modal__screen-overlay");e&&(e.style.visibility=l?"visible":"hidden")},[l]);const w=b>=1&&("unmerge"===u||b>1);return(0,r.createElement)(y.Modal,{title:"Merge/Unmerge Table Cells",onRequestClose:C,size:"fill",className:"table-merge-popover-modal",style:l?{display:"block"}:{display:"none"}},(0,r.createElement)(B,{mergeMode:u,selectedCount:b,mergeWarning:s,setMergeWarning:d}),(0,r.createElement)("div",{className:"table-merge-popover__scrollable-container"},(0,r.createElement)("table",{className:"table-merge-popover",ref:i},e?.hasHeader&&(0,r.createElement)("thead",{className:"table-merge-popover__header"},(0,r.createElement)("tr",null,e?.headers?.map((e,t)=>(0,r.createElement)("th",{key:t},e.title)))),(0,r.createElement)("tbody",{className:"table-merge-popover__body"},Array.from({length:e?.rowCount||0}).map((t,o)=>(0,r.createElement)("tr",{key:o},Array.from({length:e?.columnCount||0}).map((e,t)=>(0,r.createElement)("td",{key:t,"data-row":o,"data-col":t},"Cell ",o+1,"-",t+1))))),e?.hasFooter&&(0,r.createElement)("tfoot",{className:"table-merge-popover__footer"},(0,r.createElement)("tr",null,e?.footers?.map((e,t)=>(0,r.createElement)("td",{key:t},e.title)))))),(0,r.createElement)("div",{className:"table-merge-popover__button-wrapper"},(0,r.createElement)("div",{className:"table-merge-popover__shortcuts"},(0,r.createElement)("small",{style:{color:"#666",fontSize:"12px",lineHeight:"1.4"}},(0,r.createElement)("strong",null,"⌨️ Keyboard shortcuts:")," Arrow keys to navigate | Shift + Arrows to select | Enter/Space to merge/unmerge | Esc to clear"),(0,r.createElement)("small",{style:{color:"#666",fontSize:"12px",marginTop:"4px",display:"block"}},(0,r.createElement)("strong",null,"🖱️ Mouse shortcuts:")," Click & drag to select | Shift + Click to extend selection")),(0,r.createElement)("div",{style:{display:"flex",gap:"8px"}},(0,r.createElement)(y.Button,{variant:"tertiary",onClick:()=>{n.current&&window.confirm("Are you sure you want to clear all merged cells? This action cannot be undone.")&&(n.current.clearAllMerges(),_())},className:"table-merge-popover__clear-button",isDestructive:!0,disabled:!(()=>{const e=m||{};return Object.values(e).some(e=>e&&(e.rowSpan>1||e.colSpan>1||!0===e.hidden))})()},"Clear All Merges"),(0,r.createElement)(y.Button,{variant:"primary",onClick:k,className:"table-merge-popover__button",disabled:!w},0===b?"Select a cell":1===b&&"unmerge"===u?"Unmerge Cell":b>1?`Merge ${b} Cells`:"Select more cells to merge"))))},L=(0,u.jsx)(d.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:(0,u.jsx)(d.Path,{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM5 4.5h14c.3 0 .5.2.5.5v3.5h-15V5c0-.3.2-.5.5-.5zm8 5.5h6.5v3.5H13V10zm-1.5 3.5h-7V10h7v3.5zm-7 5.5v-4h7v4.5H5c-.3 0-.5-.2-.5-.5zm14.5.5h-6V15h6.5v4c0 .3-.2.5-.5.5z"})}),R=e=>e.map(e=>wp.blocks.createBlock(e.name,{...e.attributes},e.innerBlocks?.length?R(e.innerBlocks):[])),M=(e=!1,t=!1)=>{const o=document.createElement("div");if(o.className="column-selection-overlay",o.style.cssText="\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(37, 99, 235, 0.35);\n border: 2px solid rgba(37, 99, 235, 0.3);\n pointer-events: none;\n z-index: 1;\n border-radius: inherit;\n ",t&&e){const e=document.createElement("span");e.className="column-indicator-badge",e.textContent="Selected",e.style.cssText="\n position: absolute;\n top: 4px;\n right: 4px;\n padding: 2px 8px;\n background: #2563eb;\n color: white;\n font-size: 11px;\n font-weight: 600;\n border-radius: 4px;\n pointer-events: none;\n z-index: 2;\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n ",o.appendChild(e)}return o},F=(e,t,o=!0)=>{const r=e?.querySelector("thead"),l=e?.querySelector("tbody"),a=e?.querySelector("tfoot");if(r){const e=r.querySelectorAll("th")[t];if(e)if(o){"static"===window.getComputedStyle(e).position&&(e.style.position="relative");const t=e.querySelector(".column-selection-overlay");t&&t.remove();const o=M(!0,!0);e.appendChild(o)}else{const t=e.querySelector(".column-selection-overlay");t&&t.remove()}}l&&l.querySelectorAll("tr").forEach(e=>{const r=e.querySelectorAll("td, th")[t];if(r)if(o){"static"===window.getComputedStyle(r).position&&(r.style.position="relative");const e=r.querySelector(".column-selection-overlay");e&&e.remove();const t=M(!1);r.appendChild(t)}else{const e=r.querySelector(".column-selection-overlay");e&&e.remove()}}),a&&a.querySelectorAll("tr").forEach(e=>{const r=e.querySelectorAll("td, th")[t];if(r)if(o){"static"===window.getComputedStyle(r).position&&(r.style.position="relative");const e=r.querySelector(".column-selection-overlay");e&&e.remove();const t=M(!0);r.appendChild(t)}else{const e=r.querySelector(".column-selection-overlay");e&&e.remove()}})};class N{constructor(e,t={}){var o,r,l;if(!e||"TABLE"!==e?.tagName?.toUpperCase())throw new Error("TableColumnResizer: invalid table element");this.table=e,this.doc=e.ownerDocument,this.win=e.ownerDocument.defaultView||window,this.options={minWidth:null!==(o=t.minWidth)&&void 0!==o?o:50,onResize:null!==(r=t.onResize)&&void 0!==r?r:null,onResizeEnd:null!==(l=t.onResizeEnd)&&void 0!==l?l:null},this._dragging=!1,this._col=null,this._colIndex=-1,this._startX=0,this._startW=0,this._raf=null,this._previewLine=null,this._tooltip=null,this._widths=[],this._positionCache=new WeakMap,this._onMove=this._onMove.bind(this),this._onUp=this._onUp.bind(this),this._init()}getColumnWidths(){return this._headers().map(e=>e.offsetWidth)}setColumnWidths(e){if(!Array.isArray(e)||!e.length)return;const t=e.reduce((e,t)=>e+(t||0),0);0!==t&&(this._widths=e.map(e=>e||0),this._headers().forEach((o,r)=>{e[r]&&this._applyPct(r,e[r],t)}))}destroy(){this.table.querySelectorAll(".gkit-col-resizer").forEach(e=>e.remove()),this.table.querySelectorAll(".gkit-col-preview-line, .gkit-resize-tooltip--col").forEach(e=>e.remove()),this.table.classList.remove("gkit-table-resizable","gkit-is-resizing"),this.table.style.tableLayout="",this.table.style.width="",this.table.querySelectorAll("thead th, tbody td, tbody th, tfoot td, tfoot th").forEach(e=>{e.style.width="",e.style.minWidth=""}),this._observer?.disconnect(),clearTimeout(this._reinitTimer),this._reinitRaf&&cancelAnimationFrame(this._reinitRaf),this._raf&&cancelAnimationFrame(this._raf),this._cleanup()}_init(){this.table.classList.add("gkit-table-resizable"),this.table.style.tableLayout="fixed",this.table.style.width="100%";const e=this._headers();e.length&&(this._widths=e.map(e=>e.offsetWidth),e.forEach((e,t)=>this._addHandle(e,t)),this._observe())}_addHandle(e,t,o){var r;if(e.querySelector(".gkit-col-resizer"))return;const l=this.doc.createElement("div");l.className="gkit-col-resizer",l.setAttribute("aria-label",`Resize column ${t+1}`);const a=null!==(r=null!=o?o:this._positionCache.get(e))&&void 0!==r?r:this.win.getComputedStyle(e).position;this._positionCache.set(e,a),"static"===a&&(e.style.position="relative"),e.appendChild(l),l.addEventListener("mousedown",o=>this._onDown(o,e,t)),l.addEventListener("dblclick",o=>this._onDblClick(o,e,t)),l.addEventListener("touchstart",o=>this._onTouchStart(o,e,t),{passive:!1})}_onDown(e,t,o){0===e.button&&(e.preventDefault(),e.stopPropagation(),this._dragging=!0,this._col=t,this._colIndex=o,this._startX=e.pageX,this._startW=t.offsetWidth,this.table.classList.add("gkit-is-resizing"),this.doc.body.style.userSelect="none",this.doc.body.style.cursor="col-resize",e.target.classList.add("gkit-col-resizer--active"),this._previewLine=this.doc.createElement("div"),this._previewLine.className="gkit-col-preview-line",this._updatePreviewLine(this._startW,t),this.table.appendChild(this._previewLine),this._tooltip=this.doc.createElement("div"),this._tooltip.className="gkit-resize-tooltip gkit-resize-tooltip--col",this._tooltip.textContent=`Width: ${Math.round(this._startW)}px`,this._updateTooltipCol(this._startW,t),this.table.appendChild(this._tooltip),this.doc.addEventListener("mousemove",this._onMove),this.doc.addEventListener("mouseup",this._onUp))}_onTouchStart(e,t,o){e.preventDefault();const r=e.touches[0];this._dragging=!0,this._col=t,this._colIndex=o,this._startX=r.pageX,this._startW=t.offsetWidth,this.table.classList.add("gkit-is-resizing");const l=e=>{e.preventDefault();const t=Math.max(this.options.minWidth,this._startW+(e.touches[0].pageX-this._startX));this._applyWidth(this._colIndex,t)},a=()=>{this._finalize(),this.doc.removeEventListener("touchmove",l),this.doc.removeEventListener("touchend",a)};this.doc.addEventListener("touchmove",l,{passive:!1}),this.doc.addEventListener("touchend",a)}_onMove(e){this._dragging&&(e.preventDefault(),this._raf&&cancelAnimationFrame(this._raf),this._raf=requestAnimationFrame(()=>{const t=Math.max(this.options.minWidth,this._startW+(e.pageX-this._startX));this._applyWidth(this._colIndex,t),this.options.onResize?.(this._colIndex,t),this._updatePreviewLine(t,this._col),this._tooltip&&(this._tooltip.textContent=`Width: ${Math.round(t)}px`,this._updateTooltipCol(t,this._col))}))}_onUp(e){this._dragging&&(e.preventDefault(),this._raf&&(cancelAnimationFrame(this._raf),this._raf=null),this._finalize(),this._cleanup())}_finalize(){this._dragging=!1,this.table.classList.remove("gkit-is-resizing"),this.table.querySelectorAll(".gkit-col-resizer--active").forEach(e=>e.classList.remove("gkit-col-resizer--active")),this._previewLine?.remove(),this._previewLine=null,this._tooltip?.remove(),this._tooltip=null;const e=this.getColumnWidths();this._widths=[...e],this.options.onResizeEnd?.(e)}_onDblClick(e,t,o){e.preventDefault(),e.stopPropagation();const r=t.style.width;t.style.width="auto";const l=Math.max(this.options.minWidth,t.scrollWidth+2);t.style.width=r,this._applyWidth(o,l);const a=this.getColumnWidths();this._widths=[...a],this.options.onResizeEnd?.(a)}_updatePreviewLine(e,t){if(!this._previewLine)return;const o=this.table.getBoundingClientRect().left,r=t.getBoundingClientRect().left;this._previewLine.style.left=`${r-o+e}px`}_updateTooltipCol(e,t){if(!this._tooltip)return;const o=this.table.getBoundingClientRect().left,r=t.getBoundingClientRect().left-o+e;this._tooltip.style.left=`${Math.max(4,Math.min(r+8,this.table.offsetWidth-90-4))}px`,this._tooltip.style.top="4px"}_cleanup(){this.doc.body.style.userSelect="",this.doc.body.style.cursor="",this.doc.removeEventListener("mousemove",this._onMove),this.doc.removeEventListener("mouseup",this._onUp)}_applyWidth(e,t){const o=this._headers(),r=this._widths.length===o.length?[...this._widths]:o.map(e=>e.offsetWidth);r[e]=t,this._widths=r;const l=r.reduce((e,t)=>e+t,0);o.forEach((e,t)=>this._applyPct(t,r[t],l))}_applyPct(e,t,o){const r=`${(t/o*100).toFixed(4)}%`,l=`${this.options.minWidth}px`,a=this._headers()[e];a&&(a.style.width=r,a.style.minWidth=l),this.table.querySelectorAll("tbody tr, tfoot tr").forEach(t=>{const o=t.querySelectorAll("td, th")[e];o&&"none"!==o.style.display&&(o.style.width=r,o.style.minWidth=l)})}_headers(){const e=Array.from(this.table.querySelectorAll("thead th"));if(e.length)return e;const t=this.table.querySelector("tr");return t?Array.from(t.querySelectorAll("th, td")):[]}_observe(){const e=this.table.querySelector("thead");e&&"undefined"!=typeof MutationObserver&&(this._observer=new MutationObserver(()=>{clearTimeout(this._reinitTimer),this._reinitRaf&&cancelAnimationFrame(this._reinitRaf),this._reinitTimer=setTimeout(()=>{this._reinitRaf=requestAnimationFrame(()=>{this._reinitRaf=null;const e=this._headers(),t=e.map(e=>{if(this._positionCache.has(e))return this._positionCache.get(e);const t=this.win.getComputedStyle(e).position;return this._positionCache.set(e,t),t});this.table.querySelectorAll(".gkit-col-resizer").forEach(e=>e.remove()),e.forEach((e,o)=>this._addHandle(e,o,t[o]))})},100)}),this._observer.observe(e,{childList:!0,subtree:!0}))}}class ${constructor(e,t={}){var o,r,l,a;if(!e||"TABLE"!==e?.tagName?.toUpperCase())throw new Error("TableRowResizer: invalid table element");this.table=e,this.doc=e.ownerDocument,this.win=e.ownerDocument.defaultView||window,this.options={minHeight:null!==(o=t.minHeight)&&void 0!==o?o:30,onResize:null!==(r=t.onResize)&&void 0!==r?r:null,onResizeEnd:null!==(l=t.onResizeEnd)&&void 0!==l?l:null,onHeaderResizeEnd:null!==(a=t.onHeaderResizeEnd)&&void 0!==a?a:null},this._dragging=!1,this._row=null,this._rowIndex=-1,this._section="tbody",this._startY=0,this._startH=0,this._raf=null,this._previewLine=null,this._tooltip=null,this._heights=[],this._headerHeight=0,this._onMove=this._onMove.bind(this),this._onUp=this._onUp.bind(this),this._init()}getRowHeights(){return this._rows().map(e=>e.offsetHeight)}getHeaderHeight(){var e;return null!==(e=this._headerRow()?.offsetHeight)&&void 0!==e?e:0}setRowHeights(e){Array.isArray(e)&&e.length&&(this._heights=e.map(e=>e||0),this._rows().forEach((t,o)=>{e[o]&&(t.style.height=`${e[o]}px`)}))}setHeaderHeight(e){if(!e)return;this._headerHeight=e;const t=this._headerRow();t&&(t.style.height=`${e}px`)}destroy(){this.table.querySelectorAll(".gkit-row-resizer").forEach(e=>e.remove()),this.table.querySelectorAll(".gkit-row-preview-line, .gkit-resize-tooltip--row").forEach(e=>e.remove()),this.table.classList.remove("gkit-table-row-resizable","gkit-is-row-resizing"),this.table.querySelectorAll("tr").forEach(e=>{e.style.height=""}),this._observer?.disconnect(),this._theadObserver?.disconnect(),clearTimeout(this._reinitTimer),clearTimeout(this._theadReinitTimer),this._raf&&cancelAnimationFrame(this._raf),this._cleanup()}_init(){this.table.classList.add("gkit-table-row-resizable");const e=this._headerRow();e&&(this._headerHeight=e.offsetHeight,this._addHandles(e,0,"thead"));const t=this._rows();t.length&&(this._heights=t.map(e=>e.offsetHeight),t.forEach((e,t)=>this._addHandles(e,t,"tbody"))),this._observe()}_addHandles(e,t,o){const r=e.querySelector("td, th");if(!r)return;if(r.querySelector(".gkit-row-resizer"))return;"static"===this.win.getComputedStyle(r).position&&(r.style.position="relative");const l=this.doc.createElement("div");l.className="gkit-row-resizer",l.dataset.rowIndex=t,l.dataset.section=o,l.setAttribute("aria-label","thead"===o?"Resize header row":`Resize row ${t+1}`),r.appendChild(l),l.addEventListener("mousedown",r=>this._onDown(r,e,t,o)),l.addEventListener("dblclick",r=>this._onDblClick(r,e,t,o)),l.addEventListener("touchstart",r=>this._onTouchStart(r,e,t,o),{passive:!1})}_onDown(e,t,o,r){0===e.button&&(e.preventDefault(),e.stopPropagation(),this._dragging=!0,this._row=t,this._rowIndex=o,this._section=r,this._startY=e.pageY,this._startH=t.offsetHeight,this.table.classList.add("gkit-is-row-resizing"),this.doc.body.style.userSelect="none",this.doc.body.style.cursor="row-resize",t.querySelectorAll(".gkit-row-resizer").forEach(e=>e.classList.add("gkit-row-resizer--active")),this._previewLine=this.doc.createElement("div"),this._previewLine.className="gkit-row-preview-line",this._updatePreviewLine(this._startH,t),this.table.appendChild(this._previewLine),this._tooltip=this.doc.createElement("div"),this._tooltip.className="gkit-resize-tooltip gkit-resize-tooltip--row",this._tooltip.textContent=`Height: ${Math.round(this._startH)}px`,this._updateTooltipRow(this._startH,t),this.table.appendChild(this._tooltip),this.doc.addEventListener("mousemove",this._onMove),this.doc.addEventListener("mouseup",this._onUp))}_onTouchStart(e,t,o,r){e.preventDefault();const l=e.touches[0];this._dragging=!0,this._row=t,this._rowIndex=o,this._section=r,this._startY=l.pageY,this._startH=t.offsetHeight,this.table.classList.add("gkit-is-row-resizing");const a=e=>{e.preventDefault();const t=Math.max(this.options.minHeight,this._startH+(e.touches[0].pageY-this._startY));this._applyHeight(this._rowIndex,t,this._section)},n=()=>{this._finalize(),this.doc.removeEventListener("touchmove",a),this.doc.removeEventListener("touchend",n)};this.doc.addEventListener("touchmove",a,{passive:!1}),this.doc.addEventListener("touchend",n)}_onMove(e){this._dragging&&(e.preventDefault(),this._raf&&cancelAnimationFrame(this._raf),this._raf=requestAnimationFrame(()=>{const t=Math.max(this.options.minHeight,this._startH+(e.pageY-this._startY));this._applyHeight(this._rowIndex,t,this._section),this.options.onResize?.(this._rowIndex,t,this._section),this._updatePreviewLine(t,this._row),this._tooltip&&(this._tooltip.textContent=`Height: ${Math.round(t)}px`,this._updateTooltipRow(t,this._row))}))}_onUp(e){this._dragging&&(e.preventDefault(),this._raf&&(cancelAnimationFrame(this._raf),this._raf=null),this._finalize(),this._cleanup())}_finalize(){if(this._dragging=!1,this.table.classList.remove("gkit-is-row-resizing"),this.table.querySelectorAll(".gkit-row-resizer--active").forEach(e=>e.classList.remove("gkit-row-resizer--active")),this._previewLine?.remove(),this._previewLine=null,this._tooltip?.remove(),this._tooltip=null,"thead"===this._section){var e;this._headerHeight=null!==(e=this._headerRow()?.offsetHeight)&&void 0!==e?e:this._headerHeight,this.options.onHeaderResizeEnd?.(this._headerHeight)}else{const e=this.getRowHeights();this._heights=[...e],this.options.onResizeEnd?.(e)}}_onDblClick(e,t,o,r){e.preventDefault(),e.stopPropagation(),t.style.height="";const l=Math.max(this.options.minHeight,t.offsetHeight);if(this._applyHeight(o,l,r),"thead"===r)this._headerHeight=l,this.options.onHeaderResizeEnd?.(l);else{const e=this.getRowHeights();this._heights=[...e],this.options.onResizeEnd?.(e)}}_updatePreviewLine(e,t){if(!this._previewLine)return;const o=this.table.getBoundingClientRect().top,r=t.getBoundingClientRect().top;this._previewLine.style.top=`${r-o+e}px`}_updateTooltipRow(e,t){if(!this._tooltip)return;const o=this.table.getBoundingClientRect().top,r=t.getBoundingClientRect().top-o+e;this._tooltip.style.top=`${Math.min(r-22-4,this.table.offsetHeight-22-4)}px`,this._tooltip.style.left="4px"}_cleanup(){this.doc.body.style.userSelect="",this.doc.body.style.cursor="",this.doc.removeEventListener("mousemove",this._onMove),this.doc.removeEventListener("mouseup",this._onUp)}_applyHeight(e,t,o){if("thead"===o){this._headerHeight=t;const e=this._headerRow();return void(e&&(e.style.height=`${t}px`))}const r=this._rows(),l=this._heights.length===r.length?[...this._heights]:r.map(e=>e.offsetHeight);l[e]=t,this._heights=l,r[e]&&(r[e].style.height=`${t}px`)}_rows(){return Array.from(this.table.querySelectorAll("tbody tr"))}_headerRow(){var e;return null!==(e=this.table.querySelector("thead tr"))&&void 0!==e?e:null}_observe(){if("undefined"==typeof MutationObserver)return;const e=this.table.querySelector("tbody");e&&(this._observer=new MutationObserver(()=>{clearTimeout(this._reinitTimer),this._reinitTimer=setTimeout(()=>{this.table.querySelectorAll("tbody .gkit-row-resizer").forEach(e=>e.remove()),this._rows().forEach((e,t)=>this._addHandles(e,t,"tbody"))},100)}),this._observer.observe(e,{childList:!0,subtree:!0}));const t=this.table.querySelector("thead");t&&(this._theadObserver=new MutationObserver(()=>{clearTimeout(this._theadReinitTimer),this._theadReinitTimer=setTimeout(()=>{this.table.querySelectorAll("thead .gkit-row-resizer").forEach(e=>e.remove());const e=this._headerRow();e&&this._addHandles(e,0,"thead")},100)}),this._theadObserver.observe(t,{childList:!0,subtree:!0}))}}(0,l.registerBlockType)(n.UU,{edit:function({attributes:e,setAttributes:t,clientId:o,advancedControl:l,onReplace:n,isSelected:i}){const{caption:d,rowCount:u,columnCount:h,headers:b,footers:p,hasHeader:g,hasFooter:f,isEmpty:v,responsiveBreakpoint:_}=e,{GkitStyle:C,GkitNumber:k,GkitSwitcher:w}=window.GkitComponents,{TableBuilderPlaceholder:E}=window?.tableBuilder?.components,{useDeviceType:S,useBlockStyles:z,useDeviceList:x}=window.GkitHelpers,{useProActive:A}=window?.tableBuilder?.helpers,B=x(),M=B?.map(e=>"Mobile"===e?.slug?{...e,value:String(_||768)}:e),q=S(),j=Array.from({length:u},()=>["tablebuilder/table-builder-row"]),P=(0,a.useBlockProps)(),I=(0,c.useRef)(),W=A(),{selectBlock:D}=(0,m.useDispatch)("core/block-editor");(0,c.useEffect)(()=>{D(o)},[]);const V=(0,m.useSelect)(e=>{const{getBlocksByClientId:t}=e("core/block-editor"),r=t(o)[0];return r?.innerBlocks?.length||0},[o]),O=(0,c.useRef)(u);(0,c.useEffect)(()=>{V>0&&V!==u&&!v&&O.current!==V&&(O.current=V,t({rowCount:V}))},[V,u,v,t]);const G=(0,a.useInnerBlocksProps)({className:"gkit-table__body"},{allowedBlocks:["tablebuilder/table-builder-row"],renderAppender:!1,template:j}),U=(e,o,r,l,a)=>{const n=JSON.parse(JSON.stringify(l));n[e][o]=r,t({[a]:n})},K=b.map((e,t)=>(0,r.createElement)("th",{key:t,className:"gkit-table__header-content"},(0,r.createElement)(a.RichText,{identifier:`header-${t}`,tagName:"div",value:e.title,onChange:e=>U(t,"title",e,b,"headers"),placeholder:"Header"}))),Z=p.map((e,t)=>(0,r.createElement)("td",{key:t,className:"gkit-table__footer-content"},(0,r.createElement)(a.RichText,{identifier:`footer-${t}`,tagName:"div",value:e.title,onChange:e=>U(t,"title",e,p,"footers"),placeholder:"Footer"}))),[Y,X]=(0,c.useState)(null);(0,c.useEffect)(()=>{if(W&&I.current&&!v){const e=((e,t)=>{const o=e?.querySelector("thead"),r=e?.querySelector("tbody"),l=e?.querySelector("tfoot");if(!o)return;const a="selected-column",n=()=>{o.querySelectorAll("th").forEach((t,o)=>{t.classList.remove(a),F(e,o,!1)}),t(null)};r&&r.querySelectorAll("td, th").forEach(e=>{e.addEventListener("focus",n,!0),e.addEventListener("click",e=>{e.target.closest("thead")||n()})}),l&&l.querySelectorAll("td, th").forEach(e=>{e.addEventListener("focus",n,!0),e.addEventListener("click",n)}),o.querySelectorAll("th").forEach((r,l)=>{r.columnClickHandler&&r.removeEventListener("click",r.columnClickHandler),r.columnClickHandler=i=>{i.stopPropagation();const s=r.classList.contains(a),c=o.querySelectorAll("th");s?n():(c.forEach((t,o)=>{t.classList.remove(a),F(e,o,!1)}),r.classList.add(a),"static"===window.getComputedStyle(r).position&&(r.style.position="relative"),F(e,l,!0),t(l))},r.addEventListener("click",r.columnClickHandler),Object.assign(r.style,{cursor:"pointer",transition:"all 0.2s ease"}),r.addEventListener("mouseenter",()=>{if(!r.classList.contains(a)){"static"===window.getComputedStyle(r).position&&(r.style.position="relative");const e=r.querySelector(".column-hover-overlay");e&&e.remove();const t=document.createElement("div");t.className="column-hover-overlay",t.style.cssText="\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(37, 99, 235, 0.05);\n pointer-events: none;\n z-index: 1;\n border-radius: inherit;\n ",r.appendChild(t)}}),r.addEventListener("mouseleave",()=>{const e=r.querySelector(".column-hover-overlay");e&&e.remove()}),r.title=`Click to select/deselect column ${l+1}`}),r&&(r.clearSelectionHandler&&r.removeEventListener("click",r.clearSelectionHandler),r.clearSelectionHandler=n,r.addEventListener("click",r.clearSelectionHandler)),l&&(l.clearSelectionHandler&&l.removeEventListener("click",l.clearSelectionHandler),l.clearSelectionHandler=n,l.addEventListener("click",l.clearSelectionHandler))})(I.current,X);return()=>{e&&"function"==typeof e&&e()}}},[W,h,v,g]),W&&(function(e,{enabled:t=!0,columnWidths:o=[],setAttributes:r,deps:l=[]}){const a=(0,c.useRef)(null),n=(0,c.useRef)(o);n.current=o,(0,c.useEffect)(()=>{const o=e.current;if(!t||!o)return;a.current?.destroy(),a.current=new N(o,{minWidth:50,onResizeEnd:e=>r({columnWidths:e})});const l=n.current,i=o.querySelectorAll("thead th");return l?.length&&i.length===l.length&&a.current.setColumnWidths(l),()=>{a.current?.destroy(),a.current=null}},[t,...l])}(I,{enabled:!v&&!1!==e?.resizerEnabled,columnWidths:e.columnWidths,setAttributes:t,deps:[h,g,v]}),function(e,{enabled:t=!0,rowHeights:o=[],headerHeight:r=0,setAttributes:l,deps:a=[]}){const n=(0,c.useRef)(null),i=(0,c.useRef)(o);i.current=o;const s=(0,c.useRef)(r);s.current=r,(0,c.useEffect)(()=>{const o=e.current;if(!t||!o)return;n.current?.destroy(),n.current=new $(o,{minHeight:30,onResizeEnd:e=>l({rowHeights:e}),onHeaderResizeEnd:e=>l({headerHeight:e})});const r=i.current;r?.length&&n.current.setRowHeights(r);const a=s.current;return a&&n.current.setHeaderHeight(a),()=>{n.current?.destroy(),n.current=null}},[t,...a])}(I,{enabled:!v&&!1!==e?.resizerEnabled,rowHeights:e.rowHeights,headerHeight:e.headerHeight,setAttributes:t,deps:[V,v]})),(0,c.useEffect)(()=>{!i&&null!==Y&&I.current&&((e=>{if(!e)return;const t=e.querySelector("thead"),o=e.querySelector("tbody"),r=e.querySelector("tfoot");t&&t.querySelectorAll("th").forEach(e=>{e.classList.remove("selected-column");const t=e.querySelector(".column-selection-overlay");t&&t.remove()}),o&&o.querySelectorAll("td, th").forEach(e=>{const t=e.querySelector(".column-selection-overlay");t&&t.remove()}),r&&r.querySelectorAll("td, th").forEach(e=>{const t=e.querySelector(".column-selection-overlay");t&&t.remove()})})(I.current),X(null))},[i,Y]);const J=!e?.variationType,Q="blank"===e?.variationType,ee=()=>(0,r.createElement)(E,{attributes:e,setAttributes:t,clientId:o,onReplace:n,blockName:"tablebuilder/table-builder"}),[te,oe]=(0,c.useState)(!1),[re,le]=(0,c.useState)(!0);return(0,c.useEffect)(()=>{const e=setTimeout(()=>le(!1),0);return()=>clearTimeout(e)},[]),z(e,t,"blocksCSS",((e,t)=>{const{parseCSS:o,backgroundGenerator:r,getBoxShadowValue:l,getBoxValue:a,getBorderValue:n,getSliderValue:i,getTypographyValue:s,getColor:c}=window.GkitHelpers,{applyStyle:d}=window?.tableBuilder?.helpers,u=e.blockClass;return o([[...d(u,e?.columnItems,e?.headers),{selector:`.${u}`,color:c(e.color),display:"flex","box-shadow":l(e?.tableBuilderBoxShadow),"flex-direction":"top"===e?.captionPosition?"column-reverse":"column"},{selector:`.${u} .gkit-table`,background:r(e?.background).background,"table-layout":e?.hasFixedLayout&&"fixed","border-collapse":e?.hasBorderCollaps&&"collapse",width:"100%"},{selector:`.${u} th, .${u} td`,...(e=>{const t=n(e)||{};return Object.keys(t).length>0?t:{border:"none"}})(e?.border)},{selector:`.${u} thead`,color:c(e.headerColor),background:r(e?.headerBackground).background,...n(e?.headerBorder),"box-shadow":l(e?.headerBoxShadow)},{selector:`.${u} thead th`,...n(e?.headerBorder)},{selector:`.${u} tfoot td`,color:c(e.footerColor),background:r(e?.footerBackground).background,...n(e?.footerBorder)},{selector:`.${u} tbody td`,...n(e?.cellBorder)},{selector:`.${u} .gkit-table .gkit-table__body tr:hover`,background:r(e?.hoverBackground).background,color:c(e.hoverColor)},{selector:`.${u} tbody`,background:r(e?.cellBackground).background},{selector:`.${u} .gkit-table__caption`,color:c(e.captionColor),background:r(e?.captionBackground).background,...n(e?.captionBorder)},{selector:`.${u} .gkit-table .gkit-table__body-row:nth-child(even)`,color:c(e.evenCellColor),background:r(e?.evenCellBgColor).background},{selector:`.${u} .gkit-table .gkit-table__body-row:nth-child(odd)`,color:c(e.oddCellColor),background:r(e?.oddCellBgColor).background}],t=>[..."Mobile"===t?[{selector:`.${u}`,"-webkit-overflow-scrolling":"touch"},{selector:`.${u} table`,width:"max-content !important","min-width":"100% !important","table-layout":"auto !important"},{selector:`.${u} th, .${u} td`,"white-space":"nowrap",width:"auto !important"}]:[],{selector:`.${u}`,"text-align":e[`alignment${t}`],...s(e.typography,t)},{selector:`.${u} .gkit-table`,"-webkit-border-vertical-spacing":!e?.hasBorderCollaps&&i(e?.[`borderVerticalSpacing${t}`]),"-webkit-border-horizontal-spacing":!e?.hasBorderCollaps&&i(e?.[`borderHorizontalSpacing${t}`])},{selector:`.${u} th, .${u} td`,...a(e[`padding${t}`],"padding"),...a(e[`borderRadius${t}`],"border-radius"),"vertical-align":e[`commonVerticalAlign${t}`]},{selector:`.${u} thead`,"text-align":e[`headerAlignment${t}`]},{selector:`.${u} thead th`,...s(e.headerTypography,t),...a(e[`headerPadding${t}`],"padding"),...a(e[`headerBorderRadius${t}`],"border-radius")},{selector:`.${u} tfoot td`,...s(e.footerTypography,t),...a(e[`footerPadding${t}`],"padding"),...a(e[`footerBorderRadius${t}`],"border-radius"),"text-align":e[`footerAlignment${t}`]},{selector:`.${u} .gkit-table__caption`,...s(e.captionTypography,t),...a(e[`captionPadding${t}`],"padding"),...a(e[`captionMargin${t}`],"margin"),...a(e[`captionBorderRadius${t}`],"border-radius"),"text-align":e[`captionAlignment${t}`]},{selector:`.${u} tbody td`,...s(e.cellTypography,t),...a(e[`cellPadding${t}`],"padding"),...a(e[`cellBorderRadius${t}`],"border-radius"),"text-align":e[`cellAlignment${t}`]}]],t)})(e,M)),(0,r.createElement)(r.Fragment,null,(0,r.createElement)(C,{blocksCSS:e?.blocksCSS}),W&&(0,r.createElement)(a.BlockControls,null,(0,r.createElement)(y.Toolbar,null,(0,r.createElement)(y.ToolbarButton,{icon:(0,r.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},(0,r.createElement)("path",{fill:"none",d:"M0 0h24v24H0z"}),(0,r.createElement)("path",{d:"m20 3 1 1v16l-1 1H4l-1-1V4l1-1h16zm-9 2H5v6h2V9l3 3-3 3v-2H5v6h6v-2h2v2h6v-6h-2v2l-3-3 3-3v2h2V5h-6v2h-2V5zm2 8v2h-2v-2h2zm0-4v2h-2V9h2z"})),onClick:()=>{oe(!te),re&&le(!1)},title:"Merge selected columns"})),g&&(0,r.createElement)(y.Toolbar,null,(0,r.createElement)(y.ToolbarButton,{icon:(0,r.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},(0,r.createElement)("g",{fill:"#0F0F0F"},(0,r.createElement)("path",{d:"M18 3H4L3 4v14a1 1 0 1 1-2 0V4c0-2 1-3 3-3h14a1 1 0 1 1 0 2ZM13 11a1 1 0 1 1 2 0v2h2a1 1 0 1 1 0 2h-2v2a1 1 0 1 1-2 0v-2h-2a1 1 0 1 1 0-2h2v-2Z"}),(0,r.createElement)("path",{fillRule:"evenodd",d:"M20 5c2 0 3 1 3 3v12c0 2-1 3-3 3H8c-2 0-3-1-3-3V8c0-2 1-3 3-3h12Zm0 2 1 1v12l-1 1H8l-1-1V8l1-1h12Z",clipRule:"evenodd"}))),onClick:()=>((e,t,o,r)=>{if(null==r||r<0||r>=e.columnCount)return;const{columnCount:l,headers:a,footers:n,columnWidths:i}=e,s=[...a];s.splice(r+1,0,{...s[r]});const c=[...n];c.splice(r+1,0,{...c[r]});const d={columnCount:l+1,headers:s,footers:c};if(i&&i.length>0){var u;const e=[...i],t=null!==(u=i[r])&&void 0!==u?u:Math.round(i.reduce((e,t)=>e+(t||0),0)/i.length);e.splice(r+1,0,t),d.columnWidths=e}t(d),setTimeout(()=>{const{getBlocks:e}=wp.data.select("core/block-editor"),{replaceInnerBlocks:t}=wp.data.dispatch("core/block-editor");try{e(o).forEach(o=>{const l=e(o.clientId);if(l[r]){const e=l[r],a=wp.blocks.createBlock(e.name,{...e.attributes},R(e.innerBlocks||[])),n=[...l];n.splice(r+1,0,a),t(o.clientId,n,!1)}})}catch(e){console.error("Column duplication failed:",e)}},100)})(e,t,o,Y),title:"Duplicate selected column"}))),W&&(re||te)&&(0,r.createElement)(H,{attributes:e,setAttributes:t,setMergePopOverOpen:oe,isVisible:!re&&te,externalTableRef:I}),e?.variationType&&(0,r.createElement)(T,{attributes:e,setAttributes:t,device:q,advancedControl:l,clientId:o}),(0,r.createElement)("figure",{...P},v?(0,r.createElement)(r.Fragment,null,J?ee():Q?(0,r.createElement)(y.Placeholder,{label:(0,s.__)("Table","table-builder-block"),icon:(0,r.createElement)(a.BlockIcon,{icon:L,showColors:!0}),instructions:(0,s.__)("Insert a table for sharing data.","table-builder-block")},(0,r.createElement)("form",{className:"blocks-table__placeholder-form",onSubmit:()=>t({isEmpty:!1})},(0,r.createElement)(w,{label:(0,s.__)("Show Header","table-builder-block"),value:e?.hasHeader,onChange:e=>t({hasHeader:e})}),(0,r.createElement)(w,{label:(0,s.__)("Show Footer","table-builder-block"),value:e?.hasFooter,onChange:e=>t({hasFooter:e})}),(0,r.createElement)(k,{__next40pxDefaultSize:!0,label:(0,s.__)("Column count","table-builder-block"),value:h,onChange:e=>{const o=Array.from({length:e},(e,t)=>({title:`Header ${t+1}`})),r=Array.from({length:e},(e,t)=>({title:`Footer ${t+1}`}));t({columnCount:e,headers:o,footers:r})},min:1,className:"blocks-table__placeholder-input"}),(0,r.createElement)(k,{__next40pxDefaultSize:!0,label:(0,s.__)("Row count","table-builder-block"),value:u,onChange:e=>t({rowCount:e}),min:1,className:"blocks-table__placeholder-input"}),(0,r.createElement)(y.Button,{__next40pxDefaultSize:!0,variant:"primary",type:"submit"},(0,s.__)("Create Table","table-builder-block")))):ee()):(0,r.createElement)(r.Fragment,null,(0,r.createElement)("table",{className:"gkit-table",ref:I},g&&(0,r.createElement)("thead",{className:"gkit-table__header"},(0,r.createElement)("tr",null,K)),(0,r.createElement)("tbody",{...G}),f&&(0,r.createElement)("tfoot",{className:"gkit-table__footer"},(0,r.createElement)("tr",null,Z))),e.showCaption&&(0,r.createElement)(a.RichText,{identifier:"caption",tagName:"figcaption",className:"gkit-table__caption",value:d,onChange:e=>t({caption:e}),placeholder:(0,s.__)("Caption for Table","table-builder-block")}))))},icon:{src:(0,r.createElement)("svg",{viewBox:"0 0 23 22",xmlns:"http://www.w3.org/2000/svg",className:"tablekit-block-icon"},(0,r.createElement)("path",{d:"M19.588 0C21.016 0 22.025 1.25785 22.025 2.61914V16.2255H22.001L22.5182 16.4324C22.7993 16.545 22.9875 16.8126 22.9994 17.1149C23.0112 17.4174 22.8439 17.6982 22.5722 17.8324L20.7945 18.7107L22.2871 20.2027C22.5872 20.5024 22.5871 20.9882 22.2871 21.2879C21.9871 21.5875 21.5007 21.5876 21.2007 21.2879L19.7081 19.796L18.8287 21.5727C18.6944 21.8441 18.4123 22.0112 18.1094 21.9994C17.8067 21.9874 17.5388 21.7986 17.4261 21.5178L16.5248 19.2713H2.437C1.00906 19.2713 0 18.0135 0 16.6522V2.61914C0 1.25785 1.00906 0 2.437 0H19.588ZM18.2135 19.3523L18.8047 18.1571C18.8607 18.044 18.9432 17.9462 19.0448 17.8733L19.1528 17.8094L20.3503 17.2178L16.7839 15.7898L18.2135 19.3523ZM8.36643 17.7364H15.9085L14.689 14.6966C14.5748 14.4116 14.6419 14.0853 14.8591 13.8682C15.0764 13.6511 15.4031 13.5842 15.6884 13.6983L20.4884 15.6189V13.2296H8.36643V17.7364ZM1.53663 16.6522C1.53663 17.3277 2.01123 17.7364 2.437 17.7364H6.8298V13.2296H1.53663V16.6522ZM1.53663 11.6947H6.8298V7.38177H1.53663V11.6947ZM8.36643 11.6947H20.4884V7.38177H8.36643V11.6947ZM2.437 1.53491C2.01123 1.53491 1.53663 1.94363 1.53663 2.61914V5.84686H6.8298V1.53491H2.437ZM8.36643 5.84686H20.4884V2.61914C20.4884 1.94363 20.0138 1.53491 19.588 1.53491H8.36643V5.84686Z"}))},save:function({attributes:e}){var t;const{caption:o,headers:l,footers:n,hasHeader:i,hasFooter:s,isEmpty:c,columnWidths:d,rowHeights:u}=e,h={enableSorting:e.enableSorting||!1,tableConditionalFormat:e.tableConditionalFormat||[],mergeTableCell:e.mergeTableCell,freezeSettings:e.freezeSettings,blockClass:e.blockClass||"",enableFreeze:e.enableFreeze||!1,columnWidths:e.columnWidths||[],rowHeights:e.rowHeights||[],headerHeight:e.headerHeight||0,resizerEnabled:null===(t=e.resizerEnabled)||void 0===t||t},b=a.useBlockProps.save({"data-settings":JSON.stringify(h)}),p=a.useInnerBlocksProps.save({className:"gkit-table__body"}),m=d&&d.length>0&&d.some(e=>e>0),g=m?d.reduce((e,t)=>e+(t||0),0):0,f=e=>m&&d[e]&&0!==g?{width:`${(d[e]/g*100).toFixed(4)}%`}:{},y=l.map((e,t)=>(0,r.createElement)("th",{key:t,className:"gkit-table__header-content",style:f(t)},(0,r.createElement)(a.RichText.Content,{identifier:`header-${t}`,tagName:"div",value:e.title}))),v=n.map((e,t)=>(0,r.createElement)("td",{key:t,className:"gkit-table__footer-content",style:f(t)},(0,r.createElement)(a.RichText.Content,{identifier:`footer-${t}`,tagName:"div",value:e.title})));return(0,r.createElement)("figure",{...b},!c&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("table",{className:"gkit-table",style:m?{tableLayout:"fixed",width:"100%"}:void 0},i&&(0,r.createElement)("thead",{className:"gkit-table__header"},(0,r.createElement)("tr",null,y)),(0,r.createElement)("tbody",{...p}),s&&(0,r.createElement)("tfoot",{className:"gkit-table__footer"},(0,r.createElement)("tr",null,v))),e.showCaption&&(0,r.createElement)(a.RichText.Content,{identifier:"caption",tagName:"figcaption",className:"gkit-table__caption",value:o})))},deprecated:i})},20(e,t,o){var r=o(609),l=Symbol.for("react.element"),a=(Symbol.for("react.fragment"),Object.prototype.hasOwnProperty),n=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};t.jsx=function(e,t,o){var r,s={},c=null,d=null;for(r in void 0!==o&&(c=""+o),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(d=t.ref),t)a.call(t,r)&&!i.hasOwnProperty(r)&&(s[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===s[r]&&(s[r]=t[r]);return{$$typeof:l,type:e,key:c,ref:d,props:s,_owner:n.current}}},848(e,t,o){e.exports=o(20)},609(e){e.exports=window.React}},o={};function r(e){var l=o[e];if(void 0!==l)return l.exports;var a=o[e]={exports:{}};return t[e](a,a.exports,r),a.exports}r.m=t,e=[],r.O=(t,o,l,a)=>{if(!o){var n=1/0;for(d=0;d<e.length;d++){for(var[o,l,a]=e[d],i=!0,s=0;s<o.length;s++)(!1&a||n>=a)&&Object.keys(r.O).every(e=>r.O[e](o[s]))?o.splice(s--,1):(i=!1,a<n&&(n=a));if(i){e.splice(d--,1);var c=l();void 0!==c&&(t=c)}}return t}a=a||0;for(var d=e.length;d>0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[o,l,a]},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={283:0,595:0};r.O.j=t=>0===e[t];var t=(t,o)=>{var l,a,[n,i,s]=o,c=0;if(n.some(t=>0!==e[t])){for(l in i)r.o(i,l)&&(r.m[l]=i[l]);if(s)var d=s(r)}for(t&&t(o);c<n.length;c++)a=n[c],r.o(e,a)&&e[a]&&e[a][0](),e[a]=0;return r.O(d)},o=globalThis.webpackChunktable_builder_block=globalThis.webpackChunktable_builder_block||[];o.forEach(t.bind(null,0)),o.push=t.bind(null,o.push.bind(o))})();var l=r.O(void 0,[595],()=>r(689));l=r.O(l)})();