@clikvn/showroom-visualizer 0.3.0-dev-05 → 0.3.0-dev-07
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/CLAUDE.md +140 -0
- package/Planning/README-middleware.md +582 -0
- package/Planning/README.md +67 -0
- package/Planning/TEMPLATE.md +270 -0
- package/README.md +181 -15
- package/dist/commons/SkinLayer/components/LazyImage/index.d.ts +15 -1
- package/dist/commons/SkinLayer/components/LazyImage/index.d.ts.map +1 -1
- package/dist/components/SkinLayer/GalleryFullScreen/Content/index.d.ts.map +1 -1
- package/dist/components/SkinLayer/HotspotOverview/index.d.ts.map +1 -1
- package/dist/components/SkinLayer/PinActionButtons/index.d.ts.map +1 -1
- package/dist/components/SkinLayer/SceneCategories/index.d.ts.map +1 -1
- package/dist/components/SkinLayer/SearchAndDiscoverySlideIn/PoiInfoActionPart/index.d.ts.map +1 -1
- package/dist/components/SkinLayer/TourScenarios/index.d.ts.map +1 -1
- package/dist/features/ShowroomVisualizer/index.d.ts +2 -1
- package/dist/features/ShowroomVisualizer/index.d.ts.map +1 -1
- package/dist/hooks/Visualizer/useTourVisualizer.d.ts.map +1 -1
- package/dist/hooks/useActionMiddleware.d.ts +25 -0
- package/dist/hooks/useActionMiddleware.d.ts.map +1 -0
- package/dist/hooks/useConfiguration.d.ts +3 -1
- package/dist/hooks/useConfiguration.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/models/Visualizer/Plugins/BasePlugin.d.ts.map +1 -1
- package/dist/models/Visualizer/Poi/PoiLensFlare.d.ts.map +1 -1
- package/dist/models/Visualizer/Poi/PoiMultimedia/PoiSound.d.ts.map +1 -1
- package/dist/models/Visualizer/Poi/PoiMultimedia/PoiVideo.d.ts.map +1 -1
- package/dist/register.d.ts +2 -1
- package/dist/register.d.ts.map +1 -1
- package/dist/types/SkinLayer/index.d.ts +1 -0
- package/dist/types/SkinLayer/index.d.ts.map +1 -1
- package/dist/types/SkinLayer/middleware.type.d.ts +41 -0
- package/dist/types/SkinLayer/middleware.type.d.ts.map +1 -0
- package/dist/types/SkinLayer/visualizer.type.d.ts +2 -0
- package/dist/types/SkinLayer/visualizer.type.d.ts.map +1 -1
- package/dist/types/Visualizer/tourScenario/tourScenario.type.d.ts.map +1 -1
- package/dist/utils/Visualizer/image.utils.d.ts.map +1 -1
- package/dist/utils/middleware/listenerWrapper.d.ts +31 -0
- package/dist/utils/middleware/listenerWrapper.d.ts.map +1 -0
- package/dist/web.js +1 -1
- package/package.json +3 -3
- package/.claude/settings.local.json +0 -19
- package/dist/components/SkinLayer/DefaultLayout/index.d.ts +0 -8
- package/dist/components/SkinLayer/DefaultLayout/index.d.ts.map +0 -1
- package/dist/context/CustomLayoutContext.d.ts +0 -20
- package/dist/context/CustomLayoutContext.d.ts.map +0 -1
- package/dist/context/SwizzleContext.d.ts +0 -21
- package/dist/context/SwizzleContext.d.ts.map +0 -1
- package/dist/hooks/headless/index.d.ts +0 -150
- package/dist/hooks/headless/index.d.ts.map +0 -1
- package/dist/hooks/headless/useFloorplanControl.d.ts +0 -18
- package/dist/hooks/headless/useFloorplanControl.d.ts.map +0 -1
- package/dist/hooks/headless/usePOIInteraction.d.ts +0 -23
- package/dist/hooks/headless/usePOIInteraction.d.ts.map +0 -1
- package/dist/hooks/headless/useScenarioControl.d.ts +0 -22
- package/dist/hooks/headless/useScenarioControl.d.ts.map +0 -1
- package/dist/hooks/headless/useSceneNavigation.d.ts +0 -26
- package/dist/hooks/headless/useSceneNavigation.d.ts.map +0 -1
- package/dist/hooks/headless/useTourCore.d.ts +0 -23
- package/dist/hooks/headless/useTourCore.d.ts.map +0 -1
- package/dist/hooks/headless/useViewportControl.d.ts +0 -22
- package/dist/hooks/headless/useViewportControl.d.ts.map +0 -1
- package/dist/index.html +0 -110
- package/dist/index.js +0 -1
- package/dist/types/custom-layout.d.ts +0 -63
- package/dist/types/custom-layout.d.ts.map +0 -1
- package/dist/types/swizzle.d.ts +0 -59
- package/dist/types/swizzle.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PoiVideo.d.ts","sourceRoot":"","sources":["../../../../../src/models/Visualizer/Poi/PoiMultimedia/PoiVideo.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PoiVideo.d.ts","sourceRoot":"","sources":["../../../../../src/models/Visualizer/Poi/PoiMultimedia/PoiVideo.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAGrE,OAAO,GAAG,MAAM,QAAQ,CAAC;AACzB,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,cAAM,QAAS,SAAQ,aAAa;IAC3B,KAAK,EAAE,SAAS,GAAG,SAAS,CAAC;IAC7B,KAAK,EAAE,SAAS,GAAG,SAAS,CAAC;gBAExB,KAAK,EAAE,YAAY;IAWxB,IAAI;IAQJ,IAAI;IASJ,KAAK;IAQZ,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;CA+D3C;AAED,eAAe,QAAQ,CAAC"}
|
package/dist/register.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ProductType, VirtualTourVisualizerType, VisualizerListenersType } from './types/SkinLayer';
|
|
1
|
+
import { ActionMiddleware, ProductType, VirtualTourVisualizerType, VisualizerListenersType } from './types/SkinLayer';
|
|
2
2
|
export declare class VisualizerUIComponent extends HTMLElement {
|
|
3
3
|
elementId?: string;
|
|
4
4
|
apiHost?: string;
|
|
@@ -16,6 +16,7 @@ export declare class VisualizerUIComponent extends HTMLElement {
|
|
|
16
16
|
};
|
|
17
17
|
listeners?: VisualizerListenersType;
|
|
18
18
|
products?: ProductType[];
|
|
19
|
+
middleware?: ActionMiddleware;
|
|
19
20
|
constructor();
|
|
20
21
|
updateAttributes(attributes: VirtualTourVisualizerType): void;
|
|
21
22
|
connectedCallback(): void;
|
package/dist/register.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../src/register.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,WAAW,EACX,yBAAyB,EACzB,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAE3B,qBAAa,qBAAsB,SAAQ,WAAW;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,SAAS,CAAC,EAAE,uBAAuB,CAAC;IACpC,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;;
|
|
1
|
+
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../src/register.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,yBAAyB,EACzB,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAE3B,qBAAa,qBAAsB,SAAQ,WAAW;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,SAAS,CAAC,EAAE,uBAAuB,CAAC;IACpC,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,gBAAgB,CAAC;;IAO9B,gBAAgB,CAAC,UAAU,EAAE,yBAAyB;IAatD,iBAAiB;IAMjB,MAAM;CAgBP;AAED,eAAO,MAAM,qBAAqB,YAKjC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/SkinLayer/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/SkinLayer/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Event metadata structure passed to middleware
|
|
3
|
+
*/
|
|
4
|
+
export interface ActionEvent<T = any> {
|
|
5
|
+
/** The action/listener name (e.g., "onPoiClicked", "onPinActionClicked") */
|
|
6
|
+
actionName: string;
|
|
7
|
+
/** The payload data passed to the listener */
|
|
8
|
+
payload: T;
|
|
9
|
+
/** ISO timestamp when the event was triggered */
|
|
10
|
+
timestamp: string;
|
|
11
|
+
/** Optional metadata about the event context */
|
|
12
|
+
metadata?: {
|
|
13
|
+
/** Current tour code if available */
|
|
14
|
+
tourCode?: string;
|
|
15
|
+
/** Current scene code if available */
|
|
16
|
+
sceneCode?: string;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Action tracking middleware function signature
|
|
21
|
+
*
|
|
22
|
+
* This middleware is called for each user action, allowing external applications
|
|
23
|
+
* to track and log user interactions within the showroom visualizer.
|
|
24
|
+
*
|
|
25
|
+
* @param event - The event metadata containing action name, payload, timestamp, and context
|
|
26
|
+
* @returns void | Promise<void> - Middleware is for tracking only, return value is ignored
|
|
27
|
+
* @throws Error - If middleware throws an error, it will be caught and logged
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```typescript
|
|
31
|
+
* const loggingMiddleware: ActionMiddleware = (event) => {
|
|
32
|
+
* console.log('Action:', event.actionName, event.payload);
|
|
33
|
+
* };
|
|
34
|
+
*
|
|
35
|
+
* const analyticsMiddleware: ActionMiddleware = async (event) => {
|
|
36
|
+
* await analytics.track(event.actionName, event.payload);
|
|
37
|
+
* };
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
export type ActionMiddleware = (event: ActionEvent) => void | Promise<void>;
|
|
41
|
+
//# sourceMappingURL=middleware.type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"middleware.type.d.ts","sourceRoot":"","sources":["../../../src/types/SkinLayer/middleware.type.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG;IAClC,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,OAAO,EAAE,CAAC,CAAC;IACX,iDAAiD;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,QAAQ,CAAC,EAAE;QACT,qCAAqC;QACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,sCAAsC;QACtC,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { VisualizerListenersType } from './listeners.type';
|
|
2
2
|
import { OverrideConfigsType } from './overrideConfigs.type';
|
|
3
3
|
import { ProductType } from './product.type';
|
|
4
|
+
import { ActionMiddleware } from './middleware.type';
|
|
4
5
|
export type VirtualTourVisualizerType = {
|
|
5
6
|
elementId?: string;
|
|
6
7
|
apiHost?: string;
|
|
@@ -10,5 +11,6 @@ export type VirtualTourVisualizerType = {
|
|
|
10
11
|
config?: OverrideConfigsType;
|
|
11
12
|
listeners?: VisualizerListenersType;
|
|
12
13
|
products?: ProductType[];
|
|
14
|
+
middleware?: ActionMiddleware;
|
|
13
15
|
};
|
|
14
16
|
//# sourceMappingURL=visualizer.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visualizer.type.d.ts","sourceRoot":"","sources":["../../../src/types/SkinLayer/visualizer.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"visualizer.type.d.ts","sourceRoot":"","sources":["../../../src/types/SkinLayer/visualizer.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,SAAS,CAAC,EAAE,uBAAuB,CAAC;IACpC,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tourScenario.type.d.ts","sourceRoot":"","sources":["../../../../src/types/Visualizer/tourScenario/tourScenario.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,GAAG,MAAM,oCAAoC,CAAC;AACrD,OAAO,WAAW,MAAM,4CAA4C,CAAC;AACrE,OAAO,YAAY,MAAM,6CAA6C,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,WAAW,gBAAiB,SAAQ,wBAAwB;IAChE,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACb,KAAK,CAAC,EAAE;QACN,IAAI,CAAC,EAAE,SAAS,CAAC;KAClB,CAAC;IACF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAE/B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,IAAI,CAAC,EAAE;QACL,IAAI,CAAC,EAAE,SAAS,CAAC;KAClB,
|
|
1
|
+
{"version":3,"file":"tourScenario.type.d.ts","sourceRoot":"","sources":["../../../../src/types/Visualizer/tourScenario/tourScenario.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,GAAG,MAAM,oCAAoC,CAAC;AACrD,OAAO,WAAW,MAAM,4CAA4C,CAAC;AACrE,OAAO,YAAY,MAAM,6CAA6C,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,WAAW,gBAAiB,SAAQ,wBAAwB;IAChE,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACb,KAAK,CAAC,EAAE;QACN,IAAI,CAAC,EAAE,SAAS,CAAC;KAClB,CAAC;IACF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAE/B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,IAAI,CAAC,EAAE;QACL,IAAI,CAAC,EAAE,SAAS,CAAC;KAClB,CAAC;CACH;AAED,MAAM,WAAW,wBAAwB;IACvC,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,yBAA0B,SAAQ,OAAO,CAAC,gBAAgB,CAAC;IAC1E,WAAW,CAAC,EAAE,qBAAqB,CAAC;IAEpC,GAAG,CAAC,EAAE,MAAM,CAAC;CACd"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image.utils.d.ts","sourceRoot":"","sources":["../../../src/utils/Visualizer/image.utils.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"image.utils.d.ts","sourceRoot":"","sources":["../../../src/utils/Visualizer/image.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,qBAAqB,EACtB,MAAM,oCAAoC,CAAC;AAE5C,eAAO,MAAM,cAAc,GACzB,MAAM,SAAS,EACf,WAAW,MAAM,KAChB,qBAAqB,GAAG,IAqD1B,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,MAAM,SAAS,EACf,WAAW,MAAM,KAChB,MAAM,GAAG,IAKX,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,MAAM,MAAM,GAAG,IAAI,KAClB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAiBlD,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { ActionMiddleware } from '../../types/SkinLayer/middleware.type';
|
|
2
|
+
import { InternalListenersType } from '../../types/SkinLayer/listeners.type';
|
|
3
|
+
/**
|
|
4
|
+
* Wraps all listeners in the InternalListenersType with middleware
|
|
5
|
+
*
|
|
6
|
+
* This function takes an object of listener callbacks and wraps each one with
|
|
7
|
+
* the provided middleware, allowing the middleware to intercept, track, and
|
|
8
|
+
* optionally cancel actions before they reach the original listeners.
|
|
9
|
+
*
|
|
10
|
+
* @param listeners - The listeners object to wrap
|
|
11
|
+
* @param middleware - The middleware function to apply to all listeners
|
|
12
|
+
* @param tourContext - Optional tour context to include in event metadata
|
|
13
|
+
* @returns A new listeners object with all listeners wrapped by middleware
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* const wrappedListeners = wrapListenersWithMiddleware(
|
|
18
|
+
* originalListeners,
|
|
19
|
+
* (event) => {
|
|
20
|
+
* console.log('Action:', event.actionName);
|
|
21
|
+
* return true; // Continue
|
|
22
|
+
* },
|
|
23
|
+
* { tourCode: 'TOUR_123' }
|
|
24
|
+
* );
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export declare function wrapListenersWithMiddleware(listeners: InternalListenersType, middleware: ActionMiddleware | undefined, tourContext?: {
|
|
28
|
+
tourCode?: string;
|
|
29
|
+
sceneCode?: string;
|
|
30
|
+
}): InternalListenersType;
|
|
31
|
+
//# sourceMappingURL=listenerWrapper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"listenerWrapper.d.ts","sourceRoot":"","sources":["../../../src/utils/middleware/listenerWrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,gBAAgB,EACjB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AA8E7E;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,qBAAqB,EAChC,UAAU,EAAE,gBAAgB,GAAG,SAAS,EACxC,WAAW,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACtD,qBAAqB,CA4JvB"}
|