@lowdefy/blocks-antd 4.7.2 → 5.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.
- package/dist/blocks/Affix/Affix.js +6 -12
- package/dist/blocks/Affix/{schema.js → meta.js} +23 -14
- package/dist/blocks/Alert/Alert.js +17 -12
- package/dist/blocks/Alert/e2e.js +1 -1
- package/dist/blocks/Alert/meta.js +186 -0
- package/dist/blocks/AutoComplete/AutoComplete.js +15 -22
- package/dist/blocks/AutoComplete/meta.js +265 -0
- package/dist/blocks/Avatar/Avatar.js +58 -18
- package/dist/blocks/Avatar/meta.js +277 -0
- package/dist/blocks/Badge/Badge.js +13 -12
- package/dist/blocks/Badge/{schema.js → meta.js} +80 -1
- package/dist/blocks/Breadcrumb/Breadcrumb.js +40 -41
- package/dist/blocks/Breadcrumb/meta.js +90 -0
- package/dist/blocks/Button/Button.js +77 -39
- package/dist/blocks/Button/meta.js +230 -0
- package/dist/blocks/ButtonSelector/ButtonSelector.js +54 -59
- package/dist/blocks/ButtonSelector/meta.js +213 -0
- package/dist/blocks/Calendar/Calendar.js +111 -0
- package/dist/blocks/Calendar/e2e.js +27 -0
- package/dist/blocks/Calendar/meta.js +148 -0
- package/dist/blocks/Card/Card.js +22 -21
- package/dist/blocks/Card/meta.js +170 -0
- package/dist/blocks/Carousel/Carousel.js +6 -12
- package/dist/blocks/Carousel/{schema.js → meta.js} +61 -22
- package/dist/blocks/CheckboxSelector/CheckboxSelector.js +58 -64
- package/dist/blocks/CheckboxSelector/meta.js +150 -0
- package/dist/blocks/CheckboxSwitch/CheckboxSwitch.js +38 -44
- package/dist/blocks/CheckboxSwitch/meta.js +183 -0
- package/dist/blocks/Collapse/Collapse.js +21 -12
- package/dist/blocks/Collapse/meta.js +179 -0
- package/dist/blocks/ColorSelector/ColorSelector.js +97 -0
- package/dist/blocks/ColorSelector/e2e.js +32 -0
- package/dist/blocks/ColorSelector/meta.js +250 -0
- package/dist/blocks/ConfigProvider/ConfigProvider.js +51 -0
- package/dist/blocks/{Alert/style.less → ConfigProvider/e2e.js} +5 -3
- package/dist/blocks/{ControlledList/schema.js → ConfigProvider/meta.js} +43 -45
- package/dist/blocks/ConfirmModal/ConfirmModal.js +45 -25
- package/dist/blocks/ConfirmModal/{schema.js → meta.js} +93 -35
- package/dist/blocks/Content/Content.js +5 -12
- package/dist/blocks/{Layout/schema.js → Content/meta.js} +11 -3
- package/dist/blocks/ControlledList/ControlledList.js +42 -54
- package/dist/blocks/ControlledList/meta.js +158 -0
- package/dist/blocks/DateRangeSelector/DateRangeSelector.js +31 -29
- package/dist/blocks/DateRangeSelector/meta.js +297 -0
- package/dist/blocks/DateSelector/DateSelector.js +28 -28
- package/dist/blocks/DateSelector/meta.js +241 -0
- package/dist/blocks/DateTimeSelector/DateTimeSelector.js +28 -28
- package/dist/blocks/DateTimeSelector/meta.js +282 -0
- package/dist/blocks/Descriptions/Descriptions.js +20 -22
- package/dist/blocks/Descriptions/{schema.js → meta.js} +71 -15
- package/dist/blocks/Divider/Divider.js +8 -14
- package/dist/blocks/Divider/meta.js +86 -0
- package/dist/blocks/Drawer/Drawer.js +21 -16
- package/dist/blocks/Drawer/{schema.js → meta.js} +61 -61
- package/dist/blocks/DropdownButton/DropdownButton.js +221 -0
- package/dist/blocks/DropdownButton/e2e.js +30 -0
- package/dist/blocks/DropdownButton/meta.js +317 -0
- package/dist/blocks/DropdownMenu/DropdownMenu.js +130 -0
- package/dist/blocks/DropdownMenu/e2e.js +28 -0
- package/dist/blocks/DropdownMenu/meta.js +322 -0
- package/dist/blocks/Flex/Flex.js +31 -0
- package/dist/blocks/{Comment → Flex}/e2e.js +1 -2
- package/dist/blocks/Flex/meta.js +115 -0
- package/dist/blocks/FloatButton/FloatButton.js +46 -0
- package/dist/blocks/FloatButton/e2e.js +28 -0
- package/dist/blocks/FloatButton/meta.js +156 -0
- package/dist/blocks/Footer/Footer.js +8 -17
- package/dist/blocks/{Header/schema.js → Footer/meta.js} +11 -12
- package/dist/blocks/Header/Header.js +38 -18
- package/dist/blocks/Header/meta.js +318 -0
- package/dist/blocks/Label/Label.js +19 -27
- package/dist/blocks/Label/labelLogic.js +37 -41
- package/dist/blocks/Label/meta.js +148 -0
- package/dist/blocks/Label/style.module.css +185 -0
- package/dist/blocks/Layout/Layout.js +10 -13
- package/dist/blocks/{Content/schema.js → Layout/meta.js} +11 -3
- package/dist/blocks/Masonry/Masonry.js +37 -0
- package/dist/blocks/{Affix/style.less → Masonry/e2e.js} +9 -3
- package/dist/blocks/Masonry/meta.js +86 -0
- package/dist/blocks/MasonryList/MasonryList.js +42 -0
- package/dist/blocks/{AutoComplete/style.less → MasonryList/e2e.js} +9 -3
- package/dist/blocks/MasonryList/meta.js +86 -0
- package/dist/blocks/Menu/Menu.js +148 -122
- package/dist/blocks/Menu/meta.js +544 -0
- package/dist/blocks/Message/Message.js +18 -16
- package/dist/blocks/Message/{schema.js → meta.js} +29 -14
- package/dist/blocks/MobileMenu/MobileMenu.js +13 -21
- package/dist/blocks/MobileMenu/{schema.js → meta.js} +17 -31
- package/dist/blocks/Modal/Modal.js +20 -16
- package/dist/blocks/Modal/meta.js +234 -0
- package/dist/blocks/MonthSelector/MonthSelector.js +30 -30
- package/dist/blocks/MonthSelector/meta.js +260 -0
- package/dist/blocks/MultipleSelector/MultipleSelector.js +49 -36
- package/dist/blocks/MultipleSelector/{schema.js → meta.js} +177 -151
- package/dist/blocks/Notification/Notification.js +39 -23
- package/dist/blocks/Notification/{schema.js → meta.js} +36 -22
- package/dist/blocks/NumberInput/NumberInput.js +12 -21
- package/dist/blocks/NumberInput/meta.js +250 -0
- package/dist/blocks/PageHeaderMenu/PageHeaderMenu.js +137 -189
- package/dist/blocks/PageHeaderMenu/meta.js +420 -0
- package/dist/blocks/PageSiderMenu/PageSiderMenu.js +151 -192
- package/dist/blocks/PageSiderMenu/meta.js +476 -0
- package/dist/blocks/Pagination/Pagination.js +6 -15
- package/dist/blocks/Pagination/meta.js +233 -0
- package/dist/blocks/Paragraph/Paragraph.js +28 -16
- package/dist/blocks/Paragraph/{schema.js → meta.js} +68 -18
- package/dist/blocks/ParagraphInput/ParagraphInput.js +34 -17
- package/dist/blocks/ParagraphInput/{schema.js → meta.js} +134 -18
- package/dist/blocks/PasswordInput/PasswordInput.js +9 -16
- package/dist/blocks/PasswordInput/meta.js +195 -0
- package/dist/blocks/PhoneNumberInput/PhoneNumberInput.js +37 -33
- package/dist/blocks/PhoneNumberInput/formatPhoneNumber.js +25 -0
- package/dist/blocks/PhoneNumberInput/meta.js +225 -0
- package/dist/blocks/PhoneNumberInput/upstream-formatting-spec.md +173 -0
- package/dist/blocks/Popover/Popover.js +7 -12
- package/dist/blocks/Popover/{schema.js → meta.js} +81 -11
- package/dist/blocks/Progress/Progress.js +7 -12
- package/dist/blocks/Progress/{schema.js → meta.js} +74 -4
- package/dist/blocks/QRCode/QRCode.js +39 -0
- package/dist/blocks/{Footer/schema.js → QRCode/e2e.js} +9 -15
- package/dist/blocks/QRCode/meta.js +152 -0
- package/dist/blocks/RadioSelector/RadioSelector.js +55 -63
- package/dist/blocks/RadioSelector/meta.js +179 -0
- package/dist/blocks/RatingSlider/RatingSlider.js +95 -103
- package/dist/blocks/RatingSlider/meta.js +221 -0
- package/dist/blocks/Result/Result.js +13 -12
- package/dist/blocks/Result/meta.js +129 -0
- package/dist/blocks/Search/Search.js +135 -0
- package/dist/blocks/Search/SearchHighlight.js +33 -0
- package/dist/blocks/Search/SearchModal.js +171 -0
- package/dist/blocks/Search/SearchResults.js +129 -0
- package/dist/blocks/Search/meta.js +258 -0
- package/dist/blocks/Search/style.module.css +96 -0
- package/dist/blocks/Search/useListKeyboardNav.js +45 -0
- package/dist/blocks/Search/useRecentSearches.js +77 -0
- package/dist/blocks/Search/useSearchIndex.js +144 -0
- package/dist/blocks/SegmentedSelector/SegmentedSelector.js +93 -0
- package/dist/blocks/SegmentedSelector/e2e.js +32 -0
- package/dist/blocks/SegmentedSelector/meta.js +222 -0
- package/dist/blocks/Selector/Selector.js +35 -30
- package/dist/blocks/Selector/meta.js +379 -0
- package/dist/blocks/Sider/Sider.js +9 -18
- package/dist/blocks/Sider/{schema.js → meta.js} +20 -34
- package/dist/blocks/Slider/Slider.js +8 -20
- package/dist/blocks/Slider/meta.js +226 -0
- package/dist/blocks/Splitter/Splitter.js +70 -0
- package/dist/blocks/Splitter/e2e.js +24 -0
- package/dist/blocks/Splitter/meta.js +193 -0
- package/dist/blocks/Statistic/Statistic.js +26 -15
- package/dist/blocks/Statistic/{schema.js → meta.js} +41 -4
- package/dist/blocks/Steps/Steps.js +94 -0
- package/dist/blocks/Steps/e2e.js +31 -0
- package/dist/blocks/Steps/meta.js +246 -0
- package/dist/blocks/Switch/Switch.js +59 -54
- package/dist/blocks/Switch/meta.js +178 -0
- package/dist/blocks/Tabs/Tabs.js +49 -18
- package/dist/blocks/Tabs/meta.js +258 -0
- package/dist/blocks/Tag/Tag.js +17 -15
- package/dist/blocks/Tag/{schema.js → meta.js} +35 -13
- package/dist/blocks/TextArea/TextArea.js +10 -16
- package/dist/blocks/TextArea/meta.js +255 -0
- package/dist/blocks/TextInput/TextInput.js +23 -18
- package/dist/blocks/TextInput/meta.js +286 -0
- package/dist/blocks/TimelineList/TimelineList.js +29 -27
- package/dist/blocks/TimelineList/{schema.js → meta.js} +45 -8
- package/dist/blocks/Title/Title.js +34 -21
- package/dist/blocks/Title/{schema.js → meta.js} +117 -14
- package/dist/blocks/TitleInput/TitleInput.js +43 -25
- package/dist/blocks/TitleInput/{schema.js → meta.js} +156 -18
- package/dist/blocks/Tooltip/Tooltip.js +16 -16
- package/dist/blocks/Tooltip/{schema.js → meta.js} +74 -19
- package/dist/blocks/Tour/Tour.js +75 -0
- package/dist/blocks/Tour/e2e.js +31 -0
- package/dist/blocks/Tour/meta.js +255 -0
- package/dist/blocks/TreeSelector/TreeSelector.js +6 -12
- package/dist/blocks/TreeSelector/{schema.js → meta.js} +134 -25
- package/dist/blocks/Watermark/Watermark.js +34 -0
- package/dist/blocks/Watermark/e2e.js +23 -0
- package/dist/blocks/Watermark/meta.js +148 -0
- package/dist/blocks/WeekSelector/WeekSelector.js +35 -31
- package/dist/blocks/WeekSelector/meta.js +269 -0
- package/dist/blocks/buildMenuItems.js +95 -0
- package/dist/blocks/headerActions.js +220 -0
- package/dist/blocks/useItemShortcuts.js +64 -0
- package/dist/blocks/withTheme.js +40 -0
- package/dist/blocks.js +16 -1
- package/dist/disabledDate.js +15 -7
- package/dist/e2e.js +4 -1
- package/dist/metas.js +91 -0
- package/dist/schemas/breadcrumbList.js +64 -0
- package/dist/schemas/disabledDates.js +83 -0
- package/dist/{blocks/Avatar/style.less → schemas/icon.js} +10 -3
- package/dist/schemas/index.js +21 -0
- package/dist/schemas/inputProperties.js +70 -0
- package/dist/schemas/label.js +62 -0
- package/dist/schemas/menuLinks.js +49 -0
- package/dist/schemas/options.js +84 -0
- package/dist/types.js +4 -18
- package/package.json +19 -17
- package/dist/blocks/Affix/schema.json +0 -34
- package/dist/blocks/Alert/schema.js +0 -84
- package/dist/blocks/Alert/schema.json +0 -62
- package/dist/blocks/AutoComplete/schema.js +0 -181
- package/dist/blocks/AutoComplete/schema.json +0 -160
- package/dist/blocks/Avatar/schema.js +0 -98
- package/dist/blocks/Avatar/schema.json +0 -71
- package/dist/blocks/Badge/schema.json +0 -70
- package/dist/blocks/Badge/style.less +0 -17
- package/dist/blocks/Breadcrumb/schema.js +0 -95
- package/dist/blocks/Breadcrumb/schema.json +0 -78
- package/dist/blocks/Breadcrumb/style.less +0 -17
- package/dist/blocks/Button/schema.js +0 -123
- package/dist/blocks/Button/schema.json +0 -91
- package/dist/blocks/Button/style.less +0 -17
- package/dist/blocks/ButtonSelector/schema.js +0 -214
- package/dist/blocks/ButtonSelector/schema.json +0 -188
- package/dist/blocks/ButtonSelector/style.less +0 -18
- package/dist/blocks/Card/schema.js +0 -75
- package/dist/blocks/Card/schema.json +0 -58
- package/dist/blocks/Card/style.less +0 -17
- package/dist/blocks/Carousel/schema.json +0 -183
- package/dist/blocks/Carousel/style.less +0 -17
- package/dist/blocks/CheckboxSelector/schema.js +0 -220
- package/dist/blocks/CheckboxSelector/schema.json +0 -193
- package/dist/blocks/CheckboxSelector/style.less +0 -19
- package/dist/blocks/CheckboxSwitch/schema.js +0 -122
- package/dist/blocks/CheckboxSwitch/schema.json +0 -105
- package/dist/blocks/CheckboxSwitch/style.less +0 -19
- package/dist/blocks/Collapse/schema.js +0 -110
- package/dist/blocks/Collapse/schema.json +0 -90
- package/dist/blocks/Collapse/style.less +0 -17
- package/dist/blocks/Comment/Comment.js +0 -56
- package/dist/blocks/Comment/schema.js +0 -56
- package/dist/blocks/Comment/schema.json +0 -39
- package/dist/blocks/Comment/style.less +0 -18
- package/dist/blocks/ConfirmModal/schema.json +0 -122
- package/dist/blocks/ConfirmModal/style.less +0 -17
- package/dist/blocks/Content/schema.json +0 -16
- package/dist/blocks/Content/style.less +0 -17
- package/dist/blocks/ControlledList/schema.json +0 -73
- package/dist/blocks/ControlledList/style.less +0 -19
- package/dist/blocks/DateRangeSelector/schema.js +0 -266
- package/dist/blocks/DateRangeSelector/schema.json +0 -221
- package/dist/blocks/DateRangeSelector/style.less +0 -18
- package/dist/blocks/DateSelector/schema.js +0 -219
- package/dist/blocks/DateSelector/schema.json +0 -183
- package/dist/blocks/DateSelector/style.less +0 -18
- package/dist/blocks/DateTimeSelector/schema.js +0 -251
- package/dist/blocks/DateTimeSelector/schema.json +0 -215
- package/dist/blocks/DateTimeSelector/style.less +0 -18
- package/dist/blocks/Descriptions/schema.json +0 -186
- package/dist/blocks/Descriptions/style.less +0 -17
- package/dist/blocks/Divider/schema.js +0 -56
- package/dist/blocks/Divider/schema.json +0 -35
- package/dist/blocks/Divider/style.less +0 -17
- package/dist/blocks/Drawer/schema.json +0 -121
- package/dist/blocks/Drawer/style.less +0 -17
- package/dist/blocks/Footer/schema.json +0 -16
- package/dist/blocks/Footer/style.less +0 -17
- package/dist/blocks/Header/schema.json +0 -22
- package/dist/blocks/Header/style.less +0 -17
- package/dist/blocks/Label/schema.js +0 -83
- package/dist/blocks/Label/schema.json +0 -62
- package/dist/blocks/Label/style.less +0 -34
- package/dist/blocks/Layout/schema.json +0 -16
- package/dist/blocks/Layout/style.less +0 -17
- package/dist/blocks/Menu/schema.js +0 -283
- package/dist/blocks/Menu/schema.json +0 -236
- package/dist/blocks/Menu/style.less +0 -17
- package/dist/blocks/Message/schema.json +0 -48
- package/dist/blocks/Message/style.less +0 -17
- package/dist/blocks/MobileMenu/schema.json +0 -236
- package/dist/blocks/MobileMenu/style.less +0 -19
- package/dist/blocks/Modal/schema.js +0 -142
- package/dist/blocks/Modal/schema.json +0 -125
- package/dist/blocks/Modal/style.less +0 -17
- package/dist/blocks/MonthSelector/schema.js +0 -219
- package/dist/blocks/MonthSelector/schema.json +0 -183
- package/dist/blocks/MonthSelector/style.less +0 -18
- package/dist/blocks/MultipleSelector/schema.json +0 -297
- package/dist/blocks/MultipleSelector/style.less +0 -19
- package/dist/blocks/Notification/schema.json +0 -85
- package/dist/blocks/Notification/style.less +0 -18
- package/dist/blocks/NumberInput/schema.js +0 -193
- package/dist/blocks/NumberInput/schema.json +0 -172
- package/dist/blocks/NumberInput/style.less +0 -18
- package/dist/blocks/PageHeaderMenu/schema.js +0 -241
- package/dist/blocks/PageHeaderMenu/schema.json +0 -215
- package/dist/blocks/PageHeaderMenu/style.less +0 -23
- package/dist/blocks/PageSiderMenu/schema.js +0 -321
- package/dist/blocks/PageSiderMenu/schema.json +0 -283
- package/dist/blocks/PageSiderMenu/style.less +0 -26
- package/dist/blocks/Pagination/schema.js +0 -101
- package/dist/blocks/Pagination/schema.json +0 -75
- package/dist/blocks/Pagination/style.less +0 -17
- package/dist/blocks/Paragraph/schema.json +0 -135
- package/dist/blocks/Paragraph/style.less +0 -18
- package/dist/blocks/ParagraphInput/schema.json +0 -162
- package/dist/blocks/ParagraphInput/style.less +0 -17
- package/dist/blocks/PasswordInput/schema.js +0 -152
- package/dist/blocks/PasswordInput/schema.json +0 -131
- package/dist/blocks/PasswordInput/style.less +0 -18
- package/dist/blocks/PhoneNumberInput/schema.js +0 -243
- package/dist/blocks/PhoneNumberInput/schema.json +0 -216
- package/dist/blocks/PhoneNumberInput/style.less +0 -33
- package/dist/blocks/Popover/schema.json +0 -86
- package/dist/blocks/Popover/style.less +0 -17
- package/dist/blocks/Progress/schema.json +0 -76
- package/dist/blocks/Progress/style.less +0 -17
- package/dist/blocks/RadioSelector/schema.js +0 -217
- package/dist/blocks/RadioSelector/schema.json +0 -190
- package/dist/blocks/RadioSelector/style.less +0 -19
- package/dist/blocks/RatingSlider/schema.js +0 -196
- package/dist/blocks/RatingSlider/schema.json +0 -169
- package/dist/blocks/RatingSlider/style.less +0 -19
- package/dist/blocks/Result/schema.js +0 -55
- package/dist/blocks/Result/schema.json +0 -30
- package/dist/blocks/Result/style.less +0 -17
- package/dist/blocks/Selector/schema.js +0 -287
- package/dist/blocks/Selector/schema.json +0 -258
- package/dist/blocks/Selector/style.less +0 -18
- package/dist/blocks/Sider/schema.json +0 -71
- package/dist/blocks/Sider/style.less +0 -17
- package/dist/blocks/Slider/style.less +0 -18
- package/dist/blocks/Statistic/schema.json +0 -74
- package/dist/blocks/Statistic/style.less +0 -17
- package/dist/blocks/Switch/schema.js +0 -162
- package/dist/blocks/Switch/schema.json +0 -136
- package/dist/blocks/Switch/style.less +0 -18
- package/dist/blocks/Tabs/schema.js +0 -124
- package/dist/blocks/Tabs/schema.json +0 -93
- package/dist/blocks/Tabs/style.less +0 -17
- package/dist/blocks/Tag/schema.json +0 -45
- package/dist/blocks/Tag/style.less +0 -17
- package/dist/blocks/TextArea/schema.js +0 -196
- package/dist/blocks/TextArea/schema.json +0 -172
- package/dist/blocks/TextArea/style.less +0 -18
- package/dist/blocks/TextInput/schema.js +0 -223
- package/dist/blocks/TextInput/schema.json +0 -189
- package/dist/blocks/TextInput/style.less +0 -18
- package/dist/blocks/TimelineList/schema.json +0 -65
- package/dist/blocks/TimelineList/style.less +0 -17
- package/dist/blocks/Title/schema.json +0 -136
- package/dist/blocks/Title/style.less +0 -18
- package/dist/blocks/TitleInput/schema.json +0 -171
- package/dist/blocks/TitleInput/style.less +0 -17
- package/dist/blocks/Tooltip/schema.json +0 -91
- package/dist/blocks/Tooltip/style.less +0 -17
- package/dist/blocks/TreeSelector/schema.json +0 -166
- package/dist/blocks/TreeSelector/style.less +0 -27
- package/dist/blocks/WeekSelector/schema.js +0 -219
- package/dist/blocks/WeekSelector/schema.json +0 -183
- package/dist/blocks/WeekSelector/style.less +0 -18
- package/dist/color.js +0 -85
- package/dist/schemas.js +0 -75
- package/dist/style.less +0 -17
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Copyright 2020-2026 Lowdefy, Inc
|
|
3
|
+
|
|
4
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
you may not use this file except in compliance with the License.
|
|
6
|
+
You may obtain a copy of the License at
|
|
7
|
+
|
|
8
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
|
|
10
|
+
Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
See the License for the specific language governing permissions and
|
|
14
|
+
limitations under the License.
|
|
15
|
+
*/ import LabelMeta from '../Label/meta.js';
|
|
16
|
+
import label from '../../schemas/label.js';
|
|
17
|
+
import icon from '../../schemas/icon.js';
|
|
18
|
+
import { disabled, inputTitle, autoFocus } from '../../schemas/inputProperties.js';
|
|
19
|
+
export default {
|
|
20
|
+
category: 'input',
|
|
21
|
+
icons: [
|
|
22
|
+
...LabelMeta.icons,
|
|
23
|
+
'AiOutlineCheck',
|
|
24
|
+
'AiOutlineClose'
|
|
25
|
+
],
|
|
26
|
+
valueType: 'boolean',
|
|
27
|
+
cssKeys: {
|
|
28
|
+
element: 'The Switch element.',
|
|
29
|
+
checkedIcon: 'The checked icon in the Switch.',
|
|
30
|
+
label: 'The Switch label.',
|
|
31
|
+
extra: 'The Switch extra content.',
|
|
32
|
+
feedback: 'The Switch validation feedback.',
|
|
33
|
+
uncheckedIcon: 'The unchecked icon in the Switch.'
|
|
34
|
+
},
|
|
35
|
+
events: {
|
|
36
|
+
onChange: {
|
|
37
|
+
description: 'Trigger action when switch is changed.',
|
|
38
|
+
event: {
|
|
39
|
+
value: 'The switch value.'
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
properties: {
|
|
44
|
+
type: 'object',
|
|
45
|
+
additionalProperties: false,
|
|
46
|
+
properties: {
|
|
47
|
+
autoFocus,
|
|
48
|
+
checkedIcon: {
|
|
49
|
+
...icon,
|
|
50
|
+
default: 'AiOutlineCheck',
|
|
51
|
+
description: "Name of an React-Icon (See <a href='https://react-icons.github.io/react-icons/'>all icons</a>) or properties of an Icon block to customize icon to shown when switch is checked (true)."
|
|
52
|
+
},
|
|
53
|
+
checkedText: {
|
|
54
|
+
type: 'string',
|
|
55
|
+
description: 'Text to shown when switch is checked (true).'
|
|
56
|
+
},
|
|
57
|
+
color: {
|
|
58
|
+
type: 'string',
|
|
59
|
+
description: 'Switch checked color.',
|
|
60
|
+
docs: {
|
|
61
|
+
displayType: 'color'
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
disabled,
|
|
65
|
+
label,
|
|
66
|
+
size: {
|
|
67
|
+
type: 'string',
|
|
68
|
+
enum: [
|
|
69
|
+
'small',
|
|
70
|
+
'default'
|
|
71
|
+
],
|
|
72
|
+
default: 'default',
|
|
73
|
+
description: 'Size of the block.'
|
|
74
|
+
},
|
|
75
|
+
title: inputTitle,
|
|
76
|
+
uncheckedIcon: {
|
|
77
|
+
...icon,
|
|
78
|
+
default: 'AiOutlineClose',
|
|
79
|
+
description: "Name of an React-Icon (See <a href='https://react-icons.github.io/react-icons/'>all icons</a>) or properties of an Icon block to customize icon to shown when switch is unchecked (false)."
|
|
80
|
+
},
|
|
81
|
+
uncheckedText: {
|
|
82
|
+
type: 'string',
|
|
83
|
+
description: 'Text to shown when switch is not checked (false).'
|
|
84
|
+
},
|
|
85
|
+
theme: {
|
|
86
|
+
type: 'object',
|
|
87
|
+
description: 'Antd design token overrides for this block. See <a href="https://ant.design/components/overview#design-token">antd design tokens</a>.',
|
|
88
|
+
docs: {
|
|
89
|
+
displayType: 'yaml',
|
|
90
|
+
link: 'https://ant.design/components/switch#design-token'
|
|
91
|
+
},
|
|
92
|
+
properties: {
|
|
93
|
+
trackHeight: {
|
|
94
|
+
type: 'number',
|
|
95
|
+
default: 22,
|
|
96
|
+
description: 'Height of the switch track.'
|
|
97
|
+
},
|
|
98
|
+
trackHeightSM: {
|
|
99
|
+
type: 'number',
|
|
100
|
+
default: 16,
|
|
101
|
+
description: 'Height of the switch track for small size.'
|
|
102
|
+
},
|
|
103
|
+
trackMinWidth: {
|
|
104
|
+
type: 'number',
|
|
105
|
+
default: 44,
|
|
106
|
+
description: 'Minimum width of the switch track.'
|
|
107
|
+
},
|
|
108
|
+
trackMinWidthSM: {
|
|
109
|
+
type: 'number',
|
|
110
|
+
default: 28,
|
|
111
|
+
description: 'Minimum width of the switch track for small size.'
|
|
112
|
+
},
|
|
113
|
+
trackPadding: {
|
|
114
|
+
type: 'number',
|
|
115
|
+
default: 2,
|
|
116
|
+
description: 'Internal padding of the switch track.'
|
|
117
|
+
},
|
|
118
|
+
handleBg: {
|
|
119
|
+
type: 'string',
|
|
120
|
+
default: '#fff',
|
|
121
|
+
description: 'Background color of the switch handle.'
|
|
122
|
+
},
|
|
123
|
+
handleSize: {
|
|
124
|
+
type: 'number',
|
|
125
|
+
default: 18,
|
|
126
|
+
description: 'Diameter of the switch handle.'
|
|
127
|
+
},
|
|
128
|
+
handleSizeSM: {
|
|
129
|
+
type: 'number',
|
|
130
|
+
default: 12,
|
|
131
|
+
description: 'Diameter of the switch handle for small size.'
|
|
132
|
+
},
|
|
133
|
+
handleShadow: {
|
|
134
|
+
type: 'string',
|
|
135
|
+
default: '0 2px 4px 0 rgba(0,35,11,0.2)',
|
|
136
|
+
description: 'Box shadow of the switch handle.'
|
|
137
|
+
},
|
|
138
|
+
innerMinMargin: {
|
|
139
|
+
type: 'number',
|
|
140
|
+
default: 9,
|
|
141
|
+
description: 'Minimum margin for inner content (text/icon) of the switch.'
|
|
142
|
+
},
|
|
143
|
+
innerMaxMargin: {
|
|
144
|
+
type: 'number',
|
|
145
|
+
default: 24,
|
|
146
|
+
description: 'Maximum margin for inner content (text/icon) of the switch.'
|
|
147
|
+
},
|
|
148
|
+
innerMinMarginSM: {
|
|
149
|
+
type: 'number',
|
|
150
|
+
default: 6,
|
|
151
|
+
description: 'Minimum margin for inner content for small size.'
|
|
152
|
+
},
|
|
153
|
+
innerMaxMarginSM: {
|
|
154
|
+
type: 'number',
|
|
155
|
+
default: 18,
|
|
156
|
+
description: 'Maximum margin for inner content for small size.'
|
|
157
|
+
},
|
|
158
|
+
colorPrimary: {
|
|
159
|
+
type: 'string',
|
|
160
|
+
description: 'Primary color when the switch is checked.'
|
|
161
|
+
},
|
|
162
|
+
colorPrimaryHover: {
|
|
163
|
+
type: 'string',
|
|
164
|
+
description: 'Primary color on hover when the switch is checked.'
|
|
165
|
+
},
|
|
166
|
+
colorTextQuaternary: {
|
|
167
|
+
type: 'string',
|
|
168
|
+
description: 'Background color when the switch is unchecked.'
|
|
169
|
+
},
|
|
170
|
+
colorTextTertiary: {
|
|
171
|
+
type: 'string',
|
|
172
|
+
description: 'Background color on hover when the switch is unchecked.'
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
};
|
package/dist/blocks/Tabs/Tabs.js
CHANGED
|
@@ -12,9 +12,11 @@
|
|
|
12
12
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
13
|
See the License for the specific language governing permissions and
|
|
14
14
|
limitations under the License.
|
|
15
|
-
*/ import React, { useState, useEffect } from 'react';
|
|
16
|
-
import {
|
|
15
|
+
*/ import React, { useState, useEffect, useCallback } from 'react';
|
|
16
|
+
import { renderHtml, withBlockDefaults } from '@lowdefy/block-utils';
|
|
17
17
|
import { Tabs } from 'antd';
|
|
18
|
+
import withTheme from '../withTheme.js';
|
|
19
|
+
import useItemShortcuts from '../useItemShortcuts.js';
|
|
18
20
|
const getTabs = ({ content, properties })=>{
|
|
19
21
|
let tabs = properties.tabs;
|
|
20
22
|
if (!tabs) {
|
|
@@ -26,7 +28,7 @@ const getTabs = ({ content, properties })=>{
|
|
|
26
28
|
// remove extraAreaKey key area from tabs
|
|
27
29
|
return tabs.filter((tab)=>tab.key !== properties.extraAreaKey);
|
|
28
30
|
};
|
|
29
|
-
|
|
31
|
+
function TabsBlock({ blockId, classNames = {}, components: { Icon, ShortcutBadge }, events, content, methods, properties, styles = {} }) {
|
|
30
32
|
const tabs = getTabs({
|
|
31
33
|
content,
|
|
32
34
|
properties
|
|
@@ -49,6 +51,26 @@ const TabsBlock = ({ blockId, components: { Icon }, events, content, methods, pr
|
|
|
49
51
|
}
|
|
50
52
|
});
|
|
51
53
|
});
|
|
54
|
+
const shortcutItems = tabs.filter((tab)=>tab.shortcut).map((tab)=>({
|
|
55
|
+
key: tab.key,
|
|
56
|
+
shortcut: tab.shortcut,
|
|
57
|
+
disabled: tab.disabled
|
|
58
|
+
}));
|
|
59
|
+
const onShortcutMatch = useCallback((activeKey)=>{
|
|
60
|
+
setKey(activeKey);
|
|
61
|
+
methods.triggerEvent({
|
|
62
|
+
name: 'onChange',
|
|
63
|
+
event: {
|
|
64
|
+
activeKey
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
}, [
|
|
68
|
+
methods
|
|
69
|
+
]);
|
|
70
|
+
useItemShortcuts({
|
|
71
|
+
items: shortcutItems,
|
|
72
|
+
onMatch: onShortcutMatch
|
|
73
|
+
});
|
|
52
74
|
return /*#__PURE__*/ React.createElement(Tabs, {
|
|
53
75
|
activeKey: key,
|
|
54
76
|
animated: properties.animated !== undefined ? properties.animated : true,
|
|
@@ -63,8 +85,7 @@ const TabsBlock = ({ blockId, components: { Icon }, events, content, methods, pr
|
|
|
63
85
|
});
|
|
64
86
|
},
|
|
65
87
|
size: properties.size ?? 'default',
|
|
66
|
-
|
|
67
|
-
tabPosition: properties.tabPosition ?? 'top',
|
|
88
|
+
tabPlacement: properties.tabPlacement ?? 'top',
|
|
68
89
|
type: properties.tabType ?? 'line',
|
|
69
90
|
onTabScroll: ({ direction })=>methods.triggerEvent({
|
|
70
91
|
name: 'onTabScroll',
|
|
@@ -80,31 +101,41 @@ const TabsBlock = ({ blockId, components: { Icon }, events, content, methods, pr
|
|
|
80
101
|
}
|
|
81
102
|
});
|
|
82
103
|
},
|
|
104
|
+
className: classNames.element,
|
|
105
|
+
classNames: {
|
|
106
|
+
tabBar: classNames.tabBar,
|
|
107
|
+
tabPane: classNames.tabPane,
|
|
108
|
+
inkBar: classNames.inkBar
|
|
109
|
+
},
|
|
110
|
+
style: styles.element,
|
|
111
|
+
styles: {
|
|
112
|
+
tabBar: styles.tabBar
|
|
113
|
+
},
|
|
83
114
|
items: tabs.map((tab)=>({
|
|
84
115
|
id: `${blockId}_${tab.key}`,
|
|
85
116
|
key: tab.key,
|
|
86
117
|
disabled: tab.disabled,
|
|
87
118
|
label: /*#__PURE__*/ React.createElement("span", {
|
|
88
|
-
|
|
119
|
+
style: tab.titleStyle
|
|
89
120
|
}, tab.icon && /*#__PURE__*/ React.createElement(Icon, {
|
|
90
121
|
blockId: `${blockId}_icon`,
|
|
122
|
+
classNames: {
|
|
123
|
+
element: classNames.icon
|
|
124
|
+
},
|
|
91
125
|
events: events,
|
|
92
|
-
properties: tab.icon
|
|
126
|
+
properties: tab.icon,
|
|
127
|
+
styles: {
|
|
128
|
+
element: styles.icon
|
|
129
|
+
}
|
|
93
130
|
}), tab.title ? renderHtml({
|
|
94
131
|
html: tab.title,
|
|
95
132
|
methods
|
|
96
|
-
}) : tab.key
|
|
133
|
+
}) : tab.key, /*#__PURE__*/ React.createElement(ShortcutBadge, {
|
|
134
|
+
shortcut: tab.shortcut
|
|
135
|
+
})),
|
|
97
136
|
children: content[tab.key] && content[tab.key]()
|
|
98
137
|
})),
|
|
99
138
|
...additionalProps
|
|
100
139
|
});
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
TabsBlock.meta = {
|
|
104
|
-
category: 'container',
|
|
105
|
-
icons: [],
|
|
106
|
-
styles: [
|
|
107
|
-
'blocks/Tabs/style.less'
|
|
108
|
-
]
|
|
109
|
-
};
|
|
110
|
-
export default TabsBlock;
|
|
140
|
+
}
|
|
141
|
+
export default withTheme('Tabs', withBlockDefaults(TabsBlock));
|
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Copyright 2020-2026 Lowdefy, Inc
|
|
3
|
+
|
|
4
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
you may not use this file except in compliance with the License.
|
|
6
|
+
You may obtain a copy of the License at
|
|
7
|
+
|
|
8
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
|
|
10
|
+
Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
See the License for the specific language governing permissions and
|
|
14
|
+
limitations under the License.
|
|
15
|
+
*/ export default {
|
|
16
|
+
category: 'container',
|
|
17
|
+
icons: [],
|
|
18
|
+
valueType: null,
|
|
19
|
+
slots: false,
|
|
20
|
+
cssKeys: {
|
|
21
|
+
element: 'The Tabs element.',
|
|
22
|
+
icon: 'The icon in the Tabs.',
|
|
23
|
+
tabBar: 'The Tabs tab bar.',
|
|
24
|
+
tabPane: 'The Tabs tab pane.',
|
|
25
|
+
inkBar: 'The Tabs ink bar.'
|
|
26
|
+
},
|
|
27
|
+
events: {
|
|
28
|
+
onChange: {
|
|
29
|
+
description: 'Trigger action on tab change.',
|
|
30
|
+
event: {
|
|
31
|
+
activeKey: 'The key of the active tab.'
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
onTabScroll: {
|
|
35
|
+
description: 'Trigger action on tab scroll.',
|
|
36
|
+
event: {
|
|
37
|
+
direction: 'The scroll direction.'
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
onTabClick: {
|
|
41
|
+
description: 'Trigger action on tab click.',
|
|
42
|
+
event: {
|
|
43
|
+
key: 'The key of the clicked tab.'
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
properties: {
|
|
48
|
+
type: 'object',
|
|
49
|
+
additionalProperties: false,
|
|
50
|
+
properties: {
|
|
51
|
+
animated: {
|
|
52
|
+
type: 'boolean',
|
|
53
|
+
default: true,
|
|
54
|
+
description: 'Whether to change tabs with animation. Only works while tabPlacement is top or bottom.'
|
|
55
|
+
},
|
|
56
|
+
defaultActiveKey: {
|
|
57
|
+
type: 'string',
|
|
58
|
+
description: "Initial active TabPane's key, if activeKey is not set."
|
|
59
|
+
},
|
|
60
|
+
size: {
|
|
61
|
+
type: 'string',
|
|
62
|
+
default: 'default',
|
|
63
|
+
enum: [
|
|
64
|
+
'default',
|
|
65
|
+
'small',
|
|
66
|
+
'large'
|
|
67
|
+
],
|
|
68
|
+
description: 'Size of the tabs.'
|
|
69
|
+
},
|
|
70
|
+
tabPlacement: {
|
|
71
|
+
type: 'string',
|
|
72
|
+
default: 'top',
|
|
73
|
+
enum: [
|
|
74
|
+
'top',
|
|
75
|
+
'end',
|
|
76
|
+
'bottom',
|
|
77
|
+
'start'
|
|
78
|
+
],
|
|
79
|
+
description: 'Position of the tabs.'
|
|
80
|
+
},
|
|
81
|
+
tabType: {
|
|
82
|
+
type: 'string',
|
|
83
|
+
default: 'line',
|
|
84
|
+
enum: [
|
|
85
|
+
'line',
|
|
86
|
+
'card'
|
|
87
|
+
],
|
|
88
|
+
description: 'Type of tabs.'
|
|
89
|
+
},
|
|
90
|
+
tabs: {
|
|
91
|
+
type: 'array',
|
|
92
|
+
items: {
|
|
93
|
+
type: 'object',
|
|
94
|
+
required: [
|
|
95
|
+
'key'
|
|
96
|
+
],
|
|
97
|
+
properties: {
|
|
98
|
+
title: {
|
|
99
|
+
type: 'string',
|
|
100
|
+
description: 'Title of the tab - supports html.'
|
|
101
|
+
},
|
|
102
|
+
key: {
|
|
103
|
+
type: 'string',
|
|
104
|
+
description: 'Area key of the tab.'
|
|
105
|
+
},
|
|
106
|
+
disabled: {
|
|
107
|
+
type: 'boolean',
|
|
108
|
+
default: false,
|
|
109
|
+
description: 'Disable the tab if true.'
|
|
110
|
+
},
|
|
111
|
+
icon: {
|
|
112
|
+
type: [
|
|
113
|
+
'string',
|
|
114
|
+
'object'
|
|
115
|
+
],
|
|
116
|
+
description: "Name of an React-Icon (See <a href='https://react-icons.github.io/react-icons/'>all icons</a>) or properties of an Icon block to customize icon to show in tab title.",
|
|
117
|
+
docs: {
|
|
118
|
+
displayType: 'icon'
|
|
119
|
+
}
|
|
120
|
+
},
|
|
121
|
+
shortcut: {
|
|
122
|
+
type: 'string',
|
|
123
|
+
description: 'Keyboard shortcut to switch to this tab. Use "mod" for Cmd/Ctrl.'
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
extraAreaKey: {
|
|
129
|
+
type: 'string',
|
|
130
|
+
description: 'Area key for the extra area blocks.'
|
|
131
|
+
},
|
|
132
|
+
theme: {
|
|
133
|
+
type: 'object',
|
|
134
|
+
description: 'Antd design token overrides for this block. See <a href="https://ant.design/components/overview#design-token">antd design tokens</a>.',
|
|
135
|
+
docs: {
|
|
136
|
+
displayType: 'yaml',
|
|
137
|
+
link: 'https://ant.design/components/tabs#design-token'
|
|
138
|
+
},
|
|
139
|
+
properties: {
|
|
140
|
+
cardBg: {
|
|
141
|
+
type: 'string',
|
|
142
|
+
default: 'rgba(0, 0, 0, 0.02)',
|
|
143
|
+
description: 'Background color of card-type tab.'
|
|
144
|
+
},
|
|
145
|
+
cardGutter: {
|
|
146
|
+
type: 'number',
|
|
147
|
+
default: 2,
|
|
148
|
+
description: 'Gap between card-type tabs.'
|
|
149
|
+
},
|
|
150
|
+
cardHeight: {
|
|
151
|
+
type: 'number',
|
|
152
|
+
default: 40,
|
|
153
|
+
description: 'Height of card-type tab.'
|
|
154
|
+
},
|
|
155
|
+
cardPadding: {
|
|
156
|
+
type: 'string',
|
|
157
|
+
default: '8px 16px',
|
|
158
|
+
description: 'Padding of card-type tab.'
|
|
159
|
+
},
|
|
160
|
+
cardPaddingLG: {
|
|
161
|
+
type: 'string',
|
|
162
|
+
default: '11px 16px',
|
|
163
|
+
description: 'Padding of large card-type tab.'
|
|
164
|
+
},
|
|
165
|
+
cardPaddingSM: {
|
|
166
|
+
type: 'string',
|
|
167
|
+
default: '4px 8px',
|
|
168
|
+
description: 'Padding of small card-type tab.'
|
|
169
|
+
},
|
|
170
|
+
horizontalItemGutter: {
|
|
171
|
+
type: 'number',
|
|
172
|
+
default: 32,
|
|
173
|
+
description: 'Gap between horizontal tabs.'
|
|
174
|
+
},
|
|
175
|
+
horizontalItemMargin: {
|
|
176
|
+
type: 'string',
|
|
177
|
+
description: 'Horizontal margin of tab item.'
|
|
178
|
+
},
|
|
179
|
+
horizontalItemPadding: {
|
|
180
|
+
type: 'string',
|
|
181
|
+
default: '12px 0',
|
|
182
|
+
description: 'Padding of horizontal tab item.'
|
|
183
|
+
},
|
|
184
|
+
horizontalItemPaddingLG: {
|
|
185
|
+
type: 'string',
|
|
186
|
+
default: '16px 0',
|
|
187
|
+
description: 'Padding of large horizontal tab item.'
|
|
188
|
+
},
|
|
189
|
+
horizontalItemPaddingSM: {
|
|
190
|
+
type: 'string',
|
|
191
|
+
default: '8px 0',
|
|
192
|
+
description: 'Padding of small horizontal tab item.'
|
|
193
|
+
},
|
|
194
|
+
horizontalMargin: {
|
|
195
|
+
type: 'string',
|
|
196
|
+
default: '0 0 16px 0',
|
|
197
|
+
description: 'Margin of horizontal tab bar.'
|
|
198
|
+
},
|
|
199
|
+
inkBarColor: {
|
|
200
|
+
type: 'string',
|
|
201
|
+
default: '#1677ff',
|
|
202
|
+
description: 'Color of the active tab indicator bar.'
|
|
203
|
+
},
|
|
204
|
+
itemActiveColor: {
|
|
205
|
+
type: 'string',
|
|
206
|
+
default: '#0958d9',
|
|
207
|
+
description: 'Text color of active (mousedown) tab.'
|
|
208
|
+
},
|
|
209
|
+
itemColor: {
|
|
210
|
+
type: 'string',
|
|
211
|
+
default: 'rgba(0, 0, 0, 0.88)',
|
|
212
|
+
description: 'Text color of tab.'
|
|
213
|
+
},
|
|
214
|
+
itemHoverColor: {
|
|
215
|
+
type: 'string',
|
|
216
|
+
default: '#4096ff',
|
|
217
|
+
description: 'Text color of hovered tab.'
|
|
218
|
+
},
|
|
219
|
+
itemSelectedColor: {
|
|
220
|
+
type: 'string',
|
|
221
|
+
default: '#1677ff',
|
|
222
|
+
description: 'Text color of selected tab.'
|
|
223
|
+
},
|
|
224
|
+
titleFontSize: {
|
|
225
|
+
type: 'number',
|
|
226
|
+
default: 14,
|
|
227
|
+
description: 'Font size of tab title.'
|
|
228
|
+
},
|
|
229
|
+
titleFontSizeLG: {
|
|
230
|
+
type: 'number',
|
|
231
|
+
default: 16,
|
|
232
|
+
description: 'Font size of large tab title.'
|
|
233
|
+
},
|
|
234
|
+
titleFontSizeSM: {
|
|
235
|
+
type: 'number',
|
|
236
|
+
default: 14,
|
|
237
|
+
description: 'Font size of small tab title.'
|
|
238
|
+
},
|
|
239
|
+
verticalItemMargin: {
|
|
240
|
+
type: 'string',
|
|
241
|
+
default: '16px 0 0 0',
|
|
242
|
+
description: 'Margin of vertical tab item.'
|
|
243
|
+
},
|
|
244
|
+
verticalItemPadding: {
|
|
245
|
+
type: 'string',
|
|
246
|
+
default: '8px 24px',
|
|
247
|
+
description: 'Padding of vertical tab item.'
|
|
248
|
+
},
|
|
249
|
+
zIndexPopup: {
|
|
250
|
+
type: 'number',
|
|
251
|
+
default: 1050,
|
|
252
|
+
description: 'Z-index of tab dropdown popup.'
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
};
|
package/dist/blocks/Tag/Tag.js
CHANGED
|
@@ -14,15 +14,22 @@
|
|
|
14
14
|
limitations under the License.
|
|
15
15
|
*/ import React from 'react';
|
|
16
16
|
import { Tag } from 'antd';
|
|
17
|
-
import {
|
|
17
|
+
import { renderHtml, withBlockDefaults } from '@lowdefy/block-utils';
|
|
18
18
|
import { type } from '@lowdefy/helpers';
|
|
19
|
-
|
|
19
|
+
import withTheme from '../withTheme.js';
|
|
20
|
+
const TagBlock = ({ blockId, classNames = {}, components: { Icon, ShortcutBadge }, events, methods, onClick, onClose, properties, styles = {} })=>{
|
|
20
21
|
const additionalProps = {};
|
|
21
22
|
if (properties.icon) {
|
|
22
23
|
additionalProps.icon = /*#__PURE__*/ React.createElement(Icon, {
|
|
23
24
|
blockId: `${blockId}_icon`,
|
|
25
|
+
classNames: {
|
|
26
|
+
element: classNames.icon
|
|
27
|
+
},
|
|
24
28
|
events: events,
|
|
25
|
-
properties: properties.icon
|
|
29
|
+
properties: properties.icon,
|
|
30
|
+
styles: {
|
|
31
|
+
element: styles.icon
|
|
32
|
+
}
|
|
26
33
|
});
|
|
27
34
|
}
|
|
28
35
|
if (onClick || events.onClick) {
|
|
@@ -39,19 +46,14 @@ const TagBlock = ({ blockId, components: { Icon }, events, methods, onClick, onC
|
|
|
39
46
|
id: blockId,
|
|
40
47
|
closable: properties.closable,
|
|
41
48
|
color: properties.color,
|
|
42
|
-
className:
|
|
49
|
+
className: classNames.element,
|
|
50
|
+
style: styles.element,
|
|
43
51
|
...additionalProps
|
|
44
|
-
}, type.isString(properties.title) ? renderHtml({
|
|
52
|
+
}, /*#__PURE__*/ React.createElement(React.Fragment, null, type.isString(properties.title) ? renderHtml({
|
|
45
53
|
html: properties.title,
|
|
46
54
|
methods
|
|
47
|
-
}) : properties.title ?? blockId
|
|
55
|
+
}) : properties.title ?? blockId, /*#__PURE__*/ React.createElement(ShortcutBadge, {
|
|
56
|
+
shortcut: events.onClick?.shortcut
|
|
57
|
+
})));
|
|
48
58
|
};
|
|
49
|
-
|
|
50
|
-
TagBlock.meta = {
|
|
51
|
-
category: 'display',
|
|
52
|
-
icons: [],
|
|
53
|
-
styles: [
|
|
54
|
-
'blocks/Tag/style.less'
|
|
55
|
-
]
|
|
56
|
-
};
|
|
57
|
-
export default TagBlock;
|
|
59
|
+
export default withTheme('Tag', withBlockDefaults(TagBlock));
|
|
@@ -13,6 +13,17 @@
|
|
|
13
13
|
See the License for the specific language governing permissions and
|
|
14
14
|
limitations under the License.
|
|
15
15
|
*/ export default {
|
|
16
|
+
category: 'display',
|
|
17
|
+
icons: [],
|
|
18
|
+
valueType: null,
|
|
19
|
+
cssKeys: {
|
|
20
|
+
element: 'The Tag element.',
|
|
21
|
+
icon: 'The icon in the Tag.'
|
|
22
|
+
},
|
|
23
|
+
events: {
|
|
24
|
+
onClick: 'Called when Tag is clicked. Renders a shortcut badge when a shortcut is configured.',
|
|
25
|
+
onClose: 'Called when Tag close icon is clicked.'
|
|
26
|
+
},
|
|
16
27
|
properties: {
|
|
17
28
|
type: 'object',
|
|
18
29
|
additionalProperties: false,
|
|
@@ -42,20 +53,31 @@
|
|
|
42
53
|
docs: {
|
|
43
54
|
displayType: 'icon'
|
|
44
55
|
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
},
|
|
48
|
-
events: {
|
|
49
|
-
type: 'object',
|
|
50
|
-
additionalProperties: false,
|
|
51
|
-
properties: {
|
|
52
|
-
onClick: {
|
|
53
|
-
type: 'array',
|
|
54
|
-
description: 'Called when Tag is clicked.'
|
|
55
56
|
},
|
|
56
|
-
|
|
57
|
-
type: '
|
|
58
|
-
description: '
|
|
57
|
+
theme: {
|
|
58
|
+
type: 'object',
|
|
59
|
+
description: 'Antd design token overrides for this block. See <a href="https://ant.design/components/overview#design-token">antd design tokens</a>.',
|
|
60
|
+
docs: {
|
|
61
|
+
displayType: 'yaml',
|
|
62
|
+
link: 'https://ant.design/components/tag#design-token'
|
|
63
|
+
},
|
|
64
|
+
properties: {
|
|
65
|
+
defaultBg: {
|
|
66
|
+
type: 'string',
|
|
67
|
+
default: '#fafafa',
|
|
68
|
+
description: 'Default background color of the tag.'
|
|
69
|
+
},
|
|
70
|
+
defaultColor: {
|
|
71
|
+
type: 'string',
|
|
72
|
+
default: 'rgba(0, 0, 0, 0.88)',
|
|
73
|
+
description: 'Default text color of the tag.'
|
|
74
|
+
},
|
|
75
|
+
solidTextColor: {
|
|
76
|
+
type: 'string',
|
|
77
|
+
default: '#fff',
|
|
78
|
+
description: 'Text color for solid (filled) tags, determined by background brightness.'
|
|
79
|
+
}
|
|
80
|
+
}
|
|
59
81
|
}
|
|
60
82
|
}
|
|
61
83
|
}
|