New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details
Socket
Book a DemoSign in
Socket

@govuk-react/table

Package Overview
Dependencies
Maintainers
5
Versions
31
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@govuk-react/table - npm Package Compare versions

Comparing version
0.9.1
to
0.10.0
+2
dist/declarations/src/atoms/Caption/index.d.ts
declare const Caption: import("styled-components").StyledComponent<"caption", any, {}, never>;
export default Caption;
/// <reference types="react" />
import type { WithWidthProps } from '@govuk-react/lib';
declare const Cell: import("styled-components").StyledComponent<"td", any, CellProps, never>;
interface CellProps extends React.HTMLAttributes<HTMLTableCellElement>, WithWidthProps {
alignRight?: boolean;
isHeader?: boolean;
numeric?: boolean;
bold?: boolean;
}
export default Cell;
import * as React from 'react';
import Cell from '../Cell';
declare const CellHeader: React.FC<React.ComponentProps<typeof Cell>>;
export default CellHeader;
declare const Row: import("styled-components").StyledComponent<"tr", any, {}, never>;
export default Row;
declare const TableBody: import("styled-components").StyledComponent<"tbody", any, {}, never>;
export default TableBody;
declare const TableHeader: import("styled-components").StyledComponent<"thead", any, {}, never>;
export default TableHeader;
/**
* ### References:
*
* - https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
*/
import * as React from 'react';
import TableHeader from './atoms/TableHeader';
import CellHeader from './atoms/CellHeader';
import Cell from './atoms/Cell';
import Row from './atoms/Row';
/**
* Use the table component to make information easier to compare and scan for users.
*
* - https://govuk-react.github.io/govuk-react/?path=/docs/table
* - https://design-system.service.gov.uk/components/table/
*/
export declare const Table: TableType;
export interface TableType extends React.FC<TableProps> {
CellHeader: typeof CellHeader;
Row: typeof Row;
Cell: typeof Cell;
Header: typeof TableHeader;
}
export interface TableProps {
/** Table body rows and cells (for backward compatibility) */
body?: React.ReactNode;
/** Table body rows and cells (recommended way) */
children?: React.ReactNode;
/** Table header rows and cells */
head?: React.ReactNode;
/** Table caption title */
caption?: string;
}
export default Table;
export * from "./declarations/src/index";
export { default } from "./declarations/src/index";
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var React = require('react');
var styled = require('styled-components');
var lib = require('@govuk-react/lib');
var constants = require('@govuk-react/constants');
var govukColours = require('govuk-colours');
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
function _interopNamespace(e) {
if (e && e.__esModule) return e;
var n = Object.create(null);
if (e) {
Object.keys(e).forEach(function (k) {
if (k !== 'default') {
var d = Object.getOwnPropertyDescriptor(e, k);
Object.defineProperty(n, k, d.get ? d : {
enumerable: true,
get: function () { return e[k]; }
});
}
});
}
n["default"] = e;
return Object.freeze(n);
}
var React__namespace = /*#__PURE__*/_interopNamespace(React);
var styled__default = /*#__PURE__*/_interopDefault(styled);
function _objectWithoutPropertiesLoose(source, excluded) {
if (source == null) return {};
var target = {};
var sourceKeys = Object.keys(source);
var key, i;
for (i = 0; i < sourceKeys.length; i++) {
key = sourceKeys[i];
if (excluded.indexOf(key) >= 0) continue;
target[key] = source[key];
}
return target;
}
function _objectWithoutProperties(source, excluded) {
if (source == null) return {};
var target = _objectWithoutPropertiesLoose(source, excluded);
var key, i;
if (Object.getOwnPropertySymbols) {
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
for (i = 0; i < sourceSymbolKeys.length; i++) {
key = sourceSymbolKeys[i];
if (excluded.indexOf(key) >= 0) continue;
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
target[key] = source[key];
}
}
return target;
}
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var TableHeader = styled__default["default"]('thead').withConfig({
displayName: "TableHeader",
componentId: "sc-1n1nw4b-0"
})({});
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var TableBody = styled__default["default"]('tbody').withConfig({
displayName: "TableBody",
componentId: "sc-1qqarm8-0"
})({});
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var Caption = styled__default["default"]('caption').withConfig({
displayName: "Caption",
componentId: "sc-pvwfz5-0"
})({
fontWeight: Number(constants.FONT_WEIGHTS.bold),
display: 'table-caption',
textAlign: 'left'
});
function _extends() {
_extends = Object.assign || function (target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i];
for (var key in source) {
if (Object.prototype.hasOwnProperty.call(source, key)) {
target[key] = source[key];
}
}
}
return target;
};
return _extends.apply(this, arguments);
}
var Cell = styled__default["default"]('td').withConfig({
displayName: "Cell",
componentId: "sc-msv0l6-0"
})(function (_ref) {
var numeric = _ref.numeric,
_ref$alignRight = _ref.alignRight,
alignRight = _ref$alignRight === void 0 ? numeric : _ref$alignRight,
bold = _ref.bold;
return {
padding: "".concat(constants.SPACING_POINTS[2], "px ").concat(constants.SPACING_POINTS[4], "px ").concat(constants.SPACING_POINTS[2], "px 0"),
borderBottom: "1px solid ".concat(govukColours.BORDER_COLOUR),
textAlign: alignRight ? 'right' : 'left',
fontWeight: bold ? Number(constants.FONT_WEIGHTS.bold) : undefined,
':last-child': {
paddingRight: 0
}
};
}, function (_ref2) {
var numeric = _ref2.numeric,
isHeader = _ref2.isHeader;
return numeric && !isHeader ? lib.typography.font({
tabular: true
}) : undefined;
}, lib.spacing.withWidth());
var CellHeader = function CellHeader(props) {
return /*#__PURE__*/React__namespace.createElement(Cell, _extends({
as: "th",
bold: true,
isHeader: true
}, props));
};
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var Row = styled__default["default"]('tr').withConfig({
displayName: "Row",
componentId: "sc-1y8eqfp-0"
})({});
var _excluded = ["caption", "children", "body", "head"];
var StyledTable = styled__default["default"]('table').withConfig({
displayName: "src__StyledTable",
componentId: "sc-16s660v-0"
})(lib.typography.font({
size: 19
}), lib.typography.textColour, {
width: '100%',
borderSpacing: 0,
borderCollapse: 'collapse'
}, lib.spacing.withWhiteSpace({
marginBottom: 6
}));
/**
* Use the table component to make information easier to compare and scan for users.
*
* - https://govuk-react.github.io/govuk-react/?path=/docs/table
* - https://design-system.service.gov.uk/components/table/
*/
var Table = function Table(_ref) {
var caption = _ref.caption,
children = _ref.children,
_ref$body = _ref.body,
body = _ref$body === void 0 ? children : _ref$body,
head = _ref.head,
props = _objectWithoutProperties(_ref, _excluded);
return /*#__PURE__*/React__namespace.createElement(StyledTable, props, caption && /*#__PURE__*/React__namespace.createElement(Caption, null, caption), head && /*#__PURE__*/React__namespace.createElement(TableHeader, null, head), /*#__PURE__*/React__namespace.createElement(TableBody, null, body));
};
Table.defaultProps = {
body: undefined,
caption: undefined,
children: undefined,
head: undefined
};
Table.displayName = 'Table';
Table.CellHeader = CellHeader;
Table.Row = Row;
Table.Cell = Cell;
Table.Header = TableHeader;
exports.Table = Table;
exports["default"] = Table;
'use strict';
if (process.env.NODE_ENV === "production") {
module.exports = require("./govuk-react-table.cjs.prod.js");
} else {
module.exports = require("./govuk-react-table.cjs.dev.js");
}
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var React = require('react');
var styled = require('styled-components');
var lib = require('@govuk-react/lib');
var constants = require('@govuk-react/constants');
var govukColours = require('govuk-colours');
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
function _interopNamespace(e) {
if (e && e.__esModule) return e;
var n = Object.create(null);
if (e) {
Object.keys(e).forEach(function (k) {
if (k !== 'default') {
var d = Object.getOwnPropertyDescriptor(e, k);
Object.defineProperty(n, k, d.get ? d : {
enumerable: true,
get: function () { return e[k]; }
});
}
});
}
n["default"] = e;
return Object.freeze(n);
}
var React__namespace = /*#__PURE__*/_interopNamespace(React);
var styled__default = /*#__PURE__*/_interopDefault(styled);
function _objectWithoutPropertiesLoose(source, excluded) {
if (source == null) return {};
var target = {};
var sourceKeys = Object.keys(source);
var key, i;
for (i = 0; i < sourceKeys.length; i++) {
key = sourceKeys[i];
if (excluded.indexOf(key) >= 0) continue;
target[key] = source[key];
}
return target;
}
function _objectWithoutProperties(source, excluded) {
if (source == null) return {};
var target = _objectWithoutPropertiesLoose(source, excluded);
var key, i;
if (Object.getOwnPropertySymbols) {
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
for (i = 0; i < sourceSymbolKeys.length; i++) {
key = sourceSymbolKeys[i];
if (excluded.indexOf(key) >= 0) continue;
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
target[key] = source[key];
}
}
return target;
}
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var TableHeader = styled__default["default"]('thead').withConfig({
displayName: "TableHeader",
componentId: "sc-1n1nw4b-0"
})({});
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var TableBody = styled__default["default"]('tbody').withConfig({
displayName: "TableBody",
componentId: "sc-1qqarm8-0"
})({});
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var Caption = styled__default["default"]('caption').withConfig({
displayName: "Caption",
componentId: "sc-pvwfz5-0"
})({
fontWeight: Number(constants.FONT_WEIGHTS.bold),
display: 'table-caption',
textAlign: 'left'
});
function _extends() {
_extends = Object.assign || function (target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i];
for (var key in source) {
if (Object.prototype.hasOwnProperty.call(source, key)) {
target[key] = source[key];
}
}
}
return target;
};
return _extends.apply(this, arguments);
}
var Cell = styled__default["default"]('td').withConfig({
displayName: "Cell",
componentId: "sc-msv0l6-0"
})(function (_ref) {
var numeric = _ref.numeric,
_ref$alignRight = _ref.alignRight,
alignRight = _ref$alignRight === void 0 ? numeric : _ref$alignRight,
bold = _ref.bold;
return {
padding: "".concat(constants.SPACING_POINTS[2], "px ").concat(constants.SPACING_POINTS[4], "px ").concat(constants.SPACING_POINTS[2], "px 0"),
borderBottom: "1px solid ".concat(govukColours.BORDER_COLOUR),
textAlign: alignRight ? 'right' : 'left',
fontWeight: bold ? Number(constants.FONT_WEIGHTS.bold) : undefined,
':last-child': {
paddingRight: 0
}
};
}, function (_ref2) {
var numeric = _ref2.numeric,
isHeader = _ref2.isHeader;
return numeric && !isHeader ? lib.typography.font({
tabular: true
}) : undefined;
}, lib.spacing.withWidth());
var CellHeader = function CellHeader(props) {
return /*#__PURE__*/React__namespace.createElement(Cell, _extends({
as: "th",
bold: true,
isHeader: true
}, props));
};
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var Row = styled__default["default"]('tr').withConfig({
displayName: "Row",
componentId: "sc-1y8eqfp-0"
})({});
var _excluded = ["caption", "children", "body", "head"];
var StyledTable = styled__default["default"]('table').withConfig({
displayName: "src__StyledTable",
componentId: "sc-16s660v-0"
})(lib.typography.font({
size: 19
}), lib.typography.textColour, {
width: '100%',
borderSpacing: 0,
borderCollapse: 'collapse'
}, lib.spacing.withWhiteSpace({
marginBottom: 6
}));
/**
* Use the table component to make information easier to compare and scan for users.
*
* - https://govuk-react.github.io/govuk-react/?path=/docs/table
* - https://design-system.service.gov.uk/components/table/
*/
var Table = function Table(_ref) {
var caption = _ref.caption,
children = _ref.children,
_ref$body = _ref.body,
body = _ref$body === void 0 ? children : _ref$body,
head = _ref.head,
props = _objectWithoutProperties(_ref, _excluded);
return /*#__PURE__*/React__namespace.createElement(StyledTable, props, caption && /*#__PURE__*/React__namespace.createElement(Caption, null, caption), head && /*#__PURE__*/React__namespace.createElement(TableHeader, null, head), /*#__PURE__*/React__namespace.createElement(TableBody, null, body));
};
Table.defaultProps = {
body: undefined,
caption: undefined,
children: undefined,
head: undefined
};
Table.displayName = 'Table';
Table.CellHeader = CellHeader;
Table.Row = Row;
Table.Cell = Cell;
Table.Header = TableHeader;
exports.Table = Table;
exports["default"] = Table;
import * as React from 'react';
import styled from 'styled-components';
import { typography, spacing } from '@govuk-react/lib';
import { FONT_WEIGHTS, SPACING_POINTS } from '@govuk-react/constants';
import { BORDER_COLOUR } from 'govuk-colours';
function _objectWithoutPropertiesLoose(source, excluded) {
if (source == null) return {};
var target = {};
var sourceKeys = Object.keys(source);
var key, i;
for (i = 0; i < sourceKeys.length; i++) {
key = sourceKeys[i];
if (excluded.indexOf(key) >= 0) continue;
target[key] = source[key];
}
return target;
}
function _objectWithoutProperties(source, excluded) {
if (source == null) return {};
var target = _objectWithoutPropertiesLoose(source, excluded);
var key, i;
if (Object.getOwnPropertySymbols) {
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
for (i = 0; i < sourceSymbolKeys.length; i++) {
key = sourceSymbolKeys[i];
if (excluded.indexOf(key) >= 0) continue;
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
target[key] = source[key];
}
}
return target;
}
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var TableHeader = styled('thead').withConfig({
displayName: "TableHeader",
componentId: "sc-1n1nw4b-0"
})({});
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var TableBody = styled('tbody').withConfig({
displayName: "TableBody",
componentId: "sc-1qqarm8-0"
})({});
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var Caption = styled('caption').withConfig({
displayName: "Caption",
componentId: "sc-pvwfz5-0"
})({
fontWeight: Number(FONT_WEIGHTS.bold),
display: 'table-caption',
textAlign: 'left'
});
function _extends() {
_extends = Object.assign || function (target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i];
for (var key in source) {
if (Object.prototype.hasOwnProperty.call(source, key)) {
target[key] = source[key];
}
}
}
return target;
};
return _extends.apply(this, arguments);
}
var Cell = styled('td').withConfig({
displayName: "Cell",
componentId: "sc-msv0l6-0"
})(function (_ref) {
var numeric = _ref.numeric,
_ref$alignRight = _ref.alignRight,
alignRight = _ref$alignRight === void 0 ? numeric : _ref$alignRight,
bold = _ref.bold;
return {
padding: "".concat(SPACING_POINTS[2], "px ").concat(SPACING_POINTS[4], "px ").concat(SPACING_POINTS[2], "px 0"),
borderBottom: "1px solid ".concat(BORDER_COLOUR),
textAlign: alignRight ? 'right' : 'left',
fontWeight: bold ? Number(FONT_WEIGHTS.bold) : undefined,
':last-child': {
paddingRight: 0
}
};
}, function (_ref2) {
var numeric = _ref2.numeric,
isHeader = _ref2.isHeader;
return numeric && !isHeader ? typography.font({
tabular: true
}) : undefined;
}, spacing.withWidth());
var CellHeader = function CellHeader(props) {
return /*#__PURE__*/React.createElement(Cell, _extends({
as: "th",
bold: true,
isHeader: true
}, props));
};
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var Row = styled('tr').withConfig({
displayName: "Row",
componentId: "sc-1y8eqfp-0"
})({});
var _excluded = ["caption", "children", "body", "head"];
var StyledTable = styled('table').withConfig({
displayName: "src__StyledTable",
componentId: "sc-16s660v-0"
})(typography.font({
size: 19
}), typography.textColour, {
width: '100%',
borderSpacing: 0,
borderCollapse: 'collapse'
}, spacing.withWhiteSpace({
marginBottom: 6
}));
/**
* Use the table component to make information easier to compare and scan for users.
*
* - https://govuk-react.github.io/govuk-react/?path=/docs/table
* - https://design-system.service.gov.uk/components/table/
*/
var Table = function Table(_ref) {
var caption = _ref.caption,
children = _ref.children,
_ref$body = _ref.body,
body = _ref$body === void 0 ? children : _ref$body,
head = _ref.head,
props = _objectWithoutProperties(_ref, _excluded);
return /*#__PURE__*/React.createElement(StyledTable, props, caption && /*#__PURE__*/React.createElement(Caption, null, caption), head && /*#__PURE__*/React.createElement(TableHeader, null, head), /*#__PURE__*/React.createElement(TableBody, null, body));
};
Table.defaultProps = {
body: undefined,
caption: undefined,
children: undefined,
head: undefined
};
Table.displayName = 'Table';
Table.CellHeader = CellHeader;
Table.Row = Row;
Table.Cell = Cell;
Table.Header = TableHeader;
export { Table, Table as default };
+8
-10
{
"name": "@govuk-react/table",
"version": "0.9.1",
"version": "0.10.0",
"dependencies": {
"@govuk-react/constants": "^0.9.1",
"@govuk-react/lib": "^0.9.1",
"@govuk-react/constants": "^0.10.0",
"@govuk-react/lib": "^0.10.0",
"govuk-colours": "^1.1.0"

@@ -14,9 +14,8 @@ },

"scripts": {
"build": "yarn build:lib && yarn build:es",
"build:lib": "rimraf lib && babel src -x .js,jsx,.ts,.tsx -d lib --source-maps --config-file ../../babel.config.js",
"build:es": "rimraf es && cross-env BABEL_ENV=es babel src -x .js,jsx,.ts,.tsx -d es --source-maps --config-file ../../babel.config.js",
"docs": "doc-component ./lib/index.js ./README.md"
"docs": "doc-component ./src/index.tsx ./README.md",
"version": "yarn version"
},
"main": "lib/index.js",
"module": "es/index.js",
"main": "dist/govuk-react-table.cjs.js",
"module": "dist/govuk-react-table.esm.js",
"source": "src/index.tsx",
"author": "Alasdair McLeay",

@@ -26,3 +25,2 @@ "license": "MIT",

"description": "A styled table supporting a 'construction kit' approach and rendering children as constituent parts.",
"private": false,
"publishConfig": {

@@ -29,0 +27,0 @@ "access": "public"

@@ -10,102 +10,15 @@ Table

### Usage
Use the table component to make information easier to compare and scan for users.
The Table component provides a construction kit of elements to create a table
- https://govuk-react.github.io/govuk-react/?path=/docs/table
- https://design-system.service.gov.uk/components/table/
Component default
```jsx
import { Table } from 'govuk-react'
<Table caption="Dates and amounts">
<Table.Row>
<Table.CellHeader>First 6 weeks</Table.CellHeader>
<Table.Cell>£109.80 per week</Table.Cell>
</Table.Row>
<Table.Row>
<Table.CellHeader>Next 33 weeks</Table.CellHeader>
<Table.Cell>£109.80 per week</Table.Cell>
</Table.Row>
<Table.Row>
<Table.CellHeader>Total estimated pay</Table.CellHeader>
<Table.Cell>£4,282.20</Table.Cell>
</Table.Row>
<Table.Row>
<Table.CellHeader>Tell the mother&rsquo;s employer</Table.CellHeader>
<Table.Cell>28 days before they want to start maternity pay</Table.Cell>
</Table.Row>
</Table>
```
Numeric tabular data
```jsx
const example2Head = (
<Table.Row>
<Table.CellHeader>Month you apply</Table.CellHeader>
<Table.CellHeader numeric>Rate for vehicles</Table.CellHeader>
<Table.CellHeader numeric>Rate for bicycles</Table.CellHeader>
</Table.Row>
);
<Table
caption="Attention, I am the caption of this ship!"
head={example2Head}
>
<Table.Row>
<Table.CellHeader>January</Table.CellHeader>
<Table.Cell numeric>£165.00</Table.Cell>
<Table.Cell numeric>£85.00</Table.Cell>
</Table.Row>
<Table.Row>
<Table.CellHeader>February</Table.CellHeader>
<Table.Cell numeric>£165.00</Table.Cell>
<Table.Cell numeric>£85.00</Table.Cell>
</Table.Row>
<Table.Row>
<Table.CellHeader>March</Table.CellHeader>
<Table.Cell numeric>£151.00</Table.Cell>
<Table.Cell numeric>£77.00</Table.Cell>
</Table.Row>
<Table.Row>
<Table.CellHeader>April</Table.CellHeader>
<Table.Cell numeric>£136.00</Table.Cell>
<Table.Cell numeric>£70.00</Table.Cell>
</Table.Row>
</Table>
```
Setting custom column widths
```jsx
<Table
caption="Custom header"
head={
<Table.Row>
<Table.CellHeader setWidth="one-half>Wide header</Table.CellHeader>
<Table.CellHeader setWidth="30%">Regular</Table.CellHeader>
<Table.CellHeader>Normal</Table.CellHeader>
</Table.Row>
}
>
<Table.Row>
<Table.Cell>Header makes this column one-half wide</Table.Cell>
<Table.Cell>And this one 30%</Table.Cell>
<Table.Cell>Another</Table.Cell>
</Table.Row>
</Table>
```
### References:
- https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
### Properties
Prop | Required | Default | Type | Description
:--- | :------- | :------ | :--- | :----------
`body` | | ```undefined``` | node | Table body rows and cells (for backward compatibility)
`body` | | ```undefined``` | ReactNode | Table body rows and cells (for backward compatibility)
`caption` | | ```undefined``` | string | Table caption title
`children` | | ```undefined``` | node | Table body rows and cells (recommended way)
`head` | | ```undefined``` | node | Table header rows and cells
`children` | | ```undefined``` | ReactNode | Table body rows and cells (recommended way)
`head` | | ```undefined``` | ReactNode | Table header rows and cells

@@ -7,3 +7,3 @@ // https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss

const Caption = styled('caption')({
fontWeight: FONT_WEIGHTS.bold,
fontWeight: Number(FONT_WEIGHTS.bold),
display: 'table-caption',

@@ -10,0 +10,0 @@ textAlign: 'left',

@@ -1,2 +0,2 @@

import React from 'react';
import * as React from 'react';
import { mount } from 'enzyme';

@@ -3,0 +3,0 @@

@@ -1,4 +0,3 @@

// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
import type { WithWidthProps } from '@govuk-react/lib';
import PropTypes from 'prop-types';
import styled from 'styled-components';

@@ -9,3 +8,3 @@ import { BORDER_COLOUR } from 'govuk-colours';

const Cell = styled('td')(
const Cell = styled('td')<CellProps>(
({ numeric, alignRight = numeric, bold }) => ({

@@ -15,3 +14,3 @@ padding: `${SPACING_POINTS[2]}px ${SPACING_POINTS[4]}px ${SPACING_POINTS[2]}px 0`,

textAlign: alignRight ? 'right' : 'left',
fontWeight: bold ? FONT_WEIGHTS.bold : undefined,
fontWeight: bold ? Number(FONT_WEIGHTS.bold) : undefined,
':last-child': {

@@ -24,10 +23,9 @@ paddingRight: 0,

);
interface CellProps extends React.HTMLAttributes<HTMLTableCellElement>, WithWidthProps {
alignRight?: boolean;
isHeader?: boolean;
numeric?: boolean;
bold?: boolean;
}
Cell.propTypes = {
alignRight: PropTypes.bool,
children: PropTypes.node.isRequired,
isHeader: PropTypes.bool,
numeric: PropTypes.bool,
};
export default Cell;

@@ -1,2 +0,2 @@

import React from 'react';
import * as React from 'react';
import { mount } from 'enzyme';

@@ -3,0 +3,0 @@

// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
import React from 'react';
import * as React from 'react';
import Cell from '../Cell';
const CellHeader = (props) => <Cell as="th" bold isHeader {...props} />;
const CellHeader: React.FC<React.ComponentProps<typeof Cell>> = (props) => <Cell as="th" bold isHeader {...props} />;
export default CellHeader;

@@ -1,2 +0,2 @@

import React from 'react';
import * as React from 'react';
import { mount } from 'enzyme';

@@ -3,0 +3,0 @@

@@ -1,2 +0,2 @@

import React from 'react';
import * as React from 'react';
import { mount } from 'enzyme';

@@ -3,0 +3,0 @@

@@ -1,2 +0,2 @@

import React from 'react';
import * as React from 'react';
import { mount } from 'enzyme';

@@ -3,0 +3,0 @@

@@ -1,2 +0,2 @@

import React from 'react';
import * as React from 'react';
import { mount } from 'enzyme';

@@ -3,0 +3,0 @@

@@ -1,6 +0,6 @@

import React from 'react';
import * as React from 'react';
import Table from '.';
import { Table } from '.';
const TableSimple = () => (
const TableSimple: React.FC = () => (
<Table>

@@ -26,3 +26,3 @@ <Table.Row>

const TableWithCaption = () => (
const TableWithCaption: React.FC = () => (
<Table

@@ -57,3 +57,3 @@ caption="Dates and amounts"

const TableWithHeadAndNumerics = () => (
const TableWithHeadAndNumerics: React.FC = () => (
<Table caption="Attention, I am the caption of this ship!" head={exampleHead}>

@@ -83,3 +83,3 @@ <Table.Row>

const TableThreeQuartersOneQuarter = () => (
const TableThreeQuartersOneQuarter: React.FC = () => (
<Table

@@ -101,3 +101,3 @@ caption="Three quarters, one quarter"

const TableWithCustomWidths = () => (
const TableWithCustomWidths: React.FC = () => (
<Table

@@ -104,0 +104,0 @@ caption="Custom widths"

@@ -1,5 +0,7 @@

// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
import React from 'react';
import PropTypes from 'prop-types';
/**
* ### References:
*
* - https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
*/
import * as React from 'react';
import styled from 'styled-components';

@@ -28,97 +30,8 @@ import { spacing, typography } from '@govuk-react/lib';

/**
* Use the table component to make information easier to compare and scan for users.
*
* ### Usage
*
* The Table component provides a construction kit of elements to create a table
*
* Component default
*
* ```jsx
* import { Table } from 'govuk-react'
*
* <Table caption="Dates and amounts">
* <Table.Row>
* <Table.CellHeader>First 6 weeks</Table.CellHeader>
* <Table.Cell>£109.80 per week</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>Next 33 weeks</Table.CellHeader>
* <Table.Cell>£109.80 per week</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>Total estimated pay</Table.CellHeader>
* <Table.Cell>£4,282.20</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>Tell the mother&rsquo;s employer</Table.CellHeader>
* <Table.Cell>28 days before they want to start maternity pay</Table.Cell>
* </Table.Row>
* </Table>
* ```
*
* Numeric tabular data
*
* ```jsx
* const example2Head = (
* <Table.Row>
* <Table.CellHeader>Month you apply</Table.CellHeader>
* <Table.CellHeader numeric>Rate for vehicles</Table.CellHeader>
* <Table.CellHeader numeric>Rate for bicycles</Table.CellHeader>
* </Table.Row>
* );
*
* <Table
* caption="Attention, I am the caption of this ship!"
* head={example2Head}
* >
* <Table.Row>
* <Table.CellHeader>January</Table.CellHeader>
* <Table.Cell numeric>£165.00</Table.Cell>
* <Table.Cell numeric>£85.00</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>February</Table.CellHeader>
* <Table.Cell numeric>£165.00</Table.Cell>
* <Table.Cell numeric>£85.00</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>March</Table.CellHeader>
* <Table.Cell numeric>£151.00</Table.Cell>
* <Table.Cell numeric>£77.00</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>April</Table.CellHeader>
* <Table.Cell numeric>£136.00</Table.Cell>
* <Table.Cell numeric>£70.00</Table.Cell>
* </Table.Row>
* </Table>
* ```
*
* Setting custom column widths
*
* ```jsx
* <Table
* caption="Custom header"
* head={
* <Table.Row>
* <Table.CellHeader setWidth="one-half>Wide header</Table.CellHeader>
* <Table.CellHeader setWidth="30%">Regular</Table.CellHeader>
* <Table.CellHeader>Normal</Table.CellHeader>
* </Table.Row>
* }
* >
* <Table.Row>
* <Table.Cell>Header makes this column one-half wide</Table.Cell>
* <Table.Cell>And this one 30%</Table.Cell>
* <Table.Cell>Another</Table.Cell>
* </Table.Row>
* </Table>
* ```
*
* ### References:
*
* - https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
*
* - https://govuk-react.github.io/govuk-react/?path=/docs/table
* - https://design-system.service.gov.uk/components/table/
*/
const Table = ({ caption, children, body = children, head, ...props }) => (
export const Table: TableType = ({ caption, children, body = children, head, ...props }: TableProps) => (
<StyledTable {...props}>

@@ -138,12 +51,20 @@ {caption && <Caption>{caption}</Caption>}

Table.propTypes = {
Table.displayName = 'Table';
export interface TableType extends React.FC<TableProps> {
CellHeader: typeof CellHeader;
Row: typeof Row;
Cell: typeof Cell;
Header: typeof TableHeader;
}
export interface TableProps {
/** Table body rows and cells (for backward compatibility) */
body: PropTypes.node,
body?: React.ReactNode;
/** Table body rows and cells (recommended way) */
children: PropTypes.node,
children?: React.ReactNode;
/** Table header rows and cells */
head: PropTypes.node,
head?: React.ReactNode;
/** Table caption title */
caption: PropTypes.string,
};
caption?: string;
}

@@ -153,4 +74,4 @@ Table.CellHeader = CellHeader;

Table.Cell = Cell;
Table.Header = CellHeader;
Table.Header = TableHeader;
export default Table;

@@ -1,22 +0,124 @@

import React from 'react';
import type { Story } from '@storybook/react';
import Table from '.';
import * as React from 'react';
import {
TableSimple,
TableWithCaption,
TableWithHeadAndNumerics,
TableWithCustomWidths,
TableThreeQuartersOneQuarter,
} from './fixtures';
import { Table } from '.';
export default {
title: 'Typography/Table',
id: 'table',
component: Table,
};
export const Default = () => <TableSimple />;
export const WithACaption = () => <TableWithCaption />;
export const WithAHeadRowAndNumericTabularData = () => <TableWithHeadAndNumerics />;
export const WithAThreeQuarterWidthColumnAndOneQuarter = () => <TableThreeQuartersOneQuarter />;
export const WithCustomColumnWidths = () => <TableWithCustomWidths />;
const Template: Story<React.ComponentProps<typeof Table>> = (args) => <Table {...args} />;
export const Default = Template.bind({});
Default.args = {
children: [
<Table.Row>
<Table.CellHeader>First 6 weeks</Table.CellHeader>
<Table.Cell>£109.80 per week</Table.Cell>
</Table.Row>,
<Table.Row>
<Table.CellHeader>Next 33 weeks</Table.CellHeader>
<Table.Cell>£109.80 per week</Table.Cell>
</Table.Row>,
<Table.Row>
<Table.CellHeader>Total estimated pay</Table.CellHeader>
<Table.Cell>£4,282.20</Table.Cell>
</Table.Row>,
<Table.Row>
<Table.CellHeader>Tell the mother&rsquo;s employer</Table.CellHeader>
<Table.Cell>28 days before they want to start maternity pay</Table.Cell>
</Table.Row>,
],
};
export const WithACaption = Template.bind({});
WithACaption.args = {
caption: 'Dates and amounts',
children: [
<Table.Row>
<Table.CellHeader>First 6 weeks</Table.CellHeader>
<Table.Cell>£109.80 per week</Table.Cell>
</Table.Row>,
<Table.Row>
<Table.CellHeader>Next 33 weeks</Table.CellHeader>
<Table.Cell>£109.80 per week</Table.Cell>
</Table.Row>,
<Table.Row>
<Table.CellHeader>Total estimated pay</Table.CellHeader>
<Table.Cell>£4,282.20</Table.Cell>
</Table.Row>,
],
};
export const WithAHeadRowAndNumericTabularData = Template.bind({});
WithAHeadRowAndNumericTabularData.args = {
caption: 'Attention, I am the caption of this ship!',
head: (
<Table.Row>
<Table.CellHeader>Month you apply</Table.CellHeader>
<Table.CellHeader numeric>Rate for vehicles</Table.CellHeader>
<Table.CellHeader numeric>Rate for bicycles</Table.CellHeader>
</Table.Row>
),
children: [
<Table.Row>
<Table.CellHeader>January</Table.CellHeader>
<Table.Cell numeric>£165.00</Table.Cell>
<Table.Cell numeric>£85.00</Table.Cell>
</Table.Row>,
<Table.Row>
<Table.CellHeader>February</Table.CellHeader>
<Table.Cell numeric>£165.00</Table.Cell>
<Table.Cell numeric>£85.00</Table.Cell>
</Table.Row>,
<Table.Row>
<Table.CellHeader>March</Table.CellHeader>
<Table.Cell numeric>£151.00</Table.Cell>
<Table.Cell numeric>£77.00</Table.Cell>
</Table.Row>,
<Table.Row>
<Table.CellHeader>April</Table.CellHeader>
<Table.Cell numeric>£136.00</Table.Cell>
<Table.Cell numeric>£70.00</Table.Cell>
</Table.Row>,
],
};
export const WithAThreeQuarterWidthColumnAndOneQuarter = Template.bind({});
WithAThreeQuarterWidthColumnAndOneQuarter.args = {
caption: 'Three quarters, one quarter',
head: (
<Table.Row>
<Table.CellHeader setWidth="three-quarters">three-quarters</Table.CellHeader>
<Table.CellHeader setWidth="one-quarter">one-quarter</Table.CellHeader>
</Table.Row>
),
children: (
<Table.Row>
<Table.Cell>Column uses setWidth=&quot;three-quarters&quot; in header</Table.Cell>
<Table.Cell>setWidth=&quot;one-quarter&quot;</Table.Cell>
</Table.Row>
),
};
export const WithCustomColumnWidths = Template.bind({});
WithCustomColumnWidths.args = {
caption: 'Custom widths',
head: (
<Table.Row>
<Table.CellHeader setWidth="one-half">one-half</Table.CellHeader>
<Table.CellHeader setWidth="22%">22%</Table.CellHeader>
<Table.CellHeader>Normal</Table.CellHeader>
</Table.Row>
),
children: (
<Table.Row>
<Table.Cell>Column uses setWidth=&quot;one-half&quot; in header</Table.Cell>
<Table.Cell>setWidth=&quot;22%&quot;</Table.Cell>
<Table.Cell>Not specified</Table.Cell>
</Table.Row>
),
};

@@ -1,2 +0,2 @@

import React from 'react';
import * as React from 'react';
import { mount } from 'enzyme';

@@ -3,0 +3,0 @@

// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
import styled from 'styled-components';
import { FONT_WEIGHTS } from '@govuk-react/constants';
var Caption = styled('caption').withConfig({
displayName: "Caption",
componentId: "pvwfz5-0"
})({
fontWeight: FONT_WEIGHTS.bold,
display: 'table-caption',
textAlign: 'left'
});
export default Caption;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../../../src/atoms/Caption/index.tsx"],"names":["styled","FONT_WEIGHTS","Caption","fontWeight","bold","display","textAlign"],"mappings":"AAAA;AAEA,OAAOA,MAAP,MAAmB,mBAAnB;AACA,SAASC,YAAT,QAA6B,wBAA7B;AAEA,IAAMC,OAAO,GAAGF,MAAM,CAAC,SAAD,CAAT;AAAA;AAAA;AAAA,GAAqB;AAChCG,EAAAA,UAAU,EAAEF,YAAY,CAACG,IADO;AAEhCC,EAAAA,OAAO,EAAE,eAFuB;AAGhCC,EAAAA,SAAS,EAAE;AAHqB,CAArB,CAAb;AAMA,eAAeJ,OAAf","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport styled from 'styled-components';\nimport { FONT_WEIGHTS } from '@govuk-react/constants';\n\nconst Caption = styled('caption')({\n fontWeight: FONT_WEIGHTS.bold,\n display: 'table-caption',\n textAlign: 'left',\n});\n\nexport default Caption;\n"],"file":"index.js"}
import React from 'react';
import { mount } from 'enzyme';
import Caption from '.';
describe('Caption', function () {
it('renders without crashing', function () {
mount( /*#__PURE__*/React.createElement("table", null, /*#__PURE__*/React.createElement(Caption, null, "Example")));
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../../../src/atoms/Caption/test.tsx"],"names":["React","mount","Caption","describe","it"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,KAAT,QAAsB,QAAtB;AAEA,OAAOC,OAAP,MAAoB,GAApB;AAEAC,QAAQ,CAAC,SAAD,EAAY,YAAM;AACxBC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnCH,IAAAA,KAAK,eACH,gDACE,oBAAC,OAAD,kBADF,CADG,CAAL;AAKD,GANC,CAAF;AAOD,CARO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport Caption from '.';\n\ndescribe('Caption', () => {\n it('renders without crashing', () => {\n mount(\n <table>\n <Caption>Example</Caption>\n </table>\n );\n });\n});\n"],"file":"test.js"}
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
import PropTypes from 'prop-types';
import styled from 'styled-components';
import { BORDER_COLOUR } from 'govuk-colours';
import { FONT_WEIGHTS, SPACING_POINTS } from '@govuk-react/constants';
import { spacing, typography } from '@govuk-react/lib';
var Cell = styled('td').withConfig({
displayName: "Cell",
componentId: "msv0l6-0"
})(function (_ref) {
var numeric = _ref.numeric,
_ref$alignRight = _ref.alignRight,
alignRight = _ref$alignRight === void 0 ? numeric : _ref$alignRight,
bold = _ref.bold;
return {
padding: SPACING_POINTS[2] + "px " + SPACING_POINTS[4] + "px " + SPACING_POINTS[2] + "px 0",
borderBottom: "1px solid " + BORDER_COLOUR,
textAlign: alignRight ? 'right' : 'left',
fontWeight: bold ? FONT_WEIGHTS.bold : undefined,
':last-child': {
paddingRight: 0
}
};
}, function (_ref2) {
var numeric = _ref2.numeric,
isHeader = _ref2.isHeader;
return numeric && !isHeader ? typography.font({
tabular: true
}) : undefined;
}, spacing.withWidth());
Cell.propTypes = {
alignRight: PropTypes.bool,
children: PropTypes.node.isRequired,
isHeader: PropTypes.bool,
numeric: PropTypes.bool
};
export default Cell;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../../../src/atoms/Cell/index.tsx"],"names":["PropTypes","styled","BORDER_COLOUR","FONT_WEIGHTS","SPACING_POINTS","spacing","typography","Cell","numeric","alignRight","bold","padding","borderBottom","textAlign","fontWeight","undefined","paddingRight","isHeader","font","tabular","withWidth","propTypes","bool","children","node","isRequired"],"mappings":"AAAA;AAEA,OAAOA,SAAP,MAAsB,YAAtB;AACA,OAAOC,MAAP,MAAmB,mBAAnB;AACA,SAASC,aAAT,QAA8B,eAA9B;AACA,SAASC,YAAT,EAAuBC,cAAvB,QAA6C,wBAA7C;AACA,SAASC,OAAT,EAAkBC,UAAlB,QAAoC,kBAApC;AAEA,IAAMC,IAAI,GAAGN,MAAM,CAAC,IAAD,CAAT;AAAA;AAAA;AAAA,GACR;AAAA,MAAGO,OAAH,QAAGA,OAAH;AAAA,6BAAYC,UAAZ;AAAA,MAAYA,UAAZ,gCAAyBD,OAAzB;AAAA,MAAkCE,IAAlC,QAAkCA,IAAlC;AAAA,SAA8C;AAC5CC,IAAAA,OAAO,EAAKP,cAAc,CAAC,CAAD,CAAnB,WAA4BA,cAAc,CAAC,CAAD,CAA1C,WAAmDA,cAAc,CAAC,CAAD,CAAjE,SADqC;AAE5CQ,IAAAA,YAAY,iBAAeV,aAFiB;AAG5CW,IAAAA,SAAS,EAAEJ,UAAU,GAAG,OAAH,GAAa,MAHU;AAI5CK,IAAAA,UAAU,EAAEJ,IAAI,GAAGP,YAAY,CAACO,IAAhB,GAAuBK,SAJK;AAK5C,mBAAe;AACbC,MAAAA,YAAY,EAAE;AADD;AAL6B,GAA9C;AAAA,CADQ,EAUR;AAAA,MAAGR,OAAH,SAAGA,OAAH;AAAA,MAAYS,QAAZ,SAAYA,QAAZ;AAAA,SAA4BT,OAAO,IAAI,CAACS,QAAZ,GAAuBX,UAAU,CAACY,IAAX,CAAgB;AAAEC,IAAAA,OAAO,EAAE;AAAX,GAAhB,CAAvB,GAA4DJ,SAAxF;AAAA,CAVQ,EAWRV,OAAO,CAACe,SAAR,EAXQ,CAAV;AAcAb,IAAI,CAACc,SAAL,GAAiB;AACfZ,EAAAA,UAAU,EAAET,SAAS,CAACsB,IADP;AAEfC,EAAAA,QAAQ,EAAEvB,SAAS,CAACwB,IAAV,CAAeC,UAFV;AAGfR,EAAAA,QAAQ,EAAEjB,SAAS,CAACsB,IAHL;AAIfd,EAAAA,OAAO,EAAER,SAAS,CAACsB;AAJJ,CAAjB;AAOA,eAAef,IAAf","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\nimport { BORDER_COLOUR } from 'govuk-colours';\nimport { FONT_WEIGHTS, SPACING_POINTS } from '@govuk-react/constants';\nimport { spacing, typography } from '@govuk-react/lib';\n\nconst Cell = styled('td')(\n ({ numeric, alignRight = numeric, bold }) => ({\n padding: `${SPACING_POINTS[2]}px ${SPACING_POINTS[4]}px ${SPACING_POINTS[2]}px 0`,\n borderBottom: `1px solid ${BORDER_COLOUR}`,\n textAlign: alignRight ? 'right' : 'left',\n fontWeight: bold ? FONT_WEIGHTS.bold : undefined,\n ':last-child': {\n paddingRight: 0,\n },\n }),\n ({ numeric, isHeader }) => (numeric && !isHeader ? typography.font({ tabular: true }) : undefined),\n spacing.withWidth()\n);\n\nCell.propTypes = {\n alignRight: PropTypes.bool,\n children: PropTypes.node.isRequired,\n isHeader: PropTypes.bool,\n numeric: PropTypes.bool,\n};\n\nexport default Cell;\n"],"file":"index.js"}
import React from 'react';
import { mount } from 'enzyme';
import Cell from '.';
describe('Cell', function () {
it('renders without crashing', function () {
mount( /*#__PURE__*/React.createElement("table", null, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement(Cell, {
alignRight: true
}, "Example")))));
mount( /*#__PURE__*/React.createElement("table", null, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement(Cell, {
bold: true
}, "Example")))));
mount( /*#__PURE__*/React.createElement("table", null, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement(Cell, {
numeric: true
}, "Example")))));
mount( /*#__PURE__*/React.createElement("table", null, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement(Cell, null, "Example")))));
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../../../src/atoms/Cell/test.tsx"],"names":["React","mount","Cell","describe","it"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,KAAT,QAAsB,QAAtB;AAEA,OAAOC,IAAP,MAAiB,GAAjB;AAEAC,QAAQ,CAAC,MAAD,EAAS,YAAM;AACrBC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnCH,IAAAA,KAAK,eACH,gDACE,gDACE,6CACE,oBAAC,IAAD;AAAM,MAAA,UAAU;AAAhB,iBADF,CADF,CADF,CADG,CAAL;AASAA,IAAAA,KAAK,eACH,gDACE,gDACE,6CACE,oBAAC,IAAD;AAAM,MAAA,IAAI;AAAV,iBADF,CADF,CADF,CADG,CAAL;AASAA,IAAAA,KAAK,eACH,gDACE,gDACE,6CACE,oBAAC,IAAD;AAAM,MAAA,OAAO;AAAb,iBADF,CADF,CADF,CADG,CAAL;AAUAA,IAAAA,KAAK,eACH,gDACE,gDACE,6CACE,oBAAC,IAAD,kBADF,CADF,CADF,CADG,CAAL;AASD,GAtCC,CAAF;AAuCD,CAxCO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport Cell from '.';\n\ndescribe('Cell', () => {\n it('renders without crashing', () => {\n mount(\n <table>\n <tbody>\n <tr>\n <Cell alignRight>Example</Cell>\n </tr>\n </tbody>\n </table>\n );\n mount(\n <table>\n <tbody>\n <tr>\n <Cell bold>Example</Cell>\n </tr>\n </tbody>\n </table>\n );\n mount(\n <table>\n <tbody>\n <tr>\n <Cell numeric>Example</Cell>\n </tr>\n </tbody>\n </table>\n );\n\n mount(\n <table>\n <tbody>\n <tr>\n <Cell>Example</Cell>\n </tr>\n </tbody>\n </table>\n );\n });\n});\n"],"file":"test.js"}
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
import React from 'react';
import Cell from '../Cell';
var CellHeader = function CellHeader(props) {
return /*#__PURE__*/React.createElement(Cell, _extends({
as: "th",
bold: true,
isHeader: true
}, props));
};
export default CellHeader;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../../../src/atoms/CellHeader/index.tsx"],"names":["React","Cell","CellHeader","props"],"mappings":";;AAAA;AAEA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,IAAP,MAAiB,SAAjB;;AAEA,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAACC,KAAD;AAAA,sBAAW,oBAAC,IAAD;AAAM,IAAA,EAAE,EAAC,IAAT;AAAc,IAAA,IAAI,MAAlB;AAAmB,IAAA,QAAQ;AAA3B,KAAgCA,KAAhC,EAAX;AAAA,CAAnB;;AAEA,eAAeD,UAAf","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport React from 'react';\nimport Cell from '../Cell';\n\nconst CellHeader = (props) => <Cell as=\"th\" bold isHeader {...props} />;\n\nexport default CellHeader;\n"],"file":"index.js"}
import React from 'react';
import { mount } from 'enzyme';
import CellHeader from '.';
var example = /*#__PURE__*/React.createElement("table", null, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement(CellHeader, null, "example"))));
var exampleAlignRight = /*#__PURE__*/React.createElement("table", null, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement(CellHeader, {
alignRight: true
}, "example"))));
var exampleBold = /*#__PURE__*/React.createElement("table", null, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement(CellHeader, {
bold: true
}, "example"))));
describe('CellHeader', function () {
it('renders without crashing', function () {
mount(example);
mount(exampleAlignRight);
mount(exampleBold);
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../../../src/atoms/CellHeader/test.tsx"],"names":["React","mount","CellHeader","example","exampleAlignRight","exampleBold","describe","it"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,KAAT,QAAsB,QAAtB;AAEA,OAAOC,UAAP,MAAuB,GAAvB;AAEA,IAAMC,OAAO,gBACX,gDACE,gDACE,6CACE,oBAAC,UAAD,kBADF,CADF,CADF,CADF;AASA,IAAMC,iBAAiB,gBACrB,gDACE,gDACE,6CACE,oBAAC,UAAD;AAAY,EAAA,UAAU;AAAtB,aADF,CADF,CADF,CADF;AASA,IAAMC,WAAW,gBACf,gDACE,gDACE,6CACE,oBAAC,UAAD;AAAY,EAAA,IAAI;AAAhB,aADF,CADF,CADF,CADF;AAUAC,QAAQ,CAAC,YAAD,EAAe,YAAM;AAC3BC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnCN,IAAAA,KAAK,CAACE,OAAD,CAAL;AACAF,IAAAA,KAAK,CAACG,iBAAD,CAAL;AACAH,IAAAA,KAAK,CAACI,WAAD,CAAL;AACD,GAJC,CAAF;AAKD,CANO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport CellHeader from '.';\n\nconst example = (\n <table>\n <tbody>\n <tr>\n <CellHeader>example</CellHeader>\n </tr>\n </tbody>\n </table>\n);\nconst exampleAlignRight = (\n <table>\n <tbody>\n <tr>\n <CellHeader alignRight>example</CellHeader>\n </tr>\n </tbody>\n </table>\n);\nconst exampleBold = (\n <table>\n <tbody>\n <tr>\n <CellHeader bold>example</CellHeader>\n </tr>\n </tbody>\n </table>\n);\n\ndescribe('CellHeader', () => {\n it('renders without crashing', () => {\n mount(example);\n mount(exampleAlignRight);\n mount(exampleBold);\n });\n});\n"],"file":"test.js"}
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
import styled from 'styled-components';
var Row = styled('tr').withConfig({
displayName: "Row",
componentId: "sc-1y8eqfp-0"
})({});
export default Row;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../../../src/atoms/Row/index.tsx"],"names":["styled","Row"],"mappings":"AAAA;AAEA,OAAOA,MAAP,MAAmB,mBAAnB;AAEA,IAAMC,GAAG,GAAGD,MAAM,CAAC,IAAD,CAAT;AAAA;AAAA;AAAA,GAAgB,EAAhB,CAAT;AAEA,eAAeC,GAAf","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport styled from 'styled-components';\n\nconst Row = styled('tr')({});\n\nexport default Row;\n"],"file":"index.js"}
import React from 'react';
import { mount } from 'enzyme';
import Row from '.';
describe('Row', function () {
it('renders without crashing', function () {
mount( /*#__PURE__*/React.createElement("table", null, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement(Row, null, /*#__PURE__*/React.createElement("td", null, "Example")))));
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../../../src/atoms/Row/test.tsx"],"names":["React","mount","Row","describe","it"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,KAAT,QAAsB,QAAtB;AAEA,OAAOC,GAAP,MAAgB,GAAhB;AAEAC,QAAQ,CAAC,KAAD,EAAQ,YAAM;AACpBC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnCH,IAAAA,KAAK,eACH,gDACE,gDACE,oBAAC,GAAD,qBACE,0CADF,CADF,CADF,CADG,CAAL;AASD,GAVC,CAAF;AAWD,CAZO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport Row from '.';\n\ndescribe('Row', () => {\n it('renders without crashing', () => {\n mount(\n <table>\n <tbody>\n <Row>\n <td>Example</td>\n </Row>\n </tbody>\n </table>\n );\n });\n});\n"],"file":"test.js"}
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
import styled from 'styled-components';
var TableBody = styled('tbody').withConfig({
displayName: "TableBody",
componentId: "sc-1qqarm8-0"
})({});
export default TableBody;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../../../src/atoms/TableBody/index.tsx"],"names":["styled","TableBody"],"mappings":"AAAA;AAEA,OAAOA,MAAP,MAAmB,mBAAnB;AAEA,IAAMC,SAAS,GAAGD,MAAM,CAAC,OAAD,CAAT;AAAA;AAAA;AAAA,GAAmB,EAAnB,CAAf;AAEA,eAAeC,SAAf","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport styled from 'styled-components';\n\nconst TableBody = styled('tbody')({});\n\nexport default TableBody;\n"],"file":"index.js"}
import React from 'react';
import { mount } from 'enzyme';
import TableBody from '.';
describe('TableBody', function () {
it('renders without crashing', function () {
mount( /*#__PURE__*/React.createElement("table", null, /*#__PURE__*/React.createElement(TableBody, null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, "Example")))));
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../../../src/atoms/TableBody/test.tsx"],"names":["React","mount","TableBody","describe","it"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,KAAT,QAAsB,QAAtB;AAEA,OAAOC,SAAP,MAAsB,GAAtB;AAEAC,QAAQ,CAAC,WAAD,EAAc,YAAM;AAC1BC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnCH,IAAAA,KAAK,eACH,gDACE,oBAAC,SAAD,qBACE,6CACE,0CADF,CADF,CADF,CADG,CAAL;AASD,GAVC,CAAF;AAWD,CAZO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport TableBody from '.';\n\ndescribe('TableBody', () => {\n it('renders without crashing', () => {\n mount(\n <table>\n <TableBody>\n <tr>\n <td>Example</td>\n </tr>\n </TableBody>\n </table>\n );\n });\n});\n"],"file":"test.js"}
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
import styled from 'styled-components';
var TableHeader = styled('thead').withConfig({
displayName: "TableHeader",
componentId: "sc-1n1nw4b-0"
})({});
export default TableHeader;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../../../src/atoms/TableHeader/index.tsx"],"names":["styled","TableHeader"],"mappings":"AAAA;AAEA,OAAOA,MAAP,MAAmB,mBAAnB;AAEA,IAAMC,WAAW,GAAGD,MAAM,CAAC,OAAD,CAAT;AAAA;AAAA;AAAA,GAAmB,EAAnB,CAAjB;AAEA,eAAeC,WAAf","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport styled from 'styled-components';\n\nconst TableHeader = styled('thead')({});\n\nexport default TableHeader;\n"],"file":"index.js"}
import React from 'react';
import { mount } from 'enzyme';
import TableHeader from '.';
var example = /*#__PURE__*/React.createElement("table", null, /*#__PURE__*/React.createElement(TableHeader, null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("th", null, "hi"))));
describe('TableHeader', function () {
it('renders without crashing', function () {
mount(example);
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../../../src/atoms/TableHeader/test.tsx"],"names":["React","mount","TableHeader","example","describe","it"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,KAAT,QAAsB,QAAtB;AAEA,OAAOC,WAAP,MAAwB,GAAxB;AAEA,IAAMC,OAAO,gBACX,gDACE,oBAAC,WAAD,qBACE,6CACE,qCADF,CADF,CADF,CADF;AAUAC,QAAQ,CAAC,aAAD,EAAgB,YAAM;AAC5BC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnCJ,IAAAA,KAAK,CAACE,OAAD,CAAL;AACD,GAFC,CAAF;AAGD,CAJO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport TableHeader from '.';\n\nconst example = (\n <table>\n <TableHeader>\n <tr>\n <th>hi</th>\n </tr>\n </TableHeader>\n </table>\n);\n\ndescribe('TableHeader', () => {\n it('renders without crashing', () => {\n mount(example);\n });\n});\n"],"file":"test.js"}
import React from 'react';
import Table from '.';
var TableSimple = function TableSimple() {
return /*#__PURE__*/React.createElement(Table, null, /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, null, "First 6 weeks"), /*#__PURE__*/React.createElement(Table.Cell, null, "\xA3109.80 per week")), /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, null, "Next 33 weeks"), /*#__PURE__*/React.createElement(Table.Cell, null, "\xA3109.80 per week")), /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, null, "Total estimated pay"), /*#__PURE__*/React.createElement(Table.Cell, null, "\xA34,282.20")), /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, null, "Tell the mother\u2019s employer"), /*#__PURE__*/React.createElement(Table.Cell, null, "28 days before they want to start maternity pay")));
};
var TableWithCaption = function TableWithCaption() {
return /*#__PURE__*/React.createElement(Table, {
caption: "Dates and amounts",
body: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, null, "First 6 weeks"), /*#__PURE__*/React.createElement(Table.Cell, null, "\xA3109.80 per week")), /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, null, "Next 33 weeks"), /*#__PURE__*/React.createElement(Table.Cell, null, "\xA3109.80 per week")), /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, null, "Total estimated pay"), /*#__PURE__*/React.createElement(Table.Cell, null, "\xA34,282.20")))
});
};
var exampleHead = /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, null, "Month you apply"), /*#__PURE__*/React.createElement(Table.CellHeader, {
numeric: true
}, "Rate for vehicles"), /*#__PURE__*/React.createElement(Table.CellHeader, {
numeric: true
}, "Rate for bicycles"));
var TableWithHeadAndNumerics = function TableWithHeadAndNumerics() {
return /*#__PURE__*/React.createElement(Table, {
caption: "Attention, I am the caption of this ship!",
head: exampleHead
}, /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, null, "January"), /*#__PURE__*/React.createElement(Table.Cell, {
numeric: true
}, "\xA3165.00"), /*#__PURE__*/React.createElement(Table.Cell, {
numeric: true
}, "\xA385.00")), /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, null, "February"), /*#__PURE__*/React.createElement(Table.Cell, {
numeric: true
}, "\xA3165.00"), /*#__PURE__*/React.createElement(Table.Cell, {
numeric: true
}, "\xA385.00")), /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, null, "March"), /*#__PURE__*/React.createElement(Table.Cell, {
numeric: true
}, "\xA3151.00"), /*#__PURE__*/React.createElement(Table.Cell, {
numeric: true
}, "\xA377.00")), /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, null, "April"), /*#__PURE__*/React.createElement(Table.Cell, {
numeric: true
}, "\xA3136.00"), /*#__PURE__*/React.createElement(Table.Cell, {
numeric: true
}, "\xA370.00")));
};
var TableThreeQuartersOneQuarter = function TableThreeQuartersOneQuarter() {
return /*#__PURE__*/React.createElement(Table, {
caption: "Three quarters, one quarter",
head: /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, {
setWidth: "three-quarters"
}, "three-quarters"), /*#__PURE__*/React.createElement(Table.CellHeader, {
setWidth: "one-quarter"
}, "one-quarter"))
}, /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.Cell, null, "Column uses setWidth=\"three-quarters\" in header"), /*#__PURE__*/React.createElement(Table.Cell, null, "setWidth=\"one-quarter\"")));
};
var TableWithCustomWidths = function TableWithCustomWidths() {
return /*#__PURE__*/React.createElement(Table, {
caption: "Custom widths",
head: /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.CellHeader, {
setWidth: "one-half"
}, "one-half"), /*#__PURE__*/React.createElement(Table.CellHeader, {
setWidth: "22%"
}, "22%"), /*#__PURE__*/React.createElement(Table.CellHeader, null, "Normal"))
}, /*#__PURE__*/React.createElement(Table.Row, null, /*#__PURE__*/React.createElement(Table.Cell, null, "Column uses setWidth=\"one-half\" in header"), /*#__PURE__*/React.createElement(Table.Cell, null, "setWidth=\"22%\""), /*#__PURE__*/React.createElement(Table.Cell, null, "Not specified")));
};
export { TableSimple, TableWithCaption, TableWithHeadAndNumerics, TableWithCustomWidths, TableThreeQuartersOneQuarter };
export default Table;
//# sourceMappingURL=fixtures.js.map
{"version":3,"sources":["../src/fixtures.tsx"],"names":["React","Table","TableSimple","TableWithCaption","exampleHead","TableWithHeadAndNumerics","TableThreeQuartersOneQuarter","TableWithCustomWidths"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport Table from '.';\n\nconst TableSimple = () => (\n <Table>\n <Table.Row>\n <Table.CellHeader>First 6 weeks</Table.CellHeader>\n <Table.Cell>£109.80 per week</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>Next 33 weeks</Table.CellHeader>\n <Table.Cell>£109.80 per week</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>Total estimated pay</Table.CellHeader>\n <Table.Cell>£4,282.20</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>Tell the mother&rsquo;s employer</Table.CellHeader>\n <Table.Cell>28 days before they want to start maternity pay</Table.Cell>\n </Table.Row>\n </Table>\n);\n\nconst TableWithCaption = () => (\n <Table\n caption=\"Dates and amounts\"\n body={\n <>\n <Table.Row>\n <Table.CellHeader>First 6 weeks</Table.CellHeader>\n <Table.Cell>£109.80 per week</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>Next 33 weeks</Table.CellHeader>\n <Table.Cell>£109.80 per week</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>Total estimated pay</Table.CellHeader>\n <Table.Cell>£4,282.20</Table.Cell>\n </Table.Row>\n </>\n }\n />\n);\n\nconst exampleHead = (\n <Table.Row>\n <Table.CellHeader>Month you apply</Table.CellHeader>\n <Table.CellHeader numeric>Rate for vehicles</Table.CellHeader>\n <Table.CellHeader numeric>Rate for bicycles</Table.CellHeader>\n </Table.Row>\n);\n\nconst TableWithHeadAndNumerics = () => (\n <Table caption=\"Attention, I am the caption of this ship!\" head={exampleHead}>\n <Table.Row>\n <Table.CellHeader>January</Table.CellHeader>\n <Table.Cell numeric>£165.00</Table.Cell>\n <Table.Cell numeric>£85.00</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>February</Table.CellHeader>\n <Table.Cell numeric>£165.00</Table.Cell>\n <Table.Cell numeric>£85.00</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>March</Table.CellHeader>\n <Table.Cell numeric>£151.00</Table.Cell>\n <Table.Cell numeric>£77.00</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>April</Table.CellHeader>\n <Table.Cell numeric>£136.00</Table.Cell>\n <Table.Cell numeric>£70.00</Table.Cell>\n </Table.Row>\n </Table>\n);\n\nconst TableThreeQuartersOneQuarter = () => (\n <Table\n caption=\"Three quarters, one quarter\"\n head={\n <Table.Row>\n <Table.CellHeader setWidth=\"three-quarters\">three-quarters</Table.CellHeader>\n <Table.CellHeader setWidth=\"one-quarter\">one-quarter</Table.CellHeader>\n </Table.Row>\n }\n >\n <Table.Row>\n <Table.Cell>Column uses setWidth=&quot;three-quarters&quot; in header</Table.Cell>\n <Table.Cell>setWidth=&quot;one-quarter&quot;</Table.Cell>\n </Table.Row>\n </Table>\n);\n\nconst TableWithCustomWidths = () => (\n <Table\n caption=\"Custom widths\"\n head={\n <Table.Row>\n <Table.CellHeader setWidth=\"one-half\">one-half</Table.CellHeader>\n <Table.CellHeader setWidth=\"22%\">22%</Table.CellHeader>\n <Table.CellHeader>Normal</Table.CellHeader>\n </Table.Row>\n }\n >\n <Table.Row>\n <Table.Cell>Column uses setWidth=&quot;one-half&quot; in header</Table.Cell>\n <Table.Cell>setWidth=&quot;22%&quot;</Table.Cell>\n <Table.Cell>Not specified</Table.Cell>\n </Table.Row>\n </Table>\n);\n\nexport { TableSimple, TableWithCaption, TableWithHeadAndNumerics, TableWithCustomWidths, TableThreeQuartersOneQuarter };\n\nexport default Table;\n"],"file":"fixtures.js"}
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
import React from 'react';
import styled from 'styled-components';
import { spacing, typography } from '@govuk-react/lib';
import TableHeader from './atoms/TableHeader';
import TableBody from './atoms/TableBody';
import Caption from './atoms/Caption';
import CellHeader from './atoms/CellHeader';
import Cell from './atoms/Cell';
import Row from './atoms/Row';
var StyledTable = styled('table').withConfig({
displayName: "src__StyledTable",
componentId: "sc-16s660v-0"
})(typography.font({
size: 19
}), typography.textColour, {
width: '100%',
borderSpacing: 0,
borderCollapse: 'collapse'
}, spacing.withWhiteSpace({
marginBottom: 6
}));
/**
*
* ### Usage
*
* The Table component provides a construction kit of elements to create a table
*
* Component default
*
* ```jsx
* import { Table } from 'govuk-react'
*
* <Table caption="Dates and amounts">
* <Table.Row>
* <Table.CellHeader>First 6 weeks</Table.CellHeader>
* <Table.Cell>£109.80 per week</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>Next 33 weeks</Table.CellHeader>
* <Table.Cell>£109.80 per week</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>Total estimated pay</Table.CellHeader>
* <Table.Cell>£4,282.20</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>Tell the mother&rsquo;s employer</Table.CellHeader>
* <Table.Cell>28 days before they want to start maternity pay</Table.Cell>
* </Table.Row>
* </Table>
* ```
*
* Numeric tabular data
*
* ```jsx
* const example2Head = (
* <Table.Row>
* <Table.CellHeader>Month you apply</Table.CellHeader>
* <Table.CellHeader numeric>Rate for vehicles</Table.CellHeader>
* <Table.CellHeader numeric>Rate for bicycles</Table.CellHeader>
* </Table.Row>
* );
*
* <Table
* caption="Attention, I am the caption of this ship!"
* head={example2Head}
* >
* <Table.Row>
* <Table.CellHeader>January</Table.CellHeader>
* <Table.Cell numeric>£165.00</Table.Cell>
* <Table.Cell numeric>£85.00</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>February</Table.CellHeader>
* <Table.Cell numeric>£165.00</Table.Cell>
* <Table.Cell numeric>£85.00</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>March</Table.CellHeader>
* <Table.Cell numeric>£151.00</Table.Cell>
* <Table.Cell numeric>£77.00</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>April</Table.CellHeader>
* <Table.Cell numeric>£136.00</Table.Cell>
* <Table.Cell numeric>£70.00</Table.Cell>
* </Table.Row>
* </Table>
* ```
*
* Setting custom column widths
*
* ```jsx
* <Table
* caption="Custom header"
* head={
* <Table.Row>
* <Table.CellHeader setWidth="one-half>Wide header</Table.CellHeader>
* <Table.CellHeader setWidth="30%">Regular</Table.CellHeader>
* <Table.CellHeader>Normal</Table.CellHeader>
* </Table.Row>
* }
* >
* <Table.Row>
* <Table.Cell>Header makes this column one-half wide</Table.Cell>
* <Table.Cell>And this one 30%</Table.Cell>
* <Table.Cell>Another</Table.Cell>
* </Table.Row>
* </Table>
* ```
*
* ### References:
*
* - https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
*
*/
var Table = function Table(_ref) {
var caption = _ref.caption,
children = _ref.children,
_ref$body = _ref.body,
body = _ref$body === void 0 ? children : _ref$body,
head = _ref.head,
props = _objectWithoutPropertiesLoose(_ref, ["caption", "children", "body", "head"]);
return /*#__PURE__*/React.createElement(StyledTable, props, caption && /*#__PURE__*/React.createElement(Caption, null, caption), head && /*#__PURE__*/React.createElement(TableHeader, null, head), /*#__PURE__*/React.createElement(TableBody, null, body));
};
Table.defaultProps = {
body: undefined,
caption: undefined,
children: undefined,
head: undefined
};
Table.CellHeader = CellHeader;
Table.Row = Row;
Table.Cell = Cell;
Table.Header = CellHeader;
export default Table;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../src/index.tsx"],"names":["React","styled","spacing","typography","TableHeader","TableBody","Caption","CellHeader","Cell","Row","StyledTable","font","size","textColour","width","borderSpacing","borderCollapse","withWhiteSpace","marginBottom","Table","caption","children","body","head","props","defaultProps","undefined","Header"],"mappings":";;AAAA;AAEA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,OAAOC,MAAP,MAAmB,mBAAnB;AACA,SAASC,OAAT,EAAkBC,UAAlB,QAAoC,kBAApC;AAEA,OAAOC,WAAP,MAAwB,qBAAxB;AACA,OAAOC,SAAP,MAAsB,mBAAtB;AACA,OAAOC,OAAP,MAAoB,iBAApB;AAEA,OAAOC,UAAP,MAAuB,oBAAvB;AACA,OAAOC,IAAP,MAAiB,cAAjB;AACA,OAAOC,GAAP,MAAgB,aAAhB;AAEA,IAAMC,WAAW,GAAGT,MAAM,CAAC,OAAD,CAAT;AAAA;AAAA;AAAA,GACfE,UAAU,CAACQ,IAAX,CAAgB;AAAEC,EAAAA,IAAI,EAAE;AAAR,CAAhB,CADe,EAEfT,UAAU,CAACU,UAFI,EAGf;AACEC,EAAAA,KAAK,EAAE,MADT;AAEEC,EAAAA,aAAa,EAAE,CAFjB;AAGEC,EAAAA,cAAc,EAAE;AAHlB,CAHe,EAQfd,OAAO,CAACe,cAAR,CAAuB;AAAEC,EAAAA,YAAY,EAAE;AAAhB,CAAvB,CARe,CAAjB;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,IAAMC,KAAK,GAAG,SAARA,KAAQ;AAAA,MAAGC,OAAH,QAAGA,OAAH;AAAA,MAAYC,QAAZ,QAAYA,QAAZ;AAAA,uBAAsBC,IAAtB;AAAA,MAAsBA,IAAtB,0BAA6BD,QAA7B;AAAA,MAAuCE,IAAvC,QAAuCA,IAAvC;AAAA,MAAgDC,KAAhD;;AAAA,sBACZ,oBAAC,WAAD,EAAiBA,KAAjB,EACGJ,OAAO,iBAAI,oBAAC,OAAD,QAAUA,OAAV,CADd,EAEGG,IAAI,iBAAI,oBAAC,WAAD,QAAcA,IAAd,CAFX,eAGE,oBAAC,SAAD,QAAYD,IAAZ,CAHF,CADY;AAAA,CAAd;;AAQAH,KAAK,CAACM,YAAN,GAAqB;AACnBH,EAAAA,IAAI,EAAEI,SADa;AAEnBN,EAAAA,OAAO,EAAEM,SAFU;AAGnBL,EAAAA,QAAQ,EAAEK,SAHS;AAInBH,EAAAA,IAAI,EAAEG;AAJa,CAArB;AAkBAP,KAAK,CAACZ,UAAN,GAAmBA,UAAnB;AACAY,KAAK,CAACV,GAAN,GAAYA,GAAZ;AACAU,KAAK,CAACX,IAAN,GAAaA,IAAb;AACAW,KAAK,CAACQ,MAAN,GAAepB,UAAf;AAEA,eAAeY,KAAf","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\nimport { spacing, typography } from '@govuk-react/lib';\n\nimport TableHeader from './atoms/TableHeader';\nimport TableBody from './atoms/TableBody';\nimport Caption from './atoms/Caption';\n\nimport CellHeader from './atoms/CellHeader';\nimport Cell from './atoms/Cell';\nimport Row from './atoms/Row';\n\nconst StyledTable = styled('table')(\n typography.font({ size: 19 }),\n typography.textColour,\n {\n width: '100%',\n borderSpacing: 0,\n borderCollapse: 'collapse',\n },\n spacing.withWhiteSpace({ marginBottom: 6 })\n);\n\n/**\n *\n * ### Usage\n *\n * The Table component provides a construction kit of elements to create a table\n *\n * Component default\n *\n * ```jsx\n * import { Table } from 'govuk-react'\n *\n * <Table caption=\"Dates and amounts\">\n * <Table.Row>\n * <Table.CellHeader>First 6 weeks</Table.CellHeader>\n * <Table.Cell>£109.80 per week</Table.Cell>\n * </Table.Row>\n * <Table.Row>\n * <Table.CellHeader>Next 33 weeks</Table.CellHeader>\n * <Table.Cell>£109.80 per week</Table.Cell>\n * </Table.Row>\n * <Table.Row>\n * <Table.CellHeader>Total estimated pay</Table.CellHeader>\n * <Table.Cell>£4,282.20</Table.Cell>\n * </Table.Row>\n * <Table.Row>\n * <Table.CellHeader>Tell the mother&rsquo;s employer</Table.CellHeader>\n * <Table.Cell>28 days before they want to start maternity pay</Table.Cell>\n * </Table.Row>\n * </Table>\n * ```\n *\n * Numeric tabular data\n *\n * ```jsx\n * const example2Head = (\n * <Table.Row>\n * <Table.CellHeader>Month you apply</Table.CellHeader>\n * <Table.CellHeader numeric>Rate for vehicles</Table.CellHeader>\n * <Table.CellHeader numeric>Rate for bicycles</Table.CellHeader>\n * </Table.Row>\n * );\n *\n * <Table\n * caption=\"Attention, I am the caption of this ship!\"\n * head={example2Head}\n * >\n * <Table.Row>\n * <Table.CellHeader>January</Table.CellHeader>\n * <Table.Cell numeric>£165.00</Table.Cell>\n * <Table.Cell numeric>£85.00</Table.Cell>\n * </Table.Row>\n * <Table.Row>\n * <Table.CellHeader>February</Table.CellHeader>\n * <Table.Cell numeric>£165.00</Table.Cell>\n * <Table.Cell numeric>£85.00</Table.Cell>\n * </Table.Row>\n * <Table.Row>\n * <Table.CellHeader>March</Table.CellHeader>\n * <Table.Cell numeric>£151.00</Table.Cell>\n * <Table.Cell numeric>£77.00</Table.Cell>\n * </Table.Row>\n * <Table.Row>\n * <Table.CellHeader>April</Table.CellHeader>\n * <Table.Cell numeric>£136.00</Table.Cell>\n * <Table.Cell numeric>£70.00</Table.Cell>\n * </Table.Row>\n * </Table>\n * ```\n *\n * Setting custom column widths\n *\n * ```jsx\n * <Table\n * caption=\"Custom header\"\n * head={\n * <Table.Row>\n * <Table.CellHeader setWidth=\"one-half>Wide header</Table.CellHeader>\n * <Table.CellHeader setWidth=\"30%\">Regular</Table.CellHeader>\n * <Table.CellHeader>Normal</Table.CellHeader>\n * </Table.Row>\n * }\n * >\n * <Table.Row>\n * <Table.Cell>Header makes this column one-half wide</Table.Cell>\n * <Table.Cell>And this one 30%</Table.Cell>\n * <Table.Cell>Another</Table.Cell>\n * </Table.Row>\n * </Table>\n * ```\n *\n * ### References:\n *\n * - https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n *\n */\nconst Table = ({ caption, children, body = children, head, ...props }) => (\n <StyledTable {...props}>\n {caption && <Caption>{caption}</Caption>}\n {head && <TableHeader>{head}</TableHeader>}\n <TableBody>{body}</TableBody>\n </StyledTable>\n);\n\nTable.defaultProps = {\n body: undefined,\n caption: undefined,\n children: undefined,\n head: undefined,\n};\n\nTable.propTypes = {\n /** Table body rows and cells (for backward compatibility) */\n body: PropTypes.node,\n /** Table body rows and cells (recommended way) */\n children: PropTypes.node,\n /** Table header rows and cells */\n head: PropTypes.node,\n /** Table caption title */\n caption: PropTypes.string,\n};\n\nTable.CellHeader = CellHeader;\nTable.Row = Row;\nTable.Cell = Cell;\nTable.Header = CellHeader;\n\nexport default Table;\n"],"file":"index.js"}
import React from 'react';
import Table from '.';
import { TableSimple, TableWithCaption, TableWithHeadAndNumerics, TableWithCustomWidths, TableThreeQuartersOneQuarter } from './fixtures';
export default {
title: 'Typography/Table',
component: Table
};
export var Default = function Default() {
return /*#__PURE__*/React.createElement(TableSimple, null);
};
export var WithACaption = function WithACaption() {
return /*#__PURE__*/React.createElement(TableWithCaption, null);
};
export var WithAHeadRowAndNumericTabularData = function WithAHeadRowAndNumericTabularData() {
return /*#__PURE__*/React.createElement(TableWithHeadAndNumerics, null);
};
export var WithAThreeQuarterWidthColumnAndOneQuarter = function WithAThreeQuarterWidthColumnAndOneQuarter() {
return /*#__PURE__*/React.createElement(TableThreeQuartersOneQuarter, null);
};
export var WithCustomColumnWidths = function WithCustomColumnWidths() {
return /*#__PURE__*/React.createElement(TableWithCustomWidths, null);
};
//# sourceMappingURL=stories.js.map
{"version":3,"sources":["../src/stories.tsx"],"names":["React","Table","TableSimple","TableWithCaption","TableWithHeadAndNumerics","TableWithCustomWidths","TableThreeQuartersOneQuarter","title","component","Default","WithACaption","WithAHeadRowAndNumericTabularData","WithAThreeQuarterWidthColumnAndOneQuarter","WithCustomColumnWidths"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,OAAOC,KAAP,MAAkB,GAAlB;AAEA,SACEC,WADF,EAEEC,gBAFF,EAGEC,wBAHF,EAIEC,qBAJF,EAKEC,4BALF,QAMO,YANP;AAQA,eAAe;AACbC,EAAAA,KAAK,EAAE,kBADM;AAEbC,EAAAA,SAAS,EAAEP;AAFE,CAAf;AAKA,OAAO,IAAMQ,OAAO,GAAG,SAAVA,OAAU;AAAA,sBAAM,oBAAC,WAAD,OAAN;AAAA,CAAhB;AACP,OAAO,IAAMC,YAAY,GAAG,SAAfA,YAAe;AAAA,sBAAM,oBAAC,gBAAD,OAAN;AAAA,CAArB;AACP,OAAO,IAAMC,iCAAiC,GAAG,SAApCA,iCAAoC;AAAA,sBAAM,oBAAC,wBAAD,OAAN;AAAA,CAA1C;AACP,OAAO,IAAMC,yCAAyC,GAAG,SAA5CA,yCAA4C;AAAA,sBAAM,oBAAC,4BAAD,OAAN;AAAA,CAAlD;AACP,OAAO,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB;AAAA,sBAAM,oBAAC,qBAAD,OAAN;AAAA,CAA/B","sourcesContent":["import React from 'react';\n\nimport Table from '.';\n\nimport {\n TableSimple,\n TableWithCaption,\n TableWithHeadAndNumerics,\n TableWithCustomWidths,\n TableThreeQuartersOneQuarter,\n} from './fixtures';\n\nexport default {\n title: 'Typography/Table',\n component: Table,\n};\n\nexport const Default = () => <TableSimple />;\nexport const WithACaption = () => <TableWithCaption />;\nexport const WithAHeadRowAndNumericTabularData = () => <TableWithHeadAndNumerics />;\nexport const WithAThreeQuarterWidthColumnAndOneQuarter = () => <TableThreeQuartersOneQuarter />;\nexport const WithCustomColumnWidths = () => <TableWithCustomWidths />;\n"],"file":"stories.js"}
import React from 'react';
import { mount } from 'enzyme';
import Table, { TableSimple, TableWithCaption, TableWithHeadAndNumerics, TableWithCustomWidths } from './fixtures';
describe('Table', function () {
it('renders without crashing', function () {
mount( /*#__PURE__*/React.createElement(Table, null));
});
it('renders a simple example matching snapshot', function () {
expect(mount( /*#__PURE__*/React.createElement(TableSimple, null))).toMatchSnapshot('simple table');
});
it('renders a table with a caption matching snapshot', function () {
expect(mount( /*#__PURE__*/React.createElement(TableWithCaption, null))).toMatchSnapshot('table with caption');
});
it('renders a table with custom widths matching snapshot', function () {
expect(mount( /*#__PURE__*/React.createElement(TableWithCustomWidths, null))).toMatchSnapshot('table with custom widths');
});
it('renders a table with head and numerics matching snapshot', function () {
expect(mount( /*#__PURE__*/React.createElement(TableWithHeadAndNumerics, null))).toMatchSnapshot('table with head and numerics');
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../src/test.tsx"],"names":["React","mount","Table","TableSimple","TableWithCaption","TableWithHeadAndNumerics","TableWithCustomWidths","describe","it","expect","toMatchSnapshot"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,KAAT,QAAsB,QAAtB;AAEA,OAAOC,KAAP,IAAgBC,WAAhB,EAA6BC,gBAA7B,EAA+CC,wBAA/C,EAAyEC,qBAAzE,QAAsG,YAAtG;AAEAC,QAAQ,CAAC,OAAD,EAAU,YAAM;AACtBC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnCP,IAAAA,KAAK,eAAC,oBAAC,KAAD,OAAD,CAAL;AACD,GAFC,CAAF;AAIAO,EAAAA,EAAE,CAAC,4CAAD,EAA+C,YAAM;AACrDC,IAAAA,MAAM,CAACR,KAAK,eAAC,oBAAC,WAAD,OAAD,CAAN,CAAN,CAA+BS,eAA/B,CAA+C,cAA/C;AACD,GAFC,CAAF;AAIAF,EAAAA,EAAE,CAAC,kDAAD,EAAqD,YAAM;AAC3DC,IAAAA,MAAM,CAACR,KAAK,eAAC,oBAAC,gBAAD,OAAD,CAAN,CAAN,CAAoCS,eAApC,CAAoD,oBAApD;AACD,GAFC,CAAF;AAIAF,EAAAA,EAAE,CAAC,sDAAD,EAAyD,YAAM;AAC/DC,IAAAA,MAAM,CAACR,KAAK,eAAC,oBAAC,qBAAD,OAAD,CAAN,CAAN,CAAyCS,eAAzC,CAAyD,0BAAzD;AACD,GAFC,CAAF;AAIAF,EAAAA,EAAE,CAAC,0DAAD,EAA6D,YAAM;AACnEC,IAAAA,MAAM,CAACR,KAAK,eAAC,oBAAC,wBAAD,OAAD,CAAN,CAAN,CAA4CS,eAA5C,CAA4D,8BAA5D;AACD,GAFC,CAAF;AAGD,CApBO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport Table, { TableSimple, TableWithCaption, TableWithHeadAndNumerics, TableWithCustomWidths } from './fixtures';\n\ndescribe('Table', () => {\n it('renders without crashing', () => {\n mount(<Table />);\n });\n\n it('renders a simple example matching snapshot', () => {\n expect(mount(<TableSimple />)).toMatchSnapshot('simple table');\n });\n\n it('renders a table with a caption matching snapshot', () => {\n expect(mount(<TableWithCaption />)).toMatchSnapshot('table with caption');\n });\n\n it('renders a table with custom widths matching snapshot', () => {\n expect(mount(<TableWithCustomWidths />)).toMatchSnapshot('table with custom widths');\n });\n\n it('renders a table with head and numerics matching snapshot', () => {\n expect(mount(<TableWithHeadAndNumerics />)).toMatchSnapshot('table with head and numerics');\n });\n});\n"],"file":"test.js"}
"use strict";
exports.__esModule = true;
exports["default"] = void 0;
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _constants = require("@govuk-react/constants");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var Caption = (0, _styledComponents["default"])('caption').withConfig({
displayName: "Caption",
componentId: "pvwfz5-0"
})({
fontWeight: _constants.FONT_WEIGHTS.bold,
display: 'table-caption',
textAlign: 'left'
});
var _default = Caption;
exports["default"] = _default;
module.exports = exports.default;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../../../src/atoms/Caption/index.tsx"],"names":["Caption","fontWeight","FONT_WEIGHTS","bold","display","textAlign"],"mappings":";;;;;AAEA;;AACA;;;;AAHA;AAKA,IAAMA,OAAO,GAAG,kCAAO,SAAP,CAAH;AAAA;AAAA;AAAA,GAAqB;AAChCC,EAAAA,UAAU,EAAEC,wBAAaC,IADO;AAEhCC,EAAAA,OAAO,EAAE,eAFuB;AAGhCC,EAAAA,SAAS,EAAE;AAHqB,CAArB,CAAb;eAMeL,O","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport styled from 'styled-components';\nimport { FONT_WEIGHTS } from '@govuk-react/constants';\n\nconst Caption = styled('caption')({\n fontWeight: FONT_WEIGHTS.bold,\n display: 'table-caption',\n textAlign: 'left',\n});\n\nexport default Caption;\n"],"file":"index.js"}
"use strict";
var _react = _interopRequireDefault(require("react"));
var _enzyme = require("enzyme");
var _ = _interopRequireDefault(require("."));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
describe('Caption', function () {
it('renders without crashing', function () {
(0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement("table", null, /*#__PURE__*/_react["default"].createElement(_["default"], null, "Example")));
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../../../src/atoms/Caption/test.tsx"],"names":["describe","it"],"mappings":";;AAAA;;AACA;;AAEA;;;;AAEAA,QAAQ,CAAC,SAAD,EAAY,YAAM;AACxBC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnC,qCACE,4DACE,gCAAC,YAAD,kBADF,CADF;AAKD,GANC,CAAF;AAOD,CARO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport Caption from '.';\n\ndescribe('Caption', () => {\n it('renders without crashing', () => {\n mount(\n <table>\n <Caption>Example</Caption>\n </table>\n );\n });\n});\n"],"file":"test.js"}
"use strict";
exports.__esModule = true;
exports["default"] = void 0;
var _propTypes = _interopRequireDefault(require("prop-types"));
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _govukColours = require("govuk-colours");
var _constants = require("@govuk-react/constants");
var _lib = require("@govuk-react/lib");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var Cell = (0, _styledComponents["default"])('td').withConfig({
displayName: "Cell",
componentId: "msv0l6-0"
})(function (_ref) {
var numeric = _ref.numeric,
_ref$alignRight = _ref.alignRight,
alignRight = _ref$alignRight === void 0 ? numeric : _ref$alignRight,
bold = _ref.bold;
return {
padding: _constants.SPACING_POINTS[2] + "px " + _constants.SPACING_POINTS[4] + "px " + _constants.SPACING_POINTS[2] + "px 0",
borderBottom: "1px solid " + _govukColours.BORDER_COLOUR,
textAlign: alignRight ? 'right' : 'left',
fontWeight: bold ? _constants.FONT_WEIGHTS.bold : undefined,
':last-child': {
paddingRight: 0
}
};
}, function (_ref2) {
var numeric = _ref2.numeric,
isHeader = _ref2.isHeader;
return numeric && !isHeader ? _lib.typography.font({
tabular: true
}) : undefined;
}, _lib.spacing.withWidth());
Cell.propTypes = {
alignRight: _propTypes["default"].bool,
children: _propTypes["default"].node.isRequired,
isHeader: _propTypes["default"].bool,
numeric: _propTypes["default"].bool
};
var _default = Cell;
exports["default"] = _default;
module.exports = exports.default;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../../../src/atoms/Cell/index.tsx"],"names":["Cell","numeric","alignRight","bold","padding","SPACING_POINTS","borderBottom","BORDER_COLOUR","textAlign","fontWeight","FONT_WEIGHTS","undefined","paddingRight","isHeader","typography","font","tabular","spacing","withWidth","propTypes","PropTypes","bool","children","node","isRequired"],"mappings":";;;;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;AANA;AAQA,IAAMA,IAAI,GAAG,kCAAO,IAAP,CAAH;AAAA;AAAA;AAAA,GACR;AAAA,MAAGC,OAAH,QAAGA,OAAH;AAAA,6BAAYC,UAAZ;AAAA,MAAYA,UAAZ,gCAAyBD,OAAzB;AAAA,MAAkCE,IAAlC,QAAkCA,IAAlC;AAAA,SAA8C;AAC5CC,IAAAA,OAAO,EAAKC,0BAAe,CAAf,CAAL,WAA4BA,0BAAe,CAAf,CAA5B,WAAmDA,0BAAe,CAAf,CAAnD,SADqC;AAE5CC,IAAAA,YAAY,iBAAeC,2BAFiB;AAG5CC,IAAAA,SAAS,EAAEN,UAAU,GAAG,OAAH,GAAa,MAHU;AAI5CO,IAAAA,UAAU,EAAEN,IAAI,GAAGO,wBAAaP,IAAhB,GAAuBQ,SAJK;AAK5C,mBAAe;AACbC,MAAAA,YAAY,EAAE;AADD;AAL6B,GAA9C;AAAA,CADQ,EAUR;AAAA,MAAGX,OAAH,SAAGA,OAAH;AAAA,MAAYY,QAAZ,SAAYA,QAAZ;AAAA,SAA4BZ,OAAO,IAAI,CAACY,QAAZ,GAAuBC,gBAAWC,IAAX,CAAgB;AAAEC,IAAAA,OAAO,EAAE;AAAX,GAAhB,CAAvB,GAA4DL,SAAxF;AAAA,CAVQ,EAWRM,aAAQC,SAAR,EAXQ,CAAV;AAcAlB,IAAI,CAACmB,SAAL,GAAiB;AACfjB,EAAAA,UAAU,EAAEkB,sBAAUC,IADP;AAEfC,EAAAA,QAAQ,EAAEF,sBAAUG,IAAV,CAAeC,UAFV;AAGfX,EAAAA,QAAQ,EAAEO,sBAAUC,IAHL;AAIfpB,EAAAA,OAAO,EAAEmB,sBAAUC;AAJJ,CAAjB;eAOerB,I","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\nimport { BORDER_COLOUR } from 'govuk-colours';\nimport { FONT_WEIGHTS, SPACING_POINTS } from '@govuk-react/constants';\nimport { spacing, typography } from '@govuk-react/lib';\n\nconst Cell = styled('td')(\n ({ numeric, alignRight = numeric, bold }) => ({\n padding: `${SPACING_POINTS[2]}px ${SPACING_POINTS[4]}px ${SPACING_POINTS[2]}px 0`,\n borderBottom: `1px solid ${BORDER_COLOUR}`,\n textAlign: alignRight ? 'right' : 'left',\n fontWeight: bold ? FONT_WEIGHTS.bold : undefined,\n ':last-child': {\n paddingRight: 0,\n },\n }),\n ({ numeric, isHeader }) => (numeric && !isHeader ? typography.font({ tabular: true }) : undefined),\n spacing.withWidth()\n);\n\nCell.propTypes = {\n alignRight: PropTypes.bool,\n children: PropTypes.node.isRequired,\n isHeader: PropTypes.bool,\n numeric: PropTypes.bool,\n};\n\nexport default Cell;\n"],"file":"index.js"}
"use strict";
var _react = _interopRequireDefault(require("react"));
var _enzyme = require("enzyme");
var _ = _interopRequireDefault(require("."));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
describe('Cell', function () {
it('renders without crashing', function () {
(0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement("table", null, /*#__PURE__*/_react["default"].createElement("tbody", null, /*#__PURE__*/_react["default"].createElement("tr", null, /*#__PURE__*/_react["default"].createElement(_["default"], {
alignRight: true
}, "Example")))));
(0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement("table", null, /*#__PURE__*/_react["default"].createElement("tbody", null, /*#__PURE__*/_react["default"].createElement("tr", null, /*#__PURE__*/_react["default"].createElement(_["default"], {
bold: true
}, "Example")))));
(0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement("table", null, /*#__PURE__*/_react["default"].createElement("tbody", null, /*#__PURE__*/_react["default"].createElement("tr", null, /*#__PURE__*/_react["default"].createElement(_["default"], {
numeric: true
}, "Example")))));
(0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement("table", null, /*#__PURE__*/_react["default"].createElement("tbody", null, /*#__PURE__*/_react["default"].createElement("tr", null, /*#__PURE__*/_react["default"].createElement(_["default"], null, "Example")))));
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../../../src/atoms/Cell/test.tsx"],"names":["describe","it"],"mappings":";;AAAA;;AACA;;AAEA;;;;AAEAA,QAAQ,CAAC,MAAD,EAAS,YAAM;AACrBC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnC,qCACE,4DACE,4DACE,yDACE,gCAAC,YAAD;AAAM,MAAA,UAAU;AAAhB,iBADF,CADF,CADF,CADF;AASA,qCACE,4DACE,4DACE,yDACE,gCAAC,YAAD;AAAM,MAAA,IAAI;AAAV,iBADF,CADF,CADF,CADF;AASA,qCACE,4DACE,4DACE,yDACE,gCAAC,YAAD;AAAM,MAAA,OAAO;AAAb,iBADF,CADF,CADF,CADF;AAUA,qCACE,4DACE,4DACE,yDACE,gCAAC,YAAD,kBADF,CADF,CADF,CADF;AASD,GAtCC,CAAF;AAuCD,CAxCO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport Cell from '.';\n\ndescribe('Cell', () => {\n it('renders without crashing', () => {\n mount(\n <table>\n <tbody>\n <tr>\n <Cell alignRight>Example</Cell>\n </tr>\n </tbody>\n </table>\n );\n mount(\n <table>\n <tbody>\n <tr>\n <Cell bold>Example</Cell>\n </tr>\n </tbody>\n </table>\n );\n mount(\n <table>\n <tbody>\n <tr>\n <Cell numeric>Example</Cell>\n </tr>\n </tbody>\n </table>\n );\n\n mount(\n <table>\n <tbody>\n <tr>\n <Cell>Example</Cell>\n </tr>\n </tbody>\n </table>\n );\n });\n});\n"],"file":"test.js"}
"use strict";
exports.__esModule = true;
exports["default"] = void 0;
var _react = _interopRequireDefault(require("react"));
var _Cell = _interopRequireDefault(require("../Cell"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
var CellHeader = function CellHeader(props) {
return /*#__PURE__*/_react["default"].createElement(_Cell["default"], _extends({
as: "th",
bold: true,
isHeader: true
}, props));
};
var _default = CellHeader;
exports["default"] = _default;
module.exports = exports.default;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../../../src/atoms/CellHeader/index.tsx"],"names":["CellHeader","props"],"mappings":";;;;;AAEA;;AACA;;;;;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAACC,KAAD;AAAA,sBAAW,gCAAC,gBAAD;AAAM,IAAA,EAAE,EAAC,IAAT;AAAc,IAAA,IAAI,MAAlB;AAAmB,IAAA,QAAQ;AAA3B,KAAgCA,KAAhC,EAAX;AAAA,CAAnB;;eAEeD,U","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport React from 'react';\nimport Cell from '../Cell';\n\nconst CellHeader = (props) => <Cell as=\"th\" bold isHeader {...props} />;\n\nexport default CellHeader;\n"],"file":"index.js"}
"use strict";
var _react = _interopRequireDefault(require("react"));
var _enzyme = require("enzyme");
var _ = _interopRequireDefault(require("."));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var example = /*#__PURE__*/_react["default"].createElement("table", null, /*#__PURE__*/_react["default"].createElement("tbody", null, /*#__PURE__*/_react["default"].createElement("tr", null, /*#__PURE__*/_react["default"].createElement(_["default"], null, "example"))));
var exampleAlignRight = /*#__PURE__*/_react["default"].createElement("table", null, /*#__PURE__*/_react["default"].createElement("tbody", null, /*#__PURE__*/_react["default"].createElement("tr", null, /*#__PURE__*/_react["default"].createElement(_["default"], {
alignRight: true
}, "example"))));
var exampleBold = /*#__PURE__*/_react["default"].createElement("table", null, /*#__PURE__*/_react["default"].createElement("tbody", null, /*#__PURE__*/_react["default"].createElement("tr", null, /*#__PURE__*/_react["default"].createElement(_["default"], {
bold: true
}, "example"))));
describe('CellHeader', function () {
it('renders without crashing', function () {
(0, _enzyme.mount)(example);
(0, _enzyme.mount)(exampleAlignRight);
(0, _enzyme.mount)(exampleBold);
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../../../src/atoms/CellHeader/test.tsx"],"names":["example","exampleAlignRight","exampleBold","describe","it"],"mappings":";;AAAA;;AACA;;AAEA;;;;AAEA,IAAMA,OAAO,gBACX,4DACE,4DACE,yDACE,gCAAC,YAAD,kBADF,CADF,CADF,CADF;;AASA,IAAMC,iBAAiB,gBACrB,4DACE,4DACE,yDACE,gCAAC,YAAD;AAAY,EAAA,UAAU;AAAtB,aADF,CADF,CADF,CADF;;AASA,IAAMC,WAAW,gBACf,4DACE,4DACE,yDACE,gCAAC,YAAD;AAAY,EAAA,IAAI;AAAhB,aADF,CADF,CADF,CADF;;AAUAC,QAAQ,CAAC,YAAD,EAAe,YAAM;AAC3BC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnC,uBAAMJ,OAAN;AACA,uBAAMC,iBAAN;AACA,uBAAMC,WAAN;AACD,GAJC,CAAF;AAKD,CANO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport CellHeader from '.';\n\nconst example = (\n <table>\n <tbody>\n <tr>\n <CellHeader>example</CellHeader>\n </tr>\n </tbody>\n </table>\n);\nconst exampleAlignRight = (\n <table>\n <tbody>\n <tr>\n <CellHeader alignRight>example</CellHeader>\n </tr>\n </tbody>\n </table>\n);\nconst exampleBold = (\n <table>\n <tbody>\n <tr>\n <CellHeader bold>example</CellHeader>\n </tr>\n </tbody>\n </table>\n);\n\ndescribe('CellHeader', () => {\n it('renders without crashing', () => {\n mount(example);\n mount(exampleAlignRight);\n mount(exampleBold);\n });\n});\n"],"file":"test.js"}
"use strict";
exports.__esModule = true;
exports["default"] = void 0;
var _styledComponents = _interopRequireDefault(require("styled-components"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var Row = (0, _styledComponents["default"])('tr').withConfig({
displayName: "Row",
componentId: "sc-1y8eqfp-0"
})({});
var _default = Row;
exports["default"] = _default;
module.exports = exports.default;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../../../src/atoms/Row/index.tsx"],"names":["Row"],"mappings":";;;;;AAEA;;;;AAFA;AAIA,IAAMA,GAAG,GAAG,kCAAO,IAAP,CAAH;AAAA;AAAA;AAAA,GAAgB,EAAhB,CAAT;eAEeA,G","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport styled from 'styled-components';\n\nconst Row = styled('tr')({});\n\nexport default Row;\n"],"file":"index.js"}
"use strict";
var _react = _interopRequireDefault(require("react"));
var _enzyme = require("enzyme");
var _ = _interopRequireDefault(require("."));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
describe('Row', function () {
it('renders without crashing', function () {
(0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement("table", null, /*#__PURE__*/_react["default"].createElement("tbody", null, /*#__PURE__*/_react["default"].createElement(_["default"], null, /*#__PURE__*/_react["default"].createElement("td", null, "Example")))));
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../../../src/atoms/Row/test.tsx"],"names":["describe","it"],"mappings":";;AAAA;;AACA;;AAEA;;;;AAEAA,QAAQ,CAAC,KAAD,EAAQ,YAAM;AACpBC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnC,qCACE,4DACE,4DACE,gCAAC,YAAD,qBACE,sDADF,CADF,CADF,CADF;AASD,GAVC,CAAF;AAWD,CAZO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport Row from '.';\n\ndescribe('Row', () => {\n it('renders without crashing', () => {\n mount(\n <table>\n <tbody>\n <Row>\n <td>Example</td>\n </Row>\n </tbody>\n </table>\n );\n });\n});\n"],"file":"test.js"}
"use strict";
exports.__esModule = true;
exports["default"] = void 0;
var _styledComponents = _interopRequireDefault(require("styled-components"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var TableBody = (0, _styledComponents["default"])('tbody').withConfig({
displayName: "TableBody",
componentId: "sc-1qqarm8-0"
})({});
var _default = TableBody;
exports["default"] = _default;
module.exports = exports.default;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../../../src/atoms/TableBody/index.tsx"],"names":["TableBody"],"mappings":";;;;;AAEA;;;;AAFA;AAIA,IAAMA,SAAS,GAAG,kCAAO,OAAP,CAAH;AAAA;AAAA;AAAA,GAAmB,EAAnB,CAAf;eAEeA,S","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport styled from 'styled-components';\n\nconst TableBody = styled('tbody')({});\n\nexport default TableBody;\n"],"file":"index.js"}
"use strict";
var _react = _interopRequireDefault(require("react"));
var _enzyme = require("enzyme");
var _ = _interopRequireDefault(require("."));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
describe('TableBody', function () {
it('renders without crashing', function () {
(0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement("table", null, /*#__PURE__*/_react["default"].createElement(_["default"], null, /*#__PURE__*/_react["default"].createElement("tr", null, /*#__PURE__*/_react["default"].createElement("td", null, "Example")))));
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../../../src/atoms/TableBody/test.tsx"],"names":["describe","it"],"mappings":";;AAAA;;AACA;;AAEA;;;;AAEAA,QAAQ,CAAC,WAAD,EAAc,YAAM;AAC1BC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnC,qCACE,4DACE,gCAAC,YAAD,qBACE,yDACE,sDADF,CADF,CADF,CADF;AASD,GAVC,CAAF;AAWD,CAZO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport TableBody from '.';\n\ndescribe('TableBody', () => {\n it('renders without crashing', () => {\n mount(\n <table>\n <TableBody>\n <tr>\n <td>Example</td>\n </tr>\n </TableBody>\n </table>\n );\n });\n});\n"],"file":"test.js"}
"use strict";
exports.__esModule = true;
exports["default"] = void 0;
var _styledComponents = _interopRequireDefault(require("styled-components"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
var TableHeader = (0, _styledComponents["default"])('thead').withConfig({
displayName: "TableHeader",
componentId: "sc-1n1nw4b-0"
})({});
var _default = TableHeader;
exports["default"] = _default;
module.exports = exports.default;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../../../src/atoms/TableHeader/index.tsx"],"names":["TableHeader"],"mappings":";;;;;AAEA;;;;AAFA;AAIA,IAAMA,WAAW,GAAG,kCAAO,OAAP,CAAH;AAAA;AAAA;AAAA,GAAmB,EAAnB,CAAjB;eAEeA,W","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport styled from 'styled-components';\n\nconst TableHeader = styled('thead')({});\n\nexport default TableHeader;\n"],"file":"index.js"}
"use strict";
var _react = _interopRequireDefault(require("react"));
var _enzyme = require("enzyme");
var _ = _interopRequireDefault(require("."));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var example = /*#__PURE__*/_react["default"].createElement("table", null, /*#__PURE__*/_react["default"].createElement(_["default"], null, /*#__PURE__*/_react["default"].createElement("tr", null, /*#__PURE__*/_react["default"].createElement("th", null, "hi"))));
describe('TableHeader', function () {
it('renders without crashing', function () {
(0, _enzyme.mount)(example);
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../../../src/atoms/TableHeader/test.tsx"],"names":["example","describe","it"],"mappings":";;AAAA;;AACA;;AAEA;;;;AAEA,IAAMA,OAAO,gBACX,4DACE,gCAAC,YAAD,qBACE,yDACE,iDADF,CADF,CADF,CADF;;AAUAC,QAAQ,CAAC,aAAD,EAAgB,YAAM;AAC5BC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnC,uBAAMF,OAAN;AACD,GAFC,CAAF;AAGD,CAJO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport TableHeader from '.';\n\nconst example = (\n <table>\n <TableHeader>\n <tr>\n <th>hi</th>\n </tr>\n </TableHeader>\n </table>\n);\n\ndescribe('TableHeader', () => {\n it('renders without crashing', () => {\n mount(example);\n });\n});\n"],"file":"test.js"}
"use strict";
exports.__esModule = true;
exports["default"] = exports.TableThreeQuartersOneQuarter = exports.TableWithCustomWidths = exports.TableWithHeadAndNumerics = exports.TableWithCaption = exports.TableSimple = void 0;
var _react = _interopRequireDefault(require("react"));
var _ = _interopRequireDefault(require("."));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var TableSimple = function TableSimple() {
return /*#__PURE__*/_react["default"].createElement(_["default"], null, /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, null, "First 6 weeks"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, null, "\xA3109.80 per week")), /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, null, "Next 33 weeks"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, null, "\xA3109.80 per week")), /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, null, "Total estimated pay"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, null, "\xA34,282.20")), /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, null, "Tell the mother\u2019s employer"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, null, "28 days before they want to start maternity pay")));
};
exports.TableSimple = TableSimple;
var TableWithCaption = function TableWithCaption() {
return /*#__PURE__*/_react["default"].createElement(_["default"], {
caption: "Dates and amounts",
body: /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, null, "First 6 weeks"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, null, "\xA3109.80 per week")), /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, null, "Next 33 weeks"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, null, "\xA3109.80 per week")), /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, null, "Total estimated pay"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, null, "\xA34,282.20")))
});
};
exports.TableWithCaption = TableWithCaption;
var exampleHead = /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, null, "Month you apply"), /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, {
numeric: true
}, "Rate for vehicles"), /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, {
numeric: true
}, "Rate for bicycles"));
var TableWithHeadAndNumerics = function TableWithHeadAndNumerics() {
return /*#__PURE__*/_react["default"].createElement(_["default"], {
caption: "Attention, I am the caption of this ship!",
head: exampleHead
}, /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, null, "January"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, {
numeric: true
}, "\xA3165.00"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, {
numeric: true
}, "\xA385.00")), /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, null, "February"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, {
numeric: true
}, "\xA3165.00"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, {
numeric: true
}, "\xA385.00")), /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, null, "March"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, {
numeric: true
}, "\xA3151.00"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, {
numeric: true
}, "\xA377.00")), /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, null, "April"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, {
numeric: true
}, "\xA3136.00"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, {
numeric: true
}, "\xA370.00")));
};
exports.TableWithHeadAndNumerics = TableWithHeadAndNumerics;
var TableThreeQuartersOneQuarter = function TableThreeQuartersOneQuarter() {
return /*#__PURE__*/_react["default"].createElement(_["default"], {
caption: "Three quarters, one quarter",
head: /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, {
setWidth: "three-quarters"
}, "three-quarters"), /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, {
setWidth: "one-quarter"
}, "one-quarter"))
}, /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].Cell, null, "Column uses setWidth=\"three-quarters\" in header"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, null, "setWidth=\"one-quarter\"")));
};
exports.TableThreeQuartersOneQuarter = TableThreeQuartersOneQuarter;
var TableWithCustomWidths = function TableWithCustomWidths() {
return /*#__PURE__*/_react["default"].createElement(_["default"], {
caption: "Custom widths",
head: /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, {
setWidth: "one-half"
}, "one-half"), /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, {
setWidth: "22%"
}, "22%"), /*#__PURE__*/_react["default"].createElement(_["default"].CellHeader, null, "Normal"))
}, /*#__PURE__*/_react["default"].createElement(_["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_["default"].Cell, null, "Column uses setWidth=\"one-half\" in header"), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, null, "setWidth=\"22%\""), /*#__PURE__*/_react["default"].createElement(_["default"].Cell, null, "Not specified")));
};
exports.TableWithCustomWidths = TableWithCustomWidths;
var _default = _["default"];
exports["default"] = _default;
//# sourceMappingURL=fixtures.js.map
{"version":3,"sources":["../src/fixtures.tsx"],"names":["TableSimple","TableWithCaption","exampleHead","TableWithHeadAndNumerics","TableThreeQuartersOneQuarter","TableWithCustomWidths","Table"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport Table from '.';\n\nconst TableSimple = () => (\n <Table>\n <Table.Row>\n <Table.CellHeader>First 6 weeks</Table.CellHeader>\n <Table.Cell>£109.80 per week</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>Next 33 weeks</Table.CellHeader>\n <Table.Cell>£109.80 per week</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>Total estimated pay</Table.CellHeader>\n <Table.Cell>£4,282.20</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>Tell the mother&rsquo;s employer</Table.CellHeader>\n <Table.Cell>28 days before they want to start maternity pay</Table.Cell>\n </Table.Row>\n </Table>\n);\n\nconst TableWithCaption = () => (\n <Table\n caption=\"Dates and amounts\"\n body={\n <>\n <Table.Row>\n <Table.CellHeader>First 6 weeks</Table.CellHeader>\n <Table.Cell>£109.80 per week</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>Next 33 weeks</Table.CellHeader>\n <Table.Cell>£109.80 per week</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>Total estimated pay</Table.CellHeader>\n <Table.Cell>£4,282.20</Table.Cell>\n </Table.Row>\n </>\n }\n />\n);\n\nconst exampleHead = (\n <Table.Row>\n <Table.CellHeader>Month you apply</Table.CellHeader>\n <Table.CellHeader numeric>Rate for vehicles</Table.CellHeader>\n <Table.CellHeader numeric>Rate for bicycles</Table.CellHeader>\n </Table.Row>\n);\n\nconst TableWithHeadAndNumerics = () => (\n <Table caption=\"Attention, I am the caption of this ship!\" head={exampleHead}>\n <Table.Row>\n <Table.CellHeader>January</Table.CellHeader>\n <Table.Cell numeric>£165.00</Table.Cell>\n <Table.Cell numeric>£85.00</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>February</Table.CellHeader>\n <Table.Cell numeric>£165.00</Table.Cell>\n <Table.Cell numeric>£85.00</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>March</Table.CellHeader>\n <Table.Cell numeric>£151.00</Table.Cell>\n <Table.Cell numeric>£77.00</Table.Cell>\n </Table.Row>\n <Table.Row>\n <Table.CellHeader>April</Table.CellHeader>\n <Table.Cell numeric>£136.00</Table.Cell>\n <Table.Cell numeric>£70.00</Table.Cell>\n </Table.Row>\n </Table>\n);\n\nconst TableThreeQuartersOneQuarter = () => (\n <Table\n caption=\"Three quarters, one quarter\"\n head={\n <Table.Row>\n <Table.CellHeader setWidth=\"three-quarters\">three-quarters</Table.CellHeader>\n <Table.CellHeader setWidth=\"one-quarter\">one-quarter</Table.CellHeader>\n </Table.Row>\n }\n >\n <Table.Row>\n <Table.Cell>Column uses setWidth=&quot;three-quarters&quot; in header</Table.Cell>\n <Table.Cell>setWidth=&quot;one-quarter&quot;</Table.Cell>\n </Table.Row>\n </Table>\n);\n\nconst TableWithCustomWidths = () => (\n <Table\n caption=\"Custom widths\"\n head={\n <Table.Row>\n <Table.CellHeader setWidth=\"one-half\">one-half</Table.CellHeader>\n <Table.CellHeader setWidth=\"22%\">22%</Table.CellHeader>\n <Table.CellHeader>Normal</Table.CellHeader>\n </Table.Row>\n }\n >\n <Table.Row>\n <Table.Cell>Column uses setWidth=&quot;one-half&quot; in header</Table.Cell>\n <Table.Cell>setWidth=&quot;22%&quot;</Table.Cell>\n <Table.Cell>Not specified</Table.Cell>\n </Table.Row>\n </Table>\n);\n\nexport { TableSimple, TableWithCaption, TableWithHeadAndNumerics, TableWithCustomWidths, TableThreeQuartersOneQuarter };\n\nexport default Table;\n"],"file":"fixtures.js"}
"use strict";
exports.__esModule = true;
exports["default"] = void 0;
var _react = _interopRequireDefault(require("react"));
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _lib = require("@govuk-react/lib");
var _TableHeader = _interopRequireDefault(require("./atoms/TableHeader"));
var _TableBody = _interopRequireDefault(require("./atoms/TableBody"));
var _Caption = _interopRequireDefault(require("./atoms/Caption"));
var _CellHeader = _interopRequireDefault(require("./atoms/CellHeader"));
var _Cell = _interopRequireDefault(require("./atoms/Cell"));
var _Row = _interopRequireDefault(require("./atoms/Row"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
var StyledTable = (0, _styledComponents["default"])('table').withConfig({
displayName: "src__StyledTable",
componentId: "sc-16s660v-0"
})(_lib.typography.font({
size: 19
}), _lib.typography.textColour, {
width: '100%',
borderSpacing: 0,
borderCollapse: 'collapse'
}, _lib.spacing.withWhiteSpace({
marginBottom: 6
}));
/**
*
* ### Usage
*
* The Table component provides a construction kit of elements to create a table
*
* Component default
*
* ```jsx
* import { Table } from 'govuk-react'
*
* <Table caption="Dates and amounts">
* <Table.Row>
* <Table.CellHeader>First 6 weeks</Table.CellHeader>
* <Table.Cell>£109.80 per week</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>Next 33 weeks</Table.CellHeader>
* <Table.Cell>£109.80 per week</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>Total estimated pay</Table.CellHeader>
* <Table.Cell>£4,282.20</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>Tell the mother&rsquo;s employer</Table.CellHeader>
* <Table.Cell>28 days before they want to start maternity pay</Table.Cell>
* </Table.Row>
* </Table>
* ```
*
* Numeric tabular data
*
* ```jsx
* const example2Head = (
* <Table.Row>
* <Table.CellHeader>Month you apply</Table.CellHeader>
* <Table.CellHeader numeric>Rate for vehicles</Table.CellHeader>
* <Table.CellHeader numeric>Rate for bicycles</Table.CellHeader>
* </Table.Row>
* );
*
* <Table
* caption="Attention, I am the caption of this ship!"
* head={example2Head}
* >
* <Table.Row>
* <Table.CellHeader>January</Table.CellHeader>
* <Table.Cell numeric>£165.00</Table.Cell>
* <Table.Cell numeric>£85.00</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>February</Table.CellHeader>
* <Table.Cell numeric>£165.00</Table.Cell>
* <Table.Cell numeric>£85.00</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>March</Table.CellHeader>
* <Table.Cell numeric>£151.00</Table.Cell>
* <Table.Cell numeric>£77.00</Table.Cell>
* </Table.Row>
* <Table.Row>
* <Table.CellHeader>April</Table.CellHeader>
* <Table.Cell numeric>£136.00</Table.Cell>
* <Table.Cell numeric>£70.00</Table.Cell>
* </Table.Row>
* </Table>
* ```
*
* Setting custom column widths
*
* ```jsx
* <Table
* caption="Custom header"
* head={
* <Table.Row>
* <Table.CellHeader setWidth="one-half>Wide header</Table.CellHeader>
* <Table.CellHeader setWidth="30%">Regular</Table.CellHeader>
* <Table.CellHeader>Normal</Table.CellHeader>
* </Table.Row>
* }
* >
* <Table.Row>
* <Table.Cell>Header makes this column one-half wide</Table.Cell>
* <Table.Cell>And this one 30%</Table.Cell>
* <Table.Cell>Another</Table.Cell>
* </Table.Row>
* </Table>
* ```
*
* ### References:
*
* - https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss
*
*/
var Table = function Table(_ref) {
var caption = _ref.caption,
children = _ref.children,
_ref$body = _ref.body,
body = _ref$body === void 0 ? children : _ref$body,
head = _ref.head,
props = _objectWithoutPropertiesLoose(_ref, ["caption", "children", "body", "head"]);
return /*#__PURE__*/_react["default"].createElement(StyledTable, props, caption && /*#__PURE__*/_react["default"].createElement(_Caption["default"], null, caption), head && /*#__PURE__*/_react["default"].createElement(_TableHeader["default"], null, head), /*#__PURE__*/_react["default"].createElement(_TableBody["default"], null, body));
};
Table.defaultProps = {
body: undefined,
caption: undefined,
children: undefined,
head: undefined
};
Table.CellHeader = _CellHeader["default"];
Table.Row = _Row["default"];
Table.Cell = _Cell["default"];
Table.Header = _CellHeader["default"];
var _default = Table;
exports["default"] = _default;
module.exports = exports.default;
//# sourceMappingURL=index.js.map
{"version":3,"sources":["../src/index.tsx"],"names":["StyledTable","typography","font","size","textColour","width","borderSpacing","borderCollapse","spacing","withWhiteSpace","marginBottom","Table","caption","children","body","head","props","defaultProps","undefined","CellHeader","Row","Cell","Header"],"mappings":";;;;;AAEA;;AAEA;;AACA;;AAEA;;AACA;;AACA;;AAEA;;AACA;;AACA;;;;;;AAEA,IAAMA,WAAW,GAAG,kCAAO,OAAP,CAAH;AAAA;AAAA;AAAA,GACfC,gBAAWC,IAAX,CAAgB;AAAEC,EAAAA,IAAI,EAAE;AAAR,CAAhB,CADe,EAEfF,gBAAWG,UAFI,EAGf;AACEC,EAAAA,KAAK,EAAE,MADT;AAEEC,EAAAA,aAAa,EAAE,CAFjB;AAGEC,EAAAA,cAAc,EAAE;AAHlB,CAHe,EAQfC,aAAQC,cAAR,CAAuB;AAAEC,EAAAA,YAAY,EAAE;AAAhB,CAAvB,CARe,CAAjB;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,IAAMC,KAAK,GAAG,SAARA,KAAQ;AAAA,MAAGC,OAAH,QAAGA,OAAH;AAAA,MAAYC,QAAZ,QAAYA,QAAZ;AAAA,uBAAsBC,IAAtB;AAAA,MAAsBA,IAAtB,0BAA6BD,QAA7B;AAAA,MAAuCE,IAAvC,QAAuCA,IAAvC;AAAA,MAAgDC,KAAhD;;AAAA,sBACZ,gCAAC,WAAD,EAAiBA,KAAjB,EACGJ,OAAO,iBAAI,gCAAC,mBAAD,QAAUA,OAAV,CADd,EAEGG,IAAI,iBAAI,gCAAC,uBAAD,QAAcA,IAAd,CAFX,eAGE,gCAAC,qBAAD,QAAYD,IAAZ,CAHF,CADY;AAAA,CAAd;;AAQAH,KAAK,CAACM,YAAN,GAAqB;AACnBH,EAAAA,IAAI,EAAEI,SADa;AAEnBN,EAAAA,OAAO,EAAEM,SAFU;AAGnBL,EAAAA,QAAQ,EAAEK,SAHS;AAInBH,EAAAA,IAAI,EAAEG;AAJa,CAArB;AAkBAP,KAAK,CAACQ,UAAN,GAAmBA,sBAAnB;AACAR,KAAK,CAACS,GAAN,GAAYA,eAAZ;AACAT,KAAK,CAACU,IAAN,GAAaA,gBAAb;AACAV,KAAK,CAACW,MAAN,GAAeH,sBAAf;eAEeR,K","sourcesContent":["// https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\nimport { spacing, typography } from '@govuk-react/lib';\n\nimport TableHeader from './atoms/TableHeader';\nimport TableBody from './atoms/TableBody';\nimport Caption from './atoms/Caption';\n\nimport CellHeader from './atoms/CellHeader';\nimport Cell from './atoms/Cell';\nimport Row from './atoms/Row';\n\nconst StyledTable = styled('table')(\n typography.font({ size: 19 }),\n typography.textColour,\n {\n width: '100%',\n borderSpacing: 0,\n borderCollapse: 'collapse',\n },\n spacing.withWhiteSpace({ marginBottom: 6 })\n);\n\n/**\n *\n * ### Usage\n *\n * The Table component provides a construction kit of elements to create a table\n *\n * Component default\n *\n * ```jsx\n * import { Table } from 'govuk-react'\n *\n * <Table caption=\"Dates and amounts\">\n * <Table.Row>\n * <Table.CellHeader>First 6 weeks</Table.CellHeader>\n * <Table.Cell>£109.80 per week</Table.Cell>\n * </Table.Row>\n * <Table.Row>\n * <Table.CellHeader>Next 33 weeks</Table.CellHeader>\n * <Table.Cell>£109.80 per week</Table.Cell>\n * </Table.Row>\n * <Table.Row>\n * <Table.CellHeader>Total estimated pay</Table.CellHeader>\n * <Table.Cell>£4,282.20</Table.Cell>\n * </Table.Row>\n * <Table.Row>\n * <Table.CellHeader>Tell the mother&rsquo;s employer</Table.CellHeader>\n * <Table.Cell>28 days before they want to start maternity pay</Table.Cell>\n * </Table.Row>\n * </Table>\n * ```\n *\n * Numeric tabular data\n *\n * ```jsx\n * const example2Head = (\n * <Table.Row>\n * <Table.CellHeader>Month you apply</Table.CellHeader>\n * <Table.CellHeader numeric>Rate for vehicles</Table.CellHeader>\n * <Table.CellHeader numeric>Rate for bicycles</Table.CellHeader>\n * </Table.Row>\n * );\n *\n * <Table\n * caption=\"Attention, I am the caption of this ship!\"\n * head={example2Head}\n * >\n * <Table.Row>\n * <Table.CellHeader>January</Table.CellHeader>\n * <Table.Cell numeric>£165.00</Table.Cell>\n * <Table.Cell numeric>£85.00</Table.Cell>\n * </Table.Row>\n * <Table.Row>\n * <Table.CellHeader>February</Table.CellHeader>\n * <Table.Cell numeric>£165.00</Table.Cell>\n * <Table.Cell numeric>£85.00</Table.Cell>\n * </Table.Row>\n * <Table.Row>\n * <Table.CellHeader>March</Table.CellHeader>\n * <Table.Cell numeric>£151.00</Table.Cell>\n * <Table.Cell numeric>£77.00</Table.Cell>\n * </Table.Row>\n * <Table.Row>\n * <Table.CellHeader>April</Table.CellHeader>\n * <Table.Cell numeric>£136.00</Table.Cell>\n * <Table.Cell numeric>£70.00</Table.Cell>\n * </Table.Row>\n * </Table>\n * ```\n *\n * Setting custom column widths\n *\n * ```jsx\n * <Table\n * caption=\"Custom header\"\n * head={\n * <Table.Row>\n * <Table.CellHeader setWidth=\"one-half>Wide header</Table.CellHeader>\n * <Table.CellHeader setWidth=\"30%\">Regular</Table.CellHeader>\n * <Table.CellHeader>Normal</Table.CellHeader>\n * </Table.Row>\n * }\n * >\n * <Table.Row>\n * <Table.Cell>Header makes this column one-half wide</Table.Cell>\n * <Table.Cell>And this one 30%</Table.Cell>\n * <Table.Cell>Another</Table.Cell>\n * </Table.Row>\n * </Table>\n * ```\n *\n * ### References:\n *\n * - https://github.com/alphagov/govuk-frontend/blob/main/src/govuk/components/table/_table.scss\n *\n */\nconst Table = ({ caption, children, body = children, head, ...props }) => (\n <StyledTable {...props}>\n {caption && <Caption>{caption}</Caption>}\n {head && <TableHeader>{head}</TableHeader>}\n <TableBody>{body}</TableBody>\n </StyledTable>\n);\n\nTable.defaultProps = {\n body: undefined,\n caption: undefined,\n children: undefined,\n head: undefined,\n};\n\nTable.propTypes = {\n /** Table body rows and cells (for backward compatibility) */\n body: PropTypes.node,\n /** Table body rows and cells (recommended way) */\n children: PropTypes.node,\n /** Table header rows and cells */\n head: PropTypes.node,\n /** Table caption title */\n caption: PropTypes.string,\n};\n\nTable.CellHeader = CellHeader;\nTable.Row = Row;\nTable.Cell = Cell;\nTable.Header = CellHeader;\n\nexport default Table;\n"],"file":"index.js"}
"use strict";
exports.__esModule = true;
exports.WithCustomColumnWidths = exports.WithAThreeQuarterWidthColumnAndOneQuarter = exports.WithAHeadRowAndNumericTabularData = exports.WithACaption = exports.Default = exports["default"] = void 0;
var _react = _interopRequireDefault(require("react"));
var _ = _interopRequireDefault(require("."));
var _fixtures = require("./fixtures");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var _default = {
title: 'Typography/Table',
component: _["default"]
};
exports["default"] = _default;
var Default = function Default() {
return /*#__PURE__*/_react["default"].createElement(_fixtures.TableSimple, null);
};
exports.Default = Default;
var WithACaption = function WithACaption() {
return /*#__PURE__*/_react["default"].createElement(_fixtures.TableWithCaption, null);
};
exports.WithACaption = WithACaption;
var WithAHeadRowAndNumericTabularData = function WithAHeadRowAndNumericTabularData() {
return /*#__PURE__*/_react["default"].createElement(_fixtures.TableWithHeadAndNumerics, null);
};
exports.WithAHeadRowAndNumericTabularData = WithAHeadRowAndNumericTabularData;
var WithAThreeQuarterWidthColumnAndOneQuarter = function WithAThreeQuarterWidthColumnAndOneQuarter() {
return /*#__PURE__*/_react["default"].createElement(_fixtures.TableThreeQuartersOneQuarter, null);
};
exports.WithAThreeQuarterWidthColumnAndOneQuarter = WithAThreeQuarterWidthColumnAndOneQuarter;
var WithCustomColumnWidths = function WithCustomColumnWidths() {
return /*#__PURE__*/_react["default"].createElement(_fixtures.TableWithCustomWidths, null);
};
exports.WithCustomColumnWidths = WithCustomColumnWidths;
//# sourceMappingURL=stories.js.map
{"version":3,"sources":["../src/stories.tsx"],"names":["title","component","Table","Default","WithACaption","WithAHeadRowAndNumericTabularData","WithAThreeQuarterWidthColumnAndOneQuarter","WithCustomColumnWidths"],"mappings":";;;;;AAAA;;AAEA;;AAEA;;;;eAQe;AACbA,EAAAA,KAAK,EAAE,kBADM;AAEbC,EAAAA,SAAS,EAAEC;AAFE,C;;;AAKR,IAAMC,OAAO,GAAG,SAAVA,OAAU;AAAA,sBAAM,gCAAC,qBAAD,OAAN;AAAA,CAAhB;;;;AACA,IAAMC,YAAY,GAAG,SAAfA,YAAe;AAAA,sBAAM,gCAAC,0BAAD,OAAN;AAAA,CAArB;;;;AACA,IAAMC,iCAAiC,GAAG,SAApCA,iCAAoC;AAAA,sBAAM,gCAAC,kCAAD,OAAN;AAAA,CAA1C;;;;AACA,IAAMC,yCAAyC,GAAG,SAA5CA,yCAA4C;AAAA,sBAAM,gCAAC,sCAAD,OAAN;AAAA,CAAlD;;;;AACA,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB;AAAA,sBAAM,gCAAC,+BAAD,OAAN;AAAA,CAA/B","sourcesContent":["import React from 'react';\n\nimport Table from '.';\n\nimport {\n TableSimple,\n TableWithCaption,\n TableWithHeadAndNumerics,\n TableWithCustomWidths,\n TableThreeQuartersOneQuarter,\n} from './fixtures';\n\nexport default {\n title: 'Typography/Table',\n component: Table,\n};\n\nexport const Default = () => <TableSimple />;\nexport const WithACaption = () => <TableWithCaption />;\nexport const WithAHeadRowAndNumericTabularData = () => <TableWithHeadAndNumerics />;\nexport const WithAThreeQuarterWidthColumnAndOneQuarter = () => <TableThreeQuartersOneQuarter />;\nexport const WithCustomColumnWidths = () => <TableWithCustomWidths />;\n"],"file":"stories.js"}
"use strict";
var _react = _interopRequireDefault(require("react"));
var _enzyme = require("enzyme");
var _fixtures = _interopRequireWildcard(require("./fixtures"));
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
describe('Table', function () {
it('renders without crashing', function () {
(0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_fixtures["default"], null));
});
it('renders a simple example matching snapshot', function () {
expect((0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_fixtures.TableSimple, null))).toMatchSnapshot('simple table');
});
it('renders a table with a caption matching snapshot', function () {
expect((0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_fixtures.TableWithCaption, null))).toMatchSnapshot('table with caption');
});
it('renders a table with custom widths matching snapshot', function () {
expect((0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_fixtures.TableWithCustomWidths, null))).toMatchSnapshot('table with custom widths');
});
it('renders a table with head and numerics matching snapshot', function () {
expect((0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_fixtures.TableWithHeadAndNumerics, null))).toMatchSnapshot('table with head and numerics');
});
});
//# sourceMappingURL=test.js.map
{"version":3,"sources":["../src/test.tsx"],"names":["describe","it","expect","toMatchSnapshot"],"mappings":";;AAAA;;AACA;;AAEA;;;;;;;;AAEAA,QAAQ,CAAC,OAAD,EAAU,YAAM;AACtBC,EAAAA,EAAE,CAAC,0BAAD,EAA6B,YAAM;AACnC,qCAAM,gCAAC,oBAAD,OAAN;AACD,GAFC,CAAF;AAIAA,EAAAA,EAAE,CAAC,4CAAD,EAA+C,YAAM;AACrDC,IAAAA,MAAM,CAAC,iCAAM,gCAAC,qBAAD,OAAN,CAAD,CAAN,CAA+BC,eAA/B,CAA+C,cAA/C;AACD,GAFC,CAAF;AAIAF,EAAAA,EAAE,CAAC,kDAAD,EAAqD,YAAM;AAC3DC,IAAAA,MAAM,CAAC,iCAAM,gCAAC,0BAAD,OAAN,CAAD,CAAN,CAAoCC,eAApC,CAAoD,oBAApD;AACD,GAFC,CAAF;AAIAF,EAAAA,EAAE,CAAC,sDAAD,EAAyD,YAAM;AAC/DC,IAAAA,MAAM,CAAC,iCAAM,gCAAC,+BAAD,OAAN,CAAD,CAAN,CAAyCC,eAAzC,CAAyD,0BAAzD;AACD,GAFC,CAAF;AAIAF,EAAAA,EAAE,CAAC,0DAAD,EAA6D,YAAM;AACnEC,IAAAA,MAAM,CAAC,iCAAM,gCAAC,kCAAD,OAAN,CAAD,CAAN,CAA4CC,eAA5C,CAA4D,8BAA5D;AACD,GAFC,CAAF;AAGD,CApBO,CAAR","sourcesContent":["import React from 'react';\nimport { mount } from 'enzyme';\n\nimport Table, { TableSimple, TableWithCaption, TableWithHeadAndNumerics, TableWithCustomWidths } from './fixtures';\n\ndescribe('Table', () => {\n it('renders without crashing', () => {\n mount(<Table />);\n });\n\n it('renders a simple example matching snapshot', () => {\n expect(mount(<TableSimple />)).toMatchSnapshot('simple table');\n });\n\n it('renders a table with a caption matching snapshot', () => {\n expect(mount(<TableWithCaption />)).toMatchSnapshot('table with caption');\n });\n\n it('renders a table with custom widths matching snapshot', () => {\n expect(mount(<TableWithCustomWidths />)).toMatchSnapshot('table with custom widths');\n });\n\n it('renders a table with head and numerics matching snapshot', () => {\n expect(mount(<TableWithHeadAndNumerics />)).toMatchSnapshot('table with head and numerics');\n });\n});\n"],"file":"test.js"}