visual-blueprint-builder/build/steps/rm/index.js
2025-07-29 18:37:15 +00:00

4 lines
No EOL
11 KiB
JavaScript

(()=>{"use strict";const e=window.wp.i18n,n=window.wp.blocks,t=window.wp.primitives,l=window.ReactJSXRuntime,i=(0,l.jsx)(t.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,l.jsx)(t.Path,{fillRule:"evenodd",clipRule:"evenodd",d:"M12 5.5A2.25 2.25 0 0 0 9.878 7h4.244A2.251 2.251 0 0 0 12 5.5ZM12 4a3.751 3.751 0 0 0-3.675 3H5v1.5h1.27l.818 8.997a2.75 2.75 0 0 0 2.739 2.501h4.347a2.75 2.75 0 0 0 2.738-2.5L17.73 8.5H19V7h-3.325A3.751 3.751 0 0 0 12 4Zm4.224 4.5H7.776l.806 8.861a1.25 1.25 0 0 0 1.245 1.137h4.347a1.25 1.25 0 0 0 1.245-1.137l.805-8.861Z"})}),a=window.wp.blockEditor,o=window.wp.components,r=window.wp.element,s=(0,r.createContext)({fields:[]});function d({fields:e,children:n}){return(0,l.jsx)(s.Provider,{value:{fields:e},children:n})}const c=s,u={sort:function(e,n,t){return"asc"===t?e-n:n-e},isValid:function(e,n){if(""===e)return!1;if(!Number.isInteger(Number(e)))return!1;if(n?.elements){const t=n?.elements.map((e=>e.value));if(!t.includes(Number(e)))return!1}return!0},Edit:"integer"},f={sort:function(e,n,t){return"asc"===t?e.localeCompare(n):n.localeCompare(e)},isValid:function(e,n){if(n?.elements){const t=n?.elements?.map((e=>e.value));if(!t.includes(e))return!1}return!0},Edit:"text"},m={sort:function(e,n,t){const l=new Date(e).getTime(),i=new Date(n).getTime();return"asc"===t?l-i:i-l},isValid:function(e,n){if(n?.elements){const t=n?.elements.map((e=>e.value));if(!t.includes(e))return!1}return!0},Edit:"datetime"},p={datetime:function({data:e,field:n,onChange:t,hideLabelFromVision:i}){const{id:a,label:s}=n,d=n.getValue({item:e}),c=(0,r.useCallback)((e=>t({[a]:e})),[a,t]);return(0,l.jsxs)("fieldset",{className:"dataviews-controls__datetime",children:[!i&&(0,l.jsx)(o.BaseControl.VisualLabel,{as:"legend",children:s}),i&&(0,l.jsx)(o.VisuallyHidden,{as:"legend",children:s}),(0,l.jsx)(o.TimePicker,{currentTime:d,onChange:c,hideLabelFromVision:!0})]})},integer:function({data:e,field:n,onChange:t,hideLabelFromVision:i}){var a;const{id:s,label:d,description:c}=n,u=null!==(a=n.getValue({item:e}))&&void 0!==a?a:"",f=(0,r.useCallback)((e=>t({[s]:Number(e)})),[s,t]);return(0,l.jsx)(o.__experimentalNumberControl,{label:d,help:c,value:u,onChange:f,__next40pxDefaultSize:!0,hideLabelFromVision:i})},radio:function({data:e,field:n,onChange:t,hideLabelFromVision:i}){const{id:a,label:s}=n,d=n.getValue({item:e}),c=(0,r.useCallback)((e=>t({[a]:e})),[a,t]);return n.elements?(0,l.jsx)(o.RadioControl,{label:s,onChange:c,options:n.elements,selected:d,hideLabelFromVision:i}):null},select:function({data:n,field:t,onChange:i,hideLabelFromVision:a}){var s,d;const{id:c,label:u}=t,f=null!==(s=t.getValue({item:n}))&&void 0!==s?s:"",m=(0,r.useCallback)((e=>i({[c]:e})),[c,i]),p=[{label:(0,e.__)("Select item"),value:""},...null!==(d=t?.elements)&&void 0!==d?d:[]];return(0,l.jsx)(o.SelectControl,{label:u,value:f,options:p,onChange:m,__next40pxDefaultSize:!0,__nextHasNoMarginBottom:!0,hideLabelFromVision:a})},text:function({data:e,field:n,onChange:t,hideLabelFromVision:i}){const{id:a,label:s,placeholder:d}=n,c=n.getValue({item:e}),u=(0,r.useCallback)((e=>t({[a]:e})),[a,t]);return(0,l.jsx)(o.TextControl,{label:s,placeholder:d,value:null!=c?c:"",onChange:u,__next40pxDefaultSize:!0,__nextHasNoMarginBottom:!0,hideLabelFromVision:i})}};function h(e){if(Object.keys(p).includes(e))return p[e];throw"Control "+e+" not found"}const x=e=>({item:n})=>{const t=e.split(".");let l=n;for(const e of t)l=l.hasOwnProperty(e)?l[e]:void 0;return l};function g(e){return void 0!==e.children}function _({title:e}){return(0,l.jsx)(o.__experimentalVStack,{className:"dataforms-layouts-regular__header",spacing:4,children:(0,l.jsxs)(o.__experimentalHStack,{alignment:"center",children:[(0,l.jsx)(o.__experimentalHeading,{level:2,size:13,children:e}),(0,l.jsx)(o.__experimentalSpacer,{})]})})}const b=(0,l.jsx)(t.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,l.jsx)(t.Path,{d:"M12 13.06l3.712 3.713 1.061-1.06L13.061 12l3.712-3.712-1.06-1.06L12 10.938 8.288 7.227l-1.061 1.06L10.939 12l-3.712 3.712 1.06 1.061L12 13.061z"})});function v({title:n,onClose:t}){return(0,l.jsx)(o.__experimentalVStack,{className:"dataforms-layouts-panel__dropdown-header",spacing:4,children:(0,l.jsxs)(o.__experimentalHStack,{alignment:"center",children:[n&&(0,l.jsx)(o.__experimentalHeading,{level:2,size:13,children:n}),(0,l.jsx)(o.__experimentalSpacer,{}),t&&(0,l.jsx)(o.Button,{label:(0,e.__)("Close"),icon:b,onClick:t,size:"small"})]})})}function j({fieldDefinition:n,popoverAnchor:t,labelPosition:i="side",data:a,onChange:s,field:d}){const c=g(d)?d.label:n?.label,u=(0,r.useMemo)((()=>g(d)?{type:"regular",fields:d.children.map((e=>"string"==typeof e?{id:e}:e))}:{type:"regular",fields:[{id:d.id}]}),[d]),f=(0,r.useMemo)((()=>({anchor:t,placement:"left-start",offset:36,shift:!0})),[t]);return(0,l.jsx)(o.Dropdown,{contentClassName:"dataforms-layouts-panel__field-dropdown",popoverProps:f,focusOnMount:!0,toggleProps:{size:"compact",variant:"tertiary",tooltipPosition:"middle left"},renderToggle:({isOpen:t,onToggle:r})=>(0,l.jsx)(o.Button,{className:"dataforms-layouts-panel__field-control",size:"compact",variant:["none","top"].includes(i)?"link":"tertiary","aria-expanded":t,"aria-label":(0,e.sprintf)(
// translators: %s: Field name.
// translators: %s: Field name.
(0,e._x)("Edit %s","field"),c),onClick:r,children:(0,l.jsx)(n.render,{item:a})}),renderContent:({onClose:e})=>(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(v,{title:c,onClose:e}),(0,l.jsx)(C,{data:a,form:u,onChange:s,children:(e,n)=>{var t;return(0,l.jsx)(e,{data:a,field:n,onChange:s,hideLabelFromVision:(null!==(t=u?.fields)&&void 0!==t?t:[]).length<2},n.id)}})]})})}const y=[{type:"regular",component:function({data:e,field:n,onChange:t,hideLabelFromVision:i}){var a;const{fields:s}=(0,r.useContext)(c),d=(0,r.useMemo)((()=>g(n)?{fields:n.children.map((e=>"string"==typeof e?{id:e}:e)),type:"regular"}:{type:"regular",fields:[]}),[n]);if(g(n))return(0,l.jsxs)(l.Fragment,{children:[!i&&n.label&&(0,l.jsx)(_,{title:n.label}),(0,l.jsx)(C,{data:e,form:d,onChange:t})]});const u=null!==(a=n.labelPosition)&&void 0!==a?a:"top",f=s.find((e=>e.id===n.id));return f?"side"===u?(0,l.jsxs)(o.__experimentalHStack,{className:"dataforms-layouts-regular__field",children:[(0,l.jsx)("div",{className:"dataforms-layouts-regular__field-label",children:f.label}),(0,l.jsx)("div",{className:"dataforms-layouts-regular__field-control",children:(0,l.jsx)(f.Edit,{data:e,field:f,onChange:t,hideLabelFromVision:!0},f.id)})]}):(0,l.jsx)("div",{className:"dataforms-layouts-regular__field",children:(0,l.jsx)(f.Edit,{data:e,field:f,onChange:t,hideLabelFromVision:"none"===u||i})}):null}},{type:"panel",component:function({data:e,field:n,onChange:t}){var i;const{fields:a}=(0,r.useContext)(c),s=a.find((e=>{if(g(n)){const t=n.children.filter((e=>"string"==typeof e||!g(e))),l="string"==typeof t[0]?t[0]:t[0].id;return e.id===l}return e.id===n.id})),d=null!==(i=n.labelPosition)&&void 0!==i?i:"side",[u,f]=(0,r.useState)(null);if(!s)return null;const m=g(n)?n.label:s?.label;return"top"===d?(0,l.jsxs)(o.__experimentalVStack,{className:"dataforms-layouts-panel__field",spacing:0,children:[(0,l.jsx)("div",{className:"dataforms-layouts-panel__field-label",style:{paddingBottom:0},children:m}),(0,l.jsx)("div",{className:"dataforms-layouts-panel__field-control",children:(0,l.jsx)(j,{field:n,popoverAnchor:u,fieldDefinition:s,data:e,onChange:t,labelPosition:d})})]}):"none"===d?(0,l.jsx)("div",{className:"dataforms-layouts-panel__field",children:(0,l.jsx)(j,{field:n,popoverAnchor:u,fieldDefinition:s,data:e,onChange:t,labelPosition:d})}):(0,l.jsxs)(o.__experimentalHStack,{ref:f,className:"dataforms-layouts-panel__field",children:[(0,l.jsx)("div",{className:"dataforms-layouts-panel__field-label",children:m}),(0,l.jsx)("div",{className:"dataforms-layouts-panel__field-control",children:(0,l.jsx)(j,{field:n,popoverAnchor:u,fieldDefinition:s,data:e,onChange:t,labelPosition:d})})]})}}];function C({data:e,form:n,onChange:t,children:i}){const{fields:a}=(0,r.useContext)(c),s=(0,r.useMemo)((()=>function(e){var n,t,l;let i="regular";["regular","panel"].includes(null!==(n=e.type)&&void 0!==n?n:"")&&(i=e.type);const a=null!==(t=e.labelPosition)&&void 0!==t?t:"regular"===i?"top":"side";return(null!==(l=e.fields)&&void 0!==l?l:[]).map((e=>{var n,t;if("string"==typeof e)return{id:e,layout:i,labelPosition:a};const l=null!==(n=e.layout)&&void 0!==n?n:i,o=null!==(t=e.labelPosition)&&void 0!==t?t:"regular"===l?"top":"side";return{...e,layout:l,labelPosition:o}}))}(n)),[n]);return(0,l.jsx)(o.__experimentalVStack,{spacing:2,children:s.map((n=>{const o=(r=n.layout,y.find((e=>e.type===r)))?.component;var r;if(!o)return null;const s=g(n)?void 0:function(e){const n="string"==typeof e?e:e.id;return a.find((e=>e.id===n))}(n);return s&&s.isVisible&&!s.isVisible(e)?null:i?i(o,n):(0,l.jsx)(o,{data:e,field:n,onChange:t},n.id)}))})}function w({data:e,form:n,fields:t,onChange:i}){const a=(0,r.useMemo)((()=>function(e){return e.map((e=>{var n,t,l,i;const a="integer"===(o=e.type)?u:"text"===o?f:"datetime"===o?m:{sort:(e,n,t)=>"number"==typeof e&&"number"==typeof n?"asc"===t?e-n:n-e:"asc"===t?e.localeCompare(n):n.localeCompare(e),isValid:(e,n)=>{if(n?.elements){const t=n?.elements?.map((e=>e.value));if(!t.includes(e))return!1}return!0},Edit:()=>null};var o;const r=e.getValue||x(e.id),s=null!==(n=e.sort)&&void 0!==n?n:function(e,n,t){return a.sort(r({item:e}),r({item:n}),t)},d=null!==(t=e.isValid)&&void 0!==t?t:function(e,n){return a.isValid(r({item:e}),n)},c=function(e,n){return"function"==typeof e.Edit?e.Edit:"string"==typeof e.Edit?h(e.Edit):e.elements?h("select"):"string"==typeof n.Edit?h(n.Edit):n.Edit}(e,a),p=e.render||(e.elements?({item:n})=>{const t=r({item:n});return e?.elements?.find((e=>e.value===t))?.label||r({item:n})}:r);return{...e,label:e.label||e.id,header:e.header||e.label||e.id,getValue:r,render:p,sort:s,isValid:d,Edit:c,enableHiding:null===(l=e.enableHiding)||void 0===l||l,enableSorting:null===(i=e.enableSorting)||void 0===i||i}}))}(t)),[t]);return n.fields?(0,l.jsx)(d,{fields:a,children:(0,l.jsx)(C,{data:e,form:n,onChange:i})}):null}const V=JSON.parse('{"UU":"playground-step/rm","DD":"Remove File"}');(0,n.registerBlockType)(V.UU,{icon:i,edit:function({attributes:n,setAttributes:t,isSelected:r}){const{path:s}=n;return(0,l.jsx)("p",{...(0,a.useBlockProps)(),children:(0,l.jsx)(o.Placeholder,{preview:(0,l.jsxs)(o.__experimentalVStack,{style:{width:"100%"},children:[(0,l.jsxs)(o.__experimentalHStack,{justify:"left",align:"center",spacing:3,children:[(0,l.jsx)(o.Icon,{icon:i,size:28,className:"step-icon"}),(0,l.jsxs)(o.__experimentalVStack,{spacing:1,children:[(0,l.jsx)(o.__experimentalText,{upperCase:!0,size:12,weight:500,color:"#949494",children:V.DD}),!r&&(0,l.jsxs)(o.__experimentalText,{weight:600,children:[(0,e.__)("at","wp-playground-blueprint-editor")," ",` ${s||"{path}"}`]})]})]}),r&&(0,l.jsx)(w,{data:n,fields:[{id:"path",label:(0,e.__)("File Path","wp-playground-blueprint-editor"),type:"text",placeholder:(0,e.__)("Enter the file path to remove (e.g., /wp-content/plugins/index.php)","wp-playground-blueprint-editor")}],form:{fields:["path"]},onChange:t})]})})})}})})();