@multiplatform.one/frappe-ui 7.23.2 → 7.25.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.cjs +1 -1
- package/dist/cjs/FrappeCalendar.native.js +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.cjs +1 -1
- package/dist/cjs/FrappeDashboard.native.js +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.cjs +1 -1
- package/dist/cjs/FrappeImageView.native.js +1 -1
- package/dist/cjs/FrappeImageView.native.js.map +1 -1
- package/dist/cjs/FrappeInsights.cjs +380 -0
- package/dist/cjs/FrappeInsights.native.js +447 -0
- package/dist/cjs/FrappeInsights.native.js.map +1 -0
- package/dist/cjs/FrappeKPICard.native.js.map +1 -1
- package/dist/cjs/FrappeKanban.native.js.map +1 -1
- package/dist/cjs/FrappeLikedBy.cjs +5 -2
- package/dist/cjs/FrappeLikedBy.native.js +5 -2
- package/dist/cjs/FrappeLikedBy.native.js.map +1 -1
- package/dist/cjs/FrappeList.native.js.map +1 -1
- package/dist/cjs/FrappeListView.cjs +392 -38
- package/dist/cjs/FrappeListView.native.js +454 -41
- 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.cjs +199 -0
- package/dist/cjs/FrappeRecordView.native.js +218 -0
- package/dist/cjs/FrappeRecordView.native.js.map +1 -0
- package/dist/cjs/FrappeReportBuilder.cjs +2 -2
- package/dist/cjs/FrappeReportBuilder.native.js +2 -2
- 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.native.js.map +1 -1
- package/dist/cjs/FrappeTreeView.cjs +1 -1
- package/dist/cjs/FrappeTreeView.native.js +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.cjs +1 -1
- package/dist/cjs/desk/awesomebar.native.js +3 -3
- 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/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.cjs +18 -11
- package/dist/cjs/fields/Heading/index.native.js +21 -12
- 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.cjs +12 -2
- package/dist/cjs/frappeNavigation.native.js +13 -2
- 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.cjs +34 -0
- package/dist/cjs/index.native.js +68 -34
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/insights/InsightsFacetTags.cjs +147 -0
- package/dist/cjs/insights/InsightsFacetTags.native.js +165 -0
- package/dist/cjs/insights/InsightsFacetTags.native.js.map +1 -0
- package/dist/cjs/insights/InsightsKpiBand.cjs +124 -0
- package/dist/cjs/insights/InsightsKpiBand.native.js +133 -0
- package/dist/cjs/insights/InsightsKpiBand.native.js.map +1 -0
- package/dist/cjs/insights/InsightsLeaders.cjs +150 -0
- package/dist/cjs/insights/InsightsLeaders.native.js +178 -0
- package/dist/cjs/insights/InsightsLeaders.native.js.map +1 -0
- package/dist/cjs/insights/InsightsRecords.cjs +105 -0
- package/dist/cjs/insights/InsightsRecords.native.js +109 -0
- package/dist/cjs/insights/InsightsRecords.native.js.map +1 -0
- package/dist/cjs/insights/InsightsTable.cjs +157 -0
- package/dist/cjs/insights/InsightsTable.native.js +194 -0
- package/dist/cjs/insights/InsightsTable.native.js.map +1 -0
- package/dist/cjs/insights/insightsData.cjs +114 -0
- package/dist/cjs/insights/insightsData.native.js +220 -0
- package/dist/cjs/insights/insightsData.native.js.map +1 -0
- package/dist/cjs/insights/insightsRecord.cjs +35 -0
- package/dist/cjs/insights/insightsRecord.native.js +38 -0
- package/dist/cjs/insights/insightsRecord.native.js.map +1 -0
- package/dist/cjs/list/FacetBadge.cjs +62 -0
- package/dist/cjs/list/FacetBadge.native.js +66 -0
- package/dist/cjs/list/FacetBadge.native.js.map +1 -0
- package/dist/cjs/list/FacetRail.cjs +199 -0
- package/dist/cjs/list/FacetRail.native.js +223 -0
- package/dist/cjs/list/FacetRail.native.js.map +1 -0
- package/dist/cjs/list/ImageWell.cjs +111 -0
- package/dist/cjs/list/ImageWell.native.js +126 -0
- package/dist/cjs/list/ImageWell.native.js.map +1 -0
- package/dist/cjs/list/ListControls.cjs +226 -0
- package/dist/cjs/list/ListControls.native.js +252 -0
- package/dist/cjs/list/ListControls.native.js.map +1 -0
- package/dist/cjs/list/ListToastHost.cjs +54 -0
- package/dist/cjs/list/ListToastHost.native.js +59 -0
- package/dist/cjs/list/ListToastHost.native.js.map +1 -0
- package/dist/cjs/list/RangeFilter.cjs +122 -0
- package/dist/cjs/list/RangeFilter.native.js +135 -0
- package/dist/cjs/list/RangeFilter.native.js.map +1 -0
- package/dist/cjs/list/RecordCard.cjs +233 -0
- package/dist/cjs/list/RecordCard.native.js +173 -0
- package/dist/cjs/list/RecordCard.native.js.map +1 -0
- package/dist/cjs/list/ShufflePanel.cjs +112 -0
- package/dist/cjs/list/ShufflePanel.native.js +139 -0
- package/dist/cjs/list/ShufflePanel.native.js.map +1 -0
- package/dist/cjs/list/facetReading.cjs +71 -0
- package/dist/cjs/list/facetReading.native.js +163 -0
- package/dist/cjs/list/facetReading.native.js.map +1 -0
- package/dist/cjs/list/favorites.cjs +79 -0
- package/dist/cjs/list/favorites.native.js +91 -0
- package/dist/cjs/list/favorites.native.js.map +1 -0
- package/dist/cjs/list/listColumns.native.js.map +1 -1
- 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.cjs +100 -0
- package/dist/cjs/list/listState.native.js +234 -0
- package/dist/cjs/list/listState.native.js.map +1 -0
- package/dist/cjs/list/recordLook.cjs +35 -0
- package/dist/cjs/list/recordLook.native.js +39 -0
- package/dist/cjs/list/recordLook.native.js.map +1 -0
- package/dist/cjs/list/statusColors.native.js.map +1 -1
- package/dist/cjs/list/useListControls.cjs +189 -0
- package/dist/cjs/list/useListControls.native.js +272 -0
- package/dist/cjs/list/useListControls.native.js.map +1 -0
- package/dist/cjs/liveErrors.native.js.map +1 -1
- package/dist/cjs/record/RecordBars.cjs +200 -0
- package/dist/cjs/record/RecordBars.native.js +225 -0
- package/dist/cjs/record/RecordBars.native.js.map +1 -0
- package/dist/cjs/record/RecordGallery.cjs +67 -0
- package/dist/cjs/record/RecordGallery.native.js +75 -0
- package/dist/cjs/record/RecordGallery.native.js.map +1 -0
- package/dist/cjs/record/RecordHero.cjs +239 -0
- package/dist/cjs/record/RecordHero.native.js +250 -0
- package/dist/cjs/record/RecordHero.native.js.map +1 -0
- package/dist/cjs/record/RecordPage.cjs +330 -0
- package/dist/cjs/record/RecordPage.native.js +364 -0
- package/dist/cjs/record/RecordPage.native.js.map +1 -0
- package/dist/cjs/record/RecordPager.cjs +125 -0
- package/dist/cjs/record/RecordPager.native.js +130 -0
- package/dist/cjs/record/RecordPager.native.js.map +1 -0
- package/dist/cjs/record/RecordRows.cjs +126 -0
- package/dist/cjs/record/RecordRows.native.js +140 -0
- package/dist/cjs/record/RecordRows.native.js.map +1 -0
- package/dist/cjs/record/recordData.cjs +122 -0
- package/dist/cjs/record/recordData.native.js +189 -0
- package/dist/cjs/record/recordData.native.js.map +1 -0
- package/dist/cjs/record/recordSections.cjs +30 -0
- package/dist/cjs/record/recordSections.native.js +33 -0
- package/dist/cjs/record/recordSections.native.js.map +1 -0
- 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.native.js +1 -1
- 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/useFrappePagination.native.js.map +1 -1
- package/dist/cjs/useFrappeRows.native.js.map +1 -1
- package/dist/esm/FrappeCalendar.mjs +1 -1
- package/dist/esm/FrappeCalendar.mjs.map +1 -1
- package/dist/esm/FrappeCalendar.native.js +1 -1
- package/dist/esm/FrappeCalendar.native.js.map +1 -1
- package/dist/esm/FrappeDashboard.mjs +1 -1
- package/dist/esm/FrappeDashboard.mjs.map +1 -1
- package/dist/esm/FrappeDashboard.native.js +1 -1
- package/dist/esm/FrappeDashboard.native.js.map +1 -1
- package/dist/esm/FrappeImageView.mjs +1 -1
- package/dist/esm/FrappeImageView.mjs.map +1 -1
- package/dist/esm/FrappeImageView.native.js +1 -1
- package/dist/esm/FrappeImageView.native.js.map +1 -1
- package/dist/esm/FrappeInsights.mjs +355 -0
- package/dist/esm/FrappeInsights.mjs.map +1 -0
- package/dist/esm/FrappeInsights.native.js +419 -0
- package/dist/esm/FrappeInsights.native.js.map +1 -0
- package/dist/esm/FrappeLikedBy.mjs +6 -3
- package/dist/esm/FrappeLikedBy.mjs.map +1 -1
- package/dist/esm/FrappeLikedBy.native.js +6 -3
- package/dist/esm/FrappeLikedBy.native.js.map +1 -1
- package/dist/esm/FrappeListView.mjs +396 -42
- package/dist/esm/FrappeListView.mjs.map +1 -1
- package/dist/esm/FrappeListView.native.js +458 -45
- package/dist/esm/FrappeListView.native.js.map +1 -1
- package/dist/esm/FrappeRecordView.mjs +174 -0
- package/dist/esm/FrappeRecordView.mjs.map +1 -0
- package/dist/esm/FrappeRecordView.native.js +190 -0
- package/dist/esm/FrappeRecordView.native.js.map +1 -0
- package/dist/esm/FrappeReportBuilder.mjs +2 -2
- package/dist/esm/FrappeReportBuilder.mjs.map +1 -1
- package/dist/esm/FrappeReportBuilder.native.js +2 -2
- package/dist/esm/FrappeReportBuilder.native.js.map +1 -1
- package/dist/esm/FrappeTreeView.mjs +1 -1
- package/dist/esm/FrappeTreeView.mjs.map +1 -1
- package/dist/esm/FrappeTreeView.native.js +1 -1
- package/dist/esm/desk/awesomebar.mjs +1 -1
- package/dist/esm/desk/awesomebar.mjs.map +1 -1
- package/dist/esm/desk/awesomebar.native.js +3 -3
- package/dist/esm/desk/awesomebar.native.js.map +1 -1
- package/dist/esm/fields/Heading/index.mjs +19 -12
- package/dist/esm/fields/Heading/index.mjs.map +1 -1
- package/dist/esm/fields/Heading/index.native.js +22 -13
- package/dist/esm/fields/Heading/index.native.js.map +1 -1
- package/dist/esm/frappeNavigation.mjs +11 -2
- package/dist/esm/frappeNavigation.mjs.map +1 -1
- package/dist/esm/frappeNavigation.native.js +12 -2
- package/dist/esm/frappeNavigation.native.js.map +1 -1
- package/dist/esm/index.mjs +14 -2
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +14 -2
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/insights/InsightsFacetTags.mjs +122 -0
- package/dist/esm/insights/InsightsFacetTags.mjs.map +1 -0
- package/dist/esm/insights/InsightsFacetTags.native.js +137 -0
- package/dist/esm/insights/InsightsFacetTags.native.js.map +1 -0
- package/dist/esm/insights/InsightsKpiBand.mjs +99 -0
- package/dist/esm/insights/InsightsKpiBand.mjs.map +1 -0
- package/dist/esm/insights/InsightsKpiBand.native.js +105 -0
- package/dist/esm/insights/InsightsKpiBand.native.js.map +1 -0
- package/dist/esm/insights/InsightsLeaders.mjs +125 -0
- package/dist/esm/insights/InsightsLeaders.mjs.map +1 -0
- package/dist/esm/insights/InsightsLeaders.native.js +150 -0
- package/dist/esm/insights/InsightsLeaders.native.js.map +1 -0
- package/dist/esm/insights/InsightsRecords.mjs +80 -0
- package/dist/esm/insights/InsightsRecords.mjs.map +1 -0
- package/dist/esm/insights/InsightsRecords.native.js +81 -0
- package/dist/esm/insights/InsightsRecords.native.js.map +1 -0
- package/dist/esm/insights/InsightsTable.mjs +132 -0
- package/dist/esm/insights/InsightsTable.mjs.map +1 -0
- package/dist/esm/insights/InsightsTable.native.js +166 -0
- package/dist/esm/insights/InsightsTable.native.js.map +1 -0
- package/dist/esm/insights/insightsData.mjs +82 -0
- package/dist/esm/insights/insightsData.mjs.map +1 -0
- package/dist/esm/insights/insightsData.native.js +185 -0
- package/dist/esm/insights/insightsData.native.js.map +1 -0
- package/dist/esm/insights/insightsRecord.mjs +9 -0
- package/dist/esm/insights/insightsRecord.mjs.map +1 -0
- package/dist/esm/insights/insightsRecord.native.js +9 -0
- package/dist/esm/insights/insightsRecord.native.js.map +1 -0
- package/dist/esm/list/FacetBadge.mjs +37 -0
- package/dist/esm/list/FacetBadge.mjs.map +1 -0
- package/dist/esm/list/FacetBadge.native.js +38 -0
- package/dist/esm/list/FacetBadge.native.js.map +1 -0
- package/dist/esm/list/FacetRail.mjs +174 -0
- package/dist/esm/list/FacetRail.mjs.map +1 -0
- package/dist/esm/list/FacetRail.native.js +195 -0
- package/dist/esm/list/FacetRail.native.js.map +1 -0
- package/dist/esm/list/ImageWell.mjs +86 -0
- package/dist/esm/list/ImageWell.mjs.map +1 -0
- package/dist/esm/list/ImageWell.native.js +98 -0
- package/dist/esm/list/ImageWell.native.js.map +1 -0
- package/dist/esm/list/ListControls.mjs +201 -0
- package/dist/esm/list/ListControls.mjs.map +1 -0
- package/dist/esm/list/ListControls.native.js +224 -0
- package/dist/esm/list/ListControls.native.js.map +1 -0
- package/dist/esm/list/ListToastHost.mjs +18 -0
- package/dist/esm/list/ListToastHost.mjs.map +1 -0
- package/dist/esm/list/ListToastHost.native.js +20 -0
- package/dist/esm/list/ListToastHost.native.js.map +1 -0
- package/dist/esm/list/RangeFilter.mjs +85 -0
- package/dist/esm/list/RangeFilter.mjs.map +1 -0
- package/dist/esm/list/RangeFilter.native.js +95 -0
- package/dist/esm/list/RangeFilter.native.js.map +1 -0
- package/dist/esm/list/RecordCard.mjs +208 -0
- package/dist/esm/list/RecordCard.mjs.map +1 -0
- package/dist/esm/list/RecordCard.native.js +145 -0
- package/dist/esm/list/RecordCard.native.js.map +1 -0
- package/dist/esm/list/ShufflePanel.mjs +87 -0
- package/dist/esm/list/ShufflePanel.mjs.map +1 -0
- package/dist/esm/list/ShufflePanel.native.js +111 -0
- package/dist/esm/list/ShufflePanel.native.js.map +1 -0
- package/dist/esm/list/facetReading.mjs +45 -0
- package/dist/esm/list/facetReading.mjs.map +1 -0
- package/dist/esm/list/facetReading.native.js +134 -0
- package/dist/esm/list/facetReading.native.js.map +1 -0
- package/dist/esm/list/favorites.mjs +50 -0
- package/dist/esm/list/favorites.mjs.map +1 -0
- package/dist/esm/list/favorites.native.js +59 -0
- package/dist/esm/list/favorites.native.js.map +1 -0
- package/dist/esm/list/listState.mjs +71 -0
- package/dist/esm/list/listState.mjs.map +1 -0
- package/dist/esm/list/listState.native.js +202 -0
- package/dist/esm/list/listState.native.js.map +1 -0
- package/dist/esm/list/recordLook.mjs +10 -0
- package/dist/esm/list/recordLook.mjs.map +1 -0
- package/dist/esm/list/recordLook.native.js +11 -0
- package/dist/esm/list/recordLook.native.js.map +1 -0
- package/dist/esm/list/useListControls.mjs +164 -0
- package/dist/esm/list/useListControls.mjs.map +1 -0
- package/dist/esm/list/useListControls.native.js +244 -0
- package/dist/esm/list/useListControls.native.js.map +1 -0
- package/dist/esm/record/RecordBars.mjs +175 -0
- package/dist/esm/record/RecordBars.mjs.map +1 -0
- package/dist/esm/record/RecordBars.native.js +197 -0
- package/dist/esm/record/RecordBars.native.js.map +1 -0
- package/dist/esm/record/RecordGallery.mjs +42 -0
- package/dist/esm/record/RecordGallery.mjs.map +1 -0
- package/dist/esm/record/RecordGallery.native.js +47 -0
- package/dist/esm/record/RecordGallery.native.js.map +1 -0
- package/dist/esm/record/RecordHero.mjs +205 -0
- package/dist/esm/record/RecordHero.mjs.map +1 -0
- package/dist/esm/record/RecordHero.native.js +213 -0
- package/dist/esm/record/RecordHero.native.js.map +1 -0
- package/dist/esm/record/RecordPage.mjs +305 -0
- package/dist/esm/record/RecordPage.mjs.map +1 -0
- package/dist/esm/record/RecordPage.native.js +336 -0
- package/dist/esm/record/RecordPage.native.js.map +1 -0
- package/dist/esm/record/RecordPager.mjs +100 -0
- package/dist/esm/record/RecordPager.mjs.map +1 -0
- package/dist/esm/record/RecordPager.native.js +102 -0
- package/dist/esm/record/RecordPager.native.js.map +1 -0
- package/dist/esm/record/RecordRows.mjs +101 -0
- package/dist/esm/record/RecordRows.mjs.map +1 -0
- package/dist/esm/record/RecordRows.native.js +112 -0
- package/dist/esm/record/RecordRows.native.js.map +1 -0
- package/dist/esm/record/recordData.mjs +92 -0
- package/dist/esm/record/recordData.mjs.map +1 -0
- package/dist/esm/record/recordData.native.js +156 -0
- package/dist/esm/record/recordData.native.js.map +1 -0
- package/dist/esm/record/recordSections.mjs +5 -0
- package/dist/esm/record/recordSections.mjs.map +1 -0
- package/dist/esm/record/recordSections.native.js +5 -0
- package/dist/esm/record/recordSections.native.js.map +1 -0
- package/dist/jsx/FrappeCalendar.mjs +1 -1
- package/dist/jsx/FrappeCalendar.mjs.map +1 -1
- package/dist/jsx/FrappeCalendar.native.js +1 -1
- package/dist/jsx/FrappeCalendar.native.js.map +1 -1
- package/dist/jsx/FrappeDashboard.mjs +1 -1
- package/dist/jsx/FrappeDashboard.mjs.map +1 -1
- package/dist/jsx/FrappeDashboard.native.js +1 -1
- package/dist/jsx/FrappeDashboard.native.js.map +1 -1
- package/dist/jsx/FrappeImageView.mjs +1 -1
- package/dist/jsx/FrappeImageView.mjs.map +1 -1
- package/dist/jsx/FrappeImageView.native.js +1 -1
- package/dist/jsx/FrappeImageView.native.js.map +1 -1
- package/dist/jsx/FrappeInsights.mjs +355 -0
- package/dist/jsx/FrappeInsights.mjs.map +1 -0
- package/dist/jsx/FrappeInsights.native.js +447 -0
- package/dist/jsx/FrappeInsights.native.js.map +1 -0
- package/dist/jsx/FrappeLikedBy.mjs +6 -3
- package/dist/jsx/FrappeLikedBy.mjs.map +1 -1
- package/dist/jsx/FrappeLikedBy.native.js +5 -2
- package/dist/jsx/FrappeLikedBy.native.js.map +1 -1
- package/dist/jsx/FrappeListView.mjs +396 -42
- package/dist/jsx/FrappeListView.mjs.map +1 -1
- package/dist/jsx/FrappeListView.native.js +454 -41
- package/dist/jsx/FrappeListView.native.js.map +1 -1
- package/dist/jsx/FrappeRecordView.mjs +174 -0
- package/dist/jsx/FrappeRecordView.mjs.map +1 -0
- package/dist/jsx/FrappeRecordView.native.js +218 -0
- package/dist/jsx/FrappeRecordView.native.js.map +1 -0
- package/dist/jsx/FrappeReportBuilder.mjs +2 -2
- package/dist/jsx/FrappeReportBuilder.mjs.map +1 -1
- package/dist/jsx/FrappeReportBuilder.native.js +2 -2
- package/dist/jsx/FrappeReportBuilder.native.js.map +1 -1
- package/dist/jsx/FrappeTreeView.mjs +1 -1
- package/dist/jsx/FrappeTreeView.mjs.map +1 -1
- package/dist/jsx/FrappeTreeView.native.js +1 -1
- package/dist/jsx/desk/awesomebar.mjs +1 -1
- package/dist/jsx/desk/awesomebar.mjs.map +1 -1
- package/dist/jsx/desk/awesomebar.native.js +3 -3
- package/dist/jsx/desk/awesomebar.native.js.map +1 -1
- package/dist/jsx/fields/Heading/index.mjs +19 -12
- package/dist/jsx/fields/Heading/index.mjs.map +1 -1
- package/dist/jsx/fields/Heading/index.native.js +21 -12
- package/dist/jsx/fields/Heading/index.native.js.map +1 -1
- package/dist/jsx/frappeNavigation.mjs +11 -2
- package/dist/jsx/frappeNavigation.mjs.map +1 -1
- package/dist/jsx/frappeNavigation.native.js +13 -2
- package/dist/jsx/frappeNavigation.native.js.map +1 -1
- package/dist/jsx/index.js +14 -2
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +14 -2
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +34 -0
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/insights/InsightsFacetTags.mjs +122 -0
- package/dist/jsx/insights/InsightsFacetTags.mjs.map +1 -0
- package/dist/jsx/insights/InsightsFacetTags.native.js +165 -0
- package/dist/jsx/insights/InsightsFacetTags.native.js.map +1 -0
- package/dist/jsx/insights/InsightsKpiBand.mjs +99 -0
- package/dist/jsx/insights/InsightsKpiBand.mjs.map +1 -0
- package/dist/jsx/insights/InsightsKpiBand.native.js +133 -0
- package/dist/jsx/insights/InsightsKpiBand.native.js.map +1 -0
- package/dist/jsx/insights/InsightsLeaders.mjs +125 -0
- package/dist/jsx/insights/InsightsLeaders.mjs.map +1 -0
- package/dist/jsx/insights/InsightsLeaders.native.js +178 -0
- package/dist/jsx/insights/InsightsLeaders.native.js.map +1 -0
- package/dist/jsx/insights/InsightsRecords.mjs +80 -0
- package/dist/jsx/insights/InsightsRecords.mjs.map +1 -0
- package/dist/jsx/insights/InsightsRecords.native.js +109 -0
- package/dist/jsx/insights/InsightsRecords.native.js.map +1 -0
- package/dist/jsx/insights/InsightsTable.mjs +132 -0
- package/dist/jsx/insights/InsightsTable.mjs.map +1 -0
- package/dist/jsx/insights/InsightsTable.native.js +194 -0
- package/dist/jsx/insights/InsightsTable.native.js.map +1 -0
- package/dist/jsx/insights/insightsData.mjs +82 -0
- package/dist/jsx/insights/insightsData.mjs.map +1 -0
- package/dist/jsx/insights/insightsData.native.js +220 -0
- package/dist/jsx/insights/insightsData.native.js.map +1 -0
- package/dist/jsx/insights/insightsRecord.mjs +9 -0
- package/dist/jsx/insights/insightsRecord.mjs.map +1 -0
- package/dist/jsx/insights/insightsRecord.native.js +38 -0
- package/dist/jsx/insights/insightsRecord.native.js.map +1 -0
- package/dist/jsx/list/FacetBadge.mjs +37 -0
- package/dist/jsx/list/FacetBadge.mjs.map +1 -0
- package/dist/jsx/list/FacetBadge.native.js +66 -0
- package/dist/jsx/list/FacetBadge.native.js.map +1 -0
- package/dist/jsx/list/FacetRail.mjs +174 -0
- package/dist/jsx/list/FacetRail.mjs.map +1 -0
- package/dist/jsx/list/FacetRail.native.js +223 -0
- package/dist/jsx/list/FacetRail.native.js.map +1 -0
- package/dist/jsx/list/ImageWell.mjs +86 -0
- package/dist/jsx/list/ImageWell.mjs.map +1 -0
- package/dist/jsx/list/ImageWell.native.js +126 -0
- package/dist/jsx/list/ImageWell.native.js.map +1 -0
- package/dist/jsx/list/ListControls.mjs +201 -0
- package/dist/jsx/list/ListControls.mjs.map +1 -0
- package/dist/jsx/list/ListControls.native.js +252 -0
- package/dist/jsx/list/ListControls.native.js.map +1 -0
- package/dist/jsx/list/ListToastHost.mjs +18 -0
- package/dist/jsx/list/ListToastHost.mjs.map +1 -0
- package/dist/jsx/list/ListToastHost.native.js +59 -0
- package/dist/jsx/list/ListToastHost.native.js.map +1 -0
- package/dist/jsx/list/RangeFilter.mjs +85 -0
- package/dist/jsx/list/RangeFilter.mjs.map +1 -0
- package/dist/jsx/list/RangeFilter.native.js +135 -0
- package/dist/jsx/list/RangeFilter.native.js.map +1 -0
- package/dist/jsx/list/RecordCard.mjs +208 -0
- package/dist/jsx/list/RecordCard.mjs.map +1 -0
- package/dist/jsx/list/RecordCard.native.js +173 -0
- package/dist/jsx/list/RecordCard.native.js.map +1 -0
- package/dist/jsx/list/ShufflePanel.mjs +87 -0
- package/dist/jsx/list/ShufflePanel.mjs.map +1 -0
- package/dist/jsx/list/ShufflePanel.native.js +139 -0
- package/dist/jsx/list/ShufflePanel.native.js.map +1 -0
- package/dist/jsx/list/facetReading.mjs +45 -0
- package/dist/jsx/list/facetReading.mjs.map +1 -0
- package/dist/jsx/list/facetReading.native.js +163 -0
- package/dist/jsx/list/facetReading.native.js.map +1 -0
- package/dist/jsx/list/favorites.mjs +50 -0
- package/dist/jsx/list/favorites.mjs.map +1 -0
- package/dist/jsx/list/favorites.native.js +91 -0
- package/dist/jsx/list/favorites.native.js.map +1 -0
- package/dist/jsx/list/listState.mjs +71 -0
- package/dist/jsx/list/listState.mjs.map +1 -0
- package/dist/jsx/list/listState.native.js +234 -0
- package/dist/jsx/list/listState.native.js.map +1 -0
- package/dist/jsx/list/recordLook.mjs +10 -0
- package/dist/jsx/list/recordLook.mjs.map +1 -0
- package/dist/jsx/list/recordLook.native.js +39 -0
- package/dist/jsx/list/recordLook.native.js.map +1 -0
- package/dist/jsx/list/useListControls.mjs +164 -0
- package/dist/jsx/list/useListControls.mjs.map +1 -0
- package/dist/jsx/list/useListControls.native.js +272 -0
- package/dist/jsx/list/useListControls.native.js.map +1 -0
- package/dist/jsx/record/RecordBars.mjs +175 -0
- package/dist/jsx/record/RecordBars.mjs.map +1 -0
- package/dist/jsx/record/RecordBars.native.js +225 -0
- package/dist/jsx/record/RecordBars.native.js.map +1 -0
- package/dist/jsx/record/RecordGallery.mjs +42 -0
- package/dist/jsx/record/RecordGallery.mjs.map +1 -0
- package/dist/jsx/record/RecordGallery.native.js +75 -0
- package/dist/jsx/record/RecordGallery.native.js.map +1 -0
- package/dist/jsx/record/RecordHero.mjs +205 -0
- package/dist/jsx/record/RecordHero.mjs.map +1 -0
- package/dist/jsx/record/RecordHero.native.js +250 -0
- package/dist/jsx/record/RecordHero.native.js.map +1 -0
- package/dist/jsx/record/RecordPage.mjs +305 -0
- package/dist/jsx/record/RecordPage.mjs.map +1 -0
- package/dist/jsx/record/RecordPage.native.js +364 -0
- package/dist/jsx/record/RecordPage.native.js.map +1 -0
- package/dist/jsx/record/RecordPager.mjs +100 -0
- package/dist/jsx/record/RecordPager.mjs.map +1 -0
- package/dist/jsx/record/RecordPager.native.js +130 -0
- package/dist/jsx/record/RecordPager.native.js.map +1 -0
- package/dist/jsx/record/RecordRows.mjs +101 -0
- package/dist/jsx/record/RecordRows.mjs.map +1 -0
- package/dist/jsx/record/RecordRows.native.js +140 -0
- package/dist/jsx/record/RecordRows.native.js.map +1 -0
- package/dist/jsx/record/recordData.mjs +92 -0
- package/dist/jsx/record/recordData.mjs.map +1 -0
- package/dist/jsx/record/recordData.native.js +189 -0
- package/dist/jsx/record/recordData.native.js.map +1 -0
- package/dist/jsx/record/recordSections.mjs +5 -0
- package/dist/jsx/record/recordSections.mjs.map +1 -0
- package/dist/jsx/record/recordSections.native.js +33 -0
- package/dist/jsx/record/recordSections.native.js.map +1 -0
- package/package.json +16 -16
- package/src/FrappeCalendar.tsx +2 -2
- package/src/FrappeDashboard.tsx +2 -2
- package/src/FrappeImageView.tsx +2 -1
- package/src/FrappeInsights.spec.tsx +171 -0
- package/src/FrappeInsights.tsx +422 -0
- package/src/FrappeLikedBy.tsx +7 -5
- package/src/FrappeListView.card.spec.tsx +157 -0
- package/src/FrappeListView.controls.spec.tsx +225 -0
- package/src/FrappeListView.seed.spec.tsx +30 -0
- package/src/FrappeListView.tsx +575 -44
- package/src/FrappeRecordView.spec.tsx +276 -0
- package/src/FrappeRecordView.tsx +231 -0
- package/src/FrappeReportBuilder.tsx +4 -5
- package/src/FrappeTreeView.tsx +1 -1
- package/src/desk/awesomebar.auth.spec.tsx +77 -0
- package/src/desk/awesomebar.tsx +1 -1
- package/src/fields/Heading/index.tsx +33 -15
- package/src/frappeNavigation.loader.spec.tsx +45 -0
- package/src/frappeNavigation.tsx +32 -1
- package/src/index.ts +53 -1
- package/src/insights/InsightsFacetTags.tsx +131 -0
- package/src/insights/InsightsKpiBand.tsx +114 -0
- package/src/insights/InsightsLeaders.tsx +146 -0
- package/src/insights/InsightsRecords.tsx +71 -0
- package/src/insights/InsightsTable.tsx +169 -0
- package/src/insights/insightsData.spec.ts +143 -0
- package/src/insights/insightsData.ts +122 -0
- package/src/insights/insightsRecord.ts +36 -0
- package/src/list/FacetBadge.tsx +41 -0
- package/src/list/FacetRail.tsx +235 -0
- package/src/list/ImageWell.tsx +110 -0
- package/src/list/ListControls.tsx +208 -0
- package/src/list/ListToastHost.tsx +27 -0
- package/src/list/RangeFilter.tsx +83 -0
- package/src/list/RecordCard.native.tsx +126 -0
- package/src/list/RecordCard.tsx +260 -0
- package/src/list/ShufflePanel.tsx +107 -0
- package/src/list/facetReading.ts +79 -0
- package/src/list/favorites.spec.ts +80 -0
- package/src/list/favorites.ts +79 -0
- package/src/list/listState.spec.ts +156 -0
- package/src/list/listState.ts +184 -0
- package/src/list/recordLook.ts +37 -0
- package/src/list/useListControls.tsx +223 -0
- package/src/record/RecordBars.tsx +187 -0
- package/src/record/RecordGallery.tsx +47 -0
- package/src/record/RecordHero.tsx +186 -0
- package/src/record/RecordPage.tsx +358 -0
- package/src/record/RecordPager.tsx +97 -0
- package/src/record/RecordRows.tsx +90 -0
- package/src/record/recordData.spec.ts +148 -0
- package/src/record/recordData.ts +124 -0
- package/src/record/recordSections.ts +62 -0
- package/src/schemaForm/SchemaForm.stories.tsx +2 -2
- package/types/FrappeImageView.d.ts.map +1 -1
- package/types/FrappeInsights.d.ts +55 -0
- package/types/FrappeInsights.d.ts.map +1 -0
- package/types/FrappeLikedBy.d.ts.map +1 -1
- package/types/FrappeListView.d.ts +82 -2
- package/types/FrappeListView.d.ts.map +1 -1
- package/types/FrappeRecordView.d.ts +69 -0
- package/types/FrappeRecordView.d.ts.map +1 -0
- package/types/FrappeReportBuilder.d.ts.map +1 -1
- package/types/fields/Heading/index.d.ts.map +1 -1
- package/types/frappeNavigation.d.ts +21 -0
- package/types/frappeNavigation.d.ts.map +1 -1
- package/types/index.d.ts +14 -2
- package/types/index.d.ts.map +1 -1
- package/types/insights/InsightsFacetTags.d.ts +11 -0
- package/types/insights/InsightsFacetTags.d.ts.map +1 -0
- package/types/insights/InsightsKpiBand.d.ts +22 -0
- package/types/insights/InsightsKpiBand.d.ts.map +1 -0
- package/types/insights/InsightsLeaders.d.ts +16 -0
- package/types/insights/InsightsLeaders.d.ts.map +1 -0
- package/types/insights/InsightsRecords.d.ts +19 -0
- package/types/insights/InsightsRecords.d.ts.map +1 -0
- package/types/insights/InsightsTable.d.ts +17 -0
- package/types/insights/InsightsTable.d.ts.map +1 -0
- package/types/insights/insightsData.d.ts +45 -0
- package/types/insights/insightsData.d.ts.map +1 -0
- package/types/insights/insightsRecord.d.ts +29 -0
- package/types/insights/insightsRecord.d.ts.map +1 -0
- package/types/list/FacetBadge.d.ts +13 -0
- package/types/list/FacetBadge.d.ts.map +1 -0
- package/types/list/FacetRail.d.ts +26 -0
- package/types/list/FacetRail.d.ts.map +1 -0
- package/types/list/ImageWell.d.ts +24 -0
- package/types/list/ImageWell.d.ts.map +1 -0
- package/types/list/ListControls.d.ts +30 -0
- package/types/list/ListControls.d.ts.map +1 -0
- package/types/list/ListToastHost.d.ts +7 -0
- package/types/list/ListToastHost.d.ts.map +1 -0
- package/types/list/RangeFilter.d.ts +14 -0
- package/types/list/RangeFilter.d.ts.map +1 -0
- package/types/list/RecordCard.d.ts +38 -0
- package/types/list/RecordCard.d.ts.map +1 -0
- package/types/list/RecordCard.native.d.ts +9 -0
- package/types/list/RecordCard.native.d.ts.map +1 -0
- package/types/list/ShufflePanel.d.ts +24 -0
- package/types/list/ShufflePanel.d.ts.map +1 -0
- package/types/list/facetReading.d.ts +33 -0
- package/types/list/facetReading.d.ts.map +1 -0
- package/types/list/favorites.d.ts +26 -0
- package/types/list/favorites.d.ts.map +1 -0
- package/types/list/listState.d.ts +94 -0
- package/types/list/listState.d.ts.map +1 -0
- package/types/list/recordLook.d.ts +25 -0
- package/types/list/recordLook.d.ts.map +1 -0
- package/types/list/useListControls.d.ts +48 -0
- package/types/list/useListControls.d.ts.map +1 -0
- package/types/record/RecordBars.d.ts +11 -0
- package/types/record/RecordBars.d.ts.map +1 -0
- package/types/record/RecordGallery.d.ts +17 -0
- package/types/record/RecordGallery.d.ts.map +1 -0
- package/types/record/RecordHero.d.ts +42 -0
- package/types/record/RecordHero.d.ts.map +1 -0
- package/types/record/RecordPage.d.ts +54 -0
- package/types/record/RecordPage.d.ts.map +1 -0
- package/types/record/RecordPager.d.ts +13 -0
- package/types/record/RecordPager.d.ts.map +1 -0
- package/types/record/RecordRows.d.ts +13 -0
- package/types/record/RecordRows.d.ts.map +1 -0
- package/types/record/recordData.d.ts +46 -0
- package/types/record/recordData.d.ts.map +1 -0
- package/types/record/recordSections.d.ts +67 -0
- package/types/record/recordSections.d.ts.map +1 -0
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
function positiveInt(value) {
|
|
2
|
+
var parsed = Number.parseInt(value !== null && value !== void 0 ? value : "", 10);
|
|
3
|
+
return Number.isFinite(parsed) && parsed > 0 ? parsed : 0;
|
|
4
|
+
}
|
|
5
|
+
function listStateFromParams(params, controls) {
|
|
6
|
+
var _controls_sorts, _ref, _controls_facets, _controls_ranges, _controls_views, _views_find, _params_q;
|
|
7
|
+
var _sorts_find, _sorts_;
|
|
8
|
+
var sorts = (_controls_sorts = controls.sorts) !== null && _controls_sorts !== void 0 ? _controls_sorts : [];
|
|
9
|
+
var sort = (_ref = (_sorts_find = sorts.find(function (option) {
|
|
10
|
+
return option.value === params.sort;
|
|
11
|
+
})) === null || _sorts_find === void 0 ? void 0 : _sorts_find.value) !== null && _ref !== void 0 ? _ref : (_sorts_ = sorts[0]) === null || _sorts_ === void 0 ? void 0 : _sorts_.value;
|
|
12
|
+
var facets = {};
|
|
13
|
+
var _iteratorNormalCompletion = true,
|
|
14
|
+
_didIteratorError = false,
|
|
15
|
+
_iteratorError = void 0;
|
|
16
|
+
try {
|
|
17
|
+
for (var _iterator = ((_controls_facets = controls.facets) !== null && _controls_facets !== void 0 ? _controls_facets : [])[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
18
|
+
var facet = _step.value;
|
|
19
|
+
var value = params[facet.param];
|
|
20
|
+
if (value && facet.options.includes(value)) facets[facet.param] = value;
|
|
21
|
+
}
|
|
22
|
+
} catch (err) {
|
|
23
|
+
_didIteratorError = true;
|
|
24
|
+
_iteratorError = err;
|
|
25
|
+
} finally {
|
|
26
|
+
try {
|
|
27
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
28
|
+
_iterator.return();
|
|
29
|
+
}
|
|
30
|
+
} finally {
|
|
31
|
+
if (_didIteratorError) {
|
|
32
|
+
throw _iteratorError;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
var ranges = {};
|
|
37
|
+
var _iteratorNormalCompletion1 = true,
|
|
38
|
+
_didIteratorError1 = false,
|
|
39
|
+
_iteratorError1 = void 0;
|
|
40
|
+
try {
|
|
41
|
+
for (var _iterator1 = ((_controls_ranges = controls.ranges) !== null && _controls_ranges !== void 0 ? _controls_ranges : [])[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
|
|
42
|
+
var range = _step1.value;
|
|
43
|
+
var value1 = positiveInt(params[range.param]);
|
|
44
|
+
if (value1 > 0) ranges[range.param] = value1;
|
|
45
|
+
}
|
|
46
|
+
} catch (err) {
|
|
47
|
+
_didIteratorError1 = true;
|
|
48
|
+
_iteratorError1 = err;
|
|
49
|
+
} finally {
|
|
50
|
+
try {
|
|
51
|
+
if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
|
|
52
|
+
_iterator1.return();
|
|
53
|
+
}
|
|
54
|
+
} finally {
|
|
55
|
+
if (_didIteratorError1) {
|
|
56
|
+
throw _iteratorError1;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
var views = (_controls_views = controls.views) !== null && _controls_views !== void 0 ? _controls_views : [];
|
|
61
|
+
var view = (_views_find = views.find(function (mode) {
|
|
62
|
+
return mode === params.view;
|
|
63
|
+
})) !== null && _views_find !== void 0 ? _views_find : controls.defaultView;
|
|
64
|
+
return {
|
|
65
|
+
search: (_params_q = params.q) !== null && _params_q !== void 0 ? _params_q : "",
|
|
66
|
+
sort,
|
|
67
|
+
facets,
|
|
68
|
+
ranges,
|
|
69
|
+
favoritesOnly: params.fav === "1",
|
|
70
|
+
view
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
function listStateParams(patch, controls) {
|
|
74
|
+
var _patch_facets, _patch_ranges;
|
|
75
|
+
var params = {};
|
|
76
|
+
if (patch.search !== void 0) params.q = patch.search.trim() || void 0;
|
|
77
|
+
if (patch.sort !== void 0) {
|
|
78
|
+
var _controls_sorts_, _controls_sorts;
|
|
79
|
+
params.sort = patch.sort === ((_controls_sorts = controls.sorts) === null || _controls_sorts === void 0 ? void 0 : (_controls_sorts_ = _controls_sorts[0]) === null || _controls_sorts_ === void 0 ? void 0 : _controls_sorts_.value) ? void 0 : patch.sort;
|
|
80
|
+
}
|
|
81
|
+
var _iteratorNormalCompletion = true,
|
|
82
|
+
_didIteratorError = false,
|
|
83
|
+
_iteratorError = void 0;
|
|
84
|
+
try {
|
|
85
|
+
for (var _iterator = Object.entries((_patch_facets = patch.facets) !== null && _patch_facets !== void 0 ? _patch_facets : {})[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
86
|
+
var [param, value] = _step.value;
|
|
87
|
+
params[param] = value || void 0;
|
|
88
|
+
}
|
|
89
|
+
} catch (err) {
|
|
90
|
+
_didIteratorError = true;
|
|
91
|
+
_iteratorError = err;
|
|
92
|
+
} finally {
|
|
93
|
+
try {
|
|
94
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
95
|
+
_iterator.return();
|
|
96
|
+
}
|
|
97
|
+
} finally {
|
|
98
|
+
if (_didIteratorError) {
|
|
99
|
+
throw _iteratorError;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
var _iteratorNormalCompletion1 = true,
|
|
104
|
+
_didIteratorError1 = false,
|
|
105
|
+
_iteratorError1 = void 0;
|
|
106
|
+
try {
|
|
107
|
+
for (var _iterator1 = Object.entries((_patch_ranges = patch.ranges) !== null && _patch_ranges !== void 0 ? _patch_ranges : {})[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
|
|
108
|
+
var [param1, value1] = _step1.value;
|
|
109
|
+
params[param1] = value1 > 0 ? String(value1) : void 0;
|
|
110
|
+
}
|
|
111
|
+
} catch (err) {
|
|
112
|
+
_didIteratorError1 = true;
|
|
113
|
+
_iteratorError1 = err;
|
|
114
|
+
} finally {
|
|
115
|
+
try {
|
|
116
|
+
if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
|
|
117
|
+
_iterator1.return();
|
|
118
|
+
}
|
|
119
|
+
} finally {
|
|
120
|
+
if (_didIteratorError1) {
|
|
121
|
+
throw _iteratorError1;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
if (patch.favoritesOnly !== void 0) params.fav = patch.favoritesOnly ? "1" : void 0;
|
|
126
|
+
if (patch.view !== void 0) {
|
|
127
|
+
params.view = patch.view === controls.defaultView ? void 0 : patch.view;
|
|
128
|
+
}
|
|
129
|
+
return params;
|
|
130
|
+
}
|
|
131
|
+
function isListNarrowed(state) {
|
|
132
|
+
return state.search.trim() !== "" || Object.values(state.facets).some(Boolean) || Object.values(state.ranges).some(function (value) {
|
|
133
|
+
return value > 0;
|
|
134
|
+
}) || state.favoritesOnly;
|
|
135
|
+
}
|
|
136
|
+
function listStateFilters(state, controls) {
|
|
137
|
+
var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
|
|
138
|
+
var _options_base, _controls_facets, _controls_ranges, _options_favorites;
|
|
139
|
+
var filters = [...((_options_base = options.base) !== null && _options_base !== void 0 ? _options_base : [])];
|
|
140
|
+
var query = state.search.trim();
|
|
141
|
+
if (query && options.search) filters.push(...options.search(query));
|
|
142
|
+
var _iteratorNormalCompletion = true,
|
|
143
|
+
_didIteratorError = false,
|
|
144
|
+
_iteratorError = void 0;
|
|
145
|
+
try {
|
|
146
|
+
for (var _iterator = ((_controls_facets = controls.facets) !== null && _controls_facets !== void 0 ? _controls_facets : [])[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
147
|
+
var facet = _step.value;
|
|
148
|
+
var value = state.facets[facet.param];
|
|
149
|
+
if (!value) continue;
|
|
150
|
+
filters.push(facet.doctype ? [facet.doctype, facet.field, "=", value] : [facet.field, "=", value]);
|
|
151
|
+
}
|
|
152
|
+
} catch (err) {
|
|
153
|
+
_didIteratorError = true;
|
|
154
|
+
_iteratorError = err;
|
|
155
|
+
} finally {
|
|
156
|
+
try {
|
|
157
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
158
|
+
_iterator.return();
|
|
159
|
+
}
|
|
160
|
+
} finally {
|
|
161
|
+
if (_didIteratorError) {
|
|
162
|
+
throw _iteratorError;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
var _iteratorNormalCompletion1 = true,
|
|
167
|
+
_didIteratorError1 = false,
|
|
168
|
+
_iteratorError1 = void 0;
|
|
169
|
+
try {
|
|
170
|
+
for (var _iterator1 = ((_controls_ranges = controls.ranges) !== null && _controls_ranges !== void 0 ? _controls_ranges : [])[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
|
|
171
|
+
var range = _step1.value;
|
|
172
|
+
var _state_ranges_range_param;
|
|
173
|
+
var value1 = (_state_ranges_range_param = state.ranges[range.param]) !== null && _state_ranges_range_param !== void 0 ? _state_ranges_range_param : 0;
|
|
174
|
+
if (value1 > 0) filters.push([range.field, ">=", value1]);
|
|
175
|
+
}
|
|
176
|
+
} catch (err) {
|
|
177
|
+
_didIteratorError1 = true;
|
|
178
|
+
_iteratorError1 = err;
|
|
179
|
+
} finally {
|
|
180
|
+
try {
|
|
181
|
+
if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
|
|
182
|
+
_iterator1.return();
|
|
183
|
+
}
|
|
184
|
+
} finally {
|
|
185
|
+
if (_didIteratorError1) {
|
|
186
|
+
throw _iteratorError1;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
if (state.favoritesOnly) filters.push(["name", "in", [...((_options_favorites = options.favorites) !== null && _options_favorites !== void 0 ? _options_favorites : [])].sort()]);
|
|
191
|
+
return filters.length > 0 ? filters : void 0;
|
|
192
|
+
}
|
|
193
|
+
function listStateOrderBy(state, controls, fallback) {
|
|
194
|
+
var _controls_sorts, _ref, _sorts_find;
|
|
195
|
+
var _this;
|
|
196
|
+
var sorts = (_controls_sorts = controls.sorts) !== null && _controls_sorts !== void 0 ? _controls_sorts : [];
|
|
197
|
+
return (_ref = (_this = (_sorts_find = sorts.find(function (option) {
|
|
198
|
+
return option.value === state.sort;
|
|
199
|
+
})) !== null && _sorts_find !== void 0 ? _sorts_find : sorts[0]) === null || _this === void 0 ? void 0 : _this.orderBy) !== null && _ref !== void 0 ? _ref : fallback;
|
|
200
|
+
}
|
|
201
|
+
export { isListNarrowed, listStateFilters, listStateFromParams, listStateOrderBy, listStateParams };
|
|
202
|
+
//# sourceMappingURL=listState.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["positiveInt","value","parsed","Number","parseInt","isFinite","listStateFromParams","params","controls","_controls_sorts","_ref","_controls_facets","_controls_ranges","_controls_views","_views_find","_params_q","_sorts_find","_sorts_","sorts","sort","find","option","facets","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","facet","param","options","includes","err","return","ranges","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","range","value1","views","view","mode","defaultView","search","q","favoritesOnly","fav","listStateParams","patch","_patch_facets","_patch_ranges"],"sources":["../../../src/list/listState.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
function recordTitle(doc, look, titleField) {
|
|
2
|
+
const custom = look?.title?.(doc);
|
|
3
|
+
if (custom) return custom;
|
|
4
|
+
const row = doc;
|
|
5
|
+
const field = titleField ? row[titleField] : void 0;
|
|
6
|
+
if (typeof field === "string" && field) return field;
|
|
7
|
+
return typeof row.name === "string" ? row.name : "";
|
|
8
|
+
}
|
|
9
|
+
export { recordTitle };
|
|
10
|
+
//# sourceMappingURL=recordLook.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["recordTitle","doc","look","titleField","custom","title","row","field","name"],"sources":["../../../src/list/recordLook.ts"],"sourcesContent":[null],"mappings":"AAyBO,SAASA,YACdC,GAAA,EACAC,IAAA,EACAC,UAAA,EACQ;EACR,MAAMC,MAAA,GAASF,IAAA,EAAMG,KAAA,GAAQJ,GAAG;EAChC,IAAIG,MAAA,EAAQ,OAAOA,MAAA;EACnB,MAAME,GAAA,GAAML,GAAA;EACZ,MAAMM,KAAA,GAAQJ,UAAA,GAAaG,GAAA,CAAIH,UAAU,IAAI;EAC7C,IAAI,OAAOI,KAAA,KAAU,YAAYA,KAAA,EAAO,OAAOA,KAAA;EAC/C,OAAO,OAAOD,GAAA,CAAIE,IAAA,KAAS,WAAWF,GAAA,CAAIE,IAAA,GAAO;AACnD","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
function recordTitle(doc, look, titleField) {
|
|
2
|
+
var _look_title;
|
|
3
|
+
var custom = look === null || look === void 0 ? void 0 : (_look_title = look.title) === null || _look_title === void 0 ? void 0 : _look_title.call(look, doc);
|
|
4
|
+
if (custom) return custom;
|
|
5
|
+
var row = doc;
|
|
6
|
+
var field = titleField ? row[titleField] : void 0;
|
|
7
|
+
if (typeof field === "string" && field) return field;
|
|
8
|
+
return typeof row.name === "string" ? row.name : "";
|
|
9
|
+
}
|
|
10
|
+
export { recordTitle };
|
|
11
|
+
//# sourceMappingURL=recordLook.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["recordTitle","doc","look","titleField","_look_title","custom","title","call","row","field","name"],"sources":["../../../src/list/recordLook.ts"],"sourcesContent":[null],"mappings":"AAyBO,SAASA,YACdC,GAAA,EACAC,IAAA,EACAC,UAAA,EACQ;EACR,IAAAC,WAAe;EACf,IAAIC,MAAA,GAAQH,IAAA,KAAO,QAAAA,IAAA,wBAAAE,WAAA,GAAAF,IAAA,CAAAI,KAAA,cAAAF,WAAA,uBAAAA,WAAA,CAAAG,IAAA,CAAAL,IAAA,EAAAD,GAAA;EACnB,IAAAI,MAAM,EAAM,OAAAA,MAAA;EACZ,IAAAG,GAAM,GAAAP,GAAA;EACN,IAAIQ,KAAA,GAAON,UAAU,GAAAK,GAAA,CAAAL,UAAmB,SAAO;EAC/C,WAAOM,KAAO,KAAI,QAAS,IAAAA,KAAW,SAAIA,KAAO;EACnD,cAAAD,GAAA,CAAAE,IAAA,gBAAAF,GAAA,CAAAE,IAAA","ignoreList":[]}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
2
|
+
import { FrappeRowsReader } from "../FrappeRowsReader.mjs";
|
|
3
|
+
import { facetRead, readFacet } from "./facetReading.mjs";
|
|
4
|
+
import { useFavorites } from "./favorites.mjs";
|
|
5
|
+
import { listStateFromParams, listStateParams } from "./listState.mjs";
|
|
6
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
+
function mergeState(prev, patch) {
|
|
8
|
+
return {
|
|
9
|
+
...prev,
|
|
10
|
+
...patch,
|
|
11
|
+
facets: patch.facets ? {
|
|
12
|
+
...prev.facets,
|
|
13
|
+
...patch.facets
|
|
14
|
+
} : prev.facets,
|
|
15
|
+
ranges: patch.ranges ? {
|
|
16
|
+
...prev.ranges,
|
|
17
|
+
...patch.ranges
|
|
18
|
+
} : prev.ranges
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
function useListControls({
|
|
22
|
+
doctype,
|
|
23
|
+
controls,
|
|
24
|
+
connections,
|
|
25
|
+
connection,
|
|
26
|
+
limit,
|
|
27
|
+
favoritesKey,
|
|
28
|
+
router,
|
|
29
|
+
readBase
|
|
30
|
+
}) {
|
|
31
|
+
const controlsRef = useRef(controls);
|
|
32
|
+
controlsRef.current = controls;
|
|
33
|
+
const setParams = router?.setSearchParams;
|
|
34
|
+
const setParamsRef = useRef(setParams);
|
|
35
|
+
setParamsRef.current = setParams;
|
|
36
|
+
const [state, setState] = useState(() => listStateFromParams(router?.searchParams ?? {}, controls));
|
|
37
|
+
const [searchText, setSearchText] = useState(state.search);
|
|
38
|
+
const pending = useRef({});
|
|
39
|
+
const [flushTick, setFlushTick] = useState(0);
|
|
40
|
+
const update = useCallback(patch => {
|
|
41
|
+
setState(prev => mergeState(prev, patch));
|
|
42
|
+
if (!setParamsRef.current) return;
|
|
43
|
+
pending.current = {
|
|
44
|
+
...pending.current,
|
|
45
|
+
...listStateParams(patch, controlsRef.current)
|
|
46
|
+
};
|
|
47
|
+
setFlushTick(tick => tick + 1);
|
|
48
|
+
}, []);
|
|
49
|
+
useEffect(() => {
|
|
50
|
+
if (flushTick === 0) return;
|
|
51
|
+
const patch = pending.current;
|
|
52
|
+
pending.current = {};
|
|
53
|
+
if (Object.keys(patch).length === 0) return;
|
|
54
|
+
try {
|
|
55
|
+
setParamsRef.current?.(patch);
|
|
56
|
+
} catch {}
|
|
57
|
+
}, [flushTick]);
|
|
58
|
+
const clear = useCallback(() => {
|
|
59
|
+
setSearchText("");
|
|
60
|
+
const current = controlsRef.current;
|
|
61
|
+
update({
|
|
62
|
+
search: "",
|
|
63
|
+
favoritesOnly: false,
|
|
64
|
+
facets: Object.fromEntries((current.facets ?? []).map(facet => [facet.param, ""])),
|
|
65
|
+
ranges: Object.fromEntries((current.ranges ?? []).map(range => [range.param, 0]))
|
|
66
|
+
});
|
|
67
|
+
}, [update]);
|
|
68
|
+
const favorites = useFavorites(favoritesKey);
|
|
69
|
+
const [snapshots, setSnapshots] = useState({});
|
|
70
|
+
const handlers = useRef(/* @__PURE__ */new Map());
|
|
71
|
+
const handlerFor = useCallback(key => {
|
|
72
|
+
let handler = handlers.current.get(key);
|
|
73
|
+
if (!handler) {
|
|
74
|
+
handler = snapshot => setSnapshots(prev => ({
|
|
75
|
+
...prev,
|
|
76
|
+
[key]: snapshot
|
|
77
|
+
}));
|
|
78
|
+
handlers.current.set(key, handler);
|
|
79
|
+
}
|
|
80
|
+
return handler;
|
|
81
|
+
}, []);
|
|
82
|
+
const facetsKey = JSON.stringify((controls.facets ?? []).map(({
|
|
83
|
+
param,
|
|
84
|
+
field,
|
|
85
|
+
doctype: on,
|
|
86
|
+
orderBy
|
|
87
|
+
}) => [param, field, on, orderBy]));
|
|
88
|
+
const rangeFieldsKey = JSON.stringify((controls.ranges ?? []).map(range => range.field));
|
|
89
|
+
const connectionsKey = JSON.stringify(connections ?? null);
|
|
90
|
+
const reads = useMemo(() => {
|
|
91
|
+
const declared = JSON.parse(connectionsKey);
|
|
92
|
+
const facetReads = (controlsRef.current.facets ?? []).map(facet => ({
|
|
93
|
+
key: `facet:${facet.param}`,
|
|
94
|
+
facet,
|
|
95
|
+
...facetRead(facet, doctype, declared ?? void 0, limit)
|
|
96
|
+
}));
|
|
97
|
+
const rangeFields = JSON.parse(rangeFieldsKey);
|
|
98
|
+
const base = readBase ? {
|
|
99
|
+
key: "base",
|
|
100
|
+
doctype,
|
|
101
|
+
options: {
|
|
102
|
+
fields: ["name", ...rangeFields],
|
|
103
|
+
limit: limit ?? 0
|
|
104
|
+
}
|
|
105
|
+
} : void 0;
|
|
106
|
+
return {
|
|
107
|
+
facetReads: facetReads.filter(read => read.ready),
|
|
108
|
+
base
|
|
109
|
+
};
|
|
110
|
+
}, [facetsKey, rangeFieldsKey, connectionsKey, doctype, limit, readBase]);
|
|
111
|
+
const facetReadings = useMemo(() => {
|
|
112
|
+
const readings = {};
|
|
113
|
+
for (const read of reads.facetReads) {
|
|
114
|
+
const rows = snapshots[read.key]?.rows ?? [];
|
|
115
|
+
readings[read.facet.param] = readFacet(read.facet, read.linkField, rows);
|
|
116
|
+
}
|
|
117
|
+
return readings;
|
|
118
|
+
}, [reads, snapshots]);
|
|
119
|
+
const baseRows = reads.base ? snapshots.base?.rows : void 0;
|
|
120
|
+
const {
|
|
121
|
+
total,
|
|
122
|
+
highest
|
|
123
|
+
} = useMemo(() => {
|
|
124
|
+
if (!baseRows) return {
|
|
125
|
+
total: void 0,
|
|
126
|
+
highest: {}
|
|
127
|
+
};
|
|
128
|
+
const peaks = {};
|
|
129
|
+
for (const range of controlsRef.current.ranges ?? []) {
|
|
130
|
+
peaks[range.param] = baseRows.reduce((acc, row) => Math.max(acc, Number(row[range.field]) || 0), 0);
|
|
131
|
+
}
|
|
132
|
+
return {
|
|
133
|
+
total: baseRows.length,
|
|
134
|
+
highest: peaks
|
|
135
|
+
};
|
|
136
|
+
}, [baseRows]);
|
|
137
|
+
const readers = /* @__PURE__ */jsxs(Fragment, {
|
|
138
|
+
children: [reads.facetReads.map(read => /* @__PURE__ */jsx(FrappeRowsReader, {
|
|
139
|
+
connection,
|
|
140
|
+
doctype: read.doctype,
|
|
141
|
+
options: read.options,
|
|
142
|
+
onChange: handlerFor(read.key)
|
|
143
|
+
}, read.key)), reads.base ? /* @__PURE__ */jsx(FrappeRowsReader, {
|
|
144
|
+
connection,
|
|
145
|
+
doctype: reads.base.doctype,
|
|
146
|
+
options: reads.base.options,
|
|
147
|
+
onChange: handlerFor("base")
|
|
148
|
+
}, "base") : null]
|
|
149
|
+
});
|
|
150
|
+
return {
|
|
151
|
+
state,
|
|
152
|
+
searchText,
|
|
153
|
+
setSearchText,
|
|
154
|
+
update,
|
|
155
|
+
clear,
|
|
156
|
+
favorites,
|
|
157
|
+
facets: facetReadings,
|
|
158
|
+
total,
|
|
159
|
+
highest,
|
|
160
|
+
readers
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
export { useListControls };
|
|
164
|
+
//# sourceMappingURL=useListControls.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","useMemo","useRef","useState","FrappeRowsReader","facetRead","readFacet","useFavorites","listStateFromParams","listStateParams","Fragment","jsx","jsxs","mergeState","prev","patch","facets","ranges","useListControls","doctype","controls","connections","connection","limit","favoritesKey","router","readBase","controlsRef","current","setParams","setSearchParams","setParamsRef","state","setState","searchParams","searchText","setSearchText","search","pending","flushTick","setFlushTick","update","tick","Object","keys","length","clear","favoritesOnly","fromEntries","map","facet","param","range","favorites","snapshots","setSnapshots","handlers","Map","handlerFor","key","handler","get","snapshot","set","facetsKey","JSON","stringify","field","on","orderBy","rangeFieldsKey","connectionsKey","reads","declared","parse","facetReads","rangeFields","base","options","fields","filter","read","ready","facetReadings","readings","rows","linkField","baseRows","total","highest","peaks","reduce","acc","row","Math","max","Number","readers","children","onChange"],"sources":["../../../src/list/useListControls.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
3
|
+
import { FrappeRowsReader } from "../FrappeRowsReader.native.js";
|
|
4
|
+
import { facetRead, readFacet } from "./facetReading.native.js";
|
|
5
|
+
import { useFavorites } from "./favorites.native.js";
|
|
6
|
+
import { listStateFromParams, listStateParams } from "./listState.native.js";
|
|
7
|
+
function mergeState(prev, patch) {
|
|
8
|
+
return {
|
|
9
|
+
...prev,
|
|
10
|
+
...patch,
|
|
11
|
+
facets: patch.facets ? {
|
|
12
|
+
...prev.facets,
|
|
13
|
+
...patch.facets
|
|
14
|
+
} : prev.facets,
|
|
15
|
+
ranges: patch.ranges ? {
|
|
16
|
+
...prev.ranges,
|
|
17
|
+
...patch.ranges
|
|
18
|
+
} : prev.ranges
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
function useListControls(param) {
|
|
22
|
+
var {
|
|
23
|
+
doctype,
|
|
24
|
+
controls,
|
|
25
|
+
connections,
|
|
26
|
+
connection,
|
|
27
|
+
limit,
|
|
28
|
+
favoritesKey,
|
|
29
|
+
router,
|
|
30
|
+
readBase
|
|
31
|
+
} = param;
|
|
32
|
+
var _controls_facets, _controls_ranges;
|
|
33
|
+
var _snapshots_base;
|
|
34
|
+
var controlsRef = useRef(controls);
|
|
35
|
+
controlsRef.current = controls;
|
|
36
|
+
var setParams = router === null || router === void 0 ? void 0 : router.setSearchParams;
|
|
37
|
+
var setParamsRef = useRef(setParams);
|
|
38
|
+
setParamsRef.current = setParams;
|
|
39
|
+
var [state, setState] = useState(function () {
|
|
40
|
+
var _ref;
|
|
41
|
+
return listStateFromParams((_ref = router === null || router === void 0 ? void 0 : router.searchParams) !== null && _ref !== void 0 ? _ref : {}, controls);
|
|
42
|
+
});
|
|
43
|
+
var [searchText, setSearchText] = useState(state.search);
|
|
44
|
+
var pending = useRef({});
|
|
45
|
+
var [flushTick, setFlushTick] = useState(0);
|
|
46
|
+
var update = useCallback(function (patch) {
|
|
47
|
+
setState(function (prev) {
|
|
48
|
+
return mergeState(prev, patch);
|
|
49
|
+
});
|
|
50
|
+
if (!setParamsRef.current) return;
|
|
51
|
+
pending.current = {
|
|
52
|
+
...pending.current,
|
|
53
|
+
...listStateParams(patch, controlsRef.current)
|
|
54
|
+
};
|
|
55
|
+
setFlushTick(function (tick) {
|
|
56
|
+
return tick + 1;
|
|
57
|
+
});
|
|
58
|
+
}, []);
|
|
59
|
+
useEffect(function () {
|
|
60
|
+
if (flushTick === 0) return;
|
|
61
|
+
var patch = pending.current;
|
|
62
|
+
pending.current = {};
|
|
63
|
+
if (Object.keys(patch).length === 0) return;
|
|
64
|
+
try {
|
|
65
|
+
var _setParamsRef_current;
|
|
66
|
+
(_setParamsRef_current = setParamsRef.current) === null || _setParamsRef_current === void 0 ? void 0 : _setParamsRef_current.call(setParamsRef, patch);
|
|
67
|
+
} catch (unused) {}
|
|
68
|
+
},
|
|
69
|
+
// A host router that cannot take params right now; local state holds.
|
|
70
|
+
[flushTick]);
|
|
71
|
+
var clear = useCallback(function () {
|
|
72
|
+
var _current_facets, _current_ranges;
|
|
73
|
+
setSearchText("");
|
|
74
|
+
var current = controlsRef.current;
|
|
75
|
+
update({
|
|
76
|
+
search: "",
|
|
77
|
+
favoritesOnly: false,
|
|
78
|
+
facets: Object.fromEntries(((_current_facets = current.facets) !== null && _current_facets !== void 0 ? _current_facets : []).map(function (facet) {
|
|
79
|
+
return [facet.param, ""];
|
|
80
|
+
})),
|
|
81
|
+
ranges: Object.fromEntries(((_current_ranges = current.ranges) !== null && _current_ranges !== void 0 ? _current_ranges : []).map(function (range) {
|
|
82
|
+
return [range.param, 0];
|
|
83
|
+
}))
|
|
84
|
+
});
|
|
85
|
+
}, [update]);
|
|
86
|
+
var favorites = useFavorites(favoritesKey);
|
|
87
|
+
var [snapshots, setSnapshots] = useState({});
|
|
88
|
+
var handlers = useRef(/* @__PURE__ */new Map());
|
|
89
|
+
var handlerFor = useCallback(function (key) {
|
|
90
|
+
var handler = handlers.current.get(key);
|
|
91
|
+
if (!handler) {
|
|
92
|
+
handler = function handler2(snapshot) {
|
|
93
|
+
return setSnapshots(function (prev) {
|
|
94
|
+
return {
|
|
95
|
+
...prev,
|
|
96
|
+
[key]: snapshot
|
|
97
|
+
};
|
|
98
|
+
});
|
|
99
|
+
};
|
|
100
|
+
handlers.current.set(key, handler);
|
|
101
|
+
}
|
|
102
|
+
return handler;
|
|
103
|
+
}, []);
|
|
104
|
+
var facetsKey = JSON.stringify(((_controls_facets = controls.facets) !== null && _controls_facets !== void 0 ? _controls_facets : []).map(function (param2) {
|
|
105
|
+
var {
|
|
106
|
+
param: _$param,
|
|
107
|
+
field,
|
|
108
|
+
doctype: on,
|
|
109
|
+
orderBy
|
|
110
|
+
} = param2;
|
|
111
|
+
return [_$param, field, on, orderBy];
|
|
112
|
+
}));
|
|
113
|
+
var rangeFieldsKey = JSON.stringify(((_controls_ranges = controls.ranges) !== null && _controls_ranges !== void 0 ? _controls_ranges : []).map(function (range) {
|
|
114
|
+
return range.field;
|
|
115
|
+
}));
|
|
116
|
+
var connectionsKey = JSON.stringify(connections !== null && connections !== void 0 ? connections : null);
|
|
117
|
+
var reads = useMemo(function () {
|
|
118
|
+
var _controlsRef_current_facets;
|
|
119
|
+
var declared = JSON.parse(connectionsKey);
|
|
120
|
+
var facetReads = ((_controlsRef_current_facets = controlsRef.current.facets) !== null && _controlsRef_current_facets !== void 0 ? _controlsRef_current_facets : []).map(function (facet) {
|
|
121
|
+
return {
|
|
122
|
+
key: `facet:${facet.param}`,
|
|
123
|
+
facet,
|
|
124
|
+
...facetRead(facet, doctype, declared !== null && declared !== void 0 ? declared : void 0, limit)
|
|
125
|
+
};
|
|
126
|
+
});
|
|
127
|
+
var rangeFields = JSON.parse(rangeFieldsKey);
|
|
128
|
+
var base = readBase ? {
|
|
129
|
+
key: "base",
|
|
130
|
+
doctype,
|
|
131
|
+
options: {
|
|
132
|
+
fields: ["name", ...rangeFields],
|
|
133
|
+
limit: limit !== null && limit !== void 0 ? limit : 0
|
|
134
|
+
}
|
|
135
|
+
} : void 0;
|
|
136
|
+
return {
|
|
137
|
+
facetReads: facetReads.filter(function (read) {
|
|
138
|
+
return read.ready;
|
|
139
|
+
}),
|
|
140
|
+
base
|
|
141
|
+
};
|
|
142
|
+
},
|
|
143
|
+
// facetsKey stands for controls.facets, read through the ref.
|
|
144
|
+
[facetsKey, rangeFieldsKey, connectionsKey, doctype, limit, readBase]);
|
|
145
|
+
var facetReadings = useMemo(function () {
|
|
146
|
+
var readings = {};
|
|
147
|
+
var _iteratorNormalCompletion = true,
|
|
148
|
+
_didIteratorError = false,
|
|
149
|
+
_iteratorError = void 0;
|
|
150
|
+
try {
|
|
151
|
+
for (var _iterator = reads.facetReads[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
152
|
+
var read = _step.value;
|
|
153
|
+
var _ref;
|
|
154
|
+
var _snapshots_read_key;
|
|
155
|
+
var rows = (_ref = (_snapshots_read_key = snapshots[read.key]) === null || _snapshots_read_key === void 0 ? void 0 : _snapshots_read_key.rows) !== null && _ref !== void 0 ? _ref : [];
|
|
156
|
+
readings[read.facet.param] = readFacet(read.facet, read.linkField, rows);
|
|
157
|
+
}
|
|
158
|
+
} catch (err) {
|
|
159
|
+
_didIteratorError = true;
|
|
160
|
+
_iteratorError = err;
|
|
161
|
+
} finally {
|
|
162
|
+
try {
|
|
163
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
164
|
+
_iterator.return();
|
|
165
|
+
}
|
|
166
|
+
} finally {
|
|
167
|
+
if (_didIteratorError) {
|
|
168
|
+
throw _iteratorError;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
return readings;
|
|
173
|
+
}, [reads, snapshots]);
|
|
174
|
+
var baseRows = reads.base ? (_snapshots_base = snapshots.base) === null || _snapshots_base === void 0 ? void 0 : _snapshots_base.rows : void 0;
|
|
175
|
+
var {
|
|
176
|
+
total,
|
|
177
|
+
highest
|
|
178
|
+
} = useMemo(function () {
|
|
179
|
+
var _controlsRef_current_ranges;
|
|
180
|
+
if (!baseRows) return {
|
|
181
|
+
total: void 0,
|
|
182
|
+
highest: {}
|
|
183
|
+
};
|
|
184
|
+
var peaks = {};
|
|
185
|
+
var _iteratorNormalCompletion = true,
|
|
186
|
+
_didIteratorError = false,
|
|
187
|
+
_iteratorError = void 0;
|
|
188
|
+
try {
|
|
189
|
+
var _loop = function () {
|
|
190
|
+
var range = _step.value;
|
|
191
|
+
peaks[range.param] = baseRows.reduce(function (acc, row) {
|
|
192
|
+
return Math.max(acc, Number(row[range.field]) || 0);
|
|
193
|
+
}, 0);
|
|
194
|
+
};
|
|
195
|
+
for (var _iterator = ((_controlsRef_current_ranges = controlsRef.current.ranges) !== null && _controlsRef_current_ranges !== void 0 ? _controlsRef_current_ranges : [])[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) _loop();
|
|
196
|
+
} catch (err) {
|
|
197
|
+
_didIteratorError = true;
|
|
198
|
+
_iteratorError = err;
|
|
199
|
+
} finally {
|
|
200
|
+
try {
|
|
201
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
202
|
+
_iterator.return();
|
|
203
|
+
}
|
|
204
|
+
} finally {
|
|
205
|
+
if (_didIteratorError) {
|
|
206
|
+
throw _iteratorError;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
return {
|
|
211
|
+
total: baseRows.length,
|
|
212
|
+
highest: peaks
|
|
213
|
+
};
|
|
214
|
+
}, [baseRows]);
|
|
215
|
+
var readers = /* @__PURE__ */_jsxs(_Fragment, {
|
|
216
|
+
children: [reads.facetReads.map(function (read) {
|
|
217
|
+
return /* @__PURE__ */_jsx(FrappeRowsReader, {
|
|
218
|
+
connection,
|
|
219
|
+
doctype: read.doctype,
|
|
220
|
+
options: read.options,
|
|
221
|
+
onChange: handlerFor(read.key)
|
|
222
|
+
}, read.key);
|
|
223
|
+
}), reads.base ? /* @__PURE__ */_jsx(FrappeRowsReader, {
|
|
224
|
+
connection,
|
|
225
|
+
doctype: reads.base.doctype,
|
|
226
|
+
options: reads.base.options,
|
|
227
|
+
onChange: handlerFor("base")
|
|
228
|
+
}, "base") : null]
|
|
229
|
+
});
|
|
230
|
+
return {
|
|
231
|
+
state,
|
|
232
|
+
searchText,
|
|
233
|
+
setSearchText,
|
|
234
|
+
update,
|
|
235
|
+
clear,
|
|
236
|
+
favorites,
|
|
237
|
+
facets: facetReadings,
|
|
238
|
+
total,
|
|
239
|
+
highest,
|
|
240
|
+
readers
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
export { useListControls };
|
|
244
|
+
//# sourceMappingURL=useListControls.native.js.map
|