@launchdarkly/toolbar 2.0.0-beta.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -4
- package/cdn/toolbar.min.js +984 -10
- package/cdn/toolbar.min.js.LICENSE.txt +14 -0
- package/dist/core/services/DevServerClient.d.ts +4 -6
- package/dist/core/tests/mocks/providers.d.ts +132 -0
- package/dist/core/types/devServer.d.ts +2 -3
- package/dist/core/ui/{Toolbar/components → Buttons}/IconButton.d.ts +2 -1
- package/dist/core/ui/{Toolbar/components → Buttons}/StarButton.css.d.ts +1 -0
- package/dist/core/ui/JsonEditor/JsonEditor.d.ts +2 -1
- package/dist/core/ui/Toolbar/LaunchDarklyToolbar.d.ts +0 -1
- package/dist/core/ui/Toolbar/components/{AuthenticationModal.d.ts → AuthenticationModal/AuthenticationModal.d.ts} +1 -1
- package/dist/core/ui/Toolbar/components/CopyableText.css.d.ts +4 -0
- package/dist/core/ui/Toolbar/components/CopyableText.d.ts +18 -0
- package/dist/core/ui/Toolbar/components/FilterOptions/FilterOptions.css.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/FilterOptions/FilterOptions.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/FilterOptions/ShareUrlButton.css.d.ts +2 -0
- package/dist/core/ui/Toolbar/components/FilterOptions/ShareUrlButton.d.ts +7 -0
- package/dist/core/ui/Toolbar/components/LoadingScreen/LoadingScreen.css.d.ts +7 -0
- package/dist/core/ui/Toolbar/components/LoadingScreen/LoadingScreen.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/LoadingScreen/index.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/ShareStatePopover/ShareStatePopover.css.d.ts +10 -0
- package/dist/core/ui/Toolbar/components/ShareStatePopover/ShareStatePopover.d.ts +15 -0
- package/dist/core/ui/Toolbar/components/ShareStatePopover/index.d.ts +2 -0
- package/dist/core/ui/Toolbar/components/icons/ChartHistogram.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/icons/ChipAiIcon.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/icons/ClickIcon.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/icons/CursorIcon.d.ts +7 -0
- package/dist/core/ui/Toolbar/components/icons/ExternalLinkIcon.d.ts +6 -0
- package/dist/core/ui/Toolbar/components/icons/FilterTuneIcon.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/icons/FlaskIcon.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/icons/Icon.css.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/icons/InfoIcon.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/icons/ShareIcon.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/icons/index.d.ts +10 -0
- package/dist/core/ui/Toolbar/components/index.d.ts +3 -4
- package/dist/core/ui/Toolbar/components/{ExpandedToolbarContent.d.ts → legacy/ExpandedToolbarContentLegacy.d.ts} +4 -3
- package/dist/core/ui/Toolbar/components/{FlagControls.d.ts → legacy/FlagControls.d.ts} +1 -1
- package/dist/core/ui/Toolbar/{Header → components/legacy/Header}/Header.d.ts +1 -1
- package/dist/core/ui/Toolbar/components/{LocalFlagControls.d.ts → legacy/LocalFlagControls.d.ts} +2 -2
- package/dist/core/ui/Toolbar/components/{LocalObjectFlagControlListItem.d.ts → legacy/LocalObjectFlagControlListItem.d.ts} +2 -2
- package/dist/core/ui/Toolbar/{TabContent → components/legacy/TabContent}/EventsTabContent.d.ts +1 -1
- package/dist/core/ui/Toolbar/{TabContent → components/legacy/TabContent}/FlagSdkOverrideTabContent.d.ts +1 -1
- package/dist/core/ui/Toolbar/{TabContent → components/legacy/TabContent}/SettingsTabContent.d.ts +1 -1
- package/dist/core/ui/Toolbar/components/{TabContentRenderer.d.ts → legacy/TabContentRenderer.d.ts} +2 -2
- package/dist/core/ui/Toolbar/components/legacy/index.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/AnalyticsConsentToast/AnalyticsConsentToast.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/new/AnalyticsConsentToast/AnalyticsConsentToast.module.css.d.ts +13 -0
- package/dist/core/ui/Toolbar/components/new/AnalyticsConsentToast/index.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/ContentActions.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/ContentActions.module.css.d.ts +8 -0
- package/dist/core/ui/Toolbar/components/new/ContentRenderer.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Contexts/AddContextForm.d.ts +6 -0
- package/dist/core/ui/Toolbar/components/new/Contexts/AddContextForm.module.css.d.ts +14 -0
- package/dist/core/ui/Toolbar/components/new/Contexts/ContextItem.d.ts +9 -0
- package/dist/core/ui/Toolbar/components/new/Contexts/ContextItem.module.css.d.ts +19 -0
- package/dist/core/ui/Toolbar/components/new/Contexts/ContextList.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Contexts/ContextList.module.css.d.ts +8 -0
- package/dist/core/ui/Toolbar/components/new/Contexts/ContextListContent.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Contexts/index.d.ts +4 -0
- package/dist/core/ui/Toolbar/components/new/ExpandedToolbarContent.d.ts +10 -0
- package/dist/core/ui/Toolbar/components/new/ExpandedToolbarContent.module.css.d.ts +2 -0
- package/dist/core/ui/Toolbar/components/new/FeatureFlags/FlagControls.d.ts +37 -0
- package/dist/core/ui/Toolbar/components/new/FeatureFlags/FlagControls.module.css.d.ts +9 -0
- package/dist/core/ui/Toolbar/components/new/FeatureFlags/FlagItem.d.ts +11 -0
- package/dist/core/ui/Toolbar/components/new/FeatureFlags/FlagItem.module.css.d.ts +18 -0
- package/dist/core/ui/Toolbar/components/new/FeatureFlags/FlagList.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/FeatureFlags/FlagList.module.css.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/new/FeatureFlags/FlagListContent.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/FeatureFlags/types.d.ts +9 -0
- package/dist/core/ui/Toolbar/components/new/FilterOverlay/FilterOverlay.d.ts +11 -0
- package/dist/core/ui/Toolbar/components/new/FilterOverlay/FilterOverlay.module.css.d.ts +17 -0
- package/dist/core/ui/Toolbar/components/new/FilterOverlay/index.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Header/ToolbarHeader.d.ts +7 -0
- package/dist/core/ui/Toolbar/components/new/Header/ToolbarHeader.module.css.d.ts +6 -0
- package/dist/core/ui/Toolbar/components/new/IconBar/IconBar.d.ts +6 -0
- package/dist/core/ui/Toolbar/components/new/IconBar/IconBar.module.css.d.ts +6 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/InteractiveContent.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/InteractiveContent.module.css.d.ts +4 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/InteractiveWrapper.d.ts +10 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/MCPSetupAlert.d.ts +10 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/MCPSetupAlert.module.css.d.ts +12 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/SelectedElementInfo.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/SelectedElementInfo.module.css.d.ts +21 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/SelectionModeBar.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/SelectionOverlay.d.ts +2 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/WorkflowCard.d.ts +13 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/WorkflowCard.module.css.d.ts +27 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/WorkflowSection.d.ts +6 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/WorkflowSection.module.css.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/index.d.ts +9 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/utils/elementUtils.d.ts +56 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/utils/ideLinks.d.ts +58 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/utils/promptBuilder.d.ts +26 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/utils/throttle.d.ts +10 -0
- package/dist/core/ui/Toolbar/components/new/Interactive/workflowConfigs.d.ts +36 -0
- package/dist/core/ui/Toolbar/components/new/Monitoring/EventsContent.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Monitoring/EventsContent.module.css.d.ts +25 -0
- package/dist/core/ui/Toolbar/components/new/SearchSection.d.ts +8 -0
- package/dist/core/ui/Toolbar/components/new/SearchSection.module.css.d.ts +3 -0
- package/dist/core/ui/Toolbar/components/new/Settings/ConnectionStatus.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/new/Settings/ConnectionStatus.module.css.d.ts +6 -0
- package/dist/core/ui/Toolbar/components/new/Settings/EnvironmentSelector.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Settings/GeneralSettings.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Settings/LogoutButton.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Settings/LogoutButton.module.css.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Settings/PositionSelector.d.ts +6 -0
- package/dist/core/ui/Toolbar/components/new/Settings/Privacy/PrivacySettings.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Settings/ProjectSelector.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Settings/SettingsContent.module.css.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/new/Settings/SettingsItem.d.ts +8 -0
- package/dist/core/ui/Toolbar/components/new/Settings/SettingsItem.module.css.d.ts +6 -0
- package/dist/core/ui/Toolbar/components/new/Settings/SettingsSection.d.ts +7 -0
- package/dist/core/ui/Toolbar/components/new/Settings/SettingsSection.module.css.d.ts +3 -0
- package/dist/core/ui/Toolbar/components/new/Settings/ShareButton.d.ts +5 -0
- package/dist/core/ui/Toolbar/components/new/Settings/ShareButton.module.css.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/Settings/index.d.ts +8 -0
- package/dist/core/ui/Toolbar/components/new/SubtabDropdown.d.ts +8 -0
- package/dist/core/ui/Toolbar/components/new/SubtabDropdown.module.css.d.ts +10 -0
- package/dist/core/ui/Toolbar/components/new/TabBar.d.ts +1 -0
- package/dist/core/ui/Toolbar/components/new/TabBar.module.css.d.ts +4 -0
- package/dist/core/ui/Toolbar/components/new/Tooltip.d.ts +9 -0
- package/dist/core/ui/Toolbar/components/new/Tooltip.module.css.d.ts +2 -0
- package/dist/core/ui/Toolbar/components/new/context/ActiveSubtabProvider.d.ts +12 -0
- package/dist/core/ui/Toolbar/components/new/context/FiltersProvider.d.ts +41 -0
- package/dist/core/ui/Toolbar/components/new/context/TabSearchProvider.d.ts +12 -0
- package/dist/core/ui/Toolbar/components/new/context/index.d.ts +3 -0
- package/dist/core/ui/Toolbar/components/new/index.d.ts +10 -0
- package/dist/core/ui/Toolbar/components/new/types.d.ts +16 -0
- package/dist/core/ui/Toolbar/constants/virtualization.d.ts +1 -0
- package/dist/core/ui/Toolbar/context/DevServerProvider.d.ts +2 -0
- package/dist/core/ui/Toolbar/context/ElementSelectionProvider.d.ts +52 -0
- package/dist/core/ui/Toolbar/context/FlagSdkOverrideProvider.d.ts +5 -1
- package/dist/core/ui/Toolbar/context/api/ApiBundleProvider.d.ts +8 -0
- package/dist/core/ui/Toolbar/context/{ApiProvider.d.ts → api/ApiProvider.d.ts} +1 -2
- package/dist/core/ui/Toolbar/context/{AuthProvider.d.ts → api/AuthProvider.d.ts} +3 -3
- package/dist/core/ui/Toolbar/context/api/ContextsProvider.d.ts +19 -0
- package/dist/core/ui/Toolbar/context/api/EnvironmentProvider.d.ts +12 -0
- package/dist/core/ui/Toolbar/context/{FlagsProvider.d.ts → api/FlagsProvider.d.ts} +5 -4
- package/dist/core/ui/Toolbar/context/{ProjectProvider.d.ts → api/ProjectProvider.d.ts} +4 -3
- package/dist/core/ui/Toolbar/context/api/index.d.ts +8 -0
- package/dist/core/ui/Toolbar/context/index.d.ts +7 -7
- package/dist/core/ui/Toolbar/context/{ActiveTabProvider.d.ts → state/ActiveTabProvider.d.ts} +3 -3
- package/dist/core/ui/Toolbar/context/state/PluginsProvider.d.ts +16 -0
- package/dist/core/ui/Toolbar/context/{SearchProvider.d.ts → state/SearchProvider.d.ts} +2 -2
- package/dist/core/ui/Toolbar/context/state/ToolbarStateBundleProvider.d.ts +13 -0
- package/dist/core/ui/Toolbar/context/state/ToolbarStateProvider.d.ts +35 -0
- package/dist/core/ui/Toolbar/context/{ToolbarUIProvider.d.ts → state/ToolbarUIProvider.d.ts} +1 -1
- package/dist/core/ui/Toolbar/context/state/index.d.ts +6 -0
- package/dist/core/ui/Toolbar/context/telemetry/AnalyticsPreferencesProvider.d.ts +14 -0
- package/dist/core/ui/Toolbar/context/{AnalyticsProvider.d.ts → telemetry/AnalyticsProvider.d.ts} +2 -2
- package/dist/core/ui/Toolbar/context/{InternalClientProvider.d.ts → telemetry/InternalClientProvider.d.ts} +10 -1
- package/dist/core/ui/Toolbar/context/telemetry/TelemetryBundleProvider.d.ts +12 -0
- package/dist/core/ui/Toolbar/context/telemetry/index.d.ts +4 -0
- package/dist/core/ui/Toolbar/hooks/index.d.ts +1 -1
- package/dist/core/ui/Toolbar/hooks/useLocalStorage.d.ts +10 -0
- package/dist/core/ui/Toolbar/types/toolbar.d.ts +3 -2
- package/dist/core/ui/Toolbar/utils/clipboard.d.ts +6 -0
- package/dist/core/ui/Toolbar/utils/context.d.ts +33 -0
- package/dist/core/ui/Toolbar/utils/localStorage.d.ts +29 -1
- package/dist/core/utils/analytics.d.ts +51 -1
- package/dist/core/utils/urlOverrides.d.ts +105 -0
- package/dist/flags/toolbarFlags.d.ts +6 -1
- package/dist/index.cjs +8 -6
- package/dist/index.cjs.map +1 -1
- package/dist/js/263.js +88 -0
- package/dist/js/263.js.map +1 -0
- package/dist/js/758.js +446 -0
- package/dist/js/758.js.map +1 -0
- package/dist/js/index.js +3 -527
- package/dist/js/index.js.map +1 -1
- package/dist/js/plugins.js +1 -0
- package/dist/js/react.js +1 -0
- package/dist/js/types-entry.js +0 -0
- package/dist/plugins.cjs +483 -0
- package/dist/plugins.cjs.map +1 -0
- package/dist/plugins.d.ts +21 -0
- package/dist/react.cjs +125 -0
- package/dist/react.cjs.map +1 -0
- package/dist/react.d.ts +25 -0
- package/dist/types-entry.cjs +20 -0
- package/dist/types-entry.cjs.map +1 -0
- package/dist/types-entry.d.ts +12 -0
- package/package.json +94 -46
- package/dist/core/ui/Toolbar/components/Popover.css.d.ts +0 -2
- package/dist/core/ui/Toolbar/hooks/useToolbarState.d.ts +0 -25
- package/dist/core/ui/{Toolbar/components → Buttons}/IconButton.css.d.ts +0 -0
- package/dist/core/ui/{Toolbar/components → Buttons}/IconLinkButton.d.ts +0 -0
- package/dist/core/ui/{Toolbar/components → Buttons}/StarButton.d.ts +0 -0
- package/dist/core/ui/{Toolbar/components → Select}/Select.css.d.ts +0 -0
- package/dist/core/ui/{Toolbar/components → Select}/Select.d.ts +0 -0
- package/dist/core/ui/Toolbar/components/{AuthenticationModal.css.d.ts → AuthenticationModal/AuthenticationModal.css.d.ts} +0 -0
- package/dist/core/ui/Toolbar/components/{LoginScreen.css.d.ts → LoginScreen/LoginScreen.css.d.ts} +0 -0
- package/dist/core/ui/Toolbar/components/{LoginScreen.d.ts → LoginScreen/LoginScreen.d.ts} +0 -0
- package/dist/core/ui/Toolbar/components/{ActionButtonsContainer.css.d.ts → legacy/ActionButtonsContainer.css.d.ts} +0 -0
- package/dist/core/ui/Toolbar/components/{ActionButtonsContainer.d.ts → legacy/ActionButtonsContainer.d.ts} +0 -0
- package/dist/core/ui/Toolbar/components/{FlagControls.css.d.ts → legacy/FlagControls.css.d.ts} +0 -0
- package/dist/core/ui/Toolbar/{Header → components/legacy/Header}/Header.css.d.ts +0 -0
- package/dist/core/ui/Toolbar/{Header → components/legacy/Header}/components/ActionButtons.d.ts +0 -0
- package/dist/core/ui/Toolbar/{Header → components/legacy/Header}/components/EnvironmentLabel.d.ts +0 -0
- package/dist/core/ui/Toolbar/{Header → components/legacy/Header}/components/LogoSection.d.ts +0 -0
- package/dist/core/ui/Toolbar/{Header → components/legacy/Header}/components/SearchSection.d.ts +0 -0
- package/dist/core/ui/Toolbar/{Header → components/legacy/Header}/components/index.d.ts +1 -1
- /package/dist/core/ui/Toolbar/components/{LocalFlagControls.css.d.ts → legacy/LocalFlagControls.css.d.ts} +0 -0
- /package/dist/core/ui/Toolbar/components/{LocalObjectFlagControlListItem.css.d.ts → legacy/LocalObjectFlagControlListItem.css.d.ts} +0 -0
- /package/dist/core/ui/Toolbar/{TabContent → components/legacy/TabContent}/EventsTabContent.css.d.ts +0 -0
- /package/dist/core/ui/Toolbar/{TabContent → components/legacy/TabContent}/FlagDevServerTabContent.css.d.ts +0 -0
- /package/dist/core/ui/Toolbar/{TabContent → components/legacy/TabContent}/FlagDevServerTabContent.d.ts +0 -0
- /package/dist/core/ui/Toolbar/{TabContent → components/legacy/TabContent}/SettingsTab.css.d.ts +0 -0
- /package/dist/core/ui/Toolbar/components/{TabContentRenderer.css.d.ts → legacy/TabContentRenderer.css.d.ts} +0 -0
- /package/dist/core/ui/Toolbar/context/{IFrameProvider.d.ts → api/IFrameProvider.d.ts} +0 -0
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
/*! js-cookie v3.0.5 | MIT */
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
4
|
* @license React
|
|
3
5
|
* react-dom-client.production.js
|
|
@@ -56,4 +58,16 @@
|
|
|
56
58
|
*
|
|
57
59
|
* This source code is licensed under the MIT license found in the
|
|
58
60
|
* LICENSE file in the root directory of this source tree.
|
|
61
|
+
*/
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* @preserve
|
|
65
|
+
* JS Implementation of incremental MurmurHash3 (r150) (as of May 10, 2013)
|
|
66
|
+
*
|
|
67
|
+
* @author <a href="mailto:jensyt@gmail.com">Jens Taylor</a>
|
|
68
|
+
* @see http://github.com/homebrewing/brauhaus-diff
|
|
69
|
+
* @author <a href="mailto:gary.court@gmail.com">Gary Court</a>
|
|
70
|
+
* @see http://github.com/garycourt/murmurhash-js
|
|
71
|
+
* @author <a href="mailto:aappleby@gmail.com">Austin Appleby</a>
|
|
72
|
+
* @see http://sites.google.com/site/murmurhash/
|
|
59
73
|
*/
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
+
import { ApiVariation } from '../ui/Toolbar/types/ldApi';
|
|
1
2
|
export interface DevServerProjectResponse {
|
|
2
3
|
_lastSyncedFromSource: number;
|
|
3
|
-
availableVariations: Record<string,
|
|
4
|
+
availableVariations: Record<string, ApiVariation[]>;
|
|
4
5
|
flagsState: Record<string, FlagState>;
|
|
5
6
|
overrides: Record<string, Override>;
|
|
6
7
|
sourceEnvironmentKey: string;
|
|
7
|
-
|
|
8
|
-
export interface Variation {
|
|
9
|
-
_id: string;
|
|
10
|
-
name: string;
|
|
11
|
-
value: any;
|
|
8
|
+
context?: any;
|
|
12
9
|
}
|
|
13
10
|
export interface FlagState {
|
|
14
11
|
value: any;
|
|
@@ -28,4 +25,5 @@ export declare class DevServerClient {
|
|
|
28
25
|
value: any;
|
|
29
26
|
}>;
|
|
30
27
|
clearOverride(flagKey: string): Promise<void>;
|
|
28
|
+
updateProjectContext(context: any): Promise<DevServerProjectResponse>;
|
|
31
29
|
}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { vi } from 'vitest';
|
|
2
|
+
/**
|
|
3
|
+
* Shared mock factory functions for provider contexts.
|
|
4
|
+
*
|
|
5
|
+
* GLOBAL MOCKS:
|
|
6
|
+
* AnalyticsPreferencesProvider is mocked globally in vitest.setup.ts.
|
|
7
|
+
* Most test files don't need to do anything - the mock is automatic.
|
|
8
|
+
*
|
|
9
|
+
* TESTING REAL IMPLEMENTATIONS:
|
|
10
|
+
* If your test file tests the REAL implementation of a provider, add this at
|
|
11
|
+
* the top of your test file:
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* vi.unmock('../ui/Toolbar/context/telemetry/AnalyticsPreferencesProvider');
|
|
15
|
+
*
|
|
16
|
+
* OVERRIDING WITH DYNAMIC VALUES:
|
|
17
|
+
* If your test needs to change mock values during execution, override the
|
|
18
|
+
* global mock with createDynamicAnalyticsPreferencesProviderMock:
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* const { getMockValue, setMockValue } = vi.hoisted(() => {
|
|
22
|
+
* let value = false;
|
|
23
|
+
* return { getMockValue: () => value, setMockValue: (v) => { value = v; } };
|
|
24
|
+
* });
|
|
25
|
+
*
|
|
26
|
+
* vi.mock('../ui/Toolbar/context/telemetry/AnalyticsPreferencesProvider', async () => {
|
|
27
|
+
* const { createDynamicAnalyticsPreferencesProviderMock } = await import('./mocks/providers');
|
|
28
|
+
* return createDynamicAnalyticsPreferencesProviderMock({ getIsOptedInToAnalytics: getMockValue });
|
|
29
|
+
* });
|
|
30
|
+
*/
|
|
31
|
+
interface AnalyticsPreferencesMock {
|
|
32
|
+
useAnalyticsPreferences: () => {
|
|
33
|
+
isOptedInToAnalytics: boolean;
|
|
34
|
+
isOptedInToEnhancedAnalytics: boolean;
|
|
35
|
+
isOptedInToSessionReplay: boolean;
|
|
36
|
+
handleToggleAnalyticsOptOut: ReturnType<typeof vi.fn>;
|
|
37
|
+
handleToggleEnhancedAnalyticsOptOut: ReturnType<typeof vi.fn>;
|
|
38
|
+
handleToggleSessionReplayOptOut: ReturnType<typeof vi.fn>;
|
|
39
|
+
};
|
|
40
|
+
AnalyticsPreferencesProvider: ({ children }: {
|
|
41
|
+
children: React.ReactNode;
|
|
42
|
+
}) => React.ReactNode;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Creates a mock for AnalyticsPreferencesProvider.
|
|
46
|
+
* Used by vitest.setup.ts for global mocking.
|
|
47
|
+
*/
|
|
48
|
+
export declare function createAnalyticsPreferencesProviderMock(overrides?: {
|
|
49
|
+
isOptedInToAnalytics?: boolean;
|
|
50
|
+
isOptedInToEnhancedAnalytics?: boolean;
|
|
51
|
+
isOptedInToSessionReplay?: boolean;
|
|
52
|
+
}): AnalyticsPreferencesMock;
|
|
53
|
+
/**
|
|
54
|
+
* Creates a mock for AnalyticsPreferencesProvider with dynamic values.
|
|
55
|
+
* Use this when you need to change mock values during test execution.
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* // For dynamic isOptedInToAnalytics:
|
|
59
|
+
* let mockIsOptedIn = false;
|
|
60
|
+
* vi.mock('../ui/Toolbar/context/telemetry/AnalyticsPreferencesProvider', async () => {
|
|
61
|
+
* const { createDynamicAnalyticsPreferencesProviderMock } = await import('./mocks/providers');
|
|
62
|
+
* return createDynamicAnalyticsPreferencesProviderMock({ getIsOptedInToAnalytics: () => mockIsOptedIn });
|
|
63
|
+
* });
|
|
64
|
+
*
|
|
65
|
+
* // For dynamic isOptedInToEnhancedAnalytics:
|
|
66
|
+
* vi.mock('../ui/Toolbar/context/telemetry/AnalyticsPreferencesProvider', async () => {
|
|
67
|
+
* const { createDynamicAnalyticsPreferencesProviderMock } = await import('./mocks/providers');
|
|
68
|
+
* return createDynamicAnalyticsPreferencesProviderMock({ getIsOptedInToEnhancedAnalytics: () => mockValue });
|
|
69
|
+
* });
|
|
70
|
+
*
|
|
71
|
+
* // In tests:
|
|
72
|
+
* mockIsOptedIn = true; // Changes mock behavior
|
|
73
|
+
*/
|
|
74
|
+
export declare function createDynamicAnalyticsPreferencesProviderMock(options: {
|
|
75
|
+
getIsOptedInToAnalytics?: () => boolean;
|
|
76
|
+
getIsOptedInToEnhancedAnalytics?: () => boolean;
|
|
77
|
+
getIsOptedInToSessionReplay?: () => boolean;
|
|
78
|
+
}): AnalyticsPreferencesMock;
|
|
79
|
+
/**
|
|
80
|
+
* Creates a mock for InternalClientProvider with a customizable mock LDClient.
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* const mockLDClient = { track: vi.fn(), ... };
|
|
84
|
+
* vi.mock('../../ui/Toolbar/context/telemetry/InternalClientProvider', () =>
|
|
85
|
+
* createInternalClientProviderMock(mockLDClient)
|
|
86
|
+
* );
|
|
87
|
+
*/
|
|
88
|
+
export declare function createInternalClientProviderMock(mockClient?: Record<string, unknown>): {
|
|
89
|
+
useInternalClient: () => {
|
|
90
|
+
client: Record<string, unknown> | null;
|
|
91
|
+
loading: boolean;
|
|
92
|
+
error: null;
|
|
93
|
+
updateContext: ReturnType<typeof vi.fn>;
|
|
94
|
+
};
|
|
95
|
+
InternalClientProvider: ({ children }: {
|
|
96
|
+
children: React.ReactNode;
|
|
97
|
+
}) => React.ReactNode;
|
|
98
|
+
};
|
|
99
|
+
/**
|
|
100
|
+
* Creates a mock for DevServerProvider.
|
|
101
|
+
*
|
|
102
|
+
* @example
|
|
103
|
+
* vi.mock('../../ui/Toolbar/context/DevServerProvider', () =>
|
|
104
|
+
* createDevServerProviderMock({ connectionStatus: 'connected' })
|
|
105
|
+
* );
|
|
106
|
+
*/
|
|
107
|
+
export declare function createDevServerProviderMock(overrides?: {
|
|
108
|
+
sourceEnvironmentKey?: string;
|
|
109
|
+
connectionStatus?: string;
|
|
110
|
+
flags?: Record<string, unknown>;
|
|
111
|
+
isLoading?: boolean;
|
|
112
|
+
error?: Error | null;
|
|
113
|
+
}): {
|
|
114
|
+
useDevServerContext: () => {
|
|
115
|
+
state: {
|
|
116
|
+
sourceEnvironmentKey: string;
|
|
117
|
+
connectionStatus: string;
|
|
118
|
+
flags: Record<string, unknown>;
|
|
119
|
+
lastSyncTime: number;
|
|
120
|
+
isLoading: boolean;
|
|
121
|
+
error: Error | null;
|
|
122
|
+
};
|
|
123
|
+
setOverride: ReturnType<typeof vi.fn>;
|
|
124
|
+
clearOverride: ReturnType<typeof vi.fn>;
|
|
125
|
+
clearAllOverrides: ReturnType<typeof vi.fn>;
|
|
126
|
+
refresh: ReturnType<typeof vi.fn>;
|
|
127
|
+
};
|
|
128
|
+
DevServerProvider: ({ children }: {
|
|
129
|
+
children: React.ReactNode;
|
|
130
|
+
}) => React.ReactNode;
|
|
131
|
+
};
|
|
132
|
+
export {};
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export type { Variation } from '../services/DevServerClient';
|
|
1
|
+
import { ApiVariation } from '../ui/Toolbar/types/ldApi';
|
|
3
2
|
export interface EnhancedFlag {
|
|
4
3
|
key: string;
|
|
5
4
|
name: string;
|
|
6
5
|
currentValue: any;
|
|
7
6
|
isOverridden: boolean;
|
|
8
7
|
originalValue: any;
|
|
9
|
-
availableVariations:
|
|
8
|
+
availableVariations: ApiVariation[];
|
|
10
9
|
type: 'boolean' | 'multivariate' | 'string' | 'number' | 'object';
|
|
11
10
|
sourceEnvironment: string;
|
|
12
11
|
enabled: boolean;
|
|
@@ -2,10 +2,11 @@ import React from 'react';
|
|
|
2
2
|
interface IconButtonProps {
|
|
3
3
|
icon: React.ReactNode;
|
|
4
4
|
label: string;
|
|
5
|
-
onClick: () => void;
|
|
5
|
+
onClick: (event: React.MouseEvent) => void;
|
|
6
6
|
disabled?: boolean;
|
|
7
7
|
className?: string;
|
|
8
8
|
size?: 'small' | 'medium' | 'large';
|
|
9
|
+
title?: string;
|
|
9
10
|
}
|
|
10
11
|
export declare function IconButton(props: IconButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
11
12
|
export {};
|
|
@@ -6,12 +6,13 @@ interface JsonEditorProps {
|
|
|
6
6
|
onFocus?: () => void;
|
|
7
7
|
onBlur?: (e: React.FocusEvent<HTMLDivElement>, value: string) => void;
|
|
8
8
|
onChange?: (value: string, viewUpdate: ViewUpdate) => void;
|
|
9
|
-
onLintErrors
|
|
9
|
+
onLintErrors?: (errors: Diagnostic[]) => void;
|
|
10
10
|
initialState?: {
|
|
11
11
|
startCursorAtLine?: number;
|
|
12
12
|
autoFocus?: boolean;
|
|
13
13
|
};
|
|
14
14
|
onEditorHeightChange: (height: number) => void;
|
|
15
|
+
readOnly?: boolean;
|
|
15
16
|
}
|
|
16
17
|
export declare function JsonEditor(props: JsonEditorProps): import("react/jsx-runtime").JSX.Element;
|
|
17
18
|
export {};
|
|
@@ -5,7 +5,6 @@ export interface LdToolbarProps {
|
|
|
5
5
|
baseUrl: string;
|
|
6
6
|
flagOverridePlugin?: IFlagOverridePlugin;
|
|
7
7
|
eventInterceptionPlugin?: IEventInterceptionPlugin;
|
|
8
|
-
domId: string;
|
|
9
8
|
}
|
|
10
9
|
export declare function LdToolbar(props: LdToolbarProps): import("react/jsx-runtime").JSX.Element;
|
|
11
10
|
export interface LaunchDarklyToolbarProps {
|
|
@@ -2,5 +2,5 @@ interface AuthenticationModalProps {
|
|
|
2
2
|
isOpen: boolean;
|
|
3
3
|
onClose: () => void;
|
|
4
4
|
}
|
|
5
|
-
export declare function AuthenticationModal(props: AuthenticationModalProps):
|
|
5
|
+
export declare function AuthenticationModal(props: AuthenticationModalProps): null;
|
|
6
6
|
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
interface CopyableTextProps {
|
|
2
|
+
/** The text to display and copy to clipboard */
|
|
3
|
+
text: string;
|
|
4
|
+
/** Optional callback fired after copying (useful for analytics) */
|
|
5
|
+
onCopy?: (text: string) => void;
|
|
6
|
+
/** Custom aria-label for accessibility. Defaults to "Copy {text} to clipboard" */
|
|
7
|
+
ariaLabel?: string;
|
|
8
|
+
/** Custom title tooltip. Defaults to "Copy {text} to clipboard" */
|
|
9
|
+
title?: string;
|
|
10
|
+
/** Additional CSS class name */
|
|
11
|
+
className?: string;
|
|
12
|
+
/** Custom tooltip text shown after copying. Defaults to "Copied!" */
|
|
13
|
+
copiedMessage?: string;
|
|
14
|
+
/** Duration in ms to show the copied tooltip. Defaults to 2000 */
|
|
15
|
+
copiedDuration?: number;
|
|
16
|
+
}
|
|
17
|
+
export declare function CopyableText({ text, onCopy, ariaLabel, title, className, copiedMessage, copiedDuration, }: CopyableTextProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export {};
|
|
@@ -5,6 +5,7 @@ export interface FilterOptionsProps {
|
|
|
5
5
|
starredCount: number;
|
|
6
6
|
onClearOverrides?: () => void;
|
|
7
7
|
onClearStarred?: () => void;
|
|
8
|
+
onShareUrl?: () => void;
|
|
8
9
|
isLoading?: boolean;
|
|
9
10
|
}
|
|
10
11
|
export declare function FilterOptions(props: FilterOptionsProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const loadingContainer: string;
|
|
2
|
+
export declare const loadingHeader: string;
|
|
3
|
+
export declare const headerLogo: string;
|
|
4
|
+
export declare const loadingMainContent: string;
|
|
5
|
+
export declare const loadingContent: string;
|
|
6
|
+
export declare const spinner: string;
|
|
7
|
+
export declare const loadingText: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { LoadingScreen } from './LoadingScreen';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const popover: string;
|
|
2
|
+
export declare const header: string;
|
|
3
|
+
export declare const title: string;
|
|
4
|
+
export declare const content: string;
|
|
5
|
+
export declare const description: string;
|
|
6
|
+
export declare const options: string;
|
|
7
|
+
export declare const option: string;
|
|
8
|
+
export declare const optionLabel: string;
|
|
9
|
+
export declare const count: string;
|
|
10
|
+
export declare const actions: string;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface ShareStateOptions {
|
|
2
|
+
includeFlagOverrides: boolean;
|
|
3
|
+
includeContexts: boolean;
|
|
4
|
+
includeSettings: boolean;
|
|
5
|
+
}
|
|
6
|
+
interface ShareStatePopoverProps {
|
|
7
|
+
isOpen: boolean;
|
|
8
|
+
onClose: () => void;
|
|
9
|
+
onShare: (options: ShareStateOptions) => void;
|
|
10
|
+
overrideCount: number;
|
|
11
|
+
contextCount: number;
|
|
12
|
+
anchorRef?: React.RefObject<HTMLElement>;
|
|
13
|
+
}
|
|
14
|
+
export declare function ShareStatePopover(props: ShareStatePopoverProps): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export {};
|
|
@@ -15,3 +15,13 @@ export { StarOutlineIcon } from './StarOutlineIcon';
|
|
|
15
15
|
export { PersonPassword } from './PersonPassword';
|
|
16
16
|
export { ThumbUpIcon } from './ThumbUpIcon';
|
|
17
17
|
export { ThumbDownIcon } from './ThumbDownIcon';
|
|
18
|
+
export { FilterTuneIcon } from './FilterTuneIcon';
|
|
19
|
+
export { ClickIcon } from './ClickIcon';
|
|
20
|
+
export { ChartHistogram } from './ChartHistogram';
|
|
21
|
+
export { ChipAiIcon } from './ChipAiIcon';
|
|
22
|
+
export { FlaskIcon } from './FlaskIcon';
|
|
23
|
+
export { ExternalLinkIcon } from './ExternalLinkIcon';
|
|
24
|
+
export { CursorIcon } from './CursorIcon';
|
|
25
|
+
export { InfoIcon } from './InfoIcon';
|
|
26
|
+
export { AddIcon } from './AddIcon';
|
|
27
|
+
export { ShareIcon } from './ShareIcon';
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
export { ActionButtonsContainer } from './ActionButtonsContainer';
|
|
2
|
-
export { LoginScreen } from './LoginScreen';
|
|
1
|
+
export { ActionButtonsContainer } from './legacy/ActionButtonsContainer';
|
|
3
2
|
export { CircleLogo } from './CircleLogo';
|
|
4
3
|
export { ConnectionStatus } from './ConnectionStatus';
|
|
4
|
+
export { CopyableText } from './CopyableText';
|
|
5
5
|
export { DoNotTrackWarning } from './DoNotTrackWarning';
|
|
6
|
-
export { ExpandedToolbarContent } from './ExpandedToolbarContent';
|
|
7
6
|
export { LaunchDarklyIcon } from './icons/LaunchDarklyIcon';
|
|
8
7
|
export { StatusDot } from './StatusDot';
|
|
9
|
-
export { TabContentRenderer } from './TabContentRenderer';
|
|
8
|
+
export { TabContentRenderer } from './legacy/TabContentRenderer';
|
|
10
9
|
export { ErrorMessage } from './ErrorMessage';
|
|
11
10
|
export { type FlagFilterMode, FlagFilterOptionsContext, useFlagFilterOptions, } from './FilterOptions/useFlagFilterOptions';
|
|
12
11
|
export { FilterOptions } from './FilterOptions/FilterOptions';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { Dispatch, SetStateAction } from 'react';
|
|
2
|
-
import { ActiveTabId, ToolbarMode } from '
|
|
3
|
-
import { IEventInterceptionPlugin, IFlagOverridePlugin } from '
|
|
2
|
+
import { ActiveTabId, ToolbarMode } from '../../types';
|
|
3
|
+
import { IEventInterceptionPlugin, IFlagOverridePlugin } from '../../../../../types';
|
|
4
4
|
interface ExpandedToolbarContentProps {
|
|
5
5
|
activeTab: ActiveTabId;
|
|
6
6
|
slideDirection: number;
|
|
@@ -20,6 +20,7 @@ interface ExpandedToolbarContentProps {
|
|
|
20
20
|
onHeaderMouseDown?: (event: React.MouseEvent) => void;
|
|
21
21
|
reloadOnFlagChangeIsEnabled: boolean;
|
|
22
22
|
onToggleReloadOnFlagChange: () => void;
|
|
23
|
+
onOpenAuthModal?: () => void;
|
|
23
24
|
}
|
|
24
|
-
export declare const
|
|
25
|
+
export declare const ExpandedToolbarContentLegacy: React.ForwardRefExoticComponent<ExpandedToolbarContentProps & React.RefAttributes<HTMLDivElement>>;
|
|
25
26
|
export {};
|
package/dist/core/ui/Toolbar/components/{LocalFlagControls.d.ts → legacy/LocalFlagControls.d.ts}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { EnhancedFlag } from '
|
|
1
|
+
import { LocalFlag } from '../../context';
|
|
2
|
+
import { EnhancedFlag } from '../../../../types/devServer';
|
|
3
3
|
interface LocalBooleanFlagControlProps {
|
|
4
4
|
flag: LocalFlag;
|
|
5
5
|
onOverride: (value: boolean) => void;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { EnhancedFlag } from '../../../../types/devServer';
|
|
2
|
+
import { LocalFlag } from '../../context';
|
|
3
3
|
interface LocalObjectFlagControlListItemProps {
|
|
4
4
|
handleClearOverride: (key: string) => void;
|
|
5
5
|
handleOverride: (flagKey: string, value: any) => void;
|
package/dist/core/ui/Toolbar/components/{TabContentRenderer.d.ts → legacy/TabContentRenderer.d.ts}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { TabId, ToolbarMode } from '
|
|
2
|
-
import { IEventInterceptionPlugin, IFlagOverridePlugin } from '
|
|
1
|
+
import { TabId, ToolbarMode } from '../../types';
|
|
2
|
+
import { IEventInterceptionPlugin, IFlagOverridePlugin } from '../../../../../types';
|
|
3
3
|
interface TabContentRendererProps {
|
|
4
4
|
activeTab: TabId;
|
|
5
5
|
baseUrl: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './ExpandedToolbarContentLegacy';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare const overlay: string;
|
|
2
|
+
export declare const container: string;
|
|
3
|
+
export declare const infoIcon: string;
|
|
4
|
+
export declare const content: string;
|
|
5
|
+
export declare const textContent: string;
|
|
6
|
+
export declare const title: string;
|
|
7
|
+
export declare const description: string;
|
|
8
|
+
export declare const privacyLink: string;
|
|
9
|
+
export declare const actions: string;
|
|
10
|
+
export declare const button: string;
|
|
11
|
+
export declare const primaryButton: string;
|
|
12
|
+
export declare const closeButton: string;
|
|
13
|
+
export declare const closeIcon: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { AnalyticsConsentToast } from './AnalyticsConsentToast';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function ContentActions(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const container: string;
|
|
2
|
+
export declare const searchContainer: string;
|
|
3
|
+
export declare const searchDropdown: string;
|
|
4
|
+
export declare const searchDropdownFlags: string;
|
|
5
|
+
export declare const searchDropdownLeft: string;
|
|
6
|
+
export declare const actionButton: string;
|
|
7
|
+
export declare const clearButton: string;
|
|
8
|
+
export declare const icon: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function ContentRenderer(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare const container: string;
|
|
2
|
+
export declare const header: string;
|
|
3
|
+
export declare const title: string;
|
|
4
|
+
export declare const closeButton: string;
|
|
5
|
+
export declare const form: string;
|
|
6
|
+
export declare const field: string;
|
|
7
|
+
export declare const label: string;
|
|
8
|
+
export declare const required: string;
|
|
9
|
+
export declare const input: string;
|
|
10
|
+
export declare const jsonEditorContainer: string;
|
|
11
|
+
export declare const errorText: string;
|
|
12
|
+
export declare const actions: string;
|
|
13
|
+
export declare const cancelButton: string;
|
|
14
|
+
export declare const submitButton: string;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { LDContext } from 'launchdarkly-js-client-sdk';
|
|
2
|
+
interface ContextItemProps {
|
|
3
|
+
context: LDContext;
|
|
4
|
+
isActiveContext: boolean;
|
|
5
|
+
handleHeightChange?: (index: number, height: number) => void;
|
|
6
|
+
index?: number;
|
|
7
|
+
}
|
|
8
|
+
export declare function ContextItem({ context, isActiveContext, handleHeightChange, index }: ContextItemProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export {};
|