@tcn/ui 0.13.1 → 0.15.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.
- package/README.md +1 -1
- package/dist/{Color-6BZIO3FS-C9xkPWgz.js → Color-6BZIO3FS-CKNkzBV6.js} +2 -2
- package/dist/{Color-6BZIO3FS-C9xkPWgz.js.map → Color-6BZIO3FS-CKNkzBV6.js.map} +1 -1
- package/dist/{WithTooltip-65CFNBJE-DEnh547F.js → WithTooltip-65CFNBJE-Bgt57Jw2.js} +2 -2
- package/dist/WithTooltip-65CFNBJE-Bgt57Jw2.js.map +1 -0
- package/dist/actions/__docs__/components/showcase.js +1 -1
- package/dist/actions/button/button_group/button_group.d.ts +1 -0
- package/dist/actions/button/button_group/button_group.d.ts.map +1 -1
- package/dist/actions/button/button_group/button_group.js +33 -30
- package/dist/actions/button/button_group/button_group.js.map +1 -1
- package/dist/actions/types.js +2 -0
- package/dist/actions/types.js.map +1 -0
- package/dist/aside.css +1 -1
- package/dist/containers.css +1 -0
- package/dist/containers.module-DlGySre0.js +5 -0
- package/dist/containers.module-DlGySre0.js.map +1 -0
- package/dist/floating_action_button.css +1 -0
- package/dist/form/field/common/types.js +2 -0
- package/dist/form/field/common/types.js.map +1 -0
- package/dist/form/field_set/field_set.d.ts.map +1 -1
- package/dist/form/field_set/field_set.js +11 -11
- package/dist/form/field_set/field_set.js.map +1 -1
- package/dist/formatter-EIJCOSYU-ByaSCvt6.js +6 -0
- package/dist/formatter-EIJCOSYU-ByaSCvt6.js.map +1 -0
- package/dist/inputs/mask_input/mask_config.js +2 -0
- package/dist/inputs/mask_input/mask_config.js.map +1 -0
- package/dist/inputs/mask_input/mask_cursor.js +2 -0
- package/dist/inputs/mask_input/mask_cursor.js.map +1 -0
- package/dist/inputs/multiselect/multiselect_inline_values.js +9 -7
- package/dist/inputs/multiselect/multiselect_inline_values.js.map +1 -1
- package/dist/inputs/multiselect/multiselect_values.js +4 -2
- package/dist/inputs/multiselect/multiselect_values.js.map +1 -1
- package/dist/layouts/containers/rail.d.ts.map +1 -0
- package/dist/layouts/containers/rail.js +67 -0
- package/dist/layouts/containers/rail.js.map +1 -0
- package/dist/layouts/containers/scaffold.d.ts.map +1 -0
- package/dist/layouts/containers/scaffold.js +67 -0
- package/dist/layouts/containers/scaffold.js.map +1 -0
- package/dist/layouts/containers/side/side.d.ts.map +1 -0
- package/dist/layouts/containers/side/side.js +22 -0
- package/dist/layouts/containers/side/side.js.map +1 -0
- package/dist/layouts/containers/utility_strip/utility_strip.d.ts.map +1 -0
- package/dist/layouts/{rail → containers}/utility_strip/utility_strip.js +5 -5
- package/dist/layouts/containers/utility_strip/utility_strip.js.map +1 -0
- package/dist/layouts/index.d.ts +5 -8
- package/dist/layouts/index.d.ts.map +1 -1
- package/dist/layouts/index.js +36 -38
- package/dist/layouts/index.js.map +1 -1
- package/dist/layouts/section/detail.d.ts +4 -0
- package/dist/layouts/section/detail.d.ts.map +1 -0
- package/dist/layouts/section/detail.js +11 -0
- package/dist/layouts/section/detail.js.map +1 -0
- package/dist/layouts/section/heading.js +1 -1
- package/dist/layouts/section/index.d.ts +4 -0
- package/dist/layouts/section/index.d.ts.map +1 -0
- package/dist/layouts/section/index.js +9 -0
- package/dist/layouts/section/index.js.map +1 -0
- package/dist/layouts/section/section.js +1 -1
- package/dist/mobile/actions/button/mobile_button.d.ts +6 -0
- package/dist/mobile/actions/button/mobile_button.d.ts.map +1 -0
- package/dist/mobile/actions/button/mobile_button.js +21 -0
- package/dist/mobile/actions/button/mobile_button.js.map +1 -0
- package/dist/mobile/actions/floating_action_button/floating_action_button.d.ts +6 -0
- package/dist/mobile/actions/floating_action_button/floating_action_button.d.ts.map +1 -0
- package/dist/mobile/actions/floating_action_button/floating_action_button.js +20 -0
- package/dist/mobile/actions/floating_action_button/floating_action_button.js.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker.d.ts +17 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker.d.ts.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker.js +80 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker.js.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_body.d.ts +7 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_body.d.ts.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_body.js +35 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_body.js.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_date.d.ts +8 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_date.d.ts.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_date.js +74 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_date.js.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_day.d.ts +6 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_day.d.ts.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_day.js +39 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_day.js.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_header.d.ts +9 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_header.d.ts.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_header.js +163 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_header.js.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_input.d.ts +9 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_input.d.ts.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_input.js +190 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_input.js.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_time_selector.d.ts +11 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_time_selector.d.ts.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_time_selector.js +50 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_time_selector.js.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_year_selector.d.ts +7 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_year_selector.d.ts.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_year_selector.js +109 -0
- package/dist/mobile/inputs/date_picker/mobile_date_picker_year_selector.js.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_overlay_header.d.ts +6 -0
- package/dist/mobile/inputs/date_picker/mobile_overlay_header.d.ts.map +1 -0
- package/dist/mobile/inputs/date_picker/mobile_overlay_header.js +34 -0
- package/dist/mobile/inputs/date_picker/mobile_overlay_header.js.map +1 -0
- package/dist/mobile/inputs/index.d.ts +5 -0
- package/dist/mobile/inputs/index.d.ts.map +1 -0
- package/dist/mobile/inputs/index.js +11 -0
- package/dist/mobile/inputs/index.js.map +1 -0
- package/dist/mobile/portal/mobile_portal.d.ts +5 -0
- package/dist/mobile/portal/mobile_portal.d.ts.map +1 -0
- package/dist/mobile/portal/mobile_portal.js +10 -0
- package/dist/mobile/portal/mobile_portal.js.map +1 -0
- package/dist/mobile/viewport/mobile_viewport.d.ts +21 -0
- package/dist/mobile/viewport/mobile_viewport.d.ts.map +1 -0
- package/dist/mobile/viewport/mobile_viewport.js +31 -0
- package/dist/mobile/viewport/mobile_viewport.js.map +1 -0
- package/dist/mobile_button.css +1 -0
- package/dist/mobile_date_picker.css +1 -0
- package/dist/mobile_date_picker_date.css +1 -0
- package/dist/mobile_date_picker_day.css +1 -0
- package/dist/mobile_date_picker_header.css +1 -0
- package/dist/mobile_date_picker_input.css +1 -0
- package/dist/mobile_date_picker_time_selector.css +1 -0
- package/dist/mobile_date_picker_year_selector.css +1 -0
- package/dist/mobile_overlay_header.css +1 -0
- package/dist/mobile_viewport.css +1 -0
- package/dist/navigation/tabs/state/link/use_tab_link.d.ts +2 -1
- package/dist/navigation/tabs/state/link/use_tab_link.d.ts.map +1 -1
- package/dist/navigation/tabs/state/link/use_tab_link.js.map +1 -1
- package/dist/overlay/tethered/types.js +2 -0
- package/dist/overlay/tethered/types.js.map +1 -0
- package/dist/panel.css +1 -1
- package/dist/phone_number_input.css +1 -1
- package/dist/section.css +1 -1
- package/dist/section.module-BXlxYmJK.js +5 -0
- package/dist/section.module-BXlxYmJK.js.map +1 -0
- package/dist/{showcase-y9D3_Y8T.js → showcase-DBFp_Epk.js} +94 -94
- package/dist/showcase-DBFp_Epk.js.map +1 -0
- package/dist/side.css +1 -1
- package/dist/stacks/box/handle_props.js +2 -0
- package/dist/stacks/box/handle_props.js.map +1 -0
- package/dist/stacks/box/types.js +2 -0
- package/dist/stacks/box/types.js.map +1 -0
- package/dist/surfaces/aside/aside.d.ts +1 -1
- package/dist/surfaces/aside/aside.d.ts.map +1 -1
- package/dist/surfaces/aside/aside.js +1 -1
- package/dist/surfaces/aside/aside.js.map +1 -1
- package/dist/surfaces/card/card.d.ts +1 -1
- package/dist/surfaces/card/card.d.ts.map +1 -1
- package/dist/surfaces/card/card.js +1 -1
- package/dist/surfaces/card/card.js.map +1 -1
- package/dist/surfaces/drawers/drawer.js +1 -1
- package/dist/surfaces/drawers/drawer.js.map +1 -1
- package/dist/surfaces/modal/modal.js +1 -1
- package/dist/surfaces/modal/modal.js.map +1 -1
- package/dist/surfaces/page/page.d.ts +1 -1
- package/dist/surfaces/page/page.d.ts.map +1 -1
- package/dist/surfaces/page/page.js +1 -1
- package/dist/surfaces/page/page.js.map +1 -1
- package/dist/surfaces/panel/panel.d.ts +1 -1
- package/dist/surfaces/panel/panel.d.ts.map +1 -1
- package/dist/surfaces/panel/panel.js +1 -1
- package/dist/surfaces/panel/panel.js.map +1 -1
- package/dist/surfaces/pop_confirm/pop_confirm.js +8 -9
- package/dist/surfaces/pop_confirm/pop_confirm.js.map +1 -1
- package/dist/surfaces/window/window.js +1 -1
- package/dist/surfaces/window/window.js.map +1 -1
- package/dist/{syntaxhighlighter-ED5Y7EFY-CqInEOwQ.js → syntaxhighlighter-ED5Y7EFY-B0ag_7lq.js} +2 -2
- package/dist/syntaxhighlighter-ED5Y7EFY-B0ag_7lq.js.map +1 -0
- package/dist/term.css +1 -0
- package/dist/themes/build_stylesheet.d.ts +2 -0
- package/dist/themes/build_stylesheet.d.ts.map +1 -0
- package/dist/themes/build_stylesheet.js +9 -0
- package/dist/themes/build_stylesheet.js.map +1 -0
- package/dist/themes/theme_variables.d.ts +7 -0
- package/dist/themes/theme_variables.d.ts.map +1 -1
- package/dist/themes/theme_variables.js +16 -9
- package/dist/themes/theme_variables.js.map +1 -1
- package/dist/themes/themes/ergo/ergo_theme.css +1 -1
- package/dist/themes/themes/ergo/ergo_theme.d.ts.map +1 -1
- package/dist/themes/themes/ergo/ergo_theme.js +314 -154
- package/dist/themes/themes/ergo/ergo_theme.js.map +1 -1
- package/dist/themes/themes/ergo/tokens/system_tokens.css +1 -0
- package/dist/themes/themes/ergo/tokens/theme_tokens.css +1 -0
- package/dist/tokens/index.d.ts +1 -0
- package/dist/tokens/index.d.ts.map +1 -1
- package/dist/tokens/index.js +4 -2
- package/dist/tokens/index.js.map +1 -1
- package/dist/tokens/key/key.d.ts +8 -1
- package/dist/tokens/key/key.d.ts.map +1 -1
- package/dist/tokens/key/key.js +20 -3
- package/dist/tokens/key/key.js.map +1 -1
- package/dist/tokens/term/term.d.ts +4 -0
- package/dist/tokens/term/term.d.ts.map +1 -0
- package/dist/tokens/term/term.js +20 -0
- package/dist/tokens/term/term.js.map +1 -0
- package/dist/tokens/value/value.d.ts +8 -1
- package/dist/tokens/value/value.d.ts.map +1 -1
- package/dist/tokens/value/value.js +23 -5
- package/dist/tokens/value/value.js.map +1 -1
- package/dist/utility_strip.css +1 -1
- package/dist/utils/calendar/calendar_date.js +2 -0
- package/dist/utils/calendar/calendar_date.js.map +1 -0
- package/dist/utils/dnd/types.js +2 -0
- package/dist/utils/dnd/types.js.map +1 -0
- package/dist/utils/types/variations.d.ts +1 -0
- package/dist/utils/types/variations.d.ts.map +1 -1
- package/dist/value.css +1 -0
- package/dist/value.module-DFaCouFD.js +5 -0
- package/dist/value.module-DFaCouFD.js.map +1 -0
- package/package.json +17 -16
- package/src/actions/button/button_group/button_group.tsx +18 -10
- package/src/form/field_set/field_set.tsx +4 -2
- package/src/inputs/phone_number_input/phone_number_input.module.css +7 -5
- package/src/layouts/__stories__/composed.stories.tsx +13 -8
- package/src/layouts/__stories__/composed_stories.module.css +1 -0
- package/src/layouts/__stories__/rail.stories.tsx +23 -25
- package/src/layouts/__stories__/scaffold.stories.tsx +21 -41
- package/src/layouts/__stories__/utils/layout_theme.css +0 -4
- package/src/layouts/__stories__/utils/layout_theme_provider.tsx +8 -1
- package/src/layouts/__stories__/utils.tsx +15 -29
- package/src/layouts/containers/containers.module.css +55 -0
- package/src/layouts/{rail → containers}/rail.tsx +15 -5
- package/src/layouts/{scaffold → containers}/scaffold.tsx +15 -5
- package/src/layouts/{rail → containers}/side/side.tsx +2 -1
- package/src/layouts/index.ts +6 -8
- package/src/layouts/section/__stories__/section.stories.tsx +79 -50
- package/src/layouts/section/detail.tsx +14 -0
- package/src/layouts/section/index.ts +3 -0
- package/src/layouts/section/section.module.css +0 -36
- package/src/mobile/actions/button/mobile_button.module.css +34 -0
- package/src/mobile/actions/button/mobile_button.stories.tsx +97 -0
- package/src/mobile/actions/button/mobile_button.tsx +26 -0
- package/src/mobile/actions/floating_action_button/floating_action_button.module.css +28 -0
- package/src/mobile/actions/floating_action_button/floating_action_button.stories.tsx +102 -0
- package/src/mobile/actions/floating_action_button/floating_action_button.tsx +25 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker.module.css +22 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker.tsx +118 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_body.tsx +57 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_date.module.css +80 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_date.tsx +102 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_day.module.css +6 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_day.tsx +40 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_header.module.css +21 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_header.tsx +180 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_input.module.css +13 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_input.stories.tsx +27 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_input.tsx +240 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_time_selector.module.css +7 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_time_selector.tsx +81 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_year_selector.module.css +55 -0
- package/src/mobile/inputs/date_picker/mobile_date_picker_year_selector.tsx +119 -0
- package/src/mobile/inputs/date_picker/mobile_overlay_header.module.css +5 -0
- package/src/mobile/inputs/date_picker/mobile_overlay_header.tsx +29 -0
- package/src/mobile/inputs/index.ts +4 -0
- package/src/mobile/portal/mobile_portal.tsx +14 -0
- package/src/mobile/viewport/mobile_viewport.module.css +23 -0
- package/src/mobile/viewport/mobile_viewport.tsx +80 -0
- package/src/navigation/tabs/state/link/use_tab_link.ts +1 -1
- package/src/overlay/slide/slide.stories.tsx +6 -9
- package/src/surfaces/aside/aside.module.css +1 -0
- package/src/surfaces/aside/aside.stories.tsx +24 -38
- package/src/surfaces/aside/aside.tsx +1 -1
- package/src/surfaces/card/card.stories.tsx +5 -7
- package/src/surfaces/card/card.tsx +1 -1
- package/src/surfaces/drawers/drawer.stories.tsx +10 -13
- package/src/surfaces/drawers/drawer.tsx +1 -1
- package/src/surfaces/modal/__stories__/modal.stories.tsx +10 -13
- package/src/surfaces/modal/modal.tsx +1 -1
- package/src/surfaces/page/page.stories.tsx +28 -32
- package/src/surfaces/page/page.tsx +1 -1
- package/src/surfaces/panel/__stories__/panel.stories.tsx +199 -66
- package/src/surfaces/panel/panel.module.css +1 -1
- package/src/surfaces/panel/panel.tsx +1 -1
- package/src/surfaces/pop_confirm/pop_confirm.stories.tsx +29 -37
- package/src/surfaces/tooltip/__stories__/tooltip.stories.tsx +8 -10
- package/src/surfaces/window/window.stories.tsx +6 -15
- package/src/surfaces/window/window.tsx +1 -1
- package/src/themes/build_stylesheet.ts +5 -0
- package/src/themes/theme_variables.ts +9 -0
- package/src/themes/themes/ergo/__stories__/components/tone_picker/sb_tone_card.tsx +6 -8
- package/src/themes/themes/ergo/__stories__/material.stories.tsx +4 -6
- package/src/themes/themes/ergo/ergo_theme.css +208 -215
- package/src/themes/themes/ergo/ergo_theme.ts +4 -2
- package/src/themes/themes/ergo/tokens/system_tokens.css +68 -0
- package/src/themes/themes/ergo/tokens/theme_tokens.css +99 -0
- package/src/tokens/index.ts +1 -0
- package/src/tokens/key/key.tsx +23 -2
- package/src/tokens/term/term.module.css +14 -0
- package/src/tokens/term/term.stories.tsx +84 -0
- package/src/tokens/term/term.tsx +20 -0
- package/src/tokens/value/value.module.css +5 -0
- package/src/tokens/value/value.tsx +24 -2
- package/src/utils/types/variations.ts +1 -0
- package/tsconfig.json +5 -33
- package/dist/WithTooltip-65CFNBJE-DEnh547F.js.map +0 -1
- package/dist/body.css +0 -1
- package/dist/formatter-EIJCOSYU-DWmgEY3b.js +0 -6
- package/dist/formatter-EIJCOSYU-DWmgEY3b.js.map +0 -1
- package/dist/layouts/body/body.d.ts +0 -23
- package/dist/layouts/body/body.d.ts.map +0 -1
- package/dist/layouts/body/body.js +0 -20
- package/dist/layouts/body/body.js.map +0 -1
- package/dist/layouts/rail/rail.d.ts.map +0 -1
- package/dist/layouts/rail/rail.js +0 -55
- package/dist/layouts/rail/rail.js.map +0 -1
- package/dist/layouts/rail/side/side.d.ts.map +0 -1
- package/dist/layouts/rail/side/side.js +0 -21
- package/dist/layouts/rail/side/side.js.map +0 -1
- package/dist/layouts/rail/utility_strip/utility_strip.d.ts.map +0 -1
- package/dist/layouts/rail/utility_strip/utility_strip.js.map +0 -1
- package/dist/layouts/row/row.d.ts +0 -4
- package/dist/layouts/row/row.d.ts.map +0 -1
- package/dist/layouts/row/row.js +0 -11
- package/dist/layouts/row/row.js.map +0 -1
- package/dist/layouts/scaffold/scaffold.d.ts.map +0 -1
- package/dist/layouts/scaffold/scaffold.js +0 -55
- package/dist/layouts/scaffold/scaffold.js.map +0 -1
- package/dist/rail.css +0 -1
- package/dist/row.css +0 -1
- package/dist/scaffold.css +0 -1
- package/dist/section.module-0wyGkhDg.js +0 -5
- package/dist/section.module-0wyGkhDg.js.map +0 -1
- package/dist/showcase-y9D3_Y8T.js.map +0 -1
- package/dist/syntaxhighlighter-ED5Y7EFY-CqInEOwQ.js.map +0 -1
- package/src/layouts/body/body.module.css +0 -8
- package/src/layouts/body/body.tsx +0 -40
- package/src/layouts/rail/rail.module.css +0 -14
- package/src/layouts/row/row.module.css +0 -5
- package/src/layouts/row/row.tsx +0 -15
- package/src/layouts/scaffold/scaffold.module.css +0 -14
- /package/dist/layouts/{rail → containers}/rail.d.ts +0 -0
- /package/dist/layouts/{scaffold → containers}/scaffold.d.ts +0 -0
- /package/dist/layouts/{rail → containers}/side/side.d.ts +0 -0
- /package/dist/layouts/{rail → containers}/utility_strip/utility_strip.d.ts +0 -0
- /package/src/layouts/{rail → containers}/side/side.module.css +0 -0
- /package/src/layouts/{rail → containers}/utility_strip/utility_strip.module.css +0 -0
- /package/src/layouts/{rail → containers}/utility_strip/utility_strip.tsx +0 -0
|
@@ -3,12 +3,13 @@ import { HStack } from '../../../stacks/h_stack.js';
|
|
|
3
3
|
import type { WithDetailedHTMLProps } from '../../../stacks/types/as.js';
|
|
4
4
|
import { clsx } from 'clsx';
|
|
5
5
|
import React from 'react';
|
|
6
|
-
import {
|
|
6
|
+
import { ButtonProps } from '../button/button.js';
|
|
7
7
|
import styles from './button_group.module.css';
|
|
8
8
|
|
|
9
9
|
export interface ButtonGroupOwnProps {
|
|
10
10
|
hierarchy?: Hierarchy;
|
|
11
11
|
size?: Size;
|
|
12
|
+
width?: string;
|
|
12
13
|
children:
|
|
13
14
|
| React.ReactElement<Omit<ButtonProps, 'hierarchy'>>
|
|
14
15
|
| React.ReactElement<Omit<ButtonProps, 'hierarchy'>>[];
|
|
@@ -18,7 +19,14 @@ export type ButtonGroupProps = WithDetailedHTMLProps<ButtonGroupOwnProps, 'div'>
|
|
|
18
19
|
|
|
19
20
|
export const ButtonGroup = React.forwardRef<HTMLDivElement, ButtonGroupProps>(
|
|
20
21
|
function ButtonGroup(
|
|
21
|
-
{
|
|
22
|
+
{
|
|
23
|
+
children,
|
|
24
|
+
className,
|
|
25
|
+
hierarchy = 'secondary',
|
|
26
|
+
size = 'md',
|
|
27
|
+
width = 'auto',
|
|
28
|
+
...props
|
|
29
|
+
},
|
|
22
30
|
ref
|
|
23
31
|
) {
|
|
24
32
|
const buttons: React.ReactElement<ButtonProps>[] = Array.isArray(children)
|
|
@@ -30,7 +38,7 @@ export const ButtonGroup = React.forwardRef<HTMLDivElement, ButtonGroupProps>(
|
|
|
30
38
|
ref={ref}
|
|
31
39
|
as="div"
|
|
32
40
|
inline
|
|
33
|
-
width=
|
|
41
|
+
width={width}
|
|
34
42
|
height="auto"
|
|
35
43
|
data-hierarchy={hierarchy}
|
|
36
44
|
data-size={size}
|
|
@@ -42,16 +50,16 @@ export const ButtonGroup = React.forwardRef<HTMLDivElement, ButtonGroupProps>(
|
|
|
42
50
|
|
|
43
51
|
return (
|
|
44
52
|
<React.Fragment key={i}>
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
className
|
|
53
|
+
{React.cloneElement(button, {
|
|
54
|
+
...button.props,
|
|
55
|
+
className: clsx(
|
|
48
56
|
styles['button-group-button'],
|
|
49
57
|
'tcn-button-group-button',
|
|
50
58
|
button.props.className
|
|
51
|
-
)
|
|
52
|
-
hierarchy
|
|
53
|
-
size
|
|
54
|
-
|
|
59
|
+
),
|
|
60
|
+
hierarchy,
|
|
61
|
+
size,
|
|
62
|
+
})}
|
|
55
63
|
{!isLast && (
|
|
56
64
|
<div
|
|
57
65
|
className={clsx(
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BodyText } from '../../typography/index.js';
|
|
2
2
|
import { HStack } from '../../stacks/h_stack.js';
|
|
3
3
|
import { Spacer } from '../../stacks/spacer.js';
|
|
4
4
|
import { VStack } from '../../stacks/v_stack.js';
|
|
@@ -49,7 +49,9 @@ export const FieldSet = React.forwardRef(function FieldSet(
|
|
|
49
49
|
>
|
|
50
50
|
{startAdornments}
|
|
51
51
|
{startAdornments && <Spacer width="8px" />}
|
|
52
|
-
<
|
|
52
|
+
<BodyText className="tcn-field-set-legend-text" size="lg">
|
|
53
|
+
{legend}
|
|
54
|
+
</BodyText>
|
|
53
55
|
{endAdornments && <Spacer />}
|
|
54
56
|
{endAdornments}
|
|
55
57
|
</HStack>
|
|
@@ -3,6 +3,7 @@ import { VStack } from '../../stacks/v_stack.js';
|
|
|
3
3
|
import { SBNestedScaffold, SBContent, SBNestedRail } from './utils.js';
|
|
4
4
|
|
|
5
5
|
import styles from './composed_stories.module.css';
|
|
6
|
+
import { Rail } from '../containers/rail.js';
|
|
6
7
|
|
|
7
8
|
const meta: Meta = {
|
|
8
9
|
title: 'Layouts/Composed',
|
|
@@ -33,10 +34,12 @@ export const Baseline: Story = {
|
|
|
33
34
|
render: () => (
|
|
34
35
|
<SBContainer>
|
|
35
36
|
<SBNestedScaffold depth={1}>
|
|
36
|
-
<SBNestedRail depth={2}>
|
|
37
|
-
<
|
|
38
|
-
|
|
39
|
-
|
|
37
|
+
<SBNestedRail depth={2} minWidth="100px">
|
|
38
|
+
<Rail>
|
|
39
|
+
<SBContent />
|
|
40
|
+
<SBContent />
|
|
41
|
+
<SBContent />
|
|
42
|
+
</Rail>
|
|
40
43
|
</SBNestedRail>
|
|
41
44
|
</SBNestedScaffold>
|
|
42
45
|
</SBContainer>
|
|
@@ -46,11 +49,13 @@ export const Baseline: Story = {
|
|
|
46
49
|
export const WithColumns: Story = {
|
|
47
50
|
render: () => (
|
|
48
51
|
<SBContainer>
|
|
49
|
-
<SBNestedScaffold depth={1} utilityBar={false}
|
|
52
|
+
<SBNestedScaffold depth={1} utilityBar={false} footer={false}>
|
|
50
53
|
<SBNestedRail depth={2} scaffold={false}>
|
|
51
|
-
<
|
|
52
|
-
|
|
53
|
-
|
|
54
|
+
<Rail>
|
|
55
|
+
<SBContent />
|
|
56
|
+
<SBContent />
|
|
57
|
+
<SBContent />
|
|
58
|
+
</Rail>
|
|
54
59
|
</SBNestedRail>
|
|
55
60
|
</SBNestedScaffold>
|
|
56
61
|
</SBContainer>
|
|
@@ -2,13 +2,11 @@ import type { Meta, StoryObj } from '@storybook/react-vite';
|
|
|
2
2
|
|
|
3
3
|
import { LayoutStoryDecorator } from './utils/layout_theme_provider.js';
|
|
4
4
|
import { SBLayoutContent } from './utils/content.js';
|
|
5
|
-
import { Rail } from '../
|
|
6
|
-
import { Side } from '../
|
|
7
|
-
import { UtilityStrip } from '../
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { VStack } from '../../stacks/v_stack.js';
|
|
11
|
-
import { Scaffold } from '../scaffold/scaffold.js';
|
|
5
|
+
import { Rail } from '../containers/rail.js';
|
|
6
|
+
import { Side } from '../containers/side/side.js';
|
|
7
|
+
import { UtilityStrip } from '../containers/utility_strip/utility_strip.js';
|
|
8
|
+
import { Title } from '../../typography/index.js';
|
|
9
|
+
import { Scaffold } from '../containers/scaffold.js';
|
|
12
10
|
|
|
13
11
|
const meta: Meta<typeof Rail> = {
|
|
14
12
|
title: 'Layouts/Rail',
|
|
@@ -34,7 +32,12 @@ export const Baseline: Story = {
|
|
|
34
32
|
<UtilityStrip>
|
|
35
33
|
<Title>Utility Strip</Title>
|
|
36
34
|
</UtilityStrip>
|
|
37
|
-
<
|
|
35
|
+
<Rail>
|
|
36
|
+
<SBLayoutContent />
|
|
37
|
+
<SBLayoutContent />
|
|
38
|
+
<SBLayoutContent />
|
|
39
|
+
<SBLayoutContent />
|
|
40
|
+
</Rail>
|
|
38
41
|
<Side width="200px">Side</Side>
|
|
39
42
|
</Rail>
|
|
40
43
|
</LayoutStoryDecorator>
|
|
@@ -48,16 +51,12 @@ export const HorizontalContent: Story = {
|
|
|
48
51
|
<UtilityStrip>
|
|
49
52
|
<Title>Utility Strip</Title>
|
|
50
53
|
</UtilityStrip>
|
|
51
|
-
<
|
|
52
|
-
<
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
<SBLayoutContent />
|
|
58
|
-
<SBLayoutContent />
|
|
59
|
-
</Rail>
|
|
60
|
-
</Body>
|
|
54
|
+
<Rail>
|
|
55
|
+
<SBLayoutContent />
|
|
56
|
+
<SBLayoutContent />
|
|
57
|
+
<SBLayoutContent />
|
|
58
|
+
<SBLayoutContent />
|
|
59
|
+
</Rail>
|
|
61
60
|
<Side width="200px">Side</Side>
|
|
62
61
|
</Rail>
|
|
63
62
|
</LayoutStoryDecorator>
|
|
@@ -71,13 +70,12 @@ export const VerticalContent: Story = {
|
|
|
71
70
|
<UtilityStrip>
|
|
72
71
|
<Title>Utility Strip</Title>
|
|
73
72
|
</UtilityStrip>
|
|
74
|
-
<
|
|
75
|
-
<
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
</Body>
|
|
73
|
+
<Scaffold>
|
|
74
|
+
<SBLayoutContent />
|
|
75
|
+
<SBLayoutContent />
|
|
76
|
+
<SBLayoutContent />
|
|
77
|
+
<SBLayoutContent />
|
|
78
|
+
</Scaffold>
|
|
81
79
|
<Side width="200px">Side</Side>
|
|
82
80
|
</Rail>
|
|
83
81
|
</LayoutStoryDecorator>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Scaffold } from '../
|
|
1
|
+
import { Scaffold } from '../containers/scaffold.js';
|
|
2
2
|
import { Header } from '../header/header.js';
|
|
3
3
|
import { UtilityBar } from '../utility_bar/utility_bar.js';
|
|
4
4
|
import { Footer } from '../footer/footer.js';
|
|
@@ -6,12 +6,7 @@ import type { Meta, StoryObj } from '@storybook/react-vite';
|
|
|
6
6
|
|
|
7
7
|
import { LayoutStoryDecorator } from './utils/layout_theme_provider.js';
|
|
8
8
|
import { SBLayoutContent } from './utils/content.js';
|
|
9
|
-
import {
|
|
10
|
-
import { Body } from '../body/body.js';
|
|
11
|
-
import { Rail } from '../rail/rail.js';
|
|
12
|
-
import { Section } from '../section/section.js';
|
|
13
|
-
import { BodyText } from '../../typography/index.js';
|
|
14
|
-
import { Heading } from '../section/heading.js';
|
|
9
|
+
import { Rail } from '../containers/rail.js';
|
|
15
10
|
|
|
16
11
|
const meta: Meta<typeof Scaffold> = {
|
|
17
12
|
title: 'Layouts/Scaffold',
|
|
@@ -33,10 +28,14 @@ type Story = StoryObj<typeof Scaffold>;
|
|
|
33
28
|
export const Baseline: Story = {
|
|
34
29
|
render: () => (
|
|
35
30
|
<LayoutStoryDecorator>
|
|
36
|
-
<Scaffold>
|
|
31
|
+
<Scaffold height="100%">
|
|
37
32
|
<Header>Header</Header>
|
|
38
33
|
<UtilityBar>Utility Bar</UtilityBar>
|
|
39
|
-
<
|
|
34
|
+
<Scaffold>
|
|
35
|
+
<SBLayoutContent />
|
|
36
|
+
<SBLayoutContent />
|
|
37
|
+
<SBLayoutContent />
|
|
38
|
+
</Scaffold>
|
|
40
39
|
<Footer>Footer</Footer>
|
|
41
40
|
</Scaffold>
|
|
42
41
|
</LayoutStoryDecorator>
|
|
@@ -49,29 +48,14 @@ export const VerticalContent: Story = {
|
|
|
49
48
|
},
|
|
50
49
|
render: () => (
|
|
51
50
|
<LayoutStoryDecorator>
|
|
52
|
-
<Scaffold height="
|
|
51
|
+
<Scaffold height="100%">
|
|
53
52
|
<Header>Header</Header>
|
|
54
53
|
<UtilityBar>Utility Bar</UtilityBar>
|
|
55
|
-
<
|
|
56
|
-
<
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
<Section>
|
|
61
|
-
<Heading>Section 1 - A</Heading>
|
|
62
|
-
<SBLayoutContent />
|
|
63
|
-
<Section>
|
|
64
|
-
<Heading>Section 1 - B</Heading>
|
|
65
|
-
<SBLayoutContent />
|
|
66
|
-
</Section>
|
|
67
|
-
</Section>
|
|
68
|
-
<Section>
|
|
69
|
-
<Heading>Section 2</Heading>
|
|
70
|
-
<SBLayoutContent />
|
|
71
|
-
<SBLayoutContent />
|
|
72
|
-
</Section>
|
|
73
|
-
</Scaffold>
|
|
74
|
-
</Body>
|
|
54
|
+
<Scaffold>
|
|
55
|
+
<SBLayoutContent />
|
|
56
|
+
<SBLayoutContent />
|
|
57
|
+
<SBLayoutContent />
|
|
58
|
+
</Scaffold>
|
|
75
59
|
</Scaffold>
|
|
76
60
|
</LayoutStoryDecorator>
|
|
77
61
|
),
|
|
@@ -82,19 +66,15 @@ export const HorizontalContent: Story = {
|
|
|
82
66
|
},
|
|
83
67
|
render: () => (
|
|
84
68
|
<LayoutStoryDecorator>
|
|
85
|
-
<Scaffold height="
|
|
69
|
+
<Scaffold height="100%">
|
|
86
70
|
<Header>Header</Header>
|
|
87
71
|
<UtilityBar>Utility Bar</UtilityBar>
|
|
88
|
-
<
|
|
89
|
-
<
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
<SBLayoutContent />
|
|
95
|
-
<SBLayoutContent />
|
|
96
|
-
</Rail>
|
|
97
|
-
</Body>
|
|
72
|
+
<Rail>
|
|
73
|
+
<SBLayoutContent />
|
|
74
|
+
<SBLayoutContent />
|
|
75
|
+
<SBLayoutContent />
|
|
76
|
+
<SBLayoutContent />
|
|
77
|
+
</Rail>
|
|
98
78
|
<Footer>Footer</Footer>
|
|
99
79
|
</Scaffold>
|
|
100
80
|
</LayoutStoryDecorator>
|
|
@@ -4,7 +4,14 @@ import './layout_theme.css';
|
|
|
4
4
|
|
|
5
5
|
export const LayoutStoryDecorator = ({ children }: { children: React.ReactNode }) => {
|
|
6
6
|
return (
|
|
7
|
-
<Box
|
|
7
|
+
<Box
|
|
8
|
+
className="sb-layout-theme"
|
|
9
|
+
height="100vh"
|
|
10
|
+
width="100vw"
|
|
11
|
+
minHeight="400px"
|
|
12
|
+
maxHeight="800px"
|
|
13
|
+
overflow="auto"
|
|
14
|
+
>
|
|
8
15
|
{children}
|
|
9
16
|
</Box>
|
|
10
17
|
);
|
|
@@ -1,19 +1,18 @@
|
|
|
1
1
|
import type { PropsWithChildren } from 'react';
|
|
2
2
|
import clsx from 'clsx';
|
|
3
3
|
|
|
4
|
-
import { Scaffold, type ScaffoldProps } from '../
|
|
4
|
+
import { Scaffold, type ScaffoldProps } from '../containers/scaffold.js';
|
|
5
5
|
import { Header } from '../header/header.js';
|
|
6
6
|
import { Footer } from '../footer/footer.js';
|
|
7
7
|
import { UtilityBar } from '../utility_bar/utility_bar.js';
|
|
8
8
|
|
|
9
|
-
import { Rail, type RailProps } from '../
|
|
10
|
-
import { Side } from '../
|
|
9
|
+
import { Rail, type RailProps } from '../containers/rail.js';
|
|
10
|
+
import { Side } from '../containers/side/side.js';
|
|
11
11
|
import { Box, Spacer } from '../../stacks/index.js';
|
|
12
|
-
import { UtilityStrip } from '../
|
|
12
|
+
import { UtilityStrip } from '../containers/utility_strip/utility_strip.js';
|
|
13
13
|
import { SearchIcon } from '@tcn/icons/search_icon.js';
|
|
14
14
|
|
|
15
15
|
import styles from './composed_stories.module.css';
|
|
16
|
-
import { Body } from '../body/body.js';
|
|
17
16
|
|
|
18
17
|
const FloatingLabel = ({ children }: { children: React.ReactNode }) => {
|
|
19
18
|
return (
|
|
@@ -68,10 +67,8 @@ interface SBNestedRailProps extends RailProps {
|
|
|
68
67
|
depth?: number;
|
|
69
68
|
scaffold?: boolean;
|
|
70
69
|
side?: boolean;
|
|
71
|
-
main?: boolean;
|
|
72
70
|
utilityStrip?: boolean;
|
|
73
71
|
label?: boolean;
|
|
74
|
-
mainLabel?: boolean;
|
|
75
72
|
}
|
|
76
73
|
|
|
77
74
|
export const SBNestedRail: React.FC<PropsWithChildren<SBNestedRailProps>> = ({
|
|
@@ -80,14 +77,14 @@ export const SBNestedRail: React.FC<PropsWithChildren<SBNestedRailProps>> = ({
|
|
|
80
77
|
depth = 1,
|
|
81
78
|
scaffold = true,
|
|
82
79
|
side = true,
|
|
83
|
-
main = true,
|
|
84
80
|
utilityStrip = true,
|
|
85
81
|
label = true,
|
|
86
|
-
|
|
82
|
+
height = '100%',
|
|
87
83
|
...props
|
|
88
84
|
}) => {
|
|
89
85
|
return (
|
|
90
86
|
<Rail
|
|
87
|
+
height={height}
|
|
91
88
|
className={clsx(styles.rail, styles.primary, className)}
|
|
92
89
|
data-depth={depth}
|
|
93
90
|
{...props}
|
|
@@ -99,15 +96,7 @@ export const SBNestedRail: React.FC<PropsWithChildren<SBNestedRailProps>> = ({
|
|
|
99
96
|
<SBActions />
|
|
100
97
|
</UtilityStrip>
|
|
101
98
|
)}
|
|
102
|
-
{
|
|
103
|
-
<Body className={clsx(styles.main, styles.secondary)} width="200px">
|
|
104
|
-
<Scaffold>
|
|
105
|
-
{mainLabel && <>Body</>}
|
|
106
|
-
{children}
|
|
107
|
-
</Scaffold>
|
|
108
|
-
</Body>
|
|
109
|
-
)}
|
|
110
|
-
{!main && children}
|
|
99
|
+
{children}
|
|
111
100
|
{side && (
|
|
112
101
|
<Side className={clsx(styles.side, styles.secondary)} minWidth="200px">
|
|
113
102
|
<span>Side/Column/WIP</span>
|
|
@@ -120,9 +109,11 @@ export const SBNestedRail: React.FC<PropsWithChildren<SBNestedRailProps>> = ({
|
|
|
120
109
|
footer={false}
|
|
121
110
|
minWidth={'fit-content'}
|
|
122
111
|
>
|
|
123
|
-
<
|
|
124
|
-
|
|
125
|
-
|
|
112
|
+
<Scaffold>
|
|
113
|
+
<SBContent />
|
|
114
|
+
<SBContent />
|
|
115
|
+
<SBContent />
|
|
116
|
+
</Scaffold>
|
|
126
117
|
</SBNestedScaffold>
|
|
127
118
|
)}
|
|
128
119
|
</Rail>
|
|
@@ -133,7 +124,6 @@ interface SBNestedScaffoldProps extends ScaffoldProps {
|
|
|
133
124
|
depth?: number;
|
|
134
125
|
header?: boolean;
|
|
135
126
|
utilityBar?: boolean;
|
|
136
|
-
body?: boolean;
|
|
137
127
|
footer?: boolean;
|
|
138
128
|
}
|
|
139
129
|
|
|
@@ -143,12 +133,13 @@ export const SBNestedScaffold: React.FC<PropsWithChildren<SBNestedScaffoldProps>
|
|
|
143
133
|
depth = 1,
|
|
144
134
|
header = true,
|
|
145
135
|
utilityBar = true,
|
|
146
|
-
body = true,
|
|
147
136
|
footer = true,
|
|
137
|
+
height = '100%',
|
|
148
138
|
...props
|
|
149
139
|
}) => {
|
|
150
140
|
return (
|
|
151
141
|
<Scaffold
|
|
142
|
+
height={height}
|
|
152
143
|
className={clsx(styles.scaffold, styles.primary, className)}
|
|
153
144
|
data-depth={depth}
|
|
154
145
|
{...props}
|
|
@@ -163,12 +154,7 @@ export const SBNestedScaffold: React.FC<PropsWithChildren<SBNestedScaffoldProps>
|
|
|
163
154
|
<SBActions />
|
|
164
155
|
</UtilityBar>
|
|
165
156
|
)}
|
|
166
|
-
{
|
|
167
|
-
<Body className={clsx(styles.body, styles.secondary)}>
|
|
168
|
-
<Scaffold>Body {children}</Scaffold>
|
|
169
|
-
</Body>
|
|
170
|
-
)}
|
|
171
|
-
{!body && children}
|
|
157
|
+
{children}
|
|
172
158
|
{footer && (
|
|
173
159
|
<Footer className={clsx(styles.footer, styles.secondary)}>Footer</Footer>
|
|
174
160
|
)}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
@layer tcn-system {
|
|
2
|
+
:where(.scaffold) {
|
|
3
|
+
max-height: 100%;
|
|
4
|
+
width: 100%;
|
|
5
|
+
height: auto;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
:where(.rail) {
|
|
9
|
+
max-width: 100%;
|
|
10
|
+
height: 100%;
|
|
11
|
+
width: auto;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
:where(.container) > :where(.container-stack) {
|
|
15
|
+
width: 100%;
|
|
16
|
+
height: 100%;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/* Scaffold base — layout frame only, no overflow clipping */
|
|
20
|
+
:where(.scaffold) > :where(.scaffold-stack) {
|
|
21
|
+
overflow-y: auto;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/* Switching direction - rail fills scaffold width */
|
|
25
|
+
:where(.scaffold) > :where(.scaffold-stack) > :where(.rail) {
|
|
26
|
+
width: 100%;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/* Switching direction - scaffold fills rail height */
|
|
30
|
+
:where(.rail) > :where(.rail-stack) > :where(.scaffold) {
|
|
31
|
+
height: 100%;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/* Rail base — layout frame only, no overflow clipping */
|
|
35
|
+
:where(.rail) > :where(.rail-stack) {
|
|
36
|
+
overflow-x: auto;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/* container grows to fill remaining space */
|
|
40
|
+
:where(.container-stack) > :where(.container) {
|
|
41
|
+
flex-grow: 1;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/* container nested Scaffold scrolls vertically */
|
|
45
|
+
:where(.container-stack) > :where(.scaffold) {
|
|
46
|
+
min-height: 0;
|
|
47
|
+
overflow-y: auto;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/* container nested Rail scrolls horizontally */
|
|
51
|
+
:where(.container-stack) > :where(.rail) {
|
|
52
|
+
min-width: 0;
|
|
53
|
+
overflow-x: auto;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
@@ -4,8 +4,7 @@ import { Box, type BoxProps } from '../../stacks/box/box.js';
|
|
|
4
4
|
import type { Alignment } from '../../stacks/types/alignment.js';
|
|
5
5
|
import { HStack } from '../../stacks/h_stack.js';
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
import styles from './rail.module.css';
|
|
7
|
+
import styles from './containers.module.css';
|
|
9
8
|
|
|
10
9
|
export interface RailProps extends Omit<BoxProps, 'as'> {
|
|
11
10
|
vAlign?: Alignment;
|
|
@@ -17,7 +16,7 @@ export const Rail = React.forwardRef<HTMLElement, RailProps>(function Rail(
|
|
|
17
16
|
{
|
|
18
17
|
children,
|
|
19
18
|
width,
|
|
20
|
-
height
|
|
19
|
+
height,
|
|
21
20
|
minWidth,
|
|
22
21
|
maxWidth,
|
|
23
22
|
minHeight,
|
|
@@ -40,7 +39,13 @@ export const Rail = React.forwardRef<HTMLElement, RailProps>(function Rail(
|
|
|
40
39
|
maxHeight={maxHeight}
|
|
41
40
|
data-h-alignment={hAlign}
|
|
42
41
|
data-v-alignment={vAlign}
|
|
43
|
-
className={clsx(
|
|
42
|
+
className={clsx(
|
|
43
|
+
className,
|
|
44
|
+
styles['rail'],
|
|
45
|
+
styles['container'],
|
|
46
|
+
'tcn-container',
|
|
47
|
+
'tcn-rail'
|
|
48
|
+
)}
|
|
44
49
|
{...props}
|
|
45
50
|
>
|
|
46
51
|
<HStack
|
|
@@ -52,7 +57,12 @@ export const Rail = React.forwardRef<HTMLElement, RailProps>(function Rail(
|
|
|
52
57
|
hAlign={hAlign}
|
|
53
58
|
vAlign={vAlign}
|
|
54
59
|
ref={ref}
|
|
55
|
-
className={clsx(
|
|
60
|
+
className={clsx(
|
|
61
|
+
styles['rail-stack'],
|
|
62
|
+
styles['container-stack'],
|
|
63
|
+
'tcn-container-stack',
|
|
64
|
+
'tcn-rail-stack'
|
|
65
|
+
)}
|
|
56
66
|
zIndex={0}
|
|
57
67
|
>
|
|
58
68
|
{children}
|
|
@@ -3,8 +3,7 @@ import { clsx } from 'clsx';
|
|
|
3
3
|
import { Box, type BoxProps } from '../../stacks/box/box.js';
|
|
4
4
|
import type { Alignment } from '../../stacks/types/alignment.js';
|
|
5
5
|
import { VStack } from '../../stacks/v_stack.js';
|
|
6
|
-
|
|
7
|
-
import styles from './scaffold.module.css';
|
|
6
|
+
import styles from './containers.module.css';
|
|
8
7
|
|
|
9
8
|
export interface ScaffoldProps extends Omit<BoxProps, 'as'> {
|
|
10
9
|
vAlign?: Alignment;
|
|
@@ -15,7 +14,7 @@ export const Scaffold = React.forwardRef<HTMLElement, ScaffoldProps>(function Sc
|
|
|
15
14
|
{
|
|
16
15
|
children,
|
|
17
16
|
width,
|
|
18
|
-
height
|
|
17
|
+
height,
|
|
19
18
|
minWidth,
|
|
20
19
|
maxWidth,
|
|
21
20
|
minHeight,
|
|
@@ -38,7 +37,13 @@ export const Scaffold = React.forwardRef<HTMLElement, ScaffoldProps>(function Sc
|
|
|
38
37
|
maxHeight={maxHeight}
|
|
39
38
|
data-h-alignment={hAlign}
|
|
40
39
|
data-v-alignment={vAlign}
|
|
41
|
-
className={clsx(
|
|
40
|
+
className={clsx(
|
|
41
|
+
className,
|
|
42
|
+
styles['scaffold'],
|
|
43
|
+
styles['container'],
|
|
44
|
+
'tcn-container',
|
|
45
|
+
'tcn-scaffold'
|
|
46
|
+
)}
|
|
42
47
|
{...props}
|
|
43
48
|
>
|
|
44
49
|
<VStack
|
|
@@ -50,7 +55,12 @@ export const Scaffold = React.forwardRef<HTMLElement, ScaffoldProps>(function Sc
|
|
|
50
55
|
hAlign={hAlign}
|
|
51
56
|
vAlign={vAlign}
|
|
52
57
|
ref={ref}
|
|
53
|
-
className={clsx(
|
|
58
|
+
className={clsx(
|
|
59
|
+
styles['scaffold-stack'],
|
|
60
|
+
styles['container-stack'],
|
|
61
|
+
'tcn-container-stack',
|
|
62
|
+
'tcn-scaffold-stack'
|
|
63
|
+
)}
|
|
54
64
|
zIndex={0}
|
|
55
65
|
>
|
|
56
66
|
{children}
|
|
@@ -7,13 +7,14 @@ import styles from './side.module.css';
|
|
|
7
7
|
export interface SideProps extends Omit<VStackProps, 'as'> {}
|
|
8
8
|
|
|
9
9
|
export const Side = React.forwardRef<HTMLElement, SideProps>(function UtilityStrip(
|
|
10
|
-
{ children, className, width = 'auto', ...props }: SideProps,
|
|
10
|
+
{ children, className, height = '100%', width = 'auto', ...props }: SideProps,
|
|
11
11
|
ref
|
|
12
12
|
) {
|
|
13
13
|
return (
|
|
14
14
|
<VStack
|
|
15
15
|
ref={ref}
|
|
16
16
|
width={width}
|
|
17
|
+
height={height}
|
|
17
18
|
className={clsx(styles['side'], 'tcn-side', className)}
|
|
18
19
|
as="section"
|
|
19
20
|
{...props}
|
package/src/layouts/index.ts
CHANGED
|
@@ -6,24 +6,22 @@ export * from './list/list.js';
|
|
|
6
6
|
export * from './sidebar_end/sidebar_end.js';
|
|
7
7
|
export * from './sidebar_start/sidebar_start.js';
|
|
8
8
|
|
|
9
|
-
export { Scaffold, type ScaffoldProps } from './
|
|
10
|
-
|
|
9
|
+
export { Scaffold, type ScaffoldProps } from './containers/scaffold.js';
|
|
10
|
+
|
|
11
11
|
export { Footer, type FooterProps } from './footer/footer.js';
|
|
12
12
|
export { Header, type HeaderProps } from './header/header.js';
|
|
13
13
|
export { UtilityBar, type UtilityBarProps } from './utility_bar/utility_bar.js';
|
|
14
14
|
export { Group, type GroupProps } from './group/group.js';
|
|
15
15
|
export { Bar, type BarProps } from './bar/bar.js';
|
|
16
|
-
export {
|
|
17
|
-
export { Section } from './section/section.js';
|
|
18
|
-
export { Heading, type HeadingOwnProps } from './section/heading.js';
|
|
16
|
+
export { Section, Heading, Detail, type HeadingOwnProps } from './section/index.js';
|
|
19
17
|
export { Responsive, type ResponsiveProps } from './responsive/responsive.js';
|
|
20
18
|
export { Breakpoint, type BreakpointProps } from './responsive/breakpoint.js';
|
|
21
19
|
|
|
22
20
|
export { TTable, THead, TBody, TFoot, TR, TH, TD } from './table/table.js';
|
|
23
21
|
|
|
24
|
-
export { Rail, type RailProps } from './
|
|
25
|
-
export { Side, type SideProps } from './
|
|
22
|
+
export { Rail, type RailProps } from './containers/rail.js';
|
|
23
|
+
export { Side, type SideProps } from './containers/side/side.js';
|
|
26
24
|
export {
|
|
27
25
|
UtilityStrip,
|
|
28
26
|
type UtilityStripProps,
|
|
29
|
-
} from './
|
|
27
|
+
} from './containers/utility_strip/utility_strip.js';
|