@multiplatform.one/frappe-ui 7.50.1 → 7.51.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.
Files changed (58) hide show
  1. package/dist/cjs/FrappeRecordView.cjs +12 -9
  2. package/dist/cjs/FrappeRecordView.native.js +12 -9
  3. package/dist/cjs/FrappeRecordView.native.js.map +1 -1
  4. package/dist/cjs/record/RecordPage.cjs +32 -39
  5. package/dist/cjs/record/RecordPage.native.js +33 -39
  6. package/dist/cjs/record/RecordPage.native.js.map +1 -1
  7. package/dist/cjs/record/RecordRows.cjs +3 -6
  8. package/dist/cjs/record/RecordRows.native.js +3 -6
  9. package/dist/cjs/record/RecordRows.native.js.map +1 -1
  10. package/dist/cjs/schemaForm/index.cjs +9 -1
  11. package/dist/cjs/schemaForm/index.native.js +9 -1
  12. package/dist/cjs/schemaForm/index.native.js.map +1 -1
  13. package/dist/esm/FrappeRecordView.mjs +13 -10
  14. package/dist/esm/FrappeRecordView.mjs.map +1 -1
  15. package/dist/esm/FrappeRecordView.native.js +13 -10
  16. package/dist/esm/FrappeRecordView.native.js.map +1 -1
  17. package/dist/esm/record/RecordPage.mjs +35 -43
  18. package/dist/esm/record/RecordPage.mjs.map +1 -1
  19. package/dist/esm/record/RecordPage.native.js +36 -43
  20. package/dist/esm/record/RecordPage.native.js.map +1 -1
  21. package/dist/esm/record/RecordRows.mjs +4 -7
  22. package/dist/esm/record/RecordRows.mjs.map +1 -1
  23. package/dist/esm/record/RecordRows.native.js +4 -7
  24. package/dist/esm/record/RecordRows.native.js.map +1 -1
  25. package/dist/esm/schemaForm/index.mjs +10 -2
  26. package/dist/esm/schemaForm/index.mjs.map +1 -1
  27. package/dist/esm/schemaForm/index.native.js +10 -2
  28. package/dist/esm/schemaForm/index.native.js.map +1 -1
  29. package/dist/jsx/FrappeRecordView.mjs +13 -10
  30. package/dist/jsx/FrappeRecordView.mjs.map +1 -1
  31. package/dist/jsx/FrappeRecordView.native.js +12 -9
  32. package/dist/jsx/FrappeRecordView.native.js.map +1 -1
  33. package/dist/jsx/record/RecordPage.mjs +35 -43
  34. package/dist/jsx/record/RecordPage.mjs.map +1 -1
  35. package/dist/jsx/record/RecordPage.native.js +33 -39
  36. package/dist/jsx/record/RecordPage.native.js.map +1 -1
  37. package/dist/jsx/record/RecordRows.mjs +4 -7
  38. package/dist/jsx/record/RecordRows.mjs.map +1 -1
  39. package/dist/jsx/record/RecordRows.native.js +3 -6
  40. package/dist/jsx/record/RecordRows.native.js.map +1 -1
  41. package/dist/jsx/schemaForm/index.mjs +10 -2
  42. package/dist/jsx/schemaForm/index.mjs.map +1 -1
  43. package/dist/jsx/schemaForm/index.native.js +9 -1
  44. package/dist/jsx/schemaForm/index.native.js.map +1 -1
  45. package/package.json +16 -16
  46. package/src/FrappeRecordView.tsx +3 -6
  47. package/src/record/RecordLargeTitle.spec.tsx +58 -0
  48. package/src/record/RecordPage.tsx +47 -57
  49. package/src/record/RecordRows.surface.spec.tsx +23 -0
  50. package/src/record/RecordRows.tsx +8 -5
  51. package/src/schemaForm/SchemaForm.flatLift.spec.tsx +49 -0
  52. package/src/schemaForm/index.tsx +7 -1
  53. package/types/FrappeRecordView.d.ts.map +1 -1
  54. package/types/record/RecordPage.d.ts +13 -1
  55. package/types/record/RecordPage.d.ts.map +1 -1
  56. package/types/record/RecordRows.d.ts +2 -2
  57. package/types/record/RecordRows.d.ts.map +1 -1
  58. package/types/schemaForm/index.d.ts.map +1 -1
@@ -0,0 +1,58 @@
1
+ /**
2
+ * LC-157: the record page's name reaches its pinned bar. RecordPage renders
3
+ * the Screen, so the title registers from a child inside the Screen's scroll
4
+ * scope; registered from RecordPage's own body it never reached the bar, and
5
+ * the One detail's bar stayed empty however far it scrolled.
6
+ */
7
+ import { Screen, ScreenToolbar } from "@multiplatform.one/components";
8
+ import { renderWithProviders } from "@multiplatform.one/test-utils";
9
+ import { act, cleanup, fireEvent, screen } from "@testing-library/react";
10
+ import fs from "node:fs";
11
+ import path from "node:path";
12
+ import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
13
+ import { RecordLargeTitle } from "./RecordPage";
14
+
15
+ const TITLE_BOTTOM = 120;
16
+
17
+ beforeEach(() => {
18
+ vi.spyOn(Element.prototype, "getBoundingClientRect").mockImplementation(function (this: Element) {
19
+ const bottom = this.tagName === "H1" ? TITLE_BOTTOM : 0;
20
+ return { top: 0, bottom, left: 0, right: 0, width: 0, height: bottom, x: 0, y: 0 } as DOMRect;
21
+ });
22
+ });
23
+
24
+ afterEach(() => {
25
+ vi.restoreAllMocks();
26
+ cleanup();
27
+ });
28
+
29
+ describe("RecordLargeTitle (LC-157)", () => {
30
+ it("hands the record's name to the pinned bar once it scrolls away", async () => {
31
+ const { container } = renderWithProviders(
32
+ <Screen
33
+ scrollViewProps={{ testID: "page-scroll" } as never}
34
+ topBar={<ScreenToolbar leading={<span>Pokemon</span>} />}
35
+ >
36
+ <RecordLargeTitle title="Pikachu" />
37
+ <div style={{ height: 2000 }} />
38
+ </Screen>,
39
+ );
40
+ const barTitle = () => container.querySelector("[data-bar-title]");
41
+ expect(barTitle()?.textContent).toBe("Pikachu");
42
+ expect(barTitle()?.getAttribute("aria-hidden")).toBe("true");
43
+ await act(async () => {
44
+ fireEvent.scroll(screen.getByTestId("page-scroll"), {
45
+ target: { scrollTop: TITLE_BOTTOM + 10 },
46
+ });
47
+ await new Promise((resolve) => setTimeout(resolve, 120));
48
+ });
49
+ expect(barTitle()?.getAttribute("aria-hidden")).toBe("false");
50
+ });
51
+
52
+ it("RecordPage renders its name through it, not a hook in its own body", () => {
53
+ const source = fs.readFileSync(path.resolve(__dirname, "RecordPage.tsx"), "utf-8");
54
+ const body = source.slice(source.indexOf("export function RecordPage<"));
55
+ expect(body).toContain("<RecordLargeTitle title={title} />");
56
+ expect(body).not.toContain("useLargeTitle(");
57
+ });
58
+ });
@@ -2,28 +2,21 @@ import {
2
2
  Avatar,
3
3
  DropdownMenu,
4
4
  H1,
5
+ PageBackButton,
5
6
  PageSection,
6
7
  Quote,
7
8
  Screen,
9
+ ScreenToolbar,
8
10
  Tabs,
9
11
  Text,
10
12
  XStack,
11
13
  YStack,
14
+ useLargeTitle,
12
15
  type DropdownMenuEntry,
13
16
  } from "@multiplatform.one/components";
14
17
  import { Button } from "@multiplatform.one/forms";
15
- import {
16
- formatAbsoluteDateTime,
17
- hairline,
18
- Surface,
19
- useResolvedKnobs,
20
- } from "@multiplatform.one/theme";
21
- import {
22
- CaretLeftIcon,
23
- DotsThreeOutlineIcon,
24
- HeartIcon,
25
- PencilSimpleIcon,
26
- } from "@phosphor-icons/react";
18
+ import { formatAbsoluteDateTime, useResolvedKnobs } from "@multiplatform.one/theme";
19
+ import { DotsThreeOutlineIcon, HeartIcon, PencilSimpleIcon } from "@phosphor-icons/react";
27
20
  import type { ComponentType, ReactNode } from "react";
28
21
  import { useTranslation } from "react-i18next";
29
22
  import { frappeRouteHref } from "../frappeNavigation";
@@ -40,6 +33,22 @@ import { RecordPager, type RecordPagerEntry } from "./RecordPager";
40
33
  import { RecordGroup, RecordRows } from "./RecordRows";
41
34
  import type { FrappeRecordSection, FrappeRecordTab } from "./recordSections";
42
35
 
36
+ /**
37
+ * LC-157: the record's name is the page's large title, at the page-title
38
+ * token, and the top bar takes it once it scrolls away. It registers from
39
+ * inside the Screen: RecordPage renders the Screen, so a hook in its own body
40
+ * would sit above the scroll scope and never reach the bar.
41
+ */
42
+ export function RecordLargeTitle({ title }: { title: string }) {
43
+ const { knobProps } = useResolvedKnobs();
44
+ const largeTitle = useLargeTitle(title);
45
+ return (
46
+ <H1 margin={0} {...largeTitle} {...knobProps.pageTitle} {...knobProps.heading}>
47
+ {title}
48
+ </H1>
49
+ );
50
+ }
51
+
43
52
  /** A hop from the record to another page of it (the backoffice form). */
44
53
  export interface FrappeRecordAction<TDoc> {
45
54
  label: string;
@@ -73,7 +82,10 @@ export interface RecordPageProps<TDoc extends { name: string; doctype: string }>
73
82
  canEdit: boolean;
74
83
  }
75
84
 
76
- /** The record page's top bar: back to the list, then the heart and the menu. */
85
+ /**
86
+ * The record page's top bar: back to the list, then the heart and the menu.
87
+ * It is the Screen's pinned bar (LC-157): pass it as `Screen`'s `topBar`.
88
+ */
77
89
  export function RecordTopBar({
78
90
  listName,
79
91
  onBack,
@@ -86,43 +98,19 @@ export function RecordTopBar({
86
98
  trailing?: ReactNode;
87
99
  }) {
88
100
  const { t } = useTranslation();
89
- const { knobProps } = useResolvedKnobs();
90
- // LC-153: the top bar's neutral buttons (back, heart, menu) paint plain.
91
101
  return (
92
- <Surface bar>
93
- <XStack
94
- alignItems="center"
95
- {...knobProps.gapSm}
96
- paddingHorizontal={knobProps.gapSm.gap}
97
- paddingVertical="$1"
98
- {...hairline.bottom}
99
- borderColor="$borderColor"
100
- testID={`${slug}-detail-header`}
101
- >
102
- <Button
103
- chromeless
104
- minHeight={knobProps.sizeToken}
102
+ <ScreenToolbar
103
+ testID={`${slug}-detail-header`}
104
+ leading={
105
+ <PageBackButton
106
+ label={listName}
105
107
  onPress={onBack}
106
- icon={CaretLeftIcon}
107
- flexShrink={1}
108
108
  aria-label={t("Back to {{title}}", { title: listName })}
109
109
  testID={`${slug}-detail-back`}
110
- >
111
- {listName}
112
- </Button>
113
- {trailing ? (
114
- <XStack
115
- alignItems="center"
116
- justifyContent="flex-end"
117
- gap="$1"
118
- flexGrow={1}
119
- flexShrink={0}
120
- >
121
- {trailing}
122
- </XStack>
123
- ) : null}
124
- </XStack>
125
- </Surface>
110
+ />
111
+ }
112
+ trailing={trailing}
113
+ />
126
114
  );
127
115
  }
128
116
 
@@ -333,14 +321,18 @@ export function RecordPage<TDoc extends { name: string; doctype: string }>({
333
321
  );
334
322
 
335
323
  return (
336
- <Screen noPadding gap={0}>
337
- <RecordTopBar
338
- listName={listName}
339
- onBack={() => navigate(route)}
340
- slug={slug}
341
- trailing={trailing}
342
- />
343
-
324
+ <Screen
325
+ noPadding
326
+ gap={0}
327
+ topBar={
328
+ <RecordTopBar
329
+ listName={listName}
330
+ onBack={() => navigate(route)}
331
+ slug={slug}
332
+ trailing={trailing}
333
+ />
334
+ }
335
+ >
344
336
  <RecordHeroFrame tint={tint} testID={`${slug}-detail-stage`}>
345
337
  <YStack testID={`${slug}-hero-art`}>
346
338
  <RecordGallery images={images} slides={slides} alt={title} />
@@ -366,9 +358,7 @@ export function RecordPage<TDoc extends { name: string; doctype: string }>({
366
358
  />
367
359
  ))}
368
360
  </XStack>
369
- <H1 margin={0} size="$10">
370
- {title}
371
- </H1>
361
+ <RecordLargeTitle title={title} />
372
362
  {look?.subtitle?.(doc) ? (
373
363
  <Text {...nested.body} color="$color11">
374
364
  {look.subtitle(doc)}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * LC-151 SURFACE-LADDER: a record's grouped rows (abilities, moves, history,
3
+ * the stats bars) sit on the page as one content card, the grouped white step
4
+ * with its hairline edge, not as a page-coloured outline.
5
+ */
6
+ import { renderWithProviders } from "@multiplatform.one/test-utils";
7
+ import { cleanup } from "@testing-library/react";
8
+ import { afterEach, describe, expect, it } from "vitest";
9
+ import { RecordGroup } from "./RecordRows";
10
+
11
+ afterEach(cleanup);
12
+
13
+ describe("RecordGroup surface (LC-151)", () => {
14
+ it("is a content Card, so it takes the grouped step and the hairline", () => {
15
+ const { getByTestId } = renderWithProviders(
16
+ <RecordGroup testID="abilities">
17
+ {[<span key="a">Static</span>, <span key="b">Lightning Rod</span>]}
18
+ </RecordGroup>,
19
+ );
20
+ const group = getByTestId("abilities");
21
+ expect(group.className).toContain("is_Card");
22
+ });
23
+ });
@@ -1,11 +1,12 @@
1
1
  import {
2
2
  Accordion,
3
+ Card,
3
4
  Chip,
4
5
  TamaguiSizableText,
5
6
  Text,
6
7
  XStack,
7
8
  YStack,
8
- type YStackProps,
9
+ type CardProps,
9
10
  } from "@multiplatform.one/components";
10
11
  import { hairline, useResolvedKnobs } from "@multiplatform.one/theme";
11
12
  import type { ReactNode } from "react";
@@ -16,12 +17,14 @@ import { slugWords, type FrappeRecordRowsSection } from "./recordSections";
16
17
  type Row = Record<string, unknown>;
17
18
 
18
19
  /** The bordered surface the record page sets its groups and bars on. */
19
- export function RecordGroupFrame({ children, ...rest }: YStackProps & { children: ReactNode }) {
20
- const { knobProps } = useResolvedKnobs();
20
+ export function RecordGroupFrame({ children, ...rest }: CardProps & { children: ReactNode }) {
21
+ // LC-151: a record's grouped rows are a content card, the grouped white
22
+ // step with a hairline edge on the page. The rows own their inset, so the
23
+ // card adds none.
21
24
  return (
22
- <YStack {...knobProps.surface} {...knobProps.containerRadius} overflow="hidden" {...rest}>
25
+ <Card padding={0} gap={0} overflow="hidden" {...rest}>
23
26
  {children}
24
- </YStack>
27
+ </Card>
25
28
  );
26
29
  }
27
30
 
@@ -0,0 +1,49 @@
1
+ // LC-151 gives a top-level card a hair of lift. A flat form section drops its
2
+ // card chrome on a phone, and the lift with it: on web the lift is an inline
3
+ // box-shadow, so the section clears it itself rather than through `$max-sm`.
4
+ import { renderWithProviders } from "@multiplatform.one/test-utils";
5
+ import { afterEach, describe, expect, it, vi } from "vitest";
6
+ import type { FieldSchema } from "../fieldRegistry";
7
+ import { SchemaForm, type FormSchema } from "./index";
8
+
9
+ const media = vi.hoisted(() => ({ phone: true }));
10
+ vi.mock("tamagui", async (importOriginal) => {
11
+ const actual = (await importOriginal()) as Record<string, unknown> & {
12
+ useMedia: () => Record<string, boolean>;
13
+ };
14
+ return { ...actual, useMedia: () => ({ ...actual.useMedia(), "max-sm": media.phone }) };
15
+ });
16
+
17
+ const fields: FieldSchema[] = [{ type: "Data", name: "pokemon_name", label: "Name" }];
18
+ const schema: FormSchema = { fields, sections: [{ label: "Vitals", columns: [{ fields }] }] };
19
+
20
+ function sectionCard(layout: "flat" | "cards") {
21
+ renderWithProviders(
22
+ <SchemaForm
23
+ schema={schema}
24
+ doc={{ pokemon_name: "Pikachu" }}
25
+ setValue={vi.fn()}
26
+ layout={layout}
27
+ />,
28
+ );
29
+ return document.querySelector("[data-mpo-schema-form-card]") as HTMLElement;
30
+ }
31
+
32
+ afterEach(() => {
33
+ media.phone = true;
34
+ });
35
+
36
+ describe("a flat section on a phone has no card lift (LC-151)", () => {
37
+ it("clears the inline box-shadow under max-sm", () => {
38
+ expect(sectionCard("flat").style.boxShadow).toBe("none");
39
+ });
40
+
41
+ it("keeps the card's lift on a wider screen", () => {
42
+ media.phone = false;
43
+ expect(sectionCard("flat").style.boxShadow).not.toBe("none");
44
+ });
45
+
46
+ it("keeps the lift on a carded section on a phone", () => {
47
+ expect(sectionCard("cards").style.boxShadow).not.toBe("none");
48
+ });
49
+ });
@@ -20,7 +20,7 @@ import { useResolvedKnobs } from "@multiplatform.one/theme";
20
20
  import { Card, sectionHeading, Text } from "@multiplatform.one/components";
21
21
  import React, { useMemo } from "react";
22
22
  import { useTranslation } from "react-i18next";
23
- import { SizableText, Text as TamaguiText, XStack, YStack } from "tamagui";
23
+ import { SizableText, Text as TamaguiText, XStack, YStack, useMedia } from "tamagui";
24
24
 
25
25
  import { compileDependsOn } from "../dependsOn";
26
26
  import { Heading, type HeadingLevel } from "../fields/Heading";
@@ -371,6 +371,10 @@ function SchemaFormSectionCard({
371
371
  }, [collapsible, section.collapsed]);
372
372
  const hideBorder = !!section.hideBorder;
373
373
  const effectiveCollapsed = collapsible && collapsed;
374
+ // The card's lift is an inline box-shadow on web (LC-151), which a
375
+ // `$max-sm` media prop cannot reach, so a flattened phone section drops it here.
376
+ const media = useMedia();
377
+ const phoneFlat = flat && media["max-sm"];
374
378
 
375
379
  return (
376
380
  <Card
@@ -379,6 +383,7 @@ function SchemaFormSectionCard({
379
383
  data-mpo-schema-form-flat={flat ? "" : undefined}
380
384
  {...(hideBorder ? { borderWidth: 0, backgroundColor: "transparent" } : {})}
381
385
  {...(flat ? { "$max-sm": phoneFlatSection } : {})}
386
+ {...(phoneFlat ? { style: { boxShadow: "none" } } : {})}
382
387
  >
383
388
  {flat && section.label ? (
384
389
  <Card.Header>
@@ -519,6 +524,7 @@ const phoneFlatSection = {
519
524
  borderRadius: 0,
520
525
  borderWidth: 0,
521
526
  elevation: 0,
527
+ shadowOpacity: 0,
522
528
  } as const;
523
529
 
524
530
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"FrappeRecordView.d.ts","sourceRoot":"","sources":["../src/FrappeRecordView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FrappeRecordView.d.ts","sourceRoot":"","sources":["../src/FrappeRecordView.tsx"],"names":[],"mappings":"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"}
@@ -3,6 +3,15 @@ import { type FrappeInsightsMetric } from "../insights/insightsRecord";
3
3
  import type { FrappeListFacet } from "../list/listState";
4
4
  import { type FrappeRecordLook } from "../list/recordLook";
5
5
  import type { FrappeRecordTab } from "./recordSections";
6
+ /**
7
+ * LC-157: the record's name is the page's large title, at the page-title
8
+ * token, and the top bar takes it once it scrolls away. It registers from
9
+ * inside the Screen: RecordPage renders the Screen, so a hook in its own body
10
+ * would sit above the scroll scope and never reach the bar.
11
+ */
12
+ export declare function RecordLargeTitle({ title }: {
13
+ title: string;
14
+ }): import("react/jsx-runtime").JSX.Element;
6
15
  /** A hop from the record to another page of it (the backoffice form). */
7
16
  export interface FrappeRecordAction<TDoc> {
8
17
  label: string;
@@ -41,7 +50,10 @@ export interface RecordPageProps<TDoc extends {
41
50
  /** The session may write this record: Edit shows. */
42
51
  canEdit: boolean;
43
52
  }
44
- /** The record page's top bar: back to the list, then the heart and the menu. */
53
+ /**
54
+ * The record page's top bar: back to the list, then the heart and the menu.
55
+ * It is the Screen's pinned bar (LC-157): pass it as `Screen`'s `topBar`.
56
+ */
45
57
  export declare function RecordTopBar({ listName, onBack, slug, trailing, }: {
46
58
  listName: string;
47
59
  onBack: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"RecordPage.d.ts","sourceRoot":"","sources":["../../src/record/RecordPage.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RecordPage.d.ts","sourceRoot":"","sources":["../../src/record/RecordPage.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGtD,OAAO,EAAe,KAAK,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGpF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAOxE,OAAO,KAAK,EAAuB,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE7E;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,2CAQ5D;AAED,yEAAyE;AACzE,MAAM,WAAW,kBAAkB,CAAC,IAAI;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,aAAa,CAAC;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvC,IAAI,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEnC,MAAM,WAAW,eAAe,CAAC,IAAI,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE;IAC7E,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1B,IAAI,CAAC,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACzC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IAC9E,IAAI,EAAE,SAAS,eAAe,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC7B,OAAO,EAAE,SAAS,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC7C,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,qDAAqD;IACrD,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,2CAgBA;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,EACzE,GAAG,EACH,MAAM,EACN,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,UAAU,EACV,KAAK,EACL,OAAO,EACP,OAAO,EACP,IAAI,EACJ,SAAS,EACT,OAAO,EACP,OAAO,EACP,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,OAAO,GACR,EAAE,eAAe,CAAC,IAAI,CAAC,2CAsPvB"}
@@ -1,9 +1,9 @@
1
- import { type YStackProps } from "@multiplatform.one/components";
1
+ import { type CardProps } from "@multiplatform.one/components";
2
2
  import type { ReactNode } from "react";
3
3
  import { type FrappeRecordRowsSection } from "./recordSections";
4
4
  type Row = Record<string, unknown>;
5
5
  /** The bordered surface the record page sets its groups and bars on. */
6
- export declare function RecordGroupFrame({ children, ...rest }: YStackProps & {
6
+ export declare function RecordGroupFrame({ children, ...rest }: CardProps & {
7
7
  children: ReactNode;
8
8
  }): import("react/jsx-runtime").JSX.Element;
9
9
  /** A bordered group of rows split by hairlines, the record page's list shape. */
@@ -1 +1 @@
1
- {"version":3,"file":"RecordRows.d.ts","sourceRoot":"","sources":["../../src/record/RecordRows.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,WAAW,EACjB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAa,KAAK,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAE3E,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEnC,wEAAwE;AACxE,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,WAAW,GAAG;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CAO5F;AAED,iFAAiF;AACjF,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,2CAgB3F;AA0CD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,OAAO,GACR,EAAE;IACD,IAAI,EAAE,SAAS,GAAG,EAAE,CAAC;IACrB,OAAO,EAAE,uBAAuB,CAAC;CAClC,2CAiCA"}
1
+ {"version":3,"file":"RecordRows.d.ts","sourceRoot":"","sources":["../../src/record/RecordRows.tsx"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAa,KAAK,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAE3E,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEnC,wEAAwE;AACxE,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,SAAS,GAAG;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CAS1F;AAED,iFAAiF;AACjF,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,2CAgB3F;AA0CD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,OAAO,GACR,EAAE;IACD,IAAI,EAAE,SAAS,GAAG,EAAE,CAAC;IACrB,OAAO,EAAE,uBAAuB,CAAC;CAClC,2CAiCA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schemaForm/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schemaForm/index.tsx"],"names":[],"mappings":"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"}