-
-
{ setFocus(true); }}
- onBlur={() => { setFocus(false); }}
- />
-
-
- );
-};
-
-CheckMarkCell.propTypes = propTypes;
-CheckMarkCell.defaultProps = defaultProps;
-
-export default CheckMarkCell;
diff --git a/packages/terra-table/src/subcomponents/_ChevronCell.jsx b/packages/terra-table/src/subcomponents/_ChevronCell.jsx
deleted file mode 100644
index e41d5a50469..00000000000
--- a/packages/terra-table/src/subcomponents/_ChevronCell.jsx
+++ /dev/null
@@ -1,25 +0,0 @@
-import React from 'react';
-import classNames from 'classnames/bind';
-import styles from './ChevronCell.module.scss';
-
-const cx = classNames.bind(styles);
-
-const ChevronCell = ({
- ...customProps
-}) => (
-
-);
-
-export default ChevronCell;
diff --git a/packages/terra-table/src/subcomponents/_HeaderCell.jsx b/packages/terra-table/src/subcomponents/_HeaderCell.jsx
deleted file mode 100644
index 68bd1b03481..00000000000
--- a/packages/terra-table/src/subcomponents/_HeaderCell.jsx
+++ /dev/null
@@ -1,165 +0,0 @@
-import React from 'react';
-import PropTypes from 'prop-types';
-import classNames from 'classnames/bind';
-import styles from './HeaderCell.module.scss';
-import {
- styleFromWidth,
- wrappedOnClickForItem,
- wrappedOnKeyDownForItem,
- wrappedEventCallback,
-} from './utils';
-import widthShape from '../proptypes/widthShape';
-
-const cx = classNames.bind(styles);
-
-const propTypes = {
- /**
- * Content to be displayed for the column header.
- */
- children: PropTypes.node,
- /**
- * The associated metaData to be provided in the onSelect callback.
- */
- // eslint-disable-next-line react/forbid-prop-types
- metaData: PropTypes.object,
- /**
- * Function callback returning the html node for the header cell.
- */
- refCallback: PropTypes.func,
- /**
- * Whether or not the cell's inner containing element responsible for handling table's default padding is removed.
- * This is useful to optimize the DOM for either a table without padding or to optimize a cell whose custom content is providing its own padding.
- */
- removeInner: PropTypes.bool,
- /**
- * Whether or not the sort direction is descending. False indicates ascending.
- */
- isSortDesc: PropTypes.bool,
- /**
- * Whether or not the header cell should display as an actively sorted cell.
- */
- isSortActive: PropTypes.bool,
- /**
- * Function callback associated to a pure cell click/action, potentially for selection, etc.
- * Callback contains the javascript event and prop metadata, e.g. onCellAction(event, metaData)
- */
- onCellAction: PropTypes.func,
- /**
- * Function callback associated to the sort click/action.
- * Callback contains the javascript event and prop metadata, e.g. onSortAction(event, metaData)
- */
- onSortAction: PropTypes.func,
- /**
- * Width of the header cell. Should match row cell counter-part.
- */
- width: widthShape,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onBlur: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onClick: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onKeyDown: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onMouseDown: PropTypes.func,
-};
-
-const defaultProps = {
- children: [],
- removeInner: false,
- isSortDesc: false,
- isSortActive: false,
-};
-
-const HeaderCell = ({
- children,
- isSortDesc,
- isSortActive,
- metaData,
- onBlur,
- onClick,
- onKeyDown,
- onMouseDown,
- onCellAction,
- onSortAction,
- refCallback,
- removeInner,
- width,
- ...customProps
-}) => {
- let sortIndicator;
- if (onSortAction || isSortActive) {
- sortIndicator = (
-
- );
- }
-
- // Only apply sort if it's an active sort column.
- const attrSpread = {};
- if (isSortActive) {
- attrSpread['aria-sort'] = isSortDesc ? 'descending' : 'ascending';
- }
-
- const onAction = onSortAction || onCellAction;
- if (onAction) {
- attrSpread.onClick = wrappedOnClickForItem(onClick, onAction, metaData);
- attrSpread.onKeyDown = wrappedOnKeyDownForItem(onKeyDown, onAction, metaData);
- attrSpread.tabIndex = '0';
- attrSpread['data-header-show-focus'] = 'true';
- attrSpread.onBlur = wrappedEventCallback(onBlur, event => event.currentTarget.setAttribute('data-header-show-focus', 'true'));
- attrSpread.onMouseDown = wrappedEventCallback(onMouseDown, event => event.currentTarget.setAttribute('data-header-show-focus', 'false'));
- attrSpread['aria-selected'] = false;
- }
-
- let content = [
-
- {children}
-
,
- sortIndicator,
- ];
-
- if (!removeInner) {
- content = (
-
- {content}
-
- );
- }
-
- const headerCellClasses = cx(
- 'header-cell',
- { 'is-interactable': onAction },
- );
-
- return (
-
- {content}
-
- );
-};
-
-HeaderCell.propTypes = propTypes;
-HeaderCell.defaultProps = defaultProps;
-
-export default HeaderCell;
diff --git a/packages/terra-table/src/subcomponents/_HeaderCheckMarkCell.jsx b/packages/terra-table/src/subcomponents/_HeaderCheckMarkCell.jsx
deleted file mode 100644
index d4ef9bf08ed..00000000000
--- a/packages/terra-table/src/subcomponents/_HeaderCheckMarkCell.jsx
+++ /dev/null
@@ -1,167 +0,0 @@
-import React, { useState } from 'react';
-import PropTypes from 'prop-types';
-import classNames from 'classnames/bind';
-import styles from './HeaderCheckMarkCell.module.scss';
-import {
- wrappedOnClickForItem,
- wrappedOnKeyDownForItem,
- wrappedEventCallback,
-} from './utils';
-
-const cx = classNames.bind(styles);
-
-const propTypes = {
- /**
- * Aria label for the content.
- */
- label: PropTypes.string.isRequired,
- /**
- * Whether or not the check should be visually hidden.
- */
- isHidden: PropTypes.bool,
- /**
- * The bottom padding to be used for the HeaderCheckMarkCell.
- * To used in conjunction with a cellPaddingStyle of none. Allowing for consumers to set their own padding.
- */
- alignmentPadding: PropTypes.string,
- /**
- * Whether or not the checkmark displays as disabled. Dependent on `'isSelectable'`.
- */
- isDisabled: PropTypes.bool,
- /**
- * Whether or not a selected state should display as partially selected.
- */
- isIndeterminate: PropTypes.bool,
- /**
- * Whether or not row is selected
- */
- isSelected: PropTypes.bool,
- /**
- * Whether or not row is selectable, this will dictate whether or not a checkmark is present.
- */
- isSelectable: PropTypes.bool,
- /**
- * The associated metaData to be provided in the onSelect callback.
- */
- // eslint-disable-next-line react/forbid-prop-types
- metaData: PropTypes.object,
- /**
- * Function callback for when the appropriate click or key action is performed.
- * Callback contains the javascript event and prop metadata, e.g. onSelect(event, metaData)
- */
- onSelect: PropTypes.func,
- /**
- * Function callback for the ref of the td.
- */
- refCallback: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onBlur: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onClick: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onKeyDown: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onMouseDown: PropTypes.func,
-};
-
-const defaultProps = {
- isHidden: false,
- isDisabled: false,
- isIndeterminate: false,
- isSelected: false,
- isSelectable: false,
-};
-
-const HeaderCheckMarkCell = ({
- label,
- alignmentPadding,
- isHidden,
- isDisabled,
- isIndeterminate,
- isSelected,
- isSelectable,
- metaData,
- onBlur,
- onClick,
- onKeyDown,
- onMouseDown,
- onSelect,
- refCallback,
- ...customProps
-}) => {
- let attrSpread;
- const [isFocused, setFocus] = useState(false);
- let attrCheck;
- let attrPadding;
- if (alignmentPadding) {
- attrPadding = { style: { paddingBottom: alignmentPadding } };
- }
-
- if (isSelectable) {
- if (!isHidden && !isDisabled) {
- attrSpread = {
- onClick: wrappedOnClickForItem(onClick, onSelect, metaData),
- onKeyDown: wrappedOnKeyDownForItem(onKeyDown, onSelect, metaData),
- onBlur: wrappedEventCallback(onBlur, event => event.currentTarget.setAttribute('data-cell-show-focus', 'true')),
- onMouseDown: wrappedEventCallback(onMouseDown, event => event.currentTarget.setAttribute('data-cell-show-focus', 'false')),
- 'data-cell-show-focus': true,
- };
- }
-
- attrCheck = {
- role: 'checkbox',
- 'aria-checked': isSelected && isIndeterminate ? 'mixed' : isSelected,
- tabIndex: isDisabled ? '-1' : '0',
- };
- if (isDisabled) {
- attrCheck['aria-disabled'] = true;
- }
- }
-
- const headerCheckMarkCellClasses = cx(
- 'header-cell',
- { 'hide-cell': isHidden },
- { 'is-interactable': !isDisabled && isSelectable },
- { 'is-focused': isFocused && !isDisabled },
- );
-
- return (
-
-
-
{ setFocus(true); }}
- onBlur={() => { setFocus(false); }}
- />
-
-
- );
-};
-
-HeaderCheckMarkCell.propTypes = propTypes;
-HeaderCheckMarkCell.defaultProps = defaultProps;
-
-export default HeaderCheckMarkCell;
diff --git a/packages/terra-table/src/subcomponents/_HeaderChevronCell.jsx b/packages/terra-table/src/subcomponents/_HeaderChevronCell.jsx
deleted file mode 100644
index 265135d99bb..00000000000
--- a/packages/terra-table/src/subcomponents/_HeaderChevronCell.jsx
+++ /dev/null
@@ -1,25 +0,0 @@
-import React from 'react';
-import classNames from 'classnames/bind';
-import styles from './HeaderChevronCell.module.scss';
-
-const cx = classNames.bind(styles);
-
-const HeaderChevronCell = ({
- ...customProps
-}) => (
-
-);
-
-export default HeaderChevronCell;
diff --git a/packages/terra-table/src/subcomponents/_HeaderRow.jsx b/packages/terra-table/src/subcomponents/_HeaderRow.jsx
deleted file mode 100644
index da9a7a1c92c..00000000000
--- a/packages/terra-table/src/subcomponents/_HeaderRow.jsx
+++ /dev/null
@@ -1,42 +0,0 @@
-import React from 'react';
-import PropTypes from 'prop-types';
-import classNames from 'classnames/bind';
-
-import styles from '../Table.module.scss';
-
-const cx = classNames.bind(styles);
-
-const propTypes = {
- /**
- * The children passed to the component
- */
- children: PropTypes.node,
- /**
- * Function callback for the ref of the tr.
- */
- refCallback: PropTypes.func,
-};
-
-const defaultProps = {
- children: [],
-};
-
-const HeaderRow = ({
- children,
- refCallback,
- ...customProps
-}) => (
-
-);
-
-HeaderRow.propTypes = propTypes;
-HeaderRow.defaultProps = defaultProps;
-
-export default HeaderRow;
diff --git a/packages/terra-table/src/subcomponents/_Row.jsx b/packages/terra-table/src/subcomponents/_Row.jsx
deleted file mode 100644
index 3054311231e..00000000000
--- a/packages/terra-table/src/subcomponents/_Row.jsx
+++ /dev/null
@@ -1,136 +0,0 @@
-import React from 'react';
-import PropTypes from 'prop-types';
-import classNames from 'classnames/bind';
-import styles from './Row.module.scss';
-import {
- wrappedOnClickForItem,
- wrappedOnKeyDownForItem,
- wrappedEventCallback,
-} from './utils';
-
-const cx = classNames.bind(styles);
-
-const propTypes = {
- /**
- * The children to be passed as row content.
- */
- children: PropTypes.node.isRequired,
- /**
- * Indicates the desired divider style to apply to the row and its children.
- */
- dividerStyle: PropTypes.oneOf([
- 'vertical',
- 'horizontal',
- 'both',
- ]),
- /**
- * Whether or not the rows interaction is disabled.
- */
- isDisabled: PropTypes.bool,
- /**
- * Whether or not row should display as selected to match the link primary cell or toggle state of the row.
- */
- isSelected: PropTypes.bool,
- /**
- * Whether or not row can be selected.
- */
- isSelectable: PropTypes.bool,
- /**
- * Whether or not row should display as a striped row.
- */
- isStriped: PropTypes.bool,
- /**
- * The associated metaData to be provided in the onSelect callback.
- */
- // eslint-disable-next-line react/forbid-prop-types
- metaData: PropTypes.object,
- /**
- * Function callback for when the appropriate click or key action is performed.
- * Callback contains the javascript event and prop metadata, e.g. onSelect(event, metaData)
- */
- onSelect: PropTypes.func,
- /**
- * Function callback returning the html node for the row.
- */
- refCallback: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onBlur: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onClick: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onKeyDown: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onMouseDown: PropTypes.func,
-};
-
-const defaultProps = {
- isDisabled: false,
- isSelected: false,
- isSelectable: false,
- isStriped: false,
-};
-
-const Row = ({
- children,
- dividerStyle,
- isDisabled,
- isSelected,
- isSelectable,
- isStriped,
- metaData,
- onBlur,
- onClick,
- onKeyDown,
- onMouseDown,
- onSelect,
- refCallback,
- ...customProps
-}) => {
- const attrSpread = {};
- if (isSelectable) {
- if (isDisabled) {
- attrSpread['aria-disabled'] = true;
- } else {
- attrSpread.onClick = wrappedOnClickForItem(onClick, onSelect, metaData);
- attrSpread.onKeyDown = wrappedOnKeyDownForItem(onKeyDown, onSelect, metaData);
- attrSpread.tabIndex = '0';
- attrSpread['data-row-show-focus'] = 'true';
- attrSpread.onBlur = wrappedEventCallback(onBlur, event => event.currentTarget.setAttribute('data-row-show-focus', 'true'));
- attrSpread.onMouseDown = wrappedEventCallback(onMouseDown, event => event.currentTarget.setAttribute('data-row-show-focus', 'false'));
- }
- }
-
- const divider = dividerStyle ? `divider-${dividerStyle}` : undefined;
- const rowClasses = cx(
- { 'is-selected': isSelected && isSelectable },
- { 'is-selectable': !isDisabled && isSelectable },
- { 'is-striped': isStriped },
- divider,
- 'row',
- );
-
- return (
-
- {children}
-
- );
-};
-
-Row.propTypes = propTypes;
-Row.defaultProps = defaultProps;
-
-export default Row;
diff --git a/packages/terra-table/src/subcomponents/_Section.jsx b/packages/terra-table/src/subcomponents/_Section.jsx
deleted file mode 100644
index 0f4aa39a7df..00000000000
--- a/packages/terra-table/src/subcomponents/_Section.jsx
+++ /dev/null
@@ -1,70 +0,0 @@
-import React from 'react';
-import PropTypes from 'prop-types';
-import SectionHeader from './_SectionHeader';
-
-const propTypes = {
- /**
- * The children list items passed to the component.
- */
- children: PropTypes.node,
- /**
- * The numberOfColumns to be used as a descriptor for assistive technology.
- */
- numberOfColumns: PropTypes.number.isRequired,
- /**
- * Whether or not the section is collapsed.
- */
- isCollapsed: PropTypes.bool,
- /**
- * Whether or not the section can be collapsed.
- */
- isCollapsible: PropTypes.bool,
- /**
- * The associated metaData to be provided in the onSelect callback.
- */
- // eslint-disable-next-line react/forbid-prop-types
- metaData: PropTypes.object,
- /**
- * Function callback for when the appropriate click or key action is performed.
- * Callback contains the javascript event and prop metadata, e.g. onSelect(event, metaData)
- */
- onSelect: PropTypes.func,
- /**
- * Function callback pass-through for the ref of the section header.
- */
- refCallback: PropTypes.func,
- /**
- * Title text to be placed within the section header.
- */
- title: PropTypes.string.isRequired,
-};
-
-const defaultProps = {
- children: [],
- isCollapsed: false,
- isCollapsible: false,
-};
-
-const Section = ({
- children,
- isCollapsed,
- isCollapsible,
- ...customProps
-}) => {
- let sectionItems;
- if (!isCollapsible || !isCollapsed) {
- sectionItems = children;
- }
-
- return (
-
-
- {sectionItems}
-
- );
-};
-
-Section.propTypes = propTypes;
-Section.defaultProps = defaultProps;
-
-export default Section;
diff --git a/packages/terra-table/src/subcomponents/_SectionHeader.jsx b/packages/terra-table/src/subcomponents/_SectionHeader.jsx
deleted file mode 100644
index c66ef36f669..00000000000
--- a/packages/terra-table/src/subcomponents/_SectionHeader.jsx
+++ /dev/null
@@ -1,144 +0,0 @@
-import React from 'react';
-import PropTypes from 'prop-types';
-import classNames from 'classnames/bind';
-import {
- wrappedOnClickForItem,
- wrappedOnKeyDownForItem,
- wrappedEventCallback,
-} from './utils';
-import styles from './SectionHeader.module.scss';
-
-const cx = classNames.bind(styles);
-
-const propTypes = {
- /**
- * The colSpan to be used as a descriptor for assistive technology.
- */
- colSpan: PropTypes.number,
- /**
- * The id to be place on the column header.
- */
- id: PropTypes.string,
- /**
- * @private Whether or not the section is collapsed.
- */
- isCollapsed: PropTypes.bool,
- /**
- * @private Whether or not the section can be collapsed.
- */
- isCollapsible: PropTypes.bool,
- /**
- * @private The associated metaData to be provided in the onSelect callback.
- */
- // eslint-disable-next-line react/forbid-prop-types
- metaData: PropTypes.object,
- /**
- * The numberOfColumns to be used as a descriptor for assistive technology.
- */
- numberOfColumns: PropTypes.number.isRequired,
- /**
- * @private Function callback for when the appropriate click or key action is performed.
- * Callback contains the javascript event and prop metadata, e.g. onSelect(event, metaData)
- */
- onSelect: PropTypes.func,
- /**
- * Function callback returning the html node of the header.
- */
- refCallback: PropTypes.func,
- /**
- * Title text to be placed within the section header.
- */
- title: PropTypes.string.isRequired,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onBlur: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onClick: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onKeyDown: PropTypes.func,
- /**
- * @private Callback function not intended for use with this API, but if set pass it through to the element regardless.
- */
- onMouseDown: PropTypes.func,
-};
-
-const defaultProps = {
- isCollapsed: false,
- isCollapsible: false,
-};
-
-const SectionHeader = ({
- isCollapsed,
- isCollapsible,
- metaData,
- numberOfColumns,
- onBlur,
- onClick,
- onKeyDown,
- onMouseDown,
- onSelect,
- refCallback,
- title,
- id,
- ...customProps
-}) => {
- const attrSpread = {};
- let titleElement =
{title};
- let accordionIcon;
- if (isCollapsible) {
- accordionIcon = (
-
-
-
- );
- titleElement = (
-
- {titleElement}
-
- );
-
- attrSpread.onClick = wrappedOnClickForItem(onClick, onSelect, metaData);
- attrSpread.onKeyDown = wrappedOnKeyDownForItem(onKeyDown, onSelect, metaData);
- attrSpread.tabIndex = '0';
- attrSpread['aria-expanded'] = !isCollapsed;
- attrSpread['data-row-show-focus'] = 'true';
- attrSpread.onBlur = wrappedEventCallback(onBlur, event => event.currentTarget.setAttribute('data-row-show-focus', 'true'));
- attrSpread.onMouseDown = wrappedEventCallback(onMouseDown, event => event.currentTarget.setAttribute('data-row-show-focus', 'false'));
- }
-
- const sectionHeaderClasses = cx(
- 'section-header',
- { 'is-collapsible': isCollapsible },
- );
-
- return (
-
-
- {accordionIcon}
- {titleElement}
-
-
- );
-};
-
-SectionHeader.propTypes = propTypes;
-SectionHeader.defaultProps = defaultProps;
-
-export default SectionHeader;
diff --git a/packages/terra-table/src/subcomponents/utils.js b/packages/terra-table/src/subcomponents/utils.js
deleted file mode 100644
index c29082490b2..00000000000
--- a/packages/terra-table/src/subcomponents/utils.js
+++ /dev/null
@@ -1,101 +0,0 @@
-import { KEY_RETURN, KEY_SPACE } from 'keycode-js';
-/**
- * Returns a wrapped onClick callback function. If the onSelect method isn't passed, we return the initial onClick.
- */
-const wrappedOnClickForItem = (onClick, onSelect, metaData) => {
- if (!onSelect) {
- return onClick;
- }
- return (event) => {
- onSelect(event, metaData);
-
- if (onClick) {
- onClick(event);
- }
- };
-};
-
-/**
- * Returns a wrapped onKeyDown callback function with enter and space keys triggering onSelect. If the onSelect method isn't passed, we return the initial onClick.
- */
-const wrappedOnKeyDownForItem = (onKeyDown, onSelect, metaData) => {
- if (!onSelect) {
- return onKeyDown;
- }
- return (event) => {
- if (event.nativeEvent.keyCode === KEY_RETURN || event.nativeEvent.keyCode === KEY_SPACE) {
- onSelect(event, metaData);
- }
-
- if (onKeyDown) {
- onKeyDown(event);
- }
- };
-};
-
-/**
- * Returns a function that wraps both the old and new callback.
- */
-const wrappedEventCallback = (callback, newCallback) => {
- if (!callback) {
- return newCallback;
- }
- return (event) => {
- newCallback(event);
-
- if (callback) {
- callback(event);
- }
- };
-};
-
-const staticStyle = width => (
- {
- msFlex: '0 0 0px',
- flex: '0 0 0px',
- maxWidth: width,
- minWidth: width,
- }
-);
-
-const scalarStyle = width => (
- {
- msFlex: `${width} ${width} 0px`,
- flex: `${width} ${width} 0px`,
- }
-);
-
-const styleFromWidth = (width) => {
- if (!width) {
- return undefined;
- }
- if (width.static) {
- return staticStyle(`${width.static.value}${width.static.unit}`);
- }
- if (width.percentage) {
- return staticStyle(`${width.percentage}%`);
- }
- if (width.scalar) {
- return scalarStyle(width.scalar);
- }
- return undefined;
-};
-
-const TableUtils = {
- wrappedOnClickForItem,
- wrappedOnKeyDownForItem,
- wrappedEventCallback,
- staticStyle,
- scalarStyle,
- styleFromWidth,
-};
-
-export default TableUtils;
-export {
- wrappedOnClickForItem,
- wrappedOnKeyDownForItem,
- wrappedEventCallback,
- staticStyle,
- scalarStyle,
- styleFromWidth,
-};
diff --git a/packages/terra-table/tests/jest/Table.test.jsx b/packages/terra-table/tests/jest/Table.test.jsx
deleted file mode 100644
index eba825dfbe9..00000000000
--- a/packages/terra-table/tests/jest/Table.test.jsx
+++ /dev/null
@@ -1,559 +0,0 @@
-import React from 'react';
-import ThemeContextProvider from 'terra-theme-context/lib/ThemeContextProvider';
-
-import Table from '../../src/Table';
-
-describe('Table', () => {
- // Snapshot Tests
- it('should render a Table', () => {
- const shallowComponent = shallow(
-
,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with fill style', () => {
- const shallowComponent = shallow(
-
,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with fill style and scroll ref', () => {
- const shallowComponent = shallow(
-
,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with row and refCallback', () => {
- const refCallback = jest.fn();
- const shallowComponent = shallow(
-
,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with padding standard', () => {
- const shallowComponent = shallow(
-
,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with padding compact', () => {
- const shallowComponent = shallow(
-
,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with simple footer', () => {
- const shallowComponent = shallow(
-
,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table header and footer nodes', () => {
- const shallowComponent = shallow(
-
asdf}
- footerNode={zxcv
}
- />,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with divider style - vertical', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with divider style - horizontal', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with divider style - both', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with number of rows', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with header', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with header with chevrons', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with section rows', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with section rows width chevrons', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with section header', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with section header and rows', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with widths', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with check style toggle', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with row style toggle', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with check style toggle and row style disclose', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with check style icon and row style toggle', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with inners remove despite padding', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Table with indexes overridden', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('correctly applies the theme context className', () => {
- const searchField = mount(
-
-
- ,
- );
- expect(searchField).toMatchSnapshot();
- });
-});
diff --git a/packages/terra-table/tests/jest/TableUtils.test.jsx b/packages/terra-table/tests/jest/TableUtils.test.jsx
deleted file mode 100644
index 9a369dda541..00000000000
--- a/packages/terra-table/tests/jest/TableUtils.test.jsx
+++ /dev/null
@@ -1,31 +0,0 @@
-import {
- canToggleArrayValue,
- toggleArrayValue,
-} from '../../src/TableUtils';
-
-describe('TableUtils', () => {
- it('canToggleArrayValue return correct values', () => {
- let result = canToggleArrayValue(-1, ['1', '2', '3'], '4');
- expect(result).toEqual(true);
-
- result = canToggleArrayValue(4, ['1', '2', '3'], '4');
- expect(result).toEqual(true);
-
- result = canToggleArrayValue(3, ['1', '2', '3'], '3');
- expect(result).toEqual(true);
-
- result = canToggleArrayValue(3, ['1', '2', '3'], '4');
- expect(result).toEqual(false);
- });
-
- it('toggleArrayValue return correct values', () => {
- let result = toggleArrayValue(['1', '2', '3'], '4');
- expect(result).toEqual(['1', '2', '3', '4']);
-
- result = toggleArrayValue(['1', '2', '3'], '2');
- expect(result).toEqual(['1', '3']);
-
- result = toggleArrayValue([], '3');
- expect(result).toEqual(['3']);
- });
-});
diff --git a/packages/terra-table/tests/jest/__snapshots__/Table.test.jsx.snap b/packages/terra-table/tests/jest/__snapshots__/Table.test.jsx.snap
deleted file mode 100644
index 7ec41d0961b..00000000000
--- a/packages/terra-table/tests/jest/__snapshots__/Table.test.jsx.snap
+++ /dev/null
@@ -1,901 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`Table correctly applies the theme context className 1`] = `
-
-
-
-
-
- Test summary description
-
-
-
-
-
-`;
-
-exports[`Table should render a Table 1`] = `
-
-
-
-`;
-
-exports[`Table should render a Table header and footer nodes 1`] = `
-
- zxcv
- ,
- ]
- }
- header={
-
- asdf
-
- }
- setFocusOnContainer={false}
->
-
-
-
-
-`;
-
-exports[`Table should render a Table with check style icon and row style toggle 1`] = `
-
-
-
-
-
- content
-
-
-
-
-
-
- content
- |
-
-
-
-`;
-
-exports[`Table should render a Table with check style toggle 1`] = `
-
-
-
-
-
- content
-
-
-
-
-
-
- content
- |
-
-
-
-`;
-
-exports[`Table should render a Table with check style toggle and row style disclose 1`] = `
-
-
-
-
-
- content
-
-
-
-
-
-
- content
- |
-
-
-
-`;
-
-exports[`Table should render a Table with divider style - both 1`] = `
-
-
-
-`;
-
-exports[`Table should render a Table with divider style - horizontal 1`] = `
-
-
-
-`;
-
-exports[`Table should render a Table with divider style - vertical 1`] = `
-
-
-
-`;
-
-exports[`Table should render a Table with fill style 1`] = `
-
-
-
-
-
- content
- |
-
-
-
-`;
-
-exports[`Table should render a Table with fill style and scroll ref 1`] = `
-
-
-
-
-
- content
- |
-
-
-
-`;
-
-exports[`Table should render a Table with header 1`] = `
-
-
-
-
- content
-
-
-
-`;
-
-exports[`Table should render a Table with header with chevrons 1`] = `
-
-
-
-
- content
-
-
-
-`;
-
-exports[`Table should render a Table with indexes overridden 1`] = `
-
-
-
-
-
- content
- |
-
-
-
-`;
-
-exports[`Table should render a Table with inners remove despite padding 1`] = `
-
-
-
-
- content
-
-
-
-
-
- content
- |
-
-
-
-`;
-
-exports[`Table should render a Table with number of rows 1`] = `
-
-
-
-`;
-
-exports[`Table should render a Table with padding compact 1`] = `
-
-
-
-`;
-
-exports[`Table should render a Table with padding standard 1`] = `
-
-
-
-`;
-
-exports[`Table should render a Table with row and refCallback 1`] = `
-
-
-
-
-
- content
- |
-
-
-
-`;
-
-exports[`Table should render a Table with row style toggle 1`] = `
-
-
-
-
-
- content
-
-
-
-
-
-
- content
- |
-
-
-
-`;
-
-exports[`Table should render a Table with section header 1`] = `
-
-`;
-
-exports[`Table should render a Table with section header and rows 1`] = `
-
-`;
-
-exports[`Table should render a Table with section rows 1`] = `
-
-
-
-
-
- content
- |
-
-
-
-`;
-
-exports[`Table should render a Table with section rows width chevrons 1`] = `
-
-
-
-
-
- content
- |
-
-
-
-`;
-
-exports[`Table should render a Table with simple footer 1`] = `
-,
- ]
- }
- setFocusOnContainer={false}
->
-
-
-
-
-`;
-
-exports[`Table should render a Table with widths 1`] = `
-
-
-
-
- content
-
-
-
-
-
- content
- |
-
-
-
-`;
diff --git a/packages/terra-table/tests/jest/subcomponents/Cell.test.jsx b/packages/terra-table/tests/jest/subcomponents/Cell.test.jsx
deleted file mode 100644
index bff2a149033..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/Cell.test.jsx
+++ /dev/null
@@ -1,45 +0,0 @@
-import React from 'react';
-import Cell from '../../../src/subcomponents/_Cell';
-
-describe('Cell', () => {
- // Snapshot Tests
- it('should render a Cell', () => {
- const shallowComponent = shallow( | );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Cell with child content', () => {
- const shallowComponent = shallow(test text | );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Cell with child content and remove inner', () => {
- const shallowComponent = shallow(test text | );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Cell with disclosure label', () => {
- const shallowComponent = shallow( | );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Cell with disclosure label and isCurrent', () => {
- const shallowComponent = shallow( | );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render with callback functions', () => {
- const shallowComponent = shallow( | );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Cell with width inner container removed', () => {
- const shallowComponent = shallow( | );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Cell with width set', () => {
- const shallowComponent = shallow( | );
- expect(shallowComponent).toMatchSnapshot();
- });
-});
diff --git a/packages/terra-table/tests/jest/subcomponents/CheckMarkCell.test.jsx b/packages/terra-table/tests/jest/subcomponents/CheckMarkCell.test.jsx
deleted file mode 100644
index b94b79c3cf9..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/CheckMarkCell.test.jsx
+++ /dev/null
@@ -1,97 +0,0 @@
-import React from 'react';
-import CheckMarkCell from '../../../src/subcomponents/_CheckMarkCell';
-
-describe('CheckMarkCell', () => {
- // Snapshot Tests
- it('should render a CheckMarkCell', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a CheckMarkCell as an icon', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a CheckMarkCell with alignment', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a CheckMarkCell as selectable', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a CheckMarkCell as selectable disabled', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a CheckMarkCell as selectable with selection', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a CheckMarkCell as selectable with selection and disabled', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render with callback functions', () => {
- const mockCallBack = jest.fn();
-
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- shallowComponent.find('[role="gridcell"]').simulate('click');
- shallowComponent.find('[role="gridcell"]').simulate('keydown', { nativeEvent: { keyCode: 13 } });
- shallowComponent.find('[role="gridcell"]').simulate('keydown', { nativeEvent: { keyCode: 32 } });
- expect(mockCallBack.mock.calls.length).toEqual(3);
- });
-});
diff --git a/packages/terra-table/tests/jest/subcomponents/ChevronCell.test.jsx b/packages/terra-table/tests/jest/subcomponents/ChevronCell.test.jsx
deleted file mode 100644
index 81a68d3086c..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/ChevronCell.test.jsx
+++ /dev/null
@@ -1,10 +0,0 @@
-import React from 'react';
-import ChevronCell from '../../../src/subcomponents/_ChevronCell';
-
-describe('ChevronCell', () => {
- // Snapshot Tests
- it('should render a ChevronCell', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
- });
-});
diff --git a/packages/terra-table/tests/jest/subcomponents/HeaderCell.test.jsx b/packages/terra-table/tests/jest/subcomponents/HeaderCell.test.jsx
deleted file mode 100644
index d656bac1354..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/HeaderCell.test.jsx
+++ /dev/null
@@ -1,67 +0,0 @@
-import React from 'react';
-import HeaderCell from '../../../src/subcomponents/_HeaderCell';
-
-describe('HeaderCell', () => {
- // Snapshot Tests
- it('should render a HeaderCell', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCell with child content', () => {
- const shallowComponent = shallow(test text);
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCell with child content and remove inner', () => {
- const shallowComponent = shallow(test text);
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render with callback functions', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCell with width inner container removed', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCell with width set', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCell with sortActive', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCell with sortDesc', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCell with sortDesc and sortActive', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render with callback functions', () => {
- const mockCallBack = jest.fn();
-
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- shallowComponent.find('[role="columnheader"]').simulate('click');
- shallowComponent.find('[role="columnheader"]').simulate('keydown', { nativeEvent: { keyCode: 13 } });
- shallowComponent.find('[role="columnheader"]').simulate('keydown', { nativeEvent: { keyCode: 32 } });
- expect(mockCallBack.mock.calls.length).toEqual(3);
- });
-});
diff --git a/packages/terra-table/tests/jest/subcomponents/HeaderCheckMarkCell.test.jsx b/packages/terra-table/tests/jest/subcomponents/HeaderCheckMarkCell.test.jsx
deleted file mode 100644
index 503ee841228..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/HeaderCheckMarkCell.test.jsx
+++ /dev/null
@@ -1,133 +0,0 @@
-import React from 'react';
-import HeaderCheckMarkCell from '../../../src/subcomponents/_HeaderCheckMarkCell';
-
-describe('HeaderCheckMarkCell', () => {
- // Snapshot Tests
- it('should render a HeaderCheckMarkCell', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCheckMarkCell with child content', () => {
- const shallowComponent = shallow(
-
- test text
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCheckMarkCell with width inner container removed', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCheckMarkCell with alignment', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCheckMarkCell as selectable', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCheckMarkCell as selectable disabled', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCheckMarkCell as selectable with selection', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCheckMarkCell as selectable with selection and disabled', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCheckMarkCell as selectable with selection and indeterminate', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderCheckMarkCell as selectable with selection, indeterminate, and disabled', () => {
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render with callback functions', () => {
- const mockCallBack = jest.fn();
-
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- shallowComponent.find('[role="columnheader"]').simulate('click');
- shallowComponent.find('[role="columnheader"]').simulate('keydown', { nativeEvent: { keyCode: 13 } });
- shallowComponent.find('[role="columnheader"]').simulate('keydown', { nativeEvent: { keyCode: 32 } });
- expect(mockCallBack.mock.calls.length).toEqual(3);
- });
-});
diff --git a/packages/terra-table/tests/jest/subcomponents/HeaderChevronCell.test.jsx b/packages/terra-table/tests/jest/subcomponents/HeaderChevronCell.test.jsx
deleted file mode 100644
index 5e8e65eb43c..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/HeaderChevronCell.test.jsx
+++ /dev/null
@@ -1,10 +0,0 @@
-import React from 'react';
-import HeaderChevronCell from '../../../src/subcomponents/_HeaderChevronCell';
-
-describe('HeaderChevronCell', () => {
- // Snapshot Tests
- it('should render a HeaderChevronCell', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
- });
-});
diff --git a/packages/terra-table/tests/jest/subcomponents/HeaderRow.test.jsx b/packages/terra-table/tests/jest/subcomponents/HeaderRow.test.jsx
deleted file mode 100644
index 3bf6fc0e242..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/HeaderRow.test.jsx
+++ /dev/null
@@ -1,20 +0,0 @@
-import React from 'react';
-import HeaderRow from '../../../src/subcomponents/_HeaderRow';
-
-describe('HeaderRow', () => {
- // Snapshot Tests
- it('should render a HeaderRow', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a HeaderRow with child content', () => {
- const shallowComponent = shallow(test text);
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render with callback functions', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
- });
-});
diff --git a/packages/terra-table/tests/jest/subcomponents/Row.test.jsx b/packages/terra-table/tests/jest/subcomponents/Row.test.jsx
deleted file mode 100644
index c6cc8975670..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/Row.test.jsx
+++ /dev/null
@@ -1,98 +0,0 @@
-import React from 'react';
-import Row from '../../../src/subcomponents/_Row';
-
-describe('Row', () => {
- // Snapshot Tests
- it('should render a Row', () => {
- const shallowComponent = shallow(test content
);
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Row with divider style - vertical', () => {
- const shallowComponent = shallow(test content
);
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Row with divider style - horizontal', () => {
- const shallowComponent = shallow(test content
);
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Row with divider style - both', () => {
- const shallowComponent = shallow(test content
);
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Row with stripe', () => {
- const shallowComponent = shallow(test content
);
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Row as selectable', () => {
- const shallowComponent = shallow(
-
- test content
-
,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Row as selectable disabled', () => {
- const shallowComponent = shallow(
-
- test content
-
,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Row as selectable with selection', () => {
- const shallowComponent = shallow(
-
- test content
-
,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render a Row as selectable with selection and disabled', () => {
- const shallowComponent = shallow(
-
- test content
-
,
- );
- expect(shallowComponent).toMatchSnapshot();
- });
-
- it('should render with callback functions', () => {
- const mockCallBack = jest.fn();
-
- const shallowComponent = shallow(
-
- test content
-
,
- );
- expect(shallowComponent).toMatchSnapshot();
- shallowComponent.find('[role="row"]').simulate('click');
- shallowComponent.find('[role="row"]').simulate('keydown', { nativeEvent: { keyCode: 13 } });
- shallowComponent.find('[role="row"]').simulate('keydown', { nativeEvent: { keyCode: 32 } });
- expect(mockCallBack.mock.calls.length).toEqual(3);
- });
-});
diff --git a/packages/terra-table/tests/jest/subcomponents/Section.test.jsx b/packages/terra-table/tests/jest/subcomponents/Section.test.jsx
deleted file mode 100644
index 8cedf5875ff..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/Section.test.jsx
+++ /dev/null
@@ -1,28 +0,0 @@
-import React from 'react';
-import Section from '../../../src/subcomponents/_Section';
-
-// Snapshot Tests
-it('should render with content', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
-});
-
-it('should render with no items', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
-});
-
-it('should render with isCollapsed', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
-});
-
-it('should render with isCollapsible', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
-});
-
-it('should render with callback functions', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
-});
diff --git a/packages/terra-table/tests/jest/subcomponents/SectionHeader.test.jsx b/packages/terra-table/tests/jest/subcomponents/SectionHeader.test.jsx
deleted file mode 100644
index 4e29cf63a4f..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/SectionHeader.test.jsx
+++ /dev/null
@@ -1,31 +0,0 @@
-import React from 'react';
-import SectionHeader from '../../../src/subcomponents/_SectionHeader';
-
-// Snapshot Tests
-it('should render default', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
-});
-
-it('should render with isCollapsed', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
-});
-
-it('should render with isCollapsible', () => {
- const shallowComponent = shallow();
- expect(shallowComponent).toMatchSnapshot();
-});
-
-it('should render with callback functions', () => {
- const mockCallBack = jest.fn();
-
- const shallowComponent = shallow(
- ,
- );
- expect(shallowComponent).toMatchSnapshot();
- shallowComponent.find('[role="columnheader"]').simulate('click');
- shallowComponent.find('[role="columnheader"]').simulate('keydown', { nativeEvent: { keyCode: 13 } });
- shallowComponent.find('[role="columnheader"]').simulate('keydown', { nativeEvent: { keyCode: 32 } });
- expect(mockCallBack.mock.calls.length).toEqual(3);
-});
diff --git a/packages/terra-table/tests/jest/subcomponents/__snapshots__/Cell.test.jsx.snap b/packages/terra-table/tests/jest/subcomponents/__snapshots__/Cell.test.jsx.snap
deleted file mode 100644
index 1f4ef79b3f6..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/__snapshots__/Cell.test.jsx.snap
+++ /dev/null
@@ -1,102 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`Cell should render a Cell 1`] = `
-
-`;
-
-exports[`Cell should render a Cell with child content 1`] = `
-
-`;
-
-exports[`Cell should render a Cell with child content and remove inner 1`] = `
-
- test text
-
-`;
-
-exports[`Cell should render a Cell with disclosure label 1`] = `
-
-`;
-
-exports[`Cell should render a Cell with disclosure label and isCurrent 1`] = `
-
-`;
-
-exports[`Cell should render a Cell with width inner container removed 1`] = `
-
-`;
-
-exports[`Cell should render a Cell with width set 1`] = `
-
-`;
-
-exports[`Cell should render with callback functions 1`] = `
-
-`;
diff --git a/packages/terra-table/tests/jest/subcomponents/__snapshots__/CheckMarkCell.test.jsx.snap b/packages/terra-table/tests/jest/subcomponents/__snapshots__/CheckMarkCell.test.jsx.snap
deleted file mode 100644
index 2ceddc55e74..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/__snapshots__/CheckMarkCell.test.jsx.snap
+++ /dev/null
@@ -1,203 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`CheckMarkCell should render a CheckMarkCell 1`] = `
-
-`;
-
-exports[`CheckMarkCell should render a CheckMarkCell as an icon 1`] = `
-
-`;
-
-exports[`CheckMarkCell should render a CheckMarkCell as selectable 1`] = `
-
-`;
-
-exports[`CheckMarkCell should render a CheckMarkCell as selectable disabled 1`] = `
-
-`;
-
-exports[`CheckMarkCell should render a CheckMarkCell as selectable with selection 1`] = `
-
-`;
-
-exports[`CheckMarkCell should render a CheckMarkCell as selectable with selection and disabled 1`] = `
-
-`;
-
-exports[`CheckMarkCell should render a CheckMarkCell with alignment 1`] = `
-
-`;
-
-exports[`CheckMarkCell should render with callback functions 1`] = `
-
-`;
diff --git a/packages/terra-table/tests/jest/subcomponents/__snapshots__/ChevronCell.test.jsx.snap b/packages/terra-table/tests/jest/subcomponents/__snapshots__/ChevronCell.test.jsx.snap
deleted file mode 100644
index f6b3025d966..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/__snapshots__/ChevronCell.test.jsx.snap
+++ /dev/null
@@ -1,16 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`ChevronCell should render a ChevronCell 1`] = `
-
-`;
diff --git a/packages/terra-table/tests/jest/subcomponents/__snapshots__/HeaderCell.test.jsx.snap b/packages/terra-table/tests/jest/subcomponents/__snapshots__/HeaderCell.test.jsx.snap
deleted file mode 100644
index 2560f776971..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/__snapshots__/HeaderCell.test.jsx.snap
+++ /dev/null
@@ -1,187 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`HeaderCell should render a HeaderCell 1`] = `
-
-`;
-
-exports[`HeaderCell should render a HeaderCell with child content 1`] = `
-
-`;
-
-exports[`HeaderCell should render a HeaderCell with child content and remove inner 1`] = `
-
-`;
-
-exports[`HeaderCell should render a HeaderCell with sortActive 1`] = `
-
-`;
-
-exports[`HeaderCell should render a HeaderCell with sortDesc 1`] = `
-
-`;
-
-exports[`HeaderCell should render a HeaderCell with sortDesc and sortActive 1`] = `
-
-`;
-
-exports[`HeaderCell should render a HeaderCell with width inner container removed 1`] = `
-
-`;
-
-exports[`HeaderCell should render a HeaderCell with width set 1`] = `
-
-`;
-
-exports[`HeaderCell should render with callback functions 1`] = `
-
-`;
-
-exports[`HeaderCell should render with callback functions 2`] = `
-
-`;
diff --git a/packages/terra-table/tests/jest/subcomponents/__snapshots__/HeaderCheckMarkCell.test.jsx.snap b/packages/terra-table/tests/jest/subcomponents/__snapshots__/HeaderCheckMarkCell.test.jsx.snap
deleted file mode 100644
index e3c1cde749f..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/__snapshots__/HeaderCheckMarkCell.test.jsx.snap
+++ /dev/null
@@ -1,254 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`HeaderCheckMarkCell should render a HeaderCheckMarkCell 1`] = `
-
-`;
-
-exports[`HeaderCheckMarkCell should render a HeaderCheckMarkCell as selectable 1`] = `
-
-`;
-
-exports[`HeaderCheckMarkCell should render a HeaderCheckMarkCell as selectable disabled 1`] = `
-
-`;
-
-exports[`HeaderCheckMarkCell should render a HeaderCheckMarkCell as selectable with selection 1`] = `
-
-`;
-
-exports[`HeaderCheckMarkCell should render a HeaderCheckMarkCell as selectable with selection and disabled 1`] = `
-
-`;
-
-exports[`HeaderCheckMarkCell should render a HeaderCheckMarkCell as selectable with selection and indeterminate 1`] = `
-
-`;
-
-exports[`HeaderCheckMarkCell should render a HeaderCheckMarkCell as selectable with selection, indeterminate, and disabled 1`] = `
-
-`;
-
-exports[`HeaderCheckMarkCell should render a HeaderCheckMarkCell with alignment 1`] = `
-
-`;
-
-exports[`HeaderCheckMarkCell should render a HeaderCheckMarkCell with child content 1`] = `
-
-`;
-
-exports[`HeaderCheckMarkCell should render a HeaderCheckMarkCell with width inner container removed 1`] = `
-
-`;
-
-exports[`HeaderCheckMarkCell should render with callback functions 1`] = `
-
-`;
diff --git a/packages/terra-table/tests/jest/subcomponents/__snapshots__/HeaderChevronCell.test.jsx.snap b/packages/terra-table/tests/jest/subcomponents/__snapshots__/HeaderChevronCell.test.jsx.snap
deleted file mode 100644
index 92f6d24c6b6..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/__snapshots__/HeaderChevronCell.test.jsx.snap
+++ /dev/null
@@ -1,16 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`HeaderChevronCell should render a HeaderChevronCell 1`] = `
-
-`;
diff --git a/packages/terra-table/tests/jest/subcomponents/__snapshots__/HeaderRow.test.jsx.snap b/packages/terra-table/tests/jest/subcomponents/__snapshots__/HeaderRow.test.jsx.snap
deleted file mode 100644
index 1208168104d..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/__snapshots__/HeaderRow.test.jsx.snap
+++ /dev/null
@@ -1,39 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`HeaderRow should render a HeaderRow 1`] = `
-
-`;
-
-exports[`HeaderRow should render a HeaderRow with child content 1`] = `
-
-`;
-
-exports[`HeaderRow should render with callback functions 1`] = `
-
-`;
diff --git a/packages/terra-table/tests/jest/subcomponents/__snapshots__/Row.test.jsx.snap b/packages/terra-table/tests/jest/subcomponents/__snapshots__/Row.test.jsx.snap
deleted file mode 100644
index 39fdec41e92..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/__snapshots__/Row.test.jsx.snap
+++ /dev/null
@@ -1,107 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`Row should render a Row 1`] = `
-
- test content
-
-`;
-
-exports[`Row should render a Row as selectable 1`] = `
-
- test content
-
-`;
-
-exports[`Row should render a Row as selectable disabled 1`] = `
-
- test content
-
-`;
-
-exports[`Row should render a Row as selectable with selection 1`] = `
-
- test content
-
-`;
-
-exports[`Row should render a Row as selectable with selection and disabled 1`] = `
-
- test content
-
-`;
-
-exports[`Row should render a Row with divider style - both 1`] = `
-
- test content
-
-`;
-
-exports[`Row should render a Row with divider style - horizontal 1`] = `
-
- test content
-
-`;
-
-exports[`Row should render a Row with divider style - vertical 1`] = `
-
- test content
-
-`;
-
-exports[`Row should render a Row with stripe 1`] = `
-
- test content
-
-`;
-
-exports[`Row should render with callback functions 1`] = `
-
- test content
-
-`;
diff --git a/packages/terra-table/tests/jest/subcomponents/__snapshots__/Section.test.jsx.snap b/packages/terra-table/tests/jest/subcomponents/__snapshots__/Section.test.jsx.snap
deleted file mode 100644
index 4c4ef42d4d9..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/__snapshots__/Section.test.jsx.snap
+++ /dev/null
@@ -1,59 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`should render with callback functions 1`] = `
-
-
-
-`;
-
-exports[`should render with content 1`] = `
-
-
- test content
-
-`;
-
-exports[`should render with isCollapsed 1`] = `
-
-
-
-`;
-
-exports[`should render with isCollapsible 1`] = `
-
-
-
-`;
-
-exports[`should render with no items 1`] = `
-
-
-
-`;
diff --git a/packages/terra-table/tests/jest/subcomponents/__snapshots__/SectionHeader.test.jsx.snap b/packages/terra-table/tests/jest/subcomponents/__snapshots__/SectionHeader.test.jsx.snap
deleted file mode 100644
index a766dd6a3a2..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/__snapshots__/SectionHeader.test.jsx.snap
+++ /dev/null
@@ -1,117 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`should render default 1`] = `
-
-`;
-
-exports[`should render with callback functions 1`] = `
-
-`;
-
-exports[`should render with isCollapsed 1`] = `
-
-`;
-
-exports[`should render with isCollapsible 1`] = `
-
-`;
diff --git a/packages/terra-table/tests/jest/subcomponents/utils.test.jsx b/packages/terra-table/tests/jest/subcomponents/utils.test.jsx
deleted file mode 100644
index c634bed438a..00000000000
--- a/packages/terra-table/tests/jest/subcomponents/utils.test.jsx
+++ /dev/null
@@ -1,69 +0,0 @@
-import {
- styleFromWidth,
- wrappedOnClickForItem,
- wrappedOnKeyDownForItem,
- wrappedEventCallback,
-} from '../../../src/subcomponents/utils';
-
-describe('utils', () => {
- it('styleFromWidth return correct values', () => {
- let result = styleFromWidth();
- expect(result).toEqual(undefined);
-
- result = styleFromWidth({ static: { value: 4, unit: 'px' } });
- expect(result).toEqual({
- msFlex: '0 0 0px',
- flex: '0 0 0px',
- maxWidth: '4px',
- minWidth: '4px',
- });
-
- result = styleFromWidth({ percentage: 10 });
- expect(result).toEqual({
- msFlex: '0 0 0px',
- flex: '0 0 0px',
- maxWidth: '10%',
- minWidth: '10%',
- });
-
- result = styleFromWidth({ scalar: 3 });
- expect(result).toEqual({
- msFlex: `${3} ${3} 0px`,
- flex: `${3} ${3} 0px`,
- });
- });
-
- it('should generate wrappedOnClickForItem callback', () => {
- const mockCallBack = jest.fn();
- const mockCallBack2 = jest.fn();
-
- const result = wrappedOnClickForItem(mockCallBack, mockCallBack2, { test: 'click' });
- result();
- expect(mockCallBack.mock.calls.length).toEqual(1);
- expect(mockCallBack2.mock.calls.length).toEqual(1);
- expect(mockCallBack2.mock.calls[0][1]).toEqual({ test: 'click' });
- });
-
- it('should generate wrappedOnKeyDownForItem callback', () => {
- const mockCallBack = jest.fn();
- const mockCallBack2 = jest.fn();
-
- const result = wrappedOnKeyDownForItem(mockCallBack, mockCallBack2, { test: 'keyDown' });
- result({ nativeEvent: { keyCode: 13 }, preventDefault: mockCallBack });
- result({ nativeEvent: { keyCode: 13 }, preventDefault: mockCallBack2 });
- expect(mockCallBack.mock.calls.length).toEqual(2);
- expect(mockCallBack2.mock.calls.length).toEqual(2);
- expect(mockCallBack2.mock.calls[0][1]).toEqual({ test: 'keyDown' });
- expect(mockCallBack2.mock.calls[1][1]).toEqual({ test: 'keyDown' });
- });
-
- it('should generate wrappedEventCallback callback', () => {
- const mockCallBack = jest.fn();
- const mockCallBack2 = jest.fn();
-
- const result = wrappedEventCallback(mockCallBack, mockCallBack2);
- result();
- expect(mockCallBack.mock.calls.length).toEqual(1);
- expect(mockCallBack2.mock.calls.length).toEqual(1);
- });
-});
diff --git a/packages/terra-table/tests/wdio/__snapshots__/reference/clinical-lowlight-theme/en/chrome_medium/table-spec/custom_cell_content.png b/packages/terra-table/tests/wdio/__snapshots__/reference/clinical-lowlight-theme/en/chrome_medium/table-spec/custom_cell_content.png
deleted file mode 100644
index c7f5f1034f83ffa5fbdb259a76bc0b28b38b4d13..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 29629
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
diff --git a/packages/terra-table/tests/wdio/__snapshots__/reference/clinical-lowlight-theme/en/chrome_medium/table-spec/header_check_mark.png b/packages/terra-table/tests/wdio/__snapshots__/reference/clinical-lowlight-theme/en/chrome_medium/table-spec/header_check_mark.png
deleted file mode 100644
index e529bf18e1e8c36547fa83fbb97c7c10540d3422..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 15369
zcmdVBcQjmE{5PD6Xi3zGC?Pu0J0T%@?=3nbdhfy&j39`J2%`kiOE3}9!zf|&-bL@d
z_h-B0KKH)Ad*8L5_5Ag$Wu?p<=j^l3-rw)1onR#eNgPZP%qv%};7Ch7Q@L{Gx&-*Q
z8wMKqlWtKd?8+6v4(Vr4)!eTx*LZ2dgDQU=eMyvbyG8x>dvNF-jDpeui1h=7I02g|
z=vsnjt3KyaZesqa2XyCV3)X;>enYIwVWa+0wSuipx56-o_>DoNZv>qu?YJ3*H0j
zfYo-VO*s@fF1%2_Yvt|!-oZzo@#Rw%U4g
zE>BcN))LQg;GJl2wkd{-7_`~QtJ;9J||4rvDUD?(<4^*t-KP3z4s6QoLMj?<$V}N
zNwMle&Sx#=qQa{1bc^TJu3ekMW%~AqC4UH)fB>g?l9xdMfYHDglmBsP`
z2~sIDYR{IgqO{
zSqKRY#adooR??jNMco38K0NfKB^Ul-i|8c9{A+eOws2Aw1kms?v(zxfoL!;~s?NxR
zR?<`l$XvrYVhPgI)1|-}n29>LaKw_8o?Wh(P4H_)h~mKH+!lFZgCBRmuqrG4kzkX65SZjb$7{w@lII@T3H%gg+I&0Wqd9QMcD;#848EDM$NRAr6n{3w%9
zQ(H&u)^>KuRsz}Cj%vwD4`OAEdEgeffo#hwY5Xn5-`-y3h{YxfjecefpG#g4xLCcf
z?N~T7-ltoPl<~jG7vm_EWsI)v81}szTK}qj4XHOvOCG__BM>rbJJ%E?{hWn(+;{6y
zI0w8{D^~;aK!~$j_48iWG}cY*rA~U`qzD-Unx<(Mlhi$n7uKc@4t^P6X+T`v@Z}zR
zh?^TTrriAew@uKjyu6tmCcBP-f!9x!3G{tWF#QhEKE%X)
zj7>~Q|Mo%C;0QM)#r}PhY0B9o4XFZM1T8H+0hae(Ghs8TSvxGh04`SAAtR=g=2(qZ2U%>SnG
z`!r@|vshv=td~pv4r^-Ugi*_JZ>@2_7u`($pS8v}E}y6SUD4L3*iZ#}I4ZKql%4=n
zD6H4A#@5ZSWYE3y9|ff1MO^wujn|qnV$fr5Q9YcKedBFble8!6b|(q0la9Qckg28P
zyD_YnUt!4OJR9p=r;{OW5)u-K_Y8-DIxT#nr23S5#%!kIV0ZX(Aqus`KjDcHQzmG0
z{yOE%=N@+=2b-B8EGi{+g@;A`gd*gGed>mWNJ_1VqNI~kx=^u*gr1(BO_%+XH6PiR
zVh=}0AIGCnoGfZiJ8GYh-%BXy_}Htbo*0rFQ?gC
zFqYp>H2IJ2iC-T4WVo1t*XSZ!O{J*u2FP&rs~vAfH3b-XT87lM;T}9E7c117>`V;;
zB@*0*`(wiA^GirwNGc+8hsx`O075SRkfdVD!*%@
zj;@kn!NLCJT*hWyKPBYN)}~;L4zHK^lfNZtbFM0a+!9WN7icDb2>Y6`?UQB&76
zp(m0R^4xwqzlb?#P4p$>71qm_?o5nqrX2Sg*2c|EOvs{|o~f%7&b1l*m~nOJSzTrE
zJ)Fj0=DBZo{0n`+nuln1E;b?7h&7>h!oG8`S6o#UALd>4BSH6}bpww*U%a!c>*Y?7
zW{Bs|$RQM0{|V(_W?=?(jP0wNGaDP%Gj$h2*hZl;G$SJ`Cnw`<^2(q!?0&yUh8m*-
zs3!kf%}bw$FZGMi6(YnW8@0XFeP*HN5Q=g|@xTZ}Cr;Q<*_AmjFZPkjm+(~9i$1ALkkQnhs
z{>o8OyNLu-8z)AYoqbYg!cI#rRQDD&^WEpf2~SYa**U&mbH?1(6%77}l!sSPHcRVM
zQI{lR>?F9-i#V8(xAptM1&hVS#f56VCp_?phMjhXXc>s@XhqZFA|_5)*w?SHV2RY{
z)jl}#-F(bR?M_bakf>Yw9xL3|JojZIF+kTgE*ZWDfz-`7JI?iCfaU@#>@3gy@?~OA
z^RBIxiKQdn#q=sPw=kr}wQle3vb*}e@APsj74f_s(I^Y%Hu(clb8|BTQ7E%Gl~x{)
zr>AF!JniNI>D1mDqKYVuMXBAWaDX;TE#%3|$F0dk*c)1JdZP)8Vwod<9kdf6zIJu#Z
z4+lo%9^Cm=Qho3`FOLsaALtPhcx{Eue13T`MU62zn-NW~pI=Esqk-v56)b=0I3hxr
zDyr%2V7nn=SS#dNfsW1g_Vy>Z-1HXz`3ipdC}=ZboxL%xa|6ikUS^uyDeK
z?)+@n`J
zY=#tV6hw&pHk!J6sk_A=8Q>9t64|297?^JHUWP`F7QbHQuDUuq=>H=uyl4@P{*(y{
zPVs7tffL;#J}pK~Y9ZA(zx0RJOgJ0U6Kq022{=FKsk%CgKFP04MqffSP{qnyVr-olMR6cz2@ci(v@|4}owVgGA+kOg-+qZ`tfsw@)+>$R+(+j4jiEn~F5
z9YNuw#Su*v)0$#I!jgfN)B7s9DCKVp&I~b(QT+9erNz^J7g`DtnTre!jo
zg$7r5D64a#1$8(5`gJF0kPMfHm&cuj7T@p5A1}C?LFIis*KPt9F>9u;ad7fJ+KZkjR7(x3k%5&7
zSpdl2LR(1xws18C
zd^9|LL8}D{P$1hfttR{vtu!*JR
z62MI~@TPVD5}((D#uIEw<3V5@3Xz*wI}?}<=~-8^_t
zKQD)fNJMg0R`67SC?&w!si~;}NTa?KWgcE$2!ym2bS^b>O?^5_nuDRu8_Op3(Fy8@J0=jgROva^ZKFahZEbB@^6}cKN1$!ejM(zVr8|5~
zp|3bSBy4DC(9+kxrk4RA@7A1`GQrJqWZU`aKtoHXr7P670m#mIZ`&|4D-Y~=1Om}I
zGQw=LvJ$_tY-$UIp-)YL_N=6?ULUrU#L2l6@I>s2KWgPOKfz=tQj#F_rj9Q1>$hTu
z_;f?gw08|HEd=>GxpK`3d1GjTAzY}-3K%0K4@hK4{Hb2zQNnQu@o
zA>Dt;fjwgXr0D=#BMKlB+IZ!+1crtk1W1J<0CuHQ?N)QI6pHwt1pN*6?Ns|~uI2vG
z(dxUL_Y%!SqKrH|ZU!O!F2Q9y^aAI51qy
z9@Ms<9T;5x;_Db?OvC^P6UWkpV6ap*OMBI$CemU9h;(wYAsYC0^pxB`z`obPaAWzKX^FelKWP5L&?hBY%_YUS3^7!pl!}Og;+K@K%n4{kv9HR?|h=aZ3vyIpciS(k2Zo^#SOciKYI*(a{<4VcE0+*%gPl
zbL^iX;v+|0BqiMsD7h9hR0C)o%Zf?w2Ba_N&RrO)U|5~$uQ#JTwt%_bnMzO3cqC57
zwoy?Oiyi#zS~;?2Ni*M&BbH50Q9g2D5OC!GfX;kvr#^8Tg$|P&kTm1qvN9ddqr<{M
zYsj}r2XbMEIbETDtMS8*jwf!4x0kGxZNuIeevFGZb@1_X%h#ugYF#(9e$(12|5fEy
z(zv9Z9mQ%92ku9?f{KckI)4Yy`}__)4_R;wHPpiqY$EN;E!bWQ1h_$=ZTT#5adCWY
z;2_LED!_LE5isV-fy_doko)EBBO}-V{5U*_8l4*(6Ap=W{`CC(J
z@GV#TTWY;>PV~<--FRuEZXqXYuc@j=EobaG@acUGyx8eKC#gVNq`iZ|=6s+oLlY($
zL5`=VM+tA8+)=Yn{&L$+{3dMl*{k6a+rpBVl$4@(Wo1_`)_KJXOkb0;ZCB#6owc%k
zRy*f)GtdJG)G6Uj1>Xyv6l(qG80)P0(Q!w;R~^#OC=r{Gn4X`Xcp7@$6mie?`B}V5
zR-H1aZGeOJ^{0Re_4(-e?amhf=kBphJM!lnoW%p8Mn-17p?(kxPcZUc7A7PVe%0Cv
zv0SMzmNk@TFC#wK(PpLBXRQK=Shk*K2Z>_=KG1S*EesUtx;k$ts^w^tCp)`Xu
zs9Rcy$YgRt3_Gimp#RHD1)yjFaS5mwhKo(qpl?8Uc=}4+_HfJ6y9ay2dX0^&mxW~`
z#lwdN2PaM|%K^4v!NE1=h=owxH*@ujD=YInWW{~k3jOYI;sihhxc#ZaIqIl#t{|Pv
zyeu=%#aq887h3h%t?ZijHhr_v`6P=h;ugd(ZFWv^S7G;Br1Su>0MrH`v_helDFa@OWpQVBx4$h%WcwVX+BXR(XD)u8xS{nt(rGF;7MCn=iw$2l
z8t3NczHK!Penv!3g!$DiJ{ge{s*)9uoeha+p%YF@0&9c(OHe~PEfCrgXIf$r`#ITc
zv2uWl7gkn^Co4TsSI4e5_LKD&`>top$i!5-JJ+tIt)D*Cq8%QW1h4OSxk_p_GxL4a
z?092Jq<~FC(awM($c*EjvtFYmV#1k^zj?vYL5*!dPS*=P%k-Vd@u^$glmj+E1zdU0
zzUL(X^0MQ1B?raC+|qg%w}hSZabWVEC`GZ0OV7$sMaY2MnrWyg+NaK^?-5@S&+uGDrHvzhW5k1i+M5T!UbafLU2*uQss<)E;F7KKM
z&?5RnlPgA$VCzZBKTiDo*+Q+q=a+LS+vjczF8PN^?Hd#5Yv&}O&dAM}o^{Xu(_aKY
zpNrF=Rx+Z0U)k*s3Kw*~_0-iXUZqqbNA-`>dER-e^OT1v$zlPR=B#JFx$zM21HcVn
zTa}d%pt`i;+Uz`1oYh)v!TH8yXhm%LR;3ubX|IHc=MroO6W>iY4~tdBcLUBiQy`
zM;5r<+zHnOe2pgEv$KuA9}ih+J<`CZem-1P=n8ju0LT^>El+Xe8$YFPak-XXha($i8_KtzK@j%jd0mS36`KZg3J(?q=)s!<1uUM*{$KoPP)9
z;g01fwrM91KpFs4k20?Pl+9?C$bsFIa08IrdsV0W{lZ81X)3|j%hFAxmT7_BoAl+~
zV%+&H0of?kv6OVdnMBOdjTrFpSw5DM`~KOPfP^$RKPCtjXU+~xRZ~yPXZgd(+xv}i
zR-NBqtc8T_*z|1JeWBYW!(mVRx&FLzl5yed>^K0&zN1j=)NZcqKz{Y!U7#DGAe$-p
z7LI#($YKofWrL+#@Fn~?!L2|*Uq3h*Sa#)-Z#3qaau#4;ro|&27#qAWHeM6Aw#0B1
zM^2kpe{Ve7^4&Js2lK@aKFG=bf0Z`0mu`VFlaiBj95L=4kTD|00;l;?4Cn73Ms2;Y
zv@{0Ay}MgA6B@mJDvagi6riIszf>)y>vg}d6{le}qU#+dqO7QPcbBMU_Ku`Sh5oA=
zC{?655Ueb$>@xm?GF4||!bc^jB7cn~2o8|CYG`U);H*h;)pD=4lYUr(1YWRS;*17q
zfdF4YbejWbQLAJ`-^U>-$6W6Zl-0p=$`d>96xQ%DZu}(1{QOQD=rYn7dkn059fPCN
znQ4S#F7l6bq#qJR09g!%TA7|qd&_4lp)w>-aL{8rLkaB(}#p~FHn<*M#<1fucXbdE?jkX{q}8OV1OEe
z-8D9*0PKtv_js7$!!3l&u5AB^XV|xlL8PLl~8!d~w1_q>(wG2fPXrpEPjL+qKznZ5N`m8`Fx(OVKygVao
z*ZZ)h#t0>~XioDsFx<@iEGTaws<|2S=;-K%7^P?1P6|DynVH#lRP*b46Cmj-s|B{T
zvFOwqVFQ8)l+&KRUS)0V;F4NY?Fgx^u0x#Iqn_UW)Mzf_4aky})%OtvAg_E*Nx25Z
zm2m@cZ%zqsrf_2wU_upsBdVX;xr5Pjq14w^XJCGb0Scs?$Z3<}PBJP6fc16eGaDj~
zJ`N?d#88deSjCMbq)^O%QH;m>4`Qz7)p1(T$dzJ`>i?zyYMfh|fJ3z7S)#33zk;K@
zKJSJKg`u)HEi>O#-}d4UR&u&?QMdx!BU`*D=FW~;#;@wtBa4PWv9z0WWY
zC8fnHFzE3h2^xGBL9D;ARcjH~fWB54+6tXZ$kFupr|CdyZahh;8WpvzKcC7?I=i%f
zG=B1-vWI-_c%G4`JfV9Lp(tWxWfjUh?g@8PXaE7
z97LC?n4Ei7G{_tkK~eban*h*qhAftbAN$yhF;(?RG{@qwoIX
zrcu4I{nNdy-0cl2=0}elfSh`^PjQAHlCqw111`3olT$dDdz=SwMRi(La^&hN`Nedz
zIbFlQ^<(ym_)IJT;pnU>Rpcb0NV|N$i><#Qd9&t
zPECjp{YgJIigXP^H(dbWS}*w;BU2bNB=#r6e|`No;V5PJe~@Xoe-Nc?{~~;R2Vj0O
zGBP3W^*=-@6@iCSNqh(-Hog8>_w_#x4)_Vw0T$#WRcHR-zCBOb*-HqXn7-mo0ISwD
z)YdoFd?W$1SO-2-msfH`pZ&-GX>_2V)13ZWFVlM9P|yp_i8?vo)UR0MeRQ2H9mJb
zPv2zv4%mw^XlV8VdJwA6P~ZhqR+a>{8qtjmN$5(VGofThNbc3Jaq~A#9$#B~UMcgh
z2G9lF-``c`GXt$TBpU!^t>;>ww3rQFtj!x5zIdIz$cQ~(y;g@%0SV{^?21uoJoG@ZXq
zg}QdWvV3606%7r|fj?oSl)KiJss;hdwUMt~L}@9%KwEshB?9ri;D-wJDd7fUvFH~(eE1xK-CATyAo@o^|mFPY;3Pl3)5|RcLAfs
z4#_rlKiV!by-k(J1wzx8+(k;f|%;8gHmnm
z(YZEdRpMVG2U`$ehjqr7wX%6K58k)4_KkrAKU#I*_g`~G5It_Yz2
z*T7W_3?j6-O)z+PRWNTU!udEx?+aWzb;y$=sw3rjx!!
z1I+Ov)ZuG8^KwcY7t)_XVFF^RNo;8INJfbK;kVMJmTfM;oGT6&-3kU*0Q(V6
znnK|fWCk@M{M1%4R?U`o53>?k_YS#I1;-m3|#W5
zYK%r4vGgB8&SCy)!IWz$`?=?{;2bygS%m>R>2$*cS2kTmh!tcNz+L>Z|IS8$>46P=
zA~Z!0el&P1tb4{7h?s8`GX6>4JWuof?#Cd#g()PXqoYmO;E%MJiGZs-GcyBO#zlu2
z7yjsWuhhrJ&A=B+e%okRsG}X{-O|v22JB@r9AGg2;sc=mpN^5_pRK}sIF>&Rz#2fM
zL?1nxFKe5gl05f`T3WErT~5Au1vK;^zLr&c`}f(Ikn;sx;%2XpFl>oZ)X>HwxntHwcL2-Y9PA;j^BWPkwO6D;W{#jJp
zSyJ1X3S%@MU?+bwRl-yM>CAl0j^meMkKNa##XonOY65^Kvm_LDVb37zkU>B@@8}{)
z=N@TpI79lO9E&Ys?0i_N#lyb28QNd
zSmmQNCJ1B-Q1wczAG;W5)Nklwfjp;
zkj16@N(6!FhHnA-m4F3hW#yRw^U<0XY>`7sXlNkP+lOM6gLlLIO<|`paJLl`kaZxL#9z
zeBcSNeU4A*y|Sotm~t|+K`X8MM2{(7^B@!p3n=NTs=AH9c>r@sQL!VI%X6P7Cs2+D
ztQ-fD`*4gvQQ*5vNJ`!cLgtF6g17`58(#owWpZiKSwMPunN37cwlpJtCkzLBcvu%i
zmQ0Fu*gy=(uw?lEhhFtUFF=@gImjd^WP~!=c}Fy)KLDYEnHd_MK3*Vnbhs5J0r>*9
zMSS?eY7OL{HeMKCgSR&4jC+uk47Vx+)Ofh0iP6Igq}jTbZ32+_syG~SQ~GVQ1U2f`
z0LyWsRbB^aba;5g*3;8BxpmOAyvE7P8``)u1H|ol0k9piva*Z}4X@<%Hn;TPJ038j
z#SBY3(bs{H(O`=(;4?bILwpLV1+i79q4bz?LJ)J2sPr#qRAKV+$B({#{fcL4Lle`=
z!TDGo@UWsHM{F8Br2VNVh0O{XwJHO-yqqCI`+VU~xt5=2-$2WTIv7Qoa!CK{DZLZQ
z%Dv8AEernI#b(AY&wZjB8YJG8OKWI;0ILi5L{Wp|=C-y($ODiJDt3D-m*&pJ?$-*P
z>0PS`A6~i80lbg?X{($LGn?j`eaaLf&I{m7niL80VEOl$)Wi+XiYF}Bb%M>iWIj6H
zE33RP!zk;rptD~VZ
z5d=uFS(E!8Q7VvN`J30mY65a5pu^uIB}qvxymf(3>J|)VZvbFSE1sNJOc;c0>o(=k
z)<{(bAAx;17u`O0u)``c%?2NZwQGv&dI|beQ-GqFGPSJD4CTDMyA5^v_$RdRw5ohu
za0Ub)sq5nPs~m&O1~71Ba