@multiplatform.one/frappe-ui 7.83.2 → 7.84.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/FrappeReportBuilder.cjs +1 -1
- package/dist/cjs/FrappeReportBuilder.native.js +2 -2
- package/dist/cjs/FrappeReportBuilder.native.js.map +1 -1
- package/dist/cjs/record/RecordPage.cjs +71 -68
- package/dist/cjs/record/RecordPage.native.js +76 -73
- package/dist/cjs/record/RecordPage.native.js.map +1 -1
- package/dist/esm/FrappeReportBuilder.mjs +1 -1
- 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/record/RecordPage.mjs +72 -69
- package/dist/esm/record/RecordPage.mjs.map +1 -1
- package/dist/esm/record/RecordPage.native.js +77 -74
- package/dist/esm/record/RecordPage.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.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.mjs +1 -1
- 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/FrappeReportView.native.js.map +1 -1
- package/dist/jsx/FrappeRowsReader.native.js.map +1 -1
- 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.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.map +1 -1
- package/dist/jsx/fields/Date/index.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.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/ListFiltersButton.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/defaultProjection.native.js.map +1 -1
- package/dist/jsx/list/facetBadgeSteps.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.native.js.map +1 -1
- package/dist/jsx/list/listControls.fixture.native.js.map +1 -1
- 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.mjs +72 -69
- package/dist/jsx/record/RecordPage.mjs.map +1 -1
- package/dist/jsx/record/RecordPage.native.js +76 -73
- 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/exportCsv.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.native.js.map +1 -1
- package/dist/jsx/sessionUser.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/FrappeReportBuilder.tsx +4 -4
- package/src/guestFallback.spec.tsx +15 -0
- package/src/record/RecordPage.tsx +65 -60
- package/types/record/RecordPage.d.ts.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@multiplatform.one/frappe-ui",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.84.0",
|
|
4
4
|
"description": "Pre-wired Tamagui components for Frappe doctypes with live data",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cross-platform",
|
|
@@ -72,18 +72,18 @@
|
|
|
72
72
|
"access": "public"
|
|
73
73
|
},
|
|
74
74
|
"dependencies": {
|
|
75
|
-
"@multiplatform.one/components": "^7.
|
|
76
|
-
"@multiplatform.one/desktop": "^7.
|
|
77
|
-
"@multiplatform.one/forms": "^7.
|
|
78
|
-
"@multiplatform.one/frappe": "^7.
|
|
79
|
-
"@multiplatform.one/i18n": "^7.
|
|
80
|
-
"@multiplatform.one/markdown": "^7.
|
|
81
|
-
"@multiplatform.one/platform": "^7.
|
|
82
|
-
"@multiplatform.one/rich-text": "^7.
|
|
83
|
-
"@multiplatform.one/router": "^7.
|
|
84
|
-
"@multiplatform.one/store": "^7.
|
|
85
|
-
"@multiplatform.one/table": "^7.
|
|
86
|
-
"@multiplatform.one/theme": "^7.
|
|
75
|
+
"@multiplatform.one/components": "^7.84.0",
|
|
76
|
+
"@multiplatform.one/desktop": "^7.84.0",
|
|
77
|
+
"@multiplatform.one/forms": "^7.84.0",
|
|
78
|
+
"@multiplatform.one/frappe": "^7.84.0",
|
|
79
|
+
"@multiplatform.one/i18n": "^7.84.0",
|
|
80
|
+
"@multiplatform.one/markdown": "^7.84.0",
|
|
81
|
+
"@multiplatform.one/platform": "^7.84.0",
|
|
82
|
+
"@multiplatform.one/rich-text": "^7.84.0",
|
|
83
|
+
"@multiplatform.one/router": "^7.84.0",
|
|
84
|
+
"@multiplatform.one/store": "^7.84.0",
|
|
85
|
+
"@multiplatform.one/table": "^7.84.0",
|
|
86
|
+
"@multiplatform.one/theme": "^7.84.0",
|
|
87
87
|
"@phosphor-icons/react": "^2.1.10",
|
|
88
88
|
"@tamagui/colors": "2.7.6",
|
|
89
89
|
"@tanstack/db": "0.8.0",
|
|
@@ -100,9 +100,9 @@
|
|
|
100
100
|
"tamagui": "2.7.6"
|
|
101
101
|
},
|
|
102
102
|
"devDependencies": {
|
|
103
|
-
"@multiplatform.one/config": "7.
|
|
104
|
-
"@multiplatform.one/storybook": "7.
|
|
105
|
-
"@multiplatform.one/test-utils": "7.
|
|
103
|
+
"@multiplatform.one/config": "7.84.0",
|
|
104
|
+
"@multiplatform.one/storybook": "7.84.0",
|
|
105
|
+
"@multiplatform.one/test-utils": "7.84.0",
|
|
106
106
|
"@tamagui/build": "2.7.6",
|
|
107
107
|
"@testing-library/jest-dom": "^7.0.1",
|
|
108
108
|
"@testing-library/react": "^16.3.3",
|
|
@@ -339,10 +339,10 @@ function FrappeReportBuilderBody({
|
|
|
339
339
|
const compact = useLayoutSizeClass() === "compact";
|
|
340
340
|
const defaultFieldnames = useMemo(
|
|
341
341
|
() =>
|
|
342
|
-
|
|
343
|
-
?
|
|
344
|
-
:
|
|
345
|
-
?
|
|
342
|
+
compact
|
|
343
|
+
? phoneReportFieldnames(layoutMeta)
|
|
344
|
+
: readsWithoutMeta && layoutMeta
|
|
345
|
+
? ["name", ...layoutMeta.fields.map((field) => field.fieldname)]
|
|
346
346
|
: defaultReportFieldnames(layoutMeta),
|
|
347
347
|
[layoutMeta, readsWithoutMeta, compact],
|
|
348
348
|
);
|
|
@@ -38,6 +38,7 @@ const tackle = {
|
|
|
38
38
|
move_name: "tackle",
|
|
39
39
|
power: 40,
|
|
40
40
|
accuracy: 0.95,
|
|
41
|
+
pp: 35,
|
|
41
42
|
};
|
|
42
43
|
|
|
43
44
|
const settle = { timeout: 8000 };
|
|
@@ -203,6 +204,20 @@ describe("LC-96 guest fallback: report views", () => {
|
|
|
203
204
|
expect(screen.queryByRole("button", { name: /save as/i })).toBeNull();
|
|
204
205
|
});
|
|
205
206
|
|
|
207
|
+
it("a doctype report on a phone opens on the phone's fitted columns (FZ-7684)", async () => {
|
|
208
|
+
const width = window.innerWidth;
|
|
209
|
+
window.innerWidth = 390;
|
|
210
|
+
try {
|
|
211
|
+
renderReport("builder");
|
|
212
|
+
await waitFor(() => expect(screen.getAllByText("a1b2c3").length).toBeGreaterThan(0), settle);
|
|
213
|
+
expect(screen.getAllByText("40").length).toBeGreaterThan(0);
|
|
214
|
+
expect(screen.getAllByText("35").length).toBeGreaterThan(0);
|
|
215
|
+
expect(screen.queryAllByText("tackle")).toHaveLength(0);
|
|
216
|
+
} finally {
|
|
217
|
+
window.innerWidth = width;
|
|
218
|
+
}
|
|
219
|
+
});
|
|
220
|
+
|
|
206
221
|
it("a doctype report whose rows are refused too says the reader can't open it, with no retry", async () => {
|
|
207
222
|
recordsReadable = false;
|
|
208
223
|
renderReport("builder");
|
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
H1,
|
|
5
5
|
PageBackButton,
|
|
6
6
|
PageSection,
|
|
7
|
+
PushedPage,
|
|
7
8
|
Quote,
|
|
8
9
|
Screen,
|
|
9
10
|
ScreenToolbar,
|
|
@@ -324,71 +325,75 @@ export function RecordPage<TDoc extends { name: string; doctype: string }>({
|
|
|
324
325
|
</>
|
|
325
326
|
);
|
|
326
327
|
|
|
328
|
+
// LC-270 hero: a pushed page whose name heads the identity block; the bar
|
|
329
|
+
// takes that name only once it scrolls away (LC-157).
|
|
327
330
|
return (
|
|
328
|
-
<
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
<
|
|
343
|
-
<
|
|
344
|
-
|
|
345
|
-
|
|
331
|
+
<PushedPage hero>
|
|
332
|
+
<Screen
|
|
333
|
+
noPadding
|
|
334
|
+
gap={0}
|
|
335
|
+
maxWidth={DETAIL_READABLE_WIDTH}
|
|
336
|
+
topBar={
|
|
337
|
+
<RecordTopBar
|
|
338
|
+
listName={listName}
|
|
339
|
+
onBack={() => navigate(route)}
|
|
340
|
+
slug={slug}
|
|
341
|
+
trailing={trailing}
|
|
342
|
+
/>
|
|
343
|
+
}
|
|
344
|
+
>
|
|
345
|
+
<RecordHeroFrame tint={tint} testID={`${slug}-detail-stage`}>
|
|
346
|
+
<YStack testID={`${slug}-hero-art`}>
|
|
347
|
+
<RecordGallery images={images} slides={slides} alt={title} />
|
|
348
|
+
</YStack>
|
|
349
|
+
</RecordHeroFrame>
|
|
346
350
|
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
351
|
+
<RecordHeroIdentityColumn testID={`${slug}-hero-identity`}>
|
|
352
|
+
<XStack gap="$2" alignItems="center" flexWrap="wrap">
|
|
353
|
+
{code ? (
|
|
354
|
+
<Text
|
|
355
|
+
{...nested.label}
|
|
356
|
+
fontWeight="700"
|
|
357
|
+
color={(tint ? `$${tint}11` : "$color11") as never}
|
|
358
|
+
>
|
|
359
|
+
{code}
|
|
360
|
+
</Text>
|
|
361
|
+
) : null}
|
|
362
|
+
{values.map((value) => (
|
|
363
|
+
<FacetBadge
|
|
364
|
+
key={value}
|
|
365
|
+
label={facet?.optionLabel?.(value) ?? value}
|
|
366
|
+
tint={facet?.tint?.(value)}
|
|
367
|
+
/>
|
|
368
|
+
))}
|
|
369
|
+
</XStack>
|
|
370
|
+
<RecordLargeTitle title={title} />
|
|
371
|
+
{look?.subtitle?.(doc) ? (
|
|
372
|
+
<Text {...nested.body} color="$textMuted">
|
|
373
|
+
{look.subtitle(doc)}
|
|
356
374
|
</Text>
|
|
357
375
|
) : null}
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
{look.subtitle(doc)}
|
|
370
|
-
</Text>
|
|
371
|
-
) : null}
|
|
372
|
-
<RecordVitals
|
|
373
|
-
tiles={metrics.map((metric) => {
|
|
374
|
-
const value = metricValue(doc, metric.field);
|
|
375
|
-
return {
|
|
376
|
-
id: metric.field,
|
|
377
|
-
label: metric.label,
|
|
378
|
-
value: metric.format ? metric.format(value) : String(value),
|
|
379
|
-
};
|
|
380
|
-
})}
|
|
381
|
-
/>
|
|
382
|
-
</RecordHeroIdentityColumn>
|
|
376
|
+
<RecordVitals
|
|
377
|
+
tiles={metrics.map((metric) => {
|
|
378
|
+
const value = metricValue(doc, metric.field);
|
|
379
|
+
return {
|
|
380
|
+
id: metric.field,
|
|
381
|
+
label: metric.label,
|
|
382
|
+
value: metric.format ? metric.format(value) : String(value),
|
|
383
|
+
};
|
|
384
|
+
})}
|
|
385
|
+
/>
|
|
386
|
+
</RecordHeroIdentityColumn>
|
|
383
387
|
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
388
|
+
<YStack {...knobProps.gapLg} paddingTop={knobProps.panelPadding.padding} paddingBottom="$6">
|
|
389
|
+
{tabItems.length > 0 ? (
|
|
390
|
+
<Tabs defaultValue={tabItems[0]?.value} lazyMount items={tabItems} />
|
|
391
|
+
) : null}
|
|
392
|
+
<YStack {...knobProps.panelPadding} paddingVertical={0}>
|
|
393
|
+
<RecordPager prev={pagerEntry(prev)} next={pagerEntry(next)} testID={slug} />
|
|
394
|
+
</YStack>
|
|
390
395
|
</YStack>
|
|
391
|
-
</
|
|
392
|
-
</
|
|
396
|
+
</Screen>
|
|
397
|
+
</PushedPage>
|
|
393
398
|
);
|
|
394
399
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RecordPage.d.ts","sourceRoot":"","sources":["../../src/record/RecordPage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RecordPage.d.ts","sourceRoot":"","sources":["../../src/record/RecordPage.tsx"],"names":[],"mappings":"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"}
|