@entur/chip 0.6.67 → 0.6.69
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 +16 -11
- 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 +17 -12
- package/dist/chip.esm.js.map +1 -1
- package/dist/styles.css +784 -127
- package/package.json +6 -6
|
@@ -82,7 +82,8 @@ var ChoiceChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
82
82
|
value: value,
|
|
83
83
|
disabled: disabled,
|
|
84
84
|
checked: selectedValue === value,
|
|
85
|
-
onChange: onChange
|
|
85
|
+
onChange: onChange,
|
|
86
|
+
"aria-disabled": disabled
|
|
86
87
|
}, rest)), React.createElement("div", {
|
|
87
88
|
className: classList
|
|
88
89
|
}, children));
|
|
@@ -147,7 +148,7 @@ var TagChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
147
148
|
onClick: onClose,
|
|
148
149
|
"aria-label": selectedCloseLabel,
|
|
149
150
|
ref: ref
|
|
150
|
-
}, React.createElement(icons.
|
|
151
|
+
}, React.createElement(icons.CloseSmallIcon, {
|
|
151
152
|
"aria-hidden": true
|
|
152
153
|
})));
|
|
153
154
|
});
|
|
@@ -162,7 +163,7 @@ var FilterChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
162
163
|
name = _ref.name,
|
|
163
164
|
style = _ref.style,
|
|
164
165
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
|
|
165
|
-
var classList = classNames(className, 'eds-
|
|
166
|
+
var classList = classNames(className, 'eds-filter-chip');
|
|
166
167
|
return React.createElement("label", {
|
|
167
168
|
className: classList,
|
|
168
169
|
style: style
|
|
@@ -173,21 +174,25 @@ var FilterChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
173
174
|
ref: ref,
|
|
174
175
|
value: value,
|
|
175
176
|
disabled: disabled
|
|
176
|
-
}, rest)), React.createElement("
|
|
177
|
+
}, rest)), React.createElement("div", {
|
|
178
|
+
className: "eds-chip"
|
|
179
|
+
}, React.createElement("span", {
|
|
177
180
|
className: "eds-filter-chip__icon"
|
|
178
|
-
}, React.createElement(CheckboxIcon, null)), children);
|
|
181
|
+
}, React.createElement(CheckboxIcon, null)), children));
|
|
179
182
|
});
|
|
180
183
|
var CheckboxIcon = function CheckboxIcon() {
|
|
181
184
|
return React.createElement("svg", {
|
|
182
185
|
className: "eds-filter-chip-icon",
|
|
183
|
-
width: "
|
|
184
|
-
height: "
|
|
185
|
-
viewBox: "
|
|
186
|
-
"
|
|
186
|
+
width: "16",
|
|
187
|
+
height: "16",
|
|
188
|
+
viewBox: "0 0 16 16",
|
|
189
|
+
fill: "none",
|
|
190
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
187
191
|
}, React.createElement("path", {
|
|
188
192
|
className: "eds-filter-chip-icon__path",
|
|
189
|
-
d: "
|
|
190
|
-
|
|
193
|
+
d: "M1.71283 7.10801L5.6464 11.1377C5.84098 11.3371 6.16095 11.339 6.35786 11.1419L14.2916 3.20325",
|
|
194
|
+
stroke: "#181C56",
|
|
195
|
+
strokeWidth: "2"
|
|
191
196
|
}));
|
|
192
197
|
};
|
|
193
198
|
|
|
@@ -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 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 aria-hidden />\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 aria-hidden\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';\n\nimport './ChoiceChipGroup.scss';\n\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
|
+
{"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 aria-disabled={disabled}\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 { CloseSmallIcon } 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 <CloseSmallIcon aria-hidden />\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-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 <div className=\"eds-chip\">\n <span className=\"eds-filter-chip__icon\">\n <CheckboxIcon />\n </span>\n {children}\n </div>\n </label>\n );\n },\n);\n\nconst CheckboxIcon: React.FC = () => {\n return (\n <svg\n className=\"eds-filter-chip-icon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n className=\"eds-filter-chip-icon__path\"\n d=\"M1.71283 7.10801L5.6464 11.1377C5.84098 11.3371 6.16095 11.339 6.35786 11.1419L14.2916 3.20325\"\n stroke=\"#181C56\"\n strokeWidth=\"2\"\n />\n </svg>\n );\n};\n","import React from 'react';\nimport { ChoiceChipGroupContextProvider } from './ChoiceChipGroupContext';\nimport { Fieldset } from '@entur/form';\n\nimport './ChoiceChipGroup.scss';\n\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","CloseSmallIcon","FilterChip","CheckboxIcon","width","height","viewBox","fill","xmlns","d","stroke","strokeWidth","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"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@entur/utils"),a=require("react"),t=require("classnames"),n=require("@entur/loader"),r=require("@entur/icons"),i=require("@entur/form");function l(){return l=Object.assign?Object.assign.bind():function(e){for(var a=1;a<arguments.length;a++){var t=arguments[a];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},l.apply(this,arguments)}function c(e,a){if(null==e)return{};var t,n,r={},i=Object.keys(e);for(n=0;n<i.length;n++)a.indexOf(t=i[n])>=0||(r[t]=e[t]);return r}var s=a.createContext(null),o=s.Provider,d=["className","children","value","disabled","style"],u=a.forwardRef((function(e,n){var r=e.className,i=e.children,o=e.value,u=e.disabled,h=void 0!==u&&u,p=e.style,m=c(e,d),f=a.Children.toArray(i),v=function(e){var a;return null==e||null==(a=e.type)?void 0:a.toString().toLowerCase().includes("icon")},b=f.length>1&&v(f.at(0)),g=f.length>1&&v(f.at(-1)),C=t(r,"eds-chip",{"eds-chip--disabled":h,"eds-chip--leading-icon":b,"eds-chip--trailing-icon":g}),y=function(){var e=a.useContext(s);if(!e)throw new Error("You need to wrap your ChoiceChips in a ChoiceChipGroup-component");return e}();return a.createElement("label",{className:"eds-choice-chip",style:p},a.createElement("input",l({className:"eds-choice-chip__input",type:"radio",name:y.name,ref:n,value:o,disabled:h,checked:y.value===o,onChange:y.onChange,"aria-disabled":h},m)),a.createElement("div",{className:C},i))})),h=["children","className","loading"],p=a.forwardRef((function(e,r){var i=e.children,s=e.className,o=e.loading,d=void 0!==o&&o,u=c(e,h),p=a.Children.toArray(i),m=function(e){var a;return null==e||null==(a=e.type)?void 0:a.toString().toLowerCase().includes("icon")},f=p.length>1&&m(p.at(0)),v=p.length>1&&m(p.at(-1)),b=p.filter((function(e){return"string"==typeof e})).join(" "),g=a.createElement("button",l({className:t("eds-chip","eds-action-chip",{"eds-chip--leading-icon":f,"eds-chip--trailing-icon":v,"eds-action-chip--disabled":u.disabled},s),ref:r,"aria-busy":d,"aria-label":u["aria-label"]?u["aria-label"]:d?b:void 0,type:"button"},u),d?a.createElement(n.LoadingDots,{className:"eds-action-chip__loading-dots"}):i);return u.disabled?a.createElement("div",{className:"eds-action-chip--disabled__wrapper"},g):a.createElement(a.Fragment,null,g)})),m=["children","className","onClose","closeButtonAriaLabel"],f=a.forwardRef((function(e,n){var i=e.children,s=e.className,o=e.onClose,d=e.closeButtonAriaLabel,u=c(e,m),h=null!=d?d:"Fjern "+(null==i?void 0:i.toString());return a.createElement("div",l({className:t("eds-chip","eds-tag-chip",s)},u),i,a.createElement("button",{className:"eds-tag-chip__close-button",type:"button",onClick:o,"aria-label":h,ref:n},a.createElement(r.CloseSmallIcon,{"aria-hidden":!0})))})),v=["className","children","value","disabled","name","style"],b=a.forwardRef((function(e,n){var r=e.className,i=e.children,s=e.value,o=e.disabled,d=void 0!==o&&o,u=e.name,h=e.style,p=c(e,v),m=t(r,"eds-filter-chip");return a.createElement("label",{className:m,style:h},a.createElement("input",l({className:"eds-filter-chip__input",type:"checkbox",name:u,ref:n,value:s,disabled:d},p)),a.createElement("div",{className:"eds-chip"},a.createElement("span",{className:"eds-filter-chip__icon"},a.createElement(g,null)),i))})),g=function(){return a.createElement("svg",{className:"eds-filter-chip-icon",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},a.createElement("path",{className:"eds-filter-chip-icon__path",d:"M1.71283 7.10801L5.6464 11.1377C5.84098 11.3371 6.16095 11.339 6.35786 11.1419L14.2916 3.20325",stroke:"#181C56",strokeWidth:"2"}))},C=["name","value","children","onChange","label"];e.warnAboutMissingStyles("chip","form"),exports.ActionChip=p,exports.ChoiceChip=u,exports.ChoiceChipGroup=function(e){var t=e.name,n=e.value,r=e.children,s=e.onChange,d=e.label,u=c(e,C),h=a.useMemo((function(){return{name:t,value:n,onChange:s}}),[t,n,s]);return a.createElement(o,{value:h},a.createElement(i.Fieldset,l({className:"eds-choice-chips-group",label:d},u),r))},exports.FilterChip=b,exports.TagChip=f;
|
|
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 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 aria-hidden />\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 aria-hidden\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';\n\nimport './ChoiceChipGroup.scss';\n\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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"}
|
|
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 aria-disabled={disabled}\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 { CloseSmallIcon } 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 <CloseSmallIcon aria-hidden />\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-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 <div className=\"eds-chip\">\n <span className=\"eds-filter-chip__icon\">\n <CheckboxIcon />\n </span>\n {children}\n </div>\n </label>\n );\n },\n);\n\nconst CheckboxIcon: React.FC = () => {\n return (\n <svg\n className=\"eds-filter-chip-icon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n className=\"eds-filter-chip-icon__path\"\n d=\"M1.71283 7.10801L5.6464 11.1377C5.84098 11.3371 6.16095 11.339 6.35786 11.1419L14.2916 3.20325\"\n stroke=\"#181C56\"\n strokeWidth=\"2\"\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';\n\nimport './ChoiceChipGroup.scss';\n\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","CloseSmallIcon","FilterChip","CheckboxIcon","width","height","viewBox","fill","xmlns","d","stroke","strokeWidth","warnAboutMissingStyles","label","contextValue","useMemo","Fieldset"],"mappings":"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"}
|
package/dist/chip.esm.js
CHANGED
|
@@ -2,7 +2,7 @@ import { warnAboutMissingStyles } from '@entur/utils';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import classNames from 'classnames';
|
|
4
4
|
import { LoadingDots } from '@entur/loader';
|
|
5
|
-
import {
|
|
5
|
+
import { CloseSmallIcon } from '@entur/icons';
|
|
6
6
|
import { Fieldset } from '@entur/form';
|
|
7
7
|
|
|
8
8
|
function _extends() {
|
|
@@ -78,7 +78,8 @@ var ChoiceChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
78
78
|
value: value,
|
|
79
79
|
disabled: disabled,
|
|
80
80
|
checked: selectedValue === value,
|
|
81
|
-
onChange: onChange
|
|
81
|
+
onChange: onChange,
|
|
82
|
+
"aria-disabled": disabled
|
|
82
83
|
}, rest)), React.createElement("div", {
|
|
83
84
|
className: classList
|
|
84
85
|
}, children));
|
|
@@ -143,7 +144,7 @@ var TagChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
143
144
|
onClick: onClose,
|
|
144
145
|
"aria-label": selectedCloseLabel,
|
|
145
146
|
ref: ref
|
|
146
|
-
}, React.createElement(
|
|
147
|
+
}, React.createElement(CloseSmallIcon, {
|
|
147
148
|
"aria-hidden": true
|
|
148
149
|
})));
|
|
149
150
|
});
|
|
@@ -158,7 +159,7 @@ var FilterChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
158
159
|
name = _ref.name,
|
|
159
160
|
style = _ref.style,
|
|
160
161
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
|
|
161
|
-
var classList = classNames(className, 'eds-
|
|
162
|
+
var classList = classNames(className, 'eds-filter-chip');
|
|
162
163
|
return React.createElement("label", {
|
|
163
164
|
className: classList,
|
|
164
165
|
style: style
|
|
@@ -169,21 +170,25 @@ var FilterChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
169
170
|
ref: ref,
|
|
170
171
|
value: value,
|
|
171
172
|
disabled: disabled
|
|
172
|
-
}, rest)), React.createElement("
|
|
173
|
+
}, rest)), React.createElement("div", {
|
|
174
|
+
className: "eds-chip"
|
|
175
|
+
}, React.createElement("span", {
|
|
173
176
|
className: "eds-filter-chip__icon"
|
|
174
|
-
}, React.createElement(CheckboxIcon, null)), children);
|
|
177
|
+
}, React.createElement(CheckboxIcon, null)), children));
|
|
175
178
|
});
|
|
176
179
|
var CheckboxIcon = function CheckboxIcon() {
|
|
177
180
|
return React.createElement("svg", {
|
|
178
181
|
className: "eds-filter-chip-icon",
|
|
179
|
-
width: "
|
|
180
|
-
height: "
|
|
181
|
-
viewBox: "
|
|
182
|
-
"
|
|
182
|
+
width: "16",
|
|
183
|
+
height: "16",
|
|
184
|
+
viewBox: "0 0 16 16",
|
|
185
|
+
fill: "none",
|
|
186
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
183
187
|
}, React.createElement("path", {
|
|
184
188
|
className: "eds-filter-chip-icon__path",
|
|
185
|
-
d: "
|
|
186
|
-
|
|
189
|
+
d: "M1.71283 7.10801L5.6464 11.1377C5.84098 11.3371 6.16095 11.339 6.35786 11.1419L14.2916 3.20325",
|
|
190
|
+
stroke: "#181C56",
|
|
191
|
+
strokeWidth: "2"
|
|
187
192
|
}));
|
|
188
193
|
};
|
|
189
194
|
|
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 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 aria-hidden />\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 aria-hidden\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';\n\nimport './ChoiceChipGroup.scss';\n\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
|
+
{"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 aria-disabled={disabled}\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 { CloseSmallIcon } 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 <CloseSmallIcon aria-hidden />\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-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 <div className=\"eds-chip\">\n <span className=\"eds-filter-chip__icon\">\n <CheckboxIcon />\n </span>\n {children}\n </div>\n </label>\n );\n },\n);\n\nconst CheckboxIcon: React.FC = () => {\n return (\n <svg\n className=\"eds-filter-chip-icon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n className=\"eds-filter-chip-icon__path\"\n d=\"M1.71283 7.10801L5.6464 11.1377C5.84098 11.3371 6.16095 11.339 6.35786 11.1419L14.2916 3.20325\"\n stroke=\"#181C56\"\n strokeWidth=\"2\"\n />\n </svg>\n );\n};\n","import React from 'react';\nimport { ChoiceChipGroupContextProvider } from './ChoiceChipGroupContext';\nimport { Fieldset } from '@entur/form';\n\nimport './ChoiceChipGroup.scss';\n\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","CloseSmallIcon","FilterChip","CheckboxIcon","width","height","viewBox","fill","xmlns","d","stroke","strokeWidth","ChoiceChipGroup","label","contextValue","useMemo","Fieldset","warnAboutMissingStyles"],"mappings":"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"}
|