menupro 0.7.0 → 0.7.1

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.
Files changed (3) hide show
  1. package/README.md +312 -2
  2. package/docs/index.md +312 -2
  3. package/package.json +9 -9
package/README.md CHANGED
@@ -1,5 +1,315 @@
1
1
  # NOTE
2
2
 
3
- This package is unde construction...
3
+ Create menu in your saas like Desktop App
4
4
 
5
- ![](./images/screenshot.png)
5
+ ## install
6
+
7
+ ```bash
8
+ npm i -D menupro
9
+ ```
10
+
11
+ ## setup
12
+
13
+ On top of your project
14
+
15
+ ```js
16
+ import 'menupro'
17
+ ```
18
+
19
+ ## use
20
+
21
+ in your app (React too)
22
+
23
+ ```js
24
+ <menupro.start {
25
+ ...{
26
+ name: "menupro",
27
+ element: "#root>nav",
28
+ ...menuItems
29
+ }
30
+ } />
31
+ ```
32
+
33
+ ## config
34
+
35
+ you can use a json to configure the menu.
36
+ Here some ways...
37
+
38
+ ```js
39
+ const menuItems = require("./menu.json")
40
+
41
+ or
42
+
43
+ import menuItems from "./menu.json"
44
+ ```
45
+
46
+ ```json
47
+
48
+ {
49
+ "author": "",
50
+ "charset": "UTF-8",
51
+ "title": "navmenu",
52
+ "short": "navmenu",
53
+ "keywords": "",
54
+ "nav": [
55
+ {
56
+ "name": "file",
57
+ "title": "",
58
+ "target": "",
59
+ "link": "",
60
+ "onclick": "",
61
+ "icon": "",
62
+ "lang": {
63
+ "en": "file"
64
+ },
65
+ "sub": [
66
+ {
67
+ "name": "test_file_1_1",
68
+ "title": "",
69
+ "target": "",
70
+ "link": "",
71
+ "onclick": "message('test')",
72
+ "icon": "<img src='/assets/icons/list-alt.svg' />",
73
+ "lang": {
74
+ "en": "test"
75
+ },
76
+ "sub": []
77
+ },
78
+ {
79
+ "name": "test_file_2_1",
80
+ "title": "",
81
+ "target": "",
82
+ "link": "",
83
+ "onclick": "message('test')",
84
+ "icon": "<img src='/assets/icons/tasks.svg' />",
85
+ "lang": {
86
+ "en": "test"
87
+ },
88
+ "sub": []
89
+ },
90
+ {
91
+ "name": ""
92
+ },
93
+ {
94
+ "name": "test_file_3_1",
95
+ "title": "",
96
+ "target": "",
97
+ "link": "",
98
+ "onclick": "message('test')",
99
+ "icon": "<img src='/assets/icons/thumbtack.svg' />",
100
+ "lang": {
101
+ "en": "test"
102
+ },
103
+ "sub": []
104
+ },
105
+ {
106
+ "name": "test_file_4_1",
107
+ "title": "",
108
+ "target": "",
109
+ "link": "",
110
+ "onclick": "message('test')",
111
+ "icon": "<img src='/assets/icons/users.svg' />",
112
+ "lang": {
113
+ "en": "test"
114
+ },
115
+ "sub": [
116
+ {
117
+ "name": "test_file_2_1",
118
+ "title": "",
119
+ "target": "",
120
+ "link": "",
121
+ "onclick": "message('test')",
122
+ "icon": "",
123
+ "lang": {
124
+ "en": "test"
125
+ },
126
+ "sub": [
127
+ {
128
+ "name": "test_file_3_1",
129
+ "title": "",
130
+ "target": "",
131
+ "link": "",
132
+ "onclick": "message('test')",
133
+ "icon": "<img src='/assets/icons/users-cog.svg' />",
134
+ "lang": {
135
+ "en": "test"
136
+ },
137
+ "sub": []
138
+ },
139
+ {
140
+ "name": ""
141
+ },
142
+ {
143
+ "name": "test_file_3_2",
144
+ "title": "",
145
+ "target": "",
146
+ "link": "",
147
+ "onclick": "message('test')",
148
+ "icon": "<img src='/assets/icons/wifi.svg' />",
149
+ "lang": {
150
+ "en": "test"
151
+ },
152
+ "sub": []
153
+ }
154
+ ]
155
+ }
156
+ ]
157
+ },
158
+ {
159
+ "name": "test_file_5_1",
160
+ "title": "",
161
+ "target": "",
162
+ "link": "",
163
+ "onclick": "message('test')",
164
+ "icon": "<img src='/assets/icons/wrench.svg' />",
165
+ "lang": {
166
+ "en": "test"
167
+ },
168
+ "sub": [
169
+ {
170
+ "name": "test_file_2_1",
171
+ "title": "",
172
+ "target": "",
173
+ "link": "",
174
+ "onclick": "message('test')",
175
+ "icon": "",
176
+ "lang": {
177
+ "en": "test"
178
+ },
179
+ "sub": [
180
+ {
181
+ "name": "test_file_3_1",
182
+ "title": "",
183
+ "target": "",
184
+ "link": "",
185
+ "onclick": "message('test')",
186
+ "icon": "",
187
+ "lang": {
188
+ "en": "test"
189
+ },
190
+ "sub": []
191
+ },
192
+ {
193
+ "name": "test_file_3_2",
194
+ "title": "",
195
+ "target": "",
196
+ "link": "",
197
+ "onclick": "message('test')",
198
+ "icon": "",
199
+ "lang": {
200
+ "en": "test"
201
+ },
202
+ "sub": []
203
+ }
204
+ ]
205
+ }
206
+ ]
207
+ }
208
+ ]
209
+ },
210
+ {
211
+ "name": "edit",
212
+ "title": "",
213
+ "target": "",
214
+ "link": "",
215
+ "onclick": "",
216
+ "icon": "",
217
+ "lang": {
218
+ "en": "edit"
219
+ },
220
+ "sub": [
221
+ {
222
+ "name": "test_edit_1",
223
+ "title": "",
224
+ "target": "",
225
+ "link": "",
226
+ "onclick": "message('test')",
227
+ "icon": "",
228
+ "lang": {
229
+ "en": "test"
230
+ },
231
+ "sub": [
232
+ {
233
+ "name": "test_edit_1_1",
234
+ "title": "",
235
+ "target": "",
236
+ "link": "",
237
+ "onclick": "message('test')",
238
+ "icon": "",
239
+ "lang": {
240
+ "en": "test"
241
+ },
242
+ "sub": []
243
+ },
244
+ {
245
+ "name": "test_edit_1_2",
246
+ "title": "",
247
+ "target": "",
248
+ "link": "",
249
+ "onclick": "message('test')",
250
+ "icon": "",
251
+ "lang": {
252
+ "en": "test"
253
+ },
254
+ "sub": []
255
+ },
256
+ {
257
+ "name": ""
258
+ },
259
+ {
260
+ "name": "test_edit_1_3",
261
+ "title": "",
262
+ "target": "",
263
+ "link": "",
264
+ "onclick": "message('test')",
265
+ "icon": "",
266
+ "lang": {
267
+ "en": "test"
268
+ },
269
+ "sub": [
270
+ {
271
+ "name": "test_edit_2_1",
272
+ "title": "",
273
+ "target": "",
274
+ "link": "",
275
+ "onclick": "message('test')",
276
+ "icon": "",
277
+ "lang": {
278
+ "en": "test"
279
+ },
280
+ "sub": []
281
+ }
282
+ ]
283
+ },
284
+ {
285
+ "name": "test_edit_1_4",
286
+ "title": "",
287
+ "target": "",
288
+ "link": "",
289
+ "onclick": "message('test')",
290
+ "icon": "",
291
+ "lang": {
292
+ "en": "test"
293
+ },
294
+ "sub": []
295
+ }
296
+ ]
297
+ }
298
+ ]
299
+ },
300
+ {
301
+ "name": "selection",
302
+ "title": "",
303
+ "target": "",
304
+ "link": "",
305
+ "onclick": "message('test')",
306
+ "icon": "",
307
+ "lang": {
308
+ "en": "selection"
309
+ },
310
+ "sub": []
311
+ }
312
+ ]
313
+ }
314
+
315
+ ```
package/docs/index.md CHANGED
@@ -1,5 +1,315 @@
1
1
  # NOTE
2
2
 
3
- This package is unde construction...
3
+ Create menu in your saas like Desktop App
4
4
 
5
- ![](./images/screenshot.png)
5
+ ## install
6
+
7
+ ```bash
8
+ npm i -D menupro
9
+ ```
10
+
11
+ ## setup
12
+
13
+ On top of your project
14
+
15
+ ```js
16
+ import 'menupro'
17
+ ```
18
+
19
+ ## use
20
+
21
+ in your app (React too)
22
+
23
+ ```js
24
+ <menupro.start {
25
+ ...{
26
+ name: "menupro",
27
+ element: "#root>nav",
28
+ ...menuItems
29
+ }
30
+ } />
31
+ ```
32
+
33
+ ## config
34
+
35
+ you can use a json to configure the menu.
36
+ Here some ways...
37
+
38
+ ```js
39
+ const menuItems = require("./menu.json")
40
+
41
+ or
42
+
43
+ import menuItems from "./menu.json"
44
+ ```
45
+
46
+ ```json
47
+
48
+ {
49
+ "author": "",
50
+ "charset": "UTF-8",
51
+ "title": "navmenu",
52
+ "short": "navmenu",
53
+ "keywords": "",
54
+ "nav": [
55
+ {
56
+ "name": "file",
57
+ "title": "",
58
+ "target": "",
59
+ "link": "",
60
+ "onclick": "",
61
+ "icon": "",
62
+ "lang": {
63
+ "en": "file"
64
+ },
65
+ "sub": [
66
+ {
67
+ "name": "test_file_1_1",
68
+ "title": "",
69
+ "target": "",
70
+ "link": "",
71
+ "onclick": "message('test')",
72
+ "icon": "<img src='/assets/icons/list-alt.svg' />",
73
+ "lang": {
74
+ "en": "test"
75
+ },
76
+ "sub": []
77
+ },
78
+ {
79
+ "name": "test_file_2_1",
80
+ "title": "",
81
+ "target": "",
82
+ "link": "",
83
+ "onclick": "message('test')",
84
+ "icon": "<img src='/assets/icons/tasks.svg' />",
85
+ "lang": {
86
+ "en": "test"
87
+ },
88
+ "sub": []
89
+ },
90
+ {
91
+ "name": ""
92
+ },
93
+ {
94
+ "name": "test_file_3_1",
95
+ "title": "",
96
+ "target": "",
97
+ "link": "",
98
+ "onclick": "message('test')",
99
+ "icon": "<img src='/assets/icons/thumbtack.svg' />",
100
+ "lang": {
101
+ "en": "test"
102
+ },
103
+ "sub": []
104
+ },
105
+ {
106
+ "name": "test_file_4_1",
107
+ "title": "",
108
+ "target": "",
109
+ "link": "",
110
+ "onclick": "message('test')",
111
+ "icon": "<img src='/assets/icons/users.svg' />",
112
+ "lang": {
113
+ "en": "test"
114
+ },
115
+ "sub": [
116
+ {
117
+ "name": "test_file_2_1",
118
+ "title": "",
119
+ "target": "",
120
+ "link": "",
121
+ "onclick": "message('test')",
122
+ "icon": "",
123
+ "lang": {
124
+ "en": "test"
125
+ },
126
+ "sub": [
127
+ {
128
+ "name": "test_file_3_1",
129
+ "title": "",
130
+ "target": "",
131
+ "link": "",
132
+ "onclick": "message('test')",
133
+ "icon": "<img src='/assets/icons/users-cog.svg' />",
134
+ "lang": {
135
+ "en": "test"
136
+ },
137
+ "sub": []
138
+ },
139
+ {
140
+ "name": ""
141
+ },
142
+ {
143
+ "name": "test_file_3_2",
144
+ "title": "",
145
+ "target": "",
146
+ "link": "",
147
+ "onclick": "message('test')",
148
+ "icon": "<img src='/assets/icons/wifi.svg' />",
149
+ "lang": {
150
+ "en": "test"
151
+ },
152
+ "sub": []
153
+ }
154
+ ]
155
+ }
156
+ ]
157
+ },
158
+ {
159
+ "name": "test_file_5_1",
160
+ "title": "",
161
+ "target": "",
162
+ "link": "",
163
+ "onclick": "message('test')",
164
+ "icon": "<img src='/assets/icons/wrench.svg' />",
165
+ "lang": {
166
+ "en": "test"
167
+ },
168
+ "sub": [
169
+ {
170
+ "name": "test_file_2_1",
171
+ "title": "",
172
+ "target": "",
173
+ "link": "",
174
+ "onclick": "message('test')",
175
+ "icon": "",
176
+ "lang": {
177
+ "en": "test"
178
+ },
179
+ "sub": [
180
+ {
181
+ "name": "test_file_3_1",
182
+ "title": "",
183
+ "target": "",
184
+ "link": "",
185
+ "onclick": "message('test')",
186
+ "icon": "",
187
+ "lang": {
188
+ "en": "test"
189
+ },
190
+ "sub": []
191
+ },
192
+ {
193
+ "name": "test_file_3_2",
194
+ "title": "",
195
+ "target": "",
196
+ "link": "",
197
+ "onclick": "message('test')",
198
+ "icon": "",
199
+ "lang": {
200
+ "en": "test"
201
+ },
202
+ "sub": []
203
+ }
204
+ ]
205
+ }
206
+ ]
207
+ }
208
+ ]
209
+ },
210
+ {
211
+ "name": "edit",
212
+ "title": "",
213
+ "target": "",
214
+ "link": "",
215
+ "onclick": "",
216
+ "icon": "",
217
+ "lang": {
218
+ "en": "edit"
219
+ },
220
+ "sub": [
221
+ {
222
+ "name": "test_edit_1",
223
+ "title": "",
224
+ "target": "",
225
+ "link": "",
226
+ "onclick": "message('test')",
227
+ "icon": "",
228
+ "lang": {
229
+ "en": "test"
230
+ },
231
+ "sub": [
232
+ {
233
+ "name": "test_edit_1_1",
234
+ "title": "",
235
+ "target": "",
236
+ "link": "",
237
+ "onclick": "message('test')",
238
+ "icon": "",
239
+ "lang": {
240
+ "en": "test"
241
+ },
242
+ "sub": []
243
+ },
244
+ {
245
+ "name": "test_edit_1_2",
246
+ "title": "",
247
+ "target": "",
248
+ "link": "",
249
+ "onclick": "message('test')",
250
+ "icon": "",
251
+ "lang": {
252
+ "en": "test"
253
+ },
254
+ "sub": []
255
+ },
256
+ {
257
+ "name": ""
258
+ },
259
+ {
260
+ "name": "test_edit_1_3",
261
+ "title": "",
262
+ "target": "",
263
+ "link": "",
264
+ "onclick": "message('test')",
265
+ "icon": "",
266
+ "lang": {
267
+ "en": "test"
268
+ },
269
+ "sub": [
270
+ {
271
+ "name": "test_edit_2_1",
272
+ "title": "",
273
+ "target": "",
274
+ "link": "",
275
+ "onclick": "message('test')",
276
+ "icon": "",
277
+ "lang": {
278
+ "en": "test"
279
+ },
280
+ "sub": []
281
+ }
282
+ ]
283
+ },
284
+ {
285
+ "name": "test_edit_1_4",
286
+ "title": "",
287
+ "target": "",
288
+ "link": "",
289
+ "onclick": "message('test')",
290
+ "icon": "",
291
+ "lang": {
292
+ "en": "test"
293
+ },
294
+ "sub": []
295
+ }
296
+ ]
297
+ }
298
+ ]
299
+ },
300
+ {
301
+ "name": "selection",
302
+ "title": "",
303
+ "target": "",
304
+ "link": "",
305
+ "onclick": "message('test')",
306
+ "icon": "",
307
+ "lang": {
308
+ "en": "selection"
309
+ },
310
+ "sub": []
311
+ }
312
+ ]
313
+ }
314
+
315
+ ```
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "menupro",
3
3
  "displayName": "menupro",
4
- "version": "0.7.0",
4
+ "version": "0.7.1",
5
5
  "description": "custom menu like OS by Dario Passariello",
6
6
  "copyright": "Dario Passariello",
7
7
  "license": "MIT",
@@ -116,7 +116,7 @@
116
116
  "watch": "webpack --watch --progress --color --mode production --config webpack.ts",
117
117
  "build": "webpack --progress --color --mode production --config webpack.ts",
118
118
  "-----------": "",
119
- "npm publish": "npm run build && cd dist && ls -al && npm publish"
119
+ "npm:publish": "npm run build && cd dist && ls -al && npm publish"
120
120
  },
121
121
  "engines": {
122
122
  "node": ">=18"
@@ -128,23 +128,23 @@
128
128
  "@babel/preset-react": "7.27.1",
129
129
  "@babel/preset-typescript": "7.27.1",
130
130
  "@babel/eslint-parser": "^7.28.4",
131
- "@eslint/js": "9.35.0",
131
+ "@eslint/js": "9.36.0",
132
132
  "@types/jest": "^30.0.0",
133
- "@types/node": "^24.3.1",
133
+ "@types/node": "^24.5.2",
134
134
  "@types/webpack-env": "1.18.8",
135
- "@typescript-eslint/eslint-plugin": "8.43.0",
136
- "@typescript-eslint/parser": "8.43.0",
135
+ "@typescript-eslint/eslint-plugin": "8.44.1",
136
+ "@typescript-eslint/parser": "8.44.1",
137
137
  "babel-loader": "10.0.0",
138
138
  "copy-webpack-plugin": "^13.0.1",
139
- "eslint": "9.35.0",
139
+ "eslint": "9.36.0",
140
140
  "css-loader": "7.1.2",
141
141
  "file-loader": "6.2.0",
142
142
  "jquery": "3.7.1",
143
143
  "ts-loader": "^9.5.4",
144
- "ts-jest": "29.4.1",
144
+ "ts-jest": "29.4.4",
145
145
  "ts-node": "10.9.2",
146
146
  "tslib": "^2.8.1",
147
- "sass": "^1.92.1",
147
+ "sass": "^1.93.2",
148
148
  "sass-loader": "^16.0.5",
149
149
  "style-loader": "^4.0.0",
150
150
  "terser-webpack-plugin": "^5.3.14",