oolib 2.67.0 → 2.67.1
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/dist/components/SimpleTable/comps/AddRowColButtons/index.d.ts +7 -0
- package/dist/components/SimpleTable/comps/AddRowColButtons/index.js +55 -0
- package/dist/components/SimpleTable/functions.d.ts +3 -0
- package/dist/components/SimpleTable/functions.js +52 -0
- package/dist/components/SimpleTable/index.d.ts +15 -0
- package/dist/components/SimpleTable/index.js +179 -0
- package/dist/components/SimpleTable/styled.d.ts +4 -0
- package/dist/components/SimpleTable/styled.js +45 -0
- package/dist/components/SimpleTable/useResizeTableColumns.d.ts +14 -0
- package/dist/components/SimpleTable/useResizeTableColumns.js +86 -0
- package/dist/components/SimpleTable/utils/prepInitValueFromConfigIfNoValue.d.ts +10 -0
- package/dist/components/SimpleTable/utils/prepInitValueFromConfigIfNoValue.js +85 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +3 -1
- package/package.json +1 -1
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(o, k2, desc);
|
|
13
|
+
}) : (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
o[k2] = m[k];
|
|
16
|
+
}));
|
|
17
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
+
}) : function(o, v) {
|
|
20
|
+
o["default"] = v;
|
|
21
|
+
});
|
|
22
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
23
|
+
if (mod && mod.__esModule) return mod;
|
|
24
|
+
var result = {};
|
|
25
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
26
|
+
__setModuleDefault(result, mod);
|
|
27
|
+
return result;
|
|
28
|
+
};
|
|
29
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
30
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
31
|
+
};
|
|
32
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
33
|
+
exports.AddColButton = exports.AddRowButton = void 0;
|
|
34
|
+
var react_1 = __importDefault(require("react"));
|
|
35
|
+
var icons_1 = require("../../../../icons");
|
|
36
|
+
var themes_1 = require("../../../../themes");
|
|
37
|
+
var styled_components_1 = __importStar(require("styled-components"));
|
|
38
|
+
var mixins_1 = require("../../../../themes/mixins");
|
|
39
|
+
var Plus = icons_1.icons.Plus;
|
|
40
|
+
var commonStyles = (0, styled_components_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: ", ";\n border: none;\n ", "\n &:hover {\n background-color: ", ";\n }\n cursor: pointer;\n"], ["\n background-color: ", ";\n border: none;\n ", "\n &:hover {\n background-color: ", ";\n }\n cursor: pointer;\n"])), themes_1.colors.greyColor5, (0, mixins_1.transition)("background-color"), themes_1.colors.greyColor10);
|
|
41
|
+
var StyledRowButton = styled_components_1.default.button(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n height: 2rem;\n text-align: center;\n width: 100%;\n ", "\n"], ["\n height: 2rem;\n text-align: center;\n width: 100%;\n ", "\n"])), commonStyles);
|
|
42
|
+
var StyledColButton = styled_components_1.default.button(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n width: 2rem;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-bottom: 2rem; //should be same as height of StyledRowButton\n flex-shrink: 0;\n ", "\n"], ["\n width: 2rem;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-bottom: 2rem; //should be same as height of StyledRowButton\n flex-shrink: 0;\n ", "\n"])), commonStyles);
|
|
43
|
+
var AddRowButton = function (_a) {
|
|
44
|
+
var onClick = _a.onClick;
|
|
45
|
+
return (react_1.default.createElement(StyledRowButton, { onClick: onClick },
|
|
46
|
+
react_1.default.createElement(Plus, { size: 12, weight: "bold" })));
|
|
47
|
+
};
|
|
48
|
+
exports.AddRowButton = AddRowButton;
|
|
49
|
+
var AddColButton = function (_a) {
|
|
50
|
+
var onClick = _a.onClick;
|
|
51
|
+
return (react_1.default.createElement(StyledColButton, { onClick: onClick },
|
|
52
|
+
react_1.default.createElement(Plus, { size: 12, weight: "bold" })));
|
|
53
|
+
};
|
|
54
|
+
exports.AddColButton = AddColButton;
|
|
55
|
+
var templateObject_1, templateObject_2, templateObject_3;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
3
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
4
|
+
if (ar || !(i in from)) {
|
|
5
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
6
|
+
ar[i] = from[i];
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.handleAddRow = exports.handleAddCol = exports.genHash = void 0;
|
|
13
|
+
var makeArrayFromLength_1 = require("../../utils/makeArrayFromLength");
|
|
14
|
+
var genHash = function (len) {
|
|
15
|
+
var arr = "1234567890abcdefghijklmnopqrstuvwxyz";
|
|
16
|
+
var ans = "";
|
|
17
|
+
for (var i = len; i > 0; i--) {
|
|
18
|
+
ans += arr[Math.floor(Math.random() * arr.length)];
|
|
19
|
+
}
|
|
20
|
+
return ans;
|
|
21
|
+
};
|
|
22
|
+
exports.genHash = genHash;
|
|
23
|
+
var handleAddCol = function (value, props) {
|
|
24
|
+
var onChange = props.onChange, id = props.id;
|
|
25
|
+
var data = value.data, colWidthConfig = value.colWidthConfig;
|
|
26
|
+
var newData = __spreadArray([], data, true);
|
|
27
|
+
newData.map(function (row) {
|
|
28
|
+
row.cellData.push({
|
|
29
|
+
id: "row_".concat((0, exports.genHash)(8)),
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
onChange && onChange(id, { data: newData, colWidthConfig: colWidthConfig });
|
|
33
|
+
};
|
|
34
|
+
exports.handleAddCol = handleAddCol;
|
|
35
|
+
var handleAddRow = function (value, props) {
|
|
36
|
+
var onChange = props.onChange, id = props.id;
|
|
37
|
+
var data = value.data, colWidthConfig = value.colWidthConfig;
|
|
38
|
+
var newData = __spreadArray([], data, true);
|
|
39
|
+
var lastRowIdx = newData.length - 1;
|
|
40
|
+
var newRowTotCells = newData[lastRowIdx].cellData.length;
|
|
41
|
+
if (!newRowTotCells)
|
|
42
|
+
return;
|
|
43
|
+
var newRow = {
|
|
44
|
+
id: "row_".concat((0, exports.genHash)(8)),
|
|
45
|
+
cellData: (0, makeArrayFromLength_1.makeArrayFromLength)(newRowTotCells).map(function (d, i) { return ({
|
|
46
|
+
id: "cell_".concat((0, exports.genHash)(8)),
|
|
47
|
+
}); })
|
|
48
|
+
};
|
|
49
|
+
newData.push(newRow);
|
|
50
|
+
onChange && onChange(id, { data: newData, colWidthConfig: colWidthConfig });
|
|
51
|
+
};
|
|
52
|
+
exports.handleAddRow = handleAddRow;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export function SimpleTable({ id, readOnly, config, value: _value, onChange, canAddRows, defaultColWidth, }: {
|
|
2
|
+
id: any;
|
|
3
|
+
readOnly: any;
|
|
4
|
+
config?: {
|
|
5
|
+
noOfCols: number;
|
|
6
|
+
noOfRows: number;
|
|
7
|
+
colHeaderData: any;
|
|
8
|
+
rowHeaderData: any;
|
|
9
|
+
};
|
|
10
|
+
value: any;
|
|
11
|
+
onChange: any;
|
|
12
|
+
canAddRows?: boolean;
|
|
13
|
+
defaultColWidth?: number;
|
|
14
|
+
}, ...args: any[]): React.JSX.Element;
|
|
15
|
+
import React from "react";
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
+
}
|
|
19
|
+
Object.defineProperty(o, k2, desc);
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
37
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
38
|
+
if (ar || !(i in from)) {
|
|
39
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
40
|
+
ar[i] = from[i];
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
44
|
+
};
|
|
45
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
|
+
exports.SimpleTable = void 0;
|
|
47
|
+
var react_1 = __importStar(require("react"));
|
|
48
|
+
var themes_1 = require("../../themes");
|
|
49
|
+
var getBlockLabelProps_1 = require("../../utils/getBlockLabelProps");
|
|
50
|
+
var BlockLabel_1 = require("../BlockLabel");
|
|
51
|
+
//local utils
|
|
52
|
+
var styled_components_1 = require("styled-components");
|
|
53
|
+
var utilsOolib_1 = require("../../utilsOolib");
|
|
54
|
+
var AddRowColButtons_1 = require("./comps/AddRowColButtons");
|
|
55
|
+
var functions_1 = require("./functions");
|
|
56
|
+
var styled_1 = require("./styled");
|
|
57
|
+
var useResizeTableColumns_1 = require("./useResizeTableColumns");
|
|
58
|
+
var prepInitValueFromConfigIfNoValue_1 = require("./utils/prepInitValueFromConfigIfNoValue");
|
|
59
|
+
var greyColor100 = themes_1.colors.greyColor100;
|
|
60
|
+
/*pending:
|
|
61
|
+
- first test whatever is done on okf
|
|
62
|
+
- add col is still buggy. cannot resize, plus width seems wrong of new col
|
|
63
|
+
- add rowHeaderData functionality
|
|
64
|
+
- fix bugs in the pointer and risize hover
|
|
65
|
+
- action menu to toggle header styles for col & row
|
|
66
|
+
- action menu to toggle between stretch to available width vs fixed col widths (this might not be straightforward)
|
|
67
|
+
- delete cols & rows
|
|
68
|
+
- reposition cols & rows
|
|
69
|
+
*/
|
|
70
|
+
function SimpleTable(_a) {
|
|
71
|
+
var id = _a.id, readOnly = _a.readOnly, _b = _a.config, config = _b === void 0 ? {
|
|
72
|
+
noOfCols: 3,
|
|
73
|
+
noOfRows: 3,
|
|
74
|
+
colHeaderData: undefined,
|
|
75
|
+
rowHeaderData: undefined
|
|
76
|
+
} : _b, _value = _a.value, onChange = _a.onChange, _c = _a.canAddRows, canAddRows = _c === void 0 ? true : _c, _d = _a.defaultColWidth, defaultColWidth = _d === void 0 ? 200 : _d;
|
|
77
|
+
var props = arguments[0];
|
|
78
|
+
var theme = (0, styled_components_1.useTheme)();
|
|
79
|
+
var _e = theme || {}, RichTextEditor = _e.RichTextEditor, convertToRichText = _e.convertToRichText;
|
|
80
|
+
var _f = (0, prepInitValueFromConfigIfNoValue_1.prepInitValueFromConfigIfNoValue)({
|
|
81
|
+
_value: _value,
|
|
82
|
+
config: config,
|
|
83
|
+
defaultColWidth: defaultColWidth,
|
|
84
|
+
convertToRichText: convertToRichText
|
|
85
|
+
}), value = _f.value, canAddCols = _f.canAddCols, //returns true if no config.colHeaderData is defined. else false
|
|
86
|
+
canToggleColHeaderStyle = _f.canToggleColHeaderStyle // returns true if no config.colHeaderData is defined. else false
|
|
87
|
+
;
|
|
88
|
+
console.log({ value: value });
|
|
89
|
+
var _g = (0, useResizeTableColumns_1.useResizeTableColumns)({
|
|
90
|
+
setColWidthConfig: function (setterFn) {
|
|
91
|
+
var newColWidthConfig = setterFn(value.colWidthConfig);
|
|
92
|
+
onChange(id, __assign(__assign({}, value), { colWidthConfig: newColWidthConfig }));
|
|
93
|
+
},
|
|
94
|
+
colWidthConfig: value.colWidthConfig,
|
|
95
|
+
theme: theme,
|
|
96
|
+
}), resetColResizeState = _g.resetColResizeState, hideShowDragZoneIndicator = _g.hideShowDragZoneIndicator, initColResizeState = _g.initColResizeState, resetDragZoneIndicator = _g.resetDragZoneIndicator, handleResizeColumn = _g.handleResizeColumn, colResizeState = _g.colResizeState, dragZoneWidth = _g.dragZoneWidth;
|
|
97
|
+
(0, react_1.useEffect)(function () {
|
|
98
|
+
window.addEventListener("mouseup", resetColResizeState);
|
|
99
|
+
window.addEventListener("mousemove", handleResizeColumn);
|
|
100
|
+
return function () {
|
|
101
|
+
window.removeEventListener("mousemove", handleResizeColumn);
|
|
102
|
+
window.removeEventListener("mouseup", resetColResizeState);
|
|
103
|
+
};
|
|
104
|
+
}, [colResizeState]);
|
|
105
|
+
var CellContentBlocks = {
|
|
106
|
+
RichTextEditor: RichTextEditor,
|
|
107
|
+
// KPDropdown,
|
|
108
|
+
// TextInput,
|
|
109
|
+
// RadioList,
|
|
110
|
+
// SANS_3,
|
|
111
|
+
};
|
|
112
|
+
var CellContentBlockDefaultProps = {
|
|
113
|
+
RichTextEditor: {
|
|
114
|
+
variant: "simple",
|
|
115
|
+
typo: "SANS_3",
|
|
116
|
+
placeholder: " ",
|
|
117
|
+
},
|
|
118
|
+
// KPDropdown: {
|
|
119
|
+
// size: 'small',
|
|
120
|
+
// },
|
|
121
|
+
};
|
|
122
|
+
var CellValueGetters = {
|
|
123
|
+
RichTextEditor: function (v) { return (convertToRichText ? convertToRichText(v) : v); },
|
|
124
|
+
}; //prob dont need this..
|
|
125
|
+
var handleCellInputChange = function (_a) {
|
|
126
|
+
var cellIdx = _a.cellIdx, rowIdx = _a.rowIdx, v = _a.v;
|
|
127
|
+
var valData = value.data;
|
|
128
|
+
var colWidthConfig = value.colWidthConfig;
|
|
129
|
+
var newData = __spreadArray([], valData, true);
|
|
130
|
+
newData[rowIdx].cellData[cellIdx].value = v;
|
|
131
|
+
onChange && onChange(id, { data: newData, colWidthConfig: colWidthConfig });
|
|
132
|
+
};
|
|
133
|
+
var genRow = function (_a) {
|
|
134
|
+
var row = _a.row, rowIdx = _a.rowIdx;
|
|
135
|
+
var StyledWrapper = row.isColHeader
|
|
136
|
+
? styled_1.StyledSimpleTableHeader
|
|
137
|
+
: styled_1.StyledSimpleTableRow;
|
|
138
|
+
return (react_1.default.createElement(StyledWrapper
|
|
139
|
+
// onClick={() => row.link && history.push(row.link)}
|
|
140
|
+
, {
|
|
141
|
+
// onClick={() => row.link && history.push(row.link)}
|
|
142
|
+
style: { display: "flex" }, readOnly: readOnly, rowIdx: rowIdx, key: "row_" + rowIdx }, row.cellData.map(function (cell, cellIdx) {
|
|
143
|
+
var CellComp = RichTextEditor //cuz in oolib, richtexteditor will not be there for now
|
|
144
|
+
? CellContentBlocks["RichTextEditor"]
|
|
145
|
+
: function () { return react_1.default.createElement("div", null, "RTE Doesnt Exist"); };
|
|
146
|
+
var cellProps = __assign({}, CellContentBlockDefaultProps["RichTextEditor"]);
|
|
147
|
+
var cellValue = CellValueGetters["RichTextEditor"](cell.value);
|
|
148
|
+
var cellWidth = value.colWidthConfig["col_".concat(cellIdx)];
|
|
149
|
+
//(100% - totalExplicitWidths)/(totalColumns - noOfColsWithExplicitWidths)
|
|
150
|
+
// let cellProps = {
|
|
151
|
+
// ...CellContentBlockDefaultProps[cell.comp],
|
|
152
|
+
// ...(cell.props ? cell.props : {}),
|
|
153
|
+
// }
|
|
154
|
+
return (react_1.default.createElement(styled_1.StyledSimpleTableCell, { key: cell.id, id: "kp_table__cell__".concat(cell.id), style: {
|
|
155
|
+
color: greyColor100,
|
|
156
|
+
width: "".concat(cellWidth),
|
|
157
|
+
minHeight: "4rem",
|
|
158
|
+
borderRight: (colResizeState === null || colResizeState === void 0 ? void 0 : colResizeState.colId) === "col_".concat(cellIdx) &&
|
|
159
|
+
"2px solid ".concat((0, utilsOolib_1.getPrimaryColor100)(theme === null || theme === void 0 ? void 0 : theme.colors)),
|
|
160
|
+
}, onMouseDown: function (e) {
|
|
161
|
+
initColResizeState(e, { colId: "col_".concat(cellIdx) });
|
|
162
|
+
}, onMouseOut: resetDragZoneIndicator, onMouseMove: hideShowDragZoneIndicator },
|
|
163
|
+
react_1.default.createElement(CellComp, __assign({}, cellProps, { id: "kp_table_cell__".concat(cell.id, "__rich_input") /*dont mess with this id nomenclature. it needs to stay this way. check out the handleCellInputChange fn to understand */, value: cellValue, readOnly: readOnly || cell.readOnly, onChange: function (k, v) {
|
|
164
|
+
return handleCellInputChange({ v: v, rowIdx: rowIdx, cellIdx: cellIdx });
|
|
165
|
+
} }))));
|
|
166
|
+
})));
|
|
167
|
+
};
|
|
168
|
+
return (react_1.default.createElement("div", null,
|
|
169
|
+
react_1.default.createElement(BlockLabel_1.BlockLabel, __assign({}, (0, getBlockLabelProps_1.getBlockLabelProps)(props))),
|
|
170
|
+
react_1.default.createElement("div", { style: {
|
|
171
|
+
display: "flex",
|
|
172
|
+
alignItems: "stretch" /**without stretch AddColButton will be wonky */,
|
|
173
|
+
} },
|
|
174
|
+
react_1.default.createElement("div", null,
|
|
175
|
+
react_1.default.createElement(styled_1.StyledSimpleTable, null, value.data.map(function (row, rowIdx) { return genRow({ row: row, rowIdx: rowIdx }); })),
|
|
176
|
+
!readOnly && canAddRows && (react_1.default.createElement(AddRowColButtons_1.AddRowButton, { onClick: function () { return (0, functions_1.handleAddRow)(value, props); } }))),
|
|
177
|
+
!readOnly && canAddCols && (react_1.default.createElement(AddRowColButtons_1.AddColButton, { onClick: function () { return (0, functions_1.handleAddCol)(value, props); } })))));
|
|
178
|
+
}
|
|
179
|
+
exports.SimpleTable = SimpleTable;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export const StyledSimpleTable: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
2
|
+
export const StyledSimpleTableRow: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
|
+
export const StyledSimpleTableCell: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
|
+
export const StyledSimpleTableHeader: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(o, k2, desc);
|
|
13
|
+
}) : (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
o[k2] = m[k];
|
|
16
|
+
}));
|
|
17
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
+
}) : function(o, v) {
|
|
20
|
+
o["default"] = v;
|
|
21
|
+
});
|
|
22
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
23
|
+
if (mod && mod.__esModule) return mod;
|
|
24
|
+
var result = {};
|
|
25
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
26
|
+
__setModuleDefault(result, mod);
|
|
27
|
+
return result;
|
|
28
|
+
};
|
|
29
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
+
exports.StyledSimpleTableHeader = exports.StyledSimpleTableCell = exports.StyledSimpleTableRow = exports.StyledSimpleTable = void 0;
|
|
31
|
+
var themes_1 = require("../../themes");
|
|
32
|
+
var transitions_1 = require("../../themes/mixins/transitions");
|
|
33
|
+
var styled_components_1 = __importStar(require("styled-components"));
|
|
34
|
+
var utilsOolib_1 = require("../../utilsOolib");
|
|
35
|
+
exports.StyledSimpleTable = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n border-top: 1px solid ", ";\n border-bottom: 1px solid ", ";\n border-left: 1px solid ", ";\n"], ["\n border-top: 1px solid ", ";\n border-bottom: 1px solid ", ";\n border-left: 1px solid ", ";\n"])), themes_1.colors.greyColor10, themes_1.colors.greyColor10, themes_1.colors.greyColor10);
|
|
36
|
+
exports.StyledSimpleTableRow = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n display: flex;\n ", ";\n background-color: ", ";\n ", "\n"], ["\n display: flex;\n ", ";\n background-color: ", ";\n ", "\n"])), (0, transitions_1.transition)("background-color"), function (_a) {
|
|
37
|
+
var rowIdx = _a.rowIdx;
|
|
38
|
+
return rowIdx % 2 === 1 ? themes_1.colors.greyColor3 : themes_1.colors.white;
|
|
39
|
+
}, function (_a) {
|
|
40
|
+
var readOnly = _a.readOnly, theme = _a.theme;
|
|
41
|
+
return !readOnly && (0, styled_components_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n :hover{\n background-color: ", ";\n }\n \n "], ["\n :hover{\n background-color: ", ";\n }\n \n "])), (0, utilsOolib_1.getPrimaryColor10)(theme === null || theme === void 0 ? void 0 : theme.colors));
|
|
42
|
+
});
|
|
43
|
+
exports.StyledSimpleTableCell = styled_components_1.default.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n /* max-width: 300px; */\n padding: 0.8rem 1rem;\n /* margin: 0 1rem; */\n border-right: 1px solid ", ";\n"], ["\n /* max-width: 300px; */\n padding: 0.8rem 1rem;\n /* margin: 0 1rem; */\n border-right: 1px solid ", ";\n"])), themes_1.colors.greyColor10);
|
|
44
|
+
exports.StyledSimpleTableHeader = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n .public-DraftEditor-content {\n font-weight: 600;\n }\n background-color: ", ";\n border-bottom: 2px solid ", ";\n"], ["\n .public-DraftEditor-content {\n font-weight: 600;\n }\n background-color: ", ";\n border-bottom: 2px solid ", ";\n"])), themes_1.colors.greyColor, themes_1.colors.greyColor10);
|
|
45
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export function useResizeTableColumns({ setColWidthConfig, colWidthConfig, theme, builderProps }: {
|
|
2
|
+
setColWidthConfig: any;
|
|
3
|
+
colWidthConfig: any;
|
|
4
|
+
theme: any;
|
|
5
|
+
builderProps: any;
|
|
6
|
+
}): {
|
|
7
|
+
resetColResizeState: (e: any) => void;
|
|
8
|
+
hideShowDragZoneIndicator: (e: any) => void;
|
|
9
|
+
initColResizeState: (e: any, d: any) => void;
|
|
10
|
+
resetDragZoneIndicator: (e: any) => void;
|
|
11
|
+
handleResizeColumn: (e: any) => void;
|
|
12
|
+
colResizeState: any;
|
|
13
|
+
dragZoneWidth: number;
|
|
14
|
+
};
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.useResizeTableColumns = void 0;
|
|
15
|
+
var react_1 = require("react");
|
|
16
|
+
var themes_1 = require("../../themes");
|
|
17
|
+
var utilsOolib_1 = require("../../utilsOolib");
|
|
18
|
+
var useResizeTableColumns = function (_a) {
|
|
19
|
+
var setColWidthConfig = _a.setColWidthConfig, colWidthConfig = _a.colWidthConfig, theme = _a.theme, builderProps = _a.builderProps;
|
|
20
|
+
var _b = (0, react_1.useState)(undefined), colResizeState = _b[0], setColResizeState = _b[1];
|
|
21
|
+
var dragZoneWidth = 5;
|
|
22
|
+
var handleResizeColumn = function (e) {
|
|
23
|
+
e.preventDefault();
|
|
24
|
+
e.stopPropagation();
|
|
25
|
+
if (colResizeState) {
|
|
26
|
+
setColWidthConfig(function (prev) {
|
|
27
|
+
var _a;
|
|
28
|
+
return (__assign(__assign({}, prev), (_a = {}, _a[colResizeState.colId] = (colResizeState.initWidth + (e.clientX - colResizeState.mousePos)) + 'px', _a)));
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
var resetDragZoneIndicator = function (e) {
|
|
33
|
+
if (colResizeState || e.currentTarget.id !== e.target.id)
|
|
34
|
+
return;
|
|
35
|
+
e.currentTarget.style.borderRight = "1px solid ".concat(themes_1.colors.greyColor10);
|
|
36
|
+
e.currentTarget.style.cursor = 'pointer';
|
|
37
|
+
};
|
|
38
|
+
var isInDragZone = function (e) {
|
|
39
|
+
var mouseX = e.clientX;
|
|
40
|
+
var colRightEdge = e.currentTarget.getBoundingClientRect().right;
|
|
41
|
+
return mouseX > colRightEdge - dragZoneWidth;
|
|
42
|
+
};
|
|
43
|
+
var initColResizeState = function (e, d) {
|
|
44
|
+
e.preventDefault();
|
|
45
|
+
e.stopPropagation();
|
|
46
|
+
if (isInDragZone(e)) {
|
|
47
|
+
setColResizeState({
|
|
48
|
+
mousePos: e.clientX,
|
|
49
|
+
initWidth: parseInt(colWidthConfig[d.colId].replace('px', '')),
|
|
50
|
+
colId: d.colId
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
var hideShowDragZoneIndicator = function (e) {
|
|
55
|
+
e.preventDefault();
|
|
56
|
+
/** currentTarget is the element that this event is bound to */
|
|
57
|
+
if (e.currentTarget.id !== e.target.id)
|
|
58
|
+
return; //very important, else the indicator shows in some cases, when its not supposed to. we don't completely understand why...
|
|
59
|
+
if (!colResizeState) {
|
|
60
|
+
if (isInDragZone(e)) {
|
|
61
|
+
e.currentTarget.style.borderRight = "1px solid ".concat((0, utilsOolib_1.getPrimaryColor100)(theme === null || theme === void 0 ? void 0 : theme.colors));
|
|
62
|
+
e.currentTarget.style.cursor = 'col-resize';
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
e.currentTarget.style.borderRight = "1px solid ".concat(themes_1.colors.greyColor10);
|
|
66
|
+
e.currentTarget.style.cursor = 'pointer';
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
var resetColResizeState = function (e) {
|
|
71
|
+
setColResizeState(undefined);
|
|
72
|
+
if (builderProps === null || builderProps === void 0 ? void 0 : builderProps.updateColWidthsInTableConfig) {
|
|
73
|
+
builderProps.updateColWidthsInTableConfig(colWidthConfig);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
return ({
|
|
77
|
+
resetColResizeState: resetColResizeState,
|
|
78
|
+
hideShowDragZoneIndicator: hideShowDragZoneIndicator,
|
|
79
|
+
initColResizeState: initColResizeState,
|
|
80
|
+
resetDragZoneIndicator: resetDragZoneIndicator,
|
|
81
|
+
handleResizeColumn: handleResizeColumn,
|
|
82
|
+
colResizeState: colResizeState,
|
|
83
|
+
dragZoneWidth: dragZoneWidth
|
|
84
|
+
});
|
|
85
|
+
};
|
|
86
|
+
exports.useResizeTableColumns = useResizeTableColumns;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export function prepInitValueFromConfigIfNoValue({ _value, config, defaultColWidth, convertToRichText }: {
|
|
2
|
+
_value: any;
|
|
3
|
+
config: any;
|
|
4
|
+
defaultColWidth: any;
|
|
5
|
+
convertToRichText: any;
|
|
6
|
+
}): {
|
|
7
|
+
value: any;
|
|
8
|
+
canAddCols: boolean;
|
|
9
|
+
canToggleColHeaderStyle: boolean;
|
|
10
|
+
};
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
14
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
15
|
+
if (ar || !(i in from)) {
|
|
16
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
17
|
+
ar[i] = from[i];
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
21
|
+
};
|
|
22
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
+
exports.prepInitValueFromConfigIfNoValue = void 0;
|
|
24
|
+
var makeArrayFromLength_1 = require("../../../utils/makeArrayFromLength");
|
|
25
|
+
var toArray_1 = require("../../../utils/toArray");
|
|
26
|
+
var functions_1 = require("../functions");
|
|
27
|
+
var prepInitValueFromConfigIfNoValue = function (_a) {
|
|
28
|
+
var _b;
|
|
29
|
+
var _value = _a._value, config = _a.config, defaultColWidth = _a.defaultColWidth, convertToRichText = _a.convertToRichText;
|
|
30
|
+
//if colHeaderData is defined then that decides the noOfCols.
|
|
31
|
+
var noOfCols = ((_b = config.colHeaderData) === null || _b === void 0 ? void 0 : _b.length) || config.noOfCols;
|
|
32
|
+
var value = !_value
|
|
33
|
+
? {
|
|
34
|
+
data: __spreadArray(__spreadArray([], (config.colHeaderData ? [convertColHeaderConfigToRowData({ colHeaderData: config.colHeaderData, convertToRichText: convertToRichText })] : []), true), insertRowAndCellIds({
|
|
35
|
+
noOfRows: config.noOfRows,
|
|
36
|
+
noOfCols: noOfCols
|
|
37
|
+
}), true),
|
|
38
|
+
colWidthConfig: getInitColWidthConfigs({ noOfCols: noOfCols, defaultColWidth: defaultColWidth }),
|
|
39
|
+
}
|
|
40
|
+
: !_value.data
|
|
41
|
+
? {
|
|
42
|
+
data: _value,
|
|
43
|
+
colWidthConfig: getInitColWidthConfigs({ noOfCols: _value[0].cellData.length, defaultColWidth: defaultColWidth }),
|
|
44
|
+
} //backwars compat
|
|
45
|
+
: _value;
|
|
46
|
+
return ({
|
|
47
|
+
value: value,
|
|
48
|
+
canAddCols: !!!config.colHeaderData,
|
|
49
|
+
canToggleColHeaderStyle: !!!config.colHeaderData // meaning its true if no config.colHeaderData is defined. else false
|
|
50
|
+
});
|
|
51
|
+
};
|
|
52
|
+
exports.prepInitValueFromConfigIfNoValue = prepInitValueFromConfigIfNoValue;
|
|
53
|
+
var convertColHeaderConfigToRowData = function (_a) {
|
|
54
|
+
var colHeaderData = _a.colHeaderData, convertToRichText = _a.convertToRichText;
|
|
55
|
+
return {
|
|
56
|
+
id: "colHeader",
|
|
57
|
+
isColHeader: true,
|
|
58
|
+
cellData: colHeaderData.map(function (d, i) { return ({
|
|
59
|
+
value: convertToRichText ? convertToRichText(d) : d,
|
|
60
|
+
readOnly: true,
|
|
61
|
+
id: "colHeaderCell_".concat(i),
|
|
62
|
+
}); }),
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
var getInitColWidthConfigs = function (_a) {
|
|
66
|
+
var noOfCols = _a.noOfCols, defaultColWidth = _a.defaultColWidth;
|
|
67
|
+
return (0, makeArrayFromLength_1.makeArrayFromLength)(noOfCols)
|
|
68
|
+
.map(function (d, i) { return ({
|
|
69
|
+
colId: "col_".concat(i),
|
|
70
|
+
width: defaultColWidth + "px",
|
|
71
|
+
}); })
|
|
72
|
+
.reduce(function (a, b) {
|
|
73
|
+
var _a;
|
|
74
|
+
return (__assign(__assign({}, a), (_a = {}, _a[b.colId] = b.width, _a)));
|
|
75
|
+
}, {});
|
|
76
|
+
};
|
|
77
|
+
var insertRowAndCellIds = function (_a) {
|
|
78
|
+
var noOfRows = _a.noOfRows, noOfCols = _a.noOfCols;
|
|
79
|
+
return (0, makeArrayFromLength_1.makeArrayFromLength)(noOfRows).map(function () { return ({
|
|
80
|
+
id: "row_".concat((0, functions_1.genHash)(8)),
|
|
81
|
+
cellData: (0, makeArrayFromLength_1.makeArrayFromLength)(noOfCols).map(function () { return ({
|
|
82
|
+
id: "cell_".concat((0, functions_1.genHash)(8)),
|
|
83
|
+
}); }),
|
|
84
|
+
}); });
|
|
85
|
+
};
|
package/dist/index.d.ts
CHANGED
|
@@ -52,6 +52,7 @@ export { default as MetaBlock } from "./components/MetaBlock";
|
|
|
52
52
|
export { ImageInput } from "./components/ImageInput";
|
|
53
53
|
export { ProfileImageInput } from "./components/ImageInput/derivedComps/ProfileImageInput";
|
|
54
54
|
export { default as VideoInput } from "./components/VideoInput";
|
|
55
|
+
export { SimpleTable } from "./components/SimpleTable";
|
|
55
56
|
export { LoaderCircle, ProgressBar, LoaderCircle as Loader, LoaderOverlay } from "./components/LoadersAndProgress";
|
|
56
57
|
export { BannerAlert, BannerInfo } from "./components/Banners";
|
|
57
58
|
export { BannerContext, useBannerContext, BannerProvider } from "./components/Banners/bannerContext";
|
package/dist/index.js
CHANGED
|
@@ -17,7 +17,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
17
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.BannerProvider = exports.useBannerContext = exports.BannerContext = exports.BannerInfo = exports.BannerAlert = exports.VideoInput = exports.ProfileImageInput = exports.ImageInput = exports.MetaBlock = exports.HintsProvider = exports.genTagComp = exports.generateOptions = exports.OptionsSingle = exports.DropdownMulti = exports.DropdownSingle = exports.parseCardConfig = exports.ListProfile = exports.CardProfile = exports.CardEmbed = exports.ListContent = exports.CardContent = exports.TextLoader = exports.BarChart = exports.DateRangePicker = exports.DatePicker = exports.PageScrollIndicator = exports.HomeCover = exports.EmptyStates = exports.ModalSmall = exports.ModalLarge = exports.ModalConfirm = exports.SkeletonLoader = exports.Divider = exports.PercentCompletedPie = exports.Accordion = exports.ActionMenu = exports.Tooltip = exports.OKELink = exports.UserRoleBadge = exports.Section = exports.LoaderOverlay = exports.Loader = exports.ProgressBar = exports.LoaderCircle = exports.icons = exports.colors = exports.GlobalStyles = void 0;
|
|
20
|
+
exports.SimpleTable = exports.BannerProvider = exports.useBannerContext = exports.BannerContext = exports.BannerInfo = exports.BannerAlert = exports.VideoInput = exports.ProfileImageInput = exports.ImageInput = exports.MetaBlock = exports.HintsProvider = exports.genTagComp = exports.generateOptions = exports.OptionsSingle = exports.DropdownMulti = exports.DropdownSingle = exports.parseCardConfig = exports.ListProfile = exports.CardProfile = exports.CardEmbed = exports.ListContent = exports.CardContent = exports.TextLoader = exports.BarChart = exports.DateRangePicker = exports.DatePicker = exports.PageScrollIndicator = exports.HomeCover = exports.EmptyStates = exports.ModalSmall = exports.ModalLarge = exports.ModalConfirm = exports.SkeletonLoader = exports.Divider = exports.PercentCompletedPie = exports.Accordion = exports.ActionMenu = exports.Tooltip = exports.OKELink = exports.UserRoleBadge = exports.Section = exports.LoaderOverlay = exports.Loader = exports.ProgressBar = exports.LoaderCircle = exports.icons = exports.colors = exports.GlobalStyles = void 0;
|
|
21
21
|
//css and styling related ( styled-components )
|
|
22
22
|
var globalStyles_1 = require("./globalStyles");
|
|
23
23
|
Object.defineProperty(exports, "GlobalStyles", { enumerable: true, get: function () { return globalStyles_1.GlobalStyles; } });
|
|
@@ -138,3 +138,5 @@ var bannerContext_1 = require("./components/Banners/bannerContext");
|
|
|
138
138
|
Object.defineProperty(exports, "BannerContext", { enumerable: true, get: function () { return bannerContext_1.BannerContext; } });
|
|
139
139
|
Object.defineProperty(exports, "useBannerContext", { enumerable: true, get: function () { return bannerContext_1.useBannerContext; } });
|
|
140
140
|
Object.defineProperty(exports, "BannerProvider", { enumerable: true, get: function () { return bannerContext_1.BannerProvider; } });
|
|
141
|
+
var SimpleTable_1 = require("./components/SimpleTable");
|
|
142
|
+
Object.defineProperty(exports, "SimpleTable", { enumerable: true, get: function () { return SimpleTable_1.SimpleTable; } });
|