@multiplatform.one/frappe-ui 7.40.0 → 7.42.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/ChartCard.native.js.map +1 -1
- package/dist/cjs/FileBrowser/AttachLibrary.native.js.map +1 -1
- package/dist/cjs/FileBrowser/folderTree.native.js.map +1 -1
- package/dist/cjs/FileBrowser/index.native.js.map +1 -1
- package/dist/cjs/FileBrowser/types.native.js.map +1 -1
- package/dist/cjs/FileBrowser/viewPersistence.native.js.map +1 -1
- package/dist/cjs/FormSidebar.native.js.map +1 -1
- package/dist/cjs/FrappeAssignment.native.js.map +1 -1
- package/dist/cjs/FrappeCalendar.native.js.map +1 -1
- package/dist/cjs/FrappeChartCard.native.js.map +1 -1
- package/dist/cjs/FrappeConnectionIndicator.native.js.map +1 -1
- package/dist/cjs/FrappeDashboard.native.js.map +1 -1
- package/dist/cjs/FrappeForm.native.js +1 -1
- package/dist/cjs/FrappeForm.native.js.map +1 -1
- package/dist/cjs/FrappeFormActions.native.js.map +1 -1
- package/dist/cjs/FrappeFormConnections.native.js.map +1 -1
- package/dist/cjs/FrappeGantt.native.js.map +1 -1
- package/dist/cjs/FrappeImageView.native.js.map +1 -1
- package/dist/cjs/FrappeInsights.native.js.map +1 -1
- package/dist/cjs/FrappeKPICard.native.js.map +1 -1
- package/dist/cjs/FrappeKanban.native.js.map +1 -1
- package/dist/cjs/FrappeLikedBy.native.js.map +1 -1
- package/dist/cjs/FrappeList.native.js.map +1 -1
- package/dist/cjs/FrappeListView.native.js.map +1 -1
- package/dist/cjs/FrappeNotConfigured.native.js.map +1 -1
- package/dist/cjs/FrappeProvider.native.js.map +1 -1
- package/dist/cjs/FrappeReconnectIndicator.native.js.map +1 -1
- package/dist/cjs/FrappeRecordView.native.js.map +1 -1
- package/dist/cjs/FrappeReportBuilder.native.js.map +1 -1
- package/dist/cjs/FrappeReportView.native.js +3 -3
- package/dist/cjs/FrappeReportView.native.js.map +1 -1
- package/dist/cjs/FrappeRowsReader.native.js.map +1 -1
- package/dist/cjs/FrappeTable.cjs +6 -3
- package/dist/cjs/FrappeTable.native.js +8 -3
- package/dist/cjs/FrappeTable.native.js.map +1 -1
- package/dist/cjs/FrappeTreeView.native.js.map +1 -1
- package/dist/cjs/SyncErrorNotice.native.js.map +1 -1
- package/dist/cjs/commentActions.native.js.map +1 -1
- package/dist/cjs/components/attachments.native.js.map +1 -1
- package/dist/cjs/components/tags.native.js.map +1 -1
- package/dist/cjs/components/timeline.native.js.map +1 -1
- package/dist/cjs/dependsOn.native.js.map +1 -1
- package/dist/cjs/desk/DeskFormPage.native.js.map +1 -1
- package/dist/cjs/desk/DeskFormSidebar.native.js.map +1 -1
- package/dist/cjs/desk/DeskListPage.native.js.map +1 -1
- package/dist/cjs/desk/DeskShell.native.js.map +1 -1
- package/dist/cjs/desk/DeskSidebar.native.js.map +1 -1
- package/dist/cjs/desk/awesomebar.native.js.map +1 -1
- package/dist/cjs/fieldOverrides.native.js.map +1 -1
- package/dist/cjs/fieldRegistry.native.js +31 -31
- package/dist/cjs/fieldRegistry.native.js.map +1 -1
- package/dist/cjs/fields/Barcode/index.native.js.map +1 -1
- package/dist/cjs/fields/Check/index.native.js.map +1 -1
- package/dist/cjs/fields/CodeEditor/index.native.js.map +1 -1
- package/dist/cjs/fields/Color/index.native.js.map +1 -1
- package/dist/cjs/fields/Data/index.native.js.map +1 -1
- package/dist/cjs/fields/Date/catalog.native.js +1 -1
- package/dist/cjs/fields/Date/catalog.native.js.map +1 -1
- package/dist/cjs/fields/Date/dateTimePickerLoader.native.js.map +1 -1
- package/dist/cjs/fields/Date/sheetKeyboard.native.js.map +1 -1
- package/dist/cjs/fields/Date/types.native.js.map +1 -1
- package/dist/cjs/fields/Date/wire.native.js.map +1 -1
- package/dist/cjs/fields/DateRange/index.native.js.map +1 -1
- package/dist/cjs/fields/Duration/index.native.js.map +1 -1
- package/dist/cjs/fields/DynamicLink.native.js.map +1 -1
- package/dist/cjs/fields/FileUpload.native.js.map +1 -1
- package/dist/cjs/fields/FileUploadField/index.native.js.map +1 -1
- package/dist/cjs/fields/Geolocation/index.native.js.map +1 -1
- package/dist/cjs/fields/HTML/index.native.js.map +1 -1
- package/dist/cjs/fields/Heading/index.native.js.map +1 -1
- package/dist/cjs/fields/Icon/index.native.js.map +1 -1
- package/dist/cjs/fields/Link.native.js.map +1 -1
- package/dist/cjs/fields/LinkTree.native.js.map +1 -1
- package/dist/cjs/fields/LongText/index.native.js.map +1 -1
- package/dist/cjs/fields/MentionInput/index.native.js.map +1 -1
- package/dist/cjs/fields/Numeric/index.native.js.map +1 -1
- package/dist/cjs/fields/OTPInput/index.native.js.map +1 -1
- package/dist/cjs/fields/Password/index.native.js.map +1 -1
- package/dist/cjs/fields/Phone/index.native.js.map +1 -1
- package/dist/cjs/fields/Progress/index.native.js.map +1 -1
- package/dist/cjs/fields/RadioGroup/index.native.js.map +1 -1
- package/dist/cjs/fields/Rating/index.native.js.map +1 -1
- package/dist/cjs/fields/ReadOnly/index.native.js.map +1 -1
- package/dist/cjs/fields/Select/index.native.js.map +1 -1
- package/dist/cjs/fields/Signature/index.native.js.map +1 -1
- package/dist/cjs/fields/Slider/index.native.js.map +1 -1
- package/dist/cjs/fields/SmallText/index.native.js.map +1 -1
- package/dist/cjs/fields/Switch/index.native.js.map +1 -1
- package/dist/cjs/fields/TableMultiSelect.native.js.map +1 -1
- package/dist/cjs/fields/TextEditor/types.native.js.map +1 -1
- package/dist/cjs/fields/TimePicker/index.native.js.map +1 -1
- package/dist/cjs/fields/ToggleGroup/index.native.js.map +1 -1
- package/dist/cjs/fields/shared/EditorPreviewPanes.native.js.map +1 -1
- package/dist/cjs/filterFields.native.js.map +1 -1
- package/dist/cjs/formEngine/createPrefill.native.js.map +1 -1
- package/dist/cjs/formEngine/dirtyTracking.native.js.map +1 -1
- package/dist/cjs/formEngine/docLifecycle.native.js.map +1 -1
- package/dist/cjs/formEngine/docPermissions.native.js.map +1 -1
- package/dist/cjs/formEngine/doctypeMeta.native.js.map +1 -1
- package/dist/cjs/formEngine/fetchFrom.native.js.map +1 -1
- package/dist/cjs/formEngine/fieldPermissions.native.js.map +1 -1
- package/dist/cjs/formEngine/formActions.native.js.map +1 -1
- package/dist/cjs/formEngine/formLayout.native.js.map +1 -1
- package/dist/cjs/formEngine/index.native.js.map +1 -1
- package/dist/cjs/formEngine/useAmendedAs.native.js.map +1 -1
- package/dist/cjs/formEngine/useDocRights.native.js.map +1 -1
- package/dist/cjs/formEngine/useFormEngine.native.js.map +1 -1
- package/dist/cjs/formEngine/useSessionRoles.native.js.map +1 -1
- package/dist/cjs/frappeConnections.native.js.map +1 -1
- package/dist/cjs/frappeEventColor.native.js.map +1 -1
- package/dist/cjs/frappeNavigation.native.js.map +1 -1
- package/dist/cjs/frappeStoryTarget.native.js.map +1 -1
- package/dist/cjs/frappeUsers.native.js.map +1 -1
- package/dist/cjs/index.native.js +34 -34
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/insights/InsightsFacetTags.native.js.map +1 -1
- package/dist/cjs/insights/InsightsKpiBand.native.js.map +1 -1
- package/dist/cjs/insights/InsightsLeaders.native.js.map +1 -1
- package/dist/cjs/insights/InsightsRecords.native.js.map +1 -1
- package/dist/cjs/insights/InsightsTable.native.js.map +1 -1
- package/dist/cjs/insights/insightsData.native.js.map +1 -1
- package/dist/cjs/insights/insightsRecord.native.js.map +1 -1
- package/dist/cjs/list/BandFilters.native.js.map +1 -1
- package/dist/cjs/list/FacetBadge.native.js.map +1 -1
- package/dist/cjs/list/FacetList.native.js.map +1 -1
- package/dist/cjs/list/FacetRail.native.js.map +1 -1
- package/dist/cjs/list/ImageWell.native.js.map +1 -1
- package/dist/cjs/list/ListControls.native.js.map +1 -1
- package/dist/cjs/list/ListControlsSheet.native.js.map +1 -1
- package/dist/cjs/list/ListFilterPanel.native.js.map +1 -1
- package/dist/cjs/list/ListSidebarToolbar.native.js.map +1 -1
- package/dist/cjs/list/ListToastHost.native.js.map +1 -1
- package/dist/cjs/list/ListToolsSheet.native.js.map +1 -1
- package/dist/cjs/list/RangeFilter.native.js.map +1 -1
- package/dist/cjs/list/ShufflePanel.native.js.map +1 -1
- package/dist/cjs/list/facetReading.native.js.map +1 -1
- package/dist/cjs/list/favorites.native.js.map +1 -1
- package/dist/cjs/list/listColumns.cjs +41 -4
- package/dist/cjs/list/listColumns.native.js +51 -8
- package/dist/cjs/list/listColumns.native.js.map +1 -1
- package/dist/cjs/list/listControls.fixture.native.js.map +1 -1
- package/dist/cjs/list/listFields.cjs +2 -0
- package/dist/cjs/list/listFields.native.js +5 -0
- package/dist/cjs/list/listFields.native.js.map +1 -1
- package/dist/cjs/list/listFormat.native.js.map +1 -1
- package/dist/cjs/list/listState.native.js.map +1 -1
- package/dist/cjs/list/recordLook.native.js.map +1 -1
- package/dist/cjs/list/statusColors.native.js.map +1 -1
- package/dist/cjs/list/useListControls.native.js.map +1 -1
- package/dist/cjs/liveErrors.native.js.map +1 -1
- package/dist/cjs/measures.native.js.map +1 -1
- package/dist/cjs/record/RecordBars.native.js.map +1 -1
- package/dist/cjs/record/RecordGallery.native.js.map +1 -1
- package/dist/cjs/record/RecordHero.native.js.map +1 -1
- package/dist/cjs/record/RecordPage.native.js.map +1 -1
- package/dist/cjs/record/RecordPager.native.js.map +1 -1
- package/dist/cjs/record/RecordRows.native.js.map +1 -1
- package/dist/cjs/record/recordData.native.js.map +1 -1
- package/dist/cjs/record/recordSections.native.js.map +1 -1
- package/dist/cjs/recordShape.native.js.map +1 -1
- package/dist/cjs/report/ReportGrid.native.js.map +1 -1
- package/dist/cjs/report/ReportViewToolbar.native.js.map +1 -1
- package/dist/cjs/report/queryReport.native.js.map +1 -1
- package/dist/cjs/report/queryReportColumns.native.js.map +1 -1
- package/dist/cjs/report/reportViewModel.native.js.map +1 -1
- package/dist/cjs/report/savedReports.native.js.map +1 -1
- package/dist/cjs/report/useFrappeReport.native.js.map +1 -1
- package/dist/cjs/report/useQueryReport.native.js.map +1 -1
- package/dist/cjs/resolveControl.native.js.map +1 -1
- package/dist/cjs/schemaForm/SchemaWizard.native.js.map +1 -1
- package/dist/cjs/schemaForm/applyFieldOrder.native.js.map +1 -1
- package/dist/cjs/schemaForm/index.cjs +21 -2
- package/dist/cjs/schemaForm/index.native.js +44 -4
- package/dist/cjs/schemaForm/index.native.js.map +1 -1
- package/dist/cjs/shared/devWarn.native.js.map +1 -1
- package/dist/cjs/shared/useKeyboardInset.native.js.map +1 -1
- package/dist/cjs/syncError.native.js.map +1 -1
- package/dist/cjs/useConnectionFilters.native.js.map +1 -1
- package/dist/cjs/useFrappeAggregate.native.js.map +1 -1
- package/dist/cjs/useFrappeFacets.native.js.map +1 -1
- package/dist/cjs/useFrappeForm.native.js.map +1 -1
- package/dist/cjs/useFrappePagination.native.js.map +1 -1
- package/dist/cjs/useFrappeRows.native.js.map +1 -1
- package/dist/esm/ChartCard.native.js.map +1 -1
- package/dist/esm/FileBrowser/AttachLibrary.native.js.map +1 -1
- package/dist/esm/FileBrowser/folderTree.native.js.map +1 -1
- package/dist/esm/FileBrowser/index.native.js.map +1 -1
- package/dist/esm/FileBrowser/types.native.js.map +1 -1
- package/dist/esm/FileBrowser/viewPersistence.native.js.map +1 -1
- package/dist/esm/FormSidebar.native.js.map +1 -1
- package/dist/esm/FrappeAssignment.native.js.map +1 -1
- package/dist/esm/FrappeCalendar.native.js.map +1 -1
- package/dist/esm/FrappeChartCard.native.js.map +1 -1
- package/dist/esm/FrappeConnectionIndicator.native.js.map +1 -1
- package/dist/esm/FrappeDashboard.native.js.map +1 -1
- package/dist/esm/FrappeForm.native.js.map +1 -1
- package/dist/esm/FrappeFormActions.native.js.map +1 -1
- package/dist/esm/FrappeFormConnections.native.js.map +1 -1
- package/dist/esm/FrappeGantt.native.js.map +1 -1
- package/dist/esm/FrappeImageView.native.js.map +1 -1
- package/dist/esm/FrappeInsights.native.js.map +1 -1
- package/dist/esm/FrappeKPICard.native.js.map +1 -1
- package/dist/esm/FrappeKanban.native.js.map +1 -1
- package/dist/esm/FrappeLikedBy.native.js.map +1 -1
- package/dist/esm/FrappeList.native.js.map +1 -1
- package/dist/esm/FrappeListView.native.js.map +1 -1
- package/dist/esm/FrappeNotConfigured.native.js.map +1 -1
- package/dist/esm/FrappeProvider.native.js.map +1 -1
- package/dist/esm/FrappeReconnectIndicator.native.js.map +1 -1
- package/dist/esm/FrappeRecordView.native.js.map +1 -1
- package/dist/esm/FrappeReportBuilder.native.js.map +1 -1
- package/dist/esm/FrappeReportView.native.js.map +1 -1
- package/dist/esm/FrappeRowsReader.native.js.map +1 -1
- package/dist/esm/FrappeTable.mjs +6 -3
- package/dist/esm/FrappeTable.mjs.map +1 -1
- package/dist/esm/FrappeTable.native.js +8 -3
- package/dist/esm/FrappeTable.native.js.map +1 -1
- package/dist/esm/FrappeTreeView.native.js.map +1 -1
- package/dist/esm/SyncErrorNotice.native.js.map +1 -1
- package/dist/esm/commentActions.native.js.map +1 -1
- package/dist/esm/components/attachments.native.js.map +1 -1
- package/dist/esm/components/tags.native.js.map +1 -1
- package/dist/esm/components/timeline.native.js.map +1 -1
- package/dist/esm/dependsOn.native.js.map +1 -1
- package/dist/esm/desk/DeskFormPage.native.js.map +1 -1
- package/dist/esm/desk/DeskFormSidebar.native.js.map +1 -1
- package/dist/esm/desk/DeskListPage.native.js.map +1 -1
- package/dist/esm/desk/DeskShell.native.js.map +1 -1
- package/dist/esm/desk/DeskSidebar.native.js.map +1 -1
- package/dist/esm/desk/awesomebar.native.js.map +1 -1
- package/dist/esm/fieldOverrides.native.js.map +1 -1
- package/dist/esm/fieldRegistry.native.js.map +1 -1
- package/dist/esm/fields/Barcode/index.native.js.map +1 -1
- package/dist/esm/fields/Check/index.native.js.map +1 -1
- package/dist/esm/fields/CodeEditor/index.native.js.map +1 -1
- package/dist/esm/fields/Color/index.native.js.map +1 -1
- package/dist/esm/fields/Data/index.native.js.map +1 -1
- package/dist/esm/fields/Date/catalog.native.js.map +1 -1
- package/dist/esm/fields/Date/dateTimePickerLoader.native.js.map +1 -1
- package/dist/esm/fields/Date/sheetKeyboard.native.js.map +1 -1
- package/dist/esm/fields/Date/types.native.js.map +1 -1
- package/dist/esm/fields/Date/wire.native.js.map +1 -1
- package/dist/esm/fields/DateRange/index.native.js.map +1 -1
- package/dist/esm/fields/Duration/index.native.js.map +1 -1
- package/dist/esm/fields/DynamicLink.native.js.map +1 -1
- package/dist/esm/fields/FileUpload.native.js.map +1 -1
- package/dist/esm/fields/FileUploadField/index.native.js.map +1 -1
- package/dist/esm/fields/Geolocation/index.native.js.map +1 -1
- package/dist/esm/fields/HTML/index.native.js.map +1 -1
- package/dist/esm/fields/Heading/index.native.js.map +1 -1
- package/dist/esm/fields/Icon/index.native.js.map +1 -1
- package/dist/esm/fields/Link.native.js.map +1 -1
- package/dist/esm/fields/LinkTree.native.js.map +1 -1
- package/dist/esm/fields/LongText/index.native.js.map +1 -1
- package/dist/esm/fields/MentionInput/index.native.js.map +1 -1
- package/dist/esm/fields/Numeric/index.native.js.map +1 -1
- package/dist/esm/fields/OTPInput/index.native.js.map +1 -1
- package/dist/esm/fields/Password/index.native.js.map +1 -1
- package/dist/esm/fields/Phone/index.native.js.map +1 -1
- package/dist/esm/fields/Progress/index.native.js.map +1 -1
- package/dist/esm/fields/RadioGroup/index.native.js.map +1 -1
- package/dist/esm/fields/Rating/index.native.js.map +1 -1
- package/dist/esm/fields/ReadOnly/index.native.js.map +1 -1
- package/dist/esm/fields/Select/index.native.js.map +1 -1
- package/dist/esm/fields/Signature/index.native.js.map +1 -1
- package/dist/esm/fields/Slider/index.native.js.map +1 -1
- package/dist/esm/fields/SmallText/index.native.js.map +1 -1
- package/dist/esm/fields/Switch/index.native.js.map +1 -1
- package/dist/esm/fields/TableMultiSelect.native.js.map +1 -1
- package/dist/esm/fields/TextEditor/types.native.js.map +1 -1
- package/dist/esm/fields/TimePicker/index.native.js.map +1 -1
- package/dist/esm/fields/ToggleGroup/index.native.js.map +1 -1
- package/dist/esm/fields/shared/EditorPreviewPanes.native.js.map +1 -1
- package/dist/esm/filterFields.native.js.map +1 -1
- package/dist/esm/formEngine/createPrefill.native.js.map +1 -1
- package/dist/esm/formEngine/dirtyTracking.native.js.map +1 -1
- package/dist/esm/formEngine/docLifecycle.native.js.map +1 -1
- package/dist/esm/formEngine/docPermissions.native.js.map +1 -1
- package/dist/esm/formEngine/doctypeMeta.native.js.map +1 -1
- package/dist/esm/formEngine/fetchFrom.native.js.map +1 -1
- package/dist/esm/formEngine/fieldPermissions.native.js.map +1 -1
- package/dist/esm/formEngine/formActions.native.js.map +1 -1
- package/dist/esm/formEngine/formLayout.native.js.map +1 -1
- package/dist/esm/formEngine/index.native.js.map +1 -1
- package/dist/esm/formEngine/useAmendedAs.native.js.map +1 -1
- package/dist/esm/formEngine/useDocRights.native.js.map +1 -1
- package/dist/esm/formEngine/useFormEngine.native.js.map +1 -1
- package/dist/esm/formEngine/useSessionRoles.native.js.map +1 -1
- package/dist/esm/frappeConnections.native.js.map +1 -1
- package/dist/esm/frappeEventColor.native.js.map +1 -1
- package/dist/esm/frappeNavigation.native.js.map +1 -1
- package/dist/esm/frappeStoryTarget.native.js.map +1 -1
- package/dist/esm/frappeUsers.native.js.map +1 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/insights/InsightsFacetTags.native.js.map +1 -1
- package/dist/esm/insights/InsightsKpiBand.native.js.map +1 -1
- package/dist/esm/insights/InsightsLeaders.native.js.map +1 -1
- package/dist/esm/insights/InsightsRecords.native.js.map +1 -1
- package/dist/esm/insights/InsightsTable.native.js.map +1 -1
- package/dist/esm/insights/insightsData.native.js.map +1 -1
- package/dist/esm/insights/insightsRecord.native.js.map +1 -1
- package/dist/esm/list/BandFilters.native.js.map +1 -1
- package/dist/esm/list/FacetBadge.native.js.map +1 -1
- package/dist/esm/list/FacetList.native.js.map +1 -1
- package/dist/esm/list/FacetRail.native.js.map +1 -1
- package/dist/esm/list/ImageWell.native.js.map +1 -1
- package/dist/esm/list/ListControls.native.js.map +1 -1
- package/dist/esm/list/ListControlsSheet.native.js.map +1 -1
- package/dist/esm/list/ListFilterPanel.native.js.map +1 -1
- package/dist/esm/list/ListSidebarToolbar.native.js.map +1 -1
- package/dist/esm/list/ListToastHost.native.js.map +1 -1
- package/dist/esm/list/ListToolsSheet.native.js.map +1 -1
- package/dist/esm/list/RangeFilter.native.js.map +1 -1
- package/dist/esm/list/ShufflePanel.native.js.map +1 -1
- package/dist/esm/list/facetReading.native.js.map +1 -1
- package/dist/esm/list/favorites.native.js.map +1 -1
- package/dist/esm/list/listColumns.mjs +43 -7
- package/dist/esm/list/listColumns.mjs.map +1 -1
- package/dist/esm/list/listColumns.native.js +53 -11
- package/dist/esm/list/listColumns.native.js.map +1 -1
- package/dist/esm/list/listControls.fixture.native.js.map +1 -1
- package/dist/esm/list/listFields.mjs +2 -0
- package/dist/esm/list/listFields.mjs.map +1 -1
- package/dist/esm/list/listFields.native.js +5 -0
- package/dist/esm/list/listFields.native.js.map +1 -1
- package/dist/esm/list/listFormat.native.js.map +1 -1
- package/dist/esm/list/listState.native.js.map +1 -1
- package/dist/esm/list/recordLook.native.js.map +1 -1
- package/dist/esm/list/statusColors.native.js.map +1 -1
- package/dist/esm/list/useListControls.native.js.map +1 -1
- package/dist/esm/liveErrors.native.js.map +1 -1
- package/dist/esm/measures.native.js.map +1 -1
- package/dist/esm/record/RecordBars.native.js.map +1 -1
- package/dist/esm/record/RecordGallery.native.js.map +1 -1
- package/dist/esm/record/RecordHero.native.js.map +1 -1
- package/dist/esm/record/RecordPage.native.js.map +1 -1
- package/dist/esm/record/RecordPager.native.js.map +1 -1
- package/dist/esm/record/RecordRows.native.js.map +1 -1
- package/dist/esm/record/recordData.native.js.map +1 -1
- package/dist/esm/record/recordSections.native.js.map +1 -1
- package/dist/esm/recordShape.native.js.map +1 -1
- package/dist/esm/report/ReportGrid.native.js.map +1 -1
- package/dist/esm/report/ReportViewToolbar.native.js.map +1 -1
- package/dist/esm/report/queryReport.native.js.map +1 -1
- package/dist/esm/report/queryReportColumns.native.js.map +1 -1
- package/dist/esm/report/reportViewModel.native.js.map +1 -1
- package/dist/esm/report/savedReports.native.js.map +1 -1
- package/dist/esm/report/useFrappeReport.native.js.map +1 -1
- package/dist/esm/report/useQueryReport.native.js.map +1 -1
- package/dist/esm/resolveControl.native.js.map +1 -1
- package/dist/esm/schemaForm/SchemaWizard.native.js.map +1 -1
- package/dist/esm/schemaForm/applyFieldOrder.native.js.map +1 -1
- package/dist/esm/schemaForm/index.mjs +20 -2
- package/dist/esm/schemaForm/index.mjs.map +1 -1
- package/dist/esm/schemaForm/index.native.js +42 -3
- package/dist/esm/schemaForm/index.native.js.map +1 -1
- package/dist/esm/shared/devWarn.native.js.map +1 -1
- package/dist/esm/shared/useKeyboardInset.native.js.map +1 -1
- package/dist/esm/syncError.native.js.map +1 -1
- package/dist/esm/useConnectionFilters.native.js.map +1 -1
- package/dist/esm/useFrappeAggregate.native.js.map +1 -1
- package/dist/esm/useFrappeFacets.native.js.map +1 -1
- package/dist/esm/useFrappeForm.native.js.map +1 -1
- package/dist/esm/useFrappePagination.native.js.map +1 -1
- package/dist/esm/useFrappeRows.native.js.map +1 -1
- package/dist/jsx/ChartCard.native.js.map +1 -1
- package/dist/jsx/FileBrowser/AttachLibrary.native.js.map +1 -1
- package/dist/jsx/FileBrowser/folderTree.native.js.map +1 -1
- package/dist/jsx/FileBrowser/index.native.js.map +1 -1
- package/dist/jsx/FileBrowser/types.native.js.map +1 -1
- package/dist/jsx/FileBrowser/viewPersistence.native.js.map +1 -1
- package/dist/jsx/FormSidebar.native.js.map +1 -1
- package/dist/jsx/FrappeAssignment.native.js.map +1 -1
- package/dist/jsx/FrappeCalendar.native.js.map +1 -1
- package/dist/jsx/FrappeChartCard.native.js.map +1 -1
- package/dist/jsx/FrappeConnectionIndicator.native.js.map +1 -1
- package/dist/jsx/FrappeDashboard.native.js.map +1 -1
- package/dist/jsx/FrappeForm.native.js +1 -1
- package/dist/jsx/FrappeForm.native.js.map +1 -1
- package/dist/jsx/FrappeFormActions.native.js.map +1 -1
- package/dist/jsx/FrappeFormConnections.native.js.map +1 -1
- package/dist/jsx/FrappeGantt.native.js.map +1 -1
- package/dist/jsx/FrappeImageView.native.js.map +1 -1
- package/dist/jsx/FrappeInsights.native.js.map +1 -1
- package/dist/jsx/FrappeKPICard.native.js.map +1 -1
- package/dist/jsx/FrappeKanban.native.js.map +1 -1
- package/dist/jsx/FrappeLikedBy.native.js.map +1 -1
- package/dist/jsx/FrappeList.native.js.map +1 -1
- package/dist/jsx/FrappeListView.native.js.map +1 -1
- package/dist/jsx/FrappeNotConfigured.native.js.map +1 -1
- package/dist/jsx/FrappeProvider.native.js.map +1 -1
- package/dist/jsx/FrappeReconnectIndicator.native.js.map +1 -1
- package/dist/jsx/FrappeRecordView.native.js.map +1 -1
- package/dist/jsx/FrappeReportBuilder.native.js.map +1 -1
- package/dist/jsx/FrappeReportView.native.js +3 -3
- package/dist/jsx/FrappeReportView.native.js.map +1 -1
- package/dist/jsx/FrappeRowsReader.native.js.map +1 -1
- package/dist/jsx/FrappeTable.mjs +6 -3
- package/dist/jsx/FrappeTable.mjs.map +1 -1
- package/dist/jsx/FrappeTable.native.js +8 -3
- package/dist/jsx/FrappeTable.native.js.map +1 -1
- package/dist/jsx/FrappeTreeView.native.js.map +1 -1
- package/dist/jsx/SyncErrorNotice.native.js.map +1 -1
- package/dist/jsx/commentActions.native.js.map +1 -1
- package/dist/jsx/components/attachments.native.js.map +1 -1
- package/dist/jsx/components/tags.native.js.map +1 -1
- package/dist/jsx/components/timeline.native.js.map +1 -1
- package/dist/jsx/dependsOn.native.js.map +1 -1
- package/dist/jsx/desk/DeskFormPage.native.js.map +1 -1
- package/dist/jsx/desk/DeskFormSidebar.native.js.map +1 -1
- package/dist/jsx/desk/DeskListPage.native.js.map +1 -1
- package/dist/jsx/desk/DeskShell.native.js.map +1 -1
- package/dist/jsx/desk/DeskSidebar.native.js.map +1 -1
- package/dist/jsx/desk/awesomebar.native.js.map +1 -1
- package/dist/jsx/fieldOverrides.native.js.map +1 -1
- package/dist/jsx/fieldRegistry.native.js +31 -31
- package/dist/jsx/fieldRegistry.native.js.map +1 -1
- package/dist/jsx/fields/Barcode/index.native.js.map +1 -1
- package/dist/jsx/fields/Check/index.native.js.map +1 -1
- package/dist/jsx/fields/CodeEditor/index.native.js.map +1 -1
- package/dist/jsx/fields/Color/index.native.js.map +1 -1
- package/dist/jsx/fields/Data/index.native.js.map +1 -1
- package/dist/jsx/fields/Date/catalog.native.js +1 -1
- package/dist/jsx/fields/Date/catalog.native.js.map +1 -1
- package/dist/jsx/fields/Date/dateTimePickerLoader.native.js.map +1 -1
- package/dist/jsx/fields/Date/sheetKeyboard.native.js.map +1 -1
- package/dist/jsx/fields/Date/types.native.js.map +1 -1
- package/dist/jsx/fields/Date/wire.native.js.map +1 -1
- package/dist/jsx/fields/DateRange/index.native.js.map +1 -1
- package/dist/jsx/fields/Duration/index.native.js.map +1 -1
- package/dist/jsx/fields/DynamicLink.native.js.map +1 -1
- package/dist/jsx/fields/FileUpload.native.js.map +1 -1
- package/dist/jsx/fields/FileUploadField/index.native.js.map +1 -1
- package/dist/jsx/fields/Geolocation/index.native.js.map +1 -1
- package/dist/jsx/fields/HTML/index.native.js.map +1 -1
- package/dist/jsx/fields/Heading/index.native.js.map +1 -1
- package/dist/jsx/fields/Icon/index.native.js.map +1 -1
- package/dist/jsx/fields/Link.native.js.map +1 -1
- package/dist/jsx/fields/LinkTree.native.js.map +1 -1
- package/dist/jsx/fields/LongText/index.native.js.map +1 -1
- package/dist/jsx/fields/MentionInput/index.native.js.map +1 -1
- package/dist/jsx/fields/Numeric/index.native.js.map +1 -1
- package/dist/jsx/fields/OTPInput/index.native.js.map +1 -1
- package/dist/jsx/fields/Password/index.native.js.map +1 -1
- package/dist/jsx/fields/Phone/index.native.js.map +1 -1
- package/dist/jsx/fields/Progress/index.native.js.map +1 -1
- package/dist/jsx/fields/RadioGroup/index.native.js.map +1 -1
- package/dist/jsx/fields/Rating/index.native.js.map +1 -1
- package/dist/jsx/fields/ReadOnly/index.native.js.map +1 -1
- package/dist/jsx/fields/Select/index.native.js.map +1 -1
- package/dist/jsx/fields/Signature/index.native.js.map +1 -1
- package/dist/jsx/fields/Slider/index.native.js.map +1 -1
- package/dist/jsx/fields/SmallText/index.native.js.map +1 -1
- package/dist/jsx/fields/Switch/index.native.js.map +1 -1
- package/dist/jsx/fields/TableMultiSelect.native.js.map +1 -1
- package/dist/jsx/fields/TextEditor/types.native.js.map +1 -1
- package/dist/jsx/fields/TimePicker/index.native.js.map +1 -1
- package/dist/jsx/fields/ToggleGroup/index.native.js.map +1 -1
- package/dist/jsx/fields/shared/EditorPreviewPanes.native.js.map +1 -1
- package/dist/jsx/filterFields.native.js.map +1 -1
- package/dist/jsx/formEngine/createPrefill.native.js.map +1 -1
- package/dist/jsx/formEngine/dirtyTracking.native.js.map +1 -1
- package/dist/jsx/formEngine/docLifecycle.native.js.map +1 -1
- package/dist/jsx/formEngine/docPermissions.native.js.map +1 -1
- package/dist/jsx/formEngine/doctypeMeta.native.js.map +1 -1
- package/dist/jsx/formEngine/fetchFrom.native.js.map +1 -1
- package/dist/jsx/formEngine/fieldPermissions.native.js.map +1 -1
- package/dist/jsx/formEngine/formActions.native.js.map +1 -1
- package/dist/jsx/formEngine/formLayout.native.js.map +1 -1
- package/dist/jsx/formEngine/index.native.js.map +1 -1
- package/dist/jsx/formEngine/useAmendedAs.native.js.map +1 -1
- package/dist/jsx/formEngine/useDocRights.native.js.map +1 -1
- package/dist/jsx/formEngine/useFormEngine.native.js.map +1 -1
- package/dist/jsx/formEngine/useSessionRoles.native.js.map +1 -1
- package/dist/jsx/frappeConnections.native.js.map +1 -1
- package/dist/jsx/frappeEventColor.native.js.map +1 -1
- package/dist/jsx/frappeNavigation.native.js.map +1 -1
- package/dist/jsx/frappeStoryTarget.native.js.map +1 -1
- package/dist/jsx/frappeUsers.native.js.map +1 -1
- package/dist/jsx/index.native.js +34 -34
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/insights/InsightsFacetTags.native.js.map +1 -1
- package/dist/jsx/insights/InsightsKpiBand.native.js.map +1 -1
- package/dist/jsx/insights/InsightsLeaders.native.js.map +1 -1
- package/dist/jsx/insights/InsightsRecords.native.js.map +1 -1
- package/dist/jsx/insights/InsightsTable.native.js.map +1 -1
- package/dist/jsx/insights/insightsData.native.js.map +1 -1
- package/dist/jsx/insights/insightsRecord.native.js.map +1 -1
- package/dist/jsx/list/BandFilters.native.js.map +1 -1
- package/dist/jsx/list/FacetBadge.native.js.map +1 -1
- package/dist/jsx/list/FacetList.native.js.map +1 -1
- package/dist/jsx/list/FacetRail.native.js.map +1 -1
- package/dist/jsx/list/ImageWell.native.js.map +1 -1
- package/dist/jsx/list/ListControls.native.js.map +1 -1
- package/dist/jsx/list/ListControlsSheet.native.js.map +1 -1
- package/dist/jsx/list/ListFilterPanel.native.js.map +1 -1
- package/dist/jsx/list/ListSidebarToolbar.native.js.map +1 -1
- package/dist/jsx/list/ListToastHost.native.js.map +1 -1
- package/dist/jsx/list/ListToolsSheet.native.js.map +1 -1
- package/dist/jsx/list/RangeFilter.native.js.map +1 -1
- package/dist/jsx/list/ShufflePanel.native.js.map +1 -1
- package/dist/jsx/list/facetReading.native.js.map +1 -1
- package/dist/jsx/list/favorites.native.js.map +1 -1
- package/dist/jsx/list/listColumns.mjs +43 -7
- package/dist/jsx/list/listColumns.mjs.map +1 -1
- package/dist/jsx/list/listColumns.native.js +51 -8
- package/dist/jsx/list/listColumns.native.js.map +1 -1
- package/dist/jsx/list/listControls.fixture.native.js.map +1 -1
- package/dist/jsx/list/listFields.mjs +2 -0
- package/dist/jsx/list/listFields.mjs.map +1 -1
- package/dist/jsx/list/listFields.native.js +5 -0
- package/dist/jsx/list/listFields.native.js.map +1 -1
- package/dist/jsx/list/listFormat.native.js.map +1 -1
- package/dist/jsx/list/listState.native.js.map +1 -1
- package/dist/jsx/list/recordLook.native.js.map +1 -1
- package/dist/jsx/list/statusColors.native.js.map +1 -1
- package/dist/jsx/list/useListControls.native.js.map +1 -1
- package/dist/jsx/liveErrors.native.js.map +1 -1
- package/dist/jsx/measures.native.js.map +1 -1
- package/dist/jsx/record/RecordBars.native.js.map +1 -1
- package/dist/jsx/record/RecordGallery.native.js.map +1 -1
- package/dist/jsx/record/RecordHero.native.js.map +1 -1
- package/dist/jsx/record/RecordPage.native.js.map +1 -1
- package/dist/jsx/record/RecordPager.native.js.map +1 -1
- package/dist/jsx/record/RecordRows.native.js.map +1 -1
- package/dist/jsx/record/recordData.native.js.map +1 -1
- package/dist/jsx/record/recordSections.native.js.map +1 -1
- package/dist/jsx/recordShape.native.js.map +1 -1
- package/dist/jsx/report/ReportGrid.native.js.map +1 -1
- package/dist/jsx/report/ReportViewToolbar.native.js.map +1 -1
- package/dist/jsx/report/queryReport.native.js.map +1 -1
- package/dist/jsx/report/queryReportColumns.native.js.map +1 -1
- package/dist/jsx/report/reportViewModel.native.js.map +1 -1
- package/dist/jsx/report/savedReports.native.js.map +1 -1
- package/dist/jsx/report/useFrappeReport.native.js.map +1 -1
- package/dist/jsx/report/useQueryReport.native.js.map +1 -1
- package/dist/jsx/resolveControl.native.js.map +1 -1
- package/dist/jsx/schemaForm/SchemaWizard.native.js.map +1 -1
- package/dist/jsx/schemaForm/applyFieldOrder.native.js.map +1 -1
- package/dist/jsx/schemaForm/index.mjs +20 -2
- package/dist/jsx/schemaForm/index.mjs.map +1 -1
- package/dist/jsx/schemaForm/index.native.js +44 -4
- package/dist/jsx/schemaForm/index.native.js.map +1 -1
- package/dist/jsx/shared/devWarn.native.js.map +1 -1
- package/dist/jsx/shared/useKeyboardInset.native.js.map +1 -1
- package/dist/jsx/syncError.native.js.map +1 -1
- package/dist/jsx/useConnectionFilters.native.js.map +1 -1
- package/dist/jsx/useFrappeAggregate.native.js.map +1 -1
- package/dist/jsx/useFrappeFacets.native.js.map +1 -1
- package/dist/jsx/useFrappeForm.native.js.map +1 -1
- package/dist/jsx/useFrappePagination.native.js.map +1 -1
- package/dist/jsx/useFrappeRows.native.js.map +1 -1
- package/package.json +16 -16
- package/src/FrappeTable.tsx +17 -12
- package/src/list/listColumns.spec.tsx +37 -1
- package/src/list/listColumns.tsx +67 -21
- package/src/list/listFields.spec.ts +15 -0
- package/src/list/listFields.ts +5 -0
- package/src/schemaForm/SchemaForm.flat.spec.tsx +27 -1
- package/src/schemaForm/index.tsx +32 -1
- package/types/FrappeTable.d.ts +1 -1
- package/types/FrappeTable.d.ts.map +1 -1
- package/types/list/listColumns.d.ts +9 -1
- package/types/list/listColumns.d.ts.map +1 -1
- package/types/list/listFields.d.ts.map +1 -1
- package/types/schemaForm/index.d.ts +5 -0
- package/types/schemaForm/index.d.ts.map +1 -1
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { renderWithProviders } from "@multiplatform.one/test-utils";
|
|
2
2
|
import { fireEvent, screen } from "@testing-library/react";
|
|
3
3
|
import { afterEach, describe, expect, it, vi } from "vitest";
|
|
4
|
-
import {
|
|
4
|
+
import type { DoctypeMeta } from "../formEngine/doctypeMeta";
|
|
5
|
+
import { absoluteFileUrl, buildListColumns } from "./listColumns";
|
|
5
6
|
|
|
6
7
|
const platform = vi.hoisted(() => ({ web: true }));
|
|
7
8
|
vi.mock("@multiplatform.one/components", async (importOriginal) => ({
|
|
@@ -61,3 +62,38 @@ describe("document list title", () => {
|
|
|
61
62
|
expect(getComputedStyle(screen.getByText(title)).whiteSpace).toBe("nowrap");
|
|
62
63
|
});
|
|
63
64
|
});
|
|
65
|
+
|
|
66
|
+
describe("image field media column", () => {
|
|
67
|
+
const meta: DoctypeMeta = {
|
|
68
|
+
name: "Pokemon",
|
|
69
|
+
title_field: "pokemon_name",
|
|
70
|
+
image_field: "sprite_front",
|
|
71
|
+
fields: [
|
|
72
|
+
{ fieldname: "pokemon_name", fieldtype: "Data", label: "Pokemon Name", in_list_view: 1 },
|
|
73
|
+
{
|
|
74
|
+
fieldname: "sprite_front",
|
|
75
|
+
fieldtype: "Attach Image",
|
|
76
|
+
label: "Sprite (Front)",
|
|
77
|
+
in_list_view: 1,
|
|
78
|
+
},
|
|
79
|
+
],
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
it("adds one media column for the image field and no plain column for it", () => {
|
|
83
|
+
const columns = buildListColumns({ meta, t: (_key, fallback) => fallback });
|
|
84
|
+
const image = columns.filter((column) => column.id === "sprite_front");
|
|
85
|
+
expect(image).toHaveLength(1);
|
|
86
|
+
expect(image[0].meta?.role).toBe("media");
|
|
87
|
+
expect(image[0].meta?.label).toBe("Sprite (Front)");
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
it("joins a relative file path to the site origin", () => {
|
|
91
|
+
expect(absoluteFileUrl("/files/a.png", "https://site.test/")).toBe(
|
|
92
|
+
"https://site.test/files/a.png",
|
|
93
|
+
);
|
|
94
|
+
expect(absoluteFileUrl("https://cdn.test/a.png", "https://site.test")).toBe(
|
|
95
|
+
"https://cdn.test/a.png",
|
|
96
|
+
);
|
|
97
|
+
expect(absoluteFileUrl("", "https://site.test")).toBeUndefined();
|
|
98
|
+
});
|
|
99
|
+
});
|
package/src/list/listColumns.tsx
CHANGED
|
@@ -14,6 +14,7 @@ import {
|
|
|
14
14
|
Avatar,
|
|
15
15
|
Anchor,
|
|
16
16
|
Chip,
|
|
17
|
+
Image,
|
|
17
18
|
Text,
|
|
18
19
|
XStack,
|
|
19
20
|
isWeb,
|
|
@@ -25,7 +26,7 @@ import {
|
|
|
25
26
|
import { Button } from "@multiplatform.one/forms";
|
|
26
27
|
import { ChatCircleIcon, HeartIcon } from "@phosphor-icons/react";
|
|
27
28
|
import type { DataTableColumn } from "@multiplatform.one/table";
|
|
28
|
-
import { formatAbsoluteDateTime } from "@multiplatform.one/theme";
|
|
29
|
+
import { formatAbsoluteDateTime, useLayoutSizeClass } from "@multiplatform.one/theme";
|
|
29
30
|
import type { PermLevelMatrix } from "../formEngine/fieldPermissions";
|
|
30
31
|
import type { DocFieldMeta, DoctypeMeta } from "../formEngine/doctypeMeta";
|
|
31
32
|
// Field selection + permlevel pruning live in the pure listFields module
|
|
@@ -70,6 +71,19 @@ export interface BuildListColumnsArgs {
|
|
|
70
71
|
* remaining values add (or toggle off) a tuple instead of opening the doc.
|
|
71
72
|
*/
|
|
72
73
|
onFilterClick?: (fieldname: string, value: string) => void;
|
|
74
|
+
/**
|
|
75
|
+
* Site origin for relative `/files/...` image paths. With `meta.image_field`
|
|
76
|
+
* set, the list gets a `media` column: the document list's leading
|
|
77
|
+
* thumbnail (desk list_view fetches the image field the same way).
|
|
78
|
+
*/
|
|
79
|
+
baseURL?: string;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/** A relative Frappe file path joined to the site origin. */
|
|
83
|
+
export function absoluteFileUrl(value: unknown, baseURL?: string): string | undefined {
|
|
84
|
+
if (typeof value !== "string" || value === "") return undefined;
|
|
85
|
+
if (/^(?:https?:|data:|blob:)/.test(value) || !baseURL) return value;
|
|
86
|
+
return `${baseURL.replace(/\/$/, "")}${value.startsWith("/") ? "" : "/"}${value}`;
|
|
73
87
|
}
|
|
74
88
|
|
|
75
89
|
const NUMERIC_FIELDTYPES = new Set(["Currency", "Float", "Int", "Percent", "Duration"]);
|
|
@@ -273,6 +287,7 @@ function ActivityCluster({
|
|
|
273
287
|
onToggleLike?: (name: string, nextLiked: boolean) => void;
|
|
274
288
|
likeOverrides?: Record<string, boolean>;
|
|
275
289
|
}) {
|
|
290
|
+
const compact = useLayoutSizeClass() === "compact";
|
|
276
291
|
const assignees = parseUserListField(doc._assign);
|
|
277
292
|
const comments = commentCount(doc);
|
|
278
293
|
const modified = doc.modified ? String(doc.modified) : "";
|
|
@@ -285,9 +300,13 @@ function ActivityCluster({
|
|
|
285
300
|
minWidth={0}
|
|
286
301
|
testID="list-activity"
|
|
287
302
|
>
|
|
288
|
-
{assignees
|
|
289
|
-
|
|
290
|
-
|
|
303
|
+
{/* Desk hides assignees, comments and likes on phones
|
|
304
|
+
(list_view.js `list-row-activity hidden-xs`). */}
|
|
305
|
+
{compact
|
|
306
|
+
? null
|
|
307
|
+
: assignees
|
|
308
|
+
.slice(0, 3)
|
|
309
|
+
.map((user) => <Avatar key={user} name={user} size={20} circular aria-label={user} />)}
|
|
291
310
|
{modified ? (
|
|
292
311
|
<Text
|
|
293
312
|
fontSize="$2"
|
|
@@ -297,23 +316,27 @@ function ActivityCluster({
|
|
|
297
316
|
{formatTimeAgo(modified)}
|
|
298
317
|
</Text>
|
|
299
318
|
) : null}
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
319
|
+
{compact ? null : (
|
|
320
|
+
<XStack
|
|
321
|
+
alignItems="center"
|
|
322
|
+
gap="$1"
|
|
323
|
+
{...({ "aria-label": t("list.comments", "Comments") } as Record<string, unknown>)}
|
|
324
|
+
>
|
|
325
|
+
<ChatCircleIcon size={14} />
|
|
326
|
+
<Text fontSize="$2" color="$color9">
|
|
327
|
+
{comments}
|
|
328
|
+
</Text>
|
|
329
|
+
</XStack>
|
|
330
|
+
)}
|
|
331
|
+
{compact ? null : (
|
|
332
|
+
<LikeControl
|
|
333
|
+
doc={doc}
|
|
334
|
+
t={t}
|
|
335
|
+
sessionUser={sessionUser}
|
|
336
|
+
onToggleLike={onToggleLike}
|
|
337
|
+
likeOverrides={likeOverrides}
|
|
338
|
+
/>
|
|
339
|
+
)}
|
|
317
340
|
</XStack>
|
|
318
341
|
);
|
|
319
342
|
}
|
|
@@ -409,9 +432,14 @@ export function buildListColumns({
|
|
|
409
432
|
permMatrix,
|
|
410
433
|
getDocHref,
|
|
411
434
|
onFilterClick,
|
|
435
|
+
baseURL,
|
|
412
436
|
}: BuildListColumnsArgs): DataTableColumn<ListRow>[] {
|
|
413
437
|
const titleField = meta?.title_field || "name";
|
|
414
438
|
const columns: DataTableColumn<ListRow>[] = [];
|
|
439
|
+
const imageField = meta?.image_field;
|
|
440
|
+
const imageMeta = imageField
|
|
441
|
+
? meta?.fields?.find((field) => field.fieldname === imageField)
|
|
442
|
+
: undefined;
|
|
415
443
|
|
|
416
444
|
const titleMeta = meta?.fields?.find((field) => field.fieldname === titleField);
|
|
417
445
|
columns.push({
|
|
@@ -457,7 +485,25 @@ export function buildListColumns({
|
|
|
457
485
|
},
|
|
458
486
|
});
|
|
459
487
|
|
|
488
|
+
if (imageField) {
|
|
489
|
+
const label = imageMeta?.label || imageField;
|
|
490
|
+
columns.push({
|
|
491
|
+
id: imageField,
|
|
492
|
+
header: label,
|
|
493
|
+
accessorKey: imageField,
|
|
494
|
+
meta: { role: "media", label },
|
|
495
|
+
sortable: false,
|
|
496
|
+
filterable: false,
|
|
497
|
+
enableHiding: true,
|
|
498
|
+
cell: ({ getValue }) => {
|
|
499
|
+
const src = absoluteFileUrl(getValue(), baseURL);
|
|
500
|
+
return src ? <Image src={src} alt="" size="extraSmall" framed /> : null;
|
|
501
|
+
},
|
|
502
|
+
});
|
|
503
|
+
}
|
|
504
|
+
|
|
460
505
|
for (const field of listViewFields(meta, titleField, permMatrix)) {
|
|
506
|
+
if (field.fieldname === imageField) continue;
|
|
461
507
|
columns.push({
|
|
462
508
|
id: field.fieldname,
|
|
463
509
|
header: field.label || field.fieldname,
|
|
@@ -145,3 +145,18 @@ describe("listDocumentColumnIds desk list anatomy", () => {
|
|
|
145
145
|
]);
|
|
146
146
|
});
|
|
147
147
|
});
|
|
148
|
+
|
|
149
|
+
describe("listFieldsToFetch image field", () => {
|
|
150
|
+
it("fetches the doctype's image field like desk's list_view", () => {
|
|
151
|
+
const withImage: DoctypeMeta = {
|
|
152
|
+
name: "Pokemon",
|
|
153
|
+
title_field: "pokemon_name",
|
|
154
|
+
image_field: "sprite_front",
|
|
155
|
+
fields: [
|
|
156
|
+
{ fieldname: "pokemon_name", fieldtype: "Data", label: "Pokemon Name", in_list_view: 1 },
|
|
157
|
+
{ fieldname: "sprite_front", fieldtype: "Attach Image", label: "Sprite (Front)" },
|
|
158
|
+
],
|
|
159
|
+
};
|
|
160
|
+
expect(listFieldsToFetch(withImage)).toContain("sprite_front");
|
|
161
|
+
});
|
|
162
|
+
});
|
package/src/list/listFields.ts
CHANGED
|
@@ -26,6 +26,11 @@ export function listFieldsToFetch(meta?: DoctypeMeta, permMatrix?: PermLevelMatr
|
|
|
26
26
|
"_comments",
|
|
27
27
|
]);
|
|
28
28
|
if (meta?.title_field) fields.add(meta.title_field);
|
|
29
|
+
// Desk list_view.js fetches the image field beside the title field.
|
|
30
|
+
const image = meta?.image_field
|
|
31
|
+
? meta.fields?.find((field) => field.fieldname === meta.image_field)
|
|
32
|
+
: undefined;
|
|
33
|
+
if (image && fieldLevelReadable(image, permMatrix)) fields.add(image.fieldname);
|
|
29
34
|
for (const field of meta?.fields ?? []) {
|
|
30
35
|
if (field.in_list_view && field.fieldname && fieldLevelReadable(field, permMatrix)) {
|
|
31
36
|
fields.add(field.fieldname);
|
|
@@ -8,7 +8,7 @@ import { screen } from "@testing-library/react";
|
|
|
8
8
|
import { renderWithProviders } from "@multiplatform.one/test-utils";
|
|
9
9
|
import { describe, expect, it, vi } from "vitest";
|
|
10
10
|
import type { FieldSchema } from "../fieldRegistry";
|
|
11
|
-
import { SchemaForm, type FormSchema } from "./index";
|
|
11
|
+
import { SchemaForm, hugRuns, type FormSchema } from "./index";
|
|
12
12
|
|
|
13
13
|
const vitals: FieldSchema[] = [
|
|
14
14
|
{ type: "Data", name: "pokemon_name", label: "Name" },
|
|
@@ -189,4 +189,30 @@ describe("flat columns", () => {
|
|
|
189
189
|
expect(columns[0].textContent).toContain("Weight");
|
|
190
190
|
expect(columns[1].textContent).toContain("Front");
|
|
191
191
|
});
|
|
192
|
+
|
|
193
|
+
it("puts adjacent number fields in one wrapping row", () => {
|
|
194
|
+
renderCompact();
|
|
195
|
+
const runs = document.querySelectorAll("[data-mpo-schema-form-hug-run]");
|
|
196
|
+
expect(runs.length).toBe(1);
|
|
197
|
+
expect(runs[0].textContent).toContain("Height");
|
|
198
|
+
expect(runs[0].textContent).toContain("Weight");
|
|
199
|
+
expect(runs[0].textContent).not.toContain("Name");
|
|
200
|
+
});
|
|
201
|
+
});
|
|
202
|
+
|
|
203
|
+
describe("hugRuns", () => {
|
|
204
|
+
it("groups consecutive numbers and leaves other fields alone", () => {
|
|
205
|
+
const runs = hugRuns([
|
|
206
|
+
{ type: "Int", name: "a", label: "A" },
|
|
207
|
+
{ type: "Data", name: "b", label: "B" },
|
|
208
|
+
{ type: "Int", name: "c", label: "C" },
|
|
209
|
+
{ type: "Float", name: "d", label: "D" },
|
|
210
|
+
{ type: "Currency", name: "e", label: "E" },
|
|
211
|
+
]);
|
|
212
|
+
expect(runs.map((run) => run.map((field) => field.name))).toEqual([
|
|
213
|
+
["a"],
|
|
214
|
+
["b"],
|
|
215
|
+
["c", "d", "e"],
|
|
216
|
+
]);
|
|
217
|
+
});
|
|
192
218
|
});
|
package/src/schemaForm/index.tsx
CHANGED
|
@@ -436,7 +436,21 @@ function SchemaFormSectionCard({
|
|
|
436
436
|
data-mpo-schema-form-col=""
|
|
437
437
|
data-mpo-schema-form-col-hug=""
|
|
438
438
|
>
|
|
439
|
-
{column.fields.map((
|
|
439
|
+
{hugRuns(column.fields).map((run) =>
|
|
440
|
+
run.length > 1 ? (
|
|
441
|
+
<XStack
|
|
442
|
+
key={run[0].name}
|
|
443
|
+
{...knobProps.gapLg}
|
|
444
|
+
flexWrap="wrap"
|
|
445
|
+
alignItems="flex-start"
|
|
446
|
+
data-mpo-schema-form-hug-run=""
|
|
447
|
+
>
|
|
448
|
+
{run.map((field) => renderField(field))}
|
|
449
|
+
</XStack>
|
|
450
|
+
) : (
|
|
451
|
+
renderField(run[0])
|
|
452
|
+
),
|
|
453
|
+
)}
|
|
440
454
|
</YStack>
|
|
441
455
|
))}
|
|
442
456
|
</XStack>
|
|
@@ -470,6 +484,23 @@ function SchemaFormSectionCard({
|
|
|
470
484
|
);
|
|
471
485
|
}
|
|
472
486
|
|
|
487
|
+
/**
|
|
488
|
+
* A flat column's adjacent number fields share one wrapping row: each hugs
|
|
489
|
+
* its value, so stacking them one per line leaves the row mostly empty.
|
|
490
|
+
*/
|
|
491
|
+
export function hugRuns(fields: FieldSchema[]): FieldSchema[][] {
|
|
492
|
+
const runs: FieldSchema[][] = [];
|
|
493
|
+
for (const field of fields) {
|
|
494
|
+
const last = runs[runs.length - 1];
|
|
495
|
+
if (numericFieldTypes.has(field.type) && last && numericFieldTypes.has(last[0].type)) {
|
|
496
|
+
last.push(field);
|
|
497
|
+
} else {
|
|
498
|
+
runs.push([field]);
|
|
499
|
+
}
|
|
500
|
+
}
|
|
501
|
+
return runs;
|
|
502
|
+
}
|
|
503
|
+
|
|
473
504
|
// Even columns split the row and stack under ~250px each (DG-FORM-09).
|
|
474
505
|
const evenColumn = { flex: 1, flexBasis: 250, minWidth: 250, maxWidth: "100%" } as const;
|
|
475
506
|
// Hugging columns take their fields' width and wrap when the row runs out;
|
package/types/FrappeTable.d.ts
CHANGED
|
@@ -91,7 +91,7 @@ export interface FrappeTableProps<TDoc extends {
|
|
|
91
91
|
* Requires onStateChange for state sync; fetches data based on table state.
|
|
92
92
|
*/
|
|
93
93
|
serverSide?: boolean;
|
|
94
|
-
/**
|
|
94
|
+
/** Ask the server for a total (default true). Off when the host owns the count; either page mode then skips get_count. */
|
|
95
95
|
fetchTotalCount?: boolean;
|
|
96
96
|
/**
|
|
97
97
|
* Callback when filters, sort, or pagination change.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrappeTable.d.ts","sourceRoot":"","sources":["../src/FrappeTable.tsx"],"names":[],"mappings":"AAOA,OAAO,EAEL,KAAK,eAAe,EAEpB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,eAAe,EAErB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,KAA4D,MAAM,OAAO,CAAC;AAOjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAQ7D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,gBAAgB,CAAC,IAAI,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAE,SAAQ,IAAI,CAC5F,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAC7B,MAAM,GAAG,SAAS,CACnB;IACC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,IAAI,CAAC,EAAE;QACL,0CAA0C;QAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,sFAAsF;QACtF,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAClD,oDAAoD;QACpD,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,kDAAkD;IAClD,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;IAC3C;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC;IAC1C,8BAA8B;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,IAAI,GAAG,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IACpE;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;IAC1C,+BAA+B;IAC/B,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,4BAA4B;IAC5B,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,CAAC,SAAS,CAAC;IAC1C,mCAAmC;IACnC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6CAA6C;IAC7C,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,wCAAwC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,
|
|
1
|
+
{"version":3,"file":"FrappeTable.d.ts","sourceRoot":"","sources":["../src/FrappeTable.tsx"],"names":[],"mappings":"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"}
|
|
@@ -34,8 +34,16 @@ export interface BuildListColumnsArgs {
|
|
|
34
34
|
* remaining values add (or toggle off) a tuple instead of opening the doc.
|
|
35
35
|
*/
|
|
36
36
|
onFilterClick?: (fieldname: string, value: string) => void;
|
|
37
|
+
/**
|
|
38
|
+
* Site origin for relative `/files/...` image paths. With `meta.image_field`
|
|
39
|
+
* set, the list gets a `media` column: the document list's leading
|
|
40
|
+
* thumbnail (desk list_view fetches the image field the same way).
|
|
41
|
+
*/
|
|
42
|
+
baseURL?: string;
|
|
37
43
|
}
|
|
44
|
+
/** A relative Frappe file path joined to the site origin. */
|
|
45
|
+
export declare function absoluteFileUrl(value: unknown, baseURL?: string): string | undefined;
|
|
38
46
|
/** Build the DataTable columns for a doctype list from its meta. */
|
|
39
|
-
export declare function buildListColumns({ meta, t, sessionUser, onToggleLike, likeOverrides, permMatrix, getDocHref, onFilterClick, }: BuildListColumnsArgs): DataTableColumn<ListRow>[];
|
|
47
|
+
export declare function buildListColumns({ meta, t, sessionUser, onToggleLike, likeOverrides, permMatrix, getDocHref, onFilterClick, baseURL, }: BuildListColumnsArgs): DataTableColumn<ListRow>[];
|
|
40
48
|
export {};
|
|
41
49
|
//# sourceMappingURL=listColumns.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listColumns.d.ts","sourceRoot":"","sources":["../../src/list/listColumns.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"listColumns.d.ts","sourceRoot":"","sources":["../../src/list/listColumns.tsx"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAgB,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAO3E,6EAA6E;AAC7E,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAEvC,KAAK,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC;AAE3D,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,CAAC,EAAE,SAAS,CAAC;IACb,iEAAiE;IACjE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1D,wDAAwD;IACxD,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,0EAA0E;IAC1E,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IACtC;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,6DAA6D;AAC7D,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAIpF;AAkVD,oEAAoE;AACpE,wBAAgB,gBAAgB,CAAC,EAC/B,IAAI,EACJ,CAAC,EACD,WAAW,EACX,YAAY,EACZ,aAAa,EACb,UAAU,EACV,UAAU,EACV,aAAa,EACb,OAAO,GACR,EAAE,oBAAoB,GAAG,eAAe,CAAC,OAAO,CAAC,EAAE,CAgHnD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listFields.d.ts","sourceRoot":"","sources":["../../src/list/listFields.ts"],"names":[],"mappings":"AAQA,OAAO,EAAgB,KAAK,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAO3E,uEAAuE;AACvE,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,eAAe,GAAG,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"listFields.d.ts","sourceRoot":"","sources":["../../src/list/listFields.ts"],"names":[],"mappings":"AAQA,OAAO,EAAgB,KAAK,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAO3E,uEAAuE;AACvE,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,eAAe,GAAG,MAAM,EAAE,CAsB5F;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,WAAW,GAAG,SAAS,EAC7B,UAAU,EAAE,MAAM,EAClB,UAAU,CAAC,EAAE,eAAe,GAC3B,YAAY,EAAE,CAShB;AAED,gFAAgF;AAChF,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,eAAe,GAAG,MAAM,EAAE,CAOhG"}
|
|
@@ -99,4 +99,9 @@ export interface SchemaFormProps {
|
|
|
99
99
|
layout?: "cards" | "flat";
|
|
100
100
|
}
|
|
101
101
|
export declare function SchemaForm({ schema, doc, setValue, errors, disabled, overrides, hideFields, readOnlyFields, requiredMarking, sectionHeadingLevel, renderFieldWrapper, order, layout, }: SchemaFormProps): import("react/jsx-runtime").JSX.Element;
|
|
102
|
+
/**
|
|
103
|
+
* A flat column's adjacent number fields share one wrapping row: each hugs
|
|
104
|
+
* its value, so stacking them one per line leaves the row mostly empty.
|
|
105
|
+
*/
|
|
106
|
+
export declare function hugRuns(fields: FieldSchema[]): FieldSchema[][];
|
|
102
107
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schemaForm/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,KAAkB,MAAM,OAAO,CAAC;AAKvC,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGtE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAMxE,oEAAoE;AACpE,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AAED,mEAAmE;AACnE,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,2EAA2E;IAC3E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,wCAAwC;AACxC,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,gEAAgE;IAChE,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AAED,wDAAwD;AACxD,MAAM,MAAM,aAAa,GACrB,CAAC,CAAC,KAAK,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,GAC9C;IAAE,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAA;CAAE,GACpD;IAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAE,CAAC;AAEnC,MAAM,WAAW,eAAe;IAC9B,mDAAmD;IACnD,MAAM,EAAE,UAAU,CAAC;IACnB,4DAA4D;IAC5D,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACzB,4CAA4C;IAC5C,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC1C,2BAA2B;IAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,sCAAsC;IACtC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B;;;OAGG;IACH,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,YAAY,CAAC;IACnC;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC;IACxF;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC3B;AAmCD,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,GAAG,EACH,QAAQ,EACR,MAAW,EACX,QAAgB,EAChB,SAAc,EACd,UAAe,EACf,cAAmB,EACnB,eAAwB,EACxB,mBAAuB,EACvB,kBAAkB,EAClB,KAAK,EACL,MAAgB,GACjB,EAAE,eAAe,2CAuKjB"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schemaForm/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,KAAkB,MAAM,OAAO,CAAC;AAKvC,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGtE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAMxE,oEAAoE;AACpE,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AAED,mEAAmE;AACnE,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,2EAA2E;IAC3E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,wCAAwC;AACxC,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,gEAAgE;IAChE,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AAED,wDAAwD;AACxD,MAAM,MAAM,aAAa,GACrB,CAAC,CAAC,KAAK,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,GAC9C;IAAE,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAA;CAAE,GACpD;IAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAE,CAAC;AAEnC,MAAM,WAAW,eAAe;IAC9B,mDAAmD;IACnD,MAAM,EAAE,UAAU,CAAC;IACnB,4DAA4D;IAC5D,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACzB,4CAA4C;IAC5C,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC1C,2BAA2B;IAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,sCAAsC;IACtC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B;;;OAGG;IACH,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,YAAY,CAAC;IACnC;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC;IACxF;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC3B;AAmCD,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,GAAG,EACH,QAAQ,EACR,MAAW,EACX,QAAgB,EAChB,SAAc,EACd,UAAe,EACf,cAAmB,EACnB,eAAwB,EACxB,mBAAuB,EACvB,kBAAkB,EAClB,KAAK,EACL,MAAgB,GACjB,EAAE,eAAe,2CAuKjB;AAqJD;;;GAGG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,EAAE,CAW9D"}
|