@neo4j-ndl/react 0.9.2 → 0.9.3
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/CHANGELOG.md +12 -0
- package/lib/cjs/code-block/CodeBlock.js +63 -24
- package/lib/cjs/code-block/CodeBlock.js.map +1 -1
- package/lib/cjs/table/Table.js +37 -9
- package/lib/cjs/table/Table.js.map +1 -1
- package/lib/esm/code-block/CodeBlock.js +64 -25
- package/lib/esm/code-block/CodeBlock.js.map +1 -1
- package/lib/esm/table/Table.js +37 -9
- package/lib/esm/table/Table.js.map +1 -1
- package/lib/types/code-block/CodeBlock.d.ts +1 -0
- package/lib/types/table/Table.d.ts +2 -0
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
+
## 0.9.3
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 4f3ec49: align switch, radio and checkbox to the top
|
|
8
|
+
- 826d7ae: refactor code-block component and load more fonts from Google
|
|
9
|
+
- 85390b0: add loading state to table and style spreading
|
|
10
|
+
- 826d7ae: update code-block ui and behaviour and apis
|
|
11
|
+
- Updated dependencies [4f3ec49]
|
|
12
|
+
- Updated dependencies [826d7ae]
|
|
13
|
+
- @neo4j-ndl/base@0.9.0
|
|
14
|
+
|
|
3
15
|
## 0.9.2
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
|
@@ -54,9 +54,36 @@ const classnames_1 = __importDefault(require("classnames"));
|
|
|
54
54
|
const button_1 = require("../button");
|
|
55
55
|
const react_syntax_highlighter_1 = require("react-syntax-highlighter");
|
|
56
56
|
const prism_1 = require("react-syntax-highlighter/dist/cjs/styles/prism");
|
|
57
|
-
|
|
57
|
+
const icons_1 = require("../icons");
|
|
58
|
+
exports.CodeBlock = react_1.default.forwardRef(function CodeBlock({ as, maxHeight, code, language, showLineNumbers, theme, headerTitle, actions, disabled, }, ref) {
|
|
58
59
|
const Component = as || 'div';
|
|
60
|
+
const syntaxHighlighterWrapperRef = (0, react_1.useRef)(null);
|
|
59
61
|
const [isFocused, setIsFocused] = (0, react_1.useState)(false);
|
|
62
|
+
const [shouldShowExpandButton, setShouldShowExpandButton] = (0, react_1.useState)(maxHeight !== undefined);
|
|
63
|
+
const [isExpanded, setIsExpanded] = (0, react_1.useState)(maxHeight === undefined);
|
|
64
|
+
const [containerHeight, setContainerHeight] = (0, react_1.useState)(`${maxHeight}px`);
|
|
65
|
+
(0, react_1.useEffect)(() => {
|
|
66
|
+
var _a, _b;
|
|
67
|
+
if ((((_a = syntaxHighlighterWrapperRef.current) === null || _a === void 0 ? void 0 : _a.scrollHeight) || 0) <=
|
|
68
|
+
(((_b = syntaxHighlighterWrapperRef.current) === null || _b === void 0 ? void 0 : _b.clientHeight) || 0)) {
|
|
69
|
+
setIsExpanded(true);
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
setIsExpanded(false);
|
|
73
|
+
}
|
|
74
|
+
}, []);
|
|
75
|
+
(0, react_1.useEffect)(() => {
|
|
76
|
+
var _a, _b;
|
|
77
|
+
if ((((_a = syntaxHighlighterWrapperRef.current) === null || _a === void 0 ? void 0 : _a.clientHeight) || 0) >=
|
|
78
|
+
(((_b = syntaxHighlighterWrapperRef.current) === null || _b === void 0 ? void 0 : _b.scrollHeight) || 0)) {
|
|
79
|
+
setContainerHeight(`fit-content`);
|
|
80
|
+
setShouldShowExpandButton(false);
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
setContainerHeight(`${maxHeight}px`);
|
|
84
|
+
setShouldShowExpandButton(true);
|
|
85
|
+
}
|
|
86
|
+
}, [maxHeight, code]);
|
|
60
87
|
const getTheme = () => {
|
|
61
88
|
switch (theme) {
|
|
62
89
|
case 'vs':
|
|
@@ -77,28 +104,40 @@ exports.CodeBlock = react_1.default.forwardRef(function CodeBlock({ as, code, la
|
|
|
77
104
|
return prism_1.vs;
|
|
78
105
|
}
|
|
79
106
|
};
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
107
|
+
return ((0, jsx_runtime_1.jsxs)(Component, Object.assign({ ref: ref, className: "ndl-code-block-container", style: {
|
|
108
|
+
height: containerHeight,
|
|
109
|
+
} }, { children: [(0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "n-flex n-flex-col n-h-full" }, { children: [headerTitle && ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: (0, classnames_1.default)('ndl-code-block-title', { disabled }), style: {
|
|
110
|
+
maxWidth: `calc(100% - ${((actions === null || actions === void 0 ? void 0 : actions.length) || 0) * 36 + 20}px)`,
|
|
111
|
+
}, "data-testid": "code-block-title" }, { children: headerTitle }))), (0, jsx_runtime_1.jsx)("div", Object.assign({ ref: syntaxHighlighterWrapperRef, className: (0, classnames_1.default)('highlight-wrapper', {
|
|
112
|
+
focused: isFocused,
|
|
113
|
+
}), role: "textbox", "aria-label": "code-snippet", tabIndex: 0, onFocus: () => {
|
|
114
|
+
setIsFocused(true);
|
|
115
|
+
}, onBlur: () => setIsFocused(false) }, { children: (0, jsx_runtime_1.jsx)(react_syntax_highlighter_1.Prism, Object.assign({ language: language, style: Object.assign(Object.assign({}, getTheme()), { 'pre[class*="language-"]': {
|
|
116
|
+
color: tokens_1.default.palette.light.neutral.text.default,
|
|
117
|
+
backgroundColor: tokens_1.default.colors.neutral[20],
|
|
118
|
+
background: tokens_1.default.colors.neutral[20],
|
|
119
|
+
lineHeight: '1',
|
|
120
|
+
width: `calc(100% - 4px)`,
|
|
121
|
+
border: 0,
|
|
122
|
+
padding: `0 calc(0.75em + ${headerTitle === undefined || headerTitle === ''
|
|
123
|
+
? ((actions === null || actions === void 0 ? void 0 : actions.length) || (shouldShowExpandButton ? 1 : 0)) * 36
|
|
124
|
+
: (shouldShowExpandButton ? 1 : 0) * 36}px) 0.75em 0.75em`,
|
|
125
|
+
overflowX: 'auto',
|
|
126
|
+
overflowY: 'auto',
|
|
127
|
+
opacity: disabled ? 0.5 : 1,
|
|
128
|
+
} }),
|
|
129
|
+
// Turn on 'showLineNumbers' & 'wrapLongLines' at the same time, the display is wrong
|
|
130
|
+
// https://github.com/react-syntax-highlighter/react-syntax-highlighter/issues/402
|
|
131
|
+
// wrapLongLines
|
|
132
|
+
codeTagProps: { className: 'n-code' }, showLineNumbers: showLineNumbers }, { children: code })) }))] })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: (0, classnames_1.default)('ndl-code-block-actions', { disabled }) }, { children: actions === null || actions === void 0 ? void 0 : actions.map((iconButtonProps, i) => ((0, jsx_runtime_1.jsx)(button_1.IconButton, Object.assign({ "data-testid": `action-button-${i}`, clean: true, "aria-label": `${iconButtonProps['aria-label'] || 'CodeBlock Action'}`, disabled: disabled }, iconButtonProps), i))) })), shouldShowExpandButton && ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "ndl-code-block-expand-button" }, { children: (0, jsx_runtime_1.jsx)(button_1.IconButton, Object.assign({ "aria-label": "Expand/Collapse", onClick: () => {
|
|
133
|
+
if (isExpanded) {
|
|
134
|
+
setContainerHeight(`${maxHeight}px`);
|
|
135
|
+
setIsExpanded(false);
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
setContainerHeight(`fit-content`);
|
|
139
|
+
setIsExpanded(true);
|
|
140
|
+
}
|
|
141
|
+
}, clean: true }, { children: (0, jsx_runtime_1.jsx)(icons_1.HeroIcon, { type: "outline", iconName: isExpanded ? 'ChevronUpIcon' : 'ChevronDownIcon' }) })) })))] })));
|
|
103
142
|
});
|
|
104
143
|
//# sourceMappingURL=CodeBlock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeBlock.js","sourceRoot":"","sources":["../../../src/code-block/CodeBlock.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,kFAA6D;AAC7D,+
|
|
1
|
+
{"version":3,"file":"CodeBlock.js","sourceRoot":"","sources":["../../../src/code-block/CodeBlock.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,kFAA6D;AAC7D,+CAA2D;AAC3D,4DAAoC;AACpC,sCAAwD;AACxD,uEAAsE;AACtE,0EAQwD;AAGxD,oCAAoC;AAqBvB,QAAA,SAAS,GAAG,eAAK,CAAC,UAAU,CAAC,SAAS,SAAS,CAC1D,EACE,EAAE,EACF,SAAS,EACT,IAAI,EACJ,QAAQ,EACR,eAAe,EACf,KAAK,EACL,WAAW,EACX,OAAO,EACP,QAAQ,GACO,EACjB,GAAG;IAEH,MAAM,SAAS,GAAG,EAAE,IAAI,KAAK,CAAC;IAE9B,MAAM,2BAA2B,GAAG,IAAA,cAAM,EAAwB,IAAI,CAAC,CAAC;IAExE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,sBAAsB,EAAE,yBAAyB,CAAC,GAAG,IAAA,gBAAQ,EAClE,SAAS,KAAK,SAAS,CACxB,CAAC;IACF,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAC,SAAS,KAAK,SAAS,CAAC,CAAC;IACtE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,IAAA,gBAAQ,EAAC,GAAG,SAAS,IAAI,CAAC,CAAC;IAEzE,IAAA,iBAAS,EAAC,GAAG,EAAE;;QACb,IACE,CAAC,CAAA,MAAA,2BAA2B,CAAC,OAAO,0CAAE,YAAY,KAAI,CAAC,CAAC;YACxD,CAAC,CAAA,MAAA,2BAA2B,CAAC,OAAO,0CAAE,YAAY,KAAI,CAAC,CAAC,EACxD;YACA,aAAa,CAAC,IAAI,CAAC,CAAC;SACrB;aAAM;YACL,aAAa,CAAC,KAAK,CAAC,CAAC;SACtB;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAA,iBAAS,EAAC,GAAG,EAAE;;QACb,IACE,CAAC,CAAA,MAAA,2BAA2B,CAAC,OAAO,0CAAE,YAAY,KAAI,CAAC,CAAC;YACxD,CAAC,CAAA,MAAA,2BAA2B,CAAC,OAAO,0CAAE,YAAY,KAAI,CAAC,CAAC,EACxD;YACA,kBAAkB,CAAC,aAAa,CAAC,CAAC;YAClC,yBAAyB,CAAC,KAAK,CAAC,CAAC;SAClC;aAAM;YACL,kBAAkB,CAAC,GAAG,SAAS,IAAI,CAAC,CAAC;YACrC,yBAAyB,CAAC,IAAI,CAAC,CAAC;SACjC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;IAEtB,MAAM,QAAQ,GAAG,GAAG,EAAE;QACpB,QAAQ,KAAK,EAAE;YACb,KAAK,IAAI;gBACP,OAAO,UAAE,CAAC;YACZ,KAAK,iCAAiC;gBACpC,OAAO,qCAA6B,CAAC;YACvC,KAAK,KAAK;gBACR,OAAO,WAAG,CAAC;YACb,KAAK,eAAe;gBAClB,OAAO,oBAAY,CAAC;YACtB,KAAK,UAAU;gBACb,OAAO,gBAAQ,CAAC;YAClB,KAAK,OAAO;gBACV,OAAO,aAAK,CAAC;YACf,KAAK,gBAAgB;gBACnB,OAAO,sBAAc,CAAC;YACxB;gBACE,OAAO,UAAE,CAAC;SACb;IACH,CAAC,CAAC;IAEF,OAAO,CACL,wBAAC,SAAS,kBACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAC,0BAA0B,EACpC,KAAK,EAAE;YACL,MAAM,EAAE,eAAe;SACxB,iBAED,+CAAK,SAAS,EAAC,4BAA4B,iBACxC,WAAW,IAAI,CACd,8CACE,SAAS,EAAE,IAAA,oBAAU,EAAC,sBAAsB,EAAE,EAAE,QAAQ,EAAE,CAAC,EAC3D,KAAK,EAAE;4BACL,QAAQ,EAAE,eAAe,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,KAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK;yBAC/D,iBACW,kBAAkB,gBAE7B,WAAW,IACR,CACP,EACD,8CACE,GAAG,EAAE,2BAA2B,EAChC,SAAS,EAAE,IAAA,oBAAU,EAAC,mBAAmB,EAAE;4BACzC,OAAO,EAAE,SAAS;yBACnB,CAAC,EACF,IAAI,EAAC,SAAS,gBACH,cAAc,EACzB,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,GAAG,EAAE;4BACZ,YAAY,CAAC,IAAI,CAAC,CAAC;wBACrB,CAAC,EACD,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,gBAEjC,uBAAC,gCAAiB,kBAChB,QAAQ,EAAE,QAAQ,EAClB,KAAK,kCACA,QAAQ,EAAE,KACb,yBAAyB,EAAE;oCACzB,KAAK,EAAE,gBAAS,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;oCACnD,eAAe,EAAE,gBAAS,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;oCAC7C,UAAU,EAAE,gBAAS,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;oCACxC,UAAU,EAAE,GAAG;oCACf,KAAK,EAAE,kBAAkB;oCACzB,MAAM,EAAE,CAAC;oCACT,OAAO,EAAE,mBACP,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,EAAE;wCAC7C,CAAC,CAAC,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,KAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE;wCAC5D,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EACzC,mBAAmB;oCACnB,SAAS,EAAE,MAAM;oCACjB,SAAS,EAAE,MAAM;oCACjB,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;iCAC5B;4BAEH,qFAAqF;4BACrF,kFAAkF;4BAClF,gBAAgB;4BAChB,YAAY,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,EACrC,eAAe,EAAE,eAAe,gBAE/B,IAAI,IACa,IAChB,KACF,EACN,8CAAK,SAAS,EAAE,IAAA,oBAAU,EAAC,wBAAwB,EAAE,EAAE,QAAQ,EAAE,CAAC,gBAC/D,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,GAAG,CAAC,CAAC,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC,CACpC,uBAAC,mBAAU,iCACI,iBAAiB,CAAC,EAAE,EAEjC,KAAK,sBACO,GACV,eAAe,CAAC,YAAY,CAAC,IAAI,kBACnC,EAAE,EACF,QAAQ,EAAE,QAAQ,IACd,eAAe,GANd,CAAC,CAON,CACH,CAAC,IACE,EACL,sBAAsB,IAAI,CACzB,8CAAK,SAAS,EAAC,8BAA8B,gBAC3C,uBAAC,mBAAU,gCACE,iBAAiB,EAC5B,OAAO,EAAE,GAAG,EAAE;wBACZ,IAAI,UAAU,EAAE;4BACd,kBAAkB,CAAC,GAAG,SAAS,IAAI,CAAC,CAAC;4BACrC,aAAa,CAAC,KAAK,CAAC,CAAC;yBACtB;6BAAM;4BACL,kBAAkB,CAAC,aAAa,CAAC,CAAC;4BAClC,aAAa,CAAC,IAAI,CAAC,CAAC;yBACrB;oBACH,CAAC,EACD,KAAK,sBAEL,uBAAC,gBAAQ,IACP,IAAI,EAAC,SAAS,EACd,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,GAC1D,IACS,IACT,CACP,KACS,CACb,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
package/lib/cjs/table/Table.js
CHANGED
|
@@ -28,6 +28,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
28
28
|
const classnames_1 = __importDefault(require("classnames"));
|
|
29
29
|
const helpers_1 = require("./helpers");
|
|
30
30
|
const TableNavigation_1 = __importDefault(require("./TableNavigation"));
|
|
31
|
+
const loading_spinner_1 = require("../loading-spinner");
|
|
31
32
|
/** Table results per page, with the first option being the default */
|
|
32
33
|
const TABLE_RESULTS = {
|
|
33
34
|
DEFAULT: 10,
|
|
@@ -64,25 +65,52 @@ const DefaultHeader = ({ headerGroups, }) => ((0, jsx_runtime_1.jsx)("thead", {
|
|
|
64
65
|
// Apply the header cell props
|
|
65
66
|
// Key is defined from getHeaderGroupProps so we can ignore the false-negative
|
|
66
67
|
// eslint-disable-next-line react/jsx-key
|
|
67
|
-
(0, jsx_runtime_1.jsxs)("th", Object.assign({}, castedColumn.getHeaderProps(), { style: Object.assign(Object.assign({}, castedColumn.getHeaderProps(
|
|
68
|
+
(0, jsx_runtime_1.jsxs)("th", Object.assign({}, castedColumn.getHeaderProps(), { style: Object.assign(Object.assign({}, castedColumn.getHeaderProps([
|
|
69
|
+
{
|
|
70
|
+
style: castedColumn.style,
|
|
71
|
+
className: castedColumn.className,
|
|
72
|
+
},
|
|
73
|
+
]).style), {
|
|
68
74
|
/** 0.25px */
|
|
69
|
-
letterSpacing: '0.25px' }), scope: "col", className: headerClasses
|
|
75
|
+
letterSpacing: '0.25px' }), scope: "col", className: `${headerClasses} ${castedColumn.getHeaderProps([
|
|
76
|
+
{
|
|
77
|
+
style: castedColumn.style,
|
|
78
|
+
className: castedColumn.className,
|
|
79
|
+
},
|
|
80
|
+
]).className}` }, { children: [(0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "table-header-cell" }, { children: [castedColumn.render('Header'), castedColumn.canSort && ((0, jsx_runtime_1.jsx)(helpers_1.SortIcon, Object.assign({}, castedColumn.getSortByToggleProps(), { isSortedDesc: castedColumn.isSortedDesc })))] })), 'canResize' in castedColumn &&
|
|
70
81
|
'getResizerProps' in castedColumn && ((0, jsx_runtime_1.jsx)(helpers_1.ResizingBar, Object.assign({}, castedColumn.getResizerProps())))] })));
|
|
71
82
|
}) })))) }));
|
|
72
|
-
const DefaultBody = ({ getTableBodyProps, page, prepareRow, actionsButtons, headerGroups, rows, }) => {
|
|
83
|
+
const DefaultBody = ({ getTableBodyProps, page, prepareRow, actionsButtons, headerGroups, rows, loading = false, }) => {
|
|
73
84
|
// Page is defined when using the usePagination plugin, otherwise rows is defined
|
|
74
85
|
const iterable = page !== null && page !== void 0 ? page : rows;
|
|
86
|
+
if (loading) {
|
|
87
|
+
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)("tbody", Object.assign({}, getTableBodyProps(), { className: "n-bg-light-neutral-bg-weak" }, { children: (0, jsx_runtime_1.jsx)("tr", { children: (0, jsx_runtime_1.jsx)("td", Object.assign({ colSpan: headerGroups[0].headers.length }, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({
|
|
88
|
+
// Minimum height of the table's body
|
|
89
|
+
// so placeholders are visible
|
|
90
|
+
style: { height: '100px' }, className: "n-flex n-flex-row n-justify-center n-items-center n-gap-2" }, { children: (0, jsx_runtime_1.jsxs)("span", Object.assign({ className: "ndl-table-placeholder" }, { children: [(0, jsx_runtime_1.jsx)(loading_spinner_1.LoadingSpinner, {}), (0, jsx_runtime_1.jsx)("h6", Object.assign({ className: "n-my-5 n-text-center" }, { children: "Loading data" }))] })) })) })) }) })) }));
|
|
91
|
+
}
|
|
75
92
|
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: iterable.length > 0 ? ((0, jsx_runtime_1.jsx)("tbody", Object.assign({}, getTableBodyProps(), { className: "n-bg-light-neutral-bg-weak" }, { children: iterable.length > 0 &&
|
|
76
93
|
iterable.map((row) => {
|
|
77
94
|
prepareRow(row);
|
|
78
95
|
return (
|
|
79
96
|
// Key is defined from getHeaderGroupProps so we can ignore the false-negative
|
|
80
97
|
// eslint-disable-next-line react/jsx-key
|
|
81
|
-
(0, jsx_runtime_1.jsxs)("tr", Object.assign({ className: "ndl-table-row" }, row.getRowProps(), { children: [row.cells.map((cell) =>
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
98
|
+
(0, jsx_runtime_1.jsxs)("tr", Object.assign({ className: "ndl-table-row" }, row.getRowProps(), { children: [row.cells.map((cell) => {
|
|
99
|
+
const castedColumn = cell.column;
|
|
100
|
+
return (
|
|
101
|
+
// Key is defined from getHeaderGroupProps so we can ignore the false-negative
|
|
102
|
+
// eslint-disable-next-line react/jsx-key
|
|
103
|
+
(0, jsx_runtime_1.jsx)("td", Object.assign({ className: "ndl-table-cell" }, cell.getCellProps([
|
|
104
|
+
{
|
|
105
|
+
className: castedColumn.className,
|
|
106
|
+
style: castedColumn.style,
|
|
107
|
+
},
|
|
108
|
+
]), { children: cell.render('Cell') })));
|
|
109
|
+
}), actionsButtons && actionsButtons(row)] })));
|
|
110
|
+
}) }))) : ((0, jsx_runtime_1.jsx)("tbody", Object.assign({}, getTableBodyProps(), { className: "n-bg-light-neutral-bg-weak" }, { children: (0, jsx_runtime_1.jsx)("tr", { children: (0, jsx_runtime_1.jsx)("td", Object.assign({ colSpan: headerGroups[0].headers.length }, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({
|
|
111
|
+
// Minimum height of the table's body
|
|
112
|
+
// so placeholders are visible
|
|
113
|
+
style: { height: '100px' }, className: "n-flex n-flex-row n-justify-center n-items-center n-gap-2" }, { children: (0, jsx_runtime_1.jsx)("span", Object.assign({ className: "ndl-table-placeholder" }, { children: (0, jsx_runtime_1.jsx)("h6", Object.assign({ className: "n-my-5 n-text-center n-h-10" }, { children: "No data present" })) })) })) })) }) }))) }));
|
|
86
114
|
};
|
|
87
115
|
const DefaultNavigation = ({ state, rows, page, canPreviousPage, nextPage, pageOptions, pageCount, gotoPage, canNextPage, previousPage, setPageSize, }) => {
|
|
88
116
|
// Navigation is only needed if pagination exists
|
|
@@ -118,7 +146,7 @@ const Table = (props
|
|
|
118
146
|
if (!getTableProps) {
|
|
119
147
|
throw new Error('getTableProps is required');
|
|
120
148
|
}
|
|
121
|
-
return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: (0, classnames_1.default)('ndl-table n-overflow-hidden n-flex n-flex-col n-divide-y n-divide-light-neutral-border-weak n-bg-light-neutral-bg-weak', className), style: style, role: role }, { children: [controls && ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "n-px-7 n-py-6 n-flex n-flex-row n-items-center" }, { children: controls }))), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "n-overflow-x-auto" }, { children: (0, jsx_runtime_1.jsxs)("table", Object.assign({}, getTableProps(), { className: "n-w-full n-min-w-full n-divide-y n-divide-light-neutral-border-weak n-bg-light-neutral-bg-weak" }, { children: [header || (0, jsx_runtime_1.jsx)(DefaultHeader, Object.assign({}, props)), body || (0, jsx_runtime_1.jsx)(DefaultBody, Object.assign({}, props))] })) })), navigation || ((0, jsx_runtime_1.jsx)(DefaultNavigation, Object.assign({}, props)))] })));
|
|
149
|
+
return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: (0, classnames_1.default)('ndl-table n-overflow-hidden n-flex n-flex-col n-divide-y n-divide-light-neutral-border-weak n-bg-light-neutral-bg-weak n-relative', className), style: style, role: role }, { children: [controls && ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "n-px-7 n-py-6 n-flex n-flex-row n-items-center" }, { children: controls }))), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "n-overflow-x-auto" }, { children: (0, jsx_runtime_1.jsxs)("table", Object.assign({}, getTableProps(), { className: "n-w-full n-min-w-full n-divide-y n-divide-light-neutral-border-weak n-bg-light-neutral-bg-weak" }, { children: [header || (0, jsx_runtime_1.jsx)(DefaultHeader, Object.assign({}, props)), body || (0, jsx_runtime_1.jsx)(DefaultBody, Object.assign({}, props))] })) })), navigation || ((0, jsx_runtime_1.jsx)(DefaultNavigation, Object.assign({}, props)))] })));
|
|
122
150
|
};
|
|
123
151
|
/**
|
|
124
152
|
* Easy Actions wrapper for each row
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../../../src/table/Table.tsx"],"names":[],"mappings":";;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,4DAAoC;AAiBpC,uCAAgE;AAChE,wEAAgD;
|
|
1
|
+
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../../../src/table/Table.tsx"],"names":[],"mappings":"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"}
|
|
@@ -20,14 +20,41 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
20
20
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
21
21
|
*/
|
|
22
22
|
import ndlTokens from '@neo4j-ndl/base/lib/tokens/js/tokens';
|
|
23
|
-
import React, { useState } from 'react';
|
|
23
|
+
import React, { useEffect, useRef, useState } from 'react';
|
|
24
24
|
import classNames from 'classnames';
|
|
25
25
|
import { IconButton } from '../button';
|
|
26
26
|
import { Prism as SyntaxHighlighter } from 'react-syntax-highlighter';
|
|
27
27
|
import { base16AteliersulphurpoolLight, coy, duotoneLight, ghcolors, prism, solarizedlight, vs, } from 'react-syntax-highlighter/dist/cjs/styles/prism';
|
|
28
|
-
|
|
28
|
+
import { HeroIcon } from '../icons';
|
|
29
|
+
export const CodeBlock = React.forwardRef(function CodeBlock({ as, maxHeight, code, language, showLineNumbers, theme, headerTitle, actions, disabled, }, ref) {
|
|
29
30
|
const Component = as || 'div';
|
|
31
|
+
const syntaxHighlighterWrapperRef = useRef(null);
|
|
30
32
|
const [isFocused, setIsFocused] = useState(false);
|
|
33
|
+
const [shouldShowExpandButton, setShouldShowExpandButton] = useState(maxHeight !== undefined);
|
|
34
|
+
const [isExpanded, setIsExpanded] = useState(maxHeight === undefined);
|
|
35
|
+
const [containerHeight, setContainerHeight] = useState(`${maxHeight}px`);
|
|
36
|
+
useEffect(() => {
|
|
37
|
+
var _a, _b;
|
|
38
|
+
if ((((_a = syntaxHighlighterWrapperRef.current) === null || _a === void 0 ? void 0 : _a.scrollHeight) || 0) <=
|
|
39
|
+
(((_b = syntaxHighlighterWrapperRef.current) === null || _b === void 0 ? void 0 : _b.clientHeight) || 0)) {
|
|
40
|
+
setIsExpanded(true);
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
setIsExpanded(false);
|
|
44
|
+
}
|
|
45
|
+
}, []);
|
|
46
|
+
useEffect(() => {
|
|
47
|
+
var _a, _b;
|
|
48
|
+
if ((((_a = syntaxHighlighterWrapperRef.current) === null || _a === void 0 ? void 0 : _a.clientHeight) || 0) >=
|
|
49
|
+
(((_b = syntaxHighlighterWrapperRef.current) === null || _b === void 0 ? void 0 : _b.scrollHeight) || 0)) {
|
|
50
|
+
setContainerHeight(`fit-content`);
|
|
51
|
+
setShouldShowExpandButton(false);
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
setContainerHeight(`${maxHeight}px`);
|
|
55
|
+
setShouldShowExpandButton(true);
|
|
56
|
+
}
|
|
57
|
+
}, [maxHeight, code]);
|
|
31
58
|
const getTheme = () => {
|
|
32
59
|
switch (theme) {
|
|
33
60
|
case 'vs':
|
|
@@ -48,28 +75,40 @@ export const CodeBlock = React.forwardRef(function CodeBlock({ as, code, languag
|
|
|
48
75
|
return vs;
|
|
49
76
|
}
|
|
50
77
|
};
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
78
|
+
return (_jsxs(Component, Object.assign({ ref: ref, className: "ndl-code-block-container", style: {
|
|
79
|
+
height: containerHeight,
|
|
80
|
+
} }, { children: [_jsxs("div", Object.assign({ className: "n-flex n-flex-col n-h-full" }, { children: [headerTitle && (_jsx("div", Object.assign({ className: classNames('ndl-code-block-title', { disabled }), style: {
|
|
81
|
+
maxWidth: `calc(100% - ${((actions === null || actions === void 0 ? void 0 : actions.length) || 0) * 36 + 20}px)`,
|
|
82
|
+
}, "data-testid": "code-block-title" }, { children: headerTitle }))), _jsx("div", Object.assign({ ref: syntaxHighlighterWrapperRef, className: classNames('highlight-wrapper', {
|
|
83
|
+
focused: isFocused,
|
|
84
|
+
}), role: "textbox", "aria-label": "code-snippet", tabIndex: 0, onFocus: () => {
|
|
85
|
+
setIsFocused(true);
|
|
86
|
+
}, onBlur: () => setIsFocused(false) }, { children: _jsx(SyntaxHighlighter, Object.assign({ language: language, style: Object.assign(Object.assign({}, getTheme()), { 'pre[class*="language-"]': {
|
|
87
|
+
color: ndlTokens.palette.light.neutral.text.default,
|
|
88
|
+
backgroundColor: ndlTokens.colors.neutral[20],
|
|
89
|
+
background: ndlTokens.colors.neutral[20],
|
|
90
|
+
lineHeight: '1',
|
|
91
|
+
width: `calc(100% - 4px)`,
|
|
92
|
+
border: 0,
|
|
93
|
+
padding: `0 calc(0.75em + ${headerTitle === undefined || headerTitle === ''
|
|
94
|
+
? ((actions === null || actions === void 0 ? void 0 : actions.length) || (shouldShowExpandButton ? 1 : 0)) * 36
|
|
95
|
+
: (shouldShowExpandButton ? 1 : 0) * 36}px) 0.75em 0.75em`,
|
|
96
|
+
overflowX: 'auto',
|
|
97
|
+
overflowY: 'auto',
|
|
98
|
+
opacity: disabled ? 0.5 : 1,
|
|
99
|
+
} }),
|
|
100
|
+
// Turn on 'showLineNumbers' & 'wrapLongLines' at the same time, the display is wrong
|
|
101
|
+
// https://github.com/react-syntax-highlighter/react-syntax-highlighter/issues/402
|
|
102
|
+
// wrapLongLines
|
|
103
|
+
codeTagProps: { className: 'n-code' }, showLineNumbers: showLineNumbers }, { children: code })) }))] })), _jsx("div", Object.assign({ className: classNames('ndl-code-block-actions', { disabled }) }, { children: actions === null || actions === void 0 ? void 0 : actions.map((iconButtonProps, i) => (_jsx(IconButton, Object.assign({ "data-testid": `action-button-${i}`, clean: true, "aria-label": `${iconButtonProps['aria-label'] || 'CodeBlock Action'}`, disabled: disabled }, iconButtonProps), i))) })), shouldShowExpandButton && (_jsx("div", Object.assign({ className: "ndl-code-block-expand-button" }, { children: _jsx(IconButton, Object.assign({ "aria-label": "Expand/Collapse", onClick: () => {
|
|
104
|
+
if (isExpanded) {
|
|
105
|
+
setContainerHeight(`${maxHeight}px`);
|
|
106
|
+
setIsExpanded(false);
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
setContainerHeight(`fit-content`);
|
|
110
|
+
setIsExpanded(true);
|
|
111
|
+
}
|
|
112
|
+
}, clean: true }, { children: _jsx(HeroIcon, { type: "outline", iconName: isExpanded ? 'ChevronUpIcon' : 'ChevronDownIcon' }) })) })))] })));
|
|
74
113
|
});
|
|
75
114
|
//# sourceMappingURL=CodeBlock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeBlock.js","sourceRoot":"","sources":["../../../src/code-block/CodeBlock.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,SAAS,MAAM,sCAAsC,CAAC;AAC7D,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"CodeBlock.js","sourceRoot":"","sources":["../../../src/code-block/CodeBlock.tsx"],"names":[],"mappings":"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"}
|
package/lib/esm/table/Table.js
CHANGED
|
@@ -22,6 +22,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
|
22
22
|
import classNames from 'classnames';
|
|
23
23
|
import { ResizingBar, SortIcon, TableResults } from './helpers';
|
|
24
24
|
import TableNavigation from './TableNavigation';
|
|
25
|
+
import { LoadingSpinner } from '../loading-spinner';
|
|
25
26
|
/** Table results per page, with the first option being the default */
|
|
26
27
|
const TABLE_RESULTS = {
|
|
27
28
|
DEFAULT: 10,
|
|
@@ -57,25 +58,52 @@ const DefaultHeader = ({ headerGroups, }) => (_jsx("thead", { children:
|
|
|
57
58
|
// Apply the header cell props
|
|
58
59
|
// Key is defined from getHeaderGroupProps so we can ignore the false-negative
|
|
59
60
|
// eslint-disable-next-line react/jsx-key
|
|
60
|
-
_jsxs("th", Object.assign({}, castedColumn.getHeaderProps(), { style: Object.assign(Object.assign({}, castedColumn.getHeaderProps(
|
|
61
|
+
_jsxs("th", Object.assign({}, castedColumn.getHeaderProps(), { style: Object.assign(Object.assign({}, castedColumn.getHeaderProps([
|
|
62
|
+
{
|
|
63
|
+
style: castedColumn.style,
|
|
64
|
+
className: castedColumn.className,
|
|
65
|
+
},
|
|
66
|
+
]).style), {
|
|
61
67
|
/** 0.25px */
|
|
62
|
-
letterSpacing: '0.25px' }), scope: "col", className: headerClasses
|
|
68
|
+
letterSpacing: '0.25px' }), scope: "col", className: `${headerClasses} ${castedColumn.getHeaderProps([
|
|
69
|
+
{
|
|
70
|
+
style: castedColumn.style,
|
|
71
|
+
className: castedColumn.className,
|
|
72
|
+
},
|
|
73
|
+
]).className}` }, { children: [_jsxs("div", Object.assign({ className: "table-header-cell" }, { children: [castedColumn.render('Header'), castedColumn.canSort && (_jsx(SortIcon, Object.assign({}, castedColumn.getSortByToggleProps(), { isSortedDesc: castedColumn.isSortedDesc })))] })), 'canResize' in castedColumn &&
|
|
63
74
|
'getResizerProps' in castedColumn && (_jsx(ResizingBar, Object.assign({}, castedColumn.getResizerProps())))] })));
|
|
64
75
|
}) })))) }));
|
|
65
|
-
const DefaultBody = ({ getTableBodyProps, page, prepareRow, actionsButtons, headerGroups, rows, }) => {
|
|
76
|
+
const DefaultBody = ({ getTableBodyProps, page, prepareRow, actionsButtons, headerGroups, rows, loading = false, }) => {
|
|
66
77
|
// Page is defined when using the usePagination plugin, otherwise rows is defined
|
|
67
78
|
const iterable = page !== null && page !== void 0 ? page : rows;
|
|
79
|
+
if (loading) {
|
|
80
|
+
return (_jsx(_Fragment, { children: _jsx("tbody", Object.assign({}, getTableBodyProps(), { className: "n-bg-light-neutral-bg-weak" }, { children: _jsx("tr", { children: _jsx("td", Object.assign({ colSpan: headerGroups[0].headers.length }, { children: _jsx("div", Object.assign({
|
|
81
|
+
// Minimum height of the table's body
|
|
82
|
+
// so placeholders are visible
|
|
83
|
+
style: { height: '100px' }, className: "n-flex n-flex-row n-justify-center n-items-center n-gap-2" }, { children: _jsxs("span", Object.assign({ className: "ndl-table-placeholder" }, { children: [_jsx(LoadingSpinner, {}), _jsx("h6", Object.assign({ className: "n-my-5 n-text-center" }, { children: "Loading data" }))] })) })) })) }) })) }));
|
|
84
|
+
}
|
|
68
85
|
return (_jsx(_Fragment, { children: iterable.length > 0 ? (_jsx("tbody", Object.assign({}, getTableBodyProps(), { className: "n-bg-light-neutral-bg-weak" }, { children: iterable.length > 0 &&
|
|
69
86
|
iterable.map((row) => {
|
|
70
87
|
prepareRow(row);
|
|
71
88
|
return (
|
|
72
89
|
// Key is defined from getHeaderGroupProps so we can ignore the false-negative
|
|
73
90
|
// eslint-disable-next-line react/jsx-key
|
|
74
|
-
_jsxs("tr", Object.assign({ className: "ndl-table-row" }, row.getRowProps(), { children: [row.cells.map((cell) =>
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
91
|
+
_jsxs("tr", Object.assign({ className: "ndl-table-row" }, row.getRowProps(), { children: [row.cells.map((cell) => {
|
|
92
|
+
const castedColumn = cell.column;
|
|
93
|
+
return (
|
|
94
|
+
// Key is defined from getHeaderGroupProps so we can ignore the false-negative
|
|
95
|
+
// eslint-disable-next-line react/jsx-key
|
|
96
|
+
_jsx("td", Object.assign({ className: "ndl-table-cell" }, cell.getCellProps([
|
|
97
|
+
{
|
|
98
|
+
className: castedColumn.className,
|
|
99
|
+
style: castedColumn.style,
|
|
100
|
+
},
|
|
101
|
+
]), { children: cell.render('Cell') })));
|
|
102
|
+
}), actionsButtons && actionsButtons(row)] })));
|
|
103
|
+
}) }))) : (_jsx("tbody", Object.assign({}, getTableBodyProps(), { className: "n-bg-light-neutral-bg-weak" }, { children: _jsx("tr", { children: _jsx("td", Object.assign({ colSpan: headerGroups[0].headers.length }, { children: _jsx("div", Object.assign({
|
|
104
|
+
// Minimum height of the table's body
|
|
105
|
+
// so placeholders are visible
|
|
106
|
+
style: { height: '100px' }, className: "n-flex n-flex-row n-justify-center n-items-center n-gap-2" }, { children: _jsx("span", Object.assign({ className: "ndl-table-placeholder" }, { children: _jsx("h6", Object.assign({ className: "n-my-5 n-text-center n-h-10" }, { children: "No data present" })) })) })) })) }) }))) }));
|
|
79
107
|
};
|
|
80
108
|
const DefaultNavigation = ({ state, rows, page, canPreviousPage, nextPage, pageOptions, pageCount, gotoPage, canNextPage, previousPage, setPageSize, }) => {
|
|
81
109
|
// Navigation is only needed if pagination exists
|
|
@@ -111,7 +139,7 @@ const Table = (props
|
|
|
111
139
|
if (!getTableProps) {
|
|
112
140
|
throw new Error('getTableProps is required');
|
|
113
141
|
}
|
|
114
|
-
return (_jsxs("div", Object.assign({ className: classNames('ndl-table n-overflow-hidden n-flex n-flex-col n-divide-y n-divide-light-neutral-border-weak n-bg-light-neutral-bg-weak', className), style: style, role: role }, { children: [controls && (_jsx("div", Object.assign({ className: "n-px-7 n-py-6 n-flex n-flex-row n-items-center" }, { children: controls }))), _jsx("div", Object.assign({ className: "n-overflow-x-auto" }, { children: _jsxs("table", Object.assign({}, getTableProps(), { className: "n-w-full n-min-w-full n-divide-y n-divide-light-neutral-border-weak n-bg-light-neutral-bg-weak" }, { children: [header || _jsx(DefaultHeader, Object.assign({}, props)), body || _jsx(DefaultBody, Object.assign({}, props))] })) })), navigation || (_jsx(DefaultNavigation, Object.assign({}, props)))] })));
|
|
142
|
+
return (_jsxs("div", Object.assign({ className: classNames('ndl-table n-overflow-hidden n-flex n-flex-col n-divide-y n-divide-light-neutral-border-weak n-bg-light-neutral-bg-weak n-relative', className), style: style, role: role }, { children: [controls && (_jsx("div", Object.assign({ className: "n-px-7 n-py-6 n-flex n-flex-row n-items-center" }, { children: controls }))), _jsx("div", Object.assign({ className: "n-overflow-x-auto" }, { children: _jsxs("table", Object.assign({}, getTableProps(), { className: "n-w-full n-min-w-full n-divide-y n-divide-light-neutral-border-weak n-bg-light-neutral-bg-weak" }, { children: [header || _jsx(DefaultHeader, Object.assign({}, props)), body || _jsx(DefaultBody, Object.assign({}, props))] })) })), navigation || (_jsx(DefaultNavigation, Object.assign({}, props)))] })));
|
|
115
143
|
};
|
|
116
144
|
/**
|
|
117
145
|
* Easy Actions wrapper for each row
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../../../src/table/Table.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,UAAU,MAAM,YAAY,CAAC;AAiBpC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,eAAe,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../../../src/table/Table.tsx"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,7 @@ import { IconButtonProps } from '../button';
|
|
|
23
23
|
import { ElementBase } from '../helpers';
|
|
24
24
|
import { LanguageProp } from './languages';
|
|
25
25
|
export interface CodeBlockProps extends ElementBase<HTMLDivElement> {
|
|
26
|
+
maxHeight?: number;
|
|
26
27
|
code: string;
|
|
27
28
|
language: LanguageProp | 'text';
|
|
28
29
|
showLineNumbers?: boolean;
|
|
@@ -37,6 +37,7 @@ export declare const fixedHeight: (items: number, height: number) => {
|
|
|
37
37
|
declare type DefaultHeaderProps<T extends object> = Pick<UseTableInstanceProps<T>, 'headerGroups'> & UseSortByInstanceProps<T>;
|
|
38
38
|
declare type DefaultBodyProps<T extends object> = {
|
|
39
39
|
actionsButtons?: (row: Row<T>) => JSX.Element | JSX.Element[];
|
|
40
|
+
loading: boolean;
|
|
40
41
|
} & UseTableInstanceProps<T> & Partial<UsePaginationInstanceProps<T>>;
|
|
41
42
|
export interface PaginationTableState<T extends object> extends UseColumnOrderState<T>, UseExpandedState<T>, UseFiltersState<T>, UsePaginationState<T>, UseGlobalFiltersState<T> {
|
|
42
43
|
}
|
|
@@ -65,6 +66,7 @@ export declare type DefaultNavigationProps<T extends object> = {
|
|
|
65
66
|
declare const Table: {
|
|
66
67
|
<T extends object>(props: Partial<Sections> & Partial<{
|
|
67
68
|
actionsButtons?: ((row: Row<T>) => JSX.Element | JSX.Element[]) | undefined;
|
|
69
|
+
loading: boolean;
|
|
68
70
|
} & UseTableInstanceProps<T> & Partial<UsePaginationInstanceProps<T>> & {
|
|
69
71
|
state: Partial<PaginationTableState<T>>;
|
|
70
72
|
rows: Row<T>[];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@neo4j-ndl/react",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.3",
|
|
4
4
|
"description": "React implementation of Neo4j Design System",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"button",
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
},
|
|
70
70
|
"dependencies": {
|
|
71
71
|
"@heroicons/react": "^1.0.5",
|
|
72
|
-
"@neo4j-ndl/base": "^0.
|
|
72
|
+
"@neo4j-ndl/base": "^0.9.0",
|
|
73
73
|
"classnames": "^2.3.1",
|
|
74
74
|
"detect-browser": "^5.3.0",
|
|
75
75
|
"react-dropzone": "^14.0.0",
|