@rolster/react-components 18.12.7 → 18.12.9

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.
@@ -1,22 +1,25 @@
1
- import { RefObject } from 'react';
1
+ import { DatatableHook } from '../../../hooks';
2
2
  import { RlsComponent } from '../../definitions';
3
3
  interface DatatableCellProps extends RlsComponent {
4
4
  className?: string;
5
5
  control?: boolean;
6
6
  overflow?: boolean;
7
7
  }
8
- interface DatatableDateProps extends RlsComponent {
8
+ interface DatatableDataProps extends RlsComponent {
9
9
  className?: string;
10
10
  error?: boolean;
11
11
  }
12
12
  interface DatatableProps extends RlsComponent {
13
- bodyRef?: RefObject<HTMLTableSectionElement>;
13
+ datatable?: DatatableHook;
14
14
  footer?: JSX.Element;
15
15
  header?: JSX.Element;
16
+ summary?: JSX.Element;
16
17
  }
17
18
  export declare function RlsDatatableHeader({ children }: RlsComponent): import("react/jsx-runtime").JSX.Element;
18
19
  export declare function RlsDatatableTitle({ children, className, control }: DatatableCellProps): import("react/jsx-runtime").JSX.Element;
19
- export declare function RlsDatatableData({ children, className, error }: DatatableDateProps): import("react/jsx-runtime").JSX.Element;
20
+ export declare function RlsDatatableData({ children, className, error }: DatatableDataProps): import("react/jsx-runtime").JSX.Element;
20
21
  export declare function RlsDatatableCell({ children, className, control, overflow }: DatatableCellProps): import("react/jsx-runtime").JSX.Element;
21
- export declare function RlsDatatable({ bodyRef, children, footer, header, rlsTheme }: DatatableProps): import("react/jsx-runtime").JSX.Element;
22
+ export declare function RlsDatatableTotals({ children, className, error }: DatatableDataProps): import("react/jsx-runtime").JSX.Element;
23
+ export declare function RlsDatatableInfo({ children, className, control, overflow }: DatatableCellProps): import("react/jsx-runtime").JSX.Element;
24
+ export declare function RlsDatatable({ children, datatable, footer, header, rlsTheme, summary }: DatatableProps): import("react/jsx-runtime").JSX.Element;
22
25
  export {};
@@ -4,18 +4,23 @@ export function RlsDatatableHeader({ children }) {
4
4
  return _jsx("tr", { className: "rls-datatable__header", children: children });
5
5
  }
6
6
  export function RlsDatatableTitle({ children, className, control }) {
7
- return (_jsx("th", { className: (renderClassStatus('rls-datatable__title', { control }) +
8
- ` ${className || ''}`).trim(), children: children }));
7
+ return (_jsx("th", { className: renderClassStatus('rls-datatable__title', { control }, className).trim(), children: children }));
9
8
  }
10
9
  export function RlsDatatableData({ children, className, error }) {
11
- return (_jsx("tr", { className: (renderClassStatus('rls-datatable__data', { error }) +
12
- ` ${className || ''}`).trim(), children: children }));
10
+ return (_jsx("tr", { className: renderClassStatus('rls-datatable__data', { error }, className).trim(), children: children }));
13
11
  }
14
12
  export function RlsDatatableCell({ children, className, control, overflow }) {
15
- return (_jsx("th", { className: (renderClassStatus('rls-datatable__cell', { control, overflow }) +
16
- ` ${className || ''}`).trim(), children: children }));
13
+ return (_jsx("th", { className: renderClassStatus('rls-datatable__cell', { control, overflow }, className).trim(), children: children }));
17
14
  }
18
- export function RlsDatatable({ bodyRef, children, footer, header, rlsTheme }) {
19
- return (_jsxs("div", { className: "rls-datatable", "rls-theme": rlsTheme, children: [_jsxs("table", { children: [header && _jsx("thead", { className: "rls-datatable__thead", children: header }), _jsx("tbody", { ref: bodyRef, className: "rls-datatable__tbody", children: children })] }), footer && _jsx("div", { className: "rls-datatable__tfooter", children: footer })] }));
15
+ export function RlsDatatableTotals({ children, className, error }) {
16
+ return (_jsx("div", { className: renderClassStatus('rls-datatable__totals', { error }, className).trim(), children: children }));
17
+ }
18
+ export function RlsDatatableInfo({ children, className, control, overflow }) {
19
+ return (_jsx("div", { className: renderClassStatus('rls-datatable__info', { control, overflow }, className).trim(), children: children }));
20
+ }
21
+ export function RlsDatatable({ children, datatable, footer, header, rlsTheme, summary }) {
22
+ return (_jsxs("div", { className: renderClassStatus('rls-datatable', {
23
+ scrolleable: datatable?.scrolleable
24
+ }), "rls-theme": rlsTheme, children: [_jsxs("table", { children: [header && _jsx("thead", { className: "rls-datatable__thead", children: header }), _jsx("tbody", { ref: datatable?.bodyRef, className: "rls-datatable__tbody", children: children })] }), summary && _jsx("div", { className: "rls-datatable__tsummary", children: summary }), footer && _jsx("div", { className: "rls-datatable__tfooter", children: footer })] }));
20
25
  }
21
26
  //# sourceMappingURL=Datatable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Datatable.js","sourceRoot":"","sources":["../../../../../src/components/organisms/Datatable/Datatable.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAoBzD,MAAM,UAAU,kBAAkB,CAAC,EAAE,QAAQ,EAAgB;IAC3D,OAAO,aAAI,SAAS,EAAC,uBAAuB,YAAE,QAAQ,GAAM,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,EAChC,QAAQ,EACR,SAAS,EACT,OAAO,EACY;IACnB,OAAO,CACL,aACE,SAAS,EAAE,CACT,iBAAiB,CAAC,sBAAsB,EAAE,EAAE,OAAO,EAAE,CAAC;YACtD,IAAI,SAAS,IAAI,EAAE,EAAE,CACtB,CAAC,IAAI,EAAE,YAEP,QAAQ,GACN,CACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAC/B,QAAQ,EACR,SAAS,EACT,KAAK,EACc;IACnB,OAAO,CACL,aACE,SAAS,EAAE,CACT,iBAAiB,CAAC,qBAAqB,EAAE,EAAE,KAAK,EAAE,CAAC;YACnD,IAAI,SAAS,IAAI,EAAE,EAAE,CACtB,CAAC,IAAI,EAAE,YAEP,QAAQ,GACN,CACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAC/B,QAAQ,EACR,SAAS,EACT,OAAO,EACP,QAAQ,EACW;IACnB,OAAO,CACL,aACE,SAAS,EAAE,CACT,iBAAiB,CAAC,qBAAqB,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;YAC/D,IAAI,SAAS,IAAI,EAAE,EAAE,CACtB,CAAC,IAAI,EAAE,YAEP,QAAQ,GACN,CACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,EAC3B,OAAO,EACP,QAAQ,EACR,MAAM,EACN,MAAM,EACN,QAAQ,EACO;IACf,OAAO,CACL,eAAK,SAAS,EAAC,eAAe,eAAY,QAAQ,aAChD,4BACG,MAAM,IAAI,gBAAO,SAAS,EAAC,sBAAsB,YAAE,MAAM,GAAS,EAEnE,gBAAO,GAAG,EAAE,OAAO,EAAE,SAAS,EAAC,sBAAsB,YAClD,QAAQ,GACH,IACF,EAEP,MAAM,IAAI,cAAK,SAAS,EAAC,wBAAwB,YAAE,MAAM,GAAO,IAC7D,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"Datatable.js","sourceRoot":"","sources":["../../../../../src/components/organisms/Datatable/Datatable.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAsBzD,MAAM,UAAU,kBAAkB,CAAC,EAAE,QAAQ,EAAgB;IAC3D,OAAO,aAAI,SAAS,EAAC,uBAAuB,YAAE,QAAQ,GAAM,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,EAChC,QAAQ,EACR,SAAS,EACT,OAAO,EACY;IACnB,OAAO,CACL,aACE,SAAS,EAAE,iBAAiB,CAC1B,sBAAsB,EACtB,EAAE,OAAO,EAAE,EACX,SAAS,CACV,CAAC,IAAI,EAAE,YAEP,QAAQ,GACN,CACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAC/B,QAAQ,EACR,SAAS,EACT,KAAK,EACc;IACnB,OAAO,CACL,aACE,SAAS,EAAE,iBAAiB,CAC1B,qBAAqB,EACrB,EAAE,KAAK,EAAE,EACT,SAAS,CACV,CAAC,IAAI,EAAE,YAEP,QAAQ,GACN,CACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAC/B,QAAQ,EACR,SAAS,EACT,OAAO,EACP,QAAQ,EACW;IACnB,OAAO,CACL,aACE,SAAS,EAAE,iBAAiB,CAC1B,qBAAqB,EACrB,EAAE,OAAO,EAAE,QAAQ,EAAE,EACrB,SAAS,CACV,CAAC,IAAI,EAAE,YAEP,QAAQ,GACN,CACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,EACjC,QAAQ,EACR,SAAS,EACT,KAAK,EACc;IACnB,OAAO,CACL,cACE,SAAS,EAAE,iBAAiB,CAC1B,uBAAuB,EACvB,EAAE,KAAK,EAAE,EACT,SAAS,CACV,CAAC,IAAI,EAAE,YAEP,QAAQ,GACL,CACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAC/B,QAAQ,EACR,SAAS,EACT,OAAO,EACP,QAAQ,EACW;IACnB,OAAO,CACL,cACE,SAAS,EAAE,iBAAiB,CAC1B,qBAAqB,EACrB,EAAE,OAAO,EAAE,QAAQ,EAAE,EACrB,SAAS,CACV,CAAC,IAAI,EAAE,YAEP,QAAQ,GACL,CACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,EAC3B,QAAQ,EACR,SAAS,EACT,MAAM,EACN,MAAM,EACN,QAAQ,EACR,OAAO,EACQ;IACf,OAAO,CACL,eACE,SAAS,EAAE,iBAAiB,CAAC,eAAe,EAAE;YAC5C,WAAW,EAAE,SAAS,EAAE,WAAW;SACpC,CAAC,eACS,QAAQ,aAEnB,4BACG,MAAM,IAAI,gBAAO,SAAS,EAAC,sBAAsB,YAAE,MAAM,GAAS,EAEnE,gBAAO,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAC,sBAAsB,YAC7D,QAAQ,GACH,IACF,EAEP,OAAO,IAAI,cAAK,SAAS,EAAC,yBAAyB,YAAE,OAAO,GAAO,EAEnE,MAAM,IAAI,cAAK,SAAS,EAAC,wBAAwB,YAAE,MAAM,GAAO,IAC7D,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { RefObject } from 'react';
2
+ export interface DatatableHook {
3
+ bodyRef: RefObject<HTMLTableSectionElement>;
4
+ scrolleable: boolean;
5
+ }
6
+ export declare function useDatatable(): DatatableHook;
@@ -0,0 +1,19 @@
1
+ import { useEffect, useRef, useState } from 'react';
2
+ export function useDatatable() {
3
+ const [scrolleable, setScrolleable] = useState(false);
4
+ const bodyRef = useRef(null);
5
+ useEffect(() => {
6
+ let observer;
7
+ if (bodyRef?.current) {
8
+ observer = new ResizeObserver(() => {
9
+ const scrollHeight = bodyRef?.current?.scrollHeight || 0;
10
+ const clientHeight = bodyRef?.current?.clientHeight || 0;
11
+ setScrolleable(scrollHeight > clientHeight);
12
+ });
13
+ observer.observe(bodyRef?.current);
14
+ }
15
+ return () => observer?.disconnect();
16
+ }, []);
17
+ return { bodyRef, scrolleable };
18
+ }
19
+ //# sourceMappingURL=DatatableHook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatatableHook.js","sourceRoot":"","sources":["../../../src/hooks/DatatableHook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAO/D,MAAM,UAAU,YAAY;IAC1B,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,MAAM,CAA0B,IAAI,CAAC,CAAC;IAEtD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,QAAwB,CAAC;QAE7B,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;YACrB,QAAQ,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE;gBACjC,MAAM,YAAY,GAAG,OAAO,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,CAAC;gBACzD,MAAM,YAAY,GAAG,OAAO,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,CAAC;gBAEzD,cAAc,CAAC,YAAY,GAAG,YAAY,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,GAAG,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC;IACtC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;AAClC,CAAC"}
@@ -1 +1,2 @@
1
+ export * from './DatatableHook';
1
2
  export * from './ListControlHook';
@@ -1,2 +1,3 @@
1
+ export * from './DatatableHook';
1
2
  export * from './ListControlHook';
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rolster/react-components",
3
- "version": "18.12.7",
3
+ "version": "18.12.9",
4
4
  "type": "module",
5
5
  "description": "Package containing UI components for React Project.",
6
6
  "module": "dist/esm/index.js",
@@ -58,7 +58,7 @@
58
58
  "@rollup/plugin-commonjs": "^25.0.4",
59
59
  "@rollup/plugin-node-resolve": "^15.2.1",
60
60
  "@rollup/plugin-typescript": "^11.1.3",
61
- "@rolster/styles-foundations": "^1.1.10",
61
+ "@rolster/styles-foundations": "^1.1.13",
62
62
  "@rolster/types": "^1.0.6",
63
63
  "@types/node-sass": "^4.11.4",
64
64
  "@types/react": "^18.0.28",