@dendelion/func-ui 0.1.1 → 0.2.1

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 (138) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/README.md +106 -10
  3. package/dist/components/alert/alert.d.ts +10 -0
  4. package/dist/components/alert/alert.d.ts.map +1 -0
  5. package/dist/components/alert/index.d.ts +3 -0
  6. package/dist/components/alert/index.d.ts.map +1 -0
  7. package/dist/components/breadcrumb/breadcrumb.d.ts +13 -0
  8. package/dist/components/breadcrumb/breadcrumb.d.ts.map +1 -0
  9. package/dist/components/breadcrumb/index.d.ts +3 -0
  10. package/dist/components/breadcrumb/index.d.ts.map +1 -0
  11. package/dist/components/checkbox/checkbox.d.ts +9 -0
  12. package/dist/components/checkbox/checkbox.d.ts.map +1 -0
  13. package/dist/components/checkbox/index.d.ts +3 -0
  14. package/dist/components/checkbox/index.d.ts.map +1 -0
  15. package/dist/components/chip/chip.d.ts +9 -0
  16. package/dist/components/chip/chip.d.ts.map +1 -0
  17. package/dist/components/chip/index.d.ts +3 -0
  18. package/dist/components/chip/index.d.ts.map +1 -0
  19. package/dist/components/circular-progress/circular-progress.d.ts +13 -0
  20. package/dist/components/circular-progress/circular-progress.d.ts.map +1 -0
  21. package/dist/components/circular-progress/index.d.ts +3 -0
  22. package/dist/components/circular-progress/index.d.ts.map +1 -0
  23. package/dist/components/code-block/code-block.d.ts +14 -0
  24. package/dist/components/code-block/code-block.d.ts.map +1 -0
  25. package/dist/components/code-block/index.d.ts +3 -0
  26. package/dist/components/code-block/index.d.ts.map +1 -0
  27. package/dist/components/copy-button/copy-button.d.ts +12 -0
  28. package/dist/components/copy-button/copy-button.d.ts.map +1 -0
  29. package/dist/components/copy-button/index.d.ts +3 -0
  30. package/dist/components/copy-button/index.d.ts.map +1 -0
  31. package/dist/components/data-table/data-table.d.ts +25 -0
  32. package/dist/components/data-table/data-table.d.ts.map +1 -0
  33. package/dist/components/data-table/index.d.ts +3 -0
  34. package/dist/components/data-table/index.d.ts.map +1 -0
  35. package/dist/components/divider/divider.d.ts +7 -0
  36. package/dist/components/divider/divider.d.ts.map +1 -0
  37. package/dist/components/divider/index.d.ts +3 -0
  38. package/dist/components/divider/index.d.ts.map +1 -0
  39. package/dist/components/drawer/drawer.d.ts +24 -0
  40. package/dist/components/drawer/drawer.d.ts.map +1 -0
  41. package/dist/components/drawer/index.d.ts +3 -0
  42. package/dist/components/drawer/index.d.ts.map +1 -0
  43. package/dist/components/empty-state/empty-state.d.ts +11 -0
  44. package/dist/components/empty-state/empty-state.d.ts.map +1 -0
  45. package/dist/components/empty-state/index.d.ts +3 -0
  46. package/dist/components/empty-state/index.d.ts.map +1 -0
  47. package/dist/components/file-button/file-button.d.ts +8 -0
  48. package/dist/components/file-button/file-button.d.ts.map +1 -0
  49. package/dist/components/file-button/index.d.ts +3 -0
  50. package/dist/components/file-button/index.d.ts.map +1 -0
  51. package/dist/components/glass/glass.d.ts.map +1 -1
  52. package/dist/components/icon/icon.d.ts +9 -0
  53. package/dist/components/icon/icon.d.ts.map +1 -0
  54. package/dist/components/icon/index.d.ts +3 -0
  55. package/dist/components/icon/index.d.ts.map +1 -0
  56. package/dist/components/inline-code/index.d.ts +3 -0
  57. package/dist/components/inline-code/index.d.ts.map +1 -0
  58. package/dist/components/inline-code/inline-code.d.ts +4 -0
  59. package/dist/components/inline-code/inline-code.d.ts.map +1 -0
  60. package/dist/components/input/index.d.ts +3 -0
  61. package/dist/components/input/index.d.ts.map +1 -0
  62. package/dist/components/input/input.d.ts +9 -0
  63. package/dist/components/input/input.d.ts.map +1 -0
  64. package/dist/components/kbd/index.d.ts +3 -0
  65. package/dist/components/kbd/index.d.ts.map +1 -0
  66. package/dist/components/kbd/kbd.d.ts +4 -0
  67. package/dist/components/kbd/kbd.d.ts.map +1 -0
  68. package/dist/components/link-button/index.d.ts +3 -0
  69. package/dist/components/link-button/index.d.ts.map +1 -0
  70. package/dist/components/link-button/link-button.d.ts +9 -0
  71. package/dist/components/link-button/link-button.d.ts.map +1 -0
  72. package/dist/components/list-item/index.d.ts +3 -0
  73. package/dist/components/list-item/index.d.ts.map +1 -0
  74. package/dist/components/list-item/list-item.d.ts +9 -0
  75. package/dist/components/list-item/list-item.d.ts.map +1 -0
  76. package/dist/components/menu/index.d.ts +3 -0
  77. package/dist/components/menu/index.d.ts.map +1 -0
  78. package/dist/components/menu/menu.d.ts +22 -0
  79. package/dist/components/menu/menu.d.ts.map +1 -0
  80. package/dist/components/modal/index.d.ts +3 -0
  81. package/dist/components/modal/index.d.ts.map +1 -0
  82. package/dist/components/modal/modal.d.ts +24 -0
  83. package/dist/components/modal/modal.d.ts.map +1 -0
  84. package/dist/components/progress/index.d.ts +3 -0
  85. package/dist/components/progress/index.d.ts.map +1 -0
  86. package/dist/components/progress/progress.d.ts +9 -0
  87. package/dist/components/progress/progress.d.ts.map +1 -0
  88. package/dist/components/radio/index.d.ts +5 -0
  89. package/dist/components/radio/index.d.ts.map +1 -0
  90. package/dist/components/radio/radio-group.d.ts +21 -0
  91. package/dist/components/radio/radio-group.d.ts.map +1 -0
  92. package/dist/components/radio/radio.d.ts +9 -0
  93. package/dist/components/radio/radio.d.ts.map +1 -0
  94. package/dist/components/segmented-control/index.d.ts +3 -0
  95. package/dist/components/segmented-control/index.d.ts.map +1 -0
  96. package/dist/components/segmented-control/segmented-control.d.ts +15 -0
  97. package/dist/components/segmented-control/segmented-control.d.ts.map +1 -0
  98. package/dist/components/select/index.d.ts +3 -0
  99. package/dist/components/select/index.d.ts.map +1 -0
  100. package/dist/components/select/select.d.ts +23 -0
  101. package/dist/components/select/select.d.ts.map +1 -0
  102. package/dist/components/skeleton/index.d.ts +3 -0
  103. package/dist/components/skeleton/index.d.ts.map +1 -0
  104. package/dist/components/skeleton/skeleton.d.ts +8 -0
  105. package/dist/components/skeleton/skeleton.d.ts.map +1 -0
  106. package/dist/components/slider/index.d.ts +3 -0
  107. package/dist/components/slider/index.d.ts.map +1 -0
  108. package/dist/components/slider/slider.d.ts +19 -0
  109. package/dist/components/slider/slider.d.ts.map +1 -0
  110. package/dist/components/spinner/index.d.ts +3 -0
  111. package/dist/components/spinner/index.d.ts.map +1 -0
  112. package/dist/components/spinner/spinner.d.ts +7 -0
  113. package/dist/components/spinner/spinner.d.ts.map +1 -0
  114. package/dist/components/status-dot/index.d.ts +3 -0
  115. package/dist/components/status-dot/index.d.ts.map +1 -0
  116. package/dist/components/status-dot/status-dot.d.ts +10 -0
  117. package/dist/components/status-dot/status-dot.d.ts.map +1 -0
  118. package/dist/components/switch/index.d.ts +3 -0
  119. package/dist/components/switch/index.d.ts.map +1 -0
  120. package/dist/components/switch/switch.d.ts +9 -0
  121. package/dist/components/switch/switch.d.ts.map +1 -0
  122. package/dist/components/tabs/index.d.ts +3 -0
  123. package/dist/components/tabs/index.d.ts.map +1 -0
  124. package/dist/components/tabs/tabs.d.ts +21 -0
  125. package/dist/components/tabs/tabs.d.ts.map +1 -0
  126. package/dist/components/textarea/index.d.ts +3 -0
  127. package/dist/components/textarea/index.d.ts.map +1 -0
  128. package/dist/components/textarea/textarea.d.ts +9 -0
  129. package/dist/components/textarea/textarea.d.ts.map +1 -0
  130. package/dist/index.cjs +3 -1
  131. package/dist/index.cjs.map +1 -1
  132. package/dist/index.css +1 -1
  133. package/dist/index.d.ts +62 -0
  134. package/dist/index.d.ts.map +1 -1
  135. package/dist/index.mjs +1981 -329
  136. package/dist/index.mjs.map +1 -1
  137. package/package.json +5 -4
  138. package/src/styles/_mixins.scss +21 -5
@@ -9,17 +9,33 @@
9
9
  // ─── Frosted glass ─────────────────────────────────────────────
10
10
  // The core "glossy transparent" surface: translucent fill behind a
11
11
  // heavy backdrop blur. Blur radius is var-backed so consumers can tune it.
12
+ //
13
+ // The frost lives on a ::before layer, NOT on the host: when the host is an
14
+ // ancestor of a scrolling element, inner scrolls invalidate the filter's
15
+ // render surface and Chromium transiently drops the blur (visible flicker,
16
+ // reproduced on macOS). As a sibling layer behind the content, the frost is
17
+ // untouched by scrolling. The host gets z-index: 0 so the -1 pseudo stays
18
+ // inside it without creating a backdrop root (isolation would break sampling).
12
19
  @mixin glass($blur: $blur-glass) {
13
- background-color: var(--fui-surface);
14
- backdrop-filter: blur(var(--fui-glass-blur, #{$blur}));
15
- -webkit-backdrop-filter: blur(var(--fui-glass-blur, #{$blur}));
20
+ position: relative;
21
+ z-index: 0;
16
22
  box-shadow: $glass-shadow;
17
- // Follow the body's theme fade instead of snapping on toggle.
18
- transition: background-color 0.3s ease;
19
23
  // Descendants standing on this surface are already frosted — components
20
24
  // that read this var (Card, secondary Button) drop their own backdrop
21
25
  // blur, which would otherwise re-sample the panel on every scroll tick.
22
26
  --fui-nested-backdrop: none;
27
+
28
+ &::before {
29
+ content: '';
30
+ position: absolute;
31
+ inset: 0;
32
+ z-index: -1;
33
+ background-color: var(--fui-surface);
34
+ backdrop-filter: var(--fui-glass-backdrop, blur(var(--fui-glass-blur, #{$blur})));
35
+ -webkit-backdrop-filter: var(--fui-glass-backdrop, blur(var(--fui-glass-blur, #{$blur})));
36
+ // Follow the body's theme fade instead of snapping on toggle.
37
+ transition: background-color 0.3s ease;
38
+ }
23
39
  }
24
40
 
25
41
  // ─── Reduced motion ────────────────────────────────────────────