@kosdev-code/kos-ui-sdk 2.0.39 → 2.0.41

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.
@@ -25,7 +25,14 @@ declare interface OneShotCapable extends DoneAware {
25
25
 
26
26
  declare type RendererOptions = "sweep" | "matrix" | "video" | "drop" | "none";
27
27
 
28
- declare type RendererMode = "video" | "image" | "color" | "sequence" | "matrix" | "text";
28
+ declare type RendererMode =
29
+ | "video"
30
+ | "image"
31
+ | "color"
32
+ | "sequence"
33
+ | "matrix"
34
+ | "text"
35
+ | "overlay";
29
36
  declare interface RenderSpecification<T extends RendererMode> {
30
37
  type: T;
31
38
  id: string;
@@ -104,6 +111,40 @@ declare interface TextRenderDataSpecification {
104
111
  };
105
112
  }
106
113
 
114
+ declare type OverlayPosition =
115
+ | "top-left"
116
+ | "top-center"
117
+ | "top-right"
118
+ | "center-left"
119
+ | "center"
120
+ | "center-right"
121
+ | "bottom-left"
122
+ | "bottom-center"
123
+ | "bottom-right";
124
+
125
+ declare interface OverlayCustomPosition {
126
+ x: number;
127
+ y: number;
128
+ }
129
+
130
+ declare interface OverlayIconConfig {
131
+ src: string; // Image source for the overlay icon
132
+ size: number; // Size of the overlay icon (width and height)
133
+ position: OverlayPosition | OverlayCustomPosition; // Position of the overlay
134
+ offset?: { x?: number; y?: number }; // Optional offset from the position in pixels
135
+ opacity?: number; // Optional opacity (0-1)
136
+ persistent?: boolean; // Whether the overlay should always be visible (default: true)
137
+ }
138
+
139
+ declare interface OverlayRenderDataSpecification {
140
+ baseRenderer: {
141
+ type: string;
142
+ data: any;
143
+ }; // The base renderer configuration
144
+ overlays: OverlayIconConfig[]; // Array of overlay icons to display
145
+ persistOverlaysOnComplete?: boolean; // Whether overlays remain visible after base renderer completes (default: true)
146
+ }
147
+
107
148
  declare type RenderDataSpecification<T extends RendererMode> = T extends "video"
108
149
  ? VideoRenderDataSpecification
109
150
  : T extends "image"
@@ -116,6 +157,8 @@ declare type RenderDataSpecification<T extends RendererMode> = T extends "video"
116
157
  ? MatrixRenderDataSpecification
117
158
  : T extends "text"
118
159
  ? TextRenderDataSpecification
160
+ : T extends "overlay"
161
+ ? OverlayRenderDataSpecification
119
162
  : any;
120
163
 
121
164
  declare type VideoRenderData = RenderSpecification<"video">;
@@ -128,12 +171,15 @@ declare type MatrixRenderData = RenderSpecification<"matrix">;
128
171
 
129
172
  declare type TextRenderData = RenderSpecification<"text">;
130
173
 
174
+ declare type OverlayRenderData = RenderSpecification<"overlay">;
175
+
131
176
  declare type RenderData =
132
177
  | VideoRenderData
133
178
  | ImageRenderData
134
179
  | ColorRenderData
135
180
  | MatrixRenderData
136
181
  | TextRenderData
182
+ | OverlayRenderData
137
183
  | any;
138
184
 
139
185
  declare interface EndpointData {
@@ -0,0 +1,76 @@
1
+ import { DoneAware, Renderer } from '../../types';
2
+
3
+ /**
4
+ * Predefined overlay positions for easy positioning
5
+ */
6
+ export type OverlayPosition = "top-left" | "top-center" | "top-right" | "center-left" | "center" | "center-right" | "bottom-left" | "bottom-center" | "bottom-right";
7
+ /**
8
+ * Custom positioning with explicit coordinates
9
+ */
10
+ export interface OverlayCustomPosition {
11
+ x: number;
12
+ y: number;
13
+ }
14
+ /**
15
+ * Configuration for a single overlay icon
16
+ */
17
+ export interface OverlayIconConfig {
18
+ /** Image source for the overlay icon */
19
+ src: string;
20
+ /** Size of the overlay icon (width and height) */
21
+ size: number;
22
+ /** Position of the overlay - either predefined name or custom coordinates */
23
+ position: OverlayPosition | OverlayCustomPosition;
24
+ /** Optional offset from the position in pixels */
25
+ offset?: {
26
+ x?: number;
27
+ y?: number;
28
+ };
29
+ /** Optional opacity (0-1) */
30
+ opacity?: number;
31
+ /** Whether the overlay should always be visible (default: true) */
32
+ persistent?: boolean;
33
+ }
34
+ /**
35
+ * Configuration for overlay renderer
36
+ */
37
+ export interface OverlayRenderDataSpecification {
38
+ /** The base renderer configuration */
39
+ baseRenderer: {
40
+ type: string;
41
+ data: any;
42
+ };
43
+ /** Array of overlay icons to display */
44
+ overlays: OverlayIconConfig[];
45
+ /** Whether overlays should remain visible after base renderer completes (default: true) */
46
+ persistOverlaysOnComplete?: boolean;
47
+ }
48
+ /**
49
+ * A renderer that wraps another renderer and adds static overlay icons
50
+ * that are not affected by scrolling, scaling, or other transformations.
51
+ */
52
+ export declare class OverlayRenderer implements Renderer, DoneAware {
53
+ private baseRenderer;
54
+ private overlayIcons;
55
+ private overlayConfigs;
56
+ private loadedIcons;
57
+ private canvas;
58
+ private ctx;
59
+ private persistOverlaysOnComplete;
60
+ private baseRendererCompleted;
61
+ private completionCallback;
62
+ private hasSignaledCompletion;
63
+ constructor(data: OverlayRenderDataSpecification, rendererFactory: (type: string, data: any) => Renderer);
64
+ private loadOverlayImages;
65
+ private calculateOverlayPosition;
66
+ reset(): void;
67
+ renderFrame(width: number, height: number): void;
68
+ private renderOverlays;
69
+ readPixels(width: number, height: number): Uint8ClampedArray;
70
+ play?(): void;
71
+ pause?(): void;
72
+ dispose?(): void;
73
+ onDone(callback: () => void): void;
74
+ isOneShot?(): boolean;
75
+ }
76
+ //# sourceMappingURL=overlay-renderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"overlay-renderer.d.ts","sourceRoot":"","sources":["../../../../../../../../../packages/sdk/kos-ui-sdk/src/models/models/canvas-dispatcher/utils/renderers/overlay-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAgC,QAAQ,EAAE,MAAM,aAAa,CAAC;AAErF;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB,UAAU,GACV,YAAY,GACZ,WAAW,GACX,aAAa,GACb,QAAQ,GACR,cAAc,GACd,aAAa,GACb,eAAe,GACf,cAAc,CAAC;AAEnB;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,wCAAwC;IACxC,GAAG,EAAE,MAAM,CAAC;IACZ,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,6EAA6E;IAC7E,QAAQ,EAAE,eAAe,GAAG,qBAAqB,CAAC;IAClD,kDAAkD;IAClD,MAAM,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACpC,6BAA6B;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,sCAAsC;IACtC,YAAY,EAAE;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,GAAG,CAAC;KACX,CAAC;IACF,wCAAwC;IACxC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,2FAA2F;IAC3F,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED;;;GAGG;AACH,qBAAa,eAAgB,YAAW,QAAQ,EAAE,SAAS;IACzD,OAAO,CAAC,YAAY,CAAW;IAC/B,OAAO,CAAC,YAAY,CAA4C;IAChE,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,GAAG,CAA2B;IACtC,OAAO,CAAC,yBAAyB,CAAU;IAC3C,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,kBAAkB,CAA6B;IACvD,OAAO,CAAC,qBAAqB,CAAS;gBAE1B,IAAI,EAAE,8BAA8B,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,QAAQ;YA2B1F,iBAAiB;IAkB/B,OAAO,CAAC,wBAAwB;IAkEhC,KAAK,IAAI,IAAI;IAMb,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAgChD,OAAO,CAAC,cAAc;IAmCtB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAK5D,IAAI,CAAC,IAAI,IAAI;IAMb,KAAK,CAAC,IAAI,IAAI;IAMd,OAAO,CAAC,IAAI,IAAI;IAgBhB,MAAM,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IASlC,SAAS,CAAC,IAAI,OAAO;CAYtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"renderer-factory.d.ts","sourceRoot":"","sources":["../../../../../../../../../packages/sdk/kos-ui-sdk/src/models/models/canvas-dispatcher/utils/renderers/renderer-factory.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,uBAAuB,EACvB,QAAQ,EAER,YAAY,EACb,MAAM,aAAa,CAAC;AA+DrB;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,WAAW,4CAGrB;IACD,IAAI,EAAE,CAAC,CAAC;IACR,IAAI,CAAC,EAAE,wBAAwB,CAAC,CAAC,GAAG,IAAI,CAAC;CAC1C,KAAG,QAAQ,GAAG,IAQd,CAAC"}
1
+ {"version":3,"file":"renderer-factory.d.ts","sourceRoot":"","sources":["../../../../../../../../../packages/sdk/kos-ui-sdk/src/models/models/canvas-dispatcher/utils/renderers/renderer-factory.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,uBAAuB,EACvB,QAAQ,EAER,YAAY,EACb,MAAM,aAAa,CAAC;AAmGrB;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,WAAW,4CAGrB;IACD,IAAI,EAAE,CAAC,CAAC;IACR,IAAI,CAAC,EAAE,wBAAwB,CAAC,CAAC,GAAG,IAAI,CAAC;CAC1C,KAAG,QAAQ,GAAG,IAQd,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"kosmodel-compatible-future-mixin.d.ts","sourceRoot":"","sources":["../../../../../../packages/sdk/kos-ui-sdk/src/models/utils/kosmodel-compatible-future-mixin.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,KAAK,EACV,oBAAoB,EACpB,eAAe,EAChB,MAAM,+BAA+B,CAAC;AAEvC;;;GAGG;AACH,qBAAa,4BAA4B,CACvC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAC1C,YAAW,eAAe,CAAC,CAAC,CAAC;IAE7B,aAAa,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;gBAE3B,KAAK,EAAE,aAAa;IAIhC,IAAI,MAAM,wEAET;IAED,IAAI,QAAQ,WAEX;IAED,IAAI,MAAM,WAET;IAED,IAAI,SAAS,YAEZ;IAED,IAAI,WAAW,YAEd;IAEK,YAAY;CAKnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,QAW1E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,QA+D3E;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,kBACH,GAAG,SA+BlC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,yDAE5E;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,CAAC,SAAS,aAAa,EACrE,QAAQ,EAAE,MAAM,CAAC;;;;;;;;EAkClB;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC;AAEzD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,eAAe,CAS7E;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,GAAG,uBAkCpD"}
1
+ {"version":3,"file":"kosmodel-compatible-future-mixin.d.ts","sourceRoot":"","sources":["../../../../../../packages/sdk/kos-ui-sdk/src/models/utils/kosmodel-compatible-future-mixin.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,KAAK,EACV,oBAAoB,EACpB,eAAe,EAChB,MAAM,+BAA+B,CAAC;AAEvC;;;GAGG;AACH,qBAAa,4BAA4B,CACvC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAC1C,YAAW,eAAe,CAAC,CAAC,CAAC;IAE7B,aAAa,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;gBAE3B,KAAK,EAAE,aAAa;IAIhC,IAAI,MAAM,wEAET;IAED,IAAI,QAAQ,WAEX;IAED,IAAI,MAAM,WAET;IAED,IAAI,SAAS,YAEZ;IAED,IAAI,WAAW,YAEd;IAEK,YAAY;CAKnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,QAG1E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,QAuD3E;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,kBACH,GAAG,SA+BlC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,yDAE5E;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,CAAC,SAAS,aAAa,EACrE,QAAQ,EAAE,MAAM,CAAC;;;;;;;;EAkClB;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC;AAEzD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,eAAe,CAQ7E;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,GAAG,uBAkCpD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kosdev-code/kos-ui-sdk",
3
- "version": "2.0.39",
3
+ "version": "2.0.41",
4
4
  "type": "module",
5
5
  "main": "./index.cjs",
6
6
  "module": "./index.js",
@@ -36,7 +36,7 @@
36
36
  },
37
37
  "kos": {
38
38
  "build": {
39
- "gitHash": "335ce8a059d94cf2db2d6d483aa048ccc52dc70e"
39
+ "gitHash": "82f501e94dcc050e3ec05bb9fd68f2671112823d"
40
40
  }
41
41
  }
42
42
  }
@@ -1,3 +1,3 @@
1
- export declare const run: import('@emotion/serialize').Keyframes;
2
- export declare const loadingDot: import('@emotion/utils').SerializedStyles;
1
+ export declare const run: import('@emotion/react').Keyframes;
2
+ export declare const loadingDot: import('@emotion/react').SerializedStyles;
3
3
  //# sourceMappingURL=loading-message-styles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"loading-message-styles.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-ui-sdk/src/ui/components/loading-message/loading-message-styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,GAAG,wCAYf,CAAC;AAEF,eAAO,MAAM,UAAU,2CAMtB,CAAC"}
1
+ {"version":3,"file":"loading-message-styles.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-ui-sdk/src/ui/components/loading-message/loading-message-styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,GAAG,oCAYf,CAAC;AAEF,eAAO,MAAM,UAAU,2CAMtB,CAAC"}