@teamturing/react-kit 2.1.1 → 2.3.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.
@@ -274,7 +274,7 @@ declare const GradientText: import("styled-components").IStyledComponent<"web",
274
274
  onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLSpanElement> | undefined;
275
275
  } & {
276
276
  typography?: import("styled-system").ResponsiveValue<"s" | "m" | "xxs" | "xs" | "l" | "xl" | "xxl" | "display1" | "display2" | "display3" | "display4" | "xxl/regular" | "xxl/bold" | "xl/regular" | "xl/bold" | "l/regular" | "l/bold" | "m/regular" | "m/bold" | "s/regular" | "s/bold" | "xs/regular" | "xs/bold" | "xxs/regular" | "xxs/bold"> | undefined;
277
- } & import("../../utils/styled-system").SxProp & import("../../utils/styled-system").WordBreakProps & import("../../utils/styled-system").WhiteSpaceProps & import("../../utils/styled-system").TextDecorationProps & import("styled-system").FontSizeProps<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>, "s" | "m" | "xxs" | "xs" | "l" | "xl" | "xxl" | "display1" | "display2" | "display3" | "display4"> & import("styled-system").FontWeightProps<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>, "bold" | "medium" | "regular"> & import("styled-system").LineHeightProps<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>, 2 | 1> & import("styled-system").TextAlignProps<Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> & import("styled-system").ColorProps<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>, "link" | "icon/neutral" | "scale/violet/0" | "scale/violet/1" | "scale/violet/2" | "scale/violet/3" | "scale/violet/4" | "scale/violet/5" | "scale/violet/6" | "scale/violet/7" | "scale/violet/8" | "scale/violet/9" | "dim" | "link/hovered" | "link/pressed" | "link/neutral" | "link/neutral/hovered" | "link/neutral/pressed" | "link/neutral/bold" | "link/neutral/bold/hovered" | "link/neutral/bold/pressed" | "link/disabled" | "icon/neutral/bold" | "icon/neutral/bolder" | "icon/accent/gray" | "icon/accent/blue" | "icon/accent/blue/bold" | "icon/accent/green" | "icon/accent/yellow" | "icon/accent/red" | "icon/inverse" | "icon/disabled" | "icon/disabled/subtler" | "icon/selected/violet" | "icon/selected" | "icon/primary/subtle" | "icon/primary" | "icon/primary/bold" | "icon/success" | "icon/warning" | "icon/danger" | "border/neutral/subtle" | "border/neutral" | "border/neutral/bolder" | "border/input" | "border/inverse" | "border/selected" | "border/disabled" | "border/primary" | "border/hovered" | "border/focused" | "border/danger" | "border/success" | "bg/secondary" | "bg/secondary/hovered" | "bg/secondary/pressed" | "bg/primary" | "bg/primary/hovered" | "bg/primary/pressed" | "bg/neutral/subtler" | "bg/neutral/subtler/hovered" | "bg/neutral/subtler/pressed" | "bg/neutral/subtle" | "bg/neutral/subtle/hovered" | "bg/neutral/subtle/pressed" | "bg/neutral" | "bg/neutral/hovered" | "bg/neutral/pressed" | "bg/neutral/bold" | "bg/neutral/bold/hovered" | "bg/neutral/bold/pressed" | "bg/neutral/bolder" | "bg/neutral/bolder/hovered" | "bg/neutral/bolder/pressed" | "bg/disabled" | "bg/disabled/subtlest" | "bg/input" | "bg/accent/blue/subtlest" | "bg/accent/green/subtlest" | "bg/accent/yellow/subtlest" | "bg/accent/red/subtlest" | "bg/accent/red/subtle" | "bg/accent/red" | "bg/accent/gray/subtlest" | "bg/selected/violet" | "bg/selected" | "bg/selected/subtle" | "bg/inverse" | "bg/inverse/subtlest" | "bg/success" | "bg/success/bold" | "bg/warning" | "bg/warning/bold" | "bg/danger" | "bg/danger/bold" | "bg/danger/bold/hovered" | "bg/danger/bold/pressed" | "text/primary" | "text/accent/blue" | "text/accent/green" | "text/accent/yellow" | "text/accent/red" | "text/neutral/subtlest" | "text/neutral/subtler" | "text/neutral/subtle" | "text/neutral" | "text/inverse" | "text/inverse/subtle" | "text/inverse/subtler" | "text/disabled" | "text/success" | "text/warning" | "text/danger" | "text/selected">, "ref"> & {
277
+ } & import("../..").SxProp & import("../../utils/styled-system").WordBreakProps & import("../../utils/styled-system").WhiteSpaceProps & import("../../utils/styled-system").TextDecorationProps & import("styled-system").FontSizeProps<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>, "s" | "m" | "xxs" | "xs" | "l" | "xl" | "xxl" | "display1" | "display2" | "display3" | "display4"> & import("styled-system").FontWeightProps<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>, "bold" | "medium" | "regular"> & import("styled-system").LineHeightProps<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>, 2 | 1> & import("styled-system").TextAlignProps<Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> & import("styled-system").ColorProps<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>, "link" | "icon/neutral" | "scale/violet/0" | "scale/violet/1" | "scale/violet/2" | "scale/violet/3" | "scale/violet/4" | "scale/violet/5" | "scale/violet/6" | "scale/violet/7" | "scale/violet/8" | "scale/violet/9" | "dim" | "link/hovered" | "link/pressed" | "link/neutral" | "link/neutral/hovered" | "link/neutral/pressed" | "link/neutral/bold" | "link/neutral/bold/hovered" | "link/neutral/bold/pressed" | "link/disabled" | "icon/neutral/bold" | "icon/neutral/bolder" | "icon/accent/gray" | "icon/accent/blue" | "icon/accent/blue/bold" | "icon/accent/green" | "icon/accent/yellow" | "icon/accent/red" | "icon/inverse" | "icon/disabled" | "icon/disabled/subtler" | "icon/selected/violet" | "icon/selected" | "icon/primary/subtle" | "icon/primary" | "icon/primary/bold" | "icon/success" | "icon/warning" | "icon/danger" | "border/neutral/subtle" | "border/neutral" | "border/neutral/bolder" | "border/input" | "border/inverse" | "border/selected" | "border/disabled" | "border/primary" | "border/hovered" | "border/focused" | "border/danger" | "border/success" | "bg/secondary" | "bg/secondary/hovered" | "bg/secondary/pressed" | "bg/primary" | "bg/primary/hovered" | "bg/primary/pressed" | "bg/neutral/subtler" | "bg/neutral/subtler/hovered" | "bg/neutral/subtler/pressed" | "bg/neutral/subtle" | "bg/neutral/subtle/hovered" | "bg/neutral/subtle/pressed" | "bg/neutral" | "bg/neutral/hovered" | "bg/neutral/pressed" | "bg/neutral/bold" | "bg/neutral/bold/hovered" | "bg/neutral/bold/pressed" | "bg/neutral/bolder" | "bg/neutral/bolder/hovered" | "bg/neutral/bolder/pressed" | "bg/disabled" | "bg/disabled/subtlest" | "bg/input" | "bg/accent/blue/subtlest" | "bg/accent/green/subtlest" | "bg/accent/yellow/subtlest" | "bg/accent/red/subtlest" | "bg/accent/red/subtle" | "bg/accent/red" | "bg/accent/gray/subtlest" | "bg/selected/violet" | "bg/selected" | "bg/selected/subtle" | "bg/inverse" | "bg/inverse/subtlest" | "bg/success" | "bg/success/bold" | "bg/warning" | "bg/warning/bold" | "bg/danger" | "bg/danger/bold" | "bg/danger/bold/hovered" | "bg/danger/bold/pressed" | "text/primary" | "text/accent/blue" | "text/accent/green" | "text/accent/yellow" | "text/accent/red" | "text/neutral/subtlest" | "text/neutral/subtler" | "text/neutral/subtle" | "text/neutral" | "text/inverse" | "text/inverse/subtle" | "text/inverse/subtler" | "text/disabled" | "text/success" | "text/warning" | "text/danger" | "text/selected">, "ref"> & {
278
278
  ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
279
279
  }, Props>>;
280
280
  export default GradientText;
@@ -0,0 +1,6 @@
1
+ import { ChipGroupView as ChipGroupViewType } from '../../types';
2
+ type Props = {
3
+ view: ChipGroupViewType;
4
+ };
5
+ declare const ChipGroupView: ({ view: { size, gapX, gapY, chips } }: Props) => import("react/jsx-runtime").JSX.Element;
6
+ export default ChipGroupView;
@@ -1,2 +1,3 @@
1
1
  export { default as ImageView } from './ImageView';
2
2
  export { default as TextView } from './TextView';
3
+ export { default as ChipGroupViewType } from './ChipGroupView';
@@ -1,3 +1,4 @@
1
+ import { ChipProps, StackProps } from '../..';
1
2
  /**
2
3
  * Default Types
3
4
  */
@@ -16,8 +17,17 @@ export type ImageView = {
16
17
  width: number;
17
18
  height: number;
18
19
  };
19
- export type View = TextView | ImageView;
20
- export type ViewComponentType = 'TextView' | 'ImageView';
20
+ export type ChipGroupView = {
21
+ size: ChipProps['size'];
22
+ gapX: StackProps['gapX'];
23
+ gapY: StackProps['gapY'];
24
+ chips: Array<{
25
+ text: string;
26
+ variant: ChipProps['variant'];
27
+ }>;
28
+ };
29
+ export type View = TextView | ImageView | ChipGroupView;
30
+ export type ViewComponentType = 'TextView' | 'ImageView' | 'ChipGroupView';
21
31
  export interface IViewContainer {
22
32
  id: string;
23
33
  viewComponentType: ViewComponentType;
package/dist/index.d.ts CHANGED
@@ -48,3 +48,7 @@ export { default as useToggleHandler } from './hook/useToggleHandler';
48
48
  * theme
49
49
  */
50
50
  export { default as theme } from './theme';
51
+ /**
52
+ * styled-system utils
53
+ */
54
+ export * from './utils/styled-system';
package/dist/index.js CHANGED
@@ -1732,6 +1732,12 @@ const wordBreak = system({
1732
1732
  scale: 'wordBreak'
1733
1733
  }
1734
1734
  });
1735
+ const lineClamp = system({
1736
+ lineClamp: {
1737
+ property: 'WebkitLineClamp',
1738
+ scale: 'WebkitLineClamp'
1739
+ }
1740
+ });
1735
1741
 
1736
1742
  const View = styled__default.default.div`
1737
1743
  ${compose(layout, color, flexbox, background, border, position, shadow)}
@@ -3610,7 +3616,7 @@ const Unit = ({
3610
3616
  children: children
3611
3617
  });
3612
3618
  };
3613
- var index$1 = Object.assign(Grid, {
3619
+ var index = Object.assign(Grid, {
3614
3620
  Unit
3615
3621
  });
3616
3622
 
@@ -3985,7 +3991,7 @@ const Item = ({
3985
3991
  ...props,
3986
3992
  children: children
3987
3993
  });
3988
- var index = Object.assign(Stack, {
3994
+ var Stack$1 = Object.assign(Stack, {
3989
3995
  Item
3990
3996
  });
3991
3997
 
@@ -4115,6 +4121,35 @@ const TextView = ({
4115
4121
  children: text
4116
4122
  });
4117
4123
 
4124
+ const ChipGroupView = ({
4125
+ view: {
4126
+ size = 'm',
4127
+ gapX = 1,
4128
+ gapY = 1,
4129
+ chips = []
4130
+ }
4131
+ }) => /*#__PURE__*/jsxRuntimeExports.jsx(Stack$1, {
4132
+ gapX: gapX,
4133
+ gapY: gapY,
4134
+ children: /*#__PURE__*/jsxRuntimeExports.jsx(ItemList, {
4135
+ items: chips,
4136
+ renderItem: ({
4137
+ text,
4138
+ variant
4139
+ }) => /*#__PURE__*/jsxRuntimeExports.jsx(Chip, {
4140
+ size: size,
4141
+ variant: variant,
4142
+ children: text
4143
+ }),
4144
+ renderItemWrapper: (children, {
4145
+ text,
4146
+ variant
4147
+ }, i) => /*#__PURE__*/jsxRuntimeExports.jsx(Stack$1.Item, {
4148
+ children: children
4149
+ }, `${text}-${variant}-${i}`)
4150
+ })
4151
+ });
4152
+
4118
4153
  const EnigmaUI = ({
4119
4154
  section: {
4120
4155
  views,
@@ -4149,7 +4184,8 @@ const getLayoutComponent = layoutContainer => {
4149
4184
  const getViewComponent = viewContainer => {
4150
4185
  const renderableViewComponent = {
4151
4186
  TextView: TextView,
4152
- ImageView: ImageView
4187
+ ImageView: ImageView,
4188
+ ChipGroupView: ChipGroupView
4153
4189
  };
4154
4190
  const ViewComponent = renderableViewComponent[viewContainer.viewComponentType];
4155
4191
  return ViewComponent;
@@ -4661,22 +4697,27 @@ exports.Button = Button;
4661
4697
  exports.Chip = Chip;
4662
4698
  exports.EnigmaUI = EnigmaUI;
4663
4699
  exports.GradientText = GradientText;
4664
- exports.Grid = index$1;
4700
+ exports.Grid = index;
4665
4701
  exports.IconButton = IconButton;
4666
4702
  exports.IconToggleButton = IconToggleButton;
4667
4703
  exports.Image = Image;
4668
4704
  exports.ItemList = ItemList;
4669
4705
  exports.Space = Space;
4670
4706
  exports.Spinner = Spinner;
4671
- exports.Stack = index;
4707
+ exports.Stack = Stack$1;
4672
4708
  exports.StyledIcon = StyledIcon;
4673
4709
  exports.Text = Text;
4674
4710
  exports.ThemeProvider = ThemeProvider;
4675
4711
  exports.UnstyledButton = UnstyledButton;
4676
4712
  exports.View = View;
4713
+ exports.lineClamp = lineClamp;
4714
+ exports.sx = sx;
4715
+ exports.textDecoration = textDecoration;
4677
4716
  exports.theme = theme;
4678
4717
  exports.useDevice = useDevice;
4679
4718
  exports.useOutsideClick = useOutsideClick;
4680
4719
  exports.useProvidedOrCreatedRef = useProvidedOrCreatedRef;
4681
4720
  exports.useResize = useResize;
4682
4721
  exports.useToggleHandler = useToggleHandler;
4722
+ exports.whiteSpace = whiteSpace;
4723
+ exports.wordBreak = wordBreak;
@@ -27,5 +27,9 @@ type WordBreakProps<ThemeType extends Theme = RequiredTheme> = {
27
27
  wordBreak?: ResponsiveValue<CSS.Property.WordBreak, ThemeType> | undefined;
28
28
  };
29
29
  declare const wordBreak: import("styled-system").styleFn;
30
- export { sx, textDecoration, whiteSpace, wordBreak };
31
- export type { BetterSystemStyleObject, AsProp, TextDecorationProps, WhiteSpaceProps, WordBreakProps };
30
+ type LineClampProps<ThemeType extends Theme = RequiredTheme> = {
31
+ lineClamp?: ResponsiveValue<CSS.Property.LineClamp, ThemeType> | undefined;
32
+ };
33
+ declare const lineClamp: import("styled-system").styleFn;
34
+ export { sx, textDecoration, whiteSpace, wordBreak, lineClamp };
35
+ export type { BetterSystemStyleObject, AsProp, TextDecorationProps, WhiteSpaceProps, WordBreakProps, LineClampProps };
@@ -56,8 +56,8 @@ const Item = ({
56
56
  ...props,
57
57
  children: children
58
58
  });
59
- var index = Object.assign(Stack, {
59
+ var Stack$1 = Object.assign(Stack, {
60
60
  Item
61
61
  });
62
62
 
63
- export { index as default };
63
+ export { Stack$1 as default };
@@ -4,6 +4,7 @@ import useMediaQuery from '../../hook/useMediaQuery.js';
4
4
  import SingleColumnLayout from '../Layout/SingleColumnLayout/index.js';
5
5
  import ImageView from '../View/ImageView/index.js';
6
6
  import TextView from '../View/TextView/index.js';
7
+ import ChipGroupView from '../View/ChipGroupView/index.js';
7
8
  import { j as jsxRuntimeExports } from '../../node_modules/react/jsx-runtime.js';
8
9
 
9
10
  const EnigmaUI = ({
@@ -40,7 +41,8 @@ const getLayoutComponent = layoutContainer => {
40
41
  const getViewComponent = viewContainer => {
41
42
  const renderableViewComponent = {
42
43
  TextView: TextView,
43
- ImageView: ImageView
44
+ ImageView: ImageView,
45
+ ChipGroupView: ChipGroupView
44
46
  };
45
47
  const ViewComponent = renderableViewComponent[viewContainer.viewComponentType];
46
48
  return ViewComponent;
@@ -0,0 +1,51 @@
1
+ import '../../../core/Button/index.js';
2
+ import Chip from '../../../core/Chip/index.js';
3
+ import '../../../core/GradientText/index.js';
4
+ import '../../../core/Grid/index.js';
5
+ import '../../../core/IconButton/index.js';
6
+ import '../../../core/IconToggleButton/index.js';
7
+ import '../../../core/Image/index.js';
8
+ import ItemList from '../../../core/ItemList/index.js';
9
+ import '../../../core/Space/index.js';
10
+ import '../../../core/Spinner/index.js';
11
+ import Stack from '../../../core/Stack/index.js';
12
+ import '../../../core/View/index.js';
13
+ import { j as jsxRuntimeExports } from '../../../node_modules/react/jsx-runtime.js';
14
+ import '../../../core/Text/index.js';
15
+ import 'styled-components';
16
+ import '../../../packages/token-studio/esm/token/typography/index.js';
17
+ import '../../../core/_UnstyledButton.js';
18
+ import 'react';
19
+ import '../../../node_modules/lodash.debounce/index.js';
20
+ import '../../../utils/styled-system/index.js';
21
+
22
+ const ChipGroupView = ({
23
+ view: {
24
+ size = 'm',
25
+ gapX = 1,
26
+ gapY = 1,
27
+ chips = []
28
+ }
29
+ }) => /*#__PURE__*/jsxRuntimeExports.jsx(Stack, {
30
+ gapX: gapX,
31
+ gapY: gapY,
32
+ children: /*#__PURE__*/jsxRuntimeExports.jsx(ItemList, {
33
+ items: chips,
34
+ renderItem: ({
35
+ text,
36
+ variant
37
+ }) => /*#__PURE__*/jsxRuntimeExports.jsx(Chip, {
38
+ size: size,
39
+ variant: variant,
40
+ children: text
41
+ }),
42
+ renderItemWrapper: (children, {
43
+ text,
44
+ variant
45
+ }, i) => /*#__PURE__*/jsxRuntimeExports.jsx(Stack.Item, {
46
+ children: children
47
+ }, `${text}-${variant}-${i}`)
48
+ })
49
+ });
50
+
51
+ export { ChipGroupView as default };
package/esm/index.js CHANGED
@@ -21,3 +21,4 @@ export { default as useProvidedOrCreatedRef } from './hook/useProvidedOrCreatedR
21
21
  export { default as useResize } from './hook/useResize.js';
22
22
  export { default as useToggleHandler } from './hook/useToggleHandler.js';
23
23
  export { default as theme } from './theme/index.js';
24
+ export { lineClamp, sx, textDecoration, whiteSpace, wordBreak } from './utils/styled-system/index.js';
@@ -23,5 +23,11 @@ const wordBreak = system({
23
23
  scale: 'wordBreak'
24
24
  }
25
25
  });
26
+ const lineClamp = system({
27
+ lineClamp: {
28
+ property: 'WebkitLineClamp',
29
+ scale: 'WebkitLineClamp'
30
+ }
31
+ });
26
32
 
27
- export { sx, textDecoration, whiteSpace, wordBreak };
33
+ export { lineClamp, sx, textDecoration, whiteSpace, wordBreak };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@teamturing/react-kit",
3
- "version": "2.1.1",
3
+ "version": "2.3.0",
4
4
  "description": "React components, hooks for create teamturing web application",
5
5
  "author": "Sungchang Park <psch300@gmail.com> (https://github.com/psch300)",
6
6
  "homepage": "https://github.com/weareteamturing/bombe#readme",
@@ -55,5 +55,5 @@
55
55
  "lodash.throttle": "^4.1.1",
56
56
  "styled-system": "^5.1.5"
57
57
  },
58
- "gitHead": "a1f6672a71b9573e70b1105a11d8f52650bfba64"
58
+ "gitHead": "240a735943c47a590aff021d5e49f99e4138a00e"
59
59
  }