@buoy-gg/shared-ui 7.0.32 → 7.0.34
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/lib/commonjs/JsModal.js +70 -28
- package/lib/commonjs/hooks/index.js +26 -0
- package/lib/commonjs/hooks/safe-area-impl.js +1 -1
- package/lib/commonjs/hooks/useChangeLog.js +55 -0
- package/lib/commonjs/hooks/useEventStoreEvents.js +65 -0
- package/lib/commonjs/hooks/usePersistedState.js +45 -10
- package/lib/commonjs/index.js +143 -0
- package/lib/commonjs/storage/definePersistedSetting.js +67 -0
- package/lib/commonjs/storage/devToolsStorageKeys.js +12 -0
- package/lib/commonjs/storage/index.js +8 -1
- package/lib/commonjs/stores/ChangeLog.js +197 -0
- package/lib/commonjs/stores/createToolStore.js +175 -0
- package/lib/commonjs/stores/index.js +15 -1
- package/lib/commonjs/sync/toolSyncAdapter.js +63 -0
- package/lib/commonjs/sync/wireForm.js +172 -0
- package/lib/commonjs/tools/defineTool.js +79 -0
- package/lib/commonjs/ui/components/ChangeRow.js +110 -0
- package/lib/commonjs/ui/components/ChipStrip.js +94 -0
- package/lib/commonjs/ui/components/DetailViewToggle.js +130 -0
- package/lib/commonjs/ui/components/DevToolsCard.js +3 -1
- package/lib/commonjs/ui/components/EmptyState.js +10 -2
- package/lib/commonjs/ui/components/EntityFilterView.js +354 -0
- package/lib/commonjs/ui/components/ExportPreview.js +174 -0
- package/lib/commonjs/ui/components/InfoRow.js +90 -0
- package/lib/commonjs/ui/components/ModalHeader.js +40 -7
- package/lib/commonjs/ui/components/Pill.js +114 -0
- package/lib/commonjs/ui/components/ToggleRow.js +116 -0
- package/lib/commonjs/ui/components/ToolEmptyState.js +154 -0
- package/lib/commonjs/ui/components/ToolFooter.js +204 -0
- package/lib/commonjs/ui/components/WindowControls.js +8 -5
- package/lib/commonjs/ui/components/index.js +113 -1
- package/lib/commonjs/ui/index.js +36 -2
- package/lib/commonjs/ui/listPresets.js +43 -0
- package/lib/commonjs/ui/night/primitives.js +3 -1
- package/lib/commonjs/ui/otto/OttoSprite.js +510 -0
- package/lib/commonjs/ui/otto/index.js +38 -0
- package/lib/commonjs/ui/otto/ottoEngine.js +2734 -0
- package/lib/commonjs/ui/otto/ottoSheet.js +191 -0
- package/lib/commonjs/utils/snapshotProviderKit.js +167 -0
- package/lib/commonjs/utils/stateTools.js +160 -0
- package/lib/module/JsModal.js +70 -28
- package/lib/module/hooks/index.js +3 -1
- package/lib/module/hooks/safe-area-impl.js +1 -1
- package/lib/module/hooks/useChangeLog.js +50 -0
- package/lib/module/hooks/useEventStoreEvents.js +61 -0
- package/lib/module/hooks/usePersistedState.js +44 -10
- package/lib/module/index.js +11 -1
- package/lib/module/storage/definePersistedSetting.js +63 -0
- package/lib/module/storage/devToolsStorageKeys.js +12 -0
- package/lib/module/storage/index.js +2 -1
- package/lib/module/stores/ChangeLog.js +192 -0
- package/lib/module/stores/createToolStore.js +171 -0
- package/lib/module/stores/index.js +3 -1
- package/lib/module/sync/toolSyncAdapter.js +58 -0
- package/lib/module/sync/wireForm.js +159 -0
- package/lib/module/tools/defineTool.js +74 -0
- package/lib/module/ui/components/ChangeRow.js +105 -0
- package/lib/module/ui/components/ChipStrip.js +91 -0
- package/lib/module/ui/components/DetailViewToggle.js +125 -0
- package/lib/module/ui/components/DevToolsCard.js +3 -1
- package/lib/module/ui/components/EmptyState.js +10 -2
- package/lib/module/ui/components/EntityFilterView.js +350 -0
- package/lib/module/ui/components/ExportPreview.js +169 -0
- package/lib/module/ui/components/InfoRow.js +86 -0
- package/lib/module/ui/components/ModalHeader.js +40 -7
- package/lib/module/ui/components/Pill.js +110 -0
- package/lib/module/ui/components/ToggleRow.js +112 -0
- package/lib/module/ui/components/ToolEmptyState.js +149 -0
- package/lib/module/ui/components/ToolFooter.js +196 -0
- package/lib/module/ui/components/WindowControls.js +8 -5
- package/lib/module/ui/components/index.js +13 -1
- package/lib/module/ui/index.js +7 -1
- package/lib/module/ui/listPresets.js +39 -0
- package/lib/module/ui/night/primitives.js +3 -1
- package/lib/module/ui/otto/OttoSprite.js +496 -0
- package/lib/module/ui/otto/index.js +20 -0
- package/lib/module/ui/otto/ottoEngine.js +2726 -0
- package/lib/module/ui/otto/ottoSheet.js +180 -0
- package/lib/module/utils/snapshotProviderKit.js +156 -0
- package/lib/module/utils/stateTools.js +154 -0
- package/lib/typescript/commonjs/JsModal.d.ts.map +1 -1
- package/lib/typescript/commonjs/hooks/index.d.ts +3 -1
- package/lib/typescript/commonjs/hooks/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/hooks/safe-area-impl.d.ts +1 -1
- package/lib/typescript/commonjs/hooks/useChangeLog.d.ts +38 -0
- package/lib/typescript/commonjs/hooks/useChangeLog.d.ts.map +1 -0
- package/lib/typescript/commonjs/hooks/useEventStoreEvents.d.ts +25 -0
- package/lib/typescript/commonjs/hooks/useEventStoreEvents.d.ts.map +1 -0
- package/lib/typescript/commonjs/hooks/usePersistedState.d.ts +34 -5
- package/lib/typescript/commonjs/hooks/usePersistedState.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +6 -1
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/storage/definePersistedSetting.d.ts +39 -0
- package/lib/typescript/commonjs/storage/definePersistedSetting.d.ts.map +1 -0
- package/lib/typescript/commonjs/storage/devToolsStorageKeys.d.ts +12 -0
- package/lib/typescript/commonjs/storage/devToolsStorageKeys.d.ts.map +1 -1
- package/lib/typescript/commonjs/storage/index.d.ts +1 -0
- package/lib/typescript/commonjs/storage/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/stores/ChangeLog.d.ts +100 -0
- package/lib/typescript/commonjs/stores/ChangeLog.d.ts.map +1 -0
- package/lib/typescript/commonjs/stores/createToolStore.d.ts +92 -0
- package/lib/typescript/commonjs/stores/createToolStore.d.ts.map +1 -0
- package/lib/typescript/commonjs/stores/index.d.ts +2 -0
- package/lib/typescript/commonjs/stores/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/sync/toolSyncAdapter.d.ts +66 -0
- package/lib/typescript/commonjs/sync/toolSyncAdapter.d.ts.map +1 -0
- package/lib/typescript/commonjs/sync/wireForm.d.ts +100 -0
- package/lib/typescript/commonjs/sync/wireForm.d.ts.map +1 -0
- package/lib/typescript/commonjs/tools/defineTool.d.ts +100 -0
- package/lib/typescript/commonjs/tools/defineTool.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/ChangeRow.d.ts +52 -0
- package/lib/typescript/commonjs/ui/components/ChangeRow.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/ChipStrip.d.ts +41 -0
- package/lib/typescript/commonjs/ui/components/ChipStrip.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/DetailViewToggle.d.ts +36 -0
- package/lib/typescript/commonjs/ui/components/DetailViewToggle.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/DevToolsCard.d.ts +8 -1
- package/lib/typescript/commonjs/ui/components/DevToolsCard.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/EmptyState.d.ts +14 -1
- package/lib/typescript/commonjs/ui/components/EmptyState.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/EntityFilterView.d.ts +51 -0
- package/lib/typescript/commonjs/ui/components/EntityFilterView.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/ExportPreview.d.ts +48 -0
- package/lib/typescript/commonjs/ui/components/ExportPreview.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/InfoRow.d.ts +33 -0
- package/lib/typescript/commonjs/ui/components/InfoRow.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/ModalHeader.d.ts +31 -1
- package/lib/typescript/commonjs/ui/components/ModalHeader.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/Pill.d.ts +38 -0
- package/lib/typescript/commonjs/ui/components/Pill.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/ToggleRow.d.ts +33 -0
- package/lib/typescript/commonjs/ui/components/ToggleRow.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/ToolEmptyState.d.ts +113 -0
- package/lib/typescript/commonjs/ui/components/ToolEmptyState.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/ToolFooter.d.ts +69 -0
- package/lib/typescript/commonjs/ui/components/ToolFooter.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/WindowControls.d.ts +7 -1
- package/lib/typescript/commonjs/ui/components/WindowControls.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/index.d.ts +11 -0
- package/lib/typescript/commonjs/ui/components/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/index.d.ts +2 -0
- package/lib/typescript/commonjs/ui/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/listPresets.d.ts +28 -0
- package/lib/typescript/commonjs/ui/listPresets.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/night/primitives.d.ts +3 -1
- package/lib/typescript/commonjs/ui/night/primitives.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/otto/OttoSprite.d.ts +103 -0
- package/lib/typescript/commonjs/ui/otto/OttoSprite.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/otto/index.d.ts +19 -0
- package/lib/typescript/commonjs/ui/otto/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/otto/ottoEngine.d.ts +2205 -0
- package/lib/typescript/commonjs/ui/otto/ottoEngine.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/otto/ottoSheet.d.ts +73 -0
- package/lib/typescript/commonjs/ui/otto/ottoSheet.d.ts.map +1 -0
- package/lib/typescript/commonjs/utils/snapshotProviderKit.d.ts +81 -0
- package/lib/typescript/commonjs/utils/snapshotProviderKit.d.ts.map +1 -0
- package/lib/typescript/commonjs/utils/stateTools.d.ts +44 -0
- package/lib/typescript/commonjs/utils/stateTools.d.ts.map +1 -0
- package/lib/typescript/module/JsModal.d.ts.map +1 -1
- package/lib/typescript/module/hooks/index.d.ts +3 -1
- package/lib/typescript/module/hooks/index.d.ts.map +1 -1
- package/lib/typescript/module/hooks/safe-area-impl.d.ts +1 -1
- package/lib/typescript/module/hooks/useChangeLog.d.ts +38 -0
- package/lib/typescript/module/hooks/useChangeLog.d.ts.map +1 -0
- package/lib/typescript/module/hooks/useEventStoreEvents.d.ts +25 -0
- package/lib/typescript/module/hooks/useEventStoreEvents.d.ts.map +1 -0
- package/lib/typescript/module/hooks/usePersistedState.d.ts +34 -5
- package/lib/typescript/module/hooks/usePersistedState.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +6 -1
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/storage/definePersistedSetting.d.ts +39 -0
- package/lib/typescript/module/storage/definePersistedSetting.d.ts.map +1 -0
- package/lib/typescript/module/storage/devToolsStorageKeys.d.ts +12 -0
- package/lib/typescript/module/storage/devToolsStorageKeys.d.ts.map +1 -1
- package/lib/typescript/module/storage/index.d.ts +1 -0
- package/lib/typescript/module/storage/index.d.ts.map +1 -1
- package/lib/typescript/module/stores/ChangeLog.d.ts +100 -0
- package/lib/typescript/module/stores/ChangeLog.d.ts.map +1 -0
- package/lib/typescript/module/stores/createToolStore.d.ts +92 -0
- package/lib/typescript/module/stores/createToolStore.d.ts.map +1 -0
- package/lib/typescript/module/stores/index.d.ts +2 -0
- package/lib/typescript/module/stores/index.d.ts.map +1 -1
- package/lib/typescript/module/sync/toolSyncAdapter.d.ts +66 -0
- package/lib/typescript/module/sync/toolSyncAdapter.d.ts.map +1 -0
- package/lib/typescript/module/sync/wireForm.d.ts +100 -0
- package/lib/typescript/module/sync/wireForm.d.ts.map +1 -0
- package/lib/typescript/module/tools/defineTool.d.ts +100 -0
- package/lib/typescript/module/tools/defineTool.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/ChangeRow.d.ts +52 -0
- package/lib/typescript/module/ui/components/ChangeRow.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/ChipStrip.d.ts +41 -0
- package/lib/typescript/module/ui/components/ChipStrip.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/DetailViewToggle.d.ts +36 -0
- package/lib/typescript/module/ui/components/DetailViewToggle.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/DevToolsCard.d.ts +8 -1
- package/lib/typescript/module/ui/components/DevToolsCard.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/EmptyState.d.ts +14 -1
- package/lib/typescript/module/ui/components/EmptyState.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/EntityFilterView.d.ts +51 -0
- package/lib/typescript/module/ui/components/EntityFilterView.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/ExportPreview.d.ts +48 -0
- package/lib/typescript/module/ui/components/ExportPreview.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/InfoRow.d.ts +33 -0
- package/lib/typescript/module/ui/components/InfoRow.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/ModalHeader.d.ts +31 -1
- package/lib/typescript/module/ui/components/ModalHeader.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/Pill.d.ts +38 -0
- package/lib/typescript/module/ui/components/Pill.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/ToggleRow.d.ts +33 -0
- package/lib/typescript/module/ui/components/ToggleRow.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/ToolEmptyState.d.ts +113 -0
- package/lib/typescript/module/ui/components/ToolEmptyState.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/ToolFooter.d.ts +69 -0
- package/lib/typescript/module/ui/components/ToolFooter.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/WindowControls.d.ts +7 -1
- package/lib/typescript/module/ui/components/WindowControls.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/index.d.ts +11 -0
- package/lib/typescript/module/ui/components/index.d.ts.map +1 -1
- package/lib/typescript/module/ui/index.d.ts +2 -0
- package/lib/typescript/module/ui/index.d.ts.map +1 -1
- package/lib/typescript/module/ui/listPresets.d.ts +28 -0
- package/lib/typescript/module/ui/listPresets.d.ts.map +1 -0
- package/lib/typescript/module/ui/night/primitives.d.ts +3 -1
- package/lib/typescript/module/ui/night/primitives.d.ts.map +1 -1
- package/lib/typescript/module/ui/otto/OttoSprite.d.ts +103 -0
- package/lib/typescript/module/ui/otto/OttoSprite.d.ts.map +1 -0
- package/lib/typescript/module/ui/otto/index.d.ts +19 -0
- package/lib/typescript/module/ui/otto/index.d.ts.map +1 -0
- package/lib/typescript/module/ui/otto/ottoEngine.d.ts +2205 -0
- package/lib/typescript/module/ui/otto/ottoEngine.d.ts.map +1 -0
- package/lib/typescript/module/ui/otto/ottoSheet.d.ts +73 -0
- package/lib/typescript/module/ui/otto/ottoSheet.d.ts.map +1 -0
- package/lib/typescript/module/utils/snapshotProviderKit.d.ts +81 -0
- package/lib/typescript/module/utils/snapshotProviderKit.d.ts.map +1 -0
- package/lib/typescript/module/utils/stateTools.d.ts +44 -0
- package/lib/typescript/module/utils/stateTools.d.ts.map +1 -0
- package/package.json +4 -4
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ToolFooter — the night glass bar pinned to the bottom of a tool: dark
|
|
3
|
+
* backing over the star field, a hairline on top, safe-area padding when
|
|
4
|
+
* docked as a sheet, rounded corners when floating.
|
|
5
|
+
*
|
|
6
|
+
* `EventStepperFooter` draws this bar for the Previous/Next case; the
|
|
7
|
+
* images and react-query tools each re-drew it for their action bars with
|
|
8
|
+
* a comment saying "matches EventStepperFooter". This is that bar as a
|
|
9
|
+
* container, plus `FooterButton` — the mono uppercase plate button those
|
|
10
|
+
* action bars are made of — and the caption/message lines above the row.
|
|
11
|
+
*/
|
|
12
|
+
import type { ReactNode } from "react";
|
|
13
|
+
import { type StyleProp, type TextStyle, type ViewStyle } from "react-native";
|
|
14
|
+
export interface ToolFooterProps {
|
|
15
|
+
children: ReactNode;
|
|
16
|
+
/**
|
|
17
|
+
* Reserve the home-indicator inset. `true` (default) adds the inset on
|
|
18
|
+
* top of the base padding; a number overrides the base padding; `false`
|
|
19
|
+
* for a floating window, where the bar isn't on the screen edge.
|
|
20
|
+
*/
|
|
21
|
+
safeArea?: boolean | number;
|
|
22
|
+
/** Base bottom padding before the inset. Default 12. */
|
|
23
|
+
paddingBottom?: number;
|
|
24
|
+
/** Round the bottom corners (a floating window). Default false. */
|
|
25
|
+
floating?: boolean;
|
|
26
|
+
/** Absolute-position the bar over a scrolling body. */
|
|
27
|
+
absolute?: boolean;
|
|
28
|
+
/** Gap between stacked rows. Default 8. */
|
|
29
|
+
gap?: number;
|
|
30
|
+
style?: StyleProp<ViewStyle>;
|
|
31
|
+
testID?: string;
|
|
32
|
+
}
|
|
33
|
+
export declare function ToolFooter({ children, safeArea, paddingBottom, floating, absolute, gap, style, testID, }: ToolFooterProps): import("react").JSX.Element;
|
|
34
|
+
/** A row of footer buttons. */
|
|
35
|
+
export declare function FooterRow({ children, style }: {
|
|
36
|
+
children: ReactNode;
|
|
37
|
+
style?: StyleProp<ViewStyle>;
|
|
38
|
+
}): import("react").JSX.Element;
|
|
39
|
+
/** Tracking caption above a row ("MASS ACTIONS — every image on screen"). */
|
|
40
|
+
export declare function FooterCaption({ children, style }: {
|
|
41
|
+
children: ReactNode;
|
|
42
|
+
style?: StyleProp<TextStyle>;
|
|
43
|
+
}): import("react").JSX.Element;
|
|
44
|
+
/** Mono feedback line ("Restored 3 images"). */
|
|
45
|
+
export declare function FooterMessage({ children, tone, style, }: {
|
|
46
|
+
children: ReactNode;
|
|
47
|
+
tone?: "info" | "muted";
|
|
48
|
+
style?: StyleProp<TextStyle>;
|
|
49
|
+
}): import("react").JSX.Element;
|
|
50
|
+
export interface FooterButtonProps {
|
|
51
|
+
label: string;
|
|
52
|
+
onPress: () => void;
|
|
53
|
+
/** Warning-colored label — the "undo" style action (Restore). */
|
|
54
|
+
accent?: boolean;
|
|
55
|
+
/** Selected state — accent fill + accent label (a mode toggle). */
|
|
56
|
+
active?: boolean;
|
|
57
|
+
disabled?: boolean;
|
|
58
|
+
/** Leading icon. */
|
|
59
|
+
icon?: ReactNode;
|
|
60
|
+
/** Fill the row evenly (default true). `false` sizes to content. */
|
|
61
|
+
flex?: boolean;
|
|
62
|
+
/** `sm` = 10 px (default); `md` = 11 px primary-ink label. */
|
|
63
|
+
size?: "sm" | "md";
|
|
64
|
+
testID?: string;
|
|
65
|
+
accessibilityLabel?: string;
|
|
66
|
+
style?: StyleProp<ViewStyle>;
|
|
67
|
+
}
|
|
68
|
+
export declare function FooterButton({ label, onPress, accent, active, disabled, icon, flex, size, testID, accessibilityLabel, style, }: FooterButtonProps): import("react").JSX.Element;
|
|
69
|
+
//# sourceMappingURL=ToolFooter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ToolFooter.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/ToolFooter.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAKL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC5B,wDAAwD;IACxD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uDAAuD;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2CAA2C;IAC3C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,QAAe,EACf,aAAkB,EAClB,QAAgB,EAChB,QAAgB,EAChB,GAAO,EACP,KAAK,EACL,MAAM,GACP,EAAE,eAAe,+BAsBjB;AAED,+BAA+B;AAC/B,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;CAAE,+BAEnG;AAED,6EAA6E;AAC7E,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;CAAE,+BAMvG;AAED,gDAAgD;AAChD,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,IAAa,EACb,KAAK,GACN,EAAE;IACD,QAAQ,EAAE,SAAS,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,+BAMA;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,iEAAiE;IACjE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mEAAmE;IACnE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oBAAoB;IACpB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,oEAAoE;IACpE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,8DAA8D;IAC9D,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,OAAO,EACP,MAAc,EACd,MAAc,EACd,QAAgB,EAChB,IAAI,EACJ,IAAW,EACX,IAAW,EACX,MAAM,EACN,kBAAkB,EAClB,KAAK,GACN,EAAE,iBAAiB,+BAiCnB"}
|
|
@@ -15,12 +15,18 @@ interface WindowControlsProps {
|
|
|
15
15
|
mode?: ModalMode;
|
|
16
16
|
/** Host modal's chrome variant — "night" restyles the expanded popover. */
|
|
17
17
|
variant?: ModalVariant;
|
|
18
|
+
/**
|
|
19
|
+
* Start with the big-button popover open and never auto-dismiss it.
|
|
20
|
+
* For galleries / parity sheets that need the expanded state to sit still
|
|
21
|
+
* for a screenshot; a real modal never sets this.
|
|
22
|
+
*/
|
|
23
|
+
defaultExpanded?: boolean;
|
|
18
24
|
}
|
|
19
25
|
/**
|
|
20
26
|
* iPad-style expandable window controls.
|
|
21
27
|
* Default: small macOS-style colored dots. On tap, expands to reveal
|
|
22
28
|
* large, easy-to-press buttons. Auto-dismisses after timeout or tap outside.
|
|
23
29
|
*/
|
|
24
|
-
export declare function WindowControls({ onClose, onMinimize, onToggleMode, mode, variant, }: WindowControlsProps): import("react").JSX.Element;
|
|
30
|
+
export declare function WindowControls({ onClose, onMinimize, onToggleMode, mode, variant, defaultExpanded, }: WindowControlsProps): import("react").JSX.Element;
|
|
25
31
|
export {};
|
|
26
32
|
//# sourceMappingURL=WindowControls.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WindowControls.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/WindowControls.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAe7D;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,OAAO,QAE3D;AAMD,UAAU,mBAAmB;IAC3B,+BAA+B;IAC/B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,sFAAsF;IACtF,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,2EAA2E;IAC3E,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,2EAA2E;IAC3E,OAAO,CAAC,EAAE,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"WindowControls.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/WindowControls.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAe7D;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,OAAO,QAE3D;AAMD,UAAU,mBAAmB;IAC3B,+BAA+B;IAC/B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,sFAAsF;IACtF,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,2EAA2E;IAC3E,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,2EAA2E;IAC3E,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AA+BD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,UAAU,EACV,YAAY,EACZ,IAAI,EACJ,OAAiB,EACjB,eAAe,GAChB,EAAE,mBAAmB,+BAwDrB"}
|
|
@@ -24,6 +24,8 @@ export { DevToolsCard, DEVTOOLS_CARD_CONSTANTS } from "./DevToolsCard";
|
|
|
24
24
|
export type { DevToolsCardProps } from "./DevToolsCard";
|
|
25
25
|
export { HeaderSearchButton } from "./HeaderSearchButton";
|
|
26
26
|
export { EmptyState, NoDataEmptyState, NoResultsEmptyState, NoSearchResultsEmptyState, } from "./EmptyState";
|
|
27
|
+
export { ToolEmptyState, resolveListEmptyState } from "./ToolEmptyState";
|
|
28
|
+
export type { ToolEmptyContent, ToolEmptyStateProps, ListEmptyFacts, } from "./ToolEmptyState";
|
|
27
29
|
export { StatusIndicator } from "./StatusIndicator";
|
|
28
30
|
export { TimeDisplay } from "./TimeDisplay";
|
|
29
31
|
export { DetailView } from "./DetailView";
|
|
@@ -44,4 +46,13 @@ export type { PowerToggleButtonProps } from "./PowerToggleButton";
|
|
|
44
46
|
export { ExpandedInfoRow, PillBadge } from "./ExpandedInfoRow";
|
|
45
47
|
export { EventHistoryViewer, ViewToggleCards, DiffModeTabs, CompareBar, EventPickerModal, } from "./EventHistoryViewer";
|
|
46
48
|
export type { ViewMode, DiffModeTab, EventDisplayInfo, IconComponent, ViewToggleCardsProps, CompareBarProps, DiffModeTabsProps, EventPickerItem, EventPickerModalProps, EventHistoryViewerProps, } from "./EventHistoryViewer";
|
|
49
|
+
export { InfoRow, type InfoRowProps } from "./InfoRow";
|
|
50
|
+
export { DetailViewToggle, type DetailViewOption, type DetailViewToggleProps, } from "./DetailViewToggle";
|
|
51
|
+
export { ChangeRow, type ChangeRowProps } from "./ChangeRow";
|
|
52
|
+
export { Pill, type PillProps, type PillVariant, type PillSize } from "./Pill";
|
|
53
|
+
export { ToolFooter, FooterRow, FooterCaption, FooterMessage, FooterButton, type ToolFooterProps, type FooterButtonProps, } from "./ToolFooter";
|
|
54
|
+
export { EntityFilterView, type EntityFilterViewProps, type FilterableEntity, } from "./EntityFilterView";
|
|
55
|
+
export { ToggleRow, type ToggleRowProps } from "./ToggleRow";
|
|
56
|
+
export { ChipStrip, useChipTap, type ChipStripProps, type ChipTap } from "./ChipStrip";
|
|
57
|
+
export { ExportPreview, sizeWarningLevel, type ExportPreviewProps, type ExportPreviewTestIDs, type SizeWarningLevel, } from "./ExportPreview";
|
|
47
58
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EACL,aAAa,EACb,WAAW,EACX,cAAc,EACd,eAAe,EACf,UAAU,GACX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EACL,KAAK,EACL,WAAW,EACX,UAAU,EACV,SAAS,EACT,WAAW,GACZ,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACvE,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,4 +3,6 @@ export * from "./backgrounds";
|
|
|
3
3
|
export { toolTheme, type ToolTheme } from "./toolTheme";
|
|
4
4
|
export { CyberpunkSectionButton } from "./console/CyberpunkSectionButton";
|
|
5
5
|
export * from "./gameUI";
|
|
6
|
+
export * from "./otto";
|
|
7
|
+
export { EVENT_LIST_PRESET, LOG_LIST_PRESET, CLIP_OFFSCREEN_CELLS } from "./listPresets";
|
|
6
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/index.ts"],"names":[],"mappings":"AAGA,cAAc,cAAc,CAAC;AAG7B,cAAc,eAAe,CAAC;AAG9B,OAAO,EAAE,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAG1E,cAAc,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/index.ts"],"names":[],"mappings":"AAGA,cAAc,cAAc,CAAC;AAG7B,cAAc,eAAe,CAAC;AAG9B,OAAO,EAAE,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAG1E,cAAc,UAAU,CAAC;AAGzB,cAAc,QAAQ,CAAC;AAGvB,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FlatList presets for tool lists — the tuned window/batch values and the
|
|
3
|
+
* E2E clipping guard that eleven list sites carried as copy-pasted props.
|
|
4
|
+
*
|
|
5
|
+
* Spread them onto a FlatList: `<FlatList {...EVENT_LIST_PRESET} … />`.
|
|
6
|
+
* A tool that later moves to FlashList changes this file, not eleven.
|
|
7
|
+
*/
|
|
8
|
+
import type { FlatListProps } from "react-native";
|
|
9
|
+
/**
|
|
10
|
+
* `removeClippedSubviews` is off in E2E bundles: clipped rows leave the
|
|
11
|
+
* hierarchy entirely, so a row past the fold reads to the test as "the tool
|
|
12
|
+
* stopped capturing".
|
|
13
|
+
*/
|
|
14
|
+
export declare const CLIP_OFFSCREEN_CELLS: boolean;
|
|
15
|
+
type ListPreset = Pick<FlatListProps<unknown>, "initialNumToRender" | "maxToRenderPerBatch" | "windowSize" | "updateCellsBatchingPeriod" | "removeClippedSubviews">;
|
|
16
|
+
/**
|
|
17
|
+
* Event / change / request lists: rows are tall-ish and arrive in bursts.
|
|
18
|
+
* Window and batch values are the "tuned" winner of the buoy-optimize
|
|
19
|
+
* batch run on the network tool (2026-07-06, batch-1783396983529-6l7w).
|
|
20
|
+
*/
|
|
21
|
+
export declare const EVENT_LIST_PRESET: ListPreset;
|
|
22
|
+
/**
|
|
23
|
+
* Log tails (console, sentry): rows are short single lines, the list is
|
|
24
|
+
* read from the bottom, and a scroll-to-end must not land on blank cells.
|
|
25
|
+
*/
|
|
26
|
+
export declare const LOG_LIST_PRESET: ListPreset;
|
|
27
|
+
export {};
|
|
28
|
+
//# sourceMappingURL=listPresets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"listPresets.d.ts","sourceRoot":"","sources":["../../../../src/ui/listPresets.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,OAElC,CAAC;AAEF,KAAK,UAAU,GAAG,IAAI,CACpB,aAAa,CAAC,OAAO,CAAC,EACpB,oBAAoB,GACpB,qBAAqB,GACrB,YAAY,GACZ,2BAA2B,GAC3B,uBAAuB,CAC1B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,UAM/B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,UAK7B,CAAC"}
|
|
@@ -62,12 +62,14 @@ export declare function NightSwitch({ value, onValueChange, disabled, }: {
|
|
|
62
62
|
* Zone-style pill chip. The fill never changes — selection is signaled by the
|
|
63
63
|
* border and label color only, exactly like the Everlights zone row.
|
|
64
64
|
*/
|
|
65
|
-
export declare function NightChip({ label, selected, onPress, disabled, icon, }: {
|
|
65
|
+
export declare function NightChip({ label, selected, onPress, disabled, icon, testID, }: {
|
|
66
66
|
label: string;
|
|
67
67
|
selected?: boolean;
|
|
68
68
|
onPress?: () => void;
|
|
69
69
|
disabled?: boolean;
|
|
70
70
|
icon?: ReactNode;
|
|
71
|
+
/** Automation handle — a strip of chips needs one per chip to be drivable. */
|
|
72
|
+
testID?: string;
|
|
71
73
|
}): import("react").JSX.Element;
|
|
72
74
|
export type NightButtonVariant = "primary" | "secondary" | "tertiary" | "destructive" | "ghost";
|
|
73
75
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../../../../src/ui/night/primitives.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAA+B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAML,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAGtB,2DAA2D;AAC3D,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,+BAEA;AAED,uEAAuE;AACvE,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,QAAQ,EACR,IAAiB,EACjB,KAAK,GACN,EAAE;IACD,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;IACvD,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,+BAeA;AAED,6EAA6E;AAC7E,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,MAAM,EACN,KAAK,GACN,EAAE;IACD,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,+BAMA;AAED,qEAAqE;AACrE,wBAAgB,cAAc,CAAC,EAAE,KAAqB,EAAE,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,+BAE3E;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,KAAqB,GACtB,EAAE;IACD,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,+BAaA;AASD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,aAAa,EACb,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,OAAO,CAAC;IACf,aAAa,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,+BA2CA;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,IAAI,
|
|
1
|
+
{"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../../../../src/ui/night/primitives.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import type { StyleProp, ViewStyle } from "react-native";
|
|
2
|
+
import { Animated } from "react-native";
|
|
3
|
+
import { type OttoRenderOptions, type OttoState } from "./ottoEngine";
|
|
4
|
+
import { WATER_FRAMES } from "./ottoSheet";
|
|
5
|
+
/**
|
|
6
|
+
* The tick span every layer of a state loops over. It is a common multiple of
|
|
7
|
+
* the body cycle and the anchor cycle, so a prop held in Otto's hand and the
|
|
8
|
+
* hand itself repeat together.
|
|
9
|
+
*/
|
|
10
|
+
export declare function motionUnits(state: OttoState, keyline?: boolean): number;
|
|
11
|
+
export interface OttoPixelsProps {
|
|
12
|
+
/** A 16×16 grid of palette keys, from `renderOttoFrame`. */
|
|
13
|
+
grid: string[][];
|
|
14
|
+
/** Size of one sprite pixel in points. */
|
|
15
|
+
pixelSize: number;
|
|
16
|
+
style?: StyleProp<ViewStyle>;
|
|
17
|
+
}
|
|
18
|
+
/** Pure renderer: a frame → coloured run Views. Fine for stills; costly per tick. */
|
|
19
|
+
export declare function OttoPixels({ grid, pixelSize, style }: OttoPixelsProps): import("react").JSX.Element;
|
|
20
|
+
export interface OttoStillProps extends OttoRenderOptions {
|
|
21
|
+
/** Default `static`: the base pose, for favicons and stills. */
|
|
22
|
+
state?: OttoState;
|
|
23
|
+
pixelSize?: number;
|
|
24
|
+
style?: StyleProp<ViewStyle>;
|
|
25
|
+
}
|
|
26
|
+
/** Frame 0 of a state, no clock — safe on screens that must not re-render. */
|
|
27
|
+
export declare function OttoStill({ state, pixelSize, water, keyline, style }: OttoStillProps): import("react").JSX.Element;
|
|
28
|
+
/**
|
|
29
|
+
* Walks the demo reel: which state plays now. One React state change per
|
|
30
|
+
* schedule entry (every few seconds), nothing per tick.
|
|
31
|
+
*/
|
|
32
|
+
export declare function useOttoReel(enabled: boolean, tickMs?: number, active?: boolean): OttoState;
|
|
33
|
+
export interface StepOffset {
|
|
34
|
+
x: number;
|
|
35
|
+
y: number;
|
|
36
|
+
}
|
|
37
|
+
/** A style that moves a view through offsets in lock-step with Otto's clock. */
|
|
38
|
+
export type StepMotionStyle = Animated.WithAnimatedObject<ViewStyle> | ViewStyle;
|
|
39
|
+
/**
|
|
40
|
+
* The layer the clock moves.
|
|
41
|
+
*
|
|
42
|
+
* On native this has to be an `Animated.View` — it carries interpolated
|
|
43
|
+
* values. On web the motion is a COMPILED CSS class (see `webStepStyle`), and
|
|
44
|
+
* `Animated.View` flattens its style prop into a fresh object, which loses the
|
|
45
|
+
* identity react-native-web looks the compiled rules up by; the keyframes are
|
|
46
|
+
* then silently dropped and the sprite sits on frame 0. So the web path takes
|
|
47
|
+
* a plain View, which passes the class straight through.
|
|
48
|
+
*/
|
|
49
|
+
declare const OttoMotionView: typeof Animated.View;
|
|
50
|
+
export { OttoMotionView };
|
|
51
|
+
export interface OttoAnchorMotion {
|
|
52
|
+
/** Spread onto an `Animated.View` holding the prop. */
|
|
53
|
+
style: StepMotionStyle;
|
|
54
|
+
/** Draw the prop over Otto (true) or behind the arms (false). */
|
|
55
|
+
over: boolean;
|
|
56
|
+
/** The prop's resting cell, for layout before motion applies. */
|
|
57
|
+
origin: StepOffset;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Move a prop in lock-step with Otto's hands. `OTTO_ANCHORS[state]` publishes
|
|
61
|
+
* where the hand is each tick; this turns that into the same kind of clocked
|
|
62
|
+
* style the sprite itself uses, on the same timebase, so the two can't drift.
|
|
63
|
+
*
|
|
64
|
+
* Returns `null` for a state that has no anchor.
|
|
65
|
+
*/
|
|
66
|
+
export declare function useOttoAnchorMotion(state: OttoState, pixelSize: number, tickMs?: number, active?: boolean, keyline?: boolean): OttoAnchorMotion | null;
|
|
67
|
+
export interface OttoProps extends OttoRenderOptions {
|
|
68
|
+
/** A named state, or `reel` to play the demo schedule. */
|
|
69
|
+
state: OttoState | "reel";
|
|
70
|
+
/** Size of one sprite pixel in points. Default 8 (the mockup's default). */
|
|
71
|
+
pixelSize?: number;
|
|
72
|
+
/** Tick period in ms. Default 140 (the mockup's default). */
|
|
73
|
+
tickMs?: number;
|
|
74
|
+
/** false = frozen at frame 0 with the clock off. */
|
|
75
|
+
active?: boolean;
|
|
76
|
+
/**
|
|
77
|
+
* Mount the animated strips in the SAME commit instead of after the
|
|
78
|
+
* interaction settles. Default false — see `Otto` for why.
|
|
79
|
+
*/
|
|
80
|
+
eager?: boolean;
|
|
81
|
+
style?: StyleProp<ViewStyle>;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* The shipping sprite.
|
|
85
|
+
*
|
|
86
|
+
* Mounting is deferred on purpose. The strips are ~500 static Views for a
|
|
87
|
+
* typical state, and creating those is native COMMIT cost: measured at 128 ms
|
|
88
|
+
* for one sprite, against 28 ms for a still. A mascot almost always appears
|
|
89
|
+
* while something else is animating (a panel opening, a list settling), and
|
|
90
|
+
* 128 ms of commit dropped into that is a visible hitch.
|
|
91
|
+
*
|
|
92
|
+
* So the first commit paints `OttoStill` — frame 0, ~36 Views, the exact
|
|
93
|
+
* pixels the animation starts on — and the strips mount once the interaction
|
|
94
|
+
* has settled (an idle callback). Nothing pops, because the still IS frame 0.
|
|
95
|
+
* Pass `eager` when the sprite is the thing the user is waiting for.
|
|
96
|
+
*
|
|
97
|
+
* The two layers are siblings that each gate themselves with `return null`
|
|
98
|
+
* rather than a ternary swap, so this component's child slots never change
|
|
99
|
+
* shape (Fabric view-index safety).
|
|
100
|
+
*/
|
|
101
|
+
export declare function Otto({ state, pixelSize, water, keyline, tickMs, active, eager, style, }: OttoProps): import("react").JSX.Element;
|
|
102
|
+
export { WATER_FRAMES };
|
|
103
|
+
//# sourceMappingURL=OttoSprite.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OttoSprite.d.ts","sourceRoot":"","sources":["../../../../../src/ui/otto/OttoSprite.tsx"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAsC,MAAM,cAAc,CAAC;AAC5E,OAAO,EAML,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,YAAY,EAAiE,MAAM,aAAa,CAAC;AAiB1G;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,UAAO,GAAG,MAAM,CAEpE;AAID,MAAM,WAAW,eAAe;IAC9B,4DAA4D;IAC5D,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;IACjB,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,qFAAqF;AACrF,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,eAAe,+BA8BrE;AAID,MAAM,WAAW,cAAe,SAAQ,iBAAiB;IACvD,gEAAgE;IAChE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,8EAA8E;AAC9E,wBAAgB,SAAS,CAAC,EAAE,KAAgB,EAAE,SAAa,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,cAAc,+BAGnG;AAID;;;GAGG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAM,EAAE,MAAM,UAAO,GAAG,SAAS,CASpF;AAID,MAAM,WAAW,UAAU;IACzB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,gFAAgF;AAChF,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC,kBAAkB,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;AAIjF;;;;;;;;;GASG;AACH,QAAA,MAAM,cAAc,EAAsC,OAAO,QAAQ,CAAC,IAAI,CAAC;AAE/E,OAAO,EAAE,cAAc,EAAE,CAAC;AAwH1B,MAAM,WAAW,gBAAgB;IAC/B,uDAAuD;IACvD,KAAK,EAAE,eAAe,CAAC;IACvB,iEAAiE;IACjE,IAAI,EAAE,OAAO,CAAC;IACd,iEAAiE;IACjE,MAAM,EAAE,UAAU,CAAC;CACpB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,MAAM,EACjB,MAAM,SAAM,EACZ,MAAM,UAAO,EACb,OAAO,UAAO,GACb,gBAAgB,GAAG,IAAI,CAgBzB;AAID,MAAM,WAAW,SAAU,SAAQ,iBAAiB;IAClD,0DAA0D;IAC1D,KAAK,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,IAAI,CAAC,EACnB,KAAK,EACL,SAAa,EACb,KAAY,EACZ,OAAc,EACd,MAAY,EACZ,MAAa,EACb,KAAa,EACb,KAAK,GACN,EAAE,SAAS,+BAyCX;AAoID,OAAO,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Otto — the Buoy mascot, as a shared UI primitive.
|
|
3
|
+
*
|
|
4
|
+
* One 16×16 pixel character with a state per product moment. `OTTO_USES` says
|
|
5
|
+
* what each state is for; place him only where the alternative is nothing
|
|
6
|
+
* (empty bodies, waiting states) and only in states that are actually true.
|
|
7
|
+
* See OTTO_PLACEMENT_PLAN.md.
|
|
8
|
+
*
|
|
9
|
+
* The renderer is core-RN only (no Reanimated, no expo-image), so it runs in
|
|
10
|
+
* Expo, in a bare RN CLI host, and on react-native-web. See OTTO_PERF_PLAN.md
|
|
11
|
+
* for the measurements behind that.
|
|
12
|
+
*
|
|
13
|
+
* This is the ONE copy. The example app's review page and the website's lab
|
|
14
|
+
* re-export from here rather than keeping forks.
|
|
15
|
+
*/
|
|
16
|
+
export * from "./ottoEngine";
|
|
17
|
+
export * from "./ottoSheet";
|
|
18
|
+
export * from "./OttoSprite";
|
|
19
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ui/otto/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC"}
|