phx-react 1.3.1796 → 1.3.1798
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/cjs/components/TableReport/TableReport.d.ts +2 -2
- package/dist/cjs/components/TableReport/TableReport.js +51 -21
- package/dist/cjs/components/TableReport/TableReport.js.map +1 -1
- package/dist/cjs/components/TableReport/component/ExpandedRows.d.ts +23 -0
- package/dist/cjs/components/TableReport/component/ExpandedRows.js +163 -0
- package/dist/cjs/components/TableReport/component/ExpandedRows.js.map +1 -0
- package/dist/cjs/components/TableReport/component/PaginaitonSelected.js +4 -1
- package/dist/cjs/components/TableReport/component/PaginaitonSelected.js.map +1 -1
- package/dist/cjs/components/TableReport/component/Pagination.js +4 -1
- package/dist/cjs/components/TableReport/component/Pagination.js.map +1 -1
- package/dist/cjs/components/TableReport/component/Row.d.ts +6 -1
- package/dist/cjs/components/TableReport/component/Row.js +10 -2
- package/dist/cjs/components/TableReport/component/Row.js.map +1 -1
- package/dist/cjs/components/TableReport/component/Search.js +7 -3
- package/dist/cjs/components/TableReport/component/Search.js.map +1 -1
- package/dist/cjs/components/TableReport/component/TableBodyRows.d.ts +33 -0
- package/dist/cjs/components/TableReport/component/TableBodyRows.js +68 -0
- package/dist/cjs/components/TableReport/component/TableBodyRows.js.map +1 -0
- package/dist/cjs/components/TableReport/component/TruncatedTooltip.d.ts +16 -0
- package/dist/cjs/components/TableReport/component/TruncatedTooltip.js +46 -0
- package/dist/cjs/components/TableReport/component/TruncatedTooltip.js.map +1 -0
- package/dist/cjs/components/TableReport/types.d.ts +6 -4
- package/dist/cjs/components/TableReport/utils.d.ts +4 -4
- package/dist/cjs/components/TableReport/utils.js +11 -9
- package/dist/cjs/components/TableReport/utils.js.map +1 -1
- package/dist/cjs/components/TextEditorV2/plugins/ToolbarPlugin/components/heading.js +48 -1
- package/dist/cjs/components/TextEditorV2/plugins/ToolbarPlugin/components/heading.js.map +1 -1
- package/dist/esm/components/TableReport/TableReport.d.ts +2 -2
- package/dist/esm/components/TableReport/TableReport.js +52 -22
- package/dist/esm/components/TableReport/TableReport.js.map +1 -1
- package/dist/esm/components/TableReport/component/ExpandedRows.d.ts +23 -0
- package/dist/esm/components/TableReport/component/ExpandedRows.js +160 -0
- package/dist/esm/components/TableReport/component/ExpandedRows.js.map +1 -0
- package/dist/esm/components/TableReport/component/PaginaitonSelected.js +4 -1
- package/dist/esm/components/TableReport/component/PaginaitonSelected.js.map +1 -1
- package/dist/esm/components/TableReport/component/Pagination.js +4 -1
- package/dist/esm/components/TableReport/component/Pagination.js.map +1 -1
- package/dist/esm/components/TableReport/component/Row.d.ts +6 -1
- package/dist/esm/components/TableReport/component/Row.js +10 -2
- package/dist/esm/components/TableReport/component/Row.js.map +1 -1
- package/dist/esm/components/TableReport/component/Search.js +7 -3
- package/dist/esm/components/TableReport/component/Search.js.map +1 -1
- package/dist/esm/components/TableReport/component/TableBodyRows.d.ts +33 -0
- package/dist/esm/components/TableReport/component/TableBodyRows.js +65 -0
- package/dist/esm/components/TableReport/component/TableBodyRows.js.map +1 -0
- package/dist/esm/components/TableReport/component/TruncatedTooltip.d.ts +16 -0
- package/dist/esm/components/TableReport/component/TruncatedTooltip.js +43 -0
- package/dist/esm/components/TableReport/component/TruncatedTooltip.js.map +1 -0
- package/dist/esm/components/TableReport/types.d.ts +6 -4
- package/dist/esm/components/TableReport/utils.d.ts +4 -4
- package/dist/esm/components/TableReport/utils.js +11 -9
- package/dist/esm/components/TableReport/utils.js.map +1 -1
- package/dist/esm/components/TextEditorV2/plugins/ToolbarPlugin/components/heading.js +48 -1
- package/dist/esm/components/TextEditorV2/plugins/ToolbarPlugin/components/heading.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TruncatedTooltip.js","sourceRoot":"","sources":["../../../../../src/components/TableReport/component/TruncatedTooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAa,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACrE,OAAO,UAAU,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAQxC;;;;;;;GAOG;AACH,SAAS,gBAAgB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAyB;IAC/E,MAAM,UAAU,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAA;IAChD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAErD,MAAM,cAAc,GAClB,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,CAAC,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAErG;;;;OAIG;IACH,MAAM,oBAAoB,GAAG,GAAG,EAAE;QAChC,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAA;QAClC,IAAI,CAAC,OAAO;YAAE,OAAM;QACpB,cAAc,CAAC,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IAC3D,CAAC,CAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACb,oBAAoB,EAAE,CAAA;QACtB,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAA;QAClC,IAAI,CAAC,OAAO,IAAI,OAAO,cAAc,KAAK,WAAW;YAAE,OAAM;QAE7D,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,oBAAoB,CAAC,CAAA;QAC/D,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAE/B,OAAO,GAAG,EAAE,CAAC,cAAc,CAAC,UAAU,EAAE,CAAA;IAC1C,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,MAAM,WAAW,GAAG,CAClB,8BAAM,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC,6CAA6C,EAAE,SAAS,CAAC,IACnG,QAAQ,CACJ,CACR,CAAA;IAED,IAAI,CAAC,cAAc,IAAI,CAAC,WAAW,EAAE,CAAC;QACpC,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,OAAO,CACL,oBAAC,UAAU,IAAC,SAAS,EAAC,oCAAoC,EAAC,OAAO,EAAE,cAAc,IAC/E,WAAW,CACD,CACd,CAAA;AACH,CAAC;AAED,eAAe,gBAAgB,CAAA"}
|
|
@@ -10,10 +10,16 @@ export interface THeader {
|
|
|
10
10
|
children?: Array<THeader>;
|
|
11
11
|
}
|
|
12
12
|
export type TTableData = Record<string, any>;
|
|
13
|
+
export interface RowChildrenData {
|
|
14
|
+
headers: Array<string>;
|
|
15
|
+
body: Array<string>;
|
|
16
|
+
data: Array<Record<string, any>>;
|
|
17
|
+
}
|
|
13
18
|
export interface TBodyComponent {
|
|
14
19
|
[key: string]: (value: any, itemBody: any) => {
|
|
15
20
|
value: any;
|
|
16
21
|
row?: number;
|
|
22
|
+
children?: RowChildrenData;
|
|
17
23
|
};
|
|
18
24
|
}
|
|
19
25
|
export interface TMergeConfig {
|
|
@@ -48,10 +54,6 @@ export interface TSelectedAllPeople {
|
|
|
48
54
|
hideSelectedAction?: boolean;
|
|
49
55
|
}
|
|
50
56
|
export interface NavigationUrlApply {
|
|
51
|
-
router: AppRouterInstance;
|
|
52
|
-
searchParams: ReadonlyURLSearchParams;
|
|
53
|
-
}
|
|
54
|
-
export interface NavigationUrlApplyTableReport {
|
|
55
57
|
router?: AppRouterInstance;
|
|
56
58
|
searchParams: ReadonlyURLSearchParams;
|
|
57
59
|
}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import { ReadonlyURLSearchParams } from 'next/navigation';
|
|
2
2
|
import { TBodyComponent, THeader, TMergeConfig, TTableData } from './types';
|
|
3
|
-
import { AppRouterInstance } from 'next/dist/shared/lib/app-router-context.shared-runtime';
|
|
4
3
|
export declare const getMaxDepth: (headers: Array<THeader>) => number;
|
|
5
4
|
export declare const buildHeaderRows: (headers: Array<THeader>, level?: number, rows?: any[], maxDepth?: number, startIndex?: number) => any[];
|
|
6
5
|
export declare const countLeaf: (header: THeader) => number;
|
|
7
6
|
export declare const renderCell: (data: TTableData, columnKey: string, thComponent?: TBodyComponent) => {
|
|
8
7
|
value: any;
|
|
9
8
|
row: number;
|
|
9
|
+
children: import("./types").RowChildrenData | null;
|
|
10
10
|
};
|
|
11
11
|
export declare const findColumnKeyMerge: (mergeConfig: TMergeConfig, columnIndex: number) => string;
|
|
12
12
|
export declare function buildRowSpan(tableData: Array<TTableData>, mergeConfig: TMergeConfig): TTableData[];
|
|
13
13
|
export declare const applyUrlQuery: {
|
|
14
14
|
get: (searchParams: ReadonlyURLSearchParams, key: string) => string | null;
|
|
15
|
-
set: (
|
|
15
|
+
set: (routerPush: (href: string) => void, searchParams: ReadonlyURLSearchParams, data: Array<{
|
|
16
16
|
key: string;
|
|
17
17
|
value: string;
|
|
18
18
|
}>) => void;
|
|
19
|
-
delete: (
|
|
20
|
-
multipleMethod: (
|
|
19
|
+
delete: (routerPush: (href: string) => void, searchParams: ReadonlyURLSearchParams, key: Array<string>) => void;
|
|
20
|
+
multipleMethod: (routerPush: (href: string) => void, searchParams: ReadonlyURLSearchParams, data: Array<{
|
|
21
21
|
key: string;
|
|
22
22
|
value: string;
|
|
23
23
|
method: "get" | "set" | "delete";
|
|
@@ -36,12 +36,14 @@ export const countLeaf = (header) => {
|
|
|
36
36
|
export const renderCell = (data, columnKey, thComponent) => {
|
|
37
37
|
const value = data[columnKey];
|
|
38
38
|
if (thComponent && (thComponent === null || thComponent === void 0 ? void 0 : thComponent[columnKey])) {
|
|
39
|
+
const componentCell = thComponent[columnKey](value, data);
|
|
39
40
|
return {
|
|
40
|
-
value:
|
|
41
|
-
row:
|
|
41
|
+
value: componentCell.value,
|
|
42
|
+
row: componentCell.row || 1,
|
|
43
|
+
children: (componentCell === null || componentCell === void 0 ? void 0 : componentCell.children) || null,
|
|
42
44
|
};
|
|
43
45
|
}
|
|
44
|
-
return { value: value !== null && value !== void 0 ? value : '', row: 1 };
|
|
46
|
+
return { value: value !== null && value !== void 0 ? value : '', row: 1, children: null };
|
|
45
47
|
};
|
|
46
48
|
export const findColumnKeyMerge = (mergeConfig, columnIndex) => {
|
|
47
49
|
const { columnPosition } = mergeConfig;
|
|
@@ -72,22 +74,22 @@ export const applyUrlQuery = {
|
|
|
72
74
|
const params = new URLSearchParams(searchParams.toString());
|
|
73
75
|
return params.get(key);
|
|
74
76
|
},
|
|
75
|
-
set: (
|
|
77
|
+
set: (routerPush, searchParams, data) => {
|
|
76
78
|
const params = new URLSearchParams(searchParams.toString());
|
|
77
79
|
for (const item of data) {
|
|
78
80
|
const { key, value } = item;
|
|
79
81
|
params.set(key, value);
|
|
80
82
|
}
|
|
81
|
-
|
|
83
|
+
routerPush(`?${params.toString()}`);
|
|
82
84
|
},
|
|
83
|
-
delete: (
|
|
85
|
+
delete: (routerPush, searchParams, key) => {
|
|
84
86
|
const params = new URLSearchParams(searchParams.toString());
|
|
85
87
|
for (const item of key) {
|
|
86
88
|
params.delete(item);
|
|
87
89
|
}
|
|
88
|
-
|
|
90
|
+
routerPush(`?${params.toString()}`);
|
|
89
91
|
},
|
|
90
|
-
multipleMethod: (
|
|
92
|
+
multipleMethod: (routerPush, searchParams, data) => {
|
|
91
93
|
const params = new URLSearchParams(searchParams.toString());
|
|
92
94
|
for (const item of data) {
|
|
93
95
|
const { key, value, method } = item;
|
|
@@ -98,7 +100,7 @@ export const applyUrlQuery = {
|
|
|
98
100
|
params[method](key, value);
|
|
99
101
|
}
|
|
100
102
|
}
|
|
101
|
-
|
|
103
|
+
routerPush(`?${params.toString()}`);
|
|
102
104
|
},
|
|
103
105
|
};
|
|
104
106
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/components/TableReport/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/components/TableReport/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,11 @@ export const DEFAULT_HEADING_FONT_SIZES = {
|
|
|
12
12
|
h5: '18px',
|
|
13
13
|
h6: '16px',
|
|
14
14
|
};
|
|
15
|
+
/**
|
|
16
|
+
* Applies the heading font size to every text node inside an element.
|
|
17
|
+
* @param node Element whose text descendants should receive the font size.
|
|
18
|
+
* @param defaultFontSize Font size to write into each text node style.
|
|
19
|
+
*/
|
|
15
20
|
function applyHeadingFontSize(node, defaultFontSize) {
|
|
16
21
|
for (const textNode of node.getAllTextNodes()) {
|
|
17
22
|
const styles = getStyleObjectFromCSS(textNode.getStyle());
|
|
@@ -21,12 +26,38 @@ function applyHeadingFontSize(node, defaultFontSize) {
|
|
|
21
26
|
}));
|
|
22
27
|
}
|
|
23
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* Finds the list item that owns a node.
|
|
31
|
+
* @param node Node inside or equal to a list item.
|
|
32
|
+
* @returns Matching list item, or null when the node is not in a list item.
|
|
33
|
+
*/
|
|
24
34
|
function getListItemNode(node) {
|
|
25
35
|
return $isListItemNode(node) ? node : $findMatchingParent(node, (parent) => $isListItemNode(parent));
|
|
26
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* Finds the heading that owns a node.
|
|
39
|
+
* @param node Node inside or equal to a heading.
|
|
40
|
+
* @returns Matching heading, or null when the node is not in a heading.
|
|
41
|
+
*/
|
|
27
42
|
function getHeadingNode(node) {
|
|
28
43
|
return $isHeadingNode(node) ? node : $findMatchingParent(node, (parent) => $isHeadingNode(parent));
|
|
29
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* Checks whether the current range is only part of one top-level block.
|
|
47
|
+
* @param selection Current range selection.
|
|
48
|
+
* @returns True when the selection should be formatted inline instead of changing the block type.
|
|
49
|
+
*/
|
|
50
|
+
function isPartialSelectionInsideSingleBlock(selection) {
|
|
51
|
+
if (selection.isCollapsed()) {
|
|
52
|
+
return false;
|
|
53
|
+
}
|
|
54
|
+
const anchorBlock = selection.anchor.getNode().getTopLevelElement();
|
|
55
|
+
const focusBlock = selection.focus.getNode().getTopLevelElement();
|
|
56
|
+
if (anchorBlock === null || focusBlock === null || !anchorBlock.is(focusBlock)) {
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
59
|
+
return selection.getTextContent().length < anchorBlock.getTextContent().length;
|
|
60
|
+
}
|
|
30
61
|
/**
|
|
31
62
|
* Gets the heading tag represented by the current selected list item font size.
|
|
32
63
|
* @param editor Active Lexical editor.
|
|
@@ -149,13 +180,23 @@ export default function HeaderDropdown({ editor, value }) {
|
|
|
149
180
|
value: 'quote',
|
|
150
181
|
},
|
|
151
182
|
];
|
|
183
|
+
/**
|
|
184
|
+
* Applies a paragraph, quote, or heading choice to the current editor selection.
|
|
185
|
+
* @param nextValue Selected dropdown value.
|
|
186
|
+
*/
|
|
152
187
|
const handleChangeFont = (nextValue) => {
|
|
153
188
|
if (nextValue === 'paragraph') {
|
|
154
189
|
editor.update(() => {
|
|
190
|
+
const selection = $getSelection();
|
|
191
|
+
if ($isRangeSelection(selection) && isPartialSelectionInsideSingleBlock(selection)) {
|
|
192
|
+
$patchStyleText(selection, {
|
|
193
|
+
'font-size': '14px',
|
|
194
|
+
});
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
155
197
|
if (applyListItemFontSize('14px')) {
|
|
156
198
|
return;
|
|
157
199
|
}
|
|
158
|
-
const selection = $getSelection();
|
|
159
200
|
$setBlocksType(selection, () => $createParagraphNode(), (prevNode) => applyHeadingFontSize(prevNode, '14px'));
|
|
160
201
|
const nextSelection = $getSelection();
|
|
161
202
|
if ($isRangeSelection(nextSelection)) {
|
|
@@ -175,6 +216,12 @@ export default function HeaderDropdown({ editor, value }) {
|
|
|
175
216
|
editor.update(() => {
|
|
176
217
|
const selection = $getSelection();
|
|
177
218
|
const headingTag = nextValue;
|
|
219
|
+
if ($isRangeSelection(selection) && isPartialSelectionInsideSingleBlock(selection)) {
|
|
220
|
+
$patchStyleText(selection, {
|
|
221
|
+
'font-size': DEFAULT_HEADING_FONT_SIZES[headingTag],
|
|
222
|
+
});
|
|
223
|
+
return;
|
|
224
|
+
}
|
|
178
225
|
if (applyListItemFontSize(DEFAULT_HEADING_FONT_SIZES[headingTag])) {
|
|
179
226
|
return;
|
|
180
227
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heading.js","sourceRoot":"","sources":["../../../../../../../src/components/TextEditorV2/plugins/ToolbarPlugin/components/heading.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAClH,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,cAAc,GAGf,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,eAAe,EAAqB,MAAM,eAAe,CAAA;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,iBAAiB,
|
|
1
|
+
{"version":3,"file":"heading.js","sourceRoot":"","sources":["../../../../../../../src/components/TextEditorV2/plugins/ToolbarPlugin/components/heading.tsx"],"names":[],"mappings":"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"}
|