@fremtind/jokul 0.61.0 → 0.62.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/build-stats.html +1 -1
- package/build/cjs/components/table/DataTable.cjs +1 -1
- package/build/cjs/components/table/DataTable.cjs.map +1 -1
- package/build/cjs/components/table/Table.cjs +1 -1
- package/build/cjs/components/table/Table.cjs.map +1 -1
- package/build/cjs/components/table/stories/table.stories.cjs +1 -1
- package/build/cjs/components/table/stories/table.stories.cjs.map +1 -1
- package/build/cjs/components/table/types.d.cts +3 -1
- package/build/es/components/table/DataTable.js +1 -1
- package/build/es/components/table/DataTable.js.map +1 -1
- package/build/es/components/table/Table.js +1 -1
- package/build/es/components/table/Table.js.map +1 -1
- package/build/es/components/table/stories/table.stories.js +1 -1
- package/build/es/components/table/stories/table.stories.js.map +1 -1
- package/build/es/components/table/types.d.ts +3 -1
- package/build/style.css +1 -1
- package/package.json +2 -2
- package/styles/components/button/button.css +3 -3
- package/styles/components/button/button.min.css +1 -1
- package/styles/components/checkbox/checkbox.css +4 -4
- package/styles/components/checkbox/checkbox.min.css +1 -1
- package/styles/components/checkbox-panel/checkbox-panel.css +2 -2
- package/styles/components/checkbox-panel/checkbox-panel.min.css +1 -1
- package/styles/components/countdown/countdown.css +2 -2
- package/styles/components/countdown/countdown.min.css +1 -1
- package/styles/components/feedback/feedback.css +2 -2
- package/styles/components/feedback/feedback.min.css +1 -1
- package/styles/components/input-group/input-group.css +2 -2
- package/styles/components/input-group/input-group.min.css +1 -1
- package/styles/components/loader/loader.css +6 -6
- package/styles/components/loader/loader.min.css +1 -1
- package/styles/components/loader/skeleton-loader.css +5 -5
- package/styles/components/loader/skeleton-loader.min.css +1 -1
- package/styles/components/message/message.css +2 -2
- package/styles/components/message/message.min.css +1 -1
- package/styles/components/progress-bar/progress-bar.css +1 -1
- package/styles/components/progress-bar/progress-bar.min.css +1 -1
- package/styles/components/radio-button/radio-button.css +2 -2
- package/styles/components/radio-button/radio-button.min.css +1 -1
- package/styles/components/radio-panel/radio-panel.css +2 -2
- package/styles/components/radio-panel/radio-panel.min.css +1 -1
- package/styles/components/system-message/system-message.css +2 -2
- package/styles/components/system-message/system-message.min.css +1 -1
- package/styles/components/toast/toast.css +4 -4
- package/styles/components/toast/toast.min.css +1 -1
- package/styles/styles.css +39 -39
- package/styles/styles.min.css +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("react"),a=require("./Table.cjs"),r=require("./TableBody.cjs"),i=require("./TableCaption.cjs"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("react"),a=require("./Table.cjs"),r=require("./TableBody.cjs"),i=require("./TableCaption.cjs"),c=require("./TableCell.cjs"),s=require("./TableHead.cjs"),t=require("./TableHeader.cjs"),n=require("./TableRow.cjs"),d=l.forwardRef((({caption:l,columns:d,emptyTableText:b,rows:o,verticalAlign:T,...j},u)=>e.jsxs(a.Table,{caption:e.jsx(i.TableCaption,{srOnly:!0,children:l}),fullWidth:!0,...j,ref:u,children:[e.jsx(s.TableHead,{children:e.jsx(n.TableRow,{children:d.map(((l,a)=>e.jsx(t.TableHeader,{density:"compact",bold:!0,children:l},a)))})}),e.jsxs(r.TableBody,{children:[0===o.length&&b&&e.jsx(n.TableRow,{children:e.jsx(c.TableCell,{colSpan:d.length,children:b})}),o.map(((l,a)=>e.jsx(n.TableRow,{children:l.map(((l,a)=>e.jsx(c.TableCell,{"data-th":d[a],verticalAlign:T,children:l},a)))},a)))]})]})));d.displayName="DataTable",exports.DataTable=d;
|
|
2
2
|
//# sourceMappingURL=DataTable.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTable.cjs","sources":["../../../../src/components/table/DataTable.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport { Table } from \"./Table.js\";\nimport { TableBody } from \"./TableBody.js\";\nimport { TableCaption } from \"./TableCaption.js\";\nimport { TableCell } from \"./TableCell.js\";\nimport { TableHead } from \"./TableHead.js\";\nimport { TableHeader } from \"./TableHeader.js\";\nimport { TableRow } from \"./TableRow.js\";\nimport { DataTableProps } from \"./types.js\";\n\nconst DataTable = forwardRef<HTMLTableElement, DataTableProps>(\n (\n { caption, columns, emptyTableText, rows, verticalAlign, ...rest },\n ref,\n ) => {\n return (\n <Table fullWidth={true}
|
|
1
|
+
{"version":3,"file":"DataTable.cjs","sources":["../../../../src/components/table/DataTable.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport { Table } from \"./Table.js\";\nimport { TableBody } from \"./TableBody.js\";\nimport { TableCaption } from \"./TableCaption.js\";\nimport { TableCell } from \"./TableCell.js\";\nimport { TableHead } from \"./TableHead.js\";\nimport { TableHeader } from \"./TableHeader.js\";\nimport { TableRow } from \"./TableRow.js\";\nimport { DataTableProps } from \"./types.js\";\n\nconst DataTable = forwardRef<HTMLTableElement, DataTableProps>(\n (\n { caption, columns, emptyTableText, rows, verticalAlign, ...rest },\n ref,\n ) => {\n return (\n <Table\n caption={<TableCaption srOnly>{caption}</TableCaption>}\n fullWidth={true}\n {...rest}\n ref={ref}\n >\n <TableHead>\n <TableRow>\n {columns.map((column, index) => (\n <TableHeader key={index} density=\"compact\" bold>\n {column}\n </TableHeader>\n ))}\n </TableRow>\n </TableHead>\n <TableBody>\n {rows.length === 0 && emptyTableText && (\n <TableRow>\n <TableCell colSpan={columns.length}>\n {emptyTableText}\n </TableCell>\n </TableRow>\n )}\n {rows.map((row, rowIndex) => (\n <TableRow key={rowIndex}>\n {row.map((cell, cellIndex) => (\n <TableCell\n key={cellIndex}\n data-th={columns[cellIndex]}\n verticalAlign={verticalAlign}\n >\n {cell}\n </TableCell>\n ))}\n </TableRow>\n ))}\n </TableBody>\n </Table>\n );\n },\n);\n\nDataTable.displayName = \"DataTable\";\n\nexport { DataTable };\n"],"names":["DataTable","forwardRef","caption","columns","emptyTableText","rows","verticalAlign","rest","ref","jsxs","Table","jsx","TableCaption","srOnly","children","fullWidth","TableHead","TableRow","map","column","index","TableHeader","density","bold","TableBody","length","TableCell","colSpan","row","rowIndex","cell","cellIndex","displayName"],"mappings":"mVAUMA,EAAYC,EAAAA,YACd,EACMC,QAAAA,EAASC,QAAAA,EAASC,eAAAA,EAAgBC,KAAAA,EAAMC,cAAAA,KAAkBC,GAC5DC,IAGIC,EAAAA,KAACC,EAAAA,MAAA,CACGR,QAASS,EAAAA,IAACC,eAAa,CAAAC,QAAM,EAAEC,SAAQZ,IACvCa,WAAW,KACPR,EACJC,IAAAA,EAEAM,SAAA,CAAAH,EAAAA,IAACK,aACGF,SAACH,MAAAM,EAAAA,SAAA,CACIH,WAAQI,KAAI,CAACC,EAAQC,IAClBT,MAACU,EAAAA,YAAwB,CAAAC,QAAQ,UAAUC,MAAI,EAC1CT,YADaM,gBAM7BI,EAAAA,UACI,CAAAV,SAAA,CAAgB,IAAXT,EAAAoB,QAAgBrB,GACjBO,EAAAA,IAAAM,EAAAA,SAAA,CACGH,SAACH,EAAAA,IAAAe,EAAAA,UAAA,CAAUC,QAASxB,EAAQsB,OACvBX,SAAAV,MAIZC,EAAKa,KAAI,CAACU,EAAKC,IACXlB,EAAAA,IAAAM,EAAAA,SAAA,CACIH,SAAIc,EAAAV,KAAI,CAACY,EAAMC,IACZpB,EAAAA,IAACe,EAAAA,UAAA,CAEG,UAASvB,EAAQ4B,GACjBzB,cAAAA,EAECQ,SAAAgB,GAJIC,MAHFF,aAkBvC7B,EAAUgC,YAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("../../../clsx-E3yX_9sL.cjs"),l=require("react"),s=require("./tableContext.cjs"),a=l.forwardRef((({className:a,
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("../../../clsx-E3yX_9sL.cjs"),l=require("react"),s=require("./tableContext.cjs"),a=l.forwardRef((({className:a,caption:r,children:i,density:c,collapseToList:o=!1,fullWidth:n=!1,tabIndex:d,...b},u)=>{const[x,j]=l.useState(!1);return e.jsx(s.TableContextProvider,{state:{density:c,collapseToList:o,setHasStickyHead:j},children:e.jsxs("table",{className:t.clsx("jkl-table",a,{"jkl-table--full-width":n,"jkl-table--collapse-to-list":o}),...b,tabIndex:x?0:d,ref:u,children:[r,i]})})}));a.displayName="Table",exports.Table=a;
|
|
2
2
|
//# sourceMappingURL=Table.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.cjs","sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef, useState } from \"react\";\nimport { TableContextProvider } from \"./tableContext.js\";\nimport { TableProps } from \"./types.js\";\n\nconst Table = forwardRef<HTMLTableElement, TableProps>(\n (\n {\n className,\n density,\n collapseToList = false,\n fullWidth = false,\n tabIndex,\n ...rest\n },\n ref,\n ) => {\n const [hasStickyHead, setHasStickyHead] = useState<boolean>(false);\n\n return (\n <TableContextProvider\n state={{ density, collapseToList, setHasStickyHead }}\n >\n <table\n className={clsx(\"jkl-table\", className, {\n [\"jkl-table--full-width\"]: fullWidth,\n [\"jkl-table--collapse-to-list\"]: collapseToList,\n })}\n {...rest}\n // For content in a scrollable table to be accessible with keyboard\n // navigation we need to set tabIndex\n // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex\n tabIndex={hasStickyHead ? 0 : tabIndex}\n ref={ref}\n
|
|
1
|
+
{"version":3,"file":"Table.cjs","sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef, useState } from \"react\";\nimport { TableContextProvider } from \"./tableContext.js\";\nimport { TableProps } from \"./types.js\";\n\nconst Table = forwardRef<HTMLTableElement, TableProps>(\n (\n {\n className,\n caption,\n children,\n density,\n collapseToList = false,\n fullWidth = false,\n tabIndex,\n ...rest\n },\n ref,\n ) => {\n const [hasStickyHead, setHasStickyHead] = useState<boolean>(false);\n\n return (\n <TableContextProvider\n state={{ density, collapseToList, setHasStickyHead }}\n >\n <table\n className={clsx(\"jkl-table\", className, {\n [\"jkl-table--full-width\"]: fullWidth,\n [\"jkl-table--collapse-to-list\"]: collapseToList,\n })}\n {...rest}\n // For content in a scrollable table to be accessible with keyboard\n // navigation we need to set tabIndex\n // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex\n tabIndex={hasStickyHead ? 0 : tabIndex}\n ref={ref}\n >\n {caption}\n {children}\n </table>\n </TableContextProvider>\n );\n },\n);\n\nTable.displayName = \"Table\";\n\nexport { Table };\n"],"names":["Table","forwardRef","className","caption","children","density","collapseToList","fullWidth","tabIndex","rest","ref","hasStickyHead","setHasStickyHead","useState","jsx","TableContextProvider","state","jsxs","clsx","displayName"],"mappings":"gNAKMA,EAAQC,EAAAA,YACV,EAEQC,UAAAA,EACAC,QAAAA,EACAC,SAAAA,EACAC,QAAAA,EACAC,eAAAA,GAAiB,EACjBC,UAAAA,GAAY,EACZC,SAAAA,KACGC,GAEPC,KAEA,MAAOC,EAAeC,GAAoBC,YAAkB,GAGxD,OAAAC,EAAAA,IAACC,EAAAA,qBAAA,CACGC,MAAO,CAAEX,QAAAA,EAASC,eAAAA,EAAgBM,iBAAAA,GAElCR,SAAAa,EAAAA,KAAC,QAAA,CACGf,UAAWgB,EAAAA,KAAK,YAAahB,EAAW,CACnC,wBAA0BK,EAC1B,8BAAgCD,OAEjCG,EAIJD,SAAUG,EAAgB,EAAIH,EAC9BE,IAAAA,EAECN,SAAA,CAAAD,EACAC,MACL,IAMhBJ,EAAMmB,YAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),r=require("../Table.cjs"),a=require("../TableBody.cjs"),l=require("../TableCaption.cjs"),n=require("../TableCell.cjs"),t=require("../TableHead.cjs"),i=require("../TableHeader.cjs"),s=require("../TableRow.cjs"),d={title:"Komponenter/Table",component:r.Table,parameters:{layout:"centered"},tags:["autodocs"]},o=["Dato","Saksnummer","Kundenummer","Kundenavn","Milepæl","Følger saken"],
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),r=require("../Table.cjs"),a=require("../TableBody.cjs"),l=require("../TableCaption.cjs"),n=require("../TableCell.cjs"),t=require("../TableHead.cjs"),i=require("../TableHeader.cjs"),s=require("../TableRow.cjs"),d={title:"Komponenter/Table",component:r.Table,parameters:{layout:"centered"},tags:["autodocs"]},o=["Dato","Saksnummer","Kundenummer","Kundenavn","Milepæl","Følger saken"],c={args:{caption:e.jsx(l.TableCaption,{srOnly:!0,children:"Overskrift for skjermlesere"}),children:e.jsxs(e.Fragment,{children:[e.jsx(t.TableHead,{children:e.jsx(s.TableRow,{children:o.map(((r,a)=>e.jsx(i.TableHeader,{bold:!0,children:r},a)))})}),e.jsx(a.TableBody,{children:[["24.02.2020","20-1234567","010203 99887","Ola Nordmann","Opprettet","Siri Saksbehandler"],["13.04.2019","20-8382811","010203 99887","Kari Nordkvinne","Opprettet","Siri Saksbehandler"],["31.07.2017","20-1111","010203 99887","Kari Nordkvinne","Opprettet","Per Persen"]].map(((r,a)=>e.jsx(s.TableRow,{children:r.map(((r,a)=>e.jsx(n.TableCell,{"data-th":o[a],align:[1,2].includes(a)?"right":"left",children:r},a)))},a)))})]})},render:a=>e.jsx(r.Table,{caption:a.caption,fullWidth:!0,children:a.children})};exports.TableComponent=c,exports.default=d;
|
|
2
2
|
//# sourceMappingURL=table.stories.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.stories.cjs","sources":["../../../../../src/components/table/stories/table.stories.tsx"],"sourcesContent":["import type { Meta, StoryObj } from \"@storybook/react\";\nimport { Table } from \"../Table.js\";\nimport { TableBody } from \"../TableBody.js\";\nimport { TableCaption } from \"../TableCaption.js\";\nimport { TableCell } from \"../TableCell.js\";\nimport { TableHead } from \"../TableHead.js\";\nimport { TableHeader } from \"../TableHeader.js\";\nimport { TableRow } from \"../TableRow.js\";\nimport \"../styles/_index.scss\";\
|
|
1
|
+
{"version":3,"file":"table.stories.cjs","sources":["../../../../../src/components/table/stories/table.stories.tsx"],"sourcesContent":["import type { Meta, StoryObj } from \"@storybook/react\";\nimport React from \"react\";\nimport { Table } from \"../Table.js\";\nimport { TableBody } from \"../TableBody.js\";\nimport { TableCaption } from \"../TableCaption.js\";\nimport { TableCell } from \"../TableCell.js\";\nimport { TableHead } from \"../TableHead.js\";\nimport { TableHeader } from \"../TableHeader.js\";\nimport { TableRow } from \"../TableRow.js\";\nimport \"../styles/_index.scss\";\n\nconst meta = {\n title: \"Komponenter/Table\",\n component: Table,\n parameters: {\n layout: \"centered\",\n },\n tags: [\"autodocs\"],\n} satisfies Meta<typeof Table>;\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\nconst columns = [\n \"Dato\",\n \"Saksnummer\",\n \"Kundenummer\",\n \"Kundenavn\",\n \"Milepæl\",\n \"Følger saken\",\n];\n\nconst rows = [\n [\n \"24.02.2020\",\n \"20-1234567\",\n \"010203 99887\",\n \"Ola Nordmann\",\n \"Opprettet\",\n \"Siri Saksbehandler\",\n ],\n [\n \"13.04.2019\",\n \"20-8382811\",\n \"010203 99887\",\n \"Kari Nordkvinne\",\n \"Opprettet\",\n \"Siri Saksbehandler\",\n ],\n [\n \"31.07.2017\",\n \"20-1111\",\n \"010203 99887\",\n \"Kari Nordkvinne\",\n \"Opprettet\",\n \"Per Persen\",\n ],\n];\n\nexport const TableComponent: Story = {\n args: {\n caption: (\n <TableCaption srOnly>Overskrift for skjermlesere</TableCaption>\n ),\n children: (\n <>\n <TableHead>\n <TableRow>\n {columns.map((column, index) => (\n <TableHeader key={index} bold>\n {column}\n </TableHeader>\n ))}\n </TableRow>\n </TableHead>\n <TableBody>\n {rows.map((row, rowIndex) => (\n <TableRow key={rowIndex}>\n {row.map((cell, cellIndex) => (\n <TableCell\n key={cellIndex}\n data-th={columns[cellIndex]}\n align={\n [1, 2].includes(cellIndex)\n ? \"right\"\n : \"left\"\n }\n >\n {cell}\n </TableCell>\n ))}\n </TableRow>\n ))}\n </TableBody>\n </>\n ),\n },\n render: (args) => (\n <Table caption={args.caption} fullWidth>\n {args.children}\n </Table>\n ),\n};\n"],"names":["meta","title","component","Table","parameters","layout","tags","columns","TableComponent","args","caption","jsx","TableCaption","srOnly","children","jsxs","Fragment","TableHead","TableRow","map","column","index","TableHeader","bold","TableBody","row","rowIndex","cell","cellIndex","TableCell","align","includes","render","fullWidth"],"mappings":"mWAWMA,EAAO,CACTC,MAAO,oBACPC,UAAWC,EAAAA,MACXC,WAAY,CACRC,OAAQ,YAEZC,KAAM,CAAC,aAMLC,EAAU,CACZ,OACA,aACA,cACA,YACA,UACA,gBA8BSC,EAAwB,CACjCC,KAAM,CACFC,QACIC,EAAAA,IAACC,eAAa,CAAAC,QAAM,EAACC,SAA2B,gCAEpDA,SAEQC,EAAAA,KAAAC,WAAA,CAAAF,SAAA,CAAAH,MAACM,EAAAA,WACGH,SAACH,EAAAA,IAAAO,WAAA,CACIJ,SAAQP,EAAAY,KAAI,CAACC,EAAQC,IACjBV,EAAAA,IAAAW,EAAAA,YAAA,CAAwBC,MAAI,EACxBT,SAAAM,GADaC,SAM7BV,EAAAA,IAAAa,EAAAA,UAAA,CACIV,SA5CR,CACT,CACI,aACA,aACA,eACA,eACA,YACA,sBAEJ,CACI,aACA,aACA,eACA,kBACA,YACA,sBAEJ,CACI,aACA,UACA,eACA,kBACA,YACA,eAqBkBK,KAAI,CAACM,EAAKC,IACZf,EAAAA,IAACO,EACIA,SAAA,CAAAJ,SAAAW,EAAIN,KAAI,CAACQ,EAAMC,IACZjB,EAAAA,IAACkB,EAAAA,UAAA,CAEG,UAAStB,EAAQqB,GACjBE,MACI,CAAC,EAAG,GAAGC,SAASH,GACV,QACA,OAGTd,SAAAa,GARIC,MAHFF,WAoBnCM,OAASvB,GACJE,EAAAA,IAAAR,EAAAA,MAAA,CAAMO,QAASD,EAAKC,QAASuB,WAAS,EAClCnB,SAAAL,EAAKK"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { default as React, ChangeEventHandler, ColgroupHTMLAttributes, ColHTMLAttributes, HTMLAttributes, TableHTMLAttributes, TdHTMLAttributes, ThHTMLAttributes } from 'react';
|
|
1
|
+
import { default as React, ChangeEventHandler, ColgroupHTMLAttributes, ColHTMLAttributes, HTMLAttributes, ReactNode, TableHTMLAttributes, TdHTMLAttributes, ThHTMLAttributes } from 'react';
|
|
2
2
|
import { Density, WithChildren } from '../../core/types.cjs';
|
|
3
3
|
import { TableSortProps } from './utils.cjs';
|
|
4
4
|
export interface DataTableProps extends TableHTMLAttributes<HTMLTableElement> {
|
|
@@ -16,6 +16,8 @@ export interface DataTableProps extends TableHTMLAttributes<HTMLTableElement> {
|
|
|
16
16
|
verticalAlign?: "center" | "top";
|
|
17
17
|
}
|
|
18
18
|
export interface TableProps extends TableHTMLAttributes<HTMLTableElement> {
|
|
19
|
+
caption: ReactNode;
|
|
20
|
+
children: ReactNode;
|
|
19
21
|
density?: Density;
|
|
20
22
|
/** Bryt ned til en stablet listevisning på små skjermer. NB: husk å sette `data-th` på hver celle! */
|
|
21
23
|
collapseToList?: boolean;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as a,jsx as e}from"react/jsx-runtime";import{forwardRef as l}from"react";import{Table as r}from"./Table.js";import{TableBody as o}from"./TableBody.js";import{TableCaption as i}from"./TableCaption.js";import{TableCell as t}from"./TableCell.js";import{TableHead as s}from"./TableHead.js";import{TableHeader as m}from"./TableHeader.js";import{TableRow as n}from"./TableRow.js";const d=l((({caption:l,columns:d,emptyTableText:c,rows:p,verticalAlign:b,...T},h)=>a(r,{
|
|
1
|
+
import{jsxs as a,jsx as e}from"react/jsx-runtime";import{forwardRef as l}from"react";import{Table as r}from"./Table.js";import{TableBody as o}from"./TableBody.js";import{TableCaption as i}from"./TableCaption.js";import{TableCell as t}from"./TableCell.js";import{TableHead as s}from"./TableHead.js";import{TableHeader as m}from"./TableHeader.js";import{TableRow as n}from"./TableRow.js";const d=l((({caption:l,columns:d,emptyTableText:c,rows:p,verticalAlign:b,...T},h)=>a(r,{caption:e(i,{srOnly:!0,children:l}),fullWidth:!0,...T,ref:h,children:[e(s,{children:e(n,{children:d.map(((a,l)=>e(m,{density:"compact",bold:!0,children:a},l)))})}),a(o,{children:[0===p.length&&c&&e(n,{children:e(t,{colSpan:d.length,children:c})}),p.map(((a,l)=>e(n,{children:a.map(((a,l)=>e(t,{"data-th":d[l],verticalAlign:b,children:a},l)))},l)))]})]})));d.displayName="DataTable";export{d as DataTable};
|
|
2
2
|
//# sourceMappingURL=DataTable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTable.js","sources":["../../../../src/components/table/DataTable.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport { Table } from \"./Table.js\";\nimport { TableBody } from \"./TableBody.js\";\nimport { TableCaption } from \"./TableCaption.js\";\nimport { TableCell } from \"./TableCell.js\";\nimport { TableHead } from \"./TableHead.js\";\nimport { TableHeader } from \"./TableHeader.js\";\nimport { TableRow } from \"./TableRow.js\";\nimport { DataTableProps } from \"./types.js\";\n\nconst DataTable = forwardRef<HTMLTableElement, DataTableProps>(\n (\n { caption, columns, emptyTableText, rows, verticalAlign, ...rest },\n ref,\n ) => {\n return (\n <Table fullWidth={true}
|
|
1
|
+
{"version":3,"file":"DataTable.js","sources":["../../../../src/components/table/DataTable.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport { Table } from \"./Table.js\";\nimport { TableBody } from \"./TableBody.js\";\nimport { TableCaption } from \"./TableCaption.js\";\nimport { TableCell } from \"./TableCell.js\";\nimport { TableHead } from \"./TableHead.js\";\nimport { TableHeader } from \"./TableHeader.js\";\nimport { TableRow } from \"./TableRow.js\";\nimport { DataTableProps } from \"./types.js\";\n\nconst DataTable = forwardRef<HTMLTableElement, DataTableProps>(\n (\n { caption, columns, emptyTableText, rows, verticalAlign, ...rest },\n ref,\n ) => {\n return (\n <Table\n caption={<TableCaption srOnly>{caption}</TableCaption>}\n fullWidth={true}\n {...rest}\n ref={ref}\n >\n <TableHead>\n <TableRow>\n {columns.map((column, index) => (\n <TableHeader key={index} density=\"compact\" bold>\n {column}\n </TableHeader>\n ))}\n </TableRow>\n </TableHead>\n <TableBody>\n {rows.length === 0 && emptyTableText && (\n <TableRow>\n <TableCell colSpan={columns.length}>\n {emptyTableText}\n </TableCell>\n </TableRow>\n )}\n {rows.map((row, rowIndex) => (\n <TableRow key={rowIndex}>\n {row.map((cell, cellIndex) => (\n <TableCell\n key={cellIndex}\n data-th={columns[cellIndex]}\n verticalAlign={verticalAlign}\n >\n {cell}\n </TableCell>\n ))}\n </TableRow>\n ))}\n </TableBody>\n </Table>\n );\n },\n);\n\nDataTable.displayName = \"DataTable\";\n\nexport { DataTable };\n"],"names":["DataTable","forwardRef","caption","columns","emptyTableText","rows","verticalAlign","rest","ref","jsxs","Table","jsx","TableCaption","srOnly","children","fullWidth","TableHead","TableRow","map","column","index","TableHeader","density","bold","TableBody","length","TableCell","colSpan","row","rowIndex","cell","cellIndex","displayName"],"mappings":"kYAUA,MAAMA,EAAYC,GACd,EACMC,QAAAA,EAASC,QAAAA,EAASC,eAAAA,EAAgBC,KAAAA,EAAMC,cAAAA,KAAkBC,GAC5DC,IAGIC,EAACC,EAAA,CACGR,QAASS,EAACC,EAAa,CAAAC,QAAM,EAAEC,SAAQZ,IACvCa,WAAW,KACPR,EACJC,IAAAA,EAEAM,SAAA,CAAAH,EAACK,GACGF,SAACH,EAAAM,EAAA,CACIH,WAAQI,KAAI,CAACC,EAAQC,IAClBT,EAACU,EAAwB,CAAAC,QAAQ,UAAUC,MAAI,EAC1CT,YADaM,WAM7BI,EACI,CAAAV,SAAA,CAAgB,IAAXT,EAAAoB,QAAgBrB,GACjBO,EAAAM,EAAA,CACGH,SAACH,EAAAe,EAAA,CAAUC,QAASxB,EAAQsB,OACvBX,SAAAV,MAIZC,EAAKa,KAAI,CAACU,EAAKC,IACXlB,EAAAM,EAAA,CACIH,SAAIc,EAAAV,KAAI,CAACY,EAAMC,IACZpB,EAACe,EAAA,CAEG,UAASvB,EAAQ4B,GACjBzB,cAAAA,EAECQ,SAAAgB,GAJIC,MAHFF,aAkBvC7B,EAAUgC,YAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import{c as
|
|
1
|
+
import{jsx as t,jsxs as e}from"react/jsx-runtime";import{c as a}from"../../../clsx-BeLtu-UY.js";import{forwardRef as s,useState as l}from"react";import{TableContextProvider as o}from"./tableContext.js";const r=s((({className:s,caption:r,children:i,density:c,collapseToList:n=!1,fullWidth:d=!1,tabIndex:m,...b},p)=>{const[f,x]=l(!1);return t(o,{state:{density:c,collapseToList:n,setHasStickyHead:x},children:e("table",{className:a("jkl-table",s,{"jkl-table--full-width":d,"jkl-table--collapse-to-list":n}),...b,tabIndex:f?0:m,ref:p,children:[r,i]})})}));r.displayName="Table";export{r as Table};
|
|
2
2
|
//# sourceMappingURL=Table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.js","sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef, useState } from \"react\";\nimport { TableContextProvider } from \"./tableContext.js\";\nimport { TableProps } from \"./types.js\";\n\nconst Table = forwardRef<HTMLTableElement, TableProps>(\n (\n {\n className,\n density,\n collapseToList = false,\n fullWidth = false,\n tabIndex,\n ...rest\n },\n ref,\n ) => {\n const [hasStickyHead, setHasStickyHead] = useState<boolean>(false);\n\n return (\n <TableContextProvider\n state={{ density, collapseToList, setHasStickyHead }}\n >\n <table\n className={clsx(\"jkl-table\", className, {\n [\"jkl-table--full-width\"]: fullWidth,\n [\"jkl-table--collapse-to-list\"]: collapseToList,\n })}\n {...rest}\n // For content in a scrollable table to be accessible with keyboard\n // navigation we need to set tabIndex\n // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex\n tabIndex={hasStickyHead ? 0 : tabIndex}\n ref={ref}\n
|
|
1
|
+
{"version":3,"file":"Table.js","sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef, useState } from \"react\";\nimport { TableContextProvider } from \"./tableContext.js\";\nimport { TableProps } from \"./types.js\";\n\nconst Table = forwardRef<HTMLTableElement, TableProps>(\n (\n {\n className,\n caption,\n children,\n density,\n collapseToList = false,\n fullWidth = false,\n tabIndex,\n ...rest\n },\n ref,\n ) => {\n const [hasStickyHead, setHasStickyHead] = useState<boolean>(false);\n\n return (\n <TableContextProvider\n state={{ density, collapseToList, setHasStickyHead }}\n >\n <table\n className={clsx(\"jkl-table\", className, {\n [\"jkl-table--full-width\"]: fullWidth,\n [\"jkl-table--collapse-to-list\"]: collapseToList,\n })}\n {...rest}\n // For content in a scrollable table to be accessible with keyboard\n // navigation we need to set tabIndex\n // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex\n tabIndex={hasStickyHead ? 0 : tabIndex}\n ref={ref}\n >\n {caption}\n {children}\n </table>\n </TableContextProvider>\n );\n },\n);\n\nTable.displayName = \"Table\";\n\nexport { Table };\n"],"names":["Table","forwardRef","className","caption","children","density","collapseToList","fullWidth","tabIndex","rest","ref","hasStickyHead","setHasStickyHead","useState","jsx","TableContextProvider","state","jsxs","clsx","displayName"],"mappings":"0MAKA,MAAMA,EAAQC,GACV,EAEQC,UAAAA,EACAC,QAAAA,EACAC,SAAAA,EACAC,QAAAA,EACAC,eAAAA,GAAiB,EACjBC,UAAAA,GAAY,EACZC,SAAAA,KACGC,GAEPC,KAEA,MAAOC,EAAeC,GAAoBC,GAAkB,GAGxD,OAAAC,EAACC,EAAA,CACGC,MAAO,CAAEX,QAAAA,EAASC,eAAAA,EAAgBM,iBAAAA,GAElCR,SAAAa,EAAC,QAAA,CACGf,UAAWgB,EAAK,YAAahB,EAAW,CACnC,wBAA0BK,EAC1B,8BAAgCD,OAEjCG,EAIJD,SAAUG,EAAgB,EAAIH,EAC9BE,IAAAA,EAECN,SAAA,CAAAD,EACAC,MACL,IAMhBJ,EAAMmB,YAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{jsx as e,jsxs as a,Fragment as r}from"react/jsx-runtime";import{Table as l}from"../Table.js";import{TableBody as n}from"../TableBody.js";import{TableCaption as t}from"../TableCaption.js";import{TableCell as o}from"../TableCell.js";import{TableHead as i}from"../TableHead.js";import{TableHeader as s}from"../TableHeader.js";import{TableRow as d}from"../TableRow.js";const m={title:"Komponenter/Table",component:l,parameters:{layout:"centered"},tags:["autodocs"]},p=["Dato","Saksnummer","Kundenummer","Kundenavn","Milepæl","Følger saken"],c={args:{caption:e(t,{srOnly:!0,children:"Overskrift for skjermlesere"}),children:a(r,{children:[e(i,{children:e(d,{children:p.map(((a,r)=>e(s,{bold:!0,children:a},r)))})}),e(n,{children:[["24.02.2020","20-1234567","010203 99887","Ola Nordmann","Opprettet","Siri Saksbehandler"],["13.04.2019","20-8382811","010203 99887","Kari Nordkvinne","Opprettet","Siri Saksbehandler"],["31.07.2017","20-1111","010203 99887","Kari Nordkvinne","Opprettet","Per Persen"]].map(((a,r)=>e(d,{children:a.map(((a,r)=>e(o,{"data-th":p[r],align:[1,2].includes(r)?"right":"left",children:a},r)))},r)))})]})},render:a=>e(l,{caption:a.caption,fullWidth:!0,children:a.children})};export{c as TableComponent,m as default};
|
|
2
2
|
//# sourceMappingURL=table.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.stories.js","sources":["../../../../../src/components/table/stories/table.stories.tsx"],"sourcesContent":["import type { Meta, StoryObj } from \"@storybook/react\";\nimport { Table } from \"../Table.js\";\nimport { TableBody } from \"../TableBody.js\";\nimport { TableCaption } from \"../TableCaption.js\";\nimport { TableCell } from \"../TableCell.js\";\nimport { TableHead } from \"../TableHead.js\";\nimport { TableHeader } from \"../TableHeader.js\";\nimport { TableRow } from \"../TableRow.js\";\nimport \"../styles/_index.scss\";\
|
|
1
|
+
{"version":3,"file":"table.stories.js","sources":["../../../../../src/components/table/stories/table.stories.tsx"],"sourcesContent":["import type { Meta, StoryObj } from \"@storybook/react\";\nimport React from \"react\";\nimport { Table } from \"../Table.js\";\nimport { TableBody } from \"../TableBody.js\";\nimport { TableCaption } from \"../TableCaption.js\";\nimport { TableCell } from \"../TableCell.js\";\nimport { TableHead } from \"../TableHead.js\";\nimport { TableHeader } from \"../TableHeader.js\";\nimport { TableRow } from \"../TableRow.js\";\nimport \"../styles/_index.scss\";\n\nconst meta = {\n title: \"Komponenter/Table\",\n component: Table,\n parameters: {\n layout: \"centered\",\n },\n tags: [\"autodocs\"],\n} satisfies Meta<typeof Table>;\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\nconst columns = [\n \"Dato\",\n \"Saksnummer\",\n \"Kundenummer\",\n \"Kundenavn\",\n \"Milepæl\",\n \"Følger saken\",\n];\n\nconst rows = [\n [\n \"24.02.2020\",\n \"20-1234567\",\n \"010203 99887\",\n \"Ola Nordmann\",\n \"Opprettet\",\n \"Siri Saksbehandler\",\n ],\n [\n \"13.04.2019\",\n \"20-8382811\",\n \"010203 99887\",\n \"Kari Nordkvinne\",\n \"Opprettet\",\n \"Siri Saksbehandler\",\n ],\n [\n \"31.07.2017\",\n \"20-1111\",\n \"010203 99887\",\n \"Kari Nordkvinne\",\n \"Opprettet\",\n \"Per Persen\",\n ],\n];\n\nexport const TableComponent: Story = {\n args: {\n caption: (\n <TableCaption srOnly>Overskrift for skjermlesere</TableCaption>\n ),\n children: (\n <>\n <TableHead>\n <TableRow>\n {columns.map((column, index) => (\n <TableHeader key={index} bold>\n {column}\n </TableHeader>\n ))}\n </TableRow>\n </TableHead>\n <TableBody>\n {rows.map((row, rowIndex) => (\n <TableRow key={rowIndex}>\n {row.map((cell, cellIndex) => (\n <TableCell\n key={cellIndex}\n data-th={columns[cellIndex]}\n align={\n [1, 2].includes(cellIndex)\n ? \"right\"\n : \"left\"\n }\n >\n {cell}\n </TableCell>\n ))}\n </TableRow>\n ))}\n </TableBody>\n </>\n ),\n },\n render: (args) => (\n <Table caption={args.caption} fullWidth>\n {args.children}\n </Table>\n ),\n};\n"],"names":["meta","title","component","Table","parameters","layout","tags","columns","TableComponent","args","caption","jsx","TableCaption","srOnly","children","jsxs","Fragment","TableHead","TableRow","map","column","index","TableHeader","bold","TableBody","row","rowIndex","cell","cellIndex","TableCell","align","includes","render","fullWidth"],"mappings":"oXAWA,MAAMA,EAAO,CACTC,MAAO,oBACPC,UAAWC,EACXC,WAAY,CACRC,OAAQ,YAEZC,KAAM,CAAC,aAMLC,EAAU,CACZ,OACA,aACA,cACA,YACA,UACA,gBA8BSC,EAAwB,CACjCC,KAAM,CACFC,QACIC,EAACC,EAAa,CAAAC,QAAM,EAACC,SAA2B,gCAEpDA,SAEQC,EAAAC,EAAA,CAAAF,SAAA,CAAAH,EAACM,GACGH,SAACH,EAAAO,EAAA,CACIJ,SAAQP,EAAAY,KAAI,CAACC,EAAQC,IACjBV,EAAAW,EAAA,CAAwBC,MAAI,EACxBT,SAAAM,GADaC,SAM7BV,EAAAa,EAAA,CACIV,SA5CR,CACT,CACI,aACA,aACA,eACA,eACA,YACA,sBAEJ,CACI,aACA,aACA,eACA,kBACA,YACA,sBAEJ,CACI,aACA,UACA,eACA,kBACA,YACA,eAqBkBK,KAAI,CAACM,EAAKC,IACZf,EAACO,EACI,CAAAJ,SAAAW,EAAIN,KAAI,CAACQ,EAAMC,IACZjB,EAACkB,EAAA,CAEG,UAAStB,EAAQqB,GACjBE,MACI,CAAC,EAAG,GAAGC,SAASH,GACV,QACA,OAGTd,SAAAa,GARIC,MAHFF,WAoBnCM,OAASvB,GACJE,EAAAR,EAAA,CAAMO,QAASD,EAAKC,QAASuB,WAAS,EAClCnB,SAAAL,EAAKK"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { default as React, ChangeEventHandler, ColgroupHTMLAttributes, ColHTMLAttributes, HTMLAttributes, TableHTMLAttributes, TdHTMLAttributes, ThHTMLAttributes } from 'react';
|
|
1
|
+
import { default as React, ChangeEventHandler, ColgroupHTMLAttributes, ColHTMLAttributes, HTMLAttributes, ReactNode, TableHTMLAttributes, TdHTMLAttributes, ThHTMLAttributes } from 'react';
|
|
2
2
|
import { Density, WithChildren } from '../../core/types.js';
|
|
3
3
|
import { TableSortProps } from './utils.js';
|
|
4
4
|
export interface DataTableProps extends TableHTMLAttributes<HTMLTableElement> {
|
|
@@ -16,6 +16,8 @@ export interface DataTableProps extends TableHTMLAttributes<HTMLTableElement> {
|
|
|
16
16
|
verticalAlign?: "center" | "top";
|
|
17
17
|
}
|
|
18
18
|
export interface TableProps extends TableHTMLAttributes<HTMLTableElement> {
|
|
19
|
+
caption: ReactNode;
|
|
20
|
+
children: ReactNode;
|
|
19
21
|
density?: Density;
|
|
20
22
|
/** Bryt ned til en stablet listevisning på små skjermer. NB: husk å sette `data-th` på hver celle! */
|
|
21
23
|
collapseToList?: boolean;
|