diff --git a/.eslintrc.js b/.eslintrc.js
index 33d8b85..9cb4509 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -1,5 +1,5 @@
module.exports = {
- extends: [ 'plugin:@wordpress/eslint-plugin/recommended' ],
+ extends: ['plugin:@wordpress/eslint-plugin/recommended'],
rules: {
'@wordpress/no-unsafe-wp-apis': 'off',
},
diff --git a/README.md b/README.md
index f7ed677..6438371 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# Priority+ Navigation Block
+# Priority Plus Navigation Block
A WordPress block plugin that adds Priority+ pattern functionality to core WordPress navigation block. It automatically moves navigation items that don't fit into a responsive "More" dropdown menu as the viewport narrows.
@@ -6,13 +6,13 @@ A WordPress block plugin that adds Priority+ pattern functionality to core WordP
## What is Priority+?
-Priority+ navigation is a responsive design pattern that keeps all navigation items visible at wide screen sizes, but progressively moves overflow items into a "More" dropdown at smaller screen sizes. This ensures the navigation remains usable on all devices without requiring a hamburger menu or breaking the layout.
+Priority Plus Navigation is a responsive design pattern that keeps all navigation items visible at wide screen sizes, but progressively moves overflow items into a "More" dropdown at smaller screen sizes. This ensures the navigation remains usable on all devices without requiring a hamburger menu or breaking the layout.
## Features
- **Core Navigation Variation** - Extends the standard WordPress navigation block as a variation, no need to rebuild your menus
- **Automatic Overflow Detection** - Intelligently calculates available space and moves items to dropdown
-- **Easy Conversion** - Transform any Navigation block to Priority+ Navigation via block variations
+- **Easy Conversion** - Transform any Navigation block to Priority Plus Navigation via block variations
- **Customizable "More" Button** - Choose label text and icon style
- **Responsive by Design** - Uses ResizeObserver for smooth, performant resizing
- **Core Navigation Integration** - Automatically detects and respects "Open submenus on click" setting
@@ -20,7 +20,7 @@ Priority+ navigation is a responsive design pattern that keeps all navigation it
- **Submenu Accordions** - Items with submenus in the dropdown become accessible accordions
- **Accessible** - Proper ARIA attributes and keyboard support (Escape to close)
- **Block Theme Ready** - Full support for block themes with alignment, spacing, and color controls
-- **Multiple Blocks** - Use multiple Priority+ Navigation blocks on the same page
+- **Multiple Blocks** - Use multiple Priority Plus Navigation blocks on the same page
- **Future-Proof** - Since it extends core navigation, it benefits from WordPress core updates
## Installation
@@ -48,14 +48,14 @@ npm run build
## Usage
-The Priority+ Navigation is available as a variation of the core Navigation block. There are two ways to use it:
+The Priority Plus Navigation is available as a variation of the core Navigation block. There are two ways to use it:
### Option 1: Insert as Variation
1. In the block editor, click the **+** button to add a block
-2. Search for **"Priority+ Navigation"** or **"Navigation"**
-3. When you see the Navigation block, look for the **Priority+ Navigation** variation in the block variations panel
-4. Select the Priority+ Navigation variation
+2. Search for **"Priority Plus Navigation"** or **"Navigation"**
+3. When you see the Navigation block, look for the **Priority Plus Navigation** variation in the block variations panel
+4. Select the Priority Plus Navigation variation
5. Configure your navigation using the familiar WordPress navigation tools
6. Customize the "More" button label and icon in the block sidebar (Priority+ Settings panel)
@@ -63,12 +63,12 @@ The Priority+ Navigation is available as a variation of the core Navigation bloc
1. Select any existing **Navigation** block
2. In the block toolbar or block settings, look for the block variations switcher
-3. Choose **"Priority+ Navigation"** from the variations
+3. Choose **"Priority Plus Navigation"** from the variations
4. Your navigation now has Priority+ behavior enabled!
### Converting Back to Standard Navigation
-1. Select a **Priority+ Navigation** block
+1. Select a **Priority Plus Navigation** block
2. In the block variations switcher, choose the standard **"Navigation"** variation
3. The Priority+ behavior is disabled, returning to standard WordPress navigation
@@ -79,7 +79,7 @@ The Priority+ Navigation is available as a variation of the core Navigation bloc
### Block Settings (Inspector Sidebar)
**More Button Label**
-- Default: "Browse"
+- Default: "More"
- Customize the text displayed on the overflow button
**More Button Icon**
@@ -212,7 +212,7 @@ priority-nav/
## Overlay Menu Compatibility
-Priority+ Navigation intelligently works with WordPress core navigation overlay menu settings:
+Priority Plus Navigation intelligently works with WordPress core navigation overlay menu settings:
### How It Works
@@ -226,8 +226,8 @@ The plugin detects when WordPress's overlay/hamburger menu is active by checking
## Known Limitations
-- When using multiple Priority+ Navigation blocks on the same page with "Open submenus on click" enabled, ensure each block has unique navigation content to avoid potential ID conflicts
-- Priority+ Navigation is not compatible with the "Always" overlay menu setting - it will automatically prevent usage and switch to "Mobile" mode
+- When using multiple Priority Plus Navigation blocks on the same page with "Open submenus on click" enabled, ensure each block has unique navigation content to avoid potential ID conflicts
+- Priority Plus Navigation is not compatible with the "Always" overlay menu setting - it will automatically prevent usage and switch to "Mobile" mode
- Legacy wrapper blocks (from previous plugin versions) are no longer insertable in the editor, but will continue to function on the frontend for backward compatibility
## Changelog
@@ -247,7 +247,7 @@ The plugin detects when WordPress's overlay/hamburger menu is active by checking
- Legacy wrapper blocks still supported on frontend for backward compatibility
### 0.1.0 - Initial Release
-- Priority+ navigation as core/navigation variation
+- Priority Plus Navigation as core/navigation variation
- Customizable "More" button label and icon
- Full block theme support
- Responsive overflow detection
@@ -257,7 +257,7 @@ The plugin detects when WordPress's overlay/hamburger menu is active by checking
## Credits
-Built with WordPress block development tools and inspired by the Priority+ navigation pattern.
+Built with WordPress block development tools and inspired by the Priority Plus Navigation pattern.
## License
diff --git a/build/priority-editor-rtl.css b/build/priority-editor-rtl.css
deleted file mode 100644
index ef70bd5..0000000
--- a/build/priority-editor-rtl.css
+++ /dev/null
@@ -1 +0,0 @@
-.is-style-priority-nav{--priority-nav--background:transparent;--priority-nav--background-hover:transparent;--priority-nav--color:inherit;--priority-nav--color-hover:inherit;--priority-nav--border-color:transparent;--priority-nav--border-style:solid;--priority-nav--border-width:0;--priority-nav--border-radius:0;--priority-nav--font-family:inherit;--priority-nav--font-size:inherit;--priority-nav--font-weight:inherit;--priority-nav--padding:0}.editor-styles-wrapper .priority-nav-editor-wrapper nav{align-items:center;border:2px solid green!important;display:flex;flex-wrap:nowrap;width:100%}.priority-nav-disable-always-option .components-toggle-group-control-option-base:last-child{cursor:not-allowed;opacity:.4;pointer-events:none;text-decoration:line-through}
diff --git a/build/priority-editor.css b/build/priority-editor.css
deleted file mode 100644
index ef70bd5..0000000
--- a/build/priority-editor.css
+++ /dev/null
@@ -1 +0,0 @@
-.is-style-priority-nav{--priority-nav--background:transparent;--priority-nav--background-hover:transparent;--priority-nav--color:inherit;--priority-nav--color-hover:inherit;--priority-nav--border-color:transparent;--priority-nav--border-style:solid;--priority-nav--border-width:0;--priority-nav--border-radius:0;--priority-nav--font-family:inherit;--priority-nav--font-size:inherit;--priority-nav--font-weight:inherit;--priority-nav--padding:0}.editor-styles-wrapper .priority-nav-editor-wrapper nav{align-items:center;border:2px solid green!important;display:flex;flex-wrap:nowrap;width:100%}.priority-nav-disable-always-option .components-toggle-group-control-option-base:last-child{cursor:not-allowed;opacity:.4;pointer-events:none;text-decoration:line-through}
diff --git a/build/priority-editor.js b/build/priority-editor.js
deleted file mode 100644
index 21f67cf..0000000
--- a/build/priority-editor.js
+++ /dev/null
@@ -1 +0,0 @@
-(()=>{"use strict";const o=window.wp.i18n,e=window.wp.blocks,r=window.wp.primitives,t=window.ReactJSXRuntime;var i=(0,t.jsx)(r.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,t.jsx)(r.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"})});const a=window.wp.hooks;(0,e.registerBlockVariation)("core/navigation",{name:"priority-nav",title:(0,o.__)("Priority Plus Nav","priority-nav"),description:(0,o.__)('A responsive navigation that automatically moves overflow items to a "More" dropdown.',"priority-nav"),icon:i,scope:["inserter","transform"],attributes:{className:"is-style-priority-nav",overlayMenu:"never",priorityNavEnabled:!0,priorityNavMoreLabel:"More",priorityNavMoreBackgroundColor:void 0,priorityNavMoreBackgroundColorHover:void 0,priorityNavMoreTextColor:void 0,priorityNavMoreTextColorHover:void 0},isActive:(o,e)=>o.className?.includes(e.className)}),(0,a.addFilter)("blocks.registerBlockType","priority-nav/extend-core-navigation",(o,e)=>"core/navigation"!==e?o:{...o,attributes:{...o.attributes,priorityNavEnabled:{type:"boolean",default:!1},priorityNavMoreLabel:{type:"string",default:"More"},priorityNavMoreIcon:{type:"string",default:"none"},priorityNavMoreBackgroundColor:{type:"string"},priorityNavMoreBackgroundColorHover:{type:"string"},priorityNavMoreTextColor:{type:"string"},priorityNavMoreTextColorHover:{type:"string"},priorityNavMorePadding:{type:"object",default:void 0}}});const n=window.wp.blockEditor,l=window.wp.components,s=window.wp.compose,v=window.wp.element,p=(0,s.createHigherOrderComponent)(o=>e=>{const{name:r,attributes:i}=e;if("core/navigation"!==r)return(0,t.jsx)(o,{...e});const a=(i.className||"").includes("is-style-priority-nav")||!0===i.priorityNavEnabled;return(0,v.useEffect)(()=>{if(!a)return;const o=document.querySelector(".block-editor-block-inspector");if(!o)return;const e=o.querySelector('.components-toggle-group-control-option-base[data-value="always"]');e&&(e.style.opacity="0.4",e.style.pointerEvents="none",e.style.textDecoration="line-through",e.style.cursor="not-allowed")},[a,i.overlayMenu]),(0,t.jsx)(o,{...e})},"addDisableAlwaysOption"),d=(0,s.createHigherOrderComponent)(e=>r=>{const{name:i,attributes:a,setAttributes:s}=r;if("core/navigation"!==i)return(0,t.jsx)(e,{...r});const p=(a.className||"").includes("is-style-priority-nav")||!0===a.priorityNavEnabled;if(!p)return(0,t.jsx)(e,{...r});const{priorityNavEnabled:d,priorityNavMoreLabel:y,priorityNavMoreBackgroundColor:c,priorityNavMoreBackgroundColorHover:u,priorityNavMoreTextColor:g,priorityNavMoreTextColorHover:b,priorityNavMorePadding:w,overlayMenu:h}=a;(0,v.useEffect)(()=>{p&&"always"===h&&s({overlayMenu:"mobile"})},[p,h,s]);const M=(0,n.useSetting)("spacing.spacingSizes")||[];return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(e,{...r}),(0,t.jsx)(n.InspectorControls,{group:"settings",children:(0,t.jsx)(l.Notice,{status:"info",isDismissible:!1,children:(0,o.__)('Priority+ Navigation is not compatible with "Always" overlay menu. The overlay menu is set to "Mobile" to allow Priority+ to work on desktop.',"priority-nav")})}),(0,t.jsxs)(n.InspectorControls,{group:"styles",children:[(0,t.jsx)(l.__experimentalToolsPanel,{label:(0,o.__)("Priority Plus Settings","priority-nav"),resetAll:()=>s({priorityNavMoreLabel:"More"}),children:(0,t.jsx)(l.__experimentalToolsPanelItem,{hasValue:()=>!!y,label:(0,o.__)("More Button Label","priority-nav"),onDeselect:()=>s({priorityNavMoreLabel:"More"}),isShownByDefault:!0,children:(0,t.jsx)(l.TextControl,{label:(0,o.__)("More Button Label","priority-nav"),value:y,onChange:o=>s({priorityNavMoreLabel:o}),help:(0,o.__)('Text displayed on the "More" button',"priority-nav")})})}),(0,t.jsx)(n.PanelColorSettings,{title:(0,o.__)("Priority Plus Colors","priority-nav"),colorSettings:[{label:(0,o.__)("Button Text Color","priority-nav"),value:g,onChange:o=>s({priorityNavMoreTextColor:o||void 0}),clearable:!0},{label:(0,o.__)("Button Text Hover Color","priority-nav"),value:b,onChange:o=>s({priorityNavMoreTextColorHover:o||void 0}),clearable:!0},{label:(0,o.__)("Button Background Color","priority-nav"),value:c,onChange:o=>s({priorityNavMoreBackgroundColor:o||void 0}),clearable:!0},{label:(0,o.__)("Button Background Hover Color","priority-nav"),value:u,onChange:o=>s({priorityNavMoreBackgroundColorHover:o||void 0}),clearable:!0}]}),(0,t.jsx)(l.__experimentalToolsPanel,{label:(0,o.__)("Priority Plus Button","priority-nav"),resetAll:()=>s({priorityNavMorePadding:void 0}),children:(0,t.jsx)(l.__experimentalToolsPanelItem,{hasValue:()=>!!w&&Object.keys(w).length>0,label:(0,o.__)("Padding","priority-nav"),onDeselect:()=>s({priorityNavMorePadding:void 0}),isShownByDefault:!0,children:M.length>0?(0,t.jsx)(n.__experimentalSpacingSizesControl,{values:w,onChange:o=>s({priorityNavMorePadding:o}),label:(0,o.__)("Button Padding","priority-nav"),sides:["top","right","bottom","left"],units:["px","em","rem","vh","vw"]}):(0,t.jsx)(l.BoxControl,{label:(0,o.__)("Button Padding","priority-nav"),values:w,onChange:o=>s({priorityNavMorePadding:o}),sides:["top","right","bottom","left"],units:["px","em","rem","vh","vw"],allowReset:!0})})})]})]})},"withPriorityNavControls");(0,a.addFilter)("editor.BlockEdit","priority-nav/add-disable-always-option",p,5),(0,a.addFilter)("editor.BlockEdit","priority-nav/add-priority-nav-controls",d,10)})();
\ No newline at end of file
diff --git a/build/priority-plus-nav-editor-rtl.css b/build/priority-plus-nav-editor-rtl.css
new file mode 100644
index 0000000..9fea353
--- /dev/null
+++ b/build/priority-plus-nav-editor-rtl.css
@@ -0,0 +1 @@
+.is-style-priority-plus-navigation{--priority-plus-navigation--background:transparent;--priority-plus-navigation--background-hover:transparent;--priority-plus-navigation--color:inherit;--priority-plus-navigation--color-hover:inherit;--priority-plus-navigation--border-color:transparent;--priority-plus-navigation--border-style:solid;--priority-plus-navigation--border-width:0;--priority-plus-navigation--border-radius:0;--priority-plus-navigation--font-family:inherit;--priority-plus-navigation--font-size:inherit;--priority-plus-navigation--font-weight:inherit;--priority-plus-navigation--padding:0}.editor-styles-wrapper .priority-plus-navigation-editor-wrapper nav{align-items:center;border:2px solid green!important;display:flex;flex-wrap:nowrap;width:100%}.priority-plus-navigation-disable-always-option .components-toggle-group-control-option-base:last-child{cursor:not-allowed;opacity:.4;pointer-events:none;text-decoration:line-through}
diff --git a/build/priority-editor.asset.php b/build/priority-plus-nav-editor.asset.php
similarity index 87%
rename from build/priority-editor.asset.php
rename to build/priority-plus-nav-editor.asset.php
index 0825a66..2a6d54a 100644
--- a/build/priority-editor.asset.php
+++ b/build/priority-plus-nav-editor.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' => 'c5037544c0114052e43e');
+ array('react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-compose', 'wp-element', 'wp-hooks', 'wp-i18n', 'wp-primitives'), 'version' => 'e4f2872018d1c6be1b93');
diff --git a/build/priority-plus-nav-editor.css b/build/priority-plus-nav-editor.css
new file mode 100644
index 0000000..9fea353
--- /dev/null
+++ b/build/priority-plus-nav-editor.css
@@ -0,0 +1 @@
+.is-style-priority-plus-navigation{--priority-plus-navigation--background:transparent;--priority-plus-navigation--background-hover:transparent;--priority-plus-navigation--color:inherit;--priority-plus-navigation--color-hover:inherit;--priority-plus-navigation--border-color:transparent;--priority-plus-navigation--border-style:solid;--priority-plus-navigation--border-width:0;--priority-plus-navigation--border-radius:0;--priority-plus-navigation--font-family:inherit;--priority-plus-navigation--font-size:inherit;--priority-plus-navigation--font-weight:inherit;--priority-plus-navigation--padding:0}.editor-styles-wrapper .priority-plus-navigation-editor-wrapper nav{align-items:center;border:2px solid green!important;display:flex;flex-wrap:nowrap;width:100%}.priority-plus-navigation-disable-always-option .components-toggle-group-control-option-base:last-child{cursor:not-allowed;opacity:.4;pointer-events:none;text-decoration:line-through}
diff --git a/build/priority-plus-nav-editor.js b/build/priority-plus-nav-editor.js
new file mode 100644
index 0000000..72095d5
--- /dev/null
+++ b/build/priority-plus-nav-editor.js
@@ -0,0 +1 @@
+(()=>{"use strict";const o=window.wp.i18n,i=window.wp.blocks,e=window.wp.primitives,r=window.ReactJSXRuntime;var t=(0,r.jsx)(e.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,r.jsx)(e.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"})});const a=window.wp.hooks;(0,i.registerBlockVariation)("core/navigation",{name:"priority-plus-navigation",title:(0,o.__)("Priority Plus Navigation","priority-plus-navigation"),description:(0,o.__)('A responsive navigation that automatically moves overflow items to a "More" dropdown.',"priority-plus-navigation"),icon:t,scope:["inserter","transform"],attributes:{className:"is-style-priority-plus-navigation",overlayMenu:"never",priorityNavEnabled:!0,priorityNavMoreLabel:"More",priorityNavMoreBackgroundColor:void 0,priorityNavMoreBackgroundColorHover:void 0,priorityNavMoreTextColor:void 0,priorityNavMoreTextColorHover:void 0},isActive:(o,i)=>o.className?.includes(i.className)}),(0,a.addFilter)("blocks.registerBlockType","priority-plus-navigation/extend-core-navigation",(o,i)=>"core/navigation"!==i?o:{...o,attributes:{...o.attributes,priorityNavEnabled:{type:"boolean",default:!1},priorityNavMoreLabel:{type:"string",default:"More"},priorityNavMoreIcon:{type:"string",default:"none"},priorityNavMoreBackgroundColor:{type:"string"},priorityNavMoreBackgroundColorHover:{type:"string"},priorityNavMoreTextColor:{type:"string"},priorityNavMoreTextColorHover:{type:"string"},priorityNavMorePadding:{type:"object",default:void 0}}});const n=window.wp.blockEditor,l=window.wp.components,s=window.wp.compose,p=window.wp.element,v=(0,s.createHigherOrderComponent)(o=>i=>{const{name:e,attributes:t}=i;if("core/navigation"!==e)return(0,r.jsx)(o,{...i});const a=(t.className||"").includes("is-style-priority-plus-navigation")||!0===t.priorityNavEnabled;return(0,p.useEffect)(()=>{if(!a)return;const o=document.querySelector(".block-editor-block-inspector");if(!o)return;const i=o.querySelector('.components-toggle-group-control-option-base[data-value="always"]');i&&(i.style.opacity="0.4",i.style.pointerEvents="none",i.style.textDecoration="line-through",i.style.cursor="not-allowed")},[a,t.overlayMenu]),(0,r.jsx)(o,{...i})},"addDisableAlwaysOption"),d=(0,s.createHigherOrderComponent)(i=>e=>{const{name:t,attributes:a,setAttributes:s}=e;if("core/navigation"!==t)return(0,r.jsx)(i,{...e});const v=(a.className||"").includes("is-style-priority-plus-navigation")||!0===a.priorityNavEnabled;if(!v)return(0,r.jsx)(i,{...e});const{priorityNavEnabled:d,priorityNavMoreLabel:u,priorityNavMoreBackgroundColor:y,priorityNavMoreBackgroundColorHover:c,priorityNavMoreTextColor:g,priorityNavMoreTextColorHover:b,priorityNavMorePadding:w,overlayMenu:h}=a;(0,p.useEffect)(()=>{v&&"always"===h&&s({overlayMenu:"mobile"})},[v,h,s]);const M=(0,n.useSetting)("spacing.spacingSizes")||[];return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(i,{...e}),(0,r.jsx)(n.InspectorControls,{group:"settings",children:(0,r.jsx)(l.Notice,{status:"info",isDismissible:!1,children:(0,o.__)('Priority Plus Navigation is not compatible with "Always" overlay menu. The overlay menu is set to "Mobile" to allow Priority+ to work on desktop.',"priority-plus-navigation")})}),(0,r.jsxs)(n.InspectorControls,{group:"styles",children:[(0,r.jsx)(l.__experimentalToolsPanel,{label:(0,o.__)("Priority Plus Settings","priority-plus-navigation"),resetAll:()=>s({priorityNavMoreLabel:"More"}),children:(0,r.jsx)(l.__experimentalToolsPanelItem,{hasValue:()=>!!u,label:(0,o.__)("More Button Label","priority-plus-navigation"),onDeselect:()=>s({priorityNavMoreLabel:"More"}),isShownByDefault:!0,children:(0,r.jsx)(l.TextControl,{label:(0,o.__)("More Button Label","priority-plus-navigation"),value:u,onChange:o=>s({priorityNavMoreLabel:o}),help:(0,o.__)('Text displayed on the "More" button',"priority-plus-navigation")})})}),(0,r.jsx)(n.PanelColorSettings,{title:(0,o.__)("Priority Plus Colors","priority-plus-navigation"),colorSettings:[{label:(0,o.__)("Button Text Color","priority-plus-navigation"),value:g,onChange:o=>s({priorityNavMoreTextColor:o||void 0}),clearable:!0},{label:(0,o.__)("Button Text Hover Color","priority-plus-navigation"),value:b,onChange:o=>s({priorityNavMoreTextColorHover:o||void 0}),clearable:!0},{label:(0,o.__)("Button Background Color","priority-plus-navigation"),value:y,onChange:o=>s({priorityNavMoreBackgroundColor:o||void 0}),clearable:!0},{label:(0,o.__)("Button Background Hover Color","priority-plus-navigation"),value:c,onChange:o=>s({priorityNavMoreBackgroundColorHover:o||void 0}),clearable:!0}]}),(0,r.jsx)(l.__experimentalToolsPanel,{label:(0,o.__)("Priority Plus Button","priority-plus-navigation"),resetAll:()=>s({priorityNavMorePadding:void 0}),children:(0,r.jsx)(l.__experimentalToolsPanelItem,{hasValue:()=>!!w&&Object.keys(w).length>0,label:(0,o.__)("Padding","priority-plus-navigation"),onDeselect:()=>s({priorityNavMorePadding:void 0}),isShownByDefault:!0,children:M.length>0?(0,r.jsx)(n.__experimentalSpacingSizesControl,{values:w,onChange:o=>s({priorityNavMorePadding:o}),label:(0,o.__)("Button Padding","priority-plus-navigation"),sides:["top","right","bottom","left"],units:["px","em","rem","vh","vw"]}):(0,r.jsx)(l.BoxControl,{label:(0,o.__)("Button Padding","priority-plus-navigation"),values:w,onChange:o=>s({priorityNavMorePadding:o}),sides:["top","right","bottom","left"],units:["px","em","rem","vh","vw"],allowReset:!0})})})]})]})},"withPriorityNavControls");(0,a.addFilter)("editor.BlockEdit","priority-plus-navigation/add-disable-always-option",v,5),(0,a.addFilter)("editor.BlockEdit","priority-plus-navigation/add-priority-plus-navigation-controls",d,10)})();
\ No newline at end of file
diff --git a/build/priority-plus-nav.asset.php b/build/priority-plus-nav.asset.php
deleted file mode 100644
index e2bcf50..0000000
--- a/build/priority-plus-nav.asset.php
+++ /dev/null
@@ -1 +0,0 @@
- array(), 'version' => '634f912ce7165c63d028');
diff --git a/build/priority-plus-nav.js b/build/priority-plus-nav.js
deleted file mode 100644
index d4e0f1a..0000000
--- a/build/priority-plus-nav.js
+++ /dev/null
@@ -1 +0,0 @@
-(()=>{"use strict";var t,e={400(){const t="More";function e(t){if(!t)return!1;const e=window.getComputedStyle(t),i=t.getBoundingClientRect();return"none"!==e.display&&"hidden"!==e.visibility&&i.width>0&&i.height>0}function i(t){return e(t)?t.getBoundingClientRect().width:0}function n(t){return e(t)}function s(t){const e=document.createElement("div");return e.textContent=t,e.innerHTML}function o(t){const e={text:"",url:"#",hasSubmenu:!1,children:[]},i=t.querySelector(":scope > .wp-block-navigation__submenu-container");let n=t.querySelector(":scope > a");if(n||(n=t.querySelector(":scope > .wp-block-navigation-item__content a")),!n){if(i){const i=t.cloneNode(!0),n=i.querySelector(".wp-block-navigation__submenu-container");n&&n.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(o(t))})),e}return e.text=function(t){if(!t)return"";const e=t.querySelector(".wp-block-navigation-item__label");if(e)return e.textContent.trim();const i=t.cloneNode(!0);i.querySelectorAll("*").forEach(t=>t.remove());let n=i.textContent.trim();if(!n){const e=Array.from(t.childNodes).filter(t=>t.nodeType===Node.TEXT_NODE);e.length>0&&(n=e.map(t=>t.textContent.trim()).filter(t=>t).join(" "))}return n}(n),i&&e.text&&(e.text=function(t,e){if(!t||!e)return t;const i=[];if(e.querySelectorAll("li a").forEach(e=>{const n=e.textContent.trim();n&&t.includes(n)&&i.push(n)}),i.length>0){let e=t;return i.forEach(t=>{e=e.replace(t,"").trim()}),e}return t}(e.text,i)),e.url=n.getAttribute("href")||"#",i&&(e.hasSubmenu=!0,i.querySelectorAll(":scope > li").forEach(t=>{e.children.push(o(t))})),e}function r(t,e,i,n,o){const a=`${i}-submenu-${n.value++}`;let l="";return t.hasSubmenu?(l=o?`\n\t\t\t\t\n\t\t\t\t\t${s(t.text)} \n\t\t\t\t\t› \n\t\t\t\t \n\t\t\t\t
\n\t\t\t`:`\n\t\t\t\t\n\t\t\t\t\t${s(t.text)} \n\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\t\n\t\t\t`,t.children.forEach(t=>{l+=`${r(t,e+1,i,n,o)} `}),l+=" "):l=`${s(t.text)} `,l}function a(t,e){return t.length===e&&!t.some(t=>0===t)}function l(t,e,s){if(!n(t))return[];e.forEach(t=>{t.style.display=""}),t.offsetHeight;const o=e.map(t=>{const e=i(t);return e>0?e:0});return o.some(t=>0===t)&&s&&s(),o}class c{static instanceCounter=0;constructor(e){if("true"===e.dataset.priorityNavInitialized)return;if(this.instanceId="priority-nav-"+c.instanceCounter++,!e.classList.contains("wp-block-navigation")||!e.classList.contains("is-style-priority-nav"))return;if(e.dataset.priorityNavInitialized="true",this.nav=e,this.list=this.nav.querySelector(".wp-block-navigation__container"),!this.list)return;if(this.moreLabel=this.nav.getAttribute("data-more-label")||t,this.overlayMenu=this.nav.getAttribute("data-overlay-menu")||"never","always"===this.overlayMenu)return;this.openSubmenusOnClick=this.detectOpenSubmenusOnClick();const{moreContainer:i,moreButton:n,dropdown:s}=function(e,i=t){const n=document.createElement("div");n.className="priority-nav-more";const s=document.createElement("button");s.type="button",s.className="priority-nav-more-button wp-block-navigation-item",s.setAttribute("aria-expanded","false"),s.setAttribute("aria-haspopup","true"),s.setAttribute("aria-label",i),s.innerHTML=`\n\t\t${i} \n\t\t \n\t`;const o=document.createElement("ul");return o.className="priority-nav-dropdown wp-block-navigation__submenu-container",o.setAttribute("role","menu"),n.appendChild(s),n.appendChild(o),e.parentNode.appendChild(n),n.style.display="none",{moreContainer:n,moreButton:s,dropdown:o}}(this.list,this.moreLabel);this.moreContainer=i,this.moreButton=n,this.dropdown=s,this.items=Array.from(this.list.children),this.itemWidths=[],this.isOpen=!1,this.isCalculating=!1,this.openAccordions=[],this.submenuCounter={value:0},this.responsiveContainer=this.nav.querySelector(".wp-block-navigation__responsive-container"),this.mutationObserver=null,this.retryTimeout=null,this.isEnabled=!0,this.moreButtonWidth=null,this.eventHandlers=null,this.init()}detectOpenSubmenusOnClick(){const t=this.nav.getAttribute("data-opensubmenusonclick")||this.nav.getAttribute("data-open-submenus-on-click");if(t)return"true"===t||"1"===t||""===t;if(this.nav.attributes)for(let t=0;t{t.preventDefault(),t.stopPropagation(),r()};n.addEventListener("click",u);const d=t=>{s&&!s.contains(t.target)&&e.isOpen&&a()};document.addEventListener("click",d,!0);const h=t=>{"Escape"===t.key&&e.isOpen&&(e.openAccordions.length>0?(l(),t.preventDefault()):a())};document.addEventListener("keydown",h);const p=t=>{const i=t.target.closest(".priority-nav-accordion-toggle");if(i){t.preventDefault(),t.stopPropagation();const n=i.getAttribute("aria-controls"),s=o.querySelector(`#${n}`);s&&c(i,s,e)}};return o.addEventListener("click",p),{moreButtonClickHandler:u,documentClickHandler:d,documentKeydownHandler:h,dropdownClickHandler:p}}({moreButton:this.moreButton,moreContainer:this.moreContainer,dropdown:this.dropdown},this,{toggleDropdown:()=>this.toggleDropdown(),closeDropdown:()=>this.closeDropdown(),closeAllAccordions:()=>this.closeAllAccordions(),toggleAccordionItem:(t,e)=>this.toggleAccordionItem(t,e)}),this.setupResponsiveObserver(),this.isInHamburgerMode()?this.disablePriorityNav():this.enablePriorityNav(),"undefined"!=typeof ResizeObserver&&(this.resizeObserver=new ResizeObserver(()=>{if(document.body.contains(this.nav)&&!this.isCalculating){const t=this.isEnabled,e=this.isInHamburgerMode();e&&t?this.disablePriorityNav():e||t?!e&&t&&requestAnimationFrame(()=>this.checkOverflow()):this.enablePriorityNav()}}),this.resizeObserver.observe(this.nav)))}isInHamburgerMode(){return t=this.responsiveContainer,this.list,!(!t||!t.classList.contains("is-menu-open")&&!t.classList.contains("has-modal-open"));var t}disablePriorityNav(){this.items&&Array.isArray(this.items)&&(this.isEnabled=!1,this.items.forEach(t=>{t&&t.style&&(t.style.display="")}),this.moreContainer&&this.moreContainer.style&&(this.moreContainer.style.display="none"),this.closeDropdown())}enablePriorityNav(){this.isEnabled=!0,n(this.list)?((0===this.itemWidths.length||this.itemWidths.some(t=>0===t))&&(this.itemWidths=l(this.list,this.items,()=>this.scheduleRetry())),requestAnimationFrame(()=>{this.checkOverflow()})):this.scheduleRetry()}scheduleRetry(t=20){this.retryTimeout&&clearTimeout(this.retryTimeout);let e=0;const i=()=>{e++,n(this.list)&&!this.isInHamburgerMode()?(this.enablePriorityNav(),this.retryTimeout=null):this.retryTimeout=e{if(!document.body.contains(this.nav))return;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&&document.body.contains(this.list)&&this.mutationObserver.observe(this.list,{attributes:!0,attributeFilter:["style","class"],attributeOldValue:!1}))}checkOverflow(){if(!this.isEnabled||!n(this.list))return void(this.isCalculating=!1);if(!document.body.contains(this.nav))return void(this.isCalculating=!1);if(this.isCalculating=!0,!a(this.itemWidths,this.items.length)&&(this.itemWidths=l(this.list,this.items,()=>this.scheduleRetry()),!a(this.itemWidths,this.items.length)))return void(this.isCalculating=!1);const t=this.calculateAvailableWidth();if(this.moreButtonWidth=function(t,e,n){if(null!==n)return n;const s="none"===e.style.display;s&&(e.style.display=""),t.offsetHeight;const o=i(t);return s&&(e.style.display="none"),o}(this.moreButton,this.moreContainer,this.moreButtonWidth),this.moreButtonWidth>=t)return this.items.forEach(t=>t.style.display="none"),this.moreContainer.style.display="",void(this.isCalculating=!1);const e=function(t,e){const i=window.getComputedStyle(t),n=window.getComputedStyle(e);return parseFloat(i.gap)||parseFloat(n.gap)||8}(this.list,this.nav),s=this.calculateVisibleItems(t,this.moreButtonWidth,e);if(s===this.items.length)this.items.forEach(t=>t.style.display=""),this.moreContainer.style.display="none",this.closeDropdown();else{this.moreContainer.style.display="none";for(let t=s;t0?t.width:0;return n>0?n-i:0}calculateVisibleItems(t,e,i){let n=0;for(let t=0;t0?i:0)+this.itemWidths[t];if(n<=t)return this.items.length;let s=0,o=0;for(let n=0;n0?i:0)+this.itemWidths[n];if(!(s+r+i+e<=t)&&0!==n)break;s+=r,o++}return o}toggleDropdown(){this.isOpen?this.closeDropdown():this.openDropdown()}openDropdown(){this.dropdown&&this.moreButton&&(this.isOpen=!0,this.dropdown.classList.add("is-open"),this.moreButton.setAttribute("aria-expanded","true"))}closeDropdown(){this.dropdown&&this.moreButton&&(this.isOpen=!1,this.dropdown.classList.remove("is-open"),this.moreButton.setAttribute("aria-expanded","false"),this.closeAllAccordions())}toggleAccordionItem(t,e){!function(t,e,i,n){"true"===t.getAttribute("aria-expanded")?(t.setAttribute("aria-expanded","false"),e.style.setProperty("display","none","important"),e.classList.remove("is-open"),e.setAttribute("aria-hidden","true"),i.openAccordions=i.openAccordions.filter(e=>e.button!==t),e.querySelectorAll('.priority-nav-accordion-toggle[aria-expanded="true"]').forEach(t=>{const e=t.getAttribute("aria-controls"),i=n.querySelector(`#${e}`);i&&(t.setAttribute("aria-expanded","false"),i.style.setProperty("display","none","important"),i.classList.remove("is-open"),i.setAttribute("aria-hidden","true"))})):(t.setAttribute("aria-expanded","true"),e.style.setProperty("display","block","important"),e.style.setProperty("opacity","1","important"),e.style.setProperty("visibility","visible","important"),e.style.setProperty("position","static","important"),e.classList.add("is-open"),e.setAttribute("aria-hidden","false"),i.openAccordions.push({button:t,submenu:e}))}(t,e,this,this.dropdown)}closeAllAccordions(){var t;(t=this).openAccordions.forEach(({button:t,submenu:e})=>{t.setAttribute("aria-expanded","false"),e.style.setProperty("display","none","important"),e.classList.remove("is-open"),e.setAttribute("aria-hidden","true")}),t.openAccordions=[]}destroy(){if(this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null),this.mutationObserver&&(this.mutationObserver.disconnect(),this.mutationObserver=null),this.retryTimeout&&(clearTimeout(this.retryTimeout),this.retryTimeout=null),this.eventHandlers){const{moreButtonClickHandler:t,documentClickHandler:e,documentKeydownHandler:i,dropdownClickHandler:n}=this.eventHandlers;this.moreButton&&t&&this.moreButton.removeEventListener("click",t),e&&document.removeEventListener("click",e,!0),i&&document.removeEventListener("keydown",i),this.dropdown&&n&&this.dropdown.removeEventListener("click",n)}}}const u=c;document.addEventListener("DOMContentLoaded",()=>{document.querySelectorAll(".wp-block-navigation.is-style-priority-nav").forEach(t=>new u(t))})}},i={};function n(t){var s=i[t];if(void 0!==s)return s.exports;var o=i[t]={exports:{}};return e[t](o,o.exports,n),o.exports}n.m=e,t=[],n.O=(e,i,s,o)=>{if(!i){var r=1/0;for(u=0;u=o)&&Object.keys(n.O).every(t=>n.O[t](i[l]))?i.splice(l--,1):(a=!1,o0&&t[u-1][2]>o;u--)t[u]=t[u-1];t[u]=[i,s,o]},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),(()=>{var t={500:0,959:0};n.O.j=e=>0===t[e];var e=(e,i)=>{var s,o,[r,a,l]=i,c=0;if(r.some(e=>0!==t[e])){for(s in a)n.o(a,s)&&(n.m[s]=a[s]);if(l)var u=l(n)}for(e&&e(i);cn(400));s=n.O(s)})();
\ No newline at end of file
diff --git a/build/priority-plus-navigation.asset.php b/build/priority-plus-navigation.asset.php
new file mode 100644
index 0000000..376a83b
--- /dev/null
+++ b/build/priority-plus-navigation.asset.php
@@ -0,0 +1 @@
+ array(), 'version' => 'cb0794ae579e8c9c17f8');
diff --git a/build/priority-plus-navigation.js b/build/priority-plus-navigation.js
new file mode 100644
index 0000000..110590b
--- /dev/null
+++ b/build/priority-plus-navigation.js
@@ -0,0 +1 @@
+(()=>{"use strict";var t,e={823(){const t="More";function e(t){if(!t)return!1;const e=window.getComputedStyle(t),i=t.getBoundingClientRect();return"none"!==e.display&&"hidden"!==e.visibility&&i.width>0&&i.height>0}function i(t){return e(t)?t.getBoundingClientRect().width:0}function n(t){return e(t)}function s(t){const e=document.createElement("div");return e.textContent=t,e.innerHTML}function o(t){const e={text:"",url:"#",hasSubmenu:!1,children:[]},i=t.querySelector(":scope > .wp-block-navigation__submenu-container");let n=t.querySelector(":scope > a");if(n||(n=t.querySelector(":scope > .wp-block-navigation-item__content a")),!n){if(i){const i=t.cloneNode(!0),n=i.querySelector(".wp-block-navigation__submenu-container");n&&n.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(o(t))})),e}return e.text=function(t){if(!t)return"";const e=t.querySelector(".wp-block-navigation-item__label");if(e)return e.textContent.trim();const i=t.cloneNode(!0);i.querySelectorAll("*").forEach(t=>t.remove());let n=i.textContent.trim();if(!n){const e=Array.from(t.childNodes).filter(t=>t.nodeType===Node.TEXT_NODE);e.length>0&&(n=e.map(t=>t.textContent.trim()).filter(t=>t).join(" "))}return n}(n),i&&e.text&&(e.text=function(t,e){if(!t||!e)return t;const i=[];if(e.querySelectorAll("li a").forEach(e=>{const n=e.textContent.trim();n&&t.includes(n)&&i.push(n)}),i.length>0){let e=t;return i.forEach(t=>{e=e.replace(t,"").trim()}),e}return t}(e.text,i)),e.url=n.getAttribute("href")||"#",i&&(e.hasSubmenu=!0,i.querySelectorAll(":scope > li").forEach(t=>{e.children.push(o(t))})),e}function r(t,e,i,n,o){const a=`${i}-submenu-${n.value++}`;let l="";return t.hasSubmenu?(l=o?`\n\t\t\t\t\n\t\t\t\t\t${s(t.text)} \n\t\t\t\t\t› \n\t\t\t\t \n\t\t\t\t\n\t\t\t`:`\n\t\t\t\t\n\t\t\t\t\t${s(t.text)} \n\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\t\n\t\t\t`,t.children.forEach(t=>{l+=`${r(t,e+1,i,n,o)} `}),l+=" "):l=`${s(t.text)} `,l}function a(t,e){return t.length===e&&!t.some(t=>0===t)}function l(t,e,s){if(!n(t))return[];e.forEach(t=>{t.style.display=""}),t.offsetHeight;const o=e.map(t=>{const e=i(t);return e>0?e:0});return o.some(t=>0===t)&&s&&s(),o}class c{static instanceCounter=0;constructor(e){if("true"===e.dataset.priorityNavInitialized)return;if(this.instanceId="priority-plus-navigation-"+c.instanceCounter++,!e.classList.contains("wp-block-navigation")||!e.classList.contains("is-style-priority-plus-navigation"))return;if(e.dataset.priorityNavInitialized="true",this.nav=e,this.list=this.nav.querySelector(".wp-block-navigation__container"),!this.list)return;if(this.moreLabel=this.nav.getAttribute("data-more-label")||t,this.overlayMenu=this.nav.getAttribute("data-overlay-menu")||"never","always"===this.overlayMenu)return;this.openSubmenusOnClick=this.detectOpenSubmenusOnClick();const{moreContainer:i,moreButton:n,dropdown:s}=function(e,i=t){const n=document.createElement("div");n.className="priority-plus-navigation-more";const s=document.createElement("button");s.type="button",s.className="priority-plus-navigation-more-button wp-block-navigation-item",s.setAttribute("aria-expanded","false"),s.setAttribute("aria-haspopup","true"),s.setAttribute("aria-label",i),s.innerHTML=`\n\t\t${i} \n\t\t \n\t`;const o=document.createElement("ul");return o.className="priority-plus-navigation-dropdown wp-block-navigation__submenu-container",o.setAttribute("role","menu"),n.appendChild(s),n.appendChild(o),e.parentNode.appendChild(n),n.style.display="none",{moreContainer:n,moreButton:s,dropdown:o}}(this.list,this.moreLabel);this.moreContainer=i,this.moreButton=n,this.dropdown=s,this.items=Array.from(this.list.children),this.itemWidths=[],this.isOpen=!1,this.isCalculating=!1,this.openAccordions=[],this.submenuCounter={value:0},this.responsiveContainer=this.nav.querySelector(".wp-block-navigation__responsive-container"),this.mutationObserver=null,this.retryTimeout=null,this.isEnabled=!0,this.moreButtonWidth=null,this.eventHandlers=null,this.init()}detectOpenSubmenusOnClick(){const t=this.nav.getAttribute("data-opensubmenusonclick")||this.nav.getAttribute("data-open-submenus-on-click");if(t)return"true"===t||"1"===t||""===t;if(this.nav.attributes)for(let t=0;t{t.preventDefault(),t.stopPropagation(),r()};n.addEventListener("click",u);const d=t=>{s&&!s.contains(t.target)&&e.isOpen&&a()};document.addEventListener("click",d,!0);const h=t=>{"Escape"===t.key&&e.isOpen&&(e.openAccordions.length>0?(l(),t.preventDefault()):a())};document.addEventListener("keydown",h);const p=t=>{const i=t.target.closest(".priority-plus-navigation-accordion-toggle");if(i){t.preventDefault(),t.stopPropagation();const n=i.getAttribute("aria-controls"),s=o.querySelector(`#${n}`);s&&c(i,s,e)}};return o.addEventListener("click",p),{moreButtonClickHandler:u,documentClickHandler:d,documentKeydownHandler:h,dropdownClickHandler:p}}({moreButton:this.moreButton,moreContainer:this.moreContainer,dropdown:this.dropdown},this,{toggleDropdown:()=>this.toggleDropdown(),closeDropdown:()=>this.closeDropdown(),closeAllAccordions:()=>this.closeAllAccordions(),toggleAccordionItem:(t,e)=>this.toggleAccordionItem(t,e)}),this.setupResponsiveObserver(),this.isInHamburgerMode()?this.disablePriorityNav():this.enablePriorityNav(),"undefined"!=typeof ResizeObserver&&(this.resizeObserver=new ResizeObserver(()=>{if(document.body.contains(this.nav)&&!this.isCalculating){const t=this.isEnabled,e=this.isInHamburgerMode();e&&t?this.disablePriorityNav():e||t?!e&&t&&requestAnimationFrame(()=>this.checkOverflow()):this.enablePriorityNav()}}),this.resizeObserver.observe(this.nav)))}isInHamburgerMode(){return t=this.responsiveContainer,this.list,!(!t||!t.classList.contains("is-menu-open")&&!t.classList.contains("has-modal-open"));var t}disablePriorityNav(){this.items&&Array.isArray(this.items)&&(this.isEnabled=!1,this.items.forEach(t=>{t&&t.style&&(t.style.display="")}),this.moreContainer&&this.moreContainer.style&&(this.moreContainer.style.display="none"),this.closeDropdown())}enablePriorityNav(){this.isEnabled=!0,n(this.list)?((0===this.itemWidths.length||this.itemWidths.some(t=>0===t))&&(this.itemWidths=l(this.list,this.items,()=>this.scheduleRetry())),requestAnimationFrame(()=>{this.checkOverflow()})):this.scheduleRetry()}scheduleRetry(t=20){this.retryTimeout&&clearTimeout(this.retryTimeout);let e=0;const i=()=>{e++,n(this.list)&&!this.isInHamburgerMode()?(this.enablePriorityNav(),this.retryTimeout=null):this.retryTimeout=e{if(!document.body.contains(this.nav))return;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&&document.body.contains(this.list)&&this.mutationObserver.observe(this.list,{attributes:!0,attributeFilter:["style","class"],attributeOldValue:!1}))}checkOverflow(){if(!this.isEnabled||!n(this.list))return void(this.isCalculating=!1);if(!document.body.contains(this.nav))return void(this.isCalculating=!1);if(this.isCalculating=!0,!a(this.itemWidths,this.items.length)&&(this.itemWidths=l(this.list,this.items,()=>this.scheduleRetry()),!a(this.itemWidths,this.items.length)))return void(this.isCalculating=!1);const t=this.calculateAvailableWidth();if(this.moreButtonWidth=function(t,e,n){if(null!==n)return n;const s="none"===e.style.display;s&&(e.style.display=""),t.offsetHeight;const o=i(t);return s&&(e.style.display="none"),o}(this.moreButton,this.moreContainer,this.moreButtonWidth),this.moreButtonWidth>=t)return this.items.forEach(t=>t.style.display="none"),this.moreContainer.style.display="",void(this.isCalculating=!1);const e=function(t,e){const i=window.getComputedStyle(t),n=window.getComputedStyle(e);return parseFloat(i.gap)||parseFloat(n.gap)||8}(this.list,this.nav),s=this.calculateVisibleItems(t,this.moreButtonWidth,e);if(s===this.items.length)this.items.forEach(t=>t.style.display=""),this.moreContainer.style.display="none",this.closeDropdown();else{this.moreContainer.style.display="none";for(let t=s;t0?t.width:0;return n>0?n-i:0}calculateVisibleItems(t,e,i){let n=0;for(let t=0;t0?i:0)+this.itemWidths[t];if(n<=t)return this.items.length;let s=0,o=0;for(let n=0;n0?i:0)+this.itemWidths[n];if(!(s+r+i+e<=t)&&0!==n)break;s+=r,o++}return o}toggleDropdown(){this.isOpen?this.closeDropdown():this.openDropdown()}openDropdown(){this.dropdown&&this.moreButton&&(this.isOpen=!0,this.dropdown.classList.add("is-open"),this.moreButton.setAttribute("aria-expanded","true"))}closeDropdown(){this.dropdown&&this.moreButton&&(this.isOpen=!1,this.dropdown.classList.remove("is-open"),this.moreButton.setAttribute("aria-expanded","false"),this.closeAllAccordions())}toggleAccordionItem(t,e){!function(t,e,i,n){"true"===t.getAttribute("aria-expanded")?(t.setAttribute("aria-expanded","false"),e.style.setProperty("display","none","important"),e.classList.remove("is-open"),e.setAttribute("aria-hidden","true"),i.openAccordions=i.openAccordions.filter(e=>e.button!==t),e.querySelectorAll('.priority-plus-navigation-accordion-toggle[aria-expanded="true"]').forEach(t=>{const e=t.getAttribute("aria-controls"),i=n.querySelector(`#${e}`);i&&(t.setAttribute("aria-expanded","false"),i.style.setProperty("display","none","important"),i.classList.remove("is-open"),i.setAttribute("aria-hidden","true"))})):(t.setAttribute("aria-expanded","true"),e.style.setProperty("display","block","important"),e.style.setProperty("opacity","1","important"),e.style.setProperty("visibility","visible","important"),e.style.setProperty("position","static","important"),e.classList.add("is-open"),e.setAttribute("aria-hidden","false"),i.openAccordions.push({button:t,submenu:e}))}(t,e,this,this.dropdown)}closeAllAccordions(){var t;(t=this).openAccordions.forEach(({button:t,submenu:e})=>{t.setAttribute("aria-expanded","false"),e.style.setProperty("display","none","important"),e.classList.remove("is-open"),e.setAttribute("aria-hidden","true")}),t.openAccordions=[]}destroy(){if(this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null),this.mutationObserver&&(this.mutationObserver.disconnect(),this.mutationObserver=null),this.retryTimeout&&(clearTimeout(this.retryTimeout),this.retryTimeout=null),this.eventHandlers){const{moreButtonClickHandler:t,documentClickHandler:e,documentKeydownHandler:i,dropdownClickHandler:n}=this.eventHandlers;this.moreButton&&t&&this.moreButton.removeEventListener("click",t),e&&document.removeEventListener("click",e,!0),i&&document.removeEventListener("keydown",i),this.dropdown&&n&&this.dropdown.removeEventListener("click",n)}}}const u=c;document.addEventListener("DOMContentLoaded",()=>{document.querySelectorAll(".wp-block-navigation.is-style-priority-plus-navigation").forEach(t=>new u(t))})}},i={};function n(t){var s=i[t];if(void 0!==s)return s.exports;var o=i[t]={exports:{}};return e[t](o,o.exports,n),o.exports}n.m=e,t=[],n.O=(e,i,s,o)=>{if(!i){var r=1/0;for(u=0;u=o)&&Object.keys(n.O).every(t=>n.O[t](i[l]))?i.splice(l--,1):(a=!1,o0&&t[u-1][2]>o;u--)t[u]=t[u-1];t[u]=[i,s,o]},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),(()=>{var t={935:0,950:0};n.O.j=e=>0===t[e];var e=(e,i)=>{var s,o,[r,a,l]=i,c=0;if(r.some(e=>0!==t[e])){for(s in a)n.o(a,s)&&(n.m[s]=a[s]);if(l)var u=l(n)}for(e&&e(i);cn(823));s=n.O(s)})();
\ No newline at end of file
diff --git a/build/style-priority-plus-nav-rtl.css b/build/style-priority-plus-nav-rtl.css
deleted file mode 100644
index 55f30d7..0000000
--- a/build/style-priority-plus-nav-rtl.css
+++ /dev/null
@@ -1 +0,0 @@
-.is-style-priority-nav{--priority-nav--background:transparent;--priority-nav--background-hover:transparent;--priority-nav--color:inherit;--priority-nav--color-hover:inherit;--priority-nav--border-color:transparent;--priority-nav--border-style:solid;--priority-nav--border-width:0;--priority-nav--border-radius:0;--priority-nav--font-family:inherit;--priority-nav--font-size:inherit;--priority-nav--font-weight:inherit;--priority-nav--padding:0;position:relative}.is-style-priority-nav .priority-nav-more-button{align-items:center;background:var(--priority-nav--background);border-color:var(--priority-nav--border-color);border-radius:var(--priority-nav--border-radius);border-style:var(--priority-nav--border-style);border-width:var(--priority-nav--border-width);color:var(--priority-nav--color);cursor:pointer;display:flex;font-family:var(--priority-nav--font-family);font-size:var(--priority-nav--font-size);font-weight:var(--priority-nav--font-weight);gap:.1rem;padding:var(--priority-nav--padding);transition:all .2s ease}.is-style-priority-nav .priority-nav-more-button:hover{background:var(--priority-nav--background-hover);color:var(--priority-nav--color-hover)}.is-style-priority-nav .priority-nav-more-button .priority-nav-icon{align-items:center;display:inline-flex;line-height:1;margin-left:-5px}.is-style-priority-nav .priority-nav-more-button .priority-nav-icon svg{fill:currentColor;height:1.25em;width:1.25em}.is-style-priority-nav .priority-nav-more-button[aria-expanded=true] .priority-nav-icon{transform:rotate(-180deg)}.is-style-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}.is-style-priority-nav .priority-nav-dropdown.is-open{opacity:1;transform:translateY(0);visibility:visible}.is-style-priority-nav .priority-nav-dropdown li{margin:0;padding:0}.is-style-priority-nav .priority-nav-dropdown li a{color:inherit;display:block;padding:.75rem 1rem;text-decoration:none;transition:background .2s ease}.is-style-priority-nav .priority-nav-dropdown li a:hover{background:rgba(0,0,0,.05)}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-content{background:transparent;display:none;list-style:none;margin:0;padding:0}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-content[aria-hidden=true]{display:none!important}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-content.is-open{display:block!important}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-content .priority-nav-accordion-content{padding-right:1rem}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-wrapper{align-items:center;display:flex;justify-content:space-between;width:100%}.is-style-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%}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-text{flex:1}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-arrow{margin-right:.5rem;transition:transform .2s ease}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full[aria-expanded=true] .priority-nav-accordion-arrow{transform:rotate(-90deg)}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-link{flex:1;padding:.75rem 1rem}.is-style-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}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-arrow .priority-nav-accordion-arrow{display:inline-block;transition:transform .2s ease}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-arrow[aria-expanded=true] .priority-nav-accordion-arrow{transform:rotate(-90deg)}.is-style-priority-nav[data-more-hidden=true] .priority-nav-more{display:none}
diff --git a/build/style-priority-plus-nav.css b/build/style-priority-plus-nav.css
deleted file mode 100644
index 8a9af63..0000000
--- a/build/style-priority-plus-nav.css
+++ /dev/null
@@ -1 +0,0 @@
-.is-style-priority-nav{--priority-nav--background:transparent;--priority-nav--background-hover:transparent;--priority-nav--color:inherit;--priority-nav--color-hover:inherit;--priority-nav--border-color:transparent;--priority-nav--border-style:solid;--priority-nav--border-width:0;--priority-nav--border-radius:0;--priority-nav--font-family:inherit;--priority-nav--font-size:inherit;--priority-nav--font-weight:inherit;--priority-nav--padding:0;position:relative}.is-style-priority-nav .priority-nav-more-button{align-items:center;background:var(--priority-nav--background);border-color:var(--priority-nav--border-color);border-radius:var(--priority-nav--border-radius);border-style:var(--priority-nav--border-style);border-width:var(--priority-nav--border-width);color:var(--priority-nav--color);cursor:pointer;display:flex;font-family:var(--priority-nav--font-family);font-size:var(--priority-nav--font-size);font-weight:var(--priority-nav--font-weight);gap:.1rem;padding:var(--priority-nav--padding);transition:all .2s ease}.is-style-priority-nav .priority-nav-more-button:hover{background:var(--priority-nav--background-hover);color:var(--priority-nav--color-hover)}.is-style-priority-nav .priority-nav-more-button .priority-nav-icon{align-items:center;display:inline-flex;line-height:1;margin-right:-5px}.is-style-priority-nav .priority-nav-more-button .priority-nav-icon svg{fill:currentColor;height:1.25em;width:1.25em}.is-style-priority-nav .priority-nav-more-button[aria-expanded=true] .priority-nav-icon{transform:rotate(180deg)}.is-style-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}.is-style-priority-nav .priority-nav-dropdown.is-open{opacity:1;transform:translateY(0);visibility:visible}.is-style-priority-nav .priority-nav-dropdown li{margin:0;padding:0}.is-style-priority-nav .priority-nav-dropdown li a{color:inherit;display:block;padding:.75rem 1rem;text-decoration:none;transition:background .2s ease}.is-style-priority-nav .priority-nav-dropdown li a:hover{background:rgba(0,0,0,.05)}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-content{background:transparent;display:none;list-style:none;margin:0;padding:0}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-content[aria-hidden=true]{display:none!important}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-content.is-open{display:block!important}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-content .priority-nav-accordion-content{padding-left:1rem}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-wrapper{align-items:center;display:flex;justify-content:space-between;width:100%}.is-style-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%}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-text{flex:1}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full .priority-nav-accordion-arrow{margin-left:.5rem;transition:transform .2s ease}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-full[aria-expanded=true] .priority-nav-accordion-arrow{transform:rotate(90deg)}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-link{flex:1;padding:.75rem 1rem}.is-style-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}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-arrow .priority-nav-accordion-arrow{display:inline-block;transition:transform .2s ease}.is-style-priority-nav .priority-nav-dropdown .priority-nav-accordion-toggle-arrow[aria-expanded=true] .priority-nav-accordion-arrow{transform:rotate(90deg)}.is-style-priority-nav[data-more-hidden=true] .priority-nav-more{display:none}
diff --git a/build/style-priority-plus-navigation-rtl.css b/build/style-priority-plus-navigation-rtl.css
new file mode 100644
index 0000000..9a1dfd8
--- /dev/null
+++ b/build/style-priority-plus-navigation-rtl.css
@@ -0,0 +1 @@
+.is-style-priority-plus-navigation{--priority-plus-navigation--background:transparent;--priority-plus-navigation--background-hover:transparent;--priority-plus-navigation--color:inherit;--priority-plus-navigation--color-hover:inherit;--priority-plus-navigation--border-color:transparent;--priority-plus-navigation--border-style:solid;--priority-plus-navigation--border-width:0;--priority-plus-navigation--border-radius:0;--priority-plus-navigation--font-family:inherit;--priority-plus-navigation--font-size:inherit;--priority-plus-navigation--font-weight:inherit;--priority-plus-navigation--padding:0;position:relative}.is-style-priority-plus-navigation .priority-plus-navigation-more-button{align-items:center;background:var(--priority-plus-navigation--background);border-color:var(--priority-plus-navigation--border-color);border-radius:var(--priority-plus-navigation--border-radius);border-style:var(--priority-plus-navigation--border-style);border-width:var(--priority-plus-navigation--border-width);color:var(--priority-plus-navigation--color);cursor:pointer;display:flex;font-family:var(--priority-plus-navigation--font-family);font-size:var(--priority-plus-navigation--font-size);font-weight:var(--priority-plus-navigation--font-weight);gap:.1rem;padding:var(--priority-plus-navigation--padding);transition:all .2s ease}.is-style-priority-plus-navigation .priority-plus-navigation-more-button:hover{background:var(--priority-plus-navigation--background-hover);color:var(--priority-plus-navigation--color-hover)}.is-style-priority-plus-navigation .priority-plus-navigation-more-button .priority-plus-navigation-icon{align-items:center;display:inline-flex;line-height:1;margin-left:-5px}.is-style-priority-plus-navigation .priority-plus-navigation-more-button .priority-plus-navigation-icon svg{fill:currentColor;height:1.25em;width:1.25em}.is-style-priority-plus-navigation .priority-plus-navigation-more-button[aria-expanded=true] .priority-plus-navigation-icon{transform:rotate(-180deg)}.is-style-priority-plus-navigation .priority-plus-navigation-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}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown.is-open{opacity:1;transform:translateY(0);visibility:visible}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown li{margin:0;padding:0}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown li a{color:inherit;display:block;padding:.75rem 1rem;text-decoration:none;transition:background .2s ease}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown li a:hover{background:rgba(0,0,0,.05)}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-content{background:transparent;display:none;list-style:none;margin:0;padding:0}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-content[aria-hidden=true]{display:none!important}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-content.is-open{display:block!important}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-content .priority-plus-navigation-accordion-content{padding-right:1rem}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-wrapper{align-items:center;display:flex;justify-content:space-between;width:100%}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-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%}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-toggle-full .priority-plus-navigation-accordion-text{flex:1}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-toggle-full .priority-plus-navigation-accordion-arrow{margin-right:.5rem;transition:transform .2s ease}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-toggle-full[aria-expanded=true] .priority-plus-navigation-accordion-arrow{transform:rotate(-90deg)}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-link{flex:1;padding:.75rem 1rem}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-toggle-arrow{background:transparent;border:none;color:inherit;cursor:pointer;flex-shrink:0;font-family:inherit;font-size:inherit;padding:.75rem}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-toggle-arrow .priority-plus-navigation-accordion-arrow{display:inline-block;transition:transform .2s ease}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-toggle-arrow[aria-expanded=true] .priority-plus-navigation-accordion-arrow{transform:rotate(-90deg)}.is-style-priority-plus-navigation[data-more-hidden=true] .priority-plus-navigation-more{display:none}
diff --git a/build/style-priority-plus-navigation.css b/build/style-priority-plus-navigation.css
new file mode 100644
index 0000000..3feaf60
--- /dev/null
+++ b/build/style-priority-plus-navigation.css
@@ -0,0 +1 @@
+.is-style-priority-plus-navigation{--priority-plus-navigation--background:transparent;--priority-plus-navigation--background-hover:transparent;--priority-plus-navigation--color:inherit;--priority-plus-navigation--color-hover:inherit;--priority-plus-navigation--border-color:transparent;--priority-plus-navigation--border-style:solid;--priority-plus-navigation--border-width:0;--priority-plus-navigation--border-radius:0;--priority-plus-navigation--font-family:inherit;--priority-plus-navigation--font-size:inherit;--priority-plus-navigation--font-weight:inherit;--priority-plus-navigation--padding:0;position:relative}.is-style-priority-plus-navigation .priority-plus-navigation-more-button{align-items:center;background:var(--priority-plus-navigation--background);border-color:var(--priority-plus-navigation--border-color);border-radius:var(--priority-plus-navigation--border-radius);border-style:var(--priority-plus-navigation--border-style);border-width:var(--priority-plus-navigation--border-width);color:var(--priority-plus-navigation--color);cursor:pointer;display:flex;font-family:var(--priority-plus-navigation--font-family);font-size:var(--priority-plus-navigation--font-size);font-weight:var(--priority-plus-navigation--font-weight);gap:.1rem;padding:var(--priority-plus-navigation--padding);transition:all .2s ease}.is-style-priority-plus-navigation .priority-plus-navigation-more-button:hover{background:var(--priority-plus-navigation--background-hover);color:var(--priority-plus-navigation--color-hover)}.is-style-priority-plus-navigation .priority-plus-navigation-more-button .priority-plus-navigation-icon{align-items:center;display:inline-flex;line-height:1;margin-right:-5px}.is-style-priority-plus-navigation .priority-plus-navigation-more-button .priority-plus-navigation-icon svg{fill:currentColor;height:1.25em;width:1.25em}.is-style-priority-plus-navigation .priority-plus-navigation-more-button[aria-expanded=true] .priority-plus-navigation-icon{transform:rotate(180deg)}.is-style-priority-plus-navigation .priority-plus-navigation-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}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown.is-open{opacity:1;transform:translateY(0);visibility:visible}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown li{margin:0;padding:0}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown li a{color:inherit;display:block;padding:.75rem 1rem;text-decoration:none;transition:background .2s ease}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown li a:hover{background:rgba(0,0,0,.05)}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-content{background:transparent;display:none;list-style:none;margin:0;padding:0}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-content[aria-hidden=true]{display:none!important}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-content.is-open{display:block!important}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-content .priority-plus-navigation-accordion-content{padding-left:1rem}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-wrapper{align-items:center;display:flex;justify-content:space-between;width:100%}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-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%}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-toggle-full .priority-plus-navigation-accordion-text{flex:1}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-toggle-full .priority-plus-navigation-accordion-arrow{margin-left:.5rem;transition:transform .2s ease}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-toggle-full[aria-expanded=true] .priority-plus-navigation-accordion-arrow{transform:rotate(90deg)}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-link{flex:1;padding:.75rem 1rem}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-toggle-arrow{background:transparent;border:none;color:inherit;cursor:pointer;flex-shrink:0;font-family:inherit;font-size:inherit;padding:.75rem}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-toggle-arrow .priority-plus-navigation-accordion-arrow{display:inline-block;transition:transform .2s ease}.is-style-priority-plus-navigation .priority-plus-navigation-dropdown .priority-plus-navigation-accordion-toggle-arrow[aria-expanded=true] .priority-plus-navigation-accordion-arrow{transform:rotate(90deg)}.is-style-priority-plus-navigation[data-more-hidden=true] .priority-plus-navigation-more{display:none}
diff --git a/classes/class-enqueues.php b/classes/class-enqueues.php
index 76f3e33..e793b22 100644
--- a/classes/class-enqueues.php
+++ b/classes/class-enqueues.php
@@ -2,17 +2,21 @@
/**
* Enqueue assets.
*
- * @package PriorityPlusNav
+ * @package PriorityPlusNavigation
*/
-namespace PriorityPlusNav;
+namespace PriorityPlusNavigation;
+
+if ( ! defined( 'ABSPATH' ) ) {
+ exit;
+}
/**
* Class Enqueues
*
* This class is responsible for enqueueing scripts and styles for the plugin.
*
- * @package PriorityPlusNav
+ * @package PriorityPlusNavigation
*/
class Enqueues extends Plugin_Module {
/**
@@ -47,22 +51,22 @@ public function init() {
}
/**
- * Enqueue editor assets for Priority+ Navigation extension.
+ * Enqueue editor assets for Priority Plus Navigation extension.
* Loads JS that extends core/navigation with Priority+ functionality.
*
* @return void
*/
public function enqueue_editor_assets(): void {
- $asset_script = $this->build_dir->get_asset_meta( 'priority-editor.js' );
- $asset_style = $this->build_dir->get_path( 'priority-editor.css' );
+ $asset_script = $this->build_dir->get_asset_meta( 'priority-plus-nav-editor.js' );
+ $asset_style = $this->build_dir->get_path( 'priority-plus-nav-editor.css' );
if ( ! $asset_script ) {
return;
}
wp_enqueue_script(
- 'priority-nav-editor',
- $this->build_dir->get_url( 'priority-editor.js' ),
+ 'priority-plus-nav-editor',
+ $this->build_dir->get_url( 'priority-plus-nav-editor.js' ),
$asset_script['dependencies'],
$asset_script['version'],
true
@@ -70,8 +74,8 @@ public function enqueue_editor_assets(): void {
if ( file_exists( $asset_style ) ) {
wp_enqueue_style(
- 'priority-nav-editor-style',
- $this->build_dir->get_url( 'priority-editor.css' ),
+ 'priority-plus-nav-editor-style',
+ $this->build_dir->get_url( 'priority-plus-nav-editor.css' ),
array(),
$asset_script['version']
);
@@ -89,7 +93,7 @@ private function enqueue_frontend_assets_once(): void {
return;
}
- $asset_meta = $this->build_dir->get_asset_meta( 'priority-plus-nav.js' );
+ $asset_meta = $this->build_dir->get_asset_meta( 'priority-plus-navigation.js' );
if ( ! $asset_meta ) {
return;
}
@@ -97,18 +101,18 @@ private function enqueue_frontend_assets_once(): void {
$this->frontend_assets_enqueued = true;
wp_enqueue_script(
- 'priority-plus-nav',
- $this->build_dir->get_url( 'priority-plus-nav.js' ),
+ 'priority-plus-navigation',
+ $this->build_dir->get_url( 'priority-plus-navigation.js' ),
$asset_meta['dependencies'],
$asset_meta['version'],
true
);
- $style_path = $this->build_dir->get_path( 'style-priority-plus-nav.css' );
+ $style_path = $this->build_dir->get_path( 'style-priority-plus-navigation.css' );
if ( file_exists( $style_path ) ) {
wp_enqueue_style(
- 'priority-plus-nav',
- $this->build_dir->get_url( 'style-priority-plus-nav.css' ),
+ 'priority-plus-navigation',
+ $this->build_dir->get_url( 'style-priority-plus-navigation.css' ),
array(),
$asset_meta['version']
);
@@ -138,7 +142,7 @@ public function render_block( string $block_content, array $block ): string {
$this->enqueue_frontend_assets_once();
// Get Priority+ configuration with defaults.
- $more_label = $this->get_priority_attr( $block, 'priorityNavMoreLabel', 'Browse' );
+ $more_label = $this->get_priority_attr( $block, 'priorityNavMoreLabel', 'More' );
$more_icon = $this->get_priority_attr( $block, 'priorityNavMoreIcon', 'none' );
$more_background_color = $this->get_priority_attr( $block, 'priorityNavMoreBackgroundColor', '' );
$more_background_color_hover = $this->get_priority_attr( $block, 'priorityNavMoreBackgroundColorHover', '' );
@@ -162,7 +166,7 @@ public function render_block( string $block_content, array $block ): string {
}
/**
- * Check if Priority+ Navigation is enabled for this block.
+ * Check if Priority Plus Navigation is enabled for this block.
*
* @param array $block The full block array.
* @return bool True if Priority+ is enabled.
@@ -183,7 +187,7 @@ private function is_priority_nav_enabled( array $block ): bool {
// Check for class name from block variation.
$class_name = $attrs['className'] ?? '';
- return false !== strpos( $class_name, 'is-style-priority-nav' );
+ return false !== strpos( $class_name, 'is-style-priority-plus-navigation' );
}
/**
@@ -291,49 +295,6 @@ private function padding_to_css( array $padding ): string {
return $top . ' ' . $right . ' ' . $bottom . ' ' . $left;
}
- /**
- * Convert border radius object to CSS value string.
- *
- * @param mixed $border_radius Border radius value (string or array with topLeft, topRight, bottomRight, bottomLeft).
- * @return string CSS border-radius value string.
- */
- private function border_radius_to_css( $border_radius ): string {
- // Handle string value.
- if ( is_string( $border_radius ) ) {
- return $border_radius;
- }
-
- // Handle array value.
- if ( ! is_array( $border_radius ) || empty( $border_radius ) ) {
- return '';
- }
-
- $top_left = isset( $border_radius['topLeft'] ) ? (string) $border_radius['topLeft'] : '';
- $top_right = isset( $border_radius['topRight'] ) ? (string) $border_radius['topRight'] : '';
- $bottom_right = isset( $border_radius['bottomRight'] ) ? (string) $border_radius['bottomRight'] : '';
- $bottom_left = isset( $border_radius['bottomLeft'] ) ? (string) $border_radius['bottomLeft'] : '';
-
- // If all values are empty, return empty string.
- if ( '' === $top_left && '' === $top_right && '' === $bottom_right && '' === $bottom_left ) {
- return '';
- }
-
- // If all values are the same and not empty, use single value shorthand.
- if ( '' !== $top_left && $top_left === $top_right && $top_right === $bottom_right && $bottom_right === $bottom_left ) {
- return $top_left;
- }
-
- // For partial radius or mixed values, we need all 4 values.
- // Use '0' for empty corners to ensure proper CSS.
- $top_left = '' !== $top_left ? $top_left : '0';
- $top_right = '' !== $top_right ? $top_right : '0';
- $bottom_right = '' !== $bottom_right ? $bottom_right : '0';
- $bottom_left = '' !== $bottom_left ? $bottom_left : '0';
-
- // CSS border-radius order: top-left, top-right, bottom-right, bottom-left.
- return $top_left . ' ' . $top_right . ' ' . $bottom_right . ' ' . $bottom_left;
- }
-
/**
* Inject Priority+ data attributes into the navigation element.
*
@@ -371,25 +332,25 @@ private function inject_priority_attributes( string $block_content, string $more
// Add our CSS custom properties.
if ( ! empty( $more_background_color ) ) {
$style_parts[] = sprintf(
- '--priority-nav--background: %s',
+ '--priority-plus-navigation--background: %s',
esc_attr( $more_background_color )
);
}
if ( ! empty( $more_background_color_hover ) ) {
$style_parts[] = sprintf(
- '--priority-nav--background-hover: %s',
+ '--priority-plus-navigation--background-hover: %s',
esc_attr( $more_background_color_hover )
);
}
if ( ! empty( $more_text_color ) ) {
$style_parts[] = sprintf(
- '--priority-nav--color: %s',
+ '--priority-plus-navigation--color: %s',
esc_attr( $more_text_color )
);
}
if ( ! empty( $more_text_color_hover ) ) {
$style_parts[] = sprintf(
- '--priority-nav--color-hover: %s',
+ '--priority-plus-navigation--color-hover: %s',
esc_attr( $more_text_color_hover )
);
}
@@ -401,7 +362,7 @@ private function inject_priority_attributes( string $block_content, string $more
// Only add if we got a non-empty CSS value (empty string means no padding was set).
if ( '' !== $padding_css ) {
$style_parts[] = sprintf(
- '--priority-nav--padding: %s',
+ '--priority-plus-navigation--padding: %s',
esc_attr( $padding_css )
);
}
diff --git a/classes/class-plugin-module.php b/classes/class-plugin-module.php
index 08cfb4c..77e974c 100644
--- a/classes/class-plugin-module.php
+++ b/classes/class-plugin-module.php
@@ -2,10 +2,14 @@
/**
* Base class for plugin modules which can be initialized.
*
- * @package PriorityPlusNav
+ * @package PriorityPlusNavigation
*/
-namespace PriorityPlusNav;
+namespace PriorityPlusNavigation;
+
+if ( ! defined( 'ABSPATH' ) ) {
+ exit;
+}
/**
* Plugin module extended by other classes.
diff --git a/classes/class-plugin-paths.php b/classes/class-plugin-paths.php
index c990d58..723c959 100644
--- a/classes/class-plugin-paths.php
+++ b/classes/class-plugin-paths.php
@@ -2,17 +2,21 @@
/**
* Resolve paths and URLs relative to plugin directories.
*
- * @package PriorityPlusNav
+ * @package PriorityPlusNavigation
*/
-namespace PriorityPlusNav;
+namespace PriorityPlusNavigation;
+
+if ( ! defined( 'ABSPATH' ) ) {
+ exit;
+}
/**
* Class Plugin_Paths
*
* This class provides methods to handle and retrieve various paths related to the plugin.
*
- * @package PriorityPlusNav
+ * @package PriorityPlusNavigation
*/
class Plugin_Paths {
diff --git a/composer.json b/composer.json
index 6b00c89..1691837 100644
--- a/composer.json
+++ b/composer.json
@@ -9,7 +9,7 @@
]
},
"require-dev": {
- "wp-coding-standards/wpcs": "^3.2"
+ "wp-coding-standards/wpcs": "^3.3.0"
},
"config": {
"allow-plugins": {
diff --git a/composer.lock b/composer.lock
index aab5935..ce4890a 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "3fb49ec95f3ab6f9118a0dc6b40e7666",
+ "content-hash": "f9d04d7e736903c2a373df2ce066c133",
"packages": [],
"packages-dev": [
{
diff --git a/docs/README.md b/docs/README.md
index defca2f..9439ca6 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -1,8 +1,8 @@
-# Priority+ Navigation - Documentation
+# Priority Plus Navigation - Documentation
## What is Priority+?
-Priority+ navigation is a responsive design pattern that solves a common problem: fitting many navigation items into limited horizontal space without immediately hiding everything behind a hamburger menu.
+Priority Plus Navigation is a responsive design pattern that solves a common problem: fitting many navigation items into limited horizontal space without immediately hiding everything behind a hamburger menu.
### The Problem
@@ -37,7 +37,7 @@ For detailed technical information, see [how-it-works.md](how-it-works.md).
1. **Block Variation Approach**
- Extends WordPress core navigation block
- No need to rebuild menus
- - Easy to convert between standard and Priority+ navigation
+ - Easy to convert between standard and Priority Plus Navigation
2. **Automatic Width Calculation**
- Measures navigation items on page load
diff --git a/docs/how-it-works.md b/docs/how-it-works.md
index 241fe95..26917de 100644
--- a/docs/how-it-works.md
+++ b/docs/how-it-works.md
@@ -1,12 +1,12 @@
-# How Priority+ Navigation Works
+# How Priority Plus Navigation Works
-This document explains how the Priority+ Navigation plugin implements the Priority+ design pattern in WordPress.
+This document explains how the Priority Plus Navigation plugin implements the Priority+ design pattern in WordPress.
## The Priority+ Pattern
### Concept
-Priority+ navigation prioritizes the most important navigation items by keeping them visible. As horizontal space decreases, less important items progressively move into a "More" dropdown menu.
+Priority Plus Navigation prioritizes the most important navigation items by keeping them visible. As horizontal space decreases, less important items progressively move into a "More" dropdown menu.
### Visual Example
@@ -67,7 +67,7 @@ Priority+ Variation
When the page loads, the Priority+ script:
```javascript
-// Find all Priority+ navigation blocks
+// Find all Priority Plus Navigation blocks
const navs = document.querySelectorAll('.is-style-priority-nav');
// Initialize each one
@@ -345,7 +345,7 @@ if (widths.some(w => w === 0)) {
## Summary
-The Priority+ Navigation plugin implements a sophisticated responsive pattern that:
+The Priority Plus Navigation plugin implements a sophisticated responsive pattern that:
1. **Measures** navigation items accurately
2. **Calculates** how many fit in available space
diff --git a/package-lock.json b/package-lock.json
index b29dce0..e1abbf1 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,24 +1,24 @@
{
- "name": "priority-plus-nav",
+ "name": "priority-plus-navigation",
"version": "0.1.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
- "name": "priority-plus-nav",
+ "name": "priority-plus-navigation",
"version": "0.1.0",
"license": "GPL-2.0-or-later",
"devDependencies": {
"@wordpress/env": "^10.33.0",
- "@wordpress/eslint-plugin": "22.21.0",
+ "@wordpress/eslint-plugin": "^22.21.0",
"@wordpress/i18n": "^6.6.0",
"@wordpress/icons": "^11.3.0",
- "@wordpress/prettier-config": "4.35.0",
+ "@wordpress/prettier-config": "^4.35.0",
"@wordpress/scripts": "^30.15.0",
- "@wordpress/stylelint-config": "23.27.0",
+ "@wordpress/stylelint-config": "^23.27.0",
"npm-run-all": "^4.1.5",
- "stylelint": "16.26.0",
- "stylelint-scss": "6.12.1"
+ "stylelint": "^16.26.0",
+ "stylelint-scss": "^6.12.1"
}
},
"node_modules/@ampproject/remapping": {
@@ -58,21 +58,21 @@
}
},
"node_modules/@babel/core": {
- "version": "7.25.7",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.7.tgz",
- "integrity": "sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow==",
+ "version": "7.28.5",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.5.tgz",
+ "integrity": "sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==",
"dev": true,
"dependencies": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.25.7",
- "@babel/generator": "^7.25.7",
- "@babel/helper-compilation-targets": "^7.25.7",
- "@babel/helper-module-transforms": "^7.25.7",
- "@babel/helpers": "^7.25.7",
- "@babel/parser": "^7.25.7",
- "@babel/template": "^7.25.7",
- "@babel/traverse": "^7.25.7",
- "@babel/types": "^7.25.7",
+ "@babel/code-frame": "^7.27.1",
+ "@babel/generator": "^7.28.5",
+ "@babel/helper-compilation-targets": "^7.27.2",
+ "@babel/helper-module-transforms": "^7.28.3",
+ "@babel/helpers": "^7.28.4",
+ "@babel/parser": "^7.28.5",
+ "@babel/template": "^7.27.2",
+ "@babel/traverse": "^7.28.5",
+ "@babel/types": "^7.28.5",
+ "@jridgewell/remapping": "^2.3.5",
"convert-source-map": "^2.0.0",
"debug": "^4.1.0",
"gensync": "^1.0.0-beta.2",
@@ -534,6 +534,30 @@
"@babel/core": "^7.0.0-0"
}
},
+ "node_modules/@babel/plugin-syntax-dynamic-import": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
+ "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-export-namespace-from": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz",
+ "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.3"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
"node_modules/@babel/plugin-syntax-import-assertions": {
"version": "7.27.1",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.27.1.tgz",
@@ -550,12 +574,12 @@
}
},
"node_modules/@babel/plugin-syntax-import-attributes": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz",
- "integrity": "sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==",
+ "version": "7.26.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz",
+ "integrity": "sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==",
"dev": true,
"dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
+ "@babel/helper-plugin-utils": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
@@ -961,22 +985,6 @@
"@babel/core": "^7.0.0-0"
}
},
- "node_modules/@babel/plugin-transform-explicit-resource-management": {
- "version": "7.28.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.28.0.tgz",
- "integrity": "sha512-K8nhUcn3f6iB+P3gwCv/no7OdzOZQcKchW6N389V6PD8NUWKZHzndOd9sPDVbMoBsbmjMqlB4L9fm+fEFNVlwQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1",
- "@babel/plugin-transform-destructuring": "^7.28.0"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
"node_modules/@babel/plugin-transform-exponentiation-operator": {
"version": "7.28.5",
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.28.5.tgz",
@@ -1387,16 +1395,16 @@
}
},
"node_modules/@babel/plugin-transform-react-jsx": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.27.1.tgz",
- "integrity": "sha512-2KH4LWGSrJIkVf5tSiBFYuXDAoWRq2MMwgivCf+93dd0GQi8RXLjKA/0EvRnVV5G0hrHczsquXuD01L8s6dmBw==",
+ "version": "7.25.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.25.7.tgz",
+ "integrity": "sha512-vILAg5nwGlR9EXE8JIOX4NHXd49lrYbN8hnjffDtoULwpL9hUx/N55nqh2qd0q6FyNDfjl9V79ecKGvFbcSA0Q==",
"dev": true,
"dependencies": {
- "@babel/helper-annotate-as-pure": "^7.27.1",
- "@babel/helper-module-imports": "^7.27.1",
- "@babel/helper-plugin-utils": "^7.27.1",
- "@babel/plugin-syntax-jsx": "^7.27.1",
- "@babel/types": "^7.27.1"
+ "@babel/helper-annotate-as-pure": "^7.25.7",
+ "@babel/helper-module-imports": "^7.25.7",
+ "@babel/helper-plugin-utils": "^7.25.7",
+ "@babel/plugin-syntax-jsx": "^7.25.7",
+ "@babel/types": "^7.25.7"
},
"engines": {
"node": ">=6.9.0"
@@ -1420,14 +1428,17 @@
"@babel/core": "^7.0.0-0"
}
},
- "node_modules/@babel/plugin-transform-react-pure-annotations": {
+ "node_modules/@babel/plugin-transform-react-jsx-development/node_modules/@babel/plugin-transform-react-jsx": {
"version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.27.1.tgz",
- "integrity": "sha512-JfuinvDOsD9FVMTHpzA/pBLisxpv1aSf+OIV8lgH3MuWrks19R27e6a6DipIg4aX1Zm9Wpb04p8wljfKrVSnPA==",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.27.1.tgz",
+ "integrity": "sha512-2KH4LWGSrJIkVf5tSiBFYuXDAoWRq2MMwgivCf+93dd0GQi8RXLjKA/0EvRnVV5G0hrHczsquXuD01L8s6dmBw==",
"dev": true,
"dependencies": {
"@babel/helper-annotate-as-pure": "^7.27.1",
- "@babel/helper-plugin-utils": "^7.27.1"
+ "@babel/helper-module-imports": "^7.27.1",
+ "@babel/helper-plugin-utils": "^7.27.1",
+ "@babel/plugin-syntax-jsx": "^7.27.1",
+ "@babel/types": "^7.27.1"
},
"engines": {
"node": ">=6.9.0"
@@ -1436,12 +1447,13 @@
"@babel/core": "^7.0.0-0"
}
},
- "node_modules/@babel/plugin-transform-regenerator": {
- "version": "7.28.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.28.4.tgz",
- "integrity": "sha512-+ZEdQlBoRg9m2NnzvEeLgtvBMO4tkFBw5SQIUgLICgTrumLoU7lr+Oghi6km2PFj+dbUt2u1oby2w3BDO9YQnA==",
+ "node_modules/@babel/plugin-transform-react-pure-annotations": {
+ "version": "7.27.1",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.27.1.tgz",
+ "integrity": "sha512-JfuinvDOsD9FVMTHpzA/pBLisxpv1aSf+OIV8lgH3MuWrks19R27e6a6DipIg4aX1Zm9Wpb04p8wljfKrVSnPA==",
"dev": true,
"dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.27.1",
"@babel/helper-plugin-utils": "^7.27.1"
},
"engines": {
@@ -1451,20 +1463,19 @@
"@babel/core": "^7.0.0-0"
}
},
- "node_modules/@babel/plugin-transform-regexp-modifiers": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.27.1.tgz",
- "integrity": "sha512-TtEciroaiODtXvLZv4rmfMhkCv8jx3wgKpL68PuiPh2M4fvz5jhsA7697N1gMvkvr/JTF13DrFYyEbY9U7cVPA==",
+ "node_modules/@babel/plugin-transform-regenerator": {
+ "version": "7.28.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.28.4.tgz",
+ "integrity": "sha512-+ZEdQlBoRg9m2NnzvEeLgtvBMO4tkFBw5SQIUgLICgTrumLoU7lr+Oghi6km2PFj+dbUt2u1oby2w3BDO9YQnA==",
"dev": true,
"dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.27.1",
"@babel/helper-plugin-utils": "^7.27.1"
},
"engines": {
"node": ">=6.9.0"
},
"peerDependencies": {
- "@babel/core": "^7.0.0"
+ "@babel/core": "^7.0.0-0"
}
},
"node_modules/@babel/plugin-transform-reserved-words": {
@@ -1502,19 +1513,6 @@
"@babel/core": "^7.0.0-0"
}
},
- "node_modules/@babel/plugin-transform-runtime/node_modules/babel-plugin-polyfill-corejs3": {
- "version": "0.10.6",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz",
- "integrity": "sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-define-polyfill-provider": "^0.6.2",
- "core-js-compat": "^3.38.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
- },
"node_modules/@babel/plugin-transform-shorthand-properties": {
"version": "7.27.1",
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.27.1.tgz",
@@ -1674,80 +1672,93 @@
}
},
"node_modules/@babel/preset-env": {
- "version": "7.28.5",
- "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.28.5.tgz",
- "integrity": "sha512-S36mOoi1Sb6Fz98fBfE+UZSpYw5mJm0NUHtIKrOuNcqeFauy1J6dIvXm2KRVKobOSaGq4t/hBXdN4HGU3wL9Wg==",
+ "version": "7.25.7",
+ "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.25.7.tgz",
+ "integrity": "sha512-Gibz4OUdyNqqLj+7OAvBZxOD7CklCtMA5/j0JgUEwOnaRULsPDXmic2iKxL2DX2vQduPR5wH2hjZas/Vr/Oc0g==",
"dev": true,
"dependencies": {
- "@babel/compat-data": "^7.28.5",
- "@babel/helper-compilation-targets": "^7.27.2",
- "@babel/helper-plugin-utils": "^7.27.1",
- "@babel/helper-validator-option": "^7.27.1",
- "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.28.5",
- "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.27.1",
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.27.1",
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.27.1",
- "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.28.3",
+ "@babel/compat-data": "^7.25.7",
+ "@babel/helper-compilation-targets": "^7.25.7",
+ "@babel/helper-plugin-utils": "^7.25.7",
+ "@babel/helper-validator-option": "^7.25.7",
+ "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.25.7",
+ "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.25.7",
+ "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.25.7",
+ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.25.7",
+ "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.25.7",
"@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2",
- "@babel/plugin-syntax-import-assertions": "^7.27.1",
- "@babel/plugin-syntax-import-attributes": "^7.27.1",
+ "@babel/plugin-syntax-async-generators": "^7.8.4",
+ "@babel/plugin-syntax-class-properties": "^7.12.13",
+ "@babel/plugin-syntax-class-static-block": "^7.14.5",
+ "@babel/plugin-syntax-dynamic-import": "^7.8.3",
+ "@babel/plugin-syntax-export-namespace-from": "^7.8.3",
+ "@babel/plugin-syntax-import-assertions": "^7.25.7",
+ "@babel/plugin-syntax-import-attributes": "^7.25.7",
+ "@babel/plugin-syntax-import-meta": "^7.10.4",
+ "@babel/plugin-syntax-json-strings": "^7.8.3",
+ "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
+ "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
+ "@babel/plugin-syntax-numeric-separator": "^7.10.4",
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
+ "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
+ "@babel/plugin-syntax-optional-chaining": "^7.8.3",
+ "@babel/plugin-syntax-private-property-in-object": "^7.14.5",
+ "@babel/plugin-syntax-top-level-await": "^7.14.5",
"@babel/plugin-syntax-unicode-sets-regex": "^7.18.6",
- "@babel/plugin-transform-arrow-functions": "^7.27.1",
- "@babel/plugin-transform-async-generator-functions": "^7.28.0",
- "@babel/plugin-transform-async-to-generator": "^7.27.1",
- "@babel/plugin-transform-block-scoped-functions": "^7.27.1",
- "@babel/plugin-transform-block-scoping": "^7.28.5",
- "@babel/plugin-transform-class-properties": "^7.27.1",
- "@babel/plugin-transform-class-static-block": "^7.28.3",
- "@babel/plugin-transform-classes": "^7.28.4",
- "@babel/plugin-transform-computed-properties": "^7.27.1",
- "@babel/plugin-transform-destructuring": "^7.28.5",
- "@babel/plugin-transform-dotall-regex": "^7.27.1",
- "@babel/plugin-transform-duplicate-keys": "^7.27.1",
- "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.27.1",
- "@babel/plugin-transform-dynamic-import": "^7.27.1",
- "@babel/plugin-transform-explicit-resource-management": "^7.28.0",
- "@babel/plugin-transform-exponentiation-operator": "^7.28.5",
- "@babel/plugin-transform-export-namespace-from": "^7.27.1",
- "@babel/plugin-transform-for-of": "^7.27.1",
- "@babel/plugin-transform-function-name": "^7.27.1",
- "@babel/plugin-transform-json-strings": "^7.27.1",
- "@babel/plugin-transform-literals": "^7.27.1",
- "@babel/plugin-transform-logical-assignment-operators": "^7.28.5",
- "@babel/plugin-transform-member-expression-literals": "^7.27.1",
- "@babel/plugin-transform-modules-amd": "^7.27.1",
- "@babel/plugin-transform-modules-commonjs": "^7.27.1",
- "@babel/plugin-transform-modules-systemjs": "^7.28.5",
- "@babel/plugin-transform-modules-umd": "^7.27.1",
- "@babel/plugin-transform-named-capturing-groups-regex": "^7.27.1",
- "@babel/plugin-transform-new-target": "^7.27.1",
- "@babel/plugin-transform-nullish-coalescing-operator": "^7.27.1",
- "@babel/plugin-transform-numeric-separator": "^7.27.1",
- "@babel/plugin-transform-object-rest-spread": "^7.28.4",
- "@babel/plugin-transform-object-super": "^7.27.1",
- "@babel/plugin-transform-optional-catch-binding": "^7.27.1",
- "@babel/plugin-transform-optional-chaining": "^7.28.5",
- "@babel/plugin-transform-parameters": "^7.27.7",
- "@babel/plugin-transform-private-methods": "^7.27.1",
- "@babel/plugin-transform-private-property-in-object": "^7.27.1",
- "@babel/plugin-transform-property-literals": "^7.27.1",
- "@babel/plugin-transform-regenerator": "^7.28.4",
- "@babel/plugin-transform-regexp-modifiers": "^7.27.1",
- "@babel/plugin-transform-reserved-words": "^7.27.1",
- "@babel/plugin-transform-shorthand-properties": "^7.27.1",
- "@babel/plugin-transform-spread": "^7.27.1",
- "@babel/plugin-transform-sticky-regex": "^7.27.1",
- "@babel/plugin-transform-template-literals": "^7.27.1",
- "@babel/plugin-transform-typeof-symbol": "^7.27.1",
- "@babel/plugin-transform-unicode-escapes": "^7.27.1",
- "@babel/plugin-transform-unicode-property-regex": "^7.27.1",
- "@babel/plugin-transform-unicode-regex": "^7.27.1",
- "@babel/plugin-transform-unicode-sets-regex": "^7.27.1",
+ "@babel/plugin-transform-arrow-functions": "^7.25.7",
+ "@babel/plugin-transform-async-generator-functions": "^7.25.7",
+ "@babel/plugin-transform-async-to-generator": "^7.25.7",
+ "@babel/plugin-transform-block-scoped-functions": "^7.25.7",
+ "@babel/plugin-transform-block-scoping": "^7.25.7",
+ "@babel/plugin-transform-class-properties": "^7.25.7",
+ "@babel/plugin-transform-class-static-block": "^7.25.7",
+ "@babel/plugin-transform-classes": "^7.25.7",
+ "@babel/plugin-transform-computed-properties": "^7.25.7",
+ "@babel/plugin-transform-destructuring": "^7.25.7",
+ "@babel/plugin-transform-dotall-regex": "^7.25.7",
+ "@babel/plugin-transform-duplicate-keys": "^7.25.7",
+ "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.25.7",
+ "@babel/plugin-transform-dynamic-import": "^7.25.7",
+ "@babel/plugin-transform-exponentiation-operator": "^7.25.7",
+ "@babel/plugin-transform-export-namespace-from": "^7.25.7",
+ "@babel/plugin-transform-for-of": "^7.25.7",
+ "@babel/plugin-transform-function-name": "^7.25.7",
+ "@babel/plugin-transform-json-strings": "^7.25.7",
+ "@babel/plugin-transform-literals": "^7.25.7",
+ "@babel/plugin-transform-logical-assignment-operators": "^7.25.7",
+ "@babel/plugin-transform-member-expression-literals": "^7.25.7",
+ "@babel/plugin-transform-modules-amd": "^7.25.7",
+ "@babel/plugin-transform-modules-commonjs": "^7.25.7",
+ "@babel/plugin-transform-modules-systemjs": "^7.25.7",
+ "@babel/plugin-transform-modules-umd": "^7.25.7",
+ "@babel/plugin-transform-named-capturing-groups-regex": "^7.25.7",
+ "@babel/plugin-transform-new-target": "^7.25.7",
+ "@babel/plugin-transform-nullish-coalescing-operator": "^7.25.7",
+ "@babel/plugin-transform-numeric-separator": "^7.25.7",
+ "@babel/plugin-transform-object-rest-spread": "^7.25.7",
+ "@babel/plugin-transform-object-super": "^7.25.7",
+ "@babel/plugin-transform-optional-catch-binding": "^7.25.7",
+ "@babel/plugin-transform-optional-chaining": "^7.25.7",
+ "@babel/plugin-transform-parameters": "^7.25.7",
+ "@babel/plugin-transform-private-methods": "^7.25.7",
+ "@babel/plugin-transform-private-property-in-object": "^7.25.7",
+ "@babel/plugin-transform-property-literals": "^7.25.7",
+ "@babel/plugin-transform-regenerator": "^7.25.7",
+ "@babel/plugin-transform-reserved-words": "^7.25.7",
+ "@babel/plugin-transform-shorthand-properties": "^7.25.7",
+ "@babel/plugin-transform-spread": "^7.25.7",
+ "@babel/plugin-transform-sticky-regex": "^7.25.7",
+ "@babel/plugin-transform-template-literals": "^7.25.7",
+ "@babel/plugin-transform-typeof-symbol": "^7.25.7",
+ "@babel/plugin-transform-unicode-escapes": "^7.25.7",
+ "@babel/plugin-transform-unicode-property-regex": "^7.25.7",
+ "@babel/plugin-transform-unicode-regex": "^7.25.7",
+ "@babel/plugin-transform-unicode-sets-regex": "^7.25.7",
"@babel/preset-modules": "0.1.6-no-external-plugins",
- "babel-plugin-polyfill-corejs2": "^0.4.14",
- "babel-plugin-polyfill-corejs3": "^0.13.0",
- "babel-plugin-polyfill-regenerator": "^0.6.5",
- "core-js-compat": "^3.43.0",
+ "babel-plugin-polyfill-corejs2": "^0.4.10",
+ "babel-plugin-polyfill-corejs3": "^0.10.6",
+ "babel-plugin-polyfill-regenerator": "^0.6.1",
+ "core-js-compat": "^3.38.1",
"semver": "^6.3.1"
},
"engines": {
@@ -1791,17 +1802,36 @@
"@babel/core": "^7.0.0-0"
}
},
- "node_modules/@babel/preset-typescript": {
- "version": "7.28.5",
- "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.28.5.tgz",
- "integrity": "sha512-+bQy5WOI2V6LJZpPVxY+yp66XdZ2yifu0Mc1aP5CQKgjn4QM5IN2i5fAZ4xKop47pr8rpVhiAeu+nDQa12C8+g==",
+ "node_modules/@babel/preset-react/node_modules/@babel/plugin-transform-react-jsx": {
+ "version": "7.27.1",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.27.1.tgz",
+ "integrity": "sha512-2KH4LWGSrJIkVf5tSiBFYuXDAoWRq2MMwgivCf+93dd0GQi8RXLjKA/0EvRnVV5G0hrHczsquXuD01L8s6dmBw==",
"dev": true,
"dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.27.1",
+ "@babel/helper-module-imports": "^7.27.1",
"@babel/helper-plugin-utils": "^7.27.1",
- "@babel/helper-validator-option": "^7.27.1",
"@babel/plugin-syntax-jsx": "^7.27.1",
- "@babel/plugin-transform-modules-commonjs": "^7.27.1",
- "@babel/plugin-transform-typescript": "^7.28.5"
+ "@babel/types": "^7.27.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/preset-typescript": {
+ "version": "7.25.7",
+ "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.25.7.tgz",
+ "integrity": "sha512-rkkpaXJZOFN45Fb+Gki0c+KMIglk4+zZXOoMJuyEK8y8Kkc8Jd3BDmP7qPsz0zQMJj+UD7EprF+AqAXcILnexw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.25.7",
+ "@babel/helper-validator-option": "^7.25.7",
+ "@babel/plugin-syntax-jsx": "^7.25.7",
+ "@babel/plugin-transform-modules-commonjs": "^7.25.7",
+ "@babel/plugin-transform-typescript": "^7.25.7"
},
"engines": {
"node": ">=6.9.0"
@@ -1862,15 +1892,15 @@
"dev": true
},
"node_modules/@cacheable/memory": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/@cacheable/memory/-/memory-2.0.6.tgz",
- "integrity": "sha512-7e8SScMocHxcAb8YhtkbMhGG+EKLRIficb1F5sjvhSYsWTZGxvg4KIDp8kgxnV2PUJ3ddPe6J9QESjKvBWRDkg==",
+ "version": "2.0.7",
+ "resolved": "https://registry.npmjs.org/@cacheable/memory/-/memory-2.0.7.tgz",
+ "integrity": "sha512-RbxnxAMf89Tp1dLhXMS7ceft/PGsDl1Ip7T20z5nZ+pwIAsQ1p2izPjVG69oCLv/jfQ7HDPHTWK0c9rcAWXN3A==",
"dev": true,
"dependencies": {
- "@cacheable/utils": "^2.3.2",
+ "@cacheable/utils": "^2.3.3",
"@keyv/bigmap": "^1.3.0",
- "hookified": "^1.13.0",
- "keyv": "^5.5.4"
+ "hookified": "^1.14.0",
+ "keyv": "^5.5.5"
}
},
"node_modules/@cacheable/memory/node_modules/@keyv/bigmap": {
@@ -1899,13 +1929,13 @@
}
},
"node_modules/@cacheable/utils": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/@cacheable/utils/-/utils-2.3.2.tgz",
- "integrity": "sha512-8kGE2P+HjfY8FglaOiW+y8qxcaQAfAhVML+i66XJR3YX5FtyDqn6Txctr3K2FrbxLKixRRYYBWMbuGciOhYNDg==",
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/@cacheable/utils/-/utils-2.3.3.tgz",
+ "integrity": "sha512-JsXDL70gQ+1Vc2W/KUFfkAJzgb4puKwwKehNLuB+HrNKWf91O736kGfxn4KujXCCSuh6mRRL4XEB0PkAFjWS0A==",
"dev": true,
"dependencies": {
- "hashery": "^1.2.0",
- "keyv": "^5.5.4"
+ "hashery": "^1.3.0",
+ "keyv": "^5.5.5"
}
},
"node_modules/@cacheable/utils/node_modules/keyv": {
@@ -1939,10 +1969,10 @@
"@csstools/css-tokenizer": "^3.0.4"
}
},
- "node_modules/@csstools/css-tokenizer": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz",
- "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==",
+ "node_modules/@csstools/css-syntax-patches-for-csstree": {
+ "version": "1.0.22",
+ "resolved": "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.0.22.tgz",
+ "integrity": "sha512-qBcx6zYlhleiFfdtzkRgwNC7VVoAwfK76Vmsw5t+PbvtdknO9StgRk7ROvq9so1iqbdW4uLIDAsXRsTfUrIoOw==",
"dev": true,
"funding": [
{
@@ -1958,10 +1988,10 @@
"node": ">=18"
}
},
- "node_modules/@csstools/media-query-list-parser": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-3.0.1.tgz",
- "integrity": "sha512-HNo8gGD02kHmcbX6PvCoUuOQvn4szyB9ca63vZHKX5A81QytgDG4oxG4IaEfHTlEZSZ6MjPEMWIVU+zF2PZcgw==",
+ "node_modules/@csstools/css-tokenizer": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz",
+ "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==",
"dev": true,
"funding": [
{
@@ -1975,8 +2005,27 @@
],
"engines": {
"node": ">=18"
- },
- "peerDependencies": {
+ }
+ },
+ "node_modules/@csstools/media-query-list-parser": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-3.0.1.tgz",
+ "integrity": "sha512-HNo8gGD02kHmcbX6PvCoUuOQvn4szyB9ca63vZHKX5A81QytgDG4oxG4IaEfHTlEZSZ6MjPEMWIVU+zF2PZcgw==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "engines": {
+ "node": ">=18"
+ },
+ "peerDependencies": {
"@csstools/css-parser-algorithms": "^3.0.1",
"@csstools/css-tokenizer": "^3.0.1"
}
@@ -2046,9 +2095,9 @@
}
},
"node_modules/@eslint-community/eslint-utils": {
- "version": "4.9.0",
- "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz",
- "integrity": "sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==",
+ "version": "4.9.1",
+ "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz",
+ "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==",
"dev": true,
"dependencies": {
"eslint-visitor-keys": "^3.4.3"
@@ -2393,32 +2442,6 @@
}
}
},
- "node_modules/@inquirer/core/node_modules/signal-exit": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
- "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
- "dev": true,
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@inquirer/core/node_modules/wrap-ansi": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
- "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/@inquirer/editor": {
"version": "4.2.23",
"resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-4.2.23.tgz",
@@ -2484,22 +2507,6 @@
}
}
},
- "node_modules/@inquirer/external-editor/node_modules/iconv-lite": {
- "version": "0.7.1",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.1.tgz",
- "integrity": "sha512-2Tth85cXwGFHfvRgZWszZSvdo+0Xsqmw8k8ZwxScfcBneNUraK+dxRxRm24nszx80Y0TVio8kKLt5sLE7ZCLlw==",
- "dev": true,
- "dependencies": {
- "safer-buffer": ">= 2.1.2 < 3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/express"
- }
- },
"node_modules/@inquirer/figures": {
"version": "1.0.15",
"resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.15.tgz",
@@ -3128,6 +3135,16 @@
"@jridgewell/trace-mapping": "^0.3.24"
}
},
+ "node_modules/@jridgewell/remapping": {
+ "version": "2.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz",
+ "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==",
+ "dev": true,
+ "dependencies": {
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.24"
+ }
+ },
"node_modules/@jridgewell/resolve-uri": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
@@ -4239,6 +4256,26 @@
"node": ">=18"
}
},
+ "node_modules/@puppeteer/browsers/node_modules/extract-zip": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz",
+ "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==",
+ "dev": true,
+ "dependencies": {
+ "debug": "^4.1.1",
+ "get-stream": "^5.1.0",
+ "yauzl": "^2.10.0"
+ },
+ "bin": {
+ "extract-zip": "cli.js"
+ },
+ "engines": {
+ "node": ">= 10.17.0"
+ },
+ "optionalDependencies": {
+ "@types/yauzl": "^2.9.1"
+ }
+ },
"node_modules/@puppeteer/browsers/node_modules/semver": {
"version": "7.7.3",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz",
@@ -4592,6 +4629,50 @@
"url": "https://github.com/sponsors/gregberge"
}
},
+ "node_modules/@svgr/core/node_modules/argparse": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
+ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
+ "dev": true
+ },
+ "node_modules/@svgr/core/node_modules/cosmiconfig": {
+ "version": "8.3.6",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz",
+ "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==",
+ "dev": true,
+ "dependencies": {
+ "import-fresh": "^3.3.0",
+ "js-yaml": "^4.1.0",
+ "parse-json": "^5.2.0",
+ "path-type": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/d-fischer"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.9.5"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@svgr/core/node_modules/js-yaml": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
+ "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
+ "dev": true,
+ "dependencies": {
+ "argparse": "^2.0.1"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
"node_modules/@svgr/hast-util-to-babel-ast": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-8.0.0.tgz",
@@ -4652,6 +4733,50 @@
"@svgr/core": "*"
}
},
+ "node_modules/@svgr/plugin-svgo/node_modules/argparse": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
+ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
+ "dev": true
+ },
+ "node_modules/@svgr/plugin-svgo/node_modules/cosmiconfig": {
+ "version": "8.3.6",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz",
+ "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==",
+ "dev": true,
+ "dependencies": {
+ "import-fresh": "^3.3.0",
+ "js-yaml": "^4.1.0",
+ "parse-json": "^5.2.0",
+ "path-type": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/d-fischer"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.9.5"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@svgr/plugin-svgo/node_modules/js-yaml": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
+ "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
+ "dev": true,
+ "dependencies": {
+ "argparse": "^2.0.1"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
"node_modules/@svgr/webpack": {
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-8.1.0.tgz",
@@ -5920,9 +6045,9 @@
}
},
"node_modules/@wordpress/babel-preset-default": {
- "version": "8.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-8.36.0.tgz",
- "integrity": "sha512-3eW05rwGIzdSGzyDNZA0jouFYhiURoCgRE34LVL5vs9VgW3lQ92IfZLDHHot69NWUGImpEI2lpgJXNsp25Yf4Q==",
+ "version": "8.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-8.37.0.tgz",
+ "integrity": "sha512-tPLa2YFAau+gT2zKovRK5DRiJchsKgNFiuElIWeKYkLytkyws9fQAgjF/AkDFFxRMdDocNfCscpKWhp79+tIFA==",
"dev": true,
"dependencies": {
"@babel/core": "7.25.7",
@@ -5931,8 +6056,8 @@
"@babel/plugin-transform-runtime": "7.25.7",
"@babel/preset-env": "7.25.7",
"@babel/preset-typescript": "7.25.7",
- "@wordpress/browserslist-config": "^6.36.0",
- "@wordpress/warning": "^3.36.0",
+ "@wordpress/browserslist-config": "^6.37.0",
+ "@wordpress/warning": "^3.37.0",
"browserslist": "^4.21.10",
"core-js": "^3.31.0",
"react": "^18.3.0"
@@ -5942,197 +6067,40 @@
"npm": ">=8.19.2"
}
},
- "node_modules/@wordpress/babel-preset-default/node_modules/@babel/plugin-syntax-import-attributes": {
- "version": "7.26.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz",
- "integrity": "sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.25.9"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@wordpress/babel-preset-default/node_modules/@babel/plugin-transform-react-jsx": {
+ "node_modules/@wordpress/babel-preset-default/node_modules/@babel/core": {
"version": "7.25.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.25.7.tgz",
- "integrity": "sha512-vILAg5nwGlR9EXE8JIOX4NHXd49lrYbN8hnjffDtoULwpL9hUx/N55nqh2qd0q6FyNDfjl9V79ecKGvFbcSA0Q==",
- "dev": true,
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.25.7",
- "@babel/helper-module-imports": "^7.25.7",
- "@babel/helper-plugin-utils": "^7.25.7",
- "@babel/plugin-syntax-jsx": "^7.25.7",
- "@babel/types": "^7.25.7"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@wordpress/babel-preset-default/node_modules/@babel/preset-env": {
- "version": "7.25.7",
- "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.25.7.tgz",
- "integrity": "sha512-Gibz4OUdyNqqLj+7OAvBZxOD7CklCtMA5/j0JgUEwOnaRULsPDXmic2iKxL2DX2vQduPR5wH2hjZas/Vr/Oc0g==",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.7.tgz",
+ "integrity": "sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow==",
"dev": true,
"dependencies": {
- "@babel/compat-data": "^7.25.7",
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.25.7",
+ "@babel/generator": "^7.25.7",
"@babel/helper-compilation-targets": "^7.25.7",
- "@babel/helper-plugin-utils": "^7.25.7",
- "@babel/helper-validator-option": "^7.25.7",
- "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.25.7",
- "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.25.7",
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.25.7",
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.25.7",
- "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.25.7",
- "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2",
- "@babel/plugin-syntax-async-generators": "^7.8.4",
- "@babel/plugin-syntax-class-properties": "^7.12.13",
- "@babel/plugin-syntax-class-static-block": "^7.14.5",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3",
- "@babel/plugin-syntax-import-assertions": "^7.25.7",
- "@babel/plugin-syntax-import-attributes": "^7.25.7",
- "@babel/plugin-syntax-import-meta": "^7.10.4",
- "@babel/plugin-syntax-json-strings": "^7.8.3",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5",
- "@babel/plugin-syntax-top-level-await": "^7.14.5",
- "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6",
- "@babel/plugin-transform-arrow-functions": "^7.25.7",
- "@babel/plugin-transform-async-generator-functions": "^7.25.7",
- "@babel/plugin-transform-async-to-generator": "^7.25.7",
- "@babel/plugin-transform-block-scoped-functions": "^7.25.7",
- "@babel/plugin-transform-block-scoping": "^7.25.7",
- "@babel/plugin-transform-class-properties": "^7.25.7",
- "@babel/plugin-transform-class-static-block": "^7.25.7",
- "@babel/plugin-transform-classes": "^7.25.7",
- "@babel/plugin-transform-computed-properties": "^7.25.7",
- "@babel/plugin-transform-destructuring": "^7.25.7",
- "@babel/plugin-transform-dotall-regex": "^7.25.7",
- "@babel/plugin-transform-duplicate-keys": "^7.25.7",
- "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.25.7",
- "@babel/plugin-transform-dynamic-import": "^7.25.7",
- "@babel/plugin-transform-exponentiation-operator": "^7.25.7",
- "@babel/plugin-transform-export-namespace-from": "^7.25.7",
- "@babel/plugin-transform-for-of": "^7.25.7",
- "@babel/plugin-transform-function-name": "^7.25.7",
- "@babel/plugin-transform-json-strings": "^7.25.7",
- "@babel/plugin-transform-literals": "^7.25.7",
- "@babel/plugin-transform-logical-assignment-operators": "^7.25.7",
- "@babel/plugin-transform-member-expression-literals": "^7.25.7",
- "@babel/plugin-transform-modules-amd": "^7.25.7",
- "@babel/plugin-transform-modules-commonjs": "^7.25.7",
- "@babel/plugin-transform-modules-systemjs": "^7.25.7",
- "@babel/plugin-transform-modules-umd": "^7.25.7",
- "@babel/plugin-transform-named-capturing-groups-regex": "^7.25.7",
- "@babel/plugin-transform-new-target": "^7.25.7",
- "@babel/plugin-transform-nullish-coalescing-operator": "^7.25.7",
- "@babel/plugin-transform-numeric-separator": "^7.25.7",
- "@babel/plugin-transform-object-rest-spread": "^7.25.7",
- "@babel/plugin-transform-object-super": "^7.25.7",
- "@babel/plugin-transform-optional-catch-binding": "^7.25.7",
- "@babel/plugin-transform-optional-chaining": "^7.25.7",
- "@babel/plugin-transform-parameters": "^7.25.7",
- "@babel/plugin-transform-private-methods": "^7.25.7",
- "@babel/plugin-transform-private-property-in-object": "^7.25.7",
- "@babel/plugin-transform-property-literals": "^7.25.7",
- "@babel/plugin-transform-regenerator": "^7.25.7",
- "@babel/plugin-transform-reserved-words": "^7.25.7",
- "@babel/plugin-transform-shorthand-properties": "^7.25.7",
- "@babel/plugin-transform-spread": "^7.25.7",
- "@babel/plugin-transform-sticky-regex": "^7.25.7",
- "@babel/plugin-transform-template-literals": "^7.25.7",
- "@babel/plugin-transform-typeof-symbol": "^7.25.7",
- "@babel/plugin-transform-unicode-escapes": "^7.25.7",
- "@babel/plugin-transform-unicode-property-regex": "^7.25.7",
- "@babel/plugin-transform-unicode-regex": "^7.25.7",
- "@babel/plugin-transform-unicode-sets-regex": "^7.25.7",
- "@babel/preset-modules": "0.1.6-no-external-plugins",
- "babel-plugin-polyfill-corejs2": "^0.4.10",
- "babel-plugin-polyfill-corejs3": "^0.10.6",
- "babel-plugin-polyfill-regenerator": "^0.6.1",
- "core-js-compat": "^3.38.1",
+ "@babel/helper-module-transforms": "^7.25.7",
+ "@babel/helpers": "^7.25.7",
+ "@babel/parser": "^7.25.7",
+ "@babel/template": "^7.25.7",
+ "@babel/traverse": "^7.25.7",
+ "@babel/types": "^7.25.7",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
"semver": "^6.3.1"
},
"engines": {
"node": ">=6.9.0"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@wordpress/babel-preset-default/node_modules/@babel/preset-env/node_modules/@babel/plugin-syntax-dynamic-import": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
- "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@wordpress/babel-preset-default/node_modules/@babel/preset-env/node_modules/@babel/plugin-syntax-export-namespace-from": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz",
- "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.3"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@wordpress/babel-preset-default/node_modules/@babel/preset-env/node_modules/babel-plugin-polyfill-corejs3": {
- "version": "0.10.6",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz",
- "integrity": "sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-define-polyfill-provider": "^0.6.2",
- "core-js-compat": "^3.38.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
- },
- "node_modules/@wordpress/babel-preset-default/node_modules/@babel/preset-typescript": {
- "version": "7.25.7",
- "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.25.7.tgz",
- "integrity": "sha512-rkkpaXJZOFN45Fb+Gki0c+KMIglk4+zZXOoMJuyEK8y8Kkc8Jd3BDmP7qPsz0zQMJj+UD7EprF+AqAXcILnexw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.25.7",
- "@babel/helper-validator-option": "^7.25.7",
- "@babel/plugin-syntax-jsx": "^7.25.7",
- "@babel/plugin-transform-modules-commonjs": "^7.25.7",
- "@babel/plugin-transform-typescript": "^7.25.7"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
}
},
"node_modules/@wordpress/base-styles": {
- "version": "6.12.0",
- "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-6.12.0.tgz",
- "integrity": "sha512-61Bdj2kYow/iOjFTj5DkEpPYYMjTjr4F+YqZHDRaCJ+ZQ2oYuBmP20gkQ3M4aoTz6TqksWwzfJGjdhP+Kc0USg==",
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-6.13.0.tgz",
+ "integrity": "sha512-+APLd5GqzzJ/atVVs3LGPcCRRy8mVfVQi1QY+cseNAQbRe4LvsDarLbzkblWEwuksxgUGmVGDC3fDNxrwszJ2A==",
"dev": true,
"engines": {
"node": ">=18.12.0",
@@ -6140,9 +6108,9 @@
}
},
"node_modules/@wordpress/browserslist-config": {
- "version": "6.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-6.36.0.tgz",
- "integrity": "sha512-EovRSDgVb8c5U+srAHK4FsU4Rt7dtYylgNxcLhbV4dmHFuHpipAvYBUkNP9DdlBYd2lMCiCNhtsnSyJXHbdvlg==",
+ "version": "6.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-6.37.0.tgz",
+ "integrity": "sha512-L//FRak9bo+sDLAignC4QkhITHgeFVlL0C4lWI/AM+AIHKGrHT4LOdwwNpYWMkkztW9rxHRptGkF/JDxuCakxQ==",
"dev": true,
"engines": {
"node": ">=18.12.0",
@@ -6150,9 +6118,9 @@
}
},
"node_modules/@wordpress/dependency-extraction-webpack-plugin": {
- "version": "6.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-6.36.0.tgz",
- "integrity": "sha512-x59HhuZflt6gjm74m5ymuJgLsfvY0pwYhfy42SfrYN/V59vXkl5S6jEmzhlUsdDGVrQG6lSVDJm7n5btohPXvg==",
+ "version": "6.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-6.37.0.tgz",
+ "integrity": "sha512-N9DTLr07AYV9vo/kFVSKYp/+wg2wBHL4ekDldwx2rGNtOHjoSi1oo+iBmStSaKMRtCQX2Xq8xVFH04+53T0yXA==",
"dev": true,
"dependencies": {
"json2php": "^0.0.7"
@@ -6172,9 +6140,9 @@
"dev": true
},
"node_modules/@wordpress/e2e-test-utils-playwright": {
- "version": "1.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-1.36.0.tgz",
- "integrity": "sha512-K0DVhz96wD0qXRXZwqF/HpeYi4A+1e2yv+cvfqbSYs6+Q8t9z7XyVpgRDqj08ZrTpOOsFL5g/SFEtyY9iMnNsw==",
+ "version": "1.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-1.37.0.tgz",
+ "integrity": "sha512-H77He9+sPNchzbEeFk2YSuYW5JNk3oHnlXJ1EVPUHpIZTr6gM80AGBuxP/W4WtWdLn0A5/TxCmTAxsN1M8YVvQ==",
"dev": true,
"dependencies": {
"change-case": "^4.1.2",
@@ -6192,14 +6160,14 @@
}
},
"node_modules/@wordpress/element": {
- "version": "6.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-6.36.0.tgz",
- "integrity": "sha512-6Ym/Ucik49skz1XJ2GRXENoMjJx7EYnY+fbfor9KtChiCd9/3H4/rI4sZgewVPIO//fCKEk7G30HoR+xB7GZMQ==",
+ "version": "6.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-6.37.0.tgz",
+ "integrity": "sha512-8+hvjtbsPX1Jz55a5uJi6o8jNOaGlAUwV55lUJsH+iE3OHA6PyE6r9atosGRRHvfXPDlKA5ckfbrtoh7h586GA==",
"dev": true,
"dependencies": {
"@types/react": "^18.2.79",
"@types/react-dom": "^18.2.25",
- "@wordpress/escape-html": "^3.36.0",
+ "@wordpress/escape-html": "^3.37.0",
"change-case": "^4.1.2",
"is-plain-object": "^5.0.0",
"react": "^18.3.0",
@@ -6211,9 +6179,9 @@
}
},
"node_modules/@wordpress/env": {
- "version": "10.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-10.36.0.tgz",
- "integrity": "sha512-qZ3RNA6HC+PI7qVip96cQuv2gjpGZXKT1do9NZlLArgEoxQxep8zFMs3MdaE1+PK7y6He2KoiUWzN4cSXY9QMg==",
+ "version": "10.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-10.37.0.tgz",
+ "integrity": "sha512-yc7jtneBI2JD+tOtLiSQRsh4AcUVjEf2epOZSWQl8FoO6XWsEYtCzshpPXR8GHnq0uWBsjZ7LLdhk2WzE83UVw==",
"dev": true,
"dependencies": {
"@inquirer/prompts": "^7.2.0",
@@ -6237,90 +6205,10 @@
"npm": ">=8.19.2"
}
},
- "node_modules/@wordpress/env/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/@wordpress/env/node_modules/extract-zip": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz",
- "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==",
- "dev": true,
- "dependencies": {
- "concat-stream": "^1.6.2",
- "debug": "^2.6.9",
- "mkdirp": "^0.5.4",
- "yauzl": "^2.10.0"
- },
- "bin": {
- "extract-zip": "cli.js"
- }
- },
- "node_modules/@wordpress/env/node_modules/glob": {
- "version": "10.5.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz",
- "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==",
- "dev": true,
- "dependencies": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^3.1.2",
- "minimatch": "^9.0.4",
- "minipass": "^7.1.2",
- "package-json-from-dist": "^1.0.0",
- "path-scurry": "^1.11.1"
- },
- "bin": {
- "glob": "dist/esm/bin.mjs"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@wordpress/env/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@wordpress/env/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true
- },
- "node_modules/@wordpress/env/node_modules/rimraf": {
- "version": "5.0.10",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz",
- "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==",
- "dev": true,
- "dependencies": {
- "glob": "^10.3.7"
- },
- "bin": {
- "rimraf": "dist/esm/bin.mjs"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
"node_modules/@wordpress/escape-html": {
- "version": "3.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-3.36.0.tgz",
- "integrity": "sha512-0FvvlVPv+7X8lX5ExcTh6ib/xckGIuVXdnHglR3rZC1MJI682cx4JRUR0Igk6nKyPS8UiSQCKtN3U1aSPtZaCg==",
+ "version": "3.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-3.37.0.tgz",
+ "integrity": "sha512-hJ2yytDPaZ7Gx+Zj+1iUBzZYED+323MTFbkpydJecWA48K+cNyutEEuHPi9bzmJXirI0YSnkN5i1tZoYQPTiGQ==",
"dev": true,
"engines": {
"node": ">=18.12.0",
@@ -6328,16 +6216,16 @@
}
},
"node_modules/@wordpress/eslint-plugin": {
- "version": "22.21.0",
- "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-22.21.0.tgz",
- "integrity": "sha512-CvX26FcnpiSmN2ASVfFXA5OoqV7GWM6Ifxye1W+bfBYVgcaT3fO75WiGcTYHHqQM/6W1VxXAoyInLpluMtmejg==",
+ "version": "22.22.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-22.22.0.tgz",
+ "integrity": "sha512-DLGm5i8Gn0vjkZGKF49U2pYME5Jl9AvmoMJB2G508d+sB/oTSkPmM0baUP7G5zxbd1aqfNTaD0KjdyGyWFFKOA==",
"dev": true,
"dependencies": {
"@babel/eslint-parser": "7.25.7",
"@typescript-eslint/eslint-plugin": "^6.4.1",
"@typescript-eslint/parser": "^6.4.1",
- "@wordpress/babel-preset-default": "^8.35.0",
- "@wordpress/prettier-config": "^4.35.0",
+ "@wordpress/babel-preset-default": "^8.36.0",
+ "@wordpress/prettier-config": "^4.36.0",
"cosmiconfig": "^7.0.0",
"eslint-config-prettier": "^8.3.0",
"eslint-import-resolver-typescript": "^4.4.4",
@@ -6371,26 +6259,10 @@
}
}
},
- "node_modules/@wordpress/eslint-plugin/node_modules/cosmiconfig": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz",
- "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==",
- "dev": true,
- "dependencies": {
- "@types/parse-json": "^4.0.0",
- "import-fresh": "^3.2.1",
- "parse-json": "^5.0.0",
- "path-type": "^4.0.0",
- "yaml": "^1.10.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/@wordpress/hooks": {
- "version": "4.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-4.36.0.tgz",
- "integrity": "sha512-9kB2lanmVrubJEqWDSHtyUx7q4ZAWGArakY/GsUdlFsnf9m+VmQLQl92uCpHWYjKzHec1hwcBhBB3Tu9aBWDtQ==",
+ "version": "4.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-4.37.0.tgz",
+ "integrity": "sha512-MJpPAT7hQZS5JBnQm4/f5bHSETofGOw5zt7/mNoSEby5z3yTiIyEmBmzNo4Lu1xzIiU+g0OGmkBaOvn42LBibg==",
"dev": true,
"engines": {
"node": ">=18.12.0",
@@ -6398,13 +6270,13 @@
}
},
"node_modules/@wordpress/i18n": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@wordpress/i18n/-/i18n-6.9.0.tgz",
- "integrity": "sha512-ke4BPQUHmj82mwYoasotKt3Sghf0jK4vec56cWxwnzUvqq7LMy/0H7F5NzJ4CY378WS+TOdLbqmIb4sj+f7eog==",
+ "version": "6.10.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/i18n/-/i18n-6.10.0.tgz",
+ "integrity": "sha512-5tLAtnRQNxzA/d0GvVWCyo34Jb18w7xWTnup8hlh1+ehp7ZYTWR1QJihzVAteHoyrxAbTmzzsKyNtr8m+4ZpSQ==",
"dev": true,
"dependencies": {
"@tannin/sprintf": "^1.3.2",
- "@wordpress/hooks": "^4.36.0",
+ "@wordpress/hooks": "^4.37.0",
"gettext-parser": "^1.3.1",
"memize": "^2.1.0",
"tannin": "^1.2.0"
@@ -6418,13 +6290,13 @@
}
},
"node_modules/@wordpress/icons": {
- "version": "11.3.0",
- "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-11.3.0.tgz",
- "integrity": "sha512-ortBmmzg0855houBuJyR1v1WgKjUiPzBTGUbzOAEeNlOoisXaQO0hLIL7L8vFcd2L46i8PQHPvwpL5ifFTSC+g==",
+ "version": "11.4.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-11.4.0.tgz",
+ "integrity": "sha512-3sis5bwTyDOrLy83Mp799NNJuEgbTOWwHpxnGNmabEDA3BbBYPnr0soSGSFe201nqNKiVwL/TcpRaQ91SoEHTQ==",
"dev": true,
"dependencies": {
- "@wordpress/element": "^6.36.0",
- "@wordpress/primitives": "^4.36.0"
+ "@wordpress/element": "^6.37.0",
+ "@wordpress/primitives": "^4.37.0"
},
"engines": {
"node": ">=18.12.0",
@@ -6435,9 +6307,9 @@
}
},
"node_modules/@wordpress/jest-console": {
- "version": "8.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-8.36.0.tgz",
- "integrity": "sha512-BbIWsIaof5IB42pA1UOFLVJSr5oYkhrDJBs/hRl01hhHL655z6pvokXk/Hg1xhaOKaLy5D3+YNvEjQ5dZKMfAw==",
+ "version": "8.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-8.37.0.tgz",
+ "integrity": "sha512-RTNy0qg1sQLRunqsWjCAR8Nw2RZ62DSIaf09J6xzmuYdFjdvsmeQWs0OSs9e6mVQftxqDgJ/V4NQ1ctLxZM06w==",
"dev": true,
"dependencies": {
"jest-matcher-utils": "^29.6.2"
@@ -6451,12 +6323,12 @@
}
},
"node_modules/@wordpress/jest-preset-default": {
- "version": "12.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-12.36.0.tgz",
- "integrity": "sha512-H3+lulrkot5ZybXstL7rJowvrWvEt83CbVo5NZwYGls+BOsHjsJvHovipVhXzkM2dRnLnhHzBSjZUJoqjod2bw==",
+ "version": "12.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-12.37.0.tgz",
+ "integrity": "sha512-AaT02lS2a/FnD/arYSSc1TkbIlLd1zXY40YqGtpYz1/MqJKoje6th/RZGOMQKC1pyXt5KKBzSFMD4Av39CxThw==",
"dev": true,
"dependencies": {
- "@wordpress/jest-console": "^8.36.0",
+ "@wordpress/jest-console": "^8.37.0",
"babel-jest": "29.7.0"
},
"engines": {
@@ -6469,9 +6341,9 @@
}
},
"node_modules/@wordpress/npm-package-json-lint-config": {
- "version": "5.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-5.36.0.tgz",
- "integrity": "sha512-ZYbHureCoch9O5fdCJWGOrMl+5H3ya3DTeqTqntGwzFl9kKkRDq2PhNF+eltTt8fKWil0o1uZJGutN4IKHVGOg==",
+ "version": "5.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-5.37.0.tgz",
+ "integrity": "sha512-Ond/mR+fw+8JMlcMmj1MBjVgQKD7GVYlL3Ww1n1/yBpRS9OP+UECF4vES3rdEqvL8TU+O/cvoWFpNY2DWO4P8w==",
"dev": true,
"engines": {
"node": ">=18.12.0",
@@ -6482,12 +6354,12 @@
}
},
"node_modules/@wordpress/postcss-plugins-preset": {
- "version": "5.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-5.36.0.tgz",
- "integrity": "sha512-D+IQESH/XlPtvy78md04ndxkmu49GtOOmk903MAj+QFlzovoAqexbdrxrXuAoTExFmcAOmfRq1m/zryPm2DxEA==",
+ "version": "5.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-5.37.0.tgz",
+ "integrity": "sha512-6+/aFPjr3AhmiBQEZs/huG3pkHPUHwwqwS8IIUqwDFuXnX3RkqRJvIoLdfDyR04QaFamyk1IoRv01zU0pZB8YA==",
"dev": true,
"dependencies": {
- "@wordpress/base-styles": "^6.12.0",
+ "@wordpress/base-styles": "^6.13.0",
"autoprefixer": "^10.4.20",
"postcss-import": "^16.1.1"
},
@@ -6500,9 +6372,9 @@
}
},
"node_modules/@wordpress/prettier-config": {
- "version": "4.35.0",
- "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-4.35.0.tgz",
- "integrity": "sha512-9mCz8po5Fc324ZPZzT2CHfL/PfXn16ezKKWJPNWAyoN4niwRWCsku4RHHhGO14pM+IYjSH0XS2ylLx3xmuuXjw==",
+ "version": "4.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-4.37.0.tgz",
+ "integrity": "sha512-5l+5q07DXpoMhGWxVjJqb60RFyspaD7twCnnVWzqfFNUfKWptytMj3KYV3oO9+4ONWehsEzRF9zl3ai+S6ztvg==",
"dev": true,
"engines": {
"node": ">=18.12.0",
@@ -6513,12 +6385,12 @@
}
},
"node_modules/@wordpress/primitives": {
- "version": "4.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.36.0.tgz",
- "integrity": "sha512-Y/5Vkd/oAFNVe/dJpnpfnJ/ar4uWorCD0DAWglpFktNSAJfD3cqVbchJ6zNzqwXG9lR+7yqeh7ZHsmp2juoy3Q==",
+ "version": "4.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.37.0.tgz",
+ "integrity": "sha512-iPpiS1tu1U5cXxVW6CQ45rqdnIc4Ev5FGyicuuaru0wboC+d2CwoNHxPFDOOpGL16yp8OfSDA13vQY3MJHw7QA==",
"dev": true,
"dependencies": {
- "@wordpress/element": "^6.36.0",
+ "@wordpress/element": "^6.37.0",
"clsx": "^2.1.1"
},
"engines": {
@@ -6596,28 +6468,74 @@
"webpack-dev-server": "^4.15.1"
},
"bin": {
- "wp-scripts": "bin/wp-scripts.js"
+ "wp-scripts": "bin/wp-scripts.js"
+ },
+ "engines": {
+ "node": ">=18.12.0",
+ "npm": ">=8.19.2"
+ },
+ "peerDependencies": {
+ "@playwright/test": "^1.56.1",
+ "@wordpress/env": "^10.0.0",
+ "react": "^18.0.0",
+ "react-dom": "^18.0.0"
+ },
+ "peerDependenciesMeta": {
+ "@wordpress/env": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@wordpress/scripts/node_modules/@babel/core": {
+ "version": "7.25.7",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.7.tgz",
+ "integrity": "sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow==",
+ "dev": true,
+ "dependencies": {
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.25.7",
+ "@babel/generator": "^7.25.7",
+ "@babel/helper-compilation-targets": "^7.25.7",
+ "@babel/helper-module-transforms": "^7.25.7",
+ "@babel/helpers": "^7.25.7",
+ "@babel/parser": "^7.25.7",
+ "@babel/template": "^7.25.7",
+ "@babel/traverse": "^7.25.7",
+ "@babel/types": "^7.25.7",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
+ }
+ },
+ "node_modules/@wordpress/scripts/node_modules/prettier": {
+ "name": "wp-prettier",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/wp-prettier/-/wp-prettier-3.0.3.tgz",
+ "integrity": "sha512-X4UlrxDTH8oom9qXlcjnydsjAOD2BmB6yFmvS4Z2zdTzqqpRWb+fbqrH412+l+OUXmbzJlSXjlMFYPgYG12IAA==",
+ "dev": true,
+ "bin": {
+ "prettier": "bin/prettier.cjs"
},
"engines": {
- "node": ">=18.12.0",
- "npm": ">=8.19.2"
- },
- "peerDependencies": {
- "@playwright/test": "^1.56.1",
- "@wordpress/env": "^10.0.0",
- "react": "^18.0.0",
- "react-dom": "^18.0.0"
+ "node": ">=14"
},
- "peerDependenciesMeta": {
- "@wordpress/env": {
- "optional": true
- }
+ "funding": {
+ "url": "https://github.com/prettier/prettier?sponsor=1"
}
},
"node_modules/@wordpress/stylelint-config": {
- "version": "23.27.0",
- "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-23.27.0.tgz",
- "integrity": "sha512-xe3UIUjCt4iNAZ0EkWCzsJ4/CCyiUuP1pswDV5Aw+KTGmmxsbyTrjuqPUZo8wBo5GkG30SysKCXy+vM0G3g3kA==",
+ "version": "23.29.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-23.29.0.tgz",
+ "integrity": "sha512-TTT2oc9Fw2rdnCs4bzI2EHRXgODT3YggjcewqxbBcioPsiAOff9E9gp6NZhe2VlZjVsDcwabUs6m4RIgbBSKaQ==",
"dev": true,
"dependencies": {
"@stylistic/stylelint-plugin": "^3.0.1",
@@ -6634,9 +6552,9 @@
}
},
"node_modules/@wordpress/warning": {
- "version": "3.36.0",
- "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-3.36.0.tgz",
- "integrity": "sha512-iCh9laMVxFHg/pcp4s7FN7g4Z4lLFLPBN2vAZ7JlglPHMr2kjw34MnkUNZZiqyis7tzHVkww5E7WohUcooKO5Q==",
+ "version": "3.37.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-3.37.0.tgz",
+ "integrity": "sha512-oXWyKiYJIa9SuPRNEJiOWn2Qk0RzfxOsDqXcus1OL44swCRtSM+ypm16CJpRhZpMUcsJ6d23PBxTC97C/iiJpQ==",
"dev": true,
"engines": {
"node": ">=18.12.0",
@@ -7367,13 +7285,13 @@
}
},
"node_modules/babel-plugin-polyfill-corejs3": {
- "version": "0.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.13.0.tgz",
- "integrity": "sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A==",
+ "version": "0.10.6",
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz",
+ "integrity": "sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==",
"dev": true,
"dependencies": {
- "@babel/helper-define-polyfill-provider": "^0.6.5",
- "core-js-compat": "^3.43.0"
+ "@babel/helper-define-polyfill-provider": "^0.6.2",
+ "core-js-compat": "^3.38.0"
},
"peerDependencies": {
"@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
@@ -7551,18 +7469,18 @@
]
},
"node_modules/baseline-browser-mapping": {
- "version": "2.9.8",
- "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.8.tgz",
- "integrity": "sha512-Y1fOuNDowLfgKOypdc9SPABfoWXuZHBOyCS4cD52IeZBhr4Md6CLLs6atcxVrzRmQ06E7hSlm5bHHApPKR/byA==",
+ "version": "2.9.11",
+ "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.11.tgz",
+ "integrity": "sha512-Sg0xJUNDU1sJNGdfGWhVHX0kkZ+HWcvmVymJbj6NSgZZmW/8S9Y2HQ5euytnIgakgxN6papOAWiwDo1ctFDcoQ==",
"dev": true,
"bin": {
"baseline-browser-mapping": "dist/cli.js"
}
},
"node_modules/basic-ftp": {
- "version": "5.0.5",
- "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.5.tgz",
- "integrity": "sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==",
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.1.0.tgz",
+ "integrity": "sha512-RkaJzeJKDbaDWTIPiJwubyljaEPwpVWkm9Rt5h9Nd6h7tEXTJ3VB4qxdZBioV7JO5yLUaOKwz7vDOzlncUsegw==",
"dev": true,
"engines": {
"node": ">=10.0.0"
@@ -7825,21 +7743,6 @@
"node": ">=8"
}
},
- "node_modules/cacheable-request/node_modules/get-stream": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
- "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
- "dev": true,
- "dependencies": {
- "pump": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/cacheable/node_modules/keyv": {
"version": "5.5.5",
"resolved": "https://registry.npmjs.org/keyv/-/keyv-5.5.5.tgz",
@@ -7953,6 +7856,15 @@
"node": ">=6"
}
},
+ "node_modules/camelcase-keys/node_modules/quick-lru": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz",
+ "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/caniuse-api": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz",
@@ -7966,9 +7878,9 @@
}
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001760",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001760.tgz",
- "integrity": "sha512-7AAMPcueWELt1p3mi13HR/LHH0TJLT11cnwDJEs3xA4+CK/PLKeO9Kl1oru24htkyUKtkGCvAx4ohB0Ttry8Dw==",
+ "version": "1.0.30001762",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001762.tgz",
+ "integrity": "sha512-PxZwGNvH7Ak8WX5iXzoK1KPZttBXNPuaOvI2ZYU7NrlM+d9Ov+TUvlLOBNGzVXAntMSMMlJPd+jY6ovrVjSmUw==",
"dev": true,
"funding": [
{
@@ -8203,6 +8115,23 @@
"node": ">=12"
}
},
+ "node_modules/cliui/node_modules/wrap-ansi": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
+ }
+ },
"node_modules/clone": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
@@ -8409,42 +8338,6 @@
"typedarray": "^0.0.6"
}
},
- "node_modules/concat-stream/node_modules/isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
- "dev": true
- },
- "node_modules/concat-stream/node_modules/readable-stream": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
- "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
- "dev": true,
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "node_modules/concat-stream/node_modules/safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true
- },
- "node_modules/concat-stream/node_modules/string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "dev": true,
- "dependencies": {
- "safe-buffer": "~5.1.0"
- }
- },
"node_modules/configstore": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/configstore/-/configstore-7.1.0.tgz",
@@ -8641,47 +8534,19 @@
"dev": true
},
"node_modules/cosmiconfig": {
- "version": "8.3.6",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz",
- "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==",
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz",
+ "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==",
"dev": true,
"dependencies": {
- "import-fresh": "^3.3.0",
- "js-yaml": "^4.1.0",
- "parse-json": "^5.2.0",
- "path-type": "^4.0.0"
+ "@types/parse-json": "^4.0.0",
+ "import-fresh": "^3.2.1",
+ "parse-json": "^5.0.0",
+ "path-type": "^4.0.0",
+ "yaml": "^1.10.0"
},
"engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/d-fischer"
- },
- "peerDependencies": {
- "typescript": ">=4.9.5"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/cosmiconfig/node_modules/argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
- "dev": true
- },
- "node_modules/cosmiconfig/node_modules/js-yaml": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
- "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
- "dev": true,
- "dependencies": {
- "argparse": "^2.0.1"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
+ "node": ">=10"
}
},
"node_modules/create-jest": {
@@ -9618,6 +9483,18 @@
"iconv-lite": "^0.6.2"
}
},
+ "node_modules/encoding/node_modules/iconv-lite": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
+ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "dev": true,
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/end-of-stream": {
"version": "1.4.5",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz",
@@ -10748,9 +10625,9 @@
}
},
"node_modules/esquery": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz",
- "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==",
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz",
+ "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==",
"dev": true,
"dependencies": {
"estraverse": "^5.1.0"
@@ -10845,6 +10722,24 @@
"url": "https://github.com/sindresorhus/execa?sponsor=1"
}
},
+ "node_modules/execa/node_modules/get-stream": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
+ "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/execa/node_modules/signal-exit": {
+ "version": "3.0.7",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
+ "dev": true
+ },
"node_modules/exit": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
@@ -10950,40 +10845,35 @@
"dev": true
},
"node_modules/extract-zip": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz",
- "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==",
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz",
+ "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==",
"dev": true,
"dependencies": {
- "debug": "^4.1.1",
- "get-stream": "^5.1.0",
+ "concat-stream": "^1.6.2",
+ "debug": "^2.6.9",
+ "mkdirp": "^0.5.4",
"yauzl": "^2.10.0"
},
"bin": {
"extract-zip": "cli.js"
- },
- "engines": {
- "node": ">= 10.17.0"
- },
- "optionalDependencies": {
- "@types/yauzl": "^2.9.1"
}
},
- "node_modules/extract-zip/node_modules/get-stream": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
- "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
+ "node_modules/extract-zip/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"dev": true,
"dependencies": {
- "pump": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "ms": "2.0.0"
}
},
+ "node_modules/extract-zip/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
+ },
"node_modules/fast-deep-equal": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
@@ -11068,9 +10958,9 @@
}
},
"node_modules/fastq": {
- "version": "1.19.1",
- "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz",
- "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==",
+ "version": "1.20.1",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz",
+ "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==",
"dev": true,
"dependencies": {
"reusify": "^1.0.4"
@@ -11286,6 +11176,22 @@
"node": "^10.12.0 || >=12.0.0"
}
},
+ "node_modules/flat-cache/node_modules/rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "deprecated": "Rimraf versions prior to v4 are no longer supported",
+ "dev": true,
+ "dependencies": {
+ "glob": "^7.1.3"
+ },
+ "bin": {
+ "rimraf": "bin.js"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
"node_modules/flatted": {
"version": "3.3.3",
"resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz",
@@ -11364,18 +11270,6 @@
"url": "https://github.com/sponsors/isaacs"
}
},
- "node_modules/foreground-child/node_modules/signal-exit": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
- "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
- "dev": true,
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
"node_modules/form-data": {
"version": "4.0.5",
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz",
@@ -11600,12 +11494,15 @@
}
},
"node_modules/get-stream": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
- "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
+ "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
"dev": true,
+ "dependencies": {
+ "pump": "^3.0.0"
+ },
"engines": {
- "node": ">=10"
+ "node": ">=8"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -11977,12 +11874,12 @@
}
},
"node_modules/hashery": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/hashery/-/hashery-1.3.0.tgz",
- "integrity": "sha512-fWltioiy5zsSAs9ouEnvhsVJeAXRybGCNNv0lvzpzNOSDbULXRy7ivFWwCCv4I5Am6kSo75hmbsCduOoc2/K4w==",
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/hashery/-/hashery-1.4.0.tgz",
+ "integrity": "sha512-Wn2i1In6XFxl8Az55kkgnFRiAlIAushzh26PTjL2AKtQcEfXrcLa7Hn5QOWGZEf3LU057P9TwwZjFyxfS1VuvQ==",
"dev": true,
"dependencies": {
- "hookified": "^1.13.0"
+ "hookified": "^1.14.0"
},
"engines": {
"node": ">=20"
@@ -12070,42 +11967,6 @@
"wbuf": "^1.1.0"
}
},
- "node_modules/hpack.js/node_modules/isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
- "dev": true
- },
- "node_modules/hpack.js/node_modules/readable-stream": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
- "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
- "dev": true,
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "node_modules/hpack.js/node_modules/safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true
- },
- "node_modules/hpack.js/node_modules/string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "dev": true,
- "dependencies": {
- "safe-buffer": "~5.1.0"
- }
- },
"node_modules/html-encoding-sniffer": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz",
@@ -12264,18 +12125,6 @@
"node": ">=10.19.0"
}
},
- "node_modules/http2-wrapper/node_modules/quick-lru": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz",
- "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/https-proxy-agent": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
@@ -12299,15 +12148,19 @@
}
},
"node_modules/iconv-lite": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
- "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "version": "0.7.1",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.1.tgz",
+ "integrity": "sha512-2Tth85cXwGFHfvRgZWszZSvdo+0Xsqmw8k8ZwxScfcBneNUraK+dxRxRm24nszx80Y0TVio8kKLt5sLE7ZCLlw==",
"dev": true,
"dependencies": {
"safer-buffer": ">= 2.1.2 < 3.0.0"
},
"engines": {
"node": ">=0.10.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/express"
}
},
"node_modules/icss-utils": {
@@ -13128,9 +12981,9 @@
}
},
"node_modules/isarray": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
- "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
"dev": true
},
"node_modules/isexe": {
@@ -14232,18 +14085,38 @@
"node": ">=18"
}
},
+ "node_modules/lighthouse/node_modules/extract-zip": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz",
+ "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==",
+ "dev": true,
+ "dependencies": {
+ "debug": "^4.1.1",
+ "get-stream": "^5.1.0",
+ "yauzl": "^2.10.0"
+ },
+ "bin": {
+ "extract-zip": "cli.js"
+ },
+ "engines": {
+ "node": ">= 10.17.0"
+ },
+ "optionalDependencies": {
+ "@types/yauzl": "^2.9.1"
+ }
+ },
"node_modules/lighthouse/node_modules/puppeteer-core": {
- "version": "24.33.0",
- "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-24.33.0.tgz",
- "integrity": "sha512-tPTxVg+Qdj/8av4cy6szv3GlhxeOoNhiiMZ955fjxQyvPQE/6DjCa6ZyF/x0WJrlgBZtaLSP8TQgJb7FdLDXXA==",
+ "version": "24.34.0",
+ "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-24.34.0.tgz",
+ "integrity": "sha512-24evawO+mUGW4mvS2a2ivwLdX3gk8zRLZr9HP+7+VT2vBQnm0oh9jJEZmUE3ePJhRkYlZ93i7OMpdcoi2qNCLg==",
"dev": true,
"dependencies": {
"@puppeteer/browsers": "2.11.0",
- "chromium-bidi": "11.0.0",
+ "chromium-bidi": "12.0.1",
"debug": "^4.4.3",
"devtools-protocol": "0.0.1534754",
"typed-query-selector": "^2.12.0",
- "webdriver-bidi-protocol": "0.3.9",
+ "webdriver-bidi-protocol": "0.3.10",
"ws": "^8.18.3"
},
"engines": {
@@ -14251,9 +14124,9 @@
}
},
"node_modules/lighthouse/node_modules/puppeteer-core/node_modules/chromium-bidi": {
- "version": "11.0.0",
- "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-11.0.0.tgz",
- "integrity": "sha512-cM3DI+OOb89T3wO8cpPSro80Q9eKYJ7hGVXoGS3GkDPxnYSqiv+6xwpIf6XERyJ9Tdsl09hmNmY94BkgZdVekw==",
+ "version": "12.0.1",
+ "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-12.0.1.tgz",
+ "integrity": "sha512-fGg+6jr0xjQhzpy5N4ErZxQ4wF7KLEvhGZXD6EgvZKDhu7iOhZXnZhcDxPJDcwTcrD48NPzOCo84RP2lv3Z+Cg==",
"dev": true,
"dependencies": {
"mitt": "^3.0.1",
@@ -15367,6 +15240,50 @@
"npm": ">=6.0.0"
}
},
+ "node_modules/npm-package-json-lint/node_modules/argparse": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
+ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
+ "dev": true
+ },
+ "node_modules/npm-package-json-lint/node_modules/cosmiconfig": {
+ "version": "8.3.6",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz",
+ "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==",
+ "dev": true,
+ "dependencies": {
+ "import-fresh": "^3.3.0",
+ "js-yaml": "^4.1.0",
+ "parse-json": "^5.2.0",
+ "path-type": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/d-fischer"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.9.5"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/npm-package-json-lint/node_modules/js-yaml": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
+ "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
+ "dev": true,
+ "dependencies": {
+ "argparse": "^2.0.1"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
"node_modules/npm-package-json-lint/node_modules/jsonc-parser": {
"version": "3.3.1",
"resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz",
@@ -15525,12 +15442,6 @@
"node": ">=4"
}
},
- "node_modules/npm-run-all/node_modules/hosted-git-info": {
- "version": "2.8.9",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
- "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
- "dev": true
- },
"node_modules/npm-run-all/node_modules/minimatch": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
@@ -15543,18 +15454,6 @@
"node": "*"
}
},
- "node_modules/npm-run-all/node_modules/normalize-package-data": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
- "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
- "dev": true,
- "dependencies": {
- "hosted-git-info": "^2.1.4",
- "resolve": "^1.10.0",
- "semver": "2 || 3 || 4 || 5",
- "validate-npm-package-license": "^3.0.1"
- }
- },
"node_modules/npm-run-all/node_modules/path-key": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
@@ -15564,41 +15463,6 @@
"node": ">=4"
}
},
- "node_modules/npm-run-all/node_modules/path-type": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
- "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
- "dev": true,
- "dependencies": {
- "pify": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/npm-run-all/node_modules/pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/npm-run-all/node_modules/read-pkg": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
- "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==",
- "dev": true,
- "dependencies": {
- "load-json-file": "^4.0.0",
- "normalize-package-data": "^2.3.2",
- "path-type": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
"node_modules/npm-run-all/node_modules/semver": {
"version": "5.7.2",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
@@ -16790,22 +16654,6 @@
"webpack": "^5.0.0"
}
},
- "node_modules/postcss-loader/node_modules/cosmiconfig": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz",
- "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==",
- "dev": true,
- "dependencies": {
- "@types/parse-json": "^4.0.0",
- "import-fresh": "^3.2.1",
- "parse-json": "^5.0.0",
- "path-type": "^4.0.0",
- "yaml": "^1.10.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/postcss-loader/node_modules/semver": {
"version": "7.7.3",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz",
@@ -17344,11 +17192,11 @@
}
},
"node_modules/prettier": {
- "name": "wp-prettier",
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/wp-prettier/-/wp-prettier-3.0.3.tgz",
- "integrity": "sha512-X4UlrxDTH8oom9qXlcjnydsjAOD2BmB6yFmvS4Z2zdTzqqpRWb+fbqrH412+l+OUXmbzJlSXjlMFYPgYG12IAA==",
+ "version": "3.7.4",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.7.4.tgz",
+ "integrity": "sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==",
"dev": true,
+ "peer": true,
"bin": {
"prettier": "bin/prettier.cjs"
},
@@ -17360,9 +17208,9 @@
}
},
"node_modules/prettier-linter-helpers": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz",
- "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==",
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.1.tgz",
+ "integrity": "sha512-SxToR7P8Y2lWmv/kTzVLC1t/GDI2WGjMwNhLLE9qtH8Q13C+aEmuRlzDst4Up4s0Wc8sF2M+J57iB3cMLqftfg==",
"dev": true,
"dependencies": {
"fast-diff": "^1.1.2"
@@ -17616,9 +17464,9 @@
}
},
"node_modules/qs": {
- "version": "6.14.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz",
- "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==",
+ "version": "6.14.1",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.1.tgz",
+ "integrity": "sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ==",
"dev": true,
"dependencies": {
"side-channel": "^1.1.0"
@@ -17657,12 +17505,15 @@
]
},
"node_modules/quick-lru": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz",
- "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==",
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz",
+ "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==",
"dev": true,
"engines": {
- "node": ">=8"
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/randombytes": {
@@ -17760,6 +17611,55 @@
}
},
"node_modules/read-pkg": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
+ "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==",
+ "dev": true,
+ "dependencies": {
+ "load-json-file": "^4.0.0",
+ "normalize-package-data": "^2.3.2",
+ "path-type": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz",
+ "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==",
+ "dev": true,
+ "dependencies": {
+ "find-up": "^4.1.0",
+ "read-pkg": "^5.2.0",
+ "type-fest": "^0.8.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/hosted-git-info": {
+ "version": "2.8.9",
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
+ "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
+ "dev": true
+ },
+ "node_modules/read-pkg-up/node_modules/normalize-package-data": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
+ "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
+ "dev": true,
+ "dependencies": {
+ "hosted-git-info": "^2.1.4",
+ "resolve": "^1.10.0",
+ "semver": "2 || 3 || 4 || 5",
+ "validate-npm-package-license": "^3.0.1"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/read-pkg": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz",
"integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==",
@@ -17774,21 +17674,22 @@
"node": ">=8"
}
},
- "node_modules/read-pkg-up": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz",
- "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==",
+ "node_modules/read-pkg-up/node_modules/read-pkg/node_modules/type-fest": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
+ "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/semver": {
+ "version": "5.7.2",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
+ "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
"dev": true,
- "dependencies": {
- "find-up": "^4.1.0",
- "read-pkg": "^5.2.0",
- "type-fest": "^0.8.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "bin": {
+ "semver": "bin/semver"
}
},
"node_modules/read-pkg-up/node_modules/type-fest": {
@@ -17818,6 +17719,27 @@
"validate-npm-package-license": "^3.0.1"
}
},
+ "node_modules/read-pkg/node_modules/path-type": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
+ "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
+ "dev": true,
+ "dependencies": {
+ "pify": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg/node_modules/pify": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
+ "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
"node_modules/read-pkg/node_modules/semver": {
"version": "5.7.2",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
@@ -17827,29 +17749,27 @@
"semver": "bin/semver"
}
},
- "node_modules/read-pkg/node_modules/type-fest": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
- "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/readable-stream": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
- "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
+ "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
"dev": true,
"dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- },
- "engines": {
- "node": ">= 6"
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
}
},
+ "node_modules/readable-stream/node_modules/safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "dev": true
+ },
"node_modules/readdirp": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz",
@@ -18142,6 +18062,12 @@
"node": ">=8"
}
},
+ "node_modules/restore-cursor/node_modules/signal-exit": {
+ "version": "3.0.7",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
+ "dev": true
+ },
"node_modules/retry": {
"version": "0.13.1",
"resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz",
@@ -18162,16 +18088,50 @@
}
},
"node_modules/rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "deprecated": "Rimraf versions prior to v4 are no longer supported",
+ "version": "5.0.10",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz",
+ "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==",
"dev": true,
"dependencies": {
- "glob": "^7.1.3"
+ "glob": "^10.3.7"
},
"bin": {
- "rimraf": "bin.js"
+ "rimraf": "dist/esm/bin.mjs"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/rimraf/node_modules/glob": {
+ "version": "10.5.0",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz",
+ "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==",
+ "dev": true,
+ "dependencies": {
+ "foreground-child": "^3.1.0",
+ "jackspeak": "^3.1.2",
+ "minimatch": "^9.0.4",
+ "minipass": "^7.1.2",
+ "package-json-from-dist": "^1.0.0",
+ "path-scurry": "^1.11.1"
+ },
+ "bin": {
+ "glob": "dist/esm/bin.mjs"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/rimraf/node_modules/minimatch": {
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
@@ -18279,6 +18239,12 @@
"url": "https://github.com/sponsors/ljharb"
}
},
+ "node_modules/safe-array-concat/node_modules/isarray": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
+ "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
+ "dev": true
+ },
"node_modules/safe-buffer": {
"version": "5.2.1",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
@@ -18315,6 +18281,12 @@
"url": "https://github.com/sponsors/ljharb"
}
},
+ "node_modules/safe-push-apply/node_modules/isarray": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
+ "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
+ "dev": true
+ },
"node_modules/safe-regex-test": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz",
@@ -18339,9 +18311,9 @@
"dev": true
},
"node_modules/sass": {
- "version": "1.97.0",
- "resolved": "https://registry.npmjs.org/sass/-/sass-1.97.0.tgz",
- "integrity": "sha512-KR0igP1z4avUJetEuIeOdDlwaUDvkH8wSx7FdSjyYBS3dpyX3TzHfAMO0G1Q4/3cdjcmi3r7idh+KCmKqS+KeQ==",
+ "version": "1.97.1",
+ "resolved": "https://registry.npmjs.org/sass/-/sass-1.97.1.tgz",
+ "integrity": "sha512-uf6HoO8fy6ClsrShvMgaKUn14f2EHQLQRtpsZZLeU/Mv0Q1K5P0+x2uvH6Cub39TVVbWNSrraUhDAoFph6vh0A==",
"dev": true,
"dependencies": {
"chokidar": "^4.0.0",
@@ -18864,10 +18836,16 @@
}
},
"node_modules/signal-exit": {
- "version": "3.0.7",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
- "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
- "dev": true
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
+ "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
+ "dev": true,
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
},
"node_modules/simple-git": {
"version": "3.30.0",
@@ -19037,6 +19015,18 @@
"webpack": "^5.0.0"
}
},
+ "node_modules/source-map-loader/node_modules/iconv-lite": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
+ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "dev": true,
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/source-map-support": {
"version": "0.5.13",
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz",
@@ -19069,18 +19059,6 @@
"node": ">=16"
}
},
- "node_modules/spawnd/node_modules/signal-exit": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
- "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
- "dev": true,
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
"node_modules/spdx-correct": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz",
@@ -19153,6 +19131,20 @@
"wbuf": "^1.7.3"
}
},
+ "node_modules/spdy-transport/node_modules/readable-stream": {
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+ "dev": true,
+ "dependencies": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
"node_modules/speedline-core": {
"version": "1.4.3",
"resolved": "https://registry.npmjs.org/speedline-core/-/speedline-core-1.4.3.tgz",
@@ -19243,14 +19235,20 @@
}
},
"node_modules/string_decoder": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
- "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"dev": true,
"dependencies": {
- "safe-buffer": "~5.2.0"
+ "safe-buffer": "~5.1.0"
}
},
+ "node_modules/string_decoder/node_modules/safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "dev": true
+ },
"node_modules/string-length": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz",
@@ -19556,9 +19554,9 @@
}
},
"node_modules/stylelint": {
- "version": "16.26.0",
- "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.26.0.tgz",
- "integrity": "sha512-Y/3AVBefrkqqapVYH3LBF5TSDZ1kw+0XpdKN2KchfuhMK6lQ85S4XOG4lIZLcrcS4PWBmvcY6eS2kCQFz0jukQ==",
+ "version": "16.26.1",
+ "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.26.1.tgz",
+ "integrity": "sha512-v20V59/crfc8sVTAtge0mdafI3AdnzQ2KsWe6v523L4OA1bJO02S7MO2oyXDCS6iWb9ckIPnqAFVItqSBQr7jw==",
"dev": true,
"funding": [
{
@@ -19572,6 +19570,7 @@
],
"dependencies": {
"@csstools/css-parser-algorithms": "^3.0.5",
+ "@csstools/css-syntax-patches-for-csstree": "^1.0.19",
"@csstools/css-tokenizer": "^3.0.4",
"@csstools/media-query-list-parser": "^4.0.3",
"@csstools/selector-specificity": "^5.0.0",
@@ -19584,7 +19583,7 @@
"debug": "^4.4.3",
"fast-glob": "^3.3.3",
"fastest-levenshtein": "^1.0.16",
- "file-entry-cache": "^11.1.0",
+ "file-entry-cache": "^11.1.1",
"global-modules": "^2.0.0",
"globby": "^11.1.0",
"globjoin": "^0.1.4",
@@ -19663,33 +19662,27 @@
}
},
"node_modules/stylelint-scss": {
- "version": "6.12.1",
- "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-6.12.1.tgz",
- "integrity": "sha512-UJUfBFIvXfly8WKIgmqfmkGKPilKB4L5j38JfsDd+OCg2GBdU0vGUV08Uw82tsRZzd4TbsUURVVNGeOhJVF7pA==",
+ "version": "6.14.0",
+ "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-6.14.0.tgz",
+ "integrity": "sha512-ZKmHMZolxeuYsnB+PCYrTpFce0/QWX9i9gh0hPXzp73WjuIMqUpzdQaBCrKoLWh6XtCFSaNDErkMPqdjy1/8aA==",
"dev": true,
"dependencies": {
"css-tree": "^3.0.1",
"is-plain-object": "^5.0.0",
- "known-css-properties": "^0.36.0",
- "mdn-data": "^2.21.0",
+ "known-css-properties": "^0.37.0",
+ "mdn-data": "^2.25.0",
"postcss-media-query-parser": "^0.2.3",
"postcss-resolve-nested-selector": "^0.1.6",
- "postcss-selector-parser": "^7.1.0",
+ "postcss-selector-parser": "^7.1.1",
"postcss-value-parser": "^4.2.0"
},
"engines": {
"node": ">=18.12.0"
},
"peerDependencies": {
- "stylelint": "^16.0.2"
+ "stylelint": "^16.8.2"
}
},
- "node_modules/stylelint-scss/node_modules/known-css-properties": {
- "version": "0.36.0",
- "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.36.0.tgz",
- "integrity": "sha512-A+9jP+IUmuQsNdsLdcg6Yt7voiMF/D4K83ew0OpJtpu+l34ef7LaohWV0Rc6KNvzw6ZDizkqfyB5JznZnzuKQA==",
- "dev": true
- },
"node_modules/stylelint-scss/node_modules/mdn-data": {
"version": "2.25.0",
"resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.25.0.tgz",
@@ -19893,18 +19886,6 @@
"node": ">=4"
}
},
- "node_modules/stylelint/node_modules/signal-exit": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
- "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
- "dev": true,
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
"node_modules/stylelint/node_modules/which": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
@@ -21114,9 +21095,9 @@
}
},
"node_modules/watchpack": {
- "version": "2.4.4",
- "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.4.tgz",
- "integrity": "sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA==",
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.5.0.tgz",
+ "integrity": "sha512-e6vZvY6xboSwLz2GD36c16+O/2Z6fKvIf4pOXptw2rY9MVwE/TXc6RGqxD3I3x0a28lwBY7DE+76uTPSsBrrCA==",
"dev": true,
"dependencies": {
"glob-to-regexp": "^0.4.1",
@@ -21151,9 +21132,9 @@
"dev": true
},
"node_modules/webdriver-bidi-protocol": {
- "version": "0.3.9",
- "resolved": "https://registry.npmjs.org/webdriver-bidi-protocol/-/webdriver-bidi-protocol-0.3.9.tgz",
- "integrity": "sha512-uIYvlRQ0PwtZR1EzHlTMol1G0lAlmOe6wPykF9a77AK3bkpvZHzIVxRE2ThOx5vjy2zISe0zhwf5rzuUfbo1PQ==",
+ "version": "0.3.10",
+ "resolved": "https://registry.npmjs.org/webdriver-bidi-protocol/-/webdriver-bidi-protocol-0.3.10.tgz",
+ "integrity": "sha512-5LAE43jAVLOhB/QqX4bwSiv0Hg1HBfMmOuwBSXHdvg4GMGu9Y0lIq7p4R/yySu6w74WmaR4GM4H9t2IwLW7hgw==",
"dev": true
},
"node_modules/webidl-conversions": {
@@ -21166,9 +21147,9 @@
}
},
"node_modules/webpack": {
- "version": "5.104.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.104.0.tgz",
- "integrity": "sha512-5DeICTX8BVgNp6afSPYXAFjskIgWGlygQH58bcozPOXgo2r/6xx39Y1+cULZ3gTxUYQP88jmwLj2anu4Xaq84g==",
+ "version": "5.104.1",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.104.1.tgz",
+ "integrity": "sha512-Qphch25abbMNtekmEGJmeRUhLDbe+QfiWTiqpKYkpCOWY64v9eyl+KRRLmqOFA2AvKPpc9DC6+u2n76tQLBoaA==",
"dev": true,
"dependencies": {
"@types/eslint-scope": "^3.7.7",
@@ -21453,6 +21434,22 @@
"node": ">=8.10.0"
}
},
+ "node_modules/webpack-dev-server/node_modules/rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "deprecated": "Rimraf versions prior to v4 are no longer supported",
+ "dev": true,
+ "dependencies": {
+ "glob": "^7.1.3"
+ },
+ "bin": {
+ "rimraf": "bin.js"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
"node_modules/webpack-merge": {
"version": "5.10.0",
"resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz",
@@ -21550,6 +21547,7 @@
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz",
"integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==",
+ "deprecated": "Use @exodus/bytes instead for a more spec-conformant and faster implementation",
"dev": true,
"dependencies": {
"iconv-lite": "0.6.3"
@@ -21558,6 +21556,18 @@
"node": ">=12"
}
},
+ "node_modules/whatwg-encoding/node_modules/iconv-lite": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
+ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "dev": true,
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/whatwg-mimetype": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz",
@@ -21647,6 +21657,12 @@
"url": "https://github.com/sponsors/ljharb"
}
},
+ "node_modules/which-builtin-type/node_modules/isarray": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
+ "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
+ "dev": true
+ },
"node_modules/which-collection": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz",
@@ -21702,9 +21718,9 @@
}
},
"node_modules/wrap-ansi": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+ "version": "6.2.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
+ "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
"dev": true,
"dependencies": {
"ansi-styles": "^4.0.0",
@@ -21712,10 +21728,7 @@
"strip-ansi": "^6.0.0"
},
"engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
+ "node": ">=8"
}
},
"node_modules/wrap-ansi-cjs": {
@@ -21755,6 +21768,12 @@
"node": "^12.13.0 || ^14.15.0 || >=16.0.0"
}
},
+ "node_modules/write-file-atomic/node_modules/signal-exit": {
+ "version": "3.0.7",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
+ "dev": true
+ },
"node_modules/ws": {
"version": "8.18.3",
"resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz",
diff --git a/package.json b/package.json
index 4e245d2..3634fb7 100755
--- a/package.json
+++ b/package.json
@@ -1,10 +1,10 @@
{
- "name": "priority-plus-nav",
+ "name": "priority-plus-navigation",
"version": "0.1.0",
"description": "A responsive navigation block implementing the Priority+ pattern that automatically moves overflow items to a 'More' dropdown.",
"author": "Troy Chaplin",
"license": "GPL-2.0-or-later",
- "main": "build/priority-plus-nav.js",
+ "main": "build/priority-plus-navigation.js",
"scripts": {
"build": "wp-scripts build --blocks-manifest",
"lint": "npm-run-all lint:*",
@@ -21,14 +21,14 @@
},
"devDependencies": {
"@wordpress/env": "^10.33.0",
- "@wordpress/eslint-plugin": "22.21.0",
+ "@wordpress/eslint-plugin": "^22.21.0",
"@wordpress/i18n": "^6.6.0",
"@wordpress/icons": "^11.3.0",
- "@wordpress/prettier-config": "4.35.0",
+ "@wordpress/prettier-config": "^4.35.0",
"@wordpress/scripts": "^30.15.0",
- "@wordpress/stylelint-config": "23.27.0",
+ "@wordpress/stylelint-config": "^23.27.0",
"npm-run-all": "^4.1.5",
- "stylelint": "16.26.0",
- "stylelint-scss": "6.12.1"
+ "stylelint": "^16.26.0",
+ "stylelint-scss": "^6.12.1"
}
}
diff --git a/phpcs.xml.dist b/phpcs.xml.dist
index 59034db..843e782 100644
--- a/phpcs.xml.dist
+++ b/phpcs.xml.dist
@@ -22,8 +22,8 @@
-
-
+
+
@@ -32,7 +32,7 @@
-
+
diff --git a/priority-plus-nav.php b/priority-plus-nav.php
deleted file mode 100755
index 8d15698..0000000
--- a/priority-plus-nav.php
+++ /dev/null
@@ -1,41 +0,0 @@
-init();
- }
-}
diff --git a/priority-plus-navigation.php b/priority-plus-navigation.php
new file mode 100755
index 0000000..b2cf8b9
--- /dev/null
+++ b/priority-plus-navigation.php
@@ -0,0 +1,42 @@
+init();
+ }
+ }
+} )();
diff --git a/readme.txt b/readme.txt
index 42429e9..3b9f6bb 100755
--- a/readme.txt
+++ b/readme.txt
@@ -1,5 +1,5 @@
-=== Priority+ Nav ===
+=== Priority Plus Navigation ===
Contributors: areziaal
Tags: block, navigation, responsive, priority-plus
@@ -8,7 +8,7 @@ Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
-A WordPress block plugin that adds Priority+ pattern functionality to core WordPress navigation block. It automatically moves navigation items that don't fit into a responsive "More" dropdown menu (default label: "Browse") as the viewport narrows.
+Adds Priority+ pattern to core Navigation block. Moves overflow items into responsive "More" dropdown as the users viewport narrows.
== Description ==
@@ -29,7 +29,7 @@ Perfect for sites with many navigation items that need to work across all device
1. Upload the plugin files to the `/wp-content/plugins/priority-nav` directory, or install the plugin through the WordPress plugins screen directly.
2. Activate the plugin through the 'Plugins' screen in WordPress
-3. Add a Navigation block and select the "Priority+ Nav" variation, or search for "Priority+ Nav" in the block inserter
+3. Add a Navigation block and select the "Priority Plus Navigation" variation, or search for "Priority Plus Navigation" in the block inserter
4. Configure your navigation using the familiar WordPress navigation tools
== Frequently Asked Questions ==
@@ -48,7 +48,7 @@ Yes! Items with submenus in the dropdown are converted to accessible accordions
= How does it work with WordPress's responsive overlay menu? =
-Priority+ Nav intelligently integrates with WordPress core navigation overlay menu settings:
+Priority Plus Navigation intelligently integrates with WordPress core navigation overlay menu settings:
* **Never**: Priority+ is always active across all screen sizes
* **Mobile**: Priority+ works on desktop and automatically disables when the hamburger menu activates
@@ -80,7 +80,7 @@ Yes, the block is built with accessibility in mind, supporting keyboard navigati
= 0.1.0 =
* Initial release
-* Implements Priority+ navigation pattern
+* Implements Priority Plus Navigation pattern
* Automatic overflow detection and management
* Customizable "More" button
* Full keyboard and screen reader support
\ No newline at end of file
diff --git a/src/core/PriorityNav.js b/src/core/PriorityNav.js
index 492416e..fecd1ab 100644
--- a/src/core/PriorityNav.js
+++ b/src/core/PriorityNav.js
@@ -25,19 +25,19 @@ class PriorityNav {
// Static counter for generating unique instance IDs
static instanceCounter = 0;
- constructor( element ) {
+ constructor(element) {
// Prevent double initialization
- if ( element.dataset.priorityNavInitialized === 'true' ) {
+ if (element.dataset.priorityNavInitialized === 'true') {
return;
}
// Generate unique instance ID for this PriorityNav instance
- this.instanceId = `priority-nav-${ PriorityNav.instanceCounter++ }`;
+ this.instanceId = `priority-plus-navigation-${PriorityNav.instanceCounter++}`;
- // Element should be .wp-block-navigation.is-style-priority-nav
+ // Element should be .wp-block-navigation.is-style-priority-plus-navigation
if (
- ! element.classList.contains( 'wp-block-navigation' ) ||
- ! element.classList.contains( 'is-style-priority-nav' )
+ !element.classList.contains('wp-block-navigation') ||
+ !element.classList.contains('is-style-priority-plus-navigation')
) {
return;
}
@@ -48,19 +48,19 @@ class PriorityNav {
this.nav = element;
// Get list container
- this.list = this.nav.querySelector( '.wp-block-navigation__container' );
- if ( ! this.list ) {
+ this.list = this.nav.querySelector('.wp-block-navigation__container');
+ if (!this.list) {
return;
}
// Get attributes from nav element
this.moreLabel =
- this.nav.getAttribute( 'data-more-label' ) || DEFAULT_MORE_LABEL;
+ this.nav.getAttribute('data-more-label') || DEFAULT_MORE_LABEL;
this.overlayMenu =
- this.nav.getAttribute( 'data-overlay-menu' ) || 'never';
+ this.nav.getAttribute('data-overlay-menu') || 'never';
// If overlayMenu is 'always', Priority+ should never run
- if ( this.overlayMenu === 'always' ) {
+ if (this.overlayMenu === 'always') {
return;
}
@@ -77,7 +77,7 @@ class PriorityNav {
this.dropdown = dropdown;
// Initialize state
- this.items = Array.from( this.list.children );
+ this.items = Array.from(this.list.children);
this.itemWidths = [];
this.isOpen = false;
this.isCalculating = false;
@@ -107,23 +107,23 @@ class PriorityNav {
detectOpenSubmenusOnClick() {
// Check data attributes on nav element
const dataAttr =
- this.nav.getAttribute( 'data-opensubmenusonclick' ) ||
- this.nav.getAttribute( 'data-open-submenus-on-click' );
+ this.nav.getAttribute('data-opensubmenusonclick') ||
+ this.nav.getAttribute('data-open-submenus-on-click');
- if ( dataAttr ) {
+ if (dataAttr) {
return dataAttr === 'true' || dataAttr === '1' || dataAttr === '';
}
// Check for generic data attributes containing the keywords
- if ( this.nav.attributes ) {
- for ( let i = 0; i < this.nav.attributes.length; i++ ) {
- const attr = this.nav.attributes[ i ];
+ if (this.nav.attributes) {
+ for (let i = 0; i < this.nav.attributes.length; i++) {
+ const attr = this.nav.attributes[i];
const name = attr.name.toLowerCase();
// WordPress may use various formats
if (
- name.includes( 'open' ) &&
- name.includes( 'submenu' ) &&
- name.includes( 'click' )
+ name.includes('open') &&
+ name.includes('submenu') &&
+ name.includes('click')
) {
const value = attr.value;
return value === 'true' || value === '1' || value === '';
@@ -133,22 +133,22 @@ class PriorityNav {
// Check for class-based indicators on nav element
if (
- this.nav.classList.contains( 'open-on-click' ) ||
- this.nav.classList.contains( 'open-submenus-on-click' ) ||
- this.nav.classList.contains( 'has-open-submenus-on-click' )
+ this.nav.classList.contains('open-on-click') ||
+ this.nav.classList.contains('open-submenus-on-click') ||
+ this.nav.classList.contains('has-open-submenus-on-click')
) {
return true;
}
// Check list items for the class (WordPress might set it on individual items)
- if ( this.list ) {
+ if (this.list) {
const firstItem = this.list.querySelector(
'li.has-child, li.open-on-click'
);
if (
firstItem &&
- ( firstItem.classList.contains( 'open-on-click' ) ||
- firstItem.classList.contains( 'open-submenus-on-click' ) )
+ (firstItem.classList.contains('open-on-click') ||
+ firstItem.classList.contains('open-submenus-on-click'))
) {
return true;
}
@@ -160,7 +160,7 @@ class PriorityNav {
init() {
// Guard against missing elements
- if ( ! this.nav || ! document.body.contains( this.nav ) ) {
+ if (!this.nav || !document.body.contains(this.nav)) {
return;
}
@@ -176,44 +176,44 @@ class PriorityNav {
toggleDropdown: () => this.toggleDropdown(),
closeDropdown: () => this.closeDropdown(),
closeAllAccordions: () => this.closeAllAccordions(),
- toggleAccordionItem: ( button, submenu ) =>
- this.toggleAccordionItem( button, submenu ),
+ toggleAccordionItem: (button, submenu) =>
+ this.toggleAccordionItem(button, submenu),
}
);
this.setupResponsiveObserver();
// Check if we should enable Priority Nav
- if ( this.isInHamburgerMode() ) {
+ if (this.isInHamburgerMode()) {
this.disablePriorityNav();
} else {
this.enablePriorityNav();
}
// Set up resize observer with error handling
- if ( typeof ResizeObserver !== 'undefined' ) {
- this.resizeObserver = new ResizeObserver( () => {
+ if (typeof ResizeObserver !== 'undefined') {
+ this.resizeObserver = new ResizeObserver(() => {
// Guard against detached elements
- if ( ! document.body.contains( this.nav ) ) {
+ if (!document.body.contains(this.nav)) {
return;
}
- if ( ! this.isCalculating ) {
+ if (!this.isCalculating) {
// Check if we've transitioned between hamburger and desktop mode
const wasEnabled = this.isEnabled;
const inHamburger = this.isInHamburgerMode();
- if ( inHamburger && wasEnabled ) {
+ if (inHamburger && wasEnabled) {
this.disablePriorityNav();
- } else if ( ! inHamburger && ! wasEnabled ) {
+ } else if (!inHamburger && !wasEnabled) {
this.enablePriorityNav();
- } else if ( ! inHamburger && wasEnabled ) {
+ } else if (!inHamburger && wasEnabled) {
// Still in desktop mode, just recalculate
- requestAnimationFrame( () => this.checkOverflow() );
+ requestAnimationFrame(() => this.checkOverflow());
}
}
- } );
- this.resizeObserver.observe( this.nav );
+ });
+ this.resizeObserver.observe(this.nav);
}
}
@@ -222,28 +222,28 @@ class PriorityNav {
* @return {boolean} True if in hamburger mode
*/
isInHamburgerMode() {
- return isInHamburgerMode( this.responsiveContainer, this.list );
+ return isInHamburgerMode(this.responsiveContainer, this.list);
}
/**
* Disable Priority Nav when in hamburger mode
*/
disablePriorityNav() {
- if ( ! this.items || ! Array.isArray( this.items ) ) {
+ if (!this.items || !Array.isArray(this.items)) {
return;
}
this.isEnabled = false;
// Show all items
- this.items.forEach( ( item ) => {
- if ( item && item.style ) {
+ this.items.forEach((item) => {
+ if (item && item.style) {
item.style.display = '';
}
- } );
+ });
// Hide the More button
- if ( this.moreContainer && this.moreContainer.style ) {
+ if (this.moreContainer && this.moreContainer.style) {
this.moreContainer.style.display = 'none';
}
@@ -258,7 +258,7 @@ class PriorityNav {
this.isEnabled = true;
// Only proceed if measurable
- if ( ! isMeasurable( this.list ) ) {
+ if (!isMeasurable(this.list)) {
// Schedule retry
this.scheduleRetry();
return;
@@ -267,101 +267,101 @@ class PriorityNav {
// Cache widths if needed (or if they contain zeros from previous hidden state)
const needsRecache =
this.itemWidths.length === 0 ||
- this.itemWidths.some( ( width ) => width === 0 );
+ this.itemWidths.some((width) => width === 0);
- if ( needsRecache ) {
- this.itemWidths = cacheItemWidths( this.list, this.items, () =>
+ if (needsRecache) {
+ this.itemWidths = cacheItemWidths(this.list, this.items, () =>
this.scheduleRetry()
);
}
// Recalculate overflow
- requestAnimationFrame( () => {
+ requestAnimationFrame(() => {
this.checkOverflow();
- } );
+ });
}
/**
* Schedule a retry when menu becomes visible
* @param {number} maxAttempts - Maximum number of retry attempts
*/
- scheduleRetry( maxAttempts = 20 ) {
- if ( this.retryTimeout ) {
- clearTimeout( this.retryTimeout );
+ scheduleRetry(maxAttempts = 20) {
+ if (this.retryTimeout) {
+ clearTimeout(this.retryTimeout);
}
let attempts = 0;
const tryEnable = () => {
attempts++;
- if ( isMeasurable( this.list ) && ! this.isInHamburgerMode() ) {
+ if (isMeasurable(this.list) && !this.isInHamburgerMode()) {
this.enablePriorityNav();
this.retryTimeout = null;
- } else if ( attempts < maxAttempts ) {
- this.retryTimeout = setTimeout( tryEnable, 100 );
+ } else if (attempts < maxAttempts) {
+ this.retryTimeout = setTimeout(tryEnable, 100);
} else {
// Give up after max attempts
this.retryTimeout = null;
}
};
- this.retryTimeout = setTimeout( tryEnable, 100 );
+ this.retryTimeout = setTimeout(tryEnable, 100);
}
/**
* Set up observer for responsive container changes
*/
setupResponsiveObserver() {
- if ( typeof MutationObserver === 'undefined' ) {
+ if (typeof MutationObserver === 'undefined') {
return;
}
- if ( ! this.responsiveContainer ) {
+ if (!this.responsiveContainer) {
return;
}
// Watch for attribute and class changes on responsive container
- this.mutationObserver = new MutationObserver( ( mutations ) => {
+ this.mutationObserver = new MutationObserver((mutations) => {
// Guard against detached elements
- if ( ! document.body.contains( this.nav ) ) {
+ if (!document.body.contains(this.nav)) {
return;
}
let shouldCheck = false;
- mutations.forEach( ( mutation ) => {
+ mutations.forEach((mutation) => {
if (
mutation.type === 'attributes' &&
- ( mutation.attributeName === 'aria-hidden' ||
- mutation.attributeName === 'class' )
+ (mutation.attributeName === 'aria-hidden' ||
+ mutation.attributeName === 'class')
) {
shouldCheck = true;
}
- } );
+ });
- if ( shouldCheck ) {
+ if (shouldCheck) {
const inHamburger = this.isInHamburgerMode();
- if ( inHamburger && this.isEnabled ) {
+ if (inHamburger && this.isEnabled) {
this.disablePriorityNav();
- } else if ( ! inHamburger && ! this.isEnabled ) {
+ } else if (!inHamburger && !this.isEnabled) {
this.enablePriorityNav();
}
}
- } );
+ });
- this.mutationObserver.observe( this.responsiveContainer, {
+ this.mutationObserver.observe(this.responsiveContainer, {
attributes: true,
- attributeFilter: [ 'aria-hidden', 'class' ],
- } );
+ attributeFilter: ['aria-hidden', 'class'],
+ });
// Also observe the list container for visibility changes
- if ( this.list && document.body.contains( this.list ) ) {
- this.mutationObserver.observe( this.list, {
+ if (this.list && document.body.contains(this.list)) {
+ this.mutationObserver.observe(this.list, {
attributes: true,
- attributeFilter: [ 'style', 'class' ],
+ attributeFilter: ['style', 'class'],
attributeOldValue: false,
- } );
+ });
}
}
@@ -370,13 +370,13 @@ class PriorityNav {
*/
checkOverflow() {
// Don't run if disabled (hamburger mode) or not measurable
- if ( ! this.isEnabled || ! isMeasurable( this.list ) ) {
+ if (!this.isEnabled || !isMeasurable(this.list)) {
this.isCalculating = false;
return;
}
// Guard against detached DOM elements
- if ( ! document.body.contains( this.nav ) ) {
+ if (!document.body.contains(this.nav)) {
this.isCalculating = false;
return;
}
@@ -384,12 +384,12 @@ class PriorityNav {
this.isCalculating = true;
// Ensure we have valid item widths
- if ( ! hasValidWidthCache( this.itemWidths, this.items.length ) ) {
- this.itemWidths = cacheItemWidths( this.list, this.items, () =>
+ if (!hasValidWidthCache(this.itemWidths, this.items.length)) {
+ this.itemWidths = cacheItemWidths(this.list, this.items, () =>
this.scheduleRetry()
);
// If still invalid, abort
- if ( ! hasValidWidthCache( this.itemWidths, this.items.length ) ) {
+ if (!hasValidWidthCache(this.itemWidths, this.items.length)) {
this.isCalculating = false;
return;
}
@@ -404,15 +404,15 @@ class PriorityNav {
);
// Handle edge case where more button is larger than available width
- if ( this.moreButtonWidth >= availableWidth ) {
- this.items.forEach( ( item ) => ( item.style.display = 'none' ) );
+ if (this.moreButtonWidth >= availableWidth) {
+ this.items.forEach((item) => (item.style.display = 'none'));
this.moreContainer.style.display = '';
this.isCalculating = false;
return;
}
// Get gap after early return check
- const gap = getGap( this.list, this.nav );
+ const gap = getGap(this.list, this.nav);
// Calculate visible items
const visibleCount = this.calculateVisibleItems(
@@ -422,9 +422,9 @@ class PriorityNav {
);
// Update display
- if ( visibleCount === this.items.length ) {
+ if (visibleCount === this.items.length) {
// All items fit
- this.items.forEach( ( item ) => ( item.style.display = '' ) );
+ this.items.forEach((item) => (item.style.display = ''));
this.moreContainer.style.display = 'none';
this.closeDropdown();
} else {
@@ -432,13 +432,13 @@ class PriorityNav {
this.moreContainer.style.display = 'none';
// Hide overflow items FIRST to prevent button from wrapping
- for ( let i = visibleCount; i < this.items.length; i++ ) {
- this.items[ i ].style.display = 'none';
+ for (let i = visibleCount; i < this.items.length; i++) {
+ this.items[i].style.display = 'none';
}
// Show visible items
- for ( let i = 0; i < visibleCount; i++ ) {
- this.items[ i ].style.display = '';
+ for (let i = 0; i < visibleCount; i++) {
+ this.items[i].style.display = '';
}
// Force a reflow to ensure layout updates before showing button
@@ -469,10 +469,10 @@ class PriorityNav {
calculateAvailableWidth() {
// Get actual visible container width - prefer the nav element itself
const navRect = this.nav.getBoundingClientRect();
- const navStyles = window.getComputedStyle( this.nav );
+ const navStyles = window.getComputedStyle(this.nav);
const padding =
- parseFloat( navStyles.paddingLeft ) +
- parseFloat( navStyles.paddingRight );
+ parseFloat(navStyles.paddingLeft) +
+ parseFloat(navStyles.paddingRight);
// Use nav width
const containerWidth = navRect.width > 0 ? navRect.width : 0;
@@ -487,17 +487,17 @@ class PriorityNav {
* @param {number} gap - Gap between items in pixels
* @return {number} Number of visible items
*/
- calculateVisibleItems( availableWidth, moreButtonWidth, gap ) {
+ calculateVisibleItems(availableWidth, moreButtonWidth, gap) {
// Calculate total width needed for all items
let totalWidth = 0;
- for ( let i = 0; i < this.items.length; i++ ) {
- const itemWidth = this.itemWidths[ i ];
+ for (let i = 0; i < this.items.length; i++) {
+ const itemWidth = this.itemWidths[i];
const gapWidth = i > 0 ? gap : 0;
totalWidth += gapWidth + itemWidth;
}
// If everything fits, show all items
- if ( totalWidth <= availableWidth ) {
+ if (totalWidth <= availableWidth) {
return this.items.length;
}
@@ -505,8 +505,8 @@ class PriorityNav {
let usedWidth = 0;
let visibleCount = 0;
- for ( let i = 0; i < this.items.length; i++ ) {
- const itemWidth = this.itemWidths[ i ];
+ for (let i = 0; i < this.items.length; i++) {
+ const itemWidth = this.itemWidths[i];
const gapWidth = i > 0 ? gap : 0;
const moreButtonGap = gap;
const itemTotalWidth = gapWidth + itemWidth;
@@ -517,7 +517,7 @@ class PriorityNav {
availableWidth;
// Always show at least one item
- if ( wouldFit || i === 0 ) {
+ if (wouldFit || i === 0) {
usedWidth += itemTotalWidth;
visibleCount++;
} else {
@@ -529,7 +529,7 @@ class PriorityNav {
}
toggleDropdown() {
- if ( this.isOpen ) {
+ if (this.isOpen) {
this.closeDropdown();
} else {
this.openDropdown();
@@ -537,23 +537,23 @@ class PriorityNav {
}
openDropdown() {
- if ( ! this.dropdown || ! this.moreButton ) {
+ if (!this.dropdown || !this.moreButton) {
return;
}
this.isOpen = true;
- this.dropdown.classList.add( 'is-open' );
- this.moreButton.setAttribute( 'aria-expanded', 'true' );
+ this.dropdown.classList.add('is-open');
+ this.moreButton.setAttribute('aria-expanded', 'true');
}
closeDropdown() {
- if ( ! this.dropdown || ! this.moreButton ) {
+ if (!this.dropdown || !this.moreButton) {
return;
}
this.isOpen = false;
- this.dropdown.classList.remove( 'is-open' );
- this.moreButton.setAttribute( 'aria-expanded', 'false' );
+ this.dropdown.classList.remove('is-open');
+ this.moreButton.setAttribute('aria-expanded', 'false');
// Close all open accordions
this.closeAllAccordions();
}
@@ -563,15 +563,15 @@ class PriorityNav {
* @param {HTMLElement} button - Accordion toggle button
* @param {HTMLElement} submenu - Submenu element
*/
- toggleAccordionItem( button, submenu ) {
- toggleAccordionItem( button, submenu, this, this.dropdown );
+ toggleAccordionItem(button, submenu) {
+ toggleAccordionItem(button, submenu, this, this.dropdown);
}
/**
* Close all open accordions
*/
closeAllAccordions() {
- closeAllAccordions( this );
+ closeAllAccordions(this);
}
/**
@@ -579,25 +579,25 @@ class PriorityNav {
*/
destroy() {
// Cleanup resize observer
- if ( this.resizeObserver ) {
+ if (this.resizeObserver) {
this.resizeObserver.disconnect();
this.resizeObserver = null;
}
// Cleanup mutation observer
- if ( this.mutationObserver ) {
+ if (this.mutationObserver) {
this.mutationObserver.disconnect();
this.mutationObserver = null;
}
// Cleanup retry timeout
- if ( this.retryTimeout ) {
- clearTimeout( this.retryTimeout );
+ if (this.retryTimeout) {
+ clearTimeout(this.retryTimeout);
this.retryTimeout = null;
}
// Cleanup event listeners
- if ( this.eventHandlers ) {
+ if (this.eventHandlers) {
const {
moreButtonClickHandler,
documentClickHandler,
@@ -605,14 +605,14 @@ class PriorityNav {
dropdownClickHandler,
} = this.eventHandlers;
- if ( this.moreButton && moreButtonClickHandler ) {
+ if (this.moreButton && moreButtonClickHandler) {
this.moreButton.removeEventListener(
'click',
moreButtonClickHandler
);
}
- if ( documentClickHandler ) {
+ if (documentClickHandler) {
document.removeEventListener(
'click',
documentClickHandler,
@@ -620,14 +620,11 @@ class PriorityNav {
);
}
- if ( documentKeydownHandler ) {
- document.removeEventListener(
- 'keydown',
- documentKeydownHandler
- );
+ if (documentKeydownHandler) {
+ document.removeEventListener('keydown', documentKeydownHandler);
}
- if ( this.dropdown && dropdownClickHandler ) {
+ if (this.dropdown && dropdownClickHandler) {
this.dropdown.removeEventListener(
'click',
dropdownClickHandler
diff --git a/src/dom/dom-builder.js b/src/dom/dom-builder.js
index 394c95f..d7a8281 100644
--- a/src/dom/dom-builder.js
+++ b/src/dom/dom-builder.js
@@ -1,10 +1,7 @@
/**
* DOM building utilities for PriorityNav
*/
-import {
- DEFAULT_MORE_LABEL,
- CHEVRON_ICON_SVG,
-} from '../utils/constants.js';
+import { DEFAULT_MORE_LABEL, CHEVRON_ICON_SVG } from '../utils/constants.js';
import { escapeHtml } from '../utils/html-utils.js';
import { extractNavItemData } from './dom-extractor.js';
@@ -14,35 +11,35 @@ import { extractNavItemData } from './dom-extractor.js';
* @param {string} moreLabel - Label for the More button
* @return {Object} Object containing moreContainer, moreButton, and dropdown elements
*/
-export function createMoreButton( list, moreLabel = DEFAULT_MORE_LABEL ) {
+export function createMoreButton(list, moreLabel = DEFAULT_MORE_LABEL) {
// Create the more container
- const moreContainer = document.createElement( 'div' );
- moreContainer.className = 'priority-nav-more';
+ const moreContainer = document.createElement('div');
+ moreContainer.className = 'priority-plus-navigation-more';
// Create button
- const moreButton = document.createElement( 'button' );
+ const moreButton = document.createElement('button');
moreButton.type = 'button';
- moreButton.className = 'priority-nav-more-button wp-block-navigation-item';
- moreButton.setAttribute( 'aria-expanded', 'false' );
- moreButton.setAttribute( 'aria-haspopup', 'true' );
- moreButton.setAttribute( 'aria-label', moreLabel );
+ moreButton.className = 'priority-plus-navigation-more-button wp-block-navigation-item';
+ moreButton.setAttribute('aria-expanded', 'false');
+ moreButton.setAttribute('aria-haspopup', 'true');
+ moreButton.setAttribute('aria-label', moreLabel);
moreButton.innerHTML = `
- ${ moreLabel }
- ${ CHEVRON_ICON_SVG }
+ ${moreLabel}
+ ${CHEVRON_ICON_SVG}
`;
// Create dropdown
- const dropdown = document.createElement( 'ul' );
+ const dropdown = document.createElement('ul');
dropdown.className =
- 'priority-nav-dropdown wp-block-navigation__submenu-container';
- dropdown.setAttribute( 'role', 'menu' );
+ 'priority-plus-navigation-dropdown wp-block-navigation__submenu-container';
+ dropdown.setAttribute('role', 'menu');
- moreContainer.appendChild( moreButton );
- moreContainer.appendChild( dropdown );
+ moreContainer.appendChild(moreButton);
+ moreContainer.appendChild(dropdown);
// Insert after the navigation list
- list.parentNode.appendChild( moreContainer );
+ list.parentNode.appendChild(moreContainer);
moreContainer.style.display = 'none';
return {
@@ -68,56 +65,54 @@ export function buildAccordionHTML(
submenuCounter,
openSubmenusOnClick
) {
- const submenuId = `${ instanceId }-submenu-${ submenuCounter.value++ }`;
+ const submenuId = `${instanceId}-submenu-${submenuCounter.value++}`;
let html = '';
- if ( data.hasSubmenu ) {
+ if (data.hasSubmenu) {
// Item has children - build accordion
- if ( openSubmenusOnClick ) {
+ if (openSubmenusOnClick) {
// Click mode: entire item is clickable
html = `
-
- ${ escapeHtml( data.text ) }
- ›
+
+ ${escapeHtml(data.text)}
+ ›
-