@smwb/ui-mcp-react 2.0.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 (125) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +56 -0
  3. package/component-meta/base/icon/icon.json +61 -0
  4. package/component-meta/base/ripple/ripple.json +46 -0
  5. package/component-meta/clickAwayListener/clickAwayListener.json +45 -0
  6. package/component-meta/connects/rt/table/draggableHeader.draggableColumnHeader.json +37 -0
  7. package/component-meta/connects/rt/table/draggableHeader.draggableColumnHeaderWrapper.json +40 -0
  8. package/component-meta/connects/rt/table/headerCellRenderer.json +29 -0
  9. package/component-meta/connects/rt/table/table.json +23 -0
  10. package/component-meta/dataDisplay/accordion/accordion.json +79 -0
  11. package/component-meta/dataDisplay/avatar/avatar.avatarGroup.json +41 -0
  12. package/component-meta/dataDisplay/avatar/avatar.json +56 -0
  13. package/component-meta/dataDisplay/badge/badge.json +66 -0
  14. package/component-meta/dataDisplay/card/card.json +51 -0
  15. package/component-meta/dataDisplay/carousel/carousel.json +88 -0
  16. package/component-meta/dataDisplay/chat/chat.json +240 -0
  17. package/component-meta/dataDisplay/chat/chatAttachmentImage.json +27 -0
  18. package/component-meta/dataDisplay/chat/chatAttachments.json +32 -0
  19. package/component-meta/dataDisplay/chat/chatComposer.json +76 -0
  20. package/component-meta/dataDisplay/chat/chatHeader.json +60 -0
  21. package/component-meta/dataDisplay/chat/chatIconButton.json +38 -0
  22. package/component-meta/dataDisplay/chat/chatLayout.chatLayoutChat.json +20 -0
  23. package/component-meta/dataDisplay/chat/chatLayout.json +90 -0
  24. package/component-meta/dataDisplay/chat/chatMessageAvatar.json +34 -0
  25. package/component-meta/dataDisplay/chat/chatMessageBubble.json +91 -0
  26. package/component-meta/dataDisplay/chat/chatMessageIncoming.json +60 -0
  27. package/component-meta/dataDisplay/chat/chatMessageItem.json +65 -0
  28. package/component-meta/dataDisplay/chat/chatMessageOutgoing.json +60 -0
  29. package/component-meta/dataDisplay/chat/chatMessageSkeleton.json +39 -0
  30. package/component-meta/dataDisplay/chat/chatMessageStatus.json +44 -0
  31. package/component-meta/dataDisplay/chat/chatMessageSystem.json +29 -0
  32. package/component-meta/dataDisplay/chat/chatMessages.json +91 -0
  33. package/component-meta/dataDisplay/chat/chatOverlayLayout.chatOverlayLayoutChat.json +20 -0
  34. package/component-meta/dataDisplay/chat/chatOverlayLayout.json +75 -0
  35. package/component-meta/dataDisplay/chat/chatShell.json +71 -0
  36. package/component-meta/dataDisplay/chip/chip.json +104 -0
  37. package/component-meta/dataDisplay/expansionPanel/expansionPanel.json +81 -0
  38. package/component-meta/dataDisplay/imagesList/imagesList.json +52 -0
  39. package/component-meta/dataDisplay/imagesList/imagesListItem/imagesListItem.json +64 -0
  40. package/component-meta/dataDisplay/imagesList/imagesListItem/imagesListItemModal.json +32 -0
  41. package/component-meta/dataDisplay/list/list.json +36 -0
  42. package/component-meta/dataDisplay/list/listItem.json +57 -0
  43. package/component-meta/dataDisplay/table/table.json +56 -0
  44. package/component-meta/dataDisplay/table/tableBody.json +26 -0
  45. package/component-meta/dataDisplay/table/tableCell.json +31 -0
  46. package/component-meta/dataDisplay/table/tableHead.json +26 -0
  47. package/component-meta/dataDisplay/table/tableHeadCell.json +58 -0
  48. package/component-meta/dataDisplay/table/tablePagination/tablePagination.baseTablePagination.json +47 -0
  49. package/component-meta/dataDisplay/table/tablePagination/tablePagination.json +21 -0
  50. package/component-meta/dataDisplay/table/tableRow.json +36 -0
  51. package/component-meta/dataDisplay/treeView/treeView.json +88 -0
  52. package/component-meta/dataDisplay/typography/typography.json +56 -0
  53. package/component-meta/feedBack/message/message.json +53 -0
  54. package/component-meta/feedBack/modal/modal.content.json +22 -0
  55. package/component-meta/feedBack/modal/modal.footer.json +22 -0
  56. package/component-meta/feedBack/modal/modal.header.json +22 -0
  57. package/component-meta/feedBack/modal/modal.json +87 -0
  58. package/component-meta/feedBack/progressIndicator/progressIndicator.circularProgress.json +22 -0
  59. package/component-meta/feedBack/progressIndicator/progressIndicator.json +57 -0
  60. package/component-meta/feedBack/skeleton/skeleton.json +61 -0
  61. package/component-meta/feedBack/snackbar/snackbar.json +61 -0
  62. package/component-meta/feedBack/snackbar/snackbar.snackbarsProvider.json +51 -0
  63. package/component-meta/feedBack/tooltip/tooltip.json +57 -0
  64. package/component-meta/inputs/button/button.json +89 -0
  65. package/component-meta/inputs/buttonGroups/buttonGroup.json +56 -0
  66. package/component-meta/inputs/checkbox/checkbox.json +89 -0
  67. package/component-meta/inputs/datePicker/dataPickerDays.json +43 -0
  68. package/component-meta/inputs/datePicker/dataPickerHeader.json +50 -0
  69. package/component-meta/inputs/datePicker/dataPickerInput.json +29 -0
  70. package/component-meta/inputs/datePicker/datePicker.json +129 -0
  71. package/component-meta/inputs/datePicker/datePickerIconButton.json +18 -0
  72. package/component-meta/inputs/datePicker/datePickerList.json +30 -0
  73. package/component-meta/inputs/dateTimePicker/dateTimePicker.json +120 -0
  74. package/component-meta/inputs/dateTimePicker/dateTimePickerInput.json +30 -0
  75. package/component-meta/inputs/fileDrop/countPreview.json +40 -0
  76. package/component-meta/inputs/fileDrop/fileDrop.json +66 -0
  77. package/component-meta/inputs/fileDrop/preview.json +46 -0
  78. package/component-meta/inputs/fileDrop/previewWrapper.json +51 -0
  79. package/component-meta/inputs/fileInput/fileInput.json +56 -0
  80. package/component-meta/inputs/floatingButton/floatingButton.json +43 -0
  81. package/component-meta/inputs/radioButton/radioButton.json +85 -0
  82. package/component-meta/inputs/rating/rating.json +99 -0
  83. package/component-meta/inputs/selectField/dropdownMenu.json +107 -0
  84. package/component-meta/inputs/selectField/selectField.json +199 -0
  85. package/component-meta/inputs/slider/slider.json +128 -0
  86. package/component-meta/inputs/textField/textField.json +131 -0
  87. package/component-meta/inputs/textField/textFieldAdornment.json +40 -0
  88. package/component-meta/inputs/textField/textFieldWrapper.json +101 -0
  89. package/component-meta/inputs/timePicker/timePicker.json +75 -0
  90. package/component-meta/inputs/timePicker/timePickerColumns.json +37 -0
  91. package/component-meta/inputs/timePicker/timePickerInput.json +30 -0
  92. package/component-meta/inputs/timePicker/timePickerList.json +32 -0
  93. package/component-meta/inputs/toggle/toggle.json +90 -0
  94. package/component-meta/layout/appLayout/appLayout.json +88 -0
  95. package/component-meta/layout/divider/divider.json +56 -0
  96. package/component-meta/layout/grid/grid.column.json +20 -0
  97. package/component-meta/layout/grid/grid.container.json +31 -0
  98. package/component-meta/layout/grid/grid.row.json +46 -0
  99. package/component-meta/layout/page/page.json +41 -0
  100. package/component-meta/layout/pageHeader/pageHeader.json +53 -0
  101. package/component-meta/layout/screenDivider/screenDivider.json +52 -0
  102. package/component-meta/layout/sheet/sheet.json +115 -0
  103. package/component-meta/layout/stack/stack.json +56 -0
  104. package/component-meta/navigation/appBar/appBar.json +76 -0
  105. package/component-meta/navigation/bottomBar/bottomBar.bottomBarMenuItem.json +19 -0
  106. package/component-meta/navigation/bottomBar/bottomBar.json +61 -0
  107. package/component-meta/navigation/breadcrumbs/breadcrumbs.json +61 -0
  108. package/component-meta/navigation/menu/menu.json +20 -0
  109. package/component-meta/navigation/menu/menuDivider.json +20 -0
  110. package/component-meta/navigation/menu/menuFloating.json +46 -0
  111. package/component-meta/navigation/menu/menuItem.json +63 -0
  112. package/component-meta/navigation/menu/menuItemIcon.json +26 -0
  113. package/component-meta/navigation/menu/menuItemText.json +36 -0
  114. package/component-meta/navigation/menu/menuList.json +20 -0
  115. package/component-meta/navigation/menu/menuSubmenu.json +22 -0
  116. package/component-meta/navigation/pagination/pagination.json +98 -0
  117. package/component-meta/navigation/sidebar/sidebar.json +79 -0
  118. package/component-meta/navigation/sidebar/sidebar.menuItem.json +56 -0
  119. package/component-meta/navigation/stepper/stepper.json +53 -0
  120. package/component-meta/navigation/tabs/tab/tab.json +58 -0
  121. package/component-meta/navigation/tabs/tabs.json +55 -0
  122. package/componentMeta.mjs +493 -0
  123. package/customizationMeta.mjs +451 -0
  124. package/package.json +37 -0
  125. package/server.mjs +169 -0
@@ -0,0 +1,129 @@
1
+ {
2
+ "name": "DatePicker",
3
+ "description": "Date selection input with calendar popup.",
4
+ "extends": [
5
+ "Omit<TextFieldProps, \"onBlur\" | \"onChange\" | \"value\" | \"defaultValue\">"
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
+ "dependencies": [
15
+ "@smwb/ui-styles/less/components/icon/icon.entry.less",
16
+ "@smwb/ui-styles/less/components/menu/menu.entry.less",
17
+ "@smwb/ui-styles/less/components/ripple/ripple.entry.less",
18
+ "@smwb/ui-styles/less/components/textField/textField.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/icon/icon.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/menu/menu.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\";"
21
+ },
22
+ "props": {
23
+ "showDaysOutsideMonth": {
24
+ "type": "boolean",
25
+ "required": false,
26
+ "description": "Show Days Outside Month. Optional. Type: boolean."
27
+ },
28
+ "disablePast": {
29
+ "type": "boolean",
30
+ "required": false,
31
+ "description": "Disable Past. Optional. Type: boolean."
32
+ },
33
+ "disableFuture": {
34
+ "type": "boolean",
35
+ "required": false,
36
+ "description": "Disable Future. Optional. Type: boolean."
37
+ },
38
+ "minDate": {
39
+ "type": "Date",
40
+ "required": false,
41
+ "description": "Earliest selectable date (inclusive)."
42
+ },
43
+ "maxDate": {
44
+ "type": "Date",
45
+ "required": false,
46
+ "description": "Latest selectable date (inclusive)."
47
+ },
48
+ "isDateDisabled": {
49
+ "type": "(day: Date) => boolean",
50
+ "required": false,
51
+ "description": "Predicate to disable arbitrary days."
52
+ },
53
+ "weekStartsOn": {
54
+ "type": "0 | 1 | 2 | 3 | 4 | 5 | 6",
55
+ "required": false,
56
+ "description": "Week Starts On. Optional. Type: 0 | 1 | 2 | 3 | 4 | 5 | 6."
57
+ },
58
+ "locale": {
59
+ "type": "string",
60
+ "required": false,
61
+ "description": "BCP-47 locale for calendar labels (day/month/year names)."
62
+ },
63
+ "format": {
64
+ "type": "string",
65
+ "required": false,
66
+ "description": "Input format pattern with tokens dd, MM, yyyy, e.g. \"dd/MM/yyyy\"."
67
+ },
68
+ "range": {
69
+ "type": "boolean",
70
+ "required": false,
71
+ "description": "Enables date-range selection."
72
+ },
73
+ "rangeValue": {
74
+ "type": "[Date | undefined, Date | undefined]",
75
+ "required": false,
76
+ "description": "Controlled range value `[start, end]`."
77
+ },
78
+ "onRangeChange": {
79
+ "type": "(range: [Date | undefined, Date | undefined]) => void",
80
+ "required": false,
81
+ "description": "Called when the range changes."
82
+ },
83
+ "placement": {
84
+ "type": "Placement",
85
+ "required": false,
86
+ "description": "Preferred floating placement relative to the anchor."
87
+ },
88
+ "disableCalendar": {
89
+ "type": "boolean",
90
+ "required": false,
91
+ "description": "Disable Calendar. Optional. Type: boolean."
92
+ },
93
+ "label": {
94
+ "type": "string",
95
+ "required": false,
96
+ "description": "Visible label text."
97
+ },
98
+ "calendarAriaLabel": {
99
+ "type": "string",
100
+ "required": false,
101
+ "description": "Accessible label for the calendar popup dialog."
102
+ },
103
+ "autoComplete": {
104
+ "type": "string",
105
+ "required": false,
106
+ "description": "Auto Complete. Optional. Type: string."
107
+ },
108
+ "value": {
109
+ "type": "Date | string",
110
+ "required": false,
111
+ "description": "Controlled value."
112
+ },
113
+ "calendarIcon": {
114
+ "type": "React.ReactNode",
115
+ "required": false,
116
+ "description": "Calendar Icon. Optional. Type: React.ReactNode."
117
+ },
118
+ "onChange": {
119
+ "type": "(event?: React.ChangeEvent<HTMLInputElement>, value?: Date, data?: DatePickerProps) => void",
120
+ "required": false,
121
+ "description": "Callback fired when the value changes."
122
+ },
123
+ "onBlur": {
124
+ "type": "(event?: React.FocusEvent<HTMLInputElement>, value?: Date, data?: DatePickerProps) => void",
125
+ "required": false,
126
+ "description": "Callback fired when the element loses focus."
127
+ }
128
+ }
129
+ }
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "DataPickerIconButton",
3
+ "description": "Data Picker Icon Button component from the inputs module.",
4
+ "extends": [
5
+ "React.ButtonHTMLAttributes<HTMLButtonElement> & {\n size?: \"medium\" | \"small\";\n edge?: \"start\" | \"end\";\n}"
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
+ "dependencies": [],
15
+ "importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";"
16
+ },
17
+ "props": {}
18
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "DataPickerList",
3
+ "description": "Data Picker List component from the inputs module.",
4
+ "styles": {
5
+ "base": [
6
+ "@smwb/ui-styles/less/foundation.less",
7
+ "@smwb/ui-styles/less/theme.less"
8
+ ],
9
+ "entries": [],
10
+ "dependencies": [],
11
+ "importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";"
12
+ },
13
+ "props": {
14
+ "value": {
15
+ "type": "number",
16
+ "required": true,
17
+ "description": "Controlled value."
18
+ },
19
+ "items": {
20
+ "type": "Item[]",
21
+ "required": true,
22
+ "description": "Breadcrumb or navigation items."
23
+ },
24
+ "onChange": {
25
+ "type": "(value: number) => void",
26
+ "required": true,
27
+ "description": "Callback fired when the value changes."
28
+ }
29
+ }
30
+ }
@@ -0,0 +1,120 @@
1
+ {
2
+ "name": "DateTimePicker",
3
+ "description": "Combined date and time selection input.",
4
+ "extends": [
5
+ "Omit<TextFieldProps, \"onBlur\" | \"onChange\" | \"value\" | \"defaultValue\">"
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
+ "dependencies": [
15
+ "@smwb/ui-styles/less/components/icon/icon.entry.less",
16
+ "@smwb/ui-styles/less/components/menu/menu.entry.less",
17
+ "@smwb/ui-styles/less/components/ripple/ripple.entry.less",
18
+ "@smwb/ui-styles/less/components/textField/textField.entry.less",
19
+ "@smwb/ui-styles/less/components/timePicker/timePicker.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/icon/icon.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/menu/menu.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\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/timePicker/timePicker.entry.less\";"
22
+ },
23
+ "props": {
24
+ "showDaysOutsideMonth": {
25
+ "type": "boolean",
26
+ "required": false,
27
+ "description": "Show Days Outside Month. Optional. Type: boolean."
28
+ },
29
+ "disablePast": {
30
+ "type": "boolean",
31
+ "required": false,
32
+ "description": "Disable Past. Optional. Type: boolean."
33
+ },
34
+ "disableFuture": {
35
+ "type": "boolean",
36
+ "required": false,
37
+ "description": "Disable Future. Optional. Type: boolean."
38
+ },
39
+ "minDate": {
40
+ "type": "Date",
41
+ "required": false,
42
+ "description": "Min Date. Optional. Type: Date."
43
+ },
44
+ "maxDate": {
45
+ "type": "Date",
46
+ "required": false,
47
+ "description": "Max Date. Optional. Type: Date."
48
+ },
49
+ "isDateDisabled": {
50
+ "type": "(day: Date) => boolean",
51
+ "required": false,
52
+ "description": "Is Date Disabled. Optional. Type: (day: Date) => boolean."
53
+ },
54
+ "weekStartsOn": {
55
+ "type": "0 | 1 | 2 | 3 | 4 | 5 | 6",
56
+ "required": false,
57
+ "description": "Week Starts On. Optional. Type: 0 | 1 | 2 | 3 | 4 | 5 | 6."
58
+ },
59
+ "locale": {
60
+ "type": "string",
61
+ "required": false,
62
+ "description": "Locale. Optional. Type: string."
63
+ },
64
+ "format": {
65
+ "type": "string",
66
+ "required": false,
67
+ "description": "Input format with tokens dd, MM, yyyy, HH, mm, ss, e.g. \"dd/MM/yyyy HH:mm\"."
68
+ },
69
+ "timeFormat": {
70
+ "type": "string",
71
+ "required": false,
72
+ "description": "Time portion format when using the clock columns. Defaults to \"HH:mm\"."
73
+ },
74
+ "placement": {
75
+ "type": "Placement",
76
+ "required": false,
77
+ "description": "Preferred floating placement relative to the anchor."
78
+ },
79
+ "disableCalendar": {
80
+ "type": "boolean",
81
+ "required": false,
82
+ "description": "Disable Calendar. Optional. Type: boolean."
83
+ },
84
+ "label": {
85
+ "type": "string",
86
+ "required": false,
87
+ "description": "Visible label text."
88
+ },
89
+ "calendarAriaLabel": {
90
+ "type": "string",
91
+ "required": false,
92
+ "description": "Calendar Aria Label. Optional. Type: string."
93
+ },
94
+ "autoComplete": {
95
+ "type": "string",
96
+ "required": false,
97
+ "description": "Auto Complete. Optional. Type: string."
98
+ },
99
+ "value": {
100
+ "type": "Date | string",
101
+ "required": false,
102
+ "description": "Controlled value."
103
+ },
104
+ "calendarIcon": {
105
+ "type": "React.ReactNode",
106
+ "required": false,
107
+ "description": "Calendar Icon. Optional. Type: React.ReactNode."
108
+ },
109
+ "onChange": {
110
+ "type": "(event?: React.ChangeEvent<HTMLInputElement>, value?: Date, data?: DateTimePickerProps) => void",
111
+ "required": false,
112
+ "description": "Callback fired when the value changes."
113
+ },
114
+ "onBlur": {
115
+ "type": "(event?: React.FocusEvent<HTMLInputElement>, value?: Date, data?: DateTimePickerProps) => void",
116
+ "required": false,
117
+ "description": "Callback fired when the element loses focus."
118
+ }
119
+ }
120
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "DateTimePickerInput",
3
+ "description": "Internal date-time picker input field and toggle control.",
4
+ "extends": [
5
+ "Omit<\n DateTimePickerProps,\n | \"locale\"\n | \"showDaysOutsideMonth\"\n | \"disablePast\"\n | \"disableFuture\"\n | \"weekStartsOn\"\n | \"placement\"\n | \"minDate\"\n | \"maxDate\"\n | \"isDateDisabled\"\n>"
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
+ "dependencies": [
15
+ "@smwb/ui-styles/less/components/icon/icon.entry.less",
16
+ "@smwb/ui-styles/less/components/menu/menu.entry.less",
17
+ "@smwb/ui-styles/less/components/ripple/ripple.entry.less",
18
+ "@smwb/ui-styles/less/components/textField/textField.entry.less",
19
+ "@smwb/ui-styles/less/components/timePicker/timePicker.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/icon/icon.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/menu/menu.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\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/timePicker/timePicker.entry.less\";"
22
+ },
23
+ "props": {
24
+ "onToggle": {
25
+ "type": "() => void",
26
+ "required": true,
27
+ "description": "Callback fired when expand/collapse toggles."
28
+ }
29
+ }
30
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "name": "CountPreview",
3
+ "description": "Compact counter preview when multiple files are uploaded.",
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/fileDrop/fileDrop.entry.less"
11
+ ],
12
+ "dependencies": [
13
+ "@smwb/ui-styles/less/components/floatingButton/floatingButton.entry.less",
14
+ "@smwb/ui-styles/less/components/icon/icon.entry.less"
15
+ ],
16
+ "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/fileDrop/fileDrop.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/floatingButton/floatingButton.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/icon/icon.entry.less\";"
17
+ },
18
+ "props": {
19
+ "previewClassName": {
20
+ "type": "string",
21
+ "required": false,
22
+ "description": "Preview Class Name. Optional. Type: string."
23
+ },
24
+ "text": {
25
+ "type": "string",
26
+ "required": false,
27
+ "description": "Primary text content of the message."
28
+ },
29
+ "filesLength": {
30
+ "type": "number",
31
+ "required": true,
32
+ "description": "Files Length. Required. Type: number."
33
+ },
34
+ "handleRemoveAll": {
35
+ "type": "() => void",
36
+ "required": true,
37
+ "description": "Handle Remove All. Required. Type: () => void."
38
+ }
39
+ }
40
+ }
@@ -0,0 +1,66 @@
1
+ {
2
+ "name": "FileUpload",
3
+ "description": "File Upload component from the inputs module.",
4
+ "extends": [
5
+ "DropzoneOptions"
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/fileDrop/fileDrop.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/fileDrop/fileDrop.entry.less\";"
18
+ },
19
+ "props": {
20
+ "preview": {
21
+ "type": "boolean",
22
+ "required": false,
23
+ "description": "Preview. Optional. Type: boolean."
24
+ },
25
+ "previewCols": {
26
+ "type": "number",
27
+ "required": false,
28
+ "description": "Preview Cols. Optional. Type: number."
29
+ },
30
+ "galleryItemSize": {
31
+ "type": "number",
32
+ "required": false,
33
+ "description": "Gallery Item Size. Optional. Type: number."
34
+ },
35
+ "onDrop": {
36
+ "type": "(files: File[]) => void",
37
+ "required": true,
38
+ "description": "On Drop. Required. Type: (files: File[]) => void."
39
+ },
40
+ "label": {
41
+ "type": "string",
42
+ "required": false,
43
+ "description": "Visible label text."
44
+ },
45
+ "className": {
46
+ "type": "string",
47
+ "required": false,
48
+ "description": "Additional CSS class name(s) for the root element."
49
+ },
50
+ "previewClassName": {
51
+ "type": "string",
52
+ "required": false,
53
+ "description": "Preview Class Name. Optional. Type: string."
54
+ },
55
+ "disabled": {
56
+ "type": "boolean",
57
+ "required": false,
58
+ "description": "Whether the control is disabled and non-interactive."
59
+ },
60
+ "error": {
61
+ "type": "string",
62
+ "required": false,
63
+ "description": "Validation message rendered below the drop zone."
64
+ }
65
+ }
66
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "name": "Preview",
3
+ "description": "Single uploaded file preview tile.",
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/fileDrop/fileDrop.entry.less"
11
+ ],
12
+ "dependencies": [
13
+ "@smwb/ui-styles/less/components/floatingButton/floatingButton.entry.less",
14
+ "@smwb/ui-styles/less/components/icon/icon.entry.less",
15
+ "@smwb/ui-styles/less/components/imagesList/imagesList.entry.less"
16
+ ],
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/fileDrop/fileDrop.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/floatingButton/floatingButton.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/imagesList/imagesList.entry.less\";"
18
+ },
19
+ "props": {
20
+ "previewCols": {
21
+ "type": "number",
22
+ "required": false,
23
+ "description": "Preview Cols. Optional. Type: number."
24
+ },
25
+ "galleryItemSize": {
26
+ "type": "number",
27
+ "required": false,
28
+ "description": "Gallery Item Size. Optional. Type: number."
29
+ },
30
+ "previewClassName": {
31
+ "type": "string",
32
+ "required": false,
33
+ "description": "Preview Class Name. Optional. Type: string."
34
+ },
35
+ "files": {
36
+ "type": "File[]",
37
+ "required": true,
38
+ "description": "Files. Required. Type: File[]."
39
+ },
40
+ "handleRemoveAll": {
41
+ "type": "() => void",
42
+ "required": true,
43
+ "description": "Handle Remove All. Required. Type: () => void."
44
+ }
45
+ }
46
+ }
@@ -0,0 +1,51 @@
1
+ {
2
+ "name": "PreviewWrapper",
3
+ "description": "Layout wrapper for file preview tiles in FileDrop.",
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/fileDrop/fileDrop.entry.less"
11
+ ],
12
+ "dependencies": [
13
+ "@smwb/ui-styles/less/components/floatingButton/floatingButton.entry.less",
14
+ "@smwb/ui-styles/less/components/icon/icon.entry.less",
15
+ "@smwb/ui-styles/less/components/imagesList/imagesList.entry.less"
16
+ ],
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/fileDrop/fileDrop.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/floatingButton/floatingButton.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/imagesList/imagesList.entry.less\";"
18
+ },
19
+ "props": {
20
+ "preview": {
21
+ "type": "boolean",
22
+ "required": false,
23
+ "description": "Preview. Optional. Type: boolean."
24
+ },
25
+ "files": {
26
+ "type": "File[]",
27
+ "required": true,
28
+ "description": "Files. Required. Type: File[]."
29
+ },
30
+ "handleRemoveAll": {
31
+ "type": "() => void",
32
+ "required": true,
33
+ "description": "Handle Remove All. Required. Type: () => void."
34
+ },
35
+ "previewCols": {
36
+ "type": "number",
37
+ "required": false,
38
+ "description": "Preview Cols. Optional. Type: number."
39
+ },
40
+ "galleryItemSize": {
41
+ "type": "number",
42
+ "required": false,
43
+ "description": "Gallery Item Size. Optional. Type: number."
44
+ },
45
+ "previewClassName": {
46
+ "type": "string",
47
+ "required": false,
48
+ "description": "Preview Class Name. Optional. Type: string."
49
+ }
50
+ }
51
+ }
@@ -0,0 +1,56 @@
1
+ {
2
+ "name": "FileInput",
3
+ "description": "Hidden file input integrated with react-dropzone.",
4
+ "extends": [
5
+ "DropzoneOptions"
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/fileInput/fileInput.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/fileInput/fileInput.entry.less\";"
18
+ },
19
+ "props": {
20
+ "label": {
21
+ "type": "string",
22
+ "required": false,
23
+ "description": "Visible label text."
24
+ },
25
+ "className": {
26
+ "type": "string",
27
+ "required": false,
28
+ "description": "Additional CSS class name(s) for the root element."
29
+ },
30
+ "buttonClassName": {
31
+ "type": "string",
32
+ "required": false,
33
+ "description": "Button Class Name. Optional. Type: string."
34
+ },
35
+ "disabled": {
36
+ "type": "boolean",
37
+ "required": false,
38
+ "description": "Whether the control is disabled and non-interactive."
39
+ },
40
+ "error": {
41
+ "type": "string",
42
+ "required": false,
43
+ "description": "Validation message shown below the control."
44
+ },
45
+ "onFilesSelected": {
46
+ "type": "(files: File[]) => void",
47
+ "required": false,
48
+ "description": "Fired with the accepted files when the user picks them."
49
+ },
50
+ "onClick": {
51
+ "type": "(e: React.MouseEvent<HTMLButtonElement>) => void",
52
+ "required": false,
53
+ "description": "Callback fired when the element is clicked."
54
+ }
55
+ }
56
+ }
@@ -0,0 +1,43 @@
1
+ {
2
+ "name": "FloatingButton",
3
+ "description": "Prominent circular action button, often fixed on screen.",
4
+ "extends": [
5
+ "ButtonHTMLAttributes<HTMLButtonElement>"
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/floatingButton/floatingButton.entry.less"
15
+ ],
16
+ "dependencies": [
17
+ "@smwb/ui-styles/less/components/ripple/ripple.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/floatingButton/floatingButton.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/ripple/ripple.entry.less\";"
20
+ },
21
+ "props": {
22
+ "className": {
23
+ "type": "string",
24
+ "required": false,
25
+ "description": "Additional CSS class name(s) for the root element."
26
+ },
27
+ "variant": {
28
+ "type": "\"extended\" | \"default\"",
29
+ "required": false,
30
+ "description": "Visual style variant."
31
+ },
32
+ "size": {
33
+ "type": "\"small\" | \"medium\" | \"large\"",
34
+ "required": false,
35
+ "description": "Visual size preset."
36
+ },
37
+ "color": {
38
+ "type": "FloatingButtonColor",
39
+ "required": false,
40
+ "description": "Semantic color. Resolves through the shared `--smui-*Color*` tokens."
41
+ }
42
+ }
43
+ }