react-tech-ui 1.0.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 (199) hide show
  1. package/LICENSE +82 -0
  2. package/README.en.md +36 -0
  3. package/README.md +412 -0
  4. package/dist/DataCard/index.cjs +1 -0
  5. package/dist/DataCard/index.js +5 -0
  6. package/dist/DataCard/style.css +1 -0
  7. package/dist/DataCard.d.ts +1 -0
  8. package/dist/DecorationLine/index.cjs +1 -0
  9. package/dist/DecorationLine/index.js +5 -0
  10. package/dist/DecorationLine/style.css +1 -0
  11. package/dist/DecorationLine.d.ts +1 -0
  12. package/dist/DigitalNumber/index.cjs +1 -0
  13. package/dist/DigitalNumber/index.js +5 -0
  14. package/dist/DigitalNumber/style.css +1 -0
  15. package/dist/DigitalNumber.d.ts +1 -0
  16. package/dist/Drawer/index.cjs +1 -0
  17. package/dist/Drawer/index.js +5 -0
  18. package/dist/Drawer/style.css +1 -0
  19. package/dist/Drawer.d.ts +1 -0
  20. package/dist/FloatingButton/index.cjs +1 -0
  21. package/dist/FloatingButton/index.js +5 -0
  22. package/dist/FloatingButton/style.css +1 -0
  23. package/dist/FloatingButton.d.ts +1 -0
  24. package/dist/FlowLight/index.cjs +1 -0
  25. package/dist/FlowLight/index.js +5 -0
  26. package/dist/FlowLight/style.css +1 -0
  27. package/dist/FlowLight.d.ts +1 -0
  28. package/dist/Icon/index.cjs +1 -0
  29. package/dist/Icon/index.js +6 -0
  30. package/dist/Icon/style.css +1 -0
  31. package/dist/Icon.d.ts +1 -0
  32. package/dist/Masonry/index.cjs +1 -0
  33. package/dist/Masonry/index.js +5 -0
  34. package/dist/Masonry/style.css +1 -0
  35. package/dist/Masonry.d.ts +1 -0
  36. package/dist/Modal/index.cjs +1 -0
  37. package/dist/Modal/index.js +5 -0
  38. package/dist/Modal/style.css +1 -0
  39. package/dist/Modal.d.ts +1 -0
  40. package/dist/Popconfirm/index.cjs +1 -0
  41. package/dist/Popconfirm/index.js +5 -0
  42. package/dist/Popconfirm/style.css +1 -0
  43. package/dist/Popconfirm.d.ts +1 -0
  44. package/dist/QRCode/index.cjs +1 -0
  45. package/dist/QRCode/index.js +5 -0
  46. package/dist/QRCode/style.css +1 -0
  47. package/dist/QRCode.d.ts +1 -0
  48. package/dist/ScreenAdapter/index.cjs +1 -0
  49. package/dist/ScreenAdapter/index.js +5 -0
  50. package/dist/ScreenAdapter/style.css +1 -0
  51. package/dist/ScreenAdapter.d.ts +1 -0
  52. package/dist/ScrollTable/index.cjs +1 -0
  53. package/dist/ScrollTable/index.js +5 -0
  54. package/dist/ScrollTable/style.css +1 -0
  55. package/dist/ScrollTable.d.ts +1 -0
  56. package/dist/Skeleton/index.cjs +1 -0
  57. package/dist/Skeleton/index.js +5 -0
  58. package/dist/Skeleton/style.css +1 -0
  59. package/dist/Skeleton.d.ts +1 -0
  60. package/dist/StatusIndicator/index.cjs +1 -0
  61. package/dist/StatusIndicator/index.js +5 -0
  62. package/dist/StatusIndicator/style.css +1 -0
  63. package/dist/StatusIndicator.d.ts +1 -0
  64. package/dist/TechBorder/index.cjs +1 -0
  65. package/dist/TechBorder/index.js +5 -0
  66. package/dist/TechBorder/style.css +1 -0
  67. package/dist/TechBorder.d.ts +1 -0
  68. package/dist/TechButton/index.cjs +1 -0
  69. package/dist/TechButton/index.js +5 -0
  70. package/dist/TechButton/style.css +1 -0
  71. package/dist/TechButton.d.ts +1 -0
  72. package/dist/TechTitle/index.cjs +1 -0
  73. package/dist/TechTitle/index.js +5 -0
  74. package/dist/TechTitle/style.css +1 -0
  75. package/dist/TechTitle.d.ts +1 -0
  76. package/dist/ThemeProvider/index.cjs +1 -0
  77. package/dist/ThemeProvider/index.js +8 -0
  78. package/dist/ThemeProvider/style.css +1 -0
  79. package/dist/ThemeProvider.d.ts +1 -0
  80. package/dist/Toast/index.cjs +1 -0
  81. package/dist/Toast/index.js +5 -0
  82. package/dist/Toast/style.css +1 -0
  83. package/dist/Toast.d.ts +1 -0
  84. package/dist/assets/jsx-runtime-B3A9vq2e.css +1 -0
  85. package/dist/chunks/DataCard-CY4njdg1.js +61 -0
  86. package/dist/chunks/DataCard-DjcUGxo9.cjs +1 -0
  87. package/dist/chunks/DecorationLine-Be4QQyry.cjs +1 -0
  88. package/dist/chunks/DecorationLine-CaZYIYl6.js +45 -0
  89. package/dist/chunks/DigitalNumber-BNklEz-G.js +60 -0
  90. package/dist/chunks/DigitalNumber-BWP5OjvN.cjs +1 -0
  91. package/dist/chunks/Drawer-CuoztnnD.cjs +1 -0
  92. package/dist/chunks/Drawer-u77zScbz.js +69 -0
  93. package/dist/chunks/FloatingButton-DcNfUVcB.js +109 -0
  94. package/dist/chunks/FloatingButton-nOl8ZHul.cjs +1 -0
  95. package/dist/chunks/FlowLight-Brrwyxcv.js +62 -0
  96. package/dist/chunks/FlowLight-DLBCaU07.cjs +1 -0
  97. package/dist/chunks/Icon-HxIzkEdE.js +147 -0
  98. package/dist/chunks/Icon-ISAK5vLx.cjs +1 -0
  99. package/dist/chunks/Masonry-CxVB3-w9.js +84 -0
  100. package/dist/chunks/Masonry-LPU0R1mE.cjs +1 -0
  101. package/dist/chunks/Modal-BfCALRKS.js +63 -0
  102. package/dist/chunks/Modal-DxqX4m57.cjs +1 -0
  103. package/dist/chunks/Popconfirm-C3npOXd6.js +112 -0
  104. package/dist/chunks/Popconfirm-CgPdSp84.cjs +1 -0
  105. package/dist/chunks/QRCode-B2Sdq1f6.cjs +8 -0
  106. package/dist/chunks/QRCode-BRcujxUT.js +1535 -0
  107. package/dist/chunks/ScreenAdapter-CugXUEoe.js +61 -0
  108. package/dist/chunks/ScreenAdapter-DpfmLRd5.cjs +1 -0
  109. package/dist/chunks/ScrollTable-B21j9zGn.cjs +1 -0
  110. package/dist/chunks/ScrollTable-NgSlPEKj.js +98 -0
  111. package/dist/chunks/Skeleton-CKvua4DB.cjs +1 -0
  112. package/dist/chunks/Skeleton-CQvCi-N8.js +76 -0
  113. package/dist/chunks/StatusIndicator-CliH19aT.js +40 -0
  114. package/dist/chunks/StatusIndicator-DhPwugAy.cjs +1 -0
  115. package/dist/chunks/TechBorder-Cu-JqkTf.js +45 -0
  116. package/dist/chunks/TechBorder-KTRXvzVv.cjs +1 -0
  117. package/dist/chunks/TechButton-CTrXjlsD.js +42 -0
  118. package/dist/chunks/TechButton-DYdIWO-l.cjs +1 -0
  119. package/dist/chunks/TechTitle-B3pkYIbI.cjs +1 -0
  120. package/dist/chunks/TechTitle-DfLwdrV5.js +41 -0
  121. package/dist/chunks/ThemeProvider-CGtZuVnU.cjs +1 -0
  122. package/dist/chunks/ThemeProvider-uEdKkbFn.js +206 -0
  123. package/dist/chunks/Toast-CedBaeZV.cjs +1 -0
  124. package/dist/chunks/Toast-DdlPSfu0.js +79 -0
  125. package/dist/chunks/index-CcykAxZN.js +6 -0
  126. package/dist/chunks/index-pCtiW2Id.cjs +1 -0
  127. package/dist/chunks/jsx-runtime-7asRZgsb.cjs +30 -0
  128. package/dist/chunks/jsx-runtime-C6iVud2f.js +630 -0
  129. package/dist/components/DataCard/DataCard.d.ts +18 -0
  130. package/dist/components/DataCard/entry.d.ts +3 -0
  131. package/dist/components/DataCard/index.d.ts +2 -0
  132. package/dist/components/DecorationLine/DecorationLine.d.ts +14 -0
  133. package/dist/components/DecorationLine/entry.d.ts +3 -0
  134. package/dist/components/DecorationLine/index.d.ts +2 -0
  135. package/dist/components/DigitalNumber/DigitalNumber.d.ts +17 -0
  136. package/dist/components/DigitalNumber/entry.d.ts +3 -0
  137. package/dist/components/DigitalNumber/index.d.ts +2 -0
  138. package/dist/components/Drawer/Drawer.d.ts +18 -0
  139. package/dist/components/Drawer/entry.d.ts +3 -0
  140. package/dist/components/Drawer/index.d.ts +2 -0
  141. package/dist/components/FloatingButton/FloatingButton.d.ts +24 -0
  142. package/dist/components/FloatingButton/entry.d.ts +3 -0
  143. package/dist/components/FloatingButton/index.d.ts +2 -0
  144. package/dist/components/FlowLight/FlowLight.d.ts +14 -0
  145. package/dist/components/FlowLight/entry.d.ts +3 -0
  146. package/dist/components/FlowLight/index.d.ts +2 -0
  147. package/dist/components/Icon/Icon.d.ts +16 -0
  148. package/dist/components/Icon/entry.d.ts +4 -0
  149. package/dist/components/Icon/index.d.ts +3 -0
  150. package/dist/components/Masonry/Masonry.d.ts +23 -0
  151. package/dist/components/Masonry/entry.d.ts +3 -0
  152. package/dist/components/Masonry/index.d.ts +2 -0
  153. package/dist/components/Modal/Modal.d.ts +18 -0
  154. package/dist/components/Modal/entry.d.ts +3 -0
  155. package/dist/components/Modal/index.d.ts +2 -0
  156. package/dist/components/Popconfirm/Popconfirm.d.ts +19 -0
  157. package/dist/components/Popconfirm/entry.d.ts +3 -0
  158. package/dist/components/Popconfirm/index.d.ts +2 -0
  159. package/dist/components/QRCode/QRCode.d.ts +19 -0
  160. package/dist/components/QRCode/entry.d.ts +3 -0
  161. package/dist/components/QRCode/index.d.ts +2 -0
  162. package/dist/components/ScreenAdapter/ScreenAdapter.d.ts +13 -0
  163. package/dist/components/ScreenAdapter/entry.d.ts +3 -0
  164. package/dist/components/ScreenAdapter/index.d.ts +2 -0
  165. package/dist/components/ScrollTable/ScrollTable.d.ts +23 -0
  166. package/dist/components/ScrollTable/entry.d.ts +3 -0
  167. package/dist/components/ScrollTable/index.d.ts +2 -0
  168. package/dist/components/Skeleton/Skeleton.d.ts +16 -0
  169. package/dist/components/Skeleton/entry.d.ts +3 -0
  170. package/dist/components/Skeleton/index.d.ts +2 -0
  171. package/dist/components/StatusIndicator/StatusIndicator.d.ts +14 -0
  172. package/dist/components/StatusIndicator/entry.d.ts +3 -0
  173. package/dist/components/StatusIndicator/index.d.ts +2 -0
  174. package/dist/components/TechBorder/TechBorder.d.ts +15 -0
  175. package/dist/components/TechBorder/entry.d.ts +3 -0
  176. package/dist/components/TechBorder/index.d.ts +2 -0
  177. package/dist/components/TechButton/TechButton.d.ts +15 -0
  178. package/dist/components/TechButton/entry.d.ts +3 -0
  179. package/dist/components/TechButton/index.d.ts +2 -0
  180. package/dist/components/TechTitle/TechTitle.d.ts +14 -0
  181. package/dist/components/TechTitle/entry.d.ts +3 -0
  182. package/dist/components/TechTitle/index.d.ts +2 -0
  183. package/dist/components/ThemeProvider/ThemeProvider.d.ts +42 -0
  184. package/dist/components/ThemeProvider/entry.d.ts +3 -0
  185. package/dist/components/ThemeProvider/index.d.ts +2 -0
  186. package/dist/components/Toast/Toast.d.ts +23 -0
  187. package/dist/components/Toast/entry.d.ts +3 -0
  188. package/dist/components/Toast/index.d.ts +2 -0
  189. package/dist/index/index.cjs +1 -0
  190. package/dist/index/index.js +49 -0
  191. package/dist/index/style.css +41 -0
  192. package/dist/index.d.ts +31 -0
  193. package/dist/jsx-runtime/style.css +1 -0
  194. package/dist/theme/index.cjs +1 -0
  195. package/dist/theme/index.d.ts +46 -0
  196. package/dist/theme/index.js +48 -0
  197. package/dist/theme.d.ts +1 -0
  198. package/dist/utils/index.d.ts +8 -0
  199. package/package.json +165 -0
@@ -0,0 +1,6 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { I as m, i as r } from "../chunks/Icon-HxIzkEdE.js";
3
+ export {
4
+ m as Icon,
5
+ r as iconNames
6
+ };
@@ -0,0 +1 @@
1
+ .tech-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--tech-icon-text, var(--tech-text-primary));line-height:1;flex-shrink:0;transition:color .3s,filter .3s}.tech-icon__svg{width:100%;height:100%;display:block}.tech-icon--clickable{cursor:pointer}.tech-icon--clickable:hover{color:var(--tech-icon-primary, var(--tech-primary));filter:drop-shadow(0 0 4px var(--tech-icon-glow, var(--tech-glow-primary)))}.tech-icon--neon{color:var(--tech-icon-primary, var(--tech-primary));filter:drop-shadow(0 0 6px var(--tech-icon-glow, var(--tech-glow-primary)))}.tech-icon--glow{color:var(--tech-icon-primary, var(--tech-primary));animation:techIconGlow 2s ease-in-out infinite alternate}@keyframes techIconGlow{0%{filter:drop-shadow(0 0 6px var(--tech-icon-glow, var(--tech-glow-primary))) drop-shadow(0 0 12px var(--tech-icon-glow, var(--tech-glow-primary)))}to{filter:drop-shadow(0 0 12px var(--tech-icon-glow, var(--tech-glow-primary))) drop-shadow(0 0 24px var(--tech-icon-glow, var(--tech-glow-primary)))}}.tech-icon--spin{animation:techIconSpin 1s linear infinite}@keyframes techIconSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
package/dist/Icon.d.ts ADDED
@@ -0,0 +1 @@
1
+ export * from './components/Icon/entry'
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../chunks/jsx-runtime-7asRZgsb.cjs");const e=require("../chunks/Masonry-LPU0R1mE.cjs");exports.Masonry=e.Masonry;
@@ -0,0 +1,5 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { M as m } from "../chunks/Masonry-CxVB3-w9.js";
3
+ export {
4
+ m as Masonry
5
+ };
@@ -0,0 +1 @@
1
+ .tech-masonry{position:relative;display:flex;gap:var(--tech-masonry-gap, 12px);overflow:hidden}.tech-masonry__column{flex:1;display:flex;flex-direction:column;gap:var(--tech-masonry-gap, 12px);min-width:0}.tech-masonry--scan .tech-masonry__scan-line{display:block}.tech-masonry__scan-line{display:none;position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--tech-masonry-primary, var(--tech-primary)),transparent);animation:techMasonryScan 4s linear infinite;opacity:.5;z-index:2;pointer-events:none}@keyframes techMasonryScan{0%{top:0}to{top:100%}}.tech-masonry__item{position:relative;background:var(--tech-masonry-bg-card, var(--tech-bg-card));border:1px solid var(--tech-masonry-border, var(--tech-border));border-radius:4px;overflow:hidden;min-height:var(--tech-masonry-item-height, 200px);opacity:0;transform:translateY(20px) scale(.97);transition:opacity .5s ease,transform .5s ease,background-color .4s,border-color .4s,box-shadow .4s,color .4s;transition-delay:var(--tech-masonry-item-delay, 0ms)}.tech-masonry__item--visible{opacity:1;transform:translateY(0) scale(1)}.tech-masonry__item:hover{border-color:var(--tech-masonry-border-active, var(--tech-border-active));box-shadow:0 0 12px var(--tech-masonry-glow, var(--tech-glow-primary));background:var(--tech-masonry-bg-card-hover, var(--tech-bg-card-hover))}.tech-masonry__item-corner{position:absolute;width:10px;height:10px;z-index:1;opacity:.6;transition:opacity .3s,border-color .4s}.tech-masonry__item:hover .tech-masonry__item-corner{opacity:1}.tech-masonry__item-corner--tl{top:0;left:0;border-top:2px solid var(--tech-masonry-primary, var(--tech-primary));border-left:2px solid var(--tech-masonry-primary, var(--tech-primary))}.tech-masonry__item-corner--tr{top:0;right:0;border-top:2px solid var(--tech-masonry-primary, var(--tech-primary));border-right:2px solid var(--tech-masonry-primary, var(--tech-primary))}.tech-masonry__item-corner--bl{bottom:0;left:0;border-bottom:2px solid var(--tech-masonry-primary, var(--tech-primary));border-left:2px solid var(--tech-masonry-primary, var(--tech-primary))}.tech-masonry__item-corner--br{bottom:0;right:0;border-bottom:2px solid var(--tech-masonry-primary, var(--tech-primary));border-right:2px solid var(--tech-masonry-primary, var(--tech-primary))}.tech-masonry__item-content{padding:12px;color:var(--tech-masonry-text-primary, var(--tech-text-primary));transition:color .4s}.tech-masonry--neon .tech-masonry__item{border-color:var(--tech-masonry-primary, var(--tech-primary));box-shadow:0 0 8px var(--tech-masonry-glow, var(--tech-glow-primary))}.tech-masonry--neon .tech-masonry__item:hover{box-shadow:0 0 20px var(--tech-masonry-glow, var(--tech-glow-primary)),0 0 40px var(--tech-masonry-glow, var(--tech-glow-primary))}.tech-masonry--glass .tech-masonry__item{background:var(--tech-masonry-bg-card, var(--tech-bg-card));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-color:var(--tech-masonry-border, var(--tech-border))}.tech-masonry--glass .tech-masonry__item:hover{background:var(--tech-masonry-bg-card-hover, var(--tech-bg-card-hover));border-color:var(--tech-masonry-primary, var(--tech-primary));box-shadow:0 0 16px var(--tech-masonry-glow, var(--tech-glow-primary))}.tech-masonry--glass .tech-masonry__item-corner{opacity:.4}.tech-masonry--glass .tech-masonry__item:hover .tech-masonry__item-corner{opacity:1}
@@ -0,0 +1 @@
1
+ export * from './components/Masonry/entry'
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../chunks/jsx-runtime-7asRZgsb.cjs");const e=require("../chunks/Modal-DxqX4m57.cjs");exports.Modal=e.Modal;
@@ -0,0 +1,5 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { M as m } from "../chunks/Modal-BfCALRKS.js";
3
+ export {
4
+ m as Modal
5
+ };
@@ -0,0 +1 @@
1
+ .tech-modal-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000}.tech-modal-mask{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.tech-modal-wrapper{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px}.tech-modal{position:relative;background:var(--tech-bg-medium);border:1px solid var(--tech-border);border-radius:4px;overflow:hidden;max-height:calc(100vh - 48px);display:flex;flex-direction:column}.tech-modal--animate{animation:techModalIn .3s ease-out}@keyframes techModalIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.tech-modal--default{border-color:var(--tech-border);box-shadow:0 8px 40px #00000080,0 0 30px var(--tech-glow-primary)}.tech-modal--neon{border-color:var(--tech-primary);box-shadow:0 0 5px var(--tech-primary),0 0 15px var(--tech-glow-primary),0 8px 40px #00000080}.tech-modal--scan{border-color:var(--tech-border);box-shadow:0 8px 40px #00000080,0 0 30px var(--tech-glow-primary);overflow:hidden}.tech-modal__scan-line{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--tech-primary),transparent);z-index:2;animation:techScan 3s linear infinite}.tech-modal__corner{position:absolute;width:16px;height:16px;z-index:2}.tech-modal__corner--tl{top:0;left:0;border-top:2px solid var(--tech-primary);border-left:2px solid var(--tech-primary)}.tech-modal__corner--tr{top:0;right:0;border-top:2px solid var(--tech-primary);border-right:2px solid var(--tech-primary)}.tech-modal__corner--bl{bottom:0;left:0;border-bottom:2px solid var(--tech-primary);border-left:2px solid var(--tech-primary)}.tech-modal__corner--br{bottom:0;right:0;border-bottom:2px solid var(--tech-primary);border-right:2px solid var(--tech-primary)}.tech-modal__header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--tech-border);background:#00d4ff08}.tech-modal__title{font-family:var(--tech-font-title);font-size:16px;font-weight:600;color:var(--tech-primary);letter-spacing:1px}.tech-modal__close{background:none;border:none;color:var(--tech-text-muted);font-size:16px;cursor:pointer;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.tech-modal__close:hover{color:var(--tech-primary);background:var(--tech-glow-primary)}.tech-modal__body{flex:1;padding:24px;overflow-y:auto;color:var(--tech-text-secondary);font-size:14px;line-height:1.8}.tech-modal__footer{display:flex;justify-content:flex-end;gap:12px;padding:12px 24px;border-top:1px solid var(--tech-border);background:#00d4ff05}
@@ -0,0 +1 @@
1
+ export * from './components/Modal/entry'
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../chunks/jsx-runtime-7asRZgsb.cjs");const e=require("../chunks/Popconfirm-CgPdSp84.cjs");exports.Popconfirm=e.Popconfirm;
@@ -0,0 +1,5 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { P as p } from "../chunks/Popconfirm-C3npOXd6.js";
3
+ export {
4
+ p as Popconfirm
5
+ };
@@ -0,0 +1 @@
1
+ .tech-popconfirm{position:fixed;z-index:1050;min-width:240px;max-width:400px;background:var(--tech-bg-medium);border:1px solid var(--tech-border);border-radius:4px;padding:16px;opacity:0;transform:scale(.92);animation:techPopconfirmIn .25s cubic-bezier(.4,0,.2,1) forwards;overflow:hidden}@keyframes techPopconfirmIn{to{opacity:1;transform:scale(1)}}.tech-popconfirm--neon{border-color:var(--tech-primary);box-shadow:0 0 20px var(--tech-glow-primary),inset 0 0 20px var(--tech-glow-primary)}.tech-popconfirm--scan .tech-popconfirm__scan-line{display:block}.tech-popconfirm__scan-line{display:none;position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--tech-primary),transparent);animation:techPopconfirmScan 2s linear infinite;opacity:.5}@keyframes techPopconfirmScan{0%{top:0}to{top:100%}}.tech-popconfirm__corner{position:absolute;width:8px;height:8px;z-index:1}.tech-popconfirm__corner--tl{top:0;left:0;border-top:2px solid var(--tech-primary);border-left:2px solid var(--tech-primary)}.tech-popconfirm__corner--tr{top:0;right:0;border-top:2px solid var(--tech-primary);border-right:2px solid var(--tech-primary)}.tech-popconfirm__corner--bl{bottom:0;left:0;border-bottom:2px solid var(--tech-primary);border-left:2px solid var(--tech-primary)}.tech-popconfirm__corner--br{bottom:0;right:0;border-bottom:2px solid var(--tech-primary);border-right:2px solid var(--tech-primary)}.tech-popconfirm__arrow{position:absolute;width:8px;height:8px;background:var(--tech-bg-medium);border:1px solid var(--tech-border);transform:rotate(45deg)}.tech-popconfirm__arrow--top{bottom:-5px;left:50%;margin-left:-4px;border-top:none;border-left:none}.tech-popconfirm__arrow--bottom{top:-5px;left:50%;margin-left:-4px;border-bottom:none;border-right:none}.tech-popconfirm__arrow--left{right:-5px;top:50%;margin-top:-4px;border-bottom:none;border-left:none}.tech-popconfirm__arrow--right{left:-5px;top:50%;margin-top:-4px;border-top:none;border-right:none}.tech-popconfirm--neon .tech-popconfirm__arrow{border-color:var(--tech-primary)}.tech-popconfirm__title{font-size:14px;font-weight:600;color:var(--tech-primary);margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--tech-border);letter-spacing:1px}.tech-popconfirm__content{font-size:13px;color:var(--tech-text-secondary);line-height:1.6;margin-bottom:14px}.tech-popconfirm__actions{display:flex;justify-content:flex-end;gap:8px}.tech-popconfirm__btn{padding:4px 16px;font-size:12px;border-radius:2px;cursor:pointer;transition:all .2s;letter-spacing:1px;font-family:var(--tech-font-body)}.tech-popconfirm__btn--cancel{background:transparent;border:1px solid var(--tech-border);color:var(--tech-text-secondary)}.tech-popconfirm__btn--cancel:hover{border-color:var(--tech-text-secondary);color:var(--tech-text-primary)}.tech-popconfirm__btn--confirm{background:var(--tech-primary);border:1px solid var(--tech-primary);color:var(--tech-bg-dark);font-weight:600}.tech-popconfirm__btn--confirm:hover{box-shadow:0 0 10px var(--tech-glow-primary);background:var(--tech-primary-light)}.tech-popconfirm-trigger{display:inline-block}
@@ -0,0 +1 @@
1
+ export * from './components/Popconfirm/entry'
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../chunks/jsx-runtime-7asRZgsb.cjs");const e=require("../chunks/QRCode-B2Sdq1f6.cjs");exports.QRCode=e.QRCodeComponent;
@@ -0,0 +1,5 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { Q as m } from "../chunks/QRCode-BRcujxUT.js";
3
+ export {
4
+ m as QRCode
5
+ };
@@ -0,0 +1 @@
1
+ .tech-qrcode{position:relative;display:inline-flex;flex-direction:column;align-items:center;padding:20px;background:var(--tech-bg-medium);border:1px solid var(--tech-border);border-radius:4px;overflow:hidden}.tech-qrcode--neon{border-color:var(--tech-primary);box-shadow:0 0 20px var(--tech-glow-primary),inset 0 0 20px var(--tech-glow-primary)}.tech-qrcode--scan .tech-qrcode__scan-line{display:block}.tech-qrcode__scan-line{display:none;position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--tech-primary),transparent);animation:techQRScan 2.5s linear infinite;opacity:.6;z-index:2}@keyframes techQRScan{0%{top:0}to{top:100%}}.tech-qrcode__corner{position:absolute;width:14px;height:14px;z-index:1}.tech-qrcode__corner--tl{top:0;left:0;border-top:2px solid var(--tech-primary);border-left:2px solid var(--tech-primary)}.tech-qrcode__corner--tr{top:0;right:0;border-top:2px solid var(--tech-primary);border-right:2px solid var(--tech-primary)}.tech-qrcode__corner--bl{bottom:0;left:0;border-bottom:2px solid var(--tech-primary);border-left:2px solid var(--tech-primary)}.tech-qrcode__corner--br{bottom:0;right:0;border-bottom:2px solid var(--tech-primary);border-right:2px solid var(--tech-primary)}.tech-qrcode__frame{position:relative;padding:8px;border:1px solid var(--tech-border);border-radius:2px;background:var(--tech-bg-dark)}.tech-qrcode--neon .tech-qrcode__frame{border-color:var(--tech-primary);box-shadow:0 0 10px var(--tech-glow-primary)}.tech-qrcode__inner{position:relative;display:flex;align-items:center;justify-content:center}.tech-qrcode__image{display:block;image-rendering:pixelated}.tech-qrcode__icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--tech-bg-dark);border:2px solid var(--tech-primary);border-radius:4px;padding:4px;display:flex;align-items:center;justify-content:center}.tech-qrcode__info{margin-top:12px;text-align:center}.tech-qrcode__title{font-size:14px;font-weight:600;color:var(--tech-primary);letter-spacing:1px;margin-bottom:4px}.tech-qrcode__desc{font-size:12px;color:var(--tech-text-secondary);max-width:240px;word-break:break-all}
@@ -0,0 +1 @@
1
+ export * from './components/QRCode/entry'
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../chunks/jsx-runtime-7asRZgsb.cjs");const e=require("../chunks/ScreenAdapter-DpfmLRd5.cjs");exports.ScreenAdapter=e.ScreenAdapter;
@@ -0,0 +1,5 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { S as p } from "../chunks/ScreenAdapter-CugXUEoe.js";
3
+ export {
4
+ p as ScreenAdapter
5
+ };
@@ -0,0 +1 @@
1
+ .tech-screen-adapter,.tech-screen-bg--dark{background:var(--tech-bg-dark)}.tech-screen-bg--grid{background:var(--tech-bg-dark) linear-gradient(rgba(0,212,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,255,.03) 1px,transparent 1px);background-size:100% 100%,40px 40px,40px 40px}.tech-screen-bg--particles{background:radial-gradient(1px 1px at 20% 30%,rgba(0,212,255,.4),transparent),radial-gradient(1px 1px at 40% 70%,rgba(0,212,255,.3),transparent),radial-gradient(1px 1px at 60% 20%,rgba(10,255,176,.3),transparent),radial-gradient(1px 1px at 80% 50%,rgba(0,212,255,.35),transparent),radial-gradient(1px 1px at 10% 80%,rgba(0,212,255,.25),transparent),radial-gradient(1px 1px at 70% 90%,rgba(10,255,176,.2),transparent),radial-gradient(1px 1px at 90% 10%,rgba(0,212,255,.3),transparent),radial-gradient(1px 1px at 50% 50%,rgba(0,212,255,.2),transparent),var(--tech-bg-dark)}.tech-screen-adapter__content{box-sizing:border-box}
@@ -0,0 +1 @@
1
+ export * from './components/ScreenAdapter/entry'
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../chunks/jsx-runtime-7asRZgsb.cjs");const e=require("../chunks/ScrollTable-B21j9zGn.cjs");exports.ScrollTable=e.ScrollTable;
@@ -0,0 +1,5 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { S as a } from "../chunks/ScrollTable-NgSlPEKj.js";
3
+ export {
4
+ a as ScrollTable
5
+ };
@@ -0,0 +1 @@
1
+ .tech-scroll-table{width:100%;overflow:hidden;font-size:14px}.tech-scroll-table__header{display:flex;align-items:center;height:var(--tech-table-row-height);background:linear-gradient(90deg,#00d4ff1a,#00d4ff0d);border-bottom:1px solid var(--tech-border)}.tech-scroll-table__header-cell{padding:0 12px;font-weight:600;color:var(--tech-table-header-color);font-size:13px;letter-spacing:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tech-scroll-table__body{overflow:hidden;position:relative}.tech-scroll-table__scroll-wrapper{will-change:transform}.tech-scroll-table__row{display:flex;align-items:center;height:var(--tech-table-row-height);border-bottom:1px solid rgba(0,212,255,.06);transition:background .2s ease}.tech-scroll-table__row--hover:hover{background:#00d4ff0f}.tech-scroll-table__row:nth-child(2n){background:#00d4ff05}.tech-scroll-table__cell{padding:0 12px;color:var(--tech-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@@ -0,0 +1 @@
1
+ export * from './components/ScrollTable/entry'
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../chunks/jsx-runtime-7asRZgsb.cjs");const e=require("../chunks/Skeleton-CKvua4DB.cjs");exports.Skeleton=e.Skeleton;
@@ -0,0 +1,5 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { S as t } from "../chunks/Skeleton-CQvCi-N8.js";
3
+ export {
4
+ t as Skeleton
5
+ };
@@ -0,0 +1 @@
1
+ .tech-skeleton{position:relative;overflow:hidden;background:var(--tech-bg-light);border:1px solid var(--tech-border)}.tech-skeleton--text{border-radius:2px}.tech-skeleton--rect{border-radius:4px}.tech-skeleton--circle{border-radius:50%}.tech-skeleton--animate:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(0,212,255,.06) 40%,rgba(0,212,255,.12) 50%,rgba(0,212,255,.06) 60%,transparent 100%);animation:techSkeletonShimmer 1.8s ease-in-out infinite}@keyframes techSkeletonShimmer{0%{left:-100%}to{left:100%}}.tech-skeleton--animate:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border:1px solid transparent;animation:techSkeletonPulse 2s ease-in-out infinite}@keyframes techSkeletonPulse{0%,to{border-color:transparent}50%{border-color:var(--tech-primary);box-shadow:0 0 6px var(--tech-glow-primary)}}.tech-skeleton-rows{display:flex;flex-direction:column}.tech-skeleton-card{position:relative;background:var(--tech-bg-medium);border:1px solid var(--tech-border);border-radius:4px;padding:16px;overflow:hidden}.tech-skeleton-card--animate:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(0,212,255,.04) 40%,rgba(0,212,255,.08) 50%,rgba(0,212,255,.04) 60%,transparent 100%);animation:techSkeletonShimmer 1.8s ease-in-out infinite}.tech-skeleton-card__header{display:flex;align-items:center;gap:12px}.tech-skeleton-card__footer{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid var(--tech-border)}
@@ -0,0 +1 @@
1
+ export * from './components/Skeleton/entry'
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../chunks/jsx-runtime-7asRZgsb.cjs");const t=require("../chunks/StatusIndicator-DhPwugAy.cjs");exports.StatusIndicator=t.StatusIndicator;
@@ -0,0 +1,5 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { S as a } from "../chunks/StatusIndicator-CliH19aT.js";
3
+ export {
4
+ a as StatusIndicator
5
+ };
@@ -0,0 +1 @@
1
+ .tech-status-indicator{display:inline-flex;align-items:center;gap:8px}.tech-status-indicator__dot{position:relative;border-radius:50%;background:var(--tech-status-color);box-shadow:0 0 6px var(--tech-status-color)}.tech-status-indicator--small .tech-status-indicator__dot{width:6px;height:6px}.tech-status-indicator--medium .tech-status-indicator__dot{width:8px;height:8px}.tech-status-indicator--large .tech-status-indicator__dot{width:12px;height:12px}.tech-status-indicator__pulse{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:1px solid var(--tech-status-color);animation:techDotBlink 1.5s ease-in-out infinite}.tech-status-indicator--large .tech-status-indicator__pulse{top:-6px;right:-6px;bottom:-6px;left:-6px}.tech-status-indicator__label{font-size:13px;color:var(--tech-text-secondary);letter-spacing:.5px}
@@ -0,0 +1 @@
1
+ export * from './components/StatusIndicator/entry'
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../chunks/jsx-runtime-7asRZgsb.cjs");const e=require("../chunks/TechBorder-KTRXvzVv.cjs");exports.TechBorder=e.TechBorder;
@@ -0,0 +1,5 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { T as m } from "../chunks/TechBorder-Cu-JqkTf.js";
3
+ export {
4
+ m as TechBorder
5
+ };
@@ -0,0 +1 @@
1
+ .tech-border{position:relative;box-sizing:border-box}.tech-border__content{position:relative;z-index:1;width:100%;height:100%}.tech-border--corner{border:var(--tech-border-width) solid var(--tech-border-color);background:var(--tech-bg-card)}.tech-border__corner{position:absolute;width:var(--tech-corner-size);height:var(--tech-corner-size);z-index:2}.tech-border__corner--tl{top:-1px;left:-1px;border-top:2px solid var(--tech-border-color);border-left:2px solid var(--tech-border-color)}.tech-border__corner--tr{top:-1px;right:-1px;border-top:2px solid var(--tech-border-color);border-right:2px solid var(--tech-border-color)}.tech-border__corner--bl{bottom:-1px;left:-1px;border-bottom:2px solid var(--tech-border-color);border-left:2px solid var(--tech-border-color)}.tech-border__corner--br{bottom:-1px;right:-1px;border-bottom:2px solid var(--tech-border-color);border-right:2px solid var(--tech-border-color)}.tech-border--animate .tech-border__corner{box-shadow:0 0 8px var(--tech-border-glow)}.tech-border--full{border:var(--tech-border-width) solid var(--tech-border-color);background:var(--tech-bg-card);box-shadow:inset 0 0 30px var(--tech-border-glow)}.tech-border--animate.tech-border--full{animation:techPulse 3s ease-in-out infinite}.tech-border--gradient{background:var(--tech-bg-card);border:none;padding:1px}.tech-border--gradient:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,var(--tech-border-color),transparent 40%,transparent 60%,var(--tech-border-color));z-index:0;border-radius:inherit}.tech-border--animate.tech-border--gradient:before{background:linear-gradient(135deg,var(--tech-border-color),transparent 40%,transparent 60%,var(--tech-border-color));background-size:200% 200%;animation:techBorderFlow 4s linear infinite}.tech-border--gradient .tech-border__content{background:var(--tech-bg-card);border-radius:inherit}.tech-border--scan{border:var(--tech-border-width) solid var(--tech-border-color);background:var(--tech-bg-card);overflow:hidden}.tech-border__scan-line{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--tech-border-color),transparent);z-index:2;opacity:.6}.tech-border--animate .tech-border__scan-line{animation:techScan 3s linear infinite}.tech-border--neon{border:var(--tech-border-width) solid var(--tech-border-color);background:var(--tech-bg-card);box-shadow:0 0 5px var(--tech-border-color),0 0 10px var(--tech-border-glow),inset 0 0 5px var(--tech-border-glow)}.tech-border--animate.tech-border--neon{animation:techGlow 2s ease-in-out infinite}
@@ -0,0 +1 @@
1
+ export * from './components/TechBorder/entry'
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../chunks/jsx-runtime-7asRZgsb.cjs");const e=require("../chunks/TechButton-DYdIWO-l.cjs");exports.TechButton=e.TechButton;
@@ -0,0 +1,5 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { T as e } from "../chunks/TechButton-CTrXjlsD.js";
3
+ export {
4
+ e as TechButton
5
+ };
@@ -0,0 +1 @@
1
+ .tech-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;cursor:pointer;font-family:var(--tech-font-title);font-weight:500;letter-spacing:1px;transition:all var(--tech-duration-normal) var(--tech-easing);overflow:hidden;white-space:nowrap;outline:none}.tech-button:disabled{opacity:.4;cursor:not-allowed}.tech-button--small{padding:6px 16px;font-size:12px;height:32px}.tech-button--medium{padding:8px 24px;font-size:14px;height:40px}.tech-button--large{padding:12px 32px;font-size:16px;height:48px}.tech-button--primary{background:linear-gradient(135deg,var(--tech-btn-color, var(--tech-primary)),var(--tech-primary-dark));color:var(--tech-bg-dark);border-color:var(--tech-btn-color, var(--tech-primary))}.tech-button--primary:hover:not(:disabled){box-shadow:0 0 20px #00d4ff66;transform:translateY(-1px)}.tech-button--secondary{background:linear-gradient(135deg,var(--tech-btn-color, var(--tech-secondary)),var(--tech-secondary-dark));color:var(--tech-bg-dark);border-color:var(--tech-btn-color, var(--tech-secondary))}.tech-button--secondary:hover:not(:disabled){box-shadow:0 0 20px #0affb066;transform:translateY(-1px)}.tech-button--outline{background:transparent;color:var(--tech-btn-color, var(--tech-primary));border-color:var(--tech-btn-color, var(--tech-primary))}.tech-button--outline:hover:not(:disabled){background:#00d4ff1a;box-shadow:0 0 15px #00d4ff33}.tech-button--ghost{background:transparent;color:var(--tech-btn-color, var(--tech-primary));border-color:transparent}.tech-button--ghost:hover:not(:disabled){background:#00d4ff14}.tech-button--neon{background:transparent;color:var(--tech-btn-color, var(--tech-primary));border-color:var(--tech-btn-color, var(--tech-primary));box-shadow:0 0 5px var(--tech-btn-color, var(--tech-primary)),inset 0 0 5px #00d4ff1a}.tech-button--neon:hover:not(:disabled){box-shadow:0 0 10px var(--tech-btn-color, var(--tech-primary)),0 0 20px #00d4ff4d,inset 0 0 10px #00d4ff26}.tech-button--glow{animation:techPulse 2s ease-in-out infinite}.tech-button__border-effect{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.tech-button:hover:not(:disabled) .tech-button__border-effect{left:100%}.tech-button__spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:currentColor;border-radius:50%;animation:techRotate .6s linear infinite}.tech-button__icon{display:flex;align-items:center;font-size:1em}.tech-button__text{display:inline-flex}
@@ -0,0 +1 @@
1
+ export * from './components/TechButton/entry'
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../chunks/jsx-runtime-7asRZgsb.cjs");const e=require("../chunks/TechTitle-B3pkYIbI.cjs");exports.TechTitle=e.TechTitle;
@@ -0,0 +1,5 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { T as t } from "../chunks/TechTitle-DfLwdrV5.js";
3
+ export {
4
+ t as TechTitle
5
+ };
@@ -0,0 +1 @@
1
+ .tech-title{position:relative;font-family:var(--tech-font-title);font-weight:600;letter-spacing:2px;margin:0;padding:0}.tech-title--h1{font-size:28px;line-height:1.4}.tech-title--h2{font-size:22px;line-height:1.4}.tech-title--h3{font-size:18px;line-height:1.4}.tech-title--left{text-align:left}.tech-title--center{text-align:center}.tech-title--right{text-align:right}.tech-title--default{color:var(--tech-title-color, var(--tech-primary))}.tech-title--gradient{background:linear-gradient(90deg,var(--tech-title-color, var(--tech-primary)),var(--tech-primary-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tech-title--glow{color:var(--tech-title-color, var(--tech-primary));text-shadow:0 0 10px var(--tech-title-color, var(--tech-primary)),0 0 30px rgba(0,212,255,.3)}.tech-title--animate.tech-title--glow{animation:techGlow 2s ease-in-out infinite}.tech-title--underline{display:flex;align-items:center;gap:4px;margin-top:8px}.tech-title--center .tech-title--underline{justify-content:center}.tech-title__underline-dot{width:4px;height:4px;background:var(--tech-title-color, var(--tech-primary));border-radius:50%;box-shadow:0 0 6px var(--tech-title-color, var(--tech-primary))}.tech-title__underline-line{flex:1;max-width:120px;height:1px;background:linear-gradient(90deg,var(--tech-title-color, var(--tech-primary)),transparent)}.tech-title--animate .tech-title__underline-line{animation:techLineGrow 1s ease-out}.tech-title--bracket{color:var(--tech-title-color, var(--tech-primary))}.tech-title__bracket{color:var(--tech-title-color, var(--tech-primary));font-weight:400;opacity:.7}.tech-title--animate .tech-title__bracket--left{animation:techSlideIn .5s ease-out}.tech-title--animate .tech-title__bracket--right{animation:techSlideIn .5s ease-out .1s both}.tech-title__text{display:inline}
@@ -0,0 +1 @@
1
+ export * from './components/TechTitle/entry'
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../chunks/jsx-runtime-7asRZgsb.cjs");const e=require("../chunks/ThemeProvider-CGtZuVnU.cjs");exports.ThemeProvider=e.ThemeProvider;exports.presetThemes=e.presetThemes;exports.themeLabels=e.themeLabels;exports.useTheme=e.useTheme;
@@ -0,0 +1,8 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { T as r, p as a, t, u as h } from "../chunks/ThemeProvider-uEdKkbFn.js";
3
+ export {
4
+ r as ThemeProvider,
5
+ a as presetThemes,
6
+ t as themeLabels,
7
+ h as useTheme
8
+ };
@@ -0,0 +1 @@
1
+ .tech-theme-switcher{display:flex;gap:8px;flex-wrap:wrap}.tech-theme-swatch{position:relative;width:48px;height:48px;border-radius:8px;cursor:pointer;border:2px solid transparent;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.tech-theme-swatch:hover{transform:scale(1.1);box-shadow:0 0 12px var(--tech-glow-primary)}.tech-theme-swatch--active{border-color:var(--tech-primary);box-shadow:0 0 15px var(--tech-glow-primary)}.tech-theme-swatch__inner{position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:5px;display:flex;flex-direction:column;overflow:hidden}.tech-theme-swatch__bg{flex:1}.tech-theme-swatch__accent{height:4px}.tech-theme-swatch__label{position:absolute;bottom:-24px;left:50%;transform:translate(-50%);font-size:11px;color:var(--tech-text-secondary);white-space:nowrap;transition:color .2s}.tech-theme-swatch--active .tech-theme-swatch__label{color:var(--tech-primary)}
@@ -0,0 +1 @@
1
+ export * from './components/ThemeProvider/entry'
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../chunks/jsx-runtime-7asRZgsb.cjs");const e=require("../chunks/Toast-CedBaeZV.cjs");exports.Toast=e.Toast;
@@ -0,0 +1,5 @@
1
+ import "../chunks/jsx-runtime-C6iVud2f.js";
2
+ import { T as a } from "../chunks/Toast-DdlPSfu0.js";
3
+ export {
4
+ a as Toast
5
+ };
@@ -0,0 +1 @@
1
+ .tech-toast-container{position:fixed;top:24px;left:50%;transform:translate(-50%);z-index:2000;display:flex;flex-direction:column;align-items:center;gap:12px;pointer-events:none}.tech-toast{position:relative;display:flex;align-items:center;gap:10px;padding:12px 24px;min-width:280px;max-width:520px;background:var(--tech-bg-medium);border:1px solid var(--tech-border);border-radius:4px;pointer-events:auto;opacity:0;transform:translateY(-20px) scale(.95);transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.tech-toast--visible{opacity:1;transform:translateY(0) scale(1)}.tech-toast__scan-line{position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--tech-primary),transparent);animation:techToastScan 2s linear infinite;opacity:.6}@keyframes techToastScan{0%{transform:translate(-100%)}to{transform:translate(100%)}}.tech-toast__corner{position:absolute;width:10px;height:10px;z-index:1}.tech-toast__corner--tl{top:0;left:0;border-top:2px solid var(--tech-primary);border-left:2px solid var(--tech-primary)}.tech-toast__corner--tr{top:0;right:0;border-top:2px solid var(--tech-primary);border-right:2px solid var(--tech-primary)}.tech-toast__corner--bl{bottom:0;left:0;border-bottom:2px solid var(--tech-primary);border-left:2px solid var(--tech-primary)}.tech-toast__corner--br{bottom:0;right:0;border-bottom:2px solid var(--tech-primary);border-right:2px solid var(--tech-primary)}.tech-toast__icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:14px;position:relative}.tech-toast__loading-ring{position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid transparent;border-top-color:var(--tech-primary);border-radius:50%;animation:techToastSpin 1s linear infinite}@keyframes techToastSpin{to{transform:rotate(360deg)}}.tech-toast__content{flex:1;font-size:14px;line-height:1.5;color:var(--tech-text-primary);font-family:var(--tech-font-body)}.tech-toast__close{flex-shrink:0;background:none;border:none;color:var(--tech-text-muted);font-size:12px;cursor:pointer;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.tech-toast__close:hover{color:var(--tech-primary);background:var(--tech-glow-primary)}.tech-toast--info{border-color:var(--tech-border);box-shadow:0 4px 20px #0006,0 0 15px var(--tech-glow-primary)}.tech-toast--info .tech-toast__icon{color:var(--tech-primary);text-shadow:0 0 8px var(--tech-glow-primary)}.tech-toast--info .tech-toast__corner--tl,.tech-toast--info .tech-toast__corner--tr,.tech-toast--info .tech-toast__corner--bl,.tech-toast--info .tech-toast__corner--br{border-color:var(--tech-primary)}.tech-toast--success{border-color:#0affb066;box-shadow:0 4px 20px #0006,0 0 15px var(--tech-glow-secondary)}.tech-toast--success .tech-toast__icon{color:var(--tech-success);text-shadow:0 0 8px var(--tech-glow-secondary)}.tech-toast--success .tech-toast__corner--tl,.tech-toast--success .tech-toast__corner--tr,.tech-toast--success .tech-toast__corner--bl,.tech-toast--success .tech-toast__corner--br{border-color:var(--tech-success)}.tech-toast--success .tech-toast__scan-line{background:linear-gradient(90deg,transparent,var(--tech-success),transparent)}.tech-toast--warning{border-color:#ffd00066;box-shadow:0 4px 20px #0006,0 0 15px #ffd00026}.tech-toast--warning .tech-toast__icon{color:var(--tech-warning);text-shadow:0 0 8px rgba(255,208,0,.4)}.tech-toast--warning .tech-toast__corner--tl,.tech-toast--warning .tech-toast__corner--tr,.tech-toast--warning .tech-toast__corner--bl,.tech-toast--warning .tech-toast__corner--br{border-color:var(--tech-warning)}.tech-toast--warning .tech-toast__scan-line{background:linear-gradient(90deg,transparent,var(--tech-warning),transparent)}.tech-toast--error{border-color:#ff475766;box-shadow:0 4px 20px #0006,0 0 15px #ff475726}.tech-toast--error .tech-toast__icon{color:var(--tech-danger);text-shadow:0 0 8px rgba(255,71,87,.4)}.tech-toast--error .tech-toast__corner--tl,.tech-toast--error .tech-toast__corner--tr,.tech-toast--error .tech-toast__corner--bl,.tech-toast--error .tech-toast__corner--br{border-color:var(--tech-danger)}.tech-toast--error .tech-toast__scan-line{background:linear-gradient(90deg,transparent,var(--tech-danger),transparent)}.tech-toast--loading{border-color:var(--tech-border);box-shadow:0 4px 20px #0006,0 0 15px var(--tech-glow-primary)}.tech-toast--loading .tech-toast__icon{color:var(--tech-primary);text-shadow:0 0 8px var(--tech-glow-primary)}.tech-toast--loading .tech-toast__corner--tl,.tech-toast--loading .tech-toast__corner--tr,.tech-toast--loading .tech-toast__corner--bl,.tech-toast--loading .tech-toast__corner--br{border-color:var(--tech-primary);animation:techCornerPulse 1.5s ease-in-out infinite}@keyframes techCornerPulse{0%,to{opacity:1}50%{opacity:.4}}
@@ -0,0 +1 @@
1
+ export * from './components/Toast/entry'
@@ -0,0 +1 @@
1
+ @import"https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700;800;900&family=Rajdhani:wght@300;400;500;600;700&display=swap";:root{--tech-primary: #00d4ff;--tech-primary-dark: #0098d4;--tech-primary-light: #33ddff;--tech-secondary: #0affb0;--tech-secondary-dark: #08c98a;--tech-accent: #ff6b35;--tech-warning: #ffd000;--tech-danger: #ff4757;--tech-success: #0affb0;--tech-bg-dark: #0a0e27;--tech-bg-medium: #0d1135;--tech-bg-light: #131842;--tech-bg-card: rgba(13, 17, 53, .85);--tech-bg-card-hover: rgba(19, 24, 66, .9);--tech-border: rgba(0, 212, 255, .3);--tech-border-active: rgba(0, 212, 255, .7);--tech-text-primary: #e8eaf6;--tech-text-secondary: rgba(232, 234, 246, .65);--tech-text-muted: rgba(232, 234, 246, .35);--tech-glow-primary: rgba(0, 212, 255, .15);--tech-glow-secondary: rgba(10, 255, 176, .15);--tech-font-digital: "Orbitron", "Rajdhani", "Courier New", monospace;--tech-font-title: "Rajdhani", "Microsoft YaHei", sans-serif;--tech-font-body: "Microsoft YaHei", "PingFang SC", sans-serif;--tech-duration-fast: .2s;--tech-duration-normal: .3s;--tech-duration-slow: .6s;--tech-duration-glow: 2s;--tech-easing: cubic-bezier(.4, 0, .2, 1)}@keyframes techGlow{0%,to{opacity:1}50%{opacity:.6}}@keyframes techPulse{0%,to{box-shadow:0 0 5px #00d4ff4d}50%{box-shadow:0 0 20px #00d4ff99}}@keyframes techScan{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes techBorderFlow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes techFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes techSlideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes techNumberFlip{0%{transform:rotateX(90deg);opacity:0}to{transform:rotateX(0);opacity:1}}@keyframes techDotBlink{0%,to{opacity:1}50%{opacity:.3}}@keyframes techLineGrow{0%{width:0}to{width:100%}}@keyframes techRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--tech-bg-dark);color:var(--tech-text-primary);font-family:var(--tech-font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:var(--tech-bg-dark)}::-webkit-scrollbar-thumb{background:var(--tech-primary);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--tech-primary-light)}
@@ -0,0 +1,61 @@
1
+ import { j as a } from "./jsx-runtime-C6iVud2f.js";
2
+ import { c as n } from "./index-CcykAxZN.js";
3
+ const v = ({
4
+ title: s,
5
+ value: d,
6
+ unit: e,
7
+ icon: r,
8
+ trend: c,
9
+ trendValue: t,
10
+ variant: _ = "default",
11
+ color: h,
12
+ animate: l = !0,
13
+ children: i,
14
+ className: m,
15
+ style: o
16
+ }) => {
17
+ const x = h ? { "--tech-card-color": h } : {}, j = c === "up" ? "▲" : c === "down" ? "▼" : "●";
18
+ return /* @__PURE__ */ a.jsxs(
19
+ "div",
20
+ {
21
+ className: n(
22
+ "tech-data-card",
23
+ `tech-data-card--${_}`,
24
+ l && "tech-data-card--animate",
25
+ m
26
+ ),
27
+ style: { ...x, ...o },
28
+ children: [
29
+ /* @__PURE__ */ a.jsx("div", { className: "tech-data-card__corner tech-data-card__corner--tl" }),
30
+ /* @__PURE__ */ a.jsx("div", { className: "tech-data-card__corner tech-data-card__corner--br" }),
31
+ /* @__PURE__ */ a.jsxs("div", { className: "tech-data-card__header", children: [
32
+ r && /* @__PURE__ */ a.jsx("span", { className: "tech-data-card__icon", children: r }),
33
+ s && /* @__PURE__ */ a.jsx("span", { className: "tech-data-card__title", children: s })
34
+ ] }),
35
+ /* @__PURE__ */ a.jsxs("div", { className: "tech-data-card__body", children: [
36
+ d !== void 0 && /* @__PURE__ */ a.jsxs("div", { className: "tech-data-card__value-row", children: [
37
+ /* @__PURE__ */ a.jsx("span", { className: "tech-data-card__value", children: d }),
38
+ e && /* @__PURE__ */ a.jsx("span", { className: "tech-data-card__unit", children: e })
39
+ ] }),
40
+ c && /* @__PURE__ */ a.jsxs(
41
+ "div",
42
+ {
43
+ className: n(
44
+ "tech-data-card__trend",
45
+ `tech-data-card__trend--${c}`
46
+ ),
47
+ children: [
48
+ /* @__PURE__ */ a.jsx("span", { className: "tech-data-card__trend-icon", children: j }),
49
+ t && /* @__PURE__ */ a.jsx("span", { className: "tech-data-card__trend-value", children: t })
50
+ ]
51
+ }
52
+ ),
53
+ i
54
+ ] })
55
+ ]
56
+ }
57
+ );
58
+ };
59
+ export {
60
+ v as D
61
+ };
@@ -0,0 +1 @@
1
+ "use strict";const a=require("./jsx-runtime-7asRZgsb.cjs"),x=require("./index-pCtiW2Id.cjs"),u=({title:t,value:c,unit:e,icon:r,trend:s,trendValue:d,variant:i="default",color:n,animate:h=!0,children:l,className:_,style:m})=>{const o=n?{"--tech-card-color":n}:{},j=s==="up"?"▲":s==="down"?"▼":"●";return a.jsxRuntimeExports.jsxs("div",{className:x.clsx("tech-data-card",`tech-data-card--${i}`,h&&"tech-data-card--animate",_),style:{...o,...m},children:[a.jsxRuntimeExports.jsx("div",{className:"tech-data-card__corner tech-data-card__corner--tl"}),a.jsxRuntimeExports.jsx("div",{className:"tech-data-card__corner tech-data-card__corner--br"}),a.jsxRuntimeExports.jsxs("div",{className:"tech-data-card__header",children:[r&&a.jsxRuntimeExports.jsx("span",{className:"tech-data-card__icon",children:r}),t&&a.jsxRuntimeExports.jsx("span",{className:"tech-data-card__title",children:t})]}),a.jsxRuntimeExports.jsxs("div",{className:"tech-data-card__body",children:[c!==void 0&&a.jsxRuntimeExports.jsxs("div",{className:"tech-data-card__value-row",children:[a.jsxRuntimeExports.jsx("span",{className:"tech-data-card__value",children:c}),e&&a.jsxRuntimeExports.jsx("span",{className:"tech-data-card__unit",children:e})]}),s&&a.jsxRuntimeExports.jsxs("div",{className:x.clsx("tech-data-card__trend",`tech-data-card__trend--${s}`),children:[a.jsxRuntimeExports.jsx("span",{className:"tech-data-card__trend-icon",children:j}),d&&a.jsxRuntimeExports.jsx("span",{className:"tech-data-card__trend-value",children:d})]}),l]})]})};exports.DataCard=u;
@@ -0,0 +1 @@
1
+ "use strict";const e=require("./jsx-runtime-7asRZgsb.cjs"),x=require("./index-pCtiW2Id.cjs"),h=({variant:t="gradient",direction:s="horizontal",color:o,length:n="100%",thickness:c=1,animate:r=!0,className:a,style:l})=>{const d={"--tech-line-color":o||"var(--tech-primary)","--tech-line-thickness":`${c}px`,"--tech-line-length":typeof n=="number"?`${n}px`:n};return e.jsxRuntimeExports.jsxs("div",{className:x.clsx("tech-decoration-line",`tech-decoration-line--${t}`,`tech-decoration-line--${s}`,r&&"tech-decoration-line--animate",a),style:{...d,...l},children:[t==="double"&&e.jsxRuntimeExports.jsx("div",{className:"tech-decoration-line__inner"}),t==="dot-wave"&&e.jsxRuntimeExports.jsx("div",{className:"tech-decoration-line__dots",children:Array.from({length:20}).map((m,i)=>e.jsxRuntimeExports.jsx("span",{className:"tech-decoration-line__dot",style:{animationDelay:`${i*.1}s`}},i))})]})};exports.DecorationLine=h;
@@ -0,0 +1,45 @@
1
+ import { j as e } from "./jsx-runtime-C6iVud2f.js";
2
+ import { c as h } from "./index-CcykAxZN.js";
3
+ const _ = ({
4
+ variant: t = "gradient",
5
+ direction: c = "horizontal",
6
+ color: i,
7
+ length: o = "100%",
8
+ thickness: s = 1,
9
+ animate: a = !0,
10
+ className: r,
11
+ style: l
12
+ }) => {
13
+ const d = {
14
+ "--tech-line-color": i || "var(--tech-primary)",
15
+ "--tech-line-thickness": `${s}px`,
16
+ "--tech-line-length": typeof o == "number" ? `${o}px` : o
17
+ };
18
+ return /* @__PURE__ */ e.jsxs(
19
+ "div",
20
+ {
21
+ className: h(
22
+ "tech-decoration-line",
23
+ `tech-decoration-line--${t}`,
24
+ `tech-decoration-line--${c}`,
25
+ a && "tech-decoration-line--animate",
26
+ r
27
+ ),
28
+ style: { ...d, ...l },
29
+ children: [
30
+ t === "double" && /* @__PURE__ */ e.jsx("div", { className: "tech-decoration-line__inner" }),
31
+ t === "dot-wave" && /* @__PURE__ */ e.jsx("div", { className: "tech-decoration-line__dots", children: Array.from({ length: 20 }).map((m, n) => /* @__PURE__ */ e.jsx(
32
+ "span",
33
+ {
34
+ className: "tech-decoration-line__dot",
35
+ style: { animationDelay: `${n * 0.1}s` }
36
+ },
37
+ n
38
+ )) })
39
+ ]
40
+ }
41
+ );
42
+ };
43
+ export {
44
+ _ as D
45
+ };
@@ -0,0 +1,60 @@
1
+ import { j as a } from "./jsx-runtime-C6iVud2f.js";
2
+ import { useState as g, useRef as x, useEffect as E } from "react";
3
+ import { c as M } from "./index-CcykAxZN.js";
4
+ const I = ({
5
+ value: t,
6
+ duration: m = 1500,
7
+ decimals: b = 0,
8
+ separator: j = !0,
9
+ prefix: p = "",
10
+ suffix: u = "",
11
+ color: F,
12
+ fontSize: V = 36,
13
+ animate: d = !0,
14
+ className: _,
15
+ style: y
16
+ }) => {
17
+ const [N, o] = g(t), [D, f] = g(!1), r = x(t), s = x();
18
+ E(() => {
19
+ if (!d || r.current === t) {
20
+ o(t), r.current = t;
21
+ return;
22
+ }
23
+ f(!0);
24
+ const n = r.current, i = t - n, l = performance.now(), e = (c) => {
25
+ const $ = c - l, h = Math.min($ / m, 1), q = 1 - Math.pow(1 - h, 3), w = n + i * q;
26
+ o(w), h < 1 ? s.current = requestAnimationFrame(e) : (o(t), f(!1), r.current = t);
27
+ };
28
+ return s.current = requestAnimationFrame(e), () => {
29
+ s.current && cancelAnimationFrame(s.current);
30
+ };
31
+ }, [t, m, d]);
32
+ const R = (n) => {
33
+ const i = n.toFixed(b);
34
+ if (!j) return i;
35
+ const [l, e] = i.split("."), c = l.replace(/\B(?=(\d{3})+(?!\d))/g, ",");
36
+ return e ? `${c}.${e}` : c;
37
+ }, A = {
38
+ "--tech-digital-color": F || "var(--tech-primary)",
39
+ "--tech-digital-size": `${V}px`
40
+ };
41
+ return /* @__PURE__ */ a.jsxs(
42
+ "div",
43
+ {
44
+ className: M(
45
+ "tech-digital-number",
46
+ D && "tech-digital-number--flipping",
47
+ _
48
+ ),
49
+ style: { ...A, ...y },
50
+ children: [
51
+ p && /* @__PURE__ */ a.jsx("span", { className: "tech-digital-number__prefix", children: p }),
52
+ /* @__PURE__ */ a.jsx("span", { className: "tech-digital-number__value", children: R(N) }),
53
+ u && /* @__PURE__ */ a.jsx("span", { className: "tech-digital-number__suffix", children: u })
54
+ ]
55
+ }
56
+ );
57
+ };
58
+ export {
59
+ I as D
60
+ };
@@ -0,0 +1 @@
1
+ "use strict";const u=require("./jsx-runtime-7asRZgsb.cjs"),s=require("react"),A=require("./index-pCtiW2Id.cjs"),w=({value:e,duration:m=1500,decimals:h=0,separator:j=!0,prefix:p="",suffix:d="",color:R,fontSize:b=36,animate:f=!0,className:q,style:F})=>{const[N,o]=s.useState(e),[V,x]=s.useState(!1),r=s.useRef(e),n=s.useRef();s.useEffect(()=>{if(!f||r.current===e){o(e),r.current=e;return}x(!0);const i=r.current,c=e-i,l=performance.now(),t=a=>{const E=a-l,g=Math.min(E/m,1),$=1-Math.pow(1-g,3),D=i+c*$;o(D),g<1?n.current=requestAnimationFrame(t):(o(e),x(!1),r.current=e)};return n.current=requestAnimationFrame(t),()=>{n.current&&cancelAnimationFrame(n.current)}},[e,m,f]);const _=i=>{const c=i.toFixed(h);if(!j)return c;const[l,t]=c.split("."),a=l.replace(/\B(?=(\d{3})+(?!\d))/g,",");return t?`${a}.${t}`:a},y={"--tech-digital-color":R||"var(--tech-primary)","--tech-digital-size":`${b}px`};return u.jsxRuntimeExports.jsxs("div",{className:A.clsx("tech-digital-number",V&&"tech-digital-number--flipping",q),style:{...y,...F},children:[p&&u.jsxRuntimeExports.jsx("span",{className:"tech-digital-number__prefix",children:p}),u.jsxRuntimeExports.jsx("span",{className:"tech-digital-number__value",children:_(N)}),d&&u.jsxRuntimeExports.jsx("span",{className:"tech-digital-number__suffix",children:d})]})};exports.DigitalNumber=w;
@@ -0,0 +1 @@
1
+ "use strict";const e=require("./jsx-runtime-7asRZgsb.cjs"),x=require("react"),E=require("react-dom"),R=require("./index-pCtiW2Id.cjs"),p=({open:t,onClose:r,title:c,footer:n,width:a,placement:i="right",variant:h="default",maskClosable:u=!0,closable:s=!0,children:l,className:m,style:j})=>{const d=x.useCallback(v=>{v.key==="Escape"&&s&&r()},[r,s]);if(x.useEffect(()=>(t&&(document.addEventListener("keydown",d),document.body.style.overflow="hidden"),()=>{document.removeEventListener("keydown",d),document.body.style.overflow=""}),[t,d]),!t)return null;const w=()=>{u&&r()},o=i==="left"||i==="right",_={...j,...o?{width:a||400,height:"100%"}:{height:a||400,width:"100%"}};return E.createPortal(e.jsxRuntimeExports.jsxs("div",{className:"tech-drawer-root",children:[e.jsxRuntimeExports.jsx("div",{className:"tech-drawer-mask",onClick:w}),e.jsxRuntimeExports.jsxs("div",{className:R.clsx("tech-drawer",`tech-drawer--${i}`,`tech-drawer--${h}`,m),style:_,children:[e.jsxRuntimeExports.jsx("div",{className:"tech-drawer__scan-line"}),e.jsxRuntimeExports.jsx("div",{className:"tech-drawer__corner tech-drawer__corner--tl"}),e.jsxRuntimeExports.jsx("div",{className:"tech-drawer__corner tech-drawer__corner--tr"}),e.jsxRuntimeExports.jsx("div",{className:"tech-drawer__corner tech-drawer__corner--bl"}),e.jsxRuntimeExports.jsx("div",{className:"tech-drawer__corner tech-drawer__corner--br"}),(c||s)&&e.jsxRuntimeExports.jsxs("div",{className:"tech-drawer__header",children:[c&&e.jsxRuntimeExports.jsx("div",{className:"tech-drawer__title",children:c}),s&&e.jsxRuntimeExports.jsx("button",{className:"tech-drawer__close",onClick:r,children:e.jsxRuntimeExports.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:e.jsxRuntimeExports.jsx("path",{d:"M1 1L13 13M1 13L13 1",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})})})]}),e.jsxRuntimeExports.jsx("div",{className:"tech-drawer__body",children:l}),n&&e.jsxRuntimeExports.jsx("div",{className:"tech-drawer__footer",children:n}),o&&e.jsxRuntimeExports.jsx("div",{className:"tech-drawer__edge-line"})]})]}),document.body)};exports.Drawer=p;
@@ -0,0 +1,69 @@
1
+ import { j as e } from "./jsx-runtime-C6iVud2f.js";
2
+ import { useCallback as u, useEffect as f } from "react";
3
+ import { createPortal as N } from "react-dom";
4
+ import { c as k } from "./index-CcykAxZN.js";
5
+ const E = ({
6
+ open: s,
7
+ onClose: r,
8
+ title: c,
9
+ footer: i,
10
+ width: o,
11
+ placement: d = "right",
12
+ variant: h = "default",
13
+ maskClosable: l = !0,
14
+ closable: t = !0,
15
+ children: w,
16
+ className: _,
17
+ style: m
18
+ }) => {
19
+ const a = u(
20
+ (j) => {
21
+ j.key === "Escape" && t && r();
22
+ },
23
+ [r, t]
24
+ );
25
+ if (f(() => (s && (document.addEventListener("keydown", a), document.body.style.overflow = "hidden"), () => {
26
+ document.removeEventListener("keydown", a), document.body.style.overflow = "";
27
+ }), [s, a]), !s) return null;
28
+ const x = () => {
29
+ l && r();
30
+ }, n = d === "left" || d === "right", v = {
31
+ ...m,
32
+ ...n ? { width: o || 400, height: "100%" } : { height: o || 400, width: "100%" }
33
+ };
34
+ return N(
35
+ /* @__PURE__ */ e.jsxs("div", { className: "tech-drawer-root", children: [
36
+ /* @__PURE__ */ e.jsx("div", { className: "tech-drawer-mask", onClick: x }),
37
+ /* @__PURE__ */ e.jsxs(
38
+ "div",
39
+ {
40
+ className: k(
41
+ "tech-drawer",
42
+ `tech-drawer--${d}`,
43
+ `tech-drawer--${h}`,
44
+ _
45
+ ),
46
+ style: v,
47
+ children: [
48
+ /* @__PURE__ */ e.jsx("div", { className: "tech-drawer__scan-line" }),
49
+ /* @__PURE__ */ e.jsx("div", { className: "tech-drawer__corner tech-drawer__corner--tl" }),
50
+ /* @__PURE__ */ e.jsx("div", { className: "tech-drawer__corner tech-drawer__corner--tr" }),
51
+ /* @__PURE__ */ e.jsx("div", { className: "tech-drawer__corner tech-drawer__corner--bl" }),
52
+ /* @__PURE__ */ e.jsx("div", { className: "tech-drawer__corner tech-drawer__corner--br" }),
53
+ (c || t) && /* @__PURE__ */ e.jsxs("div", { className: "tech-drawer__header", children: [
54
+ c && /* @__PURE__ */ e.jsx("div", { className: "tech-drawer__title", children: c }),
55
+ t && /* @__PURE__ */ e.jsx("button", { className: "tech-drawer__close", onClick: r, children: /* @__PURE__ */ e.jsx("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", children: /* @__PURE__ */ e.jsx("path", { d: "M1 1L13 13M1 13L13 1", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) }) })
56
+ ] }),
57
+ /* @__PURE__ */ e.jsx("div", { className: "tech-drawer__body", children: w }),
58
+ i && /* @__PURE__ */ e.jsx("div", { className: "tech-drawer__footer", children: i }),
59
+ n && /* @__PURE__ */ e.jsx("div", { className: "tech-drawer__edge-line" })
60
+ ]
61
+ }
62
+ )
63
+ ] }),
64
+ document.body
65
+ );
66
+ };
67
+ export {
68
+ E as D
69
+ };