| 1 |
(()=>{"use strict";const e=window.wp.blocks,t=window.wp.i18n,s=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":3,"textdomain":"getwid","name":"getwid/toggle-item","description":"Adds a collapsible item to a toggle.","category":"getwid-blocks","title":"Toggle Item","parent":["getwid/toggle"],"supports":{"multiple":true,"reusable":false,"html":false},"attributes":{"outerParent":{"type":"object"},"title":{"type":"string","source":"html","selector":".wp-block-getwid-toggle__header-title"},"active":{"type":"boolean","default":false}},"editorScript":"file:./index.js"}'),i=window.wp.blockEditor,l=window.wp.data;function a(e){var t,s,i="";if("string"==typeof e||"number"==typeof e)i+=e;else if("object"==typeof e)if(Array.isArray(e)){var l=e.length;for(t=0;t<l;t++)e[t]&&(s=a(e[t]))&&(i&&(i+=" "),i+=s)}else for(s in e)e[s]&&(i&&(i+=" "),i+=s);return i}const o=function(){for(var e,t,s=0,i="",l=arguments.length;s<l;s++)(e=arguments[s])&&(t=a(e))&&(i&&(i+=" "),i+=t);return i},c=window.wp.components,r=window.ReactJSXRuntime;function n({attributes:e,setAttributes:s,clientId:a}){const o=(0,l.useSelect)(e=>e(i.store).getBlockRootClientId(a),[a]),n=(0,l.useSelect)(e=>e(i.store).getBlock(a),[a]),{selectBlock:d}=(0,l.useDispatch)(i.store);return n?(0,r.jsxs)(i.InspectorControls,{children:[(0,r.jsx)(c.PanelBody,{children:(0,r.jsx)(c.Button,{variant:"primary",onClick:()=>o&&d(o),children:(0,t.__)("Select Parent","getwid")})}),(0,r.jsx)(c.PanelBody,{title:(0,t.__)("Settings","getwid"),children:(0,r.jsx)(c.CheckboxControl,{label:(0,t.__)("Active by default","getwid"),checked:!!e.active,onChange:e=>s({active:e})})})]}):null}const d=["core/bold","core/italic","core/link","core/image","core/strikethrough","core/text-color"];(0,e.registerBlockType)(s,{title:(0,t.__)("Toggle Item","getwid"),edit:function(e){const{attributes:s,clientId:a,setAttributes:c}=e,g=(0,l.useSelect)(e=>e(i.store).getBlockRootClientId(a),[a]),p=(0,l.useSelect)(e=>g?e(i.store).getBlock(g):null,[g]),w=p?.attributes?.headerTag??"span",h=p?.attributes?.iconOpen??"fas fa-minus",u=p?.attributes?.iconClose??"fas fa-plus",_=w,m=(0,i.useBlockProps)({"toggle-active-default":s.active?"true":void 0});return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n,{...e}),(0,r.jsx)("div",{...m,children:(0,r.jsxs)("div",{className:o("wp-block-getwid-toggle__row",{"is-active":s.active}),children:[(0,r.jsx)("div",{className:"wp-block-getwid-toggle__header-wrapper",children:(0,r.jsx)(_,{className:"wp-block-getwid-toggle__header",children:(0,r.jsxs)("a",{href:"#",onClick:e=>e.preventDefault(),children:[(0,r.jsx)("div",{className:"wp-block-getwid-toggle__edit-area",children:(0,r.jsx)(i.RichText,{tagName:"span",className:"wp-block-getwid-toggle__header-title",placeholder:(0,t.__)("Write heading…","getwid"),value:s.title,allowedFormats:d,onChange:e=>c({title:e})})}),(0,r.jsx)("span",{className:"wp-block-getwid-toggle__icon is-active",children:(0,r.jsx)("i",{className:u})}),(0,r.jsx)("span",{className:"wp-block-getwid-toggle__icon is-passive",children:(0,r.jsx)("i",{className:h})})]})})}),(0,r.jsx)("div",{className:"wp-block-getwid-toggle__content-wrapper",children:(0,r.jsx)("div",{className:"wp-block-getwid-toggle__content",children:(0,r.jsx)(i.InnerBlocks,{template:[["core/paragraph",{placeholder:(0,t.__)("Write text…","getwid")}]],templateInsertUpdatesSelection:!1,templateLock:!1})})})]})})]})},save:function({attributes:{outerParent:e,title:t,active:s}}){const l=e?.attributes?.headerTag??"span",a=e?.attributes?.iconOpen??"fas fa-minus",c=e?.attributes?.iconClose??"fas fa-plus";return(0,r.jsxs)("div",{className:o("wp-block-getwid-toggle__row",{"is-active":s}),children:[(0,r.jsx)("div",{className:"wp-block-getwid-toggle__header-wrapper",children:t&&(0,r.jsx)(l,{className:"wp-block-getwid-toggle__header",children:(0,r.jsxs)("a",{href:"#",children:[(0,r.jsx)(i.RichText.Content,{tagName:"span",className:"wp-block-getwid-toggle__header-title",value:t}),(0,r.jsx)("span",{className:"wp-block-getwid-toggle__icon is-active",children:(0,r.jsx)("i",{className:c})}),(0,r.jsx)("span",{className:"wp-block-getwid-toggle__icon is-passive",children:(0,r.jsx)("i",{className:a})})]})})}),(0,r.jsx)("div",{className:"wp-block-getwid-toggle__content-wrapper",children:(0,r.jsx)("div",{className:"wp-block-getwid-toggle__content",children:(0,r.jsx)(i.InnerBlocks.Content,{})})})]})}})})(); |