@revolist/ui 4.0.2-rc → 4.0.2

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 (343) hide show
  1. package/LICENSE +21 -0
  2. package/MIGRATION.md +36 -0
  3. package/OWNERSHIP.md +32 -32
  4. package/README.md +405 -265
  5. package/_button.scss +6 -2
  6. package/_chunks/arrow-up-Cw8hW9vp.js +4 -0
  7. package/_chunks/calculator-CDWOuAcp.js +4 -0
  8. package/_chunks/{calendar-CpaUK7w1.js → calendar-CgXQgkga.js} +28 -18
  9. package/_chunks/chart-frame-hcOlnQ1K.js +145 -0
  10. package/_chunks/{chevron-right-sxHQMSkq.js → check-BwI7iCAm.js} +2 -2
  11. package/_chunks/{chevron-left-D0nc4Z5S.js → chevron-right-CM3ljziP.js} +2 -2
  12. package/_chunks/choice-chips-SkllS5Kl.js +126 -0
  13. package/_chunks/clock-BOhPNlW3.js +4 -0
  14. package/_chunks/{color-palette-BBMFmUNA.js → color-palette-DMJUChWC.js} +20 -22
  15. package/_chunks/{color-picker-D90Jg-M8.js → color-picker-BpCTuIdm.js} +77 -72
  16. package/_chunks/{component-YDcfoOLz.js → component-CfeHXgIw.js} +301 -282
  17. package/_chunks/{component-metadata-BENbgTjU.js → component-metadata-BKd7U8OW.js} +0 -12
  18. package/_chunks/configurator-actions-DnStE6Yl.js +155 -0
  19. package/_chunks/configurator-field-icon-CmcM_sPs.js +53 -0
  20. package/_chunks/control-Dcrjsunl.js +118 -0
  21. package/_chunks/{controls-DIum-E66.js → controls-B_6NJarZ.js} +217 -182
  22. package/_chunks/{date-control-BJSzu79z.js → date-control-C4h4m75W.js} +1 -1
  23. package/_chunks/{date-time-BxPJusp9.js → date-time-CTOSbzb0.js} +344 -307
  24. package/_chunks/{delete-button-Bblyah10.js → delete-button-CW9vjLnk.js} +6 -6
  25. package/_chunks/dialog.parts-3w5FR06n.js +131 -0
  26. package/_chunks/{duration-87U2EoMS.js → duration-Bf2OS1V5.js} +19 -18
  27. package/_chunks/editor-popup-ByU7qiub.js +82 -0
  28. package/_chunks/field-configurator-D5dZRhDe.js +288 -0
  29. package/_chunks/field-context-D57PnBbH.js +5 -0
  30. package/_chunks/{framework-mount-C-Zwm44H.js → framework-mount-Bk4O_T7T.js} +1 -1
  31. package/_chunks/icon-toolbar-DSjOdwM7.js +134 -0
  32. package/_chunks/magnifying-glass-CvrTDSkB.js +4 -0
  33. package/_chunks/minus-BOAR3A1C.js +4 -0
  34. package/_chunks/mount-BRdcG60g.js +267 -0
  35. package/_chunks/{native.view-ByyZ1CT5.js → native-Blr3byjO.js} +1 -1
  36. package/_chunks/native-control-B_fVA5bL.js +649 -0
  37. package/_chunks/{number-input-BeIadZuL.js → number-input-CmM6_2vR.js} +7 -7
  38. package/_chunks/{picker-DpP7iQLA.js → picker-DTqET-2W.js} +2 -2
  39. package/_chunks/plus-CbGRkIGl.js +4 -0
  40. package/_chunks/popover-controller-D-AvKQ7B.js +102 -0
  41. package/_chunks/popup-C35Isk7p.js +378 -0
  42. package/_chunks/{rating-choice-Ca8ZBty3.js → rating-choice-C-6wcb9U.js} +1 -1
  43. package/_chunks/render-m5eMMwFR.js +83 -0
  44. package/_chunks/{reorder-list-Cc3KmfAN.js → reorder-list-DIl1gkV6.js} +1 -1
  45. package/_chunks/request-trail-DrhdpWiH.js +762 -0
  46. package/_chunks/rich-text-BnilBbhU.js +842 -0
  47. package/_chunks/rotate-left-BF6G883o.js +4 -0
  48. package/_chunks/rotate-right-Iha5ScJ1.js +4 -0
  49. package/_chunks/selection-list-tooltips-C5oMJe26.js +42 -0
  50. package/_chunks/title-tooltip-Cw6LOZhb.js +11 -0
  51. package/_chunks/tooltip-D4xkio5G.js +54 -0
  52. package/_chunks/tooltip-owner-DjdvqKzz.js +19 -0
  53. package/_chunks/tooltip-session-B6X6x8G_.js +110 -0
  54. package/_chunks/tooltip-text-BXsUEmBH.js +12 -0
  55. package/_chunks/top-layer-popup-CNSDdfJV.js +59 -0
  56. package/_dialog.scss +55 -21
  57. package/_form.scss +71 -21
  58. package/_legend.scss +25 -7
  59. package/_shared/data-query/index.d.ts +2 -2
  60. package/_shared/data-query/load-options.d.ts +2 -2
  61. package/_variables.scss +34 -32
  62. package/_view-switcher.scss +6 -0
  63. package/activity-message.d.ts +1 -1
  64. package/ai/_chat.scss +227 -0
  65. package/ai/_style.scss +170 -39
  66. package/ai/chat.d.ts +65 -0
  67. package/ai/components.d.ts +34 -5
  68. package/ai/index.d.ts +3 -0
  69. package/ai/index.js +3 -3
  70. package/ai/mount.d.ts +59 -6
  71. package/ai/prompt-history.d.ts +13 -0
  72. package/ai/request-trail.d.ts +9 -3
  73. package/ai/results/_style.scss +83 -0
  74. package/ai/results/index.d.ts +11 -0
  75. package/ai/results/metrics.d.ts +5 -0
  76. package/ai/results/table.d.ts +5 -0
  77. package/ai/results/text.d.ts +5 -0
  78. package/ai/results/types.d.ts +29 -0
  79. package/ai/transcript.d.ts +27 -0
  80. package/ai/translations.d.ts +1 -1
  81. package/angular/angular.d.ts +1 -1
  82. package/angular/angular.js +13 -10
  83. package/assignee/assignee.scss +28 -6
  84. package/assignee/index.js +34 -35
  85. package/avatar/avatar.style.scss +23 -6
  86. package/avatar/index.d.ts +25 -2
  87. package/avatar/index.js +33 -32
  88. package/badge.d.ts +1 -1
  89. package/badge.view.d.ts +8 -0
  90. package/brush-range/_brush-range.scss +55 -49
  91. package/brush-range/component.d.ts +1 -3
  92. package/brush-range/component.js +27 -27
  93. package/buttons/delete-button.d.ts +2 -1
  94. package/buttons/delete-button.js +1 -1
  95. package/buttons/delete-button.style.scss +6 -2
  96. package/buttons/remove-button.d.ts +1 -1
  97. package/buttons/remove-button.js +1 -1
  98. package/buttons/remove-button.style.scss +1 -1
  99. package/buttons/svg-button.d.ts +2 -1
  100. package/buttons/svg-button.js +19 -19
  101. package/calendar/_calendar.scss +27 -26
  102. package/calendar/calendar.js +1 -1
  103. package/calendar/header.js +1 -2
  104. package/calendar/index.js +2 -2
  105. package/cell-input.scss +3 -7
  106. package/cell-visuals/badge.style.scss +6 -3
  107. package/cell-visuals/bar-chart.style.scss +2 -1
  108. package/cell-visuals/column-type.style.css +12 -0
  109. package/cell-visuals/progress-line-value.renderer.style.scss +4 -2
  110. package/cell-visuals/progress-line.style.scss +1 -4
  111. package/cell-visuals/sparkline.style.scss +2 -1
  112. package/cell-visuals/timeline.style.css +4 -2
  113. package/checkbox/checkbox.scss +6 -24
  114. package/choice-chips/index.d.ts +3 -1
  115. package/choice-chips/index.js +1 -1
  116. package/color-palette/color-palette.js +1 -1
  117. package/color-palette/color-palette.style.scss +88 -25
  118. package/color-palette/color-picker.js +2 -2
  119. package/color-palette/color-picker.style.scss +23 -10
  120. package/color-palette/common-palettes.d.ts +1 -1
  121. package/color-palette/common-palettes.js +1 -1
  122. package/color-palette/native.d.ts +15 -2
  123. package/component-catalog.d.ts +24 -11
  124. package/configurator-actions.d.ts +67 -0
  125. package/configurator-actions.js +1 -0
  126. package/configurator-aggregation-list.d.ts +14 -0
  127. package/configurator-aggregation-list.js +63 -0
  128. package/configurator-drop-zone.d.ts +39 -0
  129. package/configurator-drop-zone.js +66 -0
  130. package/configurator-field-icon.d.ts +10 -0
  131. package/configurator-field-icon.js +1 -0
  132. package/configurator-focus.d.ts +4 -0
  133. package/configurator-focus.js +39 -0
  134. package/configurator-sections.d.ts +42 -0
  135. package/configurator-sections.js +71 -0
  136. package/control-attributes.js +7 -7
  137. package/control-presentation.d.ts +8 -2
  138. package/control-presentation.js +25 -20
  139. package/controls.d.ts +19 -7
  140. package/controls.js +4 -3
  141. package/core/editor-popup-position.d.ts +6 -2
  142. package/core/editor-popup.d.ts +4 -0
  143. package/core/editor-popup.js +1 -1
  144. package/core/popover-controller.d.ts +35 -0
  145. package/core/popup-ownership.d.ts +2 -0
  146. package/core/selection-list-tooltips.d.ts +2 -0
  147. package/core/title-tooltip.d.ts +2 -0
  148. package/core/tooltip-session.d.ts +29 -0
  149. package/core/tooltip-surface.d.ts +13 -0
  150. package/core/tooltip-text.d.ts +6 -0
  151. package/core/tooltip.d.ts +35 -0
  152. package/core/top-layer-popup.d.ts +4 -0
  153. package/core/top-layer-popup.js +1 -23
  154. package/date-time/attach.d.ts +1 -1
  155. package/date-time/date-control.d.ts +1 -1
  156. package/date-time/field.d.ts +3 -2
  157. package/date-time/index.js +1 -1
  158. package/date-time/style.scss +242 -39
  159. package/date-time/time-selection.d.ts +3 -1
  160. package/date-time/types.d.ts +5 -1
  161. package/dialog/dialog-action-footer.d.ts +17 -2
  162. package/dialog/dialog.dom.d.ts +15 -2
  163. package/dialog/dialog.dom.js +3 -3
  164. package/dialog/dialog.parts.d.ts +1 -1
  165. package/dialog/dialog.parts.js +1 -1
  166. package/distribution-chart/_distribution-chart.scss +113 -77
  167. package/distribution-chart/area-chart.js +1 -1
  168. package/distribution-chart/bar-chart.d.ts +5 -2
  169. package/distribution-chart/bar-chart.js +7 -3
  170. package/distribution-chart/chart-frame.d.ts +2 -1
  171. package/distribution-chart/index.d.ts +1 -1
  172. package/distribution-chart/line-chart.js +1 -1
  173. package/dropdown/content.d.ts +2 -1
  174. package/dropdown/content.js +1 -142
  175. package/dropdown/control.d.ts +14 -0
  176. package/dropdown/control.js +1 -0
  177. package/dropdown/control.view.d.ts +6 -0
  178. package/dropdown/dropdown.types.d.ts +5 -1
  179. package/dropdown/editor-dropdown.style.scss +54 -16
  180. package/dropdown/index.d.ts +1 -1
  181. package/dropdown/index.js +3 -4
  182. package/dropdown/lookup-field.d.ts +5 -0
  183. package/dropdown/lookup-field.js +2 -1
  184. package/dropdown/popup.d.ts +2 -2
  185. package/dropdown/popup.js +1 -141
  186. package/duration/index.js +1 -1
  187. package/duration/style.scss +1 -1
  188. package/editor-actions.js +1 -1
  189. package/editor-layout/index.d.ts +4 -4
  190. package/editor-layout/index.js +39 -34
  191. package/editor-layout/style.scss +82 -18
  192. package/field-configurator.d.ts +39 -1
  193. package/field-configurator.js +4 -170
  194. package/field-expansion.d.ts +9 -0
  195. package/fieldset.d.ts +3 -0
  196. package/filter/filters/slider/_single-slider.scss +57 -38
  197. package/filter/filters/slider/_slider.scss +41 -33
  198. package/filter/filters/slider/control.js +2 -0
  199. package/filter/filters/slider/runtime.js +49 -22
  200. package/filter/filters/slider/single.js +1 -1
  201. package/filter-badge.js +1 -1
  202. package/filter-controls.d.ts +0 -1
  203. package/filter-controls.js +9 -10
  204. package/form-controls/field-context.d.ts +5 -0
  205. package/form-controls/index.d.ts +10 -2
  206. package/form-controls/index.js +4 -9
  207. package/form-controls/presentation.d.ts +1 -1
  208. package/form-controls/presentation.js +53 -45
  209. package/formatting/index.d.ts +1 -1
  210. package/formatting/index.js +40 -35
  211. package/formatting/styles.scss +14 -57
  212. package/framework.js +237 -226
  213. package/history-controls.d.ts +14 -0
  214. package/history-controls.js +27 -0
  215. package/icon-toolbar.d.ts +62 -0
  216. package/icon-toolbar.js +1 -0
  217. package/icons/icon.d.ts +1 -1
  218. package/legend.d.ts +1 -1
  219. package/masked-input/index.js +1 -1
  220. package/native-control.d.ts +6 -5
  221. package/native-control.js +3 -26
  222. package/native-controls.d.ts +54 -2
  223. package/native-styles.css +1 -1
  224. package/native-styles.scss +6 -2
  225. package/native.d.ts +3 -3
  226. package/native.js +41 -37
  227. package/number-input/index.d.ts +1 -1
  228. package/number-input/index.js +1 -1
  229. package/package.json +88 -14
  230. package/pagination.d.ts +3 -0
  231. package/pagination.js +50 -40
  232. package/pdf-viewer/header.d.ts +1 -1
  233. package/pdf-viewer/index.d.ts +2 -2
  234. package/pdf-viewer/index.js +1 -1
  235. package/pdf-viewer/search-bar.d.ts +1 -1
  236. package/pdf-viewer/status.d.ts +1 -1
  237. package/pdf-viewer/style.scss +205 -45
  238. package/pickers.d.ts +5 -1
  239. package/preact-mount.js +1 -1
  240. package/preact.d.ts +15 -10
  241. package/preact.js +109 -64
  242. package/progress/_bar.scss +9 -3
  243. package/progress/_circular.scss +2 -1
  244. package/rating-choice.js +1 -1
  245. package/react-adapter.d.ts +4 -2
  246. package/react-control.d.ts +1 -0
  247. package/react.d.ts +20 -11
  248. package/react.js +72 -88
  249. package/reorder-list.d.ts +1 -1
  250. package/reorder-list.js +1 -1
  251. package/reorder-list.scss +59 -17
  252. package/resource-picker/resource-picker-popup.js +1 -1
  253. package/resource-picker/resource-picker.js +73 -71
  254. package/resource-picker/resource-picker.scss +66 -35
  255. package/rich-text/engine.d.ts +17 -19
  256. package/rich-text/format-html.d.ts +2 -0
  257. package/rich-text/index.d.ts +11 -7
  258. package/rich-text/index.js +1 -1
  259. package/rich-text/model.d.ts +6 -3
  260. package/rich-text/render-model.d.ts +4 -5
  261. package/rich-text/style.scss +295 -55
  262. package/rich-text/syntax.d.ts +5 -2
  263. package/rich-text/toolbar.d.ts +6 -6
  264. package/rich-text/translations.d.ts +5 -15
  265. package/search-input/index.js +1 -1
  266. package/search-input/native.d.ts +21 -2
  267. package/select.d.ts +22 -0
  268. package/select.js +1 -0
  269. package/selection-list.d.ts +1 -0
  270. package/selection-list.js +3 -1
  271. package/status-feedback/exit-snapshot.js +1 -1
  272. package/status-feedback/index.js +2 -2
  273. package/status-feedback/popover.js +9 -9
  274. package/status-feedback/render.js +3 -44
  275. package/status-feedback/status-feedback.scss +130 -34
  276. package/status-feedback/types.d.ts +4 -0
  277. package/status-feedback/use-auto-dismiss.d.ts +3 -0
  278. package/styles/_activity-message.scss +24 -7
  279. package/styles/_alert.scss +78 -17
  280. package/styles/_cell-editor-frame.scss +11 -0
  281. package/styles/_compositions.scss +404 -82
  282. package/styles/_control.scss +42 -12
  283. package/styles/_disclosure.scss +15 -5
  284. package/styles/_editor-counter.scss +16 -6
  285. package/styles/_editor-slider.scss +8 -4
  286. package/styles/_field-configurator.scss +321 -23
  287. package/styles/_fields-grid.scss +49 -0
  288. package/styles/_filter-controls.scss +10 -2
  289. package/styles/_icon-action.scss +48 -15
  290. package/styles/_loading.scss +12 -3
  291. package/styles/_motion.scss +32 -9
  292. package/styles/_palette.scss +0 -24
  293. package/styles/_primitives.scss +376 -116
  294. package/styles/_theme.scss +130 -86
  295. package/styles/_thresholds.scss +28 -25
  296. package/styles/_time-grid.scss +8 -3
  297. package/styles/_tokens.scss +6 -1
  298. package/styles/configurator-actions.scss +241 -0
  299. package/styles/pagination.css +213 -0
  300. package/styles/{legacy-rating.css → rating.css} +8 -3
  301. package/styles.css +1 -1
  302. package/styles.scss +3 -5
  303. package/surfaces.d.ts +38 -2
  304. package/surfaces.js +37 -134
  305. package/svelte/UiComponent.server.js +1 -48
  306. package/svelte/UiComponent.svelte +44 -32
  307. package/svelte.d.ts +1 -1
  308. package/svelte.js +33 -68
  309. package/switch/index.js +15 -14
  310. package/time-grid.d.ts +0 -1
  311. package/time-grid.js +38 -37
  312. package/timeline-track/_style.scss +96 -24
  313. package/timeline-track/component.d.ts +5 -1
  314. package/timeline-track/index.js +71 -54
  315. package/timeline-track/model.d.ts +9 -0
  316. package/timeline-track/model.js +10 -1
  317. package/ui.css +1 -1
  318. package/view-switcher.d.ts +23 -0
  319. package/vue.d.ts +51 -35
  320. package/vue.js +149 -178
  321. package/_chunks/chart-frame-BC99KjGa.js +0 -127
  322. package/_chunks/choice-chips-Cs4D-3nH.js +0 -110
  323. package/_chunks/compat.module-DDB2pm9O.js +0 -229
  324. package/_chunks/control-tooltip-ztgmsG7H.js +0 -100
  325. package/_chunks/dialog.parts-DBqo3Qwb.js +0 -134
  326. package/_chunks/dropdown-voWqmwAe.js +0 -357
  327. package/_chunks/editor-popup-D3JdS8l3.js +0 -81
  328. package/_chunks/mount-DZe_6VtR.js +0 -90
  329. package/_chunks/request-trail-IdNiFvKH.js +0 -347
  330. package/_chunks/rich-text-BzI1DyfF.js +0 -477
  331. package/avatar/index.view.d.ts +0 -25
  332. package/color-palette/native.view.d.ts +0 -15
  333. package/control-presentation.view.d.ts +0 -8
  334. package/dialog/dialog-action-footer.view.d.ts +0 -20
  335. package/dialog/dialog.dom.view.d.ts +0 -15
  336. package/form-controls/index.view.d.ts +0 -12
  337. package/formatting/control-tooltip.d.ts +0 -27
  338. package/native-controls.view.d.ts +0 -54
  339. package/react-native-select.d.ts +0 -6
  340. package/search-input/native.view.d.ts +0 -21
  341. package/styles/legacy-pagination.css +0 -112
  342. package/surfaces.view.d.ts +0 -63
  343. package/vue-native-select.d.ts +0 -9
package/package.json CHANGED
@@ -1,9 +1,43 @@
1
1
  {
2
2
  "name": "@revolist/ui",
3
- "version": "4.0.2-rc",
3
+ "version": "4.0.2",
4
4
  "type": "module",
5
- "description": "Shared RevoGrid UI controls, native controllers and optional framework adapters",
6
- "license": "Commercial",
5
+ "description": "Revo UI: UI components for financial apps, reporting dashboards, and project management with React, Vue, Angular, Svelte, Preact, and vanilla TypeScript adapters",
6
+ "author": "revolist",
7
+ "homepage": "https://ui.rv-grid.com/",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "https://github.com/revolist/revo-ui.git"
11
+ },
12
+ "bugs": {
13
+ "url": "https://github.com/revolist/revo-ui/issues"
14
+ },
15
+ "keywords": [
16
+ "revo-ui",
17
+ "revogrid",
18
+ "ui",
19
+ "ui-components",
20
+ "component-library",
21
+ "design-system",
22
+ "typescript",
23
+ "javascript",
24
+ "react",
25
+ "vue",
26
+ "angular",
27
+ "svelte",
28
+ "preact",
29
+ "vanilla-js",
30
+ "dashboard",
31
+ "forms",
32
+ "charts",
33
+ "calendar",
34
+ "timeline",
35
+ "project-management",
36
+ "financial-apps",
37
+ "accessible",
38
+ "theming"
39
+ ],
40
+ "license": "MIT",
7
41
  "publishConfig": {
8
42
  "registry": "https://registry.npmjs.org/",
9
43
  "access": "public"
@@ -47,6 +81,21 @@
47
81
  "import": "./activity-message.js",
48
82
  "default": "./activity-message.js"
49
83
  },
84
+ "./icon-toolbar": {
85
+ "types": "./icon-toolbar.d.ts",
86
+ "import": "./icon-toolbar.js",
87
+ "default": "./icon-toolbar.js"
88
+ },
89
+ "./history-controls": {
90
+ "types": "./history-controls.d.ts",
91
+ "import": "./history-controls.js",
92
+ "default": "./history-controls.js"
93
+ },
94
+ "./select": {
95
+ "types": "./select.d.ts",
96
+ "import": "./select.js",
97
+ "default": "./select.js"
98
+ },
50
99
  "./preact": {
51
100
  "types": "./preact.d.ts",
52
101
  "import": "./preact.js",
@@ -335,6 +384,11 @@
335
384
  "import": "./color-palette/color-palette.js",
336
385
  "default": "./color-palette/color-palette.js"
337
386
  },
387
+ "./dropdown/control": {
388
+ "types": "./dropdown/control.d.ts",
389
+ "import": "./dropdown/control.js",
390
+ "default": "./dropdown/control.js"
391
+ },
338
392
  "./dropdown/index": {
339
393
  "types": "./dropdown/index.d.ts",
340
394
  "import": "./dropdown/index.js",
@@ -522,6 +576,36 @@
522
576
  "import": "./field-reorder.js",
523
577
  "default": "./field-reorder.js"
524
578
  },
579
+ "./configurator-actions": {
580
+ "types": "./configurator-actions.d.ts",
581
+ "import": "./configurator-actions.js",
582
+ "default": "./configurator-actions.js"
583
+ },
584
+ "./configurator-field-icon": {
585
+ "types": "./configurator-field-icon.d.ts",
586
+ "import": "./configurator-field-icon.js",
587
+ "default": "./configurator-field-icon.js"
588
+ },
589
+ "./configurator-sections": {
590
+ "types": "./configurator-sections.d.ts",
591
+ "import": "./configurator-sections.js",
592
+ "default": "./configurator-sections.js"
593
+ },
594
+ "./configurator-focus": {
595
+ "types": "./configurator-focus.d.ts",
596
+ "import": "./configurator-focus.js",
597
+ "default": "./configurator-focus.js"
598
+ },
599
+ "./configurator-aggregation-list": {
600
+ "types": "./configurator-aggregation-list.d.ts",
601
+ "import": "./configurator-aggregation-list.js",
602
+ "default": "./configurator-aggregation-list.js"
603
+ },
604
+ "./configurator-drop-zone": {
605
+ "types": "./configurator-drop-zone.d.ts",
606
+ "import": "./configurator-drop-zone.js",
607
+ "default": "./configurator-drop-zone.js"
608
+ },
525
609
  "./field-configurator": {
526
610
  "types": "./field-configurator.d.ts",
527
611
  "import": "./field-configurator.js",
@@ -708,17 +792,7 @@
708
792
  "**/*.scss",
709
793
  "**/*.css"
710
794
  ],
711
- "dependencies": {
712
- "@lexical/code": "^0.52.0",
713
- "@lexical/history": "^0.52.0",
714
- "@lexical/link": "^0.52.0",
715
- "@lexical/list": "^0.52.0",
716
- "@lexical/markdown": "^0.52.0",
717
- "@lexical/rich-text": "^0.52.0",
718
- "@lexical/selection": "^0.52.0",
719
- "@lexical/utils": "^0.52.0",
720
- "lexical": "^0.52.0"
721
- },
795
+ "dependencies": {},
722
796
  "peerDependencies": {
723
797
  "react": ">=18",
724
798
  "vue": "^3.5.0",
package/pagination.d.ts CHANGED
@@ -42,6 +42,9 @@ export declare class PaginationPanel<T = any> {
42
42
  private loading;
43
43
  private totalPages;
44
44
  private locales;
45
+ private selector?;
46
+ private readonly selectorRef;
47
+ private selectorProps;
45
48
  refresh?: () => void;
46
49
  constructor(config: PaginationViewConfig, onPageChange: (page: number) => void, h: PaginationElementFactory<T>);
47
50
  setLoading(loading: boolean): void;
package/pagination.js CHANGED
@@ -1,7 +1,8 @@
1
1
  import { controlClassName as e } from "./control-attributes.js";
2
2
  import { renderControl as t } from "./control-presentation.js";
3
+ import { t as n } from "./_chunks/control-Dcrjsunl.js";
3
4
  //#region src/pagination.ts
4
- function n(e, t, n = 5) {
5
+ function r(e, t, n = 5) {
5
6
  let r = Math.max(0, Math.floor(t));
6
7
  if (!Number.isFinite(r) || !r) return [];
7
8
  let i = Math.min(r, Math.max(1, Math.floor(n) || 5)), a = Math.min(r - 1, Math.max(0, Math.floor(e) || 0)), o = Math.min(Math.max(0, a - Math.floor(i / 2)), r - i), s = /* @__PURE__ */ new Set([0, r - 1]);
@@ -10,7 +11,7 @@ function n(e, t, n = 5) {
10
11
  for (let e of [...s].sort((e, t) => e - t)) l >= 0 && e - l === 2 ? c.push(l + 1) : l >= 0 && e - l > 2 && c.push("ellipsis"), c.push(e), l = e;
11
12
  return c;
12
13
  }
13
- function r(n, r) {
14
+ function i(n, r) {
14
15
  return t(n, "button", {
15
16
  class: e("rv-button small rv-pagination-button rv-btn-ghost", {
16
17
  "rv-pagination-button--icon": !!r.kind,
@@ -41,7 +42,7 @@ function r(n, r) {
41
42
  "aria-hidden": "true"
42
43
  }, r.text)] : [r.text]);
43
44
  }
44
- var i = class {
45
+ var a = class {
45
46
  onPageChange;
46
47
  h;
47
48
  config = {
@@ -62,6 +63,21 @@ var i = class {
62
63
  items: "items",
63
64
  loading: "Loading…"
64
65
  };
66
+ selector;
67
+ selectorRef = (e) => {
68
+ e ? this.selector || (this.selector = n(e.ownerDocument, this.selectorProps()), e.append(this.selector.element)) : (this.selector?.destroy(), this.selector = void 0);
69
+ };
70
+ selectorProps() {
71
+ return {
72
+ config: { ariaLabel: this.locales.page },
73
+ value: String(this.currentPage),
74
+ source: Array.from({ length: this.totalPages }, (e, t) => ({
75
+ value: String(t),
76
+ label: String(t + 1)
77
+ })),
78
+ onChange: (e) => this.setPage(Number(e))
79
+ };
80
+ }
65
81
  refresh;
66
82
  constructor(e, t, n) {
67
83
  this.onPageChange = t, this.h = n, this.update(e);
@@ -76,77 +92,71 @@ var i = class {
76
92
  let n = Math.max(0, this.totalPages - 1), r = Math.min(Math.max(0, e), n);
77
93
  this.currentPage = r, this.refresh?.(), t && this.onPageChange(this.currentPage);
78
94
  }
79
- createButton(e, t, n) {
80
- let i = {
95
+ createButton(e, t, n, r) {
96
+ let a = {
81
97
  first: "«",
82
98
  previous: "‹",
83
99
  next: "›",
84
100
  last: "»"
85
- }, a = Object.keys(i).find((t) => i[t] === e), o = a ? {
101
+ }[r] === e ? {
86
102
  first: "First page",
87
103
  previous: "Previous page",
88
104
  next: "Next page",
89
105
  last: "Last page"
90
- }[a] : e;
91
- return r(this.h, {
106
+ }[r] : e;
107
+ return i(this.h, {
92
108
  text: e,
93
- label: o,
94
- kind: a,
109
+ label: a,
110
+ kind: r,
95
111
  disabled: n,
96
112
  onClick: () => t.call(this)
97
113
  });
98
114
  }
99
115
  render() {
100
- let e = this.h, i = [];
116
+ this.selector?.update(this.selectorProps());
117
+ let e = this.h, t = [];
101
118
  if (this.config.navigation !== !1) {
102
- if (i.push(...this.config.boundaryButtons === !1 ? [] : [this.createButton(this.locales.first, () => {
119
+ if (t.push(...this.config.boundaryButtons === !1 ? [] : [this.createButton(this.locales.first, () => {
103
120
  this.currentPage > 0 && this.setPage(0);
104
- }, this.currentPage === 0)], this.createButton(this.locales.previous, () => {
121
+ }, this.currentPage === 0, "first")], this.createButton(this.locales.previous, () => {
105
122
  this.currentPage > 0 && this.setPage(this.currentPage - 1);
106
- }, this.currentPage === 0)), this.config.buttonCount) for (let t of n(this.currentPage, this.totalPages, this.config.buttonCount)) t === "ellipsis" ? i.push(e("span", {
123
+ }, this.currentPage === 0, "previous")), this.config.buttonCount) for (let n of r(this.currentPage, this.totalPages, this.config.buttonCount)) n === "ellipsis" ? t.push(e("span", {
107
124
  class: "rv-pagination-ellipsis",
108
125
  "aria-hidden": "true"
109
- }, "…")) : i.push(r(e, {
110
- text: String(t + 1),
111
- label: `${this.locales.page} ${t + 1}`,
112
- active: t === this.currentPage,
113
- disabled: t === this.currentPage,
114
- onClick: () => this.setPage(t)
126
+ }, "…")) : t.push(i(e, {
127
+ text: String(n + 1),
128
+ label: `${this.locales.page} ${n + 1}`,
129
+ active: n === this.currentPage,
130
+ disabled: n === this.currentPage,
131
+ onClick: () => this.setPage(n)
115
132
  }));
116
- i.push(this.createButton(this.locales.next, () => {
133
+ t.push(this.createButton(this.locales.next, () => {
117
134
  this.currentPage < this.totalPages - 1 && this.setPage(this.currentPage + 1);
118
- }, this.currentPage >= this.totalPages - 1), ...this.config.boundaryButtons === !1 ? [] : [this.createButton(this.locales.last, () => {
135
+ }, this.currentPage >= this.totalPages - 1, "next"), ...this.config.boundaryButtons === !1 ? [] : [this.createButton(this.locales.last, () => {
119
136
  this.setPage(this.totalPages - 1);
120
- }, this.currentPage >= this.totalPages - 1)]);
137
+ }, this.currentPage >= this.totalPages - 1, "last")]);
121
138
  }
122
139
  if (this.totalPages > 1) {
123
140
  let n = [];
124
- this.config.info !== !1 && n.push(e("span", { class: "rv-pagination-label" }, this.locales.page)), n.push(t(e, "select", {
125
- "aria-label": this.locales.page,
126
- value: String(this.currentPage),
127
- onChange: (e) => {
128
- let t = e.target;
129
- this.setPage(parseInt(t.value, 10));
130
- }
131
- }, Array(this.totalPages).fill(null).map((t, n) => e("option", {
132
- value: n,
133
- selected: n === this.currentPage
134
- }, (n + 1).toString())))), this.config.info !== !1 && n.push(e("span", null, ` ${this.locales.of} ${this.totalPages}`)), i.push(e("span", { class: "rv-pagination-selector" }, n));
141
+ this.config.info !== !1 && n.push(e("span", { class: "rv-pagination-label" }, this.locales.page)), n.push(e("span", {
142
+ class: "rv-pagination-dropdown",
143
+ ref: this.selectorRef
144
+ })), this.config.info !== !1 && n.push(e("span", null, ` ${this.locales.of} ${this.totalPages}`)), t.push(e("span", { class: "rv-pagination-selector" }, n));
135
145
  }
136
- this.loading && i.push(e("span", {
146
+ this.loading && t.push(e("span", {
137
147
  role: "status",
138
148
  "aria-live": "polite"
139
149
  }, this.locales.loading));
140
- let a = [];
150
+ let n = [];
141
151
  if (this.config.totalInfo !== !1) {
142
- let t = this.config.total > 0 && this.config.itemsPerPage > 0 ? this.currentPage * this.config.itemsPerPage + 1 : 0, n = Math.min((this.currentPage + 1) * this.config.itemsPerPage, this.config.total);
143
- a.push(e("span", { dir: "auto" }, `${t}-${n} ${this.locales.of} ${this.config.total} ${this.locales.items}`));
152
+ let t = this.config.total > 0 && this.config.itemsPerPage > 0 ? this.currentPage * this.config.itemsPerPage + 1 : 0, r = Math.min((this.currentPage + 1) * this.config.itemsPerPage, this.config.total);
153
+ n.push(e("span", { dir: "auto" }, `${t}-${r} ${this.locales.of} ${this.config.total} ${this.locales.items}`));
144
154
  }
145
155
  return e("div", {
146
156
  class: "rv-pagination-panel",
147
157
  role: "navigation",
148
158
  "aria-label": this.locales.page
149
- }, [e("span", null, i), e("span", null, a)]);
159
+ }, [e("span", null, t), e("span", null, n)]);
150
160
  }
151
161
  update(e) {
152
162
  let t = e.itemsPerPage > 0 && Number.isFinite(e.total) ? Math.max(0, Math.ceil(e.total / e.itemsPerPage)) : 0;
@@ -157,4 +167,4 @@ var i = class {
157
167
  }
158
168
  };
159
169
  //#endregion
160
- export { i as PaginationPanel, n as paginationItems, r as renderPaginationButton };
170
+ export { a as PaginationPanel, r as paginationItems, i as renderPaginationButton };
@@ -1,7 +1,7 @@
1
1
  import { h } from '../_vendor/preact/src/index';
2
2
  import { PdfViewerText } from './translations';
3
3
  import { PdfViewerState } from './types';
4
- export declare function PdfViewerHeader({ state, text, onCancelPrint, showDetails }: {
4
+ export declare function PdfViewerHeader({ state, text, onCancelPrint, showDetails, }: {
5
5
  showDetails?: boolean;
6
6
  state: Readonly<PdfViewerState>;
7
7
  text: PdfViewerText;
@@ -1,9 +1,9 @@
1
1
  import { PdfViewerProps } from './component';
2
2
  import { PdfViewerController } from './controller';
3
- export { PdfViewer, defaultPdfViewerText, type PdfViewerProps, type PdfViewerText } from './component';
3
+ export { PdfViewer, defaultPdfViewerText, type PdfViewerProps, type PdfViewerText, } from './component';
4
4
  export { PdfViewerController } from './controller';
5
5
  export type * from './types';
6
6
  /** Mount the shared viewer in a native host. Call destroy to unmount and release PDF resources. */
7
7
  export declare function createPdfViewer(host: HTMLElement, options: PdfViewerProps): PdfViewerController;
8
8
  export { PdfViewerToolbar, type PdfViewerToolbarProps } from './toolbar';
9
- export type { PdfViewerButton, PdfViewerButtonOptions, PdfViewerToolbarOptions, PdfViewerToolbarConfig } from './toolbar-options';
9
+ export type { PdfViewerButton, PdfViewerButtonOptions, PdfViewerToolbarOptions, PdfViewerToolbarConfig, } from './toolbar-options';
@@ -1,6 +1,6 @@
1
1
  import { c as e } from "../_chunks/preact.module-BBM36DnO.js";
2
2
  import { renderPreactInto as t } from "../preact-mount.js";
3
- import { i as n, n as r, r as i, t as a } from "../_chunks/component-YDcfoOLz.js";
3
+ import { i as n, n as r, r as i, t as a } from "../_chunks/component-CfeHXgIw.js";
4
4
  import { t as o } from "../_chunks/controller-hRBm_Lfz.js";
5
5
  //#region src/pdf-viewer/index.tsx
6
6
  function s(n, i) {
@@ -2,7 +2,7 @@ import { h, RefObject } from '../_vendor/preact/src/index';
2
2
  import { PdfViewerText } from './translations';
3
3
  import { PdfViewerController } from './controller';
4
4
  import { PdfViewerState } from './types';
5
- export declare function PdfViewerSearchBar({ id, controller, state, text, onClose, inputRef: search }: {
5
+ export declare function PdfViewerSearchBar({ id, controller, state, text, onClose, inputRef: search, }: {
6
6
  inputRef: RefObject<HTMLInputElement>;
7
7
  id: string;
8
8
  controller: PdfViewerController;
@@ -2,7 +2,7 @@ import { h } from '../_vendor/preact/src/index';
2
2
  import { PdfViewerText } from './translations';
3
3
  import { PdfViewerController } from './controller';
4
4
  import { PdfViewerState } from './types';
5
- export declare function PdfViewerStatus({ state, text, controller, canOpen, onOpen }: {
5
+ export declare function PdfViewerStatus({ state, text, controller, canOpen, onOpen, }: {
6
6
  state: Readonly<PdfViewerState>;
7
7
  text: PdfViewerText;
8
8
  controller: PdfViewerController;
@@ -13,11 +13,33 @@
13
13
  color: var(--rv-ui-text);
14
14
  font: inherit;
15
15
  font-size: 13px;
16
- &__header { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 12px 16px; border-bottom: 1px solid var(--rv-ui-border); }
17
- &__document-icon { flex: 0 0 auto; color: var(--rv-ui-accent-text); }
18
- &__filename { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 500; }
19
- &__summary { margin-inline-start: auto; white-space: nowrap; color: var(--rv-ui-text-muted); font-variant-numeric: tabular-nums; }
20
- &__toolbar.rv-toolbar, &__search {
16
+ &__header {
17
+ display: flex;
18
+ align-items: center;
19
+ gap: 10px;
20
+ min-width: 0;
21
+ padding: 12px 16px;
22
+ border-bottom: 1px solid var(--rv-ui-border);
23
+ }
24
+ &__document-icon {
25
+ flex: 0 0 auto;
26
+ color: var(--rv-ui-accent-text);
27
+ }
28
+ &__filename {
29
+ min-width: 0;
30
+ overflow: hidden;
31
+ text-overflow: ellipsis;
32
+ white-space: nowrap;
33
+ font-weight: 500;
34
+ }
35
+ &__summary {
36
+ margin-inline-start: auto;
37
+ white-space: nowrap;
38
+ color: var(--rv-ui-text-muted);
39
+ font-variant-numeric: tabular-nums;
40
+ }
41
+ &__toolbar.rv-toolbar,
42
+ &__search {
21
43
  --rv-icon-size: 14px;
22
44
  --rv-icon-button-size: 32px;
23
45
  --rv-control-height: 32px;
@@ -25,56 +47,194 @@
25
47
  --rv-control-radius: 6px;
26
48
  --rv-ui-radius: 6px;
27
49
  font-size: 13px;
28
- :is(button, input, select) {
50
+ :is(button, input, .dropdown-trigger) {
29
51
  box-sizing: border-box;
30
52
  height: 32px;
31
53
  min-height: 32px;
32
- font-size: 13px;
54
+ font-size: var(--rv-control-font-size, 0.875rem);
33
55
  line-height: 18px;
34
56
  }
35
57
  }
36
- &__toolbar.rv-toolbar { width: 100%; box-sizing: border-box; box-shadow: none; display: flex; flex-wrap: wrap; gap: 4px 8px; padding: 8px 12px; border: 0; border-bottom: 1px solid var(--rv-ui-border); border-radius: 0; }
37
- &__toolbar.rv-toolbar .rv-toolbar-group { align-items: center; flex-wrap: nowrap; gap: 4px; padding-block: 0; }
38
- &__toolbar .rv-pagination { font-size: inherit; flex-wrap: nowrap; }
39
- &__zoom-select { position: relative; display: inline-flex; align-items: center; width: 112px; height: 32px; }
40
- &__zoom-select > .rv-svg-icon { position: absolute; inset-inline-end: 12px; top: 50%; transform: translateY(-50%); pointer-events: none; }
41
- &__toolbar &__zoom-select select { width: 100%; min-width: 0; background-image: none; }
42
- &__toolbar .rv-pdf-viewer__page-input { width: 54px; min-width: 0; text-align: center; font-variant-numeric: tabular-nums; }
43
- &__page-count { white-space: nowrap; color: var(--rv-ui-text-muted); font-variant-numeric: tabular-nums; }
44
- &__actions { margin-inline-start: auto; }
45
- &__toolbar .rv-pdf-viewer__more { display: none; }
46
- &__menu { display: grid; gap: 2px; }
47
- &__menu .rv-svg-icon { flex: 0 0 auto; }
48
- &__search { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; padding: 8px 12px; border-bottom: 1px solid var(--rv-ui-border); }
49
- &__search .rv-search-input { flex: 1 1 180px; min-width: 0; }
50
- &__find-controls { display: flex; flex: 0 0 auto; align-items: center; gap: 4px; }
51
- &__search .rv-control { min-width: 0; width: 100%; }
52
- &__matches { color: var(--rv-ui-text-muted); min-width: 64px; margin-inline-end: auto; font-size: 12px; }
53
- &__body { position: relative; flex: 1; min-height: 0; background: var(--rv-ui-canvas); }
54
- &__viewport { position: absolute; inset: 0; overflow: auto; overscroll-behavior: contain; }
55
- &__viewport:focus-visible { outline: 2px solid var(--rv-ui-accent); outline-offset: -2px; }
56
- &__viewport .pdfViewer { padding-block: 16px; }
57
- &__viewport .pdfViewer .page { background: white; }
58
- &__status { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 24px; text-align: center; color: var(--rv-ui-text-muted); overflow: auto; }
59
- &__status .rv-empty-state { border: 0; background: none; }
60
- &__status .rv-empty-state p { margin: 10px 0 16px; }
61
- &__status .rv-alert { max-width: 100%; text-align: start; overflow-wrap: anywhere; }
62
- &__status strong { color: var(--rv-ui-text); font-size: 16px; font-weight: 500; }
63
- &__error { padding: 8px 12px; color: var(--rv-ui-danger); background: var(--rv-ui-danger-surface); }
58
+ &__toolbar.rv-toolbar {
59
+ width: 100%;
60
+ box-sizing: border-box;
61
+ box-shadow: none;
62
+ display: flex;
63
+ flex-wrap: wrap;
64
+ gap: 4px 8px;
65
+ padding: 8px 12px;
66
+ border: 0;
67
+ border-bottom: 1px solid var(--rv-ui-border);
68
+ border-radius: 0;
69
+ }
70
+ &__toolbar.rv-toolbar .rv-toolbar-group {
71
+ align-items: center;
72
+ flex-wrap: nowrap;
73
+ gap: 4px;
74
+ padding-block: 0;
75
+ }
76
+ &__toolbar .rv-pagination {
77
+ font-size: inherit;
78
+ flex-wrap: nowrap;
79
+ }
80
+ &__zoom-select {
81
+ position: relative;
82
+ display: inline-flex;
83
+ align-items: center;
84
+ width: 112px;
85
+ height: 32px;
86
+ }
87
+ &__toolbar &__zoom-select .dropdown-container {
88
+ width: 100%;
89
+ min-width: 0;
90
+ background-image: none;
91
+ }
92
+ &__toolbar .rv-pdf-viewer__page-input {
93
+ width: 54px;
94
+ min-width: 0;
95
+ text-align: center;
96
+ font-variant-numeric: tabular-nums;
97
+ }
98
+ &__page-count {
99
+ white-space: nowrap;
100
+ color: var(--rv-ui-text-muted);
101
+ font-variant-numeric: tabular-nums;
102
+ }
103
+ &__actions {
104
+ margin-inline-start: auto;
105
+ }
106
+ &__toolbar .rv-pdf-viewer__more {
107
+ display: none;
108
+ }
109
+ &__menu {
110
+ display: grid;
111
+ gap: 2px;
112
+ }
113
+ &__menu .rv-svg-icon {
114
+ flex: 0 0 auto;
115
+ }
116
+ &__search {
117
+ display: flex;
118
+ flex-wrap: wrap;
119
+ align-items: center;
120
+ gap: 6px;
121
+ padding: 8px 12px;
122
+ border-bottom: 1px solid var(--rv-ui-border);
123
+ }
124
+ &__search .rv-search-input {
125
+ flex: 1 1 180px;
126
+ min-width: 0;
127
+ }
128
+ &__find-controls {
129
+ display: flex;
130
+ flex: 0 0 auto;
131
+ align-items: center;
132
+ gap: 4px;
133
+ }
134
+ &__search .rv-control {
135
+ min-width: 0;
136
+ width: 100%;
137
+ }
138
+ &__matches {
139
+ color: var(--rv-ui-text-muted);
140
+ min-width: 64px;
141
+ margin-inline-end: auto;
142
+ font-size: 12px;
143
+ }
144
+ &__body {
145
+ position: relative;
146
+ flex: 1;
147
+ min-height: 0;
148
+ background: var(--rv-ui-canvas);
149
+ }
150
+ &__viewport {
151
+ position: absolute;
152
+ inset: 0;
153
+ overflow: auto;
154
+ overscroll-behavior: contain;
155
+ }
156
+ &__viewport:focus-visible {
157
+ outline: 2px solid var(--rv-ui-accent);
158
+ outline-offset: -2px;
159
+ }
160
+ &__viewport .pdfViewer {
161
+ padding-block: 16px;
162
+ }
163
+ &__viewport .pdfViewer .page {
164
+ background: white;
165
+ }
166
+ &__status {
167
+ position: absolute;
168
+ inset: 0;
169
+ display: flex;
170
+ flex-direction: column;
171
+ align-items: center;
172
+ justify-content: center;
173
+ gap: 12px;
174
+ padding: 24px;
175
+ text-align: center;
176
+ color: var(--rv-ui-text-muted);
177
+ overflow: auto;
178
+ }
179
+ &__status .rv-empty-state {
180
+ border: 0;
181
+ background: none;
182
+ }
183
+ &__status .rv-empty-state p {
184
+ margin: 10px 0 16px;
185
+ }
186
+ &__status .rv-alert {
187
+ max-width: 100%;
188
+ text-align: start;
189
+ overflow-wrap: anywhere;
190
+ }
191
+ &__status strong {
192
+ color: var(--rv-ui-text);
193
+ font-size: 16px;
194
+ font-weight: 500;
195
+ }
196
+ &__error {
197
+ padding: 8px 12px;
198
+ color: var(--rv-ui-danger);
199
+ background: var(--rv-ui-danger-surface);
200
+ }
64
201
  @container (max-width: 560px) {
65
- &__toolbar .rv-pdf-viewer__desktop-actions { display: none; }
66
- &__toolbar .rv-pdf-viewer__more { display: flex; margin-inline-start: auto; }
67
- &__search .rv-search-input { flex-basis: 100%; }
68
- &__find-controls { width: 100%; }
69
- &__status .rv-alert--with-actions { grid-template-columns: minmax(0, 1fr); row-gap: 12px; }
70
- &__status .rv-alert__actions { flex-wrap: wrap; }
202
+ &__toolbar .rv-pdf-viewer__desktop-actions {
203
+ display: none;
204
+ }
205
+ &__toolbar .rv-pdf-viewer__more {
206
+ display: flex;
207
+ margin-inline-start: auto;
208
+ }
209
+ &__search .rv-search-input {
210
+ flex-basis: 100%;
211
+ }
212
+ &__find-controls {
213
+ width: 100%;
214
+ }
215
+ &__status .rv-alert--with-actions {
216
+ grid-template-columns: minmax(0, 1fr);
217
+ row-gap: 12px;
218
+ }
219
+ &__status .rv-alert__actions {
220
+ flex-wrap: wrap;
221
+ }
71
222
  }
72
223
  @container (max-width: 360px) {
73
- &__open-label { display: none; }
224
+ &__open-label {
225
+ display: none;
226
+ }
74
227
  }
75
228
  @container (max-width: 480px) {
76
- &__toolbar.rv-toolbar { padding: 6px; gap: 4px; }
77
- &__header { padding: 10px; }
78
- &__summary { font-size: 11px; }
229
+ &__toolbar.rv-toolbar {
230
+ padding: 6px;
231
+ gap: 4px;
232
+ }
233
+ &__header {
234
+ padding: 10px;
235
+ }
236
+ &__summary {
237
+ font-size: 11px;
238
+ }
79
239
  }
80
240
  }
package/pickers.d.ts CHANGED
@@ -14,12 +14,16 @@ export interface PopoverProps {
14
14
  /** Optional mount scope for inherited theme tokens and text direction. */
15
15
  appendTo?: HTMLElement;
16
16
  onClose: () => void;
17
+ /** Close on pointer presses outside the anchor and content. Defaults to true. */
18
+ closeOnOutside?: boolean;
19
+ /** Close on Escape. Defaults to true. */
20
+ closeOnEscape?: boolean;
17
21
  children?: ComponentChildren;
18
22
  label?: string;
19
23
  className?: string;
20
24
  role?: 'dialog' | 'menu';
21
25
  }
22
- export declare function Popover({ open, anchor, appendTo, onClose, children, label, className, role, }: PopoverProps): h.JSX.Element;
26
+ export declare function Popover({ open, anchor, appendTo, closeOnOutside, closeOnEscape, onClose, children, label, className, role, }: PopoverProps): h.JSX.Element;
23
27
  export declare function Tooltip({ text, children, }: {
24
28
  text: string;
25
29
  children: ComponentChildren;
package/preact-mount.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { a as e, r as t } from "./_chunks/preact.module-BBM36DnO.js";
2
- //#region src/preact-mount.tsx
2
+ //#region src/preact-mount.ts
3
3
  var n = /* @__PURE__ */ new WeakMap();
4
4
  function r(r, i, a) {
5
5
  let s = r.createDocumentFragment();