193 lines
4.3 KiB
TypeScript
193 lines
4.3 KiB
TypeScript
/**
|
|
* The source of truth for the Custom JSX public component surface.
|
|
*
|
|
* Components marked `wrapped` require a runtime wrapper that removes unsafe props
|
|
* or supplies inert/read-only behavior. `denied` entries are deliberately kept in
|
|
* the registry so Mantine upgrades cannot silently expand the template surface.
|
|
*/
|
|
export const customJsxEnabledComponentRegistry: readonly CustomJsxComponentDescriptor[] = [
|
|
...describe("@mantine/core", "layout", "allowed", [
|
|
"Box",
|
|
"Stack",
|
|
"Group",
|
|
"Flex",
|
|
"Grid",
|
|
"Grid.Col",
|
|
"SimpleGrid",
|
|
"Center",
|
|
"Space",
|
|
"Container",
|
|
"AspectRatio",
|
|
"ScrollArea",
|
|
"Paper",
|
|
"Card",
|
|
"Card.Section",
|
|
"Divider",
|
|
"Fieldset",
|
|
"VisuallyHidden",
|
|
"Typography",
|
|
"FloatingIndicator",
|
|
]),
|
|
...describe("@mantine/core", "content", "allowed", [
|
|
"Text",
|
|
"Title",
|
|
"Code",
|
|
"Highlight",
|
|
"Mark",
|
|
"Kbd",
|
|
"Blockquote",
|
|
"NumberFormatter",
|
|
"Badge",
|
|
"ThemeIcon",
|
|
"ColorSwatch",
|
|
"Table",
|
|
"Table.Thead",
|
|
"Table.Tbody",
|
|
"Table.Tfoot",
|
|
"Table.Caption",
|
|
"Table.Tr",
|
|
"Table.Th",
|
|
"Table.Td",
|
|
"List",
|
|
"List.Item",
|
|
"Timeline",
|
|
"Timeline.Item",
|
|
"Indicator",
|
|
"Pill",
|
|
"Image",
|
|
"Avatar",
|
|
"Avatar.Group",
|
|
"BackgroundImage",
|
|
"DataList",
|
|
"DataList.Item",
|
|
"DataList.ItemLabel",
|
|
"DataList.ItemValue",
|
|
"EmptyState",
|
|
"EmptyState.Indicator",
|
|
"EmptyState.Title",
|
|
"EmptyState.Description",
|
|
"EmptyState.Actions",
|
|
"Marquee",
|
|
"RollingNumber",
|
|
]),
|
|
...describe("@mantine/core", "feedback", "allowed", [
|
|
"Alert",
|
|
"Progress",
|
|
"Progress.Section",
|
|
"RingProgress",
|
|
"SemiCircleProgress",
|
|
"Skeleton",
|
|
"Loader",
|
|
]),
|
|
...describe("@mantine/core", "feedback", "wrapped", ["Notification", "LoadingOverlay", "Overlay"]),
|
|
...describe("@mantine/core", "navigation", "allowed", [
|
|
"Accordion",
|
|
"Accordion.Item",
|
|
"Accordion.Control",
|
|
"Accordion.Panel",
|
|
"Tabs",
|
|
"Tabs.List",
|
|
"Tabs.Tab",
|
|
"Tabs.Panel",
|
|
"Stepper.Step",
|
|
"HoverCard",
|
|
"HoverCard.Target",
|
|
"HoverCard.Dropdown",
|
|
"Menu",
|
|
"Menu.Target",
|
|
"Menu.Dropdown",
|
|
"Menu.Item",
|
|
"Menu.Label",
|
|
"Menu.Divider",
|
|
"Tooltip",
|
|
"Spoiler",
|
|
"Collapse",
|
|
"Transition",
|
|
]),
|
|
...describe("@mantine/core", "navigation", "wrapped", ["Anchor", "NavLink", "Breadcrumbs", "Stepper", "Tree"]),
|
|
...describe("@mantine/core", "interaction", "wrapped", [
|
|
"Button",
|
|
"ActionIcon",
|
|
"Burger",
|
|
"CloseButton",
|
|
"Chip",
|
|
"Chip.Group",
|
|
"CopyButton",
|
|
"Pagination",
|
|
"Rating",
|
|
"SegmentedControl",
|
|
"Slider",
|
|
"Switch",
|
|
]),
|
|
...describe("@mantine/charts", "charts", "allowed", [
|
|
"AreaChart",
|
|
"BarChart",
|
|
"BarsList",
|
|
"BubbleChart",
|
|
"ChartLegend",
|
|
"ChartTooltip",
|
|
"CompositeChart",
|
|
"DonutChart",
|
|
"FunnelChart",
|
|
"Heatmap",
|
|
"LineChart",
|
|
"PieChart",
|
|
"RadarChart",
|
|
"RadialBarChart",
|
|
"SankeyChart",
|
|
"ScatterChart",
|
|
"Sparkline",
|
|
"Treemap",
|
|
]),
|
|
...describe("@mantine/dates", "dates", "wrapped", [
|
|
"Calendar",
|
|
"MiniCalendar",
|
|
"DatePicker",
|
|
"Day",
|
|
"WeekdaysRow",
|
|
"Month",
|
|
"CalendarHeader",
|
|
"YearPicker",
|
|
"MonthPicker",
|
|
"TimeGrid",
|
|
"PickerControl",
|
|
"YearsList",
|
|
"MonthsList",
|
|
"DecadeLevel",
|
|
"YearLevel",
|
|
"MonthLevel",
|
|
"LevelsGroup",
|
|
"DecadeLevelGroup",
|
|
"YearLevelGroup",
|
|
"MonthLevelGroup",
|
|
]),
|
|
...describe("@mantine/dates", "dates", "allowed", ["TimeValue"]),
|
|
...describe("@homarr/widgets", "interaction", "allowed", [
|
|
"PaginatedList",
|
|
"TabsContainer",
|
|
"TabPanel",
|
|
"Collapsible",
|
|
"StatBar",
|
|
"TypeBadge",
|
|
]),
|
|
...describe("@homarr/widgets", "network", "wrapped", [
|
|
"SubFetch",
|
|
"SubData",
|
|
"ActionButton",
|
|
"ToggleSwitch",
|
|
"RefreshButton",
|
|
]),
|
|
{
|
|
name: "TablerIcon",
|
|
package: "@homarr/widgets",
|
|
category: "content",
|
|
safety: "wrapped",
|
|
supportedProps: ["name", "size", "color", "stroke"],
|
|
subcomponents: [],
|
|
accessibilityRequirements: accessibilityByCategory.content,
|
|
documentationUrl: documentationUrl("@homarr/widgets", "TablerIcon"),
|
|
},
|
|
];
|
|
import { accessibilityByCategory, describe, documentationUrl } from "./component-descriptor";
|
|
import type { CustomJsxComponentDescriptor } from "./component-descriptor";
|