@fnd-platform/cms 1.0.0-alpha.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/LICENSE +21 -0
- package/README.md +283 -0
- package/lib/cms-project.d.ts +127 -0
- package/lib/cms-project.d.ts.map +1 -0
- package/lib/cms-project.js +343 -0
- package/lib/cms-project.js.map +1 -0
- package/lib/index.d.ts +11 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +20 -0
- package/lib/index.js.map +1 -0
- package/lib/options.d.ts +59 -0
- package/lib/options.d.ts.map +1 -0
- package/lib/options.js +3 -0
- package/lib/options.js.map +1 -0
- package/lib/templates/admin-breadcrumbs.d.ts +13 -0
- package/lib/templates/admin-breadcrumbs.d.ts.map +1 -0
- package/lib/templates/admin-breadcrumbs.js +80 -0
- package/lib/templates/admin-breadcrumbs.js.map +1 -0
- package/lib/templates/admin-content-route.d.ts +18 -0
- package/lib/templates/admin-content-route.d.ts.map +1 -0
- package/lib/templates/admin-content-route.js +100 -0
- package/lib/templates/admin-content-route.js.map +1 -0
- package/lib/templates/admin-content-type-route.d.ts +9 -0
- package/lib/templates/admin-content-type-route.d.ts.map +1 -0
- package/lib/templates/admin-content-type-route.js +96 -0
- package/lib/templates/admin-content-type-route.js.map +1 -0
- package/lib/templates/admin-header.d.ts +13 -0
- package/lib/templates/admin-header.d.ts.map +1 -0
- package/lib/templates/admin-header.js +123 -0
- package/lib/templates/admin-header.js.map +1 -0
- package/lib/templates/admin-index.d.ts +9 -0
- package/lib/templates/admin-index.d.ts.map +1 -0
- package/lib/templates/admin-index.js +60 -0
- package/lib/templates/admin-index.js.map +1 -0
- package/lib/templates/admin-layout.d.ts +10 -0
- package/lib/templates/admin-layout.d.ts.map +1 -0
- package/lib/templates/admin-layout.js +46 -0
- package/lib/templates/admin-layout.js.map +1 -0
- package/lib/templates/admin-sidebar.d.ts +13 -0
- package/lib/templates/admin-sidebar.d.ts.map +1 -0
- package/lib/templates/admin-sidebar.js +149 -0
- package/lib/templates/admin-sidebar.js.map +1 -0
- package/lib/templates/content-editor.d.ts +10 -0
- package/lib/templates/content-editor.d.ts.map +1 -0
- package/lib/templates/content-editor.js +354 -0
- package/lib/templates/content-editor.js.map +1 -0
- package/lib/templates/content-schema.d.ts +10 -0
- package/lib/templates/content-schema.d.ts.map +1 -0
- package/lib/templates/content-schema.js +274 -0
- package/lib/templates/content-schema.js.map +1 -0
- package/lib/templates/content-table.d.ts +13 -0
- package/lib/templates/content-table.d.ts.map +1 -0
- package/lib/templates/content-table.js +177 -0
- package/lib/templates/content-table.js.map +1 -0
- package/lib/templates/content-types-examples.d.ts +19 -0
- package/lib/templates/content-types-examples.d.ts.map +1 -0
- package/lib/templates/content-types-examples.js +275 -0
- package/lib/templates/content-types-examples.js.map +1 -0
- package/lib/templates/content-types-registry.d.ts +10 -0
- package/lib/templates/content-types-registry.d.ts.map +1 -0
- package/lib/templates/content-types-registry.js +87 -0
- package/lib/templates/content-types-registry.js.map +1 -0
- package/lib/templates/content-types.d.ts +10 -0
- package/lib/templates/content-types.d.ts.map +1 -0
- package/lib/templates/content-types.js +384 -0
- package/lib/templates/content-types.js.map +1 -0
- package/lib/templates/dashboard-stats.d.ts +13 -0
- package/lib/templates/dashboard-stats.d.ts.map +1 -0
- package/lib/templates/dashboard-stats.js +117 -0
- package/lib/templates/dashboard-stats.js.map +1 -0
- package/lib/templates/editor/index.d.ts +6 -0
- package/lib/templates/editor/index.d.ts.map +1 -0
- package/lib/templates/editor/index.js +21 -0
- package/lib/templates/editor/index.js.map +1 -0
- package/lib/templates/editor/rich-text-editor.d.ts +7 -0
- package/lib/templates/editor/rich-text-editor.d.ts.map +1 -0
- package/lib/templates/editor/rich-text-editor.js +115 -0
- package/lib/templates/editor/rich-text-editor.js.map +1 -0
- package/lib/templates/editor/toolbar.d.ts +7 -0
- package/lib/templates/editor/toolbar.d.ts.map +1 -0
- package/lib/templates/editor/toolbar.js +272 -0
- package/lib/templates/editor/toolbar.js.map +1 -0
- package/lib/templates/form-fields/boolean-field.d.ts +7 -0
- package/lib/templates/form-fields/boolean-field.d.ts.map +1 -0
- package/lib/templates/form-fields/boolean-field.js +76 -0
- package/lib/templates/form-fields/boolean-field.js.map +1 -0
- package/lib/templates/form-fields/date-field.d.ts +7 -0
- package/lib/templates/form-fields/date-field.d.ts.map +1 -0
- package/lib/templates/form-fields/date-field.js +61 -0
- package/lib/templates/form-fields/date-field.js.map +1 -0
- package/lib/templates/form-fields/datetime-field.d.ts +7 -0
- package/lib/templates/form-fields/datetime-field.d.ts.map +1 -0
- package/lib/templates/form-fields/datetime-field.js +87 -0
- package/lib/templates/form-fields/datetime-field.js.map +1 -0
- package/lib/templates/form-fields/index.d.ts +23 -0
- package/lib/templates/form-fields/index.d.ts.map +1 -0
- package/lib/templates/form-fields/index.js +275 -0
- package/lib/templates/form-fields/index.js.map +1 -0
- package/lib/templates/form-fields/media-field.d.ts +10 -0
- package/lib/templates/form-fields/media-field.d.ts.map +1 -0
- package/lib/templates/form-fields/media-field.js +225 -0
- package/lib/templates/form-fields/media-field.js.map +1 -0
- package/lib/templates/form-fields/multiselect-field.d.ts +7 -0
- package/lib/templates/form-fields/multiselect-field.d.ts.map +1 -0
- package/lib/templates/form-fields/multiselect-field.js +121 -0
- package/lib/templates/form-fields/multiselect-field.js.map +1 -0
- package/lib/templates/form-fields/number-field.d.ts +7 -0
- package/lib/templates/form-fields/number-field.d.ts.map +1 -0
- package/lib/templates/form-fields/number-field.js +87 -0
- package/lib/templates/form-fields/number-field.js.map +1 -0
- package/lib/templates/form-fields/reference-field.d.ts +9 -0
- package/lib/templates/form-fields/reference-field.d.ts.map +1 -0
- package/lib/templates/form-fields/reference-field.js +145 -0
- package/lib/templates/form-fields/reference-field.js.map +1 -0
- package/lib/templates/form-fields/richtext-field.d.ts +9 -0
- package/lib/templates/form-fields/richtext-field.d.ts.map +1 -0
- package/lib/templates/form-fields/richtext-field.js +60 -0
- package/lib/templates/form-fields/richtext-field.js.map +1 -0
- package/lib/templates/form-fields/select-field.d.ts +7 -0
- package/lib/templates/form-fields/select-field.d.ts.map +1 -0
- package/lib/templates/form-fields/select-field.js +70 -0
- package/lib/templates/form-fields/select-field.js.map +1 -0
- package/lib/templates/form-fields/slug-field.d.ts +7 -0
- package/lib/templates/form-fields/slug-field.d.ts.map +1 -0
- package/lib/templates/form-fields/slug-field.js +143 -0
- package/lib/templates/form-fields/slug-field.js.map +1 -0
- package/lib/templates/form-fields/tags-field.d.ts +7 -0
- package/lib/templates/form-fields/tags-field.d.ts.map +1 -0
- package/lib/templates/form-fields/tags-field.js +172 -0
- package/lib/templates/form-fields/tags-field.js.map +1 -0
- package/lib/templates/form-fields/text-field.d.ts +7 -0
- package/lib/templates/form-fields/text-field.d.ts.map +1 -0
- package/lib/templates/form-fields/text-field.js +63 -0
- package/lib/templates/form-fields/text-field.js.map +1 -0
- package/lib/templates/form-fields/textarea-field.d.ts +7 -0
- package/lib/templates/form-fields/textarea-field.d.ts.map +1 -0
- package/lib/templates/form-fields/textarea-field.js +64 -0
- package/lib/templates/form-fields/textarea-field.js.map +1 -0
- package/lib/templates/index.d.ts +34 -0
- package/lib/templates/index.d.ts.map +1 -0
- package/lib/templates/index.js +92 -0
- package/lib/templates/index.js.map +1 -0
- package/lib/templates/media/index.d.ts +12 -0
- package/lib/templates/media/index.d.ts.map +1 -0
- package/lib/templates/media/index.js +50 -0
- package/lib/templates/media/index.js.map +1 -0
- package/lib/templates/media/media-api.d.ts +13 -0
- package/lib/templates/media/media-api.d.ts.map +1 -0
- package/lib/templates/media/media-api.js +274 -0
- package/lib/templates/media/media-api.js.map +1 -0
- package/lib/templates/media/media-grid.d.ts +14 -0
- package/lib/templates/media/media-grid.d.ts.map +1 -0
- package/lib/templates/media/media-grid.js +314 -0
- package/lib/templates/media/media-grid.js.map +1 -0
- package/lib/templates/media/media-library-route.d.ts +13 -0
- package/lib/templates/media/media-library-route.d.ts.map +1 -0
- package/lib/templates/media/media-library-route.js +105 -0
- package/lib/templates/media/media-library-route.js.map +1 -0
- package/lib/templates/media/media-picker.d.ts +13 -0
- package/lib/templates/media/media-picker.d.ts.map +1 -0
- package/lib/templates/media/media-picker.js +152 -0
- package/lib/templates/media/media-picker.js.map +1 -0
- package/lib/templates/media/media-uploader.d.ts +14 -0
- package/lib/templates/media/media-uploader.d.ts.map +1 -0
- package/lib/templates/media/media-uploader.js +318 -0
- package/lib/templates/media/media-uploader.js.map +1 -0
- package/lib/templates/recent-content.d.ts +13 -0
- package/lib/templates/recent-content.d.ts.map +1 -0
- package/lib/templates/recent-content.js +138 -0
- package/lib/templates/recent-content.js.map +1 -0
- package/lib/templates/slug-utils.d.ts +10 -0
- package/lib/templates/slug-utils.d.ts.map +1 -0
- package/lib/templates/slug-utils.js +194 -0
- package/lib/templates/slug-utils.js.map +1 -0
- package/lib/templates/ui-avatar.d.ts +8 -0
- package/lib/templates/ui-avatar.d.ts.map +1 -0
- package/lib/templates/ui-avatar.js +60 -0
- package/lib/templates/ui-avatar.js.map +1 -0
- package/lib/templates/ui-badge.d.ts +8 -0
- package/lib/templates/ui-badge.d.ts.map +1 -0
- package/lib/templates/ui-badge.js +52 -0
- package/lib/templates/ui-badge.js.map +1 -0
- package/lib/templates/ui-dialog.d.ts +10 -0
- package/lib/templates/ui-dialog.d.ts.map +1 -0
- package/lib/templates/ui-dialog.js +134 -0
- package/lib/templates/ui-dialog.js.map +1 -0
- package/lib/templates/ui-dropdown-menu.d.ts +8 -0
- package/lib/templates/ui-dropdown-menu.d.ts.map +1 -0
- package/lib/templates/ui-dropdown-menu.js +210 -0
- package/lib/templates/ui-dropdown-menu.js.map +1 -0
- package/lib/templates/ui-popover.d.ts +8 -0
- package/lib/templates/ui-popover.d.ts.map +1 -0
- package/lib/templates/ui-popover.js +43 -0
- package/lib/templates/ui-popover.js.map +1 -0
- package/lib/templates/ui-progress.d.ts +10 -0
- package/lib/templates/ui-progress.d.ts.map +1 -0
- package/lib/templates/ui-progress.js +40 -0
- package/lib/templates/ui-progress.js.map +1 -0
- package/lib/templates/ui-table.d.ts +8 -0
- package/lib/templates/ui-table.d.ts.map +1 -0
- package/lib/templates/ui-table.js +129 -0
- package/lib/templates/ui-table.js.map +1 -0
- package/lib/templates/ui-tabs.d.ts +10 -0
- package/lib/templates/ui-tabs.d.ts.map +1 -0
- package/lib/templates/ui-tabs.js +67 -0
- package/lib/templates/ui-tabs.js.map +1 -0
- package/package.json +52 -0
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
3
|
+
exports.getDropdownMenuTemplate = getDropdownMenuTemplate;
|
|
4
|
+
/**
|
|
5
|
+
* Generates the DropdownMenu component file content.
|
|
6
|
+
* Standard shadcn/ui dropdown menu with Radix UI primitives.
|
|
7
|
+
*
|
|
8
|
+
* @returns app/components/ui/dropdown-menu.tsx file content
|
|
9
|
+
*/
|
|
10
|
+
function getDropdownMenuTemplate() {
|
|
11
|
+
return `import * as React from 'react';
|
|
12
|
+
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
13
|
+
import { Check, ChevronRight, Circle } from 'lucide-react';
|
|
14
|
+
import { cn } from '~/lib/utils';
|
|
15
|
+
|
|
16
|
+
const DropdownMenu = DropdownMenuPrimitive.Root;
|
|
17
|
+
|
|
18
|
+
const DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
|
|
19
|
+
|
|
20
|
+
const DropdownMenuGroup = DropdownMenuPrimitive.Group;
|
|
21
|
+
|
|
22
|
+
const DropdownMenuPortal = DropdownMenuPrimitive.Portal;
|
|
23
|
+
|
|
24
|
+
const DropdownMenuSub = DropdownMenuPrimitive.Sub;
|
|
25
|
+
|
|
26
|
+
const DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
|
|
27
|
+
|
|
28
|
+
const DropdownMenuSubTrigger = React.forwardRef<
|
|
29
|
+
React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>,
|
|
30
|
+
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> & {
|
|
31
|
+
inset?: boolean;
|
|
32
|
+
}
|
|
33
|
+
>(({ className, inset, children, ...props }, ref) => (
|
|
34
|
+
<DropdownMenuPrimitive.SubTrigger
|
|
35
|
+
ref={ref}
|
|
36
|
+
className={cn(
|
|
37
|
+
'flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent',
|
|
38
|
+
inset && 'pl-8',
|
|
39
|
+
className
|
|
40
|
+
)}
|
|
41
|
+
{...props}
|
|
42
|
+
>
|
|
43
|
+
{children}
|
|
44
|
+
<ChevronRight className="ml-auto h-4 w-4" />
|
|
45
|
+
</DropdownMenuPrimitive.SubTrigger>
|
|
46
|
+
));
|
|
47
|
+
DropdownMenuSubTrigger.displayName =
|
|
48
|
+
DropdownMenuPrimitive.SubTrigger.displayName;
|
|
49
|
+
|
|
50
|
+
const DropdownMenuSubContent = React.forwardRef<
|
|
51
|
+
React.ElementRef<typeof DropdownMenuPrimitive.SubContent>,
|
|
52
|
+
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubContent>
|
|
53
|
+
>(({ className, ...props }, ref) => (
|
|
54
|
+
<DropdownMenuPrimitive.SubContent
|
|
55
|
+
ref={ref}
|
|
56
|
+
className={cn(
|
|
57
|
+
'z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',
|
|
58
|
+
className
|
|
59
|
+
)}
|
|
60
|
+
{...props}
|
|
61
|
+
/>
|
|
62
|
+
));
|
|
63
|
+
DropdownMenuSubContent.displayName =
|
|
64
|
+
DropdownMenuPrimitive.SubContent.displayName;
|
|
65
|
+
|
|
66
|
+
const DropdownMenuContent = React.forwardRef<
|
|
67
|
+
React.ElementRef<typeof DropdownMenuPrimitive.Content>,
|
|
68
|
+
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content>
|
|
69
|
+
>(({ className, sideOffset = 4, ...props }, ref) => (
|
|
70
|
+
<DropdownMenuPrimitive.Portal>
|
|
71
|
+
<DropdownMenuPrimitive.Content
|
|
72
|
+
ref={ref}
|
|
73
|
+
sideOffset={sideOffset}
|
|
74
|
+
className={cn(
|
|
75
|
+
'z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',
|
|
76
|
+
className
|
|
77
|
+
)}
|
|
78
|
+
{...props}
|
|
79
|
+
/>
|
|
80
|
+
</DropdownMenuPrimitive.Portal>
|
|
81
|
+
));
|
|
82
|
+
DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
|
|
83
|
+
|
|
84
|
+
const DropdownMenuItem = React.forwardRef<
|
|
85
|
+
React.ElementRef<typeof DropdownMenuPrimitive.Item>,
|
|
86
|
+
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> & {
|
|
87
|
+
inset?: boolean;
|
|
88
|
+
}
|
|
89
|
+
>(({ className, inset, ...props }, ref) => (
|
|
90
|
+
<DropdownMenuPrimitive.Item
|
|
91
|
+
ref={ref}
|
|
92
|
+
className={cn(
|
|
93
|
+
'relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',
|
|
94
|
+
inset && 'pl-8',
|
|
95
|
+
className
|
|
96
|
+
)}
|
|
97
|
+
{...props}
|
|
98
|
+
/>
|
|
99
|
+
));
|
|
100
|
+
DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
|
|
101
|
+
|
|
102
|
+
const DropdownMenuCheckboxItem = React.forwardRef<
|
|
103
|
+
React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>,
|
|
104
|
+
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem>
|
|
105
|
+
>(({ className, children, checked, ...props }, ref) => (
|
|
106
|
+
<DropdownMenuPrimitive.CheckboxItem
|
|
107
|
+
ref={ref}
|
|
108
|
+
className={cn(
|
|
109
|
+
'relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',
|
|
110
|
+
className
|
|
111
|
+
)}
|
|
112
|
+
checked={checked}
|
|
113
|
+
{...props}
|
|
114
|
+
>
|
|
115
|
+
<span className="absolute left-2 flex h-3.5 w-3.5 items-center justify-center">
|
|
116
|
+
<DropdownMenuPrimitive.ItemIndicator>
|
|
117
|
+
<Check className="h-4 w-4" />
|
|
118
|
+
</DropdownMenuPrimitive.ItemIndicator>
|
|
119
|
+
</span>
|
|
120
|
+
{children}
|
|
121
|
+
</DropdownMenuPrimitive.CheckboxItem>
|
|
122
|
+
));
|
|
123
|
+
DropdownMenuCheckboxItem.displayName =
|
|
124
|
+
DropdownMenuPrimitive.CheckboxItem.displayName;
|
|
125
|
+
|
|
126
|
+
const DropdownMenuRadioItem = React.forwardRef<
|
|
127
|
+
React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>,
|
|
128
|
+
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem>
|
|
129
|
+
>(({ className, children, ...props }, ref) => (
|
|
130
|
+
<DropdownMenuPrimitive.RadioItem
|
|
131
|
+
ref={ref}
|
|
132
|
+
className={cn(
|
|
133
|
+
'relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',
|
|
134
|
+
className
|
|
135
|
+
)}
|
|
136
|
+
{...props}
|
|
137
|
+
>
|
|
138
|
+
<span className="absolute left-2 flex h-3.5 w-3.5 items-center justify-center">
|
|
139
|
+
<DropdownMenuPrimitive.ItemIndicator>
|
|
140
|
+
<Circle className="h-2 w-2 fill-current" />
|
|
141
|
+
</DropdownMenuPrimitive.ItemIndicator>
|
|
142
|
+
</span>
|
|
143
|
+
{children}
|
|
144
|
+
</DropdownMenuPrimitive.RadioItem>
|
|
145
|
+
));
|
|
146
|
+
DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
|
|
147
|
+
|
|
148
|
+
const DropdownMenuLabel = React.forwardRef<
|
|
149
|
+
React.ElementRef<typeof DropdownMenuPrimitive.Label>,
|
|
150
|
+
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> & {
|
|
151
|
+
inset?: boolean;
|
|
152
|
+
}
|
|
153
|
+
>(({ className, inset, ...props }, ref) => (
|
|
154
|
+
<DropdownMenuPrimitive.Label
|
|
155
|
+
ref={ref}
|
|
156
|
+
className={cn(
|
|
157
|
+
'px-2 py-1.5 text-sm font-semibold',
|
|
158
|
+
inset && 'pl-8',
|
|
159
|
+
className
|
|
160
|
+
)}
|
|
161
|
+
{...props}
|
|
162
|
+
/>
|
|
163
|
+
));
|
|
164
|
+
DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
|
|
165
|
+
|
|
166
|
+
const DropdownMenuSeparator = React.forwardRef<
|
|
167
|
+
React.ElementRef<typeof DropdownMenuPrimitive.Separator>,
|
|
168
|
+
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator>
|
|
169
|
+
>(({ className, ...props }, ref) => (
|
|
170
|
+
<DropdownMenuPrimitive.Separator
|
|
171
|
+
ref={ref}
|
|
172
|
+
className={cn('-mx-1 my-1 h-px bg-muted', className)}
|
|
173
|
+
{...props}
|
|
174
|
+
/>
|
|
175
|
+
));
|
|
176
|
+
DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
|
|
177
|
+
|
|
178
|
+
const DropdownMenuShortcut = ({
|
|
179
|
+
className,
|
|
180
|
+
...props
|
|
181
|
+
}: React.HTMLAttributes<HTMLSpanElement>) => {
|
|
182
|
+
return (
|
|
183
|
+
<span
|
|
184
|
+
className={cn('ml-auto text-xs tracking-widest opacity-60', className)}
|
|
185
|
+
{...props}
|
|
186
|
+
/>
|
|
187
|
+
);
|
|
188
|
+
};
|
|
189
|
+
DropdownMenuShortcut.displayName = 'DropdownMenuShortcut';
|
|
190
|
+
|
|
191
|
+
export {
|
|
192
|
+
DropdownMenu,
|
|
193
|
+
DropdownMenuTrigger,
|
|
194
|
+
DropdownMenuContent,
|
|
195
|
+
DropdownMenuItem,
|
|
196
|
+
DropdownMenuCheckboxItem,
|
|
197
|
+
DropdownMenuRadioItem,
|
|
198
|
+
DropdownMenuLabel,
|
|
199
|
+
DropdownMenuSeparator,
|
|
200
|
+
DropdownMenuShortcut,
|
|
201
|
+
DropdownMenuGroup,
|
|
202
|
+
DropdownMenuPortal,
|
|
203
|
+
DropdownMenuSub,
|
|
204
|
+
DropdownMenuSubContent,
|
|
205
|
+
DropdownMenuSubTrigger,
|
|
206
|
+
DropdownMenuRadioGroup,
|
|
207
|
+
};
|
|
208
|
+
`;
|
|
209
|
+
}
|
|
210
|
+
//# sourceMappingURL=ui-dropdown-menu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-dropdown-menu.js","sourceRoot":"","sources":["../../src/templates/ui-dropdown-menu.ts"],"names":[],"mappings":";;AAMA,0DAuMC;AA7MD;;;;;GAKG;AACH,SAAgB,uBAAuB;IACrC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqMR,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generates the Popover component file content.
|
|
3
|
+
* Standard shadcn/ui popover with Radix UI primitives.
|
|
4
|
+
*
|
|
5
|
+
* @returns app/components/ui/popover.tsx file content
|
|
6
|
+
*/
|
|
7
|
+
export declare function getPopoverTemplate(): string;
|
|
8
|
+
//# sourceMappingURL=ui-popover.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-popover.d.ts","sourceRoot":"","sources":["../../src/templates/ui-popover.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAgC3C"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
3
|
+
exports.getPopoverTemplate = getPopoverTemplate;
|
|
4
|
+
/**
|
|
5
|
+
* Generates the Popover component file content.
|
|
6
|
+
* Standard shadcn/ui popover with Radix UI primitives.
|
|
7
|
+
*
|
|
8
|
+
* @returns app/components/ui/popover.tsx file content
|
|
9
|
+
*/
|
|
10
|
+
function getPopoverTemplate() {
|
|
11
|
+
return `import * as React from 'react';
|
|
12
|
+
import * as PopoverPrimitive from '@radix-ui/react-popover';
|
|
13
|
+
import { cn } from '~/lib/utils';
|
|
14
|
+
|
|
15
|
+
const Popover = PopoverPrimitive.Root;
|
|
16
|
+
|
|
17
|
+
const PopoverTrigger = PopoverPrimitive.Trigger;
|
|
18
|
+
|
|
19
|
+
const PopoverAnchor = PopoverPrimitive.Anchor;
|
|
20
|
+
|
|
21
|
+
const PopoverContent = React.forwardRef<
|
|
22
|
+
React.ElementRef<typeof PopoverPrimitive.Content>,
|
|
23
|
+
React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>
|
|
24
|
+
>(({ className, align = 'center', sideOffset = 4, ...props }, ref) => (
|
|
25
|
+
<PopoverPrimitive.Portal>
|
|
26
|
+
<PopoverPrimitive.Content
|
|
27
|
+
ref={ref}
|
|
28
|
+
align={align}
|
|
29
|
+
sideOffset={sideOffset}
|
|
30
|
+
className={cn(
|
|
31
|
+
'z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',
|
|
32
|
+
className
|
|
33
|
+
)}
|
|
34
|
+
{...props}
|
|
35
|
+
/>
|
|
36
|
+
</PopoverPrimitive.Portal>
|
|
37
|
+
));
|
|
38
|
+
PopoverContent.displayName = PopoverPrimitive.Content.displayName;
|
|
39
|
+
|
|
40
|
+
export { Popover, PopoverTrigger, PopoverContent, PopoverAnchor };
|
|
41
|
+
`;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=ui-popover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-popover.js","sourceRoot":"","sources":["../../src/templates/ui-popover.ts"],"names":[],"mappings":";;AAMA,gDAgCC;AAtCD;;;;;GAKG;AACH,SAAgB,kBAAkB;IAChC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BR,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generates the Progress bar component template.
|
|
3
|
+
*
|
|
4
|
+
* This is a shadcn/ui-style progress bar component used for
|
|
5
|
+
* upload progress tracking and other loading indicators.
|
|
6
|
+
*
|
|
7
|
+
* @returns Template string for app/components/ui/progress.tsx
|
|
8
|
+
*/
|
|
9
|
+
export declare function getProgressTemplate(): string;
|
|
10
|
+
//# sourceMappingURL=ui-progress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-progress.d.ts","sourceRoot":"","sources":["../../src/templates/ui-progress.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CA2B5C"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
3
|
+
exports.getProgressTemplate = getProgressTemplate;
|
|
4
|
+
/**
|
|
5
|
+
* Generates the Progress bar component template.
|
|
6
|
+
*
|
|
7
|
+
* This is a shadcn/ui-style progress bar component used for
|
|
8
|
+
* upload progress tracking and other loading indicators.
|
|
9
|
+
*
|
|
10
|
+
* @returns Template string for app/components/ui/progress.tsx
|
|
11
|
+
*/
|
|
12
|
+
function getProgressTemplate() {
|
|
13
|
+
return `import * as React from 'react';
|
|
14
|
+
import * as ProgressPrimitive from '@radix-ui/react-progress';
|
|
15
|
+
import { cn } from '~/lib/utils';
|
|
16
|
+
|
|
17
|
+
const Progress = React.forwardRef<
|
|
18
|
+
React.ElementRef<typeof ProgressPrimitive.Root>,
|
|
19
|
+
React.ComponentPropsWithoutRef<typeof ProgressPrimitive.Root>
|
|
20
|
+
>(({ className, value, ...props }, ref) => (
|
|
21
|
+
<ProgressPrimitive.Root
|
|
22
|
+
ref={ref}
|
|
23
|
+
className={cn(
|
|
24
|
+
'relative h-2 w-full overflow-hidden rounded-full bg-secondary',
|
|
25
|
+
className
|
|
26
|
+
)}
|
|
27
|
+
{...props}
|
|
28
|
+
>
|
|
29
|
+
<ProgressPrimitive.Indicator
|
|
30
|
+
className="h-full w-full flex-1 bg-primary transition-all"
|
|
31
|
+
style={{ transform: \`translateX(-\${100 - (value || 0)}%)\` }}
|
|
32
|
+
/>
|
|
33
|
+
</ProgressPrimitive.Root>
|
|
34
|
+
));
|
|
35
|
+
Progress.displayName = ProgressPrimitive.Root.displayName;
|
|
36
|
+
|
|
37
|
+
export { Progress };
|
|
38
|
+
`;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=ui-progress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-progress.js","sourceRoot":"","sources":["../../src/templates/ui-progress.ts"],"names":[],"mappings":";;AAQA,kDA2BC;AAnCD;;;;;;;GAOG;AACH,SAAgB,mBAAmB;IACjC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;CAyBR,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-table.d.ts","sourceRoot":"","sources":["../../src/templates/ui-table.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAsHzC"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
3
|
+
exports.getTableTemplate = getTableTemplate;
|
|
4
|
+
/**
|
|
5
|
+
* Generates the Table component file content.
|
|
6
|
+
* Standard shadcn/ui table with all sub-components.
|
|
7
|
+
*
|
|
8
|
+
* @returns app/components/ui/table.tsx file content
|
|
9
|
+
*/
|
|
10
|
+
function getTableTemplate() {
|
|
11
|
+
return `import * as React from 'react';
|
|
12
|
+
import { cn } from '~/lib/utils';
|
|
13
|
+
|
|
14
|
+
const Table = React.forwardRef<
|
|
15
|
+
HTMLTableElement,
|
|
16
|
+
React.HTMLAttributes<HTMLTableElement>
|
|
17
|
+
>(({ className, ...props }, ref) => (
|
|
18
|
+
<div className="relative w-full overflow-auto">
|
|
19
|
+
<table
|
|
20
|
+
ref={ref}
|
|
21
|
+
className={cn('w-full caption-bottom text-sm', className)}
|
|
22
|
+
{...props}
|
|
23
|
+
/>
|
|
24
|
+
</div>
|
|
25
|
+
));
|
|
26
|
+
Table.displayName = 'Table';
|
|
27
|
+
|
|
28
|
+
const TableHeader = React.forwardRef<
|
|
29
|
+
HTMLTableSectionElement,
|
|
30
|
+
React.HTMLAttributes<HTMLTableSectionElement>
|
|
31
|
+
>(({ className, ...props }, ref) => (
|
|
32
|
+
<thead ref={ref} className={cn('[&_tr]:border-b', className)} {...props} />
|
|
33
|
+
));
|
|
34
|
+
TableHeader.displayName = 'TableHeader';
|
|
35
|
+
|
|
36
|
+
const TableBody = React.forwardRef<
|
|
37
|
+
HTMLTableSectionElement,
|
|
38
|
+
React.HTMLAttributes<HTMLTableSectionElement>
|
|
39
|
+
>(({ className, ...props }, ref) => (
|
|
40
|
+
<tbody
|
|
41
|
+
ref={ref}
|
|
42
|
+
className={cn('[&_tr:last-child]:border-0', className)}
|
|
43
|
+
{...props}
|
|
44
|
+
/>
|
|
45
|
+
));
|
|
46
|
+
TableBody.displayName = 'TableBody';
|
|
47
|
+
|
|
48
|
+
const TableFooter = React.forwardRef<
|
|
49
|
+
HTMLTableSectionElement,
|
|
50
|
+
React.HTMLAttributes<HTMLTableSectionElement>
|
|
51
|
+
>(({ className, ...props }, ref) => (
|
|
52
|
+
<tfoot
|
|
53
|
+
ref={ref}
|
|
54
|
+
className={cn(
|
|
55
|
+
'border-t bg-muted/50 font-medium [&>tr]:last:border-b-0',
|
|
56
|
+
className
|
|
57
|
+
)}
|
|
58
|
+
{...props}
|
|
59
|
+
/>
|
|
60
|
+
));
|
|
61
|
+
TableFooter.displayName = 'TableFooter';
|
|
62
|
+
|
|
63
|
+
const TableRow = React.forwardRef<
|
|
64
|
+
HTMLTableRowElement,
|
|
65
|
+
React.HTMLAttributes<HTMLTableRowElement>
|
|
66
|
+
>(({ className, ...props }, ref) => (
|
|
67
|
+
<tr
|
|
68
|
+
ref={ref}
|
|
69
|
+
className={cn(
|
|
70
|
+
'border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted',
|
|
71
|
+
className
|
|
72
|
+
)}
|
|
73
|
+
{...props}
|
|
74
|
+
/>
|
|
75
|
+
));
|
|
76
|
+
TableRow.displayName = 'TableRow';
|
|
77
|
+
|
|
78
|
+
const TableHead = React.forwardRef<
|
|
79
|
+
HTMLTableCellElement,
|
|
80
|
+
React.ThHTMLAttributes<HTMLTableCellElement>
|
|
81
|
+
>(({ className, ...props }, ref) => (
|
|
82
|
+
<th
|
|
83
|
+
ref={ref}
|
|
84
|
+
className={cn(
|
|
85
|
+
'h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0',
|
|
86
|
+
className
|
|
87
|
+
)}
|
|
88
|
+
{...props}
|
|
89
|
+
/>
|
|
90
|
+
));
|
|
91
|
+
TableHead.displayName = 'TableHead';
|
|
92
|
+
|
|
93
|
+
const TableCell = React.forwardRef<
|
|
94
|
+
HTMLTableCellElement,
|
|
95
|
+
React.TdHTMLAttributes<HTMLTableCellElement>
|
|
96
|
+
>(({ className, ...props }, ref) => (
|
|
97
|
+
<td
|
|
98
|
+
ref={ref}
|
|
99
|
+
className={cn('p-4 align-middle [&:has([role=checkbox])]:pr-0', className)}
|
|
100
|
+
{...props}
|
|
101
|
+
/>
|
|
102
|
+
));
|
|
103
|
+
TableCell.displayName = 'TableCell';
|
|
104
|
+
|
|
105
|
+
const TableCaption = React.forwardRef<
|
|
106
|
+
HTMLTableCaptionElement,
|
|
107
|
+
React.HTMLAttributes<HTMLTableCaptionElement>
|
|
108
|
+
>(({ className, ...props }, ref) => (
|
|
109
|
+
<caption
|
|
110
|
+
ref={ref}
|
|
111
|
+
className={cn('mt-4 text-sm text-muted-foreground', className)}
|
|
112
|
+
{...props}
|
|
113
|
+
/>
|
|
114
|
+
));
|
|
115
|
+
TableCaption.displayName = 'TableCaption';
|
|
116
|
+
|
|
117
|
+
export {
|
|
118
|
+
Table,
|
|
119
|
+
TableHeader,
|
|
120
|
+
TableBody,
|
|
121
|
+
TableFooter,
|
|
122
|
+
TableHead,
|
|
123
|
+
TableRow,
|
|
124
|
+
TableCell,
|
|
125
|
+
TableCaption,
|
|
126
|
+
};
|
|
127
|
+
`;
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=ui-table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-table.js","sourceRoot":"","sources":["../../src/templates/ui-table.ts"],"names":[],"mappings":";;AAMA,4CAsHC;AA5HD;;;;;GAKG;AACH,SAAgB,gBAAgB;IAC9B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoHR,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generates the Tabs component template.
|
|
3
|
+
*
|
|
4
|
+
* This is a shadcn/ui-style tabs component based on Radix Tabs
|
|
5
|
+
* primitives, used for the media picker tabs and other tab interfaces.
|
|
6
|
+
*
|
|
7
|
+
* @returns Template string for app/components/ui/tabs.tsx
|
|
8
|
+
*/
|
|
9
|
+
export declare function getTabsTemplate(): string;
|
|
10
|
+
//# sourceMappingURL=ui-tabs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-tabs.d.ts","sourceRoot":"","sources":["../../src/templates/ui-tabs.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAsDxC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
3
|
+
exports.getTabsTemplate = getTabsTemplate;
|
|
4
|
+
/**
|
|
5
|
+
* Generates the Tabs component template.
|
|
6
|
+
*
|
|
7
|
+
* This is a shadcn/ui-style tabs component based on Radix Tabs
|
|
8
|
+
* primitives, used for the media picker tabs and other tab interfaces.
|
|
9
|
+
*
|
|
10
|
+
* @returns Template string for app/components/ui/tabs.tsx
|
|
11
|
+
*/
|
|
12
|
+
function getTabsTemplate() {
|
|
13
|
+
return `import * as React from 'react';
|
|
14
|
+
import * as TabsPrimitive from '@radix-ui/react-tabs';
|
|
15
|
+
import { cn } from '~/lib/utils';
|
|
16
|
+
|
|
17
|
+
const Tabs = TabsPrimitive.Root;
|
|
18
|
+
|
|
19
|
+
const TabsList = React.forwardRef<
|
|
20
|
+
React.ElementRef<typeof TabsPrimitive.List>,
|
|
21
|
+
React.ComponentPropsWithoutRef<typeof TabsPrimitive.List>
|
|
22
|
+
>(({ className, ...props }, ref) => (
|
|
23
|
+
<TabsPrimitive.List
|
|
24
|
+
ref={ref}
|
|
25
|
+
className={cn(
|
|
26
|
+
'inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground',
|
|
27
|
+
className
|
|
28
|
+
)}
|
|
29
|
+
{...props}
|
|
30
|
+
/>
|
|
31
|
+
));
|
|
32
|
+
TabsList.displayName = TabsPrimitive.List.displayName;
|
|
33
|
+
|
|
34
|
+
const TabsTrigger = React.forwardRef<
|
|
35
|
+
React.ElementRef<typeof TabsPrimitive.Trigger>,
|
|
36
|
+
React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>
|
|
37
|
+
>(({ className, ...props }, ref) => (
|
|
38
|
+
<TabsPrimitive.Trigger
|
|
39
|
+
ref={ref}
|
|
40
|
+
className={cn(
|
|
41
|
+
'inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm',
|
|
42
|
+
className
|
|
43
|
+
)}
|
|
44
|
+
{...props}
|
|
45
|
+
/>
|
|
46
|
+
));
|
|
47
|
+
TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
|
|
48
|
+
|
|
49
|
+
const TabsContent = React.forwardRef<
|
|
50
|
+
React.ElementRef<typeof TabsPrimitive.Content>,
|
|
51
|
+
React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>
|
|
52
|
+
>(({ className, ...props }, ref) => (
|
|
53
|
+
<TabsPrimitive.Content
|
|
54
|
+
ref={ref}
|
|
55
|
+
className={cn(
|
|
56
|
+
'mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',
|
|
57
|
+
className
|
|
58
|
+
)}
|
|
59
|
+
{...props}
|
|
60
|
+
/>
|
|
61
|
+
));
|
|
62
|
+
TabsContent.displayName = TabsPrimitive.Content.displayName;
|
|
63
|
+
|
|
64
|
+
export { Tabs, TabsList, TabsTrigger, TabsContent };
|
|
65
|
+
`;
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=ui-tabs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-tabs.js","sourceRoot":"","sources":["../../src/templates/ui-tabs.ts"],"names":[],"mappings":";;AAQA,0CAsDC;AA9DD;;;;;;;GAOG;AACH,SAAgB,eAAe;IAC7B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoDR,CAAC;AACF,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@fnd-platform/cms",
|
|
3
|
+
"version": "1.0.0-alpha.1",
|
|
4
|
+
"description": "Projen project class for generating CMS admin packages in fnd-platform",
|
|
5
|
+
"main": "lib/index.js",
|
|
6
|
+
"types": "lib/index.d.ts",
|
|
7
|
+
"files": [
|
|
8
|
+
"lib/"
|
|
9
|
+
],
|
|
10
|
+
"dependencies": {
|
|
11
|
+
"projen": "^0.91.0",
|
|
12
|
+
"@fnd-platform/api": "1.0.0-alpha.1",
|
|
13
|
+
"@fnd-platform/frontend": "1.0.0-alpha.1",
|
|
14
|
+
"@fnd-platform/core": "1.0.0-alpha.1"
|
|
15
|
+
},
|
|
16
|
+
"peerDependencies": {
|
|
17
|
+
"projen": "^0.91.0"
|
|
18
|
+
},
|
|
19
|
+
"devDependencies": {
|
|
20
|
+
"@types/node": "^20.0.0",
|
|
21
|
+
"@typescript-eslint/eslint-plugin": "^7.18.0",
|
|
22
|
+
"@typescript-eslint/parser": "^7.18.0",
|
|
23
|
+
"@vitest/coverage-v8": "^1.6.0",
|
|
24
|
+
"eslint": "^8.57.0",
|
|
25
|
+
"typescript": "^5.6.3",
|
|
26
|
+
"vitest": "^1.6.0"
|
|
27
|
+
},
|
|
28
|
+
"keywords": [
|
|
29
|
+
"projen",
|
|
30
|
+
"cms",
|
|
31
|
+
"admin",
|
|
32
|
+
"remix",
|
|
33
|
+
"typescript",
|
|
34
|
+
"scaffolding"
|
|
35
|
+
],
|
|
36
|
+
"license": "MIT",
|
|
37
|
+
"publishConfig": {
|
|
38
|
+
"access": "public"
|
|
39
|
+
},
|
|
40
|
+
"repository": {
|
|
41
|
+
"type": "git",
|
|
42
|
+
"url": "https://github.com/your-org/fnd-platform",
|
|
43
|
+
"directory": "packages/cms"
|
|
44
|
+
},
|
|
45
|
+
"scripts": {
|
|
46
|
+
"build": "tsc",
|
|
47
|
+
"test": "vitest run",
|
|
48
|
+
"test:watch": "vitest",
|
|
49
|
+
"test:coverage": "vitest run --coverage",
|
|
50
|
+
"lint": "eslint src/ test/"
|
|
51
|
+
}
|
|
52
|
+
}
|