@weavix/sdk-core 0.0.1 → 0.0.3

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.
Files changed (42) hide show
  1. package/README.md +22 -35
  2. package/dist/bridge/bridge.d.ts +24 -0
  3. package/dist/bridge/bridge.d.ts.map +1 -0
  4. package/dist/bridge/types/BaseMessage.d.ts +4 -0
  5. package/dist/bridge/types/BaseMessage.d.ts.map +1 -0
  6. package/dist/bridge/types/ErrorCodes.d.ts +19 -0
  7. package/dist/bridge/types/ErrorCodes.d.ts.map +1 -0
  8. package/dist/bridge/types/PluginActionError.d.ts +6 -0
  9. package/dist/bridge/types/PluginActionError.d.ts.map +1 -0
  10. package/dist/bridge/types/UiContract.d.ts +35 -0
  11. package/dist/bridge/types/UiContract.d.ts.map +1 -0
  12. package/dist/common/types/Theme.d.ts +2 -0
  13. package/dist/common/types/Theme.d.ts.map +1 -0
  14. package/dist/events/eventBus.d.ts +38 -0
  15. package/dist/events/eventBus.d.ts.map +1 -0
  16. package/dist/events/types.d.ts +46 -0
  17. package/dist/events/types.d.ts.map +1 -0
  18. package/dist/handlers/handlers.d.ts +12 -0
  19. package/dist/handlers/handlers.d.ts.map +1 -0
  20. package/dist/host/hostApi.d.ts +50 -0
  21. package/dist/host/hostApi.d.ts.map +1 -0
  22. package/dist/host/types/ContentSizeUpdateRequest.d.ts +7 -0
  23. package/dist/host/types/ContentSizeUpdateRequest.d.ts.map +1 -0
  24. package/dist/host/types/NavigateRequest.d.ts +11 -0
  25. package/dist/host/types/NavigateRequest.d.ts.map +1 -0
  26. package/dist/host/utils/autoResize.d.ts +15 -0
  27. package/dist/host/utils/autoResize.d.ts.map +1 -0
  28. package/dist/index.d.ts +24 -518
  29. package/dist/index.d.ts.map +1 -0
  30. package/dist/index.mjs +103 -123
  31. package/dist/index.mjs.map +1 -1
  32. package/dist/ui/Confirm.d.ts +14 -0
  33. package/dist/ui/Confirm.d.ts.map +1 -0
  34. package/dist/ui/Toaster.d.ts +24 -0
  35. package/dist/ui/Toaster.d.ts.map +1 -0
  36. package/dist/ui/uiApi.d.ts +11 -0
  37. package/dist/ui/uiApi.d.ts.map +1 -0
  38. package/dist/utils/getField.d.ts +27 -0
  39. package/dist/utils/getField.d.ts.map +1 -0
  40. package/dist/utils/localization.d.ts +18 -0
  41. package/dist/utils/localization.d.ts.map +1 -0
  42. package/package.json +2 -11
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Confirm.d.ts","sourceRoot":"","sources":["../../src/ui/Confirm.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,cAAc,GAAG;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAAE,SAAS,EAAE,OAAO,CAAA;CAAE,CAAC;AAInD,qBAAa,OAAO;IAChB,IAAI,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;CAKxD"}
@@ -0,0 +1,24 @@
1
+ export type ToastAction = {
2
+ label: string;
3
+ onClick: () => void;
4
+ };
5
+ export type ToastOptions = {
6
+ name?: string;
7
+ title: string;
8
+ content?: string;
9
+ theme?: 'success' | 'danger' | 'warning' | 'info';
10
+ autoHiding?: number;
11
+ isClosable?: boolean;
12
+ actions?: ToastAction[];
13
+ };
14
+ export declare class Toaster {
15
+ private callbackMap;
16
+ private toastActionIds;
17
+ private eventSubscribed;
18
+ add(options: ToastOptions): Promise<{
19
+ name: string;
20
+ }>;
21
+ private ensureEventSubscription;
22
+ private cleanupCallbacksForToast;
23
+ }
24
+ //# sourceMappingURL=Toaster.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toaster.d.ts","sourceRoot":"","sources":["../../src/ui/Toaster.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,WAAW,GAAG;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;CAC3B,CAAC;AAEF,qBAAa,OAAO;IAChB,OAAO,CAAC,WAAW,CAAiC;IACpD,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,eAAe,CAAS;IAE1B,GAAG,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAkC3D,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,wBAAwB;CAUnC"}
@@ -0,0 +1,11 @@
1
+ import { NavigateRequest } from '../host/types/NavigateRequest';
2
+ import { Confirm } from './Confirm';
3
+ import { Toaster } from './Toaster';
4
+ declare class UiApi {
5
+ readonly toaster: Toaster;
6
+ readonly confirm: Confirm;
7
+ navigate(payload: NavigateRequest): Promise<unknown>;
8
+ }
9
+ export declare const uiApi: UiApi;
10
+ export {};
11
+ //# sourceMappingURL=uiApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uiApi.d.ts","sourceRoot":"","sources":["../../src/ui/uiApi.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,cAAM,KAAK;IACP,QAAQ,CAAC,OAAO,UAAiB;IACjC,QAAQ,CAAC,OAAO,UAAiB;IAEjC,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC;CAGvD;AAED,eAAO,MAAM,KAAK,OAAc,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Извлекает значение из объекта по точечному пути (dot notation).
3
+ * Предназначена для работы с полями типа Record<string, unknown>, например со значениями полей задачи (Issue).
4
+ *
5
+ * Поддерживает вложенные пути: `'priority.display'`, `'assignee.display.ru'` и т.д.
6
+ * Если любой сегмент пути отсутствует или не является объектом — возвращается defaultValue или undefined.
7
+ * @param obj - Объект с произвольной структурой (например, issue или issue.values)
8
+ * @param path - Путь к полю через точку, например `'priority.display'` или `'summary'`
9
+ * @param defaultValue - Значение по умолчанию, если путь не найден
10
+ * @returns Значение по пути, defaultValue или undefined
11
+ * @example
12
+ * ```ts
13
+ * // Поле верхнего уровня
14
+ * getField(issue, 'key'); // 'QUEUE-123'
15
+ *
16
+ * // Вложенное поле (например, приоритет с display)
17
+ * getField(issue, 'priority.display'); // 'много' | undefined
18
+ *
19
+ * // С типизацией и значением по умолчанию
20
+ * const name = getField<string>(issue, 'summary', 'Без названия');
21
+ *
22
+ * // Элемент массива по индексу (массивы — объекты с числовыми ключами)
23
+ * getField(tags, '0'); // первый элемент
24
+ * ```
25
+ */
26
+ export declare function getField<T = unknown>(obj: Record<string, unknown>, path: string, defaultValue?: T): T | undefined;
27
+ //# sourceMappingURL=getField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getField.d.ts","sourceRoot":"","sources":["../../src/utils/getField.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,QAAQ,CAAC,CAAC,GAAG,OAAO,EAChC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,IAAI,EAAE,MAAM,EACZ,YAAY,CAAC,EAAE,CAAC,GACjB,CAAC,GAAG,SAAS,CAqBf"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Структурный shape `LocalizedString` — общая база, к которой структурно
3
+ * совместимы api-types `LocalizedString` обоих flavors. Реальная функция
4
+ * `getLocalizedString` читает только ключи `ru` и `en`, поэтому более
5
+ * узкие api-types-варианты (с дополнительными ключами) совместимы.
6
+ */
7
+ export type LocalizedString = string | {
8
+ ru?: string;
9
+ en?: string;
10
+ };
11
+ /**
12
+ * Получить локализованную строку на основе языка
13
+ * @param value - Локализованная строка
14
+ * @param language - Код языка ('ru' или 'en')
15
+ * @param fallbackLanguage - Резервный язык (по умолчанию 'ru')
16
+ */
17
+ export declare function getLocalizedString(value: LocalizedString, language: string | undefined, fallbackLanguage?: string): string;
18
+ //# sourceMappingURL=localization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localization.d.ts","sourceRoot":"","sources":["../../src/utils/localization.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpE;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAC9B,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,gBAAgB,SAAO,GACxB,MAAM,CASR"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@weavix/sdk-core",
3
- "version": "0.0.1",
3
+ "version": "0.0.3",
4
4
  "exports": {
5
5
  ".": {
6
6
  "types": "./dist/index.d.ts",
@@ -11,21 +11,12 @@
11
11
  "dist",
12
12
  "README.md"
13
13
  ],
14
- "keywords": [],
15
- "author": "Tracker Team",
16
- "license": "UNLICENSED",
17
- "description": "Core package for Tracker plugin SDK (Weavix flavor)",
18
14
  "publishConfig": {
19
15
  "registry": "https://registry.npmjs.org/",
20
16
  "access": "public"
21
17
  },
22
- "peerDependencies": {
23
- "@weavix/tracker-api-types": ">=0.0.0"
24
- },
25
18
  "devDependencies": {
26
- "@types/jest": "*",
27
- "@weavix/tracker-api-types": "*",
28
- "@tracker-plugin-sdk/core-shared": "0.0.0"
19
+ "@types/jest": "*"
29
20
  },
30
21
  "scripts": {
31
22
  "build": "vite build",