visual-blueprint-builder/build/steps/activate-plugin/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,l=window.wp.primitives,t=window.ReactJSXRuntime,i=(0,t.jsx)(l.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,t.jsx)(l.Path,{d:"M10.5 4v4h3V4H15v4h1.5a1 1 0 011 1v4l-3 4v2a1 1 0 01-1 1h-3a1 1 0 01-1-1v-2l-3-4V9a1 1 0 011-1H9V4h1.5zm.5 12.5v2h2v-2l3-4v-3H8v3l3 4z"})}),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,t.jsx)(s.Provider,{value:{fields:e},children:n})}const u=s,c={sort:function(e,n,l){return"asc"===l?e-n:n-e},isValid:function(e,n){if(""===e)return!1;if(!Number.isInteger(Number(e)))return!1;if(n?.elements){const l=n?.elements.map((e=>e.value));if(!l.includes(Number(e)))return!1}return!0},Edit:"integer"},p={sort:function(e,n,l){return"asc"===l?e.localeCompare(n):n.localeCompare(e)},isValid:function(e,n){if(n?.elements){const l=n?.elements?.map((e=>e.value));if(!l.includes(e))return!1}return!0},Edit:"text"},m={sort:function(e,n,l){const t=new Date(e).getTime(),i=new Date(n).getTime();return"asc"===l?t-i:i-t},isValid:function(e,n){if(n?.elements){const l=n?.elements.map((e=>e.value));if(!l.includes(e))return!1}return!0},Edit:"datetime"},f={datetime:function({data:e,field:n,onChange:l,hideLabelFromVision:i}){const{id:a,label:s}=n,d=n.getValue({item:e}),u=(0,r.useCallback)((e=>l({[a]:e})),[a,l]);return(0,t.jsxs)("fieldset",{className:"dataviews-controls__datetime",children:[!i&&(0,t.jsx)(o.BaseControl.VisualLabel,{as:"legend",children:s}),i&&(0,t.jsx)(o.VisuallyHidden,{as:"legend",children:s}),(0,t.jsx)(o.TimePicker,{currentTime:d,onChange:u,hideLabelFromVision:!0})]})},integer:function({data:e,field:n,onChange:l,hideLabelFromVision:i}){var a;const{id:s,label:d,description:u}=n,c=null!==(a=n.getValue({item:e}))&&void 0!==a?a:"",p=(0,r.useCallback)((e=>l({[s]:Number(e)})),[s,l]);return(0,t.jsx)(o.__experimentalNumberControl,{label:d,help:u,value:c,onChange:p,__next40pxDefaultSize:!0,hideLabelFromVision:i})},radio:function({data:e,field:n,onChange:l,hideLabelFromVision:i}){const{id:a,label:s}=n,d=n.getValue({item:e}),u=(0,r.useCallback)((e=>l({[a]:e})),[a,l]);return n.elements?(0,t.jsx)(o.RadioControl,{label:s,onChange:u,options:n.elements,selected:d,hideLabelFromVision:i}):null},select:function({data:n,field:l,onChange:i,hideLabelFromVision:a}){var s,d;const{id:u,label:c}=l,p=null!==(s=l.getValue({item:n}))&&void 0!==s?s:"",m=(0,r.useCallback)((e=>i({[u]:e})),[u,i]),f=[{label:(0,e.__)("Select item"),value:""},...null!==(d=l?.elements)&&void 0!==d?d:[]];return(0,t.jsx)(o.SelectControl,{label:c,value:p,options:f,onChange:m,__next40pxDefaultSize:!0,__nextHasNoMarginBottom:!0,hideLabelFromVision:a})},text:function({data:e,field:n,onChange:l,hideLabelFromVision:i}){const{id:a,label:s,placeholder:d}=n,u=n.getValue({item:e}),c=(0,r.useCallback)((e=>l({[a]:e})),[a,l]);return(0,t.jsx)(o.TextControl,{label:s,placeholder:d,value:null!=u?u:"",onChange:c,__next40pxDefaultSize:!0,__nextHasNoMarginBottom:!0,hideLabelFromVision:i})}};function h(e){if(Object.keys(f).includes(e))return f[e];throw"Control "+e+" not found"}const g=e=>({item:n})=>{const l=e.split(".");let t=n;for(const e of l)t=t.hasOwnProperty(e)?t[e]:void 0;return t};function x(e){return void 0!==e.children}function _({title:e}){return(0,t.jsx)(o.__experimentalVStack,{className:"dataforms-layouts-regular__header",spacing:4,children:(0,t.jsxs)(o.__experimentalHStack,{alignment:"center",children:[(0,t.jsx)(o.__experimentalHeading,{level:2,size:13,children:e}),(0,t.jsx)(o.__experimentalSpacer,{})]})})}const b=(0,t.jsx)(l.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,t.jsx)(l.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:l}){return(0,t.jsx)(o.__experimentalVStack,{className:"dataforms-layouts-panel__dropdown-header",spacing:4,children:(0,t.jsxs)(o.__experimentalHStack,{alignment:"center",children:[n&&(0,t.jsx)(o.__experimentalHeading,{level:2,size:13,children:n}),(0,t.jsx)(o.__experimentalSpacer,{}),l&&(0,t.jsx)(o.Button,{label:(0,e.__)("Close"),icon:b,onClick:l,size:"small"})]})})}function j({fieldDefinition:n,popoverAnchor:l,labelPosition:i="side",data:a,onChange:s,field:d}){const u=x(d)?d.label:n?.label,c=(0,r.useMemo)((()=>x(d)?{type:"regular",fields:d.children.map((e=>"string"==typeof e?{id:e}:e))}:{type:"regular",fields:[{id:d.id}]}),[d]),p=(0,r.useMemo)((()=>({anchor:l,placement:"left-start",offset:36,shift:!0})),[l]);return(0,t.jsx)(o.Dropdown,{contentClassName:"dataforms-layouts-panel__field-dropdown",popoverProps:p,focusOnMount:!0,toggleProps:{size:"compact",variant:"tertiary",tooltipPosition:"middle left"},renderToggle:({isOpen:l,onToggle:r})=>(0,t.jsx)(o.Button,{className:"dataforms-layouts-panel__field-control",size:"compact",variant:["none","top"].includes(i)?"link":"tertiary","aria-expanded":l,"aria-label":(0,e.sprintf)(
// translators: %s: Field name.
// translators: %s: Field name.
(0,e._x)("Edit %s","field"),u),onClick:r,children:(0,t.jsx)(n.render,{item:a})}),renderContent:({onClose:e})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(v,{title:u,onClose:e}),(0,t.jsx)(C,{data:a,form:c,onChange:s,children:(e,n)=>{var l;return(0,t.jsx)(e,{data:a,field:n,onChange:s,hideLabelFromVision:(null!==(l=c?.fields)&&void 0!==l?l:[]).length<2},n.id)}})]})})}const y=[{type:"regular",component:function({data:e,field:n,onChange:l,hideLabelFromVision:i}){var a;const{fields:s}=(0,r.useContext)(u),d=(0,r.useMemo)((()=>x(n)?{fields:n.children.map((e=>"string"==typeof e?{id:e}:e)),type:"regular"}:{type:"regular",fields:[]}),[n]);if(x(n))return(0,t.jsxs)(t.Fragment,{children:[!i&&n.label&&(0,t.jsx)(_,{title:n.label}),(0,t.jsx)(C,{data:e,form:d,onChange:l})]});const c=null!==(a=n.labelPosition)&&void 0!==a?a:"top",p=s.find((e=>e.id===n.id));return p?"side"===c?(0,t.jsxs)(o.__experimentalHStack,{className:"dataforms-layouts-regular__field",children:[(0,t.jsx)("div",{className:"dataforms-layouts-regular__field-label",children:p.label}),(0,t.jsx)("div",{className:"dataforms-layouts-regular__field-control",children:(0,t.jsx)(p.Edit,{data:e,field:p,onChange:l,hideLabelFromVision:!0},p.id)})]}):(0,t.jsx)("div",{className:"dataforms-layouts-regular__field",children:(0,t.jsx)(p.Edit,{data:e,field:p,onChange:l,hideLabelFromVision:"none"===c||i})}):null}},{type:"panel",component:function({data:e,field:n,onChange:l}){var i;const{fields:a}=(0,r.useContext)(u),s=a.find((e=>{if(x(n)){const l=n.children.filter((e=>"string"==typeof e||!x(e))),t="string"==typeof l[0]?l[0]:l[0].id;return e.id===t}return e.id===n.id})),d=null!==(i=n.labelPosition)&&void 0!==i?i:"side",[c,p]=(0,r.useState)(null);if(!s)return null;const m=x(n)?n.label:s?.label;return"top"===d?(0,t.jsxs)(o.__experimentalVStack,{className:"dataforms-layouts-panel__field",spacing:0,children:[(0,t.jsx)("div",{className:"dataforms-layouts-panel__field-label",style:{paddingBottom:0},children:m}),(0,t.jsx)("div",{className:"dataforms-layouts-panel__field-control",children:(0,t.jsx)(j,{field:n,popoverAnchor:c,fieldDefinition:s,data:e,onChange:l,labelPosition:d})})]}):"none"===d?(0,t.jsx)("div",{className:"dataforms-layouts-panel__field",children:(0,t.jsx)(j,{field:n,popoverAnchor:c,fieldDefinition:s,data:e,onChange:l,labelPosition:d})}):(0,t.jsxs)(o.__experimentalHStack,{ref:p,className:"dataforms-layouts-panel__field",children:[(0,t.jsx)("div",{className:"dataforms-layouts-panel__field-label",children:m}),(0,t.jsx)("div",{className:"dataforms-layouts-panel__field-control",children:(0,t.jsx)(j,{field:n,popoverAnchor:c,fieldDefinition:s,data:e,onChange:l,labelPosition:d})})]})}}];function C({data:e,form:n,onChange:l,children:i}){const{fields:a}=(0,r.useContext)(u),s=(0,r.useMemo)((()=>function(e){var n,l,t;let i="regular";["regular","panel"].includes(null!==(n=e.type)&&void 0!==n?n:"")&&(i=e.type);const a=null!==(l=e.labelPosition)&&void 0!==l?l:"regular"===i?"top":"side";return(null!==(t=e.fields)&&void 0!==t?t:[]).map((e=>{var n,l;if("string"==typeof e)return{id:e,layout:i,labelPosition:a};const t=null!==(n=e.layout)&&void 0!==n?n:i,o=null!==(l=e.labelPosition)&&void 0!==l?l:"regular"===t?"top":"side";return{...e,layout:t,labelPosition:o}}))}(n)),[n]);return(0,t.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=x(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,t.jsx)(o,{data:e,field:n,onChange:l},n.id)}))})}function w({data:e,form:n,fields:l,onChange:i}){const a=(0,r.useMemo)((()=>function(e){return e.map((e=>{var n,l,t,i;const a="integer"===(o=e.type)?c:"text"===o?p:"datetime"===o?m:{sort:(e,n,l)=>"number"==typeof e&&"number"==typeof n?"asc"===l?e-n:n-e:"asc"===l?e.localeCompare(n):n.localeCompare(e),isValid:(e,n)=>{if(n?.elements){const l=n?.elements?.map((e=>e.value));if(!l.includes(e))return!1}return!0},Edit:()=>null};var o;const r=e.getValue||g(e.id),s=null!==(n=e.sort)&&void 0!==n?n:function(e,n,l){return a.sort(r({item:e}),r({item:n}),l)},d=null!==(l=e.isValid)&&void 0!==l?l:function(e,n){return a.isValid(r({item:e}),n)},u=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),f=e.render||(e.elements?({item:n})=>{const l=r({item:n});return e?.elements?.find((e=>e.value===l))?.label||r({item:n})}:r);return{...e,label:e.label||e.id,header:e.header||e.label||e.id,getValue:r,render:f,sort:s,isValid:d,Edit:u,enableHiding:null===(t=e.enableHiding)||void 0===t||t,enableSorting:null===(i=e.enableSorting)||void 0===i||i}}))}(l)),[l]);return n.fields?(0,t.jsx)(d,{fields:a,children:(0,t.jsx)(C,{data:e,form:n,onChange:i})}):null}const V=JSON.parse('{"UU":"playground-step/activate-plugin","DD":"Activate plugin"}');(0,n.registerBlockType)(V.UU,{icon:i,edit:function({attributes:n,setAttributes:l,isSelected:r}){const{pluginName:s,pluginPath:d}=n;return(0,t.jsx)("p",{...(0,a.useBlockProps)(),children:(0,t.jsx)(o.Placeholder,{preview:(0,t.jsxs)(o.__experimentalVStack,{style:{width:"100%"},children:[(0,t.jsxs)(o.__experimentalHStack,{justify:"left",align:"center",spacing:3,children:[(0,t.jsx)(o.Icon,{icon:i,size:28,className:"step-icon"}),(0,t.jsxs)(o.__experimentalVStack,{spacing:1,children:[(0,t.jsx)(o.__experimentalText,{upperCase:!0,size:12,weight:500,color:"#949494",children:V.DD}),!r&&(0,t.jsx)(o.__experimentalText,{weight:600,children:(0,e.__)(`${s||(0,e.__)("Plugin Name","wp-playground-blueprint-editor")} > ${d||(0,e.__)("Plugin Path","wp-playground-blueprint-editor")}`,"wp-playground-blueprint-editor")})]})]}),r&&(0,t.jsx)(w,{data:n,fields:[{id:"pluginName",label:(0,e.__)("Plugin Name","wp-playground-blueprint-editor"),type:"text",placeholder:(0,e.__)("Enter plugin name","wp-playground-blueprint-editor")},{id:"pluginPath",label:(0,e.__)("Plugin Path","wp-playground-blueprint-editor"),type:"text",placeholder:(0,e.__)("Enter the full path to the plugin","wp-playground-blueprint-editor")}],form:{fields:["pluginName","pluginPath"]},onChange:l})]})})})}})})();