norma-library 0.6.93 → 0.6.95

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.
@@ -6,8 +6,10 @@ interface TableButtonProps {
6
6
  list?: {
7
7
  options: TableList[];
8
8
  toggleableList?: boolean;
9
+ closeOnClick?: boolean;
9
10
  };
10
11
  onClick?: () => void;
12
+ disabled?: boolean;
11
13
  }
12
14
  declare const TableButton: (props: TableButtonProps) => React.JSX.Element;
13
15
  export default TableButton;
@@ -3,7 +3,7 @@ import * as S from './TableButton.style';
3
3
  import { Switch } from '@mui/material';
4
4
  import useClickOutside from '../../../../hooks/useClickOutside';
5
5
  var TableButton = function (props) {
6
- var children = props.children, theme = props.theme, list = props.list, onClick = props.onClick;
6
+ var children = props.children, theme = props.theme, list = props.list, disabled = props.disabled, onClick = props.onClick;
7
7
  var _a = useState(false), isOpen = _a[0], setIsOpen = _a[1];
8
8
  var TableListItemRef = useRef(null);
9
9
  var ListRef = useRef(null);
@@ -22,8 +22,8 @@ var TableButton = function (props) {
22
22
  };
23
23
  }
24
24
  }, [isOpen]);
25
- return (React.createElement(S.TableButtonContainer, { ref: TableListItemRef },
26
- React.createElement(S.TableButton, { ref: TableListItemRef, "$config": theme === 'config', "$list": !!list, onClick: function () {
25
+ return (React.createElement(S.TableButtonContainer, { ref: TableListItemRef, "$disabled": disabled },
26
+ React.createElement(S.TableButton, { ref: TableListItemRef, "$config": theme === 'config', "$list": !!list, "$disabled": disabled, onClick: function () {
27
27
  setIsOpen(!isOpen);
28
28
  if (!list)
29
29
  onClick === null || onClick === void 0 ? void 0 : onClick();
@@ -34,6 +34,8 @@ var TableButton = function (props) {
34
34
  return (React.createElement(S.TableListItem, { key: index, onClick: function () {
35
35
  var _a;
36
36
  (_a = item.onClick) === null || _a === void 0 ? void 0 : _a.call(item, item.id);
37
+ if (list.closeOnClick)
38
+ setIsOpen(false);
37
39
  }, "$disabled": item.disabled },
38
40
  React.createElement("span", null, item.label),
39
41
  list.toggleableList && (React.createElement(Switch, { size: "small", checked: typeof item.checked === 'function' ? (_a = item.checked) === null || _a === void 0 ? void 0 : _a.call(item) : item.checked }))));
@@ -1 +1 @@
1
- {"version":3,"file":"TableButton.js","sourceRoot":"","sources":["../../../../../../src/components/UncontrolledTable/components/TableButton/TableButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC1D,OAAO,KAAK,CAAC,MAAM,qBAAqB,CAAA;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACtC,OAAO,eAAe,MAAM,mCAAmC,CAAA;AAY/D,IAAM,WAAW,GAAG,UAAC,KAAuB;IAClC,IAAA,QAAQ,GAA2B,KAAK,SAAhC,EAAE,KAAK,GAAoB,KAAK,MAAzB,EAAE,IAAI,GAAc,KAAK,KAAnB,EAAE,OAAO,GAAK,KAAK,QAAV,CAAU;IAC1C,IAAA,KAAsB,QAAQ,CAAC,KAAK,CAAC,EAApC,MAAM,QAAA,EAAE,SAAS,QAAmB,CAAA;IAC3C,IAAM,gBAAgB,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAA;IACrD,IAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAA;IACtC,IAAA,KAA4B,QAAQ,CAAU,IAAI,CAAC,EAAlD,SAAS,QAAA,EAAE,YAAY,QAA2B,CAAA;IAEzD,eAAe,CAAC,gBAAgB,EAAE;QAChC,IAAI,MAAM;YAAE,SAAS,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,SAAS,CAAC;QAER,IAAI,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YAE9B,IAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAA;YACxD,IAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAA;YAGvC,YAAY,CAAC,QAAQ,CAAC,KAAK,GAAG,aAAa,CAAC,CAAA;YAE5C,OAAO;gBACL,YAAY,CAAC,IAAI,CAAC,CAAA;YACpB,CAAC,CAAA;QACH,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;IAGZ,OAAO,CACL,oBAAC,CAAC,CAAC,oBAAoB,IAAC,GAAG,EAAE,gBAAgB;QAC3C,oBAAC,CAAC,CAAC,WAAW,IACZ,GAAG,EAAE,gBAAgB,aACZ,KAAK,KAAK,QAAQ,WACpB,CAAC,CAAC,IAAI,EACb,OAAO,EAAE;gBACP,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;gBAClB,IAAI,CAAC,IAAI;oBAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,EAAI,CAAA;YACxB,CAAC;YAED,oBAAC,CAAC,CAAC,UAAU,QAAE,QAAQ,CAAgB,CACzB;QACf,IAAI,IAAI,CACP,oBAAC,CAAC,CAAC,SAAS,IAAC,GAAG,EAAE,OAAO,eAAa,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,cAAY,MAAM,IACjF,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK;;YAAK,OAAA,CAClC,oBAAC,CAAC,CAAC,aAAa,IACd,GAAG,EAAE,KAAK,EACV,OAAO,EAAE;;oBACP,MAAA,IAAI,CAAC,OAAO,qDAAG,IAAI,CAAC,EAAE,CAAC,CAAA;gBACzB,CAAC,eACU,IAAI,CAAC,QAAQ;gBAExB,kCAAO,IAAI,CAAC,KAAK,CAAQ;gBACxB,IAAI,CAAC,cAAc,IAAI,CACtB,oBAAC,MAAM,IACL,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,OAAO,IAAI,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,MAAA,IAAI,CAAC,OAAO,oDAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,GAC7E,CACH,CACe,CACnB,CAAA;SAAA,CAAC,CACU,CACf,CACsB,CAC1B,CAAA;AACH,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"TableButton.js","sourceRoot":"","sources":["../../../../../../src/components/UncontrolledTable/components/TableButton/TableButton.tsx"],"names":[],"mappings":"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"}
@@ -1,7 +1,10 @@
1
- export declare const TableButtonContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
1
+ export declare const TableButtonContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
2
+ $disabled?: boolean;
3
+ }>> & string;
2
4
  export declare const TableButton: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
3
5
  $config?: boolean;
4
6
  $list?: boolean;
7
+ $disabled?: boolean;
5
8
  }>> & string;
6
9
  export declare const TableLabel: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
7
10
  export declare const TableList: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
@@ -1,8 +1,8 @@
1
1
  import { __makeTemplateObject } from "tslib";
2
2
  import styled from 'styled-components';
3
- export var TableButtonContainer = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: block;\n position: relative;\n cursor: pointer;\n"], ["\n display: block;\n position: relative;\n cursor: pointer;\n"])));
4
- export var TableButton = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n background-color: ", ";\n border: ", ";\n box-sizing: border-box;\n padding: 10px;\n border-radius: 4px;\n &:hover {\n background-color: ", ";\n }\n"], ["\n background-color: ", ";\n border: ", ";\n box-sizing: border-box;\n padding: 10px;\n border-radius: 4px;\n &:hover {\n background-color: ", ";\n }\n"])), function (props) { return (!props.$config ? '#f0f0f0' : '#fff'); }, function (props) { return (props.$config ? '1px solid #ccc' : 'none'); }, function (props) { return (!props.$config ? '#e0e0e0' : '#f9f9f9'); });
5
- export var TableLabel = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n font-size: 14px;\n color: #333;\n font-weight: 500;\n /* cursor: pointer; */\n"], ["\n font-size: 14px;\n color: #333;\n font-weight: 500;\n /* cursor: pointer; */\n"])));
3
+ export var TableButtonContainer = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: block;\n position: relative;\n cursor: ", ";\n"], ["\n display: block;\n position: relative;\n cursor: ", ";\n"])), function (props) { return (props.$disabled ? 'not-allowed' : 'pointer'); });
4
+ export var TableButton = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n background-color: ", ";\n border: ", ";\n box-sizing: border-box;\n padding: 10px;\n border-radius: 4px;\n pointer-events: ", ";\n opacity: ", ";\n &:hover {\n background-color: ", ";\n }\n"], ["\n background-color: ", ";\n border: ", ";\n box-sizing: border-box;\n padding: 10px;\n border-radius: 4px;\n pointer-events: ", ";\n opacity: ", ";\n &:hover {\n background-color: ", ";\n }\n"])), function (props) { return (!props.$config ? '#f0f0f0' : '#fff'); }, function (props) { return (props.$config ? '1px solid #ccc' : 'none'); }, function (props) { return (props.$disabled ? 'none' : 'auto'); }, function (props) { return (props.$disabled ? 0.3 : 1); }, function (props) { return (!props.$config ? '#e0e0e0' : '#f9f9f9'); });
5
+ export var TableLabel = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n font-size: 14px;\n color: #333;\n font-weight: 500;\n"], ["\n font-size: 14px;\n color: #333;\n font-weight: 500;\n"])));
6
6
  export var TableList = styled.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n visibility: ", ";\n position: absolute;\n background-color: #fff;\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);\n border-radius: 4px;\n padding: 10px;\n z-index: 1000;\n ", "\n top: calc(100% + 10px);\n width: 200px;\n"], ["\n visibility: ", ";\n position: absolute;\n background-color: #fff;\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);\n border-radius: 4px;\n padding: 10px;\n z-index: 1000;\n ", "\n top: calc(100% + 10px);\n width: 200px;\n"])), function (props) { return (props.$visible ? 'visible' : 'hidden'); }, function (props) { return (props.$position === 'left' ? 'left: 0;' : 'right: 0;'); });
7
7
  export var TableListItem = styled.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n filter: ", ";\n pointer-events: ", ";\n color: ", ";\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 5px 10px;\n cursor: pointer;\n"], ["\n filter: ", ";\n pointer-events: ", ";\n color: ", ";\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 5px 10px;\n cursor: pointer;\n"])), function (props) { return (props.$disabled ? 'grayscale(1)' : 'none'); }, function (props) { return (props.$disabled ? 'none' : 'auto'); }, function (props) { return (props.$disabled ? '#999' : '#333'); });
8
8
  var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
@@ -1 +1 @@
1
- {"version":3,"file":"TableButton.style.js","sourceRoot":"","sources":["../../../../../../src/components/UncontrolledTable/components/TableButton/TableButton.style.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAA;AAEtC,MAAM,CAAC,IAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,qIAAA,kEAI7C,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,WAAW,GAAG,MAAM,CAAC,GAAG,sOAAwC,wBACvD,EAAgD,eAC1D,EAAsD,4GAK1C,EAAmD,UAE1E,KARqB,UAAC,KAAK,IAAK,OAAA,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,EAArC,CAAqC,EAC1D,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,EAA3C,CAA2C,EAK1C,UAAC,KAAK,IAAK,OAAA,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,EAAxC,CAAwC,CAE1E,CAAA;AAED,MAAM,CAAC,IAAM,UAAU,GAAG,MAAM,CAAC,GAAG,0JAAA,uFAKnC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,SAAS,GAAG,MAAM,CAAC,GAAG,4SAAsD,kBACzE,EAAkD,mKAO9D,EAAkE,gDAGrE,KAVe,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAvC,CAAuC,EAO9D,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,EAAvD,CAAuD,CAGrE,CAAA;AAED,MAAM,CAAC,IAAM,aAAa,GAAG,MAAM,CAAC,GAAG,wPAAyB,cACpD,EAAsD,uBAC9C,EAA8C,cACvD,EAA8C,4HAMxD,KARW,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,EAA3C,CAA2C,EAC9C,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAnC,CAAmC,EACvD,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAnC,CAAmC,CAMxD,CAAA"}
1
+ {"version":3,"file":"TableButton.style.js","sourceRoot":"","sources":["../../../../../../src/components/UncontrolledTable/components/TableButton/TableButton.style.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAA;AAEtC,MAAM,CAAC,IAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,kIAAuB,wDAGzD,EAAwD,KACnE,KADW,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,EAA7C,CAA6C,CACnE,CAAA;AAED,MAAM,CAAC,IAAM,WAAW,GAAG,MAAM,CAAC,GAAG,iRAA6D,wBAC5E,EAAgD,eAC1D,EAAsD,2FAI9C,EAA8C,gBACrD,EAAsC,wCAE3B,EAAmD,UAE1E,KAVqB,UAAC,KAAK,IAAK,OAAA,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,EAArC,CAAqC,EAC1D,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,EAA3C,CAA2C,EAI9C,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAnC,CAAmC,EACrD,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAA3B,CAA2B,EAE3B,UAAC,KAAK,IAAK,OAAA,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,EAAxC,CAAwC,CAE1E,CAAA;AAED,MAAM,CAAC,IAAM,UAAU,GAAG,MAAM,CAAC,GAAG,gIAAA,6DAInC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,SAAS,GAAG,MAAM,CAAC,GAAG,4SAAsD,kBACzE,EAAkD,mKAO9D,EAAkE,gDAGrE,KAVe,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAvC,CAAuC,EAO9D,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,EAAvD,CAAuD,CAGrE,CAAA;AAED,MAAM,CAAC,IAAM,aAAa,GAAG,MAAM,CAAC,GAAG,wPAAyB,cACpD,EAAsD,uBAC9C,EAA8C,cACvD,EAA8C,4HAMxD,KARW,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,EAA3C,CAA2C,EAC9C,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAnC,CAAmC,EACvD,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAnC,CAAmC,CAMxD,CAAA"}
@@ -33,7 +33,6 @@ var Header = function (props) {
33
33
  render: function () { return (React.createElement(S.BtnColumns, null,
34
34
  React.createElement(TableChartIcon, { style: { fontSize: '1rem' } }),
35
35
  labels.columns)); },
36
- toggleableList: true,
37
36
  list: {
38
37
  options: _tableFields(),
39
38
  toggleableList: true,
@@ -42,8 +41,8 @@ var Header = function (props) {
42
41
  return __spreadArray(__spreadArray([], (configs || []), true), [_fields], false);
43
42
  }, [configs]);
44
43
  return (React.createElement(S.Header, null,
45
- React.createElement(S.HeaderMenus, null, _menus === null || _menus === void 0 ? void 0 : _menus.map(function (menu, index) { return (React.createElement(TableButton, { key: index, theme: "menu", onClick: function () { var _a; return (_a = menu.onClick) === null || _a === void 0 ? void 0 : _a.call(menu); }, list: menu.list }, menu.render())); })),
46
- React.createElement(S.HeaderConfigs, null, _configs === null || _configs === void 0 ? void 0 : _configs.map(function (menu, index) { return (React.createElement(TableButton, { key: index, theme: "config", onClick: function () { var _a; return (_a = menu.onClick) === null || _a === void 0 ? void 0 : _a.call(menu); }, list: menu.list }, menu.render())); }))));
44
+ React.createElement(S.HeaderMenus, null, _menus === null || _menus === void 0 ? void 0 : _menus.map(function (menu, index) { return (React.createElement(TableButton, { key: index, theme: "menu", onClick: function () { var _a; return (_a = menu.onClick) === null || _a === void 0 ? void 0 : _a.call(menu); }, list: menu.list, disabled: menu.disabled }, menu.render())); })),
45
+ React.createElement(S.HeaderConfigs, null, _configs === null || _configs === void 0 ? void 0 : _configs.map(function (config, index) { return (React.createElement(TableButton, { key: index, theme: "config", onClick: function () { var _a; return (_a = config.onClick) === null || _a === void 0 ? void 0 : _a.call(config); }, list: config.list, disabled: config.disabled }, config.render())); }))));
47
46
  };
48
47
  export default Header;
49
48
  //# sourceMappingURL=header.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"header.js","sourceRoot":"","sources":["../../../../../../src/components/UncontrolledTable/components/header/header.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"header.js","sourceRoot":"","sources":["../../../../../../src/components/UncontrolledTable/components/header/header.tsx"],"names":[],"mappings":"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"}
@@ -27,8 +27,9 @@ export interface TableButton {
27
27
  list?: {
28
28
  options: TableList[];
29
29
  toggleableList?: boolean;
30
+ closeOnClick?: boolean;
30
31
  };
31
- toggleableList?: boolean;
32
+ disabled?: boolean;
32
33
  onClick?: () => void;
33
34
  }
34
35
  export interface UncontrolledTableProps {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "norma-library",
3
- "version": "0.6.93",
3
+ "version": "0.6.95",
4
4
  "private": false,
5
5
  "description": "Olos/Norma-DS. Design System based on Material UI, developed with TypeScript and Styled Components to create reusable and consistent components in web applications.",
6
6
  "scripts": {
@@ -1,17 +1,19 @@
1
1
  import styled from 'styled-components'
2
2
 
3
- export const TableButtonContainer = styled.div`
3
+ export const TableButtonContainer = styled.div<{$disabled?: boolean}>`
4
4
  display: block;
5
5
  position: relative;
6
- cursor: pointer;
6
+ cursor: ${(props) => (props.$disabled ? 'not-allowed' : 'pointer')};
7
7
  `
8
8
 
9
- export const TableButton = styled.div<{ $config?: boolean; $list?: boolean }>`
9
+ export const TableButton = styled.div<{ $config?: boolean; $list?: boolean, $disabled?: boolean }>`
10
10
  background-color: ${(props) => (!props.$config ? '#f0f0f0' : '#fff')};
11
11
  border: ${(props) => (props.$config ? '1px solid #ccc' : 'none')};
12
12
  box-sizing: border-box;
13
13
  padding: 10px;
14
14
  border-radius: 4px;
15
+ pointer-events: ${(props) => (props.$disabled ? 'none' : 'auto')};
16
+ opacity: ${(props) => (props.$disabled ? 0.3 : 1)};
15
17
  &:hover {
16
18
  background-color: ${(props) => (!props.$config ? '#e0e0e0' : '#f9f9f9')};
17
19
  }
@@ -21,7 +23,6 @@ export const TableLabel = styled.div`
21
23
  font-size: 14px;
22
24
  color: #333;
23
25
  font-weight: 500;
24
- /* cursor: pointer; */
25
26
  `
26
27
 
27
28
  export const TableList = styled.div<{ $position?: 'left' | 'right', $visible?: boolean }>`
@@ -10,12 +10,14 @@ interface TableButtonProps {
10
10
  list?: {
11
11
  options: TableList[]
12
12
  toggleableList?: boolean
13
+ closeOnClick?: boolean
13
14
  }
14
15
  onClick?: () => void
16
+ disabled?: boolean
15
17
  }
16
18
 
17
19
  const TableButton = (props: TableButtonProps) => {
18
- const { children, theme, list, onClick } = props
20
+ const { children, theme, list, disabled, onClick } = props
19
21
  const [isOpen, setIsOpen] = useState(false)
20
22
  const TableListItemRef = useRef<HTMLDivElement>(null)
21
23
  const ListRef = useRef<HTMLDivElement>(null)
@@ -26,28 +28,25 @@ const TableButton = (props: TableButtonProps) => {
26
28
  })
27
29
 
28
30
  useEffect(() => {
29
-
30
31
  if (isOpen && ListRef.current) {
31
-
32
32
  const listRect = ListRef.current.getBoundingClientRect()
33
33
  const viewportWidth = window.innerWidth
34
34
 
35
-
36
- setIsOutside(listRect.right < viewportWidth)
35
+ setIsOutside(listRect.right < viewportWidth)
37
36
 
38
37
  return () => {
39
38
  setIsOutside(true)
40
39
  }
41
40
  }
42
- }, [isOpen])
43
-
41
+ }, [isOpen])
44
42
 
45
43
  return (
46
- <S.TableButtonContainer ref={TableListItemRef}>
44
+ <S.TableButtonContainer ref={TableListItemRef} $disabled={disabled}>
47
45
  <S.TableButton
48
46
  ref={TableListItemRef}
49
47
  $config={theme === 'config'}
50
48
  $list={!!list}
49
+ $disabled={disabled}
51
50
  onClick={() => {
52
51
  setIsOpen(!isOpen)
53
52
  if (!list) onClick?.()
@@ -62,6 +61,7 @@ const TableButton = (props: TableButtonProps) => {
62
61
  key={index}
63
62
  onClick={() => {
64
63
  item.onClick?.(item.id)
64
+ if (list.closeOnClick) setIsOpen(false)
65
65
  }}
66
66
  $disabled={item.disabled}
67
67
  >
@@ -53,7 +53,6 @@ const Header = (props: HeaderProps) => {
53
53
  {labels.columns}
54
54
  </S.BtnColumns>
55
55
  ),
56
- toggleableList: true,
57
56
  list: {
58
57
  options: _tableFields(),
59
58
  toggleableList: true,
@@ -66,15 +65,15 @@ const Header = (props: HeaderProps) => {
66
65
  <S.Header>
67
66
  <S.HeaderMenus>
68
67
  {_menus?.map((menu, index) => (
69
- <TableButton key={index} theme="menu" onClick={() => menu.onClick?.()} list={menu.list}>
68
+ <TableButton key={index} theme="menu" onClick={() => menu.onClick?.()} list={menu.list} disabled={menu.disabled}>
70
69
  {menu.render()}
71
70
  </TableButton>
72
71
  ))}
73
72
  </S.HeaderMenus>
74
73
  <S.HeaderConfigs>
75
- {_configs?.map((menu, index) => (
76
- <TableButton key={index} theme="config" onClick={() => menu.onClick?.()} list={menu.list}>
77
- {menu.render()}
74
+ {_configs?.map((config, index) => (
75
+ <TableButton key={index} theme="config" onClick={() => config.onClick?.()} list={config.list} disabled={config.disabled}>
76
+ {config.render()}
78
77
  </TableButton>
79
78
  ))}
80
79
  </S.HeaderConfigs>
@@ -32,8 +32,9 @@ export interface TableButton {
32
32
  list?: {
33
33
  options: TableList[]
34
34
  toggleableList?: boolean
35
+ closeOnClick?: boolean
35
36
  }
36
- toggleableList?: boolean
37
+ disabled?: boolean
37
38
  onClick?: () => void
38
39
  }
39
40
 
@@ -994,6 +994,7 @@ export const ExtraMenu = (args) => {
994
994
  {
995
995
  render: () => <span>Menu</span>,
996
996
  onClick: () => console.log('Menu clicked'),
997
+ disabled: true,
997
998
  },
998
999
  {
999
1000
  render: () => <span>Agrupar</span>,
@@ -1010,6 +1011,7 @@ export const ExtraMenu = (args) => {
1010
1011
  onClick: (id) => console.log('Agrupar por data', id),
1011
1012
  },
1012
1013
  ],
1014
+ closeOnClick: true,
1013
1015
  },
1014
1016
  },
1015
1017
  ]