@uxf/data-grid
Advanced tools
Comparing version 11.29.0 to 11.30.0
import React, { ReactNode } from "react"; | ||
interface DrawerProps { | ||
title?: string; | ||
title?: ReactNode; | ||
children?: ReactNode; | ||
@@ -5,0 +5,0 @@ open: boolean; |
@@ -9,4 +9,3 @@ "use strict"; | ||
const use_is_mounted_1 = require("@uxf/core-react/hooks/use-is-mounted"); | ||
const button_1 = require("@uxf/ui/button"); | ||
const icon_1 = require("@uxf/ui/icon"); | ||
const modal_header_1 = require("@uxf/ui/modal-header"); | ||
const react_2 = __importDefault(require("react")); | ||
@@ -22,5 +21,3 @@ const Drawer = (props) => { | ||
react_2.default.createElement("div", { className: "uxf-data-grid__drawer-body" }, | ||
react_2.default.createElement(button_1.Button, { isIconButton: true, onClick: props.onClose, variant: "text", className: "uxf-data-grid__drawer-close-button" }, | ||
react_2.default.createElement(icon_1.Icon, { name: "xmarkLarge" })), | ||
react_2.default.createElement("header", { className: "uxf-data-grid__drawer-header" }, props.title), | ||
react_2.default.createElement(modal_header_1.ModalHeader, { title: props.title, onClose: props.onClose }), | ||
react_2.default.createElement("div", { className: "uxf-data-grid__drawer-content" }, props.children))), | ||
@@ -27,0 +24,0 @@ react_2.default.createElement("section", { className: "uxf-data-grid__drawer-backdrop", onClick: props.onClose })))); |
@@ -1,2 +0,2 @@ | ||
import React from "react"; | ||
import React, { ReactNode } from "react"; | ||
import { FilterHandlers } from "../filter-handler"; | ||
@@ -6,4 +6,5 @@ import { Schema } from "../types"; | ||
export interface DataGridFiltersButtonProps extends DataGridControl { | ||
drawerTitle?: ReactNode; | ||
filterHandlers: FilterHandlers; | ||
schema: Schema<any>; | ||
filterHandlers: FilterHandlers; | ||
} | ||
@@ -10,0 +11,0 @@ /** @deprecated Use DataGridFiltersButton */ |
@@ -34,2 +34,3 @@ "use strict"; | ||
function FiltersButton(props) { | ||
var _a; | ||
const [isOpen, setIsOpen] = (0, react_1.useState)(false); | ||
@@ -42,3 +43,3 @@ if (props.schema.filters.length === 0) { | ||
react_1.default.createElement(icon_1.Icon, { name: "filter" })), | ||
react_1.default.createElement(drawer_1.Drawer, { open: isOpen, onClose: () => setIsOpen(false) }, | ||
react_1.default.createElement(drawer_1.Drawer, { title: (_a = props.drawerTitle) !== null && _a !== void 0 ? _a : "Filtrování", open: isOpen, onClose: () => setIsOpen(false) }, | ||
react_1.default.createElement(filters_1.DataGridFilters, { state: props.state, actions: props.actions, schema: props.schema, filterHandlers: props.filterHandlers })))); | ||
@@ -45,0 +46,0 @@ } |
@@ -1,5 +0,6 @@ |
import React from "react"; |
import React, { ReactNode } from "react"; |
import { Schema } from "../types"; |
import { DataGridControl } from "../use-data-grid-control"; |
export interface DataGridHiddenColumnsButtonProps extends DataGridControl { |
drawerTitle?: ReactNode; |
schema: Schema<any>; |
@@ -6,0 +7,0 @@ } |
@@ -34,2 +34,3 @@ "use strict"; |
function HiddenColumnsButton(props) { |
var _a; |
const [isOpen, setIsOpen] = (0, react_1.useState)(false); |
@@ -39,3 +40,3 @@ return (react_1.default.createElement(react_1.default.Fragment, null, |
react_1.default.createElement(icon_1.Icon, { name: "table-columns" })), |
react_1.default.createElement(drawer_1.Drawer, { open: isOpen, onClose: () => setIsOpen(false), title: "Nastaven\u00ED sloupc\u016F" }, |
react_1.default.createElement(drawer_1.Drawer, { open: isOpen, onClose: () => setIsOpen(false), title: (_a = props.drawerTitle) !== null && _a !== void 0 ? _a : "Sloupce" }, |
react_1.default.createElement(hidden_columns_1.HiddenColumns, { state: props.state, actions: props.actions, schema: props.schema })))); |
@@ -42,0 +43,0 @@ } |
@@ -7,2 +7,7 @@ "use strict"; |
exports.DataGridHiddenColumns = exports.HiddenColumns = void 0; |
const show_1 = require("@uxf/core-react/components/show"); |
const is_empty_1 = require("@uxf/core/utils/is-empty"); |
const is_not_empty_1 = require("@uxf/core/utils/is-not-empty"); |
const icon_1 = require("@uxf/ui/icon"); |
const text_link_1 = require("@uxf/ui/text-link"); |
const toggle_1 = require("@uxf/ui/toggle"); |
@@ -12,10 +17,27 @@ const react_1 = __importDefault(require("react")); |
function HiddenColumns(props) { |
return (react_1.default.createElement("div", { className: "uxf-data-grid__toolbar-control-columns" }, props.schema.columns |
.filter((column) => !column.hidden) |
.map((column) => { |
var _a, _b, _c, _d; |
return (react_1.default.createElement(toggle_1.Toggle, { key: column.name, label: typeof column.label === "string" ? column.label : "", value: !((_c = (_b = (_a = props.state.userConfig.columns) === null || _a === void 0 ? void 0 : _a[column.name]) === null || _b === void 0 ? void 0 : _b.isHidden) !== null && _c !== void 0 ? _c : (_d = column.config) === null || _d === void 0 ? void 0 : _d.isHidden), onChange: (value) => value ? props.actions.showColumn(column.name) : props.actions.hideColumn(column.name), name: column.name })); |
}))); |
const columns = props.schema.columns.filter((c) => !c.hidden); |
const visibleColumns = columns.filter((c) => { var _a, _b, _c, _d; return !((_c = (_b = (_a = props.state.userConfig.columns) === null || _a === void 0 ? void 0 : _a[c.name]) === null || _b === void 0 ? void 0 : _b.isHidden) !== null && _c !== void 0 ? _c : (_d = c.config) === null || _d === void 0 ? void 0 : _d.isHidden); }); |
const hiddenColumns = columns.filter((c) => { var _a, _b, _c, _d; return (_c = (_b = (_a = props.state.userConfig.columns) === null || _a === void 0 ? void 0 : _a[c.name]) === null || _b === void 0 ? void 0 : _b.isHidden) !== null && _c !== void 0 ? _c : (_d = c.config) === null || _d === void 0 ? void 0 : _d.isHidden; }); |
const onToggleChange = (columnName) => (value) => value ? props.actions.showColumn(columnName) : props.actions.hideColumn(columnName); |
const onChangeAll = (value) => () => { |
columns.forEach((column) => { |
value ? props.actions.showColumn(column.name) : props.actions.hideColumn(column.name); |
}); |
}; |
return (react_1.default.createElement("div", { className: "uxf-data-grid__toolbar-control-columns" }, |
react_1.default.createElement("div", { className: "uxf-data-grid__hidden-columns-title" }, |
react_1.default.createElement("div", null, "Zobrazen\u00E9 sloupce"), |
react_1.default.createElement(text_link_1.TextLink, { disabled: (0, is_empty_1.isEmpty)(visibleColumns), onClick: onChangeAll(false), variant: "text" }, "skr\u00FDt v\u0161e")), |
visibleColumns.map((column) => (react_1.default.createElement(toggle_1.Toggle, { key: column.name, label: typeof column.label === "string" ? column.label : "", name: column.name, onChange: onToggleChange(column.name), size: "sm", value: true, variant: "reversed" }))), |
react_1.default.createElement(show_1.Show, { when: (0, is_empty_1.isEmpty)(visibleColumns) }, |
react_1.default.createElement("div", { className: "uxf-data-grid__hidden-columns-empty-box" }, |
react_1.default.createElement(icon_1.Icon, { name: "triangle-exclamation-solid", size: 20 }), |
"Tabulka m\u00E1 v\u0161echny sloupce skryt\u00E9. Pro zobrazen\u00ED vyberte sloupec n\u00ED\u017Ee.")), |
react_1.default.createElement(show_1.Show, { when: (0, is_not_empty_1.isNotEmpty)(hiddenColumns) }, |
react_1.default.createElement("div", { className: "uxf-data-grid__hidden-columns-title" }, |
react_1.default.createElement("div", null, "Skryt\u00E9 sloupce"), |
react_1.default.createElement(text_link_1.TextLink, { onClick: onChangeAll(true), variant: "text" }, "zobrazit v\u0161e")), |
hiddenColumns.map((column) => (react_1.default.createElement(toggle_1.Toggle, { key: column.name, label: typeof column.label === "string" ? column.label : "", name: column.name, onChange: onToggleChange(column.name), size: "sm", value: false, variant: "reversed" })))))); |
} |
exports.HiddenColumns = HiddenColumns; |
exports.DataGridHiddenColumns = HiddenColumns; |
{ | ||
"name": "@uxf/data-grid", | ||
"version": "11.29.0", | ||
"version": "11.30.0", | ||
"description": "UXF DataGrid", | ||
@@ -36,3 +36,3 @@ "homepage": "https://gitlab.com/uxf-npm/data-grid#readme", | ||
"@uxf/core-react": "11.29.0", | ||
"@uxf/ui": "11.29.0", | ||
"@uxf/ui": "11.30.0", | ||
"dayjs": "1.11.10", | ||
@@ -39,0 +39,0 @@ "deepmerge": "4.3.1", |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
243357
5141
+ Added@uxf/ui@11.30.0(transitive)
- Removed@uxf/ui@11.29.0(transitive)
Updated@uxf/ui@11.30.0