@weavix/tracker-plugin-sdk-react 0.0.25 → 0.0.26

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/API_REFERENCE.md CHANGED
@@ -411,6 +411,7 @@ interface BasicTrackerPluginContextValue<TSlot extends keyof SlotContextMap = ke
411
411
  service: string;
412
412
  userId?: string;
413
413
  isYateam?: boolean;
414
+ isOrbita?: boolean;
414
415
  origin: string;
415
416
  /** Имя слота, в котором открыт плагин */
416
417
  slot: TSlot;
@@ -457,6 +458,7 @@ interface FullTrackerPluginContextValue<TSlot extends keyof SlotContextMap = key
457
458
  service: string;
458
459
  userId?: string;
459
460
  isYateam?: boolean;
461
+ isOrbita?: boolean;
460
462
  origin: string;
461
463
  /** Имя слота, в котором открыт плагин */
462
464
  slot: TSlot;
@@ -21,6 +21,8 @@ export interface BasicTrackerPluginContextValue<TSlot extends TrackerSlotKey = T
21
21
  userId?: string;
22
22
  /** Это ятим? */
23
23
  isYateam?: boolean;
24
+ /** Включена ли Орбита */
25
+ isOrbita?: boolean;
24
26
  /** Origin родительского окна (хоста). */
25
27
  origin: string;
26
28
  /** Слот, в котором открыт плагин. */
@@ -51,6 +53,8 @@ export interface FullTrackerPluginContextValue<TSlot extends TrackerSlotKey = Tr
51
53
  userId?: string;
52
54
  /** Это ятим? */
53
55
  isYateam?: boolean;
56
+ /** Включена ли Орбита */
57
+ isOrbita?: boolean;
54
58
  /** Origin родительского окна (хоста). */
55
59
  origin: string;
56
60
  /** Слот, в котором открыт плагин. */
@@ -1 +1 @@
1
- {"version":3,"file":"TrackerPluginProvider.d.ts","sourceRoot":"","sources":["../../src/components/TrackerPluginProvider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TrackerPluginProvider.d.ts","sourceRoot":"","sources":["../../src/components/TrackerPluginProvider.tsx"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,7 +3,7 @@ export type { PluginErrorProps } from '@weavix/sdk-react';
3
3
  export { PluginLoader } from '@weavix/sdk-react';
4
4
  export { TrackerPluginProvider, useTrackerPluginContext } from './components/TrackerPluginProvider';
5
5
  export type { BasicTrackerPluginContextValue, FullTrackerPluginContextValue, RegisterHandlerFunction, TrackerPluginProviderProps, } from './components/TrackerPluginProvider';
6
- export { useConfirm, useLanguage, useLocalizedString, useTheme, useToaster, } from '@weavix/sdk-react';
6
+ export { useConfirm, useLanguage, useLocalizedString, useTheme, useToaster, useIsOrbita, } from '@weavix/sdk-react';
7
7
  export { getField, getLocalizedString, hostApi, METHOD_NOT_SUPPORTED, MISSING_REQUIRED_SCOPE, PLUGIN_ID_IS_NOT_CORRECT, PLUGIN_ID_OR_SLOT_NOT_PROVIDED, PluginActionError, storageApi, trackerApi, uiApi, UNKNOWN_ERROR, VALIDATION_ERROR, } from '@weavix/tracker-plugin-sdk';
8
8
  export type { Attachment, BasicContext, ConfirmOptions, ConfirmResult, ContextLevel, ContentSizeUpdateRequest, ExternalApiAuthCheckAndRequestPayload, ExternalApiAuthCheckAndRequestResult, ExternalApiAuthGetStatusDomain, ExternalApiAuthGetStatusPayload, ExternalApiAuthGetStatusResult, ExternalApiAuthRequestPayload, ExternalApiAuthRequestResult, ExternalApiAuthRevokePayload, ExternalApiAuthRevokeResult, ExternalApiCallPayload, ExternalApiCallResult, HostEventCallback, HostEventContract, HostEventMethod, Issue, LocalizedString, MetaEntityV2, SlotContextMap, StorageContextType, StorageGetPayload, StoragePatchPayload, StorageRecord, Theme, ToastAction, ToastOptions, TrackerApi, TrackerApiCallOptions, TrackerApiInitOptions, TrackerApiV3, TriggerActionData, Unsubscribe, } from '@weavix/tracker-plugin-sdk';
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AACpG,YAAY,EACR,8BAA8B,EAC9B,6BAA6B,EAC7B,uBAAuB,EACvB,0BAA0B,GAC7B,MAAM,oCAAoC,CAAC;AAG5C,OAAO,EACH,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,QAAQ,EACR,UAAU,GACb,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACH,QAAQ,EACR,kBAAkB,EAClB,OAAO,EACP,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,8BAA8B,EAC9B,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,KAAK,EACL,aAAa,EACb,gBAAgB,GACnB,MAAM,4BAA4B,CAAC;AAEpC,YAAY,EACR,UAAU,EACV,YAAY,EACZ,cAAc,EACd,aAAa,EACb,YAAY,EACZ,wBAAwB,EACxB,qCAAqC,EACrC,oCAAoC,EACpC,8BAA8B,EAC9B,+BAA+B,EAC/B,8BAA8B,EAC9B,6BAA6B,EAC7B,4BAA4B,EAC5B,4BAA4B,EAC5B,2BAA2B,EAC3B,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,KAAK,EACL,eAAe,EACf,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,KAAK,EACL,WAAW,EACX,YAAY,EACZ,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACZ,iBAAiB,EACjB,WAAW,GACd,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AACpG,YAAY,EACR,8BAA8B,EAC9B,6BAA6B,EAC7B,uBAAuB,EACvB,0BAA0B,GAC7B,MAAM,oCAAoC,CAAC;AAG5C,OAAO,EACH,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,QAAQ,EACR,UAAU,EACV,WAAW,GACd,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACH,QAAQ,EACR,kBAAkB,EAClB,OAAO,EACP,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,8BAA8B,EAC9B,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,KAAK,EACL,aAAa,EACb,gBAAgB,GACnB,MAAM,4BAA4B,CAAC;AAEpC,YAAY,EACR,UAAU,EACV,YAAY,EACZ,cAAc,EACd,aAAa,EACb,YAAY,EACZ,wBAAwB,EACxB,qCAAqC,EACrC,oCAAoC,EACpC,8BAA8B,EAC9B,+BAA+B,EAC/B,8BAA8B,EAC9B,6BAA6B,EAC7B,4BAA4B,EAC5B,4BAA4B,EAC5B,2BAA2B,EAC3B,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,KAAK,EACL,eAAe,EACf,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,KAAK,EACL,WAAW,EACX,YAAY,EACZ,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACZ,iBAAiB,EACjB,WAAW,GACd,MAAM,4BAA4B,CAAC"}
package/dist/index.mjs CHANGED
@@ -1,24 +1,24 @@
1
- import { PluginError as e, PluginLoader as t, PluginProvider as n, useConfirm as r, useLanguage as i, useLocalizedString as a, usePluginContext as o, useTheme as s, useToaster as c } from "@weavix/sdk-react";
2
- import { createContext as l, useContext as u, useMemo as d } from "react";
3
- import { jsx as f } from "react/jsx-runtime";
4
- import { METHOD_NOT_SUPPORTED as p, MISSING_REQUIRED_SCOPE as m, PLUGIN_ID_IS_NOT_CORRECT as h, PLUGIN_ID_OR_SLOT_NOT_PROVIDED as g, PluginActionError as _, UNKNOWN_ERROR as v, VALIDATION_ERROR as y, getField as b, getLocalizedString as x, hostApi as S, storageApi as C, trackerApi as w, uiApi as T } from "@weavix/tracker-plugin-sdk";
1
+ import { PluginError as e, PluginLoader as t, PluginProvider as n, useConfirm as r, useIsOrbita as i, useLanguage as a, useLocalizedString as o, usePluginContext as s, useTheme as c, useToaster as l } from "@weavix/sdk-react";
2
+ import { createContext as u, useContext as d, useMemo as f } from "react";
3
+ import { jsx as p } from "react/jsx-runtime";
4
+ import { METHOD_NOT_SUPPORTED as m, MISSING_REQUIRED_SCOPE as h, PLUGIN_ID_IS_NOT_CORRECT as g, PLUGIN_ID_OR_SLOT_NOT_PROVIDED as _, PluginActionError as v, UNKNOWN_ERROR as y, VALIDATION_ERROR as b, getField as x, getLocalizedString as S, hostApi as C, storageApi as w, trackerApi as T, uiApi as E } from "@weavix/tracker-plugin-sdk";
5
5
  //#region src/components/TrackerPluginProvider.tsx
6
- var E = l(null);
7
- function D({ children: e }) {
8
- let { registerHandler: t } = o("basic"), n = d(() => ((e, n) => t(e, n)), [t]), r = d(() => ({ registerHandler: n }), [n]);
9
- return /* @__PURE__ */ f(E.Provider, {
6
+ var D = u(null);
7
+ function O({ children: e }) {
8
+ let { registerHandler: t } = s("basic"), n = f(() => ((e, n) => t(e, n)), [t]), r = f(() => ({ registerHandler: n }), [n]);
9
+ return /* @__PURE__ */ p(D.Provider, {
10
10
  value: r,
11
11
  children: e
12
12
  });
13
13
  }
14
- function O(e) {
15
- return /* @__PURE__ */ f(n, {
14
+ function k(e) {
15
+ return /* @__PURE__ */ p(n, {
16
16
  ...e,
17
- children: /* @__PURE__ */ f(D, { children: e.children })
17
+ children: /* @__PURE__ */ p(O, { children: e.children })
18
18
  });
19
19
  }
20
- function k(e = "basic") {
21
- let t = o(e), n = u(E);
20
+ function A(e = "basic") {
21
+ let t = s(e), n = d(D);
22
22
  if (!n) throw Error("useTrackerPluginContext must be used within TrackerPluginProvider (Tracker service layer). Use PluginProvider only with usePluginContext, or wrap the app with TrackerPluginProvider.");
23
23
  let r = t.slot;
24
24
  return e === "full" ? {
@@ -33,6 +33,6 @@ function k(e = "basic") {
33
33
  };
34
34
  }
35
35
  //#endregion
36
- export { p as METHOD_NOT_SUPPORTED, m as MISSING_REQUIRED_SCOPE, h as PLUGIN_ID_IS_NOT_CORRECT, g as PLUGIN_ID_OR_SLOT_NOT_PROVIDED, _ as PluginActionError, e as PluginError, t as PluginLoader, O as TrackerPluginProvider, v as UNKNOWN_ERROR, y as VALIDATION_ERROR, b as getField, x as getLocalizedString, S as hostApi, C as storageApi, w as trackerApi, T as uiApi, r as useConfirm, i as useLanguage, a as useLocalizedString, s as useTheme, c as useToaster, k as useTrackerPluginContext };
36
+ export { m as METHOD_NOT_SUPPORTED, h as MISSING_REQUIRED_SCOPE, g as PLUGIN_ID_IS_NOT_CORRECT, _ as PLUGIN_ID_OR_SLOT_NOT_PROVIDED, v as PluginActionError, e as PluginError, t as PluginLoader, k as TrackerPluginProvider, y as UNKNOWN_ERROR, b as VALIDATION_ERROR, x as getField, S as getLocalizedString, C as hostApi, w as storageApi, T as trackerApi, E as uiApi, r as useConfirm, i as useIsOrbita, a as useLanguage, o as useLocalizedString, c as useTheme, l as useToaster, A as useTrackerPluginContext };
37
37
 
38
38
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":[],"sources":["../src/components/TrackerPluginProvider.tsx"],"sourcesContent":["import {\n type BasicContext,\n type BasicPluginContextValue,\n type ContextLevel,\n type FullPluginContextValue,\n PluginProvider,\n type PluginProviderProps,\n type Theme,\n usePluginContext,\n} from '@weavix/sdk-react';\nimport type {\n GetDataResultMap,\n HandlerFunction,\n Handlers,\n SlotContextMap,\n} from '@weavix/tracker-plugin-sdk';\nimport { type ReactNode, createContext, useContext, useMemo } from 'react';\n\n/** Строковые ключи слота (для индексных типов без `symbol` в keyof). */\ntype TrackerSlotKey = Extract<keyof SlotContextMap, string>;\n\n/**\n * Сигнатура registerHandler: для 'getData' тип handler зависит от слота (GetDataResultMap[TSlot]).\n */\nexport type RegisterHandlerFunction<TSlot extends TrackerSlotKey> = <TKey extends keyof Handlers>(\n methodName: TKey,\n handler: TKey extends 'getData'\n ? TSlot extends keyof GetDataResultMap\n ? () => GetDataResultMap[TSlot]\n : never\n : HandlerFunction<TKey>,\n) => void;\n\n/**\n * Контекст плагина при contextLevel = 'basic'.\n * slotContext содержит только entityId.\n */\nexport interface BasicTrackerPluginContextValue<TSlot extends TrackerSlotKey = TrackerSlotKey> {\n /** Текущая тема хоста. Обновляется реактивно при получении theme.changed. */\n theme: Theme | undefined;\n /** Текущий язык хоста. Обновляется реактивно при получении language.changed. */\n language: string | undefined;\n /** Сервис, в котором открылся плагин. */\n service: string;\n /** Id пользователя. */\n userId?: string;\n /** Это ятим? */\n isYateam?: boolean;\n /** Origin родительского окна (хоста). */\n origin: string;\n /** Слот, в котором открыт плагин. */\n slot: TSlot;\n /** URL внутри плагина. */\n innerUrl: string;\n /** Query-параметры плагина */\n queryParams: Record<string, string>;\n /** Контекст страницы — только entityId при basic уровне. */\n slotContext: BasicContext | undefined;\n /** Регистрация обработчика для ответов на запросы хоста. */\n registerHandler: RegisterHandlerFunction<TSlot>;\n /** Уровень контекста, объявленный в манифесте. */\n contextLevel: 'basic';\n}\n\n/**\n * Контекст плагина при contextLevel = 'full'.\n * slotContext содержит полный объект слота (Issue, TriggerContext и т.д.).\n */\nexport interface FullTrackerPluginContextValue<TSlot extends TrackerSlotKey = TrackerSlotKey> {\n /** Текущая тема хоста. Обновляется реактивно при получении theme.changed. */\n theme: Theme | undefined;\n /** Текущий язык хоста. Обновляется реактивно при получении language.changed. */\n language: string | undefined;\n /** Сервис, в котором открылся плагин. */\n service: string;\n /** Id пользователя. */\n userId?: string;\n /** Это ятим? */\n isYateam?: boolean;\n /** Origin родительского окна (хоста). */\n origin: string;\n /** Слот, в котором открыт плагин. */\n slot: TSlot;\n /** URL внутри плагина. */\n innerUrl: string;\n /** Query-параметры плагина */\n queryParams: Record<string, string>;\n /** Контекст страницы — полный объект слота при full уровне. */\n slotContext: SlotContextMap[TSlot] | undefined;\n /** Регистрация обработчика для ответов на запросы хоста. */\n registerHandler: RegisterHandlerFunction<TSlot>;\n /** Уровень контекста, объявленный в манифесте. */\n contextLevel: 'full';\n}\n\ntype TrackerServiceContextValue = {\n registerHandler: RegisterHandlerFunction<TrackerSlotKey>;\n};\n\nconst TrackerServiceContext = createContext<TrackerServiceContextValue | null>(null);\n\n/**\n * Сервисный слой поверх {@link PluginProvider}: типизированный под Tracker `registerHandler`\n * и обязательная обёртка для {@link useTrackerPluginContext}.\n */\nfunction TrackerPluginServiceLayer({ children }: { children: ReactNode }) {\n const { registerHandler: baseRegisterHandler } = usePluginContext('basic');\n\n const typedRegisterHandler = useMemo<RegisterHandlerFunction<TrackerSlotKey>>(() => {\n return ((methodName, handler) =>\n baseRegisterHandler(\n methodName as string,\n handler as (...args: unknown[]) => unknown,\n )) as RegisterHandlerFunction<TrackerSlotKey>;\n }, [baseRegisterHandler]);\n\n const value = useMemo(\n () => ({ registerHandler: typedRegisterHandler }),\n [typedRegisterHandler],\n );\n\n return (\n <TrackerServiceContext.Provider value={value}>{children}</TrackerServiceContext.Provider>\n );\n}\n\n/**\n * Обёртка над стандартным {@link PluginProvider}: инициализация и общий контракт хоста в SDK,\n * поверх — трекер-специфичный контекст (типизированный `registerHandler` и проверка для\n * {@link useTrackerPluginContext}).\n */\nexport function TrackerPluginProvider(props: PluginProviderProps) {\n return (\n <PluginProvider {...props}>\n <TrackerPluginServiceLayer>{props.children}</TrackerPluginServiceLayer>\n </PluginProvider>\n );\n}\n\nexport type TrackerPluginProviderProps = PluginProviderProps;\n\n/**\n * Хук для получения темы, языка, слота и контекста слота из TrackerPluginProvider.\n */\nexport function useTrackerPluginContext(): {\n [K in TrackerSlotKey]: BasicTrackerPluginContextValue<K>;\n}[TrackerSlotKey];\nexport function useTrackerPluginContext(level: 'basic'): {\n [K in TrackerSlotKey]: BasicTrackerPluginContextValue<K>;\n}[TrackerSlotKey];\nexport function useTrackerPluginContext(level: 'full'): {\n [K in TrackerSlotKey]: FullTrackerPluginContextValue<K>;\n}[TrackerSlotKey];\nexport function useTrackerPluginContext<TSlot extends TrackerSlotKey>(\n level?: 'basic',\n): BasicTrackerPluginContextValue<TSlot>;\nexport function useTrackerPluginContext<TSlot extends TrackerSlotKey>(\n level: 'full',\n): FullTrackerPluginContextValue<TSlot>;\nexport function useTrackerPluginContext(\n level: ContextLevel = 'basic',\n): BasicTrackerPluginContextValue | FullTrackerPluginContextValue {\n const base = usePluginContext(level as 'basic') as\n | BasicPluginContextValue\n | FullPluginContextValue;\n const service = useContext(TrackerServiceContext);\n if (!service) {\n throw new Error(\n 'useTrackerPluginContext must be used within TrackerPluginProvider (Tracker service layer). ' +\n 'Use PluginProvider only with usePluginContext, or wrap the app with TrackerPluginProvider.',\n );\n }\n\n const slot = base.slot as TrackerSlotKey;\n\n if (level === 'full') {\n return {\n ...base,\n slot,\n registerHandler: service.registerHandler as RegisterHandlerFunction<typeof slot>,\n slotContext: base.slotContext as SlotContextMap[typeof slot] | undefined,\n } as FullTrackerPluginContextValue;\n }\n\n return {\n ...base,\n slot,\n registerHandler: service.registerHandler as RegisterHandlerFunction<typeof slot>,\n } as BasicTrackerPluginContextValue;\n}\n\nexport { isInternalUrl } from '@weavix/sdk-react';\n"],"mappings":";;;;;AAmGA,IAAM,IAAwB,EAAiD,IAAI;AAMnF,SAAS,EAA0B,EAAE,eAAqC;CACtE,IAAM,EAAE,iBAAiB,MAAwB,EAAiB,OAAO,GAEnE,IAAuB,UAChB,GAAY,MACjB,EACI,GACA,CACJ,IACL,CAAC,CAAmB,CAAC,GAElB,IAAQ,SACH,EAAE,iBAAiB,EAAqB,IAC/C,CAAC,CAAoB,CACzB;CAEA,OACI,kBAAC,EAAsB,UAAvB;EAAuC;EAAQ;CAAyC,CAAA;AAEhG;AAOA,SAAgB,EAAsB,GAA4B;CAC9D,OACI,kBAAC,GAAD;EAAgB,GAAI;YAChB,kBAAC,GAAD,EAAA,UAA4B,EAAM,SAAoC,CAAA;CAC1D,CAAA;AAExB;AAsBA,SAAgB,EACZ,IAAsB,SACwC;CAC9D,IAAM,IAAO,EAAiB,CAAgB,GAGxC,IAAU,EAAW,CAAqB;CAChD,IAAI,CAAC,GACD,MAAU,MACN,uLAEJ;CAGJ,IAAM,IAAO,EAAK;CAWlB,OATI,MAAU,SACH;EACH,GAAG;EACH;EACA,iBAAiB,EAAQ;EACzB,aAAa,EAAK;CACtB,IAGG;EACH,GAAG;EACH;EACA,iBAAiB,EAAQ;CAC7B;AACJ"}
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../src/components/TrackerPluginProvider.tsx"],"sourcesContent":["import {\n type BasicContext,\n type BasicPluginContextValue,\n type ContextLevel,\n type FullPluginContextValue,\n PluginProvider,\n type PluginProviderProps,\n type Theme,\n usePluginContext,\n} from '@weavix/sdk-react';\nimport type {\n GetDataResultMap,\n HandlerFunction,\n Handlers,\n SlotContextMap,\n} from '@weavix/tracker-plugin-sdk';\nimport { type ReactNode, createContext, useContext, useMemo } from 'react';\n\n/** Строковые ключи слота (для индексных типов без `symbol` в keyof). */\ntype TrackerSlotKey = Extract<keyof SlotContextMap, string>;\n\n/**\n * Сигнатура registerHandler: для 'getData' тип handler зависит от слота (GetDataResultMap[TSlot]).\n */\nexport type RegisterHandlerFunction<TSlot extends TrackerSlotKey> = <TKey extends keyof Handlers>(\n methodName: TKey,\n handler: TKey extends 'getData'\n ? TSlot extends keyof GetDataResultMap\n ? () => GetDataResultMap[TSlot]\n : never\n : HandlerFunction<TKey>,\n) => void;\n\n/**\n * Контекст плагина при contextLevel = 'basic'.\n * slotContext содержит только entityId.\n */\nexport interface BasicTrackerPluginContextValue<TSlot extends TrackerSlotKey = TrackerSlotKey> {\n /** Текущая тема хоста. Обновляется реактивно при получении theme.changed. */\n theme: Theme | undefined;\n /** Текущий язык хоста. Обновляется реактивно при получении language.changed. */\n language: string | undefined;\n /** Сервис, в котором открылся плагин. */\n service: string;\n /** Id пользователя. */\n userId?: string;\n /** Это ятим? */\n isYateam?: boolean;\n /** Включена ли Орбита */\n isOrbita?: boolean;\n /** Origin родительского окна (хоста). */\n origin: string;\n /** Слот, в котором открыт плагин. */\n slot: TSlot;\n /** URL внутри плагина. */\n innerUrl: string;\n /** Query-параметры плагина */\n queryParams: Record<string, string>;\n /** Контекст страницы — только entityId при basic уровне. */\n slotContext: BasicContext | undefined;\n /** Регистрация обработчика для ответов на запросы хоста. */\n registerHandler: RegisterHandlerFunction<TSlot>;\n /** Уровень контекста, объявленный в манифесте. */\n contextLevel: 'basic';\n}\n\n/**\n * Контекст плагина при contextLevel = 'full'.\n * slotContext содержит полный объект слота (Issue, TriggerContext и т.д.).\n */\nexport interface FullTrackerPluginContextValue<TSlot extends TrackerSlotKey = TrackerSlotKey> {\n /** Текущая тема хоста. Обновляется реактивно при получении theme.changed. */\n theme: Theme | undefined;\n /** Текущий язык хоста. Обновляется реактивно при получении language.changed. */\n language: string | undefined;\n /** Сервис, в котором открылся плагин. */\n service: string;\n /** Id пользователя. */\n userId?: string;\n /** Это ятим? */\n isYateam?: boolean;\n /** Включена ли Орбита */\n isOrbita?: boolean;\n /** Origin родительского окна (хоста). */\n origin: string;\n /** Слот, в котором открыт плагин. */\n slot: TSlot;\n /** URL внутри плагина. */\n innerUrl: string;\n /** Query-параметры плагина */\n queryParams: Record<string, string>;\n /** Контекст страницы — полный объект слота при full уровне. */\n slotContext: SlotContextMap[TSlot] | undefined;\n /** Регистрация обработчика для ответов на запросы хоста. */\n registerHandler: RegisterHandlerFunction<TSlot>;\n /** Уровень контекста, объявленный в манифесте. */\n contextLevel: 'full';\n}\n\ntype TrackerServiceContextValue = {\n registerHandler: RegisterHandlerFunction<TrackerSlotKey>;\n};\n\nconst TrackerServiceContext = createContext<TrackerServiceContextValue | null>(null);\n\n/**\n * Сервисный слой поверх {@link PluginProvider}: типизированный под Tracker `registerHandler`\n * и обязательная обёртка для {@link useTrackerPluginContext}.\n */\nfunction TrackerPluginServiceLayer({ children }: { children: ReactNode }) {\n const { registerHandler: baseRegisterHandler } = usePluginContext('basic');\n\n const typedRegisterHandler = useMemo<RegisterHandlerFunction<TrackerSlotKey>>(() => {\n return ((methodName, handler) =>\n baseRegisterHandler(\n methodName as string,\n handler as (...args: unknown[]) => unknown,\n )) as RegisterHandlerFunction<TrackerSlotKey>;\n }, [baseRegisterHandler]);\n\n const value = useMemo(\n () => ({ registerHandler: typedRegisterHandler }),\n [typedRegisterHandler],\n );\n\n return (\n <TrackerServiceContext.Provider value={value}>{children}</TrackerServiceContext.Provider>\n );\n}\n\n/**\n * Обёртка над стандартным {@link PluginProvider}: инициализация и общий контракт хоста в SDK,\n * поверх — трекер-специфичный контекст (типизированный `registerHandler` и проверка для\n * {@link useTrackerPluginContext}).\n */\nexport function TrackerPluginProvider(props: PluginProviderProps) {\n return (\n <PluginProvider {...props}>\n <TrackerPluginServiceLayer>{props.children}</TrackerPluginServiceLayer>\n </PluginProvider>\n );\n}\n\nexport type TrackerPluginProviderProps = PluginProviderProps;\n\n/**\n * Хук для получения темы, языка, слота и контекста слота из TrackerPluginProvider.\n */\nexport function useTrackerPluginContext(): {\n [K in TrackerSlotKey]: BasicTrackerPluginContextValue<K>;\n}[TrackerSlotKey];\nexport function useTrackerPluginContext(level: 'basic'): {\n [K in TrackerSlotKey]: BasicTrackerPluginContextValue<K>;\n}[TrackerSlotKey];\nexport function useTrackerPluginContext(level: 'full'): {\n [K in TrackerSlotKey]: FullTrackerPluginContextValue<K>;\n}[TrackerSlotKey];\nexport function useTrackerPluginContext<TSlot extends TrackerSlotKey>(\n level?: 'basic',\n): BasicTrackerPluginContextValue<TSlot>;\nexport function useTrackerPluginContext<TSlot extends TrackerSlotKey>(\n level: 'full',\n): FullTrackerPluginContextValue<TSlot>;\nexport function useTrackerPluginContext(\n level: ContextLevel = 'basic',\n): BasicTrackerPluginContextValue | FullTrackerPluginContextValue {\n const base = usePluginContext(level as 'basic') as\n | BasicPluginContextValue\n | FullPluginContextValue;\n const service = useContext(TrackerServiceContext);\n if (!service) {\n throw new Error(\n 'useTrackerPluginContext must be used within TrackerPluginProvider (Tracker service layer). ' +\n 'Use PluginProvider only with usePluginContext, or wrap the app with TrackerPluginProvider.',\n );\n }\n\n const slot = base.slot as TrackerSlotKey;\n\n if (level === 'full') {\n return {\n ...base,\n slot,\n registerHandler: service.registerHandler as RegisterHandlerFunction<typeof slot>,\n slotContext: base.slotContext as SlotContextMap[typeof slot] | undefined,\n } as FullTrackerPluginContextValue;\n }\n\n return {\n ...base,\n slot,\n registerHandler: service.registerHandler as RegisterHandlerFunction<typeof slot>,\n } as BasicTrackerPluginContextValue;\n}\n\nexport { isInternalUrl } from '@weavix/sdk-react';\n"],"mappings":";;;;;AAuGA,IAAM,IAAwB,EAAiD,IAAI;AAMnF,SAAS,EAA0B,EAAE,eAAqC;CACtE,IAAM,EAAE,iBAAiB,MAAwB,EAAiB,OAAO,GAEnE,IAAuB,UAChB,GAAY,MACjB,EACI,GACA,CACJ,IACL,CAAC,CAAmB,CAAC,GAElB,IAAQ,SACH,EAAE,iBAAiB,EAAqB,IAC/C,CAAC,CAAoB,CACzB;CAEA,OACI,kBAAC,EAAsB,UAAvB;EAAuC;EAAQ;CAAyC,CAAA;AAEhG;AAOA,SAAgB,EAAsB,GAA4B;CAC9D,OACI,kBAAC,GAAD;EAAgB,GAAI;YAChB,kBAAC,GAAD,EAAA,UAA4B,EAAM,SAAoC,CAAA;CAC1D,CAAA;AAExB;AAsBA,SAAgB,EACZ,IAAsB,SACwC;CAC9D,IAAM,IAAO,EAAiB,CAAgB,GAGxC,IAAU,EAAW,CAAqB;CAChD,IAAI,CAAC,GACD,MAAU,MACN,uLAEJ;CAGJ,IAAM,IAAO,EAAK;CAWlB,OATI,MAAU,SACH;EACH,GAAG;EACH;EACA,iBAAiB,EAAQ;EACzB,aAAa,EAAK;CACtB,IAGG;EACH,GAAG;EACH;EACA,iBAAiB,EAAQ;CAC7B;AACJ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@weavix/tracker-plugin-sdk-react",
3
- "version": "0.0.25",
3
+ "version": "0.0.26",
4
4
  "exports": {
5
5
  ".": {
6
6
  "types": "./dist/index.d.ts",
@@ -22,14 +22,14 @@
22
22
  "access": "public"
23
23
  },
24
24
  "dependencies": {
25
- "@weavix/tracker-plugin-sdk": "^0.0.25",
26
- "@weavix/sdk-core": "^0.0.27",
27
- "@weavix/sdk-react": "^0.0.27",
28
- "@weavix/tracker-core": "^0.0.25"
25
+ "@weavix/tracker-plugin-sdk": "^0.0.26",
26
+ "@weavix/sdk-core": "^0.0.28",
27
+ "@weavix/sdk-react": "^0.0.28",
28
+ "@weavix/tracker-core": "^0.0.26"
29
29
  },
30
30
  "peerDependencies": {
31
31
  "react": "^18.0.0",
32
- "@weavix/tracker-core": "^0.0.25"
32
+ "@weavix/tracker-core": "^0.0.26"
33
33
  },
34
34
  "devDependencies": {
35
35
  "@testing-library/jest-dom": "*",