@lowdefy/blocks-antd 5.6.0 → 6.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 (285) hide show
  1. package/dist/TagPillRow.js +88 -0
  2. package/dist/blocks/Affix/gallery.yaml +399 -0
  3. package/dist/blocks/Affix/tests/Affix.e2e.yaml +72 -0
  4. package/dist/blocks/Affix/tests.yaml +29 -0
  5. package/dist/blocks/Alert/gallery.yaml +701 -0
  6. package/dist/blocks/Alert/tests/Alert.e2e.yaml +161 -0
  7. package/dist/blocks/Alert/tests.yaml +261 -0
  8. package/dist/blocks/AutoComplete/gallery.yaml +713 -0
  9. package/dist/blocks/AutoComplete/tests/AutoComplete.e2e.yaml +330 -0
  10. package/dist/blocks/AutoComplete/tests.yaml +178 -0
  11. package/dist/blocks/Avatar/gallery.yaml +1037 -0
  12. package/dist/blocks/Avatar/tests/Avatar.e2e.yaml +125 -0
  13. package/dist/blocks/Avatar/tests.yaml +76 -0
  14. package/dist/blocks/Badge/gallery.yaml +1090 -0
  15. package/dist/blocks/Badge/tests/Badge.e2e.yaml +195 -0
  16. package/dist/blocks/Badge/tests.yaml +91 -0
  17. package/dist/blocks/Breadcrumb/gallery.yaml +484 -0
  18. package/dist/blocks/Breadcrumb/tests/Breadcrumb.e2e.yaml +165 -0
  19. package/dist/blocks/Breadcrumb/tests.yaml +106 -0
  20. package/dist/blocks/Button/Button.js +11 -2
  21. package/dist/blocks/Button/gallery.yaml +718 -0
  22. package/dist/blocks/Button/meta.js +4 -0
  23. package/dist/blocks/Button/tests/Button.e2e.yaml +246 -0
  24. package/dist/blocks/Button/tests.yaml +109 -0
  25. package/dist/blocks/ButtonSelector/gallery.yaml +891 -0
  26. package/dist/blocks/ButtonSelector/tests/ButtonSelector.e2e.yaml +188 -0
  27. package/dist/blocks/ButtonSelector/tests.yaml +167 -0
  28. package/dist/blocks/Calendar/gallery.yaml +128 -0
  29. package/dist/blocks/Calendar/tests/Calendar.e2e.yaml +136 -0
  30. package/dist/blocks/Calendar/tests.yaml +50 -0
  31. package/dist/blocks/Card/gallery.yaml +1035 -0
  32. package/dist/blocks/Card/tests/Card.e2e.yaml +209 -0
  33. package/dist/blocks/Card/tests.yaml +75 -0
  34. package/dist/blocks/Carousel/gallery.yaml +1971 -0
  35. package/dist/blocks/Carousel/tests/Carousel.e2e.yaml +211 -0
  36. package/dist/blocks/Carousel/tests.yaml +117 -0
  37. package/dist/blocks/CheckboxSelector/gallery.yaml +781 -0
  38. package/dist/blocks/CheckboxSelector/tests/CheckboxSelector.e2e.yaml +272 -0
  39. package/dist/blocks/CheckboxSelector/tests.yaml +325 -0
  40. package/dist/blocks/CheckboxSwitch/gallery.yaml +457 -0
  41. package/dist/blocks/CheckboxSwitch/tests/CheckboxSwitch.e2e.yaml +126 -0
  42. package/dist/blocks/CheckboxSwitch/tests.yaml +96 -0
  43. package/dist/blocks/Collapse/gallery.yaml +1079 -0
  44. package/dist/blocks/Collapse/tests/Collapse.e2e.yaml +206 -0
  45. package/dist/blocks/Collapse/tests.yaml +265 -0
  46. package/dist/blocks/ColorSelector/gallery.yaml +807 -0
  47. package/dist/blocks/ColorSelector/tests/ColorSelector.e2e.yaml +77 -0
  48. package/dist/blocks/ColorSelector/tests.yaml +84 -0
  49. package/dist/blocks/ConfigProvider/gallery.yaml +1003 -0
  50. package/dist/blocks/ConfigProvider/tests.yaml +62 -0
  51. package/dist/blocks/ConfirmModal/gallery.yaml +1043 -0
  52. package/dist/blocks/ConfirmModal/tests/ConfirmModal.e2e.yaml +410 -0
  53. package/dist/blocks/ConfirmModal/tests.yaml +95 -0
  54. package/dist/blocks/Content/gallery.yaml +528 -0
  55. package/dist/blocks/Content/tests/Content.e2e.yaml +71 -0
  56. package/dist/blocks/Content/tests.yaml +42 -0
  57. package/dist/blocks/ControlledList/ControlledList.js +1 -1
  58. package/dist/blocks/ControlledList/gallery.yaml +481 -0
  59. package/dist/blocks/ControlledList/{style.module.css → style.css} +3 -3
  60. package/dist/blocks/ControlledList/tests/ControlledList.e2e.yaml +161 -0
  61. package/dist/blocks/ControlledList/tests.yaml +57 -0
  62. package/dist/blocks/DateRangeSelector/DateRangeSelector.js +7 -0
  63. package/dist/blocks/DateRangeSelector/e2e.js +28 -2
  64. package/dist/blocks/DateRangeSelector/gallery.yaml +858 -0
  65. package/dist/blocks/DateRangeSelector/meta.js +2 -0
  66. package/dist/blocks/DateRangeSelector/tests/DateRangeSelector.e2e.yaml +204 -0
  67. package/dist/blocks/DateRangeSelector/tests.yaml +129 -0
  68. package/dist/blocks/DateSelector/DateSelector.js +6 -0
  69. package/dist/blocks/DateSelector/e2e.js +28 -2
  70. package/dist/blocks/DateSelector/gallery.yaml +691 -0
  71. package/dist/blocks/DateSelector/meta.js +6 -0
  72. package/dist/blocks/DateSelector/tests/DateSelector.e2e.yaml +229 -0
  73. package/dist/blocks/DateSelector/tests.yaml +117 -0
  74. package/dist/blocks/DateTimeSelector/DateTimeSelector.js +7 -0
  75. package/dist/blocks/DateTimeSelector/e2e.js +26 -2
  76. package/dist/blocks/DateTimeSelector/gallery.yaml +770 -0
  77. package/dist/blocks/DateTimeSelector/meta.js +2 -0
  78. package/dist/blocks/DateTimeSelector/tests/DateTimeSelector.e2e.yaml +163 -0
  79. package/dist/blocks/DateTimeSelector/tests.yaml +140 -0
  80. package/dist/blocks/Descriptions/gallery.yaml +839 -0
  81. package/dist/blocks/Descriptions/tests/Descriptions.e2e.yaml +143 -0
  82. package/dist/blocks/Descriptions/tests.yaml +256 -0
  83. package/dist/blocks/Divider/gallery.yaml +375 -0
  84. package/dist/blocks/Divider/tests/Divider.e2e.yaml +107 -0
  85. package/dist/blocks/Divider/tests.yaml +58 -0
  86. package/dist/blocks/Drawer/gallery.yaml +1257 -0
  87. package/dist/blocks/Drawer/tests/Drawer.e2e.yaml +562 -0
  88. package/dist/blocks/Drawer/tests.yaml +80 -0
  89. package/dist/blocks/DropdownButton/gallery.yaml +606 -0
  90. package/dist/blocks/DropdownButton/tests/DropdownButton.e2e.yaml +243 -0
  91. package/dist/blocks/DropdownMenu/gallery.yaml +578 -0
  92. package/dist/blocks/DropdownMenu/tests/DropdownMenu.e2e.yaml +267 -0
  93. package/dist/blocks/Flex/gallery.yaml +1416 -0
  94. package/dist/blocks/Flex/tests/Flex.e2e.yaml +95 -0
  95. package/dist/blocks/Flex/tests.yaml +92 -0
  96. package/dist/blocks/FloatButton/gallery.yaml +518 -0
  97. package/dist/blocks/FloatButton/tests/FloatButton.e2e.yaml +73 -0
  98. package/dist/blocks/FloatButton/tests.yaml +59 -0
  99. package/dist/blocks/Footer/gallery.yaml +355 -0
  100. package/dist/blocks/Footer/tests/Footer.e2e.yaml +70 -0
  101. package/dist/blocks/Footer/tests.yaml +28 -0
  102. package/dist/blocks/Header/gallery.yaml +249 -0
  103. package/dist/blocks/Header/tests/Header.e2e.yaml +77 -0
  104. package/dist/blocks/Header/tests.yaml +36 -0
  105. package/dist/blocks/Label/Label.js +1 -1
  106. package/dist/blocks/Label/gallery.yaml +762 -0
  107. package/dist/blocks/Label/{style.module.css → style.css} +28 -28
  108. package/dist/blocks/Label/tests/Label.e2e.yaml +247 -0
  109. package/dist/blocks/Label/tests.yaml +212 -0
  110. package/dist/blocks/Layout/gallery.yaml +548 -0
  111. package/dist/blocks/Layout/tests/Layout.e2e.yaml +86 -0
  112. package/dist/blocks/Layout/tests.yaml +28 -0
  113. package/dist/blocks/ListSelector/gallery.yaml +223 -0
  114. package/dist/blocks/Masonry/gallery.yaml +989 -0
  115. package/dist/blocks/Masonry/tests/Masonry.e2e.yaml +128 -0
  116. package/dist/blocks/Masonry/tests.yaml +42 -0
  117. package/dist/blocks/MasonryList/gallery.yaml +224 -0
  118. package/dist/blocks/MasonryList/tests/MasonryList.e2e.yaml +55 -0
  119. package/dist/blocks/MasonryList/tests.yaml +42 -0
  120. package/dist/blocks/Menu/gallery.yaml +974 -0
  121. package/dist/blocks/Menu/tests/Menu.e2e.yaml +484 -0
  122. package/dist/blocks/Menu/tests.yaml +1053 -0
  123. package/dist/blocks/Message/gallery.yaml +860 -0
  124. package/dist/blocks/Message/tests/Message.e2e.yaml +246 -0
  125. package/dist/blocks/Message/tests.yaml +54 -0
  126. package/dist/blocks/MobileMenu/gallery.yaml +1172 -0
  127. package/dist/blocks/MobileMenu/tests/MobileMenu.e2e.yaml +314 -0
  128. package/dist/blocks/MobileMenu/tests.yaml +359 -0
  129. package/dist/blocks/Modal/gallery.yaml +1039 -0
  130. package/dist/blocks/Modal/tests/Modal.e2e.yaml +493 -0
  131. package/dist/blocks/Modal/tests.yaml +75 -0
  132. package/dist/blocks/MonthSelector/MonthSelector.js +6 -0
  133. package/dist/blocks/MonthSelector/e2e.js +26 -2
  134. package/dist/blocks/MonthSelector/gallery.yaml +687 -0
  135. package/dist/blocks/MonthSelector/meta.js +6 -0
  136. package/dist/blocks/MonthSelector/tests/MonthSelector.e2e.yaml +167 -0
  137. package/dist/blocks/MonthSelector/tests.yaml +124 -0
  138. package/dist/blocks/MultipleSelector/gallery.yaml +1245 -0
  139. package/dist/blocks/MultipleSelector/tests/MultipleSelector.e2e.yaml +445 -0
  140. package/dist/blocks/MultipleSelector/tests.yaml +201 -0
  141. package/dist/blocks/Notification/gallery.yaml +1376 -0
  142. package/dist/blocks/Notification/tests/Notification.e2e.yaml +362 -0
  143. package/dist/blocks/Notification/tests.yaml +97 -0
  144. package/dist/blocks/NumberInput/gallery.yaml +753 -0
  145. package/dist/blocks/NumberInput/tests/NumberInput.e2e.yaml +228 -0
  146. package/dist/blocks/NumberInput/tests.yaml +116 -0
  147. package/dist/blocks/PageHeaderMenu/PageHeaderMenu.js +1 -1
  148. package/dist/blocks/PageHeaderMenu/gallery.yaml +480 -0
  149. package/dist/blocks/PageHeaderMenu/tests/PageHeaderMenu.e2e.yaml +110 -0
  150. package/dist/blocks/PageHeaderMenu/tests.yaml +173 -0
  151. package/dist/blocks/PageSidebarLayout/PageSidebarLayout.js +10 -1
  152. package/dist/blocks/PageSidebarLayout/gallery.yaml +302 -0
  153. package/dist/blocks/PageSidebarLayout/meta.js +1 -0
  154. package/dist/blocks/PageSidebarLayout/tests/PageSidebarLayout.e2e.yaml +216 -0
  155. package/dist/blocks/PageSidebarLayout/tests.yaml +174 -0
  156. package/dist/blocks/PageSiderMenu/PageSiderMenu.js +1 -1
  157. package/dist/blocks/PageSiderMenu/gallery.yaml +516 -0
  158. package/dist/blocks/PageSiderMenu/tests/PageSiderMenu.e2e.yaml +175 -0
  159. package/dist/blocks/PageSiderMenu/tests.yaml +211 -0
  160. package/dist/blocks/Pagination/gallery.yaml +503 -0
  161. package/dist/blocks/Pagination/tests/Pagination.e2e.yaml +159 -0
  162. package/dist/blocks/Pagination/tests.yaml +80 -0
  163. package/dist/blocks/Paragraph/gallery.yaml +458 -0
  164. package/dist/blocks/Paragraph/tests/Paragraph.e2e.yaml +153 -0
  165. package/dist/blocks/Paragraph/tests.yaml +176 -0
  166. package/dist/blocks/ParagraphInput/gallery.yaml +1483 -0
  167. package/dist/blocks/ParagraphInput/tests/ParagraphInput.e2e.yaml +189 -0
  168. package/dist/blocks/ParagraphInput/tests.yaml +163 -0
  169. package/dist/blocks/PasswordInput/gallery.yaml +420 -0
  170. package/dist/blocks/PasswordInput/tests/PasswordInput.e2e.yaml +188 -0
  171. package/dist/blocks/PasswordInput/tests.yaml +78 -0
  172. package/dist/blocks/PhoneNumberInput/gallery.yaml +677 -0
  173. package/dist/blocks/PhoneNumberInput/tests/PhoneNumberInput.e2e.yaml +279 -0
  174. package/dist/blocks/PhoneNumberInput/tests.yaml +25 -0
  175. package/dist/blocks/Popover/gallery.yaml +1301 -0
  176. package/dist/blocks/Popover/tests/Popover.e2e.yaml +249 -0
  177. package/dist/blocks/Popover/tests.yaml +105 -0
  178. package/dist/blocks/Progress/gallery.yaml +772 -0
  179. package/dist/blocks/Progress/tests/Progress.e2e.yaml +167 -0
  180. package/dist/blocks/Progress/tests.yaml +114 -0
  181. package/dist/blocks/QRCode/gallery.yaml +492 -0
  182. package/dist/blocks/QRCode/tests/QRCode.e2e.yaml +66 -0
  183. package/dist/blocks/QRCode/tests.yaml +113 -0
  184. package/dist/blocks/RadioSelector/gallery.yaml +816 -0
  185. package/dist/blocks/RadioSelector/tests/RadioSelector.e2e.yaml +269 -0
  186. package/dist/blocks/RadioSelector/tests.yaml +339 -0
  187. package/dist/blocks/RatingSlider/gallery.yaml +627 -0
  188. package/dist/blocks/RatingSlider/tests/RatingSlider.e2e.yaml +188 -0
  189. package/dist/blocks/RatingSlider/tests.yaml +116 -0
  190. package/dist/blocks/Result/gallery.yaml +925 -0
  191. package/dist/blocks/Result/tests/Result.e2e.yaml +126 -0
  192. package/dist/blocks/Result/tests.yaml +75 -0
  193. package/dist/blocks/Search/Search.js +1 -1
  194. package/dist/blocks/Search/SearchModal.js +18 -9
  195. package/dist/blocks/Search/gallery.yaml +170 -0
  196. package/dist/blocks/Search/meta.js +2 -1
  197. package/dist/blocks/Search/{style.module.css → style.css} +19 -12
  198. package/dist/blocks/Search/tests/Search.e2e.yaml +125 -0
  199. package/dist/blocks/Search/useSearchIndex.js +24 -2
  200. package/dist/blocks/SegmentedSelector/gallery.yaml +725 -0
  201. package/dist/blocks/SegmentedSelector/tests/SegmentedSelector.e2e.yaml +115 -0
  202. package/dist/blocks/SegmentedSelector/tests.yaml +141 -0
  203. package/dist/blocks/Selector/gallery.yaml +1055 -0
  204. package/dist/blocks/Selector/tests/Selector.e2e.yaml +427 -0
  205. package/dist/blocks/Selector/tests.yaml +196 -0
  206. package/dist/blocks/Sider/gallery.yaml +994 -0
  207. package/dist/blocks/Sider/tests/Sider.e2e.yaml +162 -0
  208. package/dist/blocks/Sider/tests.yaml +20 -0
  209. package/dist/blocks/Slider/gallery.yaml +600 -0
  210. package/dist/blocks/Slider/tests/Slider.e2e.yaml +190 -0
  211. package/dist/blocks/Slider/tests.yaml +68 -0
  212. package/dist/blocks/Splitter/gallery.yaml +1511 -0
  213. package/dist/blocks/Splitter/tests/Splitter.e2e.yaml +114 -0
  214. package/dist/blocks/Splitter/tests.yaml +79 -0
  215. package/dist/blocks/Statistic/gallery.yaml +460 -0
  216. package/dist/blocks/Statistic/tests/Statistic.e2e.yaml +137 -0
  217. package/dist/blocks/Statistic/tests.yaml +77 -0
  218. package/dist/blocks/Steps/gallery.yaml +550 -0
  219. package/dist/blocks/Switch/gallery.yaml +502 -0
  220. package/dist/blocks/Switch/tests/Switch.e2e.yaml +132 -0
  221. package/dist/blocks/Switch/tests.yaml +87 -0
  222. package/dist/blocks/Tabs/gallery.yaml +1353 -0
  223. package/dist/blocks/Tabs/tests/Tabs.e2e.yaml +370 -0
  224. package/dist/blocks/Tabs/tests.yaml +349 -0
  225. package/dist/blocks/Tag/gallery.yaml +598 -0
  226. package/dist/blocks/Tag/tests/Tag.e2e.yaml +173 -0
  227. package/dist/blocks/Tag/tests.yaml +51 -0
  228. package/dist/blocks/TagMultipleSelector/TagMultipleSelector.js +53 -0
  229. package/dist/blocks/TagMultipleSelector/e2e.js +36 -0
  230. package/dist/blocks/TagMultipleSelector/gallery.yaml +70 -0
  231. package/dist/blocks/TagMultipleSelector/meta.js +91 -0
  232. package/dist/blocks/TagMultipleSelector/tests/TagMultipleSelector.e2e.yaml +93 -0
  233. package/dist/blocks/TagSelector/TagSelector.js +49 -0
  234. package/dist/blocks/TagSelector/e2e.js +36 -0
  235. package/dist/blocks/TagSelector/gallery.yaml +70 -0
  236. package/dist/blocks/TagSelector/meta.js +91 -0
  237. package/dist/blocks/TagSelector/tests/TagSelector.e2e.yaml +93 -0
  238. package/dist/blocks/TextArea/gallery.yaml +618 -0
  239. package/dist/blocks/TextArea/tests/TextArea.e2e.yaml +218 -0
  240. package/dist/blocks/TextArea/tests.yaml +100 -0
  241. package/dist/blocks/TextInput/gallery.yaml +560 -0
  242. package/dist/blocks/TextInput/tests/TextInput.e2e.yaml +287 -0
  243. package/dist/blocks/TextInput/tests.yaml +114 -0
  244. package/dist/blocks/TimelineList/gallery.yaml +431 -0
  245. package/dist/blocks/TimelineList/tests/TimelineList.e2e.yaml +244 -0
  246. package/dist/blocks/TimelineList/tests.yaml +251 -0
  247. package/dist/blocks/Title/gallery.yaml +483 -0
  248. package/dist/blocks/Title/tests/Title.e2e.yaml +180 -0
  249. package/dist/blocks/Title/tests.yaml +175 -0
  250. package/dist/blocks/TitleInput/gallery.yaml +1006 -0
  251. package/dist/blocks/TitleInput/tests/TitleInput.e2e.yaml +195 -0
  252. package/dist/blocks/TitleInput/tests.yaml +181 -0
  253. package/dist/blocks/Tooltip/gallery.yaml +1214 -0
  254. package/dist/blocks/Tooltip/tests/Tooltip.e2e.yaml +195 -0
  255. package/dist/blocks/Tooltip/tests.yaml +92 -0
  256. package/dist/blocks/Tour/gallery.yaml +2305 -0
  257. package/dist/blocks/Tour/tests/Tour.e2e.yaml +90 -0
  258. package/dist/blocks/Tour/tests.yaml +151 -0
  259. package/dist/blocks/TreeInput/gallery.yaml +78 -0
  260. package/dist/blocks/TreeInput/tests/TreeInput.e2e.yaml +139 -0
  261. package/dist/blocks/TreeInput/tests.yaml +140 -0
  262. package/dist/blocks/TreeMultipleSelector/gallery.yaml +67 -0
  263. package/dist/blocks/TreeSelector/gallery.yaml +81 -0
  264. package/dist/blocks/Watermark/gallery.yaml +479 -0
  265. package/dist/blocks/Watermark/tests/Watermark.e2e.yaml +62 -0
  266. package/dist/blocks/Watermark/tests.yaml +86 -0
  267. package/dist/blocks/WeekSelector/WeekSelector.js +6 -0
  268. package/dist/blocks/WeekSelector/e2e.js +26 -2
  269. package/dist/blocks/WeekSelector/gallery.yaml +589 -0
  270. package/dist/blocks/WeekSelector/meta.js +6 -0
  271. package/dist/blocks/WeekSelector/tests/WeekSelector.e2e.yaml +154 -0
  272. package/dist/blocks/WeekSelector/tests.yaml +122 -0
  273. package/dist/blocks.js +2 -0
  274. package/dist/disabledDate.js +91 -19
  275. package/dist/e2e.js +2 -0
  276. package/dist/getPresets.js +151 -0
  277. package/dist/getTagColor.js +44 -0
  278. package/dist/getTagSelectorOptions.js +30 -0
  279. package/dist/metas.js +2 -0
  280. package/dist/pickerPresetsStyle.css +26 -0
  281. package/dist/schemas/disabledDates.js +6 -2
  282. package/dist/schemas/index.js +1 -0
  283. package/dist/schemas/presets.js +111 -0
  284. package/dist/tagSelectorStyle.css +68 -0
  285. package/package.json +13 -13
@@ -52,9 +52,13 @@
52
52
  },
53
53
  ranges: {
54
54
  type: 'array',
55
- description: 'Array of date ranges to disable.',
55
+ description: 'Array of date ranges to disable. A range is an object with a from and a to date, or an array of the two dates.',
56
56
  items: {
57
- type: 'object',
57
+ type: [
58
+ 'object',
59
+ 'array'
60
+ ],
61
+ description: 'A range as { from, to }, or as an array of a from and a to date.',
58
62
  properties: {
59
63
  from: {
60
64
  type: [
@@ -19,4 +19,5 @@ export { default as icon } from './icon.js';
19
19
  export { default as label } from './label.js';
20
20
  export { default as menuLinks } from './menuLinks.js';
21
21
  export { default as options } from './options.js';
22
+ export { datePresets, dateRangePresets, dateTimePresets } from './presets.js';
22
23
  export { disabled, placeholder, inputTitle, autoFocus, variant, bordered, allowClear, sizeSmallMiddleLarge, sizeSmallDefaultLarge } from './inputProperties.js';
@@ -0,0 +1,111 @@
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
+ */ const label = {
16
+ type: 'string',
17
+ description: 'Text shown for the shortcut - supports html.'
18
+ };
19
+ const disabledDatesNote = 'A preset is offered on the same terms as the calendar cells: a shortcut with nothing it may select is listed as disabled.';
20
+ const presetsDescription = (selects)=>`Shortcuts listed next to the calendar to quickly select ${selects}. Presets are re-evaluated every time the block config is evaluated, so operator based values like "_date: now" stay current. ${disabledDatesNote}`;
21
+ const rangePresetsDescription = (selects)=>`Shortcuts listed next to the calendar to quickly select ${selects}. Presets are re-evaluated every time the block config is evaluated, so operator based values like "_date: now" stay current. A preset is offered on the same terms as the calendar cells: a range that starts or ends on a date disabledDates disables is narrowed to the dates it may select, so a "Last 7 days" shortcut still selects the allowed part of the last 7 days. A shortcut with nothing it may select is listed as disabled.`;
22
+ const utcDateDescription = ({ example, unit })=>`A date string, a timestamp, or a _date object. Dates are read as UTC, the same as the block value, so a fixed date like "2026-01-01" resolves to the same ${unit} in every timezone. A date relative to now is an instant, not a calendar date, so end a _dayjs chain with a format step to pin it to the local calendar: "${example}". Without the format step the chain resolves to an instant, which can select the ${unit} before or after the current one, depending on the browser timezone and the time of day.`;
23
+ const utcDate = ({ example, unit })=>({
24
+ type: [
25
+ 'string',
26
+ 'number',
27
+ 'object'
28
+ ],
29
+ description: utcDateDescription({
30
+ example,
31
+ unit
32
+ })
33
+ });
34
+ export const datePresets = ({ example, selects, unit })=>({
35
+ type: 'array',
36
+ description: presetsDescription(selects),
37
+ docs: {
38
+ displayType: 'yaml'
39
+ },
40
+ items: {
41
+ type: 'object',
42
+ required: [
43
+ 'label',
44
+ 'value'
45
+ ],
46
+ properties: {
47
+ label,
48
+ value: utcDate({
49
+ example,
50
+ unit
51
+ })
52
+ }
53
+ }
54
+ });
55
+ export const dateTimePresets = {
56
+ type: 'array',
57
+ description: presetsDescription('a date and time'),
58
+ docs: {
59
+ displayType: 'yaml'
60
+ },
61
+ items: {
62
+ type: 'object',
63
+ required: [
64
+ 'label',
65
+ 'value'
66
+ ],
67
+ properties: {
68
+ label,
69
+ value: {
70
+ type: [
71
+ 'string',
72
+ 'number',
73
+ 'object'
74
+ ],
75
+ description: 'A date string, a timestamp, or a _date object. The date is used as the instant it names, so "_date: now" and _dayjs chains need no special handling. With selectUTC the instant is shown on the UTC clock, so a chain that snaps to a calendar boundary needs a utc step to snap to the UTC day, eg. "_dayjs: [now, utc, {startOf: day}]". Without selectUTC the instant is shown on the local clock, so a chain resolves in local time, eg. "_dayjs: [now, {startOf: day}]".'
76
+ }
77
+ }
78
+ }
79
+ };
80
+ export const dateRangePresets = {
81
+ type: 'array',
82
+ description: rangePresetsDescription('a date range'),
83
+ docs: {
84
+ displayType: 'yaml'
85
+ },
86
+ items: {
87
+ type: 'object',
88
+ required: [
89
+ 'label',
90
+ 'value'
91
+ ],
92
+ properties: {
93
+ label,
94
+ value: {
95
+ // The docs table does not recurse into the items of a nested array, so the date description
96
+ // is repeated here to keep it on the DateRangeSelector page.
97
+ type: 'array',
98
+ description: `The start and end date of the range. ${utcDateDescription({
99
+ example: '_dayjs: [now, {subtract: [7, days]}, {format: YYYY-MM-DD}]',
100
+ unit: 'day'
101
+ })}`,
102
+ minItems: 2,
103
+ maxItems: 2,
104
+ items: utcDate({
105
+ example: '_dayjs: [now, {subtract: [7, days]}, {format: YYYY-MM-DD}]',
106
+ unit: 'day'
107
+ })
108
+ }
109
+ }
110
+ }
111
+ };
@@ -0,0 +1,68 @@
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
+ */
16
+
17
+ /* Shared tag row for TagSelector (single) and TagMultipleSelector (multi).
18
+ Per-option colors are inline (computed in JS from the stable palette);
19
+ everything structural and theme-token-driven lives here. */
20
+ @layer components {
21
+ .lf-tag-selector {
22
+ display: flex;
23
+ flex-wrap: wrap;
24
+ gap: 6px;
25
+ width: 100%;
26
+ }
27
+
28
+ .lf-tag-selector-tag {
29
+ appearance: none;
30
+ font: inherit;
31
+ font-size: var(--ant-font-size-sm, 12px);
32
+ line-height: 1.4;
33
+ padding: 2px 12px;
34
+ border-radius: 999px;
35
+ border: 1px solid var(--ant-color-border);
36
+ background: transparent;
37
+ color: var(--ant-color-text-secondary);
38
+ cursor: pointer;
39
+ user-select: none;
40
+ transition:
41
+ color 0.15s ease,
42
+ border-color 0.15s ease,
43
+ background 0.15s ease;
44
+ }
45
+
46
+ .lf-tag-selector-tag:hover:not(:disabled) {
47
+ color: var(--ant-color-text);
48
+ }
49
+
50
+ .lf-tag-selector-tag:focus-visible {
51
+ outline: 2px solid var(--ant-color-primary);
52
+ outline-offset: 1px;
53
+ }
54
+
55
+ .lf-tag-selector-tag:disabled {
56
+ opacity: 0.45;
57
+ cursor: not-allowed;
58
+ }
59
+
60
+ /* Filled selected state. In colored mode the inline style (solid hue +
61
+ contrast text) overrides these; this is the colored:false primary look. */
62
+ .lf-tag-selector-tag-selected {
63
+ font-weight: 600;
64
+ background: var(--ant-color-primary);
65
+ border-color: var(--ant-color-primary);
66
+ color: var(--ant-color-text-light-solid, #fff);
67
+ }
68
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lowdefy/blocks-antd",
3
- "version": "5.6.0",
3
+ "version": "6.1.0",
4
4
  "license": "Apache-2.0",
5
5
  "description": "Lowdefy Ant Design Blocks",
6
6
  "homepage": "https://lowdefy.com",
@@ -45,12 +45,12 @@
45
45
  ],
46
46
  "dependencies": {
47
47
  "@ant-design/icons": "6.1.0",
48
- "@lowdefy/block-utils": "5.6.0",
49
- "@lowdefy/helpers": "5.6.0",
50
- "@lowdefy/nunjucks": "5.6.0",
48
+ "@lowdefy/block-utils": "6.1.0",
49
+ "@lowdefy/helpers": "6.1.0",
50
+ "@lowdefy/nunjucks": "6.1.0",
51
51
  "@rc-component/motion": "1.3.1",
52
- "classnames": "2.3.2",
53
- "dayjs": "1.11.19",
52
+ "classnames": "2.5.1",
53
+ "dayjs": "1.11.20",
54
54
  "minisearch": "7.2.0",
55
55
  "react-virtuoso": "4.18.7"
56
56
  },
@@ -60,12 +60,12 @@
60
60
  "react-dom": ">=18"
61
61
  },
62
62
  "devDependencies": {
63
- "@lowdefy/block-dev-e2e": "5.6.0",
64
- "@lowdefy/e2e-utils": "5.6.0",
65
- "@lowdefy/node-utils": "5.6.0",
66
- "@playwright/test": "1.50.1",
67
- "@swc/cli": "0.8.0",
68
- "@swc/core": "1.15.18",
63
+ "@lowdefy/block-dev-e2e": "6.1.0",
64
+ "@lowdefy/e2e-utils": "6.1.0",
65
+ "@lowdefy/node-utils": "6.1.0",
66
+ "@playwright/test": "1.59.1",
67
+ "@swc/cli": "0.8.1",
68
+ "@swc/core": "1.15.32",
69
69
  "copyfiles": "2.4.1"
70
70
  },
71
71
  "publishConfig": {
@@ -74,7 +74,7 @@
74
74
  "scripts": {
75
75
  "build": "swc src --out-dir dist --config-file ../../../../.swcrc --cli-config-file ../../../../.swc-cli.json && pnpm copyfiles",
76
76
  "clean": "rm -rf dist",
77
- "copyfiles": "copyfiles -u 1 \"./src/**/*\" dist -e \"./src/**/*.js\" -e \"./src/**/*.yaml\" -e \"./src/**/*.snap\"",
77
+ "copyfiles": "copyfiles -u 1 \"./src/**/*\" dist -e \"./src/**/*.js\" -e \"./src/**/*.snap\"",
78
78
  "e2e": "playwright test --config e2e/playwright.config.js",
79
79
  "e2e:ui": "playwright test --config e2e/playwright.config.js --ui"
80
80
  }