@drivy/cobalt 2.6.0 → 2.8.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 (35) hide show
  1. package/cjs/tokens/icons.js +1 -0
  2. package/cjs/tokens/icons.js.map +1 -1
  3. package/components/Buttons/Button/ButtonComponent.js +22 -0
  4. package/components/Buttons/Button/ButtonComponent.js.map +1 -0
  5. package/components/Buttons/Button/index.js +49 -0
  6. package/components/Buttons/Button/index.js.map +1 -0
  7. package/components/Buttons/Button/type.js +4 -0
  8. package/components/Buttons/Button/type.js.map +1 -0
  9. package/components/Buttons/ButtonsGroup.js +3 -1
  10. package/components/Buttons/ButtonsGroup.js.map +1 -1
  11. package/components/Icon/__generated__/SeatbeltIcon.js +21 -0
  12. package/components/Icon/__generated__/SeatbeltIcon.js.map +1 -0
  13. package/icons/index.js +1 -0
  14. package/icons/index.js.map +1 -1
  15. package/icons/seatbelt.js +4 -0
  16. package/icons/seatbelt.js.map +1 -0
  17. package/icons/seatbelt.svg +1 -0
  18. package/index.js +2 -1
  19. package/index.js.map +1 -1
  20. package/package.json +7 -7
  21. package/styles/components/Buttons/Button/index.scss +140 -0
  22. package/styles/components/Buttons/index.scss +3 -8
  23. package/tokens/icons.js +1 -0
  24. package/tokens/icons.js.map +1 -1
  25. package/types/src/components/Buttons/Button/ButtonComponent.d.ts +11 -0
  26. package/types/src/components/Buttons/Button/index.d.ts +9 -0
  27. package/types/src/components/Buttons/Button/type.d.ts +48 -0
  28. package/types/src/components/Form/Autocomplete/index.d.ts +1 -1
  29. package/types/src/components/Form/TagsInput.d.ts +1 -1
  30. package/types/src/components/Form/TextInput.d.ts +1 -1
  31. package/types/src/components/Icon/__generated__/SeatbeltIcon.d.ts +10 -0
  32. package/types/src/components/Icon/__generated__/index.d.ts +1 -0
  33. package/types/src/components/Icon/index.d.ts +1 -1
  34. package/types/src/icons/index.d.ts +1 -0
  35. package/types/src/tokens/index.d.ts +1 -0
@@ -239,6 +239,7 @@ const icons = {
239
239
  searchCar: "search-car.svg",
240
240
  searchPeople: "search-people.svg",
241
241
  search: "search.svg",
242
+ seatbelt: "seatbelt.svg",
242
243
  sedan: "sedan.svg",
243
244
  send: "send.svg",
244
245
  serviceBattery: "service-battery.svg",
@@ -1 +1 @@
1
- {"version":3,"file":"icons.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"icons.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,22 @@
1
+ import React, { forwardRef } from 'react';
2
+ import '../../Icon/index.js';
3
+ import LoadingIcon from '../../Icon/__generated__/LoadingIcon.js';
4
+
5
+ const InnerButton = ({ children, loading, }) => (React.createElement(React.Fragment, null,
6
+ loading && React.createElement(LoadingIcon, { className: "cobalt-button__loading-icon" }),
7
+ children));
8
+ const ButtonBase = forwardRef((props, ref) => {
9
+ const { disabled, loading, children, ...restProps } = props;
10
+ return (React.createElement("button", { ref: ref, "aria-disabled": disabled || loading, "aria-busy": loading, disabled: disabled || loading, ...restProps },
11
+ React.createElement(InnerButton, { loading: loading }, children)));
12
+ });
13
+ ButtonBase.displayName = "ButtonBase";
14
+ const ButtonLinkBase = forwardRef((props, ref) => {
15
+ const { disabled, target, rel, loading, children, ...restProps } = props;
16
+ return (React.createElement("a", { ref: ref, "aria-disabled": disabled || loading, "aria-busy": loading, "data-disabled": disabled || loading, target: target, rel: target === "_blank" && !rel ? "noopener noreferrer" : rel, ...restProps },
17
+ React.createElement(InnerButton, { loading: loading }, children)));
18
+ });
19
+ ButtonLinkBase.displayName = "ButtonLinkBase";
20
+
21
+ export { ButtonBase, ButtonLinkBase };
22
+ //# sourceMappingURL=ButtonComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ButtonComponent.js","sources":["../../../../src/components/Buttons/Button/ButtonComponent.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\"\nimport { LoadingIcon } from \"../../Icon\"\nimport { ButtonComponentProps, ButtonLinkComponentProps } from \"./type\"\n\nconst InnerButton = ({\n children,\n loading,\n}: {\n children:\n | ButtonComponentProps[\"children\"]\n | ButtonLinkComponentProps[\"children\"]\n loading: ButtonComponentProps[\"loading\"] | ButtonLinkComponentProps[\"loading\"]\n}) => (\n <>\n {loading && <LoadingIcon className=\"cobalt-button__loading-icon\" />}\n {children}\n </>\n)\n\nexport const ButtonBase = forwardRef<HTMLButtonElement, ButtonComponentProps>(\n (props: ButtonComponentProps, ref) => {\n const { disabled, loading, children, ...restProps } = props\n return (\n <button\n ref={ref}\n aria-disabled={disabled || loading}\n aria-busy={loading}\n disabled={disabled || loading}\n {...restProps}\n >\n <InnerButton loading={loading}>{children}</InnerButton>\n </button>\n )\n }\n)\nButtonBase.displayName = \"ButtonBase\"\n\nexport const ButtonLinkBase = forwardRef<\n HTMLAnchorElement,\n ButtonLinkComponentProps\n>((props: ButtonLinkComponentProps, ref) => {\n const { disabled, target, rel, loading, children, ...restProps } = props\n return (\n <a\n ref={ref}\n aria-disabled={disabled || loading}\n aria-busy={loading}\n data-disabled={disabled || loading}\n target={target}\n rel={target === \"_blank\" && !rel ? \"noopener noreferrer\" : rel}\n {...restProps}\n >\n <InnerButton loading={loading}>{children}</InnerButton>\n </a>\n )\n})\nButtonLinkBase.displayName = \"ButtonLinkBase\"\n"],"names":[],"mappings":";;;;AAIA,MAAM,WAAW,GAAG,CAAC,EACnB,QAAQ,EACR,OAAO,GAMR,MACC,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA;AACG,IAAA,OAAO,IAAI,KAAC,CAAA,aAAA,CAAA,WAAW,IAAC,SAAS,EAAC,6BAA6B,EAAG,CAAA;IAClE,QAAQ,CACR,CACJ,CAAA;AAEY,MAAA,UAAU,GAAG,UAAU,CAClC,CAAC,KAA2B,EAAE,GAAG,KAAI;AACnC,IAAA,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,GAAG,KAAK,CAAA;AAC3D,IAAA,QACE,KACE,CAAA,aAAA,CAAA,QAAA,EAAA,EAAA,GAAG,EAAE,GAAG,EAAA,eAAA,EACO,QAAQ,IAAI,OAAO,EACvB,WAAA,EAAA,OAAO,EAClB,QAAQ,EAAE,QAAQ,IAAI,OAAO,KACzB,SAAS,EAAA;QAEb,KAAC,CAAA,aAAA,CAAA,WAAW,EAAC,EAAA,OAAO,EAAE,OAAO,IAAG,QAAQ,CAAe,CAChD,EACV;AACH,CAAC,EACF;AACD,UAAU,CAAC,WAAW,GAAG,YAAY,CAAA;AAExB,MAAA,cAAc,GAAG,UAAU,CAGtC,CAAC,KAA+B,EAAE,GAAG,KAAI;AACzC,IAAA,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,GAAG,KAAK,CAAA;AACxE,IAAA,QACE,KACE,CAAA,aAAA,CAAA,GAAA,EAAA,EAAA,GAAG,EAAE,GAAG,mBACO,QAAQ,IAAI,OAAO,EAAA,WAAA,EACvB,OAAO,EACH,eAAA,EAAA,QAAQ,IAAI,OAAO,EAClC,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,KAAK,QAAQ,IAAI,CAAC,GAAG,GAAG,qBAAqB,GAAG,GAAG,KAC1D,SAAS,EAAA;QAEb,KAAC,CAAA,aAAA,CAAA,WAAW,EAAC,EAAA,OAAO,EAAE,OAAO,IAAG,QAAQ,CAAe,CACrD,EACL;AACH,CAAC,EAAC;AACF,cAAc,CAAC,WAAW,GAAG,gBAAgB;;;;"}
@@ -0,0 +1,49 @@
1
+ import React, { forwardRef } from 'react';
2
+ import cx from 'classnames';
3
+ import { isLinkProps } from './type.js';
4
+ import { ButtonLinkBase, ButtonBase } from './ButtonComponent.js';
5
+ import '../../Icon/index.js';
6
+ import ChevronRightIcon from '../../Icon/__generated__/ChevronRightIcon.js';
7
+
8
+ const getComputedClassName = ({ className, variant, size, destructive, primary, text, isIconOnly, fullWidth, }) => {
9
+ return cx(className, "cobalt-button", {
10
+ "cobalt-button--primary": primary,
11
+ "cobalt-button--destructive": destructive,
12
+ "cobalt-button--text": text,
13
+ "cobalt-button--icon-only": isIconOnly,
14
+ "cobalt-button--small": size === "small",
15
+ "cobalt-button--large": size === "large",
16
+ "cobalt-button--warning": variant === "warning",
17
+ "cobalt-button--secondary": variant === "secondary",
18
+ "cobalt-button--tertiary": variant === "tertiary",
19
+ "cobalt-button--business": variant === "business",
20
+ "cobalt-button--success": variant === "success",
21
+ "cobalt-button--neutral": variant === "neutral",
22
+ "c-w-full": fullWidth,
23
+ });
24
+ };
25
+ const Button = forwardRef((props, ref) => {
26
+ const { children, className, variant, size, destructive, primary, text, icon, fullWidth, ...restProps } = props;
27
+ const computedClassName = getComputedClassName({
28
+ className,
29
+ variant,
30
+ size,
31
+ destructive,
32
+ primary,
33
+ text,
34
+ fullWidth,
35
+ isIconOnly: !!icon && !children,
36
+ });
37
+ const content = (React.createElement(React.Fragment, null,
38
+ icon,
39
+ children && React.createElement("span", null, children),
40
+ text && children ? React.createElement(ChevronRightIcon, null) : null));
41
+ if (isLinkProps(restProps)) {
42
+ return (React.createElement(ButtonLinkBase, { ...restProps, className: computedClassName, ref: ref }, content));
43
+ }
44
+ return (React.createElement(ButtonBase, { ...restProps, className: computedClassName, ref: ref }, content));
45
+ });
46
+ Button.displayName = "Button";
47
+
48
+ export { Button as default };
49
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/Buttons/Button/index.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\"\nimport cx from \"classnames\"\nimport {\n ButtonComponentProps,\n ButtonLinkComponentProps,\n ButtonProps,\n isLinkProps,\n} from \"./type\"\nimport { ButtonLinkBase, ButtonBase } from \"./ButtonComponent\"\nimport { ChevronRightIcon } from \"../../Icon\"\n\nconst getComputedClassName = ({\n className,\n variant,\n size,\n destructive,\n primary,\n text,\n isIconOnly,\n fullWidth,\n}: {\n className?: ButtonProps[\"className\"]\n variant?: ButtonProps[\"variant\"]\n size?: ButtonProps[\"size\"]\n destructive?: ButtonProps[\"destructive\"]\n primary?: ButtonProps[\"primary\"]\n text?: ButtonProps[\"text\"]\n isIconOnly?: boolean\n fullWidth?: ButtonProps[\"fullWidth\"]\n}) => {\n return cx(className, \"cobalt-button\", {\n \"cobalt-button--primary\": primary,\n \"cobalt-button--destructive\": destructive,\n \"cobalt-button--text\": text,\n \"cobalt-button--icon-only\": isIconOnly,\n \"cobalt-button--small\": size === \"small\",\n \"cobalt-button--large\": size === \"large\",\n \"cobalt-button--warning\": variant === \"warning\",\n \"cobalt-button--secondary\": variant === \"secondary\",\n \"cobalt-button--tertiary\": variant === \"tertiary\",\n \"cobalt-button--business\": variant === \"business\",\n \"cobalt-button--success\": variant === \"success\",\n \"cobalt-button--neutral\": variant === \"neutral\",\n \"c-w-full\": fullWidth,\n })\n}\n\ninterface ButtonOverloads {\n (\n props: Exclude<ButtonProps, ButtonComponentProps> &\n React.RefAttributes<HTMLAnchorElement>\n ): React.ReactElement\n (\n props: Exclude<ButtonProps, ButtonLinkComponentProps> &\n React.RefAttributes<HTMLButtonElement>\n ): React.ReactElement\n displayName?: string\n}\n\nconst Button = forwardRef<HTMLButtonElement | HTMLAnchorElement, ButtonProps>(\n (props, ref) => {\n const {\n children,\n className,\n variant,\n size,\n destructive,\n primary,\n text,\n icon,\n fullWidth,\n ...restProps\n } = props\n\n const computedClassName = getComputedClassName({\n className,\n variant,\n size,\n destructive,\n primary,\n text,\n fullWidth,\n isIconOnly: !!icon && !children,\n })\n\n const content = (\n <>\n {icon}\n {children && <span>{children}</span>}\n {text && children ? <ChevronRightIcon /> : null}\n </>\n )\n\n if (isLinkProps(restProps)) {\n return (\n <ButtonLinkBase\n {...(restProps as ButtonLinkComponentProps)}\n className={computedClassName}\n ref={ref as React.ForwardedRef<HTMLAnchorElement>}\n >\n {content}\n </ButtonLinkBase>\n )\n }\n\n return (\n <ButtonBase\n {...(restProps as ButtonComponentProps)}\n className={computedClassName}\n ref={ref as React.ForwardedRef<HTMLButtonElement>}\n >\n {content}\n </ButtonBase>\n )\n }\n) as ButtonOverloads\n\nButton.displayName = \"Button\"\n\nexport default Button\n"],"names":[],"mappings":";;;;;;;AAWA,MAAM,oBAAoB,GAAG,CAAC,EAC5B,SAAS,EACT,OAAO,EACP,IAAI,EACJ,WAAW,EACX,OAAO,EACP,IAAI,EACJ,UAAU,EACV,SAAS,GAUV,KAAI;AACH,IAAA,OAAO,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE;AACpC,QAAA,wBAAwB,EAAE,OAAO;AACjC,QAAA,4BAA4B,EAAE,WAAW;AACzC,QAAA,qBAAqB,EAAE,IAAI;AAC3B,QAAA,0BAA0B,EAAE,UAAU;QACtC,sBAAsB,EAAE,IAAI,KAAK,OAAO;QACxC,sBAAsB,EAAE,IAAI,KAAK,OAAO;QACxC,wBAAwB,EAAE,OAAO,KAAK,SAAS;QAC/C,0BAA0B,EAAE,OAAO,KAAK,WAAW;QACnD,yBAAyB,EAAE,OAAO,KAAK,UAAU;QACjD,yBAAyB,EAAE,OAAO,KAAK,UAAU;QACjD,wBAAwB,EAAE,OAAO,KAAK,SAAS;QAC/C,wBAAwB,EAAE,OAAO,KAAK,SAAS;AAC/C,QAAA,UAAU,EAAE,SAAS;AACtB,KAAA,CAAC,CAAA;AACJ,CAAC,CAAA;AAcK,MAAA,MAAM,GAAG,UAAU,CACvB,CAAC,KAAK,EAAE,GAAG,KAAI;IACb,MAAM,EACJ,QAAQ,EACR,SAAS,EACT,OAAO,EACP,IAAI,EACJ,WAAW,EACX,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,GAAG,SAAS,EACb,GAAG,KAAK,CAAA;IAET,MAAM,iBAAiB,GAAG,oBAAoB,CAAC;QAC7C,SAAS;QACT,OAAO;QACP,IAAI;QACJ,WAAW;QACX,OAAO;QACP,IAAI;QACJ,SAAS;AACT,QAAA,UAAU,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ;AAChC,KAAA,CAAC,CAAA;IAEF,MAAM,OAAO,IACX,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA;QACG,IAAI;QACJ,QAAQ,IAAI,KAAO,CAAA,aAAA,CAAA,MAAA,EAAA,IAAA,EAAA,QAAQ,CAAQ;AACnC,QAAA,IAAI,IAAI,QAAQ,GAAG,KAAC,CAAA,aAAA,CAAA,gBAAgB,EAAG,IAAA,CAAA,GAAG,IAAI,CAC9C,CACJ,CAAA;AAED,IAAA,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE;AAC1B,QAAA,QACE,KAAC,CAAA,aAAA,CAAA,cAAc,EACR,EAAA,GAAA,SAAsC,EAC3C,SAAS,EAAE,iBAAiB,EAC5B,GAAG,EAAE,GAA4C,IAEhD,OAAO,CACO,EAClB;KACF;AAED,IAAA,QACE,KAAC,CAAA,aAAA,CAAA,UAAU,EACJ,EAAA,GAAA,SAAkC,EACvC,SAAS,EAAE,iBAAiB,EAC5B,GAAG,EAAE,GAA4C,IAEhD,OAAO,CACG,EACd;AACH,CAAC,EACiB;AAEpB,MAAM,CAAC,WAAW,GAAG,QAAQ;;;;"}
@@ -0,0 +1,4 @@
1
+ const isLinkProps = (props) => "href" in props && !!props.href;
2
+
3
+ export { isLinkProps };
4
+ //# sourceMappingURL=type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.js","sources":["../../../../src/components/Buttons/Button/type.ts"],"sourcesContent":["type SharedButtonApiProps = {\n loading?: boolean\n disabled?: boolean\n primary?: boolean\n destructive?: boolean\n icon?: React.ReactNode\n text?: boolean\n fullWidth?: boolean\n // React.HTMLAttributes allows color to be passed in, but we don't want to allow it\n color?: never\n}\n\ntype SharedConditionalTextProps =\n | {\n text: true\n icon: React.ReactNode\n children?: never | false | undefined | null\n fullWidth?: never | false\n }\n | {\n text: true\n icon?: never\n fullWidth?: never | false\n }\n | {\n text?: false\n }\n\ntype SharedConditionalVariantProps =\n | {\n size?: \"large\"\n variant?: never\n }\n | {\n size: \"small\"\n destructive?: false\n primary?: false\n // Those variants are only available for small buttons\n variant:\n | \"warning\"\n | \"secondary\"\n | \"tertiary\"\n | \"business\"\n | \"success\"\n | \"neutral\"\n }\n | {\n size: \"small\"\n variant?: never\n }\n\n// Button props\nexport type ButtonComponentProps =\n React.ButtonHTMLAttributes<HTMLButtonElement> & {\n loading?: SharedButtonApiProps[\"loading\"]\n disabled?: SharedButtonApiProps[\"disabled\"]\n href?: never\n }\n\n// Link props\nexport type ButtonLinkComponentProps =\n React.AnchorHTMLAttributes<HTMLAnchorElement> & {\n loading?: SharedButtonApiProps[\"loading\"]\n disabled?: SharedButtonApiProps[\"disabled\"]\n href?: string\n }\n\nexport const isLinkProps = (\n props: ButtonComponentProps | ButtonLinkComponentProps\n): props is ButtonLinkComponentProps => \"href\" in props && !!props.href\n\nexport type ButtonProps = (ButtonComponentProps | ButtonLinkComponentProps) &\n SharedButtonApiProps &\n SharedConditionalVariantProps &\n SharedConditionalTextProps\n"],"names":[],"mappings":"AAmEa,MAAA,WAAW,GAAG,CACzB,KAAsD,KAChB,MAAM,IAAI,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC;;;;"}
@@ -3,6 +3,7 @@ import cx from 'classnames';
3
3
  import GhostButton from './GhostButton/index.js';
4
4
  import InversedButton from './InversedButton/index.js';
5
5
  import DefaultButton from './DefaultButton/index.js';
6
+ import Button from './Button/index.js';
6
7
 
7
8
  const isButton = (component) => React.isValidElement(component) &&
8
9
  (component.type === GhostButton ||
@@ -10,7 +11,8 @@ const isButton = (component) => React.isValidElement(component) &&
10
11
  component.type === InversedButton ||
11
12
  component.type === InversedButton.Link ||
12
13
  component.type === DefaultButton ||
13
- component.type === DefaultButton.Link);
14
+ component.type === DefaultButton.Link ||
15
+ component.type === Button);
14
16
  const ButtonsGroup = ({ className, children, align }) => (React.createElement("div", { className: cx(className, "cobalt-buttons-group", {
15
17
  "cobalt-buttons-group--right": align === "right",
16
18
  "cobalt-buttons-group--center": align === "center",
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonsGroup.js","sources":["../../../src/components/Buttons/ButtonsGroup.tsx"],"sourcesContent":["import React, { Children } from \"react\"\nimport cx from \"classnames\"\n\nimport GhostButton from \"./GhostButton\"\nimport InversedButton from \"./InversedButton\"\nimport DefaultButton from \"./DefaultButton\"\nimport { AllButtonsPropsType } from \"./\"\n\nexport interface ButtonsGroupProps {\n className?: string\n children: React.ReactNode\n align?: \"fullWidth\" | \"right\" | \"center\"\n}\n\nconst isButton = (\n component: React.ReactNode\n): component is React.ReactElement<AllButtonsPropsType> =>\n React.isValidElement(component) &&\n (component.type === GhostButton ||\n component.type === GhostButton.Link ||\n component.type === InversedButton ||\n component.type === InversedButton.Link ||\n component.type === DefaultButton ||\n component.type === DefaultButton.Link)\n\nconst ButtonsGroup = ({ className, children, align }: ButtonsGroupProps) => (\n <div\n className={cx(className, \"cobalt-buttons-group\", {\n \"cobalt-buttons-group--right\": align === \"right\",\n \"cobalt-buttons-group--center\": align === \"center\",\n })}\n >\n {Children.toArray(children).map((child, index) =>\n isButton(child)\n ? React.cloneElement(child, {\n key: index,\n className: cx(\"cobalt-buttons-group__item\", {\n \"cobalt-buttons-group__item--fullWidth\": align === \"fullWidth\",\n }),\n fullWidth: align === \"fullWidth\",\n })\n : child\n )}\n </div>\n)\n\nexport default ButtonsGroup\n"],"names":[],"mappings":";;;;;;AAcA,MAAM,QAAQ,GAAG,CACf,SAA0B,KAE1B,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC;AAC/B,KAAC,SAAS,CAAC,IAAI,KAAK,WAAW;AAC7B,QAAA,SAAS,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI;QACnC,SAAS,CAAC,IAAI,KAAK,cAAc;AACjC,QAAA,SAAS,CAAC,IAAI,KAAK,cAAc,CAAC,IAAI;QACtC,SAAS,CAAC,IAAI,KAAK,aAAa;AAChC,QAAA,SAAS,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI,CAAC,CAAA;AAEpC,MAAA,YAAY,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAqB,MACrE,6BACE,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,sBAAsB,EAAE;QAC/C,6BAA6B,EAAE,KAAK,KAAK,OAAO;QAChD,8BAA8B,EAAE,KAAK,KAAK,QAAQ;KACnD,CAAC,EAAA,EAED,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,KAC3C,QAAQ,CAAC,KAAK,CAAC;AACb,MAAE,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE;AACxB,QAAA,GAAG,EAAE,KAAK;AACV,QAAA,SAAS,EAAE,EAAE,CAAC,4BAA4B,EAAE;YAC1C,uCAAuC,EAAE,KAAK,KAAK,WAAW;SAC/D,CAAC;QACF,SAAS,EAAE,KAAK,KAAK,WAAW;KACjC,CAAC;AACJ,MAAE,KAAK,CACV,CACG;;;;"}
1
+ {"version":3,"file":"ButtonsGroup.js","sources":["../../../src/components/Buttons/ButtonsGroup.tsx"],"sourcesContent":["import React, { Children } from \"react\"\nimport cx from \"classnames\"\n\nimport GhostButton from \"./GhostButton\"\nimport InversedButton from \"./InversedButton\"\nimport DefaultButton from \"./DefaultButton\"\nimport { AllButtonsPropsType } from \"./\"\nimport Button from \"./Button\"\n\nexport interface ButtonsGroupProps {\n className?: string\n children: React.ReactNode\n align?: \"fullWidth\" | \"right\" | \"center\"\n}\n\nconst isButton = (\n component: React.ReactNode\n): component is React.ReactElement<AllButtonsPropsType> =>\n React.isValidElement(component) &&\n (component.type === GhostButton ||\n component.type === GhostButton.Link ||\n component.type === InversedButton ||\n component.type === InversedButton.Link ||\n component.type === DefaultButton ||\n component.type === DefaultButton.Link ||\n component.type === Button)\n\nconst ButtonsGroup = ({ className, children, align }: ButtonsGroupProps) => (\n <div\n className={cx(className, \"cobalt-buttons-group\", {\n \"cobalt-buttons-group--right\": align === \"right\",\n \"cobalt-buttons-group--center\": align === \"center\",\n })}\n >\n {Children.toArray(children).map((child, index) =>\n isButton(child)\n ? React.cloneElement(child, {\n key: index,\n className: cx(\"cobalt-buttons-group__item\", {\n \"cobalt-buttons-group__item--fullWidth\": align === \"fullWidth\",\n }),\n fullWidth: align === \"fullWidth\",\n })\n : child\n )}\n </div>\n)\n\nexport default ButtonsGroup\n"],"names":[],"mappings":";;;;;;;AAeA,MAAM,QAAQ,GAAG,CACf,SAA0B,KAE1B,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC;AAC/B,KAAC,SAAS,CAAC,IAAI,KAAK,WAAW;AAC7B,QAAA,SAAS,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI;QACnC,SAAS,CAAC,IAAI,KAAK,cAAc;AACjC,QAAA,SAAS,CAAC,IAAI,KAAK,cAAc,CAAC,IAAI;QACtC,SAAS,CAAC,IAAI,KAAK,aAAa;AAChC,QAAA,SAAS,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI;AACrC,QAAA,SAAS,CAAC,IAAI,KAAK,MAAM,CAAC,CAAA;AAExB,MAAA,YAAY,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAqB,MACrE,6BACE,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,sBAAsB,EAAE;QAC/C,6BAA6B,EAAE,KAAK,KAAK,OAAO;QAChD,8BAA8B,EAAE,KAAK,KAAK,QAAQ;KACnD,CAAC,EAAA,EAED,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,KAC3C,QAAQ,CAAC,KAAK,CAAC;AACb,MAAE,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE;AACxB,QAAA,GAAG,EAAE,KAAK;AACV,QAAA,SAAS,EAAE,EAAE,CAAC,4BAA4B,EAAE;YAC1C,uCAAuC,EAAE,KAAK,KAAK,WAAW;SAC/D,CAAC;QACF,SAAS,EAAE,KAAK,KAAK,WAAW;KACjC,CAAC;AACJ,MAAE,KAAK,CACV,CACG;;;;"}
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ import camelize from '../../utils/camelize.js';
3
+ import 'lodash.throttle';
4
+ import cx from 'classnames';
5
+
6
+ const iconSource = "seatbelt";
7
+ const SeatbeltIcon = ({ color, size = 24, contained = false, className, }) => {
8
+ const computedClassName = cx(className, `cobalt-Icon cobalt-Icon--${iconSource}`, {
9
+ [`c-fill-${camelize(color || "")}`]: color,
10
+ "cobalt-Icon--size16": size === 16,
11
+ "cobalt-Icon--size20": size === 20,
12
+ "cobalt-Icon--size32": size === 32,
13
+ "cobalt-Icon--contained": contained,
14
+ });
15
+ const wrap = (content) => (React.createElement("span", { className: computedClassName }, content));
16
+ return wrap(React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" },
17
+ React.createElement("path", { d: "M12.5 10.462c-3.176 0-5.16-3.526-3.573-6.347a4.074 4.074 0 0 1 7.145 0c.362.644.552 1.373.552 2.116-.002 2.335-1.848 4.228-4.124 4.23m6.749 10H7.734l11.26-10.193a.77.77 0 0 0 .255-.603c-.02-.591-.656-.94-1.146-.627a1 1 0 0 0-.1.076l-2.3 2.082c-4.515-2.189-9.815.674-10.61 5.73a1 1 0 0 0-.008.107L5 21.214a.76.76 0 0 0 .75.786H19.25c.577 0 .938-.641.65-1.154a.75.75 0 0 0-.65-.384m-1.114-7.02a.74.74 0 0 0-.586.187l-5.85 5.294h7.55a.76.76 0 0 0 .75-.77 7.8 7.8 0 0 0-1.338-4.386.75.75 0 0 0-.526-.325" })));
18
+ };
19
+
20
+ export { SeatbeltIcon as default };
21
+ //# sourceMappingURL=SeatbeltIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SeatbeltIcon.js","sources":["../../../../src/components/Icon/__generated__/SeatbeltIcon.tsx"],"sourcesContent":["import React from \"react\"\nimport { IconColorsType } from \"../\"\nimport { camelize } from \"../../utils\"\nimport cx from \"classnames\"\nexport type IconProps = {\n color?: IconColorsType\n size?: 16 | 20 | 24 | 32\n contained?: boolean\n className?: string\n}\nconst iconSource = \"seatbelt\"\nconst SeatbeltIcon = ({\n color,\n size = 24,\n contained = false,\n className,\n}: IconProps) => {\n const computedClassName = cx(\n className,\n `cobalt-Icon cobalt-Icon--${iconSource}`,\n {\n [`c-fill-${camelize(color || \"\")}`]: color,\n \"cobalt-Icon--size16\": size === 16,\n \"cobalt-Icon--size20\": size === 20,\n \"cobalt-Icon--size32\": size === 32,\n \"cobalt-Icon--contained\": contained,\n }\n )\n const wrap = (content: React.ReactNode) => (\n <span className={computedClassName}>{content}</span>\n )\n return wrap(\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path d=\"M12.5 10.462c-3.176 0-5.16-3.526-3.573-6.347a4.074 4.074 0 0 1 7.145 0c.362.644.552 1.373.552 2.116-.002 2.335-1.848 4.228-4.124 4.23m6.749 10H7.734l11.26-10.193a.77.77 0 0 0 .255-.603c-.02-.591-.656-.94-1.146-.627a1 1 0 0 0-.1.076l-2.3 2.082c-4.515-2.189-9.815.674-10.61 5.73a1 1 0 0 0-.008.107L5 21.214a.76.76 0 0 0 .75.786H19.25c.577 0 .938-.641.65-1.154a.75.75 0 0 0-.65-.384m-1.114-7.02a.74.74 0 0 0-.586.187l-5.85 5.294h7.55a.76.76 0 0 0 .75-.77 7.8 7.8 0 0 0-1.338-4.386.75.75 0 0 0-.526-.325\" />\n </svg>\n )\n}\nexport default SeatbeltIcon\n"],"names":[],"mappings":";;;;;AAUA,MAAM,UAAU,GAAG,UAAU,CAAA;AAC7B,MAAM,YAAY,GAAG,CAAC,EACpB,KAAK,EACL,IAAI,GAAG,EAAE,EACT,SAAS,GAAG,KAAK,EACjB,SAAS,GACC,KAAI;IACd,MAAM,iBAAiB,GAAG,EAAE,CAC1B,SAAS,EACT,CAAA,yBAAA,EAA4B,UAAU,CAAA,CAAE,EACxC;QACE,CAAC,CAAA,OAAA,EAAU,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA,CAAE,GAAG,KAAK;QAC1C,qBAAqB,EAAE,IAAI,KAAK,EAAE;QAClC,qBAAqB,EAAE,IAAI,KAAK,EAAE;QAClC,qBAAqB,EAAE,IAAI,KAAK,EAAE;AAClC,QAAA,wBAAwB,EAAE,SAAS;AACpC,KAAA,CACF,CAAA;AACD,IAAA,MAAM,IAAI,GAAG,CAAC,OAAwB,MACpC,KAAM,CAAA,aAAA,CAAA,MAAA,EAAA,EAAA,SAAS,EAAE,iBAAiB,EAAA,EAAG,OAAO,CAAQ,CACrD,CAAA;IACD,OAAO,IAAI,CACT,KAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,4BAA4B,EAAC,OAAO,EAAC,WAAW,EAAA;AACzD,QAAA,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,CAAC,EAAC,qfAAqf,EAAG,CAAA,CAC5f,CACP,CAAA;AACH;;;;"}
package/icons/index.js CHANGED
@@ -234,6 +234,7 @@ export { default as sealCheck } from './seal-check.js';
234
234
  export { default as searchCar } from './search-car.js';
235
235
  export { default as searchPeople } from './search-people.js';
236
236
  export { default as search } from './search.js';
237
+ export { default as seatbelt } from './seatbelt.js';
237
238
  export { default as sedan } from './sedan.js';
238
239
  export { default as send } from './send.js';
239
240
  export { default as serviceBattery } from './service-battery.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,4 @@
1
+ var seatbelt = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M12.5 10.462c-3.176 0-5.16-3.526-3.573-6.347a4.074 4.074 0 0 1 7.145 0c.362.644.552 1.373.552 2.116-.002 2.335-1.848 4.228-4.124 4.23m6.749 10H7.734l11.26-10.193a.77.77 0 0 0 .255-.603c-.02-.591-.656-.94-1.146-.627a1 1 0 0 0-.1.076l-2.3 2.082c-4.515-2.189-9.815.674-10.61 5.73a1 1 0 0 0-.008.107L5 21.214a.76.76 0 0 0 .75.786h13.5c.577 0 .938-.641.65-1.154a.75.75 0 0 0-.65-.384m-1.114-7.02a.74.74 0 0 0-.586.187l-5.85 5.294h7.55a.76.76 0 0 0 .75-.77 7.8 7.8 0 0 0-1.338-4.386.75.75 0 0 0-.526-.325\"/></svg>";
2
+
3
+ export { seatbelt as default };
4
+ //# sourceMappingURL=seatbelt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seatbelt.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12.5 10.462c-3.176 0-5.16-3.526-3.573-6.347a4.074 4.074 0 0 1 7.145 0c.362.644.552 1.373.552 2.116-.002 2.335-1.848 4.228-4.124 4.23m6.749 10H7.734l11.26-10.193a.77.77 0 0 0 .255-.603c-.02-.591-.656-.94-1.146-.627a1 1 0 0 0-.1.076l-2.3 2.082c-4.515-2.189-9.815.674-10.61 5.73a1 1 0 0 0-.008.107L5 21.214a.76.76 0 0 0 .75.786H19.25c.577 0 .938-.641.65-1.154a.75.75 0 0 0-.65-.384m-1.114-7.02a.74.74 0 0 0-.586.187l-5.85 5.294h7.55a.76.76 0 0 0 .75-.77 7.8 7.8 0 0 0-1.338-4.386.75.75 0 0 0-.526-.325"/></svg>
package/index.js CHANGED
@@ -121,7 +121,6 @@ export { default as CheckCircleIcon } from './components/Icon/__generated__/Chec
121
121
  export { default as ChecklistIcon } from './components/Icon/__generated__/ChecklistIcon.js';
122
122
  export { default as ChevronDownIcon } from './components/Icon/__generated__/ChevronDownIcon.js';
123
123
  export { default as ChevronLeftIcon } from './components/Icon/__generated__/ChevronLeftIcon.js';
124
- export { default as ChevronRightIcon } from './components/Icon/__generated__/ChevronRightIcon.js';
125
124
  export { default as ChevronUpIcon } from './components/Icon/__generated__/ChevronUpIcon.js';
126
125
  export { default as CircledArrowLeftIcon } from './components/Icon/__generated__/CircledArrowLeftIcon.js';
127
126
  export { default as CircledArrowRightIcon } from './components/Icon/__generated__/CircledArrowRightIcon.js';
@@ -293,6 +292,7 @@ export { default as SealCheckIcon } from './components/Icon/__generated__/SealCh
293
292
  export { default as SearchCarIcon } from './components/Icon/__generated__/SearchCarIcon.js';
294
293
  export { default as SearchIcon } from './components/Icon/__generated__/SearchIcon.js';
295
294
  export { default as SearchPeopleIcon } from './components/Icon/__generated__/SearchPeopleIcon.js';
295
+ export { default as SeatbeltIcon } from './components/Icon/__generated__/SeatbeltIcon.js';
296
296
  export { default as SedanIcon } from './components/Icon/__generated__/SedanIcon.js';
297
297
  export { default as SendIcon } from './components/Icon/__generated__/SendIcon.js';
298
298
  export { default as ServiceBatteryIcon } from './components/Icon/__generated__/ServiceBatteryIcon.js';
@@ -365,6 +365,7 @@ export { default as YingyangIcon } from './components/Icon/__generated__/Yingyan
365
365
  export { default as RatingLabel } from './components/Rating/RatingLabel.js';
366
366
  export { useAccordionItemContext } from '@ark-ui/react';
367
367
  export { default as CheckIcon } from './components/Icon/__generated__/CheckIcon.js';
368
+ export { default as ChevronRightIcon } from './components/Icon/__generated__/ChevronRightIcon.js';
368
369
  export { default as LoadingIcon } from './components/Icon/__generated__/LoadingIcon.js';
369
370
  export { default as StarIcon } from './components/Icon/__generated__/StarIcon.js';
370
371
  export { RatingInput } from './components/Rating/RatingInput.js';
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@drivy/cobalt",
3
- "version": "2.6.0",
3
+ "version": "2.8.0",
4
4
  "description": "Opinionated design system for Drivy's projects.",
5
5
  "main": "src/index.js",
6
6
  "types": "types/src/index.d.ts",
@@ -37,7 +37,7 @@
37
37
  "react-dom": "^18.3.1"
38
38
  },
39
39
  "devDependencies": {
40
- "@getaround-eu/babel-preset-app": "1.4.5",
40
+ "@getaround-eu/babel-preset-app": "1.4.6",
41
41
  "@getaround-eu/eslint-config": "3.1.0",
42
42
  "@getaround-eu/prettier-config": "1.2.1",
43
43
  "@getaround-eu/stylelint-config": "3.0.1",
@@ -61,8 +61,8 @@
61
61
  "@types/node": "22.14.1",
62
62
  "@types/react": "18.3.24",
63
63
  "@types/react-dom": "18.3.7",
64
- "autoprefixer": "10.4.21",
65
- "core-js": "3.46.0",
64
+ "autoprefixer": "10.4.22",
65
+ "core-js": "3.47.0",
66
66
  "css-loader": "7.1.2",
67
67
  "eslint": "8.57.1",
68
68
  "eslint-plugin-storybook": "^0.12.0",
@@ -88,7 +88,7 @@
88
88
  "rollup-plugin-copy": "3.5.0",
89
89
  "rollup-plugin-svgo": "2.0.0",
90
90
  "rollup-plugin-typescript2": "0.36.0",
91
- "sass": "1.93.2",
91
+ "sass": "1.95.0",
92
92
  "sass-loader": "13.3.3",
93
93
  "sharp-cli": "5.2.0",
94
94
  "storybook": "7.6.20",
@@ -96,8 +96,8 @@
96
96
  "stylelint": "15.11.0",
97
97
  "svg2vectordrawable": "2.9.1",
98
98
  "svgo": "3.3.2",
99
- "ts-jest": "29.4.5",
100
- "tsx": "4.20.6",
99
+ "ts-jest": "29.4.6",
100
+ "tsx": "4.21.0",
101
101
  "typescript": "5.4.5"
102
102
  },
103
103
  "keywords": [
@@ -0,0 +1,140 @@
1
+ .cobalt-button {
2
+ @apply c-state-interactive c-transition c-px-[20px] c-border c-border-outline c-rounded-lg c-bg-surface c-text-primary c-text-body-md c-font-bold c-gap-2xs hover:c-drop-shadow-lg;
3
+ display: inline-flex;
4
+ box-sizing: border-box;
5
+ align-items: center;
6
+ justify-content: center;
7
+ min-width: 44px;
8
+ min-height: 44px;
9
+
10
+ text-align: center;
11
+ text-decoration: none;
12
+ vertical-align: middle;
13
+
14
+ cursor: pointer;
15
+
16
+ transform: scale(1);
17
+ user-select: none;
18
+ appearance: none;
19
+
20
+ &:active {
21
+ transform: scale(0.97);
22
+ }
23
+
24
+ .cobalt-Icon {
25
+ width: 24px;
26
+ height: 24px;
27
+
28
+ flex-shrink: 0;
29
+ }
30
+
31
+ &.cobalt-button--large {
32
+ @apply c-px-md;
33
+ min-height: 48px;
34
+ min-width: 48px;
35
+ }
36
+
37
+ &.cobalt-button--small {
38
+ @apply c-px-[12px] hover:c-drop-shadow-md;
39
+ min-width: 32px;
40
+ min-height: 32px;
41
+
42
+ font-size: 14px;
43
+
44
+ .cobalt-Icon {
45
+ width: 20px;
46
+ height: 20px;
47
+ }
48
+
49
+ &.cobalt-button--warning {
50
+ @apply c-bg-warning c-border-warning c-text-onWarning;
51
+ }
52
+
53
+ &.cobalt-button--tertiary {
54
+ @apply c-bg-tertiary c-border-tertiary c-text-onTertiary;
55
+ }
56
+
57
+ &.cobalt-button--secondary {
58
+ @apply c-bg-secondary c-border-secondary c-text-onSecondary;
59
+ }
60
+
61
+ &.cobalt-button--business {
62
+ @apply c-bg-businessContainer c-border-businessContainer c-text-onBusinessContainer;
63
+ }
64
+
65
+ &.cobalt-button--success {
66
+ @apply c-bg-success c-border-success c-text-onSuccess;
67
+ }
68
+
69
+ &.cobalt-button--neutral {
70
+ @apply c-bg-neutral c-border-neutral c-text-onNeutral;
71
+ }
72
+ }
73
+
74
+ &.cobalt-button--primary {
75
+ @apply c-bg-primary c-border-primary c-text-onPrimary;
76
+
77
+ &.cobalt-button--destructive {
78
+ @apply c-bg-error c-border-error c-text-onError;
79
+ }
80
+ }
81
+
82
+ &.cobalt-button--icon-only {
83
+ @apply c-p-none c-rounded-full;
84
+ }
85
+
86
+ &.cobalt-button--text {
87
+ @apply c-state-none c-transform-none hover:c-underline c-px-none c-bg-transparent c-border-transparent c-text-current c-drop-shadow-none c-gap-none;
88
+ transition: text-underline-offset 0.25s ease;
89
+
90
+ text-underline-offset: 2px;
91
+
92
+ &:active {
93
+ text-underline-offset: 1px;
94
+ }
95
+
96
+ &.cobalt-button--icon-only {
97
+ @apply c-state-interactive;
98
+ }
99
+ }
100
+
101
+ &.cobalt-button--destructive {
102
+ @apply c-text-error;
103
+ }
104
+
105
+ &[disabled][aria-disabled]:not([aria-disabled="false"]):not(
106
+ [aria-busy="true"]
107
+ ) {
108
+ @apply c-state-none c-text-onSurfaceDisabled c-drop-shadow-none hover:c-no-underline;
109
+ opacity: 1;
110
+ cursor: not-allowed;
111
+
112
+ &:not(.cobalt-button--text) {
113
+ @apply c-bg-disabled c-border-transparent;
114
+ }
115
+ }
116
+
117
+ &[aria-busy="true"] {
118
+ @apply c-state-none c-drop-shadow-none hover:c-no-underline;
119
+ --c-state-interactive-color: var(--c-press);
120
+ cursor: not-allowed;
121
+
122
+ &:focus,
123
+ &:hover,
124
+ &:active {
125
+ --c-state-interactive-color: var(--c-press);
126
+
127
+ transform: scale(1);
128
+ }
129
+ }
130
+
131
+ .cobalt-button__loading-icon {
132
+ position: absolute;
133
+
134
+ margin: auto;
135
+ }
136
+
137
+ &[aria-busy="true"] > *:not(.cobalt-button__loading-icon) {
138
+ color: transparent;
139
+ }
140
+ }
@@ -133,7 +133,7 @@
133
133
  }
134
134
 
135
135
  .cobalt-buttons-group {
136
- @apply c--mt-sm;
136
+ @apply c--mt-xs c-gap-x-sm;
137
137
  display: flex;
138
138
  flex-wrap: wrap;
139
139
  align-items: center;
@@ -147,13 +147,7 @@
147
147
  }
148
148
 
149
149
  &__item {
150
- @apply c-mt-sm;
151
-
152
- &:not(.cobalt-buttons-group__item--fullWidth):not(
153
- .cobalt-buttons-group__item--xs\:fullWidth
154
- ) {
155
- @apply c-mr-sm;
156
- }
150
+ @apply c-mt-xs;
157
151
 
158
152
  &--fullWidth {
159
153
  flex: 1 1 auto;
@@ -168,6 +162,7 @@
168
162
  }
169
163
  }
170
164
 
165
+ @import "./Button/index.scss";
171
166
  @import "./InversedButton/index.scss";
172
167
  @import "./GhostButton/index.scss";
173
168
  @import "./DefaultButton/index.scss";
package/tokens/icons.js CHANGED
@@ -235,6 +235,7 @@ const icons = {
235
235
  searchCar: "search-car.svg",
236
236
  searchPeople: "search-people.svg",
237
237
  search: "search.svg",
238
+ seatbelt: "seatbelt.svg",
238
239
  sedan: "sedan.svg",
239
240
  send: "send.svg",
240
241
  serviceBattery: "service-battery.svg",
@@ -1 +1 @@
1
- {"version":3,"file":"icons.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"icons.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,11 @@
1
+ import React from "react";
2
+ export declare const ButtonBase: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & {
3
+ loading?: boolean | undefined;
4
+ disabled?: boolean | undefined;
5
+ href?: undefined;
6
+ } & React.RefAttributes<HTMLButtonElement>>;
7
+ export declare const ButtonLinkBase: React.ForwardRefExoticComponent<React.AnchorHTMLAttributes<HTMLAnchorElement> & {
8
+ loading?: boolean | undefined;
9
+ disabled?: boolean | undefined;
10
+ href?: string | undefined;
11
+ } & React.RefAttributes<HTMLAnchorElement>>;
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import { ButtonComponentProps, ButtonLinkComponentProps, ButtonProps } from "./type";
3
+ interface ButtonOverloads {
4
+ (props: Exclude<ButtonProps, ButtonComponentProps> & React.RefAttributes<HTMLAnchorElement>): React.ReactElement;
5
+ (props: Exclude<ButtonProps, ButtonLinkComponentProps> & React.RefAttributes<HTMLButtonElement>): React.ReactElement;
6
+ displayName?: string;
7
+ }
8
+ declare const Button: ButtonOverloads;
9
+ export default Button;
@@ -0,0 +1,48 @@
1
+ /// <reference types="react" />
2
+ type SharedButtonApiProps = {
3
+ loading?: boolean;
4
+ disabled?: boolean;
5
+ primary?: boolean;
6
+ destructive?: boolean;
7
+ icon?: React.ReactNode;
8
+ text?: boolean;
9
+ fullWidth?: boolean;
10
+ color?: never;
11
+ };
12
+ type SharedConditionalTextProps = {
13
+ text: true;
14
+ icon: React.ReactNode;
15
+ children?: never | false | undefined | null;
16
+ fullWidth?: never | false;
17
+ } | {
18
+ text: true;
19
+ icon?: never;
20
+ fullWidth?: never | false;
21
+ } | {
22
+ text?: false;
23
+ };
24
+ type SharedConditionalVariantProps = {
25
+ size?: "large";
26
+ variant?: never;
27
+ } | {
28
+ size: "small";
29
+ destructive?: false;
30
+ primary?: false;
31
+ variant: "warning" | "secondary" | "tertiary" | "business" | "success" | "neutral";
32
+ } | {
33
+ size: "small";
34
+ variant?: never;
35
+ };
36
+ export type ButtonComponentProps = React.ButtonHTMLAttributes<HTMLButtonElement> & {
37
+ loading?: SharedButtonApiProps["loading"];
38
+ disabled?: SharedButtonApiProps["disabled"];
39
+ href?: never;
40
+ };
41
+ export type ButtonLinkComponentProps = React.AnchorHTMLAttributes<HTMLAnchorElement> & {
42
+ loading?: SharedButtonApiProps["loading"];
43
+ disabled?: SharedButtonApiProps["disabled"];
44
+ href?: string;
45
+ };
46
+ export declare const isLinkProps: (props: ButtonComponentProps | ButtonLinkComponentProps) => props is ButtonLinkComponentProps;
47
+ export type ButtonProps = (ButtonComponentProps | ButtonLinkComponentProps) & SharedButtonApiProps & SharedConditionalVariantProps & SharedConditionalTextProps;
48
+ export {};
@@ -34,7 +34,7 @@ declare const Autocomplete: React.ForwardRefExoticComponent<{
34
34
  label?: string | undefined;
35
35
  hint?: string | undefined;
36
36
  fullWidth?: boolean | undefined;
37
- icon?: "accountDetails" | "addPicture" | "airConditioning" | "airport" | "android" | "antique" | "arrowLeftCircleFilled" | "arrowLeft" | "arrowRightCircleFilled" | "arrowRightCircle" | "arrowRight" | "audioInput" | "babySeat" | "bank" | "battery" | "bell" | "bikeRack" | "bin" | "bluetooth" | "briefcase" | "bulb" | "cable" | "cabriolet" | "calendarCheck" | "calendarClock" | "calendarEnd" | "calendarStart" | "calendar" | "cameraAdd" | "camera" | "campervan" | "capacity" | "carAdd" | "carCheck" | "carDamages" | "carDrivyOpen" | "carGroup" | "carLock" | "carPlay" | "carReturn" | "carSearch" | "carTypeAntique" | "carTypeCabriolet" | "carTypeCampervan" | "carTypeCity" | "carTypeConvertible" | "carTypeCoupe" | "carTypeFamily" | "carTypeFourFour" | "carTypeMinibus" | "carTypeSedan" | "carTypeUtility" | "car" | "card" | "cdPlayer" | "certificate" | "chains" | "checkCircleFilled" | "checkCircle" | "check" | "checklist" | "chevronDown" | "chevronLeft" | "chevronRight" | "chevronUp" | "circledArrowLeft" | "circledArrowRight" | "city" | "cleaning" | "clockAlert" | "clockBackwards" | "clockForwards" | "clock" | "closeCircleFilled" | "close" | "collapse" | "connectCar" | "contactMail" | "contactPhone" | "contextualPaperclip" | "contextualQuestion" | "contextualWarningCircleFilled" | "contextualWarningCircle" | "contract" | "convertible" | "copy" | "coupe" | "creditCardAdd" | "creditCardError" | "creditCard" | "cruiseControl" | "dashcam" | "directions" | "document" | "dotHorizontal" | "dotVertical" | "dotsHorizontal" | "dotsVertical" | "download" | "earning" | "earth" | "edit" | "electric" | "evBattery" | "evCable" | "evCharger" | "expand" | "externalLink" | "eyeClosed" | "eyeOpened" | "eye" | "faceRecognition" | "facebook" | "family" | "fileFilled" | "filepdf" | "filexls" | "filter" | "filters" | "flag" | "fourByFour" | "fourWheelDrive" | "fuelTank" | "geolocation" | "gift" | "gps" | "graphUp" | "healing" | "heart" | "hitch" | "home" | "idCard" | "incident" | "infoCircleFilled" | "infoCircle" | "infoFilled" | "info" | "instant" | "invoice" | "keyConnect" | "key" | "licenceCheck" | "licencePaper" | "licence" | "lifeBuoy" | "linkedin" | "loading" | "locality" | "locationMap" | "locationParking" | "locationPin" | "location" | "lockCheck" | "locked" | "login" | "logout" | "mailCheck" | "mail" | "mapAlt" | "map" | "meetDriver" | "meetOwner" | "menuList" | "messages" | "mileage" | "minibus" | "minusCircleFilled" | "minus" | "miscGift" | "moon" | "nearbyDevice" | "notification" | "number1Circle" | "number2Circle" | "number3Circle" | "number4Circle" | "number5Circle" | "okHand" | "optionAirConditioning" | "optionAndroidAuto" | "optionAppleCarplay" | "optionAudioInput" | "optionBabySeat" | "optionBikeRack" | "optionBluetoothAudio" | "optionCdPlayer" | "optionChains" | "optionCruiseControl" | "optionDashcam" | "optionGps" | "optionHasTrailer" | "optionHitch" | "optionRoofBox" | "optionSkiRack" | "optionSnowTire" | "optionWheelchairAccessible" | "paperclip" | "parking" | "passport" | "payments" | "pencil" | "peopleUser" | "percentage" | "performance" | "phoneLink" | "phone" | "photos" | "pickupTruck" | "pig" | "pin" | "plug" | "plusCircleFilled" | "plus" | "position" | "pricingFlat" | "pricingVariable" | "profilePicture" | "questionCircleFilled" | "questionCircle" | "question" | "raceFlag" | "recenter" | "refresh" | "reorder" | "replacementCar" | "reply" | "reset" | "ride" | "road" | "roadsideAssistance" | "roofBox" | "rotate" | "sealCheck" | "searchCar" | "searchPeople" | "search" | "sedan" | "send" | "serviceBattery" | "serviceCleaning" | "serviceFuel" | "serviceHealing" | "serviceLocked" | "serviceTolls" | "serviceUnlocked" | "settings" | "shareAndroid" | "shareIos" | "share" | "shieldCheck" | "shield" | "shop" | "skiRack" | "slider" | "smartphone" | "smilingFace" | "snowTire" | "socialFacebook" | "socialLinkedin" | "socialTwitter" | "socialWhatsapp" | "starHalf" | "star" | "stars" | "subway" | "suitcase" | "support" | "suv" | "synch" | "tag" | "timeAlert" | "timeBackwards" | "timeCalendar" | "timeForward" | "tolls" | "trailer" | "train" | "transmission" | "triangleDown" | "triangleRight" | "triangleUp" | "twitter" | "twoPeople" | "uber" | "unfold" | "unlocked" | "userCheck" | "userQuestion" | "userShield" | "userSwitch" | "user" | "utilityVanLarge" | "utilityVanMedium" | "utilityVanSmall" | "verifiedSeal" | "video" | "walk" | "wallet" | "warningCircleFilled" | "warningCircle" | "warning" | "whatsapp" | "wheel" | "wheelchair" | "wrench" | "yingyang" | undefined;
37
+ icon?: "accountDetails" | "addPicture" | "airConditioning" | "airport" | "android" | "antique" | "arrowLeftCircleFilled" | "arrowLeft" | "arrowRightCircleFilled" | "arrowRightCircle" | "arrowRight" | "audioInput" | "babySeat" | "bank" | "battery" | "bell" | "bikeRack" | "bin" | "bluetooth" | "briefcase" | "bulb" | "cable" | "cabriolet" | "calendarCheck" | "calendarClock" | "calendarEnd" | "calendarStart" | "calendar" | "cameraAdd" | "camera" | "campervan" | "capacity" | "carAdd" | "carCheck" | "carDamages" | "carDrivyOpen" | "carGroup" | "carLock" | "carPlay" | "carReturn" | "carSearch" | "carTypeAntique" | "carTypeCabriolet" | "carTypeCampervan" | "carTypeCity" | "carTypeConvertible" | "carTypeCoupe" | "carTypeFamily" | "carTypeFourFour" | "carTypeMinibus" | "carTypeSedan" | "carTypeUtility" | "car" | "card" | "cdPlayer" | "certificate" | "chains" | "checkCircleFilled" | "checkCircle" | "check" | "checklist" | "chevronDown" | "chevronLeft" | "chevronRight" | "chevronUp" | "circledArrowLeft" | "circledArrowRight" | "city" | "cleaning" | "clockAlert" | "clockBackwards" | "clockForwards" | "clock" | "closeCircleFilled" | "close" | "collapse" | "connectCar" | "contactMail" | "contactPhone" | "contextualPaperclip" | "contextualQuestion" | "contextualWarningCircleFilled" | "contextualWarningCircle" | "contract" | "convertible" | "copy" | "coupe" | "creditCardAdd" | "creditCardError" | "creditCard" | "cruiseControl" | "dashcam" | "directions" | "document" | "dotHorizontal" | "dotVertical" | "dotsHorizontal" | "dotsVertical" | "download" | "earning" | "earth" | "edit" | "electric" | "evBattery" | "evCable" | "evCharger" | "expand" | "externalLink" | "eyeClosed" | "eyeOpened" | "eye" | "faceRecognition" | "facebook" | "family" | "fileFilled" | "filepdf" | "filexls" | "filter" | "filters" | "flag" | "fourByFour" | "fourWheelDrive" | "fuelTank" | "geolocation" | "gift" | "gps" | "graphUp" | "healing" | "heart" | "hitch" | "home" | "idCard" | "incident" | "infoCircleFilled" | "infoCircle" | "infoFilled" | "info" | "instant" | "invoice" | "keyConnect" | "key" | "licenceCheck" | "licencePaper" | "licence" | "lifeBuoy" | "linkedin" | "loading" | "locality" | "locationMap" | "locationParking" | "locationPin" | "location" | "lockCheck" | "locked" | "login" | "logout" | "mailCheck" | "mail" | "mapAlt" | "map" | "meetDriver" | "meetOwner" | "menuList" | "messages" | "mileage" | "minibus" | "minusCircleFilled" | "minus" | "miscGift" | "moon" | "nearbyDevice" | "notification" | "number1Circle" | "number2Circle" | "number3Circle" | "number4Circle" | "number5Circle" | "okHand" | "optionAirConditioning" | "optionAndroidAuto" | "optionAppleCarplay" | "optionAudioInput" | "optionBabySeat" | "optionBikeRack" | "optionBluetoothAudio" | "optionCdPlayer" | "optionChains" | "optionCruiseControl" | "optionDashcam" | "optionGps" | "optionHasTrailer" | "optionHitch" | "optionRoofBox" | "optionSkiRack" | "optionSnowTire" | "optionWheelchairAccessible" | "paperclip" | "parking" | "passport" | "payments" | "pencil" | "peopleUser" | "percentage" | "performance" | "phoneLink" | "phone" | "photos" | "pickupTruck" | "pig" | "pin" | "plug" | "plusCircleFilled" | "plus" | "position" | "pricingFlat" | "pricingVariable" | "profilePicture" | "questionCircleFilled" | "questionCircle" | "question" | "raceFlag" | "recenter" | "refresh" | "reorder" | "replacementCar" | "reply" | "reset" | "ride" | "road" | "roadsideAssistance" | "roofBox" | "rotate" | "sealCheck" | "searchCar" | "searchPeople" | "search" | "seatbelt" | "sedan" | "send" | "serviceBattery" | "serviceCleaning" | "serviceFuel" | "serviceHealing" | "serviceLocked" | "serviceTolls" | "serviceUnlocked" | "settings" | "shareAndroid" | "shareIos" | "share" | "shieldCheck" | "shield" | "shop" | "skiRack" | "slider" | "smartphone" | "smilingFace" | "snowTire" | "socialFacebook" | "socialLinkedin" | "socialTwitter" | "socialWhatsapp" | "starHalf" | "star" | "stars" | "subway" | "suitcase" | "support" | "suv" | "synch" | "tag" | "timeAlert" | "timeBackwards" | "timeCalendar" | "timeForward" | "tolls" | "trailer" | "train" | "transmission" | "triangleDown" | "triangleRight" | "triangleUp" | "twitter" | "twoPeople" | "uber" | "unfold" | "unlocked" | "userCheck" | "userQuestion" | "userShield" | "userSwitch" | "user" | "utilityVanLarge" | "utilityVanMedium" | "utilityVanSmall" | "verifiedSeal" | "video" | "walk" | "wallet" | "warningCircleFilled" | "warningCircle" | "warning" | "whatsapp" | "wheel" | "wheelchair" | "wrench" | "yingyang" | undefined;
38
38
  items: AutocompleteItemInput[];
39
39
  popoverClassName?: string | undefined;
40
40
  minQueryLength?: number | undefined;
@@ -18,7 +18,7 @@ export declare const TagsInputWrapper: ({ status, render, }: {
18
18
  render: (className: string) => React.ReactNode;
19
19
  }) => React.JSX.Element;
20
20
  declare const wrappedComponent: React.ComponentClass<{
21
- icon?: "accountDetails" | "addPicture" | "airConditioning" | "airport" | "android" | "antique" | "arrowLeftCircleFilled" | "arrowLeft" | "arrowRightCircleFilled" | "arrowRightCircle" | "arrowRight" | "audioInput" | "babySeat" | "bank" | "battery" | "bell" | "bikeRack" | "bin" | "bluetooth" | "briefcase" | "bulb" | "cable" | "cabriolet" | "calendarCheck" | "calendarClock" | "calendarEnd" | "calendarStart" | "calendar" | "cameraAdd" | "camera" | "campervan" | "capacity" | "carAdd" | "carCheck" | "carDamages" | "carDrivyOpen" | "carGroup" | "carLock" | "carPlay" | "carReturn" | "carSearch" | "carTypeAntique" | "carTypeCabriolet" | "carTypeCampervan" | "carTypeCity" | "carTypeConvertible" | "carTypeCoupe" | "carTypeFamily" | "carTypeFourFour" | "carTypeMinibus" | "carTypeSedan" | "carTypeUtility" | "car" | "card" | "cdPlayer" | "certificate" | "chains" | "checkCircleFilled" | "checkCircle" | "check" | "checklist" | "chevronDown" | "chevronLeft" | "chevronRight" | "chevronUp" | "circledArrowLeft" | "circledArrowRight" | "city" | "cleaning" | "clockAlert" | "clockBackwards" | "clockForwards" | "clock" | "closeCircleFilled" | "close" | "collapse" | "connectCar" | "contactMail" | "contactPhone" | "contextualPaperclip" | "contextualQuestion" | "contextualWarningCircleFilled" | "contextualWarningCircle" | "contract" | "convertible" | "copy" | "coupe" | "creditCardAdd" | "creditCardError" | "creditCard" | "cruiseControl" | "dashcam" | "directions" | "document" | "dotHorizontal" | "dotVertical" | "dotsHorizontal" | "dotsVertical" | "download" | "earning" | "earth" | "edit" | "electric" | "evBattery" | "evCable" | "evCharger" | "expand" | "externalLink" | "eyeClosed" | "eyeOpened" | "eye" | "faceRecognition" | "facebook" | "family" | "fileFilled" | "filepdf" | "filexls" | "filter" | "filters" | "flag" | "fourByFour" | "fourWheelDrive" | "fuelTank" | "geolocation" | "gift" | "gps" | "graphUp" | "healing" | "heart" | "hitch" | "home" | "idCard" | "incident" | "infoCircleFilled" | "infoCircle" | "infoFilled" | "info" | "instant" | "invoice" | "keyConnect" | "key" | "licenceCheck" | "licencePaper" | "licence" | "lifeBuoy" | "linkedin" | "loading" | "locality" | "locationMap" | "locationParking" | "locationPin" | "location" | "lockCheck" | "locked" | "login" | "logout" | "mailCheck" | "mail" | "mapAlt" | "map" | "meetDriver" | "meetOwner" | "menuList" | "messages" | "mileage" | "minibus" | "minusCircleFilled" | "minus" | "miscGift" | "moon" | "nearbyDevice" | "notification" | "number1Circle" | "number2Circle" | "number3Circle" | "number4Circle" | "number5Circle" | "okHand" | "optionAirConditioning" | "optionAndroidAuto" | "optionAppleCarplay" | "optionAudioInput" | "optionBabySeat" | "optionBikeRack" | "optionBluetoothAudio" | "optionCdPlayer" | "optionChains" | "optionCruiseControl" | "optionDashcam" | "optionGps" | "optionHasTrailer" | "optionHitch" | "optionRoofBox" | "optionSkiRack" | "optionSnowTire" | "optionWheelchairAccessible" | "paperclip" | "parking" | "passport" | "payments" | "pencil" | "peopleUser" | "percentage" | "performance" | "phoneLink" | "phone" | "photos" | "pickupTruck" | "pig" | "pin" | "plug" | "plusCircleFilled" | "plus" | "position" | "pricingFlat" | "pricingVariable" | "profilePicture" | "questionCircleFilled" | "questionCircle" | "question" | "raceFlag" | "recenter" | "refresh" | "reorder" | "replacementCar" | "reply" | "reset" | "ride" | "road" | "roadsideAssistance" | "roofBox" | "rotate" | "sealCheck" | "searchCar" | "searchPeople" | "search" | "sedan" | "send" | "serviceBattery" | "serviceCleaning" | "serviceFuel" | "serviceHealing" | "serviceLocked" | "serviceTolls" | "serviceUnlocked" | "settings" | "shareAndroid" | "shareIos" | "share" | "shieldCheck" | "shield" | "shop" | "skiRack" | "slider" | "smartphone" | "smilingFace" | "snowTire" | "socialFacebook" | "socialLinkedin" | "socialTwitter" | "socialWhatsapp" | "starHalf" | "star" | "stars" | "subway" | "suitcase" | "support" | "suv" | "synch" | "tag" | "timeAlert" | "timeBackwards" | "timeCalendar" | "timeForward" | "tolls" | "trailer" | "train" | "transmission" | "triangleDown" | "triangleRight" | "triangleUp" | "twitter" | "twoPeople" | "uber" | "unfold" | "unlocked" | "userCheck" | "userQuestion" | "userShield" | "userSwitch" | "user" | "utilityVanLarge" | "utilityVanMedium" | "utilityVanSmall" | "verifiedSeal" | "video" | "walk" | "wallet" | "warningCircleFilled" | "warningCircle" | "warning" | "whatsapp" | "wheel" | "wheelchair" | "wrench" | "yingyang" | undefined;
21
+ icon?: "accountDetails" | "addPicture" | "airConditioning" | "airport" | "android" | "antique" | "arrowLeftCircleFilled" | "arrowLeft" | "arrowRightCircleFilled" | "arrowRightCircle" | "arrowRight" | "audioInput" | "babySeat" | "bank" | "battery" | "bell" | "bikeRack" | "bin" | "bluetooth" | "briefcase" | "bulb" | "cable" | "cabriolet" | "calendarCheck" | "calendarClock" | "calendarEnd" | "calendarStart" | "calendar" | "cameraAdd" | "camera" | "campervan" | "capacity" | "carAdd" | "carCheck" | "carDamages" | "carDrivyOpen" | "carGroup" | "carLock" | "carPlay" | "carReturn" | "carSearch" | "carTypeAntique" | "carTypeCabriolet" | "carTypeCampervan" | "carTypeCity" | "carTypeConvertible" | "carTypeCoupe" | "carTypeFamily" | "carTypeFourFour" | "carTypeMinibus" | "carTypeSedan" | "carTypeUtility" | "car" | "card" | "cdPlayer" | "certificate" | "chains" | "checkCircleFilled" | "checkCircle" | "check" | "checklist" | "chevronDown" | "chevronLeft" | "chevronRight" | "chevronUp" | "circledArrowLeft" | "circledArrowRight" | "city" | "cleaning" | "clockAlert" | "clockBackwards" | "clockForwards" | "clock" | "closeCircleFilled" | "close" | "collapse" | "connectCar" | "contactMail" | "contactPhone" | "contextualPaperclip" | "contextualQuestion" | "contextualWarningCircleFilled" | "contextualWarningCircle" | "contract" | "convertible" | "copy" | "coupe" | "creditCardAdd" | "creditCardError" | "creditCard" | "cruiseControl" | "dashcam" | "directions" | "document" | "dotHorizontal" | "dotVertical" | "dotsHorizontal" | "dotsVertical" | "download" | "earning" | "earth" | "edit" | "electric" | "evBattery" | "evCable" | "evCharger" | "expand" | "externalLink" | "eyeClosed" | "eyeOpened" | "eye" | "faceRecognition" | "facebook" | "family" | "fileFilled" | "filepdf" | "filexls" | "filter" | "filters" | "flag" | "fourByFour" | "fourWheelDrive" | "fuelTank" | "geolocation" | "gift" | "gps" | "graphUp" | "healing" | "heart" | "hitch" | "home" | "idCard" | "incident" | "infoCircleFilled" | "infoCircle" | "infoFilled" | "info" | "instant" | "invoice" | "keyConnect" | "key" | "licenceCheck" | "licencePaper" | "licence" | "lifeBuoy" | "linkedin" | "loading" | "locality" | "locationMap" | "locationParking" | "locationPin" | "location" | "lockCheck" | "locked" | "login" | "logout" | "mailCheck" | "mail" | "mapAlt" | "map" | "meetDriver" | "meetOwner" | "menuList" | "messages" | "mileage" | "minibus" | "minusCircleFilled" | "minus" | "miscGift" | "moon" | "nearbyDevice" | "notification" | "number1Circle" | "number2Circle" | "number3Circle" | "number4Circle" | "number5Circle" | "okHand" | "optionAirConditioning" | "optionAndroidAuto" | "optionAppleCarplay" | "optionAudioInput" | "optionBabySeat" | "optionBikeRack" | "optionBluetoothAudio" | "optionCdPlayer" | "optionChains" | "optionCruiseControl" | "optionDashcam" | "optionGps" | "optionHasTrailer" | "optionHitch" | "optionRoofBox" | "optionSkiRack" | "optionSnowTire" | "optionWheelchairAccessible" | "paperclip" | "parking" | "passport" | "payments" | "pencil" | "peopleUser" | "percentage" | "performance" | "phoneLink" | "phone" | "photos" | "pickupTruck" | "pig" | "pin" | "plug" | "plusCircleFilled" | "plus" | "position" | "pricingFlat" | "pricingVariable" | "profilePicture" | "questionCircleFilled" | "questionCircle" | "question" | "raceFlag" | "recenter" | "refresh" | "reorder" | "replacementCar" | "reply" | "reset" | "ride" | "road" | "roadsideAssistance" | "roofBox" | "rotate" | "sealCheck" | "searchCar" | "searchPeople" | "search" | "seatbelt" | "sedan" | "send" | "serviceBattery" | "serviceCleaning" | "serviceFuel" | "serviceHealing" | "serviceLocked" | "serviceTolls" | "serviceUnlocked" | "settings" | "shareAndroid" | "shareIos" | "share" | "shieldCheck" | "shield" | "shop" | "skiRack" | "slider" | "smartphone" | "smilingFace" | "snowTire" | "socialFacebook" | "socialLinkedin" | "socialTwitter" | "socialWhatsapp" | "starHalf" | "star" | "stars" | "subway" | "suitcase" | "support" | "suv" | "synch" | "tag" | "timeAlert" | "timeBackwards" | "timeCalendar" | "timeForward" | "tolls" | "trailer" | "train" | "transmission" | "triangleDown" | "triangleRight" | "triangleUp" | "twitter" | "twoPeople" | "uber" | "unfold" | "unlocked" | "userCheck" | "userQuestion" | "userShield" | "userSwitch" | "user" | "utilityVanLarge" | "utilityVanMedium" | "utilityVanSmall" | "verifiedSeal" | "video" | "walk" | "wallet" | "warningCircleFilled" | "warningCircle" | "warning" | "whatsapp" | "wheel" | "wheelchair" | "wrench" | "yingyang" | undefined;
22
22
  forwardedRef?: React.Ref<HTMLInputElement> | undefined;
23
23
  value?: string | undefined;
24
24
  onValueChange?: ((value: string) => void) | undefined;
@@ -14,7 +14,7 @@ export declare const TextInputWrapper: ({ icon, status, render, }: {
14
14
  }) => React.JSX.Element;
15
15
  declare const wrappedComponent: React.ComponentClass<{
16
16
  type?: TextInputType | undefined;
17
- icon?: "search" | "accountDetails" | "addPicture" | "airConditioning" | "airport" | "android" | "antique" | "arrowLeftCircleFilled" | "arrowLeft" | "arrowRightCircleFilled" | "arrowRightCircle" | "arrowRight" | "audioInput" | "babySeat" | "bank" | "battery" | "bell" | "bikeRack" | "bin" | "bluetooth" | "briefcase" | "bulb" | "cable" | "cabriolet" | "calendarCheck" | "calendarClock" | "calendarEnd" | "calendarStart" | "calendar" | "cameraAdd" | "camera" | "campervan" | "capacity" | "carAdd" | "carCheck" | "carDamages" | "carDrivyOpen" | "carGroup" | "carLock" | "carPlay" | "carReturn" | "carSearch" | "carTypeAntique" | "carTypeCabriolet" | "carTypeCampervan" | "carTypeCity" | "carTypeConvertible" | "carTypeCoupe" | "carTypeFamily" | "carTypeFourFour" | "carTypeMinibus" | "carTypeSedan" | "carTypeUtility" | "car" | "card" | "cdPlayer" | "certificate" | "chains" | "checkCircleFilled" | "checkCircle" | "check" | "checklist" | "chevronDown" | "chevronLeft" | "chevronRight" | "chevronUp" | "circledArrowLeft" | "circledArrowRight" | "city" | "cleaning" | "clockAlert" | "clockBackwards" | "clockForwards" | "clock" | "closeCircleFilled" | "close" | "collapse" | "connectCar" | "contactMail" | "contactPhone" | "contextualPaperclip" | "contextualQuestion" | "contextualWarningCircleFilled" | "contextualWarningCircle" | "contract" | "convertible" | "copy" | "coupe" | "creditCardAdd" | "creditCardError" | "creditCard" | "cruiseControl" | "dashcam" | "directions" | "document" | "dotHorizontal" | "dotVertical" | "dotsHorizontal" | "dotsVertical" | "download" | "earning" | "earth" | "edit" | "electric" | "evBattery" | "evCable" | "evCharger" | "expand" | "externalLink" | "eyeClosed" | "eyeOpened" | "eye" | "faceRecognition" | "facebook" | "family" | "fileFilled" | "filepdf" | "filexls" | "filter" | "filters" | "flag" | "fourByFour" | "fourWheelDrive" | "fuelTank" | "geolocation" | "gift" | "gps" | "graphUp" | "healing" | "heart" | "hitch" | "home" | "idCard" | "incident" | "infoCircleFilled" | "infoCircle" | "infoFilled" | "info" | "instant" | "invoice" | "keyConnect" | "key" | "licenceCheck" | "licencePaper" | "licence" | "lifeBuoy" | "linkedin" | "loading" | "locality" | "locationMap" | "locationParking" | "locationPin" | "location" | "lockCheck" | "locked" | "login" | "logout" | "mailCheck" | "mail" | "mapAlt" | "map" | "meetDriver" | "meetOwner" | "menuList" | "messages" | "mileage" | "minibus" | "minusCircleFilled" | "minus" | "miscGift" | "moon" | "nearbyDevice" | "notification" | "number1Circle" | "number2Circle" | "number3Circle" | "number4Circle" | "number5Circle" | "okHand" | "optionAirConditioning" | "optionAndroidAuto" | "optionAppleCarplay" | "optionAudioInput" | "optionBabySeat" | "optionBikeRack" | "optionBluetoothAudio" | "optionCdPlayer" | "optionChains" | "optionCruiseControl" | "optionDashcam" | "optionGps" | "optionHasTrailer" | "optionHitch" | "optionRoofBox" | "optionSkiRack" | "optionSnowTire" | "optionWheelchairAccessible" | "paperclip" | "parking" | "passport" | "payments" | "pencil" | "peopleUser" | "percentage" | "performance" | "phoneLink" | "phone" | "photos" | "pickupTruck" | "pig" | "pin" | "plug" | "plusCircleFilled" | "plus" | "position" | "pricingFlat" | "pricingVariable" | "profilePicture" | "questionCircleFilled" | "questionCircle" | "question" | "raceFlag" | "recenter" | "refresh" | "reorder" | "replacementCar" | "reply" | "reset" | "ride" | "road" | "roadsideAssistance" | "roofBox" | "rotate" | "sealCheck" | "searchCar" | "searchPeople" | "sedan" | "send" | "serviceBattery" | "serviceCleaning" | "serviceFuel" | "serviceHealing" | "serviceLocked" | "serviceTolls" | "serviceUnlocked" | "settings" | "shareAndroid" | "shareIos" | "share" | "shieldCheck" | "shield" | "shop" | "skiRack" | "slider" | "smartphone" | "smilingFace" | "snowTire" | "socialFacebook" | "socialLinkedin" | "socialTwitter" | "socialWhatsapp" | "starHalf" | "star" | "stars" | "subway" | "suitcase" | "support" | "suv" | "synch" | "tag" | "timeAlert" | "timeBackwards" | "timeCalendar" | "timeForward" | "tolls" | "trailer" | "train" | "transmission" | "triangleDown" | "triangleRight" | "triangleUp" | "twitter" | "twoPeople" | "uber" | "unfold" | "unlocked" | "userCheck" | "userQuestion" | "userShield" | "userSwitch" | "user" | "utilityVanLarge" | "utilityVanMedium" | "utilityVanSmall" | "verifiedSeal" | "video" | "walk" | "wallet" | "warningCircleFilled" | "warningCircle" | "warning" | "whatsapp" | "wheel" | "wheelchair" | "wrench" | "yingyang" | undefined;
17
+ icon?: "search" | "accountDetails" | "addPicture" | "airConditioning" | "airport" | "android" | "antique" | "arrowLeftCircleFilled" | "arrowLeft" | "arrowRightCircleFilled" | "arrowRightCircle" | "arrowRight" | "audioInput" | "babySeat" | "bank" | "battery" | "bell" | "bikeRack" | "bin" | "bluetooth" | "briefcase" | "bulb" | "cable" | "cabriolet" | "calendarCheck" | "calendarClock" | "calendarEnd" | "calendarStart" | "calendar" | "cameraAdd" | "camera" | "campervan" | "capacity" | "carAdd" | "carCheck" | "carDamages" | "carDrivyOpen" | "carGroup" | "carLock" | "carPlay" | "carReturn" | "carSearch" | "carTypeAntique" | "carTypeCabriolet" | "carTypeCampervan" | "carTypeCity" | "carTypeConvertible" | "carTypeCoupe" | "carTypeFamily" | "carTypeFourFour" | "carTypeMinibus" | "carTypeSedan" | "carTypeUtility" | "car" | "card" | "cdPlayer" | "certificate" | "chains" | "checkCircleFilled" | "checkCircle" | "check" | "checklist" | "chevronDown" | "chevronLeft" | "chevronRight" | "chevronUp" | "circledArrowLeft" | "circledArrowRight" | "city" | "cleaning" | "clockAlert" | "clockBackwards" | "clockForwards" | "clock" | "closeCircleFilled" | "close" | "collapse" | "connectCar" | "contactMail" | "contactPhone" | "contextualPaperclip" | "contextualQuestion" | "contextualWarningCircleFilled" | "contextualWarningCircle" | "contract" | "convertible" | "copy" | "coupe" | "creditCardAdd" | "creditCardError" | "creditCard" | "cruiseControl" | "dashcam" | "directions" | "document" | "dotHorizontal" | "dotVertical" | "dotsHorizontal" | "dotsVertical" | "download" | "earning" | "earth" | "edit" | "electric" | "evBattery" | "evCable" | "evCharger" | "expand" | "externalLink" | "eyeClosed" | "eyeOpened" | "eye" | "faceRecognition" | "facebook" | "family" | "fileFilled" | "filepdf" | "filexls" | "filter" | "filters" | "flag" | "fourByFour" | "fourWheelDrive" | "fuelTank" | "geolocation" | "gift" | "gps" | "graphUp" | "healing" | "heart" | "hitch" | "home" | "idCard" | "incident" | "infoCircleFilled" | "infoCircle" | "infoFilled" | "info" | "instant" | "invoice" | "keyConnect" | "key" | "licenceCheck" | "licencePaper" | "licence" | "lifeBuoy" | "linkedin" | "loading" | "locality" | "locationMap" | "locationParking" | "locationPin" | "location" | "lockCheck" | "locked" | "login" | "logout" | "mailCheck" | "mail" | "mapAlt" | "map" | "meetDriver" | "meetOwner" | "menuList" | "messages" | "mileage" | "minibus" | "minusCircleFilled" | "minus" | "miscGift" | "moon" | "nearbyDevice" | "notification" | "number1Circle" | "number2Circle" | "number3Circle" | "number4Circle" | "number5Circle" | "okHand" | "optionAirConditioning" | "optionAndroidAuto" | "optionAppleCarplay" | "optionAudioInput" | "optionBabySeat" | "optionBikeRack" | "optionBluetoothAudio" | "optionCdPlayer" | "optionChains" | "optionCruiseControl" | "optionDashcam" | "optionGps" | "optionHasTrailer" | "optionHitch" | "optionRoofBox" | "optionSkiRack" | "optionSnowTire" | "optionWheelchairAccessible" | "paperclip" | "parking" | "passport" | "payments" | "pencil" | "peopleUser" | "percentage" | "performance" | "phoneLink" | "phone" | "photos" | "pickupTruck" | "pig" | "pin" | "plug" | "plusCircleFilled" | "plus" | "position" | "pricingFlat" | "pricingVariable" | "profilePicture" | "questionCircleFilled" | "questionCircle" | "question" | "raceFlag" | "recenter" | "refresh" | "reorder" | "replacementCar" | "reply" | "reset" | "ride" | "road" | "roadsideAssistance" | "roofBox" | "rotate" | "sealCheck" | "searchCar" | "searchPeople" | "seatbelt" | "sedan" | "send" | "serviceBattery" | "serviceCleaning" | "serviceFuel" | "serviceHealing" | "serviceLocked" | "serviceTolls" | "serviceUnlocked" | "settings" | "shareAndroid" | "shareIos" | "share" | "shieldCheck" | "shield" | "shop" | "skiRack" | "slider" | "smartphone" | "smilingFace" | "snowTire" | "socialFacebook" | "socialLinkedin" | "socialTwitter" | "socialWhatsapp" | "starHalf" | "star" | "stars" | "subway" | "suitcase" | "support" | "suv" | "synch" | "tag" | "timeAlert" | "timeBackwards" | "timeCalendar" | "timeForward" | "tolls" | "trailer" | "train" | "transmission" | "triangleDown" | "triangleRight" | "triangleUp" | "twitter" | "twoPeople" | "uber" | "unfold" | "unlocked" | "userCheck" | "userQuestion" | "userShield" | "userSwitch" | "user" | "utilityVanLarge" | "utilityVanMedium" | "utilityVanSmall" | "verifiedSeal" | "video" | "walk" | "wallet" | "warningCircleFilled" | "warningCircle" | "warning" | "whatsapp" | "wheel" | "wheelchair" | "wrench" | "yingyang" | undefined;
18
18
  forwardedRef?: React.Ref<HTMLInputElement> | undefined;
19
19
  } & FormElement & React.InputHTMLAttributes<HTMLInputElement> & {
20
20
  id?: string | undefined;
@@ -0,0 +1,10 @@
1
+ import React from "react";
2
+ import { IconColorsType } from "../";
3
+ export type IconProps = {
4
+ color?: IconColorsType;
5
+ size?: 16 | 20 | 24 | 32;
6
+ contained?: boolean;
7
+ className?: string;
8
+ };
9
+ declare const SeatbeltIcon: ({ color, size, contained, className, }: IconProps) => React.JSX.Element;
10
+ export default SeatbeltIcon;
@@ -234,6 +234,7 @@ export { default as SealCheckIcon } from "./SealCheckIcon";
234
234
  export { default as SearchCarIcon } from "./SearchCarIcon";
235
235
  export { default as SearchIcon } from "./SearchIcon";
236
236
  export { default as SearchPeopleIcon } from "./SearchPeopleIcon";
237
+ export { default as SeatbeltIcon } from "./SeatbeltIcon";
237
238
  export { default as SedanIcon } from "./SedanIcon";
238
239
  export { default as SendIcon } from "./SendIcon";
239
240
  export { default as ServiceBatteryIcon } from "./ServiceBatteryIcon";
@@ -22,7 +22,7 @@ export interface IconProps {
22
22
  contained?: boolean;
23
23
  className?: string;
24
24
  }
25
- export declare const isIconSource: (source: string) => source is "warning" | "accountDetails" | "addPicture" | "airConditioning" | "airport" | "android" | "antique" | "arrowLeftCircleFilled" | "arrowLeft" | "arrowRightCircleFilled" | "arrowRightCircle" | "arrowRight" | "audioInput" | "babySeat" | "bank" | "battery" | "bell" | "bikeRack" | "bin" | "bluetooth" | "briefcase" | "bulb" | "cable" | "cabriolet" | "calendarCheck" | "calendarClock" | "calendarEnd" | "calendarStart" | "calendar" | "cameraAdd" | "camera" | "campervan" | "capacity" | "carAdd" | "carCheck" | "carDamages" | "carDrivyOpen" | "carGroup" | "carLock" | "carPlay" | "carReturn" | "carSearch" | "carTypeAntique" | "carTypeCabriolet" | "carTypeCampervan" | "carTypeCity" | "carTypeConvertible" | "carTypeCoupe" | "carTypeFamily" | "carTypeFourFour" | "carTypeMinibus" | "carTypeSedan" | "carTypeUtility" | "car" | "card" | "cdPlayer" | "certificate" | "chains" | "checkCircleFilled" | "checkCircle" | "check" | "checklist" | "chevronDown" | "chevronLeft" | "chevronRight" | "chevronUp" | "circledArrowLeft" | "circledArrowRight" | "city" | "cleaning" | "clockAlert" | "clockBackwards" | "clockForwards" | "clock" | "closeCircleFilled" | "close" | "collapse" | "connectCar" | "contactMail" | "contactPhone" | "contextualPaperclip" | "contextualQuestion" | "contextualWarningCircleFilled" | "contextualWarningCircle" | "contract" | "convertible" | "copy" | "coupe" | "creditCardAdd" | "creditCardError" | "creditCard" | "cruiseControl" | "dashcam" | "directions" | "document" | "dotHorizontal" | "dotVertical" | "dotsHorizontal" | "dotsVertical" | "download" | "earning" | "earth" | "edit" | "electric" | "evBattery" | "evCable" | "evCharger" | "expand" | "externalLink" | "eyeClosed" | "eyeOpened" | "eye" | "faceRecognition" | "facebook" | "family" | "fileFilled" | "filepdf" | "filexls" | "filter" | "filters" | "flag" | "fourByFour" | "fourWheelDrive" | "fuelTank" | "geolocation" | "gift" | "gps" | "graphUp" | "healing" | "heart" | "hitch" | "home" | "idCard" | "incident" | "infoCircleFilled" | "infoCircle" | "infoFilled" | "info" | "instant" | "invoice" | "keyConnect" | "key" | "licenceCheck" | "licencePaper" | "licence" | "lifeBuoy" | "linkedin" | "loading" | "locality" | "locationMap" | "locationParking" | "locationPin" | "location" | "lockCheck" | "locked" | "login" | "logout" | "mailCheck" | "mail" | "mapAlt" | "map" | "meetDriver" | "meetOwner" | "menuList" | "messages" | "mileage" | "minibus" | "minusCircleFilled" | "minus" | "miscGift" | "moon" | "nearbyDevice" | "notification" | "number1Circle" | "number2Circle" | "number3Circle" | "number4Circle" | "number5Circle" | "okHand" | "optionAirConditioning" | "optionAndroidAuto" | "optionAppleCarplay" | "optionAudioInput" | "optionBabySeat" | "optionBikeRack" | "optionBluetoothAudio" | "optionCdPlayer" | "optionChains" | "optionCruiseControl" | "optionDashcam" | "optionGps" | "optionHasTrailer" | "optionHitch" | "optionRoofBox" | "optionSkiRack" | "optionSnowTire" | "optionWheelchairAccessible" | "paperclip" | "parking" | "passport" | "payments" | "pencil" | "peopleUser" | "percentage" | "performance" | "phoneLink" | "phone" | "photos" | "pickupTruck" | "pig" | "pin" | "plug" | "plusCircleFilled" | "plus" | "position" | "pricingFlat" | "pricingVariable" | "profilePicture" | "questionCircleFilled" | "questionCircle" | "question" | "raceFlag" | "recenter" | "refresh" | "reorder" | "replacementCar" | "reply" | "reset" | "ride" | "road" | "roadsideAssistance" | "roofBox" | "rotate" | "sealCheck" | "searchCar" | "searchPeople" | "search" | "sedan" | "send" | "serviceBattery" | "serviceCleaning" | "serviceFuel" | "serviceHealing" | "serviceLocked" | "serviceTolls" | "serviceUnlocked" | "settings" | "shareAndroid" | "shareIos" | "share" | "shieldCheck" | "shield" | "shop" | "skiRack" | "slider" | "smartphone" | "smilingFace" | "snowTire" | "socialFacebook" | "socialLinkedin" | "socialTwitter" | "socialWhatsapp" | "starHalf" | "star" | "stars" | "subway" | "suitcase" | "support" | "suv" | "synch" | "tag" | "timeAlert" | "timeBackwards" | "timeCalendar" | "timeForward" | "tolls" | "trailer" | "train" | "transmission" | "triangleDown" | "triangleRight" | "triangleUp" | "twitter" | "twoPeople" | "uber" | "unfold" | "unlocked" | "userCheck" | "userQuestion" | "userShield" | "userSwitch" | "user" | "utilityVanLarge" | "utilityVanMedium" | "utilityVanSmall" | "verifiedSeal" | "video" | "walk" | "wallet" | "warningCircleFilled" | "warningCircle" | "whatsapp" | "wheel" | "wheelchair" | "wrench" | "yingyang";
25
+ export declare const isIconSource: (source: string) => source is "warning" | "accountDetails" | "addPicture" | "airConditioning" | "airport" | "android" | "antique" | "arrowLeftCircleFilled" | "arrowLeft" | "arrowRightCircleFilled" | "arrowRightCircle" | "arrowRight" | "audioInput" | "babySeat" | "bank" | "battery" | "bell" | "bikeRack" | "bin" | "bluetooth" | "briefcase" | "bulb" | "cable" | "cabriolet" | "calendarCheck" | "calendarClock" | "calendarEnd" | "calendarStart" | "calendar" | "cameraAdd" | "camera" | "campervan" | "capacity" | "carAdd" | "carCheck" | "carDamages" | "carDrivyOpen" | "carGroup" | "carLock" | "carPlay" | "carReturn" | "carSearch" | "carTypeAntique" | "carTypeCabriolet" | "carTypeCampervan" | "carTypeCity" | "carTypeConvertible" | "carTypeCoupe" | "carTypeFamily" | "carTypeFourFour" | "carTypeMinibus" | "carTypeSedan" | "carTypeUtility" | "car" | "card" | "cdPlayer" | "certificate" | "chains" | "checkCircleFilled" | "checkCircle" | "check" | "checklist" | "chevronDown" | "chevronLeft" | "chevronRight" | "chevronUp" | "circledArrowLeft" | "circledArrowRight" | "city" | "cleaning" | "clockAlert" | "clockBackwards" | "clockForwards" | "clock" | "closeCircleFilled" | "close" | "collapse" | "connectCar" | "contactMail" | "contactPhone" | "contextualPaperclip" | "contextualQuestion" | "contextualWarningCircleFilled" | "contextualWarningCircle" | "contract" | "convertible" | "copy" | "coupe" | "creditCardAdd" | "creditCardError" | "creditCard" | "cruiseControl" | "dashcam" | "directions" | "document" | "dotHorizontal" | "dotVertical" | "dotsHorizontal" | "dotsVertical" | "download" | "earning" | "earth" | "edit" | "electric" | "evBattery" | "evCable" | "evCharger" | "expand" | "externalLink" | "eyeClosed" | "eyeOpened" | "eye" | "faceRecognition" | "facebook" | "family" | "fileFilled" | "filepdf" | "filexls" | "filter" | "filters" | "flag" | "fourByFour" | "fourWheelDrive" | "fuelTank" | "geolocation" | "gift" | "gps" | "graphUp" | "healing" | "heart" | "hitch" | "home" | "idCard" | "incident" | "infoCircleFilled" | "infoCircle" | "infoFilled" | "info" | "instant" | "invoice" | "keyConnect" | "key" | "licenceCheck" | "licencePaper" | "licence" | "lifeBuoy" | "linkedin" | "loading" | "locality" | "locationMap" | "locationParking" | "locationPin" | "location" | "lockCheck" | "locked" | "login" | "logout" | "mailCheck" | "mail" | "mapAlt" | "map" | "meetDriver" | "meetOwner" | "menuList" | "messages" | "mileage" | "minibus" | "minusCircleFilled" | "minus" | "miscGift" | "moon" | "nearbyDevice" | "notification" | "number1Circle" | "number2Circle" | "number3Circle" | "number4Circle" | "number5Circle" | "okHand" | "optionAirConditioning" | "optionAndroidAuto" | "optionAppleCarplay" | "optionAudioInput" | "optionBabySeat" | "optionBikeRack" | "optionBluetoothAudio" | "optionCdPlayer" | "optionChains" | "optionCruiseControl" | "optionDashcam" | "optionGps" | "optionHasTrailer" | "optionHitch" | "optionRoofBox" | "optionSkiRack" | "optionSnowTire" | "optionWheelchairAccessible" | "paperclip" | "parking" | "passport" | "payments" | "pencil" | "peopleUser" | "percentage" | "performance" | "phoneLink" | "phone" | "photos" | "pickupTruck" | "pig" | "pin" | "plug" | "plusCircleFilled" | "plus" | "position" | "pricingFlat" | "pricingVariable" | "profilePicture" | "questionCircleFilled" | "questionCircle" | "question" | "raceFlag" | "recenter" | "refresh" | "reorder" | "replacementCar" | "reply" | "reset" | "ride" | "road" | "roadsideAssistance" | "roofBox" | "rotate" | "sealCheck" | "searchCar" | "searchPeople" | "search" | "seatbelt" | "sedan" | "send" | "serviceBattery" | "serviceCleaning" | "serviceFuel" | "serviceHealing" | "serviceLocked" | "serviceTolls" | "serviceUnlocked" | "settings" | "shareAndroid" | "shareIos" | "share" | "shieldCheck" | "shield" | "shop" | "skiRack" | "slider" | "smartphone" | "smilingFace" | "snowTire" | "socialFacebook" | "socialLinkedin" | "socialTwitter" | "socialWhatsapp" | "starHalf" | "star" | "stars" | "subway" | "suitcase" | "support" | "suv" | "synch" | "tag" | "timeAlert" | "timeBackwards" | "timeCalendar" | "timeForward" | "tolls" | "trailer" | "train" | "transmission" | "triangleDown" | "triangleRight" | "triangleUp" | "twitter" | "twoPeople" | "uber" | "unfold" | "unlocked" | "userCheck" | "userQuestion" | "userShield" | "userSwitch" | "user" | "utilityVanLarge" | "utilityVanMedium" | "utilityVanSmall" | "verifiedSeal" | "video" | "walk" | "wallet" | "warningCircleFilled" | "warningCircle" | "whatsapp" | "wheel" | "wheelchair" | "wrench" | "yingyang";
26
26
  export declare const Icon: ({ source, color, size, contained, className, }: IconProps) => React.JSX.Element;
27
27
  export * from "./__generated__/index";
28
28
  export default Icon;
@@ -234,6 +234,7 @@ export { default as sealCheck } from "./seal-check.svg";
234
234
  export { default as searchCar } from "./search-car.svg";
235
235
  export { default as searchPeople } from "./search-people.svg";
236
236
  export { default as search } from "./search.svg";
237
+ export { default as seatbelt } from "./seatbelt.svg";
237
238
  export { default as sedan } from "./sedan.svg";
238
239
  export { default as send } from "./send.svg";
239
240
  export { default as serviceBattery } from "./service-battery.svg";
@@ -256,6 +256,7 @@ export declare const icons: {
256
256
  searchCar: string;
257
257
  searchPeople: string;
258
258
  search: string;
259
+ seatbelt: string;
259
260
  sedan: string;
260
261
  send: string;
261
262
  serviceBattery: string;