shadcn-ember 0.0.4 → 0.2.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.
- package/README.md +23 -0
- package/dist/{api-BAwrG8sa.d.ts → api-CBYWzWuN.d.ts} +2 -2
- package/dist/{api-BAwrG8sa.d.ts.map → api-CBYWzWuN.d.ts.map} +1 -1
- package/dist/eslint/index.d.ts +27 -0
- package/dist/eslint/index.d.ts.map +1 -0
- package/dist/eslint/index.js +275 -0
- package/dist/eslint/index.js.map +1 -0
- package/dist/{index-DxzyGeF-.d.ts → index-aaLYI0WH.d.ts} +1 -1
- package/dist/{index-DxzyGeF-.d.ts.map → index-aaLYI0WH.d.ts.map} +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/mcp/index.js +3 -3
- package/dist/{mcp-Cs7F5EnE.js → mcp-Bhw_l5k7.js} +2 -2
- package/dist/{mcp-Cs7F5EnE.js.map → mcp-Bhw_l5k7.js.map} +1 -1
- package/dist/registry/index.d.ts +2 -2
- package/dist/registry/index.js +2 -2
- package/dist/{registry-iq7UxK5h.js → registry-C469sXUD.js} +3 -11
- package/dist/registry-C469sXUD.js.map +1 -0
- package/dist/schema/index.d.ts +1 -1
- package/dist/schema/index.js +1 -1
- package/dist/{schema-Brc22MYG.js → schema-o18wD0hu.js} +1 -1
- package/dist/{schema-Brc22MYG.js.map → schema-o18wD0hu.js.map} +1 -1
- package/package.json +20 -2
- package/dist/registry-iq7UxK5h.js.map +0 -1
package/README.md
CHANGED
|
@@ -38,6 +38,29 @@ npx shadcn-ember add
|
|
|
38
38
|
|
|
39
39
|
Visit http://shadcn-ember.com to view the documentation.
|
|
40
40
|
|
|
41
|
+
## ESLint Plugin
|
|
42
|
+
|
|
43
|
+
This package includes an ESLint plugin with rules specific to shadcn-ember components.
|
|
44
|
+
|
|
45
|
+
### Setup
|
|
46
|
+
|
|
47
|
+
Make sure you have `ember-eslint-parser` installed, then add the recommended config to your `eslint.config.mjs`:
|
|
48
|
+
|
|
49
|
+
```js
|
|
50
|
+
import shadcnEmber from 'shadcn-ember/eslint';
|
|
51
|
+
|
|
52
|
+
export default [
|
|
53
|
+
...shadcnEmber.configs.recommended,
|
|
54
|
+
// your other config...
|
|
55
|
+
];
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Rules
|
|
59
|
+
|
|
60
|
+
| Rule | Description | Fixable |
|
|
61
|
+
| --- | --- | --- |
|
|
62
|
+
| [require-class-arg](docs/rules/require-class-arg.md) | Require `@class` instead of `class` on component invocations | 🔧 |
|
|
63
|
+
|
|
41
64
|
## Aknowledgements
|
|
42
65
|
|
|
43
66
|
This is a fork of `shadcn-vue` CLI, adapted for Ember.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h as registryItemSchema, r as configSchema, u as registryIndexSchema } from "./index-
|
|
1
|
+
import { h as registryItemSchema, r as configSchema, u as registryIndexSchema } from "./index-aaLYI0WH.js";
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
|
|
4
4
|
//#region src/utils/get-config.d.ts
|
|
@@ -310,4 +310,4 @@ declare function getRegistriesIndex(options?: {
|
|
|
310
310
|
}): Promise<Record<string, string>>;
|
|
311
311
|
//#endregion
|
|
312
312
|
export { getRegistry as a, getRegistryIcons as c, getShadcnRegistryIndex as d, resolveRegistryItems as f, getRegistriesIndex as i, getRegistryItems as l, Config as m, getItemTargetPath as n, getRegistryBaseColor as o, resolveTree as p, getRegistriesConfig as r, getRegistryBaseColors as s, fetchTree as t, getRegistryStyles as u };
|
|
313
|
-
//# sourceMappingURL=api-
|
|
313
|
+
//# sourceMappingURL=api-CBYWzWuN.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-
|
|
1
|
+
{"version":3,"file":"api-CBYWzWuN.d.ts","names":[],"sources":["../src/utils/get-config.ts","../src/registry/api.ts"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as eslint0 from "eslint";
|
|
2
|
+
import { ESLint, Linter } from "eslint";
|
|
3
|
+
|
|
4
|
+
//#region src/eslint/index.d.ts
|
|
5
|
+
declare const rules: {
|
|
6
|
+
'require-class-arg': eslint0.Rule.RuleModule;
|
|
7
|
+
};
|
|
8
|
+
declare const plugin: ESLint.Plugin;
|
|
9
|
+
/**
|
|
10
|
+
* Flat config for enabling all shadcn-ember recommended rules.
|
|
11
|
+
* Requires `ember-eslint-parser` to be installed.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```js
|
|
15
|
+
* // eslint.config.mjs
|
|
16
|
+
* import shadcnEmber from 'shadcn-ember/eslint';
|
|
17
|
+
*
|
|
18
|
+
* export default [
|
|
19
|
+
* ...shadcnEmber.configs.recommended,
|
|
20
|
+
* // your other config...
|
|
21
|
+
* ];
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
declare const configs: Record<string, Linter.Config[]>;
|
|
25
|
+
//#endregion
|
|
26
|
+
export { configs, plugin as default, rules };
|
|
27
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/eslint/index.ts"],"sourcesContent":[],"mappings":";;;;cAIM;uBAEL,OAAA,CAAA,IAAA,CAAA;;AAN2C,cAQtC,MAFL,EAEa,MAAA,CAAO,MAFpB;;AAIA;;;;;;;;;;;;;;cAiBK,SAAS,eAAe,MAAA,CAAO"}
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
//#region src/eslint/rules/require-class-arg.ts
|
|
2
|
+
const ERROR_MESSAGE = "Pass `@class` instead of `class` to component `{{componentName}}`. Using `class` passes it as a splattribute and bypasses class merging via `cn()`/`cva()`.";
|
|
3
|
+
/**
|
|
4
|
+
* Known shadcn-ember component names that accept `@class`.
|
|
5
|
+
*/
|
|
6
|
+
const SHADCN_COMPONENTS = new Set([
|
|
7
|
+
"Accordion",
|
|
8
|
+
"AccordionItem",
|
|
9
|
+
"AccordionTrigger",
|
|
10
|
+
"AccordionContent",
|
|
11
|
+
"AlertDialog",
|
|
12
|
+
"AlertDialogTrigger",
|
|
13
|
+
"AlertDialogOverlay",
|
|
14
|
+
"AlertDialogContent",
|
|
15
|
+
"AlertDialogHeader",
|
|
16
|
+
"AlertDialogFooter",
|
|
17
|
+
"AlertDialogTitle",
|
|
18
|
+
"AlertDialogDescription",
|
|
19
|
+
"AlertDialogAction",
|
|
20
|
+
"AlertDialogCancel",
|
|
21
|
+
"Alert",
|
|
22
|
+
"AlertTitle",
|
|
23
|
+
"AlertDescription",
|
|
24
|
+
"AspectRatio",
|
|
25
|
+
"Avatar",
|
|
26
|
+
"AvatarImage",
|
|
27
|
+
"AvatarFallback",
|
|
28
|
+
"Badge",
|
|
29
|
+
"Breadcrumb",
|
|
30
|
+
"BreadcrumbList",
|
|
31
|
+
"BreadcrumbItem",
|
|
32
|
+
"BreadcrumbLink",
|
|
33
|
+
"BreadcrumbPage",
|
|
34
|
+
"BreadcrumbSeparator",
|
|
35
|
+
"BreadcrumbEllipsis",
|
|
36
|
+
"ButtonGroup",
|
|
37
|
+
"ButtonGroupText",
|
|
38
|
+
"ButtonGroupSeparator",
|
|
39
|
+
"Button",
|
|
40
|
+
"Card",
|
|
41
|
+
"CardHeader",
|
|
42
|
+
"CardTitle",
|
|
43
|
+
"CardDescription",
|
|
44
|
+
"CardAction",
|
|
45
|
+
"CardContent",
|
|
46
|
+
"CardFooter",
|
|
47
|
+
"Checkbox",
|
|
48
|
+
"CollapsibleTrigger",
|
|
49
|
+
"CollapsibleContent",
|
|
50
|
+
"Command",
|
|
51
|
+
"CommandDialog",
|
|
52
|
+
"CommandInput",
|
|
53
|
+
"CommandList",
|
|
54
|
+
"CommandEmpty",
|
|
55
|
+
"CommandGroup",
|
|
56
|
+
"CommandItem",
|
|
57
|
+
"CommandShortcut",
|
|
58
|
+
"CommandSeparator",
|
|
59
|
+
"ContextMenuTrigger",
|
|
60
|
+
"ContextMenuGroup",
|
|
61
|
+
"ContextMenuRadioGroup",
|
|
62
|
+
"ContextMenuSubTrigger",
|
|
63
|
+
"ContextMenuSubContent",
|
|
64
|
+
"ContextMenuContent",
|
|
65
|
+
"ContextMenuItem",
|
|
66
|
+
"ContextMenuCheckboxItem",
|
|
67
|
+
"ContextMenuRadioItem",
|
|
68
|
+
"ContextMenuLabel",
|
|
69
|
+
"ContextMenuSeparator",
|
|
70
|
+
"ContextMenuShortcut",
|
|
71
|
+
"Dialog",
|
|
72
|
+
"DialogTrigger",
|
|
73
|
+
"DialogOverlay",
|
|
74
|
+
"DialogContent",
|
|
75
|
+
"DialogHeader",
|
|
76
|
+
"DialogFooter",
|
|
77
|
+
"DialogTitle",
|
|
78
|
+
"DialogDescription",
|
|
79
|
+
"DialogClose",
|
|
80
|
+
"DropdownMenuTrigger",
|
|
81
|
+
"DropdownMenuGroup",
|
|
82
|
+
"DropdownMenuRadioGroup",
|
|
83
|
+
"DropdownMenuSubTrigger",
|
|
84
|
+
"DropdownMenuSubContent",
|
|
85
|
+
"DropdownMenuContent",
|
|
86
|
+
"DropdownMenuItem",
|
|
87
|
+
"DropdownMenuCheckboxItem",
|
|
88
|
+
"DropdownMenuRadioItem",
|
|
89
|
+
"DropdownMenuLabel",
|
|
90
|
+
"DropdownMenuSeparator",
|
|
91
|
+
"DropdownMenuShortcut",
|
|
92
|
+
"Empty",
|
|
93
|
+
"EmptyHeader",
|
|
94
|
+
"EmptyMedia",
|
|
95
|
+
"EmptyTitle",
|
|
96
|
+
"EmptyDescription",
|
|
97
|
+
"EmptyContent",
|
|
98
|
+
"FieldSet",
|
|
99
|
+
"FieldLegend",
|
|
100
|
+
"Field",
|
|
101
|
+
"FieldGroup",
|
|
102
|
+
"FieldContent",
|
|
103
|
+
"FieldLabel",
|
|
104
|
+
"FieldDescription",
|
|
105
|
+
"FieldSeparator",
|
|
106
|
+
"FieldError",
|
|
107
|
+
"FieldTitle",
|
|
108
|
+
"HoverCardTrigger",
|
|
109
|
+
"HoverCardContent",
|
|
110
|
+
"InputGroup",
|
|
111
|
+
"InputGroupAddon",
|
|
112
|
+
"InputGroupButton",
|
|
113
|
+
"InputGroupText",
|
|
114
|
+
"InputGroupInput",
|
|
115
|
+
"InputGroupTextarea",
|
|
116
|
+
"InputOTP",
|
|
117
|
+
"InputOTPGroup",
|
|
118
|
+
"InputOTPSlot",
|
|
119
|
+
"InputOTPSeparator",
|
|
120
|
+
"Input",
|
|
121
|
+
"Item",
|
|
122
|
+
"ItemMedia",
|
|
123
|
+
"ItemContent",
|
|
124
|
+
"ItemActions",
|
|
125
|
+
"ItemGroup",
|
|
126
|
+
"ItemSeparator",
|
|
127
|
+
"ItemTitle",
|
|
128
|
+
"ItemDescription",
|
|
129
|
+
"ItemHeader",
|
|
130
|
+
"ItemFooter",
|
|
131
|
+
"Kbd",
|
|
132
|
+
"KbdGroup",
|
|
133
|
+
"Label",
|
|
134
|
+
"NativeSelect",
|
|
135
|
+
"NativeSelectOptGroup",
|
|
136
|
+
"Pagination",
|
|
137
|
+
"PaginationContent",
|
|
138
|
+
"PaginationItem",
|
|
139
|
+
"PaginationLink",
|
|
140
|
+
"PaginationPrevious",
|
|
141
|
+
"PaginationNext",
|
|
142
|
+
"PaginationEllipsis",
|
|
143
|
+
"PopoverTrigger",
|
|
144
|
+
"PopoverContent",
|
|
145
|
+
"PopoverAnchor",
|
|
146
|
+
"Progress",
|
|
147
|
+
"RadioGroup",
|
|
148
|
+
"RadioGroupItem",
|
|
149
|
+
"ScrollArea",
|
|
150
|
+
"ScrollBar",
|
|
151
|
+
"SelectTrigger",
|
|
152
|
+
"SelectValue",
|
|
153
|
+
"SelectContent",
|
|
154
|
+
"SelectGroup",
|
|
155
|
+
"SelectLabel",
|
|
156
|
+
"SelectItem",
|
|
157
|
+
"SelectSeparator",
|
|
158
|
+
"SelectScrollUpButton",
|
|
159
|
+
"SelectScrollDownButton",
|
|
160
|
+
"Separator",
|
|
161
|
+
"SheetTrigger",
|
|
162
|
+
"SheetClose",
|
|
163
|
+
"SheetOverlay",
|
|
164
|
+
"SheetContent",
|
|
165
|
+
"SheetHeader",
|
|
166
|
+
"SheetFooter",
|
|
167
|
+
"SheetTitle",
|
|
168
|
+
"SheetDescription",
|
|
169
|
+
"SidebarProvider",
|
|
170
|
+
"Sidebar",
|
|
171
|
+
"SidebarTrigger",
|
|
172
|
+
"SidebarRail",
|
|
173
|
+
"SidebarInset",
|
|
174
|
+
"SidebarInput",
|
|
175
|
+
"SidebarHeader",
|
|
176
|
+
"SidebarFooter",
|
|
177
|
+
"SidebarSeparator",
|
|
178
|
+
"SidebarContent",
|
|
179
|
+
"SidebarGroup",
|
|
180
|
+
"SidebarGroupLabel",
|
|
181
|
+
"SidebarGroupAction",
|
|
182
|
+
"SidebarGroupContent",
|
|
183
|
+
"SidebarMenu",
|
|
184
|
+
"SidebarMenuItem",
|
|
185
|
+
"SidebarMenuButton",
|
|
186
|
+
"SidebarMenuAction",
|
|
187
|
+
"SidebarMenuBadge",
|
|
188
|
+
"SidebarMenuSkeleton",
|
|
189
|
+
"SidebarMenuSub",
|
|
190
|
+
"SidebarMenuSubItem",
|
|
191
|
+
"SidebarMenuSubButton",
|
|
192
|
+
"Skeleton",
|
|
193
|
+
"Slider",
|
|
194
|
+
"Toaster",
|
|
195
|
+
"Spinner",
|
|
196
|
+
"Switch",
|
|
197
|
+
"Table",
|
|
198
|
+
"TableHeader",
|
|
199
|
+
"TableBody",
|
|
200
|
+
"TableFooter",
|
|
201
|
+
"TableRow",
|
|
202
|
+
"TableHead",
|
|
203
|
+
"TableCell",
|
|
204
|
+
"TableCaption",
|
|
205
|
+
"Tabs",
|
|
206
|
+
"TabsList",
|
|
207
|
+
"TabsTrigger",
|
|
208
|
+
"TabsContent",
|
|
209
|
+
"Textarea",
|
|
210
|
+
"ToggleGroup",
|
|
211
|
+
"ToggleGroupItem",
|
|
212
|
+
"Toggle",
|
|
213
|
+
"TooltipTrigger",
|
|
214
|
+
"TooltipContent"
|
|
215
|
+
]);
|
|
216
|
+
function isShadcnComponent(tag) {
|
|
217
|
+
return SHADCN_COMPONENTS.has(tag);
|
|
218
|
+
}
|
|
219
|
+
const rule = {
|
|
220
|
+
meta: {
|
|
221
|
+
type: "problem",
|
|
222
|
+
docs: {
|
|
223
|
+
description: "require using `@class` instead of `class` on component invocations to ensure proper class merging",
|
|
224
|
+
category: "Best Practices",
|
|
225
|
+
url: "https://github.com/IgnaceMaes/shadcn-ember/blob/main/packages/cli/docs/rules/require-class-arg.md"
|
|
226
|
+
},
|
|
227
|
+
fixable: "code",
|
|
228
|
+
schema: [],
|
|
229
|
+
messages: { requireClassArg: ERROR_MESSAGE }
|
|
230
|
+
},
|
|
231
|
+
create(context) {
|
|
232
|
+
return { GlimmerElementNode(node) {
|
|
233
|
+
if (!isShadcnComponent(node.tag)) return;
|
|
234
|
+
for (const attr of node.attributes ?? []) if (attr.name === "class") context.report({
|
|
235
|
+
node: attr,
|
|
236
|
+
messageId: "requireClassArg",
|
|
237
|
+
data: { componentName: node.tag },
|
|
238
|
+
fix(fixer) {
|
|
239
|
+
const newText = context.sourceCode.getText(attr).replace(/^class/, "@class");
|
|
240
|
+
return fixer.replaceTextRange(attr.range, newText);
|
|
241
|
+
}
|
|
242
|
+
});
|
|
243
|
+
} };
|
|
244
|
+
}
|
|
245
|
+
};
|
|
246
|
+
var require_class_arg_default = rule;
|
|
247
|
+
|
|
248
|
+
//#endregion
|
|
249
|
+
//#region src/eslint/index.ts
|
|
250
|
+
const rules = { "require-class-arg": require_class_arg_default };
|
|
251
|
+
const plugin = { rules };
|
|
252
|
+
/**
|
|
253
|
+
* Flat config for enabling all shadcn-ember recommended rules.
|
|
254
|
+
* Requires `ember-eslint-parser` to be installed.
|
|
255
|
+
*
|
|
256
|
+
* @example
|
|
257
|
+
* ```js
|
|
258
|
+
* // eslint.config.mjs
|
|
259
|
+
* import shadcnEmber from 'shadcn-ember/eslint';
|
|
260
|
+
*
|
|
261
|
+
* export default [
|
|
262
|
+
* ...shadcnEmber.configs.recommended,
|
|
263
|
+
* // your other config...
|
|
264
|
+
* ];
|
|
265
|
+
* ```
|
|
266
|
+
*/
|
|
267
|
+
const configs = { recommended: [{
|
|
268
|
+
plugins: { "shadcn-ember": plugin },
|
|
269
|
+
rules: { "shadcn-ember/require-class-arg": "error" }
|
|
270
|
+
}] };
|
|
271
|
+
var eslint_default = plugin;
|
|
272
|
+
|
|
273
|
+
//#endregion
|
|
274
|
+
export { configs, eslint_default as default, rules };
|
|
275
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["rule: Rule.RuleModule","requireClassArg","plugin: ESLint.Plugin","configs: Record<string, Linter.Config[]>"],"sources":["../../src/eslint/rules/require-class-arg.ts","../../src/eslint/index.ts"],"sourcesContent":["import type { Rule } from 'eslint'\n\nconst ERROR_MESSAGE =\n 'Pass `@class` instead of `class` to component `{{componentName}}`. Using `class` passes it as a splattribute and bypasses class merging via `cn()`/`cva()`.'\n\n/**\n * Known shadcn-ember component names that accept `@class`.\n */\nconst SHADCN_COMPONENTS = new Set([\n // accordion\n 'Accordion', 'AccordionItem', 'AccordionTrigger', 'AccordionContent',\n // alert-dialog\n 'AlertDialog', 'AlertDialogTrigger', 'AlertDialogOverlay', 'AlertDialogContent', 'AlertDialogHeader', 'AlertDialogFooter', 'AlertDialogTitle', 'AlertDialogDescription', 'AlertDialogAction', 'AlertDialogCancel',\n // alert\n 'Alert', 'AlertTitle', 'AlertDescription',\n // aspect-ratio\n 'AspectRatio',\n // avatar\n 'Avatar', 'AvatarImage', 'AvatarFallback',\n // badge\n 'Badge',\n // breadcrumb\n 'Breadcrumb', 'BreadcrumbList', 'BreadcrumbItem', 'BreadcrumbLink', 'BreadcrumbPage', 'BreadcrumbSeparator', 'BreadcrumbEllipsis',\n // button-group\n 'ButtonGroup', 'ButtonGroupText', 'ButtonGroupSeparator',\n // button\n 'Button',\n // card\n 'Card', 'CardHeader', 'CardTitle', 'CardDescription', 'CardAction', 'CardContent', 'CardFooter',\n // checkbox\n 'Checkbox',\n // collapsible\n 'CollapsibleTrigger', 'CollapsibleContent',\n // command\n 'Command', 'CommandDialog', 'CommandInput', 'CommandList', 'CommandEmpty', 'CommandGroup', 'CommandItem', 'CommandShortcut', 'CommandSeparator',\n // context-menu\n 'ContextMenuTrigger', 'ContextMenuGroup', 'ContextMenuRadioGroup', 'ContextMenuSubTrigger', 'ContextMenuSubContent', 'ContextMenuContent', 'ContextMenuItem', 'ContextMenuCheckboxItem', 'ContextMenuRadioItem', 'ContextMenuLabel', 'ContextMenuSeparator', 'ContextMenuShortcut',\n // dialog\n 'Dialog', 'DialogTrigger', 'DialogOverlay', 'DialogContent', 'DialogHeader', 'DialogFooter', 'DialogTitle', 'DialogDescription', 'DialogClose',\n // dropdown-menu\n 'DropdownMenuTrigger', 'DropdownMenuGroup', 'DropdownMenuRadioGroup', 'DropdownMenuSubTrigger', 'DropdownMenuSubContent', 'DropdownMenuContent', 'DropdownMenuItem', 'DropdownMenuCheckboxItem', 'DropdownMenuRadioItem', 'DropdownMenuLabel', 'DropdownMenuSeparator', 'DropdownMenuShortcut',\n // empty\n 'Empty', 'EmptyHeader', 'EmptyMedia', 'EmptyTitle', 'EmptyDescription', 'EmptyContent',\n // field\n 'FieldSet', 'FieldLegend', 'Field', 'FieldGroup', 'FieldContent', 'FieldLabel', 'FieldDescription', 'FieldSeparator', 'FieldError', 'FieldTitle',\n // hover-card\n 'HoverCardTrigger', 'HoverCardContent',\n // input-group\n 'InputGroup', 'InputGroupAddon', 'InputGroupButton', 'InputGroupText', 'InputGroupInput', 'InputGroupTextarea',\n // input-otp\n 'InputOTP', 'InputOTPGroup', 'InputOTPSlot', 'InputOTPSeparator',\n // input\n 'Input',\n // item\n 'Item', 'ItemMedia', 'ItemContent', 'ItemActions', 'ItemGroup', 'ItemSeparator', 'ItemTitle', 'ItemDescription', 'ItemHeader', 'ItemFooter',\n // kbd\n 'Kbd', 'KbdGroup',\n // label\n 'Label',\n // native-select\n 'NativeSelect', 'NativeSelectOptGroup',\n // pagination\n 'Pagination', 'PaginationContent', 'PaginationItem', 'PaginationLink', 'PaginationPrevious', 'PaginationNext', 'PaginationEllipsis',\n // popover\n 'PopoverTrigger', 'PopoverContent', 'PopoverAnchor',\n // progress\n 'Progress',\n // radio-group\n 'RadioGroup', 'RadioGroupItem',\n // scroll-area\n 'ScrollArea', 'ScrollBar',\n // select\n 'SelectTrigger', 'SelectValue', 'SelectContent', 'SelectGroup', 'SelectLabel', 'SelectItem', 'SelectSeparator', 'SelectScrollUpButton', 'SelectScrollDownButton',\n // separator\n 'Separator',\n // sheet\n 'SheetTrigger', 'SheetClose', 'SheetOverlay', 'SheetContent', 'SheetHeader', 'SheetFooter', 'SheetTitle', 'SheetDescription',\n // sidebar\n 'SidebarProvider', 'Sidebar', 'SidebarTrigger', 'SidebarRail', 'SidebarInset', 'SidebarInput', 'SidebarHeader', 'SidebarFooter', 'SidebarSeparator', 'SidebarContent', 'SidebarGroup', 'SidebarGroupLabel', 'SidebarGroupAction', 'SidebarGroupContent', 'SidebarMenu', 'SidebarMenuItem', 'SidebarMenuButton', 'SidebarMenuAction', 'SidebarMenuBadge', 'SidebarMenuSkeleton', 'SidebarMenuSub', 'SidebarMenuSubItem', 'SidebarMenuSubButton',\n // skeleton\n 'Skeleton',\n // slider\n 'Slider',\n // sonner\n 'Toaster',\n // spinner\n 'Spinner',\n // switch\n 'Switch',\n // table\n 'Table', 'TableHeader', 'TableBody', 'TableFooter', 'TableRow', 'TableHead', 'TableCell', 'TableCaption',\n // tabs\n 'Tabs', 'TabsList', 'TabsTrigger', 'TabsContent',\n // textarea\n 'Textarea',\n // toggle-group\n 'ToggleGroup', 'ToggleGroupItem',\n // toggle\n 'Toggle',\n // tooltip\n 'TooltipTrigger', 'TooltipContent',\n])\n\nfunction isShadcnComponent(tag: string): boolean {\n return SHADCN_COMPONENTS.has(tag)\n}\n\nconst rule: Rule.RuleModule = {\n meta: {\n type: 'problem',\n docs: {\n description:\n 'require using `@class` instead of `class` on component invocations to ensure proper class merging',\n category: 'Best Practices',\n url: 'https://github.com/IgnaceMaes/shadcn-ember/blob/main/packages/cli/docs/rules/require-class-arg.md',\n },\n fixable: 'code',\n schema: [],\n messages: {\n requireClassArg: ERROR_MESSAGE,\n },\n },\n\n create(context) {\n return {\n GlimmerElementNode(node: Rule.Node & { tag: string; attributes: Array<{ name: string; range: [number, number] }> }) {\n if (!isShadcnComponent(node.tag)) {\n return\n }\n\n for (const attr of node.attributes ?? []) {\n if (attr.name === 'class') {\n context.report({\n node: attr as unknown as Rule.Node,\n messageId: 'requireClassArg',\n data: { componentName: node.tag },\n fix(fixer) {\n // Replace 'class' with '@class' in the attribute name\n // The attribute range starts at the attribute name\n const sourceCode = context.sourceCode\n const attrText = sourceCode.getText(attr as unknown as Rule.Node)\n const newText = attrText.replace(/^class/, '@class')\n return fixer.replaceTextRange(attr.range, newText)\n },\n })\n }\n }\n },\n }\n },\n}\n\nexport default rule\n","import type { ESLint, Linter } from 'eslint'\n\nimport requireClassArg from './rules/require-class-arg'\n\nconst rules = {\n 'require-class-arg': requireClassArg,\n}\n\nconst plugin: ESLint.Plugin = {\n rules,\n}\n\n/**\n * Flat config for enabling all shadcn-ember recommended rules.\n * Requires `ember-eslint-parser` to be installed.\n *\n * @example\n * ```js\n * // eslint.config.mjs\n * import shadcnEmber from 'shadcn-ember/eslint';\n *\n * export default [\n * ...shadcnEmber.configs.recommended,\n * // your other config...\n * ];\n * ```\n */\nconst configs: Record<string, Linter.Config[]> = {\n recommended: [\n {\n plugins: {\n 'shadcn-ember': plugin,\n },\n rules: {\n 'shadcn-ember/require-class-arg': 'error',\n },\n },\n ],\n}\n\nexport default plugin\nexport { configs, rules }\n"],"mappings":";AAEA,MAAM,gBACJ;;;;AAKF,MAAM,oBAAoB,IAAI,IAAI;CAEhC;CAAa;CAAiB;CAAoB;CAElD;CAAe;CAAsB;CAAsB;CAAsB;CAAqB;CAAqB;CAAoB;CAA0B;CAAqB;CAE9L;CAAS;CAAc;CAEvB;CAEA;CAAU;CAAe;CAEzB;CAEA;CAAc;CAAkB;CAAkB;CAAkB;CAAkB;CAAuB;CAE7G;CAAe;CAAmB;CAElC;CAEA;CAAQ;CAAc;CAAa;CAAmB;CAAc;CAAe;CAEnF;CAEA;CAAsB;CAEtB;CAAW;CAAiB;CAAgB;CAAe;CAAgB;CAAgB;CAAe;CAAmB;CAE7H;CAAsB;CAAoB;CAAyB;CAAyB;CAAyB;CAAsB;CAAmB;CAA2B;CAAwB;CAAoB;CAAwB;CAE7P;CAAU;CAAiB;CAAiB;CAAiB;CAAgB;CAAgB;CAAe;CAAqB;CAEjI;CAAuB;CAAqB;CAA0B;CAA0B;CAA0B;CAAuB;CAAoB;CAA4B;CAAyB;CAAqB;CAAyB;CAExQ;CAAS;CAAe;CAAc;CAAc;CAAoB;CAExE;CAAY;CAAe;CAAS;CAAc;CAAgB;CAAc;CAAoB;CAAkB;CAAc;CAEpI;CAAoB;CAEpB;CAAc;CAAmB;CAAoB;CAAkB;CAAmB;CAE1F;CAAY;CAAiB;CAAgB;CAE7C;CAEA;CAAQ;CAAa;CAAe;CAAe;CAAa;CAAiB;CAAa;CAAmB;CAAc;CAE/H;CAAO;CAEP;CAEA;CAAgB;CAEhB;CAAc;CAAqB;CAAkB;CAAkB;CAAsB;CAAkB;CAE/G;CAAkB;CAAkB;CAEpC;CAEA;CAAc;CAEd;CAAc;CAEd;CAAiB;CAAe;CAAiB;CAAe;CAAe;CAAc;CAAmB;CAAwB;CAExI;CAEA;CAAgB;CAAc;CAAgB;CAAgB;CAAe;CAAe;CAAc;CAE1G;CAAmB;CAAW;CAAkB;CAAe;CAAgB;CAAgB;CAAiB;CAAiB;CAAoB;CAAkB;CAAgB;CAAqB;CAAsB;CAAuB;CAAe;CAAmB;CAAqB;CAAqB;CAAoB;CAAuB;CAAkB;CAAsB;CAExZ;CAEA;CAEA;CAEA;CAEA;CAEA;CAAS;CAAe;CAAa;CAAe;CAAY;CAAa;CAAa;CAE1F;CAAQ;CAAY;CAAe;CAEnC;CAEA;CAAe;CAEf;CAEA;CAAkB;CACnB,CAAC;AAEF,SAAS,kBAAkB,KAAsB;AAC/C,QAAO,kBAAkB,IAAI,IAAI;;AAGnC,MAAMA,OAAwB;CAC5B,MAAM;EACJ,MAAM;EACN,MAAM;GACJ,aACE;GACF,UAAU;GACV,KAAK;GACN;EACD,SAAS;EACT,QAAQ,EAAE;EACV,UAAU,EACR,iBAAiB,eAClB;EACF;CAED,OAAO,SAAS;AACd,SAAO,EACL,mBAAmB,MAAiG;AAClH,OAAI,CAAC,kBAAkB,KAAK,IAAI,CAC9B;AAGF,QAAK,MAAM,QAAQ,KAAK,cAAc,EAAE,CACtC,KAAI,KAAK,SAAS,QAChB,SAAQ,OAAO;IACb,MAAM;IACN,WAAW;IACX,MAAM,EAAE,eAAe,KAAK,KAAK;IACjC,IAAI,OAAO;KAKT,MAAM,UAFa,QAAQ,WACC,QAAQ,KAA6B,CACxC,QAAQ,UAAU,SAAS;AACpD,YAAO,MAAM,iBAAiB,KAAK,OAAO,QAAQ;;IAErD,CAAC;KAIT;;CAEJ;AAED,gCAAe;;;;ACpJf,MAAM,QAAQ,EACZ,qBAAqBC,2BACtB;AAED,MAAMC,SAAwB,EAC5B,OACD;;;;;;;;;;;;;;;;AAiBD,MAAMC,UAA2C,EAC/C,aAAa,CACX;CACE,SAAS,EACP,gBAAgB,QACjB;CACD,OAAO,EACL,kCAAkC,SACnC;CACF,CACF,EACF;AAED,qBAAe"}
|
|
@@ -1447,4 +1447,4 @@ declare const searchResultsSchema: z.ZodObject<{
|
|
|
1447
1447
|
declare const registriesIndexSchema: z.ZodRecord<z.ZodString, z.ZodString>;
|
|
1448
1448
|
//#endregion
|
|
1449
1449
|
export { workspaceConfigSchema as C, stylesSchema as S, registryItemTypeSchema as _, rawConfigSchema as a, searchResultItemSchema as b, registryConfigItemSchema as c, registryItemCssSchema as d, registryItemCssVarsSchema as f, registryItemTailwindSchema as g, registryItemSchema as h, iconsSchema as i, registryConfigSchema as l, registryItemFileSchema as m, RegistryItem as n, registriesIndexSchema as o, registryItemEnvVarsSchema as p, configSchema as r, registryBaseColorSchema as s, Registry as t, registryIndexSchema as u, registryResolvedItemsTreeSchema as v, searchResultsSchema as x, registrySchema as y };
|
|
1450
|
-
//# sourceMappingURL=index-
|
|
1450
|
+
//# sourceMappingURL=index-aaLYI0WH.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-aaLYI0WH.d.ts","names":[],"sources":["../src/registry/schema.ts"],"sourcesContent":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import "./index-
|
|
3
|
-
import { a as getRegistry, c as getRegistryIcons, d as getShadcnRegistryIndex, f as resolveRegistryItems, i as getRegistriesIndex, l as getRegistryItems, n as getItemTargetPath, o as getRegistryBaseColor, p as resolveTree, r as getRegistriesConfig, s as getRegistryBaseColors, t as fetchTree, u as getRegistryStyles } from "./api-
|
|
2
|
+
import "./index-aaLYI0WH.js";
|
|
3
|
+
import { a as getRegistry, c as getRegistryIcons, d as getShadcnRegistryIndex, f as resolveRegistryItems, i as getRegistriesIndex, l as getRegistryItems, n as getItemTargetPath, o as getRegistryBaseColor, p as resolveTree, r as getRegistriesConfig, s as getRegistryBaseColors, t as fetchTree, u as getRegistryStyles } from "./api-CBYWzWuN.js";
|
|
4
4
|
export { fetchTree, getItemTargetPath, getRegistriesConfig, getRegistriesIndex, getRegistry, getRegistryBaseColor, getRegistryBaseColors, getRegistryIcons, getRegistryItems, getRegistryStyles, getShadcnRegistryIndex, resolveRegistryItems, resolveTree };
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { A as mergeEnvContent, B as DEFAULT_TAILWIND_CSS, C as configWithDefaults, D as ICON_LIBRARIES, E as transform, F as getProjectInfo, G as getConfig, H as createConfig, I as getProjectTailwindVersionFromConfig, K as getWorkspaceConfig, L as getPackageInfo, M as spinner, N as logger, O as findExistingEnvFile, P as getProjectConfig, R as DEFAULT_COMPONENTS, S as clearRegistryContext, T as updateFiles, U as findCommonRoot, V as DEFAULT_UTILS, W as findPackageRoot, _ as _createSourceFile, a as getRegistriesIndex, at as highlighter, b as handleError, c as getRegistryBaseColors, ct as DEPRECATED_COMPONENTS, d as getRegistryStyles, f as getShadcnRegistryIndex, g as resolveRegistryTree, h as fetchRegistryItems, i as getRegistriesConfig, j as parseRegistryAndItemFromString, k as getNewEnvKeys, l as getRegistryIcons, m as resolveTree, n as fetchTree, o as getRegistry, ot as BASE_COLORS, p as resolveRegistryItems, q as resolveConfigPaths, r as getItemTargetPath, s as getRegistryBaseColor, st as BUILTIN_REGISTRIES, tt as RegistryNotConfiguredError, u as getRegistryItems, v as _getQuoteChar, w as isUniversalRegistryItem, x as buildUrlAndHeadersForRegistryItem, y as updateTailwindConfig, z as DEFAULT_TAILWIND_CONFIG } from "./registry-
|
|
3
|
-
import { _ as registrySchema, p as registryItemSchema, r as rawConfigSchema } from "./schema-
|
|
4
|
-
import { t as server } from "./mcp-
|
|
2
|
+
import { A as mergeEnvContent, B as DEFAULT_TAILWIND_CSS, C as configWithDefaults, D as ICON_LIBRARIES, E as transform, F as getProjectInfo, G as getConfig, H as createConfig, I as getProjectTailwindVersionFromConfig, K as getWorkspaceConfig, L as getPackageInfo, M as spinner, N as logger, O as findExistingEnvFile, P as getProjectConfig, R as DEFAULT_COMPONENTS, S as clearRegistryContext, T as updateFiles, U as findCommonRoot, V as DEFAULT_UTILS, W as findPackageRoot, _ as _createSourceFile, a as getRegistriesIndex, at as highlighter, b as handleError, c as getRegistryBaseColors, ct as DEPRECATED_COMPONENTS, d as getRegistryStyles, f as getShadcnRegistryIndex, g as resolveRegistryTree, h as fetchRegistryItems, i as getRegistriesConfig, j as parseRegistryAndItemFromString, k as getNewEnvKeys, l as getRegistryIcons, m as resolveTree, n as fetchTree, o as getRegistry, ot as BASE_COLORS, p as resolveRegistryItems, q as resolveConfigPaths, r as getItemTargetPath, s as getRegistryBaseColor, st as BUILTIN_REGISTRIES, tt as RegistryNotConfiguredError, u as getRegistryItems, v as _getQuoteChar, w as isUniversalRegistryItem, x as buildUrlAndHeadersForRegistryItem, y as updateTailwindConfig, z as DEFAULT_TAILWIND_CONFIG } from "./registry-C469sXUD.js";
|
|
3
|
+
import { _ as registrySchema, p as registryItemSchema, r as rawConfigSchema } from "./schema-o18wD0hu.js";
|
|
4
|
+
import { t as server } from "./mcp-Bhw_l5k7.js";
|
|
5
5
|
import { Command } from "commander";
|
|
6
6
|
import path, { isAbsolute, join, normalize, resolve, sep } from "pathe";
|
|
7
7
|
import prompts from "prompts";
|
|
@@ -2258,7 +2258,7 @@ const migrate = new Command().name("migrate").description("run a migration.").ar
|
|
|
2258
2258
|
|
|
2259
2259
|
//#endregion
|
|
2260
2260
|
//#region package.json
|
|
2261
|
-
var version = "0.
|
|
2261
|
+
var version = "0.2.1";
|
|
2262
2262
|
|
|
2263
2263
|
//#endregion
|
|
2264
2264
|
//#region src/index.ts
|