@entur/chip 0.6.25 → 0.6.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chip.cjs.development.js +12 -4
- package/dist/chip.cjs.development.js.map +1 -1
- package/dist/chip.cjs.production.min.js +1 -1
- package/dist/chip.cjs.production.min.js.map +1 -1
- package/dist/chip.esm.js +12 -4
- package/dist/chip.esm.js.map +1 -1
- package/dist/styles.css +134 -134
- package/package.json +3 -3
|
@@ -61,8 +61,12 @@ var ChoiceChip = /*#__PURE__*/React__default["default"].forwardRef(function (_re
|
|
|
61
61
|
style = _ref.style,
|
|
62
62
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded$4);
|
|
63
63
|
var childrenArray = React__default["default"].Children.toArray(children);
|
|
64
|
-
var
|
|
65
|
-
|
|
64
|
+
var isIcon = function isIcon(child) {
|
|
65
|
+
var _child$type;
|
|
66
|
+
return child == null ? void 0 : (_child$type = child.type) == null ? void 0 : _child$type.toString().toLowerCase().includes('icon');
|
|
67
|
+
};
|
|
68
|
+
var hasLeadingIcon = childrenArray.length > 1 && isIcon(childrenArray.at(0));
|
|
69
|
+
var hasTrailingIcon = childrenArray.length > 1 && isIcon(childrenArray.at(-1));
|
|
66
70
|
var classList = classNames__default["default"](className, 'eds-chip', {
|
|
67
71
|
'eds-chip--disabled': disabled,
|
|
68
72
|
'eds-chip--leading-icon': hasLeadingIcon,
|
|
@@ -97,8 +101,12 @@ var ActionChip = /*#__PURE__*/React__default["default"].forwardRef(function (_re
|
|
|
97
101
|
loading = _ref$loading === void 0 ? false : _ref$loading,
|
|
98
102
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
|
|
99
103
|
var childrenArray = React__default["default"].Children.toArray(children);
|
|
100
|
-
var
|
|
101
|
-
|
|
104
|
+
var isIcon = function isIcon(child) {
|
|
105
|
+
var _child$type;
|
|
106
|
+
return child == null ? void 0 : (_child$type = child.type) == null ? void 0 : _child$type.toString().toLowerCase().includes('icon');
|
|
107
|
+
};
|
|
108
|
+
var hasLeadingIcon = childrenArray.length > 1 && isIcon(childrenArray.at(0));
|
|
109
|
+
var hasTrailingIcon = childrenArray.length > 1 && isIcon(childrenArray.at(-1));
|
|
102
110
|
var ariaLabelValue = function ariaLabelValue() {
|
|
103
111
|
if (rest['aria-label']) return rest['aria-label'];
|
|
104
112
|
if (loading) return ariaLabelWhenLoading;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chip.cjs.development.js","sources":["../src/ChoiceChipGroupContext.tsx","../src/ChoiceChip.tsx","../src/ActionChip.tsx","../src/TagChip.tsx","../src/FilterChip.tsx","../src/ChoiceChipGroup.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\n\ntype ChoiceChipGroupContextProps = {\n name: string;\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n value: string | null;\n};\n\nconst ChoiceChipGroupContext =\n React.createContext<ChoiceChipGroupContextProps | null>(null);\n\nexport const ChoiceChipGroupContextProvider = ChoiceChipGroupContext.Provider;\n\nexport const useChoiceChipGroupContext: () => ChoiceChipGroupContextProps =\n () => {\n const context = React.useContext(ChoiceChipGroupContext);\n if (!context) {\n throw new Error(\n 'You need to wrap your ChoiceChips in a ChoiceChipGroup-component',\n );\n }\n return context;\n };\n","import React from 'react';\nimport cx from 'classnames';\nimport { useChoiceChipGroupContext } from './ChoiceChipGroupContext';\nimport './BaseChip.scss';\nimport './ChoiceChip.scss';\n\nexport type ChoiceChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om Choicechip er deaktivert eller ikke\n * @default false\n */\n disabled?: boolean;\n /** Label til ChoiceChip */\n children?: React.ReactNode;\n /** Verdien til ChoiceChip */\n value: string;\n} & Omit<\n React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n >,\n 'value'\n>;\n\nexport const ChoiceChip = React.forwardRef<HTMLInputElement, ChoiceChipProps>(\n (\n { className, children, value, disabled = false, style, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const classList = cx(className, 'eds-chip', {\n 'eds-chip--disabled': disabled,\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n });\n const {\n name,\n value: selectedValue,\n onChange,\n } = useChoiceChipGroupContext();\n return (\n <label className=\"eds-choice-chip\" style={style}>\n <input\n className=\"eds-choice-chip__input\"\n type=\"radio\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n checked={selectedValue === value}\n onChange={onChange}\n {...rest}\n />\n <div className={classList}>{children}</div>\n </label>\n );\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseChip.scss';\nimport './ActionChip.scss';\n\nexport type ActionChipProps = {\n /** Teksten som vises i ActionChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Om chip-en er opptatt, f.eks med å oppdatere informasjon\n * @default false\n */\n loading?: boolean;\n} & React.DetailedHTMLProps<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n>;\n\nexport const ActionChip = React.forwardRef<HTMLButtonElement, ActionChipProps>(\n (\n { children, className, loading = false, ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const ariaLabelValue = () => {\n if (rest['aria-label']) return rest['aria-label'];\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const actionChip = (\n <button\n className={classNames(\n 'eds-chip',\n 'eds-action-chip',\n {\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n 'eds-action-chip--disabled': rest.disabled,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n aria-label={ariaLabelValue()}\n type=\"button\"\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-action-chip__loading-dots\" />\n ) : (\n children\n )}\n </button>\n );\n\n if (rest.disabled) {\n return (\n <div className=\"eds-action-chip--disabled__wrapper\">{actionChip}</div>\n );\n }\n return <>{actionChip}</>;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { CloseIcon } from '@entur/icons';\nimport './BaseChip.scss';\nimport './TagChip.scss';\n\nexport type TagChipProps = {\n /** Teksten som vises i TagChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback for når man klikker på krysset */\n onClose: () => void;\n /** Skjermlesertekst for X-knappen */\n closeButtonAriaLabel?: string;\n};\n\nexport const TagChip = React.forwardRef<HTMLButtonElement, TagChipProps>(\n (\n { children, className, onClose, closeButtonAriaLabel, ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const selectedCloseLabel =\n closeButtonAriaLabel ?? 'Fjern ' + children?.toString();\n\n return (\n <div\n className={classNames('eds-chip', 'eds-tag-chip', className)}\n {...rest}\n >\n {children}\n <button\n className=\"eds-tag-chip__close-button\"\n type=\"button\"\n onClick={onClose}\n aria-label={selectedCloseLabel}\n ref={ref}\n >\n <CloseIcon />\n </button>\n </div>\n );\n },\n);\n","import React from 'react';\nimport cx from 'classnames';\nimport './BaseChip.scss';\nimport './FilterChip.scss';\n\nexport type FilterChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Label til FilterChip */\n children?: React.ReactNode;\n /** Verdien til FilterChip */\n value: string;\n} & React.InputHTMLAttributes<HTMLInputElement>;\n\nexport const FilterChip = React.forwardRef<HTMLInputElement, FilterChipProps>(\n (\n { className, children, value, disabled = false, name, style, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const classList = cx(className, 'eds-chip', 'eds-filter-chip');\n\n return (\n <label className={classList} style={style}>\n <input\n className=\"eds-filter-chip__input\"\n type=\"checkbox\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n {...rest}\n />\n <span className=\"eds-filter-chip__icon\">\n <CheckboxIcon />\n </span>\n {children}\n </label>\n );\n },\n);\n\nconst CheckboxIcon: React.FC = () => {\n return (\n <svg\n className=\"eds-filter-chip-icon\"\n width=\"11px\"\n height=\"9px\"\n viewBox=\"6 11 37 33\"\n >\n <path\n className=\"eds-filter-chip-icon__path\"\n d=\"M14.1 27.2l7.1 7.2 14.6-14.8\"\n fill=\"none\"\n />\n </svg>\n );\n};\n","import React from 'react';\nimport { ChoiceChipGroupContextProvider } from './ChoiceChipGroupContext';\nimport { Fieldset } from '@entur/form';\nexport type ChoiceChipGroupProps = {\n /** Navnet til ChoiceChipsGroup */\n name: string;\n /** Verdien til den valgte ChoiceChipen */\n value: string | null;\n /** ChoiceChip-komponentene sendes inn som children */\n children: React.ReactNode;\n /** En callback som blir kalles hver gang en ChoiceChip klikkes på */\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Labelen til ChoiceChip-gruppen. */\n label?: React.ReactNode;\n [key: string]: any;\n};\n\nexport const ChoiceChipGroup: React.FC<ChoiceChipGroupProps> = ({\n name,\n value,\n children,\n onChange,\n label,\n ...rest\n}) => {\n const contextValue = React.useMemo(\n () => ({ name, value, onChange }),\n [name, value, onChange],\n );\n return (\n <ChoiceChipGroupContextProvider value={contextValue}>\n <Fieldset className=\"eds-choice-chips-group\" label={label} {...rest}>\n {children}\n </Fieldset>\n </ChoiceChipGroupContextProvider>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('chip', 'form');\n\nexport * from './ChoiceChip';\nexport * from './ActionChip';\nexport * from './TagChip';\nexport * from './FilterChip';\nexport * from './ChoiceChipGroup';\n"],"names":["ChoiceChipGroupContext","React","createContext","ChoiceChipGroupContextProvider","Provider","useChoiceChipGroupContext","context","useContext","Error","ChoiceChip","forwardRef","ref","className","children","value","disabled","style","rest","_excluded","childrenArray","Children","toArray","hasLeadingIcon","length","hasTrailingIcon","classList","cx","name","selectedValue","onChange","createElement","type","checked","ActionChip","loading","ariaLabelValue","ariaLabelWhenLoading","undefined","filter","child","join","actionChip","classNames","LoadingDots","Fragment","TagChip","onClose","closeButtonAriaLabel","selectedCloseLabel","toString","onClick","CloseIcon","FilterChip","CheckboxIcon","width","height","viewBox","d","fill","ChoiceChipGroup","label","contextValue","useMemo","Fieldset","warnAboutMissingStyles"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chip.cjs.development.js","sources":["../src/ChoiceChipGroupContext.tsx","../src/ChoiceChip.tsx","../src/ActionChip.tsx","../src/TagChip.tsx","../src/FilterChip.tsx","../src/ChoiceChipGroup.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\n\ntype ChoiceChipGroupContextProps = {\n name: string;\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n value: string | null;\n};\n\nconst ChoiceChipGroupContext =\n React.createContext<ChoiceChipGroupContextProps | null>(null);\n\nexport const ChoiceChipGroupContextProvider = ChoiceChipGroupContext.Provider;\n\nexport const useChoiceChipGroupContext: () => ChoiceChipGroupContextProps =\n () => {\n const context = React.useContext(ChoiceChipGroupContext);\n if (!context) {\n throw new Error(\n 'You need to wrap your ChoiceChips in a ChoiceChipGroup-component',\n );\n }\n return context;\n };\n","import React from 'react';\nimport cx from 'classnames';\nimport { useChoiceChipGroupContext } from './ChoiceChipGroupContext';\nimport './BaseChip.scss';\nimport './ChoiceChip.scss';\n\nexport type ChoiceChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om Choicechip er deaktivert eller ikke\n * @default false\n */\n disabled?: boolean;\n /** Label til ChoiceChip */\n children?: React.ReactNode;\n /** Verdien til ChoiceChip */\n value: string;\n} & Omit<\n React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n >,\n 'value'\n>;\n\nexport const ChoiceChip = React.forwardRef<HTMLInputElement, ChoiceChipProps>(\n (\n { className, children, value, disabled = false, style, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const isIcon = (child: any) =>\n child?.type?.toString().toLowerCase().includes('icon');\n const hasLeadingIcon =\n childrenArray.length > 1 && isIcon(childrenArray.at(0));\n const hasTrailingIcon =\n childrenArray.length > 1 && isIcon(childrenArray.at(-1));\n\n const classList = cx(className, 'eds-chip', {\n 'eds-chip--disabled': disabled,\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n });\n const {\n name,\n value: selectedValue,\n onChange,\n } = useChoiceChipGroupContext();\n return (\n <label className=\"eds-choice-chip\" style={style}>\n <input\n className=\"eds-choice-chip__input\"\n type=\"radio\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n checked={selectedValue === value}\n onChange={onChange}\n {...rest}\n />\n <div className={classList}>{children}</div>\n </label>\n );\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseChip.scss';\nimport './ActionChip.scss';\n\nexport type ActionChipProps = {\n /** Teksten som vises i ActionChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Om chip-en er opptatt, f.eks med å oppdatere informasjon\n * @default false\n */\n loading?: boolean;\n} & React.DetailedHTMLProps<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n>;\n\nexport const ActionChip = React.forwardRef<HTMLButtonElement, ActionChipProps>(\n (\n { children, className, loading = false, ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const isIcon = (child: any) =>\n child?.type?.toString().toLowerCase().includes('icon');\n const hasLeadingIcon =\n childrenArray.length > 1 && isIcon(childrenArray.at(0));\n const hasTrailingIcon =\n childrenArray.length > 1 && isIcon(childrenArray.at(-1));\n\n const ariaLabelValue = () => {\n if (rest['aria-label']) return rest['aria-label'];\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const actionChip = (\n <button\n className={classNames(\n 'eds-chip',\n 'eds-action-chip',\n {\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n 'eds-action-chip--disabled': rest.disabled,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n aria-label={ariaLabelValue()}\n type=\"button\"\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-action-chip__loading-dots\" />\n ) : (\n children\n )}\n </button>\n );\n\n if (rest.disabled) {\n return (\n <div className=\"eds-action-chip--disabled__wrapper\">{actionChip}</div>\n );\n }\n return <>{actionChip}</>;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { CloseIcon } from '@entur/icons';\nimport './BaseChip.scss';\nimport './TagChip.scss';\n\nexport type TagChipProps = {\n /** Teksten som vises i TagChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback for når man klikker på krysset */\n onClose: () => void;\n /** Skjermlesertekst for X-knappen */\n closeButtonAriaLabel?: string;\n};\n\nexport const TagChip = React.forwardRef<HTMLButtonElement, TagChipProps>(\n (\n { children, className, onClose, closeButtonAriaLabel, ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const selectedCloseLabel =\n closeButtonAriaLabel ?? 'Fjern ' + children?.toString();\n\n return (\n <div\n className={classNames('eds-chip', 'eds-tag-chip', className)}\n {...rest}\n >\n {children}\n <button\n className=\"eds-tag-chip__close-button\"\n type=\"button\"\n onClick={onClose}\n aria-label={selectedCloseLabel}\n ref={ref}\n >\n <CloseIcon />\n </button>\n </div>\n );\n },\n);\n","import React from 'react';\nimport cx from 'classnames';\nimport './BaseChip.scss';\nimport './FilterChip.scss';\n\nexport type FilterChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Label til FilterChip */\n children?: React.ReactNode;\n /** Verdien til FilterChip */\n value: string;\n} & React.InputHTMLAttributes<HTMLInputElement>;\n\nexport const FilterChip = React.forwardRef<HTMLInputElement, FilterChipProps>(\n (\n { className, children, value, disabled = false, name, style, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const classList = cx(className, 'eds-chip', 'eds-filter-chip');\n\n return (\n <label className={classList} style={style}>\n <input\n className=\"eds-filter-chip__input\"\n type=\"checkbox\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n {...rest}\n />\n <span className=\"eds-filter-chip__icon\">\n <CheckboxIcon />\n </span>\n {children}\n </label>\n );\n },\n);\n\nconst CheckboxIcon: React.FC = () => {\n return (\n <svg\n className=\"eds-filter-chip-icon\"\n width=\"11px\"\n height=\"9px\"\n viewBox=\"6 11 37 33\"\n >\n <path\n className=\"eds-filter-chip-icon__path\"\n d=\"M14.1 27.2l7.1 7.2 14.6-14.8\"\n fill=\"none\"\n />\n </svg>\n );\n};\n","import React from 'react';\nimport { ChoiceChipGroupContextProvider } from './ChoiceChipGroupContext';\nimport { Fieldset } from '@entur/form';\nexport type ChoiceChipGroupProps = {\n /** Navnet til ChoiceChipsGroup */\n name: string;\n /** Verdien til den valgte ChoiceChipen */\n value: string | null;\n /** ChoiceChip-komponentene sendes inn som children */\n children: React.ReactNode;\n /** En callback som blir kalles hver gang en ChoiceChip klikkes på */\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Labelen til ChoiceChip-gruppen. */\n label?: React.ReactNode;\n [key: string]: any;\n};\n\nexport const ChoiceChipGroup: React.FC<ChoiceChipGroupProps> = ({\n name,\n value,\n children,\n onChange,\n label,\n ...rest\n}) => {\n const contextValue = React.useMemo(\n () => ({ name, value, onChange }),\n [name, value, onChange],\n );\n return (\n <ChoiceChipGroupContextProvider value={contextValue}>\n <Fieldset className=\"eds-choice-chips-group\" label={label} {...rest}>\n {children}\n </Fieldset>\n </ChoiceChipGroupContextProvider>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('chip', 'form');\n\nexport * from './ChoiceChip';\nexport * from './ActionChip';\nexport * from './TagChip';\nexport * from './FilterChip';\nexport * from './ChoiceChipGroup';\n"],"names":["ChoiceChipGroupContext","React","createContext","ChoiceChipGroupContextProvider","Provider","useChoiceChipGroupContext","context","useContext","Error","ChoiceChip","forwardRef","ref","className","children","value","disabled","style","rest","_excluded","childrenArray","Children","toArray","isIcon","child","type","toString","toLowerCase","includes","hasLeadingIcon","length","at","hasTrailingIcon","classList","cx","name","selectedValue","onChange","createElement","checked","ActionChip","loading","ariaLabelValue","ariaLabelWhenLoading","undefined","filter","join","actionChip","classNames","LoadingDots","Fragment","TagChip","onClose","closeButtonAriaLabel","selectedCloseLabel","onClick","CloseIcon","FilterChip","CheckboxIcon","width","height","viewBox","d","fill","ChoiceChipGroup","label","contextValue","useMemo","Fieldset","warnAboutMissingStyles"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@entur/utils"),a=require("react"),t=require("classnames"),l=require("@entur/loader"),n=require("@entur/icons"),r=require("@entur/form");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=i(a),s=i(t);function d(){return d=Object.assign?Object.assign.bind():function(e){for(var a=1;a<arguments.length;a++){var t=arguments[a];for(var l in t)Object.prototype.hasOwnProperty.call(t,l)&&(e[l]=t[l])}return e},d.apply(this,arguments)}function o(e,a){if(null==e)return{};var t,l,n={},r=Object.keys(e);for(l=0;l<r.length;l++)a.indexOf(t=r[l])>=0||(n[t]=e[t]);return n}var u=c.default.createContext(null),f=u.Provider,h=["className","children","value","disabled","style"],p=c.default.forwardRef((function(e,a){var t=e.className,l=e.children,n=e.value,r=e.disabled,i=void 0!==r&&r,f=e.style,p=o(e,h),m=c.default.Children.toArray(l),b=s.default(t,"eds-chip",{"eds-chip--disabled":i,"eds-chip--leading-icon":
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@entur/utils"),a=require("react"),t=require("classnames"),l=require("@entur/loader"),n=require("@entur/icons"),r=require("@entur/form");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=i(a),s=i(t);function d(){return d=Object.assign?Object.assign.bind():function(e){for(var a=1;a<arguments.length;a++){var t=arguments[a];for(var l in t)Object.prototype.hasOwnProperty.call(t,l)&&(e[l]=t[l])}return e},d.apply(this,arguments)}function o(e,a){if(null==e)return{};var t,l,n={},r=Object.keys(e);for(l=0;l<r.length;l++)a.indexOf(t=r[l])>=0||(n[t]=e[t]);return n}var u=c.default.createContext(null),f=u.Provider,h=["className","children","value","disabled","style"],p=c.default.forwardRef((function(e,a){var t=e.className,l=e.children,n=e.value,r=e.disabled,i=void 0!==r&&r,f=e.style,p=o(e,h),m=c.default.Children.toArray(l),v=function(e){var a;return null==e||null==(a=e.type)?void 0:a.toString().toLowerCase().includes("icon")},b=m.length>1&&v(m.at(0)),g=m.length>1&&v(m.at(-1)),C=s.default(t,"eds-chip",{"eds-chip--disabled":i,"eds-chip--leading-icon":b,"eds-chip--trailing-icon":g}),y=function(){var e=c.default.useContext(u);if(!e)throw new Error("You need to wrap your ChoiceChips in a ChoiceChipGroup-component");return e}();return c.default.createElement("label",{className:"eds-choice-chip",style:f},c.default.createElement("input",d({className:"eds-choice-chip__input",type:"radio",name:y.name,ref:a,value:n,disabled:i,checked:y.value===n,onChange:y.onChange},p)),c.default.createElement("div",{className:C},l))})),m=["children","className","loading"],v=c.default.forwardRef((function(e,a){var t=e.children,n=e.className,r=e.loading,i=void 0!==r&&r,u=o(e,m),f=c.default.Children.toArray(t),h=function(e){var a;return null==e||null==(a=e.type)?void 0:a.toString().toLowerCase().includes("icon")},p=f.length>1&&h(f.at(0)),v=f.length>1&&h(f.at(-1)),b=f.filter((function(e){return"string"==typeof e})).join(" "),g=c.default.createElement("button",d({className:s.default("eds-chip","eds-action-chip",{"eds-chip--leading-icon":p,"eds-chip--trailing-icon":v,"eds-action-chip--disabled":u.disabled},n),ref:a,"aria-busy":i,"aria-label":u["aria-label"]?u["aria-label"]:i?b:void 0,type:"button"},u),i?c.default.createElement(l.LoadingDots,{className:"eds-action-chip__loading-dots"}):t);return u.disabled?c.default.createElement("div",{className:"eds-action-chip--disabled__wrapper"},g):c.default.createElement(c.default.Fragment,null,g)})),b=["children","className","onClose","closeButtonAriaLabel"],g=c.default.forwardRef((function(e,a){var t=e.children,l=e.className,r=e.onClose,i=e.closeButtonAriaLabel,u=o(e,b),f=null!=i?i:"Fjern "+(null==t?void 0:t.toString());return c.default.createElement("div",d({className:s.default("eds-chip","eds-tag-chip",l)},u),t,c.default.createElement("button",{className:"eds-tag-chip__close-button",type:"button",onClick:r,"aria-label":f,ref:a},c.default.createElement(n.CloseIcon,null)))})),C=["className","children","value","disabled","name","style"],y=c.default.forwardRef((function(e,a){var t=e.className,l=e.children,n=e.value,r=e.disabled,i=void 0!==r&&r,u=e.name,f=e.style,h=o(e,C),p=s.default(t,"eds-chip","eds-filter-chip");return c.default.createElement("label",{className:p,style:f},c.default.createElement("input",d({className:"eds-filter-chip__input",type:"checkbox",name:u,ref:a,value:n,disabled:i},h)),c.default.createElement("span",{className:"eds-filter-chip__icon"},c.default.createElement(N,null)),l)})),N=function(){return c.default.createElement("svg",{className:"eds-filter-chip-icon",width:"11px",height:"9px",viewBox:"6 11 37 33"},c.default.createElement("path",{className:"eds-filter-chip-icon__path",d:"M14.1 27.2l7.1 7.2 14.6-14.8",fill:"none"}))},E=["name","value","children","onChange","label"];e.warnAboutMissingStyles("chip","form"),exports.ActionChip=v,exports.ChoiceChip=p,exports.ChoiceChipGroup=function(e){var a=e.name,t=e.value,l=e.children,n=e.onChange,i=e.label,s=o(e,E),u=c.default.useMemo((function(){return{name:a,value:t,onChange:n}}),[a,t,n]);return c.default.createElement(f,{value:u},c.default.createElement(r.Fieldset,d({className:"eds-choice-chips-group",label:i},s),l))},exports.FilterChip=y,exports.TagChip=g;
|
|
2
2
|
//# sourceMappingURL=chip.cjs.production.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chip.cjs.production.min.js","sources":["../src/ChoiceChipGroupContext.tsx","../src/ChoiceChip.tsx","../src/ActionChip.tsx","../src/TagChip.tsx","../src/FilterChip.tsx","../src/index.tsx","../src/ChoiceChipGroup.tsx"],"sourcesContent":["import React from 'react';\n\ntype ChoiceChipGroupContextProps = {\n name: string;\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n value: string | null;\n};\n\nconst ChoiceChipGroupContext =\n React.createContext<ChoiceChipGroupContextProps | null>(null);\n\nexport const ChoiceChipGroupContextProvider = ChoiceChipGroupContext.Provider;\n\nexport const useChoiceChipGroupContext: () => ChoiceChipGroupContextProps =\n () => {\n const context = React.useContext(ChoiceChipGroupContext);\n if (!context) {\n throw new Error(\n 'You need to wrap your ChoiceChips in a ChoiceChipGroup-component',\n );\n }\n return context;\n };\n","import React from 'react';\nimport cx from 'classnames';\nimport { useChoiceChipGroupContext } from './ChoiceChipGroupContext';\nimport './BaseChip.scss';\nimport './ChoiceChip.scss';\n\nexport type ChoiceChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om Choicechip er deaktivert eller ikke\n * @default false\n */\n disabled?: boolean;\n /** Label til ChoiceChip */\n children?: React.ReactNode;\n /** Verdien til ChoiceChip */\n value: string;\n} & Omit<\n React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n >,\n 'value'\n>;\n\nexport const ChoiceChip = React.forwardRef<HTMLInputElement, ChoiceChipProps>(\n (\n { className, children, value, disabled = false, style, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const classList = cx(className, 'eds-chip', {\n 'eds-chip--disabled': disabled,\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n });\n const {\n name,\n value: selectedValue,\n onChange,\n } = useChoiceChipGroupContext();\n return (\n <label className=\"eds-choice-chip\" style={style}>\n <input\n className=\"eds-choice-chip__input\"\n type=\"radio\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n checked={selectedValue === value}\n onChange={onChange}\n {...rest}\n />\n <div className={classList}>{children}</div>\n </label>\n );\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseChip.scss';\nimport './ActionChip.scss';\n\nexport type ActionChipProps = {\n /** Teksten som vises i ActionChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Om chip-en er opptatt, f.eks med å oppdatere informasjon\n * @default false\n */\n loading?: boolean;\n} & React.DetailedHTMLProps<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n>;\n\nexport const ActionChip = React.forwardRef<HTMLButtonElement, ActionChipProps>(\n (\n { children, className, loading = false, ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const ariaLabelValue = () => {\n if (rest['aria-label']) return rest['aria-label'];\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const actionChip = (\n <button\n className={classNames(\n 'eds-chip',\n 'eds-action-chip',\n {\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n 'eds-action-chip--disabled': rest.disabled,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n aria-label={ariaLabelValue()}\n type=\"button\"\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-action-chip__loading-dots\" />\n ) : (\n children\n )}\n </button>\n );\n\n if (rest.disabled) {\n return (\n <div className=\"eds-action-chip--disabled__wrapper\">{actionChip}</div>\n );\n }\n return <>{actionChip}</>;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { CloseIcon } from '@entur/icons';\nimport './BaseChip.scss';\nimport './TagChip.scss';\n\nexport type TagChipProps = {\n /** Teksten som vises i TagChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback for når man klikker på krysset */\n onClose: () => void;\n /** Skjermlesertekst for X-knappen */\n closeButtonAriaLabel?: string;\n};\n\nexport const TagChip = React.forwardRef<HTMLButtonElement, TagChipProps>(\n (\n { children, className, onClose, closeButtonAriaLabel, ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const selectedCloseLabel =\n closeButtonAriaLabel ?? 'Fjern ' + children?.toString();\n\n return (\n <div\n className={classNames('eds-chip', 'eds-tag-chip', className)}\n {...rest}\n >\n {children}\n <button\n className=\"eds-tag-chip__close-button\"\n type=\"button\"\n onClick={onClose}\n aria-label={selectedCloseLabel}\n ref={ref}\n >\n <CloseIcon />\n </button>\n </div>\n );\n },\n);\n","import React from 'react';\nimport cx from 'classnames';\nimport './BaseChip.scss';\nimport './FilterChip.scss';\n\nexport type FilterChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Label til FilterChip */\n children?: React.ReactNode;\n /** Verdien til FilterChip */\n value: string;\n} & React.InputHTMLAttributes<HTMLInputElement>;\n\nexport const FilterChip = React.forwardRef<HTMLInputElement, FilterChipProps>(\n (\n { className, children, value, disabled = false, name, style, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const classList = cx(className, 'eds-chip', 'eds-filter-chip');\n\n return (\n <label className={classList} style={style}>\n <input\n className=\"eds-filter-chip__input\"\n type=\"checkbox\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n {...rest}\n />\n <span className=\"eds-filter-chip__icon\">\n <CheckboxIcon />\n </span>\n {children}\n </label>\n );\n },\n);\n\nconst CheckboxIcon: React.FC = () => {\n return (\n <svg\n className=\"eds-filter-chip-icon\"\n width=\"11px\"\n height=\"9px\"\n viewBox=\"6 11 37 33\"\n >\n <path\n className=\"eds-filter-chip-icon__path\"\n d=\"M14.1 27.2l7.1 7.2 14.6-14.8\"\n fill=\"none\"\n />\n </svg>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('chip', 'form');\n\nexport * from './ChoiceChip';\nexport * from './ActionChip';\nexport * from './TagChip';\nexport * from './FilterChip';\nexport * from './ChoiceChipGroup';\n","import React from 'react';\nimport { ChoiceChipGroupContextProvider } from './ChoiceChipGroupContext';\nimport { Fieldset } from '@entur/form';\nexport type ChoiceChipGroupProps = {\n /** Navnet til ChoiceChipsGroup */\n name: string;\n /** Verdien til den valgte ChoiceChipen */\n value: string | null;\n /** ChoiceChip-komponentene sendes inn som children */\n children: React.ReactNode;\n /** En callback som blir kalles hver gang en ChoiceChip klikkes på */\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Labelen til ChoiceChip-gruppen. */\n label?: React.ReactNode;\n [key: string]: any;\n};\n\nexport const ChoiceChipGroup: React.FC<ChoiceChipGroupProps> = ({\n name,\n value,\n children,\n onChange,\n label,\n ...rest\n}) => {\n const contextValue = React.useMemo(\n () => ({ name, value, onChange }),\n [name, value, onChange],\n );\n return (\n <ChoiceChipGroupContextProvider value={contextValue}>\n <Fieldset className=\"eds-choice-chips-group\" label={label} {...rest}>\n {children}\n </Fieldset>\n </ChoiceChipGroupContextProvider>\n );\n};\n"],"names":["ChoiceChipGroupContext","React","createContext","ChoiceChipGroupContextProvider","Provider","ChoiceChip","forwardRef","ref","className","children","value","_ref$disabled","_ref","disabled","style","rest","_objectWithoutPropertiesLoose","_excluded","childrenArray","Children","toArray","classList","cx","length","_useChoiceChipGroupCo","context","useContext","Error","useChoiceChipGroupContext","createElement","_extends","type","name","checked","onChange","ActionChip","_ref$loading","loading","hasLeadingIcon","hasTrailingIcon","ariaLabelWhenLoading","filter","child","join","actionChip","classNames","LoadingDots","Fragment","TagChip","onClose","closeButtonAriaLabel","selectedCloseLabel","toString","onClick","CloseIcon","FilterChip","CheckboxIcon","width","height","viewBox","d","fill","warnAboutMissingStyles","label","contextValue","useMemo","Fieldset"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chip.cjs.production.min.js","sources":["../src/ChoiceChipGroupContext.tsx","../src/ChoiceChip.tsx","../src/ActionChip.tsx","../src/TagChip.tsx","../src/FilterChip.tsx","../src/index.tsx","../src/ChoiceChipGroup.tsx"],"sourcesContent":["import React from 'react';\n\ntype ChoiceChipGroupContextProps = {\n name: string;\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n value: string | null;\n};\n\nconst ChoiceChipGroupContext =\n React.createContext<ChoiceChipGroupContextProps | null>(null);\n\nexport const ChoiceChipGroupContextProvider = ChoiceChipGroupContext.Provider;\n\nexport const useChoiceChipGroupContext: () => ChoiceChipGroupContextProps =\n () => {\n const context = React.useContext(ChoiceChipGroupContext);\n if (!context) {\n throw new Error(\n 'You need to wrap your ChoiceChips in a ChoiceChipGroup-component',\n );\n }\n return context;\n };\n","import React from 'react';\nimport cx from 'classnames';\nimport { useChoiceChipGroupContext } from './ChoiceChipGroupContext';\nimport './BaseChip.scss';\nimport './ChoiceChip.scss';\n\nexport type ChoiceChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om Choicechip er deaktivert eller ikke\n * @default false\n */\n disabled?: boolean;\n /** Label til ChoiceChip */\n children?: React.ReactNode;\n /** Verdien til ChoiceChip */\n value: string;\n} & Omit<\n React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n >,\n 'value'\n>;\n\nexport const ChoiceChip = React.forwardRef<HTMLInputElement, ChoiceChipProps>(\n (\n { className, children, value, disabled = false, style, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const isIcon = (child: any) =>\n child?.type?.toString().toLowerCase().includes('icon');\n const hasLeadingIcon =\n childrenArray.length > 1 && isIcon(childrenArray.at(0));\n const hasTrailingIcon =\n childrenArray.length > 1 && isIcon(childrenArray.at(-1));\n\n const classList = cx(className, 'eds-chip', {\n 'eds-chip--disabled': disabled,\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n });\n const {\n name,\n value: selectedValue,\n onChange,\n } = useChoiceChipGroupContext();\n return (\n <label className=\"eds-choice-chip\" style={style}>\n <input\n className=\"eds-choice-chip__input\"\n type=\"radio\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n checked={selectedValue === value}\n onChange={onChange}\n {...rest}\n />\n <div className={classList}>{children}</div>\n </label>\n );\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseChip.scss';\nimport './ActionChip.scss';\n\nexport type ActionChipProps = {\n /** Teksten som vises i ActionChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Om chip-en er opptatt, f.eks med å oppdatere informasjon\n * @default false\n */\n loading?: boolean;\n} & React.DetailedHTMLProps<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n>;\n\nexport const ActionChip = React.forwardRef<HTMLButtonElement, ActionChipProps>(\n (\n { children, className, loading = false, ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const isIcon = (child: any) =>\n child?.type?.toString().toLowerCase().includes('icon');\n const hasLeadingIcon =\n childrenArray.length > 1 && isIcon(childrenArray.at(0));\n const hasTrailingIcon =\n childrenArray.length > 1 && isIcon(childrenArray.at(-1));\n\n const ariaLabelValue = () => {\n if (rest['aria-label']) return rest['aria-label'];\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const actionChip = (\n <button\n className={classNames(\n 'eds-chip',\n 'eds-action-chip',\n {\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n 'eds-action-chip--disabled': rest.disabled,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n aria-label={ariaLabelValue()}\n type=\"button\"\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-action-chip__loading-dots\" />\n ) : (\n children\n )}\n </button>\n );\n\n if (rest.disabled) {\n return (\n <div className=\"eds-action-chip--disabled__wrapper\">{actionChip}</div>\n );\n }\n return <>{actionChip}</>;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { CloseIcon } from '@entur/icons';\nimport './BaseChip.scss';\nimport './TagChip.scss';\n\nexport type TagChipProps = {\n /** Teksten som vises i TagChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback for når man klikker på krysset */\n onClose: () => void;\n /** Skjermlesertekst for X-knappen */\n closeButtonAriaLabel?: string;\n};\n\nexport const TagChip = React.forwardRef<HTMLButtonElement, TagChipProps>(\n (\n { children, className, onClose, closeButtonAriaLabel, ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const selectedCloseLabel =\n closeButtonAriaLabel ?? 'Fjern ' + children?.toString();\n\n return (\n <div\n className={classNames('eds-chip', 'eds-tag-chip', className)}\n {...rest}\n >\n {children}\n <button\n className=\"eds-tag-chip__close-button\"\n type=\"button\"\n onClick={onClose}\n aria-label={selectedCloseLabel}\n ref={ref}\n >\n <CloseIcon />\n </button>\n </div>\n );\n },\n);\n","import React from 'react';\nimport cx from 'classnames';\nimport './BaseChip.scss';\nimport './FilterChip.scss';\n\nexport type FilterChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Label til FilterChip */\n children?: React.ReactNode;\n /** Verdien til FilterChip */\n value: string;\n} & React.InputHTMLAttributes<HTMLInputElement>;\n\nexport const FilterChip = React.forwardRef<HTMLInputElement, FilterChipProps>(\n (\n { className, children, value, disabled = false, name, style, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const classList = cx(className, 'eds-chip', 'eds-filter-chip');\n\n return (\n <label className={classList} style={style}>\n <input\n className=\"eds-filter-chip__input\"\n type=\"checkbox\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n {...rest}\n />\n <span className=\"eds-filter-chip__icon\">\n <CheckboxIcon />\n </span>\n {children}\n </label>\n );\n },\n);\n\nconst CheckboxIcon: React.FC = () => {\n return (\n <svg\n className=\"eds-filter-chip-icon\"\n width=\"11px\"\n height=\"9px\"\n viewBox=\"6 11 37 33\"\n >\n <path\n className=\"eds-filter-chip-icon__path\"\n d=\"M14.1 27.2l7.1 7.2 14.6-14.8\"\n fill=\"none\"\n />\n </svg>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('chip', 'form');\n\nexport * from './ChoiceChip';\nexport * from './ActionChip';\nexport * from './TagChip';\nexport * from './FilterChip';\nexport * from './ChoiceChipGroup';\n","import React from 'react';\nimport { ChoiceChipGroupContextProvider } from './ChoiceChipGroupContext';\nimport { Fieldset } from '@entur/form';\nexport type ChoiceChipGroupProps = {\n /** Navnet til ChoiceChipsGroup */\n name: string;\n /** Verdien til den valgte ChoiceChipen */\n value: string | null;\n /** ChoiceChip-komponentene sendes inn som children */\n children: React.ReactNode;\n /** En callback som blir kalles hver gang en ChoiceChip klikkes på */\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Labelen til ChoiceChip-gruppen. */\n label?: React.ReactNode;\n [key: string]: any;\n};\n\nexport const ChoiceChipGroup: React.FC<ChoiceChipGroupProps> = ({\n name,\n value,\n children,\n onChange,\n label,\n ...rest\n}) => {\n const contextValue = React.useMemo(\n () => ({ name, value, onChange }),\n [name, value, onChange],\n );\n return (\n <ChoiceChipGroupContextProvider value={contextValue}>\n <Fieldset className=\"eds-choice-chips-group\" label={label} {...rest}>\n {children}\n </Fieldset>\n </ChoiceChipGroupContextProvider>\n );\n};\n"],"names":["ChoiceChipGroupContext","React","createContext","ChoiceChipGroupContextProvider","Provider","ChoiceChip","forwardRef","ref","className","children","value","_ref$disabled","_ref","disabled","style","rest","_objectWithoutPropertiesLoose","_excluded","childrenArray","Children","toArray","isIcon","child","_child$type","type","toString","toLowerCase","includes","hasLeadingIcon","length","at","hasTrailingIcon","classList","cx","_useChoiceChipGroupCo","context","useContext","Error","useChoiceChipGroupContext","createElement","_extends","name","checked","onChange","ActionChip","_ref$loading","loading","ariaLabelWhenLoading","filter","join","actionChip","classNames","LoadingDots","Fragment","TagChip","onClose","closeButtonAriaLabel","selectedCloseLabel","onClick","CloseIcon","FilterChip","CheckboxIcon","width","height","viewBox","d","fill","warnAboutMissingStyles","label","contextValue","useMemo","Fieldset"],"mappings":"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"}
|
package/dist/chip.esm.js
CHANGED
|
@@ -52,8 +52,12 @@ var ChoiceChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
52
52
|
style = _ref.style,
|
|
53
53
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded$4);
|
|
54
54
|
var childrenArray = React.Children.toArray(children);
|
|
55
|
-
var
|
|
56
|
-
|
|
55
|
+
var isIcon = function isIcon(child) {
|
|
56
|
+
var _child$type;
|
|
57
|
+
return child == null ? void 0 : (_child$type = child.type) == null ? void 0 : _child$type.toString().toLowerCase().includes('icon');
|
|
58
|
+
};
|
|
59
|
+
var hasLeadingIcon = childrenArray.length > 1 && isIcon(childrenArray.at(0));
|
|
60
|
+
var hasTrailingIcon = childrenArray.length > 1 && isIcon(childrenArray.at(-1));
|
|
57
61
|
var classList = classNames(className, 'eds-chip', {
|
|
58
62
|
'eds-chip--disabled': disabled,
|
|
59
63
|
'eds-chip--leading-icon': hasLeadingIcon,
|
|
@@ -88,8 +92,12 @@ var ActionChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
88
92
|
loading = _ref$loading === void 0 ? false : _ref$loading,
|
|
89
93
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
|
|
90
94
|
var childrenArray = React.Children.toArray(children);
|
|
91
|
-
var
|
|
92
|
-
|
|
95
|
+
var isIcon = function isIcon(child) {
|
|
96
|
+
var _child$type;
|
|
97
|
+
return child == null ? void 0 : (_child$type = child.type) == null ? void 0 : _child$type.toString().toLowerCase().includes('icon');
|
|
98
|
+
};
|
|
99
|
+
var hasLeadingIcon = childrenArray.length > 1 && isIcon(childrenArray.at(0));
|
|
100
|
+
var hasTrailingIcon = childrenArray.length > 1 && isIcon(childrenArray.at(-1));
|
|
93
101
|
var ariaLabelValue = function ariaLabelValue() {
|
|
94
102
|
if (rest['aria-label']) return rest['aria-label'];
|
|
95
103
|
if (loading) return ariaLabelWhenLoading;
|
package/dist/chip.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chip.esm.js","sources":["../src/ChoiceChipGroupContext.tsx","../src/ChoiceChip.tsx","../src/ActionChip.tsx","../src/TagChip.tsx","../src/FilterChip.tsx","../src/ChoiceChipGroup.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\n\ntype ChoiceChipGroupContextProps = {\n name: string;\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n value: string | null;\n};\n\nconst ChoiceChipGroupContext =\n React.createContext<ChoiceChipGroupContextProps | null>(null);\n\nexport const ChoiceChipGroupContextProvider = ChoiceChipGroupContext.Provider;\n\nexport const useChoiceChipGroupContext: () => ChoiceChipGroupContextProps =\n () => {\n const context = React.useContext(ChoiceChipGroupContext);\n if (!context) {\n throw new Error(\n 'You need to wrap your ChoiceChips in a ChoiceChipGroup-component',\n );\n }\n return context;\n };\n","import React from 'react';\nimport cx from 'classnames';\nimport { useChoiceChipGroupContext } from './ChoiceChipGroupContext';\nimport './BaseChip.scss';\nimport './ChoiceChip.scss';\n\nexport type ChoiceChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om Choicechip er deaktivert eller ikke\n * @default false\n */\n disabled?: boolean;\n /** Label til ChoiceChip */\n children?: React.ReactNode;\n /** Verdien til ChoiceChip */\n value: string;\n} & Omit<\n React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n >,\n 'value'\n>;\n\nexport const ChoiceChip = React.forwardRef<HTMLInputElement, ChoiceChipProps>(\n (\n { className, children, value, disabled = false, style, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const classList = cx(className, 'eds-chip', {\n 'eds-chip--disabled': disabled,\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n });\n const {\n name,\n value: selectedValue,\n onChange,\n } = useChoiceChipGroupContext();\n return (\n <label className=\"eds-choice-chip\" style={style}>\n <input\n className=\"eds-choice-chip__input\"\n type=\"radio\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n checked={selectedValue === value}\n onChange={onChange}\n {...rest}\n />\n <div className={classList}>{children}</div>\n </label>\n );\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseChip.scss';\nimport './ActionChip.scss';\n\nexport type ActionChipProps = {\n /** Teksten som vises i ActionChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Om chip-en er opptatt, f.eks med å oppdatere informasjon\n * @default false\n */\n loading?: boolean;\n} & React.DetailedHTMLProps<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n>;\n\nexport const ActionChip = React.forwardRef<HTMLButtonElement, ActionChipProps>(\n (\n { children, className, loading = false, ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const ariaLabelValue = () => {\n if (rest['aria-label']) return rest['aria-label'];\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const actionChip = (\n <button\n className={classNames(\n 'eds-chip',\n 'eds-action-chip',\n {\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n 'eds-action-chip--disabled': rest.disabled,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n aria-label={ariaLabelValue()}\n type=\"button\"\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-action-chip__loading-dots\" />\n ) : (\n children\n )}\n </button>\n );\n\n if (rest.disabled) {\n return (\n <div className=\"eds-action-chip--disabled__wrapper\">{actionChip}</div>\n );\n }\n return <>{actionChip}</>;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { CloseIcon } from '@entur/icons';\nimport './BaseChip.scss';\nimport './TagChip.scss';\n\nexport type TagChipProps = {\n /** Teksten som vises i TagChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback for når man klikker på krysset */\n onClose: () => void;\n /** Skjermlesertekst for X-knappen */\n closeButtonAriaLabel?: string;\n};\n\nexport const TagChip = React.forwardRef<HTMLButtonElement, TagChipProps>(\n (\n { children, className, onClose, closeButtonAriaLabel, ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const selectedCloseLabel =\n closeButtonAriaLabel ?? 'Fjern ' + children?.toString();\n\n return (\n <div\n className={classNames('eds-chip', 'eds-tag-chip', className)}\n {...rest}\n >\n {children}\n <button\n className=\"eds-tag-chip__close-button\"\n type=\"button\"\n onClick={onClose}\n aria-label={selectedCloseLabel}\n ref={ref}\n >\n <CloseIcon />\n </button>\n </div>\n );\n },\n);\n","import React from 'react';\nimport cx from 'classnames';\nimport './BaseChip.scss';\nimport './FilterChip.scss';\n\nexport type FilterChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Label til FilterChip */\n children?: React.ReactNode;\n /** Verdien til FilterChip */\n value: string;\n} & React.InputHTMLAttributes<HTMLInputElement>;\n\nexport const FilterChip = React.forwardRef<HTMLInputElement, FilterChipProps>(\n (\n { className, children, value, disabled = false, name, style, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const classList = cx(className, 'eds-chip', 'eds-filter-chip');\n\n return (\n <label className={classList} style={style}>\n <input\n className=\"eds-filter-chip__input\"\n type=\"checkbox\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n {...rest}\n />\n <span className=\"eds-filter-chip__icon\">\n <CheckboxIcon />\n </span>\n {children}\n </label>\n );\n },\n);\n\nconst CheckboxIcon: React.FC = () => {\n return (\n <svg\n className=\"eds-filter-chip-icon\"\n width=\"11px\"\n height=\"9px\"\n viewBox=\"6 11 37 33\"\n >\n <path\n className=\"eds-filter-chip-icon__path\"\n d=\"M14.1 27.2l7.1 7.2 14.6-14.8\"\n fill=\"none\"\n />\n </svg>\n );\n};\n","import React from 'react';\nimport { ChoiceChipGroupContextProvider } from './ChoiceChipGroupContext';\nimport { Fieldset } from '@entur/form';\nexport type ChoiceChipGroupProps = {\n /** Navnet til ChoiceChipsGroup */\n name: string;\n /** Verdien til den valgte ChoiceChipen */\n value: string | null;\n /** ChoiceChip-komponentene sendes inn som children */\n children: React.ReactNode;\n /** En callback som blir kalles hver gang en ChoiceChip klikkes på */\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Labelen til ChoiceChip-gruppen. */\n label?: React.ReactNode;\n [key: string]: any;\n};\n\nexport const ChoiceChipGroup: React.FC<ChoiceChipGroupProps> = ({\n name,\n value,\n children,\n onChange,\n label,\n ...rest\n}) => {\n const contextValue = React.useMemo(\n () => ({ name, value, onChange }),\n [name, value, onChange],\n );\n return (\n <ChoiceChipGroupContextProvider value={contextValue}>\n <Fieldset className=\"eds-choice-chips-group\" label={label} {...rest}>\n {children}\n </Fieldset>\n </ChoiceChipGroupContextProvider>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('chip', 'form');\n\nexport * from './ChoiceChip';\nexport * from './ActionChip';\nexport * from './TagChip';\nexport * from './FilterChip';\nexport * from './ChoiceChipGroup';\n"],"names":["ChoiceChipGroupContext","React","createContext","ChoiceChipGroupContextProvider","Provider","useChoiceChipGroupContext","context","useContext","Error","ChoiceChip","forwardRef","ref","className","children","value","disabled","style","rest","_excluded","childrenArray","Children","toArray","hasLeadingIcon","length","hasTrailingIcon","classList","cx","name","selectedValue","onChange","createElement","type","checked","ActionChip","loading","ariaLabelValue","ariaLabelWhenLoading","undefined","filter","child","join","actionChip","classNames","LoadingDots","Fragment","TagChip","onClose","closeButtonAriaLabel","selectedCloseLabel","toString","onClick","CloseIcon","FilterChip","CheckboxIcon","width","height","viewBox","d","fill","ChoiceChipGroup","label","contextValue","useMemo","Fieldset","warnAboutMissingStyles"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chip.esm.js","sources":["../src/ChoiceChipGroupContext.tsx","../src/ChoiceChip.tsx","../src/ActionChip.tsx","../src/TagChip.tsx","../src/FilterChip.tsx","../src/ChoiceChipGroup.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\n\ntype ChoiceChipGroupContextProps = {\n name: string;\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n value: string | null;\n};\n\nconst ChoiceChipGroupContext =\n React.createContext<ChoiceChipGroupContextProps | null>(null);\n\nexport const ChoiceChipGroupContextProvider = ChoiceChipGroupContext.Provider;\n\nexport const useChoiceChipGroupContext: () => ChoiceChipGroupContextProps =\n () => {\n const context = React.useContext(ChoiceChipGroupContext);\n if (!context) {\n throw new Error(\n 'You need to wrap your ChoiceChips in a ChoiceChipGroup-component',\n );\n }\n return context;\n };\n","import React from 'react';\nimport cx from 'classnames';\nimport { useChoiceChipGroupContext } from './ChoiceChipGroupContext';\nimport './BaseChip.scss';\nimport './ChoiceChip.scss';\n\nexport type ChoiceChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om Choicechip er deaktivert eller ikke\n * @default false\n */\n disabled?: boolean;\n /** Label til ChoiceChip */\n children?: React.ReactNode;\n /** Verdien til ChoiceChip */\n value: string;\n} & Omit<\n React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n >,\n 'value'\n>;\n\nexport const ChoiceChip = React.forwardRef<HTMLInputElement, ChoiceChipProps>(\n (\n { className, children, value, disabled = false, style, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const isIcon = (child: any) =>\n child?.type?.toString().toLowerCase().includes('icon');\n const hasLeadingIcon =\n childrenArray.length > 1 && isIcon(childrenArray.at(0));\n const hasTrailingIcon =\n childrenArray.length > 1 && isIcon(childrenArray.at(-1));\n\n const classList = cx(className, 'eds-chip', {\n 'eds-chip--disabled': disabled,\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n });\n const {\n name,\n value: selectedValue,\n onChange,\n } = useChoiceChipGroupContext();\n return (\n <label className=\"eds-choice-chip\" style={style}>\n <input\n className=\"eds-choice-chip__input\"\n type=\"radio\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n checked={selectedValue === value}\n onChange={onChange}\n {...rest}\n />\n <div className={classList}>{children}</div>\n </label>\n );\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseChip.scss';\nimport './ActionChip.scss';\n\nexport type ActionChipProps = {\n /** Teksten som vises i ActionChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Om chip-en er opptatt, f.eks med å oppdatere informasjon\n * @default false\n */\n loading?: boolean;\n} & React.DetailedHTMLProps<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n>;\n\nexport const ActionChip = React.forwardRef<HTMLButtonElement, ActionChipProps>(\n (\n { children, className, loading = false, ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const isIcon = (child: any) =>\n child?.type?.toString().toLowerCase().includes('icon');\n const hasLeadingIcon =\n childrenArray.length > 1 && isIcon(childrenArray.at(0));\n const hasTrailingIcon =\n childrenArray.length > 1 && isIcon(childrenArray.at(-1));\n\n const ariaLabelValue = () => {\n if (rest['aria-label']) return rest['aria-label'];\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const actionChip = (\n <button\n className={classNames(\n 'eds-chip',\n 'eds-action-chip',\n {\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n 'eds-action-chip--disabled': rest.disabled,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n aria-label={ariaLabelValue()}\n type=\"button\"\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-action-chip__loading-dots\" />\n ) : (\n children\n )}\n </button>\n );\n\n if (rest.disabled) {\n return (\n <div className=\"eds-action-chip--disabled__wrapper\">{actionChip}</div>\n );\n }\n return <>{actionChip}</>;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { CloseIcon } from '@entur/icons';\nimport './BaseChip.scss';\nimport './TagChip.scss';\n\nexport type TagChipProps = {\n /** Teksten som vises i TagChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback for når man klikker på krysset */\n onClose: () => void;\n /** Skjermlesertekst for X-knappen */\n closeButtonAriaLabel?: string;\n};\n\nexport const TagChip = React.forwardRef<HTMLButtonElement, TagChipProps>(\n (\n { children, className, onClose, closeButtonAriaLabel, ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const selectedCloseLabel =\n closeButtonAriaLabel ?? 'Fjern ' + children?.toString();\n\n return (\n <div\n className={classNames('eds-chip', 'eds-tag-chip', className)}\n {...rest}\n >\n {children}\n <button\n className=\"eds-tag-chip__close-button\"\n type=\"button\"\n onClick={onClose}\n aria-label={selectedCloseLabel}\n ref={ref}\n >\n <CloseIcon />\n </button>\n </div>\n );\n },\n);\n","import React from 'react';\nimport cx from 'classnames';\nimport './BaseChip.scss';\nimport './FilterChip.scss';\n\nexport type FilterChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Label til FilterChip */\n children?: React.ReactNode;\n /** Verdien til FilterChip */\n value: string;\n} & React.InputHTMLAttributes<HTMLInputElement>;\n\nexport const FilterChip = React.forwardRef<HTMLInputElement, FilterChipProps>(\n (\n { className, children, value, disabled = false, name, style, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const classList = cx(className, 'eds-chip', 'eds-filter-chip');\n\n return (\n <label className={classList} style={style}>\n <input\n className=\"eds-filter-chip__input\"\n type=\"checkbox\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n {...rest}\n />\n <span className=\"eds-filter-chip__icon\">\n <CheckboxIcon />\n </span>\n {children}\n </label>\n );\n },\n);\n\nconst CheckboxIcon: React.FC = () => {\n return (\n <svg\n className=\"eds-filter-chip-icon\"\n width=\"11px\"\n height=\"9px\"\n viewBox=\"6 11 37 33\"\n >\n <path\n className=\"eds-filter-chip-icon__path\"\n d=\"M14.1 27.2l7.1 7.2 14.6-14.8\"\n fill=\"none\"\n />\n </svg>\n );\n};\n","import React from 'react';\nimport { ChoiceChipGroupContextProvider } from './ChoiceChipGroupContext';\nimport { Fieldset } from '@entur/form';\nexport type ChoiceChipGroupProps = {\n /** Navnet til ChoiceChipsGroup */\n name: string;\n /** Verdien til den valgte ChoiceChipen */\n value: string | null;\n /** ChoiceChip-komponentene sendes inn som children */\n children: React.ReactNode;\n /** En callback som blir kalles hver gang en ChoiceChip klikkes på */\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Labelen til ChoiceChip-gruppen. */\n label?: React.ReactNode;\n [key: string]: any;\n};\n\nexport const ChoiceChipGroup: React.FC<ChoiceChipGroupProps> = ({\n name,\n value,\n children,\n onChange,\n label,\n ...rest\n}) => {\n const contextValue = React.useMemo(\n () => ({ name, value, onChange }),\n [name, value, onChange],\n );\n return (\n <ChoiceChipGroupContextProvider value={contextValue}>\n <Fieldset className=\"eds-choice-chips-group\" label={label} {...rest}>\n {children}\n </Fieldset>\n </ChoiceChipGroupContextProvider>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('chip', 'form');\n\nexport * from './ChoiceChip';\nexport * from './ActionChip';\nexport * from './TagChip';\nexport * from './FilterChip';\nexport * from './ChoiceChipGroup';\n"],"names":["ChoiceChipGroupContext","React","createContext","ChoiceChipGroupContextProvider","Provider","useChoiceChipGroupContext","context","useContext","Error","ChoiceChip","forwardRef","ref","className","children","value","disabled","style","rest","_excluded","childrenArray","Children","toArray","isIcon","child","type","toString","toLowerCase","includes","hasLeadingIcon","length","at","hasTrailingIcon","classList","cx","name","selectedValue","onChange","createElement","checked","ActionChip","loading","ariaLabelValue","ariaLabelWhenLoading","undefined","filter","join","actionChip","classNames","LoadingDots","Fragment","TagChip","onClose","closeButtonAriaLabel","selectedCloseLabel","onClick","CloseIcon","FilterChip","CheckboxIcon","width","height","viewBox","d","fill","ChoiceChipGroup","label","contextValue","useMemo","Fieldset","warnAboutMissingStyles"],"mappings":"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"}
|
package/dist/styles.css
CHANGED
|
@@ -3,42 +3,75 @@
|
|
|
3
3
|
}
|
|
4
4
|
/* DO NOT CHANGE!*/
|
|
5
5
|
/* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
|
|
6
|
-
.eds-
|
|
6
|
+
.eds-choice-chip {
|
|
7
7
|
cursor: pointer;
|
|
8
|
+
display: inline-block;
|
|
9
|
+
margin-right: 0.75rem;
|
|
10
|
+
position: relative;
|
|
11
|
+
transition: all 0.1s ease-out;
|
|
8
12
|
}
|
|
9
|
-
.eds-
|
|
13
|
+
.eds-choice-chip__input {
|
|
14
|
+
-moz-appearance: none;
|
|
15
|
+
appearance: none;
|
|
16
|
+
height: 0;
|
|
17
|
+
position: absolute;
|
|
18
|
+
width: 0;
|
|
19
|
+
-webkit-appearance: none;
|
|
20
|
+
}
|
|
21
|
+
.eds-choice-chip__input ~ .eds-chip {
|
|
22
|
+
background-color: transparent;
|
|
23
|
+
}
|
|
24
|
+
.eds-contrast .eds-choice-chip__input ~ .eds-chip {
|
|
25
|
+
border-color: #aeb7e2;
|
|
26
|
+
color: #ffffff;
|
|
27
|
+
}
|
|
28
|
+
.eds-choice-chip__input:checked ~ .eds-chip {
|
|
29
|
+
background-color: #181c56;
|
|
30
|
+
border-color: #181c56;
|
|
31
|
+
color: #ffffff;
|
|
32
|
+
}
|
|
33
|
+
.eds-contrast .eds-choice-chip__input:checked ~ .eds-chip {
|
|
34
|
+
border-color: #aeb7e2;
|
|
35
|
+
background-color: #aeb7e2;
|
|
36
|
+
color: #181c56;
|
|
37
|
+
}
|
|
38
|
+
.eds-choice-chip__input:focus ~ .eds-chip {
|
|
10
39
|
outline: none;
|
|
11
40
|
box-shadow: 0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #181c56;
|
|
12
41
|
outline-offset: 0.125rem;
|
|
13
42
|
}
|
|
14
|
-
.eds-contrast .eds-
|
|
43
|
+
.eds-contrast .eds-choice-chip__input:focus ~ .eds-chip {
|
|
15
44
|
box-shadow: 0 0 0 0.125rem #181c56, 0 0 0 0.25rem #ffffff;
|
|
16
45
|
}
|
|
17
|
-
.eds-
|
|
46
|
+
.eds-choice-chip__input:not(:checked):not(:disabled):hover ~ .eds-chip {
|
|
18
47
|
border-color: #181c56;
|
|
19
48
|
}
|
|
20
|
-
.eds-contrast .eds-
|
|
21
|
-
|
|
22
|
-
border-color: #54568c;
|
|
49
|
+
.eds-contrast .eds-choice-chip__input:not(:checked):not(:disabled):hover ~ .eds-chip {
|
|
50
|
+
border-color: #ffffff;
|
|
23
51
|
}
|
|
24
|
-
.eds-
|
|
25
|
-
background: #
|
|
52
|
+
.eds-choice-chip__input:checked:hover ~ .eds-chip {
|
|
53
|
+
background-color: #3b3e6f;
|
|
54
|
+
border-color: #3b3e6f;
|
|
26
55
|
}
|
|
27
|
-
.eds-contrast .eds-
|
|
28
|
-
background-color: #
|
|
29
|
-
border-color: #
|
|
56
|
+
.eds-contrast .eds-choice-chip__input:checked:hover ~ .eds-chip {
|
|
57
|
+
background-color: #bac2e6;
|
|
58
|
+
border-color: #bac2e6;
|
|
30
59
|
}
|
|
31
|
-
.eds-
|
|
32
|
-
|
|
33
|
-
|
|
60
|
+
.eds-choice-chip__input:active ~ .eds-chip {
|
|
61
|
+
background-color: #d1d4e3;
|
|
62
|
+
border-color: #d1d4e3;
|
|
34
63
|
}
|
|
35
|
-
.eds-
|
|
64
|
+
.eds-contrast .eds-choice-chip__input:active ~ .eds-chip {
|
|
65
|
+
background: #33376d;
|
|
66
|
+
}
|
|
67
|
+
.eds-choice-chip .eds-chip--disabled {
|
|
68
|
+
border-style: dashed;
|
|
36
69
|
cursor: not-allowed;
|
|
37
|
-
width: -moz-fit-content;
|
|
38
|
-
width: fit-content;
|
|
39
70
|
}
|
|
40
|
-
.eds-contrast .eds-
|
|
41
|
-
|
|
71
|
+
.eds-contrast .eds-choice-chip .eds-chip--disabled {
|
|
72
|
+
opacity: 1;
|
|
73
|
+
border-color: #8285a8;
|
|
74
|
+
color: #babbcf;
|
|
42
75
|
}
|
|
43
76
|
/* DO NOT CHANGE!*/
|
|
44
77
|
/* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
|
|
@@ -64,14 +97,93 @@
|
|
|
64
97
|
background-color: #393d79;
|
|
65
98
|
border-color: transparent;
|
|
66
99
|
}
|
|
67
|
-
.eds-chip--leading-icon .eds-icon {
|
|
100
|
+
.eds-chip--leading-icon .eds-icon:first-of-type {
|
|
68
101
|
margin-right: 0.5rem;
|
|
69
102
|
}
|
|
70
|
-
.eds-chip--trailing-icon .eds-icon {
|
|
103
|
+
.eds-chip--trailing-icon .eds-icon:last-of-type {
|
|
71
104
|
margin-left: 0.5rem;
|
|
72
105
|
}
|
|
73
106
|
/* DO NOT CHANGE!*/
|
|
74
107
|
/* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
|
|
108
|
+
.eds-tag-chip {
|
|
109
|
+
cursor: default;
|
|
110
|
+
padding-right: 0.25rem;
|
|
111
|
+
width: -moz-fit-content;
|
|
112
|
+
width: fit-content;
|
|
113
|
+
}
|
|
114
|
+
.eds-tag-chip__close-button {
|
|
115
|
+
-webkit-appearance: none;
|
|
116
|
+
-moz-appearance: none;
|
|
117
|
+
appearance: none;
|
|
118
|
+
background: none;
|
|
119
|
+
border: none;
|
|
120
|
+
border-radius: 50%;
|
|
121
|
+
color: #181c56;
|
|
122
|
+
cursor: pointer;
|
|
123
|
+
display: flex;
|
|
124
|
+
font-size: 0.875rem;
|
|
125
|
+
padding: 0.25rem;
|
|
126
|
+
margin-left: 0.25rem;
|
|
127
|
+
transition: box-shadow 0.1s ease-in-out, background 0.1s ease-in-out;
|
|
128
|
+
}
|
|
129
|
+
.eds-contrast .eds-tag-chip__close-button {
|
|
130
|
+
color: #ffffff;
|
|
131
|
+
}
|
|
132
|
+
.eds-tag-chip__close-button:hover {
|
|
133
|
+
background: #babbcf;
|
|
134
|
+
}
|
|
135
|
+
.eds-contrast .eds-tag-chip__close-button:hover {
|
|
136
|
+
background: #54568c;
|
|
137
|
+
}
|
|
138
|
+
.eds-tag-chip__close-button:focus {
|
|
139
|
+
outline-offset: 0.125rem;
|
|
140
|
+
outline: none;
|
|
141
|
+
box-shadow: 0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #181c56;
|
|
142
|
+
}
|
|
143
|
+
.eds-contrast .eds-tag-chip__close-button:focus {
|
|
144
|
+
box-shadow: 0 0 0 0.125rem #181c56, 0 0 0 0.25rem #ffffff;
|
|
145
|
+
}
|
|
146
|
+
/* DO NOT CHANGE!*/
|
|
147
|
+
/* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
|
|
148
|
+
.eds-action-chip {
|
|
149
|
+
cursor: pointer;
|
|
150
|
+
}
|
|
151
|
+
.eds-action-chip:focus {
|
|
152
|
+
outline: none;
|
|
153
|
+
box-shadow: 0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #181c56;
|
|
154
|
+
outline-offset: 0.125rem;
|
|
155
|
+
}
|
|
156
|
+
.eds-contrast .eds-action-chip:focus {
|
|
157
|
+
box-shadow: 0 0 0 0.125rem #181c56, 0 0 0 0.25rem #ffffff;
|
|
158
|
+
}
|
|
159
|
+
.eds-action-chip:hover {
|
|
160
|
+
border-color: #181c56;
|
|
161
|
+
}
|
|
162
|
+
.eds-contrast .eds-action-chip:hover {
|
|
163
|
+
background-color: #54568c;
|
|
164
|
+
border-color: #54568c;
|
|
165
|
+
}
|
|
166
|
+
.eds-action-chip:active {
|
|
167
|
+
background: #d1d4e3;
|
|
168
|
+
}
|
|
169
|
+
.eds-contrast .eds-action-chip:active {
|
|
170
|
+
background-color: #292b6a;
|
|
171
|
+
border-color: #292b6a;
|
|
172
|
+
}
|
|
173
|
+
.eds-action-chip--disabled {
|
|
174
|
+
opacity: 0.5;
|
|
175
|
+
pointer-events: none;
|
|
176
|
+
}
|
|
177
|
+
.eds-action-chip--disabled__wrapper {
|
|
178
|
+
cursor: not-allowed;
|
|
179
|
+
width: -moz-fit-content;
|
|
180
|
+
width: fit-content;
|
|
181
|
+
}
|
|
182
|
+
.eds-contrast .eds-action-chip__loading-dots .eds-loading-dots__dot {
|
|
183
|
+
background-color: #ffffff;
|
|
184
|
+
}
|
|
185
|
+
/* DO NOT CHANGE!*/
|
|
186
|
+
/* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
|
|
75
187
|
.eds-filter-chip {
|
|
76
188
|
cursor: pointer;
|
|
77
189
|
-webkit-user-select: none;
|
|
@@ -156,115 +268,3 @@
|
|
|
156
268
|
stroke-dashoffset: 0;
|
|
157
269
|
}
|
|
158
270
|
}
|
|
159
|
-
/* DO NOT CHANGE!*/
|
|
160
|
-
/* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
|
|
161
|
-
.eds-tag-chip {
|
|
162
|
-
cursor: default;
|
|
163
|
-
padding-right: 0.25rem;
|
|
164
|
-
width: -moz-fit-content;
|
|
165
|
-
width: fit-content;
|
|
166
|
-
}
|
|
167
|
-
.eds-tag-chip__close-button {
|
|
168
|
-
-webkit-appearance: none;
|
|
169
|
-
-moz-appearance: none;
|
|
170
|
-
appearance: none;
|
|
171
|
-
background: none;
|
|
172
|
-
border: none;
|
|
173
|
-
border-radius: 50%;
|
|
174
|
-
color: #181c56;
|
|
175
|
-
cursor: pointer;
|
|
176
|
-
display: flex;
|
|
177
|
-
font-size: 0.875rem;
|
|
178
|
-
padding: 0.25rem;
|
|
179
|
-
margin-left: 0.25rem;
|
|
180
|
-
transition: box-shadow 0.1s ease-in-out, background 0.1s ease-in-out;
|
|
181
|
-
}
|
|
182
|
-
.eds-contrast .eds-tag-chip__close-button {
|
|
183
|
-
color: #ffffff;
|
|
184
|
-
}
|
|
185
|
-
.eds-tag-chip__close-button:hover {
|
|
186
|
-
background: #babbcf;
|
|
187
|
-
}
|
|
188
|
-
.eds-contrast .eds-tag-chip__close-button:hover {
|
|
189
|
-
background: #54568c;
|
|
190
|
-
}
|
|
191
|
-
.eds-tag-chip__close-button:focus {
|
|
192
|
-
outline-offset: 0.125rem;
|
|
193
|
-
outline: none;
|
|
194
|
-
box-shadow: 0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #181c56;
|
|
195
|
-
}
|
|
196
|
-
.eds-contrast .eds-tag-chip__close-button:focus {
|
|
197
|
-
box-shadow: 0 0 0 0.125rem #181c56, 0 0 0 0.25rem #ffffff;
|
|
198
|
-
}
|
|
199
|
-
/* DO NOT CHANGE!*/
|
|
200
|
-
/* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
|
|
201
|
-
.eds-choice-chip {
|
|
202
|
-
cursor: pointer;
|
|
203
|
-
display: inline-block;
|
|
204
|
-
margin-right: 0.75rem;
|
|
205
|
-
position: relative;
|
|
206
|
-
transition: all 0.1s ease-out;
|
|
207
|
-
}
|
|
208
|
-
.eds-choice-chip__input {
|
|
209
|
-
-moz-appearance: none;
|
|
210
|
-
appearance: none;
|
|
211
|
-
height: 0;
|
|
212
|
-
position: absolute;
|
|
213
|
-
width: 0;
|
|
214
|
-
-webkit-appearance: none;
|
|
215
|
-
}
|
|
216
|
-
.eds-choice-chip__input ~ .eds-chip {
|
|
217
|
-
background-color: transparent;
|
|
218
|
-
}
|
|
219
|
-
.eds-contrast .eds-choice-chip__input ~ .eds-chip {
|
|
220
|
-
border-color: #aeb7e2;
|
|
221
|
-
color: #ffffff;
|
|
222
|
-
}
|
|
223
|
-
.eds-choice-chip__input:checked ~ .eds-chip {
|
|
224
|
-
background-color: #181c56;
|
|
225
|
-
border-color: #181c56;
|
|
226
|
-
color: #ffffff;
|
|
227
|
-
}
|
|
228
|
-
.eds-contrast .eds-choice-chip__input:checked ~ .eds-chip {
|
|
229
|
-
border-color: #aeb7e2;
|
|
230
|
-
background-color: #aeb7e2;
|
|
231
|
-
color: #181c56;
|
|
232
|
-
}
|
|
233
|
-
.eds-choice-chip__input:focus ~ .eds-chip {
|
|
234
|
-
outline: none;
|
|
235
|
-
box-shadow: 0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #181c56;
|
|
236
|
-
outline-offset: 0.125rem;
|
|
237
|
-
}
|
|
238
|
-
.eds-contrast .eds-choice-chip__input:focus ~ .eds-chip {
|
|
239
|
-
box-shadow: 0 0 0 0.125rem #181c56, 0 0 0 0.25rem #ffffff;
|
|
240
|
-
}
|
|
241
|
-
.eds-choice-chip__input:not(:checked):not(:disabled):hover ~ .eds-chip {
|
|
242
|
-
border-color: #181c56;
|
|
243
|
-
}
|
|
244
|
-
.eds-contrast .eds-choice-chip__input:not(:checked):not(:disabled):hover ~ .eds-chip {
|
|
245
|
-
border-color: #ffffff;
|
|
246
|
-
}
|
|
247
|
-
.eds-choice-chip__input:checked:hover ~ .eds-chip {
|
|
248
|
-
background-color: #3b3e6f;
|
|
249
|
-
border-color: #3b3e6f;
|
|
250
|
-
}
|
|
251
|
-
.eds-contrast .eds-choice-chip__input:checked:hover ~ .eds-chip {
|
|
252
|
-
background-color: #bac2e6;
|
|
253
|
-
border-color: #bac2e6;
|
|
254
|
-
}
|
|
255
|
-
.eds-choice-chip__input:active ~ .eds-chip {
|
|
256
|
-
background-color: #d1d4e3;
|
|
257
|
-
border-color: #d1d4e3;
|
|
258
|
-
}
|
|
259
|
-
.eds-contrast .eds-choice-chip__input:active ~ .eds-chip {
|
|
260
|
-
background: #33376d;
|
|
261
|
-
}
|
|
262
|
-
.eds-choice-chip .eds-chip--disabled {
|
|
263
|
-
border-style: dashed;
|
|
264
|
-
cursor: not-allowed;
|
|
265
|
-
}
|
|
266
|
-
.eds-contrast .eds-choice-chip .eds-chip--disabled {
|
|
267
|
-
opacity: 1;
|
|
268
|
-
border-color: #8285a8;
|
|
269
|
-
color: #babbcf;
|
|
270
|
-
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@entur/chip",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.26",
|
|
4
4
|
"license": "EUPL-1.2",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/chip.esm.js",
|
|
@@ -27,12 +27,12 @@
|
|
|
27
27
|
"react-dom": ">=16.8.0"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@entur/form": "^6.0
|
|
30
|
+
"@entur/form": "^6.1.0",
|
|
31
31
|
"@entur/icons": "^6.0.1",
|
|
32
32
|
"@entur/loader": "^0.4.24",
|
|
33
33
|
"@entur/tokens": "^3.8.1",
|
|
34
34
|
"@entur/utils": "^0.5.5",
|
|
35
35
|
"classnames": "^2.3.1"
|
|
36
36
|
},
|
|
37
|
-
"gitHead": "
|
|
37
|
+
"gitHead": "2c2a0a8c94b5196ccb817debb70da641af1e1fcc"
|
|
38
38
|
}
|