casino-ui 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (196) hide show
  1. package/README.md +213 -0
  2. package/dist/assets/assets/card-back.svg +43 -0
  3. package/dist/assets/assets/card-shoe-overlay.svg +14 -0
  4. package/dist/assets/card-back.svg +43 -0
  5. package/dist/assets/card-shoe-overlay.svg +14 -0
  6. package/dist/casino-ui.css +2 -0
  7. package/dist/components/bet-panel.d.ts +41 -0
  8. package/dist/components/bet-panel.d.ts.map +1 -0
  9. package/dist/components/bet-panel.js +37 -0
  10. package/dist/components/bet-panel.js.map +1 -0
  11. package/dist/components/button.d.ts +15 -0
  12. package/dist/components/button.d.ts.map +1 -0
  13. package/dist/components/button.js +27 -0
  14. package/dist/components/button.js.map +1 -0
  15. package/dist/components/card-score-badge.d.ts +9 -0
  16. package/dist/components/card-score-badge.d.ts.map +1 -0
  17. package/dist/components/card-score-badge.js +20 -0
  18. package/dist/components/card-score-badge.js.map +1 -0
  19. package/dist/components/card-shoe.d.ts +6 -0
  20. package/dist/components/card-shoe.d.ts.map +1 -0
  21. package/dist/components/card-shoe.js +14 -0
  22. package/dist/components/card-shoe.js.map +1 -0
  23. package/dist/components/card-table.d.ts +7 -0
  24. package/dist/components/card-table.d.ts.map +1 -0
  25. package/dist/components/card-table.js +6 -0
  26. package/dist/components/card-table.js.map +1 -0
  27. package/dist/components/chip-rack.d.ts +6 -0
  28. package/dist/components/chip-rack.d.ts.map +1 -0
  29. package/dist/components/chip-rack.js +13 -0
  30. package/dist/components/chip-rack.js.map +1 -0
  31. package/dist/components/chip.d.ts +49 -0
  32. package/dist/components/chip.d.ts.map +1 -0
  33. package/dist/components/chip.js +81 -0
  34. package/dist/components/chip.js.map +1 -0
  35. package/dist/components/game-footer.d.ts +29 -0
  36. package/dist/components/game-footer.d.ts.map +1 -0
  37. package/dist/components/game-footer.js +72 -0
  38. package/dist/components/game-footer.js.map +1 -0
  39. package/dist/components/game-info-dialog.d.ts +23 -0
  40. package/dist/components/game-info-dialog.d.ts.map +1 -0
  41. package/dist/components/game-info-dialog.js +26 -0
  42. package/dist/components/game-info-dialog.js.map +1 -0
  43. package/dist/components/icon.d.ts +10 -0
  44. package/dist/components/icon.d.ts.map +1 -0
  45. package/dist/components/icon.js +59 -0
  46. package/dist/components/icon.js.map +1 -0
  47. package/dist/components/poker-card.d.ts +15 -0
  48. package/dist/components/poker-card.d.ts.map +1 -0
  49. package/dist/components/poker-card.js +77 -0
  50. package/dist/components/poker-card.js.map +1 -0
  51. package/dist/components/result-badge.d.ts +14 -0
  52. package/dist/components/result-badge.d.ts.map +1 -0
  53. package/dist/components/result-badge.js +71 -0
  54. package/dist/components/result-badge.js.map +1 -0
  55. package/dist/components/switch-table-dialog.d.ts +10 -0
  56. package/dist/components/switch-table-dialog.d.ts.map +1 -0
  57. package/dist/components/switch-table-dialog.js +51 -0
  58. package/dist/components/switch-table-dialog.js.map +1 -0
  59. package/dist/components/toast-container.d.ts +8 -0
  60. package/dist/components/toast-container.d.ts.map +1 -0
  61. package/dist/components/toast-container.js +8 -0
  62. package/dist/components/toast-container.js.map +1 -0
  63. package/dist/components/toast-helpers.d.ts +22 -0
  64. package/dist/components/toast-helpers.d.ts.map +1 -0
  65. package/dist/components/toast-helpers.js +47 -0
  66. package/dist/components/toast-helpers.js.map +1 -0
  67. package/dist/components/toast.d.ts +26 -0
  68. package/dist/components/toast.d.ts.map +1 -0
  69. package/dist/components/toast.js +49 -0
  70. package/dist/components/toast.js.map +1 -0
  71. package/dist/components/ui/dialog.d.ts +14 -0
  72. package/dist/components/ui/dialog.d.ts.map +1 -0
  73. package/dist/components/ui/dialog.js +35 -0
  74. package/dist/components/ui/dialog.js.map +1 -0
  75. package/dist/components/ui/drawer.d.ts +14 -0
  76. package/dist/components/ui/drawer.d.ts.map +1 -0
  77. package/dist/components/ui/drawer.js +35 -0
  78. package/dist/components/ui/drawer.js.map +1 -0
  79. package/dist/components/ui/dropdown-menu.d.ts +27 -0
  80. package/dist/components/ui/dropdown-menu.d.ts.map +1 -0
  81. package/dist/components/ui/dropdown-menu.js +39 -0
  82. package/dist/components/ui/dropdown-menu.js.map +1 -0
  83. package/dist/index.d.ts +23 -0
  84. package/dist/index.d.ts.map +1 -0
  85. package/dist/index.js +25 -0
  86. package/dist/index.js.map +1 -0
  87. package/dist/lib/utils.d.ts +3 -0
  88. package/dist/lib/utils.d.ts.map +1 -0
  89. package/dist/lib/utils.js +6 -0
  90. package/dist/lib/utils.js.map +1 -0
  91. package/dist/stories/BetPanel.stories.d.ts +10 -0
  92. package/dist/stories/BetPanel.stories.d.ts.map +1 -0
  93. package/dist/stories/BetPanel.stories.js +34 -0
  94. package/dist/stories/BetPanel.stories.js.map +1 -0
  95. package/dist/stories/Button.stories.d.ts +13 -0
  96. package/dist/stories/Button.stories.d.ts.map +1 -0
  97. package/dist/stories/Button.stories.js +39 -0
  98. package/dist/stories/Button.stories.js.map +1 -0
  99. package/dist/stories/CardScoreBadge.stories.d.ts +8 -0
  100. package/dist/stories/CardScoreBadge.stories.d.ts.map +1 -0
  101. package/dist/stories/CardScoreBadge.stories.js +21 -0
  102. package/dist/stories/CardScoreBadge.stories.js.map +1 -0
  103. package/dist/stories/CardShoe.stories.d.ts +7 -0
  104. package/dist/stories/CardShoe.stories.d.ts.map +1 -0
  105. package/dist/stories/CardShoe.stories.js +8 -0
  106. package/dist/stories/CardShoe.stories.js.map +1 -0
  107. package/dist/stories/CardTable.stories.d.ts +7 -0
  108. package/dist/stories/CardTable.stories.d.ts.map +1 -0
  109. package/dist/stories/CardTable.stories.js +15 -0
  110. package/dist/stories/CardTable.stories.js.map +1 -0
  111. package/dist/stories/Chip.stories.d.ts +11 -0
  112. package/dist/stories/Chip.stories.d.ts.map +1 -0
  113. package/dist/stories/Chip.stories.js +32 -0
  114. package/dist/stories/Chip.stories.js.map +1 -0
  115. package/dist/stories/ChipRack.stories.d.ts +7 -0
  116. package/dist/stories/ChipRack.stories.d.ts.map +1 -0
  117. package/dist/stories/ChipRack.stories.js +8 -0
  118. package/dist/stories/ChipRack.stories.js.map +1 -0
  119. package/dist/stories/Dialog.stories.d.ts +6 -0
  120. package/dist/stories/Dialog.stories.d.ts.map +1 -0
  121. package/dist/stories/Dialog.stories.js +15 -0
  122. package/dist/stories/Dialog.stories.js.map +1 -0
  123. package/dist/stories/GameFooter.stories.d.ts +7 -0
  124. package/dist/stories/GameFooter.stories.d.ts.map +1 -0
  125. package/dist/stories/GameFooter.stories.js +37 -0
  126. package/dist/stories/GameFooter.stories.js.map +1 -0
  127. package/dist/stories/Icon.stories.d.ts +9 -0
  128. package/dist/stories/Icon.stories.d.ts.map +1 -0
  129. package/dist/stories/Icon.stories.js +27 -0
  130. package/dist/stories/Icon.stories.js.map +1 -0
  131. package/dist/stories/PokerCard.stories.d.ts +14 -0
  132. package/dist/stories/PokerCard.stories.d.ts.map +1 -0
  133. package/dist/stories/PokerCard.stories.js +40 -0
  134. package/dist/stories/PokerCard.stories.js.map +1 -0
  135. package/dist/stories/ResultBadge.stories.d.ts +11 -0
  136. package/dist/stories/ResultBadge.stories.d.ts.map +1 -0
  137. package/dist/stories/ResultBadge.stories.js +32 -0
  138. package/dist/stories/ResultBadge.stories.js.map +1 -0
  139. package/dist/stories/Toast.stories.d.ts +10 -0
  140. package/dist/stories/Toast.stories.d.ts.map +1 -0
  141. package/dist/stories/Toast.stories.js +34 -0
  142. package/dist/stories/Toast.stories.js.map +1 -0
  143. package/dist/styles/casino-ui-base.css +310 -0
  144. package/dist/styles/styles/casino-ui-base.css +310 -0
  145. package/dist/styles/styles/toast.css +52 -0
  146. package/dist/styles/toast.css +52 -0
  147. package/dist/toast.css +52 -0
  148. package/dist/types.d.ts +11 -0
  149. package/dist/types.d.ts.map +1 -0
  150. package/dist/types.js +2 -0
  151. package/dist/types.js.map +1 -0
  152. package/dist/utils/format-amount.d.ts +2 -0
  153. package/dist/utils/format-amount.d.ts.map +1 -0
  154. package/dist/utils/format-amount.js +31 -0
  155. package/dist/utils/format-amount.js.map +1 -0
  156. package/package.json +58 -0
  157. package/src/assets/card-back.svg +43 -0
  158. package/src/assets/card-shoe-overlay.svg +14 -0
  159. package/src/components/bet-panel.tsx +275 -0
  160. package/src/components/button.tsx +80 -0
  161. package/src/components/card-score-badge.tsx +61 -0
  162. package/src/components/card-shoe.tsx +52 -0
  163. package/src/components/card-table.tsx +182 -0
  164. package/src/components/chip-rack.tsx +55 -0
  165. package/src/components/chip.tsx +203 -0
  166. package/src/components/game-footer.tsx +356 -0
  167. package/src/components/game-info-dialog.tsx +245 -0
  168. package/src/components/icon.tsx +94 -0
  169. package/src/components/poker-card.tsx +192 -0
  170. package/src/components/result-badge.tsx +157 -0
  171. package/src/components/switch-table-dialog.tsx +211 -0
  172. package/src/components/toast-container.tsx +25 -0
  173. package/src/components/toast-helpers.ts +79 -0
  174. package/src/components/toast.tsx +282 -0
  175. package/src/components/ui/dialog.tsx +134 -0
  176. package/src/components/ui/drawer.tsx +132 -0
  177. package/src/components/ui/dropdown-menu.tsx +210 -0
  178. package/src/env.d.ts +6 -0
  179. package/src/index.ts +88 -0
  180. package/src/lib/utils.ts +6 -0
  181. package/src/stories/BetPanel.stories.tsx +113 -0
  182. package/src/stories/Button.stories.tsx +55 -0
  183. package/src/stories/CardScoreBadge.stories.tsx +34 -0
  184. package/src/stories/CardShoe.stories.tsx +12 -0
  185. package/src/stories/Chip.stories.tsx +51 -0
  186. package/src/stories/ChipRack.stories.tsx +12 -0
  187. package/src/stories/Dialog.stories.tsx +45 -0
  188. package/src/stories/GameFooter.stories.tsx +45 -0
  189. package/src/stories/Icon.stories.tsx +49 -0
  190. package/src/stories/PokerCard.stories.tsx +72 -0
  191. package/src/stories/ResultBadge.stories.tsx +51 -0
  192. package/src/stories/Toast.stories.tsx +71 -0
  193. package/src/styles/casino-ui-base.css +310 -0
  194. package/src/styles/toast.css +52 -0
  195. package/src/types.ts +11 -0
  196. package/src/utils/format-amount.ts +35 -0
@@ -0,0 +1,77 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cn } from "../lib/utils";
3
+ import cardBackImg from "../assets/card-back.svg";
4
+ const BADGE_COLORS = {
5
+ default: "border-card-border",
6
+ push: "border-card-border",
7
+ win: "border-[#8BB339]",
8
+ lose: "border-[#DB375E]",
9
+ bust: "border-[#DB375E]",
10
+ blackjack: "border-[#FF5C05]",
11
+ even: "border-card-border",
12
+ surrender: "border-card-border",
13
+ };
14
+ const SUIT_SVGS = {
15
+ heart: `<svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21" fill="none"><path d="M13.8295 3.98242C12.7564 3.98242 11.7463 4.40032 10.9871 5.16052L10.4999 5.64772L10.0127 5.16052C9.2525 4.40032 8.24345 3.98242 7.17035 3.98242C4.95275 3.98242 3.1499 5.78527 3.1499 8.00287C3.1499 9.07597 3.5678 10.0861 4.328 10.8452L10.4999 17.0171L16.6718 10.8452C17.432 10.085 17.8499 9.07597 17.8499 8.00287C17.8499 5.78527 16.0471 3.98242 13.8295 3.98242ZM15.1871 9.36052L10.4999 14.0477L5.8127 9.36052C5.4494 8.99722 5.2499 8.51527 5.2499 8.00287C5.2499 6.94342 6.1109 6.08242 7.17035 6.08242C7.68275 6.08242 8.1647 6.28192 8.528 6.64522L10.4999 8.61712L12.4718 6.64522C12.8351 6.28192 13.3171 6.08242 13.8295 6.08242C14.8889 6.08242 15.7499 6.94342 15.7499 8.00287C15.7499 8.51527 15.5504 8.99722 15.1871 9.36052Z" fill="currentColor"/><path d="M15.1871 9.36052L10.4999 14.0477L5.8127 9.36052C5.4494 8.99722 5.2499 8.51527 5.2499 8.00287C5.2499 6.94342 6.1109 6.08242 7.17035 6.08242C7.68275 6.08242 8.1647 6.28192 8.528 6.64522L10.4999 8.61712L12.4718 6.64522C12.8351 6.28192 13.3171 6.08242 13.8295 6.08242C14.8889 6.08242 15.7499 6.94342 15.7499 8.00287C15.7499 8.51527 15.5504 8.99722 15.1871 9.36052Z" fill="currentColor"/></svg>`,
16
+ spade: `<svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21" fill="none">
17
+ <path d="M10.4999 2.93262L4.328 9.10452C3.5678 9.86472 3.1499 10.8738 3.1499 11.9469C3.1499 14.1645 4.95275 15.9673 7.17035 15.9673C7.99775 15.9673 8.7842 15.7132 9.4499 15.2523V18.0673H11.5499V15.2523C12.2156 15.7132 13.0021 15.9673 13.8295 15.9673C16.0471 15.9673 17.8499 14.1645 17.8499 11.9469C17.8499 10.8738 17.432 9.86367 16.6718 9.10452L10.4999 2.93262ZM13.8295 13.8673C13.3171 13.8673 12.8351 13.6678 12.4718 13.3045L10.4999 11.3326L8.528 13.3045C8.1647 13.6678 7.68275 13.8673 7.17035 13.8673C6.1109 13.8673 5.2499 13.0063 5.2499 11.9469C5.2499 11.4345 5.4494 10.9525 5.8127 10.5892L10.4999 5.90202L15.1871 10.5892C15.5504 10.9525 15.7499 11.4345 15.7499 11.9469C15.7499 13.0063 14.8889 13.8673 13.8295 13.8673Z" fill="currentColor"/>
18
+ <path d="M13.8295 13.8673C13.3171 13.8673 12.8351 13.6678 12.4718 13.3045L10.4999 11.3326L8.528 13.3045C8.1647 13.6678 7.68275 13.8673 7.17035 13.8673C6.1109 13.8673 5.2499 13.0063 5.2499 11.9469C5.2499 11.4345 5.4494 10.9525 5.8127 10.5892L10.4999 5.90202L15.1871 10.5892C15.5504 10.9525 15.7499 11.4345 15.7499 11.9469C15.7499 13.0063 14.8889 13.8673 13.8295 13.8673Z" fill="currentColor"/>
19
+ </svg>`,
20
+ diamond: `<svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 15 15" fill="none"><path d="M2.01221 7.50041L7.49996 13.9032L12.9877 7.50041L7.49996 1.09766L2.01221 7.50041ZM7.49996 11.5977L3.98771 7.50041L7.49996 3.40315L11.0122 7.50041L7.49996 11.5977Z" fill="currentColor"/><path d="M7.49996 11.5977L3.98771 7.50041L7.49996 3.40315L11.0122 7.50041L7.49996 11.5977Z" fill="currentColor"/></svg>`,
21
+ club: `<svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21" fill="none">
22
+ <path d="M14.6978 7.48269C14.6989 7.43859 14.6999 7.39449 14.6999 7.35039C14.6999 5.03409 12.8162 3.15039 10.4999 3.15039C8.1836 3.15039 6.2999 5.03409 6.2999 7.35039C6.2999 7.39449 6.30095 7.43859 6.302 7.48269C4.4918 7.94889 3.1499 9.59634 3.1499 11.5504C3.1499 13.8667 5.0336 15.7504 7.3499 15.7504C8.11955 15.7504 8.82935 15.5236 9.4499 15.1603V17.8504H11.5499V15.1603C12.1705 15.5236 12.8803 15.7504 13.6499 15.7504C15.9662 15.7504 17.8499 13.8667 17.8499 11.5504C17.8499 9.59634 16.508 7.94889 14.6978 7.48269ZM13.6499 13.6504C12.4918 13.6504 11.5499 12.7085 11.5499 11.5504H9.4499C9.4499 12.7085 8.50805 13.6504 7.3499 13.6504C6.19175 13.6504 5.2499 12.7085 5.2499 11.5504C5.2499 10.3922 6.1907 9.45039 7.3184 9.45039L9.0803 9.56484L8.53535 8.06124C8.444 7.81029 8.3999 7.57719 8.3999 7.35039C8.3999 6.19224 9.34175 5.25039 10.4999 5.25039C11.6581 5.25039 12.5999 6.19224 12.5999 7.35039C12.5999 7.57719 12.5558 7.81029 12.4645 8.06229L11.9195 9.56589L13.5155 9.46824L13.6499 9.45039C14.8081 9.45039 15.7499 10.3922 15.7499 11.5504C15.7499 12.7085 14.8081 13.6504 13.6499 13.6504Z" fill="currentColor"/>
23
+ <path d="M13.6499 13.6504C12.4918 13.6504 11.5499 12.7085 11.5499 11.5504H9.4499C9.4499 12.7085 8.50805 13.6504 7.3499 13.6504C6.19175 13.6504 5.2499 12.7085 5.2499 11.5504C5.2499 10.3922 6.1907 9.45039 7.3184 9.45039L9.0803 9.56484L8.53535 8.06124C8.444 7.81029 8.3999 7.57719 8.3999 7.35039C8.3999 6.19224 9.34175 5.25039 10.4999 5.25039C11.6581 5.25039 12.5999 6.19224 12.5999 7.35039C12.5999 7.57719 12.5558 7.81029 12.4645 8.06229L11.9195 9.56589L13.5155 9.46824L13.6499 9.45039C14.8081 9.45039 15.7499 10.3922 15.7499 11.5504C15.7499 12.7085 14.8081 13.6504 13.6499 13.6504Z" fill="currentColor"/>
24
+ </svg>`,
25
+ };
26
+ const SUIT_CONFIG = {
27
+ heart: { colorClass: "text-card-suit-red" },
28
+ diamond: { colorClass: "text-card-suit-red" },
29
+ spade: { colorClass: "text-card-suit-black" },
30
+ club: { colorClass: "text-card-suit-black" },
31
+ };
32
+ function SuitIcon({ suit, className }) {
33
+ const suitSvg = SUIT_SVGS[suit];
34
+ if (!suitSvg) {
35
+ return null;
36
+ }
37
+ const processedSvg = suitSvg
38
+ .replace(/\swidth="[^"]*"/g, ' width="100%"')
39
+ .replace(/\sheight="[^"]*"/g, ' height="100%"')
40
+ .replace(/\sclass="[^"]*"/g, "")
41
+ .replace(/\sstyle="[^"]*"/g, "");
42
+ return (_jsx("div", { className: className, dangerouslySetInnerHTML: {
43
+ __html: processedSvg,
44
+ } }));
45
+ }
46
+ export function PokerCard({ suit, rank, side = "front", backImage, className, showShadow = true, size = "lg", type = "default", }) {
47
+ const isXs = size === "xs";
48
+ const isMd = size === "md";
49
+ const isSmall = size === "sm";
50
+ const sizeClass = isXs
51
+ ? "w-6 h-8.5 rounded-[4px]"
52
+ : isSmall
53
+ ? "w-7 h-10 rounded-[4px]"
54
+ : isMd
55
+ ? "w-9 h-12.5 rounded-[4.62px]"
56
+ : "w-10 h-14 rounded-[4.62px]";
57
+ const shadow = isXs
58
+ ? "drop-shadow(0px 1px 0px #404040)"
59
+ : "drop-shadow(0px 2px 0px #404040)";
60
+ const backShadow = isXs
61
+ ? "drop-shadow(0px 1px 0px #122741)"
62
+ : "drop-shadow(0px 2px 0px #122741)";
63
+ const badgeColor = BADGE_COLORS[type];
64
+ if (side === "back") {
65
+ return (_jsx("div", { className: cn("relative bg-card-back-bg border overflow-clip", badgeColor, sizeClass, className), style: {
66
+ filter: showShadow ? backShadow : "none",
67
+ }, children: _jsx("div", { className: "absolute inset-0", children: _jsx("img", { src: backImage ?? cardBackImg, alt: "", className: "absolute inset-0 size-full object-cover pointer-events-none" }) }) }));
68
+ }
69
+ if (!suit || !rank)
70
+ return null;
71
+ const { colorClass } = SUIT_CONFIG[suit];
72
+ return (_jsxs("div", { className: cn("relative bg-white border overflow-clip", badgeColor, sizeClass, className), style: {
73
+ containerType: "inline-size",
74
+ filter: showShadow ? shadow : "none",
75
+ }, children: [_jsx("span", { className: cn("absolute top-[2%] w-[35%] text-center font-bold leading-none", colorClass, rank === "10" ? "-tracking-[1.8px] left-[3%]" : "left-[10%]"), style: { fontSize: "50cqi" }, children: rank }), _jsx(SuitIcon, { suit: suit, className: cn("absolute top-[8%] right-[8%] w-[37.5%] aspect-square", colorClass) }), _jsx(SuitIcon, { suit: suit, className: cn("absolute bottom-[6%] left-[3%] w-[52.5%] aspect-square", colorClass) })] }));
76
+ }
77
+ //# sourceMappingURL=poker-card.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poker-card.js","sourceRoot":"","sources":["../../src/components/poker-card.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ export type ResultType = "win" | "lose" | "bust" | "push" | "blackjack" | "even" | "surrender";
2
+ interface ResultBadgeProps {
3
+ type: ResultType;
4
+ amount?: string;
5
+ showPayout?: boolean;
6
+ assetIconUrl?: string | React.ReactNode;
7
+ isUSD?: boolean;
8
+ className?: string;
9
+ isMobile?: boolean;
10
+ isMobileSeat?: boolean;
11
+ }
12
+ export declare function ResultBadge({ type, amount, showPayout, assetIconUrl, isUSD, className, isMobile, isMobileSeat, }: ResultBadgeProps): import("react/jsx-runtime").JSX.Element;
13
+ export {};
14
+ //# sourceMappingURL=result-badge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-badge.d.ts","sourceRoot":"","sources":["../../src/components/result-badge.tsx"],"names":[],"mappings":"AAEA,MAAM,MAAM,UAAU,GAClB,KAAK,GACL,MAAM,GACN,MAAM,GACN,MAAM,GACN,WAAW,GACX,MAAM,GACN,WAAW,CAAC;AAEhB,UAAU,gBAAgB;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IACxC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAgED,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,MAAY,EACZ,UAAkB,EAClB,YAAY,EACZ,KAAa,EACb,SAAS,EACT,QAAgB,EAChB,YAAoB,GACrB,EAAE,gBAAgB,2CA+DlB"}
@@ -0,0 +1,71 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cn } from "../lib/utils";
3
+ const BADGE_STYLES = {
4
+ win: {
5
+ border: "border-[#8BB339]",
6
+ text: "text-[#8BB339]",
7
+ bg: "bg-[rgba(199,254,81,0.08)]",
8
+ },
9
+ lose: {
10
+ border: "border-[#DB375E]",
11
+ text: "text-[#DB375E]",
12
+ bg: "bg-[rgba(219,55,94,0.08)]",
13
+ },
14
+ bust: {
15
+ border: "border-[#DB375E]",
16
+ text: "text-[#DB375E]",
17
+ bg: "bg-[rgba(219,55,94,0.08)]",
18
+ },
19
+ push: {
20
+ border: "border-[#7454F0]",
21
+ text: "text-[#7454F0]",
22
+ bg: "bg-[#7454F0]/12",
23
+ },
24
+ blackjack: {
25
+ border: "border-[#FF5C05]",
26
+ text: "text-[#FF5C05]",
27
+ bg: "bg-[rgba(255,92,5,0.08)]",
28
+ shadow: "shadow-[0_0_5px_2px_rgba(255,92,5,0.6)]",
29
+ },
30
+ even: {
31
+ border: "border-[#7454F0]",
32
+ text: "text-[#7454F0]",
33
+ bg: "bg-[#7454F0]/12",
34
+ },
35
+ surrender: {
36
+ border: "border-[#8A8A8A]",
37
+ text: "text-[#8A8A8A]",
38
+ bg: "bg-[rgba(138,138,138,0.08)]",
39
+ },
40
+ };
41
+ const PAYOUT_TEXT_COLORS = {
42
+ win: "text-[#8BB339]",
43
+ lose: "text-[#DB375E]",
44
+ bust: "text-[#DB375E]",
45
+ push: "text-[#BFBFBF]",
46
+ blackjack: "text-brand",
47
+ even: "text-[#7454F0]",
48
+ surrender: "text-[#BFBFBF]",
49
+ };
50
+ const LABELS = {
51
+ win: "Win",
52
+ lose: "Lose",
53
+ bust: "Bust",
54
+ push: "Push",
55
+ blackjack: "Blackjack",
56
+ even: "Break Even",
57
+ surrender: "Surrender",
58
+ };
59
+ export function ResultBadge({ type, amount = "0", showPayout = false, assetIconUrl, isUSD = false, className, isMobile = false, isMobileSeat = false, }) {
60
+ const style = BADGE_STYLES[type];
61
+ return (_jsx("div", { className: cn("flex items-center justify-center border", isMobile
62
+ ? isMobileSeat
63
+ ? "w-18.5 h-4.5 rounded-sm p-1"
64
+ : "w-18.5 h-5.5 rounded-sm px-1 py-1.5"
65
+ : "w-25 h-6.5 rounded-md p-1", style.border, style.bg, style.shadow, className), children: showPayout ? (_jsxs("div", { className: "flex items-center gap-1", children: [isUSD ? (_jsx("span", { className: cn("text-xs ", isMobile
66
+ ? "leading-2.5 font-semibold"
67
+ : "leading-3.5 font-bold", PAYOUT_TEXT_COLORS[type]), children: "$" })) : assetIconUrl ? (typeof assetIconUrl === "string" ? (_jsx("img", { src: assetIconUrl, alt: "", className: "w-4 h-4" })) : (_jsx("div", { className: "w-4 h-4", children: assetIconUrl }))) : null, _jsx("span", { className: cn("text-xs", isMobile ? "leading-2.5 font-semibold" : "leading-3.5 font-bold", PAYOUT_TEXT_COLORS[type]), children: amount })] })) : (_jsx("span", { className: cn(isMobile
68
+ ? "text-xs leading-2.5"
69
+ : "text-sm leading-3.5 font-semibold", style.text), children: LABELS[type] })) }));
70
+ }
71
+ //# sourceMappingURL=result-badge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-badge.js","sourceRoot":"","sources":["../../src/components/result-badge.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ interface SwitchTableDialogProps {
2
+ open: boolean;
3
+ onOpenChange: (open: boolean) => void;
4
+ currentTableId: string;
5
+ onJoin: (tableIdOrLink: string) => void;
6
+ isMobile?: boolean;
7
+ }
8
+ declare function SwitchTableDialog({ open, onOpenChange, currentTableId, onJoin, isMobile, }: SwitchTableDialogProps): import("react/jsx-runtime").JSX.Element;
9
+ export default SwitchTableDialog;
10
+ //# sourceMappingURL=switch-table-dialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch-table-dialog.d.ts","sourceRoot":"","sources":["../../src/components/switch-table-dialog.tsx"],"names":[],"mappings":"AAqBA,UAAU,sBAAsB;IAC9B,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AA2FD,iBAAS,iBAAiB,CAAC,EACzB,IAAI,EACJ,YAAY,EACZ,cAAc,EACd,MAAM,EACN,QAAgB,GACjB,EAAE,sBAAsB,2CAoFxB;AAED,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState, useCallback } from "react";
3
+ import { Dialog, DialogClose, DialogContent, DialogFooter, DialogHeader, DialogTitle, } from "./ui/dialog";
4
+ import { Drawer, DrawerClose, DrawerContent, DrawerFooter, DrawerHeader, DrawerTitle, } from "./ui/drawer";
5
+ import { Icon } from "./icon";
6
+ import { Button } from "./button";
7
+ import { toast } from "./toast-helpers";
8
+ function SwitchTableBody({ currentTableId, inputValue, onInputChange, }) {
9
+ const [copied, setCopied] = useState(false);
10
+ const handleCopy = useCallback(async () => {
11
+ try {
12
+ await navigator.clipboard.writeText(currentTableId);
13
+ setCopied(true);
14
+ setTimeout(() => setCopied(false), 2000);
15
+ }
16
+ catch {
17
+ toast.status.error("Failed to copy table ID");
18
+ }
19
+ }, [currentTableId]);
20
+ return (_jsxs("div", { className: "w-full flex flex-col gap-3 px-5", children: [_jsxs("div", { className: "w-full flex items-center gap-2", children: [_jsx("span", { className: "text-text-secondary text-sm", children: "Current table ID:" }), _jsx("span", { className: "font-semibold text-white truncate w-40 text-sm", children: currentTableId }), _jsx("button", { type: "button", onClick: handleCopy, className: "min-w-4 cursor-pointer text-text-secondary transition-colors hover:text-white", children: copied ? (_jsx(Icon, { icon: "check", className: "size-4 text-accent-success" })) : (_jsx(Icon, { icon: "copy", className: "size-4" })) })] }), _jsx("input", { type: "text", value: inputValue, onChange: (e) => onInputChange(e.target.value), placeholder: "Enter a table ID", className: "w-full rounded-xl border border-button-grey bg-surface-500 p-3 text-sm text-white placeholder:text-text-secondary outline-none focus:border-surface-200 ease-in-out duration-300" }), _jsxs("div", { className: "flex items-center gap-2 text-xs text-text-secondary", children: [_jsx(Icon, { icon: "info", className: "size-4 shrink-0" }), _jsx("span", { children: "Leaving this table will end the current game." })] })] }));
21
+ }
22
+ function SwitchTableFooter({ inputValue, onCancel, onJoin, }) {
23
+ return (_jsxs("div", { className: "w-full flex items-center gap-3", children: [_jsx(Button, { variant: "tertiary", type: "button", onClick: onCancel, className: "w-full flex-1 min-w-0 h-10 rounded-xl", children: "Cancel" }), _jsx(Button, { variant: "primary", type: "button", onClick: onJoin, disabled: !inputValue.trim(), className: "w-full flex-1 min-w-0 h-10 rounded-xl", children: "Join" })] }));
24
+ }
25
+ function SwitchTableDialog({ open, onOpenChange, currentTableId, onJoin, isMobile = false, }) {
26
+ const [inputValue, setInputValue] = useState("");
27
+ const handleJoin = useCallback(() => {
28
+ const trimmed = inputValue.trim();
29
+ if (!trimmed)
30
+ return;
31
+ const uuidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
32
+ const isUuid = uuidRegex.test(trimmed);
33
+ if (!isUuid) {
34
+ toast.status.error("Invalid table ID");
35
+ return;
36
+ }
37
+ setInputValue("");
38
+ onOpenChange(false);
39
+ onJoin(trimmed);
40
+ }, [inputValue, onOpenChange, onJoin]);
41
+ const handleCancel = useCallback(() => {
42
+ setInputValue("");
43
+ onOpenChange(false);
44
+ }, [onOpenChange]);
45
+ if (isMobile) {
46
+ return (_jsx(Drawer, { open: open, onOpenChange: onOpenChange, children: _jsxs(DrawerContent, { className: "rounded-t-xl overflow-clip bg-surface-400 border-none", children: [_jsxs(DrawerHeader, { className: "flex items-start justify-between p-5", children: [_jsx(DrawerTitle, { className: "text-2xl font-bold text-left", children: "Switch Table" }), _jsx(DrawerClose, { className: "min-w-6 cursor-pointer opacity-70 transition-opacity hover:opacity-100", children: _jsx(Icon, { icon: "x", className: "size-6" }) })] }), _jsx(SwitchTableBody, { currentTableId: currentTableId, inputValue: inputValue, onInputChange: setInputValue }), _jsx(DrawerFooter, { className: "border-t border-surface-300 bg-surface-450 px-5 pt-5 pb-6 mt-5", children: _jsx(SwitchTableFooter, { inputValue: inputValue, onCancel: handleCancel, onJoin: handleJoin }) })] }) }));
47
+ }
48
+ return (_jsx(Dialog, { open: open, onOpenChange: onOpenChange, children: _jsxs(DialogContent, { className: "w-100 rounded-xl overflow-clip bg-surface-400 gap-5", children: [_jsxs(DialogHeader, { className: "flex items-start justify-between px-5 pt-5", children: [_jsx(DialogTitle, { className: "text-2xl font-bold", children: "Switch Table" }), _jsx(DialogClose, { className: "min-w-6 cursor-pointer opacity-70 transition-opacity hover:opacity-100", children: _jsx(Icon, { icon: "x", className: "size-6" }) })] }), _jsx(SwitchTableBody, { currentTableId: currentTableId, inputValue: inputValue, onInputChange: setInputValue }), _jsx(DialogFooter, { className: "border-t border-surface-300 bg-surface-450 px-5 pt-5 pb-6", children: _jsx(SwitchTableFooter, { inputValue: inputValue, onCancel: handleCancel, onJoin: handleJoin }) })] }) }));
49
+ }
50
+ export default SwitchTableDialog;
51
+ //# sourceMappingURL=switch-table-dialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch-table-dialog.js","sourceRoot":"","sources":["../../src/components/switch-table-dialog.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { type ToastPosition } from "react-toastify";
2
+ import "react-toastify/dist/ReactToastify.css";
3
+ import "../styles/toast.css";
4
+ export declare function CasinoToastContainer({ limit, position, }?: {
5
+ limit?: number;
6
+ position?: ToastPosition;
7
+ }): import("react/jsx-runtime").JSX.Element;
8
+ //# sourceMappingURL=toast-container.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast-container.d.ts","sourceRoot":"","sources":["../../src/components/toast-container.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,uCAAuC,CAAC;AAC/C,OAAO,qBAAqB,CAAC;AAE7B,wBAAgB,oBAAoB,CAAC,EACnC,KAAS,EACT,QAAwB,GACzB,GAAE;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,aAAa,CAAC;CACrB,2CAcL"}
@@ -0,0 +1,8 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { ToastContainer, Zoom } from "react-toastify";
3
+ import "react-toastify/dist/ReactToastify.css";
4
+ import "../styles/toast.css";
5
+ export function CasinoToastContainer({ limit = 5, position = "bottom-left", } = {}) {
6
+ return (_jsx("div", { className: "casino-toast", children: _jsx(ToastContainer, { position: position, limit: limit, newestOnTop: true, pauseOnFocusLoss: false, transition: Zoom, draggable: false, hideProgressBar: true }) }));
7
+ }
8
+ //# sourceMappingURL=toast-container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast-container.js","sourceRoot":"","sources":["../../src/components/toast-container.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,IAAI,EAAsB,MAAM,gBAAgB,CAAC;AAC1E,OAAO,uCAAuC,CAAC;AAC/C,OAAO,qBAAqB,CAAC;AAE7B,MAAM,UAAU,oBAAoB,CAAC,EACnC,KAAK,GAAG,CAAC,EACT,QAAQ,GAAG,aAAa,MAItB,EAAE;IACJ,OAAO,CACL,cAAK,SAAS,EAAC,cAAc,YAC3B,KAAC,cAAc,IACb,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,WAAW,QACX,gBAAgB,EAAE,KAAK,EACvB,UAAU,EAAE,IAAI,EAChB,SAAS,EAAE,KAAK,EAChB,eAAe,SACf,GACE,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { type ToastAction } from "./toast";
2
+ export declare const toast: {
3
+ readonly info: (message: string) => void;
4
+ readonly success: (message: string) => void;
5
+ readonly status: {
6
+ readonly info: (message: string, opts?: {
7
+ title?: string;
8
+ }) => import("react-toastify").Id;
9
+ readonly success: (message: string, opts?: {
10
+ title?: string;
11
+ }) => import("react-toastify").Id;
12
+ readonly error: (message: string, opts?: {
13
+ title?: string;
14
+ }) => import("react-toastify").Id;
15
+ };
16
+ readonly action: (opts: {
17
+ title?: string;
18
+ message: string;
19
+ actions: ToastAction[];
20
+ }) => import("react-toastify").Id;
21
+ };
22
+ //# sourceMappingURL=toast-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast-helpers.d.ts","sourceRoot":"","sources":["../../src/components/toast-helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,WAAW,EAGjB,MAAM,SAAS,CAAC;AAuDjB,eAAO,MAAM,KAAK;6BACA,MAAM;gCACH,MAAM;;iCAGP,MAAM,SAAS;YAAE,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE;oCAE9B,MAAM,SAAS;YAAE,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE;kCAEnC,MAAM,SAAS;YAAE,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE;;4BAIrC;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,WAAW,EAAE,CAAA;KAAE;CAElE,CAAC"}
@@ -0,0 +1,47 @@
1
+ import { toast as toastify } from "react-toastify";
2
+ import { EphemeralToast, StatusToast, ActionToast, } from "./toast";
3
+ import React from "react";
4
+ function renderEphemeral(message, variant) {
5
+ toastify(React.createElement(EphemeralToast, { message, variant }), {
6
+ autoClose: 2500,
7
+ closeButton: false,
8
+ closeOnClick: true,
9
+ });
10
+ }
11
+ function renderStatus(message, variant, opts) {
12
+ const toastId = toastify(({ closeToast }) => React.createElement(StatusToast, {
13
+ message,
14
+ variant,
15
+ title: opts?.title,
16
+ onClose: () => closeToast?.(),
17
+ }), {
18
+ autoClose: 5000,
19
+ closeButton: false,
20
+ closeOnClick: false,
21
+ });
22
+ return toastId;
23
+ }
24
+ function renderAction(opts) {
25
+ const toastId = toastify(({ closeToast }) => React.createElement(ActionToast, {
26
+ message: opts.message,
27
+ title: opts.title,
28
+ actions: opts.actions,
29
+ onClose: () => closeToast?.(),
30
+ }), {
31
+ autoClose: false,
32
+ closeButton: false,
33
+ closeOnClick: false,
34
+ });
35
+ return toastId;
36
+ }
37
+ export const toast = {
38
+ info: (message) => renderEphemeral(message, "info"),
39
+ success: (message) => renderEphemeral(message, "success"),
40
+ status: {
41
+ info: (message, opts) => renderStatus(message, "info", opts),
42
+ success: (message, opts) => renderStatus(message, "success", opts),
43
+ error: (message, opts) => renderStatus(message, "error", opts),
44
+ },
45
+ action: (opts) => renderAction(opts),
46
+ };
47
+ //# sourceMappingURL=toast-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast-helpers.js","sourceRoot":"","sources":["../../src/components/toast-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EACL,cAAc,EACd,WAAW,EACX,WAAW,GAIZ,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,SAAS,eAAe,CAAC,OAAe,EAAE,OAAyB;IACjE,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE;QAClE,SAAS,EAAE,IAAI;QACf,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,IAAI;KACnB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,YAAY,CACnB,OAAe,EACf,OAAsB,EACtB,IAAyB;IAEzB,MAAM,OAAO,GAAG,QAAQ,CACtB,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CACjB,KAAK,CAAC,aAAa,CAAC,WAAW,EAAE;QAC/B,OAAO;QACP,OAAO;QACP,KAAK,EAAE,IAAI,EAAE,KAAK;QAClB,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,EAAE;KAC9B,CAAC,EACJ;QACE,SAAS,EAAE,IAAI;QACf,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,KAAK;KACpB,CACF,CAAC;IACF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,IAIrB;IACC,MAAM,OAAO,GAAG,QAAQ,CACtB,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CACjB,KAAK,CAAC,aAAa,CAAC,WAAW,EAAE;QAC/B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,EAAE;KAC9B,CAAC,EACJ;QACE,SAAS,EAAE,KAAK;QAChB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,KAAK;KACpB,CACF,CAAC;IACF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,IAAI,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC;IAC3D,OAAO,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC;IAEjE,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,OAAe,EAAE,IAAyB,EAAE,EAAE,CACnD,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC;QACrC,OAAO,EAAE,CAAC,OAAe,EAAE,IAAyB,EAAE,EAAE,CACtD,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC;QACxC,KAAK,EAAE,CAAC,OAAe,EAAE,IAAyB,EAAE,EAAE,CACpD,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;KACvC;IAED,MAAM,EAAE,CAAC,IAAiE,EAAE,EAAE,CAC5E,YAAY,CAAC,IAAI,CAAC;CACZ,CAAC"}
@@ -0,0 +1,26 @@
1
+ import React from "react";
2
+ export type EphemeralVariant = "info" | "success";
3
+ export type StatusVariant = "info" | "success" | "error";
4
+ export interface ToastAction {
5
+ label: string;
6
+ icon?: React.ReactNode;
7
+ onClick: () => void;
8
+ highlight?: boolean;
9
+ }
10
+ export declare function EphemeralToast({ message, variant, }: {
11
+ message: string;
12
+ variant: EphemeralVariant;
13
+ }): import("react/jsx-runtime").JSX.Element;
14
+ export declare function StatusToast({ message, title, variant, onClose, }: {
15
+ message: string;
16
+ title?: string;
17
+ variant: StatusVariant;
18
+ onClose?: () => void;
19
+ }): import("react/jsx-runtime").JSX.Element;
20
+ export declare function ActionToast({ message, title, actions, onClose, }: {
21
+ message: string;
22
+ title?: string;
23
+ actions: ToastAction[];
24
+ onClose?: () => void;
25
+ }): import("react/jsx-runtime").JSX.Element;
26
+ //# sourceMappingURL=toast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../src/components/toast.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAAC;AAClD,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AAEzD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AA0ID,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,OAAgB,GACjB,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,gBAAgB,CAAC;CAC3B,2CAWA;AAID,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,KAAK,EACL,OAAgB,EAChB,OAAO,GACR,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,aAAa,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,2CA8BA;AAID,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,KAAK,EACL,OAAO,EACP,OAAO,GACR,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,2CA0DA"}
@@ -0,0 +1,49 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /* ── Self-contained SVG icons ─────────────────────────── */
3
+ function InfoIcon({ className }) {
4
+ return (_jsx("svg", { className: className, width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M10 1.667A8.333 8.333 0 1 0 10 18.333 8.333 8.333 0 0 0 10 1.667ZM10.833 6.667a.833.833 0 1 1-1.666 0 .833.833 0 0 1 1.666 0ZM10 8.75a.625.625 0 0 1 .625.625v4.375a.625.625 0 1 1-1.25 0V9.375A.625.625 0 0 1 10 8.75Z", fill: "var(--toast-icon-info, #3FC1FF)" }) }));
5
+ }
6
+ function CheckIcon({ className }) {
7
+ return (_jsx("svg", { className: className, width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { d: "M16.707 5.293a1 1 0 0 1 0 1.414l-8 8a1 1 0 0 1-1.414 0l-4-4a1 1 0 1 1 1.414-1.414L8 12.586l7.293-7.293a1 1 0 0 1 1.414 0Z", fill: "var(--toast-icon-success, #00A95D)" }) }));
8
+ }
9
+ function SuccessCircleIcon({ className }) {
10
+ return (_jsx("svg", { className: className, width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M10 1.667A8.333 8.333 0 1 0 10 18.333 8.333 8.333 0 0 0 10 1.667Zm3.577 6.077a.625.625 0 1 0-.904-.863L8.75 11.21 7.328 9.674a.625.625 0 1 0-.905.862l1.875 1.968a.625.625 0 0 0 .905 0l4.374-4.76Z", fill: "var(--toast-icon-success, #00A95D)" }) }));
11
+ }
12
+ function ErrorCircleIcon({ className }) {
13
+ return (_jsx("svg", { className: className, width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M10 1.667A8.333 8.333 0 1 0 10 18.333 8.333 8.333 0 0 0 10 1.667ZM10.833 6.667a.833.833 0 1 1-1.666 0 .833.833 0 0 1 1.666 0ZM10 8.75a.625.625 0 0 1 .625.625v4.375a.625.625 0 1 1-1.25 0V9.375A.625.625 0 0 1 10 8.75Z", fill: "var(--toast-icon-error, #AF1B45)" }) }));
14
+ }
15
+ function WarningIcon({ className }) {
16
+ return (_jsx("svg", { className: className, width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M10 1.667A8.333 8.333 0 1 0 10 18.333 8.333 8.333 0 0 0 10 1.667ZM10.833 6.667a.833.833 0 1 1-1.666 0 .833.833 0 0 1 1.666 0ZM10 8.75a.625.625 0 0 1 .625.625v4.375a.625.625 0 1 1-1.25 0V9.375A.625.625 0 0 1 10 8.75Z", fill: "var(--toast-icon-warning, #AF1B45)" }) }));
17
+ }
18
+ function CloseIcon({ className }) {
19
+ return (_jsx("svg", { className: className, width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { d: "M12.207 4.707a1 1 0 0 0-1.414-1.414L8 6.086 5.207 3.293a1 1 0 0 0-1.414 1.414L6.586 7.5l-2.793 2.793a1 1 0 1 0 1.414 1.414L8 8.914l2.793 2.793a1 1 0 0 0 1.414-1.414L9.414 7.5l2.793-2.793Z", fill: "var(--toast-text-secondary, #BFBFBF)" }) }));
20
+ }
21
+ /* ── Icon resolver per toast kind + variant ────────────── */
22
+ const EPHEMERAL_ICON = {
23
+ info: InfoIcon,
24
+ success: CheckIcon,
25
+ };
26
+ const STATUS_ICON = {
27
+ info: InfoIcon,
28
+ success: SuccessCircleIcon,
29
+ error: ErrorCircleIcon,
30
+ };
31
+ /* ── Ephemeral Toast ──────────────────────────────────── */
32
+ export function EphemeralToast({ message, variant = "info", }) {
33
+ const Icon = EPHEMERAL_ICON[variant];
34
+ return (_jsxs("div", { className: "casino-toast-ephemeral flex gap-3 items-start rounded-xl border border-(--toast-border,rgba(255,255,255,0.04)) bg-(--toast-bg,#1F1F1F) p-3 shadow-(--toast-shadow,0px_6px_15px_-3px_rgba(0,0,0,0.15)) w-[330px]", children: [_jsx(Icon, { className: "shrink-0" }), _jsx("p", { className: "text-sm font-normal text-(--toast-text-primary,#FFFFFF) leading-5 overflow-hidden text-ellipsis", children: message })] }));
35
+ }
36
+ /* ── Status Toast ─────────────────────────────────────── */
37
+ export function StatusToast({ message, title, variant = "info", onClose, }) {
38
+ const Icon = STATUS_ICON[variant];
39
+ return (_jsxs("div", { className: "casino-toast-status flex gap-2 rounded-xl border border-(--toast-border,rgba(255,255,255,0.04)) bg-(--toast-bg,#1F1F1F) p-3 shadow-(--toast-shadow,0px_6px_15px_-3px_rgba(0,0,0,0.15)) w-[354px] items-start", children: [_jsxs("div", { className: `flex gap-3 flex-1 min-w-0`, children: [_jsx(Icon, { className: "shrink-0" }), _jsxs("div", { className: "flex flex-col min-w-0", children: [title && (_jsx("p", { className: "text-base font-semibold text-(--toast-text-primary,#FFFFFF) leading-[19.2px] tracking-[-0.32px] overflow-hidden text-ellipsis", children: title })), _jsx("p", { className: "text-sm font-normal text-(--toast-text-secondary,#BFBFBF) leading-5 overflow-hidden text-ellipsis", children: message })] })] }), onClose && (_jsx("button", { type: "button", onClick: onClose, className: "shrink-0 cursor-pointer opacity-60 hover:opacity-100 transition-opacity", "aria-label": "Close", children: _jsx(CloseIcon, {}) }))] }));
40
+ }
41
+ /* ── Action Toast ─────────────────────────────────────── */
42
+ export function ActionToast({ message, title, actions, onClose, }) {
43
+ return (_jsxs("div", { className: "casino-toast-action flex gap-2 items-start rounded-xl border border-(--toast-border,rgba(255,255,255,0.04)) bg-(--toast-bg,#1F1F1F) p-3 shadow-(--toast-shadow,0px_6px_15px_-3px_rgba(0,0,0,0.15)) w-[354px]", children: [_jsxs("div", { className: "flex gap-3 items-start flex-1 min-w-0", children: [_jsx(WarningIcon, { className: "shrink-0 mt-px" }), _jsxs("div", { className: "flex flex-col gap-2 min-w-0", children: [_jsxs("div", { className: "flex flex-col", children: [title && (_jsx("p", { className: "text-base font-semibold text-(--toast-text-primary,#FFFFFF) leading-[19.2px] tracking-[-0.32px] overflow-hidden text-ellipsis", children: title })), _jsx("p", { className: "text-sm font-normal text-(--toast-text-secondary,#BFBFBF) leading-5 overflow-hidden text-ellipsis", children: message })] }), actions.length > 0 && (_jsx("div", { className: "flex gap-4 items-center", children: actions.map((action) => (_jsxs("button", { type: "button", onClick: action.onClick, className: "flex items-center gap-1 cursor-pointer", children: [action.icon && (_jsx("span", { className: "shrink-0 w-4 h-4 flex items-center justify-center", children: action.icon })), _jsx("span", { className: "text-sm font-semibold leading-[16.8px] whitespace-nowrap", style: {
44
+ color: action.highlight
45
+ ? "var(--toast-action-highlight, #9FCC41)"
46
+ : "var(--toast-text-secondary, #BFBFBF)",
47
+ }, children: action.label })] }, action.label))) }))] })] }), onClose && (_jsx("button", { type: "button", onClick: onClose, className: "shrink-0 cursor-pointer opacity-60 hover:opacity-100 transition-opacity", "aria-label": "Close", children: _jsx(CloseIcon, {}) }))] }));
48
+ }
49
+ //# sourceMappingURL=toast.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast.js","sourceRoot":"","sources":["../../src/components/toast.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import * as React from "react";
2
+ import { Dialog as DialogPrimitive } from "radix-ui";
3
+ declare function Dialog({ ...props }: React.ComponentProps<typeof DialogPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ declare function DialogTrigger({ ...props }: React.ComponentProps<typeof DialogPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
5
+ declare function DialogPortal({ ...props }: React.ComponentProps<typeof DialogPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
6
+ declare function DialogClose({ ...props }: React.ComponentProps<typeof DialogPrimitive.Close>): import("react/jsx-runtime").JSX.Element;
7
+ declare function DialogOverlay({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Overlay>): import("react/jsx-runtime").JSX.Element;
8
+ declare function DialogContent({ className, children, ...props }: React.ComponentProps<typeof DialogPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
9
+ declare function DialogHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
10
+ declare function DialogFooter({ className, children, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
11
+ declare function DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
12
+ declare function DialogDescription({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
13
+ export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, };
14
+ //# sourceMappingURL=dialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../../src/components/ui/dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,UAAU,CAAC;AAIrD,iBAAS,MAAM,CAAC,EACd,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,2CAEnD;AAED,iBAAS,aAAa,CAAC,EACrB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAEtD;AAED,iBAAS,YAAY,CAAC,EACpB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,MAAM,CAAC,2CAErD;AAED,iBAAS,WAAW,CAAC,EACnB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAEpD;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAWtD;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAgBtD;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQzE;AAED,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAa7B;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAQpD;AAED,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,WAAW,CAAC,2CAQ1D;AAED,OAAO,EACL,MAAM,EACN,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,WAAW,EACX,aAAa,GACd,CAAC"}
@@ -0,0 +1,35 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Dialog as DialogPrimitive } from "radix-ui";
3
+ import { cn } from "../../lib/utils";
4
+ function Dialog({ ...props }) {
5
+ return _jsx(DialogPrimitive.Root, { "data-slot": "dialog", ...props });
6
+ }
7
+ function DialogTrigger({ ...props }) {
8
+ return _jsx(DialogPrimitive.Trigger, { "data-slot": "dialog-trigger", ...props });
9
+ }
10
+ function DialogPortal({ ...props }) {
11
+ return _jsx(DialogPrimitive.Portal, { "data-slot": "dialog-portal", ...props });
12
+ }
13
+ function DialogClose({ ...props }) {
14
+ return _jsx(DialogPrimitive.Close, { "data-slot": "dialog-close", ...props });
15
+ }
16
+ function DialogOverlay({ className, ...props }) {
17
+ return (_jsx(DialogPrimitive.Overlay, { "data-slot": "dialog-overlay", className: cn("fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:animate-in data-[state=open]:fade-in-0", className), ...props }));
18
+ }
19
+ function DialogContent({ className, children, ...props }) {
20
+ return (_jsxs(DialogPortal, { "data-slot": "dialog-portal", children: [_jsx(DialogOverlay, {}), _jsx(DialogPrimitive.Content, { "data-slot": "dialog-content", className: cn("fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] bg-background shadow-lg duration-200 outline-none data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 sm:max-w-lg", className), ...props, children: children })] }));
21
+ }
22
+ function DialogHeader({ className, ...props }) {
23
+ return (_jsx("div", { "data-slot": "dialog-header", className: cn("flex gap-2 text-center sm:text-left", className), ...props }));
24
+ }
25
+ function DialogFooter({ className, children, ...props }) {
26
+ return (_jsx("div", { "data-slot": "dialog-footer", className: cn("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", className), ...props, children: children }));
27
+ }
28
+ function DialogTitle({ className, ...props }) {
29
+ return (_jsx(DialogPrimitive.Title, { "data-slot": "dialog-title", className: cn("text-lg leading-none font-semibold", className), ...props }));
30
+ }
31
+ function DialogDescription({ className, ...props }) {
32
+ return (_jsx(DialogPrimitive.Description, { "data-slot": "dialog-description", className: cn("text-sm text-muted-foreground", className), ...props }));
33
+ }
34
+ export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, };
35
+ //# sourceMappingURL=dialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog.js","sourceRoot":"","sources":["../../../src/components/ui/dialog.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,UAAU,CAAC;AAErD,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,SAAS,MAAM,CAAC,EACd,GAAG,KAAK,EAC0C;IAClD,OAAO,KAAC,eAAe,CAAC,IAAI,iBAAW,QAAQ,KAAK,KAAK,GAAI,CAAC;AAChE,CAAC;AAED,SAAS,aAAa,CAAC,EACrB,GAAG,KAAK,EAC6C;IACrD,OAAO,KAAC,eAAe,CAAC,OAAO,iBAAW,gBAAgB,KAAK,KAAK,GAAI,CAAC;AAC3E,CAAC;AAED,SAAS,YAAY,CAAC,EACpB,GAAG,KAAK,EAC4C;IACpD,OAAO,KAAC,eAAe,CAAC,MAAM,iBAAW,eAAe,KAAK,KAAK,GAAI,CAAC;AACzE,CAAC;AAED,SAAS,WAAW,CAAC,EACnB,GAAG,KAAK,EAC2C;IACnD,OAAO,KAAC,eAAe,CAAC,KAAK,iBAAW,cAAc,KAAK,KAAK,GAAI,CAAC;AACvE,CAAC;AAED,SAAS,aAAa,CAAC,EACrB,SAAS,EACT,GAAG,KAAK,EAC6C;IACrD,OAAO,CACL,KAAC,eAAe,CAAC,OAAO,iBACZ,gBAAgB,EAC1B,SAAS,EAAE,EAAE,CACX,wJAAwJ,EACxJ,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EAC6C;IACrD,OAAO,CACL,MAAC,YAAY,iBAAW,eAAe,aACrC,KAAC,aAAa,KAAG,EACjB,KAAC,eAAe,CAAC,OAAO,iBACZ,gBAAgB,EAC1B,SAAS,EAAE,EAAE,CACX,8VAA8V,EAC9V,SAAS,CACV,KACG,KAAK,YAER,QAAQ,GACe,IACb,CAChB,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA+B;IACxE,OAAO,CACL,2BACY,eAAe,EACzB,SAAS,EAAE,EAAE,CAAC,qCAAqC,EAAE,SAAS,CAAC,KAC3D,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EACpB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACoB;IAC5B,OAAO,CACL,2BACY,eAAe,EACzB,SAAS,EAAE,EAAE,CACX,wDAAwD,EACxD,SAAS,CACV,KACG,KAAK,YAER,QAAQ,GACL,CACP,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EAC2C;IACnD,OAAO,CACL,KAAC,eAAe,CAAC,KAAK,iBACV,cAAc,EACxB,SAAS,EAAE,EAAE,CAAC,oCAAoC,EAAE,SAAS,CAAC,KAC1D,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACiD;IACzD,OAAO,CACL,KAAC,eAAe,CAAC,WAAW,iBAChB,oBAAoB,EAC9B,SAAS,EAAE,EAAE,CAAC,+BAA+B,EAAE,SAAS,CAAC,KACrD,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EACL,MAAM,EACN,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,WAAW,EACX,aAAa,GACd,CAAC"}
@@ -0,0 +1,14 @@
1
+ import * as React from "react";
2
+ import { Drawer as DrawerPrimitive } from "vaul";
3
+ declare function Drawer({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ declare function DrawerTrigger({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
5
+ declare function DrawerPortal({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
6
+ declare function DrawerClose({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Close>): import("react/jsx-runtime").JSX.Element;
7
+ declare function DrawerOverlay({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Overlay>): import("react/jsx-runtime").JSX.Element;
8
+ declare function DrawerContent({ className, children, ...props }: React.ComponentProps<typeof DrawerPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
9
+ declare function DrawerHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
10
+ declare function DrawerFooter({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
11
+ declare function DrawerTitle({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
12
+ declare function DrawerDescription({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
13
+ export { Drawer, DrawerPortal, DrawerOverlay, DrawerTrigger, DrawerClose, DrawerContent, DrawerHeader, DrawerFooter, DrawerTitle, DrawerDescription, };
14
+ //# sourceMappingURL=drawer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drawer.d.ts","sourceRoot":"","sources":["../../../src/components/ui/drawer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,MAAM,CAAC;AAIjD,iBAAS,MAAM,CAAC,EACd,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,2CAEnD;AAED,iBAAS,aAAa,CAAC,EACrB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAEtD;AAED,iBAAS,YAAY,CAAC,EACpB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,MAAM,CAAC,2CAErD;AAED,iBAAS,WAAW,CAAC,EACnB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAEpD;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAWtD;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAoBtD;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWzE;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQzE;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAQpD;AAED,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,WAAW,CAAC,2CAQ1D;AAED,OAAO,EACL,MAAM,EACN,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,EACX,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,iBAAiB,GAClB,CAAC"}