@solidxai/core-ui 0.1.12-beta.7 → 0.1.12-beta.8
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/auth/AuthLayout.d.ts.map +1 -1
- package/dist/components/auth/AuthLayout.js +19 -17
- package/dist/components/auth/AuthLayout.js.map +1 -1
- package/dist/components/auth/AuthLayout.tsx +59 -34
- package/dist/components/common/BackendReconnectIndicator.d.ts +6 -0
- package/dist/components/common/BackendReconnectIndicator.d.ts.map +1 -0
- package/dist/components/common/BackendReconnectIndicator.js +25 -0
- package/dist/components/common/BackendReconnectIndicator.js.map +1 -0
- package/dist/components/common/BackendReconnectIndicator.tsx +45 -0
- package/dist/components/common/SettingsComponent.d.ts.map +1 -1
- package/dist/components/common/SettingsComponent.js +7 -3
- package/dist/components/common/SettingsComponent.js.map +1 -1
- package/dist/components/common/SettingsComponent.module.css +144 -12
- package/dist/components/common/SettingsComponent.tsx +22 -3
- package/dist/components/common/SolidAdmin.d.ts.map +1 -1
- package/dist/components/common/SolidAdmin.js +7 -2
- package/dist/components/common/SolidAdmin.js.map +1 -1
- package/dist/components/common/SolidAdmin.tsx +7 -2
- package/dist/components/common/SolidBreadcrumb.d.ts.map +1 -1
- package/dist/components/common/SolidBreadcrumb.js +1 -6
- package/dist/components/common/SolidBreadcrumb.js.map +1 -1
- package/dist/components/common/SolidBreadcrumb.tsx +1 -8
- package/dist/components/common/SolidMaterialSymbol.d.ts +10 -0
- package/dist/components/common/SolidMaterialSymbol.d.ts.map +1 -0
- package/dist/components/common/SolidMaterialSymbol.js +69 -0
- package/dist/components/common/SolidMaterialSymbol.js.map +1 -0
- package/dist/components/common/SolidMaterialSymbol.tsx +96 -0
- package/dist/components/common/SolidToastProvider.d.ts.map +1 -1
- package/dist/components/common/SolidToastProvider.js +14 -1
- package/dist/components/common/SolidToastProvider.js.map +1 -1
- package/dist/components/common/SolidToastProvider.tsx +19 -1
- package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.module.css +3 -1
- package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.js +3 -2
- package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.tsx +14 -18
- package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.d.ts.map +1 -1
- package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.js +43 -16
- package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.js.map +1 -1
- package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.tsx +24 -2
- package/dist/components/core/form/SolidFormFooter.js +1 -1
- package/dist/components/core/form/SolidFormFooter.js.map +1 -1
- package/dist/components/core/form/SolidFormFooter.tsx +1 -1
- package/dist/components/core/form/SolidFormLayouts.js +1 -1
- package/dist/components/core/form/SolidFormLayouts.js.map +1 -1
- package/dist/components/core/form/SolidFormLayouts.tsx +2 -2
- package/dist/components/core/form/fields/SolidMediaMultipleField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidMediaMultipleField.js +120 -56
- package/dist/components/core/form/fields/SolidMediaMultipleField.js.map +1 -1
- package/dist/components/core/form/fields/SolidMediaMultipleField.tsx +63 -50
- package/dist/components/core/form/fields/SolidMediaSingleField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidMediaSingleField.js +115 -37
- package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
- package/dist/components/core/form/fields/SolidMediaSingleField.tsx +36 -35
- package/dist/components/core/form/fields/SolidRichTextField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidRichTextField.js +67 -4
- package/dist/components/core/form/fields/SolidRichTextField.js.map +1 -1
- package/dist/components/core/form/fields/SolidRichTextField.tsx +89 -7
- package/dist/components/core/form/fields/mediaFieldUtils.d.ts +3 -0
- package/dist/components/core/form/fields/mediaFieldUtils.d.ts.map +1 -0
- package/dist/components/core/form/fields/mediaFieldUtils.js +30 -0
- package/dist/components/core/form/fields/mediaFieldUtils.js.map +1 -0
- package/dist/components/core/form/fields/mediaFieldUtils.ts +45 -0
- package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js +1 -1
- package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js.map +1 -1
- package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.tsx +3 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +22 -23
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +13 -7
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.d.ts.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js +16 -11
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.tsx +32 -18
- package/dist/components/core/form/fields/widgets/SolidIconViewWidget.d.ts.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidIconViewWidget.js +3 -1
- package/dist/components/core/form/fields/widgets/SolidIconViewWidget.js.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidIconViewWidget.tsx +11 -5
- package/dist/components/core/list/SolidDataTable.d.ts.map +1 -1
- package/dist/components/core/list/SolidDataTable.js +3 -2
- package/dist/components/core/list/SolidDataTable.js.map +1 -1
- package/dist/components/core/list/SolidDataTable.tsx +3 -2
- package/dist/components/core/list/SolidListView.d.ts.map +1 -1
- package/dist/components/core/list/SolidListView.js +11 -5
- package/dist/components/core/list/SolidListView.js.map +1 -1
- package/dist/components/core/list/SolidListView.tsx +15 -8
- package/dist/components/core/list/SolidListViewColumn.d.ts.map +1 -1
- package/dist/components/core/list/SolidListViewColumn.js +1 -0
- package/dist/components/core/list/SolidListViewColumn.js.map +1 -1
- package/dist/components/core/list/SolidListViewColumn.tsx +1 -0
- package/dist/components/core/list/columns/SolidShortTextColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidShortTextColumn.js +7 -2
- package/dist/components/core/list/columns/SolidShortTextColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidShortTextColumn.tsx +7 -2
- package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.js +4 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.js.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.tsx +5 -2
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js +2 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx +2 -1
- package/dist/components/core/list/columns/relations/SolidRelationOneToManyColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationOneToManyColumn.js +4 -1
- package/dist/components/core/list/columns/relations/SolidRelationOneToManyColumn.js.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationOneToManyColumn.tsx +5 -2
- package/dist/components/core/locales/SolidLocale.d.ts.map +1 -1
- package/dist/components/core/locales/SolidLocale.js +1 -1
- package/dist/components/core/locales/SolidLocale.js.map +1 -1
- package/dist/components/core/locales/SolidLocale.tsx +1 -0
- package/dist/components/core/model/CreateModel.css +26 -0
- package/dist/components/core/model/FieldMetaData.d.ts.map +1 -1
- package/dist/components/core/model/FieldMetaData.js +21 -3
- package/dist/components/core/model/FieldMetaData.js.map +1 -1
- package/dist/components/core/model/FieldMetaData.tsx +45 -4
- package/dist/components/core/model/FieldMetaDataForm.css +82 -0
- package/dist/components/core/model/FieldMetaDataForm.d.ts +1 -0
- package/dist/components/core/model/FieldMetaDataForm.d.ts.map +1 -1
- package/dist/components/core/model/FieldMetaDataForm.js +246 -235
- package/dist/components/core/model/FieldMetaDataForm.js.map +1 -1
- package/dist/components/core/model/FieldMetaDataForm.tsx +46 -34
- package/dist/components/core/model/FieldSelector.js +1 -1
- package/dist/components/core/model/FieldSelector.js.map +1 -1
- package/dist/components/core/model/FieldSelector.tsx +1 -1
- package/dist/components/core/model/ModelMetaData.js +1 -1
- package/dist/components/core/model/ModelMetaData.js.map +1 -1
- package/dist/components/core/model/ModelMetaData.tsx +1 -1
- package/dist/components/core/module/CreateModule.css +55 -2
- package/dist/components/core/module/CreateModule.d.ts.map +1 -1
- package/dist/components/core/module/CreateModule.js +2 -2
- package/dist/components/core/module/CreateModule.js.map +1 -1
- package/dist/components/core/module/CreateModule.tsx +3 -2
- package/dist/components/core/module/ModuleMetadataExplorer.css +27 -0
- package/dist/components/core/module/ModuleMetadataExplorer.d.ts.map +1 -1
- package/dist/components/core/module/ModuleMetadataExplorer.js +1 -1
- package/dist/components/core/module/ModuleMetadataExplorer.js.map +1 -1
- package/dist/components/core/module/ModuleMetadataExplorer.tsx +1 -0
- package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
- package/dist/components/core/tree/SolidTreeView.js +6 -1
- package/dist/components/core/tree/SolidTreeView.js.map +1 -1
- package/dist/components/core/tree/SolidTreeView.tsx +7 -1
- package/dist/components/layout/AdminHeaderActions.d.ts.map +1 -1
- package/dist/components/layout/AdminHeaderActions.js +10 -9
- package/dist/components/layout/AdminHeaderActions.js.map +1 -1
- package/dist/components/layout/AdminHeaderActions.tsx +2 -0
- package/dist/components/layout/AppSidebar.d.ts.map +1 -1
- package/dist/components/layout/AppSidebar.js +2 -1
- package/dist/components/layout/AppSidebar.js.map +1 -1
- package/dist/components/layout/AppSidebar.tsx +12 -5
- package/dist/components/layout/SolidMenuItemIcon.d.ts +9 -0
- package/dist/components/layout/SolidMenuItemIcon.d.ts.map +1 -0
- package/dist/components/layout/SolidMenuItemIcon.js +20 -0
- package/dist/components/layout/SolidMenuItemIcon.js.map +1 -0
- package/dist/components/layout/SolidMenuItemIcon.tsx +45 -0
- package/dist/components/layout/navbar-two-menu.d.ts.map +1 -1
- package/dist/components/layout/navbar-two-menu.js +6 -7
- package/dist/components/layout/navbar-two-menu.js.map +1 -1
- package/dist/components/layout/navbar-two-menu.tsx +4 -12
- package/dist/components/shad-cn-ui/SolidCodeEditor.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidCodeEditor.js +30 -2
- package/dist/components/shad-cn-ui/SolidCodeEditor.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidCodeEditor.tsx +38 -1
- package/dist/helpers/backendHealthMonitor.d.ts +39 -0
- package/dist/helpers/backendHealthMonitor.d.ts.map +1 -0
- package/dist/helpers/backendHealthMonitor.js +255 -0
- package/dist/helpers/backendHealthMonitor.js.map +1 -0
- package/dist/helpers/backendHealthMonitor.ts +177 -0
- package/dist/helpers/helpers.d.ts +1 -0
- package/dist/helpers/helpers.d.ts.map +1 -1
- package/dist/helpers/helpers.js +9 -0
- package/dist/helpers/helpers.js.map +1 -1
- package/dist/helpers/helpers.ts +11 -1
- package/dist/helpers/menuItemIcons.d.ts +34 -0
- package/dist/helpers/menuItemIcons.d.ts.map +1 -0
- package/dist/helpers/menuItemIcons.js +144 -0
- package/dist/helpers/menuItemIcons.js.map +1 -0
- package/dist/helpers/menuItemIcons.ts +191 -0
- package/dist/helpers/relationDisplay.d.ts +3 -0
- package/dist/helpers/relationDisplay.d.ts.map +1 -0
- package/dist/helpers/relationDisplay.js +92 -0
- package/dist/helpers/relationDisplay.js.map +1 -0
- package/dist/helpers/relationDisplay.ts +101 -0
- package/dist/helpers/settingsPayload.d.ts +1 -0
- package/dist/helpers/settingsPayload.d.ts.map +1 -1
- package/dist/helpers/settingsPayload.js.map +1 -1
- package/dist/helpers/settingsPayload.ts +1 -0
- package/dist/helpers/solidIcons.d.ts +2 -0
- package/dist/helpers/solidIcons.d.ts.map +1 -1
- package/dist/helpers/solidIcons.js +8 -0
- package/dist/helpers/solidIcons.js.map +1 -1
- package/dist/helpers/solidIcons.tsx +10 -1
- package/dist/helpers/waitForBackendAvailability.d.ts +1 -0
- package/dist/helpers/waitForBackendAvailability.d.ts.map +1 -1
- package/dist/helpers/waitForBackendAvailability.js +35 -22
- package/dist/helpers/waitForBackendAvailability.js.map +1 -1
- package/dist/helpers/waitForBackendAvailability.ts +18 -12
- package/dist/http/solidHttp.d.ts.map +1 -1
- package/dist/http/solidHttp.js +10 -4
- package/dist/http/solidHttp.js.map +1 -1
- package/dist/http/solidHttp.ts +9 -4
- package/dist/redux/api/datasourceIntrospectionApi.d.ts +4 -0
- package/dist/redux/api/datasourceIntrospectionApi.d.ts.map +1 -1
- package/dist/redux/api/datasourceIntrospectionApi.js.map +1 -1
- package/dist/redux/api/datasourceIntrospectionApi.ts +4 -0
- package/dist/redux/api/fetchBaseQuery.d.ts.map +1 -1
- package/dist/redux/api/fetchBaseQuery.js +9 -3
- package/dist/redux/api/fetchBaseQuery.js.map +1 -1
- package/dist/redux/api/fetchBaseQuery.tsx +9 -3
- package/dist/redux/store/StoreProvider.d.ts.map +1 -1
- package/dist/redux/store/StoreProvider.js +4 -3
- package/dist/redux/store/StoreProvider.js.map +1 -1
- package/dist/redux/store/StoreProvider.tsx +4 -3
- package/dist/resources/globals.css +341 -49
- package/dist/resources/solid-custom.css +410 -12
- package/dist/resources/solid-responsive.css +27 -16
- package/dist/resources/solid-tailwind-generated.css +1 -1
- package/dist/routes/AppEventListener.d.ts.map +1 -1
- package/dist/routes/AppEventListener.js +23 -0
- package/dist/routes/AppEventListener.js.map +1 -1
- package/dist/routes/AppEventListener.tsx +29 -0
- package/dist/routes/pages/admin/core/DashboardPage.module.css +12 -0
- package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.css +306 -3
- package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.d.ts.map +1 -1
- package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.js +745 -393
- package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.js.map +1 -1
- package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.tsx +1074 -420
- package/dist/routes/pages/admin/core/DatasourcesPage.css +15 -0
- package/dist/routes/pages/admin/core/DatasourcesPage.d.ts.map +1 -1
- package/dist/routes/pages/admin/core/DatasourcesPage.js +7 -188
- package/dist/routes/pages/admin/core/DatasourcesPage.js.map +1 -1
- package/dist/routes/pages/admin/core/DatasourcesPage.tsx +3 -393
- package/package.json +1 -1
|
@@ -242,9 +242,6 @@ export const SolidListView = forwardRef<SolidListViewHandle, SolidListViewParams
|
|
|
242
242
|
const localeName = searchParams.get("locale");
|
|
243
243
|
const { data: solidSettingsData } = useGetSolidSettingsQuery(undefined);
|
|
244
244
|
const solidSettingsMap = useMemo(() => getSettingsMap(solidSettingsData), [solidSettingsData]);
|
|
245
|
-
const rowClickFormMode = solidSettingsMap?.rowClickAction === "view" ? "view" : "edit";
|
|
246
|
-
|
|
247
|
-
|
|
248
245
|
const [solidListViewMetaData, setSolidListViewMetaData] = useState<any>(null);
|
|
249
246
|
const [solidListViewLayout, setSolidListViewLayout] = useState<any>(null);
|
|
250
247
|
const [isDraftPublishWorkflowEnabled, setIsDraftPublishWorkflowEnabled] = useState(false);
|
|
@@ -304,6 +301,15 @@ export const SolidListView = forwardRef<SolidListViewHandle, SolidListViewParams
|
|
|
304
301
|
() => normalizeSolidListTreeKanbanActionPath(pathname, editButtonUrl || "form"),
|
|
305
302
|
[editButtonUrl, pathname]
|
|
306
303
|
);
|
|
304
|
+
const rowClickFormMode = useMemo(() => {
|
|
305
|
+
const isSystemModule = solidListViewMetaData?.data?.solidView?.module?.isSystem === true;
|
|
306
|
+
|
|
307
|
+
if (isSystemModule) {
|
|
308
|
+
return "view";
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
return solidSettingsMap?.rowClickAction === "view" ? "view" : "edit";
|
|
312
|
+
}, [solidListViewMetaData, solidSettingsMap]);
|
|
307
313
|
|
|
308
314
|
const resolveLocaleFromFilter = (filterNode: any): string | null => {
|
|
309
315
|
if (!filterNode || typeof filterNode !== "object") return null;
|
|
@@ -1437,6 +1443,7 @@ export const SolidListView = forwardRef<SolidListViewHandle, SolidListViewParams
|
|
|
1437
1443
|
|
|
1438
1444
|
const hasAnyContextMenuActions =
|
|
1439
1445
|
hasEditInContextMenu || hasDeleteInContextMenu || hasCustomContextMenuButtons;
|
|
1446
|
+
const isEmbeddedList = params.embeded === true;
|
|
1440
1447
|
|
|
1441
1448
|
// const toggleBothSidebars = () => {
|
|
1442
1449
|
// if (visibleNavbar) {
|
|
@@ -1446,9 +1453,9 @@ export const SolidListView = forwardRef<SolidListViewHandle, SolidListViewParams
|
|
|
1446
1453
|
// }
|
|
1447
1454
|
// };
|
|
1448
1455
|
return (
|
|
1449
|
-
<div className=
|
|
1450
|
-
<div className={`solid-list-content
|
|
1451
|
-
<div className=
|
|
1456
|
+
<div className={`page-parent-wrapper ${isEmbeddedList ? "solid-list-page-wrapper-embedded" : "solid-list-page-wrapper"} flex ${isEmbeddedList ? "min-h-0 overflow-visible" : "h-full min-h-0 overflow-hidden"}`}>
|
|
1457
|
+
<div className={`solid-list-content flex flex-col ${isEmbeddedList ? "min-h-0" : "flex-grow-1"} ${styles.ListContentWrapper}`}>
|
|
1458
|
+
<div className={`solid-list-surface flex flex-col min-h-0 ${isEmbeddedList ? "" : "flex-1"}`}>
|
|
1452
1459
|
{solidListViewInitialMetaData &&
|
|
1453
1460
|
<div className="page-header solid-list-toolbar flex-col lg:flex-row">
|
|
1454
1461
|
{/* <div> */}
|
|
@@ -1629,11 +1636,11 @@ export const SolidListView = forwardRef<SolidListViewHandle, SolidListViewParams
|
|
|
1629
1636
|
|
|
1630
1637
|
) : (
|
|
1631
1638
|
<div
|
|
1632
|
-
className={`solid-datatable-wrapper solid-list-table-area
|
|
1639
|
+
className={`solid-datatable-wrapper solid-list-table-area min-h-0 ${isEmbeddedList ? "overflow-visible" : "flex-1 overflow-hidden"} ${styles.listTableArea}`}
|
|
1633
1640
|
>
|
|
1634
1641
|
<DataTable
|
|
1635
1642
|
value={listViewData}
|
|
1636
|
-
|
|
1643
|
+
viewportHeight={isEmbeddedList ? "auto" : undefined}
|
|
1637
1644
|
rowClassName={(rowData) => {
|
|
1638
1645
|
return rowData.deletedAt ? "greyed-out-row" : "";
|
|
1639
1646
|
}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidListViewColumn.d.ts","sourceRoot":"","sources":["../../../../src/components/core/list/SolidListViewColumn.tsx"],"names":[],"mappings":"AAqBA,MAAM,MAAM,yBAAyB,GAAG;IACpC,qBAAqB,EAAE,GAAG,CAAC;IAC3B,aAAa,EAAE,GAAG,CAAC;IACnB,MAAM,EAAE,GAAG,CAAC;IACZ,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,eAAe,kBAAmB,GAAG,KAAG,OAMpD,CAAC;AAEF,eAAO,MAAM,iBAAiB,cAAe,GAAG,KAAG,MAAM,GAAG,IAyB3D,CAAA;AAoBD,eAAO,MAAM,mBAAmB,gGAAiG,yBAAyB,
|
|
1
|
+
{"version":3,"file":"SolidListViewColumn.d.ts","sourceRoot":"","sources":["../../../../src/components/core/list/SolidListViewColumn.tsx"],"names":[],"mappings":"AAqBA,MAAM,MAAM,yBAAyB,GAAG;IACpC,qBAAqB,EAAE,GAAG,CAAC;IAC3B,aAAa,EAAE,GAAG,CAAC;IACnB,MAAM,EAAE,GAAG,CAAC;IACZ,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,eAAe,kBAAmB,GAAG,KAAG,OAMpD,CAAC;AAEF,eAAO,MAAM,iBAAiB,cAAe,GAAG,KAAG,MAAM,GAAG,IAyB3D,CAAA;AAoBD,eAAO,MAAM,mBAAmB,gGAAiG,yBAAyB,wDA+FzJ,CAAC"}
|
|
@@ -147,6 +147,7 @@ export var SolidListViewColumn = function (_a) {
|
|
|
147
147
|
if (fieldMetadata.type === 'uuid') {
|
|
148
148
|
return SolidUuidColumn({ solidListViewMetaData: solidListViewMetaData, fieldMetadata: fieldMetadata, column: column });
|
|
149
149
|
}
|
|
150
|
+
return SolidShortTextColumn({ solidListViewMetaData: solidListViewMetaData, fieldMetadata: fieldMetadata, column: column, setLightboxUrls: setLightboxUrls, setOpenLightbox: setOpenLightbox });
|
|
150
151
|
// // Load everything else based on type and dynamically.
|
|
151
152
|
// else {
|
|
152
153
|
// const ComponentFound = await loadComponentByType(fieldMetadata.type);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidListViewColumn.js","sourceRoot":"","sources":["../../../../src/components/core/list/SolidListViewColumn.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport SolidBigintColumn from \"./columns/SolidBigintColumn\";\nimport SolidBooleanColumn from \"./columns/SolidBooleanColumn\";\nimport SolidComputedColumn from \"./columns/SolidComputedColumn\";\nimport SolidDateColumn from \"./columns/SolidDateColumn\";\nimport SolidDatetimeColumn from \"./columns/SolidDatetimeColumn\";\nimport SolidDecimalColumn from \"./columns/SolidDecimalColumn\";\nimport SolidExternalIdColumn from \"./columns/SolidExternalIdColumn\";\nimport SolidFloatColumn from \"./columns/SolidFloatColumn\";\nimport SolidIntColumn from \"./columns/SolidIntColumn\";\nimport SolidLongTextColumn from \"./columns/SolidLongTextColumn\";\nimport SolidMediaMultipleColumn from \"./columns/SolidMediaMultipleColumn\";\nimport SolidMediaSingleColumn from \"./columns/SolidMediaSingleColumn\";\nimport SolidRelationColumn from \"./columns/SolidRelationColumn\";\nimport SolidRichTextColumn from \"./columns/SolidRichTextColumn\";\nimport SolidSelectionDynamicColumn from \"./columns/SolidSelectionDynamicColumn\";\nimport SolidSelectionStaticColumn from \"./columns/SolidSelectionStaticColumn\";\nimport SolidShortTextColumn from \"./columns/SolidShortTextColumn\";\nimport SolidTimeColumn from \"./columns/SolidTimeColumn\";\nimport SolidUuidColumn from \"./columns/SolidUuidColumn\";\n\nexport type SolidListViewColumnParams = {\n solidListViewMetaData: any;\n fieldMetadata: any,\n column: any,\n setLightboxUrls?: any,\n setOpenLightbox?: any,\n embeded?: boolean; \n};\n\nexport const isFieldSortable = (fieldMetadata: any): boolean => {\n if (!fieldMetadata) return false;\n const type = fieldMetadata.type;\n if (type === 'mediaSingle' || type === 'mediaMultiple') return false;\n if (type === 'relation') return fieldMetadata.relationType === 'many-to-one';\n return true;\n};\n\nexport const getNumberOfInputs = (matchMode: any): number | null => {\n if (matchMode.label && matchMode.label === 'Not In') {\n matchMode = 'notIn';\n }\n\n switch (matchMode) {\n case 'between':\n return 2;\n case 'in':\n case 'notIn':\n return null;\n case 'startsWith':\n case 'contains':\n case 'notContains':\n case 'endsWith':\n case 'equals':\n case 'notEquals':\n case 'lt':\n case 'lte':\n case 'gt':\n case 'gte':\n return 1;\n default:\n return 1; // Default to single input if no specific match is found\n }\n}\n\n// // @ts-ignore\n// const components = require.context('./columns', false, /Solid.*Column\\.tsx$/);\n\n// // Define a function to dynamically load components based on type\n// const loadComponentByType = async (type: string) => {\n// try {\n// const componentName = `./columns/Solid${type.charAt(0).toUpperCase() + type.slice(1)}Column.tsx`;\n\n// // Dynamically import the component based on type\n// const componentModule = await import(componentName);\n\n// return componentModule.default;\n// } catch (error) {\n// console.error(`Failed to load component for type: ${type}`, error);\n// return null;\n// }\n// };\n\nexport const SolidListViewColumn = ({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox, embeded }: SolidListViewColumnParams) => {\n\n if (!isFieldSortable(fieldMetadata) && column?.attrs?.sortable) {\n column = { ...column, attrs: { ...column.attrs, sortable: false } };\n }\n\n // And finally we can implement additional switching logic based on certain special fields. \n if (fieldMetadata.name === 'id') {\n return SolidIntColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n\n if (fieldMetadata.type === 'int') {\n return SolidIntColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'bigint') {\n return SolidBigintColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'float') {\n return SolidFloatColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'decimal') {\n return SolidDecimalColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'shortText') {\n return SolidShortTextColumn({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox });\n }\n if (fieldMetadata.type === 'longText') {\n return SolidLongTextColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'richText') {\n return SolidRichTextColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'email') {\n return SolidShortTextColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'boolean') {\n return SolidBooleanColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'date') {\n return SolidDateColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'datetime') {\n return SolidDatetimeColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'time') {\n return SolidTimeColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'relation') {\n return SolidRelationColumn({ solidListViewMetaData, fieldMetadata, column, embeded });\n }\n if (fieldMetadata.type === 'mediaSingle') {\n return SolidMediaSingleColumn({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox });\n }\n if (fieldMetadata.type === 'mediaMultiple') {\n return SolidMediaMultipleColumn({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox });\n }\n if (fieldMetadata.type === 'selectionStatic') {\n return SolidSelectionStaticColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'selectionDynamic') {\n return SolidSelectionDynamicColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'computed') {\n return SolidComputedColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'externalId') {\n return SolidExternalIdColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'uuid') {\n return SolidUuidColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n // // Load everything else based on type and dynamically.\n // else {\n // const ComponentFound = await loadComponentByType(fieldMetadata.type);\n // const ComponentNotFound = ({ solidListViewMetaData, fieldMetadata, column }: SolidListViewColumnParams) => (\n // <Column\n // key={fieldMetadata.name}\n // field={fieldMetadata.name}\n // header={fieldMetadata.displayName}\n // className=\"text-sm\"\n // sortable={false}\n // filter={false}\n // showFilterOperator={false}\n // body={() => (<span>Type not supported</span>)}\n // style={{ minWidth: \"12rem\" }}\n // headerClassName=\"table-header-fs\"\n // ></Column>\n // );\n\n // return ComponentFound ? ComponentFound({ solidListViewMetaData, fieldMetadata, column }) : ComponentNotFound({ solidListViewMetaData, fieldMetadata, column });\n // }\n\n // TODO: we can implement additional switching logic based on the widget type being used to render the list view column.\n\n};\n"]}
|
|
1
|
+
{"version":3,"file":"SolidListViewColumn.js","sourceRoot":"","sources":["../../../../src/components/core/list/SolidListViewColumn.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport SolidBigintColumn from \"./columns/SolidBigintColumn\";\nimport SolidBooleanColumn from \"./columns/SolidBooleanColumn\";\nimport SolidComputedColumn from \"./columns/SolidComputedColumn\";\nimport SolidDateColumn from \"./columns/SolidDateColumn\";\nimport SolidDatetimeColumn from \"./columns/SolidDatetimeColumn\";\nimport SolidDecimalColumn from \"./columns/SolidDecimalColumn\";\nimport SolidExternalIdColumn from \"./columns/SolidExternalIdColumn\";\nimport SolidFloatColumn from \"./columns/SolidFloatColumn\";\nimport SolidIntColumn from \"./columns/SolidIntColumn\";\nimport SolidLongTextColumn from \"./columns/SolidLongTextColumn\";\nimport SolidMediaMultipleColumn from \"./columns/SolidMediaMultipleColumn\";\nimport SolidMediaSingleColumn from \"./columns/SolidMediaSingleColumn\";\nimport SolidRelationColumn from \"./columns/SolidRelationColumn\";\nimport SolidRichTextColumn from \"./columns/SolidRichTextColumn\";\nimport SolidSelectionDynamicColumn from \"./columns/SolidSelectionDynamicColumn\";\nimport SolidSelectionStaticColumn from \"./columns/SolidSelectionStaticColumn\";\nimport SolidShortTextColumn from \"./columns/SolidShortTextColumn\";\nimport SolidTimeColumn from \"./columns/SolidTimeColumn\";\nimport SolidUuidColumn from \"./columns/SolidUuidColumn\";\n\nexport type SolidListViewColumnParams = {\n solidListViewMetaData: any;\n fieldMetadata: any,\n column: any,\n setLightboxUrls?: any,\n setOpenLightbox?: any,\n embeded?: boolean; \n};\n\nexport const isFieldSortable = (fieldMetadata: any): boolean => {\n if (!fieldMetadata) return false;\n const type = fieldMetadata.type;\n if (type === 'mediaSingle' || type === 'mediaMultiple') return false;\n if (type === 'relation') return fieldMetadata.relationType === 'many-to-one';\n return true;\n};\n\nexport const getNumberOfInputs = (matchMode: any): number | null => {\n if (matchMode.label && matchMode.label === 'Not In') {\n matchMode = 'notIn';\n }\n\n switch (matchMode) {\n case 'between':\n return 2;\n case 'in':\n case 'notIn':\n return null;\n case 'startsWith':\n case 'contains':\n case 'notContains':\n case 'endsWith':\n case 'equals':\n case 'notEquals':\n case 'lt':\n case 'lte':\n case 'gt':\n case 'gte':\n return 1;\n default:\n return 1; // Default to single input if no specific match is found\n }\n}\n\n// // @ts-ignore\n// const components = require.context('./columns', false, /Solid.*Column\\.tsx$/);\n\n// // Define a function to dynamically load components based on type\n// const loadComponentByType = async (type: string) => {\n// try {\n// const componentName = `./columns/Solid${type.charAt(0).toUpperCase() + type.slice(1)}Column.tsx`;\n\n// // Dynamically import the component based on type\n// const componentModule = await import(componentName);\n\n// return componentModule.default;\n// } catch (error) {\n// console.error(`Failed to load component for type: ${type}`, error);\n// return null;\n// }\n// };\n\nexport const SolidListViewColumn = ({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox, embeded }: SolidListViewColumnParams) => {\n\n if (!isFieldSortable(fieldMetadata) && column?.attrs?.sortable) {\n column = { ...column, attrs: { ...column.attrs, sortable: false } };\n }\n\n // And finally we can implement additional switching logic based on certain special fields. \n if (fieldMetadata.name === 'id') {\n return SolidIntColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n\n if (fieldMetadata.type === 'int') {\n return SolidIntColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'bigint') {\n return SolidBigintColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'float') {\n return SolidFloatColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'decimal') {\n return SolidDecimalColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'shortText') {\n return SolidShortTextColumn({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox });\n }\n if (fieldMetadata.type === 'longText') {\n return SolidLongTextColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'richText') {\n return SolidRichTextColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'email') {\n return SolidShortTextColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'boolean') {\n return SolidBooleanColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'date') {\n return SolidDateColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'datetime') {\n return SolidDatetimeColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'time') {\n return SolidTimeColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'relation') {\n return SolidRelationColumn({ solidListViewMetaData, fieldMetadata, column, embeded });\n }\n if (fieldMetadata.type === 'mediaSingle') {\n return SolidMediaSingleColumn({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox });\n }\n if (fieldMetadata.type === 'mediaMultiple') {\n return SolidMediaMultipleColumn({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox });\n }\n if (fieldMetadata.type === 'selectionStatic') {\n return SolidSelectionStaticColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'selectionDynamic') {\n return SolidSelectionDynamicColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'computed') {\n return SolidComputedColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'externalId') {\n return SolidExternalIdColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n if (fieldMetadata.type === 'uuid') {\n return SolidUuidColumn({ solidListViewMetaData, fieldMetadata, column });\n }\n return SolidShortTextColumn({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox });\n // // Load everything else based on type and dynamically.\n // else {\n // const ComponentFound = await loadComponentByType(fieldMetadata.type);\n // const ComponentNotFound = ({ solidListViewMetaData, fieldMetadata, column }: SolidListViewColumnParams) => (\n // <Column\n // key={fieldMetadata.name}\n // field={fieldMetadata.name}\n // header={fieldMetadata.displayName}\n // className=\"text-sm\"\n // sortable={false}\n // filter={false}\n // showFilterOperator={false}\n // body={() => (<span>Type not supported</span>)}\n // style={{ minWidth: \"12rem\" }}\n // headerClassName=\"table-header-fs\"\n // ></Column>\n // );\n\n // return ComponentFound ? ComponentFound({ solidListViewMetaData, fieldMetadata, column }) : ComponentNotFound({ solidListViewMetaData, fieldMetadata, column });\n // }\n\n // TODO: we can implement additional switching logic based on the widget type being used to render the list view column.\n\n};\n"]}
|
|
@@ -152,6 +152,7 @@ export const SolidListViewColumn = ({ solidListViewMetaData, fieldMetadata, colu
|
|
|
152
152
|
if (fieldMetadata.type === 'uuid') {
|
|
153
153
|
return SolidUuidColumn({ solidListViewMetaData, fieldMetadata, column });
|
|
154
154
|
}
|
|
155
|
+
return SolidShortTextColumn({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox });
|
|
155
156
|
// // Load everything else based on type and dynamically.
|
|
156
157
|
// else {
|
|
157
158
|
// const ComponentFound = await loadComponentByType(fieldMetadata.type);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidShortTextColumn.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/list/columns/SolidShortTextColumn.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"SolidShortTextColumn.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/list/columns/SolidShortTextColumn.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAInE,OAAO,EAAE,yBAAyB,EAAkC,MAAM,8BAA8B,CAAC;AAEzG,QAAA,MAAM,oBAAoB,uFAAwF,yBAAyB,4CAwC1I,CAAC;AAEF,eAAe,oBAAoB,CAAC;AAIpC,eAAO,MAAM,qBAAqB,8DAA+D,yBAAyB,4CA2BzH,CAAC"}
|
|
@@ -13,6 +13,7 @@ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
|
13
13
|
import { Column } from "../SolidDataTable";
|
|
14
14
|
import SolidTableRowCell from '../SolidTableRowCell';
|
|
15
15
|
import { getExtensionComponent } from '../../../../helpers/registry';
|
|
16
|
+
import { getRelationDisplayText } from '../../../../helpers/relationDisplay';
|
|
16
17
|
var SolidShortTextColumn = function (_a) {
|
|
17
18
|
var _b, _c, _d, _e, _f;
|
|
18
19
|
var solidListViewMetaData = _a.solidListViewMetaData, fieldMetadata = _a.fieldMetadata, column = _a.column, setLightboxUrls = _a.setLightboxUrls, setOpenLightbox = _a.setOpenLightbox;
|
|
@@ -43,8 +44,9 @@ export var DefaultTextListWidget = function (_a) {
|
|
|
43
44
|
var _b, _c, _d, _e;
|
|
44
45
|
var rowData = _a.rowData, solidListViewMetaData = _a.solidListViewMetaData, fieldMetadata = _a.fieldMetadata, column = _a.column;
|
|
45
46
|
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;
|
|
46
|
-
var
|
|
47
|
-
|
|
47
|
+
var rawValue = rowData[fieldMetadata.name];
|
|
48
|
+
var displayValue = rawValue;
|
|
49
|
+
if ((fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.selectionStaticValues) && typeof displayValue === "string" && displayValue) {
|
|
48
50
|
var mapping_1 = {};
|
|
49
51
|
fieldMetadata.selectionStaticValues.forEach(function (entry) {
|
|
50
52
|
var _a = entry.split(":"), val = _a[0], label = _a[1];
|
|
@@ -53,6 +55,9 @@ export var DefaultTextListWidget = function (_a) {
|
|
|
53
55
|
var values = displayValue.split(",").map(function (v) { return v.trim(); });
|
|
54
56
|
displayValue = values.map(function (v) { return mapping_1[v] || v; }).join(", ");
|
|
55
57
|
}
|
|
58
|
+
else {
|
|
59
|
+
displayValue = getRelationDisplayText(rawValue);
|
|
60
|
+
}
|
|
56
61
|
return (_jsx(SolidTableRowCell, { value: displayValue, truncateAfter: truncateAfter }));
|
|
57
62
|
};
|
|
58
63
|
//# sourceMappingURL=SolidShortTextColumn.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidShortTextColumn.js","sourceRoot":"","sources":["../../../../../src/components/core/list/columns/SolidShortTextColumn.tsx"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,iBAAiB,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"SolidShortTextColumn.js","sourceRoot":"","sources":["../../../../../src/components/core/list/columns/SolidShortTextColumn.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { Column } from \"../SolidDataTable\";\nimport { SolidListViewColumnParams } from '../SolidListViewColumn';\nimport SolidTableRowCell from '../SolidTableRowCell';\nimport { getExtensionComponent } from '../../../../helpers/registry';\nimport { getRelationDisplayText } from '../../../../helpers/relationDisplay';\nimport { SolidListFieldWidgetProps, SolidMediaListFieldWidgetProps } from '../../../../types/solid-core';\n\nconst SolidShortTextColumn = ({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox }: SolidListViewColumnParams) => {\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 sortable={column.attrs.sortable}\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 const rawValue = rowData[fieldMetadata.name];\n let displayValue = rawValue;\n\n if (fieldMetadata?.selectionStaticValues && typeof displayValue === \"string\" && 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 else {\n displayValue = getRelationDisplayText(rawValue);\n }\n\n return (\n <SolidTableRowCell\n value={displayValue}\n truncateAfter={truncateAfter}\n />\n );\n};\n"]}
|
|
@@ -3,6 +3,7 @@ import { Column } from "../SolidDataTable";
|
|
|
3
3
|
import { SolidListViewColumnParams } from '../SolidListViewColumn';
|
|
4
4
|
import SolidTableRowCell from '../SolidTableRowCell';
|
|
5
5
|
import { getExtensionComponent } from '../../../../helpers/registry';
|
|
6
|
+
import { getRelationDisplayText } from '../../../../helpers/relationDisplay';
|
|
6
7
|
import { SolidListFieldWidgetProps, SolidMediaListFieldWidgetProps } from '../../../../types/solid-core';
|
|
7
8
|
|
|
8
9
|
const SolidShortTextColumn = ({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox }: SolidListViewColumnParams) => {
|
|
@@ -53,9 +54,10 @@ export default SolidShortTextColumn;
|
|
|
53
54
|
|
|
54
55
|
export const DefaultTextListWidget = ({ rowData, solidListViewMetaData, fieldMetadata, column }: SolidListFieldWidgetProps) => {
|
|
55
56
|
const truncateAfter = solidListViewMetaData?.data?.solidView?.layout?.attrs?.truncateAfter;
|
|
56
|
-
|
|
57
|
+
const rawValue = rowData[fieldMetadata.name];
|
|
58
|
+
let displayValue = rawValue;
|
|
57
59
|
|
|
58
|
-
if (fieldMetadata?.selectionStaticValues && displayValue) {
|
|
60
|
+
if (fieldMetadata?.selectionStaticValues && typeof displayValue === "string" && displayValue) {
|
|
59
61
|
const mapping: Record<string, string> = {};
|
|
60
62
|
|
|
61
63
|
fieldMetadata.selectionStaticValues.forEach((entry: string) => {
|
|
@@ -67,6 +69,9 @@ export const DefaultTextListWidget = ({ rowData, solidListViewMetaData, fieldMet
|
|
|
67
69
|
|
|
68
70
|
displayValue = values.map((v: string) => mapping[v] || v).join(", ");
|
|
69
71
|
}
|
|
72
|
+
else {
|
|
73
|
+
displayValue = getRelationDisplayText(rawValue);
|
|
74
|
+
}
|
|
70
75
|
|
|
71
76
|
return (
|
|
72
77
|
<SolidTableRowCell
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidRelationManyToManyColumn.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationManyToManyColumn.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,yDAAyD,CAAC;
|
|
1
|
+
{"version":3,"file":"SolidRelationManyToManyColumn.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationManyToManyColumn.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,yDAAyD,CAAC;AAGpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAG5E,QAAA,MAAM,6BAA6B,qDAAsD,yBAAyB,4CAkCjH,CAAC;AAEF,eAAe,6BAA6B,CAAC;AAG7C,eAAO,MAAM,mCAAmC,8DAA+D,yBAAyB,4CA4BvI,CAAC"}
|
|
@@ -12,6 +12,7 @@ var __assign = (this && this.__assign) || function () {
|
|
|
12
12
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
13
|
import { Column } from "../../SolidDataTable";
|
|
14
14
|
import { getExtensionComponent } from '../../../../../helpers/registry';
|
|
15
|
+
import { getRelatedRecordDisplayText } from '../../../../../helpers/relationDisplay';
|
|
15
16
|
var SolidRelationManyToManyColumn = function (_a) {
|
|
16
17
|
var _b;
|
|
17
18
|
var solidListViewMetaData = _a.solidListViewMetaData, fieldMetadata = _a.fieldMetadata, column = _a.column;
|
|
@@ -40,7 +41,9 @@ export var DefaultRelationManyToManyListWidget = function (_a) {
|
|
|
40
41
|
if (manyToManyFieldData) {
|
|
41
42
|
// Since this is a many-to-one field, we fetch the user key field of the associated model.
|
|
42
43
|
var userKeyField_1 = ((_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;
|
|
43
|
-
var manyToManyColVal = manyToManyFieldData
|
|
44
|
+
var manyToManyColVal = manyToManyFieldData
|
|
45
|
+
.map(function (f) { return getRelatedRecordDisplayText(f, userKeyField_1); })
|
|
46
|
+
.filter(Boolean);
|
|
44
47
|
// TODO: change this to use an anchor tag so that on click we open that entity form view.
|
|
45
48
|
return (_jsx(_Fragment, { children: manyToManyColVal.length > 0 &&
|
|
46
49
|
_jsxs("p", { children: [_jsx("span", { style: { backgroundColor: '#f5f5f5', padding: '7px', borderRadius: '4px' }, children: manyToManyColVal[0] }), _jsx("span", { style: { color: "#0895CD", fontWeight: 'bold' }, children: manyToManyColVal.length - 1 > 0 ? " +".concat(manyToManyColVal.length - 1) : "" })] }) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidRelationManyToManyColumn.js","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationManyToManyColumn.tsx"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"SolidRelationManyToManyColumn.js","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationManyToManyColumn.tsx"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AAIrF,IAAM,6BAA6B,GAAG,UAAC,EAA2E;;QAAzE,qBAAqB,2BAAA,EAAE,aAAa,mBAAA,EAAE,MAAM,YAAA;IACjF,IAAM,MAAM,GAAG,MAAA,MAAM,CAAC,KAAK,CAAC,KAAK,mCAAI,aAAa,CAAC,WAAW,CAAC;IAE/D,OAAO,CACH,KAAC,MAAM,IAEH,KAAK,EAAE,aAAa,CAAC,IAAI,EACzB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAC/B,IAAI,EAAE,UAAC,OAAO;YACV,IAAI,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;YACzC,IAAI,CAAC,UAAU,EAAE;gBACb,UAAU,GAAG,qCAAqC,CAAC;aACtD;YACD,IAAI,aAAa,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;YACtD,IAAM,WAAW,GAA8B;gBAC3C,OAAO,SAAA;gBACP,qBAAqB,uBAAA;gBACrB,aAAa,eAAA;gBACb,MAAM,QAAA;aACT,CAAA;YACD,OAAO,CACH,4BACK,aAAa,IAAI,KAAC,aAAa,eAAK,WAAW,EAAI,GACrD,CACN,CAAA;QACL,CAAC,EAED,iBAAiB,EAAE,oBAAa,aAAa,CAAC,WAAW,CAAE,EAC3D,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAC5B,eAAe,EAAC,iBAAiB,IAzB5B,aAAa,CAAC,IAAI,CA0BjB,CACb,CAAC;AAEN,CAAC,CAAC;AAEF,eAAe,6BAA6B,CAAC;AAG7C,MAAM,CAAC,IAAM,mCAAmC,GAAG,UAAC,EAAoF;;QAAlF,OAAO,aAAA,EAAE,qBAAqB,2BAAA,EAAE,aAAa,mBAAA,EAAE,MAAM,YAAA;IACvG,IAAM,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEvD,+DAA+D;IAC/D,IAAI,mBAAmB,EAAE;QACrB,0FAA0F;QAC1F,IAAM,cAAY,GAAG,CAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,0CAAE,qBAAqB,EAAC,CAAC,CAAC,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,0CAAE,qBAAqB,CAAC,CAAC,CAAC,MAAA,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,aAAa,0CAAE,YAAY,0CAAE,IAAI,CAAC;QACpJ,IAAM,gBAAgB,GAAG,mBAAmB;aACvC,GAAG,CAAC,UAAC,CAAM,IAAK,OAAA,2BAA2B,CAAC,CAAC,EAAE,cAAY,CAAC,EAA5C,CAA4C,CAAC;aAC7D,MAAM,CAAC,OAAO,CAAC,CAAC;QAErB,0FAA0F;QAC1F,OAAO,CACH,4BACK,gBAAgB,CAAC,MAAM,GAAG,CAAC;gBACxB,wBAEI,eAAM,KAAK,EAAE,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAG,gBAAgB,CAAC,CAAC,CAAC,GAAQ,EAC9G,eAAM,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,YAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAK,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE,GAAQ,IAExI,GAEV,CACN,CAAA;KACJ;SACI;QACD,OAAO,gBAAa,CAAA;KACvB;AACL,CAAC,CAAC","sourcesContent":["\nimport { Column } from \"../../SolidDataTable\";\nimport { SolidListViewColumnParams } from '../../../../../components/core/list/SolidListViewColumn';\nimport { getExtensionComponent } from '../../../../../helpers/registry';\nimport { getRelatedRecordDisplayText } from '../../../../../helpers/relationDisplay';\nimport { SolidListFieldWidgetProps } from '../../../../../types/solid-core';\n\n\nconst SolidRelationManyToManyColumn = ({ solidListViewMetaData, fieldMetadata, column }: SolidListViewColumnParams) => {\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 sortable={column.attrs.sortable}\n body={(rowData) => {\n let viewWidget = column.attrs.viewWidget;\n if (!viewWidget) {\n viewWidget = 'DefaultRelationManyToManyListWidget';\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 SolidRelationManyToManyColumn;\n\n\nexport const DefaultRelationManyToManyListWidget = ({ rowData, solidListViewMetaData, fieldMetadata, column }: SolidListFieldWidgetProps) => {\n const manyToManyFieldData = rowData[column.attrs.name];\n\n // This is the userkey that will be present within the rowData.\n if (manyToManyFieldData) {\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 const manyToManyColVal = manyToManyFieldData\n .map((f: any) => getRelatedRecordDisplayText(f, userKeyField))\n .filter(Boolean);\n\n // TODO: change this to use an anchor tag so that on click we open that entity form view. \n return (\n <>\n {manyToManyColVal.length > 0 &&\n <p>\n\n <span style={{ backgroundColor: '#f5f5f5', padding: '7px', borderRadius: '4px' }}>{manyToManyColVal[0]}</span>\n <span style={{ color: \"#0895CD\", fontWeight: 'bold' }}>{manyToManyColVal.length - 1 > 0 ? ` +${manyToManyColVal.length - 1}` : \"\"}</span>\n\n </p >\n }\n </>\n )\n }\n else {\n return <span></span>\n }\n};\n"]}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { Column } from "../../SolidDataTable";
|
|
3
3
|
import { SolidListViewColumnParams } from '../../../../../components/core/list/SolidListViewColumn';
|
|
4
4
|
import { getExtensionComponent } from '../../../../../helpers/registry';
|
|
5
|
+
import { getRelatedRecordDisplayText } from '../../../../../helpers/relationDisplay';
|
|
5
6
|
import { SolidListFieldWidgetProps } from '../../../../../types/solid-core';
|
|
6
7
|
|
|
7
8
|
|
|
@@ -51,7 +52,9 @@ export const DefaultRelationManyToManyListWidget = ({ rowData, solidListViewMeta
|
|
|
51
52
|
if (manyToManyFieldData) {
|
|
52
53
|
// Since this is a many-to-one field, we fetch the user key field of the associated model.
|
|
53
54
|
const userKeyField = column?.attrs?.coModelFieldToDisplay ? column?.attrs?.coModelFieldToDisplay : fieldMetadata?.relationModel?.userKeyField?.name;
|
|
54
|
-
const manyToManyColVal = manyToManyFieldData
|
|
55
|
+
const manyToManyColVal = manyToManyFieldData
|
|
56
|
+
.map((f: any) => getRelatedRecordDisplayText(f, userKeyField))
|
|
57
|
+
.filter(Boolean);
|
|
55
58
|
|
|
56
59
|
// TODO: change this to use an anchor tag so that on click we open that entity form view.
|
|
57
60
|
return (
|
|
@@ -70,4 +73,4 @@ export const DefaultRelationManyToManyListWidget = ({ rowData, solidListViewMeta
|
|
|
70
73
|
else {
|
|
71
74
|
return <span></span>
|
|
72
75
|
}
|
|
73
|
-
};
|
|
76
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidRelationManyToOneColumn.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,yDAAyD,CAAC;
|
|
1
|
+
{"version":3,"file":"SolidRelationManyToOneColumn.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,yDAAyD,CAAC;AAIpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAG5E,QAAA,MAAM,4BAA4B,8DAA+D,yBAAyB,4CAqCzH,CAAC;AAEF,eAAe,4BAA4B,CAAC;AAG5C,eAAO,MAAM,kCAAkC,uEAAwE,yBAAyB,4CA+C/I,CAAC"}
|
|
@@ -12,6 +12,7 @@ var __assign = (this && this.__assign) || function () {
|
|
|
12
12
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
13
|
import { Column } from "../../SolidDataTable";
|
|
14
14
|
import { getExtensionComponent } from '../../../../../helpers/registry';
|
|
15
|
+
import { getRelatedRecordDisplayText } from '../../../../../helpers/relationDisplay';
|
|
15
16
|
import { buildAdminRecordFormPath } from '../../../../../helpers/routePaths';
|
|
16
17
|
import { ExternalLink } from "lucide-react";
|
|
17
18
|
var SolidRelationManyToOneColumn = function (_a) {
|
|
@@ -45,7 +46,7 @@ export var DefaultRelationManyToOneListWidget = function (_a) {
|
|
|
45
46
|
if (manyToOneFieldData) {
|
|
46
47
|
// Since this is a many-to-one field, we fetch the user key field of the associated model.
|
|
47
48
|
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;
|
|
48
|
-
var manyToOneColVal = manyToOneFieldData
|
|
49
|
+
var manyToOneColVal = getRelatedRecordDisplayText(manyToOneFieldData, userKeyField);
|
|
49
50
|
var relatedModuleName = (fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.relationModelModuleName) ||
|
|
50
51
|
((_g = (_f = fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.relationModel) === null || _f === void 0 ? void 0 : _f.module) === null || _g === void 0 ? void 0 : _g.name) ||
|
|
51
52
|
((_k = (_j = (_h = solidListViewMetaData === null || solidListViewMetaData === void 0 ? void 0 : solidListViewMetaData.data) === null || _h === void 0 ? void 0 : _h.solidView) === null || _j === void 0 ? void 0 : _j.module) === null || _k === void 0 ? void 0 : _k.name);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidRelationManyToOneColumn.js","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAE7E,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,IAAM,4BAA4B,GAAG,UAAC,EAAoF;;QAAlF,qBAAqB,2BAAA,EAAE,aAAa,mBAAA,EAAE,MAAM,YAAA,EAAE,OAAO,aAAA;IAEzF,IAAM,MAAM,GAAG,MAAA,MAAM,CAAC,KAAK,CAAC,KAAK,mCAAI,aAAa,CAAC,WAAW,CAAC;IAE/D,OAAO,CACH,KAAC,MAAM,IAEH,KAAK,EAAE,aAAa,CAAC,IAAI,EACzB,MAAM,EAAE,MAAM;QACd,sBAAsB;QACtB,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAC/B,IAAI,EAAE,UAAC,OAAO;YACV,IAAI,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;YACzC,IAAI,CAAC,UAAU,EAAE;gBACb,UAAU,GAAG,oCAAoC,CAAC;aACrD;YACD,IAAI,aAAa,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;YACtD,IAAM,WAAW,GAA8B;gBAC3C,OAAO,SAAA;gBACP,qBAAqB,uBAAA;gBACrB,aAAa,eAAA;gBACb,MAAM,QAAA;gBACN,OAAO,SAAA;aACV,CAAA;YACD,OAAO,CACH,4BACK,aAAa,IAAI,KAAC,aAAa,eAAK,WAAW,EAAI,GACrD,CACN,CAAA;QACL,CAAC,EAED,iBAAiB,EAAE,oBAAa,aAAa,CAAC,WAAW,CAAE,EAC3D,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAC5B,eAAe,EAAC,iBAAiB,IA3B5B,aAAa,CAAC,IAAI,CA4BjB,CACb,CAAC;AAEN,CAAC,CAAC;AAEF,eAAe,4BAA4B,CAAC;AAG5C,MAAM,CAAC,IAAM,kCAAkC,GAAG,UAAC,EAA6F;;QAA3F,OAAO,aAAA,EAAE,qBAAqB,2BAAA,EAAE,aAAa,mBAAA,EAAE,MAAM,YAAA,EAAE,OAAO,aAAA;IAC/G,IAAM,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACtD,+DAA+D;IAC/D,IAAI,kBAAkB,EAAE;QACpB,0FAA0F;QAC1F,IAAM,YAAY,GAAG,CAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,0CAAE,qBAAqB,EAAC,CAAC,CAAC,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,0CAAE,qBAAqB,CAAC,CAAC,CAAC,MAAA,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,aAAa,0CAAE,YAAY,0CAAE,IAAI,CAAC;QACpJ,IAAM,eAAe,GAAG,
|
|
1
|
+
{"version":3,"file":"SolidRelationManyToOneColumn.js","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { Column } from \"../../SolidDataTable\";\nimport { SolidListViewColumnParams } from '../../../../../components/core/list/SolidListViewColumn';\nimport { getExtensionComponent } from '../../../../../helpers/registry';\nimport { getRelatedRecordDisplayText } from '../../../../../helpers/relationDisplay';\nimport { buildAdminRecordFormPath } from '../../../../../helpers/routePaths';\nimport { SolidListFieldWidgetProps } from '../../../../../types/solid-core';\nimport { ExternalLink } from \"lucide-react\";\n\nconst SolidRelationManyToOneColumn = ({ solidListViewMetaData, fieldMetadata, column, embeded }: SolidListViewColumnParams) => {\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 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 embeded\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, embeded }: SolidListFieldWidgetProps) => {\n const manyToOneFieldData = rowData[column.attrs.name];\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 const manyToOneColVal = getRelatedRecordDisplayText(manyToOneFieldData, userKeyField);\n const relatedModuleName =\n fieldMetadata?.relationModelModuleName ||\n fieldMetadata?.relationModel?.module?.name ||\n solidListViewMetaData?.data?.solidView?.module?.name;\n const relatedModelName =\n fieldMetadata?.relationModel?.singularName ||\n fieldMetadata?.relationCoModelSingularName;\n const relationRecordPath = buildAdminRecordFormPath({\n moduleName: relatedModuleName,\n modelName: relatedModelName,\n recordId: manyToOneFieldData?.id,\n viewMode: \"view\",\n });\n\n const isDisabled = column?.attrs?.disabled === true;\n\n if (embeded === true || isDisabled || !relationRecordPath) {\n return (\n <span className=\"solid-list-external-link-text\">\n {manyToOneColVal}\n </span>\n );\n }\n\n return (\n <button\n type=\"button\"\n className=\"solid-list-external-link\"\n onClick={() => {\n window.open(relationRecordPath, \"_blank\");\n }}\n >\n <span className=\"solid-list-external-link-text\">{manyToOneColVal}</span>\n <ExternalLink size={13} strokeWidth={2} className=\"solid-list-external-link-icon\" />\n </button>\n );\n }\n else {\n return <span></span>\n }\n};\n"]}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { Column } from "../../SolidDataTable";
|
|
3
3
|
import { SolidListViewColumnParams } from '../../../../../components/core/list/SolidListViewColumn';
|
|
4
4
|
import { getExtensionComponent } from '../../../../../helpers/registry';
|
|
5
|
+
import { getRelatedRecordDisplayText } from '../../../../../helpers/relationDisplay';
|
|
5
6
|
import { buildAdminRecordFormPath } from '../../../../../helpers/routePaths';
|
|
6
7
|
import { SolidListFieldWidgetProps } from '../../../../../types/solid-core';
|
|
7
8
|
import { ExternalLink } from "lucide-react";
|
|
@@ -54,7 +55,7 @@ export const DefaultRelationManyToOneListWidget = ({ rowData, solidListViewMetaD
|
|
|
54
55
|
if (manyToOneFieldData) {
|
|
55
56
|
// Since this is a many-to-one field, we fetch the user key field of the associated model.
|
|
56
57
|
const userKeyField = column?.attrs?.coModelFieldToDisplay ? column?.attrs?.coModelFieldToDisplay : fieldMetadata?.relationModel?.userKeyField?.name;
|
|
57
|
-
const manyToOneColVal = manyToOneFieldData
|
|
58
|
+
const manyToOneColVal = getRelatedRecordDisplayText(manyToOneFieldData, userKeyField);
|
|
58
59
|
const relatedModuleName =
|
|
59
60
|
fieldMetadata?.relationModelModuleName ||
|
|
60
61
|
fieldMetadata?.relationModel?.module?.name ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidRelationOneToManyColumn.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationOneToManyColumn.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,yDAAyD,CAAC;AACpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"SolidRelationOneToManyColumn.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationOneToManyColumn.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,yDAAyD,CAAC;AACpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAI5E,QAAA,MAAM,4BAA4B,qDAAsD,yBAAyB,4CAoChH,CAAC;AAEF,eAAe,4BAA4B,CAAC;AAK5C,eAAO,MAAM,kCAAkC,8DAA+D,yBAAyB,4CAgCtI,CAAC"}
|
|
@@ -12,6 +12,7 @@ var __assign = (this && this.__assign) || function () {
|
|
|
12
12
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
13
|
import { Column } from "../../SolidDataTable";
|
|
14
14
|
import { getExtensionComponent } from '../../../../../helpers/registry';
|
|
15
|
+
import { getRelatedRecordDisplayText } from '../../../../../helpers/relationDisplay';
|
|
15
16
|
var SolidRelationOneToManyColumn = function (_a) {
|
|
16
17
|
var _b;
|
|
17
18
|
var solidListViewMetaData = _a.solidListViewMetaData, fieldMetadata = _a.fieldMetadata, column = _a.column;
|
|
@@ -42,7 +43,9 @@ export var DefaultRelationOneToManyListWidget = function (_a) {
|
|
|
42
43
|
if (manyToManyFieldData) {
|
|
43
44
|
// Since this is a many-to-one field, we fetch the user key field of the associated model.
|
|
44
45
|
var userKeyField_1 = ((_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;
|
|
45
|
-
var manyToManyColVal = manyToManyFieldData
|
|
46
|
+
var manyToManyColVal = manyToManyFieldData
|
|
47
|
+
.map(function (f) { return getRelatedRecordDisplayText(f, userKeyField_1); })
|
|
48
|
+
.filter(Boolean);
|
|
46
49
|
// TODO: change this to use an anchor tag so that on click we open that entity form view.
|
|
47
50
|
return (_jsx(_Fragment, { children: manyToManyColVal.length > 0 &&
|
|
48
51
|
_jsxs("p", { children: [manyToManyColVal[0] && _jsx("span", { style: { backgroundColor: '#f5f5f5', padding: '7px', borderRadius: '4px' }, children: manyToManyColVal[0] }), _jsx("span", { style: { color: "#0895CD", fontWeight: 'bold' }, children: manyToManyColVal.length - 1 > 0 ? " +".concat(manyToManyColVal.length - 1) : "" })] }) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidRelationOneToManyColumn.js","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationOneToManyColumn.tsx"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"SolidRelationOneToManyColumn.js","sourceRoot":"","sources":["../../../../../../src/components/core/list/columns/relations/SolidRelationOneToManyColumn.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { Column } from \"../../SolidDataTable\";\nimport { SolidListViewColumnParams } from '../../../../../components/core/list/SolidListViewColumn';\nimport { SolidListFieldWidgetProps } from '../../../../../types/solid-core';\nimport { getExtensionComponent } from '../../../../../helpers/registry';\nimport { getRelatedRecordDisplayText } from '../../../../../helpers/relationDisplay';\n\nconst SolidRelationOneToManyColumn = ({ solidListViewMetaData, fieldMetadata, column }: SolidListViewColumnParams) => {\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 body={(rowData) => {\n let viewWidget = column.attrs.viewWidget;\n if (!viewWidget) {\n viewWidget = 'DefaultRelationOneToManyListWidget';\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 SolidRelationOneToManyColumn;\n\n\n\n\nexport const DefaultRelationOneToManyListWidget = ({ rowData, solidListViewMetaData, fieldMetadata, column }: SolidListFieldWidgetProps) => {\n const manyToManyFieldData = rowData[column.attrs.name];\n\n // This is the userkey that will be present within the rowData.\n if (manyToManyFieldData) {\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 manyToManyColVal = manyToManyFieldData\n .map((f: any) => getRelatedRecordDisplayText(f, userKeyField))\n .filter(Boolean);\n\n // TODO: change this to use an anchor tag so that on click we open that entity form view. \n return (\n\n <>\n {manyToManyColVal.length > 0 &&\n <p>\n\n {manyToManyColVal[0] && <span style={{ backgroundColor: '#f5f5f5', padding: '7px', borderRadius: '4px' }}>{manyToManyColVal[0]}</span>}\n <span style={{ color: \"#0895CD\", fontWeight: 'bold' }}>{manyToManyColVal.length - 1 > 0 ? ` +${manyToManyColVal.length - 1}` : \"\"}</span>\n\n\n </p >\n }\n </>\n\n )\n }\n else {\n return <span></span>\n }\n};\n"]}
|
|
@@ -3,6 +3,7 @@ import { Column } from "../../SolidDataTable";
|
|
|
3
3
|
import { SolidListViewColumnParams } from '../../../../../components/core/list/SolidListViewColumn';
|
|
4
4
|
import { SolidListFieldWidgetProps } from '../../../../../types/solid-core';
|
|
5
5
|
import { getExtensionComponent } from '../../../../../helpers/registry';
|
|
6
|
+
import { getRelatedRecordDisplayText } from '../../../../../helpers/relationDisplay';
|
|
6
7
|
|
|
7
8
|
const SolidRelationOneToManyColumn = ({ solidListViewMetaData, fieldMetadata, column }: SolidListViewColumnParams) => {
|
|
8
9
|
|
|
@@ -55,7 +56,9 @@ export const DefaultRelationOneToManyListWidget = ({ rowData, solidListViewMetaD
|
|
|
55
56
|
// Since this is a many-to-one field, we fetch the user key field of the associated model.
|
|
56
57
|
const userKeyField = column?.attrs?.coModelFieldToDisplay ? column?.attrs?.coModelFieldToDisplay : fieldMetadata?.relationModel?.userKeyField?.name;
|
|
57
58
|
|
|
58
|
-
const manyToManyColVal = manyToManyFieldData
|
|
59
|
+
const manyToManyColVal = manyToManyFieldData
|
|
60
|
+
.map((f: any) => getRelatedRecordDisplayText(f, userKeyField))
|
|
61
|
+
.filter(Boolean);
|
|
59
62
|
|
|
60
63
|
// TODO: change this to use an anchor tag so that on click we open that entity form view.
|
|
61
64
|
return (
|
|
@@ -77,4 +80,4 @@ export const DefaultRelationOneToManyListWidget = ({ rowData, solidListViewMetaD
|
|
|
77
80
|
else {
|
|
78
81
|
return <span></span>
|
|
79
82
|
}
|
|
80
|
-
};
|
|
83
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidLocale.d.ts","sourceRoot":"","sources":["../../../../src/components/core/locales/SolidLocale.tsx"],"names":[],"mappings":"AAGA,OAAO,oBAAoB,CAAC;AAC5B,QAAA,MAAM,WAAW;2BACsF,GAAG;QAAM,MAAM;oBAAkB,GAAG;uBAAqB,GAAG;cAAY,MAAM;gBAAc,OAAO;gCAA8B,GAAG;uBAAqB,GAAG;2BAAyB,MAAM,GAAG,IAAI;uBAAqB,GAAG;eAAa,MAAM,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"SolidLocale.d.ts","sourceRoot":"","sources":["../../../../src/components/core/locales/SolidLocale.tsx"],"names":[],"mappings":"AAGA,OAAO,oBAAoB,CAAC;AAC5B,QAAA,MAAM,WAAW;2BACsF,GAAG;QAAM,MAAM;oBAAkB,GAAG;uBAAqB,GAAG;cAAY,MAAM;gBAAc,OAAO;gCAA8B,GAAG;uBAAqB,GAAG;2BAAyB,MAAM,GAAG,IAAI;uBAAqB,GAAG;eAAa,MAAM,GAAG,IAAI;6CAiH1V,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -51,7 +51,7 @@ var SolidLocale = function (_a) {
|
|
|
51
51
|
return (_jsxs("div", { className: "flex flex-col p-0 m-0 solid-locale-stack", children: [_jsx("div", { className: "flex justify-end gap-4" }), solidFormViewData && (viewMode === 'edit') &&
|
|
52
52
|
(_jsx("div", { className: "w-full solid-locale-status-banner ".concat(published !== null ? 'is-published' : 'is-unpublished'), children: ((_c = (_b = solidFormViewMetaData.data.solidView) === null || _b === void 0 ? void 0 : _b.model) === null || _c === void 0 ? void 0 : _c.draftPublishWorkflow) &&
|
|
53
53
|
published !== null ? (_jsxs("li", { className: "w-full text-left list-disc solid-locale-status-copy", children: ["Editing ", _jsx("span", { className: "font-bold", children: "published version" })] })) : (_jsxs("li", { className: "w-full text-left list-disc solid-locale-status-copy", children: ["Editing ", _jsx("span", { className: "font-bold", children: "unpublished version" })] })) })), _jsxs("div", { className: "flex flex-col gap-2 mt-2 solid-locale-info-card", children: [_jsx("h3", { className: "solid-locale-section-title p-0 m-0", children: "Information" }), _jsx(SolidDivider, { className: "my-2" }), _jsxs("div", { className: "space-y-2", children: [_jsxs("div", { className: 'flex items-center justify-between gap-2 p-2 solid-locale-info-row', children: [_jsx("p", { className: "text-sm font-bold m-0 solid-locale-info-label", children: "Created At" }), _jsx("p", { className: "text-sm m-0 solid-locale-info-value", children: formatToDDMMYYWithTime((_d = solidFormViewData === null || solidFormViewData === void 0 ? void 0 : solidFormViewData.data) === null || _d === void 0 ? void 0 : _d.createdAt) })] }), _jsxs("div", { className: 'flex items-center justify-between gap-2 p-2 solid-locale-info-row', children: [_jsx("p", { className: "text-sm font-bold m-0 solid-locale-info-label", children: "Updated At" }), _jsx("p", { className: "text-sm m-0 solid-locale-info-value", children: formatToDDMMYYWithTime((_e = solidFormViewData === null || solidFormViewData === void 0 ? void 0 : solidFormViewData.data) === null || _e === void 0 ? void 0 : _e.updatedAt) })] }), _jsxs("div", { className: 'flex items-center justify-between gap-2 p-2 solid-locale-info-row', children: [_jsx("p", { className: "text-sm font-bold m-0 solid-locale-info-label", children: "Published At" }), _jsx("p", { className: "text-sm m-0 solid-locale-info-value", children: formatToDDMMYYWithTime(published !== null && published !== void 0 ? published : '') })] })] }), ((_h = (_g = (_f = solidFormViewMetaData === null || solidFormViewMetaData === void 0 ? void 0 : solidFormViewMetaData.data) === null || _f === void 0 ? void 0 : _f.solidView) === null || _g === void 0 ? void 0 : _g.model) === null || _h === void 0 ? void 0 : _h.internationalisation) &&
|
|
54
|
-
_jsxs(_Fragment, { children: [_jsx("h3", { className: "solid-locale-section-title mt-6 mb-2", children: "Internationalisation" }), _jsx("label", { className: "form-field-label", children: "Locales" }), _jsx(SolidSelect, { value: selectedLocale, onChange: function (e) { return handleLocaleChange(e.value); }, options: localeOptions, placeholder: "Select locale", className: "w-full", disabled: createMode }), createMode && (_jsxs("p", { className: "text-sm mt-0 ml-0 solid-locale-helper-copy", children: [" By default record will be created in ", _jsx("b", { children: defautlLocale })] }))] })] })] }));
|
|
54
|
+
_jsxs(_Fragment, { children: [_jsx("h3", { className: "solid-locale-section-title mt-6 mb-2", children: "Internationalisation" }), _jsx("label", { className: "form-field-label", children: "Locales" }), _jsx(SolidSelect, { value: selectedLocale, onChange: function (e) { return handleLocaleChange(e.value); }, options: localeOptions, placeholder: "Select locale", className: "w-full", native: false, disabled: createMode }), createMode && (_jsxs("p", { className: "text-sm mt-0 ml-0 solid-locale-helper-copy", children: [" By default record will be created in ", _jsx("b", { children: defautlLocale })] }))] })] })] }));
|
|
55
55
|
};
|
|
56
56
|
export default SolidLocale;
|
|
57
57
|
//# sourceMappingURL=SolidLocale.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidLocale.js","sourceRoot":"","sources":["../../../../src/components/core/locales/SolidLocale.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport React, { useEffect, useState } from 'react';\nimport { SolidDivider, SolidSelect } from \"../../shad-cn-ui\";\nimport \"./solid-locale.css\";\nconst SolidLocale = ({ solidFormViewMetaData, id, selectedLocale, setSelectedLocale, viewMode, createMode, handleLocaleChangeRedirect,\n applicableLocales, defaultEntityLocaleId, solidFormViewData, published }: { solidFormViewMetaData: any, id: string, selectedLocale: any, setSelectedLocale: any, viewMode: string, createMode: boolean, handleLocaleChangeRedirect: any, applicableLocales: any, defaultEntityLocaleId: string | null, solidFormViewData: any, published: string | null }) => {\n const [localeOptions, setLocaleOptions] = useState([]);\n const [defautlLocale, setDefaultLocale] = useState('');\n useEffect(() => {\n if (!applicableLocales) return;\n // Set dropdown options\n const localeOptions = applicableLocales.map((x: any) => ({\n label: x.displayName,\n value: x.locale,\n }));\n setLocaleOptions(localeOptions);\n\n if (createMode) {\n const defaultLocale = applicableLocales.find((x: any) => x.isDefault === 'yes');\n setSelectedLocale(defaultLocale?.locale || null);\n setDefaultLocale(defaultLocale?.displayName || '');\n return;\n }\n\n if (viewMode === 'edit' || viewMode === 'view') {\n const matchedLocale = applicableLocales.find(\n (x: any) => String(x.entityId) === String(id)\n );\n if (matchedLocale) {\n setSelectedLocale(matchedLocale.locale);\n }\n }\n }, [applicableLocales, id, viewMode, createMode]);\n\n const handleLocaleChange = (newLocale: string) => {\n if (newLocale === selectedLocale) return;\n setSelectedLocale(newLocale);\n const targetDefaultEntityLocaleId = id === 'new' ? defaultEntityLocaleId : defaultEntityLocaleId || id;\n handleLocaleChangeRedirect(newLocale, targetDefaultEntityLocaleId, viewMode);\n };\n\n // utils/formatDate.ts\n const formatToDDMMYYWithTime = (dateString: string) => {\n if (!dateString) return 'N/A';\n const date = new Date(dateString);\n\n const day = String(date.getDate()).padStart(2, '0');\n const month = String(date.getMonth() + 1).padStart(2, '0');\n const year = String(date.getFullYear()).slice(-2);\n\n const hours = String(date.getHours()).padStart(2, '0');\n const minutes = String(date.getMinutes()).padStart(2, '0');\n\n return `${day}-${month}-${year} ${hours}:${minutes}`;\n }\n\n\n return (\n <div className=\"flex flex-col p-0 m-0 solid-locale-stack\">\n <div className=\"flex justify-end gap-4\">\n </div>\n {solidFormViewData && (viewMode === 'edit') &&\n (<div className={`w-full solid-locale-status-banner ${published !== null ? 'is-published' : 'is-unpublished'}`}>\n {solidFormViewMetaData.data.solidView?.model?.draftPublishWorkflow &&\n published !== null ? (\n <li className=\"w-full text-left list-disc solid-locale-status-copy\">\n Editing <span className=\"font-bold\">published version</span>\n </li>\n ) : (\n <li className=\"w-full text-left list-disc solid-locale-status-copy\">\n Editing <span className=\"font-bold\">unpublished version</span>\n </li>\n )}\n </div>\n )\n }\n <div className=\"flex flex-col gap-2 mt-2 solid-locale-info-card\">\n <h3 className=\"solid-locale-section-title p-0 m-0\">Information</h3>\n <SolidDivider className=\"my-2\" />\n <div className=\"space-y-2\">\n <div className='flex items-center justify-between gap-2 p-2 solid-locale-info-row'>\n <p className=\"text-sm font-bold m-0 solid-locale-info-label\">Created At</p>\n <p className=\"text-sm m-0 solid-locale-info-value\">{formatToDDMMYYWithTime(solidFormViewData?.data?.createdAt)}</p>\n </div>\n <div className='flex items-center justify-between gap-2 p-2 solid-locale-info-row'>\n <p className=\"text-sm font-bold m-0 solid-locale-info-label\">Updated At</p>\n <p className=\"text-sm m-0 solid-locale-info-value\">\n {formatToDDMMYYWithTime(solidFormViewData?.data?.updatedAt)}\n </p>\n </div>\n <div className='flex items-center justify-between gap-2 p-2 solid-locale-info-row'>\n <p className=\"text-sm font-bold m-0 solid-locale-info-label\">Published At</p>\n <p className=\"text-sm m-0 solid-locale-info-value\">{formatToDDMMYYWithTime(published ?? '')}</p>\n </div>\n </div>\n\n {solidFormViewMetaData?.data?.solidView?.model?.internationalisation &&\n <>\n <h3 className=\"solid-locale-section-title mt-6 mb-2\">Internationalisation</h3>\n <label className=\"form-field-label\">Locales</label>\n <SolidSelect\n value={selectedLocale}\n onChange={(e) => handleLocaleChange(e.value)}\n options={localeOptions}\n placeholder=\"Select locale\"\n className=\"w-full\"\n disabled={createMode}\n />\n {createMode && (\n <p className=\"text-sm mt-0 ml-0 solid-locale-helper-copy\"> By default record will be created in <b>{defautlLocale}</b></p>\n )}\n </>\n }\n </div>\n {/* <p className=\"text-sm font-bold text-gray-500 px-2\">Fill in form another locale</p> */}\n </div>\n );\n};\n\nexport default SolidLocale;\n"]}
|
|
1
|
+
{"version":3,"file":"SolidLocale.js","sourceRoot":"","sources":["../../../../src/components/core/locales/SolidLocale.tsx"],"names":[],"mappings":";AACA,OAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,oBAAoB,CAAC;AAC5B,IAAM,WAAW,GAAG,UAAC,EACwU;;QADtU,qBAAqB,2BAAA,EAAE,EAAE,QAAA,EAAE,cAAc,oBAAA,EAAE,iBAAiB,uBAAA,EAAE,QAAQ,cAAA,EAAE,UAAU,gBAAA,EAAE,0BAA0B,gCAAA,EACjI,iBAAiB,uBAAA,EAAE,qBAAqB,2BAAA,EAAE,iBAAiB,uBAAA,EAAE,SAAS,eAAA;IAChE,IAAA,KAAoC,QAAQ,CAAC,EAAE,CAAC,EAA/C,aAAa,QAAA,EAAE,gBAAgB,QAAgB,CAAC;IACjD,IAAA,KAAoC,QAAQ,CAAC,EAAE,CAAC,EAA/C,aAAa,QAAA,EAAE,gBAAgB,QAAgB,CAAC;IACvD,SAAS,CAAC;QACN,IAAI,CAAC,iBAAiB;YAAE,OAAO;QAC/B,uBAAuB;QACvB,IAAM,aAAa,GAAG,iBAAiB,CAAC,GAAG,CAAC,UAAC,CAAM,IAAK,OAAA,CAAC;YACrD,KAAK,EAAE,CAAC,CAAC,WAAW;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM;SAClB,CAAC,EAHsD,CAGtD,CAAC,CAAC;QACJ,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAEhC,IAAI,UAAU,EAAE;YACZ,IAAM,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,UAAC,CAAM,IAAK,OAAA,CAAC,CAAC,SAAS,KAAK,KAAK,EAArB,CAAqB,CAAC,CAAC;YAChF,iBAAiB,CAAC,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,KAAI,IAAI,CAAC,CAAC;YACjD,gBAAgB,CAAC,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,WAAW,KAAI,EAAE,CAAC,CAAC;YACnD,OAAO;SACV;QAED,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,MAAM,EAAE;YAC5C,IAAM,aAAa,GAAG,iBAAiB,CAAC,IAAI,CACxC,UAAC,CAAM,IAAK,OAAA,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,MAAM,CAAC,EAAE,CAAC,EAAjC,CAAiC,CAChD,CAAC;YACF,IAAI,aAAa,EAAE;gBACf,iBAAiB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;aAC3C;SACJ;IACL,CAAC,EAAE,CAAC,iBAAiB,EAAE,EAAE,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAElD,IAAM,kBAAkB,GAAG,UAAC,SAAiB;QACzC,IAAI,SAAS,KAAK,cAAc;YAAE,OAAO;QACzC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC7B,IAAM,2BAA2B,GAAG,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,qBAAqB,IAAI,EAAE,CAAC;QACvG,0BAA0B,CAAC,SAAS,EAAE,2BAA2B,EAAE,QAAQ,CAAC,CAAC;IACjF,CAAC,CAAC;IAEF,sBAAsB;IACtB,IAAM,sBAAsB,GAAG,UAAC,UAAkB;QAC9C,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAC9B,IAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;QAElC,IAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACpD,IAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3D,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAElD,IAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACvD,IAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAE3D,OAAO,UAAG,GAAG,cAAI,KAAK,cAAI,IAAI,cAAI,KAAK,cAAI,OAAO,CAAE,CAAC;IACzD,CAAC,CAAA;IAGD,OAAO,CACH,eAAK,SAAS,EAAC,0CAA0C,aACrD,cAAK,SAAS,EAAC,wBAAwB,GACjC,EACL,iBAAiB,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC;gBACvC,CAAC,cAAK,SAAS,EAAE,4CAAqC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAE,YACzG,CAAA,MAAA,MAAA,qBAAqB,CAAC,IAAI,CAAC,SAAS,0CAAE,KAAK,0CAAE,oBAAoB;wBAC9D,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,CACrB,cAAI,SAAS,EAAC,qDAAqD,yBACvD,eAAM,SAAS,EAAC,WAAW,kCAAyB,IAC3D,CACR,CAAC,CAAC,CAAC,CACA,cAAI,SAAS,EAAC,qDAAqD,yBACvD,eAAM,SAAS,EAAC,WAAW,oCAA2B,IAC7D,CACR,GACC,CACL,EAEL,eAAK,SAAS,EAAC,iDAAiD,aAC5D,aAAI,SAAS,EAAC,oCAAoC,4BAAiB,EACnE,KAAC,YAAY,IAAC,SAAS,EAAC,MAAM,GAAG,EACjC,eAAK,SAAS,EAAC,WAAW,aACtB,eAAK,SAAS,EAAC,mEAAmE,aAC9E,YAAG,SAAS,EAAC,+CAA+C,2BAAe,EAC3E,YAAG,SAAS,EAAC,qCAAqC,YAAE,sBAAsB,CAAC,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,IAAI,0CAAE,SAAS,CAAC,GAAK,IACjH,EACN,eAAK,SAAS,EAAC,mEAAmE,aAC9E,YAAG,SAAS,EAAC,+CAA+C,2BAAe,EAC3E,YAAG,SAAS,EAAC,qCAAqC,YAC7C,sBAAsB,CAAC,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,IAAI,0CAAE,SAAS,CAAC,GAC3D,IACF,EACN,eAAK,SAAS,EAAC,mEAAmE,aAC9E,YAAG,SAAS,EAAC,+CAA+C,6BAAiB,EAC7E,YAAG,SAAS,EAAC,qCAAqC,YAAE,sBAAsB,CAAC,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,EAAE,CAAC,GAAK,IAC9F,IACJ,EAEL,CAAA,MAAA,MAAA,MAAA,qBAAqB,aAArB,qBAAqB,uBAArB,qBAAqB,CAAE,IAAI,0CAAE,SAAS,0CAAE,KAAK,0CAAE,oBAAoB;wBAChE,8BACI,aAAI,SAAS,EAAC,sCAAsC,qCAA0B,EAC9E,gBAAO,SAAS,EAAC,kBAAkB,wBAAgB,EACnD,KAAC,WAAW,IACR,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,UAAC,CAAC,IAAK,OAAA,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,EAA3B,CAA2B,EAC5C,OAAO,EAAE,aAAa,EACtB,WAAW,EAAC,eAAe,EAC3B,SAAS,EAAC,QAAQ,EAClB,MAAM,EAAE,KAAK,EACb,QAAQ,EAAE,UAAU,GACtB,EACD,UAAU,IAAI,CACX,aAAG,SAAS,EAAC,4CAA4C,uDAAuC,sBAAI,aAAa,GAAK,IAAI,CAC7H,IACF,IAEL,IAEJ,CACT,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC","sourcesContent":["\nimport React, { useEffect, useState } from 'react';\nimport { SolidDivider, SolidSelect } from \"../../shad-cn-ui\";\nimport \"./solid-locale.css\";\nconst SolidLocale = ({ solidFormViewMetaData, id, selectedLocale, setSelectedLocale, viewMode, createMode, handleLocaleChangeRedirect,\n applicableLocales, defaultEntityLocaleId, solidFormViewData, published }: { solidFormViewMetaData: any, id: string, selectedLocale: any, setSelectedLocale: any, viewMode: string, createMode: boolean, handleLocaleChangeRedirect: any, applicableLocales: any, defaultEntityLocaleId: string | null, solidFormViewData: any, published: string | null }) => {\n const [localeOptions, setLocaleOptions] = useState([]);\n const [defautlLocale, setDefaultLocale] = useState('');\n useEffect(() => {\n if (!applicableLocales) return;\n // Set dropdown options\n const localeOptions = applicableLocales.map((x: any) => ({\n label: x.displayName,\n value: x.locale,\n }));\n setLocaleOptions(localeOptions);\n\n if (createMode) {\n const defaultLocale = applicableLocales.find((x: any) => x.isDefault === 'yes');\n setSelectedLocale(defaultLocale?.locale || null);\n setDefaultLocale(defaultLocale?.displayName || '');\n return;\n }\n\n if (viewMode === 'edit' || viewMode === 'view') {\n const matchedLocale = applicableLocales.find(\n (x: any) => String(x.entityId) === String(id)\n );\n if (matchedLocale) {\n setSelectedLocale(matchedLocale.locale);\n }\n }\n }, [applicableLocales, id, viewMode, createMode]);\n\n const handleLocaleChange = (newLocale: string) => {\n if (newLocale === selectedLocale) return;\n setSelectedLocale(newLocale);\n const targetDefaultEntityLocaleId = id === 'new' ? defaultEntityLocaleId : defaultEntityLocaleId || id;\n handleLocaleChangeRedirect(newLocale, targetDefaultEntityLocaleId, viewMode);\n };\n\n // utils/formatDate.ts\n const formatToDDMMYYWithTime = (dateString: string) => {\n if (!dateString) return 'N/A';\n const date = new Date(dateString);\n\n const day = String(date.getDate()).padStart(2, '0');\n const month = String(date.getMonth() + 1).padStart(2, '0');\n const year = String(date.getFullYear()).slice(-2);\n\n const hours = String(date.getHours()).padStart(2, '0');\n const minutes = String(date.getMinutes()).padStart(2, '0');\n\n return `${day}-${month}-${year} ${hours}:${minutes}`;\n }\n\n\n return (\n <div className=\"flex flex-col p-0 m-0 solid-locale-stack\">\n <div className=\"flex justify-end gap-4\">\n </div>\n {solidFormViewData && (viewMode === 'edit') &&\n (<div className={`w-full solid-locale-status-banner ${published !== null ? 'is-published' : 'is-unpublished'}`}>\n {solidFormViewMetaData.data.solidView?.model?.draftPublishWorkflow &&\n published !== null ? (\n <li className=\"w-full text-left list-disc solid-locale-status-copy\">\n Editing <span className=\"font-bold\">published version</span>\n </li>\n ) : (\n <li className=\"w-full text-left list-disc solid-locale-status-copy\">\n Editing <span className=\"font-bold\">unpublished version</span>\n </li>\n )}\n </div>\n )\n }\n <div className=\"flex flex-col gap-2 mt-2 solid-locale-info-card\">\n <h3 className=\"solid-locale-section-title p-0 m-0\">Information</h3>\n <SolidDivider className=\"my-2\" />\n <div className=\"space-y-2\">\n <div className='flex items-center justify-between gap-2 p-2 solid-locale-info-row'>\n <p className=\"text-sm font-bold m-0 solid-locale-info-label\">Created At</p>\n <p className=\"text-sm m-0 solid-locale-info-value\">{formatToDDMMYYWithTime(solidFormViewData?.data?.createdAt)}</p>\n </div>\n <div className='flex items-center justify-between gap-2 p-2 solid-locale-info-row'>\n <p className=\"text-sm font-bold m-0 solid-locale-info-label\">Updated At</p>\n <p className=\"text-sm m-0 solid-locale-info-value\">\n {formatToDDMMYYWithTime(solidFormViewData?.data?.updatedAt)}\n </p>\n </div>\n <div className='flex items-center justify-between gap-2 p-2 solid-locale-info-row'>\n <p className=\"text-sm font-bold m-0 solid-locale-info-label\">Published At</p>\n <p className=\"text-sm m-0 solid-locale-info-value\">{formatToDDMMYYWithTime(published ?? '')}</p>\n </div>\n </div>\n\n {solidFormViewMetaData?.data?.solidView?.model?.internationalisation &&\n <>\n <h3 className=\"solid-locale-section-title mt-6 mb-2\">Internationalisation</h3>\n <label className=\"form-field-label\">Locales</label>\n <SolidSelect\n value={selectedLocale}\n onChange={(e) => handleLocaleChange(e.value)}\n options={localeOptions}\n placeholder=\"Select locale\"\n className=\"w-full\"\n native={false}\n disabled={createMode}\n />\n {createMode && (\n <p className=\"text-sm mt-0 ml-0 solid-locale-helper-copy\"> By default record will be created in <b>{defautlLocale}</b></p>\n )}\n </>\n }\n </div>\n {/* <p className=\"text-sm font-bold text-gray-500 px-2\">Fill in form another locale</p> */}\n </div>\n );\n};\n\nexport default SolidLocale;\n"]}
|