@solidxai/core-ui 0.1.4-beta.0 → 0.1.4-beta.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/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.js +6 -5
- package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.tsx +21 -17
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.d.ts.map +1 -1
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js +15 -30
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js.map +1 -1
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx +46 -36
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts +40 -0
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js +315 -160
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +459 -249
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js +46 -95
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.tsx +57 -113
- package/dist/components/core/form/fields/relations/widgets/helpers/useRelationEntityHandler.d.ts +15 -5
- package/dist/components/core/form/fields/relations/widgets/helpers/useRelationEntityHandler.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/widgets/helpers/useRelationEntityHandler.js +203 -67
- package/dist/components/core/form/fields/relations/widgets/helpers/useRelationEntityHandler.js.map +1 -1
- package/dist/components/core/form/fields/relations/widgets/helpers/useRelationEntityHandler.ts +147 -67
- package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
- package/dist/components/core/kanban/SolidKanbanView.js +8 -7
- package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
- package/dist/components/core/kanban/SolidKanbanView.tsx +3 -2
- package/dist/components/core/list/SolidListView.d.ts +8 -5
- package/dist/components/core/list/SolidListView.d.ts.map +1 -1
- package/dist/components/core/list/SolidListView.js +70 -59
- package/dist/components/core/list/SolidListView.js.map +1 -1
- package/dist/components/core/list/SolidListView.tsx +51 -57
- package/dist/components/core/list/SolidListViewConfigure.d.ts +7 -0
- package/dist/components/core/list/SolidListViewConfigure.d.ts.map +1 -1
- package/dist/components/core/list/SolidListViewConfigure.js +6 -5
- package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
- package/dist/components/core/list/SolidListViewConfigure.tsx +21 -12
- package/dist/components/core/list/columns/SolidShortTextColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidShortTextColumn.js +1 -37
- package/dist/components/core/list/columns/SolidShortTextColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidShortTextColumn.tsx +0 -41
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js +9 -5
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx +14 -3
- package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
- package/dist/components/core/tree/SolidTreeView.js +23 -14
- package/dist/components/core/tree/SolidTreeView.js.map +1 -1
- package/dist/components/core/tree/SolidTreeView.tsx +50 -16
- package/dist/helpers/registry.js +3 -1
- package/dist/helpers/registry.js.map +1 -1
- package/dist/helpers/registry.ts +4 -1
- package/dist/resources/globals.css +14 -0
- package/dist/routes/pages/admin/core/ListPage.js +1 -1
- package/dist/routes/pages/admin/core/ListPage.js.map +1 -1
- package/dist/routes/pages/admin/core/ListPage.tsx +1 -1
- package/dist/routes/pages/admin/core/ModuleHomePage.d.ts.map +1 -1
- package/dist/routes/pages/admin/core/ModuleHomePage.js +4 -15
- package/dist/routes/pages/admin/core/ModuleHomePage.js.map +1 -1
- package/dist/routes/pages/admin/core/ModuleHomePage.tsx +4 -3
- package/dist/types/solid-core.d.ts +1 -1
- package/package.json +1 -1
|
@@ -19,6 +19,15 @@ import "../../common/solid-export.css";
|
|
|
19
19
|
import { SolidGenericImport } from "../common/SolidGenericImport/SolidGenericImport";
|
|
20
20
|
import { hasAnyRole } from "../../../helpers/rolesHelper";
|
|
21
21
|
import { SolidListViewHeaderButton } from "./SolidListViewHeaderButton";
|
|
22
|
+
import { capitalize } from "lodash";
|
|
23
|
+
|
|
24
|
+
export type ViewMode = {
|
|
25
|
+
actionId: string;
|
|
26
|
+
actionName: string;
|
|
27
|
+
menuItemId: string;
|
|
28
|
+
menuItemName: string;
|
|
29
|
+
type: string;
|
|
30
|
+
}
|
|
22
31
|
|
|
23
32
|
export const SolidListViewConfigure = (
|
|
24
33
|
{ listViewMetaData,
|
|
@@ -54,11 +63,11 @@ export const SolidListViewConfigure = (
|
|
|
54
63
|
const [isOverlayOpen, setIsOverlayOpen] = useState(false);
|
|
55
64
|
|
|
56
65
|
|
|
57
|
-
const handleViewChange = (newView:
|
|
58
|
-
if (view === newView) return; // Prevent unnecessary updates
|
|
66
|
+
const handleViewChange = (newView: ViewMode) => {
|
|
67
|
+
if (view === newView.type) return; // Prevent unnecessary updates
|
|
59
68
|
const pathSegments = pathname.split('/').filter(Boolean);
|
|
60
|
-
pathSegments[pathSegments.length - 1] = newView; // Replace the last part with new view
|
|
61
|
-
const newPath = '/' + pathSegments.join('/')
|
|
69
|
+
pathSegments[pathSegments.length - 1] = newView.type; // Replace the last part with new view
|
|
70
|
+
const newPath = '/' + pathSegments.join('/') + `?menuItemId=${newView.menuItemId}&menuItemName=${newView.menuItemName}&actionId=${newView.actionId}&actionName=${newView.actionName}`;
|
|
62
71
|
router.push(newPath);
|
|
63
72
|
};
|
|
64
73
|
|
|
@@ -279,18 +288,18 @@ export const SolidListViewConfigure = (
|
|
|
279
288
|
{viewModes && viewModes.length > 0 &&
|
|
280
289
|
<AccordionTab header="Switch Type">
|
|
281
290
|
<div className="flex flex-column gap-1 p-1">
|
|
282
|
-
{viewModes.map((option:
|
|
283
|
-
<div key={option.
|
|
291
|
+
{viewModes.map((option: ViewMode) => (
|
|
292
|
+
<div key={option.type} className={`flex align-items-center ${option.type === view ? 'solid-active-view' : 'solid-view'}`}>
|
|
284
293
|
<RadioButton
|
|
285
|
-
inputId={option.
|
|
294
|
+
inputId={option.type}
|
|
286
295
|
name="views"
|
|
287
|
-
value={option.
|
|
296
|
+
value={option.type}
|
|
288
297
|
// onChange={(e) => router}
|
|
289
|
-
onChange={() => handleViewChange(option
|
|
290
|
-
checked={option.
|
|
298
|
+
onChange={() => handleViewChange(option)}
|
|
299
|
+
checked={option.type === view}
|
|
291
300
|
/>
|
|
292
|
-
<label htmlFor={option.
|
|
293
|
-
{option.
|
|
301
|
+
<label htmlFor={option.type} className="ml-2 flex align-items-center justify-content-between w-full">
|
|
302
|
+
{capitalize(option.type)}
|
|
294
303
|
</label>
|
|
295
304
|
</div>
|
|
296
305
|
))}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidShortTextColumn.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/list/columns/SolidShortTextColumn.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAqB,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAItF,OAAO,EAAE,yBAAyB,EAA4E,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"SolidShortTextColumn.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/list/columns/SolidShortTextColumn.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAqB,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAItF,OAAO,EAAE,yBAAyB,EAA4E,MAAM,8BAA8B,CAAC;AAEnJ,QAAA,MAAM,oBAAoB,uFAAwF,yBAAyB,4CA+E1I,CAAC;AAEF,eAAe,oBAAoB,CAAC;AAIpC,eAAO,MAAM,qBAAqB,8DAA+D,yBAAyB,4CAuBzH,CAAC"}
|
|
@@ -16,7 +16,6 @@ import { getNumberOfInputs } from '../SolidListViewColumn';
|
|
|
16
16
|
import { InputTypes, SolidVarInputsFilterElement } from "../SolidVarInputsFilterElement";
|
|
17
17
|
import SolidTableRowCell from '../SolidTableRowCell';
|
|
18
18
|
import { getExtensionComponent } from '../../../../helpers/registry';
|
|
19
|
-
import dayjs from 'dayjs';
|
|
20
19
|
var SolidShortTextColumn = function (_a) {
|
|
21
20
|
var _b, _c, _d, _e, _f;
|
|
22
21
|
var solidListViewMetaData = _a.solidListViewMetaData, fieldMetadata = _a.fieldMetadata, column = _a.column, setLightboxUrls = _a.setLightboxUrls, setOpenLightbox = _a.setOpenLightbox;
|
|
@@ -68,46 +67,11 @@ var SolidShortTextColumn = function (_a) {
|
|
|
68
67
|
} }, fieldMetadata.name));
|
|
69
68
|
};
|
|
70
69
|
export default SolidShortTextColumn;
|
|
71
|
-
function parseIsoDate(value) {
|
|
72
|
-
if (!value || typeof value !== "string")
|
|
73
|
-
return null;
|
|
74
|
-
// Fast reject (avoids false positives)
|
|
75
|
-
if (!value.includes("T"))
|
|
76
|
-
return null;
|
|
77
|
-
var d = new Date(value);
|
|
78
|
-
return isNaN(d.getTime()) ? null : d;
|
|
79
|
-
}
|
|
80
70
|
export var DefaultTextListWidget = function (_a) {
|
|
81
|
-
var _b, _c, _d, _e
|
|
71
|
+
var _b, _c, _d, _e;
|
|
82
72
|
var rowData = _a.rowData, solidListViewMetaData = _a.solidListViewMetaData, fieldMetadata = _a.fieldMetadata, column = _a.column;
|
|
83
73
|
var truncateAfter = (_e = (_d = (_c = (_b = solidListViewMetaData === null || solidListViewMetaData === void 0 ? void 0 : solidListViewMetaData.data) === null || _b === void 0 ? void 0 : _b.solidView) === null || _c === void 0 ? void 0 : _c.layout) === null || _d === void 0 ? void 0 : _d.attrs) === null || _e === void 0 ? void 0 : _e.truncateAfter;
|
|
84
74
|
var displayValue = rowData[fieldMetadata.name];
|
|
85
|
-
// if (typeof displayValue === "string" && displayValue.includes("T") && displayValue.endsWith("Z")) {
|
|
86
|
-
// const d = new Date(displayValue);
|
|
87
|
-
// if (!isNaN(d.getTime())) {
|
|
88
|
-
// const year = d.getFullYear();
|
|
89
|
-
// const month = String(d.getMonth() + 1).padStart(2, "0");
|
|
90
|
-
// const day = String(d.getDate()).padStart(2, "0");
|
|
91
|
-
// const hours = String(d.getHours()).padStart(2, "0");
|
|
92
|
-
// const minutes = String(d.getMinutes()).padStart(2, "0");
|
|
93
|
-
// const seconds = String(d.getSeconds()).padStart(2, "0");
|
|
94
|
-
// displayValue = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}.000`;
|
|
95
|
-
// }
|
|
96
|
-
// }
|
|
97
|
-
if (typeof displayValue === "string") {
|
|
98
|
-
var parsedDate = parseIsoDate(displayValue);
|
|
99
|
-
if (parsedDate) {
|
|
100
|
-
var format = (_f = column === null || column === void 0 ? void 0 : column.attrs) === null || _f === void 0 ? void 0 : _f.format;
|
|
101
|
-
// 🔵 Explicit format → dayjs
|
|
102
|
-
if (format) {
|
|
103
|
-
displayValue = dayjs(parsedDate).format(format);
|
|
104
|
-
}
|
|
105
|
-
// 🟢 Default → user locale
|
|
106
|
-
else {
|
|
107
|
-
displayValue = parsedDate.toLocaleString();
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
75
|
if ((fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.selectionStaticValues) && displayValue) {
|
|
112
76
|
var mapping_1 = {};
|
|
113
77
|
fieldMetadata.selectionStaticValues.forEach(function (entry) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidShortTextColumn.js","sourceRoot":"","sources":["../../../../../src/components/core/list/columns/SolidShortTextColumn.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { FilterMatchMode } from 'primereact/api';\nimport { Column, ColumnFilterElementTemplateOptions } from \"primereact/column\";\nimport { FormEvent } from \"primereact/ts-helpers\";\nimport { getNumberOfInputs, SolidListViewColumnParams } from '../SolidListViewColumn';\nimport { InputTypes, SolidVarInputsFilterElement } from \"../SolidVarInputsFilterElement\";\nimport SolidTableRowCell from '../SolidTableRowCell';\nimport { getExtensionComponent } from '../../../../helpers/registry';\nimport { SolidListFieldWidgetProps, SolidMediaListFieldWidgetProps, SolidShortTextImageRenderModeWidgetProps } from '../../../../types/solid-core';\nimport dayjs from 'dayjs';\n\nconst SolidShortTextColumn = ({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox }: SolidListViewColumnParams) => {\n const filterable = column.attrs.filterable;\n const showFilterOperator = false;\n const columnDataType = 'text';\n const filterMatchModeOptions = [\n { label: 'Starts With', value: FilterMatchMode.STARTS_WITH },\n { label: 'Contains', value: FilterMatchMode.CONTAINS },\n { label: 'Not Contains', value: FilterMatchMode.NOT_CONTAINS },\n { label: 'Ends With', value: FilterMatchMode.ENDS_WITH },\n { label: 'Equals', value: FilterMatchMode.EQUALS },\n { label: 'Not Equals', value: FilterMatchMode.NOT_EQUALS },\n { label: 'In', value: FilterMatchMode.IN },\n { label: 'Not In', value: FilterMatchMode.NOT_IN }\n ];\n const filterTemplate = (options: ColumnFilterElementTemplateOptions) => {\n const numberOfInputs = getNumberOfInputs(options.filterModel.matchMode);\n\n return (\n <SolidVarInputsFilterElement\n values={options.value}\n onChange={(e: FormEvent<HTMLInputElement>) => options.filterCallback(e, options.index)}\n numberOfInputs={numberOfInputs}\n inputType={InputTypes.Text}\n solidListViewMetaData={solidListViewMetaData}\n fieldMetadata={fieldMetadata}\n column={column}\n >\n </SolidVarInputsFilterElement >\n )\n };\n\n const truncateAfter = solidListViewMetaData?.data?.solidView?.layout?.attrs?.truncateAfter;\n const header = column.attrs.label ?? fieldMetadata.displayName;\n\n return (\n <Column\n key={fieldMetadata.name}\n field={fieldMetadata.name}\n // header={header}\n // className=\"text-sm\"\n sortable={column.attrs.sortable}\n // filter={filterable}\n dataType={columnDataType}\n showFilterOperator={showFilterOperator}\n filterMatchModeOptions={filterMatchModeOptions}\n filterElement={filterTemplate}\n filterPlaceholder={`Search by ${fieldMetadata.displayName}`}\n // style={{ minWidth: \"12rem\" }}\n // headerClassName=\"table-header-fs\"\n header={() => {\n return (<div style={{ maxWidth: truncateAfter ? `${truncateAfter}ch` : '30ch', whiteSpace: 'nowrap', textOverflow: 'ellipsis', overflow: 'hidden' }}>{header}</div>)\n }}\n\n body={(rowData) => {\n //add this widget to render media image in image format - SolidShortTextFieldImageRenderModeWidget \n let viewWidget = column.attrs.viewWidget;\n if (!viewWidget) {\n viewWidget = 'DefaultTextListWidget';\n }\n let DynamicWidget = getExtensionComponent(viewWidget);\n const widgetProps: SolidMediaListFieldWidgetProps = {\n rowData,\n solidListViewMetaData,\n fieldMetadata,\n column,\n setLightboxUrls: setLightboxUrls,\n setOpenLightbox: setOpenLightbox\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n }\n\n ></Column >\n );\n\n};\n\nexport default SolidShortTextColumn;\n\nfunction parseIsoDate(value: string): Date | null {\n if (!value || typeof value !== \"string\") return null;\n\n // Fast reject (avoids false positives)\n if (!value.includes(\"T\")) return null;\n\n const d = new Date(value);\n return isNaN(d.getTime()) ? null : d;\n}\n\n\nexport const DefaultTextListWidget = ({ rowData, solidListViewMetaData, fieldMetadata, column }: SolidListFieldWidgetProps) => {\n const truncateAfter = solidListViewMetaData?.data?.solidView?.layout?.attrs?.truncateAfter;\n let displayValue = rowData[fieldMetadata.name];\n // if (typeof displayValue === \"string\" && displayValue.includes(\"T\") && displayValue.endsWith(\"Z\")) {\n // const d = new Date(displayValue);\n // if (!isNaN(d.getTime())) {\n // const year = d.getFullYear();\n // const month = String(d.getMonth() + 1).padStart(2, \"0\");\n // const day = String(d.getDate()).padStart(2, \"0\");\n // const hours = String(d.getHours()).padStart(2, \"0\");\n // const minutes = String(d.getMinutes()).padStart(2, \"0\");\n // const seconds = String(d.getSeconds()).padStart(2, \"0\");\n\n // displayValue = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}.000`;\n // }\n // }\n if (typeof displayValue === \"string\") {\n const parsedDate = parseIsoDate(displayValue);\n\n if (parsedDate) {\n const format = column?.attrs?.format as string | undefined;\n\n // 🔵 Explicit format → dayjs\n if (format) {\n displayValue = dayjs(parsedDate).format(format);\n }\n // 🟢 Default → user locale\n else {\n displayValue = parsedDate.toLocaleString();\n }\n }\n }\n\n\n\n if (fieldMetadata?.selectionStaticValues && displayValue) {\n const mapping: Record<string, string> = {};\n\n fieldMetadata.selectionStaticValues.forEach((entry: string) => {\n const [val, label] = entry.split(\":\");\n mapping[val] = label;\n });\n\n const values = displayValue.split(\",\").map((v: string) => v.trim());\n\n displayValue = values.map((v: string) => mapping[v] || v).join(\", \");\n }\n\n return (\n <SolidTableRowCell\n value={displayValue}\n truncateAfter={truncateAfter}\n />\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"SolidShortTextColumn.js","sourceRoot":"","sources":["../../../../../src/components/core/list/columns/SolidShortTextColumn.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { FilterMatchMode } from 'primereact/api';\nimport { Column, ColumnFilterElementTemplateOptions } from \"primereact/column\";\nimport { FormEvent } from \"primereact/ts-helpers\";\nimport { getNumberOfInputs, SolidListViewColumnParams } from '../SolidListViewColumn';\nimport { InputTypes, SolidVarInputsFilterElement } from \"../SolidVarInputsFilterElement\";\nimport SolidTableRowCell from '../SolidTableRowCell';\nimport { getExtensionComponent } from '../../../../helpers/registry';\nimport { SolidListFieldWidgetProps, SolidMediaListFieldWidgetProps, SolidShortTextImageRenderModeWidgetProps } from '../../../../types/solid-core';\n\nconst SolidShortTextColumn = ({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox }: SolidListViewColumnParams) => {\n const filterable = column.attrs.filterable;\n const showFilterOperator = false;\n const columnDataType = 'text';\n const filterMatchModeOptions = [\n { label: 'Starts With', value: FilterMatchMode.STARTS_WITH },\n { label: 'Contains', value: FilterMatchMode.CONTAINS },\n { label: 'Not Contains', value: FilterMatchMode.NOT_CONTAINS },\n { label: 'Ends With', value: FilterMatchMode.ENDS_WITH },\n { label: 'Equals', value: FilterMatchMode.EQUALS },\n { label: 'Not Equals', value: FilterMatchMode.NOT_EQUALS },\n { label: 'In', value: FilterMatchMode.IN },\n { label: 'Not In', value: FilterMatchMode.NOT_IN }\n ];\n const filterTemplate = (options: ColumnFilterElementTemplateOptions) => {\n const numberOfInputs = getNumberOfInputs(options.filterModel.matchMode);\n\n return (\n <SolidVarInputsFilterElement\n values={options.value}\n onChange={(e: FormEvent<HTMLInputElement>) => options.filterCallback(e, options.index)}\n numberOfInputs={numberOfInputs}\n inputType={InputTypes.Text}\n solidListViewMetaData={solidListViewMetaData}\n fieldMetadata={fieldMetadata}\n column={column}\n >\n </SolidVarInputsFilterElement >\n )\n };\n\n const truncateAfter = solidListViewMetaData?.data?.solidView?.layout?.attrs?.truncateAfter;\n const header = column.attrs.label ?? fieldMetadata.displayName;\n\n return (\n <Column\n key={fieldMetadata.name}\n field={fieldMetadata.name}\n // header={header}\n // className=\"text-sm\"\n sortable={column.attrs.sortable}\n // filter={filterable}\n dataType={columnDataType}\n showFilterOperator={showFilterOperator}\n filterMatchModeOptions={filterMatchModeOptions}\n filterElement={filterTemplate}\n filterPlaceholder={`Search by ${fieldMetadata.displayName}`}\n // style={{ minWidth: \"12rem\" }}\n // headerClassName=\"table-header-fs\"\n header={() => {\n return (<div style={{ maxWidth: truncateAfter ? `${truncateAfter}ch` : '30ch', whiteSpace: 'nowrap', textOverflow: 'ellipsis', overflow: 'hidden' }}>{header}</div>)\n }}\n\n body={(rowData) => {\n //add this widget to render media image in image format - SolidShortTextFieldImageRenderModeWidget \n let viewWidget = column.attrs.viewWidget;\n if (!viewWidget) {\n viewWidget = 'DefaultTextListWidget';\n }\n let DynamicWidget = getExtensionComponent(viewWidget);\n const widgetProps: SolidMediaListFieldWidgetProps = {\n rowData,\n solidListViewMetaData,\n fieldMetadata,\n column,\n setLightboxUrls: setLightboxUrls,\n setOpenLightbox: setOpenLightbox\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n }\n\n ></Column >\n );\n\n};\n\nexport default SolidShortTextColumn;\n\n\n\nexport const DefaultTextListWidget = ({ rowData, solidListViewMetaData, fieldMetadata, column }: SolidListFieldWidgetProps) => {\n const truncateAfter = solidListViewMetaData?.data?.solidView?.layout?.attrs?.truncateAfter;\n let displayValue = rowData[fieldMetadata.name];\n\n if (fieldMetadata?.selectionStaticValues && displayValue) {\n const mapping: Record<string, string> = {};\n\n fieldMetadata.selectionStaticValues.forEach((entry: string) => {\n const [val, label] = entry.split(\":\");\n mapping[val] = label;\n });\n\n const values = displayValue.split(\",\").map((v: string) => v.trim());\n\n displayValue = values.map((v: string) => mapping[v] || v).join(\", \");\n }\n\n return (\n <SolidTableRowCell\n value={displayValue}\n truncateAfter={truncateAfter}\n />\n );\n};\n"]}
|
|
@@ -7,7 +7,6 @@ import { InputTypes, SolidVarInputsFilterElement } from "../SolidVarInputsFilter
|
|
|
7
7
|
import SolidTableRowCell from '../SolidTableRowCell';
|
|
8
8
|
import { getExtensionComponent } from '../../../../helpers/registry';
|
|
9
9
|
import { SolidListFieldWidgetProps, SolidMediaListFieldWidgetProps, SolidShortTextImageRenderModeWidgetProps } from '../../../../types/solid-core';
|
|
10
|
-
import dayjs from 'dayjs';
|
|
11
10
|
|
|
12
11
|
const SolidShortTextColumn = ({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox }: SolidListViewColumnParams) => {
|
|
13
12
|
const filterable = column.attrs.filterable;
|
|
@@ -92,51 +91,11 @@ const SolidShortTextColumn = ({ solidListViewMetaData, fieldMetadata, column, se
|
|
|
92
91
|
|
|
93
92
|
export default SolidShortTextColumn;
|
|
94
93
|
|
|
95
|
-
function parseIsoDate(value: string): Date | null {
|
|
96
|
-
if (!value || typeof value !== "string") return null;
|
|
97
|
-
|
|
98
|
-
// Fast reject (avoids false positives)
|
|
99
|
-
if (!value.includes("T")) return null;
|
|
100
|
-
|
|
101
|
-
const d = new Date(value);
|
|
102
|
-
return isNaN(d.getTime()) ? null : d;
|
|
103
|
-
}
|
|
104
94
|
|
|
105
95
|
|
|
106
96
|
export const DefaultTextListWidget = ({ rowData, solidListViewMetaData, fieldMetadata, column }: SolidListFieldWidgetProps) => {
|
|
107
97
|
const truncateAfter = solidListViewMetaData?.data?.solidView?.layout?.attrs?.truncateAfter;
|
|
108
98
|
let displayValue = rowData[fieldMetadata.name];
|
|
109
|
-
// if (typeof displayValue === "string" && displayValue.includes("T") && displayValue.endsWith("Z")) {
|
|
110
|
-
// const d = new Date(displayValue);
|
|
111
|
-
// if (!isNaN(d.getTime())) {
|
|
112
|
-
// const year = d.getFullYear();
|
|
113
|
-
// const month = String(d.getMonth() + 1).padStart(2, "0");
|
|
114
|
-
// const day = String(d.getDate()).padStart(2, "0");
|
|
115
|
-
// const hours = String(d.getHours()).padStart(2, "0");
|
|
116
|
-
// const minutes = String(d.getMinutes()).padStart(2, "0");
|
|
117
|
-
// const seconds = String(d.getSeconds()).padStart(2, "0");
|
|
118
|
-
|
|
119
|
-
// displayValue = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}.000`;
|
|
120
|
-
// }
|
|
121
|
-
// }
|
|
122
|
-
if (typeof displayValue === "string") {
|
|
123
|
-
const parsedDate = parseIsoDate(displayValue);
|
|
124
|
-
|
|
125
|
-
if (parsedDate) {
|
|
126
|
-
const format = column?.attrs?.format as string | undefined;
|
|
127
|
-
|
|
128
|
-
// 🔵 Explicit format → dayjs
|
|
129
|
-
if (format) {
|
|
130
|
-
displayValue = dayjs(parsedDate).format(format);
|
|
131
|
-
}
|
|
132
|
-
// 🟢 Default → user locale
|
|
133
|
-
else {
|
|
134
|
-
displayValue = parsedDate.toLocaleString();
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
|
|
140
99
|
|
|
141
100
|
if (fieldMetadata?.selectionStaticValues && displayValue) {
|
|
142
101
|
const mapping: Record<string, string> = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidRelationManyToOneColumn.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,yBAAyB,EAAE,MAAM,yDAAyD,CAAC;AAGpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAK5E,QAAA,MAAM,4BAA4B,qDAAsD,yBAAyB,4CAiEhH,CAAC;AAEF,eAAe,4BAA4B,CAAC;AAG5C,eAAO,MAAM,kCAAkC,8DAA+D,yBAAyB,
|
|
1
|
+
{"version":3,"file":"SolidRelationManyToOneColumn.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,yBAAyB,EAAE,MAAM,yDAAyD,CAAC;AAGpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAK5E,QAAA,MAAM,4BAA4B,qDAAsD,yBAAyB,4CAiEhH,CAAC;AAEF,eAAe,4BAA4B,CAAC;AAG5C,eAAO,MAAM,kCAAkC,8DAA+D,yBAAyB,4CA6CtI,CAAC"}
|
|
@@ -61,18 +61,22 @@ export var DefaultRelationManyToOneListWidget = function (_a) {
|
|
|
61
61
|
// Since this is a many-to-one field, we fetch the user key field of the associated model.
|
|
62
62
|
var userKeyField = ((_b = column === null || column === void 0 ? void 0 : column.attrs) === null || _b === void 0 ? void 0 : _b.coModelFieldToDisplay) ? (_c = column === null || column === void 0 ? void 0 : column.attrs) === null || _c === void 0 ? void 0 : _c.coModelFieldToDisplay : (_e = (_d = fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.relationModel) === null || _d === void 0 ? void 0 : _d.userKeyField) === null || _e === void 0 ? void 0 : _e.name;
|
|
63
63
|
var manyToOneColVal = manyToOneFieldData[userKeyField];
|
|
64
|
-
return (_jsx(Button, { label: manyToOneColVal, link: true, onClick: function () {
|
|
65
|
-
var _a;
|
|
66
|
-
// Get current path from browser
|
|
64
|
+
return (_jsx(Button, { label: manyToOneColVal, link: true, icon: "pi pi-external-link", iconPos: "right", className: "w-auto", onClick: function () {
|
|
65
|
+
var _a, _b;
|
|
67
66
|
var pathSegments = window.location.pathname.split('/').filter(Boolean);
|
|
68
|
-
// The modelName is the second-last segment before "list"
|
|
69
67
|
var listIndex = pathSegments.lastIndexOf('list');
|
|
70
68
|
if (listIndex > 0) {
|
|
71
69
|
pathSegments[listIndex - 1] = kebabCase((_a = fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.relationModel) === null || _a === void 0 ? void 0 : _a.singularName);
|
|
72
70
|
pathSegments[listIndex] = "form/".concat(manyToOneFieldData === null || manyToOneFieldData === void 0 ? void 0 : manyToOneFieldData.id);
|
|
73
71
|
}
|
|
72
|
+
else if (pathSegments[pathSegments.length - 2] === "form") {
|
|
73
|
+
pathSegments[pathSegments.length - 3] = kebabCase((_b = fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.relationModel) === null || _b === void 0 ? void 0 : _b.singularName);
|
|
74
|
+
pathSegments[pathSegments.length - 2] = "form";
|
|
75
|
+
pathSegments[pathSegments.length - 1] = manyToOneFieldData === null || manyToOneFieldData === void 0 ? void 0 : manyToOneFieldData.id;
|
|
76
|
+
}
|
|
74
77
|
var newPath = "/".concat(pathSegments.join('/'), "?viewMode=view");
|
|
75
|
-
|
|
78
|
+
// open in new tab
|
|
79
|
+
window.open(newPath, "_blank");
|
|
76
80
|
} }));
|
|
77
81
|
}
|
|
78
82
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidRelationManyToOneColumn.js","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SolidRelationManyToOneColumn.js","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { FilterMatchMode } from 'primereact/api';\nimport { Column, ColumnFilterElementTemplateOptions } from \"primereact/column\";\nimport { FormEvent } from \"primereact/ts-helpers\";\nimport { SolidListViewColumnParams } from '../../../../../components/core/list/SolidListViewColumn';\nimport { InputTypes, SolidVarInputsFilterElement } from '../../../../../components/core/list/SolidVarInputsFilterElement';\nimport { getExtensionComponent } from '../../../../../helpers/registry';\nimport { SolidListFieldWidgetProps } from '../../../../../types/solid-core';\nimport { Button } from 'primereact/button';\nimport { useRouter } from \"../../../../../hooks/useRouter\";\nimport { kebabCase } from 'change-case';\n\nconst SolidRelationManyToOneColumn = ({ solidListViewMetaData, fieldMetadata, column }: SolidListViewColumnParams) => {\n const filterable = column.attrs.filterable;\n const showFilterOperator = false;\n const filterMatchModeOptions = [\n { label: 'In', value: FilterMatchMode.IN },\n { label: 'Not In', value: FilterMatchMode.NOT_IN },\n ];\n const columnDataType = undefined;\n\n\n\n const filterTemplate = (options: ColumnFilterElementTemplateOptions) => {\n\n return (\n <SolidVarInputsFilterElement\n values={options.value}\n onChange={(e: FormEvent<HTMLInputElement>) => options.filterCallback(e, options.index)}\n inputType={InputTypes.RelationManyToOne}\n solidListViewMetaData={solidListViewMetaData}\n fieldMetadata={fieldMetadata}\n column={column}\n >\n </SolidVarInputsFilterElement>\n )\n };\n\n const header = column.attrs.label ?? fieldMetadata.displayName;\n\n return (\n <Column\n key={fieldMetadata.name}\n field={fieldMetadata.name}\n header={header}\n // className=\"text-sm\"\n sortable={column.attrs.sortable}\n // filter={filterable}\n dataType={columnDataType}\n showFilterOperator={showFilterOperator}\n filterMatchModeOptions={filterMatchModeOptions}\n filterElement={filterTemplate}\n body={(rowData) => {\n let viewWidget = column.attrs.viewWidget;\n if (!viewWidget) {\n viewWidget = 'DefaultRelationManyToOneListWidget';\n }\n let DynamicWidget = getExtensionComponent(viewWidget);\n const widgetProps: SolidListFieldWidgetProps = {\n rowData,\n solidListViewMetaData,\n fieldMetadata,\n column\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n }\n filterPlaceholder={`Search by ${fieldMetadata.displayName}`}\n style={{ minWidth: \"12rem\" }}\n headerClassName=\"table-header-fs\"\n ></Column>\n );\n\n};\n\nexport default SolidRelationManyToOneColumn;\n\n\nexport const DefaultRelationManyToOneListWidget = ({ rowData, solidListViewMetaData, fieldMetadata, column }: SolidListFieldWidgetProps) => {\n const router = useRouter();\n const manyToOneFieldData = rowData[column.attrs.name];\n\n // This is the userkey that will be present within the rowData.\n if (manyToOneFieldData) {\n // Since this is a many-to-one field, we fetch the user key field of the associated model.\n const userKeyField = column?.attrs?.coModelFieldToDisplay ? column?.attrs?.coModelFieldToDisplay : fieldMetadata?.relationModel?.userKeyField?.name;\n\n const manyToOneColVal = manyToOneFieldData[userKeyField];\n\n return (\n <Button\n label={manyToOneColVal}\n link\n icon=\"pi pi-external-link\"\n iconPos=\"right\"\n className=\"w-auto\"\n onClick={() => {\n const pathSegments = window.location.pathname.split('/').filter(Boolean);\n\n const listIndex = pathSegments.lastIndexOf('list');\n\n if (listIndex > 0) {\n pathSegments[listIndex - 1] = kebabCase(fieldMetadata?.relationModel?.singularName);\n pathSegments[listIndex] = `form/${manyToOneFieldData?.id}`;\n }\n else if (pathSegments[pathSegments.length - 2] === \"form\") {\n pathSegments[pathSegments.length - 3] = kebabCase(fieldMetadata?.relationModel?.singularName);\n pathSegments[pathSegments.length - 2] = \"form\";\n pathSegments[pathSegments.length - 1] = manyToOneFieldData?.id;\n }\n\n const newPath = `/${pathSegments.join('/')}?viewMode=view`;\n\n // open in new tab\n window.open(newPath, \"_blank\");\n\n }}\n />\n );\n }\n else {\n return <span></span>\n }\n};\n"]}
|
|
@@ -95,18 +95,29 @@ export const DefaultRelationManyToOneListWidget = ({ rowData, solidListViewMetaD
|
|
|
95
95
|
<Button
|
|
96
96
|
label={manyToOneColVal}
|
|
97
97
|
link
|
|
98
|
+
icon="pi pi-external-link"
|
|
99
|
+
iconPos="right"
|
|
100
|
+
className="w-auto"
|
|
98
101
|
onClick={() => {
|
|
99
|
-
// Get current path from browser
|
|
100
102
|
const pathSegments = window.location.pathname.split('/').filter(Boolean);
|
|
101
103
|
|
|
102
|
-
// The modelName is the second-last segment before "list"
|
|
103
104
|
const listIndex = pathSegments.lastIndexOf('list');
|
|
105
|
+
|
|
104
106
|
if (listIndex > 0) {
|
|
105
107
|
pathSegments[listIndex - 1] = kebabCase(fieldMetadata?.relationModel?.singularName);
|
|
106
108
|
pathSegments[listIndex] = `form/${manyToOneFieldData?.id}`;
|
|
107
109
|
}
|
|
110
|
+
else if (pathSegments[pathSegments.length - 2] === "form") {
|
|
111
|
+
pathSegments[pathSegments.length - 3] = kebabCase(fieldMetadata?.relationModel?.singularName);
|
|
112
|
+
pathSegments[pathSegments.length - 2] = "form";
|
|
113
|
+
pathSegments[pathSegments.length - 1] = manyToOneFieldData?.id;
|
|
114
|
+
}
|
|
115
|
+
|
|
108
116
|
const newPath = `/${pathSegments.join('/')}?viewMode=view`;
|
|
109
|
-
|
|
117
|
+
|
|
118
|
+
// open in new tab
|
|
119
|
+
window.open(newPath, "_blank");
|
|
120
|
+
|
|
110
121
|
}}
|
|
111
122
|
/>
|
|
112
123
|
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidTreeView.d.ts","sourceRoot":"","sources":["../../../../src/components/core/tree/SolidTreeView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"SolidTreeView.d.ts","sourceRoot":"","sources":["../../../../src/components/core/tree/SolidTreeView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAsCf,KAAK,mBAAmB,GAAG;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,YAAY,CAAC,EAAE,GAAG,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,WAAW,EAAE,CAAC,MAAM,EAAE;QACpB,uBAAuB,CAAC,EAAE,GAAG,CAAC;QAC9B,gBAAgB,CAAC,EAAE,GAAG,CAAC;QACvB,sBAAsB,CAAC,EAAE,GAAG,CAAC;QAC7B,2BAA2B,CAAC,EAAE,GAAG,CAAC;KACnC,KAAK,IAAI,CAAC;IACX,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D,OAAO,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;IACpE,eAAe,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,QAAQ,EAAE,MAAM;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QACtB,YAAY,EAAE,OAAO,CAAC;QACtB,OAAO,EAAE,GAAG,CAAC;QACb,gBAAgB,EAAE,GAAG,CAAC;QACtB,QAAQ,EAAE,GAAG,EAAE,CAAC;QAChB,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;CACH,CAAC;AAsCF,eAAO,MAAM,aAAa,iGA6+CxB,CAAC"}
|
|
@@ -54,7 +54,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
54
54
|
}
|
|
55
55
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
56
56
|
};
|
|
57
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
57
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
58
58
|
import React, { forwardRef, useEffect, useImperativeHandle, useMemo, useRef, useState, } from "react";
|
|
59
59
|
import { Toast } from "primereact/toast";
|
|
60
60
|
import { useDispatch, useSelector } from "react-redux";
|
|
@@ -81,10 +81,10 @@ import CozyImage from '../../../resources/images/layout/images/cozy.png';
|
|
|
81
81
|
import ComfortableImage from '../../../resources/images/layout/images/comfortable.png';
|
|
82
82
|
import { Divider } from "primereact/divider";
|
|
83
83
|
import { ERROR_MESSAGES } from "../../../constants/error-messages";
|
|
84
|
-
import { getSingularAndPlural } from "../../../helpers/helpers";
|
|
85
84
|
import { getFilterObjectFromLocalStorage, setFilterObjectToLocalStorage } from "../list/SolidListView";
|
|
86
85
|
import { HomePageModuleSvg } from "../../Svg/HomePageModuleSvg";
|
|
87
86
|
import { getExtensionFunction } from "../../../helpers/registry";
|
|
87
|
+
import { Tooltip } from "primereact/tooltip";
|
|
88
88
|
var DEFAULT_PAGE_SIZE = 25;
|
|
89
89
|
// ─── Component ────────────────────────────────────────────────────────────────
|
|
90
90
|
export var SolidTreeView = forwardRef(function (params, ref) {
|
|
@@ -222,6 +222,12 @@ export var SolidTreeView = forwardRef(function (params, ref) {
|
|
|
222
222
|
var activeGroupingRules = useMemo(function () { return (groupingRules || []).filter(function (rule) { return !!(rule === null || rule === void 0 ? void 0 : rule.fieldName); }); }, [groupingRules]);
|
|
223
223
|
useEffect(function () { latestFiltersRef.current = filters; }, [filters]);
|
|
224
224
|
useEffect(function () { latestFilterPredicatesRef.current = filterPredicates; }, [filterPredicates]);
|
|
225
|
+
useEffect(function () {
|
|
226
|
+
var _a;
|
|
227
|
+
if (solidTreeViewMetaData) {
|
|
228
|
+
setViewModes((_a = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _a === void 0 ? void 0 : _a.viewModes);
|
|
229
|
+
}
|
|
230
|
+
}, [solidTreeViewMetaData]);
|
|
225
231
|
useEffect(function () {
|
|
226
232
|
var _a, _b, _c, _d, _e, _f;
|
|
227
233
|
var solidFieldsMetadata = (_a = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _a === void 0 ? void 0 : _a.solidFieldsMetadata;
|
|
@@ -502,10 +508,10 @@ export var SolidTreeView = forwardRef(function (params, ref) {
|
|
|
502
508
|
mergedFilters = mergeFiltersWithImplicit(implicitFilters);
|
|
503
509
|
if (mergedFilters)
|
|
504
510
|
queryData.filters = mergedFilters;
|
|
505
|
-
dynamicHeader = (_c = (_b = (_a = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _a === void 0 ? void 0 : _a.solidView) === null || _b === void 0 ? void 0 : _b.layout) === null || _c === void 0 ? void 0 : _c.
|
|
511
|
+
dynamicHeader = (_c = (_b = (_a = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _a === void 0 ? void 0 : _a.solidView) === null || _b === void 0 ? void 0 : _b.layout) === null || _c === void 0 ? void 0 : _c.onBeforeTreeDataLoad;
|
|
506
512
|
dynamicExtensionFunction = null;
|
|
507
513
|
event = {
|
|
508
|
-
type: "
|
|
514
|
+
type: "onBeforeTreeDataLoad",
|
|
509
515
|
level: ruleIndex,
|
|
510
516
|
levelFieldName: rule.fieldName,
|
|
511
517
|
fieldsMetadata: (_d = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _d === void 0 ? void 0 : _d.solidFieldsMetadata,
|
|
@@ -537,7 +543,7 @@ export var SolidTreeView = forwardRef(function (params, ref) {
|
|
|
537
543
|
return [3 /*break*/, 4];
|
|
538
544
|
case 3:
|
|
539
545
|
err_1 = _f.sent();
|
|
540
|
-
console.error("Error executing
|
|
546
|
+
console.error("Error executing onBeforeTreeDataLoad extension:", err_1);
|
|
541
547
|
return [3 /*break*/, 4];
|
|
542
548
|
case 4:
|
|
543
549
|
queryString = qs.stringify(queryData, { encodeValuesOnly: true });
|
|
@@ -565,10 +571,10 @@ export var SolidTreeView = forwardRef(function (params, ref) {
|
|
|
565
571
|
mergedFilters = mergeFiltersWithImplicit(implicitFilters);
|
|
566
572
|
if (mergedFilters)
|
|
567
573
|
queryData.filters = mergedFilters;
|
|
568
|
-
dynamicHeader = (_c = (_b = (_a = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _a === void 0 ? void 0 : _a.solidView) === null || _b === void 0 ? void 0 : _b.layout) === null || _c === void 0 ? void 0 : _c.
|
|
574
|
+
dynamicHeader = (_c = (_b = (_a = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _a === void 0 ? void 0 : _a.solidView) === null || _b === void 0 ? void 0 : _b.layout) === null || _c === void 0 ? void 0 : _c.onBeforeTreeDataLoad;
|
|
569
575
|
dynamicExtensionFunction = null;
|
|
570
576
|
event = {
|
|
571
|
-
type: "
|
|
577
|
+
type: "onBeforeTreeDataLoad",
|
|
572
578
|
level: groupPath.length,
|
|
573
579
|
levelFieldName: groupPath[groupPath.length - 1].fieldName,
|
|
574
580
|
fieldsMetadata: (_d = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _d === void 0 ? void 0 : _d.solidFieldsMetadata,
|
|
@@ -600,7 +606,7 @@ export var SolidTreeView = forwardRef(function (params, ref) {
|
|
|
600
606
|
return [3 /*break*/, 4];
|
|
601
607
|
case 3:
|
|
602
608
|
err_2 = _f.sent();
|
|
603
|
-
console.error("Error executing
|
|
609
|
+
console.error("Error executing onBeforeTreeDataLoad extension:", err_2);
|
|
604
610
|
return [3 /*break*/, 4];
|
|
605
611
|
case 4:
|
|
606
612
|
queryString = qs.stringify(queryData, { encodeValuesOnly: true });
|
|
@@ -1022,9 +1028,10 @@ export var SolidTreeView = forwardRef(function (params, ref) {
|
|
|
1022
1028
|
return null;
|
|
1023
1029
|
var originalBody = (_b = listColumn === null || listColumn === void 0 ? void 0 : listColumn.props) === null || _b === void 0 ? void 0 : _b.body;
|
|
1024
1030
|
var originalProps = (listColumn === null || listColumn === void 0 ? void 0 : listColumn.props) || {};
|
|
1031
|
+
var mergedColumnStyle = __assign({ minWidth: "12rem" }, (originalProps.style || {}));
|
|
1025
1032
|
return (_jsx(Column, { field: (_c = originalProps.field) !== null && _c !== void 0 ? _c : fieldMetadata.name, header: originalProps.header,
|
|
1026
1033
|
// sortable
|
|
1027
|
-
style:
|
|
1034
|
+
style: mergedColumnStyle, className: originalProps.className, headerClassName: originalProps.headerClassName, bodyClassName: originalProps.bodyClassName, align: originalProps.align, alignHeader: originalProps.alignHeader, body: function (node, options) {
|
|
1028
1035
|
var _a, _b;
|
|
1029
1036
|
var rowData = (_a = node === null || node === void 0 ? void 0 : node.data) !== null && _a !== void 0 ? _a : node;
|
|
1030
1037
|
var nodeMeta = rowData === null || rowData === void 0 ? void 0 : rowData.__treeMeta;
|
|
@@ -1065,7 +1072,9 @@ export var SolidTreeView = forwardRef(function (params, ref) {
|
|
|
1065
1072
|
if ((nodeMeta === null || nodeMeta === void 0 ? void 0 : nodeMeta.nodeType) !== "group")
|
|
1066
1073
|
return _jsx("span", { children: "\u00A0" });
|
|
1067
1074
|
var label = (_a = nodeMeta.groupLabel) !== null && _a !== void 0 ? _a : "";
|
|
1068
|
-
|
|
1075
|
+
var truncateAfter = 30;
|
|
1076
|
+
return (_jsxs("div", { className: "flex align-items-center", children: [_jsx("div", { className: "solid-table-row", style: { maxWidth: "".concat(truncateAfter, "ch") }, children: _jsx("span", { className: "font-semibold", children: label }) }), truncateAfter && label.length > truncateAfter &&
|
|
1077
|
+
_jsxs(_Fragment, { children: [_jsx(Tooltip, { target: ".solid-field-tooltip-icon" }), _jsx("i", { className: "pi pi-info-circle solid-field-tooltip-icon", "data-pr-tooltip": label })] })] }));
|
|
1069
1078
|
};
|
|
1070
1079
|
// ─── Root pagination bar ──────────────────────────────────────────────────
|
|
1071
1080
|
var RootPaginationBar = function () {
|
|
@@ -1115,7 +1124,7 @@ export var SolidTreeView = forwardRef(function (params, ref) {
|
|
|
1115
1124
|
((_s = (_r = (_q = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _q === void 0 ? void 0 : _q.solidView) === null || _r === void 0 ? void 0 : _r.layout) === null || _s === void 0 ? void 0 : _s.attrs.delete) !== false &&
|
|
1116
1125
|
selectedRecords.length > 0 && (_jsx(Button, { type: "button", label: "Delete", size: "small", onClick: function () { return setDeleteRecordsDialogVisible(true); }, className: "small-button", severity: "danger" })), _jsx(Button, { type: "button", size: "small", icon: "pi pi-refresh", severity: "secondary", className: "solid-icon-button", outlined: true, onClick: function () { void loadRootGroups(getPagination("root").offset); } }), showArchived && (_jsx(Button, { type: "button", icon: "pi pi-refresh", label: "Recover", size: "small", severity: "secondary", className: "hidden lg:flex solid-icon-button ", onClick: function () { return setRecoverDialogVisible(true); } })), params.embeded === false &&
|
|
1117
1126
|
((_t = solidTreeViewLayout === null || solidTreeViewLayout === void 0 ? void 0 : solidTreeViewLayout.attrs) === null || _t === void 0 ? void 0 : _t.configureView) !== false && (_jsx(SolidListViewConfigure, { listViewMetaData: solidTreeViewMetaData, solidListViewLayout: solidTreeViewLayout, setShowArchived: setShowArchived, showArchived: showArchived, viewData: solidTreeViewMetaData, sizeOptions: sizeOptions, setSize: setSize, size: size, viewModes: viewModes, params: params, actionsAllowed: actionsAllowed, selectedRecords: selectedRecords, setDialogVisible: setDeleteRecordsDialogVisible, setShowSaveFilterPopup: setShowSaveFilterPopup, filters: filters, handleFetchUpdatedRecords: handleFetchUpdatedRecords, setRecoverDialogVisible: setRecoverDialogVisible }))] })] }), ((_w = (_v = (_u = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _u === void 0 ? void 0 : _u.solidView) === null || _v === void 0 ? void 0 : _v.layout) === null || _w === void 0 ? void 0 : _w.attrs.enableGlobalSearch) === true &&
|
|
1118
|
-
showGlobalSearchElement && (_jsx("div", { className: "flex lg:hidden", children: _jsx(SolidGlobalSearchElement, { viewType: "tree", showSaveFilterPopup: showSaveFilterPopup, setShowSaveFilterPopup: setShowSaveFilterPopup, ref: solidGlobalSearchElementRef, viewData: solidTreeViewMetaData, handleApplyCustomFilter: handleApplyCustomFilter }) }))] }), _jsx("style", { children: "
|
|
1127
|
+
showGlobalSearchElement && (_jsx("div", { className: "flex lg:hidden", children: _jsx(SolidGlobalSearchElement, { viewType: "tree", showSaveFilterPopup: showSaveFilterPopup, setShowSaveFilterPopup: setShowSaveFilterPopup, ref: solidGlobalSearchElementRef, viewData: solidTreeViewMetaData, handleApplyCustomFilter: handleApplyCustomFilter }) }))] }), _jsx("style", { children: "\n \n " }), _jsx("div", { className: "solid-datatable-wrapper solid-treetable-wrapper flex-1 min-h-0 overflow-auto", children: activeGroupingRules.length === 0 ? (_jsxs("div", { className: "flex flex-column align-items-center justify-content-center h-full p-6 text-center", children: [_jsx("div", { className: "mb-4", style: { opacity: 0.1 }, children: _jsx(HomePageModuleSvg, {}) }), _jsx("h3", { className: "m-0 mb-2", style: { color: "var(--solid-dark-title)", fontWeight: 700, fontSize: '1.5rem' }, children: "Tree View" }), _jsxs("p", { className: "m-0 text-sl", style: { maxWidth: '35rem', lineHeight: '1.5', color: 'var(--text-color)' }, children: ["To visualize your data in a hierarchical structure, please apply a ", _jsx("strong", { children: "Grouping Rule" }), " from the Global Search bar above."] })] })) : (_jsxs(TreeTable, { value: treeNodes, lazy: true, loading: treeLoading, expandedKeys: expandedKeys, onToggle: function (event) { return setExpandedKeys(event.value); }, onExpand: handleNodeExpand, scrollable: true, tableStyle: { minWidth: "max-content" }, tableClassName: "solid-data-table", resizableColumns: true, columnResizeMode: "expand", selectionMode: "checkbox", selectionKeys: selectedNodeKeys, sortField: sortField, sortOrder: sortOrder, removableSort: true, onSort: function (e) {
|
|
1119
1128
|
setSortField(e.sortField);
|
|
1120
1129
|
setSortOrder(e.sortOrder);
|
|
1121
1130
|
}, onSelectionChange: function (e) {
|
|
@@ -1131,8 +1140,8 @@ export var SolidTreeView = forwardRef(function (params, ref) {
|
|
|
1131
1140
|
});
|
|
1132
1141
|
return next;
|
|
1133
1142
|
});
|
|
1134
|
-
}, children: [_jsx(Column, { field: "__group", header: "Group", sortable: true, expander: function (node) { var _a, _b; return ((_b = (_a = node === null || node === void 0 ? void 0 : node.data) === null || _a === void 0 ? void 0 : _a.__treeMeta) === null || _b === void 0 ? void 0 : _b.nodeType) === "group"; }, body: groupColumnBody, style: { minWidth: "18rem" } }, "tree-group-column"), renderColumnsDynamically(), renderAggregateColumns(), _jsx(Column, { header: "", style: { width: "20rem" }, body: function (node) {
|
|
1135
|
-
var _a, _b, _c, _d
|
|
1143
|
+
}, children: [_jsx(Column, { field: "__group", header: "Group", sortable: true, expander: function (node) { var _a, _b; return ((_b = (_a = node === null || node === void 0 ? void 0 : node.data) === null || _a === void 0 ? void 0 : _a.__treeMeta) === null || _b === void 0 ? void 0 : _b.nodeType) === "group"; }, body: groupColumnBody, style: { minWidth: "18rem", display: "flex", alignItems: "center" } }, "tree-group-column"), renderColumnsDynamically(), renderAggregateColumns(), _jsx(Column, { header: "", style: { width: "20rem" }, body: function (node) {
|
|
1144
|
+
var _a, _b, _c, _d;
|
|
1136
1145
|
var rowData = node === null || node === void 0 ? void 0 : node.data;
|
|
1137
1146
|
var nodeMeta = rowData === null || rowData === void 0 ? void 0 : rowData.__treeMeta;
|
|
1138
1147
|
if ((nodeMeta === null || nodeMeta === void 0 ? void 0 : nodeMeta.nodeType) !== "group")
|
|
@@ -1161,7 +1170,7 @@ export var SolidTreeView = forwardRef(function (params, ref) {
|
|
|
1161
1170
|
// Use displayName if available, fallback to fieldName
|
|
1162
1171
|
return (_c = (_b = fieldMeta === null || fieldMeta === void 0 ? void 0 : fieldMeta.displayName) !== null && _b !== void 0 ? _b : fieldMeta === null || fieldMeta === void 0 ? void 0 : fieldMeta.name) !== null && _c !== void 0 ? _c : fieldName;
|
|
1163
1172
|
})();
|
|
1164
|
-
return (_jsxs("div", { style: { display: "flex", alignItems: "center", gap: "0.2rem", justifyContent: "flex-end" }, onClick: function (e) { return e.stopPropagation(); }, children: [
|
|
1173
|
+
return (_jsxs("div", { style: { display: "flex", alignItems: "center", gap: "0.2rem", justifyContent: "flex-end" }, onClick: function (e) { return e.stopPropagation(); }, children: [_jsx(Button, { type: "button", icon: "pi pi-angle-left", size: "small", rounded: true, outlined: true, disabled: !canPrev || treeLoading, style: { padding: 0, border: "none", width: "2rem" }, className: "small-button", onClick: function () { return handleNodePageChange(nodeKey, "prev"); } }), _jsx(Button, { type: "button", icon: "pi pi-angle-right", size: "small", rounded: true, outlined: true, disabled: !canNext || treeLoading, style: { padding: 0, border: "none", width: "2rem" }, className: "small-button", onClick: function () { return handleNodePageChange(nodeKey, "next"); } })] }));
|
|
1165
1174
|
} }, "tree-last-frozen-column")] })) }), _jsx(RootPaginationBar, {}), _jsxs(Dialog, { visible: isDeleteRecordsDialogVisible, header: "Confirm Delete", onHide: function () { return setDeleteRecordsDialogVisible(false); }, headerClassName: "py-2", contentClassName: "px-0 pb-0",
|
|
1166
1175
|
// style={{ width: '20vw' }}
|
|
1167
1176
|
breakpoints: { '1199px': '30rem', '550px': '85vw' }, children: [_jsx(Divider, { className: "m-0" }), _jsxs("div", { className: "p-4", children: [_jsx("p", { className: "m-0 solid-primary-title", style: { fontSize: 16 }, children: "Are you sure you want to delete the selected records?" }), _jsxs("div", { className: "flex align-items-center gap-2 mt-3", children: [_jsx(Button, { label: "Delete", severity: "danger", size: "small", autoFocus: true, onClick: deleteBulk }), _jsx(Button, { label: "Cancel", size: "small", onClick: onDeleteClose, outlined: true, className: 'bg-primary-reverse' })] })] })] }), _jsx(Dialog, { visible: isRecoverDialogVisible, header: "Confirm Recover", modal: true, className: "solid-confirm-dialog", footer: function () { return (_jsxs("div", { className: "flex justify-content-center", children: [_jsx(Button, { label: "Yes", icon: "pi pi-check", severity: "danger", autoFocus: true, onClick: recoverAll }), _jsx(Button, { label: "No", icon: "pi pi-times", onClick: function () { return setRecoverDialogVisible(false); } })] })); }, onHide: function () { return setRecoverDialogVisible(false); }, children: _jsx("p", { children: "Are you sure you want to recover all records?" }) })] }));
|