widenarrow-ui 0.1.10 → 0.1.12

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 (65) hide show
  1. package/.eslintrc +13 -1
  2. package/lib/components/Box/Box.d.ts +0 -2
  3. package/lib/components/Button/Button.d.ts +7 -13
  4. package/lib/components/Button/Button.stories.d.ts +1 -1
  5. package/lib/components/Checkbox/Checkbox.d.ts +0 -1
  6. package/lib/components/Icon/Icon.d.ts +4 -6
  7. package/lib/components/IconButton/IconButton.d.ts +19 -0
  8. package/lib/components/IconButton/IconButton.stories.d.ts +8 -0
  9. package/lib/components/IconButton/index.d.ts +1 -0
  10. package/lib/components/InlineButton/InlineButton.d.ts +21 -0
  11. package/lib/components/InlineButton/InlineButton.stories.d.ts +11 -0
  12. package/lib/components/InlineButton/index.d.ts +1 -0
  13. package/lib/components/Separator/Separator.d.ts +13 -0
  14. package/lib/components/Separator/Separator.stories.d.ts +9 -0
  15. package/lib/components/Separator/index.d.ts +1 -0
  16. package/lib/components/SolidSpinner/SolidSpinner.d.ts +3 -3
  17. package/lib/components/ToolTip/ToolTip.d.ts +23 -0
  18. package/lib/components/ToolTip/index.d.ts +1 -0
  19. package/lib/components/Typography/Typography.d.ts +0 -1
  20. package/lib/constants.d.ts +32 -55
  21. package/lib/index.d.ts +6 -2
  22. package/lib/index.esm.js +351 -251
  23. package/lib/index.esm.js.map +1 -1
  24. package/lib/index.js +519 -416
  25. package/lib/index.js.map +1 -1
  26. package/lib/types/styling.d.ts +13 -0
  27. package/package.json +6 -3
  28. package/rollup.config.mjs +2 -2
  29. package/src/components/Box/Box.module.scss +0 -31
  30. package/src/components/Box/Box.stories.tsx +5 -2
  31. package/src/components/Box/Box.tsx +4 -6
  32. package/src/components/Button/Button.module.scss +27 -178
  33. package/src/components/Button/Button.stories.tsx +14 -11
  34. package/src/components/Button/Button.tsx +43 -73
  35. package/src/components/Checkbox/Checkbox.module.scss +0 -14
  36. package/src/components/Checkbox/Checkbox.tsx +2 -5
  37. package/src/components/Icon/Icon.module.scss +26 -63
  38. package/src/components/Icon/Icon.stories.tsx +4 -10
  39. package/src/components/Icon/Icon.tsx +38 -26
  40. package/src/components/Icon/Iconography.tsx +3 -3
  41. package/src/components/Icon/getIconFromConstant.tsx +39 -33
  42. package/src/components/IconButton/IconButton.module.scss +115 -0
  43. package/src/components/IconButton/IconButton.stories.tsx +39 -0
  44. package/src/components/IconButton/IconButton.tsx +103 -0
  45. package/src/components/IconButton/index.tsx +1 -0
  46. package/src/components/InlineButton/InlineButton.module.scss +164 -0
  47. package/src/components/InlineButton/InlineButton.stories.tsx +71 -0
  48. package/src/components/InlineButton/InlineButton.tsx +98 -0
  49. package/src/components/InlineButton/index.tsx +1 -0
  50. package/src/components/Separator/Separator.module.scss +19 -0
  51. package/src/components/Separator/Separator.stories.tsx +40 -0
  52. package/src/components/Separator/Separator.tsx +42 -0
  53. package/src/components/Separator/index.tsx +1 -0
  54. package/src/components/SolidSpinner/SolidSpinner.module.scss +10 -11
  55. package/src/components/SolidSpinner/SolidSpinner.stories.tsx +2 -2
  56. package/src/components/SolidSpinner/SolidSpinner.tsx +19 -21
  57. package/src/components/ToolTip/ToolTip.module.scss +25 -0
  58. package/src/components/ToolTip/ToolTip.tsx +76 -0
  59. package/src/components/ToolTip/index.tsx +1 -0
  60. package/src/components/Typography/Typography.tsx +2 -8
  61. package/src/constants.ts +33 -60
  62. package/src/index.ts +29 -4
  63. package/src/styles/mixins.scss +88 -342
  64. package/src/types/styling.ts +18 -0
  65. package/types/ramda/index.d.ts +0 -1
package/.eslintrc CHANGED
@@ -1,9 +1,21 @@
1
1
  {
2
2
  "extends": ["plugin:storybook/recommended", "plugin:@typescript-eslint/recommended"],
3
+ "rules": {
4
+ "no-undef": ["warn", { "typeof": true }],
5
+ "no-console": "warn",
6
+ "spaced-comment": "warn",
7
+ "@typescript-eslint/no-use-before-define": "warn",
8
+ "@typescript-eslint/no-unused-vars": "warn",
9
+ "no-unused-expressions": ["error", { "allowTernary": true, "allowShortCircuit": true }]
10
+ },
11
+ "env": {
12
+ "jest": true,
13
+ "browser": true
14
+ },
3
15
  "settings": {
4
16
  "import/resolver": {
5
17
  "node": {
6
- "extensions": [".js",".jsx",".ts",".tsx"]
18
+ "extensions": [".js", ".jsx", ".ts", ".tsx"]
7
19
  }
8
20
  }
9
21
  }
@@ -18,8 +18,6 @@ interface Props extends MarginInterface, PaddingInterface, FlexStylingInterface
18
18
  * Max width in percentage e.g 50 = 50%
19
19
  */
20
20
  maxWidth?: string;
21
- withSeparatorRight?: boolean;
22
- withSeparatorLeft?: boolean;
23
21
  style?: CSSProperties;
24
22
  onClickCallback?: () => void;
25
23
  }
@@ -1,27 +1,21 @@
1
1
  import { FC, ReactNode, MouseEvent, CSSProperties } from 'react';
2
- import { ButtonTypes } from 'src/constants';
2
+ import { HierarchyTypes, SizeTypes, IconTypes } from 'src/constants';
3
3
  interface Props {
4
4
  text?: string;
5
5
  onClickCallback?: (e: MouseEvent<HTMLButtonElement>) => void;
6
- color?: ButtonTypes.PRIMARY | ButtonTypes.SECONDARY | ButtonTypes.TERTIARY | ButtonTypes.WHITE;
7
- size?: ButtonTypes.SMALL | ButtonTypes.MEDIUM | ButtonTypes.LARGE | ButtonTypes.EXTRA_LARGE;
6
+ type?: HierarchyTypes.PRIMARY | HierarchyTypes.SECONDARY;
7
+ size?: SizeTypes.SMALL | SizeTypes.MEDIUM | SizeTypes.LARGE;
8
+ icon?: `${IconTypes}`;
9
+ withIconLeft?: boolean;
8
10
  disabled?: boolean;
9
11
  className?: string;
12
+ toolTip?: string;
10
13
  style?: CSSProperties;
11
- withoutTextOnSmall?: boolean;
12
- withSpaceBetween?: boolean;
13
- withSeparatorRight?: boolean;
14
- withSeparatorLeft?: boolean;
15
- withCounterbar?: boolean;
16
- withIconLeft?: boolean;
17
- inverted?: boolean;
18
- truncateText?: boolean;
14
+ withEllipsis?: boolean;
19
15
  rotateIcon?: boolean;
20
- icon?: string;
21
16
  id?: string | number;
22
17
  loading?: boolean;
23
18
  autoFocus?: boolean;
24
- counterbarPercent?: number;
25
19
  children?: ReactNode;
26
20
  ariaLabel?: string;
27
21
  tabIndex?: number;
@@ -5,7 +5,7 @@ export default meta;
5
5
  type Story = StoryObj<typeof Button>;
6
6
  export declare const Primary: Story;
7
7
  export declare const Secondary: Story;
8
- export declare const Tertiary: Story;
9
8
  export declare const WithIcon: Story;
9
+ export declare const WithChildren: Story;
10
10
  export declare const LoadingState: Story;
11
11
  export declare const Disabled: Story;
@@ -10,7 +10,6 @@ interface Props {
10
10
  checked: boolean;
11
11
  blocked?: boolean;
12
12
  indeterminate?: boolean;
13
- withSeparator?: boolean;
14
13
  wordWrap?: boolean;
15
14
  disabled?: boolean;
16
15
  isFake?: boolean;
@@ -1,14 +1,12 @@
1
1
  import { FC } from 'react';
2
- export interface Props {
3
- icon: string | null;
4
- fixedIconColor?: boolean;
2
+ import { IconStyleInterface, ColorStyleInterface, SizeStyleInterface } from 'src/types/styling';
3
+ export interface Props extends IconStyleInterface, ColorStyleInterface, SizeStyleInterface {
5
4
  rotateIcon?: boolean;
6
- rotateIconByDeg?: number;
7
- color?: string;
8
- size?: string;
5
+ rotateIconByDegree?: 0 | 45 | 90 | 135 | 180 | 225 | 270 | 315;
9
6
  disabled?: boolean;
10
7
  active?: boolean;
11
8
  className?: string;
9
+ toolTip?: string;
12
10
  }
13
11
  declare const Icon: FC<Props>;
14
12
  export default Icon;
@@ -0,0 +1,19 @@
1
+ import { MouseEvent } from 'react';
2
+ import { SizeTypes } from 'src/constants';
3
+ import { SizeStyleInterface, IconStyleInterface } from 'src/types/styling';
4
+ import { HierarchyTypes } from 'src/constants';
5
+ interface Props extends IconStyleInterface, SizeStyleInterface {
6
+ className?: string;
7
+ rotateIcon?: boolean;
8
+ rotateIconByDegree?: 0 | 45 | 90 | 135 | 180 | 225 | 270 | 315;
9
+ iconClassName?: string;
10
+ type?: HierarchyTypes.PRIMARY | HierarchyTypes.SECONDARY;
11
+ onClickCallback?: (e: MouseEvent<HTMLButtonElement>) => void;
12
+ iconSize?: `${SizeTypes}`;
13
+ href?: string;
14
+ disabled?: boolean;
15
+ toolTip?: string;
16
+ ariaLabel?: string;
17
+ }
18
+ declare const _default: import("react").NamedExoticComponent<Props>;
19
+ export default _default;
@@ -0,0 +1,8 @@
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
+ import IconButton from 'src/components/IconButton';
3
+ declare const meta: Meta<typeof IconButton>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof IconButton>;
6
+ export declare const Default: Story;
7
+ export declare const Primary: Story;
8
+ export declare const Secondary: Story;
@@ -0,0 +1 @@
1
+ export { default } from './IconButton';
@@ -0,0 +1,21 @@
1
+ import { ReactNode, MouseEvent } from 'react';
2
+ import { SizeTypes, IconTypes, HierarchyTypes } from 'src/constants';
3
+ interface Props {
4
+ text: string;
5
+ onClickCallback?: (e: MouseEvent<HTMLButtonElement>) => void;
6
+ className?: string;
7
+ children?: ReactNode;
8
+ icon?: `${IconTypes}`;
9
+ rotateIcon?: boolean;
10
+ iconClassName?: string;
11
+ withIconRight?: boolean;
12
+ type?: `${HierarchyTypes}`;
13
+ size?: SizeTypes.SMALL | SizeTypes.MEDIUM;
14
+ textClassName?: string;
15
+ withEllipsis?: boolean;
16
+ disabled?: boolean;
17
+ style?: object;
18
+ toolTip?: string;
19
+ }
20
+ declare const _default: import("react").NamedExoticComponent<Props>;
21
+ export default _default;
@@ -0,0 +1,11 @@
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
+ import InlineButton from 'src/components/InlineButton';
3
+ declare const meta: Meta<typeof InlineButton>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof InlineButton>;
6
+ export declare const Default: Story;
7
+ export declare const Primary: Story;
8
+ export declare const Secondary: Story;
9
+ export declare const Tertiary: Story;
10
+ export declare const DisabledState: Story;
11
+ export declare const TightContainer: Story;
@@ -0,0 +1 @@
1
+ export { default } from './InlineButton';
@@ -0,0 +1,13 @@
1
+ import { FC } from 'react';
2
+ import { MarginInterface, PaddingInterface } from 'src/types/styling';
3
+ import { SizeTypes } from 'src/constants';
4
+ interface Props extends MarginInterface, PaddingInterface {
5
+ className?: string;
6
+ color?: string;
7
+ size?: SizeTypes.SMALL | SizeTypes.MEDIUM | SizeTypes.LARGE;
8
+ }
9
+ interface Props {
10
+ className?: string;
11
+ }
12
+ declare const Separator: FC<Props>;
13
+ export default Separator;
@@ -0,0 +1,9 @@
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
+ import Separator from 'src/components/Separator';
3
+ declare const meta: Meta<typeof Separator>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof Separator>;
6
+ export declare const Default: Story;
7
+ export declare const SizeSmall: Story;
8
+ export declare const SizeMedium: Story;
9
+ export declare const SizeLarge: Story;
@@ -0,0 +1 @@
1
+ export { default } from './Separator';
@@ -1,8 +1,8 @@
1
1
  import { FC } from 'react';
2
- import { SpinnerTypes } from 'src/constants';
2
+ import { HierarchyTypes, SizeTypes } from 'src/constants';
3
3
  interface Props {
4
- color?: SpinnerTypes.BLUE | SpinnerTypes.WHITE;
5
- size?: SpinnerTypes.SMALL | SpinnerTypes.MEDIUM | SpinnerTypes.LARGE;
4
+ type?: HierarchyTypes.PRIMARY | HierarchyTypes.SECONDARY;
5
+ size?: SizeTypes.SMALL | SizeTypes.MEDIUM | SizeTypes.LARGE;
6
6
  disabled?: boolean;
7
7
  className?: string;
8
8
  label?: string;
@@ -0,0 +1,23 @@
1
+ import { FC, ReactNode } from 'react';
2
+ /**
3
+ |--------------------------------------------------
4
+ | This components extends the react-tooltip library.
5
+ | Full api documentation here:
6
+ | https://github.com/wwayne/react-tooltip
7
+ | https://react-tooltip.netlify.com/
8
+ |--------------------------------------------------
9
+ */
10
+ interface Props {
11
+ text?: string;
12
+ children?: string | number | ReactNode | null;
13
+ disabled?: boolean;
14
+ withEllipsis?: boolean;
15
+ className?: string;
16
+ toolTipClassName?: string;
17
+ id?: string;
18
+ offset?: number;
19
+ variant?: 'dark' | 'light';
20
+ placement?: 'top' | 'right' | 'bottom' | 'left';
21
+ }
22
+ declare const ToolTip: FC<Props>;
23
+ export default ToolTip;
@@ -0,0 +1 @@
1
+ export { default } from './ToolTip';
@@ -7,7 +7,6 @@ interface BaseProps extends MarginInterface, PaddingInterface {
7
7
  fontSize?: string;
8
8
  fontStyle?: string;
9
9
  color?: string;
10
- withSeparator?: boolean | undefined;
11
10
  meta?: boolean | undefined;
12
11
  error?: boolean | undefined;
13
12
  withBorderBottom?: boolean | undefined;
@@ -54,7 +54,7 @@ export declare enum IconTypes {
54
54
  DOTS_BACKGROUND = "iconDotsBackground",
55
55
  DOT_FILLED = "iconDotFilled",
56
56
  DOT_OUTLINED = "iconDotOutlined",
57
- DOWN = "Down",
57
+ DOWN = "iconDown",
58
58
  DOWNLOAD = "iconDownload",
59
59
  DUPLICATE = "iconDuplicate",
60
60
  EDIT = "iconEdit",
@@ -107,14 +107,14 @@ export declare enum IconTypes {
107
107
  NAVIGATE_DOWN_LARGE = "iconNavigateDownLarge",
108
108
  NAVIGATE_LEFT_LARGE = "iconNavigateLeftLarge",
109
109
  NAVIGATE_RIGHT_LARGE = "iconNavigateRightLarge",
110
- NEWS = "News",
110
+ NEWS = "iconNews",
111
111
  NEWSLETTER_CLOSED = "iconNewsLetterClosed",
112
112
  NEWSLETTER_OPENED = "iconNewsLetterOpened",
113
113
  NEWSLETTER_SENDER = "iconNewsLetterSender",
114
114
  NOTIFICATION = "iconNotification",
115
- NO_CHANGE = "NoChange",
116
- NO_DIRECTION = "NoDirection",
117
- OPEN_IN_NEW = "openInNew",
115
+ NO_CHANGE = "iconNoChange",
116
+ NO_DIRECTION = "iconNoDirection",
117
+ OPEN_IN_NEW = "iconOpenInNew",
118
118
  PALETTE = "iconPalette",
119
119
  PAUSE = "iconPause",
120
120
  PAUSE_CIRCLE = "iconPauseCircle",
@@ -140,10 +140,10 @@ export declare enum IconTypes {
140
140
  RESET = "iconReset",
141
141
  ROBOT = "iconRobot",
142
142
  RSS = "iconRss",
143
- SCHEDULE = "schedule",
143
+ SCHEDULE = "iconSchedule",
144
144
  SEARCH = "iconSearch",
145
145
  SEARCH_USER = "iconSearchUser",
146
- SEND = "send",
146
+ SEND = "iconSend",
147
147
  SEND_LIST = "iconSendList",
148
148
  SETTINGS_FILLED = "iconSettingsFilled",
149
149
  SETTINGS_OFF = "iconSettingsOff",
@@ -163,7 +163,7 @@ export declare enum IconTypes {
163
163
  TRIAL = "iconTrial",
164
164
  UNFOLD_LESS = "iconUnfoldLess",
165
165
  UNFOLD_MORE = "iconUnfoldMore",
166
- UP = "Up",
166
+ UP = "iconUp",
167
167
  UPLOAD = "iconUpload",
168
168
  USER = "iconUser",
169
169
  USERS = "iconUsers",
@@ -178,58 +178,35 @@ export declare enum IconTypes {
178
178
  ZOOM_IN = "iconZoomIn",
179
179
  ZOOM_OUT = "iconZoomOut"
180
180
  }
181
- export declare enum SpinnerTypes {
182
- BLUE = "colorBlue",
183
- LIGHT_BLUE = "colorLightBlue",
184
- WHITE = "colorWhite",
185
- GREY = "colorGrey",
186
- SMALL = "small",
187
- MEDIUM = "medium",
188
- LARGE = "large"
181
+ export declare enum HierarchyTypes {
182
+ PRIMARY = "primary",
183
+ SECONDARY = "secondary",
184
+ TERTIARY = "tertiary"
189
185
  }
190
- export declare enum ButtonTypes {
191
- CURRENT_COLOR = "currentColor",
192
- PRIMARY = "colorPrimary",
193
- SECONDARY = "colorSecondary",
194
- TERTIARY = "colorTertiary",
195
- DARK = "colorDark",
196
- WHITE = "colorWhite",
197
- SMALL = "buttonSmall",
198
- MEDIUM = "buttonMedium",
199
- LARGE = "buttonLarge",
200
- EXTRA_LARGE = "buttonExtraLarge"
186
+ export declare enum ColorTypes {
187
+ WHITE = "white",
188
+ BLUE = "blue",
189
+ LIGHT_BLUE = "lightBlue",
190
+ GREEN = "green",
191
+ RED = "red",
192
+ ORANGE = "orange",
193
+ YELLOW = "yellow",
194
+ GREY_1 = "grey1",
195
+ GREY_2 = "grey2",
196
+ GREY_3 = "grey3",
197
+ GREY_4 = "grey4",
198
+ GREY_5 = "grey5",
199
+ GREY_6 = "grey6",
200
+ GREY_7 = "grey7",
201
+ BLACK = "black",
202
+ INHERIT = "inherit",
203
+ CURRENT = "current"
201
204
  }
202
- export declare enum ContentWrapperSizes {
205
+ export declare enum SizeTypes {
203
206
  SMALL = "small",
204
207
  MEDIUM = "medium",
205
208
  LARGE = "large",
206
- CUSTOM = "custom"
207
- }
208
- export declare enum BadgeTypes {
209
- BLUE = "colorBadgeBlue",
210
- ORANGE = "colorBadgeOrange",
211
- DARK = "colorBadgeDark",
212
- GREY = "colorBadgeGrey"
213
- }
214
- export declare enum LinkTypes {
215
- PRIMARY = "colorPrimary",
216
- SECONDARY = "colorSecondary",
217
- WHITE = "colorWhite"
218
- }
219
- export declare enum IconSizes {
220
- AUTO = "iconAuto",
221
- SMALL = "iconSmall",
222
- MEDIUM = "iconMedium",
223
- LARGE = "iconLarge"
224
- }
225
- export declare enum OpenOriginTypes {
226
- TOP_LEFT = "topLeft",
227
- TOP_CENTER = "topCenter",
228
- TOP_RIGHT = "topRight",
229
- CENTER_CENTER = "centerCenter",
230
- BOTTOM_LEFT = "bottomLeft",
231
- BOTTOM_CENTER = "bottomCenter",
232
- BOTTOM_RIGHT = "bottomRight"
209
+ AUTO = "auto"
233
210
  }
234
211
  export declare enum FontFamilyTypes {
235
212
  ASSISTANT = "",
package/lib/index.d.ts CHANGED
@@ -1,7 +1,11 @@
1
- export { default as Button } from 'src/components/Button/Button';
2
- export { default as Icon } from 'src/components/Icon/Icon';
3
1
  export { default as Checkbox } from 'src/components/Checkbox/Checkbox';
4
2
  export { default as SolidSpinner } from 'src/components/SolidSpinner/SolidSpinner';
3
+ export { default as Icon } from 'src/components/Icon/Icon';
4
+ export { default as Button } from 'src/components/Button/Button';
5
+ export { default as InlineButton } from 'src/components/InlineButton/InlineButton';
6
+ export { default as IconButton } from 'src/components/IconButton/IconButton';
7
+ export { default as Separator } from 'src/components/Separator/Separator';
5
8
  export { default as Box } from 'src/components/Box/Box';
6
9
  export { default as Grid } from 'src/components/Grid/Grid';
7
10
  export { Heading, Label, Paragraph, Span } from 'src/components/Typography/Typography';
11
+ export { AppColors, ColorTypes, HierarchyTypes, IconTypes, SizeTypes } from 'src/constants';