@clubmed/trident-ui 1.0.0-alpha.43 → 1.0.0-alpha.45

Sign up to get free protection for your applications and to get access to all the features.
Files changed (136) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/assets/style.css +1 -1
  3. package/atoms/Icons/Icon.js +6 -6
  4. package/fonts/Actions/tui-actions.css +6 -6
  5. package/fonts/Actions/tui-actions.eot +0 -0
  6. package/fonts/Actions/tui-actions.less +6 -6
  7. package/fonts/Actions/tui-actions.module.less +6 -6
  8. package/fonts/Actions/tui-actions.scss +6 -6
  9. package/fonts/Actions/tui-actions.styl +6 -6
  10. package/fonts/Actions/tui-actions.ttf +0 -0
  11. package/fonts/Actions/tui-actions.woff +0 -0
  12. package/fonts/Actions/tui-actions.woff2 +0 -0
  13. package/fonts/Activities/tui-activities.css +6 -6
  14. package/fonts/Activities/tui-activities.eot +0 -0
  15. package/fonts/Activities/tui-activities.less +6 -6
  16. package/fonts/Activities/tui-activities.module.less +6 -6
  17. package/fonts/Activities/tui-activities.scss +6 -6
  18. package/fonts/Activities/tui-activities.styl +6 -6
  19. package/fonts/Activities/tui-activities.ttf +0 -0
  20. package/fonts/Activities/tui-activities.woff +0 -0
  21. package/fonts/Activities/tui-activities.woff2 +0 -0
  22. package/fonts/Brand/tui-brand.css +6 -6
  23. package/fonts/Brand/tui-brand.eot +0 -0
  24. package/fonts/Brand/tui-brand.less +6 -6
  25. package/fonts/Brand/tui-brand.module.less +6 -6
  26. package/fonts/Brand/tui-brand.scss +6 -6
  27. package/fonts/Brand/tui-brand.styl +6 -6
  28. package/fonts/Brand/tui-brand.ttf +0 -0
  29. package/fonts/Brand/tui-brand.woff +0 -0
  30. package/fonts/Brand/tui-brand.woff2 +0 -0
  31. package/fonts/Covid/tui-covid.css +6 -6
  32. package/fonts/Covid/tui-covid.eot +0 -0
  33. package/fonts/Covid/tui-covid.less +6 -6
  34. package/fonts/Covid/tui-covid.module.less +6 -6
  35. package/fonts/Covid/tui-covid.scss +6 -6
  36. package/fonts/Covid/tui-covid.styl +6 -6
  37. package/fonts/Covid/tui-covid.ttf +0 -0
  38. package/fonts/Covid/tui-covid.woff +0 -0
  39. package/fonts/Covid/tui-covid.woff2 +0 -0
  40. package/fonts/Food/tui-food.css +6 -6
  41. package/fonts/Food/tui-food.eot +0 -0
  42. package/fonts/Food/tui-food.less +6 -6
  43. package/fonts/Food/tui-food.module.less +6 -6
  44. package/fonts/Food/tui-food.scss +6 -6
  45. package/fonts/Food/tui-food.styl +6 -6
  46. package/fonts/Food/tui-food.ttf +0 -0
  47. package/fonts/Food/tui-food.woff +0 -0
  48. package/fonts/Food/tui-food.woff2 +0 -0
  49. package/fonts/HappyToCare/tui-happy-to-care.css +6 -6
  50. package/fonts/HappyToCare/tui-happy-to-care.eot +0 -0
  51. package/fonts/HappyToCare/tui-happy-to-care.less +6 -6
  52. package/fonts/HappyToCare/tui-happy-to-care.module.less +6 -6
  53. package/fonts/HappyToCare/tui-happy-to-care.scss +6 -6
  54. package/fonts/HappyToCare/tui-happy-to-care.styl +6 -6
  55. package/fonts/HappyToCare/tui-happy-to-care.ttf +0 -0
  56. package/fonts/HappyToCare/tui-happy-to-care.woff +0 -0
  57. package/fonts/HappyToCare/tui-happy-to-care.woff2 +0 -0
  58. package/fonts/Places/tui-places.css +6 -6
  59. package/fonts/Places/tui-places.eot +0 -0
  60. package/fonts/Places/tui-places.less +6 -6
  61. package/fonts/Places/tui-places.module.less +6 -6
  62. package/fonts/Places/tui-places.scss +6 -6
  63. package/fonts/Places/tui-places.styl +6 -6
  64. package/fonts/Places/tui-places.ttf +0 -0
  65. package/fonts/Places/tui-places.woff +0 -0
  66. package/fonts/Places/tui-places.woff2 +0 -0
  67. package/fonts/Room/tui-room.css +6 -6
  68. package/fonts/Room/tui-room.eot +0 -0
  69. package/fonts/Room/tui-room.less +6 -6
  70. package/fonts/Room/tui-room.module.less +6 -6
  71. package/fonts/Room/tui-room.scss +6 -6
  72. package/fonts/Room/tui-room.styl +6 -6
  73. package/fonts/Room/tui-room.ttf +0 -0
  74. package/fonts/Room/tui-room.woff +0 -0
  75. package/fonts/Room/tui-room.woff2 +0 -0
  76. package/fonts/Services/tui-services.css +6 -6
  77. package/fonts/Services/tui-services.eot +0 -0
  78. package/fonts/Services/tui-services.less +6 -6
  79. package/fonts/Services/tui-services.module.less +6 -6
  80. package/fonts/Services/tui-services.scss +6 -6
  81. package/fonts/Services/tui-services.styl +6 -6
  82. package/fonts/Services/tui-services.ttf +0 -0
  83. package/fonts/Services/tui-services.woff +0 -0
  84. package/fonts/Services/tui-services.woff2 +0 -0
  85. package/fonts/Socials/tui-socials.css +6 -6
  86. package/fonts/Socials/tui-socials.eot +0 -0
  87. package/fonts/Socials/tui-socials.less +6 -6
  88. package/fonts/Socials/tui-socials.module.less +6 -6
  89. package/fonts/Socials/tui-socials.scss +6 -6
  90. package/fonts/Socials/tui-socials.styl +6 -6
  91. package/fonts/Socials/tui-socials.ttf +0 -0
  92. package/fonts/Socials/tui-socials.woff +0 -0
  93. package/fonts/Socials/tui-socials.woff2 +0 -0
  94. package/fonts/Transports/tui-transports.css +6 -6
  95. package/fonts/Transports/tui-transports.eot +0 -0
  96. package/fonts/Transports/tui-transports.less +6 -6
  97. package/fonts/Transports/tui-transports.module.less +6 -6
  98. package/fonts/Transports/tui-transports.scss +6 -6
  99. package/fonts/Transports/tui-transports.styl +6 -6
  100. package/fonts/Transports/tui-transports.ttf +0 -0
  101. package/fonts/Transports/tui-transports.woff +0 -0
  102. package/fonts/Transports/tui-transports.woff2 +0 -0
  103. package/fonts/Utilities/tui-utilities.css +6 -6
  104. package/fonts/Utilities/tui-utilities.eot +0 -0
  105. package/fonts/Utilities/tui-utilities.less +6 -6
  106. package/fonts/Utilities/tui-utilities.module.less +6 -6
  107. package/fonts/Utilities/tui-utilities.scss +6 -6
  108. package/fonts/Utilities/tui-utilities.styl +6 -6
  109. package/fonts/Utilities/tui-utilities.ttf +0 -0
  110. package/fonts/Utilities/tui-utilities.woff +0 -0
  111. package/fonts/Utilities/tui-utilities.woff2 +0 -0
  112. package/hooks/__mocks__/useSafeBoop.d.ts +4 -0
  113. package/hooks/__mocks__/useSafeBoop.js +10 -0
  114. package/hooks/keyboard.constants.d.ts +38 -0
  115. package/hooks/keyboard.constants.js +6 -0
  116. package/hooks/useKeyboardControls.d.ts +12 -0
  117. package/hooks/useKeyboardControls.js +29 -0
  118. package/hooks/useSafeBoop.d.ts +5 -0
  119. package/hooks/useSafeBoop.js +67 -0
  120. package/molecules/Tabs/Body.d.ts +6 -0
  121. package/molecules/Tabs/Body.js +6 -0
  122. package/molecules/Tabs/Header.d.ts +10 -0
  123. package/molecules/Tabs/Header.js +60 -0
  124. package/molecules/Tabs/Heading.d.ts +33 -0
  125. package/molecules/Tabs/Heading.js +100 -0
  126. package/molecules/Tabs/Panel.d.ts +17 -0
  127. package/molecules/Tabs/Panel.js +58 -0
  128. package/molecules/Tabs/Tabs.d.ts +12 -0
  129. package/molecules/Tabs/Tabs.js +21 -0
  130. package/molecules/Tabs/context/TabControl.d.ts +50 -0
  131. package/molecules/Tabs/context/TabControl.js +82 -0
  132. package/molecules/Tabs/hooks/tabControl.d.ts +33 -0
  133. package/molecules/Tabs/hooks/tabControl.js +30 -0
  134. package/molecules/Tabs/theme.d.ts +10 -0
  135. package/molecules/Tabs/theme.js +23 -0
  136. package/package.json +1 -1
@@ -1,10 +1,10 @@
1
1
  @font-face {font-family: "tui-transports";
2
- src: url('tui-transports.eot?t=1713886774727'); /* IE9*/
3
- src: url('tui-transports.eot?t=1713886774727#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
- url("tui-transports.woff2?t=1713886774727") format("woff2"),
5
- url("tui-transports.woff?t=1713886774727") format("woff"),
6
- url('tui-transports.ttf?t=1713886774727') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
- url('tui-transports.svg?t=1713886774727#tui-transports') format('svg'); /* iOS 4.1- */
2
+ src: url('tui-transports.eot?t=1714057272599'); /* IE9*/
3
+ src: url('tui-transports.eot?t=1714057272599#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
+ url("tui-transports.woff2?t=1714057272599") format("woff2"),
5
+ url("tui-transports.woff?t=1714057272599") format("woff"),
6
+ url('tui-transports.ttf?t=1714057272599') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
+ url('tui-transports.svg?t=1714057272599#tui-transports') format('svg'); /* iOS 4.1- */
8
8
  }
9
9
 
10
10
  [class^="tui-transports-"], [class*=" tui-transports-"] {
@@ -1,10 +1,10 @@
1
1
  @font-face {font-family: "tui-transports";
2
- src: url('tui-transports.eot?t=1713886774727'); /* IE9*/
3
- src: url('tui-transports.eot?t=1713886774727#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
- url("tui-transports.woff2?t=1713886774727") format("woff2"),
5
- url("tui-transports.woff?t=1713886774727") format("woff"),
6
- url('tui-transports.ttf?t=1713886774727') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
- url('tui-transports.svg?t=1713886774727#tui-transports') format('svg'); /* iOS 4.1- */
2
+ src: url('tui-transports.eot?t=1714057272599'); /* IE9*/
3
+ src: url('tui-transports.eot?t=1714057272599#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
+ url("tui-transports.woff2?t=1714057272599") format("woff2"),
5
+ url("tui-transports.woff?t=1714057272599") format("woff"),
6
+ url('tui-transports.ttf?t=1714057272599') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
+ url('tui-transports.svg?t=1714057272599#tui-transports') format('svg'); /* iOS 4.1- */
8
8
  }
9
9
 
10
10
  [class^="tui-transports-"], [class*=" tui-transports-"] {
@@ -1,10 +1,10 @@
1
1
  @font-face {font-family: "tui-transports";
2
- src: url('tui-transports.eot?t=1713886774727'); /* IE9*/
3
- src: url('tui-transports.eot?t=1713886774727#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
- url("tui-transports.woff2?t=1713886774727") format("woff2"),
5
- url("tui-transports.woff?t=1713886774727") format("woff"),
6
- url('tui-transports.ttf?t=1713886774727') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
- url('tui-transports.svg?t=1713886774727#tui-transports') format('svg'); /* iOS 4.1- */
2
+ src: url('tui-transports.eot?t=1714057272599'); /* IE9*/
3
+ src: url('tui-transports.eot?t=1714057272599#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
+ url("tui-transports.woff2?t=1714057272599") format("woff2"),
5
+ url("tui-transports.woff?t=1714057272599") format("woff"),
6
+ url('tui-transports.ttf?t=1714057272599') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
+ url('tui-transports.svg?t=1714057272599#tui-transports') format('svg'); /* iOS 4.1- */
8
8
  }
9
9
 
10
10
  [class^="tui-transports-"], [class*=" tui-transports-"] {
@@ -1,10 +1,10 @@
1
1
  @font-face {font-family: "tui-transports";
2
- src: url('tui-transports.eot?t=1713886774727'); /* IE9*/
3
- src: url('tui-transports.eot?t=1713886774727#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
- url("tui-transports.woff2?t=1713886774727") format("woff2"),
5
- url("tui-transports.woff?t=1713886774727") format("woff"),
6
- url('tui-transports.ttf?t=1713886774727') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
- url('tui-transports.svg?t=1713886774727#tui-transports') format('svg'); /* iOS 4.1- */
2
+ src: url('tui-transports.eot?t=1714057272599'); /* IE9*/
3
+ src: url('tui-transports.eot?t=1714057272599#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
+ url("tui-transports.woff2?t=1714057272599") format("woff2"),
5
+ url("tui-transports.woff?t=1714057272599") format("woff"),
6
+ url('tui-transports.ttf?t=1714057272599') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
+ url('tui-transports.svg?t=1714057272599#tui-transports') format('svg'); /* iOS 4.1- */
8
8
  }
9
9
 
10
10
  [class^="tui-transports-"], [class*=" tui-transports-"] {
Binary file
@@ -1,11 +1,11 @@
1
1
  @font-face {
2
2
  font-family: "tui-utilities";
3
- src: url('tui-utilities.eot?t=1713886774881'); /* IE9*/
4
- src: url('tui-utilities.eot?t=1713886774881#iefix') format('embedded-opentype'), /* IE6-IE8 */
5
- url("tui-utilities.woff2?t=1713886774881") format("woff2"),
6
- url("tui-utilities.woff?t=1713886774881") format("woff"),
7
- url('tui-utilities.ttf?t=1713886774881') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
8
- url('tui-utilities.svg?t=1713886774881#tui-utilities') format('svg'); /* iOS 4.1- */
3
+ src: url('tui-utilities.eot?t=1714057272749'); /* IE9*/
4
+ src: url('tui-utilities.eot?t=1714057272749#iefix') format('embedded-opentype'), /* IE6-IE8 */
5
+ url("tui-utilities.woff2?t=1714057272749") format("woff2"),
6
+ url("tui-utilities.woff?t=1714057272749") format("woff"),
7
+ url('tui-utilities.ttf?t=1714057272749') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
8
+ url('tui-utilities.svg?t=1714057272749#tui-utilities') format('svg'); /* iOS 4.1- */
9
9
  }
10
10
 
11
11
  [class^="tui-utilities-"], [class*=" tui-utilities-"] {
Binary file
@@ -1,10 +1,10 @@
1
1
  @font-face {font-family: "tui-utilities";
2
- src: url('tui-utilities.eot?t=1713886774881'); /* IE9*/
3
- src: url('tui-utilities.eot?t=1713886774881#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
- url("tui-utilities.woff2?t=1713886774881") format("woff2"),
5
- url("tui-utilities.woff?t=1713886774881") format("woff"),
6
- url('tui-utilities.ttf?t=1713886774881') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
- url('tui-utilities.svg?t=1713886774881#tui-utilities') format('svg'); /* iOS 4.1- */
2
+ src: url('tui-utilities.eot?t=1714057272749'); /* IE9*/
3
+ src: url('tui-utilities.eot?t=1714057272749#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
+ url("tui-utilities.woff2?t=1714057272749") format("woff2"),
5
+ url("tui-utilities.woff?t=1714057272749") format("woff"),
6
+ url('tui-utilities.ttf?t=1714057272749') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
+ url('tui-utilities.svg?t=1714057272749#tui-utilities') format('svg'); /* iOS 4.1- */
8
8
  }
9
9
 
10
10
  [class^="tui-utilities-"], [class*=" tui-utilities-"] {
@@ -1,10 +1,10 @@
1
1
  @font-face {font-family: "tui-utilities";
2
- src: url('tui-utilities.eot?t=1713886774881'); /* IE9*/
3
- src: url('tui-utilities.eot?t=1713886774881#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
- url("tui-utilities.woff2?t=1713886774881") format("woff2"),
5
- url("tui-utilities.woff?t=1713886774881") format("woff"),
6
- url('tui-utilities.ttf?t=1713886774881') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
- url('tui-utilities.svg?t=1713886774881#tui-utilities') format('svg'); /* iOS 4.1- */
2
+ src: url('tui-utilities.eot?t=1714057272749'); /* IE9*/
3
+ src: url('tui-utilities.eot?t=1714057272749#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
+ url("tui-utilities.woff2?t=1714057272749") format("woff2"),
5
+ url("tui-utilities.woff?t=1714057272749") format("woff"),
6
+ url('tui-utilities.ttf?t=1714057272749') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
+ url('tui-utilities.svg?t=1714057272749#tui-utilities') format('svg'); /* iOS 4.1- */
8
8
  }
9
9
 
10
10
  [class^="tui-utilities-"], [class*=" tui-utilities-"] {
@@ -1,10 +1,10 @@
1
1
  @font-face {font-family: "tui-utilities";
2
- src: url('tui-utilities.eot?t=1713886774881'); /* IE9*/
3
- src: url('tui-utilities.eot?t=1713886774881#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
- url("tui-utilities.woff2?t=1713886774881") format("woff2"),
5
- url("tui-utilities.woff?t=1713886774881") format("woff"),
6
- url('tui-utilities.ttf?t=1713886774881') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
- url('tui-utilities.svg?t=1713886774881#tui-utilities') format('svg'); /* iOS 4.1- */
2
+ src: url('tui-utilities.eot?t=1714057272749'); /* IE9*/
3
+ src: url('tui-utilities.eot?t=1714057272749#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
+ url("tui-utilities.woff2?t=1714057272749") format("woff2"),
5
+ url("tui-utilities.woff?t=1714057272749") format("woff"),
6
+ url('tui-utilities.ttf?t=1714057272749') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
+ url('tui-utilities.svg?t=1714057272749#tui-utilities') format('svg'); /* iOS 4.1- */
8
8
  }
9
9
 
10
10
  [class^="tui-utilities-"], [class*=" tui-utilities-"] {
@@ -1,10 +1,10 @@
1
1
  @font-face {font-family: "tui-utilities";
2
- src: url('tui-utilities.eot?t=1713886774881'); /* IE9*/
3
- src: url('tui-utilities.eot?t=1713886774881#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
- url("tui-utilities.woff2?t=1713886774881") format("woff2"),
5
- url("tui-utilities.woff?t=1713886774881") format("woff"),
6
- url('tui-utilities.ttf?t=1713886774881') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
- url('tui-utilities.svg?t=1713886774881#tui-utilities') format('svg'); /* iOS 4.1- */
2
+ src: url('tui-utilities.eot?t=1714057272749'); /* IE9*/
3
+ src: url('tui-utilities.eot?t=1714057272749#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
+ url("tui-utilities.woff2?t=1714057272749") format("woff2"),
5
+ url("tui-utilities.woff?t=1714057272749") format("woff"),
6
+ url('tui-utilities.ttf?t=1714057272749') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7
+ url('tui-utilities.svg?t=1714057272749#tui-utilities') format('svg'); /* iOS 4.1- */
8
8
  }
9
9
 
10
10
  [class^="tui-utilities-"], [class*=" tui-utilities-"] {
Binary file
Binary file
Binary file
@@ -0,0 +1,4 @@
1
+ export declare const useSafeBoop: () => (import("@vitest/spy").Mock<any, any> | {
2
+ '--mocked-transform': string;
3
+ transform: string;
4
+ })[];
@@ -0,0 +1,10 @@
1
+ const r = () => [
2
+ {
3
+ "--mocked-transform": "scale3D(1, 1, 1)",
4
+ transform: "var(--mocked-transform)"
5
+ },
6
+ vi.fn()
7
+ ];
8
+ export {
9
+ r as useSafeBoop
10
+ };
@@ -0,0 +1,38 @@
1
+ export declare const enum CODE {
2
+ ENTER = "Enter",
3
+ ESCAPE = "Escape",
4
+ ARROW_LEFT = "ArrowLeft",
5
+ ARROW_UP = "ArrowUp",
6
+ ARROW_RIGHT = "ArrowRight",
7
+ ARROW_DOWN = "ArrowDown",
8
+ SPACE = "Space",
9
+ END = "End",
10
+ HOME = "Home"
11
+ }
12
+ export declare const enum KEY {
13
+ ENTER = "Enter",
14
+ ESCAPE = "Escape",
15
+ ARROW_LEFT = "ArrowLeft",
16
+ ARROW_UP = "ArrowUp",
17
+ ARROW_RIGHT = "ArrowRight",
18
+ ARROW_DOWN = "ArrowDown",
19
+ END = "End",
20
+ HOME = "Home",
21
+ SPACE = " ",
22
+ /**
23
+ * @deprecated
24
+ * Used by old browers, see https://developer.mozilla.org/en-US/docs/Web/API/UI_Events/Keyboard_event_key_values#whitespace_keys
25
+ */
26
+ SPACEBAR = "Spacebar"
27
+ }
28
+ export declare const enum KEY_CODE {
29
+ ENTER = 13,
30
+ ESCAPE = 27,
31
+ ARROW_LEFT = 37,
32
+ ARROW_UP = 38,
33
+ ARROW_RIGHT = 39,
34
+ ARROW_DOWN = 40,
35
+ SPACE = 32,
36
+ END = 35,
37
+ HOME = 36
38
+ }
@@ -0,0 +1,6 @@
1
+ var A = /* @__PURE__ */ ((R) => (R.ENTER = "Enter", R.ESCAPE = "Escape", R.ARROW_LEFT = "ArrowLeft", R.ARROW_UP = "ArrowUp", R.ARROW_RIGHT = "ArrowRight", R.ARROW_DOWN = "ArrowDown", R.SPACE = "Space", R.END = "End", R.HOME = "Home", R))(A || {}), r = /* @__PURE__ */ ((R) => (R.ENTER = "Enter", R.ESCAPE = "Escape", R.ARROW_LEFT = "ArrowLeft", R.ARROW_UP = "ArrowUp", R.ARROW_RIGHT = "ArrowRight", R.ARROW_DOWN = "ArrowDown", R.END = "End", R.HOME = "Home", R.SPACE = " ", R.SPACEBAR = "Spacebar", R))(r || {}), W = /* @__PURE__ */ ((R) => (R[R.ENTER = 13] = "ENTER", R[R.ESCAPE = 27] = "ESCAPE", R[R.ARROW_LEFT = 37] = "ARROW_LEFT", R[R.ARROW_UP = 38] = "ARROW_UP", R[R.ARROW_RIGHT = 39] = "ARROW_RIGHT", R[R.ARROW_DOWN = 40] = "ARROW_DOWN", R[R.SPACE = 32] = "SPACE", R[R.END = 35] = "END", R[R.HOME = 36] = "HOME", R))(W || {});
2
+ export {
3
+ A as CODE,
4
+ r as KEY,
5
+ W as KEY_CODE
6
+ };
@@ -0,0 +1,12 @@
1
+ import type { KeyboardEvent } from 'react';
2
+ interface Options {
3
+ up?: VoidFunction;
4
+ down?: VoidFunction;
5
+ left?: VoidFunction;
6
+ right?: VoidFunction;
7
+ start?: VoidFunction;
8
+ end?: VoidFunction;
9
+ activate?: VoidFunction;
10
+ }
11
+ export declare const useKeyboardControls: ({ up, down, left, right, start, end, activate, }: Options) => (event: KeyboardEvent<HTMLDivElement>) => void;
12
+ export {};
@@ -0,0 +1,29 @@
1
+ import { CODE as o, KEY as f } from "./keyboard.constants.js";
2
+ const D = (u) => u.key === f.ENTER || u.key === f.SPACE || u.key === f.SPACEBAR || u.code === o.ENTER || u.code === o.SPACE, e = () => {
3
+ }, n = ({
4
+ up: u = e,
5
+ down: t = e,
6
+ left: c = e,
7
+ right: d = e,
8
+ start: E = e,
9
+ end: R = e,
10
+ activate: i = e
11
+ }) => (r) => {
12
+ if (D(r))
13
+ return i();
14
+ if (r.code === o.HOME)
15
+ return r.preventDefault(), E();
16
+ if (r.code === o.END)
17
+ return r.preventDefault(), R();
18
+ if (r.code === o.ARROW_UP)
19
+ return r.preventDefault(), u();
20
+ if (r.code === o.ARROW_DOWN)
21
+ return r.preventDefault(), t();
22
+ if (r.code === o.ARROW_RIGHT)
23
+ return r.preventDefault(), d();
24
+ if (r.code === o.ARROW_LEFT)
25
+ return r.preventDefault(), c();
26
+ };
27
+ export {
28
+ n as useKeyboardControls
29
+ };
@@ -0,0 +1,5 @@
1
+ import { CSSProperties } from 'react';
2
+ import useBoop from 'use-boop';
3
+ type Args = Parameters<typeof useBoop>[0];
4
+ export declare const useSafeBoop: (boopArgs: Args) => [CSSProperties, () => void];
5
+ export {};
@@ -0,0 +1,67 @@
1
+ import { useState as f, useCallback as H, useEffect as c } from "react";
2
+ import { a as J } from "../react-spring_web.modern-BPtZcx1z.js";
3
+ var K = "(prefers-reduced-motion: no-preference)", N = function() {
4
+ return typeof window > "u" ? !0 : !window.matchMedia(K).matches;
5
+ }, O = function() {
6
+ var r = f(N), e = r[0], t = r[1];
7
+ return c(function() {
8
+ var n = window.matchMedia("(prefers-reduced-motion: no-preference)"), o = function(a) {
9
+ t(!a.matches);
10
+ };
11
+ return n.addEventListener("change", o), function() {
12
+ return n.removeEventListener("change", o);
13
+ };
14
+ }, []), e;
15
+ }, V = function(r) {
16
+ var e = r === void 0 ? {} : r, t = e.x, n = t === void 0 ? 0 : t, o = e.y, a = o === void 0 ? 0 : o, v = e.z, S = v === void 0 ? 0 : v, g = e.rotation, b = g === void 0 ? 0 : g, m = e.rx, C = m === void 0 ? 0 : m, p = e.ry, L = p === void 0 ? 0 : p, l = e.rz, Z = l === void 0 ? b : l, w = e.scale, d = w === void 0 ? 1 : w, _ = e.sx, Q = _ === void 0 ? d || 1 : _, x = e.sy, j = x === void 0 ? d || 1 : x, y = e.sz, q = y === void 0 ? d || 1 : y, k = e.skewX, P = k === void 0 ? 0 : k, h = e.skewY, U = h === void 0 ? 0 : h, T = e.timing, z = T === void 0 ? 150 : T, D = e.springConfig, A = D === void 0 ? {
17
+ tension: 300,
18
+ friction: 10
19
+ } : D, M = e.delay, Y = M === void 0 ? 0 : M, i = O(), I = f(!1), s = I[0], X = I[1], B = f(!1), E = B[0], R = B[1], F = J(i ? {} : {
20
+ transform: s ? "translate3D(" + n + "px, " + a + "px, " + S + `px)
21
+ rotateX(` + C + "deg) rotateY(" + L + "deg) rotateZ(" + Z + `deg)
22
+ scale3D(` + Q + "," + j + "," + q + `)
23
+ skew(` + P + "deg, " + U + "deg)" : `translate3D(0px, 0px, 0px)
24
+ rotateX(0deg) rotateY(0deg) rotateZ(0deg)
25
+ scale3D(1, 1, 1)
26
+ skew(0deg, 0deg)`,
27
+ config: A,
28
+ immediate: i
29
+ }), G = H(function() {
30
+ i || R(!0);
31
+ }, [i]);
32
+ return c(function() {
33
+ if (E) {
34
+ var u = window.setTimeout(function() {
35
+ X(!0), R(!1);
36
+ }, Y);
37
+ return function() {
38
+ return window.clearTimeout(u);
39
+ };
40
+ }
41
+ }, [E, Y]), c(function() {
42
+ if (s) {
43
+ var u = window.setTimeout(function() {
44
+ return X(!1);
45
+ }, z);
46
+ return function() {
47
+ return window.clearTimeout(u);
48
+ };
49
+ }
50
+ }, [s, z]), [F, G];
51
+ };
52
+ const ee = (r) => {
53
+ const [{ transform: e }, t] = V(r);
54
+ return [
55
+ {
56
+ "--transform": e || `translate3D(0px, 0px, 0px)
57
+ rotateX(0deg) rotateY(0deg) rotateZ(0deg)
58
+ scale3D(1, 1, 1)
59
+ skew(0deg, 0deg)`,
60
+ transform: "var(--transform)"
61
+ },
62
+ t
63
+ ];
64
+ };
65
+ export {
66
+ ee as useSafeBoop
67
+ };
@@ -0,0 +1,6 @@
1
+ import { FunctionComponent, PropsWithChildren } from 'react';
2
+ interface Props {
3
+ className?: string;
4
+ }
5
+ export declare const TabsBody: FunctionComponent<PropsWithChildren<Props>>;
6
+ export {};
@@ -0,0 +1,6 @@
1
+ import { jsx as s } from "react/jsx-runtime";
2
+ import { c as a } from "../../index-Cu0xwYjD.js";
3
+ const m = ({ className: o, children: r }) => /* @__PURE__ */ s("div", { "data-name": "TabsBody", className: a("grid grid-rows-1 overflow-hidden", o), children: r });
4
+ export {
5
+ m as TabsBody
6
+ };
@@ -0,0 +1,10 @@
1
+ import { type FunctionComponent, type PropsWithChildren } from 'react';
2
+ interface Props {
3
+ className?: string;
4
+ /**
5
+ * Remove filler placeholders
6
+ */
7
+ constrained?: boolean;
8
+ }
9
+ export declare const TabsHeader: FunctionComponent<PropsWithChildren<Props>>;
10
+ export {};
@@ -0,0 +1,60 @@
1
+ import { jsx as l, jsxs as w } from "react/jsx-runtime";
2
+ import { c as r } from "../../index-Cu0xwYjD.js";
3
+ import { useRef as f, useEffect as v } from "react";
4
+ import { a as b, b as h } from "../../react-spring_web.modern-BPtZcx1z.js";
5
+ import { useActiveTabControl as L } from "./hooks/tabControl.js";
6
+ const k = ({
7
+ className: n,
8
+ constrained: s = !1,
9
+ children: i
10
+ }) => {
11
+ const t = f(null), a = f(null), [m, e] = L(), [{ scrollLeft: c }, o] = b(() => ({
12
+ from: { scrollLeft: 0 }
13
+ }));
14
+ v(() => {
15
+ if (!(e != null && e.current))
16
+ return;
17
+ const p = e.current.getBoundingClientRect().left, u = t.current.scrollLeft, d = a.current.offsetWidth;
18
+ o.start({
19
+ to: {
20
+ scrollLeft: u + p - d
21
+ }
22
+ });
23
+ }, [c, e, o]);
24
+ const x = { "--active-tab": m };
25
+ return /* @__PURE__ */ l(
26
+ h.div,
27
+ {
28
+ ref: t,
29
+ "data-name": "TabsHeader",
30
+ className: r(
31
+ "scrollbar-hide relative flex max-w-full overflow-x-scroll py-20",
32
+ n
33
+ ),
34
+ scrollLeft: c,
35
+ children: /* @__PURE__ */ w("div", { role: "tablist", className: r("flex flex-row"), style: x, children: [
36
+ /* @__PURE__ */ l(
37
+ "div",
38
+ {
39
+ ref: a,
40
+ className: r("shrink-0", {
41
+ "w-16 lg:w-[max(calc((100vw-1212px)/2),116px)] xl:w-[max(calc((100vw-1212px)/2),156px)]": !s
42
+ })
43
+ }
44
+ ),
45
+ i,
46
+ /* @__PURE__ */ l(
47
+ "div",
48
+ {
49
+ className: r("shrink-0", {
50
+ "w-16 lg:w-[max(calc((100vw-1212px)/2),116px)] xl:w-[max(calc((100vw-1212px)/2),156px)]": !s
51
+ })
52
+ }
53
+ )
54
+ ] })
55
+ }
56
+ );
57
+ };
58
+ export {
59
+ k as TabsHeader
60
+ };
@@ -0,0 +1,33 @@
1
+ import { FunctionComponent, type PropsWithChildren } from 'react';
2
+ import { Theme } from './theme';
3
+ import './Heading.css';
4
+ interface Props {
5
+ className?: string;
6
+ /**
7
+ * Tab Heading text
8
+ */
9
+ label: string;
10
+ /**
11
+ * Tab heading index<br/>
12
+ * _Can be **0** or **1** indexed_
13
+ */
14
+ value: number;
15
+ /**
16
+ * on tab select handler
17
+ */
18
+ onSelect?: (context: {
19
+ value: Props['value'];
20
+ label: Props['label'];
21
+ }) => void;
22
+ /**
23
+ * Tab Heading theme
24
+ */
25
+ theme?: Theme;
26
+ /**
27
+ * Heading type
28
+ * _default: **h2**_
29
+ */
30
+ as?: 'div' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5';
31
+ }
32
+ export declare const TabsHeading: FunctionComponent<PropsWithChildren<Props>>;
33
+ export {};
@@ -0,0 +1,100 @@
1
+ import { jsx as a, jsxs as N } from "react/jsx-runtime";
2
+ import { c } from "../../index-Cu0xwYjD.js";
3
+ import { useRef as d, useEffect as L } from "react";
4
+ import { b as R } from "../../react-spring_web.modern-BPtZcx1z.js";
5
+ import { useActiveTab as k, useRegisterTabControl as E } from "./hooks/tabControl.js";
6
+ import { getTheme as K } from "./theme.js";
7
+ import { useSafeBoop as D } from "../../hooks/useSafeBoop.js";
8
+ import { useKeyboardControls as j } from "../../hooks/useKeyboardControls.js";
9
+ const m = "-z-1 rounded-pill absolute inset-0 duration-300", P = ({
10
+ className: u,
11
+ label: n,
12
+ children: f,
13
+ value: o,
14
+ onSelect: r,
15
+ as: b = "h2",
16
+ theme: y = "yellow"
17
+ }) => {
18
+ const p = d(!1), s = d(null), g = k(), e = E({ value: o, ref: s }), t = g === o, h = { "--tab-index": o }, { textColor: x, textColorActive: C, bgColor: T } = K(y), [w, l] = D({ scale: 1.02 });
19
+ L(() => {
20
+ if (!p.current) {
21
+ p.current = !0;
22
+ return;
23
+ }
24
+ t && (r == null || r({ value: o, label: n })), s.current && t && s.current.focus();
25
+ }, [t, n, o, r]);
26
+ const v = j({
27
+ activate: () => {
28
+ t && l();
29
+ },
30
+ start: () => {
31
+ e({ type: "start" });
32
+ },
33
+ end: () => {
34
+ e({ type: "end" });
35
+ },
36
+ up: () => {
37
+ e({ type: "previous" });
38
+ },
39
+ down: () => {
40
+ e({ type: "next" });
41
+ },
42
+ left: () => {
43
+ const i = document.documentElement.dir === "rtl";
44
+ e({ type: i ? "next" : "previous" });
45
+ },
46
+ right: () => {
47
+ const i = document.documentElement.dir === "rtl";
48
+ e({ type: i ? "previous" : "next" });
49
+ }
50
+ }), A = () => {
51
+ e({ type: "update", payload: o }), t && l();
52
+ };
53
+ return /* @__PURE__ */ a(
54
+ R.div,
55
+ {
56
+ "data-name": "TabsHeading",
57
+ ref: s,
58
+ role: "tab",
59
+ "aria-selected": t,
60
+ tabIndex: t ? 0 : -1,
61
+ style: w,
62
+ className: c(
63
+ "text-b3 group inline-block cursor-pointer overflow-hidden whitespace-nowrap bg-transparent pe-4 align-middle font-semibold outline-none",
64
+ u,
65
+ {
66
+ [x]: !t,
67
+ [C]: t
68
+ }
69
+ ),
70
+ onKeyDown: v,
71
+ onClick: A,
72
+ children: /* @__PURE__ */ N(b, { className: "relative inline-block px-20 py-12", children: [
73
+ /* @__PURE__ */ a(
74
+ "span",
75
+ {
76
+ className: c(
77
+ "group-hover:bg-pearl group-focus-within:bg-pearl transition-colors",
78
+ m
79
+ )
80
+ }
81
+ ),
82
+ /* @__PURE__ */ a(
83
+ "span",
84
+ {
85
+ className: c(
86
+ "tab-focus-pill ease transition-transform/colors",
87
+ m,
88
+ T
89
+ ),
90
+ style: h
91
+ }
92
+ ),
93
+ f ?? n
94
+ ] })
95
+ }
96
+ );
97
+ };
98
+ export {
99
+ P as TabsHeading
100
+ };
@@ -0,0 +1,17 @@
1
+ import { FunctionComponent, PropsWithChildren } from 'react';
2
+ interface Props {
3
+ className?: string;
4
+ /**
5
+ * Tab panel index<br/>
6
+ * _Can be **0** or **1** indexed_
7
+ */
8
+ value: number;
9
+ /**
10
+ * on panel select handler
11
+ */
12
+ onSelect?: (context: {
13
+ value: Props['value'];
14
+ }) => void;
15
+ }
16
+ export declare const TabsPanel: FunctionComponent<PropsWithChildren<Props>>;
17
+ export {};