@tcn/ui 0.12.4 → 0.12.6

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 (150) hide show
  1. package/dist/inputs/color_input/color_input.js +18 -18
  2. package/dist/inputs/color_input/color_input.js.map +1 -1
  3. package/dist/inputs/control/control.d.ts +10 -0
  4. package/dist/inputs/control/control.d.ts.map +1 -0
  5. package/dist/inputs/control/control.js +17 -0
  6. package/dist/inputs/control/control.js.map +1 -0
  7. package/dist/inputs/control_set/control_set.d.ts +5 -0
  8. package/dist/inputs/control_set/control_set.d.ts.map +1 -0
  9. package/dist/inputs/control_set/control_set.js +20 -0
  10. package/dist/inputs/{input_group/input_group.js.map → control_set/control_set.js.map} +1 -1
  11. package/dist/inputs/date_picker/date_picker_input.js +20 -20
  12. package/dist/inputs/date_picker/date_picker_input.js.map +1 -1
  13. package/dist/inputs/index.d.ts +2 -1
  14. package/dist/inputs/index.d.ts.map +1 -1
  15. package/dist/inputs/index.js +27 -24
  16. package/dist/inputs/index.js.map +1 -1
  17. package/dist/inputs/input/input.js +6 -6
  18. package/dist/inputs/input/input.js.map +1 -1
  19. package/dist/inputs/phone_number_input/phone_number_country_select_adapter.js +15 -15
  20. package/dist/inputs/phone_number_input/phone_number_country_select_adapter.js.map +1 -1
  21. package/dist/inputs/phone_number_input/phone_number_input.js +24 -24
  22. package/dist/inputs/phone_number_input/phone_number_input.js.map +1 -1
  23. package/dist/inputs/phone_number_input/phone_number_input_adapter.js +21 -21
  24. package/dist/inputs/phone_number_input/phone_number_input_adapter.js.map +1 -1
  25. package/dist/inputs/phone_number_input/sip_input.js +14 -14
  26. package/dist/inputs/phone_number_input/sip_input.js.map +1 -1
  27. package/dist/inputs/select/select.js +6 -6
  28. package/dist/inputs/select/select.js.map +1 -1
  29. package/dist/inputs/textarea/textarea.js +8 -8
  30. package/dist/inputs/textarea/textarea.js.map +1 -1
  31. package/dist/inputs/unit_input/unit_input.js +20 -20
  32. package/dist/inputs/unit_input/unit_input.js.map +1 -1
  33. package/dist/overlay/frame/frame.d.ts +2 -2
  34. package/dist/overlay/frame/frame.d.ts.map +1 -1
  35. package/dist/overlay/frame/frame.js +68 -66
  36. package/dist/overlay/frame/frame.js.map +1 -1
  37. package/dist/overlay/slide/slide.d.ts +9 -0
  38. package/dist/overlay/slide/slide.d.ts.map +1 -0
  39. package/dist/overlay/slide/slide.js +29 -0
  40. package/dist/overlay/slide/slide.js.map +1 -0
  41. package/dist/slide.css +1 -0
  42. package/dist/stacks/box/box.d.ts +5 -4
  43. package/dist/stacks/box/box.d.ts.map +1 -1
  44. package/dist/stacks/box/box.js.map +1 -1
  45. package/dist/stacks/box/detect_resize_bounds.d.ts +15 -0
  46. package/dist/stacks/box/detect_resize_bounds.d.ts.map +1 -0
  47. package/dist/stacks/box/detect_resize_bounds.js +49 -0
  48. package/dist/stacks/box/detect_resize_bounds.js.map +1 -0
  49. package/dist/stacks/box/resize_handlers.d.ts.map +1 -1
  50. package/dist/stacks/box/resize_handlers.js +51 -44
  51. package/dist/stacks/box/resize_handlers.js.map +1 -1
  52. package/dist/stacks/box/start_resize_handle.d.ts.map +1 -1
  53. package/dist/stacks/box/start_resize_handle.js +2 -1
  54. package/dist/stacks/box/start_resize_handle.js.map +1 -1
  55. package/dist/stacks/box/types.d.ts +17 -4
  56. package/dist/stacks/box/types.d.ts.map +1 -1
  57. package/dist/surfaces/drawers/drawer.d.ts +5 -0
  58. package/dist/surfaces/drawers/drawer.d.ts.map +1 -0
  59. package/dist/surfaces/drawers/drawer.js +23 -0
  60. package/dist/surfaces/drawers/drawer.js.map +1 -0
  61. package/dist/surfaces/index.d.ts +1 -4
  62. package/dist/surfaces/index.d.ts.map +1 -1
  63. package/dist/surfaces/index.js +20 -26
  64. package/dist/surfaces/index.js.map +1 -1
  65. package/dist/surfaces/modal/modal.d.ts +1 -1
  66. package/dist/surfaces/modal/modal.d.ts.map +1 -1
  67. package/dist/surfaces/modal/modal.js +22 -13
  68. package/dist/surfaces/modal/modal.js.map +1 -1
  69. package/dist/surfaces/window/window.d.ts +1 -1
  70. package/dist/surfaces/window/window.d.ts.map +1 -1
  71. package/dist/surfaces/window/window.js +21 -24
  72. package/dist/surfaces/window/window.js.map +1 -1
  73. package/dist/themes/stylesheets/reset.css +1 -1
  74. package/dist/themes/stylesheets/reset.js +2 -2
  75. package/dist/themes/stylesheets/reset.js.map +1 -1
  76. package/dist/themes/themes/ergo/ergo_theme.css +1 -1
  77. package/dist/themes/themes/ergo/ergo_theme.js +70 -6
  78. package/dist/themes/themes/ergo/ergo_theme.js.map +1 -1
  79. package/dist/utils/dnd/hooks/use_drag_container.d.ts.map +1 -1
  80. package/dist/utils/dnd/hooks/use_drag_container.js.map +1 -1
  81. package/package.json +2 -2
  82. package/src/inputs/color_input/color_input.tsx +3 -3
  83. package/src/inputs/control/control.stories.tsx +158 -0
  84. package/src/inputs/control/control.tsx +32 -0
  85. package/src/inputs/control/control_stories.module.css +7 -0
  86. package/src/inputs/control_set/control_set.stories.tsx +46 -0
  87. package/src/inputs/{input_group/input_group.tsx → control_set/control_set.tsx} +5 -5
  88. package/src/inputs/date_picker/date_picker_input.stories.tsx +1 -1
  89. package/src/inputs/date_picker/date_picker_input.tsx +1 -1
  90. package/src/inputs/index.ts +2 -1
  91. package/src/inputs/input/input.tsx +1 -1
  92. package/src/inputs/phone_number_input/phone_number_country_select_adapter.tsx +1 -1
  93. package/src/inputs/phone_number_input/phone_number_input.tsx +1 -1
  94. package/src/inputs/phone_number_input/phone_number_input_adapter.tsx +2 -2
  95. package/src/inputs/phone_number_input/sip_input.tsx +4 -4
  96. package/src/inputs/select/select.tsx +1 -1
  97. package/src/inputs/textarea/textarea.stories.tsx +1 -1
  98. package/src/inputs/textarea/textarea.tsx +1 -1
  99. package/src/inputs/unit_input/unit_input.tsx +3 -3
  100. package/src/overlay/frame/frame.tsx +43 -63
  101. package/src/overlay/slide/slide.module.css +30 -0
  102. package/src/overlay/slide/slide.stories.tsx +58 -0
  103. package/src/overlay/slide/slide.tsx +51 -0
  104. package/src/stacks/box/box.tsx +10 -16
  105. package/src/stacks/box/detect_resize_bounds.ts +84 -0
  106. package/src/stacks/box/resize_handlers.ts +27 -15
  107. package/src/stacks/box/start_resize_handle.tsx +6 -3
  108. package/src/stacks/box/types.ts +23 -25
  109. package/src/surfaces/drawers/drawer.stories.tsx +130 -0
  110. package/src/surfaces/drawers/drawer.tsx +26 -0
  111. package/src/surfaces/index.ts +1 -4
  112. package/src/surfaces/modal/__stories__/modal.stories.tsx +70 -3
  113. package/src/surfaces/modal/modal.tsx +11 -2
  114. package/src/surfaces/window/window.stories.tsx +64 -8
  115. package/src/surfaces/window/window.tsx +6 -9
  116. package/src/themes/stylesheets/reset.css +2 -2
  117. package/src/themes/themes/ergo/ergo_theme.css +70 -6
  118. package/src/utils/dnd/hooks/use_drag_container.ts +0 -7
  119. package/dist/drawer_bottom.css +0 -1
  120. package/dist/drawer_end.css +0 -1
  121. package/dist/drawer_start.css +0 -1
  122. package/dist/drawer_top.css +0 -1
  123. package/dist/inputs/input_group/input_group.d.ts +0 -5
  124. package/dist/inputs/input_group/input_group.d.ts.map +0 -1
  125. package/dist/inputs/input_group/input_group.js +0 -20
  126. package/dist/surfaces/drawers/drawer_bottom/drawer_bottom.d.ts +0 -7
  127. package/dist/surfaces/drawers/drawer_bottom/drawer_bottom.d.ts.map +0 -1
  128. package/dist/surfaces/drawers/drawer_bottom/drawer_bottom.js +0 -22
  129. package/dist/surfaces/drawers/drawer_bottom/drawer_bottom.js.map +0 -1
  130. package/dist/surfaces/drawers/drawer_end/drawer_end.d.ts +0 -7
  131. package/dist/surfaces/drawers/drawer_end/drawer_end.d.ts.map +0 -1
  132. package/dist/surfaces/drawers/drawer_end/drawer_end.js +0 -20
  133. package/dist/surfaces/drawers/drawer_end/drawer_end.js.map +0 -1
  134. package/dist/surfaces/drawers/drawer_start/drawer_start.d.ts +0 -7
  135. package/dist/surfaces/drawers/drawer_start/drawer_start.d.ts.map +0 -1
  136. package/dist/surfaces/drawers/drawer_start/drawer_start.js +0 -22
  137. package/dist/surfaces/drawers/drawer_start/drawer_start.js.map +0 -1
  138. package/dist/surfaces/drawers/drawer_top/drawer_top.d.ts +0 -7
  139. package/dist/surfaces/drawers/drawer_top/drawer_top.d.ts.map +0 -1
  140. package/dist/surfaces/drawers/drawer_top/drawer_top.js +0 -20
  141. package/dist/surfaces/drawers/drawer_top/drawer_top.js.map +0 -1
  142. package/src/surfaces/drawers/__stories__/drawers.stories.tsx +0 -26
  143. package/src/surfaces/drawers/drawer_bottom/drawer_bottom.module.css +0 -5
  144. package/src/surfaces/drawers/drawer_bottom/drawer_bottom.tsx +0 -23
  145. package/src/surfaces/drawers/drawer_end/drawer_end.module.css +0 -5
  146. package/src/surfaces/drawers/drawer_end/drawer_end.tsx +0 -24
  147. package/src/surfaces/drawers/drawer_start/drawer_start.module.css +0 -5
  148. package/src/surfaces/drawers/drawer_start/drawer_start.tsx +0 -23
  149. package/src/surfaces/drawers/drawer_top/drawer_top.module.css +0 -5
  150. package/src/surfaces/drawers/drawer_top/drawer_top.tsx +0 -24
@@ -1 +1 @@
1
- {"version":3,"file":"resize_handlers.d.ts","sourceRoot":"","sources":["../../../src/stacks/box/resize_handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACvB,MAAM,SAAS,CAAC;AAWjB,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC,EACrD,aAAa,CAAC,EAAE,aAAa,EAC7B,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,KAAK,IAAI,EACrE,MAAM,GAAE,iBAA2B,EACnC,MAAM,UAAQ,EACd,gBAAgB,UAAQ,IAEc,OAAO,KAAK,CAAC,UAAU,UA4D9D;AAED,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC,EACrD,cAAc,CAAC,EAAE,cAAc,EAC/B,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,KAAK,IAAI,EACxE,MAAM,UAAQ,EACd,MAAM,GAAE,kBAA6B,IAGD,OAAO,KAAK,CAAC,UAAU,UAoD5D"}
1
+ {"version":3,"file":"resize_handlers.d.ts","sourceRoot":"","sources":["../../../src/stacks/box/resize_handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACvB,MAAM,SAAS,CAAC;AAYjB,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC,EACrD,aAAa,CAAC,EAAE,aAAa,EAC7B,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,KAAK,IAAI,EACrE,MAAM,GAAE,iBAA2B,EACnC,MAAM,UAAQ,EACd,gBAAgB,UAAQ,IAEc,OAAO,KAAK,CAAC,UAAU,UAgE9D;AAED,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC,EACrD,cAAc,CAAC,EAAE,cAAc,EAC/B,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,KAAK,IAAI,EACxE,MAAM,UAAQ,EACd,MAAM,GAAE,kBAA6B,IAGD,OAAO,KAAK,CAAC,UAAU,UA2D5D"}
@@ -1,54 +1,61 @@
1
- function L() {
2
- const o = window.document.createElement("div");
3
- return o.style.position = "absolute", o.style.inset = "-500px", o.style.backgroundColor = "transparent", o.style.pointerEvents = "auto", o;
1
+ import { detectResizeBounds as D } from "./detect_resize_bounds.js";
2
+ function w() {
3
+ const n = window.document.createElement("div");
4
+ return n.style.position = "absolute", n.style.inset = "-500px", n.style.backgroundColor = "transparent", n.style.pointerEvents = "auto", n;
4
5
  }
5
- function x(o, h, f, m = "right", d = !1, v = !1) {
6
- return function(e) {
7
- const t = o.current;
8
- if (t == null)
9
- return;
10
- const a = L();
11
- t.appendChild(a);
12
- const u = (window.getComputedStyle(t).direction === "rtl" && !v ? !d : d) ? -1 : 1, g = e.clientX, l = t.getBoundingClientRect();
13
- let r = l.width;
14
- const i = (n) => {
15
- const y = t.getBoundingClientRect().width, E = u * (n.clientX - g), c = l.width + E, C = c - r;
16
- r = c, t.style.width = `${c}px`;
17
- const R = t.getBoundingClientRect().width === y;
18
- h?.(c, m, E, C, R), n.stopPropagation(), n.preventDefault();
19
- }, p = (n) => {
20
- n.buttons === 0 && s();
21
- }, s = () => {
22
- t.removeChild(a), document.body.removeEventListener("mousemove", i), document.body.removeEventListener("mouseup", s), document.body.removeEventListener("mouseenter", p), e.stopPropagation(), e.preventDefault(), f?.(r, m);
6
+ function C(n, v, f, p = "right", c = !1, b = !1) {
7
+ return function(t) {
8
+ const e = n.current;
9
+ if (e == null) return;
10
+ const a = w();
11
+ e.appendChild(a);
12
+ const d = (window.getComputedStyle(e).direction === "rtl" && !b ? !c : c) ? -1 : 1, g = t.clientX, u = e.getBoundingClientRect();
13
+ let s = u.width;
14
+ const r = (i) => {
15
+ const h = d * (i.clientX - g), m = u.width + h;
16
+ if (D({
17
+ element: e,
18
+ axis: "width",
19
+ nextSize: m
20
+ }).clamped) return;
21
+ const x = m - s;
22
+ s = m, e.style.width = `${m}px`, v?.({ width: m, origin: p, totalDelta: h, currentDelta: x }), i.stopPropagation(), i.preventDefault();
23
+ }, l = (i) => {
24
+ i.buttons === 0 && o();
25
+ }, o = () => {
26
+ e.removeChild(a), document.body.removeEventListener("mousemove", r), document.body.removeEventListener("mouseup", o), document.body.removeEventListener("mouseenter", l), t.stopPropagation(), t.preventDefault(), f?.(s, p);
23
27
  };
24
- document.body.addEventListener("mousemove", i), document.body.addEventListener("mouseup", s), document.body.addEventListener("mouseenter", p), e.stopPropagation(), e.preventDefault();
28
+ document.body.addEventListener("mousemove", r), document.body.addEventListener("mouseup", o), document.body.addEventListener("mouseenter", l), t.stopPropagation(), t.preventDefault();
25
29
  };
26
30
  }
27
- function z(o, h, f, m = !1, d = "bottom") {
28
- const v = m ? -1 : 1;
29
- return function(e) {
30
- const t = o.current;
31
- if (t == null)
32
- return;
33
- const a = L();
34
- t.appendChild(a);
35
- const D = e.clientY, b = t.getBoundingClientRect();
36
- let u = b.height;
37
- const g = (i) => {
38
- const p = t.getBoundingClientRect().height, s = v * (i.clientY - D), n = b.height + s, y = n - u;
39
- u = n, t.style.height = `${n}px`;
40
- const c = t.getBoundingClientRect().height === p;
41
- h?.(n, d, s, y, c), i.stopPropagation(), i.preventDefault();
42
- }, l = (i) => {
43
- i.buttons === 0 && r();
44
- }, r = () => {
45
- t.removeChild(a), document.body.removeEventListener("mousemove", g), document.body.removeEventListener("mouseup", r), document.body.removeEventListener("mouseenter", l), e.stopPropagation(), e.preventDefault(), f?.(u, d);
31
+ function P(n, v, f, p = !1, c = "bottom") {
32
+ const b = p ? -1 : 1;
33
+ return function(t) {
34
+ const e = n.current;
35
+ if (e == null) return;
36
+ const a = w();
37
+ e.appendChild(a);
38
+ const E = t.clientY, y = e.getBoundingClientRect();
39
+ let d = y.height;
40
+ const g = (r) => {
41
+ const l = b * (r.clientY - E), o = y.height + l;
42
+ if (D({
43
+ element: e,
44
+ axis: "height",
45
+ nextSize: o
46
+ }).clamped) return;
47
+ const h = o - d;
48
+ d = o, e.style.height = `${o}px`, v?.({ height: o, origin: c, totalDelta: l, currentDelta: h }), r.stopPropagation(), r.preventDefault();
49
+ }, u = (r) => {
50
+ r.buttons === 0 && s();
51
+ }, s = () => {
52
+ e.removeChild(a), document.body.removeEventListener("mousemove", g), document.body.removeEventListener("mouseup", s), document.body.removeEventListener("mouseenter", u), t.stopPropagation(), t.preventDefault(), f?.(d, c);
46
53
  };
47
- document.body.addEventListener("mousemove", g), document.body.addEventListener("mouseup", r), document.body.addEventListener("mouseenter", l), e.stopPropagation(), e.preventDefault();
54
+ document.body.addEventListener("mousemove", g), document.body.addEventListener("mouseup", s), document.body.addEventListener("mouseenter", u), t.stopPropagation(), t.preventDefault();
48
55
  };
49
56
  }
50
57
  export {
51
- x as createHorizontalResizeHandler,
52
- z as createVerticalResizeHandler
58
+ C as createHorizontalResizeHandler,
59
+ P as createVerticalResizeHandler
53
60
  };
54
61
  //# sourceMappingURL=resize_handlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resize_handlers.js","sources":["../../../src/stacks/box/resize_handlers.ts"],"sourcesContent":["import {\n OnWidthResize,\n type HeightResizeOrigin,\n type OnHeightResize,\n type WidthResizeOrigin,\n} from './types';\n\nfunction createVeil() {\n const veil = window.document.createElement('div');\n veil.style.position = 'absolute';\n veil.style.inset = '-500px';\n veil.style.backgroundColor = 'transparent';\n veil.style.pointerEvents = 'auto';\n return veil;\n}\n\nexport function createHorizontalResizeHandler(\n targetRef: React.MutableRefObject<HTMLElement | null>,\n onWidthResize?: OnWidthResize,\n onWidthResizeEnd?: (width: number, origin: WidthResizeOrigin) => void,\n origin: WidthResizeOrigin = 'right',\n invert = false,\n disableDirection = false\n) {\n return function startHorizontalResize(event: React.MouseEvent) {\n const box = targetRef.current;\n\n if (box == null) {\n return;\n }\n\n const veil = createVeil();\n box.appendChild(veil);\n\n const languageDirection = window.getComputedStyle(box).direction;\n const finalInvert =\n languageDirection === 'rtl' && !disableDirection ? !invert : invert;\n const direction = finalInvert ? -1 : 1;\n\n const startX = event.clientX;\n const startRect = box.getBoundingClientRect();\n let width = startRect.width;\n\n const drag = (event: MouseEvent) => {\n const beforeWidth = box.getBoundingClientRect().width;\n const totalDelta = direction * (event.clientX - startX);\n const newWidth = startRect.width + totalDelta;\n const currentDelta = newWidth - width;\n\n width = newWidth;\n\n box.style.width = `${newWidth}px`;\n\n const afterWidth = box.getBoundingClientRect().width;\n const atLimit = afterWidth === beforeWidth;\n onWidthResize?.(newWidth, origin, totalDelta, currentDelta, atLimit);\n event.stopPropagation();\n event.preventDefault();\n };\n\n const mouseEnter = (event: MouseEvent) => {\n if (event.buttons === 0) {\n endDrag();\n }\n };\n\n const endDrag = () => {\n box.removeChild(veil);\n\n document.body.removeEventListener('mousemove', drag);\n document.body.removeEventListener('mouseup', endDrag);\n document.body.removeEventListener('mouseenter', mouseEnter);\n event.stopPropagation();\n event.preventDefault();\n\n onWidthResizeEnd?.(width, origin);\n };\n\n document.body.addEventListener('mousemove', drag);\n document.body.addEventListener('mouseup', endDrag);\n document.body.addEventListener('mouseenter', mouseEnter);\n event.stopPropagation();\n event.preventDefault();\n };\n}\n\nexport function createVerticalResizeHandler(\n targetRef: React.MutableRefObject<HTMLElement | null>,\n onHeightResize?: OnHeightResize,\n onHeightResizeEnd?: (height: number, origin: HeightResizeOrigin) => void,\n invert = false,\n origin: HeightResizeOrigin = 'bottom'\n) {\n const direction = invert ? -1 : 1;\n return function startVerticalResize(event: React.MouseEvent) {\n const box = targetRef.current;\n\n if (box == null) {\n return;\n }\n\n const veil = createVeil();\n box.appendChild(veil);\n\n const startY = event.clientY;\n const startRect = box.getBoundingClientRect();\n let height = startRect.height;\n\n const drag = (event: MouseEvent) => {\n const beforeHeight = box.getBoundingClientRect().height;\n const totalDelta = direction * (event.clientY - startY);\n const newHeight = startRect.height + totalDelta;\n const currentDelta = newHeight - height;\n height = newHeight;\n box.style.height = `${newHeight}px`;\n const afterHeight = box.getBoundingClientRect().height;\n const atLimit = afterHeight === beforeHeight;\n onHeightResize?.(newHeight, origin, totalDelta, currentDelta, atLimit);\n event.stopPropagation();\n event.preventDefault();\n };\n\n const mouseEnter = (event: MouseEvent) => {\n if (event.buttons === 0) {\n endDrag();\n }\n };\n\n const endDrag = () => {\n box.removeChild(veil);\n\n document.body.removeEventListener('mousemove', drag);\n document.body.removeEventListener('mouseup', endDrag);\n document.body.removeEventListener('mouseenter', mouseEnter);\n event.stopPropagation();\n event.preventDefault();\n\n onHeightResizeEnd?.(height, origin);\n };\n\n document.body.addEventListener('mousemove', drag);\n document.body.addEventListener('mouseup', endDrag);\n document.body.addEventListener('mouseenter', mouseEnter);\n event.stopPropagation();\n event.preventDefault();\n };\n}\n"],"names":["createVeil","veil","createHorizontalResizeHandler","targetRef","onWidthResize","onWidthResizeEnd","origin","invert","disableDirection","event","box","direction","startX","startRect","width","drag","beforeWidth","totalDelta","newWidth","currentDelta","atLimit","mouseEnter","endDrag","createVerticalResizeHandler","onHeightResize","onHeightResizeEnd","startY","height","beforeHeight","newHeight"],"mappings":"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"}
1
+ {"version":3,"file":"resize_handlers.js","sources":["../../../src/stacks/box/resize_handlers.ts"],"sourcesContent":["import {\n OnWidthResize,\n type HeightResizeOrigin,\n type OnHeightResize,\n type WidthResizeOrigin,\n} from './types';\nimport { detectResizeBounds } from './detect_resize_bounds.js';\n\nfunction createVeil() {\n const veil = window.document.createElement('div');\n veil.style.position = 'absolute';\n veil.style.inset = '-500px';\n veil.style.backgroundColor = 'transparent';\n veil.style.pointerEvents = 'auto';\n return veil;\n}\n\nexport function createHorizontalResizeHandler(\n targetRef: React.MutableRefObject<HTMLElement | null>,\n onWidthResize?: OnWidthResize,\n onWidthResizeEnd?: (width: number, origin: WidthResizeOrigin) => void,\n origin: WidthResizeOrigin = 'right',\n invert = false,\n disableDirection = false\n) {\n return function startHorizontalResize(event: React.MouseEvent) {\n const box = targetRef.current;\n\n if (box == null) return;\n\n const veil = createVeil();\n box.appendChild(veil);\n\n const languageDirection = window.getComputedStyle(box).direction;\n const finalInvert =\n languageDirection === 'rtl' && !disableDirection ? !invert : invert;\n const direction = finalInvert ? -1 : 1;\n\n const startX = event.clientX;\n const startRect = box.getBoundingClientRect();\n let width = startRect.width;\n\n const drag = (event: MouseEvent) => {\n const totalDelta = direction * (event.clientX - startX);\n const newWidth = startRect.width + totalDelta;\n\n const result = detectResizeBounds({\n element: box,\n axis: 'width',\n nextSize: newWidth,\n });\n\n if (result.clamped) return;\n\n const currentDelta = newWidth - width;\n\n // apply the new width\n width = newWidth;\n box.style.width = `${newWidth}px`;\n\n onWidthResize?.({ width: newWidth, origin, totalDelta, currentDelta });\n event.stopPropagation();\n event.preventDefault();\n };\n\n const mouseEnter = (event: MouseEvent) => {\n if (event.buttons === 0) {\n endDrag();\n }\n };\n\n const endDrag = () => {\n box.removeChild(veil);\n\n document.body.removeEventListener('mousemove', drag);\n document.body.removeEventListener('mouseup', endDrag);\n document.body.removeEventListener('mouseenter', mouseEnter);\n event.stopPropagation();\n event.preventDefault();\n\n onWidthResizeEnd?.(width, origin);\n };\n\n document.body.addEventListener('mousemove', drag);\n document.body.addEventListener('mouseup', endDrag);\n document.body.addEventListener('mouseenter', mouseEnter);\n event.stopPropagation();\n event.preventDefault();\n };\n}\n\nexport function createVerticalResizeHandler(\n targetRef: React.MutableRefObject<HTMLElement | null>,\n onHeightResize?: OnHeightResize,\n onHeightResizeEnd?: (height: number, origin: HeightResizeOrigin) => void,\n invert = false,\n origin: HeightResizeOrigin = 'bottom'\n) {\n const direction = invert ? -1 : 1;\n return function startVerticalResize(event: React.MouseEvent) {\n const box = targetRef.current;\n\n if (box == null) return;\n\n const veil = createVeil();\n box.appendChild(veil);\n\n const startY = event.clientY;\n const startRect = box.getBoundingClientRect();\n let height = startRect.height;\n\n const drag = (event: MouseEvent) => {\n const totalDelta = direction * (event.clientY - startY);\n const newHeight = startRect.height + totalDelta;\n\n const result = detectResizeBounds({\n element: box,\n axis: 'height',\n nextSize: newHeight,\n });\n\n if (result.clamped) return;\n\n const currentDelta = newHeight - height;\n\n // apply the new height\n height = newHeight;\n box.style.height = `${newHeight}px`;\n\n onHeightResize?.({ height: newHeight, origin, totalDelta, currentDelta });\n event.stopPropagation();\n event.preventDefault();\n };\n\n const mouseEnter = (event: MouseEvent) => {\n if (event.buttons === 0) {\n endDrag();\n }\n };\n\n const endDrag = () => {\n box.removeChild(veil);\n\n document.body.removeEventListener('mousemove', drag);\n document.body.removeEventListener('mouseup', endDrag);\n document.body.removeEventListener('mouseenter', mouseEnter);\n event.stopPropagation();\n event.preventDefault();\n\n onHeightResizeEnd?.(height, origin);\n };\n\n document.body.addEventListener('mousemove', drag);\n document.body.addEventListener('mouseup', endDrag);\n document.body.addEventListener('mouseenter', mouseEnter);\n event.stopPropagation();\n event.preventDefault();\n };\n}\n"],"names":["createVeil","veil","createHorizontalResizeHandler","targetRef","onWidthResize","onWidthResizeEnd","origin","invert","disableDirection","event","box","direction","startX","startRect","width","drag","totalDelta","newWidth","detectResizeBounds","currentDelta","mouseEnter","endDrag","createVerticalResizeHandler","onHeightResize","onHeightResizeEnd","startY","height","newHeight"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"start_resize_handle.d.ts","sourceRoot":"","sources":["../../../src/stacks/box/start_resize_handle.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAC;AAE9D,MAAM,MAAM,sBAAsB,GAAG,2BAA2B,CAAC;AAEjE,wBAAgB,iBAAiB,CAAC,EAChC,SAAS,EACT,WAAW,EACX,aAAa,EACb,gBAAgB,GACjB,EAAE,sBAAsB,2CAwBxB"}
1
+ {"version":3,"file":"start_resize_handle.d.ts","sourceRoot":"","sources":["../../../src/stacks/box/start_resize_handle.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAC;AAG9D,MAAM,MAAM,sBAAsB,GAAG,2BAA2B,CAAC;AAEjE,wBAAgB,iBAAiB,CAAC,EAChC,SAAS,EACT,WAAW,EACX,aAAa,EACb,gBAAgB,GACjB,EAAE,sBAAsB,2CA0BxB"}
@@ -12,7 +12,8 @@ function x({
12
12
  t,
13
13
  s,
14
14
  r,
15
- "left"
15
+ "left",
16
+ !0
16
17
  ), n = e?.offset ? e.offset : -8, a = {
17
18
  ...e?.style,
18
19
  "--resize-offset": `${n}px`,
@@ -1 +1 @@
1
- {"version":3,"file":"start_resize_handle.js","sources":["../../../src/stacks/box/start_resize_handle.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport { createHorizontalResizeHandler } from './resize_handlers.js';\nimport styles from './start_resize_handle.module.css';\nimport type { HorizontalResizeHandleProps } from './types.js';\n\nexport type StartResizeHandleProps = HorizontalResizeHandleProps;\n\nexport function StartResizeHandle({\n targetRef,\n handleProps,\n onWidthResize,\n onWidthResizeEnd,\n}: StartResizeHandleProps) {\n const resizeHandler = createHorizontalResizeHandler(\n targetRef,\n onWidthResize,\n onWidthResizeEnd,\n 'left'\n );\n const offset = handleProps?.offset ? handleProps.offset : -8;\n\n const startResizeHandleStyle: any = {\n ...handleProps?.style,\n '--resize-offset': `${offset}px`,\n width: handleProps?.size || '16px',\n };\n\n return (\n <div\n className={clsx(styles['start-resize-handle'], 'tcn-start-resize-handle')}\n onMouseDown={resizeHandler}\n style={startResizeHandleStyle}\n >\n {handleProps?.children}\n </div>\n );\n}\n"],"names":["StartResizeHandle","targetRef","handleProps","onWidthResize","onWidthResizeEnd","resizeHandler","createHorizontalResizeHandler","offset","startResizeHandleStyle","jsx","clsx","styles"],"mappings":";;;;AAOO,SAASA,EAAkB;AAAA,EAChC,WAAAC;AAAA,EACA,aAAAC;AAAA,EACA,eAAAC;AAAA,EACA,kBAAAC;AACF,GAA2B;AACzB,QAAMC,IAAgBC;AAAA,IACpBL;AAAA,IACAE;AAAA,IACAC;AAAA,IACA;AAAA,EAAA,GAEIG,IAASL,GAAa,SAASA,EAAY,SAAS,IAEpDM,IAA8B;AAAA,IAClC,GAAGN,GAAa;AAAA,IAChB,mBAAmB,GAAGK,CAAM;AAAA,IAC5B,OAAOL,GAAa,QAAQ;AAAA,EAAA;AAG9B,SACE,gBAAAO;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAKC,EAAO,qBAAqB,GAAG,yBAAyB;AAAA,MACxE,aAAaN;AAAA,MACb,OAAOG;AAAA,MAEN,UAAAN,GAAa;AAAA,IAAA;AAAA,EAAA;AAGpB;"}
1
+ {"version":3,"file":"start_resize_handle.js","sources":["../../../src/stacks/box/start_resize_handle.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport { createHorizontalResizeHandler } from './resize_handlers.js';\nimport styles from './start_resize_handle.module.css';\nimport type { HorizontalResizeHandleProps } from './types.js';\nimport { CSSProperties } from 'react';\n\nexport type StartResizeHandleProps = HorizontalResizeHandleProps;\n\nexport function StartResizeHandle({\n targetRef,\n handleProps,\n onWidthResize,\n onWidthResizeEnd,\n}: StartResizeHandleProps) {\n const resizeHandler = createHorizontalResizeHandler(\n targetRef,\n onWidthResize,\n onWidthResizeEnd,\n 'left',\n true\n );\n\n const offset = handleProps?.offset ? handleProps.offset : -8;\n\n const startResizeHandleStyle = {\n ...handleProps?.style,\n '--resize-offset': `${offset}px`,\n width: handleProps?.size || '16px',\n } as CSSProperties;\n\n return (\n <div\n className={clsx(styles['start-resize-handle'], 'tcn-start-resize-handle')}\n onMouseDown={resizeHandler}\n style={startResizeHandleStyle}\n >\n {handleProps?.children}\n </div>\n );\n}\n"],"names":["StartResizeHandle","targetRef","handleProps","onWidthResize","onWidthResizeEnd","resizeHandler","createHorizontalResizeHandler","offset","startResizeHandleStyle","jsx","clsx","styles"],"mappings":";;;;AAQO,SAASA,EAAkB;AAAA,EAChC,WAAAC;AAAA,EACA,aAAAC;AAAA,EACA,eAAAC;AAAA,EACA,kBAAAC;AACF,GAA2B;AACzB,QAAMC,IAAgBC;AAAA,IACpBL;AAAA,IACAE;AAAA,IACAC;AAAA,IACA;AAAA,IACA;AAAA,EAAA,GAGIG,IAASL,GAAa,SAASA,EAAY,SAAS,IAEpDM,IAAyB;AAAA,IAC7B,GAAGN,GAAa;AAAA,IAChB,mBAAmB,GAAGK,CAAM;AAAA,IAC5B,OAAOL,GAAa,QAAQ;AAAA,EAAA;AAG9B,SACE,gBAAAO;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAKC,EAAO,qBAAqB,GAAG,yBAAyB;AAAA,MACxE,aAAaN;AAAA,MACb,OAAOG;AAAA,MAEN,UAAAN,GAAa;AAAA,IAAA;AAAA,EAAA;AAGpB;"}
@@ -1,18 +1,31 @@
1
1
  import { HandleProps } from './handle_props.js';
2
2
  export type WidthResizeOrigin = 'left' | 'right';
3
3
  export type HeightResizeOrigin = 'top' | 'bottom';
4
- export type OnWidthResize = (width: number, origin: WidthResizeOrigin, totalDelta: number, currentDelta: number, atLimit: boolean) => void;
5
- export type OnHeightResize = (height: number, origin: HeightResizeOrigin, totalDelta: number, currentDelta: number, atLimit: boolean) => void;
4
+ export interface BaseOnResizePayload<Origin extends WidthResizeOrigin | HeightResizeOrigin> {
5
+ origin: Origin;
6
+ totalDelta: number;
7
+ currentDelta: number;
8
+ }
9
+ export interface OnWidthResizePayload extends BaseOnResizePayload<WidthResizeOrigin> {
10
+ width: number;
11
+ }
12
+ export interface OnHeightResizePayload extends BaseOnResizePayload<HeightResizeOrigin> {
13
+ height: number;
14
+ }
15
+ export type OnWidthResizeEnd = (width: number, origin: WidthResizeOrigin) => void;
16
+ export type OnHeightResizeEnd = (height: number, origin: HeightResizeOrigin) => void;
17
+ export type OnWidthResize = (payload: OnWidthResizePayload) => void;
18
+ export type OnHeightResize = (payload: OnHeightResizePayload) => void;
6
19
  export interface HorizontalResizeHandleProps {
7
20
  targetRef: React.MutableRefObject<HTMLElement | null>;
8
21
  handleProps?: HandleProps;
9
22
  onWidthResize?: OnWidthResize;
10
- onWidthResizeEnd?: (width: number, origin: WidthResizeOrigin) => void;
23
+ onWidthResizeEnd?: OnWidthResizeEnd;
11
24
  }
12
25
  export interface VerticalResizeHandleProps {
13
26
  targetRef: React.MutableRefObject<HTMLElement | null>;
14
27
  handleProps?: HandleProps;
15
28
  onHeightResize?: OnHeightResize;
16
- onHeightResizeEnd?: (height: number, origin: HeightResizeOrigin) => void;
29
+ onHeightResizeEnd?: OnHeightResizeEnd;
17
30
  }
18
31
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/stacks/box/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,OAAO,CAAC;AACjD,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,QAAQ,CAAC;AAElD,MAAM,MAAM,aAAa,GAAG,CAE1B,KAAK,EAAE,MAAM,EAEb,MAAM,EAAE,iBAAiB,EAEzB,UAAU,EAAE,MAAM,EAElB,YAAY,EAAE,MAAM,EAEpB,OAAO,EAAE,OAAO,KACb,IAAI,CAAC;AAEV,MAAM,MAAM,cAAc,GAAG,CAE3B,MAAM,EAAE,MAAM,EAEd,MAAM,EAAE,kBAAkB,EAE1B,UAAU,EAAE,MAAM,EAElB,YAAY,EAAE,MAAM,EAEpB,OAAO,EAAE,OAAO,KACb,IAAI,CAAC;AAEV,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACtD,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACvE;AAED,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACtD,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;CAC1E"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/stacks/box/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,OAAO,CAAC;AACjD,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,QAAQ,CAAC;AAElD,MAAM,WAAW,mBAAmB,CAClC,MAAM,SAAS,iBAAiB,GAAG,kBAAkB;IAErD,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,EAAE,MAAM,CAAC;IAEnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB,CAAC,iBAAiB,CAAC;IAClF,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB,CAAC,kBAAkB,CAAC;IACpF,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;AAClF,MAAM,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;AAErF,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,oBAAoB,KAAK,IAAI,CAAC;AACpE,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;AAEtE,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACtD,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACtD,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC"}
@@ -0,0 +1,5 @@
1
+ import { default as React } from 'react';
2
+ import { SlideProps } from '../../overlay/slide/slide.js';
3
+ export type DrawerProps = SlideProps;
4
+ export declare const Drawer: React.ForwardRefExoticComponent<Omit<import('../../overlay/index.js').FrameProps, "draggable" | "enableResizeOnTop" | "enableResizeOnEnd" | "enableResizeOnBottom" | "enableResizeOnStart" | "enableResizeOnLeft" | "enableResizeOnRight"> & import('../../overlay/slide/slide.js').SlideOwnProps & React.RefAttributes<HTMLElement>>;
5
+ //# sourceMappingURL=drawer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drawer.d.ts","sourceRoot":"","sources":["../../../src/surfaces/drawers/drawer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAEtE,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC;AAErC,eAAO,MAAM,MAAM,uUAkBjB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ import { clsx as s } from "clsx";
3
+ import i from "react";
4
+ import { Scaffold as l } from "../../layouts/scaffold/scaffold.js";
5
+ import { Slide as d } from "../../overlay/slide/slide.js";
6
+ const D = i.forwardRef(function({ children: e, className: a, isOpen: f, veil: o = !1, resizable: t = !1, ...c }, m) {
7
+ return /* @__PURE__ */ r(
8
+ d,
9
+ {
10
+ ref: m,
11
+ isOpen: f,
12
+ veil: o,
13
+ resizable: t,
14
+ className: s("tcn-surface", "tcn-drawer", a),
15
+ ...c,
16
+ children: /* @__PURE__ */ r(l, { className: "tcn-drawer-scaffold", width: "100%", height: "100%", children: e })
17
+ }
18
+ );
19
+ });
20
+ export {
21
+ D as Drawer
22
+ };
23
+ //# sourceMappingURL=drawer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drawer.js","sources":["../../../src/surfaces/drawers/drawer.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport React from 'react';\nimport { Scaffold } from '../../layouts/scaffold/scaffold.js';\nimport { Slide, type SlideProps } from '../../overlay/slide/slide.js';\n\nexport type DrawerProps = SlideProps;\n\nexport const Drawer = React.forwardRef<HTMLElement, DrawerProps>(function Drawer(\n { children, className, isOpen, veil = false, resizable = false, ...props }: DrawerProps,\n ref\n) {\n return (\n <Slide\n ref={ref}\n isOpen={isOpen}\n veil={veil}\n resizable={resizable}\n className={clsx('tcn-surface', 'tcn-drawer', className)}\n {...props}\n >\n <Scaffold className={'tcn-drawer-scaffold'} width=\"100%\" height=\"100%\">\n {children}\n </Scaffold>\n </Slide>\n );\n});\n"],"names":["Drawer","React","children","className","isOpen","veil","resizable","props","ref","jsx","Slide","clsx","Scaffold"],"mappings":";;;;;AAOO,MAAMA,IAASC,EAAM,WAAqC,SAC/D,EAAE,UAAAC,GAAU,WAAAC,GAAW,QAAAC,GAAQ,MAAAC,IAAO,IAAO,WAAAC,IAAY,IAAO,GAAGC,EAAA,GACnEC,GACA;AACA,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,KAAAF;AAAA,MACA,QAAAJ;AAAA,MACA,MAAAC;AAAA,MACA,WAAAC;AAAA,MACA,WAAWK,EAAK,eAAe,cAAcR,CAAS;AAAA,MACrD,GAAGI;AAAA,MAEJ,UAAA,gBAAAE,EAACG,KAAS,WAAW,uBAAuB,OAAM,QAAO,QAAO,QAC7D,UAAAV,EAAA,CACH;AAAA,IAAA;AAAA,EAAA;AAGN,CAAC;"}
@@ -5,10 +5,7 @@ export * from './page/h_page.js';
5
5
  export * from './page/v_page.js';
6
6
  export * from './panel/panel.js';
7
7
  export * from './popover/popover.js';
8
- export * from './drawers/drawer_bottom/drawer_bottom.js';
9
- export * from './drawers/drawer_top/drawer_top.js';
10
- export * from './drawers/drawer_start/drawer_start.js';
11
- export * from './drawers/drawer_end/drawer_end.js';
8
+ export { Drawer, type DrawerProps } from './drawers/drawer.js';
12
9
  export { Window, type WindowProps } from './window/window.js';
13
10
  export { Modal, type ModalProps } from './modal/modal.js';
14
11
  export { Tooltip, type TooltipProps } from './tooltip/tooltip.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/surfaces/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,wCAAwC,CAAC;AACvD,cAAc,oCAAoC,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/surfaces/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,8BAA8B,CAAC"}
@@ -1,33 +1,27 @@
1
1
  import { Alert as e } from "./alert/alert.js";
2
- import { Card as p } from "./card/card.js";
3
- import { Confirm as f } from "./confirm/confirm.js";
2
+ import { Card as f } from "./card/card.js";
3
+ import { Confirm as t } from "./confirm/confirm.js";
4
4
  import { HPage as a } from "./page/h_page.js";
5
- import { VPage as w } from "./page/v_page.js";
6
- import { Panel as d } from "./panel/panel.js";
7
- import { Popover as l } from "./popover/popover.js";
8
- import { DrawerBottom as C } from "./drawers/drawer_bottom/drawer_bottom.js";
9
- import { DrawerTop as T } from "./drawers/drawer_top/drawer_top.js";
10
- import { DrawerStart as A } from "./drawers/drawer_start/drawer_start.js";
11
- import { DrawerEnd as E } from "./drawers/drawer_end/drawer_end.js";
12
- import { Window as M } from "./window/window.js";
13
- import { Modal as V } from "./modal/modal.js";
14
- import { Tooltip as b } from "./tooltip/tooltip.js";
15
- import { PopConfirm as h } from "./pop_confirm/pop_confirm.js";
5
+ import { VPage as i } from "./page/v_page.js";
6
+ import { Panel as n } from "./panel/panel.js";
7
+ import { Popover as C } from "./popover/popover.js";
8
+ import { Drawer as w } from "./drawers/drawer.js";
9
+ import { Window as A } from "./window/window.js";
10
+ import { Modal as H } from "./modal/modal.js";
11
+ import { Tooltip as T } from "./tooltip/tooltip.js";
12
+ import { PopConfirm as W } from "./pop_confirm/pop_confirm.js";
16
13
  export {
17
14
  e as Alert,
18
- p as Card,
19
- f as Confirm,
20
- C as DrawerBottom,
21
- E as DrawerEnd,
22
- A as DrawerStart,
23
- T as DrawerTop,
15
+ f as Card,
16
+ t as Confirm,
17
+ w as Drawer,
24
18
  a as HPage,
25
- V as Modal,
26
- d as Panel,
27
- h as PopConfirm,
28
- l as Popover,
29
- b as Tooltip,
30
- w as VPage,
31
- M as Window
19
+ H as Modal,
20
+ n as Panel,
21
+ W as PopConfirm,
22
+ C as Popover,
23
+ T as Tooltip,
24
+ i as VPage,
25
+ A as Window
32
26
  };
33
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { default as React } from 'react';
2
2
  import { FrameProps } from '../../overlay/frame/frame.js';
3
3
  export type ModalProps = FrameProps;
4
- export declare const Modal: React.ForwardRefExoticComponent<Omit<import('../../stacks/index.js').BoxProps<HTMLElement>, "enableResizeOnTop" | "enableResizeOnBottom" | "enableResizeOnLeft" | "enableResizeOnRight"> & import('../../overlay/index.js').FrameOwnProps & React.RefAttributes<HTMLElement>>;
4
+ export declare const Modal: React.ForwardRefExoticComponent<import('../../stacks/index.js').BoxProps<HTMLElement> & import('../../overlay/index.js').FrameOwnProps & React.RefAttributes<HTMLElement>>;
5
5
  //# sourceMappingURL=modal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../../src/surfaces/modal/modal.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAMtE,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC;AAEpC,eAAO,MAAM,KAAK,+QAkBhB,CAAC"}
1
+ {"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../../src/surfaces/modal/modal.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAMtE,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC;AAEpC,eAAO,MAAM,KAAK,4KA2BhB,CAAC"}
@@ -1,23 +1,32 @@
1
1
  import { jsx as o } from "react/jsx-runtime";
2
- import { clsx as e } from "clsx";
3
- import s from "react";
4
- import { Frame as d } from "../../overlay/frame/frame.js";
5
- import { Scaffold as n } from "../../layouts/scaffold/scaffold.js";
6
- import '../../modal.css';const i = "_modal_473c6ef", p = { modal: i }, N = s.forwardRef(function({ children: t, className: a, isOpen: r, draggable: m = !1, veil: c = !0, ...f }, l) {
2
+ import { clsx as s } from "clsx";
3
+ import d from "react";
4
+ import { Frame as n } from "../../overlay/frame/frame.js";
5
+ import { Scaffold as i } from "../../layouts/scaffold/scaffold.js";
6
+ import '../../modal.css';const p = "_modal_473c6ef", u = { modal: p }, R = d.forwardRef(function({
7
+ children: a,
8
+ className: t,
9
+ isOpen: r,
10
+ veil: m = !0,
11
+ resizable: f = !1,
12
+ draggable: l = !1,
13
+ ...c
14
+ }, e) {
7
15
  return /* @__PURE__ */ o(
8
- d,
16
+ n,
9
17
  {
10
- ref: l,
18
+ ref: e,
11
19
  isOpen: r,
12
- draggable: m,
13
- veil: c,
14
- className: e(p.modal, "tcn-surface", "tcn-modal", a),
15
- ...f,
16
- children: /* @__PURE__ */ o(n, { className: "tcn-modal-scaffold", width: "100%", height: "100%", children: t })
20
+ veil: m,
21
+ draggable: l,
22
+ resizable: f,
23
+ className: s(u.modal, "tcn-surface", "tcn-modal", t),
24
+ ...c,
25
+ children: /* @__PURE__ */ o(i, { className: "tcn-modal-scaffold", width: "100%", height: "100%", children: a })
17
26
  }
18
27
  );
19
28
  });
20
29
  export {
21
- N as Modal
30
+ R as Modal
22
31
  };
23
32
  //# sourceMappingURL=modal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"modal.js","sources":["../../../src/surfaces/modal/modal.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport React from 'react';\nimport { Frame, type FrameProps } from '../../overlay/frame/frame.js';\nimport { Scaffold } from '../../layouts/scaffold/scaffold.js';\n\n// Styles\nimport styles from './modal.module.css';\n\nexport type ModalProps = FrameProps;\n\nexport const Modal = React.forwardRef<HTMLElement, ModalProps>(function Modal(\n { children, className, isOpen, draggable = false, veil = true, ...props }: ModalProps,\n ref\n) {\n return (\n <Frame\n ref={ref}\n isOpen={isOpen}\n draggable={draggable}\n veil={veil}\n className={clsx(styles['modal'], 'tcn-surface', 'tcn-modal', className)}\n {...props}\n >\n <Scaffold className={'tcn-modal-scaffold'} width=\"100%\" height=\"100%\">\n {children}\n </Scaffold>\n </Frame>\n );\n});\n"],"names":["Modal","React","children","className","isOpen","draggable","veil","props","ref","jsx","Frame","clsx","styles","Scaffold"],"mappings":";;;;;8CAUaA,IAAQC,EAAM,WAAoC,SAC7D,EAAE,UAAAC,GAAU,WAAAC,GAAW,QAAAC,GAAQ,WAAAC,IAAY,IAAO,MAAAC,IAAO,IAAM,GAAGC,EAAA,GAClEC,GACA;AACA,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,KAAAF;AAAA,MACA,QAAAJ;AAAA,MACA,WAAAC;AAAA,MACA,MAAAC;AAAA,MACA,WAAWK,EAAKC,EAAO,OAAU,eAAe,aAAaT,CAAS;AAAA,MACrE,GAAGI;AAAA,MAEJ,UAAA,gBAAAE,EAACI,KAAS,WAAW,sBAAsB,OAAM,QAAO,QAAO,QAC5D,UAAAX,EAAA,CACH;AAAA,IAAA;AAAA,EAAA;AAGN,CAAC;"}
1
+ {"version":3,"file":"modal.js","sources":["../../../src/surfaces/modal/modal.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport React from 'react';\nimport { Frame, type FrameProps } from '../../overlay/frame/frame.js';\nimport { Scaffold } from '../../layouts/scaffold/scaffold.js';\n\n// Styles\nimport styles from './modal.module.css';\n\nexport type ModalProps = FrameProps;\n\nexport const Modal = React.forwardRef<HTMLElement, ModalProps>(function Modal(\n {\n children,\n className,\n isOpen,\n veil = true,\n resizable = false,\n draggable = false,\n ...props\n }: ModalProps,\n ref\n) {\n return (\n <Frame\n ref={ref}\n isOpen={isOpen}\n veil={veil}\n draggable={draggable}\n resizable={resizable}\n className={clsx(styles['modal'], 'tcn-surface', 'tcn-modal', className)}\n {...props}\n >\n <Scaffold className={'tcn-modal-scaffold'} width=\"100%\" height=\"100%\">\n {children}\n </Scaffold>\n </Frame>\n );\n});\n"],"names":["Modal","React","children","className","isOpen","veil","resizable","draggable","props","ref","jsx","Frame","clsx","styles","Scaffold"],"mappings":";;;;;8CAUaA,IAAQC,EAAM,WAAoC,SAC7D;AAAA,EACE,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,QAAAC;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,WAAAC,IAAY;AAAA,EACZ,WAAAC,IAAY;AAAA,EACZ,GAAGC;AACL,GACAC,GACA;AACA,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,KAAAF;AAAA,MACA,QAAAL;AAAA,MACA,MAAAC;AAAA,MACA,WAAAE;AAAA,MACA,WAAAD;AAAA,MACA,WAAWM,EAAKC,EAAO,OAAU,eAAe,aAAaV,CAAS;AAAA,MACrE,GAAGK;AAAA,MAEJ,UAAA,gBAAAE,EAACI,KAAS,WAAW,sBAAsB,OAAM,QAAO,QAAO,QAC5D,UAAAZ,EAAA,CACH;AAAA,IAAA;AAAA,EAAA;AAGN,CAAC;"}
@@ -1,5 +1,5 @@
1
1
  import { default as React } from 'react';
2
2
  import { FrameProps } from '../../overlay/frame/frame.js';
3
3
  export type WindowProps = FrameProps;
4
- export declare const Window: React.ForwardRefExoticComponent<Omit<import('../../stacks/index.js').BoxProps<HTMLElement>, "enableResizeOnTop" | "enableResizeOnBottom" | "enableResizeOnLeft" | "enableResizeOnRight"> & import('../../overlay/index.js').FrameOwnProps & React.RefAttributes<HTMLElement>>;
4
+ export declare const Window: React.ForwardRefExoticComponent<import('../../stacks/index.js').BoxProps<HTMLElement> & import('../../overlay/index.js').FrameOwnProps & React.RefAttributes<HTMLElement>>;
5
5
  //# sourceMappingURL=window.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"window.d.ts","sourceRoot":"","sources":["../../../src/surfaces/window/window.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAMtE,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC;AAErC,eAAO,MAAM,MAAM,+QA8BjB,CAAC"}
1
+ {"version":3,"file":"window.d.ts","sourceRoot":"","sources":["../../../src/surfaces/window/window.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAMtE,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC;AAErC,eAAO,MAAM,MAAM,4KA2BjB,CAAC"}
@@ -1,35 +1,32 @@
1
1
  import { jsx as o } from "react/jsx-runtime";
2
- import { clsx as w } from "clsx";
3
- import a from "react";
4
- import { Frame as m } from "../../overlay/frame/frame.js";
5
- import { Scaffold as l } from "../../layouts/scaffold/scaffold.js";
6
- import '../../window.css';const p = "_window_7610fdb", u = { window: p }, g = a.forwardRef(function({
7
- children: r,
8
- className: t,
9
- isOpen: e,
10
- draggable: i = !0,
11
- resizable: _ = !0,
2
+ import { clsx as d } from "clsx";
3
+ import w from "react";
4
+ import { Frame as a } from "../../overlay/frame/frame.js";
5
+ import { Scaffold as m } from "../../layouts/scaffold/scaffold.js";
6
+ import '../../window.css';const l = "_window_7610fdb", p = { window: l }, W = w.forwardRef(function({
7
+ children: t,
8
+ className: r,
9
+ isOpen: f,
12
10
  veil: n = !1,
13
- width: f,
14
- height: c,
15
- ...s
16
- }, d) {
11
+ draggable: i = !0,
12
+ resizable: c = !1,
13
+ ...e
14
+ }, s) {
17
15
  return /* @__PURE__ */ o(
18
- m,
16
+ a,
19
17
  {
20
- isOpen: e,
21
- draggable: i,
18
+ ref: s,
19
+ isOpen: f,
22
20
  veil: n,
23
- className: w(u.window, "tcn-surface", "tcn-window", t),
24
- width: f,
25
- height: c,
26
- ref: d,
27
- ...s,
28
- children: /* @__PURE__ */ o(l, { width: "100%", height: "100%", className: "tcn-window-scaffold", children: r })
21
+ draggable: i,
22
+ resizable: c,
23
+ className: d(p.window, "tcn-surface", "tcn-window", r),
24
+ ...e,
25
+ children: /* @__PURE__ */ o(m, { className: "tcn-window-scaffold", width: "100%", height: "100%", children: t })
29
26
  }
30
27
  );
31
28
  });
32
29
  export {
33
- g as Window
30
+ W as Window
34
31
  };
35
32
  //# sourceMappingURL=window.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"window.js","sources":["../../../src/surfaces/window/window.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport React from 'react';\nimport { Frame, type FrameProps } from '../../overlay/frame/frame.js';\nimport { Scaffold } from '../../layouts/scaffold/scaffold.js';\n\n// Styles\nimport styles from './window.module.css';\n\nexport type WindowProps = FrameProps;\n\nexport const Window = React.forwardRef<HTMLElement, WindowProps>(function Window(\n {\n children,\n className,\n isOpen,\n draggable = true,\n resizable = true,\n veil = false,\n width,\n height,\n ...props\n }: WindowProps,\n ref\n) {\n return (\n <Frame\n isOpen={isOpen}\n draggable={draggable}\n veil={veil}\n className={clsx(styles['window'], 'tcn-surface', 'tcn-window', className)}\n width={width}\n height={height}\n ref={ref}\n {...props}\n >\n <Scaffold width=\"100%\" height=\"100%\" className={'tcn-window-scaffold'}>\n {children}\n </Scaffold>\n </Frame>\n );\n});\n"],"names":["Window","React","children","className","isOpen","draggable","resizable","veil","width","height","props","ref","jsx","Frame","clsx","styles","Scaffold"],"mappings":";;;;;gDAUaA,IAASC,EAAM,WAAqC,SAC/D;AAAA,EACE,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,QAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,WAAAC,IAAY;AAAA,EACZ,MAAAC,IAAO;AAAA,EACP,OAAAC;AAAA,EACA,QAAAC;AAAA,EACA,GAAGC;AACL,GACAC,GACA;AACA,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,QAAAT;AAAA,MACA,WAAAC;AAAA,MACA,MAAAE;AAAA,MACA,WAAWO,EAAKC,EAAO,QAAW,eAAe,cAAcZ,CAAS;AAAA,MACxE,OAAAK;AAAA,MACA,QAAAC;AAAA,MACA,KAAAE;AAAA,MACC,GAAGD;AAAA,MAEJ,UAAA,gBAAAE,EAACI,KAAS,OAAM,QAAO,QAAO,QAAO,WAAW,uBAC7C,UAAAd,EAAA,CACH;AAAA,IAAA;AAAA,EAAA;AAGN,CAAC;"}
1
+ {"version":3,"file":"window.js","sources":["../../../src/surfaces/window/window.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport React from 'react';\nimport { Frame, type FrameProps } from '../../overlay/frame/frame.js';\nimport { Scaffold } from '../../layouts/scaffold/scaffold.js';\n\n// Styles\nimport styles from './window.module.css';\n\nexport type WindowProps = FrameProps;\n\nexport const Window = React.forwardRef<HTMLElement, WindowProps>(function Window(\n {\n children,\n className,\n isOpen,\n veil = false,\n draggable = true,\n resizable = false,\n ...props\n }: WindowProps,\n ref\n) {\n return (\n <Frame\n ref={ref}\n isOpen={isOpen}\n veil={veil}\n draggable={draggable}\n resizable={resizable}\n className={clsx(styles['window'], 'tcn-surface', 'tcn-window', className)}\n {...props}\n >\n <Scaffold className={'tcn-window-scaffold'} width=\"100%\" height=\"100%\">\n {children}\n </Scaffold>\n </Frame>\n );\n});\n"],"names":["Window","React","children","className","isOpen","veil","draggable","resizable","props","ref","jsx","Frame","clsx","styles","Scaffold"],"mappings":";;;;;gDAUaA,IAASC,EAAM,WAAqC,SAC/D;AAAA,EACE,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,QAAAC;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,WAAAC,IAAY;AAAA,EACZ,WAAAC,IAAY;AAAA,EACZ,GAAGC;AACL,GACAC,GACA;AACA,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,KAAAF;AAAA,MACA,QAAAL;AAAA,MACA,MAAAC;AAAA,MACA,WAAAC;AAAA,MACA,WAAAC;AAAA,MACA,WAAWK,EAAKC,EAAO,QAAW,eAAe,cAAcV,CAAS;AAAA,MACvE,GAAGK;AAAA,MAEJ,UAAA,gBAAAE,EAACI,KAAS,WAAW,uBAAuB,OAAM,QAAO,QAAO,QAC7D,UAAAZ,EAAA,CACH;AAAA,IAAA;AAAA,EAAA;AAGN,CAAC;"}
@@ -1 +1 @@
1
- @layer tcn-reset{html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,button,video,dialog{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,hgroup,menu,nav{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}legend{all:unset;display:block;margin:0;padding:0;font:inherit;color:inherit}dialog{max-width:none;max-height:none;background:transparent;color:inherit}}
1
+ @layer tcn-reset{html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,button,video,dialog{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}header,section,article,aside,details,figcaption,figure,footer,hgroup,menu,nav{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}legend{all:unset;display:block;margin:0;padding:0;font:inherit;color:inherit}dialog{max-width:none;max-height:none;background:transparent;color:inherit}}
@@ -91,8 +91,8 @@ const n = `/* https://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 */
91
91
  vertical-align: baseline;
92
92
  }
93
93
  /* HTML5 display-role reset for older browsers */
94
- /* FIXME: sometimes reset breaks stacks display value (flex) */
95
- /* header, section */
94
+ header,
95
+ section,
96
96
  article,
97
97
  aside,
98
98
  details,
@@ -1 +1 @@
1
- {"version":3,"file":"reset.js","sources":["../../../src/themes/stylesheets/reset.css?raw","../../../src/themes/stylesheets/reset.ts"],"sourcesContent":["export default \"/* https://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 */\\n@layer tcn-reset {\\n html,\\n body,\\n div,\\n span,\\n applet,\\n object,\\n iframe,\\n h1,\\n h2,\\n h3,\\n h4,\\n h5,\\n h6,\\n p,\\n blockquote,\\n pre,\\n a,\\n abbr,\\n acronym,\\n address,\\n big,\\n cite,\\n code,\\n del,\\n dfn,\\n em,\\n img,\\n ins,\\n kbd,\\n q,\\n s,\\n samp,\\n small,\\n strike,\\n strong,\\n sub,\\n sup,\\n tt,\\n var,\\n b,\\n u,\\n i,\\n center,\\n dl,\\n dt,\\n dd,\\n ol,\\n ul,\\n li,\\n fieldset,\\n form,\\n label,\\n legend,\\n table,\\n caption,\\n tbody,\\n tfoot,\\n thead,\\n tr,\\n th,\\n td,\\n article,\\n aside,\\n canvas,\\n details,\\n embed,\\n figure,\\n figcaption,\\n footer,\\n header,\\n hgroup,\\n menu,\\n nav,\\n output,\\n ruby,\\n section,\\n summary,\\n time,\\n mark,\\n audio,\\n button,\\n video,\\n dialog {\\n margin: 0;\\n padding: 0;\\n border: 0;\\n font-size: 100%;\\n font: inherit;\\n vertical-align: baseline;\\n }\\n /* HTML5 display-role reset for older browsers */\\n /* FIXME: sometimes reset breaks stacks display value (flex) */\\n /* header, section */\\n article,\\n aside,\\n details,\\n figcaption,\\n figure,\\n footer,\\n hgroup,\\n menu,\\n nav {\\n display: block;\\n }\\n body {\\n line-height: 1;\\n }\\n ol,\\n ul {\\n list-style: none;\\n }\\n blockquote,\\n q {\\n quotes: none;\\n }\\n blockquote:before,\\n blockquote:after,\\n q:before,\\n q:after {\\n content: \\\"\\\";\\n content: none;\\n }\\n table {\\n border-collapse: collapse;\\n border-spacing: 0;\\n }\\n\\n legend {\\n all: unset;\\n display: block;\\n margin: 0;\\n padding: 0;\\n font: inherit;\\n color: inherit;\\n }\\n dialog {\\n max-width: none;\\n max-height: none;\\n background: transparent;\\n color: inherit;\\n }\\n}\\n\"","import css from './reset.css?raw';\n\nexport const reset = new CSSStyleSheet();\nreset.replaceSync(css);\n"],"names":["css","reset"],"mappings":"AAAA,MAAAA,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCEFC,IAAQ,IAAI,cAAA;AACzBA,EAAM,YAAYD,CAAG;"}
1
+ {"version":3,"file":"reset.js","sources":["../../../src/themes/stylesheets/reset.css?raw","../../../src/themes/stylesheets/reset.ts"],"sourcesContent":["export default \"/* https://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 */\\n@layer tcn-reset {\\n html,\\n body,\\n div,\\n span,\\n applet,\\n object,\\n iframe,\\n h1,\\n h2,\\n h3,\\n h4,\\n h5,\\n h6,\\n p,\\n blockquote,\\n pre,\\n a,\\n abbr,\\n acronym,\\n address,\\n big,\\n cite,\\n code,\\n del,\\n dfn,\\n em,\\n img,\\n ins,\\n kbd,\\n q,\\n s,\\n samp,\\n small,\\n strike,\\n strong,\\n sub,\\n sup,\\n tt,\\n var,\\n b,\\n u,\\n i,\\n center,\\n dl,\\n dt,\\n dd,\\n ol,\\n ul,\\n li,\\n fieldset,\\n form,\\n label,\\n legend,\\n table,\\n caption,\\n tbody,\\n tfoot,\\n thead,\\n tr,\\n th,\\n td,\\n article,\\n aside,\\n canvas,\\n details,\\n embed,\\n figure,\\n figcaption,\\n footer,\\n header,\\n hgroup,\\n menu,\\n nav,\\n output,\\n ruby,\\n section,\\n summary,\\n time,\\n mark,\\n audio,\\n button,\\n video,\\n dialog {\\n margin: 0;\\n padding: 0;\\n border: 0;\\n font-size: 100%;\\n font: inherit;\\n vertical-align: baseline;\\n }\\n /* HTML5 display-role reset for older browsers */\\n header,\\n section,\\n article,\\n aside,\\n details,\\n figcaption,\\n figure,\\n footer,\\n hgroup,\\n menu,\\n nav {\\n display: block;\\n }\\n body {\\n line-height: 1;\\n }\\n ol,\\n ul {\\n list-style: none;\\n }\\n blockquote,\\n q {\\n quotes: none;\\n }\\n blockquote:before,\\n blockquote:after,\\n q:before,\\n q:after {\\n content: \\\"\\\";\\n content: none;\\n }\\n table {\\n border-collapse: collapse;\\n border-spacing: 0;\\n }\\n\\n legend {\\n all: unset;\\n display: block;\\n margin: 0;\\n padding: 0;\\n font: inherit;\\n color: inherit;\\n }\\n dialog {\\n max-width: none;\\n max-height: none;\\n background: transparent;\\n color: inherit;\\n }\\n}\\n\"","import css from './reset.css?raw';\n\nexport const reset = new CSSStyleSheet();\nreset.replaceSync(css);\n"],"names":["css","reset"],"mappings":"AAAA,MAAAA,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCEFC,IAAQ,IAAI,cAAA;AACzBA,EAAM,YAAYD,CAAG;"}