@mantine/core 7.0.0-alpha.14 → 7.0.0-alpha.15

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 (128) hide show
  1. package/cjs/components/Accordion/Accordion.context.js +13 -0
  2. package/cjs/components/Accordion/Accordion.context.js.map +1 -0
  3. package/cjs/components/Accordion/Accordion.js +182 -0
  4. package/cjs/components/Accordion/Accordion.js.map +1 -0
  5. package/cjs/components/Accordion/Accordion.module.css.js +8 -0
  6. package/cjs/components/Accordion/Accordion.module.css.js.map +1 -0
  7. package/cjs/components/Accordion/AccordionChevron.js +67 -0
  8. package/cjs/components/Accordion/AccordionChevron.js.map +1 -0
  9. package/cjs/components/Accordion/AccordionControl/AccordionControl.js +134 -0
  10. package/cjs/components/Accordion/AccordionControl/AccordionControl.js.map +1 -0
  11. package/cjs/components/Accordion/AccordionItem/AccordionItem.js +65 -0
  12. package/cjs/components/Accordion/AccordionItem/AccordionItem.js.map +1 -0
  13. package/cjs/components/Accordion/AccordionItem.context.js +11 -0
  14. package/cjs/components/Accordion/AccordionItem.context.js.map +1 -0
  15. package/cjs/components/Accordion/AccordionPanel/AccordionPanel.js +75 -0
  16. package/cjs/components/Accordion/AccordionPanel/AccordionPanel.js.map +1 -0
  17. package/cjs/components/ActionIcon/ActionIcon.js +1 -1
  18. package/cjs/components/ActionIcon/ActionIcon.js.map +1 -1
  19. package/cjs/components/ActionIcon/ActionIconGroup/ActionIconGroup.js +1 -1
  20. package/cjs/components/Center/Center.js +1 -1
  21. package/cjs/components/Center/Center.js.map +1 -1
  22. package/cjs/components/Checkbox/CheckIcon.js +24 -12
  23. package/cjs/components/Checkbox/CheckIcon.js.map +1 -1
  24. package/cjs/components/Combobox/Combobox.js +4 -0
  25. package/cjs/components/Combobox/Combobox.js.map +1 -1
  26. package/cjs/components/Combobox/Combobox.module.css.js +1 -1
  27. package/cjs/components/Combobox/ComboboxFooter/ComboboxFooter.js +63 -0
  28. package/cjs/components/Combobox/ComboboxFooter/ComboboxFooter.js.map +1 -0
  29. package/cjs/components/Combobox/ComboboxHeader/ComboboxHeader.js +63 -0
  30. package/cjs/components/Combobox/ComboboxHeader/ComboboxHeader.js.map +1 -0
  31. package/cjs/components/Combobox/ComboboxSearch/ComboboxSearch.js +1 -0
  32. package/cjs/components/Combobox/ComboboxSearch/ComboboxSearch.js.map +1 -1
  33. package/cjs/components/Combobox/ComboboxTarget/ComboboxTarget.js +3 -5
  34. package/cjs/components/Combobox/ComboboxTarget/ComboboxTarget.js.map +1 -1
  35. package/cjs/components/Combobox/use-combobox/use-combobox.js +102 -66
  36. package/cjs/components/Combobox/use-combobox/use-combobox.js.map +1 -1
  37. package/cjs/components/Combobox/use-combobox/use-virtualized-combobox.js +2 -0
  38. package/cjs/components/Combobox/use-combobox/use-virtualized-combobox.js.map +1 -1
  39. package/cjs/components/Combobox/use-combobox-target-props/use-combobox-target-props.js +14 -4
  40. package/cjs/components/Combobox/use-combobox-target-props/use-combobox-target-props.js.map +1 -1
  41. package/cjs/components/InputBase/InputBase.js.map +1 -1
  42. package/cjs/components/Loader/Loader.js +2 -2
  43. package/cjs/components/Tabs/Tabs.js +1 -1
  44. package/cjs/components/Tabs/TabsTab/TabsTab.js +1 -1
  45. package/cjs/index.css +263 -12
  46. package/cjs/index.js +14 -4
  47. package/cjs/index.js.map +1 -1
  48. package/esm/components/Accordion/Accordion.context.js +8 -0
  49. package/esm/components/Accordion/Accordion.context.js.map +1 -0
  50. package/esm/components/Accordion/Accordion.js +174 -0
  51. package/esm/components/Accordion/Accordion.js.map +1 -0
  52. package/esm/components/Accordion/Accordion.module.css.js +4 -0
  53. package/esm/components/Accordion/Accordion.module.css.js.map +1 -0
  54. package/esm/components/Accordion/AccordionChevron.js +59 -0
  55. package/esm/components/Accordion/AccordionChevron.js.map +1 -0
  56. package/esm/components/Accordion/AccordionControl/AccordionControl.js +126 -0
  57. package/esm/components/Accordion/AccordionControl/AccordionControl.js.map +1 -0
  58. package/esm/components/Accordion/AccordionItem/AccordionItem.js +57 -0
  59. package/esm/components/Accordion/AccordionItem/AccordionItem.js.map +1 -0
  60. package/esm/components/Accordion/AccordionItem.context.js +6 -0
  61. package/esm/components/Accordion/AccordionItem.context.js.map +1 -0
  62. package/esm/components/Accordion/AccordionPanel/AccordionPanel.js +67 -0
  63. package/esm/components/Accordion/AccordionPanel/AccordionPanel.js.map +1 -0
  64. package/esm/components/ActionIcon/ActionIcon.js +1 -1
  65. package/esm/components/ActionIcon/ActionIcon.js.map +1 -1
  66. package/esm/components/ActionIcon/ActionIconGroup/ActionIconGroup.js +1 -1
  67. package/esm/components/Center/Center.js +1 -1
  68. package/esm/components/Center/Center.js.map +1 -1
  69. package/esm/components/Checkbox/CheckIcon.js +24 -12
  70. package/esm/components/Checkbox/CheckIcon.js.map +1 -1
  71. package/esm/components/Combobox/Combobox.js +4 -0
  72. package/esm/components/Combobox/Combobox.js.map +1 -1
  73. package/esm/components/Combobox/Combobox.module.css.js +1 -1
  74. package/esm/components/Combobox/ComboboxFooter/ComboboxFooter.js +55 -0
  75. package/esm/components/Combobox/ComboboxFooter/ComboboxFooter.js.map +1 -0
  76. package/esm/components/Combobox/ComboboxHeader/ComboboxHeader.js +55 -0
  77. package/esm/components/Combobox/ComboboxHeader/ComboboxHeader.js.map +1 -0
  78. package/esm/components/Combobox/ComboboxSearch/ComboboxSearch.js +1 -0
  79. package/esm/components/Combobox/ComboboxSearch/ComboboxSearch.js.map +1 -1
  80. package/esm/components/Combobox/ComboboxTarget/ComboboxTarget.js +3 -5
  81. package/esm/components/Combobox/ComboboxTarget/ComboboxTarget.js.map +1 -1
  82. package/esm/components/Combobox/use-combobox/use-combobox.js +103 -67
  83. package/esm/components/Combobox/use-combobox/use-combobox.js.map +1 -1
  84. package/esm/components/Combobox/use-combobox/use-virtualized-combobox.js +2 -0
  85. package/esm/components/Combobox/use-combobox/use-virtualized-combobox.js.map +1 -1
  86. package/esm/components/Combobox/use-combobox-target-props/use-combobox-target-props.js +14 -4
  87. package/esm/components/Combobox/use-combobox-target-props/use-combobox-target-props.js.map +1 -1
  88. package/esm/components/InputBase/InputBase.js.map +1 -1
  89. package/esm/components/Loader/Loader.js +2 -2
  90. package/esm/components/Tabs/Tabs.js +1 -1
  91. package/esm/components/Tabs/TabsTab/TabsTab.js +1 -1
  92. package/esm/index.css +263 -12
  93. package/esm/index.js +7 -2
  94. package/esm/index.js.map +1 -1
  95. package/lib/components/Accordion/Accordion.context.d.ts +23 -0
  96. package/lib/components/Accordion/Accordion.d.ts +73 -0
  97. package/lib/components/Accordion/Accordion.types.d.ts +3 -0
  98. package/lib/components/Accordion/AccordionChevron.d.ts +9 -0
  99. package/lib/components/Accordion/AccordionControl/AccordionControl.d.ts +25 -0
  100. package/lib/components/Accordion/AccordionItem/AccordionItem.d.ts +18 -0
  101. package/lib/components/Accordion/AccordionItem.context.d.ts +9 -0
  102. package/lib/components/Accordion/AccordionPanel/AccordionPanel.d.ts +16 -0
  103. package/lib/components/Accordion/index.d.ts +11 -0
  104. package/lib/components/ActionIcon/ActionIcon.d.ts +2 -2
  105. package/lib/components/Checkbox/CheckIcon.d.ts +4 -1
  106. package/lib/components/Checkbox/index.d.ts +1 -1
  107. package/lib/components/ColorPicker/ColorPicker.context.d.ts +1 -0
  108. package/lib/components/Combobox/Combobox.context.d.ts +1 -0
  109. package/lib/components/Combobox/Combobox.d.ts +17 -1
  110. package/lib/components/Combobox/ComboboxFooter/ComboboxFooter.d.ts +16 -0
  111. package/lib/components/Combobox/ComboboxHeader/ComboboxHeader.d.ts +16 -0
  112. package/lib/components/Combobox/ComboboxTarget/ComboboxTarget.d.ts +5 -0
  113. package/lib/components/Combobox/index.d.ts +1 -1
  114. package/lib/components/Combobox/use-combobox/use-combobox.d.ts +12 -8
  115. package/lib/components/Combobox/use-combobox-target-props/use-combobox-target-props.d.ts +2 -1
  116. package/lib/components/Input/use-input-props.d.ts +65 -64
  117. package/lib/components/InputBase/InputBase.d.ts +2 -0
  118. package/lib/components/ModalBase/use-modal.d.ts +1 -0
  119. package/lib/components/ScrollArea/ScrollArea.context.d.ts +1 -0
  120. package/lib/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.context.d.ts +1 -0
  121. package/lib/components/Slider/Slider.context.d.ts +1 -0
  122. package/lib/components/Table/Table.context.d.ts +1 -0
  123. package/lib/components/Tabs/Tabs.context.d.ts +1 -0
  124. package/lib/components/Tooltip/TooltipFloating/use-floating-tooltip.d.ts +1 -0
  125. package/lib/components/UnstyledButton/UnstyledButton.d.ts +1 -1
  126. package/lib/components/index.d.ts +3 -2
  127. package/lib/core/Box/Box.d.ts +1 -1
  128. package/package.json +2 -2
@@ -5,10 +5,10 @@ import { TabsList } from './TabsList/TabsList.js';
5
5
  import { TabsPanel } from './TabsPanel/TabsPanel.js';
6
6
  import { TabsTab } from './TabsTab/TabsTab.js';
7
7
  import classes from './Tabs.module.css.js';
8
- import { getSafeId } from '../../core/utils/get-safe-id/get-safe-id.js';
9
8
  import { factory } from '../../core/factory/factory.js';
10
9
  import { useProps } from '../../core/MantineProvider/use-props/use-props.js';
11
10
  import { useStyles } from '../../core/styles-api/use-styles/use-styles.js';
11
+ import { getSafeId } from '../../core/utils/get-safe-id/get-safe-id.js';
12
12
  import { Box } from '../../core/Box/Box.js';
13
13
  import { createVarsResolver } from '../../core/styles-api/create-vars-resolver/create-vars-resolver.js';
14
14
  import { getRadius } from '../../core/utils/get-size/get-size.js';
@@ -2,12 +2,12 @@ import React from 'react';
2
2
  import { useTabsContext } from '../Tabs.context.js';
3
3
  import classes from '../Tabs.module.css.js';
4
4
  import { UnstyledButton } from '../../UnstyledButton/UnstyledButton.js';
5
- import { createScopedKeydownHandler } from '../../../core/utils/create-scoped-keydown-handler/create-scoped-keydown-handler.js';
6
5
  import { factory } from '../../../core/factory/factory.js';
7
6
  import { useProps } from '../../../core/MantineProvider/use-props/use-props.js';
8
7
  import { useMantineTheme } from '../../../core/MantineProvider/MantineThemeProvider/MantineThemeProvider.js';
9
8
  import { useDirection } from '../../../core/DirectionProvider/DirectionProvider.js';
10
9
  import { getThemeColor } from '../../../core/MantineProvider/color-functions/get-theme-color/get-theme-color.js';
10
+ import { createScopedKeydownHandler } from '../../../core/utils/create-scoped-keydown-handler/create-scoped-keydown-handler.js';
11
11
 
12
12
  var __defProp = Object.defineProperty;
13
13
  var __defProps = Object.defineProperties;
package/esm/index.css CHANGED
@@ -547,6 +547,240 @@ body {
547
547
  -webkit-tap-highlight-color: transparent;
548
548
  }
549
549
 
550
+ .mantine-27MenJe {
551
+ border: 0;
552
+ clip: rect(0 0 0 0);
553
+ height: 1px;
554
+ width: 1px;
555
+ margin: -1px;
556
+ overflow: hidden;
557
+ padding: 0;
558
+ position: absolute;
559
+ white-space: nowrap;
560
+ }
561
+
562
+ .mantine-BsW-DHJ {
563
+ word-break: break-word;
564
+ }
565
+
566
+ .mantine-crxTXa8 {
567
+ padding: var(--mantine-spacing-md);
568
+ padding-top: calc(var(--mantine-spacing-xs) / 2);
569
+ }
570
+
571
+ .mantine-Pl85DwB {
572
+ margin: 0;
573
+ padding: 0;
574
+ }
575
+
576
+ .mantine-GdbdUfZ {
577
+ width: 100%;
578
+ display: flex;
579
+ align-items: center;
580
+ flex-direction: var(--_control-flex-direction, row-reverse);
581
+ padding-right: var(--_control-padding-right, var(--mantine-spacing-md));
582
+ padding-left: var(--_control-padding-left, var(--mantine-spacing-md));
583
+ text-align: left;
584
+ color: var(--_control-color);
585
+ opacity: var(--_control-opacity, 1);
586
+ cursor: var(--_control-cursor, pointer);
587
+ background-color: var(--_control-background-color, transparent);
588
+ }
589
+
590
+ .mantine-GdbdUfZ[data-chevron-position='left'] {
591
+ --_control-flex-direction: row;
592
+ --_control-padding-left: 0;
593
+ }
594
+
595
+ [dir="rtl"] .mantine-GdbdUfZ[data-chevron-position='left'] {
596
+ --_control-padding-left: var(--mantine-spacing-md);
597
+ }
598
+
599
+ [data-mantine-color-scheme='light'] .mantine-GdbdUfZ {
600
+ --_control-color: var(--mantine-color-black);
601
+ }
602
+
603
+ [data-mantine-color-scheme='dark'] .mantine-GdbdUfZ {
604
+ --_control-color: var(--mantine-color-dark-0);
605
+ }
606
+
607
+ .mantine-GdbdUfZ:disabled,
608
+ .mantine-GdbdUfZ[data-disabled] {
609
+ --_control-opacity: 0.4;
610
+ --_control-cursor: not-allowed;
611
+ }
612
+
613
+ @media (hover: hover) {
614
+ [data-mantine-color-scheme='light'] .mantine-NYL8sTC:not(:disabled, [data-disabled]):hover, [data-mantine-color-scheme='light'] .mantine-2ff9CY2:not(:disabled, [data-disabled]):hover {
615
+ --_control-background-color: var(--mantine-color-gray-0);
616
+ }
617
+
618
+ [data-mantine-color-scheme='dark'] .mantine-NYL8sTC:not(:disabled, [data-disabled]):hover, [data-mantine-color-scheme='dark'] .mantine-2ff9CY2:not(:disabled, [data-disabled]):hover {
619
+ --_control-background-color: var(--mantine-color-dark-6);
620
+ }
621
+ }
622
+
623
+ @media (hover: none) {
624
+ [data-mantine-color-scheme='light'] .mantine-NYL8sTC:not(:disabled, [data-disabled]):active, [data-mantine-color-scheme='light'] .mantine-2ff9CY2:not(:disabled, [data-disabled]):active {
625
+ --_control-background-color: var(--mantine-color-gray-0);
626
+ }
627
+
628
+ [data-mantine-color-scheme='dark'] .mantine-NYL8sTC:not(:disabled, [data-disabled]):active, [data-mantine-color-scheme='dark'] .mantine-2ff9CY2:not(:disabled, [data-disabled]):active {
629
+ --_control-background-color: var(--mantine-color-dark-6);
630
+ }
631
+ }
632
+
633
+ .mantine-wi6tb4S {
634
+ color: inherit;
635
+ font-weight: 400;
636
+ flex: 1;
637
+ overflow: hidden;
638
+ text-overflow: ellipsis;
639
+ padding-top: var(--mantine-spacing-sm);
640
+ padding-bottom: var(--mantine-spacing-sm);
641
+ }
642
+
643
+ .mantine-cn4jUEr {
644
+ display: flex;
645
+ align-items: center;
646
+ justify-content: flex-start;
647
+ transition: transform var(--accordion-transition-duration) ease;
648
+ margin-right: var(--_chevron-margin-right);
649
+ margin-left: var(--_chevron-margin-left);
650
+ width: var(--accordion-chevron-size);
651
+ min-width: var(--accordion-chevron-size);
652
+ transform: var(--_chevron-transform, rotate(0deg));
653
+ }
654
+
655
+ .mantine-cn4jUEr[data-rotate] {
656
+ --_chevron-transform: rotate(180deg);
657
+ }
658
+
659
+ .mantine-cn4jUEr[data-position='left'] {
660
+ --_chevron-margin-right: var(--mantine-spacing-md);
661
+ --_chevron-margin-left: var(--mantine-spacing-md);
662
+ }
663
+
664
+ .mantine-cn4jUEr[data-position='right'] {
665
+ --_chevron-margin-left: 0;
666
+ }
667
+
668
+ [dir="rtl"] .mantine-cn4jUEr[data-position='left'] {
669
+ --_chevron-margin-right: 0;
670
+ --_chevron-margin-left: var(--mantine-spacing-md);
671
+ }
672
+
673
+ [dir="rtl"] .mantine-cn4jUEr[data-position='right'] {
674
+ --_chevron-margin-right: var(--mantine-spacing-md);
675
+ --_chevron-margin-left: 0;
676
+ }
677
+
678
+ .mantine-UIeeOMI {
679
+ display: flex;
680
+ align-items: center;
681
+ justify-content: center;
682
+ margin-right: var(--_icon-margin-right, var(--mantine-spacing-sm));
683
+ margin-left: var(--_icon-margin-left, 0);
684
+ }
685
+
686
+ .mantine-UIeeOMI[data-chevron-position='left'] {
687
+ --_icon-margin-right: 0;
688
+ --_icon-margin-left: var(--mantine-spacing-lg);
689
+ }
690
+
691
+ [dir="rtl"] .mantine-UIeeOMI[data-chevron-position='left'] {
692
+ --_icon-margin-right: var(--mantine-spacing-lg);
693
+ --_icon-margin-left: 0;
694
+ }
695
+
696
+ [dir="rtl"] .mantine-UIeeOMI[data-chevron-position='right'] {
697
+ --_icon-margin-right: 0;
698
+ --_icon-margin-left: var(--mantine-spacing-sm);
699
+ }
700
+
701
+ .mantine-O9fHDxs {
702
+ background-color: var(--_item-bg);
703
+ }
704
+
705
+ [data-mantine-color-scheme='light'] .mantine-O9fHDxs {
706
+ --_item-border-color: var(--mantine-color-gray-3);
707
+ --_item-filled-color: var(--mantine-color-gray-0);
708
+ }
709
+
710
+ [data-mantine-color-scheme='dark'] .mantine-O9fHDxs {
711
+ --_item-border-color: var(--mantine-color-dark-4);
712
+ --_item-filled-color: var(--mantine-color-dark-6);
713
+ }
714
+
715
+ .mantine-NikJAJO {
716
+ border-bottom: calc(0.0625rem * var(--mantine-scale)) solid var(--_item-border-color);
717
+ }
718
+
719
+ .mantine-J3GNfAk {
720
+ border: calc(0.0625rem * var(--mantine-scale)) solid var(--_item-border-color);
721
+ transition: background-color 150ms ease;
722
+ }
723
+
724
+ .mantine-J3GNfAk[data-active] {
725
+ --_item-bg: var(--_item-filled-color);
726
+ }
727
+
728
+ .mantine-J3GNfAk:first-of-type {
729
+ border-top-left-radius: var(--accordion-radius);
730
+ border-top-right-radius: var(--accordion-radius);
731
+ }
732
+
733
+ .mantine-J3GNfAk:first-of-type > [data-accordion-control] {
734
+ border-top-left-radius: var(--accordion-radius);
735
+ border-top-right-radius: var(--accordion-radius);
736
+ }
737
+
738
+ .mantine-J3GNfAk:last-of-type {
739
+ border-bottom-left-radius: var(--accordion-radius);
740
+ border-bottom-right-radius: var(--accordion-radius);
741
+ }
742
+
743
+ .mantine-J3GNfAk:last-of-type > [data-accordion-control] {
744
+ border-bottom-left-radius: var(--accordion-radius);
745
+ border-bottom-right-radius: var(--accordion-radius);
746
+ }
747
+
748
+ .mantine-J3GNfAk + .mantine-J3GNfAk {
749
+ border-top: 0;
750
+ }
751
+
752
+ .mantine-sjWzs17 {
753
+ border-radius: var(--accordion-radius);
754
+ }
755
+
756
+ .mantine-sjWzs17[data-active] {
757
+ --_item-bg: var(--_item-filled-color);
758
+ }
759
+
760
+ .mantine-C9LZ3zN {
761
+ --_item-bg: var(--_item-filled-color);
762
+
763
+ border-radius: var(--accordion-radius);
764
+ border: calc(0.0625rem * var(--mantine-scale)) solid var(--__item-border-color, transparent);
765
+ transition: background-color 150ms ease;
766
+ }
767
+
768
+ .mantine-C9LZ3zN[data-active] {
769
+ --__item-border-color: var(--_item-border-color);
770
+ }
771
+
772
+ [data-mantine-color-scheme='light'] .mantine-C9LZ3zN[data-active] {
773
+ --_item-bg: var(--mantine-color-white);
774
+ }
775
+
776
+ [data-mantine-color-scheme='dark'] .mantine-C9LZ3zN[data-active] {
777
+ --_item-bg: var(--mantine-color-dark-7);
778
+ }
779
+
780
+ .mantine-C9LZ3zN + .mantine-C9LZ3zN {
781
+ margin-top: var(--mantine-spacing-md);
782
+ }
783
+
550
784
  @keyframes mantine-CbbKYq7 {
551
785
  0% {
552
786
  transform: scale(0.6);
@@ -2370,6 +2604,35 @@ body {
2370
2604
  color: var(--mantine-color-dimmed);
2371
2605
  }
2372
2606
 
2607
+ .mantine-raltP2G,
2608
+ .mantine-dRrkbFg {
2609
+ font-size: var(--combobox-option-fz);
2610
+ border: 0 solid var(--_footer-border-color);
2611
+ margin-left: calc(var(--combobox-padding) * -1);
2612
+ margin-right: calc(var(--combobox-padding) * -1);
2613
+ padding: var(--combobox-option-padding);
2614
+ }
2615
+
2616
+ [data-mantine-color-scheme='light'] .mantine-raltP2G, [data-mantine-color-scheme='light'] .mantine-dRrkbFg {
2617
+ --_footer-border-color: var(--mantine-color-gray-2);
2618
+ }
2619
+
2620
+ [data-mantine-color-scheme='dark'] .mantine-raltP2G, [data-mantine-color-scheme='dark'] .mantine-dRrkbFg {
2621
+ --_footer-border-color: var(--mantine-color-dark-4);
2622
+ }
2623
+
2624
+ .mantine-dRrkbFg {
2625
+ border-top-width: calc(0.0625rem * var(--mantine-scale));
2626
+ margin-top: var(--combobox-padding);
2627
+ margin-bottom: calc(var(--combobox-padding) * -1);
2628
+ }
2629
+
2630
+ .mantine-raltP2G {
2631
+ border-bottom-width: calc(0.0625rem * var(--mantine-scale));
2632
+ margin-bottom: var(--combobox-padding);
2633
+ margin-top: calc(var(--combobox-padding) * -1);
2634
+ }
2635
+
2373
2636
  .mantine-jQnfD5v {
2374
2637
  --container-size-xs: calc(33.75rem * var(--mantine-scale));
2375
2638
  --container-size-sm: calc(45rem * var(--mantine-scale));
@@ -4372,15 +4635,3 @@ fieldset:disabled .mantine-NegW5ug:not([data-inverted]),
4372
4635
  [data-mantine-color-scheme='dark'] .mantine-yPad50m blockquote {
4373
4636
  background-color: var(--mantine-color-dark-8);
4374
4637
  }
4375
-
4376
- .mantine-27MenJe {
4377
- border: 0;
4378
- clip: rect(0 0 0 0);
4379
- height: 1px;
4380
- width: 1px;
4381
- margin: -1px;
4382
- overflow: hidden;
4383
- padding: 0;
4384
- position: absolute;
4385
- white-space: nowrap;
4386
- }
package/esm/index.js CHANGED
@@ -59,6 +59,13 @@ export { factory } from './core/factory/factory.js';
59
59
  export { polymorphicFactory } from './core/factory/polymorphic-factory.js';
60
60
  export { createPolymorphicComponent } from './core/factory/create-polymorphic-component.js';
61
61
  export { DirectionContext, DirectionProvider, useDirection } from './core/DirectionProvider/DirectionProvider.js';
62
+ export { UnstyledButton } from './components/UnstyledButton/UnstyledButton.js';
63
+ export { VisuallyHidden } from './components/VisuallyHidden/VisuallyHidden.js';
64
+ export { Accordion } from './components/Accordion/Accordion.js';
65
+ export { AccordionChevron } from './components/Accordion/AccordionChevron.js';
66
+ export { AccordionItem } from './components/Accordion/AccordionItem/AccordionItem.js';
67
+ export { AccordionPanel } from './components/Accordion/AccordionPanel/AccordionPanel.js';
68
+ export { AccordionControl } from './components/Accordion/AccordionControl/AccordionControl.js';
62
69
  export { ActionIcon } from './components/ActionIcon/ActionIcon.js';
63
70
  export { ActionIconGroup } from './components/ActionIcon/ActionIconGroup/ActionIconGroup.js';
64
71
  export { Affix } from './components/Affix/Affix.js';
@@ -175,6 +182,4 @@ export { transitions as MANTINE_TRANSITIONS } from './components/Transition/tran
175
182
  export { Transition } from './components/Transition/Transition.js';
176
183
  export { getTransitionProps } from './components/Transition/get-transition-props/get-transition-props.js';
177
184
  export { TypographyStylesProvider } from './components/TypographyStylesProvider/TypographyStylesProvider.js';
178
- export { UnstyledButton } from './components/UnstyledButton/UnstyledButton.js';
179
- export { VisuallyHidden } from './components/VisuallyHidden/VisuallyHidden.js';
180
185
  //# sourceMappingURL=index.js.map
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,23 @@
1
+ /// <reference types="react" />
2
+ import { GetStylesApi } from '../../core';
3
+ import { AccordionChevronPosition, AccordionHeadingOrder } from './Accordion.types';
4
+ import type { AccordionFactory } from './Accordion';
5
+ interface AccordionContext {
6
+ loop: boolean | undefined;
7
+ transitionDuration: number | undefined;
8
+ disableChevronRotation: boolean | undefined;
9
+ chevronPosition: AccordionChevronPosition | undefined;
10
+ order: AccordionHeadingOrder | undefined;
11
+ chevron: React.ReactNode;
12
+ onChange(value: string): void;
13
+ isItemActive(value: string): boolean;
14
+ getControlId(value: string): string;
15
+ getRegionId(value: string): string;
16
+ getStyles: GetStylesApi<AccordionFactory>;
17
+ variant: string | undefined;
18
+ }
19
+ export declare const AccordionProvider: ({ children, value }: {
20
+ value: AccordionContext;
21
+ children: import("react").ReactNode;
22
+ }) => JSX.Element, useAccordionContext: () => AccordionContext;
23
+ export {};
@@ -0,0 +1,73 @@
1
+ import React from 'react';
2
+ import { BoxProps, StylesApiProps, ElementProps, Factory, MantineRadius, MantineThemeComponent } from '../../core';
3
+ import { AccordionChevron } from './AccordionChevron';
4
+ import { AccordionChevronPosition, AccordionHeadingOrder, AccordionValue } from './Accordion.types';
5
+ export type AccordionStylesNames = 'root' | 'content' | 'item' | 'panel' | 'icon' | 'chevron' | 'label' | 'itemTitle' | 'control';
6
+ export type AccordionVariant = 'default' | 'contained' | 'filled' | 'separated';
7
+ export type AccordionCssVariables = {
8
+ root: '--accordion-transition-duration' | '--accordion-chevron-size' | '--accordion-radius';
9
+ };
10
+ export interface AccordionProps<Multiple extends boolean = false> extends BoxProps, StylesApiProps<AccordionFactory>, ElementProps<'div', 'value' | 'defaultValue' | 'onChange'> {
11
+ /** Determines whether multiple items can be opened at a time, `false` by default */
12
+ multiple?: Multiple;
13
+ /** Value for controlled component */
14
+ value?: AccordionValue<Multiple>;
15
+ /** Default value for uncontrolled component */
16
+ defaultValue?: AccordionValue<Multiple>;
17
+ /** Called when value changes */
18
+ onChange?(value: AccordionValue<Multiple>): void;
19
+ /** Determines whether arrow key presses should loop though items (first to last and last to first), `true` by default */
20
+ loop?: boolean;
21
+ /** Transition duration in ms, `200` by default */
22
+ transitionDuration?: number;
23
+ /** Determines whether chevron rotation should be disabled, `false` by default */
24
+ disableChevronRotation?: boolean;
25
+ /** Position of the chevron relative to the item label, `right` by default */
26
+ chevronPosition?: AccordionChevronPosition;
27
+ /** Size of the chevron icon container, `24` by default */
28
+ chevronSize?: number | string;
29
+ /** Heading order, has no effect on visuals */
30
+ order?: AccordionHeadingOrder;
31
+ /** Custom chevron icon that will be used in all items */
32
+ chevron?: React.ReactNode;
33
+ /** Key of `theme.radius` or any valid CSS value to set border-radius. Numbers are converted to rem. `theme.defaultRadius` by default. */
34
+ radius?: MantineRadius | (string & {}) | number;
35
+ }
36
+ export type AccordionFactory = Factory<{
37
+ props: AccordionProps;
38
+ ref: HTMLDivElement;
39
+ stylesNames: AccordionStylesNames;
40
+ vars: AccordionCssVariables;
41
+ variant: AccordionVariant;
42
+ }>;
43
+ export declare function Accordion<Multiple extends boolean = false>(_props: AccordionProps<Multiple>): JSX.Element;
44
+ export declare namespace Accordion {
45
+ var extend: (c: import("../../core/factory/factory").ExtendsRootComponent<{
46
+ props: AccordionProps<false>;
47
+ ref: HTMLDivElement;
48
+ stylesNames: AccordionStylesNames;
49
+ vars: AccordionCssVariables;
50
+ variant: AccordionVariant;
51
+ }>) => MantineThemeComponent;
52
+ var classes: any;
53
+ var displayName: string;
54
+ var Item: import("../../core").MantineComponent<{
55
+ props: import("./AccordionItem/AccordionItem").AccordionItemProps;
56
+ ref: HTMLDivElement;
57
+ stylesNames: "item";
58
+ compound: true;
59
+ }>;
60
+ var Panel: import("../../core").MantineComponent<{
61
+ props: import("./AccordionPanel/AccordionPanel").AccordionPanelProps;
62
+ ref: HTMLDivElement;
63
+ stylesNames: import("./AccordionPanel/AccordionPanel").AccordionPanelStylesNames;
64
+ compound: true;
65
+ }>;
66
+ var Control: import("../../core").MantineComponent<{
67
+ props: import("./AccordionControl/AccordionControl").AccordionControlProps;
68
+ ref: HTMLButtonElement;
69
+ stylesNames: import("./AccordionControl/AccordionControl").AccordionControlStylesNames;
70
+ compound: true;
71
+ }>;
72
+ var Chevron: typeof AccordionChevron;
73
+ }
@@ -0,0 +1,3 @@
1
+ export type AccordionValue<Multiple extends boolean> = Multiple extends true ? string[] : string | null;
2
+ export type AccordionHeadingOrder = 2 | 3 | 4 | 5 | 6;
3
+ export type AccordionChevronPosition = 'left' | 'right';
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ export interface AccordionChevronProps extends React.ComponentPropsWithoutRef<'svg'> {
3
+ /** Controls `width` and `height` of the icon, `16` by default */
4
+ size?: number | string;
5
+ }
6
+ export declare function AccordionChevron({ style, size, ...others }: AccordionChevronProps): JSX.Element;
7
+ export declare namespace AccordionChevron {
8
+ var displayName: string;
9
+ }
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ import { BoxProps, StylesApiProps, ElementProps, Factory } from '../../../core';
3
+ export type AccordionControlStylesNames = 'control' | 'chevron' | 'label' | 'itemTitle' | 'icon';
4
+ export interface AccordionControlProps extends BoxProps, StylesApiProps<AccordionControlFactory>, ElementProps<'button'> {
5
+ /** Disables control button */
6
+ disabled?: boolean;
7
+ /** Custom chevron icon */
8
+ chevron?: React.ReactNode;
9
+ /** Control label */
10
+ children?: React.ReactNode;
11
+ /** Icon displayed next to the label */
12
+ icon?: React.ReactNode;
13
+ }
14
+ export type AccordionControlFactory = Factory<{
15
+ props: AccordionControlProps;
16
+ ref: HTMLButtonElement;
17
+ stylesNames: AccordionControlStylesNames;
18
+ compound: true;
19
+ }>;
20
+ export declare const AccordionControl: import("../../../core").MantineComponent<{
21
+ props: AccordionControlProps;
22
+ ref: HTMLButtonElement;
23
+ stylesNames: AccordionControlStylesNames;
24
+ compound: true;
25
+ }>;
@@ -0,0 +1,18 @@
1
+ import { BoxProps, StylesApiProps, ElementProps, Factory } from '../../../core';
2
+ export type AccordionItemStylesNames = 'item';
3
+ export interface AccordionItemProps extends BoxProps, StylesApiProps<AccordionItemFactory>, ElementProps<'div'> {
4
+ /** Value that is used to manage accordion state */
5
+ value: string;
6
+ }
7
+ export type AccordionItemFactory = Factory<{
8
+ props: AccordionItemProps;
9
+ ref: HTMLDivElement;
10
+ stylesNames: AccordionItemStylesNames;
11
+ compound: true;
12
+ }>;
13
+ export declare const AccordionItem: import("../../../core").MantineComponent<{
14
+ props: AccordionItemProps;
15
+ ref: HTMLDivElement;
16
+ stylesNames: AccordionItemStylesNames;
17
+ compound: true;
18
+ }>;
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ interface AccordionItemContext {
3
+ value: string;
4
+ }
5
+ export declare const AccordionItemProvider: ({ children, value }: {
6
+ value: AccordionItemContext;
7
+ children: import("react").ReactNode;
8
+ }) => JSX.Element, useAccordionItemContext: () => AccordionItemContext;
9
+ export {};
@@ -0,0 +1,16 @@
1
+ import { BoxProps, StylesApiProps, ElementProps, Factory } from '../../../core';
2
+ export type AccordionPanelStylesNames = 'panel' | 'content';
3
+ export interface AccordionPanelProps extends BoxProps, StylesApiProps<AccordionPanelFactory>, ElementProps<'div', 'onTransitionEnd'> {
4
+ }
5
+ export type AccordionPanelFactory = Factory<{
6
+ props: AccordionPanelProps;
7
+ ref: HTMLDivElement;
8
+ stylesNames: AccordionPanelStylesNames;
9
+ compound: true;
10
+ }>;
11
+ export declare const AccordionPanel: import("../../../core").MantineComponent<{
12
+ props: AccordionPanelProps;
13
+ ref: HTMLDivElement;
14
+ stylesNames: AccordionPanelStylesNames;
15
+ compound: true;
16
+ }>;
@@ -0,0 +1,11 @@
1
+ export { Accordion } from './Accordion';
2
+ export { AccordionChevron } from './AccordionChevron';
3
+ export { AccordionItem } from './AccordionItem/AccordionItem';
4
+ export { AccordionPanel } from './AccordionPanel/AccordionPanel';
5
+ export { AccordionControl } from './AccordionControl/AccordionControl';
6
+ export type { AccordionProps, AccordionStylesNames, AccordionCssVariables, AccordionFactory, AccordionVariant, } from './Accordion';
7
+ export type { AccordionControlProps } from './AccordionControl/AccordionControl';
8
+ export type { AccordionItemProps } from './AccordionItem/AccordionItem';
9
+ export type { AccordionPanelProps } from './AccordionPanel/AccordionPanel';
10
+ export type { AccordionChevronProps } from './AccordionChevron';
11
+ export type { AccordionValue, AccordionHeadingOrder } from './Accordion.types';
@@ -14,11 +14,11 @@ export interface ActionIconProps extends BoxProps, StylesApiProps<ActionIconFact
14
14
  loading?: boolean;
15
15
  /** Props added to the `Loader` component (only visible when `loading` prop is set) */
16
16
  loaderProps?: LoaderProps;
17
- /** Controls width and height of the button. Numbers are converted. `'md'` by default. */
17
+ /** Controls width and height of the button. Numbers are converted to rem. `'md'` by default. */
18
18
  size?: MantineSize | (string & {}) | number;
19
19
  /** Key of `theme.colors` or any valid CSS color. Default value is `theme.primaryColor`. */
20
20
  color?: MantineColor;
21
- /** Key of `theme.radius` or any valid CSS value to set border-radius. Numbers are converted. `theme.defaultRadius` by default. */
21
+ /** Key of `theme.radius` or any valid CSS value to set border-radius. Numbers are converted to rem. `theme.defaultRadius` by default. */
22
22
  radius?: MantineRadius | (string & {}) | number;
23
23
  /** Gradient data used when `variant="gradient"`, default value is `theme.defaultGradient` */
24
24
  gradient?: MantineGradient;
@@ -2,5 +2,8 @@ import React from 'react';
2
2
  export interface CheckboxIconProps extends React.ComponentPropsWithoutRef<'svg'> {
3
3
  indeterminate: boolean | undefined;
4
4
  }
5
- export declare function CheckIcon(props: React.ComponentPropsWithoutRef<'svg'>): JSX.Element;
5
+ export interface CheckIconProps extends React.ComponentPropsWithoutRef<'svg'> {
6
+ size?: number | string;
7
+ }
8
+ export declare function CheckIcon({ size, style, ...others }: CheckIconProps): JSX.Element;
6
9
  export declare function CheckboxIcon({ indeterminate, ...others }: CheckboxIconProps): JSX.Element;
@@ -1,6 +1,6 @@
1
1
  export { Checkbox } from './Checkbox';
2
2
  export { CheckboxGroup } from './CheckboxGroup/CheckboxGroup';
3
3
  export { CheckIcon } from './CheckIcon';
4
- export type { CheckboxIconProps } from './CheckIcon';
4
+ export type { CheckboxIconProps, CheckIconProps } from './CheckIcon';
5
5
  export type { CheckboxCssVariables, CheckboxFactory, CheckboxProps, CheckboxStylesNames, CheckboxVariant, } from './Checkbox';
6
6
  export type { CheckboxGroupFactory, CheckboxGroupProps, CheckboxGroupStylesNames, CheckboxGroupVariant, } from './CheckboxGroup/CheckboxGroup';
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { GetStylesApi } from '../../core';
2
3
  import type { ColorPickerFactory } from './ColorPicker';
3
4
  interface ColorPickerContextValue {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { GetStylesApi, MantineSize } from '../../core';
2
3
  import type { ComboboxFactory } from './Combobox';
3
4
  import type { ComboboxOptionProps } from './ComboboxOption/ComboboxOption';
@@ -9,7 +9,9 @@ import { ComboboxOption, ComboboxOptionProps } from './ComboboxOption/ComboboxOp
9
9
  import { ComboboxSearch } from './ComboboxSearch/ComboboxSearch';
10
10
  import { ComboboxEmpty } from './ComboboxEmpty/ComboboxEmpty';
11
11
  import { ComboboxChevron } from './ComboboxChevron/ComboboxChevron';
12
- export type ComboboxStylesNames = 'options' | 'dropdown' | 'option' | 'search' | 'empty';
12
+ import { ComboboxFooter } from './ComboboxFooter/ComboboxFooter';
13
+ import { ComboboxHeader } from './ComboboxHeader/ComboboxHeader';
14
+ export type ComboboxStylesNames = 'options' | 'dropdown' | 'option' | 'search' | 'empty' | 'footer' | 'header';
13
15
  export type ComboboxCSSVariables = {
14
16
  dropdown: '--combobox-option-fz' | '--combobox-padding' | '--combobox-option-padding';
15
17
  };
@@ -40,6 +42,8 @@ export type ComboboxFactory = Factory<{
40
42
  Search: typeof ComboboxSearch;
41
43
  Empty: typeof ComboboxEmpty;
42
44
  Chevron: typeof ComboboxChevron;
45
+ Footer: typeof ComboboxFooter;
46
+ Header: typeof ComboboxHeader;
43
47
  };
44
48
  }>;
45
49
  export declare function Combobox(_props: ComboboxProps): JSX.Element;
@@ -86,4 +90,16 @@ export declare namespace Combobox {
86
90
  stylesNames: "root";
87
91
  vars: import("./ComboboxChevron/ComboboxChevron").ComboboxChevronCSSVariables;
88
92
  }>;
93
+ var Footer: import("../../core").MantineComponent<{
94
+ props: import("./ComboboxFooter/ComboboxFooter").ComboboxFooterProps;
95
+ ref: HTMLDivElement;
96
+ stylesNames: "footer";
97
+ compound: true;
98
+ }>;
99
+ var Header: import("../../core").MantineComponent<{
100
+ props: import("./ComboboxHeader/ComboboxHeader").ComboboxHeaderProps;
101
+ ref: HTMLDivElement;
102
+ stylesNames: "header";
103
+ compound: true;
104
+ }>;
89
105
  }
@@ -0,0 +1,16 @@
1
+ import { BoxProps, StylesApiProps, ElementProps, Factory } from '../../../core';
2
+ export type ComboboxFooterStylesNames = 'footer';
3
+ export interface ComboboxFooterProps extends BoxProps, StylesApiProps<ComboboxFooterFactory>, ElementProps<'div'> {
4
+ }
5
+ export type ComboboxFooterFactory = Factory<{
6
+ props: ComboboxFooterProps;
7
+ ref: HTMLDivElement;
8
+ stylesNames: ComboboxFooterStylesNames;
9
+ compound: true;
10
+ }>;
11
+ export declare const ComboboxFooter: import("../../../core").MantineComponent<{
12
+ props: ComboboxFooterProps;
13
+ ref: HTMLDivElement;
14
+ stylesNames: ComboboxFooterStylesNames;
15
+ compound: true;
16
+ }>;