@buoy-gg/shared-ui 7.0.76 → 7.0.78
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 +1 -1
- package/lib/commonjs/dataViewer/SplitDiffViewer.js +1 -1
- package/lib/commonjs/dataViewer/ThemedSplitView.js +1 -1
- package/lib/commonjs/dataViewer/VirtualizedDataExplorer.js +1 -1
- package/lib/commonjs/history/components/HistoryList.js +1 -1
- package/lib/commonjs/index.js +1 -1
- package/lib/commonjs/license/FreeAccountPrompt.js +1 -1
- package/lib/commonjs/license/licenseModule.js +1 -1
- package/lib/commonjs/settings/components/BubbleSettingsSection.js +1 -1
- package/lib/commonjs/storage/devToolsStorageKeys.js +1 -1
- package/lib/commonjs/ui/components/ChipStrip.js +1 -1
- package/lib/commonjs/ui/components/DataInspector.js +1 -1
- package/lib/commonjs/ui/components/DetailView.js +1 -1
- package/lib/commonjs/ui/components/DynamicFilterView.js +1 -1
- package/lib/commonjs/ui/components/EntityFilterView.js +1 -1
- package/lib/commonjs/ui/components/EventHistoryViewer/EventHistoryViewer.js +1 -1
- package/lib/commonjs/ui/components/EventHistoryViewer/EventPickerModal.js +1 -1
- package/lib/commonjs/utils/appIdentity.js +1 -0
- package/lib/commonjs/utils/reloadPlatform.js +1 -1
- package/lib/module/JsModal.js +1 -1
- package/lib/module/dataViewer/SplitDiffViewer.js +1 -1
- package/lib/module/dataViewer/ThemedSplitView.js +1 -1
- package/lib/module/dataViewer/VirtualizedDataExplorer.js +1 -1
- package/lib/module/history/components/HistoryList.js +1 -1
- package/lib/module/index.js +1 -1
- package/lib/module/license/FreeAccountPrompt.js +1 -1
- package/lib/module/license/licenseModule.js +1 -1
- package/lib/module/settings/components/BubbleSettingsSection.js +1 -1
- package/lib/module/storage/devToolsStorageKeys.js +1 -1
- package/lib/module/ui/components/ChipStrip.js +1 -1
- package/lib/module/ui/components/DataInspector.js +1 -1
- package/lib/module/ui/components/DetailView.js +1 -1
- package/lib/module/ui/components/DynamicFilterView.js +1 -1
- package/lib/module/ui/components/EntityFilterView.js +1 -1
- package/lib/module/ui/components/EventHistoryViewer/EventHistoryViewer.js +1 -1
- package/lib/module/ui/components/EventHistoryViewer/EventPickerModal.js +1 -1
- package/lib/module/utils/appIdentity.js +1 -0
- package/lib/module/utils/reloadPlatform.js +1 -1
- package/lib/typescript/commonjs/JsModal.d.ts +7 -0
- package/lib/typescript/commonjs/hooks/safe-area-impl.d.ts +1 -1
- package/lib/typescript/commonjs/index.d.ts +2 -1
- package/lib/typescript/commonjs/license/licenseModule.d.ts +7 -0
- package/lib/typescript/commonjs/storage/devToolsStorageKeys.d.ts +2 -0
- package/lib/typescript/commonjs/utils/appIdentity.d.ts +3 -0
- package/lib/typescript/module/JsModal.d.ts +7 -0
- package/lib/typescript/module/hooks/safe-area-impl.d.ts +1 -1
- package/lib/typescript/module/index.d.ts +2 -1
- package/lib/typescript/module/license/licenseModule.d.ts +7 -0
- package/lib/typescript/module/storage/devToolsStorageKeys.d.ts +2 -0
- package/lib/typescript/module/utils/appIdentity.d.ts +3 -0
- package/lib/web/chunks/{chunk-UQRRKDKX.mjs → chunk-BMITMQVB.mjs} +3 -3
- package/lib/web/chunks/chunk-EY7GXWGI.mjs +1 -0
- package/lib/web/chunks/chunk-GTRVOJUH.mjs +1 -1
- package/lib/web/chunks/chunk-HE5ONCAL.mjs +6 -0
- package/lib/web/chunks/{chunk-ZRZQZF2T.mjs → chunk-OF3VWR6K.mjs} +1 -1
- package/lib/web/chunks/chunk-OQB3GW44.mjs +1 -0
- package/lib/web/chunks/{persistentStorage.web-24PEE4I7.mjs → persistentStorage.web-7JL3GE3F.mjs} +1 -1
- package/lib/web/dataViewer.mjs +2 -2
- package/lib/web/history.mjs +1 -1
- package/lib/web/hooks.mjs +1 -1
- package/lib/web/index.mjs +4 -4
- package/lib/web/ui.mjs +1 -1
- package/lib/web/utils.mjs +1 -1
- package/package.json +5 -5
- package/lib/commonjs/JsModal.d.js +0 -1
- package/lib/commonjs/bugCase/capture.d.js +0 -1
- package/lib/commonjs/bugCase/format.d.js +0 -1
- package/lib/commonjs/bugCase/index.d.js +0 -1
- package/lib/commonjs/bugCase/lock.d.js +0 -1
- package/lib/commonjs/bugCase/recorder.d.js +0 -1
- package/lib/commonjs/bugCase/scrub.d.js +0 -1
- package/lib/commonjs/bugCase/steps.d.js +0 -1
- package/lib/commonjs/bugCase/types.d.js +0 -1
- package/lib/commonjs/clipboard/autoDetectClipboard.d.js +0 -1
- package/lib/commonjs/clipboard/clipboard-impl.d.js +0 -1
- package/lib/commonjs/clipboard/copyToClipboard.d.js +0 -1
- package/lib/commonjs/clipboard/index.d.js +0 -1
- package/lib/commonjs/context/HintsContext.d.js +0 -1
- package/lib/commonjs/context/index.d.js +0 -1
- package/lib/commonjs/dataViewer/objectDiff.d.js +0 -1
- package/lib/commonjs/env/EnvironmentIndicator.d.js +0 -1
- package/lib/commonjs/env/EnvironmentSelector.d.js +0 -1
- package/lib/commonjs/env/EnvironmentSelectorInline.d.js +0 -1
- package/lib/commonjs/history/HistoryProvider.d.js +0 -1
- package/lib/commonjs/history/components/HistoryEntryRow.d.js +0 -1
- package/lib/commonjs/history/components/HistoryList.d.js +0 -1
- package/lib/commonjs/history/components/index.d.js +0 -1
- package/lib/commonjs/history/index.d.js +0 -1
- package/lib/commonjs/history/types.d.js +0 -1
- package/lib/commonjs/hooks/index.d.js +0 -1
- package/lib/commonjs/hooks/safe-area-impl.d.js +0 -1
- package/lib/commonjs/hooks/useChangeLog.d.js +0 -1
- package/lib/commonjs/hooks/useDeviceInfo.d.js +0 -1
- package/lib/commonjs/hooks/useEventStoreEvents.d.js +0 -1
- package/lib/commonjs/hooks/useFilterManager.d.js +0 -1
- package/lib/commonjs/hooks/usePersistedState.d.js +0 -1
- package/lib/commonjs/hooks/useSafeAreaInsets.d.js +0 -1
- package/lib/commonjs/icons/BenchmarkIcon.d.js +0 -1
- package/lib/commonjs/icons/EnvLaptopIcon.d.js +0 -1
- package/lib/commonjs/icons/IconBackground.d.js +0 -1
- package/lib/commonjs/icons/ReactQueryIcon.d.js +0 -1
- package/lib/commonjs/icons/RenderCountIcon.d.js +0 -1
- package/lib/commonjs/icons/RouteMapIcon.d.js +0 -1
- package/lib/commonjs/icons/SentryBugIcon.d.js +0 -1
- package/lib/commonjs/icons/StackPulseIcon.d.js +0 -1
- package/lib/commonjs/icons/StorageStackIcon.d.js +0 -1
- package/lib/commonjs/icons/WifiCircuitIcon.d.js +0 -1
- package/lib/commonjs/icons/index.d.js +0 -1
- package/lib/commonjs/icons/lucide-icons-original-full.d.js +0 -1
- package/lib/commonjs/icons/lucide-icons.d.js +0 -1
- package/lib/commonjs/icons/primitives/GlobeIcon.d.js +0 -1
- package/lib/commonjs/icons/primitives/icon-primitives.d.js +0 -1
- package/lib/commonjs/icons/primitives/index.d.js +0 -1
- package/lib/commonjs/index.d.js +0 -1
- package/lib/commonjs/license/AccountSetup.d.js +0 -1
- package/lib/commonjs/license/AccountSetupContent.d.js +0 -1
- package/lib/commonjs/license/BuoyUpgradeSheet.d.js +0 -1
- package/lib/commonjs/license/FeatureGate.d.js +0 -1
- package/lib/commonjs/license/FreeAccountPrompt.d.js +0 -1
- package/lib/commonjs/license/accountRuntime.d.js +0 -1
- package/lib/commonjs/license/index.d.js +0 -1
- package/lib/commonjs/license/licenseModule.d.js +0 -1
- package/lib/commonjs/license/openPricing.d.js +0 -1
- package/lib/commonjs/license/tierLimits.d.js +0 -1
- package/lib/commonjs/logger/index-sentry.d.js +0 -1
- package/lib/commonjs/logger/index.d.js +0 -1
- package/lib/commonjs/logger/logDump.d.js +0 -1
- package/lib/commonjs/logger/types.d.js +0 -1
- package/lib/commonjs/settings/components/BubbleSettingsSection.d.js +0 -1
- package/lib/commonjs/settings/index.d.js +0 -1
- package/lib/commonjs/storage/buoyOwnership.d.js +0 -1
- package/lib/commonjs/storage/capacitorAppStorage.d.js +0 -1
- package/lib/commonjs/storage/definePersistedSetting.d.js +0 -1
- package/lib/commonjs/storage/devToolsStorageKeys.d.js +0 -1
- package/lib/commonjs/storage/index.d.js +0 -1
- package/lib/commonjs/stores/BaseEventStore.d.js +0 -1
- package/lib/commonjs/stores/ChangeLog.d.js +0 -1
- package/lib/commonjs/stores/createToolStore.d.js +0 -1
- package/lib/commonjs/stores/floatingToolStore.d.js +0 -1
- package/lib/commonjs/stores/ignoredPatternsCore.d.js +0 -1
- package/lib/commonjs/stores/ignoredPatternsStore.d.js +0 -1
- package/lib/commonjs/stores/ignoredPatternsStore.shared.d.js +0 -1
- package/lib/commonjs/stores/index.d.js +0 -1
- package/lib/commonjs/stores/teamSettingsStore.d.js +0 -1
- package/lib/commonjs/sync/keyedArrays.d.js +0 -1
- package/lib/commonjs/sync/settingsSync.d.js +0 -1
- package/lib/commonjs/sync/toolActionRegistry.d.js +0 -1
- package/lib/commonjs/sync/toolScreenHeader.d.js +0 -1
- package/lib/commonjs/sync/toolSyncAdapter.d.js +0 -1
- package/lib/commonjs/sync/toolUiBridge.d.js +0 -1
- package/lib/commonjs/sync/typedEdit.d.js +0 -1
- package/lib/commonjs/sync/valuePath.d.js +0 -1
- package/lib/commonjs/sync/valueShape.d.js +0 -1
- package/lib/commonjs/sync/wireBudget.d.js +0 -1
- package/lib/commonjs/sync/wireForm.d.js +0 -1
- package/lib/commonjs/tools/defineTool.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/BackgroundSwitcher.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/ToolBackground.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/backgroundStore.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/index.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/primitives.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/registry.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/rng.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/skyClock.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/types.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/variants/daylight.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/variants/deepField.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/variants/hyperspace.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/variants/liveSky.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/variants/meteors.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/variants/moonlight.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/variants/underwater.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/variants/wormhole/motion.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/variants/wormhole/textures.d.js +0 -1
- package/lib/commonjs/ui/backgrounds/variants/wormhole.d.js +0 -1
- package/lib/commonjs/ui/components/BackButton.d.js +0 -1
- package/lib/commonjs/ui/components/Badge.d.js +0 -1
- package/lib/commonjs/ui/components/ChangeRow.d.js +0 -1
- package/lib/commonjs/ui/components/ChipStrip.d.js +0 -1
- package/lib/commonjs/ui/components/ClipboardHintBanner.d.js +0 -1
- package/lib/commonjs/ui/components/CollapsibleSection.d.js +0 -1
- package/lib/commonjs/ui/components/CompactFilterChips.d.js +0 -1
- package/lib/commonjs/ui/components/CompactRow.d.js +0 -1
- package/lib/commonjs/ui/components/CopyButton.d.js +0 -1
- package/lib/commonjs/ui/components/DataInspector.d.js +0 -1
- package/lib/commonjs/ui/components/DetailView.d.js +0 -1
- package/lib/commonjs/ui/components/DetailViewToggle.d.js +0 -1
- package/lib/commonjs/ui/components/DevToolsCard.d.js +0 -1
- package/lib/commonjs/ui/components/DraggableHeader.d.js +0 -1
- package/lib/commonjs/ui/components/DynamicFilterView.d.js +0 -1
- package/lib/commonjs/ui/components/EmptyState.d.js +0 -1
- package/lib/commonjs/ui/components/EntityFilterView.d.js +0 -1
- package/lib/commonjs/ui/components/EventHistoryViewer/CompareBar.d.js +0 -1
- package/lib/commonjs/ui/components/EventHistoryViewer/DiffModeTabs.d.js +0 -1
- package/lib/commonjs/ui/components/EventHistoryViewer/EventHistoryViewer.d.js +0 -1
- package/lib/commonjs/ui/components/EventHistoryViewer/EventPickerModal.d.js +0 -1
- package/lib/commonjs/ui/components/EventHistoryViewer/ViewToggleCards.d.js +0 -1
- package/lib/commonjs/ui/components/EventHistoryViewer/index.d.js +0 -1
- package/lib/commonjs/ui/components/EventHistoryViewer/types.d.js +0 -1
- package/lib/commonjs/ui/components/EventListItem.d.js +0 -1
- package/lib/commonjs/ui/components/EventStepperFooter.d.js +0 -1
- package/lib/commonjs/ui/components/ExpandablePopover.d.js +0 -1
- package/lib/commonjs/ui/components/ExpandedInfoRow.d.js +0 -1
- package/lib/commonjs/ui/components/ExportPreview.d.js +0 -1
- package/lib/commonjs/ui/components/FilterComponents.d.js +0 -1
- package/lib/commonjs/ui/components/GripVerticalIcon.d.js +0 -1
- package/lib/commonjs/ui/components/HeaderSearchButton.d.js +0 -1
- package/lib/commonjs/ui/components/InfoRow.d.js +0 -1
- package/lib/commonjs/ui/components/ListItem.d.js +0 -1
- package/lib/commonjs/ui/components/ModalHeader.d.js +0 -1
- package/lib/commonjs/ui/components/ModalHintBanner.d.js +0 -1
- package/lib/commonjs/ui/components/Pill.d.js +0 -1
- package/lib/commonjs/ui/components/PowerToggleButton.d.js +0 -1
- package/lib/commonjs/ui/components/SearchBar.d.js +0 -1
- package/lib/commonjs/ui/components/SectionHeader.d.js +0 -1
- package/lib/commonjs/ui/components/StatsCard.d.js +0 -1
- package/lib/commonjs/ui/components/StatusIndicator.d.js +0 -1
- package/lib/commonjs/ui/components/StorageTypeBadge.d.js +0 -1
- package/lib/commonjs/ui/components/TabSelector.d.js +0 -1
- package/lib/commonjs/ui/components/TimeDisplay.d.js +0 -1
- package/lib/commonjs/ui/components/ToggleRow.d.js +0 -1
- package/lib/commonjs/ui/components/ToolButton.d.js +0 -1
- package/lib/commonjs/ui/components/ToolEmptyState.d.js +0 -1
- package/lib/commonjs/ui/components/ToolFooter.d.js +0 -1
- package/lib/commonjs/ui/components/ValueTypeBadge.d.js +0 -1
- package/lib/commonjs/ui/components/WindowControls.d.js +0 -1
- package/lib/commonjs/ui/components/index.d.js +0 -1
- package/lib/commonjs/ui/components/windowControlsSetting.d.js +0 -1
- package/lib/commonjs/ui/components/windowDrag.d.js +0 -1
- package/lib/commonjs/ui/console/CyberpunkButtonOutline.d.js +0 -1
- package/lib/commonjs/ui/console/CyberpunkIconContainer.d.js +0 -1
- package/lib/commonjs/ui/console/CyberpunkSectionButton.d.js +0 -1
- package/lib/commonjs/ui/floating/FloatingTool.d.js +0 -1
- package/lib/commonjs/ui/floating/FloatingToolHost.d.js +0 -1
- package/lib/commonjs/ui/floating/onboardingConstants.d.js +0 -1
- package/lib/commonjs/ui/fonts.d.js +0 -1
- package/lib/commonjs/ui/gameUI/components/GameUICollapsibleSection.d.js +0 -1
- package/lib/commonjs/ui/gameUI/components/GameUICompactStats.d.js +0 -1
- package/lib/commonjs/ui/gameUI/components/GameUIIssuesList.d.js +0 -1
- package/lib/commonjs/ui/gameUI/components/GameUIStatusHeader.d.js +0 -1
- package/lib/commonjs/ui/gameUI/constants/gameUIColors.d.js +0 -1
- package/lib/commonjs/ui/gameUI/constants/macOSDesignSystemColors.d.js +0 -1
- package/lib/commonjs/ui/gameUI/hooks/useGameUIAlertState.d.js +0 -1
- package/lib/commonjs/ui/gameUI/index.d.js +0 -1
- package/lib/commonjs/ui/index.d.js +0 -1
- package/lib/commonjs/ui/listPresets.d.js +0 -1
- package/lib/commonjs/ui/night/nightTheme.d.js +0 -1
- package/lib/commonjs/ui/night/primitives.d.js +0 -1
- package/lib/commonjs/ui/otto/OttoSceneView.d.js +0 -1
- package/lib/commonjs/ui/otto/OttoSprite.d.js +0 -1
- package/lib/commonjs/ui/otto/index.d.js +0 -1
- package/lib/commonjs/ui/otto/ottoEngine.d.js +0 -1
- package/lib/commonjs/ui/otto/ottoScenes.d.js +0 -1
- package/lib/commonjs/ui/otto/ottoSheet.d.js +0 -1
- package/lib/commonjs/ui/qr/QrCodeView.d.js +0 -1
- package/lib/commonjs/ui/qr/qrcodegen.d.js +0 -1
- package/lib/commonjs/ui/systemFont.d.js +0 -1
- package/lib/commonjs/ui/toolTheme.d.js +0 -1
- package/lib/commonjs/utils/absoluteFill.d.js +0 -1
- package/lib/commonjs/utils/asyncStorageNative.d.js +0 -1
- package/lib/commonjs/utils/browserAsyncStorage.d.js +0 -1
- package/lib/commonjs/utils/browserNavigation.d.js +0 -1
- package/lib/commonjs/utils/devServer.d.js +0 -1
- package/lib/commonjs/utils/displayValue.d.js +0 -1
- package/lib/commonjs/utils/domRuntime.d.js +0 -1
- package/lib/commonjs/utils/expoRouterModule.d.js +0 -1
- package/lib/commonjs/utils/formatting/dataFormatting.d.js +0 -1
- package/lib/commonjs/utils/formatting/httpFormatting.d.js +0 -1
- package/lib/commonjs/utils/formatting/index.d.js +0 -1
- package/lib/commonjs/utils/getSafeAreaInsets.d.js +0 -1
- package/lib/commonjs/utils/index.d.js +0 -1
- package/lib/commonjs/utils/loadOptionalModule.d.js +0 -1
- package/lib/commonjs/utils/loadToolModule.d.js +0 -1
- package/lib/commonjs/utils/minimalSuperJSON.d.js +0 -1
- package/lib/commonjs/utils/modalStorage.d.js +0 -1
- package/lib/commonjs/utils/persistentStorage.d.js +0 -1
- package/lib/commonjs/utils/realAppState.d.js +0 -1
- package/lib/commonjs/utils/realNow.d.js +0 -1
- package/lib/commonjs/utils/reloadApp.d.js +0 -1
- package/lib/commonjs/utils/reloadPlatform.d.js +0 -1
- package/lib/commonjs/utils/renderCaptureRegistry.d.js +0 -1
- package/lib/commonjs/utils/safeExpoRouter.d.js +0 -1
- package/lib/commonjs/utils/safeStringify.d.js +0 -1
- package/lib/commonjs/utils/snapshotProviderKit.d.js +0 -1
- package/lib/commonjs/utils/stateSnapshotRegistry.d.js +0 -1
- package/lib/commonjs/utils/stateTools.d.js +0 -1
- package/lib/commonjs/utils/storageWrites.d.js +0 -1
- package/lib/commonjs/utils/subscribable.d.js +0 -1
- package/lib/commonjs/utils/subscriberCountNotifier.d.js +0 -1
- package/lib/commonjs/utils/time/RelativeTime.d.js +0 -1
- package/lib/commonjs/utils/time/TickContext.d.js +0 -1
- package/lib/commonjs/utils/time/formatRelativeTime.d.js +0 -1
- package/lib/commonjs/utils/time/index.d.js +0 -1
- package/lib/commonjs/utils/time/useRelativeTime.d.js +0 -1
- package/lib/commonjs/utils/toolModules.d.js +0 -1
- package/lib/commonjs/utils/typeHelpers.d.js +0 -1
- package/lib/commonjs/utils/valueFormatting.d.js +0 -1
- package/lib/module/JsModal.d.js +0 -1
- package/lib/module/bugCase/capture.d.js +0 -1
- package/lib/module/bugCase/format.d.js +0 -1
- package/lib/module/bugCase/index.d.js +0 -1
- package/lib/module/bugCase/lock.d.js +0 -1
- package/lib/module/bugCase/recorder.d.js +0 -1
- package/lib/module/bugCase/scrub.d.js +0 -1
- package/lib/module/bugCase/steps.d.js +0 -1
- package/lib/module/bugCase/types.d.js +0 -1
- package/lib/module/clipboard/autoDetectClipboard.d.js +0 -1
- package/lib/module/clipboard/clipboard-impl.d.js +0 -1
- package/lib/module/clipboard/copyToClipboard.d.js +0 -1
- package/lib/module/clipboard/index.d.js +0 -1
- package/lib/module/context/HintsContext.d.js +0 -1
- package/lib/module/context/index.d.js +0 -1
- package/lib/module/dataViewer/objectDiff.d.js +0 -1
- package/lib/module/env/EnvironmentIndicator.d.js +0 -1
- package/lib/module/env/EnvironmentSelector.d.js +0 -1
- package/lib/module/env/EnvironmentSelectorInline.d.js +0 -1
- package/lib/module/history/HistoryProvider.d.js +0 -1
- package/lib/module/history/components/HistoryEntryRow.d.js +0 -1
- package/lib/module/history/components/HistoryList.d.js +0 -1
- package/lib/module/history/components/index.d.js +0 -1
- package/lib/module/history/index.d.js +0 -1
- package/lib/module/history/types.d.js +0 -1
- package/lib/module/hooks/index.d.js +0 -1
- package/lib/module/hooks/safe-area-impl.d.js +0 -1
- package/lib/module/hooks/useChangeLog.d.js +0 -1
- package/lib/module/hooks/useDeviceInfo.d.js +0 -1
- package/lib/module/hooks/useEventStoreEvents.d.js +0 -1
- package/lib/module/hooks/useFilterManager.d.js +0 -1
- package/lib/module/hooks/usePersistedState.d.js +0 -1
- package/lib/module/hooks/useSafeAreaInsets.d.js +0 -1
- package/lib/module/icons/BenchmarkIcon.d.js +0 -1
- package/lib/module/icons/EnvLaptopIcon.d.js +0 -1
- package/lib/module/icons/IconBackground.d.js +0 -1
- package/lib/module/icons/ReactQueryIcon.d.js +0 -1
- package/lib/module/icons/RenderCountIcon.d.js +0 -1
- package/lib/module/icons/RouteMapIcon.d.js +0 -1
- package/lib/module/icons/SentryBugIcon.d.js +0 -1
- package/lib/module/icons/StackPulseIcon.d.js +0 -1
- package/lib/module/icons/StorageStackIcon.d.js +0 -1
- package/lib/module/icons/WifiCircuitIcon.d.js +0 -1
- package/lib/module/icons/index.d.js +0 -1
- package/lib/module/icons/lucide-icons-original-full.d.js +0 -1
- package/lib/module/icons/lucide-icons.d.js +0 -1
- package/lib/module/icons/primitives/GlobeIcon.d.js +0 -1
- package/lib/module/icons/primitives/icon-primitives.d.js +0 -1
- package/lib/module/icons/primitives/index.d.js +0 -1
- package/lib/module/index.d.js +0 -1
- package/lib/module/license/AccountSetup.d.js +0 -1
- package/lib/module/license/AccountSetupContent.d.js +0 -1
- package/lib/module/license/BuoyUpgradeSheet.d.js +0 -1
- package/lib/module/license/FeatureGate.d.js +0 -1
- package/lib/module/license/FreeAccountPrompt.d.js +0 -1
- package/lib/module/license/accountRuntime.d.js +0 -1
- package/lib/module/license/index.d.js +0 -1
- package/lib/module/license/licenseModule.d.js +0 -1
- package/lib/module/license/openPricing.d.js +0 -1
- package/lib/module/license/tierLimits.d.js +0 -1
- package/lib/module/logger/index-sentry.d.js +0 -1
- package/lib/module/logger/index.d.js +0 -1
- package/lib/module/logger/logDump.d.js +0 -1
- package/lib/module/logger/types.d.js +0 -1
- package/lib/module/settings/components/BubbleSettingsSection.d.js +0 -1
- package/lib/module/settings/index.d.js +0 -1
- package/lib/module/storage/buoyOwnership.d.js +0 -1
- package/lib/module/storage/capacitorAppStorage.d.js +0 -1
- package/lib/module/storage/definePersistedSetting.d.js +0 -1
- package/lib/module/storage/devToolsStorageKeys.d.js +0 -1
- package/lib/module/storage/index.d.js +0 -1
- package/lib/module/stores/BaseEventStore.d.js +0 -1
- package/lib/module/stores/ChangeLog.d.js +0 -1
- package/lib/module/stores/createToolStore.d.js +0 -1
- package/lib/module/stores/floatingToolStore.d.js +0 -1
- package/lib/module/stores/ignoredPatternsCore.d.js +0 -1
- package/lib/module/stores/ignoredPatternsStore.d.js +0 -1
- package/lib/module/stores/ignoredPatternsStore.shared.d.js +0 -1
- package/lib/module/stores/index.d.js +0 -1
- package/lib/module/stores/teamSettingsStore.d.js +0 -1
- package/lib/module/sync/keyedArrays.d.js +0 -1
- package/lib/module/sync/settingsSync.d.js +0 -1
- package/lib/module/sync/toolActionRegistry.d.js +0 -1
- package/lib/module/sync/toolScreenHeader.d.js +0 -1
- package/lib/module/sync/toolSyncAdapter.d.js +0 -1
- package/lib/module/sync/toolUiBridge.d.js +0 -1
- package/lib/module/sync/typedEdit.d.js +0 -1
- package/lib/module/sync/valuePath.d.js +0 -1
- package/lib/module/sync/valueShape.d.js +0 -1
- package/lib/module/sync/wireBudget.d.js +0 -1
- package/lib/module/sync/wireForm.d.js +0 -1
- package/lib/module/tools/defineTool.d.js +0 -1
- package/lib/module/ui/backgrounds/BackgroundSwitcher.d.js +0 -1
- package/lib/module/ui/backgrounds/ToolBackground.d.js +0 -1
- package/lib/module/ui/backgrounds/backgroundStore.d.js +0 -1
- package/lib/module/ui/backgrounds/index.d.js +0 -1
- package/lib/module/ui/backgrounds/primitives.d.js +0 -1
- package/lib/module/ui/backgrounds/registry.d.js +0 -1
- package/lib/module/ui/backgrounds/rng.d.js +0 -1
- package/lib/module/ui/backgrounds/skyClock.d.js +0 -1
- package/lib/module/ui/backgrounds/types.d.js +0 -1
- package/lib/module/ui/backgrounds/variants/daylight.d.js +0 -1
- package/lib/module/ui/backgrounds/variants/deepField.d.js +0 -1
- package/lib/module/ui/backgrounds/variants/hyperspace.d.js +0 -1
- package/lib/module/ui/backgrounds/variants/liveSky.d.js +0 -1
- package/lib/module/ui/backgrounds/variants/meteors.d.js +0 -1
- package/lib/module/ui/backgrounds/variants/moonlight.d.js +0 -1
- package/lib/module/ui/backgrounds/variants/underwater.d.js +0 -1
- package/lib/module/ui/backgrounds/variants/wormhole/motion.d.js +0 -1
- package/lib/module/ui/backgrounds/variants/wormhole/textures.d.js +0 -1
- package/lib/module/ui/backgrounds/variants/wormhole.d.js +0 -1
- package/lib/module/ui/components/BackButton.d.js +0 -1
- package/lib/module/ui/components/Badge.d.js +0 -1
- package/lib/module/ui/components/ChangeRow.d.js +0 -1
- package/lib/module/ui/components/ChipStrip.d.js +0 -1
- package/lib/module/ui/components/ClipboardHintBanner.d.js +0 -1
- package/lib/module/ui/components/CollapsibleSection.d.js +0 -1
- package/lib/module/ui/components/CompactFilterChips.d.js +0 -1
- package/lib/module/ui/components/CompactRow.d.js +0 -1
- package/lib/module/ui/components/CopyButton.d.js +0 -1
- package/lib/module/ui/components/DataInspector.d.js +0 -1
- package/lib/module/ui/components/DetailView.d.js +0 -1
- package/lib/module/ui/components/DetailViewToggle.d.js +0 -1
- package/lib/module/ui/components/DevToolsCard.d.js +0 -1
- package/lib/module/ui/components/DraggableHeader.d.js +0 -1
- package/lib/module/ui/components/DynamicFilterView.d.js +0 -1
- package/lib/module/ui/components/EmptyState.d.js +0 -1
- package/lib/module/ui/components/EntityFilterView.d.js +0 -1
- package/lib/module/ui/components/EventHistoryViewer/CompareBar.d.js +0 -1
- package/lib/module/ui/components/EventHistoryViewer/DiffModeTabs.d.js +0 -1
- package/lib/module/ui/components/EventHistoryViewer/EventHistoryViewer.d.js +0 -1
- package/lib/module/ui/components/EventHistoryViewer/EventPickerModal.d.js +0 -1
- package/lib/module/ui/components/EventHistoryViewer/ViewToggleCards.d.js +0 -1
- package/lib/module/ui/components/EventHistoryViewer/index.d.js +0 -1
- package/lib/module/ui/components/EventHistoryViewer/types.d.js +0 -1
- package/lib/module/ui/components/EventListItem.d.js +0 -1
- package/lib/module/ui/components/EventStepperFooter.d.js +0 -1
- package/lib/module/ui/components/ExpandablePopover.d.js +0 -1
- package/lib/module/ui/components/ExpandedInfoRow.d.js +0 -1
- package/lib/module/ui/components/ExportPreview.d.js +0 -1
- package/lib/module/ui/components/FilterComponents.d.js +0 -1
- package/lib/module/ui/components/GripVerticalIcon.d.js +0 -1
- package/lib/module/ui/components/HeaderSearchButton.d.js +0 -1
- package/lib/module/ui/components/InfoRow.d.js +0 -1
- package/lib/module/ui/components/ListItem.d.js +0 -1
- package/lib/module/ui/components/ModalHeader.d.js +0 -1
- package/lib/module/ui/components/ModalHintBanner.d.js +0 -1
- package/lib/module/ui/components/Pill.d.js +0 -1
- package/lib/module/ui/components/PowerToggleButton.d.js +0 -1
- package/lib/module/ui/components/SearchBar.d.js +0 -1
- package/lib/module/ui/components/SectionHeader.d.js +0 -1
- package/lib/module/ui/components/StatsCard.d.js +0 -1
- package/lib/module/ui/components/StatusIndicator.d.js +0 -1
- package/lib/module/ui/components/StorageTypeBadge.d.js +0 -1
- package/lib/module/ui/components/TabSelector.d.js +0 -1
- package/lib/module/ui/components/TimeDisplay.d.js +0 -1
- package/lib/module/ui/components/ToggleRow.d.js +0 -1
- package/lib/module/ui/components/ToolButton.d.js +0 -1
- package/lib/module/ui/components/ToolEmptyState.d.js +0 -1
- package/lib/module/ui/components/ToolFooter.d.js +0 -1
- package/lib/module/ui/components/ValueTypeBadge.d.js +0 -1
- package/lib/module/ui/components/WindowControls.d.js +0 -1
- package/lib/module/ui/components/index.d.js +0 -1
- package/lib/module/ui/components/windowControlsSetting.d.js +0 -1
- package/lib/module/ui/components/windowDrag.d.js +0 -1
- package/lib/module/ui/console/CyberpunkButtonOutline.d.js +0 -1
- package/lib/module/ui/console/CyberpunkIconContainer.d.js +0 -1
- package/lib/module/ui/console/CyberpunkSectionButton.d.js +0 -1
- package/lib/module/ui/floating/FloatingTool.d.js +0 -1
- package/lib/module/ui/floating/FloatingToolHost.d.js +0 -1
- package/lib/module/ui/floating/onboardingConstants.d.js +0 -1
- package/lib/module/ui/fonts.d.js +0 -1
- package/lib/module/ui/gameUI/components/GameUICollapsibleSection.d.js +0 -1
- package/lib/module/ui/gameUI/components/GameUICompactStats.d.js +0 -1
- package/lib/module/ui/gameUI/components/GameUIIssuesList.d.js +0 -1
- package/lib/module/ui/gameUI/components/GameUIStatusHeader.d.js +0 -1
- package/lib/module/ui/gameUI/constants/gameUIColors.d.js +0 -1
- package/lib/module/ui/gameUI/constants/macOSDesignSystemColors.d.js +0 -1
- package/lib/module/ui/gameUI/hooks/useGameUIAlertState.d.js +0 -1
- package/lib/module/ui/gameUI/index.d.js +0 -1
- package/lib/module/ui/index.d.js +0 -1
- package/lib/module/ui/listPresets.d.js +0 -1
- package/lib/module/ui/night/nightTheme.d.js +0 -1
- package/lib/module/ui/night/primitives.d.js +0 -1
- package/lib/module/ui/otto/OttoSceneView.d.js +0 -1
- package/lib/module/ui/otto/OttoSprite.d.js +0 -1
- package/lib/module/ui/otto/index.d.js +0 -1
- package/lib/module/ui/otto/ottoEngine.d.js +0 -1
- package/lib/module/ui/otto/ottoScenes.d.js +0 -1
- package/lib/module/ui/otto/ottoSheet.d.js +0 -1
- package/lib/module/ui/qr/QrCodeView.d.js +0 -1
- package/lib/module/ui/qr/qrcodegen.d.js +0 -1
- package/lib/module/ui/systemFont.d.js +0 -1
- package/lib/module/ui/toolTheme.d.js +0 -1
- package/lib/module/utils/absoluteFill.d.js +0 -1
- package/lib/module/utils/asyncStorageNative.d.js +0 -1
- package/lib/module/utils/browserAsyncStorage.d.js +0 -1
- package/lib/module/utils/browserNavigation.d.js +0 -1
- package/lib/module/utils/devServer.d.js +0 -1
- package/lib/module/utils/displayValue.d.js +0 -1
- package/lib/module/utils/domRuntime.d.js +0 -1
- package/lib/module/utils/expoRouterModule.d.js +0 -1
- package/lib/module/utils/formatting/dataFormatting.d.js +0 -1
- package/lib/module/utils/formatting/httpFormatting.d.js +0 -1
- package/lib/module/utils/formatting/index.d.js +0 -1
- package/lib/module/utils/getSafeAreaInsets.d.js +0 -1
- package/lib/module/utils/index.d.js +0 -1
- package/lib/module/utils/loadOptionalModule.d.js +0 -1
- package/lib/module/utils/loadToolModule.d.js +0 -1
- package/lib/module/utils/minimalSuperJSON.d.js +0 -1
- package/lib/module/utils/modalStorage.d.js +0 -1
- package/lib/module/utils/persistentStorage.d.js +0 -1
- package/lib/module/utils/realAppState.d.js +0 -1
- package/lib/module/utils/realNow.d.js +0 -1
- package/lib/module/utils/reloadApp.d.js +0 -1
- package/lib/module/utils/reloadPlatform.d.js +0 -1
- package/lib/module/utils/renderCaptureRegistry.d.js +0 -1
- package/lib/module/utils/safeExpoRouter.d.js +0 -1
- package/lib/module/utils/safeStringify.d.js +0 -1
- package/lib/module/utils/snapshotProviderKit.d.js +0 -1
- package/lib/module/utils/stateSnapshotRegistry.d.js +0 -1
- package/lib/module/utils/stateTools.d.js +0 -1
- package/lib/module/utils/storageWrites.d.js +0 -1
- package/lib/module/utils/subscribable.d.js +0 -1
- package/lib/module/utils/subscriberCountNotifier.d.js +0 -1
- package/lib/module/utils/time/RelativeTime.d.js +0 -1
- package/lib/module/utils/time/TickContext.d.js +0 -1
- package/lib/module/utils/time/formatRelativeTime.d.js +0 -1
- package/lib/module/utils/time/index.d.js +0 -1
- package/lib/module/utils/time/useRelativeTime.d.js +0 -1
- package/lib/module/utils/toolModules.d.js +0 -1
- package/lib/module/utils/typeHelpers.d.js +0 -1
- package/lib/module/utils/valueFormatting.d.js +0 -1
- package/lib/web/chunks/chunk-2STKTXD3.mjs +0 -1
- package/lib/web/chunks/chunk-3HELV44Y.mjs +0 -1
- package/lib/web/chunks/chunk-4HIK66DZ.mjs +0 -1
- package/lib/web/chunks/chunk-5G6RSRP4.mjs +0 -1
- package/lib/web/chunks/chunk-7CBB7NEY.mjs +0 -1
- package/lib/web/chunks/chunk-CJTGUGMQ.mjs +0 -1
- package/lib/web/chunks/chunk-G27JNYZ3.mjs +0 -15
- package/lib/web/chunks/chunk-GMM6TGFO.mjs +0 -1
- package/lib/web/chunks/chunk-HIAN3HBD.mjs +0 -1
- package/lib/web/chunks/chunk-LIZRXZGQ.mjs +0 -6
- package/lib/web/chunks/chunk-N5Z7Z2GY.mjs +0 -1
- package/lib/web/chunks/chunk-RMLVR5LI.mjs +0 -1
- package/lib/web/chunks/persistentStorage.web-IBLIV62L.mjs +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{useState as B,useMemo as re,useCallback as U,useRef as _,useEffect as te,memo as oe}from"react";import{Text as P,TouchableOpacity as ie,View as u,StyleSheet as ue,FlatList as pe}from"react-native";import{displayValue as Me}from"../utils/displayValue.js";import{gameUIColors as a}from"../ui/gameUI/index.js";import{night as ye}from"../ui/night/nightTheme.js";import{CopyButton as De}from"../ui/components/CopyButton.js";import{ChevronRight as Re}from"../icons/index.js";import{IndentGuidesOverlay as he}from"./IndentGuidesOverlay.js";import{monoFont as se}from"../ui/fonts.js";import{jsx as i,jsxs as T,Fragment as je}from"react/jsx-runtime";const ge={top:10,bottom:10,left:10,right:10};const z=24;const ke=24;const ee=50;const ne=15;const Pe=500;const Ze=30;const Le=300;const ae=16;const me=Array.from({length:ne+1},(e,l)=>ue.create({container:{marginLeft:l*ae}}).container);const Ae=new Map([["string",a.dataTypes.string],["number",a.dataTypes.number],["bigint",a.optional],["boolean",a.dataTypes.boolean],["null",a.dataTypes.null],["undefined",a.dataTypes.undefined],["function",a.dataTypes.function],["symbol",a.critical],["date",a.critical],["error",a.error],["array",a.dataTypes.array],["object",a.dataTypes.object],["map",a.info],["set",a.success],["circular",a.warning]]);const o=ue.create({container:{backgroundColor:ye.color.bg,borderRadius:8,borderWidth:1,borderColor:ye.color.border},header:{flexDirection:"column",paddingHorizontal:16,paddingVertical:12},headerRow:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",marginBottom:6},title:{color:a.primary,fontSize:14,fontWeight:"500"},description:{color:a.secondary,fontSize:12,marginTop:2},typeLegend:{flexDirection:"row",flexWrap:"wrap",gap:6,marginTop:8,paddingTop:8,borderTopWidth:1,borderTopColor:a.primary+"14"},typeBadge:{flexDirection:"row",alignItems:"center",paddingHorizontal:6,paddingVertical:2,borderRadius:4,borderWidth:1},typeColor:{width:8,height:8,borderRadius:4,marginRight:4},typeName:{fontSize:10,fontWeight:"500",color:a.secondary},itemContainer:{minHeight:z,backgroundColor:"transparent",position:"relative",flexDirection:"row",alignItems:"flex-start"},itemTouchable:{flex:1,flexDirection:"row",alignItems:"flex-start",paddingLeft:0,paddingRight:16,paddingVertical:2,minHeight:24},itemTouchablePressed:{backgroundColor:a.primary+"0A"},itemSelected:{backgroundColor:a.primary+"14"},expanderContainer:{width:16,alignItems:"center",justifyContent:"center",marginTop:4},expanderIcon:{width:12,height:12},labelContainer:{flex:1,flexDirection:"row",alignItems:"flex-start",paddingLeft:2},labelContainerVertical:{flex:1,flexDirection:"column",paddingLeft:2,paddingVertical:2},labelContainerVerticalRow:{flexDirection:"row",alignItems:"center",marginBottom:2},labelText:{color:a.primary,fontSize:12,fontWeight:"500",fontFamily:se,marginRight:8,flexShrink:1},labelTextTruncated:{color:a.primary,fontSize:12,fontWeight:"500",fontFamily:se,flexShrink:1},valueText:{fontSize:12,fontFamily:se,flex:1,color:a.primaryLight},loadingContainer:{padding:16,alignItems:"center"},loadingText:{color:a.secondary,fontSize:12},noDataContainer:{padding:16,alignItems:"center"},noDataText:{color:a.secondary,fontSize:12},listContent:{paddingBottom:8},headerTouchable:{flex:1,flexDirection:"row",alignItems:"center"},expanderMargin:{marginLeft:8}});function le(e){return{path:e.path.slice(1),value:e.value,label:e.key}}function ce(e,l,d=0){if(d>=l)return d;let h=d+1;if(Array.isArray(e)){for(const w of e){if(h>=l)return h;h=ce(w,l,h)}}else if(e!==null&&typeof e==="object"){for(const w of Object.values(e)){if(h>=l)return h;h=ce(w,l,h)}}return h}const _e=e=>{if(e===null)return"null";if(e===void 0)return"undefined";if(Array.isArray(e))return"array";if(e instanceof Date)return"date";if(e instanceof Error)return"error";if(e instanceof Map)return"map";if(e instanceof Set)return"set";if(e instanceof RegExp)return"regexp";if(typeof e==="function")return"function";if(typeof e==="symbol")return"symbol";if(typeof e==="bigint")return"bigint";if(typeof e==="object")return"object";return typeof e};const Ve=(e,l)=>{if(e===null)return 0;switch(l){case"array":return Array.isArray(e)?e.length:0;case"object":return typeof e==="object"&&!(e instanceof Date)&&!(e instanceof Error)&&!(e instanceof RegExp)&&!(e instanceof Map)&&!(e instanceof Set)?Object.keys(e).length:0;case"map":return e instanceof Map?e.size:0;case"set":return e instanceof Set?e.size:0;default:return 0}};const He=(e,l)=>{if(e===null)return"null";if(e===void 0)return"undefined";switch(l){case"string":return`"${String(e)}"`;case"boolean":return e===true?"true":"false";case"function":return typeof e==="function"?e.toString().slice(0,50)+"...":"undefined";case"symbol":return typeof e==="symbol"?String(e):"undefined";case"date":return e instanceof Date?e.toISOString():"undefined";case"regexp":return e instanceof RegExp?e.toString():"undefined";case"bigint":return typeof e==="bigint"?e.toString()+"n":"undefined";case"error":return e instanceof Error?`${e.name}: ${e.message}`:"undefined";default:return Me(e)}};const be=e=>{return Ae.get(e)||a.dataTypes.array};const xe=({expanded:e,onPress:l})=>{return i(ie,{"sentry-label":"ignore devtools data explorer expander",style:o.expanderContainer,onPress:l,hitSlop:ge,children:i(u,{style:o.expanderIcon,children:i(Re,{size:12,color:a.secondary,strokeWidth:2,style:{transform:[{rotate:e?"90deg":"0deg"}]}})})})};xe.displayName="Expander";const Te=oe(xe);const Se=({visibleTypes:e})=>{const l=Array.from(new Set(e)).slice(0,8);return i(u,{style:o.typeLegend,children:l.map(d=>{const h=be(d);return T(u,{style:[o.typeBadge,{backgroundColor:`${h}10`,borderColor:`${h}30`}],children:[i(u,{style:[o.typeColor,{backgroundColor:h}]}),i(P,{style:o.typeName,children:d})]},d)})})};Se.displayName="TypeLegend";const ze=oe(Se);const Oe=(e,l=10,d=false)=>{const[h,w]=B([]);const V=_(new Map);const Q=U(()=>{const t=new Set(["root"]);if(d&&e&&typeof e==="object"){if(Array.isArray(e)){e.forEach((m,s)=>{t.add(`root.${s}`)})}else{Object.keys(e).forEach(m=>{t.add(`root.${m}`)})}}return t},[d,e]);const[L,O]=B(()=>Q());const[$,A]=B(false);const I=_(new WeakSet);const j=_(false);const N=_(0);const W=_(0);const c=_(void 0);const C=U((t,m,s,g="root",n=0,M,x=[],S=0,k=1,E=[])=>{if(n>Math.min(l,ne))return[];const p=[...x,g];const f=p.join(".");const b=_e(t);const F=["object","array","map","set"].includes(b)&&t!==null;const J=F?Ve(t,b):0;const H=Math.min(J,Pe);if(t&&typeof t==="object"){if(s.has(t)){return[{id:f,key:g,value:"[Circular Reference]",valueType:"circular",depth:n,isExpandable:false,isExpanded:false,parentId:M,hasChildren:false,childCount:0,path:p,type:"circular",isLastChild:S===k-1,parentHasMoreSiblings:[...E],siblingIndex:S,totalSiblings:k}]}s.add(t)}const r={id:f,key:g,value:t,valueType:b,depth:n,isExpandable:F,isExpanded:m.has(f),parentId:M,hasChildren:H>0,childCount:H,path:p,type:F?"expandable":b,isLastChild:S===k-1,parentHasMoreSiblings:[...E],siblingIndex:S,totalSiblings:k};const y=[r];if(F&&m.has(f)&&n<Math.min(l,ne)){try{let D=[];switch(b){case"array":D=Array.isArray(t)?t.map((R,G)=>[G.toString(),R]):[];break;case"object":D=typeof t==="object"&&t!==null&&!(t instanceof Date)&&!(t instanceof Error)&&!(t instanceof RegExp)&&!(t instanceof Map)&&!(t instanceof Set)?Object.entries(t):[];break;case"map":D=t instanceof Map?Array.from(t.entries()).map(([R,G])=>[String(R),G]):[];break;case"set":D=t instanceof Set?Array.from(t.values()).map((R,G)=>[G.toString(),R]):[];break}const v=D.slice(0,H);const Ce=v.length;const de=[...E];if(n>0){de[n-1]=!r.isLastChild}for(let R=0;R<v.length;R+=ee){const G=v.slice(R,R+ee);let fe=R;for(const[we,Ie]of G){y.push(...C(Ie,m,s,we,n+1,f,p,fe,Ce,de));fe++}if(R>0&&R%(ee*2)===0){break}}}catch(D){console.error("[Buoy]",D)}}return y},[l]);te(()=>{if(c.current&&(c.current.type==="expand"||c.current.type==="collapse")){if($){A(false);j.current=false}c.current=void 0;return}if(j.current){return}let t;const m=++N.current;const s=()=>N.current===m;j.current=true;A(true);const g=async()=>{t=setTimeout(()=>{if(j.current&&s()){A(false);j.current=false}},5e3);await new Promise(n=>setTimeout(()=>n(),10));if(!s()){return}try{I.current=new WeakSet;W.current=Date.now();const n=C(e,L,I.current,"root",0,void 0,[],0,1,[]);const M=new Map;n.forEach((x,S)=>{M.set(x.id,{item:x,index:S})});V.current=M;if(t)clearTimeout(t);if(s()){w(n);A(false);j.current=false}}catch(n){console.error("[Buoy]",n);if(t)clearTimeout(t);if(s()){w([]);V.current=new Map;A(false);j.current=false}}};g();return()=>{j.current=false;if(t)clearTimeout(t)}},[e,L,C,l]);const Y=U((t,m)=>{A(false);j.current=false;w(s=>{const g=V.current.get(t);if(!g){return s}const{item:n,index:M}=g;if(m&&n.isExpandable&&n.hasChildren){const x=[...s];const S=new WeakSet;if(n.value&&typeof n.value==="object"){S.add(n.value)}const k=[];try{let f=[];const b=n.valueType;switch(b){case"array":f=Array.isArray(n.value)?n.value.map((r,y)=>[y.toString(),r]):[];break;case"object":f=typeof n.value==="object"&&n.value!==null&&!(n.value instanceof Date)&&!(n.value instanceof Error)&&!(n.value instanceof RegExp)&&!(n.value instanceof Map)&&!(n.value instanceof Set)?Object.entries(n.value):[];break;case"map":f=n.value instanceof Map?Array.from(n.value.entries()).map(([r,y])=>[String(r),y]):[];break;case"set":f=n.value instanceof Set?Array.from(n.value.values()).map((r,y)=>[y.toString(),r]):[];break}const F=f.length;const J=n.parentHasMoreSiblings||[];const H=[...J];if(n.depth>0){H[n.depth-1]=!n.isLastChild}f.forEach(([r,y],D)=>{const v=C(y,new Set,S,r,n.depth+1,t,n.path,D,F,H);k.push(...v)})}catch(f){console.error("[Buoy]",f)}const E=k;if(E.length>0){}x[M]={...n,isExpanded:true};x.splice(M+1,0,...E);const p=new Map;x.forEach((f,b)=>{p.set(f.id,{item:f,index:b})});V.current=p;return x}else if(!m){const x=new Set;const S=(p,f)=>{s.forEach(b=>{if(b.parentId===p||b.id.startsWith(p+".")&&b.depth>f){x.add(b.id);if(b.hasChildren){S(b.id,b.depth)}}})};S(t,n.depth);const k=s.map(p=>{if(p.id===t){return{...p,isExpanded:false}}return p}).filter(p=>!x.has(p.id));const E=new Map;k.forEach((p,f)=>{E.set(p.id,{item:p,index:f})});V.current=E;return k}return s})},[C]);const X=U(t=>{O(m=>{const s=new Set(m);const g=!s.has(t);if(g){s.add(t)}else{s.delete(t)}c.current={type:g?"expand":"collapse",itemId:t};Y(t,g);return s})},[Y]);const K=ce(e,ee,0)<ee;const q=re(()=>{if(!K)return null;return C(e,L,new WeakSet,"root",0,void 0,[],0,1,[])},[K,e,L,C]);const Z=U(t=>{if(t.length===0)return;O(m=>{if(t.every(g=>m.has(g)))return m;const s=new Set(m);for(const g of t)s.add(g);return s})},[]);return{flatData:q??h,isProcessing:q?false:$,toggleExpanded:X,revealPath:Z}};const Ee=({item:e,onToggleExpanded:l,index:d,onSelect:h,isSelected:w,selectable:V,onRequestInlineEdit:Q,isInlineEditing:L,inlineEditor:O,testIDPrefix:$})=>{const[A,I]=B(false);const[j,N]=B(false);const W=V===true;const c=_(0);const C=e.path.slice(1);const Y=me[Math.min(e.depth,ne)]||me[0];const X=be(e.valueType);const K=false;const q=()=>{if(W){const s=Date.now();const g=s-c.current<Le;c.current=s;if(g&&!e.isExpandable&&Q){Q(e);return}h(e);return}if(e.isExpandable){l(e.id)}h(e)};const Z=()=>{if(e.isExpandable){l(e.id)}h(e)};const t=()=>{};const m=e.key;return T(u,{style:[o.itemContainer,Y],children:[T(ie,{"sentry-label":"ignore devtools data explorer item",testID:`${$}-${e.id}`,accessibilityLabel:`${e.key}: ${e.valueType}`,style:[o.itemTouchable,A&&o.itemTouchablePressed,W&&w&&o.itemSelected,K&&{minHeight:ke,paddingVertical:2}],onPress:q,onPressIn:()=>I(true),onPressOut:()=>I(false),activeOpacity:e.isExpandable||W?.7:1,disabled:!e.isExpandable&&!W,children:[e.isExpandable?i(Te,{expanded:e.isExpanded,onPress:Z}):i(u,{style:o.expanderContainer}),T(u,{style:o.labelContainer,children:[T(P,{style:o.labelText,numberOfLines:1,children:[e.key,":"]}),L&&O?O:e.isExpandable?T(P,{style:[o.valueText,{color:a.secondary}],numberOfLines:1,children:[e.valueType," (",e.childCount," ",e.childCount===1?"item":"items",")"]}):i(P,{style:[o.valueText,{color:X}],numberOfLines:1,children:He(e.value,e.valueType)})]})]}),e.value!==void 0?i(De,{value:e.value,size:14,buttonStyle:{marginLeft:8,marginRight:8}}):null]})};Ee.displayName="VirtualizedItem";const Ne=oe(Ee);export const VirtualizedDataExplorer=({title:e,description:l,data:d,maxDepth:h=10,rawMode:w=false,initialExpanded:V=false,disableCopy:Q=false,onSelectionChange:L,onRequestInlineEdit:O,inlineEditPath:$,renderInlineEditor:A,selectPath:I,testIDPrefix:j="buoy-tree-row"})=>{const[N,W]=B(w);const{flatData:c,isProcessing:C,toggleExpanded:Y,revealPath:X}=Oe(d,h,V);const K=_(null);const[q,Z]=B({start:0,end:Math.min(c.length-1,Math.max(0,Math.ceil(400/z)-1))});const t=_({itemVisiblePercentThreshold:1});const m=_(({viewableItems:r})=>{const y=r.map(D=>D.index).filter(D=>typeof D==="number");if(y.length){Z({start:Math.min(...y),end:Math.max(...y)})}}).current;te(()=>{Z({start:0,end:Math.min(c.length-1,Math.max(0,Math.ceil(400/z)-1))})},[c.length]);const s=re(()=>{const r=new Set;for(const y of c){r.add(y.valueType);if(r.size>=8)break}return Array.from(r)},[c]);const g=()=>{W(!N)};const[n,M]=B(null);const x=re(()=>n==null?void 0:c.find(r=>r.id===n),[c,n]);const S=x?.depth;te(()=>{if(!L)return;L(x?le(x):null)},[x,L]);const k=U(r=>{M(y=>y===r.id?null:r.id)},[]);const E=I===void 0?void 0:I===null?"\0null":I.join(".");const p=_(E);te(()=>{if(E===p.current)return;p.current=E;if(E===void 0)return;if(I==null){M(null);return}const r=["root"];for(const y of I.slice(0,-1)){r.push(`${r[r.length-1]}.${y}`)}X(r);M(["root",...I].join("."))},[E,I,X]);const f=U(r=>{M(r.id);O?.(le(r))},[O]);const b=({item:r,index:y})=>i(Ne,{item:r,index:y,onToggleExpanded:Y,onSelect:k,isSelected:x?.id===r.id,selectable:L!=null,onRequestInlineEdit:f,isInlineEditing:$!=null&&$.join(".")===r.path.slice(1).join("."),inlineEditor:A?A(le(r)):null,testIDPrefix:j});const F=z;const J=r=>r.id;const H=d!==null&&d!==void 0&&(typeof d==="string"?d.length>0:typeof d==="number"||typeof d==="boolean"?true:Array.isArray(d)?d.length>0:typeof d==="object"?Object.keys(d).length>0:false);if(w){if(!H){return i(u,{style:{flex:1,justifyContent:"center",alignItems:"center",padding:20},children:i(P,{style:o.noDataText,children:"No data available"})})}return i(u,{style:{minHeight:C?40:c.length*z},children:C?i(u,{style:{flex:1,justifyContent:"center",alignItems:"center"},children:T(P,{style:o.loadingText,children:["Processing data... (raw mode, isProcessing=",String(C),")"]})}):T(u,{style:{position:"relative",height:c.length*z},children:[i(he,{items:c,visibleRange:{start:0,end:Math.max(0,c.length-1)},itemHeight:z,indentWidth:ae,activeDepth:S}),i(pe,{ref:K,"sentry-label":"ignore devtools data explorer list",data:c,renderItem:b,keyExtractor:J,showsVerticalScrollIndicator:true,contentContainerStyle:o.listContent,initialNumToRender:15,maxToRenderPerBatch:10,windowSize:10,scrollEnabled:false})]})})}if(!H){return T(u,{style:o.container,children:[i(u,{style:o.header,children:i(u,{style:o.headerRow,children:T(u,{style:{flex:1},children:[i(P,{style:o.title,children:e}),l&&i(P,{style:o.description,children:l})]})})}),i(u,{style:o.noDataContainer,children:i(P,{style:o.noDataText,children:"No data available"})})]})}return T(u,{style:o.container,children:[T(u,{style:o.header,children:[i(u,{style:o.headerRow,children:T(ie,{"sentry-label":"ignore devtools data explorer header toggle",onPress:g,hitSlop:ge,style:o.headerTouchable,children:[T(u,{style:{flex:1},children:[i(P,{style:o.title,children:e}),l&&i(P,{style:o.description,children:l})]}),i(u,{style:o.expanderMargin,children:i(Te,{expanded:N,onPress:g})})]})}),N&&s.length>0&&!w&&i(ze,{visibleTypes:s})]}),N&&i(je,{children:C?i(u,{style:o.loadingContainer,children:T(P,{style:o.loadingText,children:["Processing data... (isProcessing=",String(C),")"]})}):T(u,{style:{height:c.length*z,position:"relative"},children:[i(he,{items:c,visibleRange:q,itemHeight:z,indentWidth:ae,activeDepth:S}),i(pe,{ref:K,"sentry-label":"ignore devtools data explorer collapsed list",data:c,renderItem:b,keyExtractor:J,showsVerticalScrollIndicator:true,contentContainerStyle:o.listContent,initialNumToRender:15,maxToRenderPerBatch:10,windowSize:10,scrollEnabled:false,onViewableItemsChanged:m,viewabilityConfig:t.current})]})})]})};
|
|
1
|
+
"use strict";import{useState as B,useMemo as re,useCallback as U,useRef as _,useEffect as te,memo as oe}from"react";import{Text as j,TouchableOpacity as ie,View as u,StyleSheet as ue,FlatList as pe}from"react-native";import{displayValue as Me}from"../utils/displayValue.js";import{gameUIColors as a}from"../ui/gameUI/index.js";import{night as ye}from"../ui/night/nightTheme.js";import{CopyButton as De}from"../ui/components/CopyButton.js";import{ChevronRight as Re}from"../icons/index.js";import{IndentGuidesOverlay as he}from"./IndentGuidesOverlay.js";import{monoFont as se}from"../ui/fonts.js";import{jsx as i,jsxs as T,Fragment as ke}from"react/jsx-runtime";const ge={top:10,bottom:10,left:10,right:10};const z=24;const Pe=24;const ee=50;const ne=15;const je=500;const Ze=30;const Le=300;const ae=16;const me=Array.from({length:ne+1},(e,l)=>ue.create({container:{marginLeft:l*ae}}).container);const Ae=new Map([["string",a.dataTypes.string],["number",a.dataTypes.number],["bigint",a.optional],["boolean",a.dataTypes.boolean],["null",a.dataTypes.null],["undefined",a.dataTypes.undefined],["function",a.dataTypes.function],["symbol",a.critical],["date",a.critical],["error",a.error],["array",a.dataTypes.array],["object",a.dataTypes.object],["map",a.info],["set",a.success],["circular",a.warning]]);const o=ue.create({container:{backgroundColor:ye.color.bg,borderRadius:8,borderWidth:1,borderColor:ye.color.border},header:{flexDirection:"column",paddingHorizontal:16,paddingVertical:12},headerRow:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",marginBottom:6},title:{color:a.primary,fontSize:14,fontWeight:"500"},description:{color:a.secondary,fontSize:12,marginTop:2},typeLegend:{flexDirection:"row",flexWrap:"wrap",gap:6,marginTop:8,paddingTop:8,borderTopWidth:1,borderTopColor:a.primary+"14"},typeBadge:{flexDirection:"row",alignItems:"center",paddingHorizontal:6,paddingVertical:2,borderRadius:4,borderWidth:1},typeColor:{width:8,height:8,borderRadius:4,marginRight:4},typeName:{fontSize:10,fontWeight:"500",color:a.secondary},itemContainer:{minHeight:z,backgroundColor:"transparent",position:"relative",flexDirection:"row",alignItems:"flex-start"},itemTouchable:{flex:1,flexDirection:"row",alignItems:"flex-start",paddingLeft:0,paddingRight:16,paddingVertical:2,minHeight:24},itemTouchablePressed:{backgroundColor:a.primary+"0A"},itemSelected:{backgroundColor:a.primary+"14"},expanderContainer:{width:16,alignItems:"center",justifyContent:"center",marginTop:4},expanderIcon:{width:12,height:12},labelContainer:{flex:1,flexDirection:"row",alignItems:"flex-start",paddingLeft:2},labelContainerVertical:{flex:1,flexDirection:"column",paddingLeft:2,paddingVertical:2},labelContainerVerticalRow:{flexDirection:"row",alignItems:"center",marginBottom:2},labelText:{color:a.primary,fontSize:12,fontWeight:"500",fontFamily:se,marginRight:8,flexShrink:1},labelTextTruncated:{color:a.primary,fontSize:12,fontWeight:"500",fontFamily:se,flexShrink:1},valueText:{fontSize:12,fontFamily:se,flex:1,color:a.primaryLight},loadingContainer:{padding:16,alignItems:"center"},loadingText:{color:a.secondary,fontSize:12},noDataContainer:{padding:16,alignItems:"center"},noDataText:{color:a.secondary,fontSize:12},listContent:{paddingBottom:8},headerTouchable:{flex:1,flexDirection:"row",alignItems:"center"},expanderMargin:{marginLeft:8}});function le(e){return{path:e.path.slice(1),value:e.value,label:e.key}}function ce(e,l,d=0){if(d>=l)return d;let h=d+1;if(Array.isArray(e)){for(const w of e){if(h>=l)return h;h=ce(w,l,h)}}else if(e!==null&&typeof e==="object"){for(const w of Object.values(e)){if(h>=l)return h;h=ce(w,l,h)}}return h}const _e=e=>{if(e===null)return"null";if(e===void 0)return"undefined";if(Array.isArray(e))return"array";if(e instanceof Date)return"date";if(e instanceof Error)return"error";if(e instanceof Map)return"map";if(e instanceof Set)return"set";if(e instanceof RegExp)return"regexp";if(typeof e==="function")return"function";if(typeof e==="symbol")return"symbol";if(typeof e==="bigint")return"bigint";if(typeof e==="object")return"object";return typeof e};const Ve=(e,l)=>{if(e===null)return 0;switch(l){case"array":return Array.isArray(e)?e.length:0;case"object":return typeof e==="object"&&!(e instanceof Date)&&!(e instanceof Error)&&!(e instanceof RegExp)&&!(e instanceof Map)&&!(e instanceof Set)?Object.keys(e).length:0;case"map":return e instanceof Map?e.size:0;case"set":return e instanceof Set?e.size:0;default:return 0}};const He=(e,l)=>{if(e===null)return"null";if(e===void 0)return"undefined";switch(l){case"string":return`"${String(e)}"`;case"boolean":return e===true?"true":"false";case"function":return typeof e==="function"?e.toString().slice(0,50)+"...":"undefined";case"symbol":return typeof e==="symbol"?String(e):"undefined";case"date":return e instanceof Date?e.toISOString():"undefined";case"regexp":return e instanceof RegExp?e.toString():"undefined";case"bigint":return typeof e==="bigint"?e.toString()+"n":"undefined";case"error":return e instanceof Error?`${e.name}: ${e.message}`:"undefined";default:return Me(e)}};const be=e=>{return Ae.get(e)||a.dataTypes.array};const xe=({expanded:e,onPress:l})=>{return i(ie,{"sentry-label":"ignore devtools data explorer expander",style:o.expanderContainer,onPress:l,hitSlop:ge,children:i(u,{style:o.expanderIcon,children:i(Re,{size:12,color:a.secondary,strokeWidth:2,style:{transform:[{rotate:e?"90deg":"0deg"}]}})})})};xe.displayName="Expander";const Te=oe(xe);const Se=({visibleTypes:e})=>{const l=Array.from(new Set(e)).slice(0,8);return i(u,{style:o.typeLegend,children:l.map(d=>{const h=be(d);return T(u,{style:[o.typeBadge,{backgroundColor:`${h}10`,borderColor:`${h}30`}],children:[i(u,{style:[o.typeColor,{backgroundColor:h}]}),i(j,{style:o.typeName,children:d})]},d)})})};Se.displayName="TypeLegend";const ze=oe(Se);const Oe=(e,l=10,d=false)=>{const[h,w]=B([]);const V=_(new Map);const Q=U(()=>{const t=new Set(["root"]);if(d&&e&&typeof e==="object"){if(Array.isArray(e)){e.forEach((m,s)=>{t.add(`root.${s}`)})}else{Object.keys(e).forEach(m=>{t.add(`root.${m}`)})}}return t},[d,e]);const[L,O]=B(()=>Q());const[$,A]=B(false);const I=_(new WeakSet);const k=_(false);const N=_(0);const W=_(0);const c=_(void 0);const C=U((t,m,s,g="root",n=0,M,x=[],S=0,P=1,E=[])=>{if(n>Math.min(l,ne))return[];const p=[...x,g];const f=p.join(".");const b=_e(t);const F=["object","array","map","set"].includes(b)&&t!==null;const J=F?Ve(t,b):0;const H=Math.min(J,je);if(t&&typeof t==="object"){if(s.has(t)){return[{id:f,key:g,value:"[Circular Reference]",valueType:"circular",depth:n,isExpandable:false,isExpanded:false,parentId:M,hasChildren:false,childCount:0,path:p,type:"circular",isLastChild:S===P-1,parentHasMoreSiblings:[...E],siblingIndex:S,totalSiblings:P}]}s.add(t)}const r={id:f,key:g,value:t,valueType:b,depth:n,isExpandable:F,isExpanded:m.has(f),parentId:M,hasChildren:H>0,childCount:H,path:p,type:F?"expandable":b,isLastChild:S===P-1,parentHasMoreSiblings:[...E],siblingIndex:S,totalSiblings:P};const y=[r];if(F&&m.has(f)&&n<Math.min(l,ne)){try{let D=[];switch(b){case"array":D=Array.isArray(t)?t.map((R,G)=>[G.toString(),R]):[];break;case"object":D=typeof t==="object"&&t!==null&&!(t instanceof Date)&&!(t instanceof Error)&&!(t instanceof RegExp)&&!(t instanceof Map)&&!(t instanceof Set)?Object.entries(t):[];break;case"map":D=t instanceof Map?Array.from(t.entries()).map(([R,G])=>[String(R),G]):[];break;case"set":D=t instanceof Set?Array.from(t.values()).map((R,G)=>[G.toString(),R]):[];break}const v=D.slice(0,H);const Ce=v.length;const de=[...E];if(n>0){de[n-1]=!r.isLastChild}for(let R=0;R<v.length;R+=ee){const G=v.slice(R,R+ee);let fe=R;for(const[we,Ie]of G){y.push(...C(Ie,m,s,we,n+1,f,p,fe,Ce,de));fe++}if(R>0&&R%(ee*2)===0){break}}}catch(D){console.error("[Buoy]",D)}}return y},[l]);te(()=>{if(c.current&&(c.current.type==="expand"||c.current.type==="collapse")){if($){A(false);k.current=false}c.current=void 0;return}if(k.current){return}let t;const m=++N.current;const s=()=>N.current===m;k.current=true;A(true);const g=async()=>{t=setTimeout(()=>{if(k.current&&s()){A(false);k.current=false}},5e3);await new Promise(n=>setTimeout(()=>n(),10));if(!s()){return}try{I.current=new WeakSet;W.current=Date.now();const n=C(e,L,I.current,"root",0,void 0,[],0,1,[]);const M=new Map;n.forEach((x,S)=>{M.set(x.id,{item:x,index:S})});V.current=M;if(t)clearTimeout(t);if(s()){w(n);A(false);k.current=false}}catch(n){console.error("[Buoy]",n);if(t)clearTimeout(t);if(s()){w([]);V.current=new Map;A(false);k.current=false}}};g();return()=>{k.current=false;if(t)clearTimeout(t)}},[e,L,C,l]);const Y=U((t,m)=>{A(false);k.current=false;w(s=>{const g=V.current.get(t);if(!g){return s}const{item:n,index:M}=g;if(m&&n.isExpandable&&n.hasChildren){const x=[...s];const S=new WeakSet;if(n.value&&typeof n.value==="object"){S.add(n.value)}const P=[];try{let f=[];const b=n.valueType;switch(b){case"array":f=Array.isArray(n.value)?n.value.map((r,y)=>[y.toString(),r]):[];break;case"object":f=typeof n.value==="object"&&n.value!==null&&!(n.value instanceof Date)&&!(n.value instanceof Error)&&!(n.value instanceof RegExp)&&!(n.value instanceof Map)&&!(n.value instanceof Set)?Object.entries(n.value):[];break;case"map":f=n.value instanceof Map?Array.from(n.value.entries()).map(([r,y])=>[String(r),y]):[];break;case"set":f=n.value instanceof Set?Array.from(n.value.values()).map((r,y)=>[y.toString(),r]):[];break}const F=f.length;const J=n.parentHasMoreSiblings||[];const H=[...J];if(n.depth>0){H[n.depth-1]=!n.isLastChild}f.forEach(([r,y],D)=>{const v=C(y,new Set,S,r,n.depth+1,t,n.path,D,F,H);P.push(...v)})}catch(f){console.error("[Buoy]",f)}const E=P;if(E.length>0){}x[M]={...n,isExpanded:true};x.splice(M+1,0,...E);const p=new Map;x.forEach((f,b)=>{p.set(f.id,{item:f,index:b})});V.current=p;return x}else if(!m){const x=new Set;const S=(p,f)=>{s.forEach(b=>{if(b.parentId===p||b.id.startsWith(p+".")&&b.depth>f){x.add(b.id);if(b.hasChildren){S(b.id,b.depth)}}})};S(t,n.depth);const P=s.map(p=>{if(p.id===t){return{...p,isExpanded:false}}return p}).filter(p=>!x.has(p.id));const E=new Map;P.forEach((p,f)=>{E.set(p.id,{item:p,index:f})});V.current=E;return P}return s})},[C]);const X=U(t=>{O(m=>{const s=new Set(m);const g=!s.has(t);if(g){s.add(t)}else{s.delete(t)}c.current={type:g?"expand":"collapse",itemId:t};Y(t,g);return s})},[Y]);const K=ce(e,ee,0)<ee;const q=re(()=>{if(!K)return null;return C(e,L,new WeakSet,"root",0,void 0,[],0,1,[])},[K,e,L,C]);const Z=U(t=>{if(t.length===0)return;O(m=>{if(t.every(g=>m.has(g)))return m;const s=new Set(m);for(const g of t)s.add(g);return s})},[]);return{flatData:q??h,isProcessing:q?false:$,toggleExpanded:X,revealPath:Z}};const Ee=({item:e,onToggleExpanded:l,index:d,onSelect:h,isSelected:w,selectable:V,onRequestInlineEdit:Q,isInlineEditing:L,inlineEditor:O,testIDPrefix:$})=>{const[A,I]=B(false);const[k,N]=B(false);const W=V===true;const c=_(0);const C=e.path.slice(1);const Y=me[Math.min(e.depth,ne)]||me[0];const X=be(e.valueType);const K=false;const q=()=>{if(W){const s=Date.now();const g=s-c.current<Le;c.current=s;if(g&&!e.isExpandable&&Q){Q(e);return}h(e);return}if(e.isExpandable){l(e.id)}h(e)};const Z=()=>{if(e.isExpandable){l(e.id)}h(e)};const t=()=>{};const m=e.key;return T(u,{style:[o.itemContainer,Y],children:[T(ie,{"sentry-label":"ignore devtools data explorer item",testID:`${$}-${e.id}`,accessibilityLabel:`${e.key}: ${e.valueType}`,style:[o.itemTouchable,A&&o.itemTouchablePressed,W&&w&&o.itemSelected,K&&{minHeight:Pe,paddingVertical:2}],onPress:q,onPressIn:()=>I(true),onPressOut:()=>I(false),activeOpacity:e.isExpandable||W?.7:1,disabled:!e.isExpandable&&!W,children:[e.isExpandable?i(Te,{expanded:e.isExpanded,onPress:Z}):i(u,{style:o.expanderContainer}),T(u,{style:o.labelContainer,children:[T(j,{style:o.labelText,numberOfLines:1,children:[e.key,":"]}),L&&O?O:e.isExpandable?T(j,{style:[o.valueText,{color:a.secondary}],numberOfLines:1,children:[e.valueType," (",e.childCount," ",e.childCount===1?"item":"items",")"]}):i(j,{style:[o.valueText,{color:X}],numberOfLines:1,children:He(e.value,e.valueType)})]})]}),e.value!==void 0?i(De,{value:e.value,size:14,buttonStyle:{marginLeft:8,marginRight:8}}):null]})};Ee.displayName="VirtualizedItem";const Ne=oe(Ee);export const VirtualizedDataExplorer=({title:e,description:l,data:d,maxDepth:h=10,rawMode:w=false,initialExpanded:V=false,disableCopy:Q=false,onSelectionChange:L,onRequestInlineEdit:O,inlineEditPath:$,renderInlineEditor:A,selectPath:I,testIDPrefix:k="buoy-tree-row"})=>{const[N,W]=B(w);const{flatData:c,isProcessing:C,toggleExpanded:Y,revealPath:X}=Oe(d,h,V);const K=_(null);const[q,Z]=B({start:0,end:Math.min(c.length-1,Math.max(0,Math.ceil(400/z)-1))});const t=_({itemVisiblePercentThreshold:1});const m=_(({viewableItems:r})=>{const y=r.map(D=>D.index).filter(D=>typeof D==="number");if(y.length){Z({start:Math.min(...y),end:Math.max(...y)})}}).current;te(()=>{Z({start:0,end:Math.min(c.length-1,Math.max(0,Math.ceil(400/z)-1))})},[c.length]);const s=re(()=>{const r=new Set;for(const y of c){r.add(y.valueType);if(r.size>=8)break}return Array.from(r)},[c]);const g=()=>{W(!N)};const[n,M]=B(null);const x=re(()=>n==null?void 0:c.find(r=>r.id===n),[c,n]);const S=x?.depth;te(()=>{if(!L)return;L(x?le(x):null)},[x,L]);const P=U(r=>{M(y=>y===r.id?null:r.id)},[]);const E=I===void 0?void 0:I===null?"\0null":I.join(".");const p=_(E);te(()=>{if(E===p.current)return;p.current=E;if(E===void 0)return;if(I==null){M(null);return}const r=["root"];for(const y of I.slice(0,-1)){r.push(`${r[r.length-1]}.${y}`)}X(r);M(["root",...I].join("."))},[E,I,X]);const f=U(r=>{M(r.id);O?.(le(r))},[O]);const b=({item:r,index:y})=>i(Ne,{item:r,index:y,onToggleExpanded:Y,onSelect:P,isSelected:x?.id===r.id,selectable:L!=null,onRequestInlineEdit:f,isInlineEditing:$!=null&&$.join(".")===r.path.slice(1).join("."),inlineEditor:A?A(le(r)):null,testIDPrefix:k});const F=z;const J=r=>r.id;const H=d!==null&&d!==void 0&&(typeof d==="string"?d.length>0:typeof d==="number"||typeof d==="boolean"?true:Array.isArray(d)?d.length>0:typeof d==="object"?Object.keys(d).length>0:false);if(w){if(!H){return i(u,{style:{flex:1,justifyContent:"center",alignItems:"center",padding:20},children:i(j,{style:o.noDataText,children:"No data available"})})}return i(u,{style:{minHeight:C?40:c.length*z},children:C?i(u,{style:{flex:1,justifyContent:"center",alignItems:"center"},children:T(j,{style:o.loadingText,children:["Processing data... (raw mode, isProcessing=",String(C),")"]})}):T(u,{style:{position:"relative",height:c.length*z},children:[i(he,{items:c,visibleRange:{start:0,end:Math.max(0,c.length-1)},itemHeight:z,indentWidth:ae,activeDepth:S}),i(pe,{keyboardShouldPersistTaps:"handled",ref:K,"sentry-label":"ignore devtools data explorer list",data:c,renderItem:b,keyExtractor:J,showsVerticalScrollIndicator:true,contentContainerStyle:o.listContent,initialNumToRender:15,maxToRenderPerBatch:10,windowSize:10,scrollEnabled:false})]})})}if(!H){return T(u,{style:o.container,children:[i(u,{style:o.header,children:i(u,{style:o.headerRow,children:T(u,{style:{flex:1},children:[i(j,{style:o.title,children:e}),l&&i(j,{style:o.description,children:l})]})})}),i(u,{style:o.noDataContainer,children:i(j,{style:o.noDataText,children:"No data available"})})]})}return T(u,{style:o.container,children:[T(u,{style:o.header,children:[i(u,{style:o.headerRow,children:T(ie,{"sentry-label":"ignore devtools data explorer header toggle",onPress:g,hitSlop:ge,style:o.headerTouchable,children:[T(u,{style:{flex:1},children:[i(j,{style:o.title,children:e}),l&&i(j,{style:o.description,children:l})]}),i(u,{style:o.expanderMargin,children:i(Te,{expanded:N,onPress:g})})]})}),N&&s.length>0&&!w&&i(ze,{visibleTypes:s})]}),N&&i(ke,{children:C?i(u,{style:o.loadingContainer,children:T(j,{style:o.loadingText,children:["Processing data... (isProcessing=",String(C),")"]})}):T(u,{style:{height:c.length*z,position:"relative"},children:[i(he,{items:c,visibleRange:q,itemHeight:z,indentWidth:ae,activeDepth:S}),i(pe,{keyboardShouldPersistTaps:"handled",ref:K,"sentry-label":"ignore devtools data explorer collapsed list",data:c,renderItem:b,keyExtractor:J,showsVerticalScrollIndicator:true,contentContainerStyle:o.listContent,initialNumToRender:15,maxToRenderPerBatch:10,windowSize:10,scrollEnabled:false,onViewableItemsChanged:m,viewabilityConfig:t.current})]})})]})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{useCallback as m,useMemo as y}from"react";import{FlatList as w,View as L,Text as u,StyleSheet as
|
|
1
|
+
"use strict";import{useCallback as m,useMemo as y}from"react";import{FlatList as w,View as L,Text as u,StyleSheet as E}from"react-native";import{buoyColors as T}from"../../ui/gameUI/constants/gameUIColors.js";import{HistoryEntryRow as b}from"./HistoryEntryRow.js";import{useAllHistoryEntries as H,useHistoryAdapters as k}from"../HistoryProvider.js";import{jsx as o,jsxs as g}from"react/jsx-runtime";export function HistoryList({filter:h,selectedEntryId:n,onSelectEntry:s,showSource:i=true,emptyMessage:a="No history entries yet",ListHeaderComponent:c,ListFooterComponent:x}){const C=H(h);const p=k();const l=y(()=>{const t=new Map;p.forEach(d=>t.set(d.id,d));return t},[p]);const f=m(t=>`${t.source}-${t.id}`,[]);const S=m(({item:t})=>{const d=l.get(t.source);return o(b,{entry:t,adapter:d,isSelected:n===t.id,onPress:s,showSource:i})},[l,n,s,i]);const e=y(()=>g(L,{style:r.emptyContainer,children:[o(u,{style:r.emptyText,children:a}),o(u,{style:r.emptySubtext,children:"Actions will appear here as they happen"})]}),[a]);return o(w,{keyboardShouldPersistTaps:"handled",data:C,keyExtractor:f,renderItem:S,ListEmptyComponent:e,ListHeaderComponent:c,ListFooterComponent:x,contentContainerStyle:r.listContent,showsVerticalScrollIndicator:false,removeClippedSubviews:true,maxToRenderPerBatch:15,windowSize:10,initialNumToRender:15,getItemLayout:void 0})}export function StandaloneHistoryList({entries:h,adapters:n=[],selectedEntryId:s,onSelectEntry:i,showSource:a=true,emptyMessage:c="No history entries yet",ListHeaderComponent:x,ListFooterComponent:C}){const p=y(()=>{const e=new Map;n.forEach(t=>e.set(t.id,t));return e},[n]);const l=m(e=>`${e.source}-${e.id}`,[]);const f=m(({item:e})=>{const t=p.get(e.source);return o(b,{entry:e,adapter:t,isSelected:s===e.id,onPress:i,showSource:a})},[p,s,i,a]);const S=y(()=>g(L,{style:r.emptyContainer,children:[o(u,{style:r.emptyText,children:c}),o(u,{style:r.emptySubtext,children:"Actions will appear here as they happen"})]}),[c]);return o(w,{keyboardShouldPersistTaps:"handled",data:h,keyExtractor:l,renderItem:f,ListEmptyComponent:S,ListHeaderComponent:x,ListFooterComponent:C,contentContainerStyle:r.listContent,showsVerticalScrollIndicator:false,removeClippedSubviews:true,maxToRenderPerBatch:15,windowSize:10,initialNumToRender:15})}const r=E.create({listContent:{flexGrow:1,paddingVertical:4},emptyContainer:{flex:1,alignItems:"center",justifyContent:"center",paddingVertical:60,paddingHorizontal:20},emptyText:{fontSize:16,fontWeight:"600",color:T.text,marginBottom:8},emptySubtext:{fontSize:13,color:T.textMuted,textAlign:"center"}});
|
package/lib/module/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";export*from"./ui/index.js";export*from"./stores/index.js";export*from"./bugCase/index.js";export*from"./sync/keyedArrays.js";export*from"./sync/valueShape.js";export*from"./sync/valuePath.js";export*from"./sync/typedEdit.js";export*from"./sync/wireBudget.js";export*from"./sync/wireForm.js";export*from"./sync/toolSyncAdapter.js";export{startSettingsSync,SettingsSync,PERSONAL_SETTING_KEYS,TEAM_SETTING_KEYS,onSettingsApplied,syncSettingsNow}from"./sync/settingsSync.js";export*from"./tools/defineTool.js";export*from"./sync/toolActionRegistry.js";export*from"./sync/toolUiBridge.js";export*from"./sync/toolScreenHeader.js";export{absoluteFill,displayValue,parseDisplayValue,getSafeAreaInsets,persistentStorage,isUsingPersistentStorage,getStorageBackendType,safeStringify,getValueType,isPrimitive,isJsonSerializable,isValidJson,getConstructorName,isEmpty,getValueSize,parseValue,formatValue,getTypeColor,truncateText,flattenObject,formatPath,loadOptionalModule,getCachedOptionalModule,setRenderCaptureProvider,getRenderCaptureProvider,registerStateSnapshotProvider,getStateSnapshotProviders,getStateSnapshotProvider,subscribeToStateSnapshotProviders,superJsonSerialize,superJsonDeserialize,realNow,getRealAppState,subscribeRealAppState,BUOY_SYNTHETIC_MARK,countBuoyListener,reloadApp,scheduleReloadApp,resolveReloadStrategy,REMOTE_RELOAD_DELAY_MS,getDevServerOrigin,Subscribable,subscriberCountNotifier,subscribeToSubscriberCountChanges,notifySubscriberCountChange,useSafeRouter,useSafePathname,useSafeSegments,useSafeGlobalSearchParams,getSafeRouter,getSafeCurrentPathname,getSafeCurrentRoute,isExpoRouterAvailable}from"./utils/index.js";export*from"./utils/toolModules.js";export{subscribeStorageWrites}from"./utils/storageWrites.js";export{registerBrowserRouter,browserRouter,subscribeBrowserNavigation}from"./utils/browserNavigation.js";export{PREVIEW_ITEM_RENDER_BYTE_LIMIT,createRestoreScope,emptyRestoreResult,failedRestore,skippedRestore,classifyPreviewItem,wontApply,unionKeys}from"./utils/snapshotProviderKit.js";export{entityColor,formatValuePreview,shallowDiffSummary}from"./utils/stateTools.js";export*from"./utils/formatting/index.js";export*from"./utils/time/index.js";export{isPlainObject as isPlainObjectUtil}from"./utils/typeHelpers.js";export*from"./icons/index.js";export*from"./clipboard/index.js";export*from"./logger/index.js";export*from"./settings/index.js";export*from"./storage/index.js";export{useSafeAreaInsets,useFilterManager,usePersistedState,resetPersistedStateCache,useChangeLog,useSubscribedValue,useEventStoreEvents,useDeviceInfo,getDeviceInfo,logDeviceInfo}from"./hooks/index.js";export{JsModal}from"./JsModal";export{night,NIGHT_LABEL_TRACKING}from"./ui/night/nightTheme.js";export{QrCodeView}from"./ui/qr/QrCodeView.js";export{NightSectionLabel,NightFootnote,NightCard,NightSeparator,NightRows,NightSwitch,NightChip,NightButton,NightSegmented,NightBadge}from"./ui/night/primitives.js";export{gameUIColors,buoyColors}from"./ui/gameUI/constants/gameUIColors.js";export{refreshGameUIColors}from"./ui/gameUI/constants/gameUIColors.js";export{macOSColors}from"./ui/gameUI/constants/macOSDesignSystemColors.js";export{dialColors}from"./ui/gameUI/constants/gameUIColors.js";export{EnvironmentIndicator}from"./env/EnvironmentIndicator";export{EnvironmentSelector}from"./env/EnvironmentSelector.js";export{EnvironmentSelectorInline}from"./env/EnvironmentSelectorInline";export{normalizeEnvironment}from"./types/types.js";export{HintsProvider,useHintsDisabled,useHintsContext}from"./context/index.js";export*from"./history/index.js";export{FeatureGate,UpgradePrompt,useFeatureGate,ProFeatureBanner,UpgradeModal,BuoyUpgradeSheet,BuoySignInCard,BuoyNeedsPlanCard,useSignInState,ProBadge,ProUpgradeModal,FreeAccountPrompt,LOGIN_COMMAND,getUseIsPro,getUseLicense,getUseTier,signOutOfBuoy,TIER_LIMITS,useLimit,resolveEffectiveTier}from"./license/index.js";export{getAccountAccess,hasAccountAccess,assertAccountAccess,subscribeAccountAccess,getUseAccountAccess,retryAccountAccess,isProNow}from"./license/licenseModule.js";export{guardToolAdapter}from"./sync/toolActionRegistry.js";export{AccountSetup}from"./license/AccountSetup";export{AccountSetupButton}from"./license/AccountSetupContent.js";
|
|
1
|
+
"use strict";export*from"./ui/index.js";export*from"./stores/index.js";export*from"./bugCase/index.js";export*from"./sync/keyedArrays.js";export*from"./sync/valueShape.js";export*from"./sync/valuePath.js";export*from"./sync/typedEdit.js";export*from"./sync/wireBudget.js";export*from"./sync/wireForm.js";export*from"./sync/toolSyncAdapter.js";export{startSettingsSync,SettingsSync,PERSONAL_SETTING_KEYS,TEAM_SETTING_KEYS,onSettingsApplied,syncSettingsNow}from"./sync/settingsSync.js";export*from"./tools/defineTool.js";export*from"./sync/toolActionRegistry.js";export*from"./sync/toolUiBridge.js";export*from"./sync/toolScreenHeader.js";export{absoluteFill,displayValue,parseDisplayValue,getSafeAreaInsets,persistentStorage,isUsingPersistentStorage,getStorageBackendType,safeStringify,getValueType,isPrimitive,isJsonSerializable,isValidJson,getConstructorName,isEmpty,getValueSize,parseValue,formatValue,getTypeColor,truncateText,flattenObject,formatPath,loadOptionalModule,getCachedOptionalModule,setRenderCaptureProvider,getRenderCaptureProvider,registerStateSnapshotProvider,getStateSnapshotProviders,getStateSnapshotProvider,subscribeToStateSnapshotProviders,superJsonSerialize,superJsonDeserialize,realNow,getRealAppState,subscribeRealAppState,BUOY_SYNTHETIC_MARK,countBuoyListener,reloadApp,scheduleReloadApp,resolveReloadStrategy,REMOTE_RELOAD_DELAY_MS,getDevServerOrigin,Subscribable,subscriberCountNotifier,subscribeToSubscriberCountChanges,notifySubscriberCountChange,useSafeRouter,useSafePathname,useSafeSegments,useSafeGlobalSearchParams,getSafeRouter,getSafeCurrentPathname,getSafeCurrentRoute,isExpoRouterAvailable}from"./utils/index.js";export*from"./utils/toolModules.js";export{subscribeStorageWrites}from"./utils/storageWrites.js";export{registerBrowserRouter,browserRouter,subscribeBrowserNavigation}from"./utils/browserNavigation.js";export{PREVIEW_ITEM_RENDER_BYTE_LIMIT,createRestoreScope,emptyRestoreResult,failedRestore,skippedRestore,classifyPreviewItem,wontApply,unionKeys}from"./utils/snapshotProviderKit.js";export{entityColor,formatValuePreview,shallowDiffSummary}from"./utils/stateTools.js";export*from"./utils/formatting/index.js";export*from"./utils/time/index.js";export{isPlainObject as isPlainObjectUtil}from"./utils/typeHelpers.js";export*from"./icons/index.js";export*from"./clipboard/index.js";export*from"./logger/index.js";export*from"./settings/index.js";export*from"./storage/index.js";export{useSafeAreaInsets,useFilterManager,usePersistedState,resetPersistedStateCache,useChangeLog,useSubscribedValue,useEventStoreEvents,useDeviceInfo,getDeviceInfo,logDeviceInfo}from"./hooks/index.js";export{JsModal}from"./JsModal";export{night,NIGHT_LABEL_TRACKING}from"./ui/night/nightTheme.js";export{QrCodeView}from"./ui/qr/QrCodeView.js";export{NightSectionLabel,NightFootnote,NightCard,NightSeparator,NightRows,NightSwitch,NightChip,NightButton,NightSegmented,NightBadge}from"./ui/night/primitives.js";export{gameUIColors,buoyColors}from"./ui/gameUI/constants/gameUIColors.js";export{refreshGameUIColors}from"./ui/gameUI/constants/gameUIColors.js";export{macOSColors}from"./ui/gameUI/constants/macOSDesignSystemColors.js";export{dialColors}from"./ui/gameUI/constants/gameUIColors.js";export{EnvironmentIndicator}from"./env/EnvironmentIndicator";export{EnvironmentSelector}from"./env/EnvironmentSelector.js";export{EnvironmentSelectorInline}from"./env/EnvironmentSelectorInline";export{normalizeEnvironment}from"./types/types.js";export{HintsProvider,useHintsDisabled,useHintsContext}from"./context/index.js";export*from"./history/index.js";export{FeatureGate,UpgradePrompt,useFeatureGate,ProFeatureBanner,UpgradeModal,BuoyUpgradeSheet,BuoySignInCard,BuoyNeedsPlanCard,useSignInState,ProBadge,ProUpgradeModal,FreeAccountPrompt,LOGIN_COMMAND,getUseIsPro,getUseLicense,getUseTier,signOutOfBuoy,TIER_LIMITS,useLimit,resolveEffectiveTier}from"./license/index.js";export{getAccountAccess,hasAccountAccess,assertAccountAccess,subscribeAccountAccess,getUseAccountAccess,retryAccountAccess,isProNow,getTeamCredential}from"./license/licenseModule.js";export{setBuoyAppId,getBuoyAppId}from"./utils/appIdentity.js";export{guardToolAdapter}from"./sync/toolActionRegistry.js";export{AccountSetup}from"./license/AccountSetup";export{AccountSetupButton}from"./license/AccountSetupContent.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{Modal as
|
|
1
|
+
"use strict";import{Modal as l,Pressable as o,ScrollView as i,StyleSheet as t,View as n}from"react-native";import{AccountSetupCard as c}from"./AccountSetupContent.js";import{jsx as e,jsxs as d}from"react/jsx-runtime";export{LOGIN_COMMAND}from"./AccountSetupContent.js";export function FreeAccountPrompt({visible:a,onClose:r}){if(!a)return null;return e(l,{visible:true,transparent:true,animationType:"fade",onRequestClose:r,children:d(n,{style:s.overlay,accessibilityViewIsModal:true,children:[e(o,{style:t.absoluteFill,onPress:r,accessible:false}),e(i,{keyboardShouldPersistTaps:"handled",style:s.frame,bounces:false,children:e(c,{onClose:r})})]})})}const s=t.create({overlay:{flex:1,backgroundColor:"rgba(0, 0, 0, 0.65)",alignItems:"center",justifyContent:"center",padding:20},frame:{width:"100%",maxWidth:368,maxHeight:"90%",flexGrow:0,borderRadius:20}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import*as t from"@buoy-gg/license";import{canInitializeAccount as l}from"./accountRuntime";let
|
|
1
|
+
"use strict";import*as t from"@buoy-gg/license";import{canInitializeAccount as l}from"./accountRuntime";let o=null;let s=null;let i=null;let a=false;function n(){if(a)return;a=true;try{const e=t;if(e){o=e.useIsPro??null;s=e.useLicense??null;i=e.useTier??null}}catch{}}export function getUseIsPro(){n();return o??(()=>false)}export function getUseLicense(){n();return s}export function getUseTier(){n();return i??(()=>"free")}export function isProNow(){try{return t.isPro?.()??false}catch{return false}}const r={status:"locked",reason:"account_required",validUntil:null};function c(){if(!l())return null;try{const e=t.LicenseManager;void e?.initialize?.();return e}catch{return null}}export function getAccountAccess(){return c()?.getAccountAccess?.()??r}export function hasAccountAccess(){return getAccountAccess().status==="admitted"}export function assertAccountAccess(){if(!hasAccountAccess())throw new Error("A verified Buoy account is required. Run npx --package=@buoy-gg/core buoy login, then reload your app.")}export function subscribeAccountAccess(e){return c()?.subscribe?.(e)??(()=>{})}export function getUseAccountAccess(){try{return t.useAccountAccess??(()=>r)}catch{return()=>r}}export async function retryAccountAccess(){const e=c();const u=e?.getState?.().licenseKey;if(u)await e.setLicenseKey(u,{force:true});else await e?.initialize?.()}export function getSignInSession(){try{return t.SessionManager}catch{return void 0}}export async function signOutOfBuoy(){try{await t.SessionManager?.signOut()}catch{}}export function getSyncCredential(){try{return t.getSyncCredential?.()??null}catch{return null}}export function getTeamCredential(){try{return t.getTeamCredential?.()??null}catch{return null}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{View as r,Text as s,StyleSheet as D,Switch as F,ScrollView as R}from"react-native";import{Settings as C,EyeOff as V,Database as W}from"../../icons/index.js";import{useState as S,useEffect as B}from"react";import{CyberpunkSectionButton as N}from"../../ui/console/CyberpunkSectionButton.js";import{devToolsStorageKeys as x}from"../../storage/devToolsStorageKeys.js";import{persistentStorage as c}from"../../utils/persistentStorage";import{macOSColors as m}from"../../ui/gameUI/constants/macOSDesignSystemColors.js";import{buoyColors as n}from"../../ui/gameUI/constants/gameUIColors.js";import{jsx as t,jsxs as d}from"react/jsx-runtime";const u=x.bubble.settings();const w=x.bubble.userPreferences();const p={showEnvironment:true,showQueryButton:true,showWifiToggle:true,showEnvButton:false,showSentryButton:false,showStorageButton:false};export function BubbleSettingsSection({onPress:i}){const[l,g]=S(p);B(()=>{y()},[]);const y=async()=>{try{const a=await c.getItem(u);if(a){g(JSON.parse(a))}}catch(a){console.error("[Buoy]","Failed to load bubble settings:",a)}};const h=()=>{return Object.values(l).filter(Boolean).length};return t(N,{id:"bubble-settings",title:"SETTINGS",subtitle:`${h()}/6 visible`,icon:C,iconColor:"#10B981",iconBackgroundColor:"rgba(16, 185, 129, 0.1)",onPress:i||(()=>{}),index:5})}export function BubbleSettingsDetail({onSettingsChange:i}){const[l,g]=S(p);const[y,h]=S(true);B(()=>{a()},[]);const a=async()=>{try{const o=await c.getItem(u);if(o){g(JSON.parse(o))}}catch(o){console.error("[Buoy]","Failed to load bubble settings:",o)}finally{h(false)}};const T=async o=>{try{await c.setItem(u,JSON.stringify(o));g(o);i?.(o)}catch(f){console.error("[Buoy]","Failed to save bubble settings:",f)}};const v=async o=>{const f={...l,[o]:!l[o]};try{const b=await c.getItem(w);const
|
|
1
|
+
"use strict";import{View as r,Text as s,StyleSheet as D,Switch as F,ScrollView as R}from"react-native";import{Settings as C,EyeOff as V,Database as W}from"../../icons/index.js";import{useState as S,useEffect as B}from"react";import{CyberpunkSectionButton as N}from"../../ui/console/CyberpunkSectionButton.js";import{devToolsStorageKeys as x}from"../../storage/devToolsStorageKeys.js";import{persistentStorage as c}from"../../utils/persistentStorage";import{macOSColors as m}from"../../ui/gameUI/constants/macOSDesignSystemColors.js";import{buoyColors as n}from"../../ui/gameUI/constants/gameUIColors.js";import{jsx as t,jsxs as d}from"react/jsx-runtime";const u=x.bubble.settings();const w=x.bubble.userPreferences();const p={showEnvironment:true,showQueryButton:true,showWifiToggle:true,showEnvButton:false,showSentryButton:false,showStorageButton:false};export function BubbleSettingsSection({onPress:i}){const[l,g]=S(p);B(()=>{y()},[]);const y=async()=>{try{const a=await c.getItem(u);if(a){g(JSON.parse(a))}}catch(a){console.error("[Buoy]","Failed to load bubble settings:",a)}};const h=()=>{return Object.values(l).filter(Boolean).length};return t(N,{id:"bubble-settings",title:"SETTINGS",subtitle:`${h()}/6 visible`,icon:C,iconColor:"#10B981",iconBackgroundColor:"rgba(16, 185, 129, 0.1)",onPress:i||(()=>{}),index:5})}export function BubbleSettingsDetail({onSettingsChange:i}){const[l,g]=S(p);const[y,h]=S(true);B(()=>{a()},[]);const a=async()=>{try{const o=await c.getItem(u);if(o){g(JSON.parse(o))}}catch(o){console.error("[Buoy]","Failed to load bubble settings:",o)}finally{h(false)}};const T=async o=>{try{await c.setItem(u,JSON.stringify(o));g(o);i?.(o)}catch(f){console.error("[Buoy]","Failed to save bubble settings:",f)}};const v=async o=>{const f={...l,[o]:!l[o]};try{const b=await c.getItem(w);const E=b?JSON.parse(b):{};const I=o.replace("show","hasSet");const z={...E,[I]:true};await c.setItem(w,JSON.stringify(z))}catch(b){console.error("[Buoy]","Failed to save user preference marker:",b)}T(f)};if(y){return t(r,{style:e.detailContainer,children:t(s,{style:e.loadingText,children:"Loading settings..."})})}const k=[{key:"showEnvironment",label:"Environment Indicator",description:"Shows current environment (dev, staging, prod)",icon:t(r,{style:[e.indicator,{backgroundColor:"#10B981"}]})},{key:"showQueryButton",label:"React Query Button",description:"Opens React Query dev tools",icon:t(r,{style:[e.indicator,{backgroundColor:"#F59E0B"}]})},{key:"showWifiToggle",label:"WiFi",description:"Toggle WiFi for testing offline scenarios",icon:t(r,{style:[e.indicator,{backgroundColor:"#8B5CF6"}]})},{key:"showEnvButton",label:"Environment Variables",description:"View and check environment variables",icon:t(C,{size:16,color:"#10B981"})},{key:"showSentryButton",label:"Sentry Events",description:"View captured Sentry events and errors",icon:t(r,{style:[e.indicator,{backgroundColor:"#a855f7"}]})},{key:"showStorageButton",label:"Storage Browser",description:"Browse and inspect AsyncStorage data",icon:t(W,{size:16,color:"#3B82F6"})}];return t(r,{style:e.detailContainer,children:d(R,{keyboardShouldPersistTaps:"handled",showsVerticalScrollIndicator:false,contentContainerStyle:e.scrollContent,"sentry-label":"ignore bubble settings scroll",children:[d(r,{style:e.header,children:[t(s,{style:e.headerTitle,children:"Developer Tools Settings"}),t(s,{style:e.headerDescription,children:"Configure bubble button visibility"})]}),t(r,{style:e.sectionDivider,children:t(s,{style:e.sectionTitle,children:"Bubble Button Visibility"})}),t(r,{style:e.settingsList,children:k.map(o=>d(r,{style:e.settingItem,children:[t(r,{style:e.settingIconContainer,children:o.icon}),d(r,{style:e.settingContent,children:[t(s,{style:e.settingLabel,children:o.label}),t(s,{style:e.settingDescription,children:o.description})]}),t(F,{"sentry-label":"ignore bubble settings section",value:l[o.key],onValueChange:()=>v(o.key),trackColor:{false:"#4B5563",true:"#10B981"},thumbColor:l[o.key]?"#fff":n.textSecondary})]},o.key))}),d(r,{style:e.footer,children:[d(r,{style:e.noteContainer,children:[t(V,{size:16,color:n.textSecondary}),t(s,{style:e.noteText,children:"User status indicator is always visible and cannot be disabled"})]}),t(s,{style:e.restartNote,children:"Changes are saved automatically and will persist across app restarts"})]})]})})}export async function getBubbleVisibilitySettings(){try{const i=await c.getItem(u);if(i){return JSON.parse(i)}}catch(i){console.error("[Buoy]","Failed to load bubble settings:",i)}return p}const e=D.create({scrollContent:{flexGrow:1},sectionCard:{backgroundColor:n.input,borderRadius:8,padding:16,flexDirection:"row",alignItems:"center",marginBottom:12},iconContainer:{width:36,height:36,borderRadius:8,backgroundColor:"rgba(16, 185, 129, 0.1)",justifyContent:"center",alignItems:"center",marginRight:12},textContainer:{flex:1},title:{color:n.text,fontSize:14,fontWeight:"600",marginBottom:2},subtitle:{color:n.textSecondary,fontSize:12},chevron:{color:m.text.icon,fontSize:20},detailContainer:{flex:1,backgroundColor:n.card},loadingText:{color:n.textSecondary,fontSize:14,textAlign:"center",marginTop:20},header:{padding:16,borderBottomWidth:1,borderBottomColor:"rgba(128, 128, 128, 0.2)"},headerTitle:{color:n.text,fontSize:16,fontWeight:"600",marginBottom:4},headerDescription:{color:n.textSecondary,fontSize:12},settingsList:{padding:16},settingItem:{flexDirection:"row",alignItems:"center",paddingVertical:12,borderBottomWidth:1,borderBottomColor:"rgba(128, 128, 128, 0.1)"},settingIconContainer:{width:32,height:32,justifyContent:"center",alignItems:"center",marginRight:12},settingContent:{flex:1,marginRight:12},settingLabel:{color:n.text,fontSize:14,fontWeight:"500",marginBottom:2},settingDescription:{color:m.text.icon,fontSize:11},indicator:{width:8,height:8,borderRadius:4},footer:{padding:16,borderTopWidth:1,borderTopColor:"rgba(128, 128, 128, 0.2)"},noteContainer:{flexDirection:"row",alignItems:"center",gap:8,marginBottom:8},noteText:{color:n.textSecondary,fontSize:12,flex:1},restartNote:{color:m.text.icon,fontSize:11,fontStyle:"italic"},sectionDivider:{paddingHorizontal:16,paddingVertical:8,marginTop:8,borderTopWidth:1,borderTopColor:"rgba(128, 128, 128, 0.12)"},sectionTitle:{color:n.textSecondary,fontSize:12,fontWeight:"600",letterSpacing:.5,textTransform:"uppercase"}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";export const devToolsStorageKeys={base:"@react_buoy",bubble:{root:()=>`${devToolsStorageKeys.base}_bubble`,settings:()=>`${devToolsStorageKeys.bubble.root()}_settings`,userPreferences:()=>`${devToolsStorageKeys.bubble.root()}_user_preferences`,position:()=>`${devToolsStorageKeys.bubble.root()}_position`},modal:{root:()=>`${devToolsStorageKeys.base}_modal`,state:()=>`${devToolsStorageKeys.modal.root()}_state`,position:()=>`${devToolsStorageKeys.modal.root()}_position`,dimensions:()=>`${devToolsStorageKeys.modal.root()}_dimensions`,hintAcknowledged:()=>`${devToolsStorageKeys.modal.root()}_hint_acknowledged`},custom:e=>{const o=`${devToolsStorageKeys.base}_custom_${e}`;return{root:()=>o,modal:()=>`${o}_modal`,settings:()=>`${o}_settings`,key:t=>`${o}_${t}`}},askBuoy:{root:()=>`${devToolsStorageKeys.base}_ask_buoy`,model:()=>`${devToolsStorageKeys.askBuoy.root()}_model`},settings:{root:()=>`${devToolsStorageKeys.base}_settings`,theme:()=>`${devToolsStorageKeys.settings.root()}_theme`,preferences:()=>`${devToolsStorageKeys.settings.root()}_preferences`,wifiEnabled:()=>`${devToolsStorageKeys.settings.root()}_wifi_enabled`,global:()=>`${devToolsStorageKeys.settings.root()}_global`,activeTab:()=>`${devToolsStorageKeys.settings.root()}_active_tab`,modalOpen:()=>`${devToolsStorageKeys.settings.root()}_modal_open`},dial:{root:()=>`${devToolsStorageKeys.base}_dial`,isOpen:()=>`${devToolsStorageKeys.dial.root()}_is_open`,usage:()=>`${devToolsStorageKeys.dial.root()}_usage`},clipboard:{root:()=>`${devToolsStorageKeys.base}_clipboard`,hintAcknowledged:()=>`${devToolsStorageKeys.clipboard.root()}_hint_acknowledged`},env:{root:()=>`${devToolsStorageKeys.base}_env`,modal:()=>`${devToolsStorageKeys.env.root()}_modal`,currentEnv:()=>`${devToolsStorageKeys.env.root()}_current`,overrides:()=>`${devToolsStorageKeys.env.root()}_overrides`},sentry:{root:()=>`${devToolsStorageKeys.base}_sentry`,modal:()=>`${devToolsStorageKeys.sentry.root()}_modal`,filters:()=>`${devToolsStorageKeys.sentry.root()}_filters`,preferences:()=>`${devToolsStorageKeys.sentry.root()}_preferences`},storage:{root:()=>`${devToolsStorageKeys.base}_storage`,modal:()=>`${devToolsStorageKeys.storage.root()}_modal`,eventsModal:()=>`${devToolsStorageKeys.storage.root()}_events_modal`,filters:()=>`${devToolsStorageKeys.storage.root()}_filters`,eventFilters:()=>`${devToolsStorageKeys.storage.root()}_event_filters`,keyFilters:()=>`${devToolsStorageKeys.storage.root()}_key_filters`,pinnedKeys:()=>`${devToolsStorageKeys.storage.root()}_pinned_keys`,preferences:()=>`${devToolsStorageKeys.storage.root()}_preferences`,activeTab:()=>`${devToolsStorageKeys.storage.root()}_active_tab`,isMonitoring:()=>`${devToolsStorageKeys.storage.root()}_is_monitoring`,diffViewerMode:()=>`${devToolsStorageKeys.storage.root()}_diff_viewer_mode`},clock:{root:()=>`${devToolsStorageKeys.base}_clock`,state:()=>`${devToolsStorageKeys.clock.root()}_state`},bugLinks:{root:()=>`${devToolsStorageKeys.base}_bug_links`,links:()=>`${devToolsStorageKeys.bugLinks.root()}_links`,settings:()=>`${devToolsStorageKeys.bugLinks.root()}_settings`,loaded:()=>`${devToolsStorageKeys.bugLinks.root()}_loaded`},permissions:{root:()=>`${devToolsStorageKeys.base}_permissions`,state:()=>`${devToolsStorageKeys.permissions.root()}_state`},lifecycle:{root:()=>`${devToolsStorageKeys.base}_lifecycle`,state:()=>`${devToolsStorageKeys.lifecycle.root()}_state`},location:{root:()=>`${devToolsStorageKeys.base}_location`,state:()=>`${devToolsStorageKeys.location.root()}_state`},timeMachine:{root:()=>`${devToolsStorageKeys.base}_time_machine`,diffViewerMode:()=>`${devToolsStorageKeys.timeMachine.root()}_diff_viewer_mode`,armedPoint:()=>`${devToolsStorageKeys.timeMachine.root()}_armed_point`,barReloadMode:()=>`${devToolsStorageKeys.timeMachine.root()}_bar_reload_mode`,disabledSources:()=>`${devToolsStorageKeys.timeMachine.root()}_disabled_sources`},scenarios:{root:()=>`${devToolsStorageKeys.base}_scenarios`,modal:()=>`${devToolsStorageKeys.scenarios.root()}_modal`,library:()=>`${devToolsStorageKeys.scenarios.root()}_library`,active:()=>`${devToolsStorageKeys.scenarios.root()}_active`},reactQuery:{root:()=>`${devToolsStorageKeys.base}_rq`,modal:()=>`${devToolsStorageKeys.reactQuery.root()}_modal`,browserModal:()=>`${devToolsStorageKeys.reactQuery.root()}_browser_modal`,mutationModal:()=>`${devToolsStorageKeys.reactQuery.root()}_mutation_modal`,filters:()=>`${devToolsStorageKeys.reactQuery.root()}_filters`,ignoredPatterns:()=>`${devToolsStorageKeys.reactQuery.root()}_ignored_patterns`,includedPatterns:()=>`${devToolsStorageKeys.reactQuery.root()}_included_patterns`,preferences:()=>`${devToolsStorageKeys.reactQuery.root()}_preferences`},network:{root:()=>`${devToolsStorageKeys.base}_network`,modal:()=>`${devToolsStorageKeys.network.root()}_modal`,copyModal:()=>`${devToolsStorageKeys.network.root()}_copy_modal`,filters:()=>`${devToolsStorageKeys.network.root()}_filters`,ignoredDomains:()=>`${devToolsStorageKeys.network.root()}_ignored_domains`,ignoredUrls:()=>`${devToolsStorageKeys.network.root()}_ignored_urls`,preferences:()=>`${devToolsStorageKeys.network.root()}_preferences`,copyOptions:()=>`${devToolsStorageKeys.network.root()}_copy_options`,saved:()=>`${devToolsStorageKeys.network.root()}_saved`,overrides:()=>`${devToolsStorageKeys.network.root()}_overrides`},routeEvents:{root:()=>`${devToolsStorageKeys.base}_route_events`,modal:()=>`${devToolsStorageKeys.routeEvents.root()}_modal`,eventFilters:()=>`${devToolsStorageKeys.routeEvents.root()}_event_filters`,activeTab:()=>`${devToolsStorageKeys.routeEvents.root()}_active_tab`,isMonitoring:()=>`${devToolsStorageKeys.routeEvents.root()}_is_monitoring`,detailView:()=>`${devToolsStorageKeys.routeEvents.root()}_detail_view`,diffViewerMode:()=>`${devToolsStorageKeys.routeEvents.root()}_diff_viewer_mode`},highlightUpdates:{root:()=>`${devToolsStorageKeys.base}_highlight_updates`,modal:()=>`${devToolsStorageKeys.highlightUpdates.root()}_modal`,isTracking:()=>`${devToolsStorageKeys.highlightUpdates.root()}_is_tracking`,filters:()=>`${devToolsStorageKeys.highlightUpdates.root()}_filters`,settings:()=>`${devToolsStorageKeys.highlightUpdates.root()}_settings`,copySettings:()=>`${devToolsStorageKeys.highlightUpdates.root()}_copy_settings`},benchmark:{root:()=>`${devToolsStorageKeys.base}_benchmark`,modal:()=>`${devToolsStorageKeys.benchmark.root()}_modal`,isRecording:()=>`${devToolsStorageKeys.benchmark.root()}_is_recording`,activeTab:()=>`${devToolsStorageKeys.benchmark.root()}_active_tab`,settings:()=>`${devToolsStorageKeys.benchmark.root()}_settings`,selectedReports:()=>`${devToolsStorageKeys.benchmark.root()}_selected_reports`},debugBorders:{root:()=>`${devToolsStorageKeys.base}_debug_borders`,infoModal:()=>`${devToolsStorageKeys.debugBorders.root()}_info_modal`},events:{root:()=>`${devToolsStorageKeys.base}_events`,modal:()=>`${devToolsStorageKeys.events.root()}_modal`,enabledSources:()=>`${devToolsStorageKeys.events.root()}_enabled_sources`,isCapturing:()=>`${devToolsStorageKeys.events.root()}_is_capturing`,pausedAt:()=>`${devToolsStorageKeys.events.root()}_paused_at`,copySettings:()=>`${devToolsStorageKeys.events.root()}_copy_settings`},sync:{root:()=>`${devToolsStorageKeys.base}_sync`,deviceId:()=>`${devToolsStorageKeys.sync.root()}_device_id`}};const r=["@devtools","@dev_tools_","@modal_state_","@react_query_browser_modal","@react_query_modal","@react_query_mutation_modal","@sentry_logs_modal","@floating_rn_better_dev_tools_","@floating_tools_","@apphost_","@bubble_settings_","@env_vars_modal","@storage_modal","@floating_@devtools_","dev_last_route"];export function isDevToolsStorageKey(e){if(!e)return false;for(const o of["@AsyncStorage:","CapacitorStorage."]){if(e.startsWith(o))e=e.slice(o.length)}if(e.startsWith(devToolsStorageKeys.base)){return true}if(e.startsWith("buoy-")){return true}if(e.startsWith("@buoy")){return true}if(/^(?:buoy[._]|__buoy|react-buoy)/i.test(e)){return true}for(const o of r){if(e.startsWith(o)){return true}}return false}export function filterOutDevToolsKeys(e){return e.filter(o=>!isDevToolsStorageKey(o))}export function getAllDevToolsStorageKeys(){const e=[];e.push(devToolsStorageKeys.bubble.settings());e.push(devToolsStorageKeys.bubble.userPreferences());e.push(devToolsStorageKeys.bubble.position());e.push(devToolsStorageKeys.modal.state());e.push(devToolsStorageKeys.modal.position());e.push(devToolsStorageKeys.modal.dimensions());e.push(devToolsStorageKeys.settings.theme());e.push(devToolsStorageKeys.settings.preferences());e.push(devToolsStorageKeys.env.currentEnv());e.push(devToolsStorageKeys.env.overrides());e.push(devToolsStorageKeys.sentry.filters());e.push(devToolsStorageKeys.sentry.preferences());e.push(devToolsStorageKeys.storage.filters());e.push(devToolsStorageKeys.storage.preferences());e.push(devToolsStorageKeys.reactQuery.filters());e.push(devToolsStorageKeys.reactQuery.preferences());return e}
|
|
1
|
+
"use strict";export const devToolsStorageKeys={base:"@react_buoy",bubble:{root:()=>`${devToolsStorageKeys.base}_bubble`,settings:()=>`${devToolsStorageKeys.bubble.root()}_settings`,userPreferences:()=>`${devToolsStorageKeys.bubble.root()}_user_preferences`,position:()=>`${devToolsStorageKeys.bubble.root()}_position`},modal:{root:()=>`${devToolsStorageKeys.base}_modal`,state:()=>`${devToolsStorageKeys.modal.root()}_state`,position:()=>`${devToolsStorageKeys.modal.root()}_position`,dimensions:()=>`${devToolsStorageKeys.modal.root()}_dimensions`,hintAcknowledged:()=>`${devToolsStorageKeys.modal.root()}_hint_acknowledged`},custom:e=>{const o=`${devToolsStorageKeys.base}_custom_${e}`;return{root:()=>o,modal:()=>`${o}_modal`,settings:()=>`${o}_settings`,key:t=>`${o}_${t}`}},askBuoy:{root:()=>`${devToolsStorageKeys.base}_ask_buoy`,model:()=>`${devToolsStorageKeys.askBuoy.root()}_model`},settings:{root:()=>`${devToolsStorageKeys.base}_settings`,theme:()=>`${devToolsStorageKeys.settings.root()}_theme`,preferences:()=>`${devToolsStorageKeys.settings.root()}_preferences`,wifiEnabled:()=>`${devToolsStorageKeys.settings.root()}_wifi_enabled`,global:()=>`${devToolsStorageKeys.settings.root()}_global`,activeTab:()=>`${devToolsStorageKeys.settings.root()}_active_tab`,modalOpen:()=>`${devToolsStorageKeys.settings.root()}_modal_open`},dial:{root:()=>`${devToolsStorageKeys.base}_dial`,isOpen:()=>`${devToolsStorageKeys.dial.root()}_is_open`,usage:()=>`${devToolsStorageKeys.dial.root()}_usage`},clipboard:{root:()=>`${devToolsStorageKeys.base}_clipboard`,hintAcknowledged:()=>`${devToolsStorageKeys.clipboard.root()}_hint_acknowledged`},env:{root:()=>`${devToolsStorageKeys.base}_env`,modal:()=>`${devToolsStorageKeys.env.root()}_modal`,currentEnv:()=>`${devToolsStorageKeys.env.root()}_current`,overrides:()=>`${devToolsStorageKeys.env.root()}_overrides`},sentry:{root:()=>`${devToolsStorageKeys.base}_sentry`,modal:()=>`${devToolsStorageKeys.sentry.root()}_modal`,filters:()=>`${devToolsStorageKeys.sentry.root()}_filters`,preferences:()=>`${devToolsStorageKeys.sentry.root()}_preferences`},storage:{root:()=>`${devToolsStorageKeys.base}_storage`,modal:()=>`${devToolsStorageKeys.storage.root()}_modal`,eventsModal:()=>`${devToolsStorageKeys.storage.root()}_events_modal`,filters:()=>`${devToolsStorageKeys.storage.root()}_filters`,eventFilters:()=>`${devToolsStorageKeys.storage.root()}_event_filters`,keyFilters:()=>`${devToolsStorageKeys.storage.root()}_key_filters`,pinnedKeys:()=>`${devToolsStorageKeys.storage.root()}_pinned_keys`,preferences:()=>`${devToolsStorageKeys.storage.root()}_preferences`,activeTab:()=>`${devToolsStorageKeys.storage.root()}_active_tab`,isMonitoring:()=>`${devToolsStorageKeys.storage.root()}_is_monitoring`,diffViewerMode:()=>`${devToolsStorageKeys.storage.root()}_diff_viewer_mode`},clock:{root:()=>`${devToolsStorageKeys.base}_clock`,state:()=>`${devToolsStorageKeys.clock.root()}_state`},bugLinks:{root:()=>`${devToolsStorageKeys.base}_bug_links`,links:()=>`${devToolsStorageKeys.bugLinks.root()}_links`,settings:()=>`${devToolsStorageKeys.bugLinks.root()}_settings`,loaded:()=>`${devToolsStorageKeys.bugLinks.root()}_loaded`},permissions:{root:()=>`${devToolsStorageKeys.base}_permissions`,state:()=>`${devToolsStorageKeys.permissions.root()}_state`},lifecycle:{root:()=>`${devToolsStorageKeys.base}_lifecycle`,state:()=>`${devToolsStorageKeys.lifecycle.root()}_state`},location:{root:()=>`${devToolsStorageKeys.base}_location`,state:()=>`${devToolsStorageKeys.location.root()}_state`},timeMachine:{root:()=>`${devToolsStorageKeys.base}_time_machine`,diffViewerMode:()=>`${devToolsStorageKeys.timeMachine.root()}_diff_viewer_mode`,armedPoint:()=>`${devToolsStorageKeys.timeMachine.root()}_armed_point`,barReloadMode:()=>`${devToolsStorageKeys.timeMachine.root()}_bar_reload_mode`,disabledSources:()=>`${devToolsStorageKeys.timeMachine.root()}_disabled_sources`},scenarios:{root:()=>`${devToolsStorageKeys.base}_scenarios`,modal:()=>`${devToolsStorageKeys.scenarios.root()}_modal`,library:()=>`${devToolsStorageKeys.scenarios.root()}_library`,active:()=>`${devToolsStorageKeys.scenarios.root()}_active`,team:()=>`${devToolsStorageKeys.scenarios.root()}_team`},reactQuery:{root:()=>`${devToolsStorageKeys.base}_rq`,modal:()=>`${devToolsStorageKeys.reactQuery.root()}_modal`,browserModal:()=>`${devToolsStorageKeys.reactQuery.root()}_browser_modal`,mutationModal:()=>`${devToolsStorageKeys.reactQuery.root()}_mutation_modal`,filters:()=>`${devToolsStorageKeys.reactQuery.root()}_filters`,ignoredPatterns:()=>`${devToolsStorageKeys.reactQuery.root()}_ignored_patterns`,includedPatterns:()=>`${devToolsStorageKeys.reactQuery.root()}_included_patterns`,preferences:()=>`${devToolsStorageKeys.reactQuery.root()}_preferences`},network:{root:()=>`${devToolsStorageKeys.base}_network`,modal:()=>`${devToolsStorageKeys.network.root()}_modal`,copyModal:()=>`${devToolsStorageKeys.network.root()}_copy_modal`,filters:()=>`${devToolsStorageKeys.network.root()}_filters`,ignoredDomains:()=>`${devToolsStorageKeys.network.root()}_ignored_domains`,ignoredUrls:()=>`${devToolsStorageKeys.network.root()}_ignored_urls`,preferences:()=>`${devToolsStorageKeys.network.root()}_preferences`,copyOptions:()=>`${devToolsStorageKeys.network.root()}_copy_options`,saved:()=>`${devToolsStorageKeys.network.root()}_saved`,overrides:()=>`${devToolsStorageKeys.network.root()}_overrides`},routeEvents:{root:()=>`${devToolsStorageKeys.base}_route_events`,modal:()=>`${devToolsStorageKeys.routeEvents.root()}_modal`,eventFilters:()=>`${devToolsStorageKeys.routeEvents.root()}_event_filters`,activeTab:()=>`${devToolsStorageKeys.routeEvents.root()}_active_tab`,isMonitoring:()=>`${devToolsStorageKeys.routeEvents.root()}_is_monitoring`,detailView:()=>`${devToolsStorageKeys.routeEvents.root()}_detail_view`,diffViewerMode:()=>`${devToolsStorageKeys.routeEvents.root()}_diff_viewer_mode`},highlightUpdates:{root:()=>`${devToolsStorageKeys.base}_highlight_updates`,modal:()=>`${devToolsStorageKeys.highlightUpdates.root()}_modal`,isTracking:()=>`${devToolsStorageKeys.highlightUpdates.root()}_is_tracking`,filters:()=>`${devToolsStorageKeys.highlightUpdates.root()}_filters`,settings:()=>`${devToolsStorageKeys.highlightUpdates.root()}_settings`,copySettings:()=>`${devToolsStorageKeys.highlightUpdates.root()}_copy_settings`},benchmark:{root:()=>`${devToolsStorageKeys.base}_benchmark`,modal:()=>`${devToolsStorageKeys.benchmark.root()}_modal`,isRecording:()=>`${devToolsStorageKeys.benchmark.root()}_is_recording`,activeTab:()=>`${devToolsStorageKeys.benchmark.root()}_active_tab`,settings:()=>`${devToolsStorageKeys.benchmark.root()}_settings`,selectedReports:()=>`${devToolsStorageKeys.benchmark.root()}_selected_reports`},debugBorders:{root:()=>`${devToolsStorageKeys.base}_debug_borders`,infoModal:()=>`${devToolsStorageKeys.debugBorders.root()}_info_modal`},events:{root:()=>`${devToolsStorageKeys.base}_events`,modal:()=>`${devToolsStorageKeys.events.root()}_modal`,enabledSources:()=>`${devToolsStorageKeys.events.root()}_enabled_sources`,isCapturing:()=>`${devToolsStorageKeys.events.root()}_is_capturing`,pausedAt:()=>`${devToolsStorageKeys.events.root()}_paused_at`,copySettings:()=>`${devToolsStorageKeys.events.root()}_copy_settings`},sync:{root:()=>`${devToolsStorageKeys.base}_sync`,deviceId:()=>`${devToolsStorageKeys.sync.root()}_device_id`}};const r=["@devtools","@dev_tools_","@modal_state_","@react_query_browser_modal","@react_query_modal","@react_query_mutation_modal","@sentry_logs_modal","@floating_rn_better_dev_tools_","@floating_tools_","@apphost_","@bubble_settings_","@env_vars_modal","@storage_modal","@floating_@devtools_","dev_last_route"];export function isDevToolsStorageKey(e){if(!e)return false;for(const o of["@AsyncStorage:","CapacitorStorage."]){if(e.startsWith(o))e=e.slice(o.length)}if(e.startsWith(devToolsStorageKeys.base)){return true}if(e.startsWith("buoy-")){return true}if(e.startsWith("@buoy")){return true}if(/^(?:buoy[._]|__buoy|react-buoy)/i.test(e)){return true}for(const o of r){if(e.startsWith(o)){return true}}return false}export function filterOutDevToolsKeys(e){return e.filter(o=>!isDevToolsStorageKey(o))}export function getAllDevToolsStorageKeys(){const e=[];e.push(devToolsStorageKeys.bubble.settings());e.push(devToolsStorageKeys.bubble.userPreferences());e.push(devToolsStorageKeys.bubble.position());e.push(devToolsStorageKeys.modal.state());e.push(devToolsStorageKeys.modal.position());e.push(devToolsStorageKeys.modal.dimensions());e.push(devToolsStorageKeys.settings.theme());e.push(devToolsStorageKeys.settings.preferences());e.push(devToolsStorageKeys.env.currentEnv());e.push(devToolsStorageKeys.env.overrides());e.push(devToolsStorageKeys.sentry.filters());e.push(devToolsStorageKeys.sentry.preferences());e.push(devToolsStorageKeys.storage.filters());e.push(devToolsStorageKeys.storage.preferences());e.push(devToolsStorageKeys.reactQuery.filters());e.push(devToolsStorageKeys.reactQuery.preferences());return e}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{useCallback as l,useRef as u,useState as
|
|
1
|
+
"use strict";import{useCallback as l,useRef as u,useState as f}from"react";import{ScrollView as m,StyleSheet as x,View as y}from"react-native";import{jsx as S}from"react/jsx-runtime";const p=5;const E=300;export function useChipTap(){const[e,n]=f(false);const o=u(0);const r=u(0);const s=l(t=>{o.current=t.nativeEvent.pageX;r.current=t.nativeEvent.pageY},[]);const d=l(t=>{if(!t)return true;const g=Math.abs(t.nativeEvent.pageX-o.current);const h=Math.abs(t.nativeEvent.pageY-r.current);return!(g>p||h>p||e)},[e]);const i=l(()=>{setTimeout(()=>n(false),E)},[]);const a=l(()=>n(true),[]);return{scrollProps:{onScrollBeginDrag:a,onScrollEndDrag:i,onMomentumScrollBegin:a,onMomentumScrollEnd:i},onTouchStart:s,isTap:d}}export function ChipStrip({children:e,scrollProps:n,sentryLabel:o,style:r,contentStyle:s}){return S(y,{style:[c.container,r],children:S(m,{keyboardShouldPersistTaps:"handled","sentry-label":o,horizontal:true,showsHorizontalScrollIndicator:false,style:c.scrollView,contentContainerStyle:[c.scrollContent,s],...n,children:e})})}const c=x.create({container:{flex:1,minWidth:0},scrollView:{flex:1},scrollContent:{flexDirection:"row",alignItems:"center",gap:8,paddingHorizontal:4,paddingVertical:4,flexGrow:1}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{useState as p}from"react";import{View as n,Text as a,StyleSheet as R,ScrollView as
|
|
1
|
+
"use strict";import{useState as p}from"react";import{View as n,Text as a,StyleSheet as R,ScrollView as z,TouchableOpacity as y,TextInput as D}from"react-native";import{Search as O,Edit3 as W,Check as A,X as F}from"../../icons/index.js";import{gameUIColors as o}from"../gameUI/index.js";import{CopyButton as J}from"./CopyButton.js";import{monoFont as P}from"../fonts.js";import{jsx as e,jsxs as l}from"react/jsx-runtime";export function DataInspector({data:c,mode:r="view",syntax:i="json",theme:f="dark",collapsible:d=true,searchable:h=true,onEdit:k,style:v,title:m}){const[g,E]=p("");const[s,x]=p(false);const[w,b]=p("");const B=()=>{if(i==="json"){try{return JSON.stringify(c,null,2)}catch{return String(c)}}return String(c)};const I=u=>{if(!g)return u;const V=u.split(new RegExp(`(${g})`,"gi"));return V.map((S,H)=>{if(S.toLowerCase()===g.toLowerCase()){return e(a,{style:t.highlight,children:S},H)}return S})};const T=()=>{if(!s){b(B());x(true)}else{try{const u=i==="json"?JSON.parse(w):w;k?.(u);x(false)}catch(u){console.error("[Buoy]","Failed to parse edited data",u)}}};const j=()=>{x(false);b("")};const C=B();return l(n,{style:[t.container,v],children:[(m||h||r==="edit")&&l(n,{style:t.header,children:[m&&e(a,{style:t.title,children:m}),l(n,{style:t.controls,children:[h&&!s&&l(n,{style:t.searchContainer,children:[e(O,{size:12,color:o.secondary}),e(D,{style:t.searchInput,placeholder:"Search...",placeholderTextColor:o.tertiary,value:g,onChangeText:E})]}),r==="edit"&&e(y,{style:t.editButton,onPress:s?T:()=>T(),children:s?e(A,{size:14,color:o.success}):e(W,{size:14,color:o.primary})}),s&&e(y,{style:t.cancelButton,onPress:j,children:e(F,{size:14,color:o.error})}),!s&&e(J,{value:C,size:12})]})]}),e(z,{style:t.scrollView,horizontal:true,showsHorizontalScrollIndicator:false,children:e(z,{keyboardShouldPersistTaps:"handled",showsVerticalScrollIndicator:false,children:s?e(D,{style:t.editor,value:w,onChangeText:b,multiline:true,autoCapitalize:"none",autoCorrect:false}):e(a,{style:t.codeText,children:g?I(C):C})})})]})}DataInspector.Json=function c({data:r,searchable:i,style:f}){return e(DataInspector,{data:r,syntax:"json",mode:"view",searchable:i,style:f})};DataInspector.Editable=function c({data:r,onSave:i,style:f}){return e(DataInspector,{data:r,mode:"edit",onEdit:i,style:f})};DataInspector.Diff=function c({oldData:r,newData:i,style:f}){const[d,h]=p("diff");return l(n,{style:f,children:[l(n,{style:t.diffControls,children:[e(y,{style:[t.diffButton,d==="old"&&t.diffButtonActive],onPress:()=>h("old"),children:e(a,{style:t.diffButtonText,children:"Old"})}),e(y,{style:[t.diffButton,d==="new"&&t.diffButtonActive],onPress:()=>h("new"),children:e(a,{style:t.diffButtonText,children:"New"})}),e(y,{style:[t.diffButton,d==="diff"&&t.diffButtonActive],onPress:()=>h("diff"),children:e(a,{style:t.diffButtonText,children:"Diff"})})]}),d==="old"&&e(DataInspector,{data:r,searchable:false}),d==="new"&&e(DataInspector,{data:i,searchable:false}),d==="diff"&&l(n,{style:t.diffContainer,children:[l(n,{style:t.diffPane,children:[e(a,{style:t.diffPaneTitle,children:"Old"}),e(DataInspector,{data:r,searchable:false})]}),l(n,{style:t.diffPane,children:[e(a,{style:t.diffPaneTitle,children:"New"}),e(DataInspector,{data:i,searchable:false})]})]})]})};const t=R.create({container:{backgroundColor:o.background,borderRadius:8,overflow:"hidden"},header:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",padding:8,borderBottomWidth:1,borderBottomColor:o.border+"20"},title:{fontSize:12,fontWeight:"600",color:o.text},controls:{flexDirection:"row",gap:8},searchContainer:{flexDirection:"row",alignItems:"center",backgroundColor:o.panel,borderRadius:4,paddingHorizontal:8,gap:4},searchInput:{fontSize:11,color:o.text,minWidth:100,paddingVertical:4},editButton:{padding:4,borderRadius:4,backgroundColor:o.primary+"20"},cancelButton:{padding:4,borderRadius:4,backgroundColor:o.error+"20"},scrollView:{maxHeight:300},codeText:{fontFamily:P,fontSize:11,color:o.text,padding:12,lineHeight:16},editor:{fontFamily:P,fontSize:11,color:o.text,padding:12,lineHeight:16,minHeight:200},highlight:{backgroundColor:o.warning+"40",color:o.text},diffControls:{flexDirection:"row",gap:8,padding:8},diffButton:{paddingHorizontal:12,paddingVertical:4,borderRadius:4,backgroundColor:o.panel},diffButtonActive:{backgroundColor:o.primary},diffButtonText:{fontSize:11,color:o.text,fontWeight:"500"},diffContainer:{flexDirection:"row",gap:8},diffPane:{flex:1},diffPaneTitle:{fontSize:10,fontWeight:"600",color:o.secondary,padding:8,textTransform:"uppercase"}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{useState as b}from"react";import{View as i,Text as c,StyleSheet as w,ScrollView as y,TouchableOpacity as x}from"react-native";import{gameUIColors as o}from"../gameUI/index.js";import{ModalHeader as g}from"./ModalHeader.js";import{CopyButton as C}from"./CopyButton.js";import{monoFont as S}from"../fonts.js";import{jsx as t,jsxs as d}from"react/jsx-runtime";export function DetailView({children:u,style:r}){return t(i,{style:[e.container,r],children:u})}DetailView.Header=function u({title:r,subtitle:n,onClose:l,onBack:s,actions:a}){return d(g,{children:[t(g.Navigation,{onBack:s,onClose:l}),t(g.Content,{title:r,subtitle:n}),a&&t(g.Actions,{children:a})]})};DetailView.Section=function u({title:r,icon:n,children:l,defaultOpen:s=true,collapsible:a=true,style:f,badge:m}){const[h,p]=b(s);if(!a){return d(i,{style:[e.section,f],children:[d(i,{style:e.sectionHeader,children:[n&&t(n,{size:14,color:o.primary}),t(c,{style:e.sectionTitle,children:r}),m!==void 0&&t(i,{style:e.sectionBadge,children:t(c,{style:e.sectionBadgeText,children:m})})]}),t(i,{style:e.sectionContent,children:l})]})}return d(i,{style:[e.section,f],children:[t(x,{style:e.sectionHeaderTouchable,onPress:()=>p(!h),children:d(i,{style:e.sectionHeader,children:[n&&t(n,{size:14,color:o.primary}),t(c,{style:e.sectionTitle,children:r}),m!==void 0&&t(i,{style:e.sectionBadge,children:t(c,{style:e.sectionBadgeText,children:m})})]})}),h&&t(i,{style:e.sectionContent,children:l})]})};DetailView.Row=function u({label:r,value:n,copyable:l=false,style:s,labelStyle:a,valueStyle:f}){const m=typeof n==="string"||typeof n==="number"?String(n):null;return d(i,{style:[e.row,s],children:[t(c,{style:[e.rowLabel,a],children:r}),d(i,{style:e.rowValueContainer,children:[typeof n==="string"||typeof n==="number"?t(c,{style:[e.rowValue,f],numberOfLines:1,children:n}):n,l&&m&&t(C,{value:m,size:12})]})]})};DetailView.DataSection=function u({title:r,data:n,icon:l,defaultOpen:s=false,style:a}){return t(DetailView.Section,{title:r,icon:l,defaultOpen:s,style:a,children:t(i,{style:e.dataContainer,children:t(y,{horizontal:true,showsHorizontalScrollIndicator:false,children:t(c,{style:e.dataText,children:JSON.stringify(n,null,2)})})})})};DetailView.StatusBar=function u({status:r,message:n,style:l}){const s={success:o.success,error:o.error,warning:o.warning,pending:o.warning,info:o.primary};const a=s[r];return d(i,{style:[e.statusBar,{backgroundColor:a+"20",borderColor:a+"40"},l],children:[t(i,{style:[e.statusDot,{backgroundColor:a}]}),n&&t(c,{style:[e.statusMessage,{color:a}],children:n})]})};DetailView.Timeline=function u({items:r,style:n}){return t(i,{style:[e.timeline,n],children:r.map((l,s)=>d(i,{style:e.timelineItem,children:[t(i,{style:e.timelineDot}),s<r.length-1&&t(i,{style:e.timelineLine}),d(i,{style:e.timelineContent,children:[t(c,{style:e.timelineLabel,children:l.label}),t(c,{style:e.timelineValue,children:l.value})]})]},s))})};DetailView.Content=function u({children:r,scrollable:n=true,style:l}){if(n){return t(y,{style:[e.content,l],children:r})}return t(i,{style:[e.content,l],children:r})};const e=w.create({container:{flex:1,backgroundColor:o.background},content:{flex:1,padding:16},section:{marginBottom:16,backgroundColor:o.panel,borderRadius:8,overflow:"hidden"},sectionHeader:{flexDirection:"row",alignItems:"center",padding:12,gap:8},sectionHeaderTouchable:{},sectionTitle:{flex:1,fontSize:14,fontWeight:"600",color:o.text},sectionBadge:{backgroundColor:o.primary+"20",paddingHorizontal:8,paddingVertical:2,borderRadius:4},sectionBadgeText:{fontSize:11,fontWeight:"600",color:o.primary},sectionContent:{padding:12,paddingTop:0},row:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingVertical:8,borderBottomWidth:1,borderBottomColor:o.border+"20"},rowLabel:{flex:1,fontSize:13,color:o.secondary},rowValueContainer:{flexDirection:"row",alignItems:"center",flex:2,gap:8},rowValue:{flex:1,fontSize:13,color:o.text,textAlign:"right"},dataContainer:{backgroundColor:o.background,borderRadius:6,padding:12},dataText:{fontSize:12,fontFamily:S,color:o.text},statusBar:{flexDirection:"row",alignItems:"center",padding:12,borderWidth:1,borderRadius:8,gap:8,marginVertical:8},statusDot:{width:8,height:8,borderRadius:4},statusMessage:{fontSize:13,fontWeight:"500"},timeline:{paddingVertical:8},timelineItem:{flexDirection:"row",position:"relative"},timelineDot:{width:8,height:8,borderRadius:4,backgroundColor:o.primary,marginTop:4,marginRight:12},timelineLine:{position:"absolute",left:3.5,top:12,bottom:-4,width:1,backgroundColor:o.border+"40"},timelineContent:{flex:1,marginBottom:12},timelineLabel:{fontSize:12,color:o.secondary,marginBottom:2},timelineValue:{fontSize:13,color:o.text}});
|
|
1
|
+
"use strict";import{useState as b}from"react";import{View as i,Text as c,StyleSheet as w,ScrollView as y,TouchableOpacity as x}from"react-native";import{gameUIColors as o}from"../gameUI/index.js";import{ModalHeader as g}from"./ModalHeader.js";import{CopyButton as C}from"./CopyButton.js";import{monoFont as S}from"../fonts.js";import{jsx as t,jsxs as d}from"react/jsx-runtime";export function DetailView({children:u,style:r}){return t(i,{style:[e.container,r],children:u})}DetailView.Header=function u({title:r,subtitle:n,onClose:l,onBack:s,actions:a}){return d(g,{children:[t(g.Navigation,{onBack:s,onClose:l}),t(g.Content,{title:r,subtitle:n}),a&&t(g.Actions,{children:a})]})};DetailView.Section=function u({title:r,icon:n,children:l,defaultOpen:s=true,collapsible:a=true,style:f,badge:m}){const[h,p]=b(s);if(!a){return d(i,{style:[e.section,f],children:[d(i,{style:e.sectionHeader,children:[n&&t(n,{size:14,color:o.primary}),t(c,{style:e.sectionTitle,children:r}),m!==void 0&&t(i,{style:e.sectionBadge,children:t(c,{style:e.sectionBadgeText,children:m})})]}),t(i,{style:e.sectionContent,children:l})]})}return d(i,{style:[e.section,f],children:[t(x,{style:e.sectionHeaderTouchable,onPress:()=>p(!h),children:d(i,{style:e.sectionHeader,children:[n&&t(n,{size:14,color:o.primary}),t(c,{style:e.sectionTitle,children:r}),m!==void 0&&t(i,{style:e.sectionBadge,children:t(c,{style:e.sectionBadgeText,children:m})})]})}),h&&t(i,{style:e.sectionContent,children:l})]})};DetailView.Row=function u({label:r,value:n,copyable:l=false,style:s,labelStyle:a,valueStyle:f}){const m=typeof n==="string"||typeof n==="number"?String(n):null;return d(i,{style:[e.row,s],children:[t(c,{style:[e.rowLabel,a],children:r}),d(i,{style:e.rowValueContainer,children:[typeof n==="string"||typeof n==="number"?t(c,{style:[e.rowValue,f],numberOfLines:1,children:n}):n,l&&m&&t(C,{value:m,size:12})]})]})};DetailView.DataSection=function u({title:r,data:n,icon:l,defaultOpen:s=false,style:a}){return t(DetailView.Section,{title:r,icon:l,defaultOpen:s,style:a,children:t(i,{style:e.dataContainer,children:t(y,{horizontal:true,showsHorizontalScrollIndicator:false,children:t(c,{style:e.dataText,children:JSON.stringify(n,null,2)})})})})};DetailView.StatusBar=function u({status:r,message:n,style:l}){const s={success:o.success,error:o.error,warning:o.warning,pending:o.warning,info:o.primary};const a=s[r];return d(i,{style:[e.statusBar,{backgroundColor:a+"20",borderColor:a+"40"},l],children:[t(i,{style:[e.statusDot,{backgroundColor:a}]}),n&&t(c,{style:[e.statusMessage,{color:a}],children:n})]})};DetailView.Timeline=function u({items:r,style:n}){return t(i,{style:[e.timeline,n],children:r.map((l,s)=>d(i,{style:e.timelineItem,children:[t(i,{style:e.timelineDot}),s<r.length-1&&t(i,{style:e.timelineLine}),d(i,{style:e.timelineContent,children:[t(c,{style:e.timelineLabel,children:l.label}),t(c,{style:e.timelineValue,children:l.value})]})]},s))})};DetailView.Content=function u({children:r,scrollable:n=true,style:l}){if(n){return t(y,{keyboardShouldPersistTaps:"handled",style:[e.content,l],children:r})}return t(i,{style:[e.content,l],children:r})};const e=w.create({container:{flex:1,backgroundColor:o.background},content:{flex:1,padding:16},section:{marginBottom:16,backgroundColor:o.panel,borderRadius:8,overflow:"hidden"},sectionHeader:{flexDirection:"row",alignItems:"center",padding:12,gap:8},sectionHeaderTouchable:{},sectionTitle:{flex:1,fontSize:14,fontWeight:"600",color:o.text},sectionBadge:{backgroundColor:o.primary+"20",paddingHorizontal:8,paddingVertical:2,borderRadius:4},sectionBadgeText:{fontSize:11,fontWeight:"600",color:o.primary},sectionContent:{padding:12,paddingTop:0},row:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingVertical:8,borderBottomWidth:1,borderBottomColor:o.border+"20"},rowLabel:{flex:1,fontSize:13,color:o.secondary},rowValueContainer:{flexDirection:"row",alignItems:"center",flex:2,gap:8},rowValue:{flex:1,fontSize:13,color:o.text,textAlign:"right"},dataContainer:{backgroundColor:o.background,borderRadius:6,padding:12},dataText:{fontSize:12,fontFamily:S,color:o.text},statusBar:{flexDirection:"row",alignItems:"center",padding:12,borderWidth:1,borderRadius:8,gap:8,marginVertical:8},statusDot:{width:8,height:8,borderRadius:4},statusMessage:{fontSize:13,fontWeight:"500"},timeline:{paddingVertical:8},timelineItem:{flexDirection:"row",position:"relative"},timelineDot:{width:8,height:8,borderRadius:4,backgroundColor:o.primary,marginTop:4,marginRight:12},timelineLine:{position:"absolute",left:3.5,top:12,bottom:-4,width:1,backgroundColor:o.border+"40"},timelineContent:{flex:1,marginBottom:12},timelineLabel:{fontSize:12,color:o.secondary,marginBottom:2},timelineValue:{fontSize:13,color:o.text}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{View as c,Text as a,TouchableOpacity as F,StyleSheet as U,ScrollView as w}from"react-native";import{useEffect as X,useState as Y}from"react";import{Filter as A,Plus as v,Copy as J,Eye as Q,Info as ee}from"../../icons/index.js";import{SectionHeader as d}from"./SectionHeader.js";import{FilterList as H,AddFilterInput as W,AddFilterButton as E}from"./FilterComponents.js";import{useFilterManager as R}from"../../hooks/useFilterManager.js";import{buoyColors as i}from"../gameUI/constants/gameUIColors.js";import{night as o}from"../night/nightTheme.js";import{monoFont as f}from"../fonts.js";import{jsx as e,jsxs as n,Fragment as D}from"react/jsx-runtime";export function DynamicFilterView({sections:L=[],filterSummarySection:p,addFilterSection:T,includeOnlySection:s,availableItemsSection:x,howItWorksSection:h,previewSection:b,onFilterChange:V,onPatternToggle:k,onPatternAdd:z,activePatterns:g=new Set,renderPatternMeta:j,tabs:y,activeTab:K,onTabChange:B}){const u=R(g);const m=R(s?.patterns||new Set);const[M,P]=Y(y?.[0]?.id||"");const C=K||M;X(()=>{if(g.size!==u.filters.size||!Array.from(g).every(t=>u.filters.has(t))){}},[g,u.filters]);const N=()=>{if(u.newFilter.trim()&&z){z(u.newFilter.trim());u.addFilter(u.newFilter)}};const O=()=>{if(m.newFilter.trim()&&s?.onPatternAdd){s.onPatternAdd(m.newFilter.trim());m.addFilter(m.newFilter)}};const I=x?.items?.filter(t=>{return!Array.from(g).some(l=>t.includes(l))})||[];const $=()=>{if(!y||y.length===0)return null;return e(c,{style:r.tabContainer,children:y.map(t=>n(F,{onPress:()=>{if(B)B(t.id);else P(t.id)},style:[r.tabButton,C===t.id?r.tabButtonActive:r.tabButtonInactive],children:[t.icon&&e(t.icon,{size:14,color:C===t.id?i.primary:o.color.textTertiary}),e(a,{style:[r.tabButtonText,C===t.id?r.tabButtonTextActive:r.tabButtonTextInactive],children:t.label}),t.count!==void 0&&t.count>0&&e(c,{style:r.tabBadge,children:e(a,{style:r.tabBadgeText,children:t.count})})]},t.id))})};const Z=t=>{if(t.type==="custom"&&t.renderCustom){return t.renderCustom()}if(t.type==="patterns"){return null}if(!t.data||t.data.length===0)return null;return n(c,{style:r.section,children:[n(d,{children:[t.icon&&e(d.Icon,{icon:t.icon,color:t.color||i.primary,size:12}),e(d.Title,{children:t.title})]}),t.description&&e(a,{style:r.sectionDescription,children:t.description}),e(c,{style:r.filterGrid,children:t.data.map(l=>{const S=l.count!==void 0;const q=S&&l.count===0;const G=t.type!=="method"||l.icon;return n(F,{testID:`buoy-filter-option-${l.id}`,accessibilityRole:"button",accessibilityLabel:String(l.label??l.id),style:[r.filterCard,l.isActive&&r.activeFilterCard],onPress:()=>V?.(l.id,l.value),children:[l.icon?e(l.icon,{size:24,color:l.color,style:r.filterIcon}):t.type==="method"?e(c,{style:[r.methodBadgeCompact,{backgroundColor:`${l.color}20`}],children:e(a,{style:[r.methodTextCompact,{color:l.color}],numberOfLines:1,adjustsFontSizeToFit:true,minimumFontScale:.8,children:l.label})}):null,S&&e(a,{style:[q?r.filterCountZero:r.filterCountActive],children:l.count}),G&&e(a,{style:r.filterLabelCompact,children:l.label}),l.description&&e(a,{style:r.filterDescriptionBottom,children:l.description})]},l.id)})})]},t.id)};const _=()=>{if(y&&C){const t=y.find(l=>l.id===C);if(t?.content){return t.content()}}return n(D,{children:[p?.enabled&&(p.includePatterns?.size||p.excludePatterns?.size)?n(c,{style:r.filterSummarySection,children:[n(c,{style:r.filterSummaryHeader,children:[e(ee,{size:14,color:i.warning}),e(a,{style:r.filterSummaryTitle,children:"Filters Active"})]}),n(a,{style:r.filterSummaryText,children:["Showing ",p.filteredCount," of ",p.totalCount," queries",p.includePatterns?.size?n(a,{style:r.filterSummaryInclude,children:[" ","\u2022 Including: ",Array.from(p.includePatterns).join(", ")]}):null,p.excludePatterns?.size?n(a,{style:r.filterSummaryExclude,children:[" ","\u2022 Excluding: ",Array.from(p.excludePatterns).join(", ")]}):null]})]}):null,L.map(Z),s?.enabled&&n(c,{style:r.includeOnlySection,children:[n(d,{children:[e(d.Icon,{icon:s.icon||Q,color:i.success,size:12}),e(d.Title,{children:s.title||"INCLUDE ONLY FILTERS"}),s.patterns.size>0&&e(d.Badge,{count:s.patterns.size,color:i.success})]}),s.description&&e(a,{style:r.includeOnlyDescription,children:s.description}),e(c,{style:r.includeOnlyInputWrapper,children:!m.showAddInput?e(E,{onPress:()=>m.setShowAddInput(true),color:i.success,label:"Add include pattern",testID:"buoy-filter-include-add-open"}):e(W,{value:m.newFilter,onChange:m.setNewFilter,onSubmit:O,onCancel:()=>{m.setShowAddInput(false);m.setNewFilter("")},placeholder:s.placeholder||"Enter pattern to include...",color:i.success,testID:"buoy-filter-include-input"})}),s.patterns.size>0&&e(w,{testID:"buoy-filter-include-scroll",style:r.includeOnlyFiltersContent,showsVerticalScrollIndicator:true,nestedScrollEnabled:true,children:e(H,{filters:s.patterns,onRemoveFilter:s.onPatternToggle,color:i.success,renderItemMeta:s.renderPatternMeta})})]}),T?.enabled&&n(c,{style:r.excludeFiltersSection,children:[n(d,{children:[e(d.Icon,{icon:A,color:i.primary,size:12}),e(d.Title,{children:T.title||"EXCLUDE FILTERS"}),g.size>0&&e(d.Badge,{count:g.size,color:i.primary})]}),e(a,{style:r.excludeFiltersDescription,children:"Hide queries matching these patterns from the list."}),e(c,{style:r.excludeFiltersInputWrapper,children:!u.showAddInput?e(E,{onPress:()=>u.setShowAddInput(true),color:i.primary,label:"Add exclude pattern"}):n(D,{children:[T.renderExtra?.(),e(W,{value:u.newFilter,onChange:u.setNewFilter,onSubmit:N,onCancel:()=>{u.setShowAddInput(false);u.setNewFilter("")},placeholder:T.placeholder||"Enter pattern to exclude...",color:i.primary})]})}),g.size>0&&e(w,{testID:"buoy-filter-active-scroll",style:r.excludeFiltersContent,showsVerticalScrollIndicator:true,nestedScrollEnabled:true,children:e(H,{filters:g,onRemoveFilter:k,color:i.primary,renderItemMeta:j})})]}),x?.enabled&&n(c,{style:r.availableKeysSection,children:[n(d,{children:[e(d.Icon,{icon:x.icon||v,color:i.primary,size:12}),e(d.Title,{children:x.title||"AVAILABLE ITEMS"}),e(d.Badge,{count:I.length,color:i.primary})]}),e(w,{style:r.availableKeysScroll,horizontal:false,showsVerticalScrollIndicator:true,nestedScrollEnabled:true,scrollEnabled:true,children:I.length>0?I.map(t=>n(F,{onPress:()=>{if(z){z(t);u.addFilter(t)}},style:r.availableKeyItem,"sentry-label":"ignore-touchable-opacity",testID:`buoy-filter-available-${t}`,accessibilityRole:"button",accessibilityLabel:`Add filter ${t}`,children:[e(a,{style:r.availableKeyText,numberOfLines:1,children:t}),e(v,{size:12,color:i.primary})]},t)):e(a,{style:r.emptyStateText,children:x.emptyMessage||"No items available"})})]}),h?.enabled&&n(c,{style:r.howItWorksSection,children:[n(d,{children:[e(d.Icon,{icon:h.icon||A,color:o.color.textSecondary,size:12}),e(d.Title,{children:h.title||"HOW FILTERS WORK"})]}),e(a,{style:r.howItWorksText,children:h.description||"Filters help you focus on relevant data by hiding unwanted items."}),h.examples&&h.examples.length>0&&n(c,{style:r.examplesContainer,children:[e(a,{style:r.examplesTitle,children:"EXAMPLES:"}),h.examples.map((t,l)=>e(a,{style:r.exampleItem,children:t},l))]})]}),b?.enabled&&n(c,{style:r.previewSection,children:[n(d,{children:[e(d.Icon,{icon:b.icon||J,color:i.primary,size:12}),e(d.Title,{children:b.title||"PREVIEW"}),b.headerActions&&e(d.Actions,{children:b.headerActions()})]}),e(c,{style:r.previewContent,children:b.content()})]})]})};return n(c,{style:r.container,children:[$(),e(w,{testID:"buoy-filter-scroll",style:r.content,contentContainerStyle:r.scrollContent,showsVerticalScrollIndicator:false,"sentry-label":"ignore-scrollview",children:_()})]})}const r=U.create({container:{flex:1,backgroundColor:"transparent"},content:{flex:1},scrollContent:{paddingTop:16,paddingHorizontal:16,paddingBottom:24},tabContainer:{flexDirection:"row",paddingHorizontal:16,paddingVertical:12,gap:8,backgroundColor:o.color.surface,borderBottomWidth:1,borderBottomColor:o.color.border},tabButton:{flex:1,flexDirection:"row",alignItems:"center",justifyContent:"center",gap:6,paddingVertical:10,paddingHorizontal:16,borderRadius:8,borderWidth:1},tabButtonActive:{backgroundColor:i.primary+"20",borderColor:i.primary,borderWidth:2},tabButtonInactive:{backgroundColor:o.color.surfaceElevated,borderColor:o.color.border},tabButtonText:{fontSize:11,fontWeight:"600",letterSpacing:.5},tabButtonTextActive:{color:i.primary},tabButtonTextInactive:{color:o.color.textTertiary},tabBadge:{backgroundColor:i.primary+"40",paddingHorizontal:6,paddingVertical:1,borderRadius:8,minWidth:18,alignItems:"center"},tabBadgeText:{fontSize:9,color:i.primary,fontWeight:"700"},section:{marginBottom:8},filterInputWrapper:{marginBottom:4},filterGrid:{flexDirection:"row",flexWrap:"wrap",gap:8,marginTop:8},filterCard:{backgroundColor:o.color.surface,borderRadius:12,paddingHorizontal:8,paddingVertical:10,flexDirection:"column",alignItems:"center",justifyContent:"center",borderWidth:1,borderColor:o.color.border,width:72,minHeight:68},activeFilterCard:{backgroundColor:i.primary+"33",borderColor:i.primary,borderWidth:2,shadowColor:i.primary,shadowOffset:{width:0,height:0},shadowOpacity:.3,shadowRadius:8,elevation:4},filterIcon:{marginBottom:0},filterCountActive:{fontSize:14,fontWeight:"700",color:o.color.text,fontFamily:f,marginTop:3,marginBottom:1,textShadowColor:"rgba(0, 0, 0, 0.2)",textShadowOffset:{width:0,height:.5},textShadowRadius:1},filterCountZero:{fontSize:11,fontWeight:"500",color:o.color.textTertiary,fontFamily:f,marginTop:3,marginBottom:1},filterLabelCompact:{fontSize:10,color:o.color.text,fontWeight:"600",textAlign:"center",textTransform:"capitalize",textShadowColor:"rgba(0, 0, 0, 0.3)",textShadowOffset:{width:0,height:.5},textShadowRadius:1},filterDescriptionBottom:{fontSize:8,color:o.color.textTertiary,textAlign:"center",marginTop:2,lineHeight:11},sectionDescription:{fontSize:10,color:o.color.textSecondary,marginTop:4,marginBottom:4,lineHeight:14},methodBadgeCompact:{paddingHorizontal:8,paddingVertical:4,borderRadius:5,minWidth:48,maxWidth:60,alignItems:"center",justifyContent:"center"},methodTextCompact:{fontSize:13,fontWeight:"700",letterSpacing:.3,fontFamily:f},activeFiltersSection:{backgroundColor:o.color.surface,borderRadius:16,borderWidth:1,borderColor:o.color.border,marginTop:16,overflow:"hidden"},activeFiltersContent:{paddingHorizontal:16,paddingTop:8,paddingBottom:16,maxHeight:200},includeOnlySection:{backgroundColor:o.color.surface,borderRadius:16,borderWidth:1,borderColor:o.color.border,marginTop:16,overflow:"hidden"},includeOnlyDescription:{fontSize:10,color:o.color.textSecondary,paddingHorizontal:16,paddingTop:8,lineHeight:14},includeOnlyInputWrapper:{paddingHorizontal:16,paddingTop:8,paddingBottom:8},includeOnlyFiltersContent:{paddingHorizontal:16,paddingBottom:16,maxHeight:150},excludeFiltersSection:{backgroundColor:o.color.surface,borderRadius:16,borderWidth:1,borderColor:o.color.border,marginTop:16,overflow:"hidden"},excludeFiltersDescription:{fontSize:10,color:o.color.textSecondary,paddingHorizontal:16,paddingTop:8,lineHeight:14},excludeFiltersInputWrapper:{paddingHorizontal:16,paddingTop:8,paddingBottom:8},excludeFiltersContent:{paddingHorizontal:16,paddingBottom:16,maxHeight:150},filterSummarySection:{backgroundColor:i.warning+"15",borderRadius:8,borderWidth:1,borderColor:i.warning+"40",padding:12,marginBottom:12},filterSummaryHeader:{flexDirection:"row",alignItems:"center",gap:6,marginBottom:6},filterSummaryTitle:{fontSize:12,fontWeight:"600",color:i.warning},filterSummaryText:{fontSize:11,color:o.color.text,lineHeight:16},filterSummaryInclude:{color:i.success,fontWeight:"500"},filterSummaryExclude:{color:i.primary,fontWeight:"500"},emptyStateText:{fontSize:11,color:o.color.textTertiary,fontStyle:"italic",textAlign:"center",paddingVertical:12},availableKeysSection:{backgroundColor:o.color.surface,borderRadius:16,borderWidth:1,borderColor:o.color.border,marginTop:16,overflow:"hidden"},availableKeysScroll:{maxHeight:150,paddingHorizontal:16,paddingTop:8,paddingBottom:16},availableKeyItem:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:10,paddingHorizontal:12,backgroundColor:o.color.surfaceElevated,borderRadius:8,borderWidth:1,borderColor:o.color.border,marginBottom:8},availableKeyText:{flex:1,fontSize:11,color:o.color.text,fontFamily:f,marginRight:8},howItWorksSection:{backgroundColor:o.color.surface,borderRadius:16,borderWidth:1,borderColor:o.color.border,marginTop:16,overflow:"hidden"},howItWorksText:{fontSize:11,color:o.color.textSecondary,lineHeight:16,marginBottom:12,marginTop:8,paddingHorizontal:16,fontFamily:f},examplesContainer:{paddingTop:8,paddingHorizontal:16,paddingBottom:16,borderTopWidth:1,borderTopColor:o.color.border},examplesTitle:{fontSize:10,fontWeight:"600",color:o.color.textTertiary,fontFamily:f,letterSpacing:.5,marginBottom:6},exampleItem:{fontSize:10,color:o.color.textTertiary,fontFamily:f,lineHeight:16},previewSection:{backgroundColor:o.color.surfaceElevated,borderRadius:16,borderWidth:1,borderColor:o.color.fillTertiary,marginTop:16,overflow:"hidden"},previewContent:{paddingHorizontal:16,paddingTop:12,paddingBottom:16,backgroundColor:o.color.bg,marginHorizontal:12,marginBottom:12,borderRadius:8,borderWidth:1,borderColor:o.color.border}});
|
|
1
|
+
"use strict";import{View as c,Text as a,TouchableOpacity as F,StyleSheet as U,ScrollView as w}from"react-native";import{useEffect as X,useState as Y}from"react";import{Filter as A,Plus as v,Copy as J,Eye as Q,Info as ee}from"../../icons/index.js";import{SectionHeader as d}from"./SectionHeader.js";import{FilterList as H,AddFilterInput as W,AddFilterButton as E}from"./FilterComponents.js";import{useFilterManager as R}from"../../hooks/useFilterManager.js";import{buoyColors as i}from"../gameUI/constants/gameUIColors.js";import{night as o}from"../night/nightTheme.js";import{monoFont as f}from"../fonts.js";import{jsx as e,jsxs as n,Fragment as D}from"react/jsx-runtime";export function DynamicFilterView({sections:k=[],filterSummarySection:m,addFilterSection:T,includeOnlySection:s,availableItemsSection:x,howItWorksSection:g,previewSection:b,onFilterChange:L,onPatternToggle:V,onPatternAdd:z,activePatterns:h=new Set,renderPatternMeta:P,tabs:y,activeTab:j,onTabChange:B}){const u=R(h);const p=R(s?.patterns||new Set);const[K,M]=Y(y?.[0]?.id||"");const C=j||K;X(()=>{if(h.size!==u.filters.size||!Array.from(h).every(t=>u.filters.has(t))){}},[h,u.filters]);const N=()=>{if(u.newFilter.trim()&&z){z(u.newFilter.trim());u.addFilter(u.newFilter)}};const O=()=>{if(p.newFilter.trim()&&s?.onPatternAdd){s.onPatternAdd(p.newFilter.trim());p.addFilter(p.newFilter)}};const I=x?.items?.filter(t=>{return!Array.from(h).some(l=>t.includes(l))})||[];const $=()=>{if(!y||y.length===0)return null;return e(c,{style:r.tabContainer,children:y.map(t=>n(F,{onPress:()=>{if(B)B(t.id);else M(t.id)},style:[r.tabButton,C===t.id?r.tabButtonActive:r.tabButtonInactive],children:[t.icon&&e(t.icon,{size:14,color:C===t.id?i.primary:o.color.textTertiary}),e(a,{style:[r.tabButtonText,C===t.id?r.tabButtonTextActive:r.tabButtonTextInactive],children:t.label}),t.count!==void 0&&t.count>0&&e(c,{style:r.tabBadge,children:e(a,{style:r.tabBadgeText,children:t.count})})]},t.id))})};const Z=t=>{if(t.type==="custom"&&t.renderCustom){return t.renderCustom()}if(t.type==="patterns"){return null}if(!t.data||t.data.length===0)return null;return n(c,{style:r.section,children:[n(d,{children:[t.icon&&e(d.Icon,{icon:t.icon,color:t.color||i.primary,size:12}),e(d.Title,{children:t.title})]}),t.description&&e(a,{style:r.sectionDescription,children:t.description}),e(c,{style:r.filterGrid,children:t.data.map(l=>{const S=l.count!==void 0;const q=S&&l.count===0;const G=t.type!=="method"||l.icon;return n(F,{testID:`buoy-filter-option-${l.id}`,accessibilityRole:"button",accessibilityLabel:String(l.label??l.id),style:[r.filterCard,l.isActive&&r.activeFilterCard],onPress:()=>L?.(l.id,l.value),children:[l.icon?e(l.icon,{size:24,color:l.color,style:r.filterIcon}):t.type==="method"?e(c,{style:[r.methodBadgeCompact,{backgroundColor:`${l.color}20`}],children:e(a,{style:[r.methodTextCompact,{color:l.color}],numberOfLines:1,adjustsFontSizeToFit:true,minimumFontScale:.8,children:l.label})}):null,S&&e(a,{style:[q?r.filterCountZero:r.filterCountActive],children:l.count}),G&&e(a,{style:r.filterLabelCompact,children:l.label}),l.description&&e(a,{style:r.filterDescriptionBottom,children:l.description})]},l.id)})})]},t.id)};const _=()=>{if(y&&C){const t=y.find(l=>l.id===C);if(t?.content){return t.content()}}return n(D,{children:[m?.enabled&&(m.includePatterns?.size||m.excludePatterns?.size)?n(c,{style:r.filterSummarySection,children:[n(c,{style:r.filterSummaryHeader,children:[e(ee,{size:14,color:i.warning}),e(a,{style:r.filterSummaryTitle,children:"Filters Active"})]}),n(a,{style:r.filterSummaryText,children:["Showing ",m.filteredCount," of ",m.totalCount," queries",m.includePatterns?.size?n(a,{style:r.filterSummaryInclude,children:[" ","\u2022 Including: ",Array.from(m.includePatterns).join(", ")]}):null,m.excludePatterns?.size?n(a,{style:r.filterSummaryExclude,children:[" ","\u2022 Excluding: ",Array.from(m.excludePatterns).join(", ")]}):null]})]}):null,k.map(Z),s?.enabled&&n(c,{style:r.includeOnlySection,children:[n(d,{children:[e(d.Icon,{icon:s.icon||Q,color:i.success,size:12}),e(d.Title,{children:s.title||"INCLUDE ONLY FILTERS"}),s.patterns.size>0&&e(d.Badge,{count:s.patterns.size,color:i.success})]}),s.description&&e(a,{style:r.includeOnlyDescription,children:s.description}),e(c,{style:r.includeOnlyInputWrapper,children:!p.showAddInput?e(E,{onPress:()=>p.setShowAddInput(true),color:i.success,label:"Add include pattern",testID:"buoy-filter-include-add-open"}):e(W,{value:p.newFilter,onChange:p.setNewFilter,onSubmit:O,onCancel:()=>{p.setShowAddInput(false);p.setNewFilter("")},placeholder:s.placeholder||"Enter pattern to include...",color:i.success,testID:"buoy-filter-include-input"})}),s.patterns.size>0&&e(w,{keyboardShouldPersistTaps:"handled",testID:"buoy-filter-include-scroll",style:r.includeOnlyFiltersContent,showsVerticalScrollIndicator:true,nestedScrollEnabled:true,children:e(H,{filters:s.patterns,onRemoveFilter:s.onPatternToggle,color:i.success,renderItemMeta:s.renderPatternMeta})})]}),T?.enabled&&n(c,{style:r.excludeFiltersSection,children:[n(d,{children:[e(d.Icon,{icon:A,color:i.primary,size:12}),e(d.Title,{children:T.title||"EXCLUDE FILTERS"}),h.size>0&&e(d.Badge,{count:h.size,color:i.primary})]}),e(a,{style:r.excludeFiltersDescription,children:"Hide queries matching these patterns from the list."}),e(c,{style:r.excludeFiltersInputWrapper,children:!u.showAddInput?e(E,{onPress:()=>u.setShowAddInput(true),color:i.primary,label:"Add exclude pattern"}):n(D,{children:[T.renderExtra?.(),e(W,{value:u.newFilter,onChange:u.setNewFilter,onSubmit:N,onCancel:()=>{u.setShowAddInput(false);u.setNewFilter("")},placeholder:T.placeholder||"Enter pattern to exclude...",color:i.primary})]})}),h.size>0&&e(w,{keyboardShouldPersistTaps:"handled",testID:"buoy-filter-active-scroll",style:r.excludeFiltersContent,showsVerticalScrollIndicator:true,nestedScrollEnabled:true,children:e(H,{filters:h,onRemoveFilter:V,color:i.primary,renderItemMeta:P})})]}),x?.enabled&&n(c,{style:r.availableKeysSection,children:[n(d,{children:[e(d.Icon,{icon:x.icon||v,color:i.primary,size:12}),e(d.Title,{children:x.title||"AVAILABLE ITEMS"}),e(d.Badge,{count:I.length,color:i.primary})]}),e(w,{style:r.availableKeysScroll,horizontal:false,showsVerticalScrollIndicator:true,nestedScrollEnabled:true,scrollEnabled:true,children:I.length>0?I.map(t=>n(F,{onPress:()=>{if(z){z(t);u.addFilter(t)}},style:r.availableKeyItem,"sentry-label":"ignore-touchable-opacity",testID:`buoy-filter-available-${t}`,accessibilityRole:"button",accessibilityLabel:`Add filter ${t}`,children:[e(a,{style:r.availableKeyText,numberOfLines:1,children:t}),e(v,{size:12,color:i.primary})]},t)):e(a,{style:r.emptyStateText,children:x.emptyMessage||"No items available"})})]}),g?.enabled&&n(c,{style:r.howItWorksSection,children:[n(d,{children:[e(d.Icon,{icon:g.icon||A,color:o.color.textSecondary,size:12}),e(d.Title,{children:g.title||"HOW FILTERS WORK"})]}),e(a,{style:r.howItWorksText,children:g.description||"Filters help you focus on relevant data by hiding unwanted items."}),g.examples&&g.examples.length>0&&n(c,{style:r.examplesContainer,children:[e(a,{style:r.examplesTitle,children:"EXAMPLES:"}),g.examples.map((t,l)=>e(a,{style:r.exampleItem,children:t},l))]})]}),b?.enabled&&n(c,{style:r.previewSection,children:[n(d,{children:[e(d.Icon,{icon:b.icon||J,color:i.primary,size:12}),e(d.Title,{children:b.title||"PREVIEW"}),b.headerActions&&e(d.Actions,{children:b.headerActions()})]}),e(c,{style:r.previewContent,children:b.content()})]})]})};return n(c,{style:r.container,children:[$(),e(w,{keyboardShouldPersistTaps:"handled",testID:"buoy-filter-scroll",style:r.content,contentContainerStyle:r.scrollContent,showsVerticalScrollIndicator:false,"sentry-label":"ignore-scrollview",children:_()})]})}const r=U.create({container:{flex:1,backgroundColor:"transparent"},content:{flex:1},scrollContent:{paddingTop:16,paddingHorizontal:16,paddingBottom:24},tabContainer:{flexDirection:"row",paddingHorizontal:16,paddingVertical:12,gap:8,backgroundColor:o.color.surface,borderBottomWidth:1,borderBottomColor:o.color.border},tabButton:{flex:1,flexDirection:"row",alignItems:"center",justifyContent:"center",gap:6,paddingVertical:10,paddingHorizontal:16,borderRadius:8,borderWidth:1},tabButtonActive:{backgroundColor:i.primary+"20",borderColor:i.primary,borderWidth:2},tabButtonInactive:{backgroundColor:o.color.surfaceElevated,borderColor:o.color.border},tabButtonText:{fontSize:11,fontWeight:"600",letterSpacing:.5},tabButtonTextActive:{color:i.primary},tabButtonTextInactive:{color:o.color.textTertiary},tabBadge:{backgroundColor:i.primary+"40",paddingHorizontal:6,paddingVertical:1,borderRadius:8,minWidth:18,alignItems:"center"},tabBadgeText:{fontSize:9,color:i.primary,fontWeight:"700"},section:{marginBottom:8},filterInputWrapper:{marginBottom:4},filterGrid:{flexDirection:"row",flexWrap:"wrap",gap:8,marginTop:8},filterCard:{backgroundColor:o.color.surface,borderRadius:12,paddingHorizontal:8,paddingVertical:10,flexDirection:"column",alignItems:"center",justifyContent:"center",borderWidth:1,borderColor:o.color.border,width:72,minHeight:68},activeFilterCard:{backgroundColor:i.primary+"33",borderColor:i.primary,borderWidth:2,shadowColor:i.primary,shadowOffset:{width:0,height:0},shadowOpacity:.3,shadowRadius:8,elevation:4},filterIcon:{marginBottom:0},filterCountActive:{fontSize:14,fontWeight:"700",color:o.color.text,fontFamily:f,marginTop:3,marginBottom:1,textShadowColor:"rgba(0, 0, 0, 0.2)",textShadowOffset:{width:0,height:.5},textShadowRadius:1},filterCountZero:{fontSize:11,fontWeight:"500",color:o.color.textTertiary,fontFamily:f,marginTop:3,marginBottom:1},filterLabelCompact:{fontSize:10,color:o.color.text,fontWeight:"600",textAlign:"center",textTransform:"capitalize",textShadowColor:"rgba(0, 0, 0, 0.3)",textShadowOffset:{width:0,height:.5},textShadowRadius:1},filterDescriptionBottom:{fontSize:8,color:o.color.textTertiary,textAlign:"center",marginTop:2,lineHeight:11},sectionDescription:{fontSize:10,color:o.color.textSecondary,marginTop:4,marginBottom:4,lineHeight:14},methodBadgeCompact:{paddingHorizontal:8,paddingVertical:4,borderRadius:5,minWidth:48,maxWidth:60,alignItems:"center",justifyContent:"center"},methodTextCompact:{fontSize:13,fontWeight:"700",letterSpacing:.3,fontFamily:f},activeFiltersSection:{backgroundColor:o.color.surface,borderRadius:16,borderWidth:1,borderColor:o.color.border,marginTop:16,overflow:"hidden"},activeFiltersContent:{paddingHorizontal:16,paddingTop:8,paddingBottom:16,maxHeight:200},includeOnlySection:{backgroundColor:o.color.surface,borderRadius:16,borderWidth:1,borderColor:o.color.border,marginTop:16,overflow:"hidden"},includeOnlyDescription:{fontSize:10,color:o.color.textSecondary,paddingHorizontal:16,paddingTop:8,lineHeight:14},includeOnlyInputWrapper:{paddingHorizontal:16,paddingTop:8,paddingBottom:8},includeOnlyFiltersContent:{paddingHorizontal:16,paddingBottom:16,maxHeight:150},excludeFiltersSection:{backgroundColor:o.color.surface,borderRadius:16,borderWidth:1,borderColor:o.color.border,marginTop:16,overflow:"hidden"},excludeFiltersDescription:{fontSize:10,color:o.color.textSecondary,paddingHorizontal:16,paddingTop:8,lineHeight:14},excludeFiltersInputWrapper:{paddingHorizontal:16,paddingTop:8,paddingBottom:8},excludeFiltersContent:{paddingHorizontal:16,paddingBottom:16,maxHeight:150},filterSummarySection:{backgroundColor:i.warning+"15",borderRadius:8,borderWidth:1,borderColor:i.warning+"40",padding:12,marginBottom:12},filterSummaryHeader:{flexDirection:"row",alignItems:"center",gap:6,marginBottom:6},filterSummaryTitle:{fontSize:12,fontWeight:"600",color:i.warning},filterSummaryText:{fontSize:11,color:o.color.text,lineHeight:16},filterSummaryInclude:{color:i.success,fontWeight:"500"},filterSummaryExclude:{color:i.primary,fontWeight:"500"},emptyStateText:{fontSize:11,color:o.color.textTertiary,fontStyle:"italic",textAlign:"center",paddingVertical:12},availableKeysSection:{backgroundColor:o.color.surface,borderRadius:16,borderWidth:1,borderColor:o.color.border,marginTop:16,overflow:"hidden"},availableKeysScroll:{maxHeight:150,paddingHorizontal:16,paddingTop:8,paddingBottom:16},availableKeyItem:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:10,paddingHorizontal:12,backgroundColor:o.color.surfaceElevated,borderRadius:8,borderWidth:1,borderColor:o.color.border,marginBottom:8},availableKeyText:{flex:1,fontSize:11,color:o.color.text,fontFamily:f,marginRight:8},howItWorksSection:{backgroundColor:o.color.surface,borderRadius:16,borderWidth:1,borderColor:o.color.border,marginTop:16,overflow:"hidden"},howItWorksText:{fontSize:11,color:o.color.textSecondary,lineHeight:16,marginBottom:12,marginTop:8,paddingHorizontal:16,fontFamily:f},examplesContainer:{paddingTop:8,paddingHorizontal:16,paddingBottom:16,borderTopWidth:1,borderTopColor:o.color.border},examplesTitle:{fontSize:10,fontWeight:"600",color:o.color.textTertiary,fontFamily:f,letterSpacing:.5,marginBottom:6},exampleItem:{fontSize:10,color:o.color.textTertiary,fontFamily:f,lineHeight:16},previewSection:{backgroundColor:o.color.surfaceElevated,borderRadius:16,borderWidth:1,borderColor:o.color.fillTertiary,marginTop:16,overflow:"hidden"},previewContent:{paddingHorizontal:16,paddingTop:12,paddingBottom:16,backgroundColor:o.color.bg,marginHorizontal:12,marginBottom:12,borderRadius:8,borderWidth:1,borderColor:o.color.border}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{useState as w}from"react";import{ScrollView as z,StyleSheet as W,Text as p,TouchableOpacity as L,View as s}from"react-native";import{Filter as I,X as
|
|
1
|
+
"use strict";import{useState as w}from"react";import{ScrollView as z,StyleSheet as W,Text as p,TouchableOpacity as L,View as s}from"react-native";import{Filter as I,X as k}from"../../icons/index.js";import{night as t}from"../night/nightTheme.js";import{SectionHeader as n}from"./SectionHeader.js";import{AddFilterButton as B,AddFilterInput as V}from"./FilterComponents.js";import{monoFont as h}from"../fonts.js";import{jsxs as l,jsx as r}from"react/jsx-runtime";function A(d,a){return Array.from(a).some(m=>d.name.toLowerCase().includes(m.toLowerCase()))}function v(d,a){const m=a.find(u=>u.name.toLowerCase()===d.toLowerCase());return m?m.color:null}export function EntityFilterView({entities:d,ignoredPatterns:a,onTogglePattern:m,onAddPattern:u,entityNoun:T,entitySingular:y,entityKey:f,testIDPrefix:c,slug:S,howItWorks:H,examples:R,addPlaceholder:E,emptyMessage:x}){const[$,b]=w(false);const[C,g]=w("");const F=()=>{const e=C.trim();if(e){u(e);g("");b(false)}};return l(z,{keyboardShouldPersistTaps:"handled",style:o.container,contentContainerStyle:o.scrollContent,showsVerticalScrollIndicator:false,nestedScrollEnabled:true,testID:`${c}-filters-scroll`,children:[d.length===0&&x?l(s,{style:o.section,children:[r(n,{children:l(n.Title,{children:["REGISTERED ",T]})}),r(p,{style:o.emptyText,testID:`${c}-filters-${f}s-empty`,children:x})]}):null,d.length>0&&l(s,{style:o.section,children:[l(n,{children:[l(n.Title,{children:["REGISTERED ",T]}),r(n.Badge,{count:d.length,color:t.color.accent,testID:`${c}-filters-${f}-count`})]}),r(z,{keyboardShouldPersistTaps:"handled",style:o.entityList,contentContainerStyle:o.entityListContent,showsVerticalScrollIndicator:true,nestedScrollEnabled:true,testID:`${c}-filters-${f}-list`,children:d.map(e=>{const i=A(e,a);return l(L,{style:[o.entityRow,i&&o.entityRowHidden],onPress:()=>u(e.name),disabled:i,testID:`${c}-filters-${f}-${S(e.name)}`,accessibilityRole:"button",accessibilityLabel:`Hide ${e.name}`,accessibilityState:{disabled:i},children:[r(s,{style:[o.dot,{backgroundColor:i?t.color.textTertiary:e.color}]}),r(p,{style:[o.entityText,i?o.entityTextHidden:{color:e.color}],numberOfLines:1,children:e.name}),i?r(p,{style:o.hiddenLabel,children:"hidden"}):r(p,{style:[o.addLabel,{color:e.color+"99"}],children:"+ hide"})]},e.name)})})]}),l(s,{style:o.section,children:[l(n,{children:[r(n.Icon,{icon:I,color:t.color.accent,size:12}),l(n.Title,{children:[y.toUpperCase()," NAME FILTERS"]}),a.size>0&&r(n.Badge,{count:a.size,color:t.color.accent,testID:`${c}-filters-count`})]}),r(s,{style:o.addInputWrapper,children:!$?r(B,{onPress:()=>b(true),color:t.color.accent,label:`Add ${y} name pattern`,testID:`${c}-filters-add-open`}):r(V,{value:C,onChange:g,onSubmit:F,onCancel:()=>{b(false);g("")},placeholder:E??`Enter ${y} name pattern to hide...`,color:t.color.accent,testID:`${c}-filters-add-input`})}),a.size>0&&r(s,{style:o.patternList,children:Array.from(a).map(e=>{const i=v(e,d);return l(L,{style:o.patternRow,onPress:()=>m(e),activeOpacity:.8,testID:`${c}-filters-chip-${S(e)}`,accessibilityRole:"button",accessibilityLabel:`Remove filter ${e}`,children:[i?r(s,{style:[o.dot,{backgroundColor:i}]}):null,r(p,{style:[o.patternText,i?{color:i}:null],numberOfLines:1,children:e}),r(k,{size:12,color:t.color.accent+"80"})]},e)})})]}),l(s,{style:o.section,children:[l(n,{children:[r(n.Icon,{icon:I,color:t.color.textSecondary,size:12}),r(n.Title,{children:"HOW EVENT FILTERS WORK"})]}),r(p,{style:o.howItWorksText,children:H}),l(s,{style:o.examplesContainer,children:[r(p,{style:o.examplesTitle,children:"EXAMPLES:"}),R.map(e=>r(p,{style:o.exampleItem,children:e},e))]})]})]})}const o=W.create({container:{flex:1,backgroundColor:"transparent"},scrollContent:{paddingTop:16,paddingHorizontal:16,paddingBottom:24,gap:16},section:{backgroundColor:t.color.surface,borderRadius:16,borderWidth:1,borderColor:t.color.border,overflow:"hidden"},entityList:{maxHeight:180},entityListContent:{paddingHorizontal:16,paddingTop:8,paddingBottom:16,gap:10},entityRow:{flexDirection:"row",alignItems:"center",gap:10,paddingVertical:10,paddingHorizontal:12,backgroundColor:t.color.surfaceElevated,borderRadius:8,borderWidth:1,borderColor:t.color.border},entityRowHidden:{opacity:.45},dot:{width:7,height:7,borderRadius:3.5},entityText:{flex:1,fontSize:12,fontWeight:"600",fontFamily:h},entityTextHidden:{color:t.color.textTertiary,textDecorationLine:"line-through"},hiddenLabel:{fontSize:10,fontWeight:"500",color:t.color.textTertiary,fontFamily:h},addLabel:{fontSize:10,fontWeight:"600",fontFamily:h},addInputWrapper:{paddingHorizontal:16,paddingTop:8,paddingBottom:8},patternList:{paddingHorizontal:16,paddingBottom:16,gap:8},patternRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:10,paddingHorizontal:12,backgroundColor:t.color.surfaceElevated,borderRadius:8,borderWidth:1,borderColor:t.color.border,gap:8},patternText:{flex:1,fontSize:12,fontFamily:h,color:t.color.text},emptyText:{fontSize:11,color:t.color.textTertiary,paddingHorizontal:16,paddingTop:8,paddingBottom:16,fontFamily:h},howItWorksText:{fontSize:11,color:t.color.textSecondary,lineHeight:16,marginTop:8,paddingHorizontal:16,fontFamily:h},examplesContainer:{paddingTop:8,paddingHorizontal:16,paddingBottom:16,borderTopWidth:1,borderTopColor:t.color.border,marginTop:12},examplesTitle:{fontSize:10,fontWeight:"600",color:t.color.textTertiary,fontFamily:h,letterSpacing:.5,marginBottom:6},exampleItem:{fontSize:10,color:t.color.textTertiary,fontFamily:h,lineHeight:16}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import
|
|
1
|
+
"use strict";import $,{memo as q}from"react";import{View as l,ScrollView as g,StyleSheet as A}from"react-native";import{macOSColors as J}from"../../gameUI/constants/macOSDesignSystemColors.js";import{EventStepperFooter as K}from"../EventStepperFooter.js";import{ViewToggleCards as Q}from"./ViewToggleCards.js";import{DiffModeTabs as U}from"./DiffModeTabs.js";import{CompareBar as W}from"./CompareBar.js";import{jsx as t,jsxs as s,Fragment as X}from"react/jsx-runtime";function Y({scrolls:a,style:n,children:r}){if(!a)return t(l,{style:n,children:r});return t(g,{keyboardShouldPersistTaps:"handled",style:e.contentScroll,contentContainerStyle:e.contentScrollInner,showsVerticalScrollIndicator:true,children:r})}export const EventHistoryViewer=q(function a({activeView:n,onViewChange:r,currentViewLabel:p,currentViewDescription:S,currentViewIcon:x,diffViewLabel:y,diffViewDescription:b,diffViewIcon:v,renderCurrentView:d,diffModeTabs:o,activeDiffMode:w,onDiffModeChange:f,renderDiffContent:u,leftEvent:C,rightEvent:P,showCompareNavigation:V,onLeftPrevious:L,onLeftNext:H,onRightPrevious:I,onRightNext:N,canLeftPrevious:R,canLeftNext:k,canRightPrevious:E,canRightNext:j,onLeftPickerOpen:D,onRightPickerOpen:_,scrollDiffSection:h,disableInternalFooter:m,footerCurrentIndex:z,footerTotalItems:i,footerItemLabel:B,footerSubtitle:F,onFooterPrevious:G,onFooterNext:O}){const c=d!=null;const T=i<=1;return s(X,{children:[s(l,{style:[e.container,{paddingBottom:!m&&i>1?96:0}],children:[c&&t(Q,{activeView:n,onViewChange:r??(()=>{}),currentLabel:p??"",currentDescription:S??"",currentIcon:x,diffLabel:y,diffDescription:b,diffIcon:v,diffDisabled:T}),c&&n==="current"&&t(g,{keyboardShouldPersistTaps:"handled",style:e.contentScroll,contentContainerStyle:e.contentScrollInner,showsVerticalScrollIndicator:true,children:d?.()}),(!c||n==="diff")&&s(Y,{scrolls:h,style:e.contentSection,children:[o&&o.length>0&&f&&t(U,{tabs:o,activeTab:w??o[0]?.key??"",onTabChange:f}),t(W,{leftEvent:C,rightEvent:P,showNavigation:V,onLeftPrevious:L,onLeftNext:H,onRightPrevious:I,onRightNext:N,canLeftPrevious:R,canLeftNext:k,canRightPrevious:E,canRightNext:j,onLeftPress:D,onRightPress:_}),h?u():t(l,{style:e.diffContent,children:u()})]})]}),!m&&t(K,{currentIndex:z,totalItems:i,onPrevious:G,onNext:O,itemLabel:B,subtitle:F,absolute:true})]})});const e=A.create({container:{flex:1,backgroundColor:J.background.base},contentSection:{flex:1,minHeight:0,paddingHorizontal:14,paddingVertical:10},contentScroll:{flex:1},contentScrollInner:{flexGrow:1,paddingHorizontal:14,paddingVertical:10},diffContent:{flex:1,minHeight:0}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import k,{memo as y}from"react";import{View as a,Text as l,TouchableOpacity as c,ScrollView as p,StyleSheet as w}from"react-native";import{absoluteFill as m}from"../../../utils/absoluteFill.js";import{macOSColors as e}from"../../gameUI/constants/macOSDesignSystemColors.js";import{X as x}from"../../../icons/lucide-icons.js";import{monoFont as s}from"../../fonts.js";import{jsx as r,jsxs as i}from"react/jsx-runtime";export const EventPickerModal=y(function C({isOpen:b,onClose:n,title:h,position:g,items:u,onSelect:f}){if(!b)return null;const d=g==="left";return i(a,{style:t.overlay,children:[r(c,{style:t.backdrop,activeOpacity:1,onPress:n}),i(a,{style:[t.card,d?t.cardLeft:t.cardRight],children:[i(a,{style:t.header,children:[r(l,{style:[t.title,d?t.titleLeft:t.titleRight],children:h}),r(c,{onPress:n,style:t.closeBtn,accessibilityLabel:"Close event picker",children:r(x,{size:16,color:e.text.secondary})})]}),r(a,{style:t.divider}),r(p,{style:t.scroll,contentContainerStyle:t.list,showsVerticalScrollIndicator:true,nestedScrollEnabled:true,children:u.map(o=>i(c,{disabled:o.disabled,onPress:()=>f(o.index),style:[t.item,o.selected&&t.itemSelected,o.selected&&d&&t.itemSelectedLeft,o.selected&&!d&&t.itemSelectedRight,o.disabled&&t.itemDisabled],children:[r(l,{style:t.itemIndex,children:o.label}),r(l,{style:t.itemTime,children:o.timestamp}),i(l,{style:t.itemRelative,children:["(",o.relativeTime,")"]}),o.badge,o.diffPreview]},o.index))})]})]})});const t=w.create({overlay:{...m,zIndex:20,justifyContent:"center",alignItems:"center"},backdrop:{...m,backgroundColor:"rgba(0,0,0,0.65)"},card:{width:"86%",maxHeight:320,backgroundColor:e.background.card,borderRadius:16,borderWidth:2,padding:16,shadowOffset:{width:0,height:0},shadowOpacity:.5,shadowRadius:40,elevation:15},cardLeft:{borderColor:e.semantic.debug,shadowColor:e.semantic.debug},cardRight:{borderColor:e.semantic.success,shadowColor:e.semantic.success},header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between"},title:{fontSize:13,fontWeight:"700",fontFamily:s,textTransform:"uppercase",marginBottom:8,letterSpacing:.6},titleLeft:{color:e.semantic.debug},titleRight:{color:e.semantic.success},closeBtn:{padding:6,borderRadius:6,backgroundColor:e.background.card,borderWidth:1,borderColor:e.border.default},divider:{height:1,backgroundColor:e.background.input,marginVertical:8},scroll:{maxHeight:260},list:{gap:4},item:{paddingVertical:10,paddingHorizontal:12,borderRadius:10,backgroundColor:e.background.base,borderWidth:1,borderColor:e.border.default,flexDirection:"row",alignItems:"center",gap:8,marginBottom:6},itemSelected:{borderWidth:1.5,shadowOffset:{width:0,height:2},shadowOpacity:.25,shadowRadius:12,elevation:4},itemSelectedLeft:{backgroundColor:e.semantic.debug+"1A",borderColor:e.semantic.debug,shadowColor:e.semantic.debug},itemSelectedRight:{backgroundColor:e.semantic.successBackground+"30",borderColor:e.semantic.success,shadowColor:e.semantic.success},itemDisabled:{opacity:.4},itemIndex:{fontSize:10,color:e.text.secondary,fontFamily:s,width:40},itemTime:{fontSize:11,color:e.text.primary,fontFamily:s,flex:1},itemRelative:{fontSize:10,color:e.text.secondary,fontFamily:s}});
|
|
1
|
+
"use strict";import k,{memo as y}from"react";import{View as a,Text as l,TouchableOpacity as c,ScrollView as p,StyleSheet as w}from"react-native";import{absoluteFill as m}from"../../../utils/absoluteFill.js";import{macOSColors as e}from"../../gameUI/constants/macOSDesignSystemColors.js";import{X as x}from"../../../icons/lucide-icons.js";import{monoFont as s}from"../../fonts.js";import{jsx as r,jsxs as i}from"react/jsx-runtime";export const EventPickerModal=y(function C({isOpen:b,onClose:n,title:h,position:g,items:u,onSelect:f}){if(!b)return null;const d=g==="left";return i(a,{style:t.overlay,children:[r(c,{style:t.backdrop,activeOpacity:1,onPress:n}),i(a,{style:[t.card,d?t.cardLeft:t.cardRight],children:[i(a,{style:t.header,children:[r(l,{style:[t.title,d?t.titleLeft:t.titleRight],children:h}),r(c,{onPress:n,style:t.closeBtn,accessibilityLabel:"Close event picker",children:r(x,{size:16,color:e.text.secondary})})]}),r(a,{style:t.divider}),r(p,{keyboardShouldPersistTaps:"handled",style:t.scroll,contentContainerStyle:t.list,showsVerticalScrollIndicator:true,nestedScrollEnabled:true,children:u.map(o=>i(c,{disabled:o.disabled,onPress:()=>f(o.index),style:[t.item,o.selected&&t.itemSelected,o.selected&&d&&t.itemSelectedLeft,o.selected&&!d&&t.itemSelectedRight,o.disabled&&t.itemDisabled],children:[r(l,{style:t.itemIndex,children:o.label}),r(l,{style:t.itemTime,children:o.timestamp}),i(l,{style:t.itemRelative,children:["(",o.relativeTime,")"]}),o.badge,o.diffPreview]},o.index))})]})]})});const t=w.create({overlay:{...m,zIndex:20,justifyContent:"center",alignItems:"center"},backdrop:{...m,backgroundColor:"rgba(0,0,0,0.65)"},card:{width:"86%",maxHeight:320,backgroundColor:e.background.card,borderRadius:16,borderWidth:2,padding:16,shadowOffset:{width:0,height:0},shadowOpacity:.5,shadowRadius:40,elevation:15},cardLeft:{borderColor:e.semantic.debug,shadowColor:e.semantic.debug},cardRight:{borderColor:e.semantic.success,shadowColor:e.semantic.success},header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between"},title:{fontSize:13,fontWeight:"700",fontFamily:s,textTransform:"uppercase",marginBottom:8,letterSpacing:.6},titleLeft:{color:e.semantic.debug},titleRight:{color:e.semantic.success},closeBtn:{padding:6,borderRadius:6,backgroundColor:e.background.card,borderWidth:1,borderColor:e.border.default},divider:{height:1,backgroundColor:e.background.input,marginVertical:8},scroll:{maxHeight:260},list:{gap:4},item:{paddingVertical:10,paddingHorizontal:12,borderRadius:10,backgroundColor:e.background.base,borderWidth:1,borderColor:e.border.default,flexDirection:"row",alignItems:"center",gap:8,marginBottom:6},itemSelected:{borderWidth:1.5,shadowOffset:{width:0,height:2},shadowOpacity:.25,shadowRadius:12,elevation:4},itemSelectedLeft:{backgroundColor:e.semantic.debug+"1A",borderColor:e.semantic.debug,shadowColor:e.semantic.debug},itemSelectedRight:{backgroundColor:e.semantic.successBackground+"30",borderColor:e.semantic.success,shadowColor:e.semantic.success},itemDisabled:{opacity:.4},itemIndex:{fontSize:10,color:e.text.secondary,fontFamily:s,width:40},itemTime:{fontSize:11,color:e.text.primary,fontFamily:s,flex:1},itemRelative:{fontSize:10,color:e.text.secondary,fontFamily:s}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";let p=null;export function setBuoyAppId(t){p=typeof t==="string"&&t.trim()?t.trim():null}export function getBuoyAppId(){return p}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";export function loadDevSettings(){try{const
|
|
1
|
+
"use strict";function t(){const o=globalThis.expo;if(!o?.modules?.ExpoGo||typeof o.reloadAppAsync!=="function")return null;const n=o.reloadAppAsync.bind(o);return e=>{void n(e)}}export function loadDevSettings(){const o=t();if(o)return{reload:o};try{const n=require("react-native");const e=n?.DevSettings;if(e&&typeof e.reload==="function"){return e}}catch{}return null}export function loadExpoUpdates(){try{const o=require("expo-updates");if(o&&typeof o.reloadAsync==="function"){return o}}catch{}return null}export function loadBrowserReload(){return null}
|
|
@@ -99,6 +99,13 @@ interface JsModalProps {
|
|
|
99
99
|
background?: boolean;
|
|
100
100
|
/** Chrome variant — see {@link ModalVariant}. */
|
|
101
101
|
variant?: ModalVariant;
|
|
102
|
+
/**
|
|
103
|
+
* iOS, bottom sheet only: move the sheet up while the keyboard is open, so
|
|
104
|
+
* a field in the sheet and the buttons under it stay in view. On by
|
|
105
|
+
* default. Pass false when the body handles the keyboard itself (Ask
|
|
106
|
+
* Buoy's composer pads for it), or the two would lift it twice.
|
|
107
|
+
*/
|
|
108
|
+
avoidKeyboard?: boolean;
|
|
102
109
|
}
|
|
103
110
|
/**
|
|
104
111
|
* JsModal - Ultra-optimized modal component for true 60FPS performance
|
|
@@ -53,7 +53,8 @@ export { HintsProvider, useHintsDisabled, useHintsContext } from "./context";
|
|
|
53
53
|
export * from "./history";
|
|
54
54
|
export { FeatureGate, UpgradePrompt, useFeatureGate, ProFeatureBanner, UpgradeModal, BuoyUpgradeSheet, BuoySignInCard, BuoyNeedsPlanCard, useSignInState, ProBadge, ProUpgradeModal, FreeAccountPrompt, LOGIN_COMMAND, getUseIsPro, getUseLicense, getUseTier, signOutOfBuoy, TIER_LIMITS, useLimit, resolveEffectiveTier } from "./license";
|
|
55
55
|
export type { FeatureGateProps, ProFeatureBannerProps, UpgradeModalProps, BuoyUpgradeSheetProps, ProUpgradeModalProps, FreeAccountPromptProps, BuoyTier, TierLimitKey } from "./license";
|
|
56
|
-
export { getAccountAccess, hasAccountAccess, assertAccountAccess, subscribeAccountAccess, getUseAccountAccess, retryAccountAccess, isProNow } from "./license/licenseModule";
|
|
56
|
+
export { getAccountAccess, hasAccountAccess, assertAccountAccess, subscribeAccountAccess, getUseAccountAccess, retryAccountAccess, isProNow, getTeamCredential } from "./license/licenseModule";
|
|
57
|
+
export { setBuoyAppId, getBuoyAppId } from "./utils/appIdentity";
|
|
57
58
|
export { guardToolAdapter } from "./sync/toolActionRegistry";
|
|
58
59
|
export { AccountSetup } from "./license/AccountSetup";
|
|
59
60
|
export { AccountSetupButton } from "./license/AccountSetupContent";
|
|
@@ -81,5 +81,12 @@ export declare function getSyncCredential(): {
|
|
|
81
81
|
token: string;
|
|
82
82
|
origin: string;
|
|
83
83
|
} | null;
|
|
84
|
+
/** The token, team and named app for shared Scenarios, or null (no team, a plain key, or an old license package). */
|
|
85
|
+
export declare function getTeamCredential(): {
|
|
86
|
+
token: string;
|
|
87
|
+
origin: string;
|
|
88
|
+
team: string;
|
|
89
|
+
appId: string | null;
|
|
90
|
+
} | null;
|
|
84
91
|
export {};
|
|
85
92
|
//# sourceMappingURL=licenseModule.d.ts.map
|
|
@@ -195,6 +195,8 @@ export declare const devToolsStorageKeys: {
|
|
|
195
195
|
readonly modal: () => "@react_buoy_scenarios_modal";
|
|
196
196
|
readonly library: () => "@react_buoy_scenarios_library";
|
|
197
197
|
readonly active: () => "@react_buoy_scenarios_active";
|
|
198
|
+
/** The team's shared scenarios for this app, saved so they show offline. */
|
|
199
|
+
readonly team: () => "@react_buoy_scenarios_team";
|
|
198
200
|
};
|
|
199
201
|
/**
|
|
200
202
|
* React Query-related storage keys
|
|
@@ -99,6 +99,13 @@ interface JsModalProps {
|
|
|
99
99
|
background?: boolean;
|
|
100
100
|
/** Chrome variant — see {@link ModalVariant}. */
|
|
101
101
|
variant?: ModalVariant;
|
|
102
|
+
/**
|
|
103
|
+
* iOS, bottom sheet only: move the sheet up while the keyboard is open, so
|
|
104
|
+
* a field in the sheet and the buttons under it stay in view. On by
|
|
105
|
+
* default. Pass false when the body handles the keyboard itself (Ask
|
|
106
|
+
* Buoy's composer pads for it), or the two would lift it twice.
|
|
107
|
+
*/
|
|
108
|
+
avoidKeyboard?: boolean;
|
|
102
109
|
}
|
|
103
110
|
/**
|
|
104
111
|
* JsModal - Ultra-optimized modal component for true 60FPS performance
|
|
@@ -53,7 +53,8 @@ export { HintsProvider, useHintsDisabled, useHintsContext } from "./context";
|
|
|
53
53
|
export * from "./history";
|
|
54
54
|
export { FeatureGate, UpgradePrompt, useFeatureGate, ProFeatureBanner, UpgradeModal, BuoyUpgradeSheet, BuoySignInCard, BuoyNeedsPlanCard, useSignInState, ProBadge, ProUpgradeModal, FreeAccountPrompt, LOGIN_COMMAND, getUseIsPro, getUseLicense, getUseTier, signOutOfBuoy, TIER_LIMITS, useLimit, resolveEffectiveTier } from "./license";
|
|
55
55
|
export type { FeatureGateProps, ProFeatureBannerProps, UpgradeModalProps, BuoyUpgradeSheetProps, ProUpgradeModalProps, FreeAccountPromptProps, BuoyTier, TierLimitKey } from "./license";
|
|
56
|
-
export { getAccountAccess, hasAccountAccess, assertAccountAccess, subscribeAccountAccess, getUseAccountAccess, retryAccountAccess, isProNow } from "./license/licenseModule";
|
|
56
|
+
export { getAccountAccess, hasAccountAccess, assertAccountAccess, subscribeAccountAccess, getUseAccountAccess, retryAccountAccess, isProNow, getTeamCredential } from "./license/licenseModule";
|
|
57
|
+
export { setBuoyAppId, getBuoyAppId } from "./utils/appIdentity";
|
|
57
58
|
export { guardToolAdapter } from "./sync/toolActionRegistry";
|
|
58
59
|
export { AccountSetup } from "./license/AccountSetup";
|
|
59
60
|
export { AccountSetupButton } from "./license/AccountSetupContent";
|
|
@@ -81,5 +81,12 @@ export declare function getSyncCredential(): {
|
|
|
81
81
|
token: string;
|
|
82
82
|
origin: string;
|
|
83
83
|
} | null;
|
|
84
|
+
/** The token, team and named app for shared Scenarios, or null (no team, a plain key, or an old license package). */
|
|
85
|
+
export declare function getTeamCredential(): {
|
|
86
|
+
token: string;
|
|
87
|
+
origin: string;
|
|
88
|
+
team: string;
|
|
89
|
+
appId: string | null;
|
|
90
|
+
} | null;
|
|
84
91
|
export {};
|
|
85
92
|
//# sourceMappingURL=licenseModule.d.ts.map
|
|
@@ -195,6 +195,8 @@ export declare const devToolsStorageKeys: {
|
|
|
195
195
|
readonly modal: () => "@react_buoy_scenarios_modal";
|
|
196
196
|
readonly library: () => "@react_buoy_scenarios_library";
|
|
197
197
|
readonly active: () => "@react_buoy_scenarios_active";
|
|
198
|
+
/** The team's shared scenarios for this app, saved so they show offline. */
|
|
199
|
+
readonly team: () => "@react_buoy_scenarios_team";
|
|
198
200
|
};
|
|
199
201
|
/**
|
|
200
202
|
* React Query-related storage keys
|