@smwb/ui-mcp-solid 0.1.0
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 +56 -0
- package/component-meta/base/animateHeight/animateHeight.json +74 -0
- package/component-meta/base/icon/icon.json +61 -0
- package/component-meta/base/ripple/ripple.json +51 -0
- package/component-meta/clickAwayListener/clickAwayListener.json +40 -0
- package/component-meta/dataDisplay/accordion/accordion.json +79 -0
- package/component-meta/dataDisplay/avatar/avatar.avatarGroup.json +41 -0
- package/component-meta/dataDisplay/avatar/avatar.json +56 -0
- package/component-meta/dataDisplay/badge/badge.json +66 -0
- package/component-meta/dataDisplay/card/card.json +46 -0
- package/component-meta/dataDisplay/carousel/carousel.json +89 -0
- package/component-meta/dataDisplay/chat/chat.json +225 -0
- package/component-meta/dataDisplay/chat/chatAttachmentImage.json +27 -0
- package/component-meta/dataDisplay/chat/chatAttachments.json +32 -0
- package/component-meta/dataDisplay/chat/chatComposer.json +76 -0
- package/component-meta/dataDisplay/chat/chatHeader.json +60 -0
- package/component-meta/dataDisplay/chat/chatIconButton.json +38 -0
- package/component-meta/dataDisplay/chat/chatLayout.chatLayoutChat.json +20 -0
- package/component-meta/dataDisplay/chat/chatLayout.json +85 -0
- package/component-meta/dataDisplay/chat/chatMessageAvatar.json +34 -0
- package/component-meta/dataDisplay/chat/chatMessageBubble.json +91 -0
- package/component-meta/dataDisplay/chat/chatMessageIncoming.json +60 -0
- package/component-meta/dataDisplay/chat/chatMessageItem.json +65 -0
- package/component-meta/dataDisplay/chat/chatMessageOutgoing.json +60 -0
- package/component-meta/dataDisplay/chat/chatMessageSkeleton.json +39 -0
- package/component-meta/dataDisplay/chat/chatMessageStatus.json +44 -0
- package/component-meta/dataDisplay/chat/chatMessageSystem.json +29 -0
- package/component-meta/dataDisplay/chat/chatMessages.json +91 -0
- package/component-meta/dataDisplay/chat/chatOverlayLayout.chatOverlayLayoutChat.json +20 -0
- package/component-meta/dataDisplay/chat/chatOverlayLayout.json +70 -0
- package/component-meta/dataDisplay/chat/chatShell.json +71 -0
- package/component-meta/dataDisplay/chip/chip.json +104 -0
- package/component-meta/dataDisplay/expansionPanel/expansionPanel.json +85 -0
- package/component-meta/dataDisplay/imagesList/imagesList.json +57 -0
- package/component-meta/dataDisplay/imagesList/imagesListItem/imagesListItem.json +64 -0
- package/component-meta/dataDisplay/imagesList/imagesListItem/imagesListItemModal.json +32 -0
- package/component-meta/dataDisplay/list/list.json +36 -0
- package/component-meta/dataDisplay/list/listItem.json +62 -0
- package/component-meta/dataDisplay/table/table.json +59 -0
- package/component-meta/dataDisplay/table/tableBody.json +26 -0
- package/component-meta/dataDisplay/table/tableCell.json +31 -0
- package/component-meta/dataDisplay/table/tableHead.json +26 -0
- package/component-meta/dataDisplay/table/tableHeadCell.json +58 -0
- package/component-meta/dataDisplay/table/tablePagination/tablePagination.baseTablePagination.json +47 -0
- package/component-meta/dataDisplay/table/tablePagination/tablePagination.json +21 -0
- package/component-meta/dataDisplay/table/tableRow.json +36 -0
- package/component-meta/dataDisplay/treeView/treeView.json +93 -0
- package/component-meta/dataDisplay/typography/typography.json +56 -0
- package/component-meta/feedBack/message/message.json +53 -0
- package/component-meta/feedBack/modal/modal.json +92 -0
- package/component-meta/feedBack/modal/modal.modalSlot.json +22 -0
- package/component-meta/feedBack/progressIndicator/progressIndicator.circularProgress.json +22 -0
- package/component-meta/feedBack/progressIndicator/progressIndicator.json +57 -0
- package/component-meta/feedBack/skeleton/skeleton.json +61 -0
- package/component-meta/feedBack/snackbar/snackbar.json +71 -0
- package/component-meta/feedBack/snackbar/snackbar.snackbarsProvider.json +51 -0
- package/component-meta/feedBack/tooltip/tooltip.json +62 -0
- package/component-meta/inputs/button/button.json +94 -0
- package/component-meta/inputs/buttonGroups/buttonGroup.json +59 -0
- package/component-meta/inputs/checkbox/checkbox.json +89 -0
- package/component-meta/inputs/datePicker/dataPickerDays.json +87 -0
- package/component-meta/inputs/datePicker/dataPickerHeader.json +48 -0
- package/component-meta/inputs/datePicker/dataPickerInput.json +34 -0
- package/component-meta/inputs/datePicker/datePicker.json +129 -0
- package/component-meta/inputs/datePicker/datePickerActionLabel.json +55 -0
- package/component-meta/inputs/datePicker/datePickerDay.json +61 -0
- package/component-meta/inputs/datePicker/datePickerIconButton.json +18 -0
- package/component-meta/inputs/datePicker/datePickerList.json +33 -0
- package/component-meta/inputs/dateTimePicker/dateTimePicker.json +120 -0
- package/component-meta/inputs/dateTimePicker/dateTimePickerInput.json +35 -0
- package/component-meta/inputs/fileDrop/countPreview.json +40 -0
- package/component-meta/inputs/fileDrop/fileDrop.json +71 -0
- package/component-meta/inputs/fileDrop/preview.json +46 -0
- package/component-meta/inputs/fileDrop/previewWrapper.json +51 -0
- package/component-meta/inputs/fileInput/fileInput.json +61 -0
- package/component-meta/inputs/floatingButton/floatingButton.json +43 -0
- package/component-meta/inputs/radioButton/radioButton.json +90 -0
- package/component-meta/inputs/rating/rating.json +104 -0
- package/component-meta/inputs/selectField/dropdownMenu.json +107 -0
- package/component-meta/inputs/selectField/selectField.json +203 -0
- package/component-meta/inputs/slider/slider.json +133 -0
- package/component-meta/inputs/textField/textField.json +126 -0
- package/component-meta/inputs/textField/textFieldAdornment.json +47 -0
- package/component-meta/inputs/textField/textFieldWrapper.json +96 -0
- package/component-meta/inputs/timePicker/timePicker.json +75 -0
- package/component-meta/inputs/timePicker/timePickerColumns.json +37 -0
- package/component-meta/inputs/timePicker/timePickerInput.json +35 -0
- package/component-meta/inputs/timePicker/timePickerList.json +32 -0
- package/component-meta/inputs/toggle/toggle.json +90 -0
- package/component-meta/layout/appLayout/appLayout.json +88 -0
- package/component-meta/layout/divider/divider.json +56 -0
- package/component-meta/layout/grid/grid.column.json +81 -0
- package/component-meta/layout/grid/grid.container.json +36 -0
- package/component-meta/layout/grid/grid.row.json +51 -0
- package/component-meta/layout/page/page.json +41 -0
- package/component-meta/layout/pageHeader/pageHeader.json +53 -0
- package/component-meta/layout/screenDivider/screenDivider.json +57 -0
- package/component-meta/layout/sheet/sheet.json +114 -0
- package/component-meta/layout/stack/stack.json +56 -0
- package/component-meta/navigation/appBar/appBar.json +71 -0
- package/component-meta/navigation/bottomBar/bottomBar.bottomBarMenuItem.json +55 -0
- package/component-meta/navigation/bottomBar/bottomBar.json +61 -0
- package/component-meta/navigation/breadcrumbs/breadcrumbs.json +61 -0
- package/component-meta/navigation/menu/menu.json +20 -0
- package/component-meta/navigation/menu/menuDivider.json +26 -0
- package/component-meta/navigation/menu/menuFloating.json +51 -0
- package/component-meta/navigation/menu/menuItem.json +68 -0
- package/component-meta/navigation/menu/menuItemIcon.json +31 -0
- package/component-meta/navigation/menu/menuItemText.json +31 -0
- package/component-meta/navigation/menu/menuList.json +26 -0
- package/component-meta/navigation/menu/menuSubmenu.json +47 -0
- package/component-meta/navigation/pagination/pagination.json +98 -0
- package/component-meta/navigation/sidebar/sidebar.json +79 -0
- package/component-meta/navigation/sidebar/sidebar.sidebarMenuItem.json +56 -0
- package/component-meta/navigation/stepper/stepper.json +53 -0
- package/component-meta/navigation/tabs/tab/tab.json +64 -0
- package/component-meta/navigation/tabs/tabs.json +60 -0
- package/componentMeta.mjs +493 -0
- package/customizationMeta.mjs +451 -0
- package/package.json +37 -0
- package/server.mjs +169 -0
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "AppLayout",
|
|
3
|
+
"description": "Application shell layout with sidebar and content regions.",
|
|
4
|
+
"extends": [
|
|
5
|
+
"JSX.HTMLAttributes<HTMLDivElement>"
|
|
6
|
+
],
|
|
7
|
+
"inheritedAttributes": "Also accepts standard HTML attributes for the underlying element (see extends clause in TypeScript).",
|
|
8
|
+
"styles": {
|
|
9
|
+
"base": [
|
|
10
|
+
"@smwb/ui-styles/less/foundation.less",
|
|
11
|
+
"@smwb/ui-styles/less/theme.less"
|
|
12
|
+
],
|
|
13
|
+
"entries": [
|
|
14
|
+
"@smwb/ui-styles/less/components/appLayout/appLayout.entry.less"
|
|
15
|
+
],
|
|
16
|
+
"dependencies": [
|
|
17
|
+
"@smwb/ui-styles/less/components/icon/icon.entry.less"
|
|
18
|
+
],
|
|
19
|
+
"importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/appLayout/appLayout.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/icon/icon.entry.less\";"
|
|
20
|
+
},
|
|
21
|
+
"props": {
|
|
22
|
+
"header": {
|
|
23
|
+
"type": "JSX.Element",
|
|
24
|
+
"required": false,
|
|
25
|
+
"description": "Top bar slot (e.g. <AppBar />). Spans full width."
|
|
26
|
+
},
|
|
27
|
+
"sidebar": {
|
|
28
|
+
"type": "JSX.Element",
|
|
29
|
+
"required": false,
|
|
30
|
+
"description": "Side navigation slot (e.g. <Sidebar />)."
|
|
31
|
+
},
|
|
32
|
+
"footer": {
|
|
33
|
+
"type": "JSX.Element",
|
|
34
|
+
"required": false,
|
|
35
|
+
"description": "Footer slot, below the content."
|
|
36
|
+
},
|
|
37
|
+
"sidebarWidth": {
|
|
38
|
+
"type": "number | string",
|
|
39
|
+
"required": false,
|
|
40
|
+
"description": "Sidebar width (px or any CSS length)."
|
|
41
|
+
},
|
|
42
|
+
"sidebarCollapsed": {
|
|
43
|
+
"type": "boolean",
|
|
44
|
+
"required": false,
|
|
45
|
+
"description": "Controlled collapsed state of the sidebar rail."
|
|
46
|
+
},
|
|
47
|
+
"defaultSidebarCollapsed": {
|
|
48
|
+
"type": "boolean",
|
|
49
|
+
"required": false,
|
|
50
|
+
"description": "Initial collapsed state (uncontrolled)."
|
|
51
|
+
},
|
|
52
|
+
"onSidebarCollapsedChange": {
|
|
53
|
+
"type": "(collapsed: boolean) => void",
|
|
54
|
+
"required": false,
|
|
55
|
+
"description": "Called whenever the collapsed state changes."
|
|
56
|
+
},
|
|
57
|
+
"collapsible": {
|
|
58
|
+
"type": "boolean",
|
|
59
|
+
"required": false,
|
|
60
|
+
"description": "Renders a built-in toggle button to collapse/expand the sidebar."
|
|
61
|
+
},
|
|
62
|
+
"collapseToggle": {
|
|
63
|
+
"type": "JSX.Element",
|
|
64
|
+
"required": false,
|
|
65
|
+
"description": "Custom toggle node replacing the default icon button."
|
|
66
|
+
},
|
|
67
|
+
"collapseToggleAriaLabel": {
|
|
68
|
+
"type": "string",
|
|
69
|
+
"required": false,
|
|
70
|
+
"description": "Accessible label for the default toggle button."
|
|
71
|
+
},
|
|
72
|
+
"sidebarCollapsedWidth": {
|
|
73
|
+
"type": "number | string",
|
|
74
|
+
"required": false,
|
|
75
|
+
"description": "Sidebar collapsed width."
|
|
76
|
+
},
|
|
77
|
+
"stickyHeader": {
|
|
78
|
+
"type": "boolean",
|
|
79
|
+
"required": false,
|
|
80
|
+
"description": "Keep the header pinned while content scrolls."
|
|
81
|
+
},
|
|
82
|
+
"ref": {
|
|
83
|
+
"type": "Ref<HTMLDivElement>",
|
|
84
|
+
"required": false,
|
|
85
|
+
"description": "Ref. Optional. Type: Ref<HTMLDivElement>."
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Divider",
|
|
3
|
+
"description": "Horizontal or vertical content separator.",
|
|
4
|
+
"extends": [
|
|
5
|
+
"JSX.HTMLAttributes<HTMLDivElement>"
|
|
6
|
+
],
|
|
7
|
+
"inheritedAttributes": "Also accepts standard HTML attributes for the underlying element (see extends clause in TypeScript).",
|
|
8
|
+
"styles": {
|
|
9
|
+
"base": [
|
|
10
|
+
"@smwb/ui-styles/less/foundation.less",
|
|
11
|
+
"@smwb/ui-styles/less/theme.less"
|
|
12
|
+
],
|
|
13
|
+
"entries": [
|
|
14
|
+
"@smwb/ui-styles/less/components/divider/divider.entry.less"
|
|
15
|
+
],
|
|
16
|
+
"dependencies": [],
|
|
17
|
+
"importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/divider/divider.entry.less\";"
|
|
18
|
+
},
|
|
19
|
+
"props": {
|
|
20
|
+
"orientation": {
|
|
21
|
+
"type": "\"horizontal\" | \"vertical\"",
|
|
22
|
+
"required": false,
|
|
23
|
+
"description": "Direction of the divider line."
|
|
24
|
+
},
|
|
25
|
+
"variant": {
|
|
26
|
+
"type": "\"fullWidth\" | \"inset\" | \"middle\"",
|
|
27
|
+
"required": false,
|
|
28
|
+
"description": "Inset behaviour of the line relative to its container."
|
|
29
|
+
},
|
|
30
|
+
"textAlign": {
|
|
31
|
+
"type": "\"left\" | \"center\" | \"right\"",
|
|
32
|
+
"required": false,
|
|
33
|
+
"description": "Horizontal alignment of the optional text content."
|
|
34
|
+
},
|
|
35
|
+
"color": {
|
|
36
|
+
"type": "DividerColor",
|
|
37
|
+
"required": false,
|
|
38
|
+
"description": "Line color (semantic token)."
|
|
39
|
+
},
|
|
40
|
+
"thickness": {
|
|
41
|
+
"type": "number | string",
|
|
42
|
+
"required": false,
|
|
43
|
+
"description": "Line thickness (number = px, or any CSS length)."
|
|
44
|
+
},
|
|
45
|
+
"flexItem": {
|
|
46
|
+
"type": "boolean",
|
|
47
|
+
"required": false,
|
|
48
|
+
"description": "Stretch to fill a flex container along the cross axis."
|
|
49
|
+
},
|
|
50
|
+
"ref": {
|
|
51
|
+
"type": "Ref<HTMLDivElement>",
|
|
52
|
+
"required": false,
|
|
53
|
+
"description": "Ref. Optional. Type: Ref<HTMLDivElement>."
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Column",
|
|
3
|
+
"description": "Grid column with responsive span configuration.",
|
|
4
|
+
"extends": [
|
|
5
|
+
"Omit<JSX.HTMLAttributes<HTMLDivElement>, \"hidden\">"
|
|
6
|
+
],
|
|
7
|
+
"inheritedAttributes": "Also accepts standard HTML attributes for the underlying element (see extends clause in TypeScript).",
|
|
8
|
+
"styles": {
|
|
9
|
+
"base": [
|
|
10
|
+
"@smwb/ui-styles/less/foundation.less",
|
|
11
|
+
"@smwb/ui-styles/less/theme.less"
|
|
12
|
+
],
|
|
13
|
+
"entries": [
|
|
14
|
+
"@smwb/ui-styles/less/components/grid/grid.entry.less"
|
|
15
|
+
],
|
|
16
|
+
"dependencies": [],
|
|
17
|
+
"importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/grid/grid.entry.less\";"
|
|
18
|
+
},
|
|
19
|
+
"props": {
|
|
20
|
+
"xs": {
|
|
21
|
+
"type": "BreakpointType",
|
|
22
|
+
"required": false,
|
|
23
|
+
"description": "Xs. Optional. Type: BreakpointType."
|
|
24
|
+
},
|
|
25
|
+
"sm": {
|
|
26
|
+
"type": "BreakpointType",
|
|
27
|
+
"required": false,
|
|
28
|
+
"description": "Sm. Optional. Type: BreakpointType."
|
|
29
|
+
},
|
|
30
|
+
"md": {
|
|
31
|
+
"type": "BreakpointType",
|
|
32
|
+
"required": false,
|
|
33
|
+
"description": "Md. Optional. Type: BreakpointType."
|
|
34
|
+
},
|
|
35
|
+
"lg": {
|
|
36
|
+
"type": "BreakpointType",
|
|
37
|
+
"required": false,
|
|
38
|
+
"description": "Lg. Optional. Type: BreakpointType."
|
|
39
|
+
},
|
|
40
|
+
"xl": {
|
|
41
|
+
"type": "BreakpointType",
|
|
42
|
+
"required": false,
|
|
43
|
+
"description": "Xl. Optional. Type: BreakpointType."
|
|
44
|
+
},
|
|
45
|
+
"xsOffset": {
|
|
46
|
+
"type": "OffsetType",
|
|
47
|
+
"required": false,
|
|
48
|
+
"description": "Xs Offset. Optional. Type: OffsetType."
|
|
49
|
+
},
|
|
50
|
+
"smOffset": {
|
|
51
|
+
"type": "OffsetType",
|
|
52
|
+
"required": false,
|
|
53
|
+
"description": "Sm Offset. Optional. Type: OffsetType."
|
|
54
|
+
},
|
|
55
|
+
"mdOffset": {
|
|
56
|
+
"type": "OffsetType",
|
|
57
|
+
"required": false,
|
|
58
|
+
"description": "Md Offset. Optional. Type: OffsetType."
|
|
59
|
+
},
|
|
60
|
+
"lgOffset": {
|
|
61
|
+
"type": "OffsetType",
|
|
62
|
+
"required": false,
|
|
63
|
+
"description": "Lg Offset. Optional. Type: OffsetType."
|
|
64
|
+
},
|
|
65
|
+
"xlOffset": {
|
|
66
|
+
"type": "OffsetType",
|
|
67
|
+
"required": false,
|
|
68
|
+
"description": "Xl Offset. Optional. Type: OffsetType."
|
|
69
|
+
},
|
|
70
|
+
"hidden": {
|
|
71
|
+
"type": "ResponsiveBool",
|
|
72
|
+
"required": false,
|
|
73
|
+
"description": "Hide column: boolean (always) or per breakpoint `{ xs:true, md:false }`."
|
|
74
|
+
},
|
|
75
|
+
"ref": {
|
|
76
|
+
"type": "Ref<HTMLDivElement>",
|
|
77
|
+
"required": false,
|
|
78
|
+
"description": "Ref. Optional. Type: Ref<HTMLDivElement>."
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Container",
|
|
3
|
+
"description": "Centered max-width page container.",
|
|
4
|
+
"extends": [
|
|
5
|
+
"JSX.HTMLAttributes<HTMLDivElement>"
|
|
6
|
+
],
|
|
7
|
+
"inheritedAttributes": "Also accepts standard HTML attributes for the underlying element (see extends clause in TypeScript).",
|
|
8
|
+
"styles": {
|
|
9
|
+
"base": [
|
|
10
|
+
"@smwb/ui-styles/less/foundation.less",
|
|
11
|
+
"@smwb/ui-styles/less/theme.less"
|
|
12
|
+
],
|
|
13
|
+
"entries": [
|
|
14
|
+
"@smwb/ui-styles/less/components/grid/grid.entry.less"
|
|
15
|
+
],
|
|
16
|
+
"dependencies": [],
|
|
17
|
+
"importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/grid/grid.entry.less\";"
|
|
18
|
+
},
|
|
19
|
+
"props": {
|
|
20
|
+
"maxWidth": {
|
|
21
|
+
"type": "ContainerMaxWidth",
|
|
22
|
+
"required": false,
|
|
23
|
+
"description": "Max-width breakpoint cap; `false` = fluid full width."
|
|
24
|
+
},
|
|
25
|
+
"disableGutters": {
|
|
26
|
+
"type": "boolean",
|
|
27
|
+
"required": false,
|
|
28
|
+
"description": "Remove horizontal gutters."
|
|
29
|
+
},
|
|
30
|
+
"ref": {
|
|
31
|
+
"type": "Ref<HTMLDivElement>",
|
|
32
|
+
"required": false,
|
|
33
|
+
"description": "Ref. Optional. Type: Ref<HTMLDivElement>."
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Row",
|
|
3
|
+
"description": "Grid row container.",
|
|
4
|
+
"extends": [
|
|
5
|
+
"JSX.HTMLAttributes<HTMLDivElement>"
|
|
6
|
+
],
|
|
7
|
+
"inheritedAttributes": "Also accepts standard HTML attributes for the underlying element (see extends clause in TypeScript).",
|
|
8
|
+
"styles": {
|
|
9
|
+
"base": [
|
|
10
|
+
"@smwb/ui-styles/less/foundation.less",
|
|
11
|
+
"@smwb/ui-styles/less/theme.less"
|
|
12
|
+
],
|
|
13
|
+
"entries": [
|
|
14
|
+
"@smwb/ui-styles/less/components/grid/grid.entry.less"
|
|
15
|
+
],
|
|
16
|
+
"dependencies": [],
|
|
17
|
+
"importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/grid/grid.entry.less\";"
|
|
18
|
+
},
|
|
19
|
+
"props": {
|
|
20
|
+
"wrap": {
|
|
21
|
+
"type": "(typeof wrapOptions)[number]",
|
|
22
|
+
"required": false,
|
|
23
|
+
"description": "Wrap. Optional. Type: (typeof wrapOptions)[number]."
|
|
24
|
+
},
|
|
25
|
+
"justifyContent": {
|
|
26
|
+
"type": "(typeof justifyContentOptions)[number]",
|
|
27
|
+
"required": false,
|
|
28
|
+
"description": "Justify Content. Optional. Type: (typeof justifyContentOptions)[number]."
|
|
29
|
+
},
|
|
30
|
+
"alignItems": {
|
|
31
|
+
"type": "(typeof alignItemsOptions)[number]",
|
|
32
|
+
"required": false,
|
|
33
|
+
"description": "Align Items. Optional. Type: (typeof alignItemsOptions)[number]."
|
|
34
|
+
},
|
|
35
|
+
"direction": {
|
|
36
|
+
"type": "(typeof directionOptions)[number]",
|
|
37
|
+
"required": false,
|
|
38
|
+
"description": "Direction. Optional. Type: (typeof directionOptions)[number]."
|
|
39
|
+
},
|
|
40
|
+
"spacing": {
|
|
41
|
+
"type": "number",
|
|
42
|
+
"required": false,
|
|
43
|
+
"description": "Spacing between stacked children."
|
|
44
|
+
},
|
|
45
|
+
"ref": {
|
|
46
|
+
"type": "Ref<HTMLDivElement>",
|
|
47
|
+
"required": false,
|
|
48
|
+
"description": "Ref. Optional. Type: Ref<HTMLDivElement>."
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Page",
|
|
3
|
+
"description": "Standard page content wrapper.",
|
|
4
|
+
"extends": [
|
|
5
|
+
"JSX.HTMLAttributes<HTMLElement>"
|
|
6
|
+
],
|
|
7
|
+
"inheritedAttributes": "Also accepts standard HTML attributes for the underlying element (see extends clause in TypeScript).",
|
|
8
|
+
"styles": {
|
|
9
|
+
"base": [
|
|
10
|
+
"@smwb/ui-styles/less/foundation.less",
|
|
11
|
+
"@smwb/ui-styles/less/theme.less"
|
|
12
|
+
],
|
|
13
|
+
"entries": [
|
|
14
|
+
"@smwb/ui-styles/less/components/page/page.entry.less"
|
|
15
|
+
],
|
|
16
|
+
"dependencies": [],
|
|
17
|
+
"importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/page/page.entry.less\";"
|
|
18
|
+
},
|
|
19
|
+
"props": {
|
|
20
|
+
"maxWidth": {
|
|
21
|
+
"type": "PageMaxWidth",
|
|
22
|
+
"required": false,
|
|
23
|
+
"description": "Content max-width cap; `full` = fluid."
|
|
24
|
+
},
|
|
25
|
+
"disableGutters": {
|
|
26
|
+
"type": "boolean",
|
|
27
|
+
"required": false,
|
|
28
|
+
"description": "Remove the page padding."
|
|
29
|
+
},
|
|
30
|
+
"component": {
|
|
31
|
+
"type": "string",
|
|
32
|
+
"required": false,
|
|
33
|
+
"description": "Render as a different element (default `main`)."
|
|
34
|
+
},
|
|
35
|
+
"ref": {
|
|
36
|
+
"type": "Ref<HTMLElement>",
|
|
37
|
+
"required": false,
|
|
38
|
+
"description": "Ref. Optional. Type: Ref<HTMLElement>."
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "PageHeader",
|
|
3
|
+
"description": "Page title area with optional actions and breadcrumbs slot.",
|
|
4
|
+
"extends": [
|
|
5
|
+
"Omit<JSX.HTMLAttributes<HTMLElement>, \"title\">"
|
|
6
|
+
],
|
|
7
|
+
"inheritedAttributes": "Also accepts standard HTML attributes for the underlying element (see extends clause in TypeScript).",
|
|
8
|
+
"styles": {
|
|
9
|
+
"base": [
|
|
10
|
+
"@smwb/ui-styles/less/foundation.less",
|
|
11
|
+
"@smwb/ui-styles/less/theme.less"
|
|
12
|
+
],
|
|
13
|
+
"entries": [
|
|
14
|
+
"@smwb/ui-styles/less/components/pageHeader/pageHeader.entry.less"
|
|
15
|
+
],
|
|
16
|
+
"dependencies": [
|
|
17
|
+
"@smwb/ui-styles/less/components/typography/typography.entry.less"
|
|
18
|
+
],
|
|
19
|
+
"importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/pageHeader/pageHeader.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/typography/typography.entry.less\";"
|
|
20
|
+
},
|
|
21
|
+
"props": {
|
|
22
|
+
"title": {
|
|
23
|
+
"type": "JSX.Element | string",
|
|
24
|
+
"required": true,
|
|
25
|
+
"description": "Accessible title or tooltip text."
|
|
26
|
+
},
|
|
27
|
+
"subtitle": {
|
|
28
|
+
"type": "JSX.Element | string",
|
|
29
|
+
"required": false,
|
|
30
|
+
"description": "Subtitle. Optional. Type: JSX.Element | string."
|
|
31
|
+
},
|
|
32
|
+
"breadcrumbs": {
|
|
33
|
+
"type": "JSX.Element",
|
|
34
|
+
"required": false,
|
|
35
|
+
"description": "Slot above the title (e.g. <Breadcrumbs />)."
|
|
36
|
+
},
|
|
37
|
+
"actions": {
|
|
38
|
+
"type": "JSX.Element",
|
|
39
|
+
"required": false,
|
|
40
|
+
"description": "Slot on the trailing side (e.g. action buttons)."
|
|
41
|
+
},
|
|
42
|
+
"divider": {
|
|
43
|
+
"type": "boolean",
|
|
44
|
+
"required": false,
|
|
45
|
+
"description": "Render a divider below the header."
|
|
46
|
+
},
|
|
47
|
+
"ref": {
|
|
48
|
+
"type": "Ref<HTMLElement>",
|
|
49
|
+
"required": false,
|
|
50
|
+
"description": "Ref. Optional. Type: Ref<HTMLElement>."
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "ScreenDivider",
|
|
3
|
+
"description": "Responsive divider that changes orientation by breakpoint.",
|
|
4
|
+
"styles": {
|
|
5
|
+
"base": [
|
|
6
|
+
"@smwb/ui-styles/less/foundation.less",
|
|
7
|
+
"@smwb/ui-styles/less/theme.less"
|
|
8
|
+
],
|
|
9
|
+
"entries": [
|
|
10
|
+
"@smwb/ui-styles/less/components/screenDivider/screenDivider.entry.less"
|
|
11
|
+
],
|
|
12
|
+
"dependencies": [],
|
|
13
|
+
"importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/screenDivider/screenDivider.entry.less\";"
|
|
14
|
+
},
|
|
15
|
+
"props": {
|
|
16
|
+
"sizeFirst": {
|
|
17
|
+
"type": "number",
|
|
18
|
+
"required": false,
|
|
19
|
+
"description": "Size First. Optional. Type: number."
|
|
20
|
+
},
|
|
21
|
+
"sizeSecond": {
|
|
22
|
+
"type": "number",
|
|
23
|
+
"required": false,
|
|
24
|
+
"description": "Size Second. Optional. Type: number."
|
|
25
|
+
},
|
|
26
|
+
"class": {
|
|
27
|
+
"type": "string",
|
|
28
|
+
"required": false,
|
|
29
|
+
"description": "Class. Optional. Type: string."
|
|
30
|
+
},
|
|
31
|
+
"orientation": {
|
|
32
|
+
"type": "\"horizontal\" | \"vertical\"",
|
|
33
|
+
"required": false,
|
|
34
|
+
"description": "Layout orientation."
|
|
35
|
+
},
|
|
36
|
+
"onSizeChange": {
|
|
37
|
+
"type": "(sizeFirst: number) => void",
|
|
38
|
+
"required": false,
|
|
39
|
+
"description": "Called with the first pane size (percent) whenever it changes."
|
|
40
|
+
},
|
|
41
|
+
"keyboardStep": {
|
|
42
|
+
"type": "number",
|
|
43
|
+
"required": false,
|
|
44
|
+
"description": "Step (in percent) applied on arrow-key resize."
|
|
45
|
+
},
|
|
46
|
+
"resizerAriaLabel": {
|
|
47
|
+
"type": "string",
|
|
48
|
+
"required": false,
|
|
49
|
+
"description": "Accessible label for the resizer handle."
|
|
50
|
+
},
|
|
51
|
+
"ref": {
|
|
52
|
+
"type": "Ref<HTMLDivElement>",
|
|
53
|
+
"required": false,
|
|
54
|
+
"description": "Ref. Optional. Type: Ref<HTMLDivElement>."
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Sheet",
|
|
3
|
+
"description": "Side or bottom sliding panel surface.",
|
|
4
|
+
"extends": [
|
|
5
|
+
"Omit<JSX.HTMLAttributes<HTMLDivElement>, \"onResize\">"
|
|
6
|
+
],
|
|
7
|
+
"inheritedAttributes": "Also accepts standard HTML attributes for the underlying element (see extends clause in TypeScript).",
|
|
8
|
+
"styles": {
|
|
9
|
+
"base": [
|
|
10
|
+
"@smwb/ui-styles/less/foundation.less",
|
|
11
|
+
"@smwb/ui-styles/less/theme.less"
|
|
12
|
+
],
|
|
13
|
+
"entries": [
|
|
14
|
+
"@smwb/ui-styles/less/components/sheet/sheet.entry.less"
|
|
15
|
+
],
|
|
16
|
+
"dependencies": [
|
|
17
|
+
"@smwb/ui-styles/less/components/button/button.entry.less",
|
|
18
|
+
"@smwb/ui-styles/less/components/icon/icon.entry.less"
|
|
19
|
+
],
|
|
20
|
+
"importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/sheet/sheet.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/button/button.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/icon/icon.entry.less\";"
|
|
21
|
+
},
|
|
22
|
+
"props": {
|
|
23
|
+
"placement": {
|
|
24
|
+
"type": "\"top\" | \"bottom\" | \"right\" | \"left\"",
|
|
25
|
+
"required": false,
|
|
26
|
+
"description": "Preferred floating placement relative to the anchor."
|
|
27
|
+
},
|
|
28
|
+
"isOpen": {
|
|
29
|
+
"type": "boolean",
|
|
30
|
+
"required": true,
|
|
31
|
+
"description": "Controlled open state of the floating surface."
|
|
32
|
+
},
|
|
33
|
+
"onClose": {
|
|
34
|
+
"type": "(() => void) | undefined",
|
|
35
|
+
"required": false,
|
|
36
|
+
"description": "Callback fired when the user dismisses the component."
|
|
37
|
+
},
|
|
38
|
+
"variant": {
|
|
39
|
+
"type": "\"default\" | \"modal\"",
|
|
40
|
+
"required": false,
|
|
41
|
+
"description": "Visual style variant."
|
|
42
|
+
},
|
|
43
|
+
"withSizeToggle": {
|
|
44
|
+
"type": "boolean",
|
|
45
|
+
"required": false,
|
|
46
|
+
"description": "With Size Toggle. Optional. Type: boolean."
|
|
47
|
+
},
|
|
48
|
+
"hideHeaderActions": {
|
|
49
|
+
"type": "boolean",
|
|
50
|
+
"required": false,
|
|
51
|
+
"description": "Hide built-in header actions; onClose still handles Esc and backdrop."
|
|
52
|
+
},
|
|
53
|
+
"reverseHeaderActions": {
|
|
54
|
+
"type": "boolean",
|
|
55
|
+
"required": false,
|
|
56
|
+
"description": "Reverse Header Actions. Optional. Type: boolean."
|
|
57
|
+
},
|
|
58
|
+
"size": {
|
|
59
|
+
"type": "string",
|
|
60
|
+
"required": false,
|
|
61
|
+
"description": "Visual size preset."
|
|
62
|
+
},
|
|
63
|
+
"disableOutsideClick": {
|
|
64
|
+
"type": "boolean",
|
|
65
|
+
"required": false,
|
|
66
|
+
"description": "Disable Outside Click. Optional. Type: boolean."
|
|
67
|
+
},
|
|
68
|
+
"closeOnEsc": {
|
|
69
|
+
"type": "boolean",
|
|
70
|
+
"required": false,
|
|
71
|
+
"description": "Close the sheet when Escape is pressed."
|
|
72
|
+
},
|
|
73
|
+
"resizable": {
|
|
74
|
+
"type": "boolean",
|
|
75
|
+
"required": false,
|
|
76
|
+
"description": "Allow drag-to-resize (mobile bottom-sheet style). Off by default."
|
|
77
|
+
},
|
|
78
|
+
"minSize": {
|
|
79
|
+
"type": "number",
|
|
80
|
+
"required": false,
|
|
81
|
+
"description": "Minimum size in px while resizing (default 80)."
|
|
82
|
+
},
|
|
83
|
+
"maxSize": {
|
|
84
|
+
"type": "number",
|
|
85
|
+
"required": false,
|
|
86
|
+
"description": "Maximum size in px while resizing (default: viewport dimension)."
|
|
87
|
+
},
|
|
88
|
+
"resizeStep": {
|
|
89
|
+
"type": "number",
|
|
90
|
+
"required": false,
|
|
91
|
+
"description": "Step in px for keyboard resizing (default 24)."
|
|
92
|
+
},
|
|
93
|
+
"resizeHandleAriaLabel": {
|
|
94
|
+
"type": "string",
|
|
95
|
+
"required": false,
|
|
96
|
+
"description": "Accessible label for the resize handle."
|
|
97
|
+
},
|
|
98
|
+
"onResize": {
|
|
99
|
+
"type": "(size: number) => void",
|
|
100
|
+
"required": false,
|
|
101
|
+
"description": "Called with the new size in px while/after resizing."
|
|
102
|
+
},
|
|
103
|
+
"aria-label": {
|
|
104
|
+
"type": "string",
|
|
105
|
+
"required": false,
|
|
106
|
+
"description": "Accessible label when no visible title is present."
|
|
107
|
+
},
|
|
108
|
+
"ref": {
|
|
109
|
+
"type": "Ref<HTMLDivElement>",
|
|
110
|
+
"required": false,
|
|
111
|
+
"description": "Ref. Optional. Type: Ref<HTMLDivElement>."
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Stack",
|
|
3
|
+
"description": "Flex stack layout with spacing and optional dividers.",
|
|
4
|
+
"extends": [
|
|
5
|
+
"JSX.HTMLAttributes<HTMLDivElement>"
|
|
6
|
+
],
|
|
7
|
+
"inheritedAttributes": "Also accepts standard HTML attributes for the underlying element (see extends clause in TypeScript).",
|
|
8
|
+
"styles": {
|
|
9
|
+
"base": [
|
|
10
|
+
"@smwb/ui-styles/less/foundation.less",
|
|
11
|
+
"@smwb/ui-styles/less/theme.less"
|
|
12
|
+
],
|
|
13
|
+
"entries": [
|
|
14
|
+
"@smwb/ui-styles/less/components/stack/stack.entry.less"
|
|
15
|
+
],
|
|
16
|
+
"dependencies": [],
|
|
17
|
+
"importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/stack/stack.entry.less\";"
|
|
18
|
+
},
|
|
19
|
+
"props": {
|
|
20
|
+
"direction": {
|
|
21
|
+
"type": "\"row\" | \"row-reverse\" | \"column\" | \"column-reverse\"",
|
|
22
|
+
"required": false,
|
|
23
|
+
"description": "Direction. Optional. Type: \"row\" | \"row-reverse\" | \"column\" | \"column-reverse\"."
|
|
24
|
+
},
|
|
25
|
+
"spacing": {
|
|
26
|
+
"type": "StackSpacing",
|
|
27
|
+
"required": false,
|
|
28
|
+
"description": "Gap between items: scale keyword, or a number = N × spacing unit."
|
|
29
|
+
},
|
|
30
|
+
"align": {
|
|
31
|
+
"type": "\"start\" | \"center\" | \"end\" | \"stretch\" | \"baseline\"",
|
|
32
|
+
"required": false,
|
|
33
|
+
"description": "Horizontal alignment of the message bubble."
|
|
34
|
+
},
|
|
35
|
+
"justify": {
|
|
36
|
+
"type": "\"start\" | \"center\" | \"end\" | \"space-between\" | \"space-around\" | \"space-evenly\"",
|
|
37
|
+
"required": false,
|
|
38
|
+
"description": "Justify. Optional. Type: \"start\" | \"center\" | \"end\" | \"space-between\" | \"space-around\" | \"space-evenly\"."
|
|
39
|
+
},
|
|
40
|
+
"wrap": {
|
|
41
|
+
"type": "boolean",
|
|
42
|
+
"required": false,
|
|
43
|
+
"description": "Wrap. Optional. Type: boolean."
|
|
44
|
+
},
|
|
45
|
+
"divider": {
|
|
46
|
+
"type": "JSX.Element",
|
|
47
|
+
"required": false,
|
|
48
|
+
"description": "Optional element rendered between each child."
|
|
49
|
+
},
|
|
50
|
+
"ref": {
|
|
51
|
+
"type": "Ref<HTMLDivElement>",
|
|
52
|
+
"required": false,
|
|
53
|
+
"description": "Ref. Optional. Type: Ref<HTMLDivElement>."
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|