diff --git a/build/block.json b/build/block.json index 02210d3..a36f3f9 100644 --- a/build/block.json +++ b/build/block.json @@ -13,20 +13,6 @@ "priority", "responsive" ], - "supports": { - "html": false, - "align": [ - "wide", - "full" - ], - "spacing": { - "margin": true, - "padding": true - }, - "color": { - "background": true - } - }, "attributes": { "moreLabel": { "type": "string", diff --git a/build/blocks-manifest.php b/build/blocks-manifest.php index 354ab33..3948506 100644 --- a/build/blocks-manifest.php +++ b/build/blocks-manifest.php @@ -16,20 +16,6 @@ 'priority', 'responsive' ), - 'supports' => array( - 'html' => false, - 'align' => array( - 'wide', - 'full' - ), - 'spacing' => array( - 'margin' => true, - 'padding' => true - ), - 'color' => array( - 'background' => true - ) - ), 'attributes' => array( 'moreLabel' => array( 'type' => 'string', diff --git a/build/index.asset.php b/build/index.asset.php index 8cac9e9..99e860e 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-compose', 'wp-element', 'wp-hooks', 'wp-i18n', 'wp-primitives'), 'version' => '9e152c557264483053f1'); + array('react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-compose', 'wp-hooks', 'wp-i18n', 'wp-primitives'), 'version' => 'ef033ea779e09cc8622b'); diff --git a/build/index.js b/build/index.js index ba7a514..764dd8b 100644 --- a/build/index.js +++ b/build/index.js @@ -1 +1 @@ -(()=>{"use strict";var r,o={565(){const r=window.wp.i18n,o=window.wp.hooks,t=window.wp.blockEditor,e=window.wp.components,i=window.wp.compose,n=window.wp.element,a=window.wp.blocks,l=window.wp.primitives,v=window.ReactJSXRuntime;var s=(0,v.jsx)(l.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,v.jsx)(l.Path,{fillRule:"evenodd",clipRule:"evenodd",d:"M7.404 16.596a6.5 6.5 0 1 0 9.192-9.192 6.5 6.5 0 0 0-9.192 9.192ZM6.344 6.343a8 8 0 1 0 11.313 11.314A8 8 0 0 0 6.343 6.343Zm4.906 9.407v-3h-3v-1.5h3v-3h1.5v3h3v1.5h-3v3h-1.5Z"})});(0,o.addFilter)("blocks.registerBlockType","priority-nav/extend-core-navigation-attributes",(r,o)=>"core/navigation"!==o?r:{...r,attributes:{...r.attributes,priorityNavEnabled:{type:"boolean",default:!1},priorityNavMoreLabel:{type:"string",default:"More"},priorityNavMoreIcon:{type:"string",default:"dots"}}});const p=(0,i.createHigherOrderComponent)(o=>i=>{const{name:a,attributes:l,setAttributes:s}=i;if("core/navigation"!==a)return(0,v.jsx)(o,{...i});const{priorityNavEnabled:p,priorityNavMoreLabel:d,priorityNavMoreIcon:c}=l;return p?(0,v.jsxs)(n.Fragment,{children:[(0,v.jsx)(o,{...i}),(0,v.jsx)(t.InspectorControls,{children:(0,v.jsxs)(e.PanelBody,{title:(0,r.__)("Priority+ Settings","priority-nav"),children:[(0,v.jsx)(e.TextControl,{label:(0,r.__)("More Button Label","priority-nav"),value:d,onChange:r=>s({priorityNavMoreLabel:r}),help:(0,r.__)('Text displayed on the "More" button',"priority-nav")}),(0,v.jsx)(e.SelectControl,{label:(0,r.__)("More Button Icon","priority-nav"),value:c,options:[{label:(0,r.__)("Horizontal Dots (•••)","priority-nav"),value:"dots"},{label:(0,r.__)("Chevron Down (▼)","priority-nav"),value:"chevron"},{label:(0,r.__)("Plus (+)","priority-nav"),value:"plus"},{label:(0,r.__)("Menu (≡)","priority-nav"),value:"menu"}],onChange:r=>s({priorityNavMoreIcon:r})})]})})]}):(0,v.jsx)(o,{...i})},"withPriorityNavControls");(0,o.addFilter)("editor.BlockEdit","priority-nav/add-priority-nav-controls",p),(0,a.registerBlockVariation)("core/navigation",{name:"lumen-priority-nav",title:(0,r.__)("Priority+ Nav","priority-nav"),description:(0,r.__)('A responsive navigation that automatically moves overflow items to a "More" dropdown.',"priority-nav"),icon:s,attributes:{priorityNavEnabled:!0,priorityNavMoreLabel:"More",priorityNavMoreIcon:"dots"},scope:["inserter","block"],isActive:r=>!!r.priorityNavEnabled})}},t={};function e(r){var i=t[r];if(void 0!==i)return i.exports;var n=t[r]={exports:{}};return o[r](n,n.exports,e),n.exports}e.m=o,r=[],e.O=(o,t,i,n)=>{if(!t){var a=1/0;for(p=0;p=n)&&Object.keys(e.O).every(r=>e.O[r](t[v]))?t.splice(v--,1):(l=!1,n0&&r[p-1][2]>n;p--)r[p]=r[p-1];r[p]=[t,i,n]},e.o=(r,o)=>Object.prototype.hasOwnProperty.call(r,o),(()=>{var r={57:0,350:0};e.O.j=o=>0===r[o];var o=(o,t)=>{var i,n,[a,l,v]=t,s=0;if(a.some(o=>0!==r[o])){for(i in l)e.o(l,i)&&(e.m[i]=l[i]);if(v)var p=v(e)}for(o&&o(t);se(565));i=e.O(i)})(); \ No newline at end of file +(()=>{"use strict";var r,o={698(){const r=window.wp.i18n,o=window.wp.hooks,e=window.wp.blockEditor,i=window.wp.components,t=window.wp.compose,n=window.wp.blocks,a=window.wp.primitives,l=window.ReactJSXRuntime;var v=(0,l.jsx)(a.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,l.jsx)(a.Path,{fillRule:"evenodd",clipRule:"evenodd",d:"M7.404 16.596a6.5 6.5 0 1 0 9.192-9.192 6.5 6.5 0 0 0-9.192 9.192ZM6.344 6.343a8 8 0 1 0 11.313 11.314A8 8 0 0 0 6.343 6.343Zm4.906 9.407v-3h-3v-1.5h3v-3h1.5v3h3v1.5h-3v3h-1.5Z"})});(0,o.addFilter)("blocks.registerBlockType","priority-nav/extend-core-navigation",(r,o)=>"core/navigation"!==o?r:{...r,attributes:{...r.attributes,priorityNavEnabled:{type:"boolean",default:!1},priorityNavMoreLabel:{type:"string",default:"Browse"},priorityNavMoreIcon:{type:"string",default:"none"}}});const s=(0,t.createHigherOrderComponent)(o=>t=>{const{name:n,attributes:a,setAttributes:v}=t;if("core/navigation"!==n)return(0,l.jsx)(o,{...t});const{priorityNavEnabled:s,priorityNavMoreLabel:p,priorityNavMoreIcon:c}=a;return s?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(o,{...t}),(0,l.jsx)(e.InspectorControls,{children:(0,l.jsxs)(i.PanelBody,{title:(0,r.__)("Priority+ Settings","priority-nav"),children:[(0,l.jsx)(i.TextControl,{label:(0,r.__)("More Button Label","priority-nav"),value:p,onChange:r=>v({priorityNavMoreLabel:r}),help:(0,r.__)('Text displayed on the "More" button',"priority-nav")}),(0,l.jsx)(i.SelectControl,{label:(0,r.__)("More Button Icon","priority-nav"),value:c,options:[{label:(0,r.__)("None","priority-nav"),value:"none"},{label:(0,r.__)("Chevron Down (▼)","priority-nav"),value:"chevron"},{label:(0,r.__)("Plus (+)","priority-nav"),value:"plus"},{label:(0,r.__)("Menu (≡)","priority-nav"),value:"menu"}],onChange:r=>v({priorityNavMoreIcon:r})})]})})]}):(0,l.jsx)(o,{...t})},"withPriorityNavControls");(0,o.addFilter)("editor.BlockEdit","priority-nav/add-priority-nav-controls",s),(0,n.registerBlockVariation)("core/navigation",{name:"lumen-priority-nav",title:(0,r.__)("Priority+ Nav","priority-nav"),description:(0,r.__)('A responsive navigation that automatically moves overflow items to a "More" dropdown.',"priority-nav"),icon:v,attributes:{priorityNavEnabled:!0,priorityNavMoreLabel:"Browse",priorityNavMoreIcon:"none"},scope:["inserter","block"],isActive:r=>!!r.priorityNavEnabled})}},e={};function i(r){var t=e[r];if(void 0!==t)return t.exports;var n=e[r]={exports:{}};return o[r](n,n.exports,i),n.exports}i.m=o,r=[],i.O=(o,e,t,n)=>{if(!e){var a=1/0;for(p=0;p=n)&&Object.keys(i.O).every(r=>i.O[r](e[v]))?e.splice(v--,1):(l=!1,n0&&r[p-1][2]>n;p--)r[p]=r[p-1];r[p]=[e,t,n]},i.o=(r,o)=>Object.prototype.hasOwnProperty.call(r,o),(()=>{var r={57:0,350:0};i.O.j=o=>0===r[o];var o=(o,e)=>{var t,n,[a,l,v]=e,s=0;if(a.some(o=>0!==r[o])){for(t in l)i.o(l,t)&&(i.m[t]=l[t]);if(v)var p=v(i)}for(o&&o(e);si(698));t=i.O(t)})(); \ No newline at end of file diff --git a/build/index.js.map b/build/index.js.map new file mode 100644 index 0000000..3d451f2 --- /dev/null +++ b/build/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","mappings":"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","sources":["webpack://priority-plus-nav-block/./node_modules/@wordpress/icons/build-module/library/plus-circle.js","webpack://priority-plus-nav-block/./src/extend.js","webpack://priority-plus-nav-block/./src/index.js","webpack://priority-plus-nav-block/./src/style.scss","webpack://priority-plus-nav-block/external window [\"wp\",\"blockEditor\"]","webpack://priority-plus-nav-block/external window [\"wp\",\"blocks\"]","webpack://priority-plus-nav-block/external window [\"wp\",\"components\"]","webpack://priority-plus-nav-block/external window [\"wp\",\"compose\"]","webpack://priority-plus-nav-block/external window [\"wp\",\"hooks\"]","webpack://priority-plus-nav-block/external window [\"wp\",\"i18n\"]","webpack://priority-plus-nav-block/external window [\"wp\",\"primitives\"]","webpack://priority-plus-nav-block/external window \"ReactJSXRuntime\"","webpack://priority-plus-nav-block/webpack/bootstrap","webpack://priority-plus-nav-block/webpack/runtime/chunk loaded","webpack://priority-plus-nav-block/webpack/runtime/compat get default export","webpack://priority-plus-nav-block/webpack/runtime/define property getters","webpack://priority-plus-nav-block/webpack/runtime/hasOwnProperty shorthand","webpack://priority-plus-nav-block/webpack/runtime/make namespace object","webpack://priority-plus-nav-block/webpack/runtime/jsonp chunk loading","webpack://priority-plus-nav-block/webpack/before-startup","webpack://priority-plus-nav-block/webpack/startup","webpack://priority-plus-nav-block/webpack/after-startup"],"sourcesContent":["// packages/icons/src/library/plus-circle.tsx\nimport { Path, SVG } from \"@wordpress/primitives\";\nimport { jsx } from \"react/jsx-runtime\";\nvar plus_circle_default = /* @__PURE__ */ jsx(SVG, { xmlns: \"http://www.w3.org/2000/svg\", viewBox: \"0 0 24 24\", children: /* @__PURE__ */ jsx(\n Path,\n {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M7.404 16.596a6.5 6.5 0 1 0 9.192-9.192 6.5 6.5 0 0 0-9.192 9.192ZM6.344 6.343a8 8 0 1 0 11.313 11.314A8 8 0 0 0 6.343 6.343Zm4.906 9.407v-3h-3v-1.5h3v-3h1.5v3h3v1.5h-3v3h-1.5Z\"\n }\n) });\nexport {\n plus_circle_default as default\n};\n//# sourceMappingURL=plus-circle.js.map\n","/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { addFilter } from '@wordpress/hooks';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { PanelBody, TextControl, SelectControl } from '@wordpress/components';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport { registerBlockVariation } from '@wordpress/blocks';\nimport { plusCircle } from '@wordpress/icons';\n\n/**\n * Add Priority+ attributes to core/navigation block\n */\naddFilter(\n\t'blocks.registerBlockType',\n\t'priority-nav/extend-core-navigation',\n\t( settings, name ) => {\n\t\tif ( name !== 'core/navigation' ) {\n\t\t\treturn settings;\n\t\t}\n\n\t\treturn {\n\t\t\t...settings,\n\t\t\tattributes: {\n\t\t\t\t...settings.attributes,\n\t\t\t\tpriorityNavEnabled: {\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\tdefault: false,\n\t\t\t\t},\n\t\t\t\tpriorityNavMoreLabel: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tdefault: 'More',\n\t\t\t\t},\n\t\t\t\tpriorityNavMoreIcon: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tdefault: 'dots',\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n);\n\n/**\n * Add Inspector Controls to core/navigation block\n */\nconst withPriorityNavControls = createHigherOrderComponent( ( BlockEdit ) => {\n\treturn ( props ) => {\n\t\tconst { name, attributes, setAttributes } = props;\n\n\t\tif ( name !== 'core/navigation' ) {\n\t\t\treturn ;\n\t\t}\n\n\t\tconst {\n\t\t\tpriorityNavEnabled,\n\t\t\tpriorityNavMoreLabel,\n\t\t\tpriorityNavMoreIcon,\n\t\t} = attributes;\n\n\t\t// Only show controls if Priority Nav is enabled\n\t\tif ( ! priorityNavEnabled ) {\n\t\t\treturn ;\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tsetAttributes( { priorityNavMoreLabel: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Text displayed on the \"More\" button',\n\t\t\t\t\t\t\t\t'priority-nav'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tsetAttributes( { priorityNavMoreIcon: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t);\n\t};\n}, 'withPriorityNavControls' );\n\naddFilter(\n\t'editor.BlockEdit',\n\t'priority-nav/add-priority-nav-controls',\n\twithPriorityNavControls\n);\n\n/**\n * Register block variation for Priority+ Navigation\n */\nregisterBlockVariation( 'core/navigation', {\n\tname: 'lumen-priority-nav',\n\ttitle: __( 'Priority+ Nav', 'priority-nav' ),\n\tdescription: __(\n\t\t'A responsive navigation that automatically moves overflow items to a \"More\" dropdown.',\n\t\t'priority-nav'\n\t),\n\ticon: plusCircle,\n\tattributes: {\n\t\tpriorityNavEnabled: true,\n\t\tpriorityNavMoreLabel: 'Browse',\n\t\tpriorityNavMoreIcon: 'none',\n\t},\n\tscope: [ 'inserter', 'block' ],\n\tisActive: ( blockAttributes ) => {\n\t\treturn !! blockAttributes.priorityNavEnabled;\n\t},\n} );\n","import './extend';\nimport './style.scss';\n","// extracted by mini-css-extract-plugin\nexport {};","module.exports = window[\"wp\"][\"blockEditor\"];","module.exports = window[\"wp\"][\"blocks\"];","module.exports = window[\"wp\"][\"components\"];","module.exports = window[\"wp\"][\"compose\"];","module.exports = window[\"wp\"][\"hooks\"];","module.exports = window[\"wp\"][\"i18n\"];","module.exports = window[\"wp\"][\"primitives\"];","module.exports = window[\"ReactJSXRuntime\"];","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Check if module exists (development only)\n\tif (__webpack_modules__[moduleId] === undefined) {\n\t\tvar e = new Error(\"Cannot find module '\" + moduleId + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t\"index\": 0,\n\t\"./style-index\": 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunkpriority_plus_nav_block\"] = globalThis[\"webpackChunkpriority_plus_nav_block\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [\"./style-index\"], () => (__webpack_require__(\"./src/index.js\")))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n",""],"names":["__","addFilter","InspectorControls","PanelBody","TextControl","SelectControl","createHigherOrderComponent","registerBlockVariation","plusCircle","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","settings","name","attributes","priorityNavEnabled","type","default","priorityNavMoreLabel","priorityNavMoreIcon","withPriorityNavControls","BlockEdit","props","setAttributes","children","title","label","value","onChange","help","options","description","icon","scope","isActive","blockAttributes"],"ignoreList":[],"sourceRoot":""} \ No newline at end of file diff --git a/build/style-index-rtl.css b/build/style-index-rtl.css index b6e3146..ce333fe 100644 --- a/build/style-index-rtl.css +++ b/build/style-index-rtl.css @@ -1 +1 @@ -.wp-block-lumen-priority-nav,.wp-block-navigation[data-priority-nav]{position:relative}.wp-block-lumen-priority-nav .priority-nav-container,.wp-block-navigation[data-priority-nav] .priority-nav-container{align-items:center;display:flex;gap:1rem;width:100%}.wp-block-lumen-priority-nav .priority-nav-list,.wp-block-navigation[data-priority-nav] .priority-nav-list{align-items:center;display:flex;flex:1;flex-wrap:nowrap;gap:.5rem;list-style:none;margin:0;min-width:0;padding:0}.wp-block-lumen-priority-nav .priority-nav-list>*,.wp-block-navigation[data-priority-nav] .priority-nav-list>*{flex-shrink:0}.wp-block-lumen-priority-nav .priority-nav-more,.wp-block-navigation[data-priority-nav] .priority-nav-more{flex-shrink:0;position:relative}.wp-block-lumen-priority-nav .priority-nav-more-button,.wp-block-navigation[data-priority-nav] .priority-nav-more-button{align-items:center;background:transparent;border:1px solid;border-radius:4px;color:inherit;cursor:pointer;display:flex;font-family:inherit;font-size:inherit;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.wp-block-lumen-priority-nav .priority-nav-more-button:hover,.wp-block-navigation[data-priority-nav] .priority-nav-more-button:hover{background:rgba(0,0,0,.05)}.wp-block-lumen-priority-nav .priority-nav-more-button .icon,.wp-block-navigation[data-priority-nav] .priority-nav-more-button .icon{display:inline-block;line-height:1}.wp-block-lumen-priority-nav .priority-nav-more-button[aria-expanded=true],.wp-block-navigation[data-priority-nav] .priority-nav-more-button[aria-expanded=true]{background:rgba(0,0,0,.1)}.wp-block-lumen-priority-nav .priority-nav-more-button[aria-expanded=true] .icon,.wp-block-navigation[data-priority-nav] .priority-nav-more-button[aria-expanded=true] .icon{transform:rotate(-180deg)}.wp-block-lumen-priority-nav .priority-nav-dropdown,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.15);list-style:none;margin:0;min-width:200px;opacity:0;padding:.5rem 0;position:absolute;left:0;top:calc(100% + .5rem);transform:translateY(-10px);transition:all .2s ease;visibility:hidden;z-index:1000}.wp-block-lumen-priority-nav .priority-nav-dropdown.is-open,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown.is-open{opacity:1;transform:translateY(0);visibility:visible}.wp-block-lumen-priority-nav .priority-nav-dropdown li,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown li{margin:0;padding:0}.wp-block-lumen-priority-nav .priority-nav-dropdown li a,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown li a{color:inherit;display:block;padding:.75rem 1rem;text-decoration:none;transition:background .2s ease}.wp-block-lumen-priority-nav .priority-nav-dropdown li a:hover,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown li a:hover{background:rgba(0,0,0,.05)}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-content,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content{background:transparent;display:none;list-style:none;margin:0;padding:0}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-content[aria-hidden=true],.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content[aria-hidden=true]{display:none!important}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-content.is-open,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content.is-open{display:block!important}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-content .priority-nav-accordion-content,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content .priority-nav-accordion-content{padding-right:1rem}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-wrapper,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-wrapper{align-items:center;display:flex;justify-content:space-between;width:100%}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full{align-items:center;background:transparent;border:none;color:inherit;cursor:pointer;display:flex;font-family:inherit;font-size:inherit;justify-content:space-between;padding:.75rem 1rem;text-align:right;width:100%}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-text,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-text{flex:1}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-arrow,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-arrow{margin-right:.5rem;transition:transform .2s ease}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full[aria-expanded=true] .priority-nav-accordion-arrow,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full[aria-expanded=true] .priority-nav-accordion-arrow{transform:rotate(-90deg)}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-link,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-link{flex:1;padding:.75rem 1rem}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-arrow,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-arrow{background:transparent;border:none;color:inherit;cursor:pointer;flex-shrink:0;font-family:inherit;font-size:inherit;padding:.75rem}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-arrow .priority-nav-accordion-arrow,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-arrow .priority-nav-accordion-arrow{display:inline-block;transition:transform .2s ease}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-arrow[aria-expanded=true] .priority-nav-accordion-arrow,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-arrow[aria-expanded=true] .priority-nav-accordion-arrow{transform:rotate(-90deg)}.wp-block-lumen-priority-nav[data-more-hidden=true] .priority-nav-more,.wp-block-navigation[data-priority-nav][data-more-hidden=true] .priority-nav-more{display:none} +:root{--priority-nav--background:transparent;--priority-nav--background-hover:rgba(0,0,0,.05);--priority-nav--border:none;--priority-nav--border-radius:4px;--priority-nav--color:inherit;--priority-nav--font-family:inherit;--priority-nav--font-size:inherit;--priority-nav--padding:0.5rem 0.75rem}.wp-block-navigation[data-priority-nav]{position:relative}.wp-block-navigation[data-priority-nav] .priority-nav-more-button{align-items:center;background:var(--priority-nav--background);border:var(--priority-nav--border);border-radius:var(--priority-nav--border-radius);color:var(--priority-nav--color);cursor:pointer;display:flex;font-family:var(--priority-nav--font-family);font-size:var(--priority-nav--font-size);gap:.5rem;padding:var(--priority-nav--padding);transition:all .2s ease}.wp-block-navigation[data-priority-nav] .priority-nav-more-button:hover{background:var(--priority-nav--background-hover)}.wp-block-navigation[data-priority-nav] .priority-nav-more-button .icon{display:inline-block;line-height:1}.wp-block-navigation[data-priority-nav] .priority-nav-more-button[aria-expanded=true] .icon{transform:rotate(-180deg)}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.15);list-style:none;margin:0;min-width:200px;opacity:0;padding:.5rem 0;position:absolute;left:0;top:calc(100% + .5rem);transform:translateY(-10px);transition:all .2s ease;visibility:hidden;z-index:1000}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown.is-open{opacity:1;transform:translateY(0);visibility:visible}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown li{margin:0;padding:0}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown li a{color:inherit;display:block;padding:.75rem 1rem;text-decoration:none;transition:background .2s ease}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown li a:hover{background:rgba(0,0,0,.05)}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content{background:transparent;display:none;list-style:none;margin:0;padding:0}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content[aria-hidden=true]{display:none!important}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content.is-open{display:block!important}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content .priority-nav-accordion-content{padding-right:1rem}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-wrapper{align-items:center;display:flex;justify-content:space-between;width:100%}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full{align-items:center;background:transparent;border:none;color:inherit;cursor:pointer;display:flex;font-family:inherit;font-size:inherit;justify-content:space-between;padding:.75rem 1rem;text-align:right;width:100%}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-text{flex:1}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-arrow{margin-right:.5rem;transition:transform .2s ease}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full[aria-expanded=true] .priority-nav-accordion-arrow{transform:rotate(-90deg)}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-link{flex:1;padding:.75rem 1rem}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-arrow{background:transparent;border:none;color:inherit;cursor:pointer;flex-shrink:0;font-family:inherit;font-size:inherit;padding:.75rem}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-arrow .priority-nav-accordion-arrow{display:inline-block;transition:transform .2s ease}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-arrow[aria-expanded=true] .priority-nav-accordion-arrow{transform:rotate(-90deg)}.wp-block-navigation[data-priority-nav][data-more-hidden=true] .priority-nav-more{display:none} diff --git a/build/style-index.css b/build/style-index.css index c849787..3243089 100644 --- a/build/style-index.css +++ b/build/style-index.css @@ -1 +1 @@ -.wp-block-lumen-priority-nav,.wp-block-navigation[data-priority-nav]{position:relative}.wp-block-lumen-priority-nav .priority-nav-container,.wp-block-navigation[data-priority-nav] .priority-nav-container{align-items:center;display:flex;gap:1rem;width:100%}.wp-block-lumen-priority-nav .priority-nav-list,.wp-block-navigation[data-priority-nav] .priority-nav-list{align-items:center;display:flex;flex:1;flex-wrap:nowrap;gap:.5rem;list-style:none;margin:0;min-width:0;padding:0}.wp-block-lumen-priority-nav .priority-nav-list>*,.wp-block-navigation[data-priority-nav] .priority-nav-list>*{flex-shrink:0}.wp-block-lumen-priority-nav .priority-nav-more,.wp-block-navigation[data-priority-nav] .priority-nav-more{flex-shrink:0;position:relative}.wp-block-lumen-priority-nav .priority-nav-more-button,.wp-block-navigation[data-priority-nav] .priority-nav-more-button{align-items:center;background:transparent;border:1px solid;border-radius:4px;color:inherit;cursor:pointer;display:flex;font-family:inherit;font-size:inherit;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.wp-block-lumen-priority-nav .priority-nav-more-button:hover,.wp-block-navigation[data-priority-nav] .priority-nav-more-button:hover{background:rgba(0,0,0,.05)}.wp-block-lumen-priority-nav .priority-nav-more-button .icon,.wp-block-navigation[data-priority-nav] .priority-nav-more-button .icon{display:inline-block;line-height:1}.wp-block-lumen-priority-nav .priority-nav-more-button[aria-expanded=true],.wp-block-navigation[data-priority-nav] .priority-nav-more-button[aria-expanded=true]{background:rgba(0,0,0,.1)}.wp-block-lumen-priority-nav .priority-nav-more-button[aria-expanded=true] .icon,.wp-block-navigation[data-priority-nav] .priority-nav-more-button[aria-expanded=true] .icon{transform:rotate(180deg)}.wp-block-lumen-priority-nav .priority-nav-dropdown,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.15);list-style:none;margin:0;min-width:200px;opacity:0;padding:.5rem 0;position:absolute;right:0;top:calc(100% + .5rem);transform:translateY(-10px);transition:all .2s ease;visibility:hidden;z-index:1000}.wp-block-lumen-priority-nav .priority-nav-dropdown.is-open,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown.is-open{opacity:1;transform:translateY(0);visibility:visible}.wp-block-lumen-priority-nav .priority-nav-dropdown li,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown li{margin:0;padding:0}.wp-block-lumen-priority-nav .priority-nav-dropdown li a,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown li a{color:inherit;display:block;padding:.75rem 1rem;text-decoration:none;transition:background .2s ease}.wp-block-lumen-priority-nav .priority-nav-dropdown li a:hover,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown li a:hover{background:rgba(0,0,0,.05)}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-content,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content{background:transparent;display:none;list-style:none;margin:0;padding:0}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-content[aria-hidden=true],.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content[aria-hidden=true]{display:none!important}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-content.is-open,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content.is-open{display:block!important}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-content .priority-nav-accordion-content,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content .priority-nav-accordion-content{padding-left:1rem}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-wrapper,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-wrapper{align-items:center;display:flex;justify-content:space-between;width:100%}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full{align-items:center;background:transparent;border:none;color:inherit;cursor:pointer;display:flex;font-family:inherit;font-size:inherit;justify-content:space-between;padding:.75rem 1rem;text-align:left;width:100%}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-text,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-text{flex:1}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-arrow,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-arrow{margin-left:.5rem;transition:transform .2s ease}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full[aria-expanded=true] .priority-nav-accordion-arrow,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full[aria-expanded=true] .priority-nav-accordion-arrow{transform:rotate(90deg)}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-link,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-link{flex:1;padding:.75rem 1rem}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-arrow,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-arrow{background:transparent;border:none;color:inherit;cursor:pointer;flex-shrink:0;font-family:inherit;font-size:inherit;padding:.75rem}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-arrow .priority-nav-accordion-arrow,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-arrow .priority-nav-accordion-arrow{display:inline-block;transition:transform .2s ease}.wp-block-lumen-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-arrow[aria-expanded=true] .priority-nav-accordion-arrow,.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-arrow[aria-expanded=true] .priority-nav-accordion-arrow{transform:rotate(90deg)}.wp-block-lumen-priority-nav[data-more-hidden=true] .priority-nav-more,.wp-block-navigation[data-priority-nav][data-more-hidden=true] .priority-nav-more{display:none} +:root{--priority-nav--background:transparent;--priority-nav--background-hover:rgba(0,0,0,.05);--priority-nav--border:none;--priority-nav--border-radius:4px;--priority-nav--color:inherit;--priority-nav--font-family:inherit;--priority-nav--font-size:inherit;--priority-nav--padding:0.5rem 0.75rem}.wp-block-navigation[data-priority-nav]{position:relative}.wp-block-navigation[data-priority-nav] .priority-nav-more-button{align-items:center;background:var(--priority-nav--background);border:var(--priority-nav--border);border-radius:var(--priority-nav--border-radius);color:var(--priority-nav--color);cursor:pointer;display:flex;font-family:var(--priority-nav--font-family);font-size:var(--priority-nav--font-size);gap:.5rem;padding:var(--priority-nav--padding);transition:all .2s ease}.wp-block-navigation[data-priority-nav] .priority-nav-more-button:hover{background:var(--priority-nav--background-hover)}.wp-block-navigation[data-priority-nav] .priority-nav-more-button .icon{display:inline-block;line-height:1}.wp-block-navigation[data-priority-nav] .priority-nav-more-button[aria-expanded=true] .icon{transform:rotate(180deg)}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.15);list-style:none;margin:0;min-width:200px;opacity:0;padding:.5rem 0;position:absolute;right:0;top:calc(100% + .5rem);transform:translateY(-10px);transition:all .2s ease;visibility:hidden;z-index:1000}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown.is-open{opacity:1;transform:translateY(0);visibility:visible}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown li{margin:0;padding:0}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown li a{color:inherit;display:block;padding:.75rem 1rem;text-decoration:none;transition:background .2s ease}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown li a:hover{background:rgba(0,0,0,.05)}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content{background:transparent;display:none;list-style:none;margin:0;padding:0}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content[aria-hidden=true]{display:none!important}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content.is-open{display:block!important}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-content .priority-nav-accordion-content{padding-left:1rem}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-wrapper{align-items:center;display:flex;justify-content:space-between;width:100%}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full{align-items:center;background:transparent;border:none;color:inherit;cursor:pointer;display:flex;font-family:inherit;font-size:inherit;justify-content:space-between;padding:.75rem 1rem;text-align:left;width:100%}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-text{flex:1}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-arrow{margin-left:.5rem;transition:transform .2s ease}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-full[aria-expanded=true] .priority-nav-accordion-arrow{transform:rotate(90deg)}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-link{flex:1;padding:.75rem 1rem}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-arrow{background:transparent;border:none;color:inherit;cursor:pointer;flex-shrink:0;font-family:inherit;font-size:inherit;padding:.75rem}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-arrow .priority-nav-accordion-arrow{display:inline-block;transition:transform .2s ease}.wp-block-navigation[data-priority-nav] .priority-nav-dropdown .priority-nav-accordion-toggle-arrow[aria-expanded=true] .priority-nav-accordion-arrow{transform:rotate(90deg)}.wp-block-navigation[data-priority-nav][data-more-hidden=true] .priority-nav-more{display:none} diff --git a/build/style-index.css.map b/build/style-index.css.map new file mode 100644 index 0000000..78cc1e9 --- /dev/null +++ b/build/style-index.css.map @@ -0,0 +1 @@ +{"version":3,"file":"./style-index.css","mappings":";;;AAAA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACH;AACD;;AAEA;EACC;AACD;;AACC;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AACF;;AACE;EACC;AACH;;AAEE;EACC;EACA;AAAH;;AAIG;EACC;AAFJ;;AAOC;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AALF;;AAOE;EACC;EACA;EACA;AALH;;AAQE;EACC;EACA;AANH;;AAQG;EACC;EACA;EACA;EACA;EACA;AANJ;;AAQI;EACC;AANL;;AAcE;EACC;EACA;EACA;EACA;EACA;AAZH;;AAcG;EACC;AAZJ;;AAeG;EACC;AAbJ;;AAiBG;EACC;AAfJ;;AAoBE;EACC;EACA;EACA;EACA;AAlBH;;AAsBE;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AApBH;;AAsBG;EACC;AApBJ;;AAuBG;EACC;EACA;AArBJ;;AA0BI;EACC;AAxBL;;AA8BE;EACC;EACA;AA5BH;;AA+BE;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AA7BH;;AA+BG;EACC;EACA;AA7BJ;;AAkCI;EACC;AAhCL;;AAwCE;EACC;AAtCH,C","sources":["webpack://priority-plus-nav-block/./src/style.scss"],"sourcesContent":[":root {\n --priority-nav--background: transparent;\n --priority-nav--background-hover: rgba(0, 0, 0, 0.05);\n --priority-nav--border: none;\n --priority-nav--border-radius: 4px;\n --priority-nav--color: inherit;\n --priority-nav--font-family: inherit;\n --priority-nav--font-size: inherit;\n\t--priority-nav--padding: 0.5rem 0.75rem;\n}\n\n.wp-block-navigation[data-priority-nav] {\n\tposition: relative;\n\n\t.priority-nav-more-button {\n\t\tdisplay: flex;\n\t\tgap: 0.5rem;\n\t\talign-items: center;\n\t\tfont-family: var(--priority-nav--font-family);\n\t\tfont-size: var(--priority-nav--font-size);\n\t\tcolor: var(--priority-nav--color);\n\t\tpadding: var(--priority-nav--padding);\n\t\tbackground: var(--priority-nav--background);\n\t\tborder: var(--priority-nav--border);\n\t\tborder-radius: var(--priority-nav--border-radius);\n\t\ttransition: all 0.2s ease;\n\t\tcursor: pointer;\n\n\t\t&:hover {\n\t\t\tbackground: var(--priority-nav--background-hover);\n\t\t}\n\n\t\t.icon {\n\t\t\tdisplay: inline-block;\n\t\t\tline-height: 1;\n\t\t}\n\n\t\t&[aria-expanded=\"true\"] {\n\t\t\t.icon {\n\t\t\t\ttransform: rotate(180deg);\n\t\t\t}\n\t\t}\n\t}\n\n\t.priority-nav-dropdown {\n\t\tposition: absolute;\n\t\ttop: calc(100% + 0.5rem);\n\t\tright: 0;\n\t\tmin-width: 200px;\n\t\tbackground: #fff;\n\t\tborder: 1px solid #ddd;\n\t\tborder-radius: 4px;\n\t\tbox-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\n\t\tlist-style: none;\n\t\tmargin: 0;\n\t\tpadding: 0.5rem 0;\n\t\tz-index: 1000;\n\t\topacity: 0;\n\t\tvisibility: hidden;\n\t\ttransform: translateY(-10px);\n\t\ttransition: all 0.2s ease;\n\n\t\t&.is-open {\n\t\t\topacity: 1;\n\t\t\tvisibility: visible;\n\t\t\ttransform: translateY(0);\n\t\t}\n\n\t\tli {\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\n\t\t\ta {\n\t\t\t\tdisplay: block;\n\t\t\t\tpadding: 0.75rem 1rem;\n\t\t\t\tcolor: inherit;\n\t\t\t\ttext-decoration: none;\n\t\t\t\ttransition: background 0.2s ease;\n\n\t\t\t\t&:hover {\n\t\t\t\t\tbackground: rgba(0, 0, 0, 0.05);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Accordion styles - simplified, using only our custom classes\n\n\t\t// Accordion content - hidden by default, shown when .is-open\n\t\t.priority-nav-accordion-content {\n\t\t\tdisplay: none;\n\t\t\tlist-style: none;\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t\tbackground: transparent;\n\n\t\t\t&[aria-hidden=\"true\"] {\n\t\t\t\tdisplay: none !important;\n\t\t\t}\n\n\t\t\t&.is-open {\n\t\t\t\tdisplay: block !important;\n\t\t\t}\n\n\t\t\t// Nested level indentation\n\t\t\t.priority-nav-accordion-content {\n\t\t\t\tpadding-left: 1rem;\n\t\t\t}\n\t\t}\n\n\t\t// Wrapper for link + arrow mode\n\t\t.priority-nav-accordion-wrapper {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: space-between;\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t// Click mode: entire button is clickable\n\t\t.priority-nav-accordion-toggle-full {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: space-between;\n\t\t\twidth: 100%;\n\t\t\tpadding: 0.75rem 1rem;\n\t\t\tbackground: transparent;\n\t\t\tborder: none;\n\t\t\tcursor: pointer;\n\t\t\tfont-size: inherit;\n\t\t\tfont-family: inherit;\n\t\t\tcolor: inherit;\n\t\t\ttext-align: left;\n\n\t\t\t.priority-nav-accordion-text {\n\t\t\t\tflex: 1;\n\t\t\t}\n\n\t\t\t.priority-nav-accordion-arrow {\n\t\t\t\tmargin-left: 0.5rem;\n\t\t\t\ttransition: transform 0.2s ease;\n\t\t\t}\n\n\t\t\t&[aria-expanded=\"true\"] {\n\n\t\t\t\t.priority-nav-accordion-arrow {\n\t\t\t\t\ttransform: rotate(90deg);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Arrow mode: link stays functional, separate arrow button\n\t\t.priority-nav-accordion-link {\n\t\t\tflex: 1;\n\t\t\tpadding: 0.75rem 1rem;\n\t\t}\n\n\t\t.priority-nav-accordion-toggle-arrow {\n\t\t\tpadding: 0.75rem;\n\t\t\tbackground: transparent;\n\t\t\tborder: none;\n\t\t\tcursor: pointer;\n\t\t\tfont-size: inherit;\n\t\t\tfont-family: inherit;\n\t\t\tcolor: inherit;\n\t\t\tflex-shrink: 0;\n\n\t\t\t.priority-nav-accordion-arrow {\n\t\t\t\ttransition: transform 0.2s ease;\n\t\t\t\tdisplay: inline-block;\n\t\t\t}\n\n\t\t\t&[aria-expanded=\"true\"] {\n\n\t\t\t\t.priority-nav-accordion-arrow {\n\t\t\t\t\ttransform: rotate(90deg);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t&[data-more-hidden=\"true\"] {\n\n\t\t.priority-nav-more {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n"],"names":[],"ignoreList":[],"sourceRoot":""} \ No newline at end of file diff --git a/build/view.asset.php b/build/view.asset.php index 0211ef0..65a23dd 100644 --- a/build/view.asset.php +++ b/build/view.asset.php @@ -1 +1 @@ - array(), 'version' => 'e3fb313963fbdb8d8658'); + array(), 'version' => '0681be912e96b221fbaf'); diff --git a/build/view.js b/build/view.js index 712af16..4b6e4b3 100644 --- a/build/view.js +++ b/build/view.js @@ -1 +1 @@ -(()=>{class t{static instanceCounter=0;constructor(e){if(this.instanceId="priority-nav-"+t.instanceCounter++,e.classList.contains("wp-block-navigation")&&e.hasAttribute("data-priority-nav")?(this.nav=e,this.wrapper=e):(this.wrapper=e,this.nav=e.querySelector(".wp-block-navigation")),!this.nav)return;this.list=this.nav.querySelector(".wp-block-navigation__container"),this.moreLabel=this.nav.getAttribute("data-more-label")||"More",this.moreIcon=this.nav.getAttribute("data-more-icon")||"dots";let i=null;if(this.nav.attributes)for(let t=0;t${this.moreLabel}\n\t\t\t${t[this.moreIcon]||t.dots}\n\t\t`,this.dropdown=document.createElement("ul"),this.dropdown.className="priority-nav-dropdown wp-block-navigation__submenu-container",this.dropdown.setAttribute("role","menu"),this.moreContainer.appendChild(this.moreButton),this.moreContainer.appendChild(this.dropdown),this.list.parentNode.appendChild(this.moreContainer),this.moreContainer.style.display="none"}init(){this.setupEventListeners(),this.setupResponsiveObserver(),this.isInHamburgerMode()?this.disablePriorityNav():this.enablePriorityNav(),new ResizeObserver(()=>{if(!this.isCalculating){const t=this.isEnabled,e=this.isInHamburgerMode();e&&t?this.disablePriorityNav():e||t?!e&&t&&requestAnimationFrame(()=>this.checkOverflow()):this.enablePriorityNav()}}).observe(this.wrapper)}isInHamburgerMode(){if(this.responsiveContainer){const t=window.getComputedStyle(this.responsiveContainer);if("none"===t.display||"hidden"===t.visibility||"true"===this.responsiveContainer.getAttribute("aria-hidden"))return!0}if(this.list){const t=window.getComputedStyle(this.list),e=this.list.getBoundingClientRect();if("none"===t.display||"hidden"===t.visibility||0===e.width)return!0}return!1}isMeasurable(){if(!this.list)return!1;const t=window.getComputedStyle(this.list),e=this.list.getBoundingClientRect();return"none"!==t.display&&"hidden"!==t.visibility&&e.width>0&&e.height>0}disablePriorityNav(){this.isEnabled=!1,this.items.forEach(t=>{t.style.display=""}),this.moreContainer&&(this.moreContainer.style.display="none"),this.closeDropdown()}enablePriorityNav(){this.isEnabled=!0,this.isMeasurable()?((0===this.itemWidths.length||this.itemWidths.some(t=>0===t))&&this.cacheItemWidths(),requestAnimationFrame(()=>{this.checkOverflow()})):this.scheduleRetry()}scheduleRetry(t=20){this.retryTimeout&&clearTimeout(this.retryTimeout);let e=0;const i=()=>{e++,this.isMeasurable()&&!this.isInHamburgerMode()?(this.enablePriorityNav(),this.retryTimeout=null):this.retryTimeout=e{let e=!1;if(t.forEach(t=>{"attributes"!==t.type||"aria-hidden"!==t.attributeName&&"class"!==t.attributeName||(e=!0)}),e){const t=this.isInHamburgerMode();t&&this.isEnabled?this.disablePriorityNav():t||this.isEnabled||this.enablePriorityNav()}}),this.mutationObserver.observe(this.responsiveContainer,{attributes:!0,attributeFilter:["aria-hidden","class"]}),this.list&&this.mutationObserver.observe(this.list,{attributes:!0,attributeFilter:["style","class"],attributeOldValue:!1}))}cacheItemWidths(){this.isMeasurable()&&(this.items.forEach(t=>{t.style.display=""}),this.list.offsetHeight,this.itemWidths=this.items.map(t=>{const e=t.getBoundingClientRect();return e.width>0?e.width:0}),this.itemWidths.some(t=>0===t)&&this.scheduleRetry())}setupEventListeners(){this.moreButton.addEventListener("click",t=>{t.preventDefault(),t.stopPropagation(),this.toggleDropdown()}),document.addEventListener("click",t=>{!this.moreContainer.contains(t.target)&&this.isOpen&&this.closeDropdown()}),document.addEventListener("keydown",t=>{"Escape"===t.key&&this.isOpen&&(this.openAccordions.length>0?(this.closeAllAccordions(),t.preventDefault()):this.closeDropdown())}),this.dropdown.addEventListener("click",t=>{const e=t.target.closest(".priority-nav-accordion-toggle");if(e){t.preventDefault(),t.stopPropagation();const i=e.getAttribute("aria-controls"),s=this.dropdown.querySelector(`#${i}`);s&&this.toggleAccordionItem(e,s)}})}checkOverflow(){if(!this.isEnabled||!this.isMeasurable())return void(this.isCalculating=!1);this.isCalculating=!0;const t=this.nav.getBoundingClientRect(),e=window.getComputedStyle(this.nav),i=parseFloat(e.paddingLeft)+parseFloat(e.paddingRight),s=window.getComputedStyle(this.list),n=parseFloat(s.gap)||parseFloat(e.gap)||8,o=t.width>0?t.width-i:this.wrapper.getBoundingClientRect().width-i;this.moreContainer.style.display="",this.moreButton.offsetHeight;const r=this.moreButton.getBoundingClientRect().width;if((0===this.itemWidths.length||this.itemWidths.some(t=>0===t))&&(this.cacheItemWidths(),0===this.itemWidths.length||this.itemWidths.some(t=>0===t)))return void(this.isCalculating=!1);let a=0,l=0;for(let t=0;t0?n:0)+this.itemWidths[t];if(l<=o)return this.items.forEach(t=>t.style.display=""),this.moreContainer.style.display="none",this.closeDropdown(),void(this.isCalculating=!1);let c=0;for(let t=0;t0?n:0)+this.itemWidths[t];if(!(c+e+n+r<=o)&&0!==t)break;this.items[t].style.display="",c+=e,a++}this.dropdown.innerHTML="",this.submenuCounter=0;let h=!1;for(let t=a;t .wp-block-navigation__submenu-container");let s=t.querySelector(":scope > a");if(s||(s=t.querySelector(":scope > .wp-block-navigation-item__content a")),!s){if(i){const i=t.cloneNode(!0),s=i.querySelector(".wp-block-navigation__submenu-container");s&&s.remove(),e.text=i.textContent.trim()}else e.text=t.textContent.trim();return i&&(e.hasSubmenu=!0,i.querySelectorAll(":scope > li").forEach(t=>{e.children.push(this.extractNavItemData(t))})),e}const n=s.querySelector(".wp-block-navigation-item__label");if(n)e.text=n.textContent.trim();else{const t=s.cloneNode(!0);if(t.querySelectorAll("*").forEach(t=>t.remove()),e.text=t.textContent.trim(),!e.text){const t=Array.from(s.childNodes).filter(t=>t.nodeType===Node.TEXT_NODE);t.length>0&&(e.text=t.map(t=>t.textContent.trim()).filter(t=>t).join(" "))}}if(i&&e.text){const t=[];i.querySelectorAll("li a").forEach(i=>{const s=i.textContent.trim();s&&e.text.includes(s)&&t.push(s)}),t.length>0&&t.forEach(t=>{e.text=e.text.replace(t,"").trim()})}return e.url=s.getAttribute("href")||"#",i&&(e.hasSubmenu=!0,i.querySelectorAll(":scope > li").forEach(t=>{e.children.push(this.extractNavItemData(t))})),e}buildAccordionHTML(t,e){const i=`${this.instanceId}-submenu-${this.submenuCounter++}`;let s="";return t.hasSubmenu?(s=this.openSubmenusOnClick?`\n\t\t\t\t\t\n\t\t\t\t\t