@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.
Files changed (122) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +56 -0
  3. package/component-meta/base/animateHeight/animateHeight.json +74 -0
  4. package/component-meta/base/icon/icon.json +61 -0
  5. package/component-meta/base/ripple/ripple.json +51 -0
  6. package/component-meta/clickAwayListener/clickAwayListener.json +40 -0
  7. package/component-meta/dataDisplay/accordion/accordion.json +79 -0
  8. package/component-meta/dataDisplay/avatar/avatar.avatarGroup.json +41 -0
  9. package/component-meta/dataDisplay/avatar/avatar.json +56 -0
  10. package/component-meta/dataDisplay/badge/badge.json +66 -0
  11. package/component-meta/dataDisplay/card/card.json +46 -0
  12. package/component-meta/dataDisplay/carousel/carousel.json +89 -0
  13. package/component-meta/dataDisplay/chat/chat.json +225 -0
  14. package/component-meta/dataDisplay/chat/chatAttachmentImage.json +27 -0
  15. package/component-meta/dataDisplay/chat/chatAttachments.json +32 -0
  16. package/component-meta/dataDisplay/chat/chatComposer.json +76 -0
  17. package/component-meta/dataDisplay/chat/chatHeader.json +60 -0
  18. package/component-meta/dataDisplay/chat/chatIconButton.json +38 -0
  19. package/component-meta/dataDisplay/chat/chatLayout.chatLayoutChat.json +20 -0
  20. package/component-meta/dataDisplay/chat/chatLayout.json +85 -0
  21. package/component-meta/dataDisplay/chat/chatMessageAvatar.json +34 -0
  22. package/component-meta/dataDisplay/chat/chatMessageBubble.json +91 -0
  23. package/component-meta/dataDisplay/chat/chatMessageIncoming.json +60 -0
  24. package/component-meta/dataDisplay/chat/chatMessageItem.json +65 -0
  25. package/component-meta/dataDisplay/chat/chatMessageOutgoing.json +60 -0
  26. package/component-meta/dataDisplay/chat/chatMessageSkeleton.json +39 -0
  27. package/component-meta/dataDisplay/chat/chatMessageStatus.json +44 -0
  28. package/component-meta/dataDisplay/chat/chatMessageSystem.json +29 -0
  29. package/component-meta/dataDisplay/chat/chatMessages.json +91 -0
  30. package/component-meta/dataDisplay/chat/chatOverlayLayout.chatOverlayLayoutChat.json +20 -0
  31. package/component-meta/dataDisplay/chat/chatOverlayLayout.json +70 -0
  32. package/component-meta/dataDisplay/chat/chatShell.json +71 -0
  33. package/component-meta/dataDisplay/chip/chip.json +104 -0
  34. package/component-meta/dataDisplay/expansionPanel/expansionPanel.json +85 -0
  35. package/component-meta/dataDisplay/imagesList/imagesList.json +57 -0
  36. package/component-meta/dataDisplay/imagesList/imagesListItem/imagesListItem.json +64 -0
  37. package/component-meta/dataDisplay/imagesList/imagesListItem/imagesListItemModal.json +32 -0
  38. package/component-meta/dataDisplay/list/list.json +36 -0
  39. package/component-meta/dataDisplay/list/listItem.json +62 -0
  40. package/component-meta/dataDisplay/table/table.json +59 -0
  41. package/component-meta/dataDisplay/table/tableBody.json +26 -0
  42. package/component-meta/dataDisplay/table/tableCell.json +31 -0
  43. package/component-meta/dataDisplay/table/tableHead.json +26 -0
  44. package/component-meta/dataDisplay/table/tableHeadCell.json +58 -0
  45. package/component-meta/dataDisplay/table/tablePagination/tablePagination.baseTablePagination.json +47 -0
  46. package/component-meta/dataDisplay/table/tablePagination/tablePagination.json +21 -0
  47. package/component-meta/dataDisplay/table/tableRow.json +36 -0
  48. package/component-meta/dataDisplay/treeView/treeView.json +93 -0
  49. package/component-meta/dataDisplay/typography/typography.json +56 -0
  50. package/component-meta/feedBack/message/message.json +53 -0
  51. package/component-meta/feedBack/modal/modal.json +92 -0
  52. package/component-meta/feedBack/modal/modal.modalSlot.json +22 -0
  53. package/component-meta/feedBack/progressIndicator/progressIndicator.circularProgress.json +22 -0
  54. package/component-meta/feedBack/progressIndicator/progressIndicator.json +57 -0
  55. package/component-meta/feedBack/skeleton/skeleton.json +61 -0
  56. package/component-meta/feedBack/snackbar/snackbar.json +71 -0
  57. package/component-meta/feedBack/snackbar/snackbar.snackbarsProvider.json +51 -0
  58. package/component-meta/feedBack/tooltip/tooltip.json +62 -0
  59. package/component-meta/inputs/button/button.json +94 -0
  60. package/component-meta/inputs/buttonGroups/buttonGroup.json +59 -0
  61. package/component-meta/inputs/checkbox/checkbox.json +89 -0
  62. package/component-meta/inputs/datePicker/dataPickerDays.json +87 -0
  63. package/component-meta/inputs/datePicker/dataPickerHeader.json +48 -0
  64. package/component-meta/inputs/datePicker/dataPickerInput.json +34 -0
  65. package/component-meta/inputs/datePicker/datePicker.json +129 -0
  66. package/component-meta/inputs/datePicker/datePickerActionLabel.json +55 -0
  67. package/component-meta/inputs/datePicker/datePickerDay.json +61 -0
  68. package/component-meta/inputs/datePicker/datePickerIconButton.json +18 -0
  69. package/component-meta/inputs/datePicker/datePickerList.json +33 -0
  70. package/component-meta/inputs/dateTimePicker/dateTimePicker.json +120 -0
  71. package/component-meta/inputs/dateTimePicker/dateTimePickerInput.json +35 -0
  72. package/component-meta/inputs/fileDrop/countPreview.json +40 -0
  73. package/component-meta/inputs/fileDrop/fileDrop.json +71 -0
  74. package/component-meta/inputs/fileDrop/preview.json +46 -0
  75. package/component-meta/inputs/fileDrop/previewWrapper.json +51 -0
  76. package/component-meta/inputs/fileInput/fileInput.json +61 -0
  77. package/component-meta/inputs/floatingButton/floatingButton.json +43 -0
  78. package/component-meta/inputs/radioButton/radioButton.json +90 -0
  79. package/component-meta/inputs/rating/rating.json +104 -0
  80. package/component-meta/inputs/selectField/dropdownMenu.json +107 -0
  81. package/component-meta/inputs/selectField/selectField.json +203 -0
  82. package/component-meta/inputs/slider/slider.json +133 -0
  83. package/component-meta/inputs/textField/textField.json +126 -0
  84. package/component-meta/inputs/textField/textFieldAdornment.json +47 -0
  85. package/component-meta/inputs/textField/textFieldWrapper.json +96 -0
  86. package/component-meta/inputs/timePicker/timePicker.json +75 -0
  87. package/component-meta/inputs/timePicker/timePickerColumns.json +37 -0
  88. package/component-meta/inputs/timePicker/timePickerInput.json +35 -0
  89. package/component-meta/inputs/timePicker/timePickerList.json +32 -0
  90. package/component-meta/inputs/toggle/toggle.json +90 -0
  91. package/component-meta/layout/appLayout/appLayout.json +88 -0
  92. package/component-meta/layout/divider/divider.json +56 -0
  93. package/component-meta/layout/grid/grid.column.json +81 -0
  94. package/component-meta/layout/grid/grid.container.json +36 -0
  95. package/component-meta/layout/grid/grid.row.json +51 -0
  96. package/component-meta/layout/page/page.json +41 -0
  97. package/component-meta/layout/pageHeader/pageHeader.json +53 -0
  98. package/component-meta/layout/screenDivider/screenDivider.json +57 -0
  99. package/component-meta/layout/sheet/sheet.json +114 -0
  100. package/component-meta/layout/stack/stack.json +56 -0
  101. package/component-meta/navigation/appBar/appBar.json +71 -0
  102. package/component-meta/navigation/bottomBar/bottomBar.bottomBarMenuItem.json +55 -0
  103. package/component-meta/navigation/bottomBar/bottomBar.json +61 -0
  104. package/component-meta/navigation/breadcrumbs/breadcrumbs.json +61 -0
  105. package/component-meta/navigation/menu/menu.json +20 -0
  106. package/component-meta/navigation/menu/menuDivider.json +26 -0
  107. package/component-meta/navigation/menu/menuFloating.json +51 -0
  108. package/component-meta/navigation/menu/menuItem.json +68 -0
  109. package/component-meta/navigation/menu/menuItemIcon.json +31 -0
  110. package/component-meta/navigation/menu/menuItemText.json +31 -0
  111. package/component-meta/navigation/menu/menuList.json +26 -0
  112. package/component-meta/navigation/menu/menuSubmenu.json +47 -0
  113. package/component-meta/navigation/pagination/pagination.json +98 -0
  114. package/component-meta/navigation/sidebar/sidebar.json +79 -0
  115. package/component-meta/navigation/sidebar/sidebar.sidebarMenuItem.json +56 -0
  116. package/component-meta/navigation/stepper/stepper.json +53 -0
  117. package/component-meta/navigation/tabs/tab/tab.json +64 -0
  118. package/component-meta/navigation/tabs/tabs.json +60 -0
  119. package/componentMeta.mjs +493 -0
  120. package/customizationMeta.mjs +451 -0
  121. package/package.json +37 -0
  122. package/server.mjs +169 -0
@@ -0,0 +1,133 @@
1
+ {
2
+ "name": "Slider",
3
+ "description": "Numeric value slider with optional range and marks.",
4
+ "extends": [
5
+ "Omit<JSX.HTMLAttributes<HTMLSpanElement>, \"onChange\">"
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/slider/slider.entry.less"
15
+ ],
16
+ "dependencies": [
17
+ "@smwb/ui-styles/less/components/textField/textField.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/slider/slider.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/textField/textField.entry.less\";"
20
+ },
21
+ "props": {
22
+ "value": {
23
+ "type": "SliderValue",
24
+ "required": false,
25
+ "description": "Controlled value."
26
+ },
27
+ "onChange": {
28
+ "type": "(event: Event, value: SliderValue, data: SliderProps) => void",
29
+ "required": false,
30
+ "description": "Callback fired when the value changes."
31
+ },
32
+ "min": {
33
+ "type": "number",
34
+ "required": false,
35
+ "description": "Minimum allowed value."
36
+ },
37
+ "max": {
38
+ "type": "number",
39
+ "required": false,
40
+ "description": "Maximum allowed value."
41
+ },
42
+ "step": {
43
+ "type": "number",
44
+ "required": false,
45
+ "description": "Step increment between values."
46
+ },
47
+ "name": {
48
+ "type": "string",
49
+ "required": false,
50
+ "description": "Form field name submitted with the value."
51
+ },
52
+ "defaultValue": {
53
+ "type": "SliderValue",
54
+ "required": false,
55
+ "description": "Initial uncontrolled value."
56
+ },
57
+ "disabled": {
58
+ "type": "boolean",
59
+ "required": false,
60
+ "description": "Whether the control is disabled and non-interactive."
61
+ },
62
+ "variant": {
63
+ "type": "\"continuous\" | \"discrete\"",
64
+ "required": false,
65
+ "description": "Visual style variant."
66
+ },
67
+ "valueField": {
68
+ "type": "boolean",
69
+ "required": false,
70
+ "description": "Value Field. Optional. Type: boolean."
71
+ },
72
+ "withTicks": {
73
+ "type": "boolean",
74
+ "required": false,
75
+ "description": "With Ticks. Optional. Type: boolean."
76
+ },
77
+ "label": {
78
+ "type": "string",
79
+ "required": false,
80
+ "description": "Visible label text."
81
+ },
82
+ "helperText": {
83
+ "type": "JSX.Element",
84
+ "required": false,
85
+ "description": "Supplementary hint text displayed below the control."
86
+ },
87
+ "error": {
88
+ "type": "boolean",
89
+ "required": false,
90
+ "description": "Whether the control is in an error state."
91
+ },
92
+ "size": {
93
+ "type": "\"small\" | \"medium\" | \"large\"",
94
+ "required": false,
95
+ "description": "Visual size preset."
96
+ },
97
+ "color": {
98
+ "type": "\"primary\" | \"secondary\" | \"error\" | \"success\" | \"warning\" | \"info\"",
99
+ "required": false,
100
+ "description": "Semantic color token."
101
+ },
102
+ "range": {
103
+ "type": "boolean",
104
+ "required": false,
105
+ "description": "Enables a two-thumb range slider (value becomes `[number, number]`)."
106
+ },
107
+ "orientation": {
108
+ "type": "\"horizontal\" | \"vertical\"",
109
+ "required": false,
110
+ "description": "Layout orientation."
111
+ },
112
+ "marks": {
113
+ "type": "boolean | SliderMark[]",
114
+ "required": false,
115
+ "description": "Slider tick marks configuration."
116
+ },
117
+ "aria-label": {
118
+ "type": "string",
119
+ "required": false,
120
+ "description": "Accessible label when no visible title is present."
121
+ },
122
+ "getAriaValueText": {
123
+ "type": "(value: number) => string",
124
+ "required": false,
125
+ "description": "Get Aria Value Text. Optional. Type: (value: number) => string."
126
+ },
127
+ "ref": {
128
+ "type": "Ref<HTMLSpanElement>",
129
+ "required": false,
130
+ "description": "Ref. Optional. Type: Ref<HTMLSpanElement>."
131
+ }
132
+ }
133
+ }
@@ -0,0 +1,126 @@
1
+ {
2
+ "name": "TextField",
3
+ "description": "Text input field with label, adornments, validation, and variants.",
4
+ "extends": [
5
+ "Omit<JSX.InputHTMLAttributes<HTMLInputElement>, \"onChange\" | \"onBlur\" | \"size\">"
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/textField/textField.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/textField/textField.entry.less\";"
18
+ },
19
+ "props": {
20
+ "label": {
21
+ "type": "string | undefined",
22
+ "required": false,
23
+ "description": "Visible label text."
24
+ },
25
+ "helperText": {
26
+ "type": "JSX.Element",
27
+ "required": false,
28
+ "description": "Supplementary hint text displayed below the control."
29
+ },
30
+ "variant": {
31
+ "type": "\"outlined\" | \"filled\"",
32
+ "required": false,
33
+ "description": "Visual style variant."
34
+ },
35
+ "size": {
36
+ "type": "\"small\" | \"medium\" | \"large\"",
37
+ "required": false,
38
+ "description": "Visual size preset."
39
+ },
40
+ "required": {
41
+ "type": "boolean",
42
+ "required": false,
43
+ "description": "Whether the field value is required."
44
+ },
45
+ "disabled": {
46
+ "type": "boolean | undefined",
47
+ "required": false,
48
+ "description": "Whether the control is disabled and non-interactive."
49
+ },
50
+ "value": {
51
+ "type": "string | number | undefined",
52
+ "required": false,
53
+ "description": "Controlled value."
54
+ },
55
+ "placeholder": {
56
+ "type": "string",
57
+ "required": false,
58
+ "description": "Placeholder text shown when empty."
59
+ },
60
+ "defaultValue": {
61
+ "type": "string",
62
+ "required": false,
63
+ "description": "Initial uncontrolled value."
64
+ },
65
+ "error": {
66
+ "type": "boolean",
67
+ "required": false,
68
+ "description": "Whether the control is in an error state."
69
+ },
70
+ "name": {
71
+ "type": "string",
72
+ "required": false,
73
+ "description": "Form field name submitted with the value."
74
+ },
75
+ "type": {
76
+ "type": "string",
77
+ "required": false,
78
+ "description": "HTML or component-specific type."
79
+ },
80
+ "readOnly": {
81
+ "type": "boolean",
82
+ "required": false,
83
+ "description": "Whether the value is read-only."
84
+ },
85
+ "fullWidth": {
86
+ "type": "boolean",
87
+ "required": false,
88
+ "description": "Whether the component spans the full width of its container."
89
+ },
90
+ "onBlur": {
91
+ "type": "(event: FocusEvt, data: TextFieldProps) => void",
92
+ "required": false,
93
+ "description": "Callback fired when the element loses focus."
94
+ },
95
+ "onChange": {
96
+ "type": "(event: InputEvt, data: TextFieldProps) => void",
97
+ "required": false,
98
+ "description": "Callback fired when the value changes."
99
+ },
100
+ "startAdornment": {
101
+ "type": "JSX.Element",
102
+ "required": false,
103
+ "description": "Start Adornment. Optional. Type: JSX.Element."
104
+ },
105
+ "endAdornment": {
106
+ "type": "JSX.Element",
107
+ "required": false,
108
+ "description": "End Adornment. Optional. Type: JSX.Element."
109
+ },
110
+ "id": {
111
+ "type": "string",
112
+ "required": false,
113
+ "description": "Unique identifier for the root element."
114
+ },
115
+ "inline": {
116
+ "type": "boolean",
117
+ "required": false,
118
+ "description": "Inline. Optional. Type: boolean."
119
+ },
120
+ "ref": {
121
+ "type": "Ref<HTMLInputElement>",
122
+ "required": false,
123
+ "description": "Ref. Optional. Type: Ref<HTMLInputElement>."
124
+ }
125
+ }
126
+ }
@@ -0,0 +1,47 @@
1
+ {
2
+ "name": "TextFieldAdornment",
3
+ "description": "Start or end adornment slot for a text field.",
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/textField/textField.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/textField/textField.entry.less\";"
14
+ },
15
+ "props": {
16
+ "position": {
17
+ "type": "\"start\" | \"end\"",
18
+ "required": false,
19
+ "description": "Position. Optional. Type: \"start\" | \"end\"."
20
+ },
21
+ "disablePointerEvents": {
22
+ "type": "boolean",
23
+ "required": false,
24
+ "description": "Disable Pointer Events. Optional. Type: boolean."
25
+ },
26
+ "variant": {
27
+ "type": "TextFieldVariant | undefined",
28
+ "required": false,
29
+ "description": "Visual style variant."
30
+ },
31
+ "inline": {
32
+ "type": "boolean",
33
+ "required": false,
34
+ "description": "Inline. Optional. Type: boolean."
35
+ },
36
+ "class": {
37
+ "type": "string",
38
+ "required": false,
39
+ "description": "Class. Optional. Type: string."
40
+ },
41
+ "children": {
42
+ "type": "JSX.Element",
43
+ "required": false,
44
+ "description": "Child nodes rendered inside the component."
45
+ }
46
+ }
47
+ }
@@ -0,0 +1,96 @@
1
+ {
2
+ "name": "TextFieldWrapper",
3
+ "description": "Layout wrapper around a text field control.",
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/textField/textField.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/textField/textField.entry.less\";"
18
+ },
19
+ "props": {
20
+ "label": {
21
+ "type": "string | undefined",
22
+ "required": false,
23
+ "description": "Visible label text."
24
+ },
25
+ "helperText": {
26
+ "type": "JSX.Element",
27
+ "required": false,
28
+ "description": "Supplementary hint text displayed below the control."
29
+ },
30
+ "variant": {
31
+ "type": "TextFieldVariant | undefined",
32
+ "required": false,
33
+ "description": "Visual style variant."
34
+ },
35
+ "disabled": {
36
+ "type": "boolean | undefined",
37
+ "required": false,
38
+ "description": "Whether the control is disabled and non-interactive."
39
+ },
40
+ "error": {
41
+ "type": "boolean | undefined",
42
+ "required": false,
43
+ "description": "Whether the control is in an error state."
44
+ },
45
+ "fullWidth": {
46
+ "type": "boolean | undefined",
47
+ "required": false,
48
+ "description": "Whether the component spans the full width of its container."
49
+ },
50
+ "isFilledState": {
51
+ "type": "boolean | undefined",
52
+ "required": false,
53
+ "description": "Is Filled State. Optional. Type: boolean | undefined."
54
+ },
55
+ "isFocused": {
56
+ "type": "boolean | undefined",
57
+ "required": false,
58
+ "description": "Is Focused. Optional. Type: boolean | undefined."
59
+ },
60
+ "for": {
61
+ "type": "string | undefined",
62
+ "required": false,
63
+ "description": "For. Optional. Type: string | undefined."
64
+ },
65
+ "shrink": {
66
+ "type": "boolean | undefined",
67
+ "required": false,
68
+ "description": "Shrink. Optional. Type: boolean | undefined."
69
+ },
70
+ "onHolderMouseDown": {
71
+ "type": "JSX.EventHandlerUnion<HTMLDivElement, MouseEvent>",
72
+ "required": false,
73
+ "description": "On Holder Mouse Down. Optional. Type: JSX.EventHandlerUnion<HTMLDivElement, MouseEvent>."
74
+ },
75
+ "startAdornment": {
76
+ "type": "JSX.Element",
77
+ "required": false,
78
+ "description": "Start Adornment. Optional. Type: JSX.Element."
79
+ },
80
+ "endAdornment": {
81
+ "type": "JSX.Element",
82
+ "required": false,
83
+ "description": "End Adornment. Optional. Type: JSX.Element."
84
+ },
85
+ "inline": {
86
+ "type": "boolean | undefined",
87
+ "required": false,
88
+ "description": "Inline. Optional. Type: boolean | undefined."
89
+ },
90
+ "children": {
91
+ "type": "JSX.Element",
92
+ "required": false,
93
+ "description": "Child nodes rendered inside the component."
94
+ }
95
+ }
96
+ }
@@ -0,0 +1,75 @@
1
+ {
2
+ "name": "TimePicker",
3
+ "description": "Time selection input with column or list popup.",
4
+ "extends": [
5
+ "Omit<TextFieldProps, \"onBlur\" | \"onChange\" | \"value\" | \"defaultValue\" | \"ref\" | \"onToggle\">"
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/timePicker/timePicker.entry.less"
15
+ ],
16
+ "dependencies": [
17
+ "@smwb/ui-styles/less/components/icon/icon.entry.less",
18
+ "@smwb/ui-styles/less/components/ripple/ripple.entry.less",
19
+ "@smwb/ui-styles/less/components/textField/textField.entry.less"
20
+ ],
21
+ "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/timePicker/timePicker.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/icon/icon.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/ripple/ripple.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/textField/textField.entry.less\";"
22
+ },
23
+ "props": {
24
+ "format": {
25
+ "type": "string | undefined",
26
+ "required": false,
27
+ "description": "Time format pattern with tokens HH, mm, ss, e.g. \"HH:mm\" or \"HH:mm:ss\"."
28
+ },
29
+ "placement": {
30
+ "type": "Placement | undefined",
31
+ "required": false,
32
+ "description": "Preferred floating placement relative to the anchor."
33
+ },
34
+ "disableClock": {
35
+ "type": "boolean | undefined",
36
+ "required": false,
37
+ "description": "Disable Clock. Optional. Type: boolean | undefined."
38
+ },
39
+ "label": {
40
+ "type": "string | undefined",
41
+ "required": false,
42
+ "description": "Visible label text."
43
+ },
44
+ "clockAriaLabel": {
45
+ "type": "string | undefined",
46
+ "required": false,
47
+ "description": "Clock Aria Label. Optional. Type: string | undefined."
48
+ },
49
+ "value": {
50
+ "type": "Date | string | undefined",
51
+ "required": false,
52
+ "description": "Controlled value."
53
+ },
54
+ "clockIcon": {
55
+ "type": "JSX.Element",
56
+ "required": false,
57
+ "description": "Clock Icon. Optional. Type: JSX.Element."
58
+ },
59
+ "onChange": {
60
+ "type": "((event?: Event, value?: Date, data?: TimePickerProps) => void) | undefined",
61
+ "required": false,
62
+ "description": "Callback fired when the value changes."
63
+ },
64
+ "onBlur": {
65
+ "type": "((event?: FocusEvent, value?: Date, data?: TimePickerProps) => void) | undefined",
66
+ "required": false,
67
+ "description": "Callback fired when the element loses focus."
68
+ },
69
+ "ref": {
70
+ "type": "Ref<HTMLInputElement>",
71
+ "required": false,
72
+ "description": "Ref. Optional. Type: Ref<HTMLInputElement>."
73
+ }
74
+ }
75
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "name": "TimePickerColumns",
3
+ "description": "Hour, minute, and second columns for time selection.",
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/timePicker/timePicker.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/timePicker/timePicker.entry.less\";"
14
+ },
15
+ "props": {
16
+ "value": {
17
+ "type": "Date",
18
+ "required": false,
19
+ "description": "Controlled value."
20
+ },
21
+ "format": {
22
+ "type": "string | undefined",
23
+ "required": false,
24
+ "description": "Format. Optional. Type: string | undefined."
25
+ },
26
+ "onChange": {
27
+ "type": "(value: Date) => void",
28
+ "required": true,
29
+ "description": "Callback fired when the value changes."
30
+ },
31
+ "onComplete": {
32
+ "type": "() => void",
33
+ "required": false,
34
+ "description": "On Complete. Optional. Type: () => void."
35
+ }
36
+ }
37
+ }
@@ -0,0 +1,35 @@
1
+ {
2
+ "name": "TimePickerInput",
3
+ "description": "Internal time picker input field and toggle control.",
4
+ "extends": [
5
+ "Omit<TimePickerProps, \"placement\" | \"onToggle\">"
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/timePicker/timePicker.entry.less"
15
+ ],
16
+ "dependencies": [
17
+ "@smwb/ui-styles/less/components/icon/icon.entry.less",
18
+ "@smwb/ui-styles/less/components/ripple/ripple.entry.less",
19
+ "@smwb/ui-styles/less/components/textField/textField.entry.less"
20
+ ],
21
+ "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/timePicker/timePicker.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/icon/icon.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/ripple/ripple.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/textField/textField.entry.less\";"
22
+ },
23
+ "props": {
24
+ "onToggle": {
25
+ "type": "() => void",
26
+ "required": true,
27
+ "description": "Callback fired when expand/collapse toggles."
28
+ },
29
+ "ref": {
30
+ "type": "Ref<HTMLInputElement>",
31
+ "required": false,
32
+ "description": "Ref. Optional. Type: Ref<HTMLInputElement>."
33
+ }
34
+ }
35
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "name": "TimePickerList",
3
+ "description": "Scrollable time option list.",
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/timePicker/timePicker.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/timePicker/timePicker.entry.less\";"
14
+ },
15
+ "props": {
16
+ "value": {
17
+ "type": "number",
18
+ "required": true,
19
+ "description": "Controlled value."
20
+ },
21
+ "items": {
22
+ "type": "Item[]",
23
+ "required": true,
24
+ "description": "Breadcrumb or navigation items."
25
+ },
26
+ "onChange": {
27
+ "type": "(value: number) => void",
28
+ "required": true,
29
+ "description": "Callback fired when the value changes."
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,90 @@
1
+ {
2
+ "name": "Toggle",
3
+ "description": "On/off switch control.",
4
+ "extends": [
5
+ "Omit<JSX.InputHTMLAttributes<HTMLInputElement>, \"onChange\" | \"size\">"
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/toggle/toggle.entry.less"
15
+ ],
16
+ "dependencies": [
17
+ "@smwb/ui-styles/less/components/checkbox/checkbox.entry.less",
18
+ "@smwb/ui-styles/less/components/icon/icon.entry.less",
19
+ "@smwb/ui-styles/less/components/textField/textField.entry.less"
20
+ ],
21
+ "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/toggle/toggle.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/checkbox/checkbox.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/icon/icon.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/textField/textField.entry.less\";"
22
+ },
23
+ "props": {
24
+ "disabled": {
25
+ "type": "boolean",
26
+ "required": false,
27
+ "description": "Whether the control is disabled and non-interactive."
28
+ },
29
+ "readOnly": {
30
+ "type": "boolean",
31
+ "required": false,
32
+ "description": "Whether the value is read-only."
33
+ },
34
+ "required": {
35
+ "type": "boolean",
36
+ "required": false,
37
+ "description": "Whether the field value is required."
38
+ },
39
+ "checked": {
40
+ "type": "boolean",
41
+ "required": false,
42
+ "description": "Controlled checked state."
43
+ },
44
+ "id": {
45
+ "type": "string",
46
+ "required": false,
47
+ "description": "Unique identifier for the root element."
48
+ },
49
+ "label": {
50
+ "type": "string",
51
+ "required": false,
52
+ "description": "Visible label text."
53
+ },
54
+ "labelPlacement": {
55
+ "type": "\"top\" | \"left\" | \"right\"",
56
+ "required": false,
57
+ "description": "Label Placement. Optional. Type: \"top\" | \"left\" | \"right\"."
58
+ },
59
+ "size": {
60
+ "type": "SelectionControlSize",
61
+ "required": false,
62
+ "description": "Visual size preset."
63
+ },
64
+ "color": {
65
+ "type": "SelectionControlColor",
66
+ "required": false,
67
+ "description": "Semantic color token."
68
+ },
69
+ "onChange": {
70
+ "type": "(event: SelectionChangeEvent, checked: boolean, data: ToggleProps) => void",
71
+ "required": false,
72
+ "description": "Unified handler: `(event, checked, data)`."
73
+ },
74
+ "helperText": {
75
+ "type": "JSX.Element",
76
+ "required": false,
77
+ "description": "Supplementary hint text displayed below the control."
78
+ },
79
+ "error": {
80
+ "type": "boolean",
81
+ "required": false,
82
+ "description": "Whether the control is in an error state."
83
+ },
84
+ "ref": {
85
+ "type": "Ref<HTMLInputElement>",
86
+ "required": false,
87
+ "description": "Ref. Optional. Type: Ref<HTMLInputElement>."
88
+ }
89
+ }
90
+ }