kmod-cli 1.0.10

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 (66) hide show
  1. package/README.md +53 -0
  2. package/bin/gen-components.js +68 -0
  3. package/bin/index.js +153 -0
  4. package/component-templates/components/access-denied.tsx +130 -0
  5. package/component-templates/components/breadcumb.tsx +42 -0
  6. package/component-templates/components/count-down.tsx +94 -0
  7. package/component-templates/components/count-input.tsx +221 -0
  8. package/component-templates/components/date-range-calendar/button.tsx +61 -0
  9. package/component-templates/components/date-range-calendar/calendar.tsx +132 -0
  10. package/component-templates/components/date-range-calendar/date-input.tsx +259 -0
  11. package/component-templates/components/date-range-calendar/date-range-picker.tsx +594 -0
  12. package/component-templates/components/date-range-calendar/label.tsx +31 -0
  13. package/component-templates/components/date-range-calendar/popover.tsx +32 -0
  14. package/component-templates/components/date-range-calendar/select.tsx +125 -0
  15. package/component-templates/components/date-range-calendar/switch.tsx +30 -0
  16. package/component-templates/components/datetime-picker/button.tsx +61 -0
  17. package/component-templates/components/datetime-picker/calendar.tsx +156 -0
  18. package/component-templates/components/datetime-picker/datetime-picker.tsx +75 -0
  19. package/component-templates/components/datetime-picker/input.tsx +20 -0
  20. package/component-templates/components/datetime-picker/label.tsx +18 -0
  21. package/component-templates/components/datetime-picker/period-input.tsx +62 -0
  22. package/component-templates/components/datetime-picker/popover.tsx +32 -0
  23. package/component-templates/components/datetime-picker/select.tsx +125 -0
  24. package/component-templates/components/datetime-picker/time-picker-input.tsx +131 -0
  25. package/component-templates/components/datetime-picker/time-picker-utils.tsx +204 -0
  26. package/component-templates/components/datetime-picker/time-picker.tsx +59 -0
  27. package/component-templates/components/gradient-outline.tsx +233 -0
  28. package/component-templates/components/gradient-svg.tsx +157 -0
  29. package/component-templates/components/grid-layout.tsx +69 -0
  30. package/component-templates/components/hydrate-guard.tsx +40 -0
  31. package/component-templates/components/image.tsx +92 -0
  32. package/component-templates/components/loader-slash-gradient.tsx +85 -0
  33. package/component-templates/components/masonry-gallery.tsx +221 -0
  34. package/component-templates/components/modal.tsx +110 -0
  35. package/component-templates/components/multi-select.tsx +447 -0
  36. package/component-templates/components/non-hydration.tsx +27 -0
  37. package/component-templates/components/portal.tsx +34 -0
  38. package/component-templates/components/segments-circle.tsx +235 -0
  39. package/component-templates/components/single-select.tsx +248 -0
  40. package/component-templates/components/stroke-circle.tsx +57 -0
  41. package/component-templates/components/table/column-table.tsx +15 -0
  42. package/component-templates/components/table/data-table.tsx +339 -0
  43. package/component-templates/components/table/readme.tsx +95 -0
  44. package/component-templates/components/table/table.tsx +60 -0
  45. package/component-templates/components/text-hover-effect.tsx +120 -0
  46. package/component-templates/components/timout-loader.tsx +52 -0
  47. package/component-templates/components/toast.tsx +994 -0
  48. package/component-templates/configs/config.ts +33 -0
  49. package/component-templates/configs/feature-config.tsx +432 -0
  50. package/component-templates/configs/keys.ts +7 -0
  51. package/component-templates/core/api-service.ts +202 -0
  52. package/component-templates/core/calculate.ts +18 -0
  53. package/component-templates/core/idb.ts +166 -0
  54. package/component-templates/core/storage.ts +213 -0
  55. package/component-templates/hooks/count-down.ts +38 -0
  56. package/component-templates/hooks/fade-on-scroll.ts +52 -0
  57. package/component-templates/hooks/safe-action.ts +59 -0
  58. package/component-templates/hooks/spam-guard.ts +31 -0
  59. package/component-templates/lib/utils.ts +6 -0
  60. package/component-templates/providers/feature-guard.tsx +432 -0
  61. package/component-templates/queries/query.tsx +775 -0
  62. package/component-templates/utils/colors/color-by-text.ts +307 -0
  63. package/component-templates/utils/colors/stripe-effect.ts +100 -0
  64. package/component-templates/utils/hash/hash-aes.ts +35 -0
  65. package/components.json +348 -0
  66. package/package.json +60 -0
@@ -0,0 +1,348 @@
1
+ {
2
+ "access-denied": {
3
+ "path": "component-templates/components/access-denied.tsx",
4
+ "dependencies": [
5
+ "lucide-react"
6
+ ],
7
+ "devDependencies": []
8
+ },
9
+ "breadcumb": {
10
+ "path": "component-templates/components/breadcumb.tsx",
11
+ "dependencies": [
12
+ "lucide-react"
13
+ ],
14
+ "devDependencies": []
15
+ },
16
+ "count-down": {
17
+ "path": "component-templates/hooks/count-down.ts",
18
+ "dependencies": [
19
+ "zustand"
20
+ ],
21
+ "devDependencies": []
22
+ },
23
+ "count-input": {
24
+ "path": "component-templates/components/count-input.tsx",
25
+ "dependencies": [
26
+ "lucide-react"
27
+ ],
28
+ "devDependencies": []
29
+ },
30
+ "button": {
31
+ "path": "component-templates/components/datetime-picker/button.tsx",
32
+ "dependencies": [
33
+ "class-variance-authority",
34
+ "@radix-ui/react-slot"
35
+ ],
36
+ "devDependencies": []
37
+ },
38
+ "calendar": {
39
+ "path": "component-templates/components/datetime-picker/calendar.tsx",
40
+ "dependencies": [
41
+ "lucide-react",
42
+ "react-day-picker"
43
+ ],
44
+ "devDependencies": []
45
+ },
46
+ "date-input": {
47
+ "path": "component-templates/components/date-range-calendar/date-input.tsx",
48
+ "dependencies": [],
49
+ "devDependencies": []
50
+ },
51
+ "date-range-picker": {
52
+ "path": "component-templates/components/date-range-calendar/date-range-picker.tsx",
53
+ "dependencies": [
54
+ "@radix-ui/react-icons"
55
+ ],
56
+ "devDependencies": []
57
+ },
58
+ "label": {
59
+ "path": "component-templates/components/datetime-picker/label.tsx",
60
+ "dependencies": [
61
+ "class-variance-authority",
62
+ "@radix-ui/react-label"
63
+ ],
64
+ "devDependencies": []
65
+ },
66
+ "popover": {
67
+ "path": "component-templates/components/datetime-picker/popover.tsx",
68
+ "dependencies": [
69
+ "@radix-ui/react-popover"
70
+ ],
71
+ "devDependencies": []
72
+ },
73
+ "select": {
74
+ "path": "component-templates/components/datetime-picker/select.tsx",
75
+ "dependencies": [
76
+ "@radix-ui/react-icons",
77
+ "@radix-ui/react-select"
78
+ ],
79
+ "devDependencies": []
80
+ },
81
+ "switch": {
82
+ "path": "component-templates/components/date-range-calendar/switch.tsx",
83
+ "dependencies": [
84
+ "@radix-ui/react-switch"
85
+ ],
86
+ "devDependencies": []
87
+ },
88
+ "datetime-picker": {
89
+ "path": "component-templates/components/datetime-picker/datetime-picker.tsx",
90
+ "dependencies": [
91
+ "date-fns",
92
+ "lucide-react"
93
+ ],
94
+ "devDependencies": []
95
+ },
96
+ "input": {
97
+ "path": "component-templates/components/datetime-picker/input.tsx",
98
+ "dependencies": [],
99
+ "devDependencies": []
100
+ },
101
+ "period-input": {
102
+ "path": "component-templates/components/datetime-picker/period-input.tsx",
103
+ "dependencies": [],
104
+ "devDependencies": []
105
+ },
106
+ "time-picker-input": {
107
+ "path": "component-templates/components/datetime-picker/time-picker-input.tsx",
108
+ "dependencies": [],
109
+ "devDependencies": []
110
+ },
111
+ "time-picker-utils": {
112
+ "path": "component-templates/components/datetime-picker/time-picker-utils.tsx",
113
+ "dependencies": [],
114
+ "devDependencies": []
115
+ },
116
+ "time-picker": {
117
+ "path": "component-templates/components/datetime-picker/time-picker.tsx",
118
+ "dependencies": [],
119
+ "devDependencies": []
120
+ },
121
+ "gradient-outline": {
122
+ "path": "component-templates/components/gradient-outline.tsx",
123
+ "dependencies": [],
124
+ "devDependencies": []
125
+ },
126
+ "gradient-svg": {
127
+ "path": "component-templates/components/gradient-svg.tsx",
128
+ "dependencies": [
129
+ "react-svg"
130
+ ],
131
+ "devDependencies": []
132
+ },
133
+ "grid-layout": {
134
+ "path": "component-templates/components/grid-layout.tsx",
135
+ "dependencies": [
136
+ "tailwind-merge"
137
+ ],
138
+ "devDependencies": []
139
+ },
140
+ "hydrate-guard": {
141
+ "path": "component-templates/components/hydrate-guard.tsx",
142
+ "dependencies": [],
143
+ "devDependencies": []
144
+ },
145
+ "image": {
146
+ "path": "component-templates/components/image.tsx",
147
+ "dependencies": [],
148
+ "devDependencies": []
149
+ },
150
+ "loader-slash-gradient": {
151
+ "path": "component-templates/components/loader-slash-gradient.tsx",
152
+ "dependencies": [],
153
+ "devDependencies": []
154
+ },
155
+ "masonry-gallery": {
156
+ "path": "component-templates/components/masonry-gallery.tsx",
157
+ "dependencies": [
158
+ "lucide-react",
159
+ "react-loading-skeleton",
160
+ "react-responsive-masonry"
161
+ ],
162
+ "devDependencies": []
163
+ },
164
+ "modal": {
165
+ "path": "component-templates/components/modal.tsx",
166
+ "dependencies": [
167
+ "react-dom"
168
+ ],
169
+ "devDependencies": []
170
+ },
171
+ "multi-select": {
172
+ "path": "component-templates/components/multi-select.tsx",
173
+ "dependencies": [
174
+ "class-variance-authority",
175
+ "lucide-react"
176
+ ],
177
+ "devDependencies": []
178
+ },
179
+ "non-hydration": {
180
+ "path": "component-templates/components/non-hydration.tsx",
181
+ "dependencies": [],
182
+ "devDependencies": []
183
+ },
184
+ "portal": {
185
+ "path": "component-templates/components/portal.tsx",
186
+ "dependencies": [
187
+ "react-dom"
188
+ ],
189
+ "devDependencies": []
190
+ },
191
+ "segments-circle": {
192
+ "path": "component-templates/components/segments-circle.tsx",
193
+ "dependencies": [],
194
+ "devDependencies": []
195
+ },
196
+ "single-select": {
197
+ "path": "component-templates/components/single-select.tsx",
198
+ "dependencies": [
199
+ "lucide-react"
200
+ ],
201
+ "devDependencies": []
202
+ },
203
+ "stroke-circle": {
204
+ "path": "component-templates/components/stroke-circle.tsx",
205
+ "dependencies": [],
206
+ "devDependencies": []
207
+ },
208
+ "column-table": {
209
+ "path": "component-templates/components/table/column-table.tsx",
210
+ "dependencies": [
211
+ "@tanstack/react-table"
212
+ ],
213
+ "devDependencies": []
214
+ },
215
+ "data-table": {
216
+ "path": "component-templates/components/table/data-table.tsx",
217
+ "dependencies": [
218
+ "@tanstack/react-table",
219
+ "@tanstack/table-core"
220
+ ],
221
+ "devDependencies": []
222
+ },
223
+ "readme": {
224
+ "path": "component-templates/components/table/readme.tsx",
225
+ "dependencies": [
226
+ "@tanstack/react-table"
227
+ ],
228
+ "devDependencies": []
229
+ },
230
+ "table": {
231
+ "path": "component-templates/components/table/table.tsx",
232
+ "dependencies": [],
233
+ "devDependencies": []
234
+ },
235
+ "text-hover-effect": {
236
+ "path": "component-templates/components/text-hover-effect.tsx",
237
+ "dependencies": [
238
+ "motion/react"
239
+ ],
240
+ "devDependencies": []
241
+ },
242
+ "timout-loader": {
243
+ "path": "component-templates/components/timout-loader.tsx",
244
+ "dependencies": [],
245
+ "devDependencies": []
246
+ },
247
+ "toast": {
248
+ "path": "component-templates/components/toast.tsx",
249
+ "dependencies": [
250
+ "react-dom",
251
+ "lucide-react"
252
+ ],
253
+ "devDependencies": []
254
+ },
255
+ "config": {
256
+ "path": "component-templates/configs/config.ts",
257
+ "dependencies": [],
258
+ "devDependencies": []
259
+ },
260
+ "feature-config": {
261
+ "path": "component-templates/configs/feature-config.tsx",
262
+ "dependencies": [],
263
+ "devDependencies": []
264
+ },
265
+ "keys": {
266
+ "path": "component-templates/configs/keys.ts",
267
+ "dependencies": [],
268
+ "devDependencies": []
269
+ },
270
+ "api-service": {
271
+ "path": "component-templates/core/api-service.ts",
272
+ "dependencies": [
273
+ "axios"
274
+ ],
275
+ "devDependencies": []
276
+ },
277
+ "calculate": {
278
+ "path": "component-templates/core/calculate.ts",
279
+ "dependencies": [],
280
+ "devDependencies": []
281
+ },
282
+ "idb": {
283
+ "path": "component-templates/core/idb.ts",
284
+ "dependencies": [
285
+ "idb"
286
+ ],
287
+ "devDependencies": []
288
+ },
289
+ "storage": {
290
+ "path": "component-templates/core/storage.ts",
291
+ "dependencies": [],
292
+ "devDependencies": []
293
+ },
294
+ "fade-on-scroll": {
295
+ "path": "component-templates/hooks/fade-on-scroll.ts",
296
+ "dependencies": [],
297
+ "devDependencies": []
298
+ },
299
+ "safe-action": {
300
+ "path": "component-templates/hooks/safe-action.ts",
301
+ "dependencies": [
302
+ "lodash"
303
+ ],
304
+ "devDependencies": []
305
+ },
306
+ "spam-guard": {
307
+ "path": "component-templates/hooks/spam-guard.ts",
308
+ "dependencies": [],
309
+ "devDependencies": []
310
+ },
311
+ "utils": {
312
+ "path": "component-templates/lib/utils.ts",
313
+ "dependencies": [
314
+ "clsx",
315
+ "tailwind-merge"
316
+ ],
317
+ "devDependencies": []
318
+ },
319
+ "feature-guard": {
320
+ "path": "component-templates/providers/feature-guard.tsx",
321
+ "dependencies": [],
322
+ "devDependencies": []
323
+ },
324
+ "query": {
325
+ "path": "component-templates/queries/query.tsx",
326
+ "dependencies": [],
327
+ "devDependencies": []
328
+ },
329
+ "color-by-text": {
330
+ "path": "component-templates/utils/colors/color-by-text.ts",
331
+ "dependencies": [
332
+ "unidecode"
333
+ ],
334
+ "devDependencies": []
335
+ },
336
+ "stripe-effect": {
337
+ "path": "component-templates/utils/colors/stripe-effect.ts",
338
+ "dependencies": [],
339
+ "devDependencies": []
340
+ },
341
+ "hash-aes": {
342
+ "path": "component-templates/utils/hash/hash-aes.ts",
343
+ "dependencies": [
344
+ "crypto-js"
345
+ ],
346
+ "devDependencies": []
347
+ }
348
+ }
package/package.json ADDED
@@ -0,0 +1,60 @@
1
+ {
2
+ "name": "kmod-cli",
3
+ "version": "1.0.10",
4
+ "description": "Stack components utilities fast setup in projects",
5
+ "author": "kumo_d",
6
+ "license": "MIT",
7
+ "bin": {
8
+ "kumod": "./bin/index.js"
9
+ },
10
+ "type": "module",
11
+ "dependencies": {
12
+ "commander": "^14.0.0",
13
+ "fs-extra": "^11.3.1",
14
+ "inquirer": "^12.9.4"
15
+ },
16
+ "devDependencies": {
17
+ "@radix-ui/react-icons": "^1.3.2",
18
+ "@radix-ui/react-label": "^2.1.7",
19
+ "@radix-ui/react-popover": "^1.1.15",
20
+ "@radix-ui/react-select": "^2.2.6",
21
+ "@radix-ui/react-slot": "^1.2.3",
22
+ "@radix-ui/react-switch": "^1.2.6",
23
+ "@tailwindcss/postcss": "^4.1.12",
24
+ "@tailwindcss/vite": "^4.1.12",
25
+ "@tanstack/react-query": "5.85.5",
26
+ "@tanstack/react-table": "^8.21.3",
27
+ "@types/crypto-js": "^4.2.2",
28
+ "@types/lodash": "^4.17.20",
29
+ "@types/node": "^24.3.0",
30
+ "@types/react": "^19.1.10",
31
+ "@types/react-dom": "^19.1.7",
32
+ "@types/unidecode": "^1.1.0",
33
+ "axios": "^1.11.0",
34
+ "class-variance-authority": "^0.7.1",
35
+ "clsx": "^2.1.1",
36
+ "idb": "^8.0.3",
37
+ "lodash": "^4.17.21",
38
+ "lottie-react": "^2.4.1",
39
+ "lucide-react": "^0.541.0",
40
+ "motion": "^12.23.12",
41
+ "next": "^15.5.2",
42
+ "postcss": "^8.5.6",
43
+ "react": "^19.1.1",
44
+ "react-day-picker": "^9.9.0",
45
+ "react-dom": "^19.1.1",
46
+ "react-loading-skeleton": "^3.5.0",
47
+ "react-responsive-masonry": "^2.7.1",
48
+ "react-svg": "^16.3.0",
49
+ "tailwind-merge": "^3.3.1",
50
+ "tailwindcss": "^4.1.12",
51
+ "tsup": "^8.5.0",
52
+ "typescript": "^5.9.2",
53
+ "zustand": "^5.0.8"
54
+ },
55
+ "files": [
56
+ "bin",
57
+ "component-templates",
58
+ "components.json"
59
+ ]
60
+ }