aleman 1.11.0 → 1.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/ChangeLog CHANGED
@@ -1,3 +1,11 @@
1
+ 2025.09.15, v1.12.0
2
+
3
+ fix:
4
+ - 12ad11b menu: left: submenuIndex
5
+
6
+ feature:
7
+ - 18b1403 menu: unselect submenu items
8
+
1
9
  2025.09.14, v1.11.0
2
10
 
3
11
  feature:
package/menu/README.md CHANGED
@@ -10,6 +10,7 @@
10
10
  - ✅[`set-position`](https://putout.cloudcmd.io/#/gist/215bb4654a27f15235f3e380a3035138/7f4af88aaa4863be4f1b8a90b9f0f4b1cf4744a0);
11
11
  - ✅[`submenu`](https://putout.cloudcmd.io/#/gist/b0a3b64d14f3497869a345e7e438d66e/feb671c4a59a555ff408af92fab602bae3a94e2f);
12
12
  - ✅[`hide-submenu`](https://putout.cloudcmd.io/#/gist/fdf6cf60a7fdfa2bae64279eda2ab023/ce0d5e24dc5e0b3436b7e87585c62e8a5132a9ab);
13
+ - ✅[`unsele-all-submenu-items`](https://putout.cloudcmd.io/#/gist/ad9d9c2d6b4f0daded8cdce7fc2e95d8/38c95ec76778bdf9e93bd1d15eef392874fc7c19);
13
14
 
14
15
  ## Hot Keys
15
16
 
@@ -5,7 +5,7 @@ export const keys = [
5
5
  export const preventDefault = true;
6
6
 
7
7
  export const listener = () => ({
8
- submenuIndex: 0,
8
+ submenuIndex: -1,
9
9
  insideSubmenu: false,
10
10
  showSubmenu: false,
11
11
  });
@@ -1,3 +1,4 @@
1
+ import * as unselectAllSubmenuItems from './unselect-all-submenu-items/index.js';
1
2
  import * as unselectWronglySelected from './unselect-wrongly-selected/index.js';
2
3
  import * as hideSubmenu from './hide-submenu/index.js';
3
4
  import * as submenu from './submenu/index.js';
@@ -16,4 +17,5 @@ export const rules = {
16
17
  'submenu': submenu,
17
18
  'hide-submenu': hideSubmenu,
18
19
  'unselect-wrongly-selected': unselectWronglySelected,
20
+ 'unselect-all-submenu-items': unselectAllSubmenuItems,
19
21
  };
@@ -0,0 +1,33 @@
1
+ <ul data-name="menu" class="menu menu-hidden">
2
+ <li data-name="menu-item" className="menu-item icon icon-view menu-item-selected">
3
+ <label data-menu-path="View">View</label>
4
+ </li>
5
+ <li data-name="menu-item" className="menu-item icon icon-edit">
6
+ <label data-menu-path="New">New</label>
7
+ <ul class="menu menu-hidden">
8
+ <li data-name="menu-item" className="menu-item icon icon-view">
9
+ <label data-menu-path="New.File">File</label>
10
+ </li>
11
+ <li data-name="menu-item" className="menu-item icon icon-edit menu-item-selected">
12
+ <label data-menu-path="New.Directory">Directory</label>
13
+ </li>
14
+ </ul>;
15
+ </li>
16
+ </ul>;
17
+
18
+ <ul data-name="menu" class="menu menu-hidden">
19
+ <li data-name="menu-item" className="menu-item icon icon-view menu-item-selected">
20
+ <label data-menu-path="View">View</label>
21
+ </li>
22
+ <li data-name="menu-item" className="menu-item icon icon-edit menu-show-submenu">
23
+ <label data-menu-path="New">New</label>
24
+ <ul data-name="menu" class="menu menu-hidden">
25
+ <li data-name="menu-item" className="menu-item icon icon-view menu-item-selected">
26
+ <label data-menu-path="New.File">File</label>
27
+ </li>
28
+ <li data-name="menu-item" className="menu-item icon icon-edit">
29
+ <label data-menu-path="New.Directory">Directory</label>
30
+ </li>
31
+ </ul>;
32
+ </li>
33
+ </ul>;
@@ -0,0 +1,34 @@
1
+ <ul data-name="menu" class="menu menu-hidden">
2
+ <li data-name="menu-item" className="menu-item icon icon-view menu-item-selected">
3
+ <label data-menu-path="View">View</label>
4
+ </li>
5
+ <li data-name="menu-item" className="menu-item icon icon-edit">
6
+ <label data-menu-path="New">New</label>
7
+ <ul class="menu menu-hidden">
8
+ <li data-name="menu-item" className="menu-item icon icon-view">
9
+ <label data-menu-path="New.File">File</label>
10
+ </li>
11
+ <li data-name="menu-item" className="menu-item icon icon-edit menu-item-selected">
12
+ <label data-menu-path="New.Directory">Directory</label>
13
+ </li>
14
+ </ul>;
15
+ </li>
16
+ </ul>;
17
+
18
+ <ul data-name="menu" class="menu menu-hidden">
19
+ <li data-name="menu-item" className="menu-item icon icon-view menu-item-selected">
20
+ <label data-menu-path="View">View</label>
21
+ </li>
22
+ <li data-name="menu-item" className="menu-item icon icon-edit menu-show-submenu">
23
+ <label data-menu-path="New">New</label>
24
+ <ul data-name="menu" class="menu menu-hidden">
25
+ <li data-name="menu-item" className="menu-item icon icon-view menu-item-selected">
26
+ <label data-menu-path="New.File">File</label>
27
+ </li>
28
+ <li data-name="menu-item" className="menu-item icon icon-edit">
29
+ <label data-menu-path="New.Directory">Directory</label>
30
+ </li>
31
+ </ul>;
32
+ </li>
33
+ </ul>;
34
+
@@ -0,0 +1,33 @@
1
+ <ul data-name="menu" class="menu menu-hidden">
2
+ <li data-name="menu-item" className="menu-item icon icon-view menu-item-selected">
3
+ <label data-menu-path="View">View</label>
4
+ </li>
5
+ <li data-name="menu-item" className="menu-item icon icon-edit">
6
+ <label data-menu-path="New">New</label>
7
+ <ul class="menu menu-hidden">
8
+ <li data-name="menu-item" className="menu-item icon icon-view">
9
+ <label data-menu-path="New.File">File</label>
10
+ </li>
11
+ <li data-name="menu-item" className="menu-item icon icon-edit">
12
+ <label data-menu-path="New.Directory">Directory</label>
13
+ </li>
14
+ </ul>;
15
+ </li>
16
+ </ul>;
17
+
18
+ <ul data-name="menu" class="menu menu-hidden">
19
+ <li data-name="menu-item" className="menu-item icon icon-view menu-item-selected">
20
+ <label data-menu-path="View">View</label>
21
+ </li>
22
+ <li data-name="menu-item" className="menu-item icon icon-edit menu-show-submenu">
23
+ <label data-menu-path="New">New</label>
24
+ <ul data-name="menu" class="menu menu-hidden">
25
+ <li data-name="menu-item" className="menu-item icon icon-view">
26
+ <label data-menu-path="New.File">File</label>
27
+ </li>
28
+ <li data-name="menu-item" className="menu-item icon icon-edit">
29
+ <label data-menu-path="New.Directory">Directory</label>
30
+ </li>
31
+ </ul>;
32
+ </li>
33
+ </ul>;
@@ -0,0 +1,33 @@
1
+ <ul data-name="menu" class="menu menu-hidden">
2
+ <li data-name="menu-item" className="menu-item icon icon-view menu-item-selected">
3
+ <label data-menu-path="View">View</label>
4
+ </li>
5
+ <li data-name="menu-item" className="menu-item icon icon-edit">
6
+ <label data-menu-path="New">New</label>
7
+ <ul class="menu menu-hidden">
8
+ <li data-name="menu-item" className="menu-item icon icon-view">
9
+ <label data-menu-path="New.File">File</label>
10
+ </li>
11
+ <li data-name="menu-item" className="menu-item icon icon-edit menu-item-selected">
12
+ <label data-menu-path="New.Directory">Directory</label>
13
+ </li>
14
+ </ul>;
15
+ </li>
16
+ </ul>;
17
+
18
+ <ul data-name="menu" class="menu menu-hidden">
19
+ <li data-name="menu-item" className="menu-item icon icon-view menu-item-selected">
20
+ <label data-menu-path="View">View</label>
21
+ </li>
22
+ <li data-name="menu-item" className="menu-item icon icon-edit menu-show-submenu">
23
+ <label data-menu-path="New">New</label>
24
+ <ul data-name="menu" class="menu menu-hidden">
25
+ <li data-name="menu-item" className="menu-item icon icon-view menu-item-selected">
26
+ <label data-menu-path="New.File">File</label>
27
+ </li>
28
+ <li data-name="menu-item" className="menu-item icon icon-edit">
29
+ <label data-menu-path="New.Directory">Directory</label>
30
+ </li>
31
+ </ul>;
32
+ </li>
33
+ </ul>;
@@ -0,0 +1,30 @@
1
+ import {operator, types} from 'putout';
2
+
3
+ const {isJSXElement} = types;
4
+ const {
5
+ hasTagName,
6
+ removeClassName,
7
+ } = operator;
8
+
9
+ export const report = () => `Unselect all submenu items`;
10
+
11
+ export const fix = (path) => {
12
+ removeClassName(path, 'menu-item-selected');
13
+ };
14
+
15
+ export const traverse = ({push, options}) => ({
16
+ JSXElement(path) {
17
+ const {showSubmenu} = options;
18
+
19
+ if (showSubmenu)
20
+ return;
21
+
22
+ if (!hasTagName(path, 'li'))
23
+ return;
24
+
25
+ if (!isJSXElement(path.parentPath.parentPath.parentPath))
26
+ return;
27
+
28
+ push(path);
29
+ },
30
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aleman",
3
- "version": "1.11.0",
3
+ "version": "1.12.0",
4
4
  "type": "module",
5
5
  "author": "coderaiser <mnemonic.enemy@gmail.com> (https://github.com/coderaiser)",
6
6
  "description": "🐊Putout-based framework for web",