@tcn/ui 0.9.0 → 0.10.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 (182) hide show
  1. package/dist/bar.css +1 -0
  2. package/dist/body.css +1 -1
  3. package/dist/body.module-BbFZ7KNP.js +5 -0
  4. package/dist/body.module-BbFZ7KNP.js.map +1 -0
  5. package/dist/divider.css +1 -1
  6. package/dist/footer.css +1 -1
  7. package/dist/layouts/bar/bar.d.ts +5 -0
  8. package/dist/layouts/bar/bar.d.ts.map +1 -0
  9. package/dist/layouts/bar/bar.js +20 -0
  10. package/dist/layouts/bar/bar.js.map +1 -0
  11. package/dist/layouts/body/body.d.ts +2 -2
  12. package/dist/layouts/body/body.d.ts.map +1 -1
  13. package/dist/layouts/body/body.js +12 -12
  14. package/dist/layouts/body/body.js.map +1 -1
  15. package/dist/layouts/body/h_body.d.ts.map +1 -1
  16. package/dist/layouts/body/h_body.js +18 -12
  17. package/dist/layouts/body/h_body.js.map +1 -1
  18. package/dist/layouts/body/v_body.d.ts.map +1 -1
  19. package/dist/layouts/body/v_body.js +16 -10
  20. package/dist/layouts/body/v_body.js.map +1 -1
  21. package/dist/layouts/footer/footer.d.ts +2 -3
  22. package/dist/layouts/footer/footer.d.ts.map +1 -1
  23. package/dist/layouts/footer/footer.js +7 -7
  24. package/dist/layouts/footer/footer.js.map +1 -1
  25. package/dist/layouts/header/header.d.ts +2 -2
  26. package/dist/layouts/header/header.d.ts.map +1 -1
  27. package/dist/layouts/header/header.js +13 -21
  28. package/dist/layouts/header/header.js.map +1 -1
  29. package/dist/layouts/index.d.ts +0 -1
  30. package/dist/layouts/index.d.ts.map +1 -1
  31. package/dist/layouts/index.js +17 -19
  32. package/dist/layouts/index.js.map +1 -1
  33. package/dist/layouts/rail/rail.js +41 -41
  34. package/dist/layouts/rail/rail.js.map +1 -1
  35. package/dist/layouts/rail/side/side.d.ts.map +1 -1
  36. package/dist/layouts/rail/side/side.js +1 -1
  37. package/dist/layouts/rail/side/side.js.map +1 -1
  38. package/dist/layouts/rail/utility_strip/utility_strip.d.ts.map +1 -1
  39. package/dist/layouts/rail/utility_strip/utility_strip.js +21 -17
  40. package/dist/layouts/rail/utility_strip/utility_strip.js.map +1 -1
  41. package/dist/layouts/scaffold/scaffold.js +32 -32
  42. package/dist/layouts/scaffold/scaffold.js.map +1 -1
  43. package/dist/layouts/utility_bar/utility_bar.d.ts +2 -2
  44. package/dist/layouts/utility_bar/utility_bar.d.ts.map +1 -1
  45. package/dist/layouts/utility_bar/utility_bar.js +17 -19
  46. package/dist/layouts/utility_bar/utility_bar.js.map +1 -1
  47. package/dist/overlay/frame/frame.js +3 -3
  48. package/dist/overlay/frame/frame.js.map +1 -1
  49. package/dist/panel.css +1 -0
  50. package/dist/rail.css +1 -1
  51. package/dist/scaffold.css +1 -1
  52. package/dist/side.css +1 -1
  53. package/dist/stacks/box/bottom_resize_handle.d.ts +2 -2
  54. package/dist/stacks/box/bottom_resize_handle.d.ts.map +1 -1
  55. package/dist/stacks/box/bottom_resize_handle.js +12 -10
  56. package/dist/stacks/box/bottom_resize_handle.js.map +1 -1
  57. package/dist/stacks/box/box.d.ts +4 -4
  58. package/dist/stacks/box/box.d.ts.map +1 -1
  59. package/dist/stacks/box/box.js +26 -26
  60. package/dist/stacks/box/box.js.map +1 -1
  61. package/dist/stacks/box/end_resize_handle.d.ts +2 -2
  62. package/dist/stacks/box/end_resize_handle.d.ts.map +1 -1
  63. package/dist/stacks/box/end_resize_handle.js +6 -5
  64. package/dist/stacks/box/end_resize_handle.js.map +1 -1
  65. package/dist/stacks/box/left_resize_handle.d.ts +2 -2
  66. package/dist/stacks/box/left_resize_handle.d.ts.map +1 -1
  67. package/dist/stacks/box/left_resize_handle.js +10 -9
  68. package/dist/stacks/box/left_resize_handle.js.map +1 -1
  69. package/dist/stacks/box/resize_handlers.d.ts +2 -2
  70. package/dist/stacks/box/resize_handlers.d.ts.map +1 -1
  71. package/dist/stacks/box/resize_handlers.js +24 -24
  72. package/dist/stacks/box/resize_handlers.js.map +1 -1
  73. package/dist/stacks/box/right_resize_handle.d.ts +2 -2
  74. package/dist/stacks/box/right_resize_handle.d.ts.map +1 -1
  75. package/dist/stacks/box/right_resize_handle.js +6 -5
  76. package/dist/stacks/box/right_resize_handle.js.map +1 -1
  77. package/dist/stacks/box/start_resize_handle.d.ts +2 -2
  78. package/dist/stacks/box/start_resize_handle.d.ts.map +1 -1
  79. package/dist/stacks/box/start_resize_handle.js +4 -4
  80. package/dist/stacks/box/start_resize_handle.js.map +1 -1
  81. package/dist/stacks/box/top_resize_handle.d.ts +2 -2
  82. package/dist/stacks/box/top_resize_handle.d.ts.map +1 -1
  83. package/dist/stacks/box/top_resize_handle.js +2 -1
  84. package/dist/stacks/box/top_resize_handle.js.map +1 -1
  85. package/dist/stacks/h_collapsible_box.d.ts.map +1 -1
  86. package/dist/stacks/h_collapsible_box.js +24 -24
  87. package/dist/stacks/h_collapsible_box.js.map +1 -1
  88. package/dist/stacks/v_collapsible_box.js +25 -25
  89. package/dist/stacks/v_collapsible_box.js.map +1 -1
  90. package/dist/surfaces/index.d.ts +1 -2
  91. package/dist/surfaces/index.d.ts.map +1 -1
  92. package/dist/surfaces/index.js +18 -20
  93. package/dist/surfaces/index.js.map +1 -1
  94. package/dist/surfaces/panel/panel.d.ts +5 -0
  95. package/dist/surfaces/panel/panel.d.ts.map +1 -0
  96. package/dist/surfaces/panel/panel.js +19 -0
  97. package/dist/surfaces/panel/panel.js.map +1 -0
  98. package/dist/surfaces/pop_confirm/pop_confirm.js +2 -3
  99. package/dist/surfaces/pop_confirm/pop_confirm.js.map +1 -1
  100. package/dist/themes/theme.d.ts +2 -1
  101. package/dist/themes/theme.d.ts.map +1 -1
  102. package/dist/themes/theme.js +16 -9
  103. package/dist/themes/theme.js.map +1 -1
  104. package/dist/themes/themes/ergo/ergo_theme.css +1 -1
  105. package/dist/themes/themes/ergo/ergo_theme.js +27 -0
  106. package/dist/themes/themes/ergo/ergo_theme.js.map +1 -1
  107. package/package.json +1 -1
  108. package/src/layouts/__stories__/composed.stories.tsx +0 -55
  109. package/src/layouts/__stories__/rail.stories.tsx +78 -0
  110. package/src/layouts/__stories__/scaffold.stories.tsx +90 -0
  111. package/src/layouts/__stories__/utils/content.tsx +27 -0
  112. package/src/layouts/__stories__/utils/layout_theme.css +88 -0
  113. package/src/layouts/__stories__/utils/layout_theme_provider.tsx +11 -0
  114. package/src/layouts/__stories__/utils.tsx +6 -6
  115. package/src/layouts/{utility_bar/utility_bar.module.css → bar/bar.module.css} +2 -1
  116. package/src/layouts/bar/bar.tsx +23 -0
  117. package/src/layouts/body/body.module.css +9 -4
  118. package/src/layouts/body/body.tsx +7 -6
  119. package/src/layouts/body/h_body.module.css +1 -2
  120. package/src/layouts/body/h_body.tsx +9 -4
  121. package/src/layouts/body/v_body.tsx +9 -4
  122. package/src/layouts/divider/divider.module.css +1 -1
  123. package/src/layouts/footer/footer.module.css +0 -3
  124. package/src/layouts/footer/footer.tsx +5 -6
  125. package/src/layouts/header/header.tsx +6 -15
  126. package/src/layouts/index.ts +0 -1
  127. package/src/layouts/rail/rail.module.css +9 -5
  128. package/src/layouts/rail/rail.tsx +1 -1
  129. package/src/layouts/rail/side/side.module.css +0 -1
  130. package/src/layouts/rail/side/side.tsx +1 -2
  131. package/src/layouts/rail/utility_strip/utility_strip.module.css +5 -0
  132. package/src/layouts/rail/utility_strip/utility_strip.tsx +4 -1
  133. package/src/layouts/scaffold/scaffold.module.css +10 -7
  134. package/src/layouts/scaffold/scaffold.tsx +1 -1
  135. package/src/layouts/utility_bar/utility_bar.tsx +6 -9
  136. package/src/overlay/frame/frame.tsx +2 -2
  137. package/src/stacks/box/bottom_resize_handle.tsx +7 -5
  138. package/src/stacks/box/box.tsx +12 -18
  139. package/src/stacks/box/end_resize_handle.tsx +6 -6
  140. package/src/stacks/box/left_resize_handle.tsx +4 -3
  141. package/src/stacks/box/resize_handlers.ts +11 -9
  142. package/src/stacks/box/right_resize_handle.tsx +4 -3
  143. package/src/stacks/box/start_resize_handle.tsx +3 -3
  144. package/src/stacks/box/top_resize_handle.tsx +4 -3
  145. package/src/stacks/collapsible_box.stories.tsx +11 -11
  146. package/src/stacks/h_collapsible_box.tsx +5 -5
  147. package/src/stacks/v_collapsible_box.tsx +4 -4
  148. package/src/surfaces/index.ts +1 -2
  149. package/src/surfaces/panel/__stories__/panel.stories.tsx +12 -12
  150. package/src/surfaces/panel/__stories__/panel_stories.module.css +3 -3
  151. package/src/surfaces/panel/panel.module.css +1 -6
  152. package/src/surfaces/panel/panel.tsx +22 -0
  153. package/src/themes/theme.tsx +6 -2
  154. package/src/themes/themes/ergo/__stories__/material.stories.tsx +15 -16
  155. package/src/themes/themes/ergo/ergo_theme.css +27 -0
  156. package/dist/h_body.css +0 -1
  157. package/dist/h_panel.css +0 -1
  158. package/dist/header.css +0 -1
  159. package/dist/layouts/rail/main/main.d.ts +0 -6
  160. package/dist/layouts/rail/main/main.d.ts.map +0 -1
  161. package/dist/layouts/rail/main/main.js +0 -21
  162. package/dist/layouts/rail/main/main.js.map +0 -1
  163. package/dist/main.css +0 -1
  164. package/dist/surfaces/panel/h_panel.d.ts +0 -9
  165. package/dist/surfaces/panel/h_panel.d.ts.map +0 -1
  166. package/dist/surfaces/panel/h_panel.js +0 -60
  167. package/dist/surfaces/panel/h_panel.js.map +0 -1
  168. package/dist/surfaces/panel/v_panel.d.ts +0 -5
  169. package/dist/surfaces/panel/v_panel.d.ts.map +0 -1
  170. package/dist/surfaces/panel/v_panel.js +0 -19
  171. package/dist/surfaces/panel/v_panel.js.map +0 -1
  172. package/dist/utility_bar.css +0 -1
  173. package/dist/v_body.css +0 -1
  174. package/src/layouts/header/header.module.css +0 -8
  175. package/src/layouts/rail/__stories__/rail.stories.tsx +0 -64
  176. package/src/layouts/rail/__stories__/rail_stories.module.css +0 -25
  177. package/src/layouts/rail/main/main.module.css +0 -7
  178. package/src/layouts/rail/main/main.tsx +0 -26
  179. package/src/layouts/scaffold/__stories__/scaffold.stories.tsx +0 -53
  180. package/src/layouts/scaffold/__stories__/scaffold_stories.module.css +0 -31
  181. package/src/surfaces/panel/h_panel.tsx +0 -65
  182. package/src/surfaces/panel/v_panel.tsx +0 -20
@@ -1,25 +0,0 @@
1
- .rail {
2
- :global(.tcn-rail-stack) {
3
- gap: 8px;
4
- }
5
- }
6
-
7
- .main {
8
- background-color: #f1f5f9;
9
- gap: 16px;
10
- padding: 16px 0;
11
- }
12
-
13
- .side {
14
- width: 200px;
15
- background-color: #3b82f6;
16
- color: white;
17
- padding: 16px 0;
18
- }
19
-
20
- .content {
21
- background-color: #e5e7eb;
22
- min-width: 200px;
23
- height: 100%;
24
- padding: 16px;
25
- }
@@ -1,7 +0,0 @@
1
- @layer tcn-system {
2
- :where(.main) {
3
- min-width: 0;
4
- flex-grow: 1;
5
- height: 100%;
6
- }
7
- }
@@ -1,26 +0,0 @@
1
- import React from 'react';
2
- import { clsx } from 'clsx';
3
- import { HStack, type HStackProps } from '../../../stacks/h_stack.js';
4
-
5
- // Styles
6
- import styles from './main.module.css';
7
-
8
- export interface MainProps extends Omit<HStackProps, 'as'> {}
9
-
10
- // WIP: This component is not fully implemented.
11
- export const Main = React.forwardRef<HTMLElement, MainProps>(function Main(
12
- { children, className, overflowX = 'auto', ...props }: MainProps,
13
- ref
14
- ) {
15
- return (
16
- <HStack
17
- ref={ref}
18
- as="div"
19
- overflowX={overflowX}
20
- className={clsx(styles['main'], className, 'tcn-main')}
21
- {...props}
22
- >
23
- {children}
24
- </HStack>
25
- );
26
- });
@@ -1,53 +0,0 @@
1
- import { Scaffold } from '../scaffold.js';
2
- import { Header } from '../../header/header.js';
3
- import { UtilityBar } from '../../utility_bar/utility_bar.js';
4
- import { VBody } from '../../body/v_body.js';
5
- import { Footer } from '../../footer/footer.js';
6
- import type { Meta, StoryObj } from '@storybook/react-vite';
7
- import { HStack } from '../../../stacks/h_stack.js';
8
-
9
- import styles from './scaffold_stories.module.css';
10
-
11
- const meta: Meta<typeof Scaffold> = {
12
- title: 'Layouts/Scaffold',
13
- component: Scaffold,
14
- tags: ['autodocs'],
15
- parameters: {
16
- docs: {
17
- description: {
18
- component: 'A scaffold component that lays out content in a vertical hierarchy.',
19
- },
20
- },
21
- },
22
- };
23
-
24
- export default meta;
25
-
26
- type Story = StoryObj<typeof Scaffold>;
27
-
28
- const Content = () => {
29
- return <HStack className={styles.content} />;
30
- };
31
-
32
- export const Baseline: Story = {
33
- args: {
34
- height: '100vh',
35
- },
36
- render: () => (
37
- <Scaffold height="100vh">
38
- <Header className={styles.header}>Header</Header>
39
- <UtilityBar className={styles.utilityBar}>Utility Bar</UtilityBar>
40
- <VBody className={styles.body}>
41
- <p>(V)Body</p>
42
- <p>Fills available space</p>
43
- <p>Scrolls vertically</p>
44
- <Content />
45
- <Content />
46
- <Content />
47
- <Content />
48
- <Content />
49
- </VBody>
50
- <Footer className={styles.footer}>Footer</Footer>
51
- </Scaffold>
52
- ),
53
- };
@@ -1,31 +0,0 @@
1
- .header {
2
- height: 56px;
3
- background-color: #3b82f6;
4
- color: white;
5
- }
6
-
7
- .utilityBar {
8
- height: 40px;
9
- background-color: #8b5cf6;
10
- color: white;
11
- }
12
-
13
- .body {
14
- background-color: #f1f5f9;
15
- }
16
-
17
- .footer {
18
- height: 48px;
19
- background-color: #10b981;
20
- color: white;
21
- }
22
-
23
- .level {
24
- background-color: #0ab4d2;
25
- color: white;
26
- }
27
-
28
- .content {
29
- background-color: #e5e7eb;
30
- height: 100px;
31
- }
@@ -1,65 +0,0 @@
1
- import React from 'react';
2
- import { clsx } from 'clsx';
3
- import { Box, type BoxProps } from '../../stacks/box/box.js';
4
- import { HStack } from '../../stacks/h_stack.js';
5
- import type { Alignment } from '../../stacks/types/alignment.js';
6
- // Styles
7
- import styles from './panel.module.css';
8
-
9
- export interface HPanelProps extends Omit<BoxProps, 'as'> {
10
- vAlign?: Alignment;
11
- hAlign?: Alignment;
12
- }
13
-
14
- export const HPanel = React.forwardRef<HTMLElement, HPanelProps>(function HPanel(
15
- {
16
- children,
17
- width,
18
- height,
19
- minWidth,
20
- maxWidth,
21
- minHeight,
22
- maxHeight,
23
- hAlign,
24
- vAlign = 'start',
25
- className,
26
- ...props
27
- }: HPanelProps,
28
- ref
29
- ) {
30
- return (
31
- <Box
32
- ref={ref}
33
- width={width}
34
- height={height}
35
- minWidth={minWidth}
36
- maxWidth={maxWidth}
37
- minHeight={minHeight}
38
- maxHeight={maxHeight}
39
- data-h-alignment={hAlign}
40
- data-v-alignment={vAlign}
41
- className={clsx(styles['panel'], className, 'panel', 'tcn-panel', 'tcn-h-panel')}
42
- {...props}
43
- >
44
- <HStack
45
- as="section"
46
- minWidth={minWidth}
47
- maxWidth={maxWidth}
48
- minHeight={minHeight}
49
- maxHeight={maxHeight}
50
- hAlign={hAlign}
51
- vAlign={vAlign}
52
- ref={ref}
53
- className={clsx(
54
- styles['panel-stack'],
55
- className,
56
- 'panel-stack',
57
- 'tcn-panel-stack'
58
- )}
59
- zIndex={0}
60
- >
61
- {children}
62
- </HStack>
63
- </Box>
64
- );
65
- });
@@ -1,20 +0,0 @@
1
- import React from 'react';
2
- import { Scaffold, type ScaffoldProps } from '../../layouts/scaffold/scaffold.js';
3
- import clsx from 'clsx';
4
-
5
- export type VPanelProps = ScaffoldProps;
6
-
7
- export const VPanel = React.forwardRef<HTMLElement, VPanelProps>(function VPanel(
8
- { children, className, ...props }: VPanelProps,
9
- ref
10
- ) {
11
- return (
12
- <Scaffold
13
- ref={ref}
14
- className={clsx('tcn-surface', 'tcn-panel', 'tcn-v-panel', className)}
15
- {...props}
16
- >
17
- {children}
18
- </Scaffold>
19
- );
20
- });