@laerdal/life-react-components 5.0.8-dev.1 → 5.0.8-dev.1.full

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.
@@ -116,6 +116,7 @@ var DropdownButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
116
116
  role: "button",
117
117
  tooltip: rest.tooltip,
118
118
  id: id,
119
+ "aria-expanded": dropdownOpen,
119
120
  "data-testid": dataTestId,
120
121
  "aria-controls": "".concat(id, "_dropdowncontent"),
121
122
  "aria-activedescendant": activeDescendant,
@@ -142,6 +143,7 @@ var DropdownButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
142
143
  role: "button",
143
144
  id: id,
144
145
  "data-testid": dataTestId,
146
+ "aria-expanded": dropdownOpen,
145
147
  "aria-controls": "".concat(id, "_dropdowncontent"),
146
148
  "aria-activedescendant": activeDescendant,
147
149
  onMouseDown: _common.defaultOnMouseDownHandler,
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownButton.cjs","names":["React","_interopRequireWildcard","require","_Button","_DropdownContent","_interopRequireDefault","_styledComponents","_common","_CommonStyling","_icons","_jsxRuntime","_excluded","_templateObject","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DropdownButtonContainer","styled","div","_taggedTemplateLiteral2","exports","DropdownButton","forwardRef","_ref","ref","items","icon","disabled","onClick","_ref$itemsType","itemsType","action","_ref$actionLabel","actionLabel","actionVariant","actionIcon","actionLoading","size","width","alignLeft","_ref$multiSelect","multiSelect","_ref$scrollable","scrollable","_ref$pinTopItem","pinTopItem","maxHeight","className","value","id","dataTestId","rest","_objectWithoutProperties2","_React$useState","useState","_React$useState2","_slicedToArray2","dropdownOpen","setDropdownOpen","_React$useState3","_React$useState4","activeDescendant","setActiveDescendant","_React$useState5","_React$useState6","selectedValues","setSelectedValues","_React$useState7","_React$useState8","focused","setFocused","_React$useState9","_React$useState10","keyboardNavigated","setKeyboardNavigated","dropdownRef","useRef","containerRef","useFocusOutsideRef","useClickOutsideRef","useEffect","handleValueSelect","values","renderButton","type","jsx","IconButton","variant","shape","role","tooltip","concat","event","detail","children","label","keepLabel","length","filter","includes","map","_a$displayLabel","displayLabel","join","cls","DropdownButtonTextWrapper","tabIndex","onMouseDown","defaultOnMouseDownHandler","onKeyDown","key","preventDefault","stopPropagation","jsxs","DropdownButtonTextContent","DropdownButtonTextIcon","DropdownButtonTextStyles","DropdownButtonTextArrow","SystemIcons","ArrowDropUp","ArrowDropDown","ariaRolesType","customizationProps","onValueUpdate","onActiveDescendantChanged","isOpen","setIsOpen","outline","messageOnNoResults","isButton","_default"],"sources":["../../src/Dropdown/DropdownButton.tsx"],"sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import custom components.\n */\nimport {IconButton} from '../Button';\nimport DropdownContent from './DropdownContent';\nimport styled from 'styled-components';\n\n/**\n * Import custom types.\n */\nimport {DropdownButtonProps} from './DropdownButtonTypes';\nimport {defaultOnMouseDownHandler, useClickOutsideRef, useFocusOutsideRef} from '../common';\nimport {\n DropdownButtonTextArrow,\n DropdownButtonTextContent,\n DropdownButtonTextIcon,\n DropdownButtonTextStyles,\n DropdownButtonTextWrapper\n} from './CommonStyling';\nimport {SystemIcons} from '../icons';\n\nexport const DropdownButtonContainer = styled.div`\n display: inline-block;\n`;\n\nconst DropdownButton = React.forwardRef( ({\n items,\n icon,\n disabled,\n onClick,\n itemsType = 'normal',\n action,\n actionLabel = '',\n actionVariant,\n actionIcon,\n actionLoading,\n size,\n width,\n alignLeft,\n multiSelect = false,\n scrollable = false,\n pinTopItem = false,\n maxHeight,\n className,\n value,\n id,\n dataTestId,\n ...rest\n }: DropdownButtonProps, ref: React.Ref<HTMLButtonElement>) => {\n // Globally used variables within the view.\n const [dropdownOpen, setDropdownOpen] = React.useState<boolean>(false);\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\n const [focused, setFocused] = React.useState<number | null>(null);\n const [keyboardNavigated, setKeyboardNavigated] = React.useState<boolean>(false);\n const dropdownRef = React.useRef<HTMLDivElement>(null);\n\n const containerRef = useFocusOutsideRef(() => setDropdownOpen(false), [dropdownRef]);\n useClickOutsideRef(() => setDropdownOpen(false), [], containerRef);\n\n React.useEffect(() => {\n !dropdownOpen && setKeyboardNavigated(false)\n }, [dropdownOpen]);\n\n React.useEffect(() => {\n disabled && setDropdownOpen(false)\n }, [disabled]);\n\n React.useEffect(() => {\n setSelectedValues(value || []);\n }, [value]);\n\n const handleValueSelect = (values: string[]) => {\n // Do all required actions\n onClick(values);\n };\n\n /**\n * Renders Icon Button dropdown menu.\n * @returns HTML View for the Icon button dropdown menu.\n */\n const renderButton = () => {\n switch (rest.type) {\n case 'icon':\n return (\n <IconButton ref={ref}\n variant=\"secondary\"\n shape=\"circular\"\n role=\"button\"\n tooltip={rest.tooltip}\n id={id}\n data-testid={dataTestId}\n aria-controls={`${id}_dropdowncontent`}\n aria-activedescendant={activeDescendant}\n \n action={(event: any) => {\n setDropdownOpen(!dropdownOpen);\n if (event?.detail !== 1) {\n setKeyboardNavigated(true);\n }\n }}\n disabled={disabled}>\n {icon}\n </IconButton>\n );\n case 'text':\n const label = rest.keepLabel || !selectedValues?.length\n ? rest.label\n : items.filter(a => selectedValues.includes(a.value)).map(a => a.displayLabel ?? a.value).join(', ');\n const cls = `${disabled && 'disabled'} ${dropdownOpen && 'expanded'} ${className}`;\n return <DropdownButtonTextWrapper tabIndex={!disabled ? 0 : -1}\n className={cls}\n role=\"button\"\n id={id}\n data-testid={dataTestId}\n aria-controls={`${id}_dropdowncontent`}\n aria-activedescendant={activeDescendant}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n e.stopPropagation();\n setDropdownOpen(!dropdownOpen);\n setKeyboardNavigated(true);\n }\n }}\n onClick={() => !disabled && setDropdownOpen(!dropdownOpen)}>\n <DropdownButtonTextContent>\n {icon && <DropdownButtonTextIcon>{icon}</DropdownButtonTextIcon>}\n <DropdownButtonTextStyles>{label}</DropdownButtonTextStyles>\n <DropdownButtonTextArrow>\n {\n dropdownOpen\n ? <SystemIcons.ArrowDropUp aria-label='Expanded' size=\"24px\"/>\n : <SystemIcons.ArrowDropDown aria-label='Collapsed' size=\"24px\"/>\n }\n </DropdownButtonTextArrow>\n </DropdownButtonTextContent>\n </DropdownButtonTextWrapper>\n }\n };\n\n return (\n <DropdownButtonContainer className={className} ref={containerRef}> \n {renderButton()}\n <DropdownContent\n ref={dropdownRef}\n ariaRolesType=\"menu\"\n containerRef={containerRef}\n customizationProps={{\n itemsType: itemsType,\n action: action ?? (() => {\n }),\n actionLabel: actionLabel,\n actionVariant: actionVariant,\n onValueUpdate: handleValueSelect,\n multiSelect: multiSelect,\n actionIcon: actionIcon,\n actionLoading: actionLoading,\n scrollable: scrollable,\n pinTopItem: pinTopItem,\n maxHeight: maxHeight,\n items: items\n }}\n onActiveDescendantChanged={(e) => setActiveDescendant(e)}\n focused={focused}\n setFocused={setFocused}\n size={size}\n width={width}\n alignLeft={alignLeft}\n isOpen={dropdownOpen}\n setIsOpen={setDropdownOpen}\n outline={keyboardNavigated}\n filter=\"\"\n selectedValues={rest.type === 'icon' && itemsType === 'normal' ? [] : selectedValues}\n setSelectedValues={setSelectedValues}\n messageOnNoResults=\"No results\"\n isButton={true}\n id={`${id}_dropdowncontent`}\n />\n </DropdownButtonContainer>\n );\n});\n\nexport default DropdownButton;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DropdownButton.cjs","names":["React","_interopRequireWildcard","require","_Button","_DropdownContent","_interopRequireDefault","_styledComponents","_common","_CommonStyling","_icons","_jsxRuntime","_excluded","_templateObject","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DropdownButtonContainer","styled","div","_taggedTemplateLiteral2","exports","DropdownButton","forwardRef","_ref","ref","items","icon","disabled","onClick","_ref$itemsType","itemsType","action","_ref$actionLabel","actionLabel","actionVariant","actionIcon","actionLoading","size","width","alignLeft","_ref$multiSelect","multiSelect","_ref$scrollable","scrollable","_ref$pinTopItem","pinTopItem","maxHeight","className","value","id","dataTestId","rest","_objectWithoutProperties2","_React$useState","useState","_React$useState2","_slicedToArray2","dropdownOpen","setDropdownOpen","_React$useState3","_React$useState4","activeDescendant","setActiveDescendant","_React$useState5","_React$useState6","selectedValues","setSelectedValues","_React$useState7","_React$useState8","focused","setFocused","_React$useState9","_React$useState10","keyboardNavigated","setKeyboardNavigated","dropdownRef","useRef","containerRef","useFocusOutsideRef","useClickOutsideRef","useEffect","handleValueSelect","values","renderButton","type","jsx","IconButton","variant","shape","role","tooltip","concat","event","detail","children","label","keepLabel","length","filter","includes","map","_a$displayLabel","displayLabel","join","cls","DropdownButtonTextWrapper","tabIndex","onMouseDown","defaultOnMouseDownHandler","onKeyDown","key","preventDefault","stopPropagation","jsxs","DropdownButtonTextContent","DropdownButtonTextIcon","DropdownButtonTextStyles","DropdownButtonTextArrow","SystemIcons","ArrowDropUp","ArrowDropDown","ariaRolesType","customizationProps","onValueUpdate","onActiveDescendantChanged","isOpen","setIsOpen","outline","messageOnNoResults","isButton","_default"],"sources":["../../src/Dropdown/DropdownButton.tsx"],"sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import custom components.\n */\nimport {IconButton} from '../Button';\nimport DropdownContent from './DropdownContent';\nimport styled from 'styled-components';\n\n/**\n * Import custom types.\n */\nimport {DropdownButtonProps} from './DropdownButtonTypes';\nimport {defaultOnMouseDownHandler, useClickOutsideRef, useFocusOutsideRef} from '../common';\nimport {\n DropdownButtonTextArrow,\n DropdownButtonTextContent,\n DropdownButtonTextIcon,\n DropdownButtonTextStyles,\n DropdownButtonTextWrapper\n} from './CommonStyling';\nimport {SystemIcons} from '../icons';\n\nexport const DropdownButtonContainer = styled.div`\n display: inline-block;\n`;\n\nconst DropdownButton = React.forwardRef( ({\n items,\n icon,\n disabled,\n onClick,\n itemsType = 'normal',\n action,\n actionLabel = '',\n actionVariant,\n actionIcon,\n actionLoading,\n size,\n width,\n alignLeft,\n multiSelect = false,\n scrollable = false,\n pinTopItem = false,\n maxHeight,\n className,\n value,\n id,\n dataTestId,\n ...rest\n }: DropdownButtonProps, ref: React.Ref<HTMLButtonElement>) => {\n // Globally used variables within the view.\n const [dropdownOpen, setDropdownOpen] = React.useState<boolean>(false);\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\n const [focused, setFocused] = React.useState<number | null>(null);\n const [keyboardNavigated, setKeyboardNavigated] = React.useState<boolean>(false);\n const dropdownRef = React.useRef<HTMLDivElement>(null);\n\n const containerRef = useFocusOutsideRef(() => setDropdownOpen(false), [dropdownRef]);\n useClickOutsideRef(() => setDropdownOpen(false), [], containerRef);\n\n React.useEffect(() => {\n !dropdownOpen && setKeyboardNavigated(false)\n }, [dropdownOpen]);\n\n React.useEffect(() => {\n disabled && setDropdownOpen(false)\n }, [disabled]);\n\n React.useEffect(() => {\n setSelectedValues(value || []);\n }, [value]);\n\n const handleValueSelect = (values: string[]) => {\n // Do all required actions\n onClick(values);\n };\n\n /**\n * Renders Icon Button dropdown menu.\n * @returns HTML View for the Icon button dropdown menu.\n */\n const renderButton = () => {\n switch (rest.type) {\n case 'icon':\n return (\n <IconButton ref={ref}\n variant=\"secondary\"\n shape=\"circular\"\n role=\"button\"\n tooltip={rest.tooltip}\n id={id}\n aria-expanded={dropdownOpen}\n data-testid={dataTestId}\n aria-controls={`${id}_dropdowncontent`}\n aria-activedescendant={activeDescendant}\n \n action={(event: any) => {\n setDropdownOpen(!dropdownOpen);\n if (event?.detail !== 1) {\n setKeyboardNavigated(true);\n }\n }}\n disabled={disabled}>\n {icon}\n </IconButton>\n );\n case 'text':\n const label = rest.keepLabel || !selectedValues?.length\n ? rest.label\n : items.filter(a => selectedValues.includes(a.value)).map(a => a.displayLabel ?? a.value).join(', ');\n const cls = `${disabled && 'disabled'} ${dropdownOpen && 'expanded'} ${className}`;\n return <DropdownButtonTextWrapper tabIndex={!disabled ? 0 : -1}\n className={cls}\n role=\"button\"\n id={id}\n data-testid={dataTestId}\n aria-expanded={dropdownOpen}\n aria-controls={`${id}_dropdowncontent`}\n aria-activedescendant={activeDescendant}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n e.stopPropagation();\n setDropdownOpen(!dropdownOpen);\n setKeyboardNavigated(true);\n }\n }}\n onClick={() => !disabled && setDropdownOpen(!dropdownOpen)}>\n <DropdownButtonTextContent>\n {icon && <DropdownButtonTextIcon>{icon}</DropdownButtonTextIcon>}\n <DropdownButtonTextStyles>{label}</DropdownButtonTextStyles>\n <DropdownButtonTextArrow>\n {\n dropdownOpen\n ? <SystemIcons.ArrowDropUp aria-label='Expanded' size=\"24px\"/>\n : <SystemIcons.ArrowDropDown aria-label='Collapsed' size=\"24px\"/>\n }\n </DropdownButtonTextArrow>\n </DropdownButtonTextContent>\n </DropdownButtonTextWrapper>\n }\n };\n\n return (\n <DropdownButtonContainer className={className} ref={containerRef}> \n {renderButton()}\n <DropdownContent\n ref={dropdownRef}\n ariaRolesType=\"menu\"\n containerRef={containerRef}\n customizationProps={{\n itemsType: itemsType,\n action: action ?? (() => {\n }),\n actionLabel: actionLabel,\n actionVariant: actionVariant,\n onValueUpdate: handleValueSelect,\n multiSelect: multiSelect,\n actionIcon: actionIcon,\n actionLoading: actionLoading,\n scrollable: scrollable,\n pinTopItem: pinTopItem,\n maxHeight: maxHeight,\n items: items\n }}\n onActiveDescendantChanged={(e) => setActiveDescendant(e)}\n focused={focused}\n setFocused={setFocused}\n size={size}\n width={width}\n alignLeft={alignLeft}\n isOpen={dropdownOpen}\n setIsOpen={setDropdownOpen}\n outline={keyboardNavigated}\n filter=\"\"\n selectedValues={rest.type === 'icon' && itemsType === 'normal' ? [] : selectedValues}\n setSelectedValues={setSelectedValues}\n messageOnNoResults=\"No results\"\n isButton={true}\n id={`${id}_dropdowncontent`}\n />\n </DropdownButtonContainer>\n );\n});\n\nexport default DropdownButton;\n"],"mappings":"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","ignoreList":[]}
@@ -109,6 +109,7 @@ var DropdownButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
109
109
  role: "button",
110
110
  tooltip: rest.tooltip,
111
111
  id: id,
112
+ "aria-expanded": dropdownOpen,
112
113
  "data-testid": dataTestId,
113
114
  "aria-controls": "".concat(id, "_dropdowncontent"),
114
115
  "aria-activedescendant": activeDescendant,
@@ -135,6 +136,7 @@ var DropdownButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
135
136
  role: "button",
136
137
  id: id,
137
138
  "data-testid": dataTestId,
139
+ "aria-expanded": dropdownOpen,
138
140
  "aria-controls": "".concat(id, "_dropdowncontent"),
139
141
  "aria-activedescendant": activeDescendant,
140
142
  onMouseDown: defaultOnMouseDownHandler,
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownButton.js","names":["React","IconButton","DropdownContent","styled","defaultOnMouseDownHandler","useClickOutsideRef","useFocusOutsideRef","DropdownButtonTextArrow","DropdownButtonTextContent","DropdownButtonTextIcon","DropdownButtonTextStyles","DropdownButtonTextWrapper","SystemIcons","jsx","_jsx","jsxs","_jsxs","DropdownButtonContainer","div","_templateObject","_taggedTemplateLiteral","DropdownButton","forwardRef","_ref","ref","items","icon","disabled","onClick","_ref$itemsType","itemsType","action","_ref$actionLabel","actionLabel","actionVariant","actionIcon","actionLoading","size","width","alignLeft","_ref$multiSelect","multiSelect","_ref$scrollable","scrollable","_ref$pinTopItem","pinTopItem","maxHeight","className","value","id","dataTestId","rest","_objectWithoutProperties","_excluded","_React$useState","useState","_React$useState2","_slicedToArray","dropdownOpen","setDropdownOpen","_React$useState3","_React$useState4","activeDescendant","setActiveDescendant","_React$useState5","_React$useState6","selectedValues","setSelectedValues","_React$useState7","_React$useState8","focused","setFocused","_React$useState9","_React$useState10","keyboardNavigated","setKeyboardNavigated","dropdownRef","useRef","containerRef","useEffect","handleValueSelect","values","renderButton","type","variant","shape","role","tooltip","concat","event","detail","children","label","keepLabel","length","filter","a","includes","map","_a$displayLabel","displayLabel","join","cls","tabIndex","onMouseDown","onKeyDown","e","key","preventDefault","stopPropagation","ArrowDropUp","ArrowDropDown","ariaRolesType","customizationProps","onValueUpdate","onActiveDescendantChanged","isOpen","setIsOpen","outline","messageOnNoResults","isButton"],"sources":["../../src/Dropdown/DropdownButton.tsx"],"sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import custom components.\n */\nimport {IconButton} from '../Button';\nimport DropdownContent from './DropdownContent';\nimport styled from 'styled-components';\n\n/**\n * Import custom types.\n */\nimport {DropdownButtonProps} from './DropdownButtonTypes';\nimport {defaultOnMouseDownHandler, useClickOutsideRef, useFocusOutsideRef} from '../common';\nimport {\n DropdownButtonTextArrow,\n DropdownButtonTextContent,\n DropdownButtonTextIcon,\n DropdownButtonTextStyles,\n DropdownButtonTextWrapper\n} from './CommonStyling';\nimport {SystemIcons} from '../icons';\n\nexport const DropdownButtonContainer = styled.div`\n display: inline-block;\n`;\n\nconst DropdownButton = React.forwardRef( ({\n items,\n icon,\n disabled,\n onClick,\n itemsType = 'normal',\n action,\n actionLabel = '',\n actionVariant,\n actionIcon,\n actionLoading,\n size,\n width,\n alignLeft,\n multiSelect = false,\n scrollable = false,\n pinTopItem = false,\n maxHeight,\n className,\n value,\n id,\n dataTestId,\n ...rest\n }: DropdownButtonProps, ref: React.Ref<HTMLButtonElement>) => {\n // Globally used variables within the view.\n const [dropdownOpen, setDropdownOpen] = React.useState<boolean>(false);\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\n const [focused, setFocused] = React.useState<number | null>(null);\n const [keyboardNavigated, setKeyboardNavigated] = React.useState<boolean>(false);\n const dropdownRef = React.useRef<HTMLDivElement>(null);\n\n const containerRef = useFocusOutsideRef(() => setDropdownOpen(false), [dropdownRef]);\n useClickOutsideRef(() => setDropdownOpen(false), [], containerRef);\n\n React.useEffect(() => {\n !dropdownOpen && setKeyboardNavigated(false)\n }, [dropdownOpen]);\n\n React.useEffect(() => {\n disabled && setDropdownOpen(false)\n }, [disabled]);\n\n React.useEffect(() => {\n setSelectedValues(value || []);\n }, [value]);\n\n const handleValueSelect = (values: string[]) => {\n // Do all required actions\n onClick(values);\n };\n\n /**\n * Renders Icon Button dropdown menu.\n * @returns HTML View for the Icon button dropdown menu.\n */\n const renderButton = () => {\n switch (rest.type) {\n case 'icon':\n return (\n <IconButton ref={ref}\n variant=\"secondary\"\n shape=\"circular\"\n role=\"button\"\n tooltip={rest.tooltip}\n id={id}\n data-testid={dataTestId}\n aria-controls={`${id}_dropdowncontent`}\n aria-activedescendant={activeDescendant}\n \n action={(event: any) => {\n setDropdownOpen(!dropdownOpen);\n if (event?.detail !== 1) {\n setKeyboardNavigated(true);\n }\n }}\n disabled={disabled}>\n {icon}\n </IconButton>\n );\n case 'text':\n const label = rest.keepLabel || !selectedValues?.length\n ? rest.label\n : items.filter(a => selectedValues.includes(a.value)).map(a => a.displayLabel ?? a.value).join(', ');\n const cls = `${disabled && 'disabled'} ${dropdownOpen && 'expanded'} ${className}`;\n return <DropdownButtonTextWrapper tabIndex={!disabled ? 0 : -1}\n className={cls}\n role=\"button\"\n id={id}\n data-testid={dataTestId}\n aria-controls={`${id}_dropdowncontent`}\n aria-activedescendant={activeDescendant}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n e.stopPropagation();\n setDropdownOpen(!dropdownOpen);\n setKeyboardNavigated(true);\n }\n }}\n onClick={() => !disabled && setDropdownOpen(!dropdownOpen)}>\n <DropdownButtonTextContent>\n {icon && <DropdownButtonTextIcon>{icon}</DropdownButtonTextIcon>}\n <DropdownButtonTextStyles>{label}</DropdownButtonTextStyles>\n <DropdownButtonTextArrow>\n {\n dropdownOpen\n ? <SystemIcons.ArrowDropUp aria-label='Expanded' size=\"24px\"/>\n : <SystemIcons.ArrowDropDown aria-label='Collapsed' size=\"24px\"/>\n }\n </DropdownButtonTextArrow>\n </DropdownButtonTextContent>\n </DropdownButtonTextWrapper>\n }\n };\n\n return (\n <DropdownButtonContainer className={className} ref={containerRef}> \n {renderButton()}\n <DropdownContent\n ref={dropdownRef}\n ariaRolesType=\"menu\"\n containerRef={containerRef}\n customizationProps={{\n itemsType: itemsType,\n action: action ?? (() => {\n }),\n actionLabel: actionLabel,\n actionVariant: actionVariant,\n onValueUpdate: handleValueSelect,\n multiSelect: multiSelect,\n actionIcon: actionIcon,\n actionLoading: actionLoading,\n scrollable: scrollable,\n pinTopItem: pinTopItem,\n maxHeight: maxHeight,\n items: items\n }}\n onActiveDescendantChanged={(e) => setActiveDescendant(e)}\n focused={focused}\n setFocused={setFocused}\n size={size}\n width={width}\n alignLeft={alignLeft}\n isOpen={dropdownOpen}\n setIsOpen={setDropdownOpen}\n outline={keyboardNavigated}\n filter=\"\"\n selectedValues={rest.type === 'icon' && itemsType === 'normal' ? [] : selectedValues}\n setSelectedValues={setSelectedValues}\n messageOnNoResults=\"No results\"\n isButton={true}\n id={`${id}_dropdowncontent`}\n />\n </DropdownButtonContainer>\n );\n});\n\nexport default DropdownButton;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DropdownButton.js","names":["React","IconButton","DropdownContent","styled","defaultOnMouseDownHandler","useClickOutsideRef","useFocusOutsideRef","DropdownButtonTextArrow","DropdownButtonTextContent","DropdownButtonTextIcon","DropdownButtonTextStyles","DropdownButtonTextWrapper","SystemIcons","jsx","_jsx","jsxs","_jsxs","DropdownButtonContainer","div","_templateObject","_taggedTemplateLiteral","DropdownButton","forwardRef","_ref","ref","items","icon","disabled","onClick","_ref$itemsType","itemsType","action","_ref$actionLabel","actionLabel","actionVariant","actionIcon","actionLoading","size","width","alignLeft","_ref$multiSelect","multiSelect","_ref$scrollable","scrollable","_ref$pinTopItem","pinTopItem","maxHeight","className","value","id","dataTestId","rest","_objectWithoutProperties","_excluded","_React$useState","useState","_React$useState2","_slicedToArray","dropdownOpen","setDropdownOpen","_React$useState3","_React$useState4","activeDescendant","setActiveDescendant","_React$useState5","_React$useState6","selectedValues","setSelectedValues","_React$useState7","_React$useState8","focused","setFocused","_React$useState9","_React$useState10","keyboardNavigated","setKeyboardNavigated","dropdownRef","useRef","containerRef","useEffect","handleValueSelect","values","renderButton","type","variant","shape","role","tooltip","concat","event","detail","children","label","keepLabel","length","filter","a","includes","map","_a$displayLabel","displayLabel","join","cls","tabIndex","onMouseDown","onKeyDown","e","key","preventDefault","stopPropagation","ArrowDropUp","ArrowDropDown","ariaRolesType","customizationProps","onValueUpdate","onActiveDescendantChanged","isOpen","setIsOpen","outline","messageOnNoResults","isButton"],"sources":["../../src/Dropdown/DropdownButton.tsx"],"sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import custom components.\n */\nimport {IconButton} from '../Button';\nimport DropdownContent from './DropdownContent';\nimport styled from 'styled-components';\n\n/**\n * Import custom types.\n */\nimport {DropdownButtonProps} from './DropdownButtonTypes';\nimport {defaultOnMouseDownHandler, useClickOutsideRef, useFocusOutsideRef} from '../common';\nimport {\n DropdownButtonTextArrow,\n DropdownButtonTextContent,\n DropdownButtonTextIcon,\n DropdownButtonTextStyles,\n DropdownButtonTextWrapper\n} from './CommonStyling';\nimport {SystemIcons} from '../icons';\n\nexport const DropdownButtonContainer = styled.div`\n display: inline-block;\n`;\n\nconst DropdownButton = React.forwardRef( ({\n items,\n icon,\n disabled,\n onClick,\n itemsType = 'normal',\n action,\n actionLabel = '',\n actionVariant,\n actionIcon,\n actionLoading,\n size,\n width,\n alignLeft,\n multiSelect = false,\n scrollable = false,\n pinTopItem = false,\n maxHeight,\n className,\n value,\n id,\n dataTestId,\n ...rest\n }: DropdownButtonProps, ref: React.Ref<HTMLButtonElement>) => {\n // Globally used variables within the view.\n const [dropdownOpen, setDropdownOpen] = React.useState<boolean>(false);\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\n const [focused, setFocused] = React.useState<number | null>(null);\n const [keyboardNavigated, setKeyboardNavigated] = React.useState<boolean>(false);\n const dropdownRef = React.useRef<HTMLDivElement>(null);\n\n const containerRef = useFocusOutsideRef(() => setDropdownOpen(false), [dropdownRef]);\n useClickOutsideRef(() => setDropdownOpen(false), [], containerRef);\n\n React.useEffect(() => {\n !dropdownOpen && setKeyboardNavigated(false)\n }, [dropdownOpen]);\n\n React.useEffect(() => {\n disabled && setDropdownOpen(false)\n }, [disabled]);\n\n React.useEffect(() => {\n setSelectedValues(value || []);\n }, [value]);\n\n const handleValueSelect = (values: string[]) => {\n // Do all required actions\n onClick(values);\n };\n\n /**\n * Renders Icon Button dropdown menu.\n * @returns HTML View for the Icon button dropdown menu.\n */\n const renderButton = () => {\n switch (rest.type) {\n case 'icon':\n return (\n <IconButton ref={ref}\n variant=\"secondary\"\n shape=\"circular\"\n role=\"button\"\n tooltip={rest.tooltip}\n id={id}\n aria-expanded={dropdownOpen}\n data-testid={dataTestId}\n aria-controls={`${id}_dropdowncontent`}\n aria-activedescendant={activeDescendant}\n \n action={(event: any) => {\n setDropdownOpen(!dropdownOpen);\n if (event?.detail !== 1) {\n setKeyboardNavigated(true);\n }\n }}\n disabled={disabled}>\n {icon}\n </IconButton>\n );\n case 'text':\n const label = rest.keepLabel || !selectedValues?.length\n ? rest.label\n : items.filter(a => selectedValues.includes(a.value)).map(a => a.displayLabel ?? a.value).join(', ');\n const cls = `${disabled && 'disabled'} ${dropdownOpen && 'expanded'} ${className}`;\n return <DropdownButtonTextWrapper tabIndex={!disabled ? 0 : -1}\n className={cls}\n role=\"button\"\n id={id}\n data-testid={dataTestId}\n aria-expanded={dropdownOpen}\n aria-controls={`${id}_dropdowncontent`}\n aria-activedescendant={activeDescendant}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n e.stopPropagation();\n setDropdownOpen(!dropdownOpen);\n setKeyboardNavigated(true);\n }\n }}\n onClick={() => !disabled && setDropdownOpen(!dropdownOpen)}>\n <DropdownButtonTextContent>\n {icon && <DropdownButtonTextIcon>{icon}</DropdownButtonTextIcon>}\n <DropdownButtonTextStyles>{label}</DropdownButtonTextStyles>\n <DropdownButtonTextArrow>\n {\n dropdownOpen\n ? <SystemIcons.ArrowDropUp aria-label='Expanded' size=\"24px\"/>\n : <SystemIcons.ArrowDropDown aria-label='Collapsed' size=\"24px\"/>\n }\n </DropdownButtonTextArrow>\n </DropdownButtonTextContent>\n </DropdownButtonTextWrapper>\n }\n };\n\n return (\n <DropdownButtonContainer className={className} ref={containerRef}> \n {renderButton()}\n <DropdownContent\n ref={dropdownRef}\n ariaRolesType=\"menu\"\n containerRef={containerRef}\n customizationProps={{\n itemsType: itemsType,\n action: action ?? (() => {\n }),\n actionLabel: actionLabel,\n actionVariant: actionVariant,\n onValueUpdate: handleValueSelect,\n multiSelect: multiSelect,\n actionIcon: actionIcon,\n actionLoading: actionLoading,\n scrollable: scrollable,\n pinTopItem: pinTopItem,\n maxHeight: maxHeight,\n items: items\n }}\n onActiveDescendantChanged={(e) => setActiveDescendant(e)}\n focused={focused}\n setFocused={setFocused}\n size={size}\n width={width}\n alignLeft={alignLeft}\n isOpen={dropdownOpen}\n setIsOpen={setDropdownOpen}\n outline={keyboardNavigated}\n filter=\"\"\n selectedValues={rest.type === 'icon' && itemsType === 'normal' ? [] : selectedValues}\n setSelectedValues={setSelectedValues}\n messageOnNoResults=\"No results\"\n isButton={true}\n id={`${id}_dropdowncontent`}\n />\n </DropdownButtonContainer>\n );\n});\n\nexport default DropdownButton;\n"],"mappings":"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","ignoreList":[]}
@@ -167,7 +167,7 @@ var TableBody = function TableBody(props) {
167
167
  column.sortable && props.sortByColumn(column);
168
168
  }
169
169
  },
170
- "aria-pressed": column.key === ((_props$sortProps = props.sortProps) === null || _props$sortProps === void 0 ? void 0 : _props$sortProps.column) && !!((_props$sortProps2 = props.sortProps) !== null && _props$sortProps2 !== void 0 && _props$sortProps2.direction) ? true : undefined,
170
+ "aria-selected": column.key === ((_props$sortProps = props.sortProps) === null || _props$sortProps === void 0 ? void 0 : _props$sortProps.column) && !!((_props$sortProps2 = props.sortProps) !== null && _props$sortProps2 !== void 0 && _props$sortProps2.direction) ? true : undefined,
171
171
  "aria-sort": column.key === ((_props$sortProps3 = props.sortProps) === null || _props$sortProps3 === void 0 ? void 0 : _props$sortProps3.column) && !!((_props$sortProps4 = props.sortProps) !== null && _props$sortProps4 !== void 0 && _props$sortProps4.direction) ? ((_props$sortProps5 = props.sortProps) === null || _props$sortProps5 === void 0 ? void 0 : _props$sortProps5.direction) == 'asc' ? 'ascending' : 'descending' : undefined,
172
172
  style: {
173
173
  width: column.width
@@ -1 +1 @@
1
- {"version":3,"file":"TableBody.cjs","names":["_Button","require","_types","React","_interopRequireWildcard","_InputFields","_Iconbutton","_interopRequireDefault","_HyperLink","_TableStyles","_common","_icons","_rooks","_styledComponents","_jsxRuntime","_templateObject","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ColumnLabel","styled","span","_taggedTemplateLiteral2","TableBody","props","_props$noRowsLabel","_useDimensionsRef","useDimensionsRef","updateOnResize","_useDimensionsRef2","_slicedToArray2","scrollContainerRef","dimensions","node","_React$useState","useState","_React$useState2","scrollable","setScrollable","useEffect","_node$clientWidth","_node$scrollWidth","clientWidth","scrollWidth","columns","rows","renderCellBody","column","row","type","tmp","variant","href","tabIndex","showLoadingIndicator","additionalProps","jsx","HyperLink","style","colorFn","color","key","onClick","preventDefault","stopPropagation","action","children","iconColor","shape","useTransparentBackground","icon","size","Size","Small","Button","Checkbox","selected","readOnly","customContent","jsxs","Fragment","StyledTableCellIcon","StyledTableCellTextWrapper","$textWrap","shortenText","StyledTableCellText","Boolean","noteKey","StyledTableCellNoteText","isSelected","_props$selected","multiSelect","indexOf","keyExpr","StyledTableBodyWrapper","ref","className","StyledTable","cellPadding","cellSpacing","concat","layout","StyledTableHeaderRow","StyledTableHeaderColumns","StyledTableHeaderColumn","StyledTableHeaderColumnContent","selectAllState","disabled","semiSelected","select","onSelectAllClick","map","_props$sortProps","_props$sortProps2","_props$sortProps3","_props$sortProps4","_props$sortProps5","_props$sortProps6","_props$sortProps7","_props$sortProps8","_props$sortProps9","onMouseDown","defaultOnMouseDownHandler","sortable","sortByColumn","onKeyPress","sortProps","direction","undefined","width","justify","name","StyledTableHeaderColumnSortDirection","SystemIcons","ArrowLineUp","ArrowLineDown","StyledTableBody","currentPageRows","index","StyledTableBodyRow","selectable","onRowClick","StyledTableCell","StyledTableCellContent","maxWidth","title","$withNote","StyledTableNoRowsLabelRow","colSpan","noRowsLabel","propTypes","_propTypes","arrayOf","any","isRequired","func","oneOf","_default","exports"],"sources":["../../src/Table/TableBody.tsx"],"sourcesContent":["import { TableColumn, TableProps } from './TableTypes';\nimport { Button } from '../Button';\nimport { Size } from '../types';\nimport * as React from 'react';\nimport { Checkbox } from '../InputFields';\nimport { ButtonProps } from '../Button/Button';\nimport IconButton, { IconButtonProps } from '../Button/Iconbutton';\nimport { HyperlinkProps } from '../HyperLink/HyperLink';\nimport { HyperLink } from '../HyperLink';\nimport {\n StyledTableBody,\n StyledTableBodyRow,\n StyledTableCell,\n StyledTableCellContent,\n StyledTableCellIcon,\n StyledTableCellText,\n StyledTableHeaderColumn,\n StyledTableHeaderColumnContent,\n StyledTableHeaderColumns,\n StyledTableNoRowsLabelRow,\n StyledTable,\n StyledTableBodyWrapper,\n StyledTableHeaderRow,\n StyledTableHeaderColumnSortDirection,\n StyledTableCellNoteText,\n StyledTableCellTextWrapper,\n} from './TableStyles';\nimport { defaultOnMouseDownHandler } from '../common';\nimport { SystemIcons } from '../icons';\nimport { useDimensionsRef } from 'rooks';\nimport styled from 'styled-components';\n\ninterface TableBodyProps extends TableProps {\n currentPageRows: any[];\n onRowClick?: (row: any) => void;\n selected?: any | any[];\n sortByColumn: (column: TableColumn) => void;\n onSelectAllClick: () => void;\n selectAllState: 'all' | 'some' | 'none';\n}\n\nconst ColumnLabel = styled.span`\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n`;\n\nconst TableBody: React.FC<TableBodyProps> = (props) => {\n const [scrollContainerRef, dimensions, node] = useDimensionsRef({ updateOnResize: true });\n const [scrollable, setScrollable] = React.useState(false);\n\n React.useEffect(() => {\n const clientWidth = node?.clientWidth ?? 0;\n const scrollWidth = node?.scrollWidth ?? 0;\n setScrollable(scrollWidth > clientWidth);\n }, [dimensions, node, props.columns, props.rows]);\n\n const renderCellBody = (column: TableColumn, row: any) => {\n switch (column.type) {\n case 'link': {\n const tmp = {\n variant: 'default',\n href: '#',\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n ...column.additionalProps,\n } as HyperlinkProps;\n return (\n <HyperLink\n style={column.colorFn && { color: column.colorFn(row, column.key) }}\n {...tmp}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </HyperLink>\n );\n }\n case 'icon': {\n const tmp = {\n iconColor: column.colorFn && column.colorFn(row, column.key),\n variant: 'secondary',\n shape: 'circular',\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n useTransparentBackground: true,\n ...column.additionalProps,\n } as IconButtonProps;\n return (\n <IconButton\n {...tmp}\n action={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {column.icon}\n </IconButton>\n );\n }\n case 'button': {\n const tmp = {\n variant: 'tertiary',\n size: Size.Small,\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n ...column.additionalProps,\n } as ButtonProps;\n return (\n <Button\n style={column.colorFn && { color: column.colorFn(row, column.key) }}\n {...tmp}\n onClick={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </Button>\n );\n }\n case 'boolean':\n return <Checkbox selected={!!row[column.key]} readOnly={true} />;\n case 'custom':\n return column.customContent && column.customContent(row, column.key);\n case 'number':\n case 'text':\n default:\n return (\n <>\n {column.icon && <StyledTableCellIcon>{column.icon}</StyledTableCellIcon>}\n <StyledTableCellTextWrapper $textWrap={!column.shortenText}>\n <StyledTableCellText>{row[column.key]}</StyledTableCellText>\n {Boolean(column.noteKey) && Boolean(row[column.noteKey!]) && (\n <>\n <StyledTableCellNoteText>{row[column.noteKey!]}</StyledTableCellNoteText>\n </>\n )}\n </StyledTableCellTextWrapper>\n </>\n );\n }\n };\n\n const isSelected = (row: any) => {\n return (\n (props.multiSelect && props.selected?.indexOf(props.keyExpr ? row[props.keyExpr] : row) > -1) ||\n (!props.multiSelect && props.selected === (props.keyExpr ? row[props.keyExpr] : row))\n );\n };\n\n return (\n <StyledTableBodyWrapper ref={scrollContainerRef as any} className={scrollable ? 'scrollable' : ''}>\n <StyledTable cellPadding=\"0\" cellSpacing=\"0\" data-testid=\"TestTable\" className={`table ${props.layout || ''}`}>\n <StyledTableHeaderRow>\n <StyledTableHeaderColumns data-testid=\"TestTableColumnHeaderRow\">\n {props.multiSelect && (\n <StyledTableHeaderColumn>\n <StyledTableHeaderColumnContent>\n <Checkbox\n selected={props.selectAllState === 'all'}\n disabled={props.showLoadingIndicator}\n semiSelected={props.selectAllState === 'some'}\n select={props.onSelectAllClick}\n />\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n )}\n {props.columns.map((column: TableColumn) => (\n <StyledTableHeaderColumn\n key={column.key}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={(e) => column.sortable && props.sortByColumn(column)}\n onKeyPress={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n column.sortable && props.sortByColumn(column);\n }\n }}\n aria-pressed={column.key === props.sortProps?.column && !!props.sortProps?.direction ? true : undefined}\n aria-sort={column.key === props.sortProps?.column && !!props.sortProps?.direction ? (props.sortProps?.direction == 'asc' ? 'ascending' : 'descending') : undefined}\n style={{ width: column.width }}\n tabIndex={column.sortable && !props.showLoadingIndicator ? 0 : -1}\n className={`${!!column.sortable ? 'sortable' : ''} ${column.key === props.sortProps?.column && !!props.sortProps?.direction ? 'sorted' : ''} ${\n column.justify || ''\n }`}>\n <StyledTableHeaderColumnContent>\n <ColumnLabel>{column.name}</ColumnLabel>\n {column.key === props.sortProps?.column && (\n <StyledTableHeaderColumnSortDirection>\n {props.sortProps?.direction === 'asc' ? <SystemIcons.ArrowLineUp size={'20px'} /> : <SystemIcons.ArrowLineDown size={'20px'} />}\n </StyledTableHeaderColumnSortDirection>\n )}\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n ))}\n </StyledTableHeaderColumns>\n </StyledTableHeaderRow>\n <StyledTableBody>\n {props.currentPageRows.length > 0 ? (\n props.currentPageRows.map((row: any, index: number) => (\n <StyledTableBodyRow\n key={`row_${index}`}\n className={`${props.selectable ? 'selectable' : ''} ${isSelected(row) ? 'selected' : ''}`}\n onClick={() => props.onRowClick && props.onRowClick(row)}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n props.onRowClick && props.onRowClick(row);\n }\n }}\n tabIndex={props.selectable && !props.showLoadingIndicator ? 0 : undefined}\n data-testid=\"TestTableDataRow\">\n {props.multiSelect && (\n <StyledTableCell>\n <StyledTableCellContent>\n <Checkbox selected={isSelected(row)} />\n </StyledTableCellContent>\n </StyledTableCell>\n )}\n {props.columns.map((column: TableColumn) => (\n <StyledTableCell key={`row_${index}_${column.key}`} style={{ maxWidth: column.width }} title={column.shortenText ? `${row[column.key]} \\n ${column.noteKey ? row[column.noteKey!] : ''}` : ''}>\n <StyledTableCellContent\n $withNote={Boolean(column.noteKey)}\n className={`${column.shortenText ? `truncate-text` : ''} ${column.justify || ''}`}\n style={{\n color: column.colorFn && column.colorFn(row, column.key),\n }}>\n {renderCellBody(column, row)}\n </StyledTableCellContent>\n </StyledTableCell>\n ))}\n </StyledTableBodyRow>\n ))\n ) : (\n <StyledTableNoRowsLabelRow data-testid=\"TestTableNoDataRow\">\n <StyledTableCell colSpan={props.columns.length + (props.multiSelect ? 1 : 0)}>\n <StyledTableCellContent className={'center'}>{props.noRowsLabel ?? 'There are no rows to display'}</StyledTableCellContent>\n </StyledTableCell>\n </StyledTableNoRowsLabelRow>\n )}\n </StyledTableBody>\n </StyledTable>\n </StyledTableBodyWrapper>\n );\n};\nexport default TableBody;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"TableBody.cjs","names":["_Button","require","_types","React","_interopRequireWildcard","_InputFields","_Iconbutton","_interopRequireDefault","_HyperLink","_TableStyles","_common","_icons","_rooks","_styledComponents","_jsxRuntime","_templateObject","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ColumnLabel","styled","span","_taggedTemplateLiteral2","TableBody","props","_props$noRowsLabel","_useDimensionsRef","useDimensionsRef","updateOnResize","_useDimensionsRef2","_slicedToArray2","scrollContainerRef","dimensions","node","_React$useState","useState","_React$useState2","scrollable","setScrollable","useEffect","_node$clientWidth","_node$scrollWidth","clientWidth","scrollWidth","columns","rows","renderCellBody","column","row","type","tmp","variant","href","tabIndex","showLoadingIndicator","additionalProps","jsx","HyperLink","style","colorFn","color","key","onClick","preventDefault","stopPropagation","action","children","iconColor","shape","useTransparentBackground","icon","size","Size","Small","Button","Checkbox","selected","readOnly","customContent","jsxs","Fragment","StyledTableCellIcon","StyledTableCellTextWrapper","$textWrap","shortenText","StyledTableCellText","Boolean","noteKey","StyledTableCellNoteText","isSelected","_props$selected","multiSelect","indexOf","keyExpr","StyledTableBodyWrapper","ref","className","StyledTable","cellPadding","cellSpacing","concat","layout","StyledTableHeaderRow","StyledTableHeaderColumns","StyledTableHeaderColumn","StyledTableHeaderColumnContent","selectAllState","disabled","semiSelected","select","onSelectAllClick","map","_props$sortProps","_props$sortProps2","_props$sortProps3","_props$sortProps4","_props$sortProps5","_props$sortProps6","_props$sortProps7","_props$sortProps8","_props$sortProps9","onMouseDown","defaultOnMouseDownHandler","sortable","sortByColumn","onKeyPress","sortProps","direction","undefined","width","justify","name","StyledTableHeaderColumnSortDirection","SystemIcons","ArrowLineUp","ArrowLineDown","StyledTableBody","currentPageRows","index","StyledTableBodyRow","selectable","onRowClick","StyledTableCell","StyledTableCellContent","maxWidth","title","$withNote","StyledTableNoRowsLabelRow","colSpan","noRowsLabel","propTypes","_propTypes","arrayOf","any","isRequired","func","oneOf","_default","exports"],"sources":["../../src/Table/TableBody.tsx"],"sourcesContent":["import { TableColumn, TableProps } from './TableTypes';\nimport { Button } from '../Button';\nimport { Size } from '../types';\nimport * as React from 'react';\nimport { Checkbox } from '../InputFields';\nimport { ButtonProps } from '../Button/Button';\nimport IconButton, { IconButtonProps } from '../Button/Iconbutton';\nimport { HyperlinkProps } from '../HyperLink/HyperLink';\nimport { HyperLink } from '../HyperLink';\nimport {\n StyledTableBody,\n StyledTableBodyRow,\n StyledTableCell,\n StyledTableCellContent,\n StyledTableCellIcon,\n StyledTableCellText,\n StyledTableHeaderColumn,\n StyledTableHeaderColumnContent,\n StyledTableHeaderColumns,\n StyledTableNoRowsLabelRow,\n StyledTable,\n StyledTableBodyWrapper,\n StyledTableHeaderRow,\n StyledTableHeaderColumnSortDirection,\n StyledTableCellNoteText,\n StyledTableCellTextWrapper,\n} from './TableStyles';\nimport { defaultOnMouseDownHandler } from '../common';\nimport { SystemIcons } from '../icons';\nimport { useDimensionsRef } from 'rooks';\nimport styled from 'styled-components';\n\ninterface TableBodyProps extends TableProps {\n currentPageRows: any[];\n onRowClick?: (row: any) => void;\n selected?: any | any[];\n sortByColumn: (column: TableColumn) => void;\n onSelectAllClick: () => void;\n selectAllState: 'all' | 'some' | 'none';\n}\n\nconst ColumnLabel = styled.span`\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n`;\n\nconst TableBody: React.FC<TableBodyProps> = (props) => {\n const [scrollContainerRef, dimensions, node] = useDimensionsRef({ updateOnResize: true });\n const [scrollable, setScrollable] = React.useState(false);\n\n React.useEffect(() => {\n const clientWidth = node?.clientWidth ?? 0;\n const scrollWidth = node?.scrollWidth ?? 0;\n setScrollable(scrollWidth > clientWidth);\n }, [dimensions, node, props.columns, props.rows]);\n\n const renderCellBody = (column: TableColumn, row: any) => {\n switch (column.type) {\n case 'link': {\n const tmp = {\n variant: 'default',\n href: '#',\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n ...column.additionalProps,\n } as HyperlinkProps;\n return (\n <HyperLink\n style={column.colorFn && { color: column.colorFn(row, column.key) }}\n {...tmp}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </HyperLink>\n );\n }\n case 'icon': {\n const tmp = {\n iconColor: column.colorFn && column.colorFn(row, column.key),\n variant: 'secondary',\n shape: 'circular',\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n useTransparentBackground: true,\n ...column.additionalProps,\n } as IconButtonProps;\n return (\n <IconButton\n {...tmp}\n action={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {column.icon}\n </IconButton>\n );\n }\n case 'button': {\n const tmp = {\n variant: 'tertiary',\n size: Size.Small,\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n ...column.additionalProps,\n } as ButtonProps;\n return (\n <Button\n style={column.colorFn && { color: column.colorFn(row, column.key) }}\n {...tmp}\n onClick={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </Button>\n );\n }\n case 'boolean':\n return <Checkbox selected={!!row[column.key]} readOnly={true} />;\n case 'custom':\n return column.customContent && column.customContent(row, column.key);\n case 'number':\n case 'text':\n default:\n return (\n <>\n {column.icon && <StyledTableCellIcon>{column.icon}</StyledTableCellIcon>}\n <StyledTableCellTextWrapper $textWrap={!column.shortenText}>\n <StyledTableCellText>{row[column.key]}</StyledTableCellText>\n {Boolean(column.noteKey) && Boolean(row[column.noteKey!]) && (\n <>\n <StyledTableCellNoteText>{row[column.noteKey!]}</StyledTableCellNoteText>\n </>\n )}\n </StyledTableCellTextWrapper>\n </>\n );\n }\n };\n\n const isSelected = (row: any) => {\n return (\n (props.multiSelect && props.selected?.indexOf(props.keyExpr ? row[props.keyExpr] : row) > -1) ||\n (!props.multiSelect && props.selected === (props.keyExpr ? row[props.keyExpr] : row))\n );\n };\n\n return (\n <StyledTableBodyWrapper ref={scrollContainerRef as any} className={scrollable ? 'scrollable' : ''}>\n <StyledTable cellPadding=\"0\" cellSpacing=\"0\" data-testid=\"TestTable\" className={`table ${props.layout || ''}`}>\n <StyledTableHeaderRow>\n <StyledTableHeaderColumns data-testid=\"TestTableColumnHeaderRow\">\n {props.multiSelect && (\n <StyledTableHeaderColumn>\n <StyledTableHeaderColumnContent>\n <Checkbox\n selected={props.selectAllState === 'all'}\n disabled={props.showLoadingIndicator}\n semiSelected={props.selectAllState === 'some'}\n select={props.onSelectAllClick}\n />\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n )}\n {props.columns.map((column: TableColumn) => (\n <StyledTableHeaderColumn\n key={column.key}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={(e) => column.sortable && props.sortByColumn(column)}\n onKeyPress={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n column.sortable && props.sortByColumn(column);\n }\n }}\n aria-selected={column.key === props.sortProps?.column && !!props.sortProps?.direction ? true : undefined}\n aria-sort={column.key === props.sortProps?.column && !!props.sortProps?.direction ? (props.sortProps?.direction == 'asc' ? 'ascending' : 'descending') : undefined}\n style={{ width: column.width }}\n tabIndex={column.sortable && !props.showLoadingIndicator ? 0 : -1}\n className={`${!!column.sortable ? 'sortable' : ''} ${column.key === props.sortProps?.column && !!props.sortProps?.direction ? 'sorted' : ''} ${\n column.justify || ''\n }`}>\n <StyledTableHeaderColumnContent>\n <ColumnLabel>{column.name}</ColumnLabel>\n {column.key === props.sortProps?.column && (\n <StyledTableHeaderColumnSortDirection>\n {props.sortProps?.direction === 'asc' ? <SystemIcons.ArrowLineUp size={'20px'} /> : <SystemIcons.ArrowLineDown size={'20px'} />}\n </StyledTableHeaderColumnSortDirection>\n )}\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n ))}\n </StyledTableHeaderColumns>\n </StyledTableHeaderRow>\n <StyledTableBody>\n {props.currentPageRows.length > 0 ? (\n props.currentPageRows.map((row: any, index: number) => (\n <StyledTableBodyRow\n key={`row_${index}`}\n className={`${props.selectable ? 'selectable' : ''} ${isSelected(row) ? 'selected' : ''}`}\n onClick={() => props.onRowClick && props.onRowClick(row)}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n props.onRowClick && props.onRowClick(row);\n }\n }}\n tabIndex={props.selectable && !props.showLoadingIndicator ? 0 : undefined}\n data-testid=\"TestTableDataRow\">\n {props.multiSelect && (\n <StyledTableCell>\n <StyledTableCellContent>\n <Checkbox selected={isSelected(row)} />\n </StyledTableCellContent>\n </StyledTableCell>\n )}\n {props.columns.map((column: TableColumn) => (\n <StyledTableCell key={`row_${index}_${column.key}`} style={{ maxWidth: column.width }} title={column.shortenText ? `${row[column.key]} \\n ${column.noteKey ? row[column.noteKey!] : ''}` : ''}>\n <StyledTableCellContent\n $withNote={Boolean(column.noteKey)}\n className={`${column.shortenText ? `truncate-text` : ''} ${column.justify || ''}`}\n style={{\n color: column.colorFn && column.colorFn(row, column.key),\n }}>\n {renderCellBody(column, row)}\n </StyledTableCellContent>\n </StyledTableCell>\n ))}\n </StyledTableBodyRow>\n ))\n ) : (\n <StyledTableNoRowsLabelRow data-testid=\"TestTableNoDataRow\">\n <StyledTableCell colSpan={props.columns.length + (props.multiSelect ? 1 : 0)}>\n <StyledTableCellContent className={'center'}>{props.noRowsLabel ?? 'There are no rows to display'}</StyledTableCellContent>\n </StyledTableCell>\n </StyledTableNoRowsLabelRow>\n )}\n </StyledTableBody>\n </StyledTable>\n </StyledTableBodyWrapper>\n );\n};\nexport default TableBody;\n"],"mappings":"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","ignoreList":[]}
@@ -159,7 +159,7 @@ var TableBody = function TableBody(props) {
159
159
  column.sortable && props.sortByColumn(column);
160
160
  }
161
161
  },
162
- "aria-pressed": column.key === ((_props$sortProps = props.sortProps) === null || _props$sortProps === void 0 ? void 0 : _props$sortProps.column) && !!((_props$sortProps2 = props.sortProps) !== null && _props$sortProps2 !== void 0 && _props$sortProps2.direction) ? true : undefined,
162
+ "aria-selected": column.key === ((_props$sortProps = props.sortProps) === null || _props$sortProps === void 0 ? void 0 : _props$sortProps.column) && !!((_props$sortProps2 = props.sortProps) !== null && _props$sortProps2 !== void 0 && _props$sortProps2.direction) ? true : undefined,
163
163
  "aria-sort": column.key === ((_props$sortProps3 = props.sortProps) === null || _props$sortProps3 === void 0 ? void 0 : _props$sortProps3.column) && !!((_props$sortProps4 = props.sortProps) !== null && _props$sortProps4 !== void 0 && _props$sortProps4.direction) ? ((_props$sortProps5 = props.sortProps) === null || _props$sortProps5 === void 0 ? void 0 : _props$sortProps5.direction) == 'asc' ? 'ascending' : 'descending' : undefined,
164
164
  style: {
165
165
  width: column.width
@@ -1 +1 @@
1
- {"version":3,"file":"TableBody.js","names":["Button","Size","React","Checkbox","IconButton","HyperLink","StyledTableBody","StyledTableBodyRow","StyledTableCell","StyledTableCellContent","StyledTableCellIcon","StyledTableCellText","StyledTableHeaderColumn","StyledTableHeaderColumnContent","StyledTableHeaderColumns","StyledTableNoRowsLabelRow","StyledTable","StyledTableBodyWrapper","StyledTableHeaderRow","StyledTableHeaderColumnSortDirection","StyledTableCellNoteText","StyledTableCellTextWrapper","defaultOnMouseDownHandler","SystemIcons","useDimensionsRef","styled","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ColumnLabel","span","_templateObject","_taggedTemplateLiteral","TableBody","props","_props$noRowsLabel","_useDimensionsRef","updateOnResize","_useDimensionsRef2","_slicedToArray","scrollContainerRef","dimensions","node","_React$useState","useState","_React$useState2","scrollable","setScrollable","useEffect","_node$clientWidth","_node$scrollWidth","clientWidth","scrollWidth","columns","rows","renderCellBody","column","row","type","tmp","_objectSpread","variant","href","tabIndex","showLoadingIndicator","additionalProps","style","colorFn","color","key","onClick","e","preventDefault","stopPropagation","action","children","iconColor","shape","useTransparentBackground","icon","size","Small","selected","readOnly","customContent","$textWrap","shortenText","Boolean","noteKey","isSelected","_props$selected","multiSelect","indexOf","keyExpr","ref","className","cellPadding","cellSpacing","concat","layout","selectAllState","disabled","semiSelected","select","onSelectAllClick","map","_props$sortProps","_props$sortProps2","_props$sortProps3","_props$sortProps4","_props$sortProps5","_props$sortProps6","_props$sortProps7","_props$sortProps8","_props$sortProps9","onMouseDown","sortable","sortByColumn","onKeyPress","sortProps","direction","undefined","width","justify","name","ArrowLineUp","ArrowLineDown","currentPageRows","length","index","selectable","onRowClick","maxWidth","title","$withNote","colSpan","noRowsLabel","propTypes","_pt","arrayOf","any","isRequired","func","oneOf"],"sources":["../../src/Table/TableBody.tsx"],"sourcesContent":["import { TableColumn, TableProps } from './TableTypes';\nimport { Button } from '../Button';\nimport { Size } from '../types';\nimport * as React from 'react';\nimport { Checkbox } from '../InputFields';\nimport { ButtonProps } from '../Button/Button';\nimport IconButton, { IconButtonProps } from '../Button/Iconbutton';\nimport { HyperlinkProps } from '../HyperLink/HyperLink';\nimport { HyperLink } from '../HyperLink';\nimport {\n StyledTableBody,\n StyledTableBodyRow,\n StyledTableCell,\n StyledTableCellContent,\n StyledTableCellIcon,\n StyledTableCellText,\n StyledTableHeaderColumn,\n StyledTableHeaderColumnContent,\n StyledTableHeaderColumns,\n StyledTableNoRowsLabelRow,\n StyledTable,\n StyledTableBodyWrapper,\n StyledTableHeaderRow,\n StyledTableHeaderColumnSortDirection,\n StyledTableCellNoteText,\n StyledTableCellTextWrapper,\n} from './TableStyles';\nimport { defaultOnMouseDownHandler } from '../common';\nimport { SystemIcons } from '../icons';\nimport { useDimensionsRef } from 'rooks';\nimport styled from 'styled-components';\n\ninterface TableBodyProps extends TableProps {\n currentPageRows: any[];\n onRowClick?: (row: any) => void;\n selected?: any | any[];\n sortByColumn: (column: TableColumn) => void;\n onSelectAllClick: () => void;\n selectAllState: 'all' | 'some' | 'none';\n}\n\nconst ColumnLabel = styled.span`\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n`;\n\nconst TableBody: React.FC<TableBodyProps> = (props) => {\n const [scrollContainerRef, dimensions, node] = useDimensionsRef({ updateOnResize: true });\n const [scrollable, setScrollable] = React.useState(false);\n\n React.useEffect(() => {\n const clientWidth = node?.clientWidth ?? 0;\n const scrollWidth = node?.scrollWidth ?? 0;\n setScrollable(scrollWidth > clientWidth);\n }, [dimensions, node, props.columns, props.rows]);\n\n const renderCellBody = (column: TableColumn, row: any) => {\n switch (column.type) {\n case 'link': {\n const tmp = {\n variant: 'default',\n href: '#',\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n ...column.additionalProps,\n } as HyperlinkProps;\n return (\n <HyperLink\n style={column.colorFn && { color: column.colorFn(row, column.key) }}\n {...tmp}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </HyperLink>\n );\n }\n case 'icon': {\n const tmp = {\n iconColor: column.colorFn && column.colorFn(row, column.key),\n variant: 'secondary',\n shape: 'circular',\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n useTransparentBackground: true,\n ...column.additionalProps,\n } as IconButtonProps;\n return (\n <IconButton\n {...tmp}\n action={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {column.icon}\n </IconButton>\n );\n }\n case 'button': {\n const tmp = {\n variant: 'tertiary',\n size: Size.Small,\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n ...column.additionalProps,\n } as ButtonProps;\n return (\n <Button\n style={column.colorFn && { color: column.colorFn(row, column.key) }}\n {...tmp}\n onClick={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </Button>\n );\n }\n case 'boolean':\n return <Checkbox selected={!!row[column.key]} readOnly={true} />;\n case 'custom':\n return column.customContent && column.customContent(row, column.key);\n case 'number':\n case 'text':\n default:\n return (\n <>\n {column.icon && <StyledTableCellIcon>{column.icon}</StyledTableCellIcon>}\n <StyledTableCellTextWrapper $textWrap={!column.shortenText}>\n <StyledTableCellText>{row[column.key]}</StyledTableCellText>\n {Boolean(column.noteKey) && Boolean(row[column.noteKey!]) && (\n <>\n <StyledTableCellNoteText>{row[column.noteKey!]}</StyledTableCellNoteText>\n </>\n )}\n </StyledTableCellTextWrapper>\n </>\n );\n }\n };\n\n const isSelected = (row: any) => {\n return (\n (props.multiSelect && props.selected?.indexOf(props.keyExpr ? row[props.keyExpr] : row) > -1) ||\n (!props.multiSelect && props.selected === (props.keyExpr ? row[props.keyExpr] : row))\n );\n };\n\n return (\n <StyledTableBodyWrapper ref={scrollContainerRef as any} className={scrollable ? 'scrollable' : ''}>\n <StyledTable cellPadding=\"0\" cellSpacing=\"0\" data-testid=\"TestTable\" className={`table ${props.layout || ''}`}>\n <StyledTableHeaderRow>\n <StyledTableHeaderColumns data-testid=\"TestTableColumnHeaderRow\">\n {props.multiSelect && (\n <StyledTableHeaderColumn>\n <StyledTableHeaderColumnContent>\n <Checkbox\n selected={props.selectAllState === 'all'}\n disabled={props.showLoadingIndicator}\n semiSelected={props.selectAllState === 'some'}\n select={props.onSelectAllClick}\n />\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n )}\n {props.columns.map((column: TableColumn) => (\n <StyledTableHeaderColumn\n key={column.key}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={(e) => column.sortable && props.sortByColumn(column)}\n onKeyPress={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n column.sortable && props.sortByColumn(column);\n }\n }}\n aria-pressed={column.key === props.sortProps?.column && !!props.sortProps?.direction ? true : undefined}\n aria-sort={column.key === props.sortProps?.column && !!props.sortProps?.direction ? (props.sortProps?.direction == 'asc' ? 'ascending' : 'descending') : undefined}\n style={{ width: column.width }}\n tabIndex={column.sortable && !props.showLoadingIndicator ? 0 : -1}\n className={`${!!column.sortable ? 'sortable' : ''} ${column.key === props.sortProps?.column && !!props.sortProps?.direction ? 'sorted' : ''} ${\n column.justify || ''\n }`}>\n <StyledTableHeaderColumnContent>\n <ColumnLabel>{column.name}</ColumnLabel>\n {column.key === props.sortProps?.column && (\n <StyledTableHeaderColumnSortDirection>\n {props.sortProps?.direction === 'asc' ? <SystemIcons.ArrowLineUp size={'20px'} /> : <SystemIcons.ArrowLineDown size={'20px'} />}\n </StyledTableHeaderColumnSortDirection>\n )}\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n ))}\n </StyledTableHeaderColumns>\n </StyledTableHeaderRow>\n <StyledTableBody>\n {props.currentPageRows.length > 0 ? (\n props.currentPageRows.map((row: any, index: number) => (\n <StyledTableBodyRow\n key={`row_${index}`}\n className={`${props.selectable ? 'selectable' : ''} ${isSelected(row) ? 'selected' : ''}`}\n onClick={() => props.onRowClick && props.onRowClick(row)}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n props.onRowClick && props.onRowClick(row);\n }\n }}\n tabIndex={props.selectable && !props.showLoadingIndicator ? 0 : undefined}\n data-testid=\"TestTableDataRow\">\n {props.multiSelect && (\n <StyledTableCell>\n <StyledTableCellContent>\n <Checkbox selected={isSelected(row)} />\n </StyledTableCellContent>\n </StyledTableCell>\n )}\n {props.columns.map((column: TableColumn) => (\n <StyledTableCell key={`row_${index}_${column.key}`} style={{ maxWidth: column.width }} title={column.shortenText ? `${row[column.key]} \\n ${column.noteKey ? row[column.noteKey!] : ''}` : ''}>\n <StyledTableCellContent\n $withNote={Boolean(column.noteKey)}\n className={`${column.shortenText ? `truncate-text` : ''} ${column.justify || ''}`}\n style={{\n color: column.colorFn && column.colorFn(row, column.key),\n }}>\n {renderCellBody(column, row)}\n </StyledTableCellContent>\n </StyledTableCell>\n ))}\n </StyledTableBodyRow>\n ))\n ) : (\n <StyledTableNoRowsLabelRow data-testid=\"TestTableNoDataRow\">\n <StyledTableCell colSpan={props.columns.length + (props.multiSelect ? 1 : 0)}>\n <StyledTableCellContent className={'center'}>{props.noRowsLabel ?? 'There are no rows to display'}</StyledTableCellContent>\n </StyledTableCell>\n </StyledTableNoRowsLabelRow>\n )}\n </StyledTableBody>\n </StyledTable>\n </StyledTableBodyWrapper>\n );\n};\nexport default TableBody;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"TableBody.js","names":["Button","Size","React","Checkbox","IconButton","HyperLink","StyledTableBody","StyledTableBodyRow","StyledTableCell","StyledTableCellContent","StyledTableCellIcon","StyledTableCellText","StyledTableHeaderColumn","StyledTableHeaderColumnContent","StyledTableHeaderColumns","StyledTableNoRowsLabelRow","StyledTable","StyledTableBodyWrapper","StyledTableHeaderRow","StyledTableHeaderColumnSortDirection","StyledTableCellNoteText","StyledTableCellTextWrapper","defaultOnMouseDownHandler","SystemIcons","useDimensionsRef","styled","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ColumnLabel","span","_templateObject","_taggedTemplateLiteral","TableBody","props","_props$noRowsLabel","_useDimensionsRef","updateOnResize","_useDimensionsRef2","_slicedToArray","scrollContainerRef","dimensions","node","_React$useState","useState","_React$useState2","scrollable","setScrollable","useEffect","_node$clientWidth","_node$scrollWidth","clientWidth","scrollWidth","columns","rows","renderCellBody","column","row","type","tmp","_objectSpread","variant","href","tabIndex","showLoadingIndicator","additionalProps","style","colorFn","color","key","onClick","e","preventDefault","stopPropagation","action","children","iconColor","shape","useTransparentBackground","icon","size","Small","selected","readOnly","customContent","$textWrap","shortenText","Boolean","noteKey","isSelected","_props$selected","multiSelect","indexOf","keyExpr","ref","className","cellPadding","cellSpacing","concat","layout","selectAllState","disabled","semiSelected","select","onSelectAllClick","map","_props$sortProps","_props$sortProps2","_props$sortProps3","_props$sortProps4","_props$sortProps5","_props$sortProps6","_props$sortProps7","_props$sortProps8","_props$sortProps9","onMouseDown","sortable","sortByColumn","onKeyPress","sortProps","direction","undefined","width","justify","name","ArrowLineUp","ArrowLineDown","currentPageRows","length","index","selectable","onRowClick","maxWidth","title","$withNote","colSpan","noRowsLabel","propTypes","_pt","arrayOf","any","isRequired","func","oneOf"],"sources":["../../src/Table/TableBody.tsx"],"sourcesContent":["import { TableColumn, TableProps } from './TableTypes';\nimport { Button } from '../Button';\nimport { Size } from '../types';\nimport * as React from 'react';\nimport { Checkbox } from '../InputFields';\nimport { ButtonProps } from '../Button/Button';\nimport IconButton, { IconButtonProps } from '../Button/Iconbutton';\nimport { HyperlinkProps } from '../HyperLink/HyperLink';\nimport { HyperLink } from '../HyperLink';\nimport {\n StyledTableBody,\n StyledTableBodyRow,\n StyledTableCell,\n StyledTableCellContent,\n StyledTableCellIcon,\n StyledTableCellText,\n StyledTableHeaderColumn,\n StyledTableHeaderColumnContent,\n StyledTableHeaderColumns,\n StyledTableNoRowsLabelRow,\n StyledTable,\n StyledTableBodyWrapper,\n StyledTableHeaderRow,\n StyledTableHeaderColumnSortDirection,\n StyledTableCellNoteText,\n StyledTableCellTextWrapper,\n} from './TableStyles';\nimport { defaultOnMouseDownHandler } from '../common';\nimport { SystemIcons } from '../icons';\nimport { useDimensionsRef } from 'rooks';\nimport styled from 'styled-components';\n\ninterface TableBodyProps extends TableProps {\n currentPageRows: any[];\n onRowClick?: (row: any) => void;\n selected?: any | any[];\n sortByColumn: (column: TableColumn) => void;\n onSelectAllClick: () => void;\n selectAllState: 'all' | 'some' | 'none';\n}\n\nconst ColumnLabel = styled.span`\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n`;\n\nconst TableBody: React.FC<TableBodyProps> = (props) => {\n const [scrollContainerRef, dimensions, node] = useDimensionsRef({ updateOnResize: true });\n const [scrollable, setScrollable] = React.useState(false);\n\n React.useEffect(() => {\n const clientWidth = node?.clientWidth ?? 0;\n const scrollWidth = node?.scrollWidth ?? 0;\n setScrollable(scrollWidth > clientWidth);\n }, [dimensions, node, props.columns, props.rows]);\n\n const renderCellBody = (column: TableColumn, row: any) => {\n switch (column.type) {\n case 'link': {\n const tmp = {\n variant: 'default',\n href: '#',\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n ...column.additionalProps,\n } as HyperlinkProps;\n return (\n <HyperLink\n style={column.colorFn && { color: column.colorFn(row, column.key) }}\n {...tmp}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </HyperLink>\n );\n }\n case 'icon': {\n const tmp = {\n iconColor: column.colorFn && column.colorFn(row, column.key),\n variant: 'secondary',\n shape: 'circular',\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n useTransparentBackground: true,\n ...column.additionalProps,\n } as IconButtonProps;\n return (\n <IconButton\n {...tmp}\n action={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {column.icon}\n </IconButton>\n );\n }\n case 'button': {\n const tmp = {\n variant: 'tertiary',\n size: Size.Small,\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n ...column.additionalProps,\n } as ButtonProps;\n return (\n <Button\n style={column.colorFn && { color: column.colorFn(row, column.key) }}\n {...tmp}\n onClick={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </Button>\n );\n }\n case 'boolean':\n return <Checkbox selected={!!row[column.key]} readOnly={true} />;\n case 'custom':\n return column.customContent && column.customContent(row, column.key);\n case 'number':\n case 'text':\n default:\n return (\n <>\n {column.icon && <StyledTableCellIcon>{column.icon}</StyledTableCellIcon>}\n <StyledTableCellTextWrapper $textWrap={!column.shortenText}>\n <StyledTableCellText>{row[column.key]}</StyledTableCellText>\n {Boolean(column.noteKey) && Boolean(row[column.noteKey!]) && (\n <>\n <StyledTableCellNoteText>{row[column.noteKey!]}</StyledTableCellNoteText>\n </>\n )}\n </StyledTableCellTextWrapper>\n </>\n );\n }\n };\n\n const isSelected = (row: any) => {\n return (\n (props.multiSelect && props.selected?.indexOf(props.keyExpr ? row[props.keyExpr] : row) > -1) ||\n (!props.multiSelect && props.selected === (props.keyExpr ? row[props.keyExpr] : row))\n );\n };\n\n return (\n <StyledTableBodyWrapper ref={scrollContainerRef as any} className={scrollable ? 'scrollable' : ''}>\n <StyledTable cellPadding=\"0\" cellSpacing=\"0\" data-testid=\"TestTable\" className={`table ${props.layout || ''}`}>\n <StyledTableHeaderRow>\n <StyledTableHeaderColumns data-testid=\"TestTableColumnHeaderRow\">\n {props.multiSelect && (\n <StyledTableHeaderColumn>\n <StyledTableHeaderColumnContent>\n <Checkbox\n selected={props.selectAllState === 'all'}\n disabled={props.showLoadingIndicator}\n semiSelected={props.selectAllState === 'some'}\n select={props.onSelectAllClick}\n />\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n )}\n {props.columns.map((column: TableColumn) => (\n <StyledTableHeaderColumn\n key={column.key}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={(e) => column.sortable && props.sortByColumn(column)}\n onKeyPress={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n column.sortable && props.sortByColumn(column);\n }\n }}\n aria-selected={column.key === props.sortProps?.column && !!props.sortProps?.direction ? true : undefined}\n aria-sort={column.key === props.sortProps?.column && !!props.sortProps?.direction ? (props.sortProps?.direction == 'asc' ? 'ascending' : 'descending') : undefined}\n style={{ width: column.width }}\n tabIndex={column.sortable && !props.showLoadingIndicator ? 0 : -1}\n className={`${!!column.sortable ? 'sortable' : ''} ${column.key === props.sortProps?.column && !!props.sortProps?.direction ? 'sorted' : ''} ${\n column.justify || ''\n }`}>\n <StyledTableHeaderColumnContent>\n <ColumnLabel>{column.name}</ColumnLabel>\n {column.key === props.sortProps?.column && (\n <StyledTableHeaderColumnSortDirection>\n {props.sortProps?.direction === 'asc' ? <SystemIcons.ArrowLineUp size={'20px'} /> : <SystemIcons.ArrowLineDown size={'20px'} />}\n </StyledTableHeaderColumnSortDirection>\n )}\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n ))}\n </StyledTableHeaderColumns>\n </StyledTableHeaderRow>\n <StyledTableBody>\n {props.currentPageRows.length > 0 ? (\n props.currentPageRows.map((row: any, index: number) => (\n <StyledTableBodyRow\n key={`row_${index}`}\n className={`${props.selectable ? 'selectable' : ''} ${isSelected(row) ? 'selected' : ''}`}\n onClick={() => props.onRowClick && props.onRowClick(row)}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n props.onRowClick && props.onRowClick(row);\n }\n }}\n tabIndex={props.selectable && !props.showLoadingIndicator ? 0 : undefined}\n data-testid=\"TestTableDataRow\">\n {props.multiSelect && (\n <StyledTableCell>\n <StyledTableCellContent>\n <Checkbox selected={isSelected(row)} />\n </StyledTableCellContent>\n </StyledTableCell>\n )}\n {props.columns.map((column: TableColumn) => (\n <StyledTableCell key={`row_${index}_${column.key}`} style={{ maxWidth: column.width }} title={column.shortenText ? `${row[column.key]} \\n ${column.noteKey ? row[column.noteKey!] : ''}` : ''}>\n <StyledTableCellContent\n $withNote={Boolean(column.noteKey)}\n className={`${column.shortenText ? `truncate-text` : ''} ${column.justify || ''}`}\n style={{\n color: column.colorFn && column.colorFn(row, column.key),\n }}>\n {renderCellBody(column, row)}\n </StyledTableCellContent>\n </StyledTableCell>\n ))}\n </StyledTableBodyRow>\n ))\n ) : (\n <StyledTableNoRowsLabelRow data-testid=\"TestTableNoDataRow\">\n <StyledTableCell colSpan={props.columns.length + (props.multiSelect ? 1 : 0)}>\n <StyledTableCellContent className={'center'}>{props.noRowsLabel ?? 'There are no rows to display'}</StyledTableCellContent>\n </StyledTableCell>\n </StyledTableNoRowsLabelRow>\n )}\n </StyledTableBody>\n </StyledTable>\n </StyledTableBodyWrapper>\n );\n};\nexport default TableBody;\n"],"mappings":"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","ignoreList":[]}
@@ -67,6 +67,7 @@ var TableFooter = function TableFooter(props) {
67
67
  },
68
68
  disabled: props.from === 1 || props.showLoadingIndicator,
69
69
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SystemIcons.ChevronLeft, {
70
+ "aria-label": "Previous",
70
71
  size: "24",
71
72
  color: _styles.COLORS.getColor('neutral_600', theme)
72
73
  })
@@ -78,6 +79,7 @@ var TableFooter = function TableFooter(props) {
78
79
  },
79
80
  disabled: props.to === props.total || props.showLoadingIndicator,
80
81
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SystemIcons.ChevronRight, {
82
+ "aria-label": "Next",
81
83
  size: "24",
82
84
  color: _styles.COLORS.getColor('neutral_600', theme)
83
85
  })
@@ -1 +1 @@
1
- {"version":3,"file":"TableFooter.cjs","names":["_react","_interopRequireDefault","require","_Dropdown","_Button","_icons","_styles","_TableStyles","_common","_styledComponents","_jsxRuntime","TableFooter","props","_props$rowsPerPageLab","_props$showMoreLabel","_props$showFewerLabel","theme","useTheme","rowsPerPageValues","value","dropDownText","concat","rowsPerPageLabel","rowsPerPage","jsxs","StyledTableFooter","children","accordion","StyledTableFooterCollapseButton","onClick","setIsCollapsed","isCollapsed","onMouseDown","defaultOnMouseDownHandler","disabled","rows","length","Fragment","showMoreLabel","jsx","SystemIcons","ArrowDropDown","showFewerLabel","ArrowDropUp","StyledTableFooterContent","DropdownButton","type","items","showLoadingIndicator","onRowsPerPageChange","label","keepLabel","StyledTableFooterCurrentInfo","total","from","to","StyledTableFooterControls","IconButton","variant","shape","action","prevPage","ChevronLeft","size","color","COLORS","getColor","nextPage","ChevronRight","propTypes","_propTypes","func","isRequired","number","bool","_default","exports"],"sources":["../../src/Table/TableFooter.tsx"],"sourcesContent":["import React from 'react';\nimport {TableProps} from './TableTypes';\nimport {DropdownButton, DropdownItem} from '../Dropdown';\nimport {IconButton} from '../Button';\nimport { SystemIcons} from '../icons';\nimport {COLORS} from '../styles';\nimport {\n StyledTableFooter, StyledTableFooterCollapseButton,\n StyledTableFooterContent,\n StyledTableFooterControls,\n StyledTableFooterCurrentInfo\n} from './TableStyles';\nimport {defaultOnMouseDownHandler} from '../common';\nimport { useTheme } from 'styled-components';\n\n\ninterface TableFooterProps extends TableProps {\n onRowsPerPageChange: (value: number) => void;\n rowsPerPage: number;\n from?: number;\n to?: number;\n total?: number;\n nextPage: () => void;\n prevPage: () => void;\n setIsCollapsed: (isCollapsed: boolean) => void;\n isCollapsed: boolean;\n}\n\nconst TableFooter: React.FunctionComponent<TableFooterProps> = (props) => {\n const theme = useTheme();\n const rowsPerPageValues: DropdownItem[] = [{value: '10'}, {value: '20'}, {value: '50'}, {value: '100'}];\n\n const dropDownText = `${props.rowsPerPageLabel ?? 'Rows per page'} : ${props.rowsPerPage}`;\n\n return (\n <StyledTableFooter data-testid=\"TestTableFooterRow\">\n {\n props.accordion &&\n <StyledTableFooterCollapseButton onClick={() => props.setIsCollapsed(!props.isCollapsed)}\n onMouseDown={defaultOnMouseDownHandler}\n disabled={props.isCollapsed && props.rows.length <= props.rowsPerPage}>\n {\n props.isCollapsed &&\n <>\n <span>{props.showMoreLabel ?? 'Show more'} ({props.rows.length - props.rowsPerPage})</span>\n <SystemIcons.ArrowDropDown/>\n </>\n }\n {\n !props.isCollapsed &&\n <>\n <span>{props.showFewerLabel ?? 'Show fewer'}</span>\n <SystemIcons.ArrowDropUp/>\n </>\n }\n </StyledTableFooterCollapseButton>\n }\n {\n !props.accordion &&\n <StyledTableFooterContent>\n <DropdownButton\n type={'text'}\n items={rowsPerPageValues}\n disabled={props.showLoadingIndicator}\n value={[`${props.rowsPerPage}`]}\n onClick={(value) => props.onRowsPerPageChange(+value[0])}\n label={dropDownText}\n keepLabel={true}\n />\n <StyledTableFooterCurrentInfo>\n {props.total === 0 ? 0 : props.from}-{props.to} of {props.total}\n </StyledTableFooterCurrentInfo>\n <StyledTableFooterControls>\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => props.prevPage()}\n disabled={props.from === 1 || props.showLoadingIndicator}>\n <SystemIcons.ChevronLeft size=\"24\" color={COLORS.getColor('neutral_600', theme)}/>\n </IconButton>\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => props.nextPage()}\n disabled={props.to === props.total || props.showLoadingIndicator}>\n <SystemIcons.ChevronRight size=\"24\" color={COLORS.getColor('neutral_600', theme)}/>\n </IconButton>\n </StyledTableFooterControls>\n </StyledTableFooterContent>\n }\n </StyledTableFooter>\n );\n};\n\n\nexport default TableFooter;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"TableFooter.cjs","names":["_react","_interopRequireDefault","require","_Dropdown","_Button","_icons","_styles","_TableStyles","_common","_styledComponents","_jsxRuntime","TableFooter","props","_props$rowsPerPageLab","_props$showMoreLabel","_props$showFewerLabel","theme","useTheme","rowsPerPageValues","value","dropDownText","concat","rowsPerPageLabel","rowsPerPage","jsxs","StyledTableFooter","children","accordion","StyledTableFooterCollapseButton","onClick","setIsCollapsed","isCollapsed","onMouseDown","defaultOnMouseDownHandler","disabled","rows","length","Fragment","showMoreLabel","jsx","SystemIcons","ArrowDropDown","showFewerLabel","ArrowDropUp","StyledTableFooterContent","DropdownButton","type","items","showLoadingIndicator","onRowsPerPageChange","label","keepLabel","StyledTableFooterCurrentInfo","total","from","to","StyledTableFooterControls","IconButton","variant","shape","action","prevPage","ChevronLeft","size","color","COLORS","getColor","nextPage","ChevronRight","propTypes","_propTypes","func","isRequired","number","bool","_default","exports"],"sources":["../../src/Table/TableFooter.tsx"],"sourcesContent":["import React from 'react';\nimport {TableProps} from './TableTypes';\nimport {DropdownButton, DropdownItem} from '../Dropdown';\nimport {IconButton} from '../Button';\nimport { SystemIcons} from '../icons';\nimport {COLORS} from '../styles';\nimport {\n StyledTableFooter, StyledTableFooterCollapseButton,\n StyledTableFooterContent,\n StyledTableFooterControls,\n StyledTableFooterCurrentInfo\n} from './TableStyles';\nimport {defaultOnMouseDownHandler} from '../common';\nimport { useTheme } from 'styled-components';\n\n\ninterface TableFooterProps extends TableProps {\n onRowsPerPageChange: (value: number) => void;\n rowsPerPage: number;\n from?: number;\n to?: number;\n total?: number;\n nextPage: () => void;\n prevPage: () => void;\n setIsCollapsed: (isCollapsed: boolean) => void;\n isCollapsed: boolean;\n}\n\nconst TableFooter: React.FunctionComponent<TableFooterProps> = (props) => {\n const theme = useTheme();\n const rowsPerPageValues: DropdownItem[] = [{value: '10'}, {value: '20'}, {value: '50'}, {value: '100'}];\n\n const dropDownText = `${props.rowsPerPageLabel ?? 'Rows per page'} : ${props.rowsPerPage}`;\n\n return (\n <StyledTableFooter data-testid=\"TestTableFooterRow\">\n {\n props.accordion &&\n <StyledTableFooterCollapseButton onClick={() => props.setIsCollapsed(!props.isCollapsed)}\n onMouseDown={defaultOnMouseDownHandler}\n disabled={props.isCollapsed && props.rows.length <= props.rowsPerPage}>\n {\n props.isCollapsed &&\n <>\n <span>{props.showMoreLabel ?? 'Show more'} ({props.rows.length - props.rowsPerPage})</span>\n <SystemIcons.ArrowDropDown/>\n </>\n }\n {\n !props.isCollapsed &&\n <>\n <span>{props.showFewerLabel ?? 'Show fewer'}</span>\n <SystemIcons.ArrowDropUp/>\n </>\n }\n </StyledTableFooterCollapseButton>\n }\n {\n !props.accordion &&\n <StyledTableFooterContent>\n <DropdownButton\n type={'text'}\n items={rowsPerPageValues}\n disabled={props.showLoadingIndicator}\n value={[`${props.rowsPerPage}`]}\n onClick={(value) => props.onRowsPerPageChange(+value[0])}\n label={dropDownText}\n keepLabel={true}\n />\n <StyledTableFooterCurrentInfo>\n {props.total === 0 ? 0 : props.from}-{props.to} of {props.total}\n </StyledTableFooterCurrentInfo>\n <StyledTableFooterControls>\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => props.prevPage()}\n disabled={props.from === 1 || props.showLoadingIndicator}>\n <SystemIcons.ChevronLeft aria-label='Previous' size=\"24\" color={COLORS.getColor('neutral_600', theme)}/>\n </IconButton>\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => props.nextPage()}\n disabled={props.to === props.total || props.showLoadingIndicator}>\n <SystemIcons.ChevronRight aria-label='Next' size=\"24\" color={COLORS.getColor('neutral_600', theme)}/>\n </IconButton>\n </StyledTableFooterControls>\n </StyledTableFooterContent>\n }\n </StyledTableFooter>\n );\n};\n\n\nexport default TableFooter;\n"],"mappings":"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","ignoreList":[]}
@@ -62,6 +62,7 @@ var TableFooter = function TableFooter(props) {
62
62
  },
63
63
  disabled: props.from === 1 || props.showLoadingIndicator,
64
64
  children: /*#__PURE__*/_jsx(SystemIcons.ChevronLeft, {
65
+ "aria-label": "Previous",
65
66
  size: "24",
66
67
  color: COLORS.getColor('neutral_600', theme)
67
68
  })
@@ -73,6 +74,7 @@ var TableFooter = function TableFooter(props) {
73
74
  },
74
75
  disabled: props.to === props.total || props.showLoadingIndicator,
75
76
  children: /*#__PURE__*/_jsx(SystemIcons.ChevronRight, {
77
+ "aria-label": "Next",
76
78
  size: "24",
77
79
  color: COLORS.getColor('neutral_600', theme)
78
80
  })
@@ -1 +1 @@
1
- {"version":3,"file":"TableFooter.js","names":["React","DropdownButton","IconButton","SystemIcons","COLORS","StyledTableFooter","StyledTableFooterCollapseButton","StyledTableFooterContent","StyledTableFooterControls","StyledTableFooterCurrentInfo","defaultOnMouseDownHandler","useTheme","jsxs","_jsxs","jsx","_jsx","Fragment","_Fragment","TableFooter","props","_props$rowsPerPageLab","_props$showMoreLabel","_props$showFewerLabel","theme","rowsPerPageValues","value","dropDownText","concat","rowsPerPageLabel","rowsPerPage","children","accordion","onClick","setIsCollapsed","isCollapsed","onMouseDown","disabled","rows","length","showMoreLabel","ArrowDropDown","showFewerLabel","ArrowDropUp","type","items","showLoadingIndicator","onRowsPerPageChange","label","keepLabel","total","from","to","variant","shape","action","prevPage","ChevronLeft","size","color","getColor","nextPage","ChevronRight","propTypes","_pt","func","isRequired","number","bool"],"sources":["../../src/Table/TableFooter.tsx"],"sourcesContent":["import React from 'react';\nimport {TableProps} from './TableTypes';\nimport {DropdownButton, DropdownItem} from '../Dropdown';\nimport {IconButton} from '../Button';\nimport { SystemIcons} from '../icons';\nimport {COLORS} from '../styles';\nimport {\n StyledTableFooter, StyledTableFooterCollapseButton,\n StyledTableFooterContent,\n StyledTableFooterControls,\n StyledTableFooterCurrentInfo\n} from './TableStyles';\nimport {defaultOnMouseDownHandler} from '../common';\nimport { useTheme } from 'styled-components';\n\n\ninterface TableFooterProps extends TableProps {\n onRowsPerPageChange: (value: number) => void;\n rowsPerPage: number;\n from?: number;\n to?: number;\n total?: number;\n nextPage: () => void;\n prevPage: () => void;\n setIsCollapsed: (isCollapsed: boolean) => void;\n isCollapsed: boolean;\n}\n\nconst TableFooter: React.FunctionComponent<TableFooterProps> = (props) => {\n const theme = useTheme();\n const rowsPerPageValues: DropdownItem[] = [{value: '10'}, {value: '20'}, {value: '50'}, {value: '100'}];\n\n const dropDownText = `${props.rowsPerPageLabel ?? 'Rows per page'} : ${props.rowsPerPage}`;\n\n return (\n <StyledTableFooter data-testid=\"TestTableFooterRow\">\n {\n props.accordion &&\n <StyledTableFooterCollapseButton onClick={() => props.setIsCollapsed(!props.isCollapsed)}\n onMouseDown={defaultOnMouseDownHandler}\n disabled={props.isCollapsed && props.rows.length <= props.rowsPerPage}>\n {\n props.isCollapsed &&\n <>\n <span>{props.showMoreLabel ?? 'Show more'} ({props.rows.length - props.rowsPerPage})</span>\n <SystemIcons.ArrowDropDown/>\n </>\n }\n {\n !props.isCollapsed &&\n <>\n <span>{props.showFewerLabel ?? 'Show fewer'}</span>\n <SystemIcons.ArrowDropUp/>\n </>\n }\n </StyledTableFooterCollapseButton>\n }\n {\n !props.accordion &&\n <StyledTableFooterContent>\n <DropdownButton\n type={'text'}\n items={rowsPerPageValues}\n disabled={props.showLoadingIndicator}\n value={[`${props.rowsPerPage}`]}\n onClick={(value) => props.onRowsPerPageChange(+value[0])}\n label={dropDownText}\n keepLabel={true}\n />\n <StyledTableFooterCurrentInfo>\n {props.total === 0 ? 0 : props.from}-{props.to} of {props.total}\n </StyledTableFooterCurrentInfo>\n <StyledTableFooterControls>\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => props.prevPage()}\n disabled={props.from === 1 || props.showLoadingIndicator}>\n <SystemIcons.ChevronLeft size=\"24\" color={COLORS.getColor('neutral_600', theme)}/>\n </IconButton>\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => props.nextPage()}\n disabled={props.to === props.total || props.showLoadingIndicator}>\n <SystemIcons.ChevronRight size=\"24\" color={COLORS.getColor('neutral_600', theme)}/>\n </IconButton>\n </StyledTableFooterControls>\n </StyledTableFooterContent>\n }\n </StyledTableFooter>\n );\n};\n\n\nexport default TableFooter;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"TableFooter.js","names":["React","DropdownButton","IconButton","SystemIcons","COLORS","StyledTableFooter","StyledTableFooterCollapseButton","StyledTableFooterContent","StyledTableFooterControls","StyledTableFooterCurrentInfo","defaultOnMouseDownHandler","useTheme","jsxs","_jsxs","jsx","_jsx","Fragment","_Fragment","TableFooter","props","_props$rowsPerPageLab","_props$showMoreLabel","_props$showFewerLabel","theme","rowsPerPageValues","value","dropDownText","concat","rowsPerPageLabel","rowsPerPage","children","accordion","onClick","setIsCollapsed","isCollapsed","onMouseDown","disabled","rows","length","showMoreLabel","ArrowDropDown","showFewerLabel","ArrowDropUp","type","items","showLoadingIndicator","onRowsPerPageChange","label","keepLabel","total","from","to","variant","shape","action","prevPage","ChevronLeft","size","color","getColor","nextPage","ChevronRight","propTypes","_pt","func","isRequired","number","bool"],"sources":["../../src/Table/TableFooter.tsx"],"sourcesContent":["import React from 'react';\nimport {TableProps} from './TableTypes';\nimport {DropdownButton, DropdownItem} from '../Dropdown';\nimport {IconButton} from '../Button';\nimport { SystemIcons} from '../icons';\nimport {COLORS} from '../styles';\nimport {\n StyledTableFooter, StyledTableFooterCollapseButton,\n StyledTableFooterContent,\n StyledTableFooterControls,\n StyledTableFooterCurrentInfo\n} from './TableStyles';\nimport {defaultOnMouseDownHandler} from '../common';\nimport { useTheme } from 'styled-components';\n\n\ninterface TableFooterProps extends TableProps {\n onRowsPerPageChange: (value: number) => void;\n rowsPerPage: number;\n from?: number;\n to?: number;\n total?: number;\n nextPage: () => void;\n prevPage: () => void;\n setIsCollapsed: (isCollapsed: boolean) => void;\n isCollapsed: boolean;\n}\n\nconst TableFooter: React.FunctionComponent<TableFooterProps> = (props) => {\n const theme = useTheme();\n const rowsPerPageValues: DropdownItem[] = [{value: '10'}, {value: '20'}, {value: '50'}, {value: '100'}];\n\n const dropDownText = `${props.rowsPerPageLabel ?? 'Rows per page'} : ${props.rowsPerPage}`;\n\n return (\n <StyledTableFooter data-testid=\"TestTableFooterRow\">\n {\n props.accordion &&\n <StyledTableFooterCollapseButton onClick={() => props.setIsCollapsed(!props.isCollapsed)}\n onMouseDown={defaultOnMouseDownHandler}\n disabled={props.isCollapsed && props.rows.length <= props.rowsPerPage}>\n {\n props.isCollapsed &&\n <>\n <span>{props.showMoreLabel ?? 'Show more'} ({props.rows.length - props.rowsPerPage})</span>\n <SystemIcons.ArrowDropDown/>\n </>\n }\n {\n !props.isCollapsed &&\n <>\n <span>{props.showFewerLabel ?? 'Show fewer'}</span>\n <SystemIcons.ArrowDropUp/>\n </>\n }\n </StyledTableFooterCollapseButton>\n }\n {\n !props.accordion &&\n <StyledTableFooterContent>\n <DropdownButton\n type={'text'}\n items={rowsPerPageValues}\n disabled={props.showLoadingIndicator}\n value={[`${props.rowsPerPage}`]}\n onClick={(value) => props.onRowsPerPageChange(+value[0])}\n label={dropDownText}\n keepLabel={true}\n />\n <StyledTableFooterCurrentInfo>\n {props.total === 0 ? 0 : props.from}-{props.to} of {props.total}\n </StyledTableFooterCurrentInfo>\n <StyledTableFooterControls>\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => props.prevPage()}\n disabled={props.from === 1 || props.showLoadingIndicator}>\n <SystemIcons.ChevronLeft aria-label='Previous' size=\"24\" color={COLORS.getColor('neutral_600', theme)}/>\n </IconButton>\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => props.nextPage()}\n disabled={props.to === props.total || props.showLoadingIndicator}>\n <SystemIcons.ChevronRight aria-label='Next' size=\"24\" color={COLORS.getColor('neutral_600', theme)}/>\n </IconButton>\n </StyledTableFooterControls>\n </StyledTableFooterContent>\n }\n </StyledTableFooter>\n );\n};\n\n\nexport default TableFooter;\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@laerdal/life-react-components",
3
- "version": "5.0.8-dev.1",
3
+ "version": "5.0.8-dev.1.full",
4
4
  "private": false,
5
5
  "author": "Erik Martirosyan <erik.martirosyan@laerdal.com>",
6
6
  "contributors": [],