@mappedin/react-native-sdk 6.0.0-alpha.9 → 6.0.0-beta.1
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/LICENSE.txt +104 -0
- package/README.md +162 -164
- package/lib/components/label.d.ts +45 -0
- package/lib/components/label.d.ts.map +1 -0
- package/lib/components/marker.d.ts +54 -0
- package/lib/components/marker.d.ts.map +1 -0
- package/lib/components/model.d.ts +45 -0
- package/lib/components/model.d.ts.map +1 -0
- package/lib/components/path.d.ts +42 -0
- package/lib/components/path.d.ts.map +1 -0
- package/lib/components/shape.d.ts +54 -0
- package/lib/components/shape.d.ts.map +1 -0
- package/lib/controls/event-control.d.ts +89 -0
- package/lib/controls/event-control.d.ts.map +1 -0
- package/lib/controls/map-view-control.d.ts +360 -0
- package/lib/controls/map-view-control.d.ts.map +1 -0
- package/lib/errors.d.ts +4 -0
- package/lib/errors.d.ts.map +1 -0
- package/lib/extension-registry.d.ts +29 -0
- package/lib/extension-registry.d.ts.map +1 -0
- package/lib/hooks/extensions/use-register-extension.d.ts +92 -0
- package/lib/hooks/extensions/use-register-extension.d.ts.map +1 -0
- package/lib/hooks/use-bridge.d.ts +18 -0
- package/lib/hooks/use-bridge.d.ts.map +1 -0
- package/lib/hooks/use-event-callback.d.ts +24 -0
- package/lib/hooks/use-event-callback.d.ts.map +1 -0
- package/lib/hooks/use-map-view-event.d.ts +27 -0
- package/lib/hooks/use-map-view-event.d.ts.map +1 -0
- package/lib/hooks/use-map.d.ts +72 -0
- package/lib/hooks/use-map.d.ts.map +1 -0
- package/lib/index.d.ts +30 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +44496 -0
- package/lib/index.js.map +7 -0
- package/lib/map-view.d.ts +51 -0
- package/lib/map-view.d.ts.map +1 -0
- package/lib/types.d.ts +3 -0
- package/lib/types.d.ts.map +1 -0
- package/lib/utils/extension-event-scripts.d.ts +29 -0
- package/lib/utils/extension-event-scripts.d.ts.map +1 -0
- package/lib/utils.d.ts +28 -0
- package/lib/utils.d.ts.map +1 -0
- package/package.json +52 -29
- package/dist/commonjs/index.js +0 -3628
- package/dist/esm/index.js +0 -3628
- package/dist/index.d.ts +0 -6863
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Registration state for extension registration lifecycle
|
|
3
|
+
*/
|
|
4
|
+
export type RegistrationState = 'unregistered' | 'registering' | 'registered';
|
|
5
|
+
/**
|
|
6
|
+
* Creates a registration control system to prevent race conditions between multiple hook instances.
|
|
7
|
+
* Uses closure to encapsulate state and provide controlled access.
|
|
8
|
+
*
|
|
9
|
+
* CRITICAL: Must use module-level closure approach for race prevention. Context-based coordination
|
|
10
|
+
* fails because React context updates are async/batched, creating race windows where multiple
|
|
11
|
+
* components can read identical state and all proceed with registration simultaneously.
|
|
12
|
+
* Only synchronous, module-level state can provide atomic coordination across component instances.
|
|
13
|
+
*
|
|
14
|
+
* @param extensionName - The name of the extension being registered
|
|
15
|
+
* @returns Registration control interface with methods to manage concurrent registrations
|
|
16
|
+
*/
|
|
17
|
+
declare function createRegistrationControl(): {
|
|
18
|
+
/**
|
|
19
|
+
* Checks if a registration is currently in progress
|
|
20
|
+
* @returns True if registration is active, false otherwise
|
|
21
|
+
*/
|
|
22
|
+
isCurrentlyRegistering(): boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Starts a registration process, ensuring only one can run at a time
|
|
25
|
+
* @param registrationFn - The async function to execute for registration
|
|
26
|
+
* @returns Promise that resolves when registration completes
|
|
27
|
+
*/
|
|
28
|
+
startRegistration(registrationFn: () => Promise<void>): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* Resets the registration state (useful when bridge becomes unavailable)
|
|
31
|
+
*/
|
|
32
|
+
reset(): void;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Gets or creates a registration control for a specific extension
|
|
36
|
+
* @param extensionName - The name of the extension
|
|
37
|
+
* @returns Registration control instance for the extension
|
|
38
|
+
*/
|
|
39
|
+
declare function getRegistrationControl(extensionName: string): ReturnType<typeof createRegistrationControl>;
|
|
40
|
+
export { createRegistrationControl, getRegistrationControl };
|
|
41
|
+
/**
|
|
42
|
+
* Configuration for the extension registration hook
|
|
43
|
+
*/
|
|
44
|
+
export interface UseRegisterExtensionConfig {
|
|
45
|
+
/**
|
|
46
|
+
* The name of the extension to register (e.g., 'blue-dot', 'dynamic-focus')
|
|
47
|
+
*/
|
|
48
|
+
extensionName: string;
|
|
49
|
+
/**
|
|
50
|
+
* Function that returns the registration script for the extension
|
|
51
|
+
*/
|
|
52
|
+
getRegistrationScript: () => string;
|
|
53
|
+
/**
|
|
54
|
+
* Optional logger for debugging
|
|
55
|
+
*/
|
|
56
|
+
logger?: {
|
|
57
|
+
log: (...messages: string[]) => void;
|
|
58
|
+
error: (message: string, error?: unknown) => void;
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* React hook for registering extensions with the WebView bridge
|
|
63
|
+
*
|
|
64
|
+
* This hook handles the complete extension registration lifecycle:
|
|
65
|
+
* - Monitors bridge readiness state
|
|
66
|
+
* - Checks if extension is already registered to avoid duplicates
|
|
67
|
+
* - Injects registration script when needed
|
|
68
|
+
* - Updates extension state in shared context
|
|
69
|
+
* - Handles all registration errors gracefully
|
|
70
|
+
*
|
|
71
|
+
* Multiple hooks can use this safely - the registration logic is idempotent
|
|
72
|
+
* and will only register the extension once per bridge lifecycle.
|
|
73
|
+
*
|
|
74
|
+
* @param config - Configuration for the extension registration
|
|
75
|
+
* @returns void - Hook performs registration as side effect only
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* ```tsx
|
|
79
|
+
* function MyExtensionHook() {
|
|
80
|
+
* useRegisterExtension({
|
|
81
|
+
* extensionName: 'my-extension',
|
|
82
|
+
* getRegistrationScript: () => 'extension script here'
|
|
83
|
+
* });
|
|
84
|
+
*
|
|
85
|
+
* // Read isReady from context extensions
|
|
86
|
+
* const { extensions } = useContext(MappedinContext);
|
|
87
|
+
* const isReady = extensions?.['my-extension']?.isReady || false;
|
|
88
|
+
* }
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
91
|
+
export declare function useRegisterExtension(config: UseRegisterExtensionConfig): void;
|
|
92
|
+
//# sourceMappingURL=use-register-extension.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-register-extension.d.ts","sourceRoot":"","sources":["../../../src/hooks/extensions/use-register-extension.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG,aAAa,GAAG,YAAY,CAAC;AAE9E;;;;;;;;;;;GAWG;AACH,iBAAS,yBAAyB;IAKhC;;;OAGG;8BACuB,OAAO;IAIjC;;;;OAIG;sCACqC,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAe3E;;OAEG;aACM,IAAI;EAKd;AAOD;;;;GAIG;AACH,iBAAS,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAKnG;AAGD,OAAO,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,0BAA0B;IAC1C;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,qBAAqB,EAAE,MAAM,MAAM,CAAC;IAEpC;;OAEG;IACH,MAAM,CAAC,EAAE;QACR,GAAG,EAAE,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;QACrC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;KAClD,CAAC;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,0BAA0B,GAAG,IAAI,CAyH7E"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { WebView, WebViewMessageEvent } from 'react-native-webview';
|
|
2
|
+
import type { Instruction } from '@mappedin/webview-bridge';
|
|
3
|
+
/**
|
|
4
|
+
* React hook for communicating with a WebView or iframe using a bridge pattern.
|
|
5
|
+
* Automatically detects platform and uses appropriate communication method.
|
|
6
|
+
*
|
|
7
|
+
* @param container - The WebView instance (React Native) or HTMLIFrameElement (web) - can be null
|
|
8
|
+
* @returns An object containing the instruct function, handleMessage callback, cleanup function, and isReady state
|
|
9
|
+
*/
|
|
10
|
+
export declare function useBridge(container: WebView | HTMLIFrameElement | null): {
|
|
11
|
+
instruct: <T = any>(instruction: Instruction) => Promise<T>;
|
|
12
|
+
handleMessage: (event: WebViewMessageEvent | MessageEvent) => void;
|
|
13
|
+
destroy: () => void;
|
|
14
|
+
isReady: boolean;
|
|
15
|
+
injectJavaScript: (src: string) => Promise<void>;
|
|
16
|
+
};
|
|
17
|
+
export type UseBridgeHook = ReturnType<typeof useBridge>;
|
|
18
|
+
//# sourceMappingURL=use-bridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-bridge.d.ts","sourceRoot":"","sources":["../../src/hooks/use-bridge.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAIzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAmE5D;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,SAAS,EAAE,OAAO,GAAG,iBAAiB,GAAG,IAAI;eA0CpE,CAAC,qBAAqB,WAAW,KAAG,OAAO,CAAC,CAAC,CAAC;2BA9BN,mBAAmB,GAAG,YAAY;;;4BAkGrE,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;EAiE7B;AAED,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @internal curently this is marked as internal. Until we want to promote customer to build their own extensions.
|
|
3
|
+
*/
|
|
4
|
+
export interface UseEventCallbackOptions<T = any> {
|
|
5
|
+
eventKey: string;
|
|
6
|
+
callback: (payload: T) => void;
|
|
7
|
+
setupScript: () => string;
|
|
8
|
+
cleanupScript: () => string;
|
|
9
|
+
shouldInject?: boolean;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Shared hook for managing event callbacks with reference counting
|
|
13
|
+
*
|
|
14
|
+
* This hook handles the common pattern of:
|
|
15
|
+
* - Registering callbacks with React Native event control
|
|
16
|
+
* - Reference counting to avoid duplicate WebView listeners
|
|
17
|
+
* - JavaScript injection for setup/cleanup only when needed
|
|
18
|
+
* - Stable callback handling that survives callback updates
|
|
19
|
+
*
|
|
20
|
+
* @param options Configuration for the event callback
|
|
21
|
+
* @internal curently this is marked as internal. Until we want to promote customer to build their own extensions.
|
|
22
|
+
*/
|
|
23
|
+
export declare function useEventCallback<T = any>({ eventKey, callback, setupScript, cleanupScript, shouldInject, }: UseEventCallbackOptions<T>): void;
|
|
24
|
+
//# sourceMappingURL=use-event-callback.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-event-callback.d.ts","sourceRoot":"","sources":["../../src/hooks/use-event-callback.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,WAAW,uBAAuB,CAAC,CAAC,GAAG,GAAG;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,CAAC;IAC/B,WAAW,EAAE,MAAM,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,GAAG,GAAG,EAAE,EACzC,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,aAAa,EACb,YAAmB,GACnB,EAAE,uBAAuB,CAAC,CAAC,CAAC,GAAG,IAAI,CAsDnC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { TEvents } from '@mappedin/mappedin-js';
|
|
2
|
+
type TEventPayload<EventName extends keyof TEvents> = TEvents[EventName] extends {
|
|
3
|
+
data: null;
|
|
4
|
+
} ? TEvents[EventName]['data'] : TEvents[EventName];
|
|
5
|
+
/**
|
|
6
|
+
* Hook to subscribe to an event on the MapView in React Native.
|
|
7
|
+
*
|
|
8
|
+
* This hook uses the MapView's .on() and .off() methods to subscribe to events
|
|
9
|
+
* on the MapView instance running in the WebView.
|
|
10
|
+
*
|
|
11
|
+
* @param event - The event to listen for.
|
|
12
|
+
* @param callback - The callback to call when the event is triggered.
|
|
13
|
+
*
|
|
14
|
+
* @category Hooks
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```tsx
|
|
18
|
+
* useMapViewEvent('click', event => {
|
|
19
|
+
* const { coordinate } = event;
|
|
20
|
+
* const { latitude, longitude } = coordinate;
|
|
21
|
+
* console.log(`Map was clicked at ${latitude}, ${longitude}`);
|
|
22
|
+
* });
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare function useMapViewEvent<T extends keyof TEvents>(event: T, callback: (payload: TEventPayload<T>) => void): void;
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=use-map-view-event.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-map-view-event.d.ts","sourceRoot":"","sources":["../../src/hooks/use-map-view-event.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,KAAK,aAAa,CAAC,SAAS,SAAS,MAAM,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC,SAAS;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,GAC5F,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,GAC1B,OAAO,CAAC,SAAS,CAAC,CAAC;AAEtB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,IAAI,QAwC/G"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import type { WebView, WebViewMessageEvent } from 'react-native-webview';
|
|
2
|
+
import type { Mappedin } from '../types';
|
|
3
|
+
import type { MapViewControl } from '../controls/map-view-control';
|
|
4
|
+
import type { EventControl } from '../controls/event-control';
|
|
5
|
+
import type { PubSub } from '@mappedin/mappedin-js';
|
|
6
|
+
import type { BaseExtensionState, ExtensionRegistry, ExtensionsObject } from '../extension-registry';
|
|
7
|
+
import type { useBridge } from './use-bridge';
|
|
8
|
+
interface WebViewMessageEventPayload {
|
|
9
|
+
'webview-message-received': WebViewMessageEvent;
|
|
10
|
+
}
|
|
11
|
+
export declare const MappedinContext: import("react").Context<{
|
|
12
|
+
mapData?: Mappedin.MapData;
|
|
13
|
+
mapView?: MapViewControl;
|
|
14
|
+
/**
|
|
15
|
+
* Event control system for managing event callbacks.
|
|
16
|
+
* @internal
|
|
17
|
+
*/
|
|
18
|
+
_events?: EventControl;
|
|
19
|
+
/**
|
|
20
|
+
* Container instance for bridge communication (WebView on native, HTMLIFrameElement on web).
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
23
|
+
_webView?: WebView | HTMLIFrameElement | null;
|
|
24
|
+
/**
|
|
25
|
+
* PubSub instance for WebView message events.
|
|
26
|
+
* @internal
|
|
27
|
+
*/
|
|
28
|
+
_webViewMessagePubSub?: PubSub<WebViewMessageEventPayload>;
|
|
29
|
+
bridge?: ReturnType<typeof useBridge>;
|
|
30
|
+
/**
|
|
31
|
+
* Extension state storage for various extensions.
|
|
32
|
+
* Each extension can store its own state here.
|
|
33
|
+
*/
|
|
34
|
+
extensions: ExtensionsObject;
|
|
35
|
+
/**
|
|
36
|
+
* Function to update extension state.
|
|
37
|
+
* @param name - The extension name (must be a registered extension)
|
|
38
|
+
* @param stateOrUpdater - Either the new state directly, or a callback function that receives the previous state and returns the new state
|
|
39
|
+
*/
|
|
40
|
+
updateExtensionState: keyof ExtensionRegistry extends never ? (name: string, stateOrUpdater: BaseExtensionState | ((prevState: BaseExtensionState) => BaseExtensionState)) => void : <K extends keyof ExtensionRegistry>(name: K, stateOrUpdater: Partial<ExtensionRegistry[K]> | ((prevState: ExtensionRegistry[K]) => Partial<ExtensionRegistry[K]>)) => void;
|
|
41
|
+
}>;
|
|
42
|
+
/**
|
|
43
|
+
* Hook to get the MapData and MapView instances from the MapView context.
|
|
44
|
+
*
|
|
45
|
+
* This hook provides access to the mapData and mapView instances that are
|
|
46
|
+
* created and managed by the MapView component. It ensures that the hook
|
|
47
|
+
* is used within a MapView component context.
|
|
48
|
+
*
|
|
49
|
+
* @throws {MapViewNullError} When used outside of a MapView component or when mapData/mapView are not yet initialized
|
|
50
|
+
*
|
|
51
|
+
* @returns Object containing mapData and mapView instances
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* ```tsx
|
|
55
|
+
* function MyMapComponent() {
|
|
56
|
+
* const { mapData, mapView } = useMap();
|
|
57
|
+
*
|
|
58
|
+
* useEffect(() => {
|
|
59
|
+
* // Use mapView to interact with the map
|
|
60
|
+
* mapView.Camera.animateTo({ center: mapData.getByType('space')[0] });
|
|
61
|
+
* }, [mapData, mapView]);
|
|
62
|
+
*
|
|
63
|
+
* return <Text>Map is ready!</Text>;
|
|
64
|
+
* }
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
export declare function useMap(): {
|
|
68
|
+
mapData: Mappedin.MapData;
|
|
69
|
+
mapView: MapViewControl;
|
|
70
|
+
};
|
|
71
|
+
export {};
|
|
72
|
+
//# sourceMappingURL=use-map.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-map.d.ts","sourceRoot":"","sources":["../../src/hooks/use-map.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEzE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAErG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,UAAU,0BAA0B;IACnC,0BAA0B,EAAE,mBAAmB,CAAC;CAChD;AAGD,eAAO,MAAM,eAAe;cACjB,QAAQ,CAAC,OAAO;cAChB,cAAc;IACxB;;;OAGG;cACO,YAAY;IACtB;;;OAGG;eACQ,OAAO,GAAG,iBAAiB,GAAG,IAAI;IAC7C;;;OAGG;4BACqB,MAAM,CAAC,0BAA0B,CAAC;aACjD,UAAU,CAAC,OAAO,SAAS,CAAC;IACrC;;;OAGG;gBACS,gBAAgB;IAC5B;;;;OAIG;0BACmB,MAAM,iBAAiB,SAAS,KAAK,GACxD,CACA,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,kBAAkB,GAAG,CAAC,CAAC,SAAS,EAAE,kBAAkB,KAAK,kBAAkB,CAAC,KACvF,IAAI,GACT,CAAC,CAAC,SAAS,MAAM,iBAAiB,EAClC,IAAI,EAAE,CAAC,EACP,cAAc,EACX,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,GAC7B,CAAC,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,KAClE,IAAI;EAYX,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,MAAM,IAAI;IACzB,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;IAC1B,OAAO,EAAE,cAAc,CAAC;CACxB,CAQA"}
|
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export { MapView } from './map-view';
|
|
2
|
+
export type { MapViewProps } from './map-view';
|
|
3
|
+
export { useMap, MappedinContext } from './hooks/use-map';
|
|
4
|
+
export type { MapViewControl, Promisify, PromisifiedUpdateState } from './controls/map-view-control';
|
|
5
|
+
export type { ExtensionRegistry } from './extension-registry';
|
|
6
|
+
export { useMapViewEvent } from './hooks/use-map-view-event';
|
|
7
|
+
export { useEventCallback } from './hooks/use-event-callback';
|
|
8
|
+
export type { UseEventCallbackOptions } from './hooks/use-event-callback';
|
|
9
|
+
export { Marker } from './components/marker';
|
|
10
|
+
export type { MarkerProps } from './components/marker';
|
|
11
|
+
export { Label } from './components/label';
|
|
12
|
+
export type { LabelProps } from './components/label';
|
|
13
|
+
export { Path } from './components/path';
|
|
14
|
+
export type { PathProps } from './components/path';
|
|
15
|
+
export { Shape } from './components/shape';
|
|
16
|
+
export type { ShapeProps } from './components/shape';
|
|
17
|
+
export type { Navigation } from './controls/map-view-control';
|
|
18
|
+
export { Model } from './components/model';
|
|
19
|
+
export type { ModelProps } from './components/model';
|
|
20
|
+
export { setLoggerLevel } from './utils';
|
|
21
|
+
export { createEventSetupScript, createEventCleanupScript } from './utils/extension-event-scripts';
|
|
22
|
+
export type { EventScriptOptions } from './utils/extension-event-scripts';
|
|
23
|
+
import type { hydrateMapData as HydrateMapData, unzipAndParseMVFv2 as UnzipAndParseMVFv2 } from '@mappedin/mappedin-js';
|
|
24
|
+
export type { BaseExtensionState } from './extension-registry';
|
|
25
|
+
export { useBridge } from './hooks/use-bridge';
|
|
26
|
+
export { useRegisterExtension } from './hooks/extensions/use-register-extension';
|
|
27
|
+
export type { UseRegisterExtensionConfig, RegistrationState } from './hooks/extensions/use-register-extension';
|
|
28
|
+
export declare const hydrateMapData: typeof HydrateMapData;
|
|
29
|
+
export declare const unzipAndParseMVFv2: typeof UnzipAndParseMVFv2;
|
|
30
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC1D,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrG,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,YAAY,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,YAAY,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AACnG,YAAY,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAM1E,OAAO,KAAK,EAAE,cAAc,IAAI,cAAc,EAAE,kBAAkB,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACxH,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,YAAY,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAE/G,eAAO,MAAM,cAAc,EAAE,OAAO,cAAgC,CAAC;AACrE,eAAO,MAAM,kBAAkB,EAAE,OAAO,kBAAwC,CAAC"}
|