@dxtmisha/functional-basic 1.8.6 → 1.8.7

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 (46) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/ai-description.md +12 -20
  3. package/ai-mcp-resources.json +5 -5
  4. package/ai-resources/prompts.json +8 -0
  5. package/ai-types.md +1720 -1042
  6. package/dist/classes/ApiCache.d.ts +2 -2
  7. package/dist/classes/ApiErrorStorage.d.ts +9 -1
  8. package/dist/classes/ApiHydration.d.ts +1 -0
  9. package/dist/classes/ApiInstance.d.ts +1 -0
  10. package/dist/classes/ApiStatus.d.ts +1 -0
  11. package/dist/classes/BroadcastMessage.d.ts +1 -0
  12. package/dist/classes/Cache.d.ts +1 -0
  13. package/dist/classes/CacheItem.d.ts +3 -0
  14. package/dist/classes/CookieBlock.d.ts +1 -1
  15. package/dist/classes/CookieBlockInstance.d.ts +2 -1
  16. package/dist/classes/CookieStorage.d.ts +2 -1
  17. package/dist/classes/DataStorage.d.ts +1 -1
  18. package/dist/classes/Datetime.d.ts +5 -4
  19. package/dist/classes/EventItem.d.ts +7 -28
  20. package/dist/classes/Formatters.d.ts +6 -10
  21. package/dist/classes/GeoFlag.d.ts +1 -1
  22. package/dist/classes/GeoInstance.d.ts +1 -0
  23. package/dist/classes/GeoIntl.d.ts +23 -36
  24. package/dist/classes/GeoPhone.d.ts +2 -0
  25. package/dist/classes/Global.d.ts +1 -1
  26. package/dist/classes/Hash.d.ts +1 -1
  27. package/dist/classes/Icons.d.ts +8 -8
  28. package/dist/classes/Loading.d.ts +8 -12
  29. package/dist/classes/LoadingInstance.d.ts +10 -22
  30. package/dist/classes/Meta.d.ts +4 -1
  31. package/dist/classes/MetaManager.d.ts +2 -0
  32. package/dist/classes/MetaOg.d.ts +7 -2
  33. package/dist/classes/MetaTwitter.d.ts +7 -2
  34. package/dist/classes/Query.d.ts +1 -1
  35. package/dist/classes/ResumableTimer.d.ts +4 -0
  36. package/dist/classes/ScrollbarWidth.d.ts +1 -0
  37. package/dist/classes/SearchList.d.ts +4 -0
  38. package/dist/classes/SearchListData.d.ts +3 -2
  39. package/dist/classes/SearchListMatcher.d.ts +3 -2
  40. package/dist/classes/ServerStorage.d.ts +5 -2
  41. package/dist/classes/StorageCallback.d.ts +2 -0
  42. package/dist/classes/Translate.d.ts +6 -8
  43. package/dist/classes/TranslateInstance.d.ts +4 -7
  44. package/dist/classes/UrlInstanceAbstract.d.ts +4 -0
  45. package/dist/library.js +9 -7
  46. package/package.json +4 -4
@@ -8,8 +8,11 @@ import { MetaRobots, MetaTag } from '../types/metaTypes';
8
8
  * Унифицированный класс для управления всеми типами мета-тегов (стандартные HTML, Open Graph, Twitter Card).
9
9
  */
10
10
  export declare class Meta extends MetaManager<MetaTag[]> {
11
+ /** Page title suffix / Суффикс заголовка страницы */
11
12
  protected suffix?: string;
13
+ /** Open Graph meta instance / Экземпляр мета-тегов Open Graph */
12
14
  protected og: MetaOg;
15
+ /** Twitter Card meta instance / Экземпляр мета-тегов Twitter Card */
13
16
  protected twitter: MetaTwitter;
14
17
  /**
15
18
  * Creates an instance of Meta with integrated Open Graph and Twitter Card support.
@@ -160,7 +163,7 @@ export declare class Meta extends MetaManager<MetaTag[]> {
160
163
  *
161
164
  * Устанавливает суффикс для добавления к заголовку страницы.
162
165
  * @param suffix title suffix (e.g. 'My Site') / суффикс заголовка (например, 'Мой Сайт')
163
- * @returns void
166
+ * @returns void / ничего не возвращает
164
167
  */
165
168
  setSuffix(suffix?: string): void;
166
169
  /**
@@ -1,3 +1,4 @@
1
+ /** Meta-tags dictionary structure / Структура словаря мета-тегов */
1
2
  type MetaList<T extends readonly string[]> = {
2
3
  [K in T[number]]?: string;
3
4
  };
@@ -9,6 +10,7 @@ type MetaList<T extends readonly string[]> = {
9
10
  export declare class MetaManager<T extends readonly string[], Key extends keyof MetaList<T> = keyof MetaList<T>> {
10
11
  protected readonly listMeta: T;
11
12
  protected readonly isProperty: boolean;
13
+ /** Meta tags map / Карта мета-тегов */
12
14
  protected readonly items: MetaList<T>;
13
15
  /**
14
16
  * Creates an instance of MetaManager.
@@ -6,6 +6,11 @@ import { MetaOpenGraphTag, MetaOpenGraphType } from '../types/metaTypes';
6
6
  * Класс для управления мета-тегами Open Graph.
7
7
  */
8
8
  export declare class MetaOg extends MetaManager<MetaOpenGraphTag[]> {
9
+ /**
10
+ * Constructor for MetaOg.
11
+ *
12
+ * Конструктор для MetaOg.
13
+ */
9
14
  constructor();
10
15
  /**
11
16
  * Gets the Open Graph title.
@@ -25,7 +30,7 @@ export declare class MetaOg extends MetaManager<MetaOpenGraphTag[]> {
25
30
  * Gets the Open Graph URL.
26
31
  *
27
32
  * Получает URL Open Graph.
28
- * @returns URL / URL
33
+ * @returns URL / URL адрес
29
34
  */
30
35
  getUrl(): string;
31
36
  /**
@@ -76,7 +81,7 @@ export declare class MetaOg extends MetaManager<MetaOpenGraphTag[]> {
76
81
  * Sets the Open Graph URL.
77
82
  *
78
83
  * Устанавливает URL Open Graph.
79
- * @param url URL / URL
84
+ * @param url URL / URL адрес
80
85
  * @returns current instance / текущий экземпляр
81
86
  */
82
87
  setUrl(url: string): this;
@@ -6,6 +6,11 @@ import { MetaTwitterCard, MetaTwitterTag } from '../types/metaTypes';
6
6
  * Класс для управления мета-тегами Twitter Card.
7
7
  */
8
8
  export declare class MetaTwitter extends MetaManager<MetaTwitterTag[]> {
9
+ /**
10
+ * Constructor for MetaTwitter.
11
+ *
12
+ * Конструктор для MetaTwitter.
13
+ */
9
14
  constructor();
10
15
  /**
11
16
  * Gets the Twitter Card type.
@@ -32,7 +37,7 @@ export declare class MetaTwitter extends MetaManager<MetaTwitterTag[]> {
32
37
  * Gets the page URL.
33
38
  *
34
39
  * Получает URL страницы.
35
- * @returns URL / URL
40
+ * @returns URL / URL адрес
36
41
  */
37
42
  getUrl(): string;
38
43
  /**
@@ -84,7 +89,7 @@ export declare class MetaTwitter extends MetaManager<MetaTwitterTag[]> {
84
89
  * Sets the page URL.
85
90
  *
86
91
  * Устанавливает URL страницы.
87
- * @param url URL / URL
92
+ * @param url URL / URL адрес
88
93
  * @returns current instance / текущий экземпляр
89
94
  */
90
95
  setUrl(url: string): this;
@@ -51,7 +51,7 @@ export declare class Query {
51
51
  * Update query variables from URL string.
52
52
  *
53
53
  * Обновление переменных query-параметров из строки URL.
54
- * @returns void
54
+ * @returns void / ничего не возвращает
55
55
  */
56
56
  static reload(): void;
57
57
  }
@@ -7,9 +7,13 @@ import { FunctionVoid } from '../types/basicTypes';
7
7
  export declare class ResumableTimer {
8
8
  protected callback: FunctionVoid;
9
9
  protected delay: number;
10
+ /** setTimeout identifier / Идентификатор setTimeout */
10
11
  protected timerId?: ReturnType<typeof setTimeout>;
12
+ /** Timestamp when timer started / Метка времени старта таймера */
11
13
  protected startTime?: number;
14
+ /** Remaining milliseconds / Оставшиеся миллисекунды */
12
15
  protected remaining?: number;
16
+ /** Completion flag / Флаг завершения */
13
17
  protected completed: boolean;
14
18
  /**
15
19
  * Constructor
@@ -5,6 +5,7 @@ import { DataStorage } from './DataStorage';
5
5
  * Класс для получения ширины скролла.
6
6
  */
7
7
  export declare class ScrollbarWidth {
8
+ /** Calculation state flag / Флаг состояния вычисления */
8
9
  private static calculate;
9
10
  /**
10
11
  * Checks whether to enable scroll hiding.
@@ -11,9 +11,13 @@ import { SearchCacheItem, SearchColumns, SearchFormatItem, SearchFormatList, Sea
11
11
  * Координирует работу опций, состояния элементов, логики сопоставления и хранения данных.
12
12
  */
13
13
  export declare class SearchList<T extends SearchItem, K extends SearchColumns<T>> {
14
+ /** Search options instance / Экземпляр опций поиска */
14
15
  protected options: SearchListOptions;
16
+ /** Search list item state / Состояние элемента списка поиска */
15
17
  protected item: SearchListItem;
18
+ /** Search matcher instance / Экземпляр сопоставителя поиска */
16
19
  protected matcher: SearchListMatcher;
20
+ /** Search data storage instance / Экземпляр хранилища данных поиска */
17
21
  protected data: SearchListData<T, K>;
18
22
  /**
19
23
  * Constructor for SearchList.
@@ -11,6 +11,7 @@ export declare class SearchListData<T extends SearchItem, K extends SearchColumn
11
11
  protected columns: K | undefined;
12
12
  protected item: SearchListItem;
13
13
  protected options: SearchListOptions;
14
+ /** Search items cache / Кэш элементов поиска */
14
15
  protected listCache?: SearchCache<T>;
15
16
  /**
16
17
  * Constructor for SearchListData.
@@ -130,14 +131,14 @@ export declare class SearchListData<T extends SearchItem, K extends SearchColumn
130
131
  * Initializes the search cache.
131
132
  *
132
133
  * Инициализирует кэш поиска.
133
- * @returns void
134
+ * @returns void / ничего не возвращает
134
135
  */
135
136
  protected initCache(): void;
136
137
  /**
137
138
  * Resets the search cache.
138
139
  *
139
140
  * Сбрасывает кэш поиска.
140
- * @returns void
141
+ * @returns void / ничего не возвращает
141
142
  */
142
143
  protected resetCache(): void;
143
144
  }
@@ -9,6 +9,7 @@ import { SearchCacheItem } from '../types/searchTypes';
9
9
  export declare class SearchListMatcher {
10
10
  protected item: SearchListItem;
11
11
  protected options: SearchListOptions;
12
+ /** Regular expression matcher instance / Экземпляр регулярного выражения сопоставителя */
12
13
  protected matcher: RegExp | undefined;
13
14
  /**
14
15
  * Constructor for SearchListMatcher.
@@ -44,14 +45,14 @@ export declare class SearchListMatcher {
44
45
  * Updates the matcher based on the current item value and options.
45
46
  *
46
47
  * Обновляет сопоставитель на основе текущего значения элемента и опций.
47
- * @returns void
48
+ * @returns void / ничего не возвращает
48
49
  */
49
50
  update(): void;
50
51
  /**
51
52
  * Initializes or resets the regular expression matcher.
52
53
  *
53
54
  * Инициализирует или сбрасывает сопоставитель регулярных выражений.
54
- * @returns void
55
+ * @returns void / ничего не возвращает
55
56
  */
56
57
  protected initMatcher(): void;
57
58
  }
@@ -3,6 +3,7 @@ type ServerStorageItem = {
3
3
  value: any;
4
4
  hydration: boolean;
5
5
  };
6
+ /** Map of server storage items / Карта элементов серверного хранилища */
6
7
  type ServerStorageList = Record<string, ServerStorageItem>;
7
8
  /**
8
9
  * Class for managing data storage during server-side rendering (SSR).
@@ -12,8 +13,11 @@ type ServerStorageList = Record<string, ServerStorageItem>;
12
13
  * Обеспечивает изоляцию данных между параллельными запросами, используя контекст конкретного запроса.
13
14
  */
14
15
  export declare class ServerStorage {
16
+ /** In-memory storage fallback / Резервное хранилище в памяти */
15
17
  protected static storage?: ServerStorageList;
18
+ /** Request context listener / Слушатель контекста запроса */
16
19
  protected static listener?: () => Record<string, any> | undefined;
20
+ /** Flag to hide missing storage error / Флаг скрытия ошибки отсутствия хранилища */
17
21
  protected static hideError?: boolean;
18
22
  /**
19
23
  * Initializes the storage with a context listener.
@@ -83,8 +87,7 @@ export declare class ServerStorage {
83
87
  * Returns storage.
84
88
  *
85
89
  * Возвращает хранилище.
86
- * @param isInit whether to initialize the storage if it does not exist /
87
- * инициализировать ли хранилище, если оно не существует
90
+ * @param isInit whether to initialize the storage if it does not exist / инициализировать ли хранилище, если оно не существует
88
91
  * @param status optional status for error reporting / необязательный статус для отчета об ошибках
89
92
  * @returns storage list / список хранилища
90
93
  */
@@ -15,10 +15,12 @@ export declare class StorageCallback<T = any, Callback = (value: T) => void | Pr
15
15
  * @returns StorageCallback instance / экземпляр StorageCallback
16
16
  */
17
17
  static getInstance<T>(name: string, group?: string): StorageCallback<T, (value: T) => void | Promise<void>>;
18
+ /** List of registered callbacks / Список зарегистрированных колбэков */
18
19
  protected callbacks: {
19
20
  callback: Callback;
20
21
  isOnce?: boolean;
21
22
  }[];
23
+ /** Loading state / Состояние загрузки */
22
24
  protected loading: boolean;
23
25
  /**
24
26
  * Constructor for initialization.
@@ -6,6 +6,7 @@ import { TranslateCode, TranslateConfig, TranslateDataFile, TranslateList } from
6
6
  * Класс для получения переведенного текста.
7
7
  */
8
8
  export declare class Translate {
9
+ /** TranslateInstance singleton item / Экземпляр синглтона TranslateInstance */
9
10
  protected static item?: TranslateInstance;
10
11
  /**
11
12
  * Getting the translation text by its code.
@@ -27,11 +28,9 @@ export declare class Translate {
27
28
  * Getting the translation text by its code (Sync).
28
29
  *
29
30
  * Получение текста перевода по его коду (Sync).
30
- * @param name code name/ название кода
31
- * @param first If set to false, returns an empty string if there is no text/
32
- * если установлено false, возвращает пустую строку, если нет текста
33
- * @param replacement If set, replaces the text with the specified values/
34
- * если установлено, заменяет текст на указанные значения
31
+ * @param name code name / название кода
32
+ * @param first If set to false, returns an empty string if there is no text / если установлено false, возвращает пустую строку, если нет текста
33
+ * @param replacement If set, replaces the text with the specified values / если установлено, заменяет текст на указанные значения
35
34
  * @returns translation text / текст перевода
36
35
  */
37
36
  static getSync(name: string, first?: boolean, replacement?: string[] | Record<string, string | number>): string;
@@ -47,9 +46,8 @@ export declare class Translate {
47
46
  * Getting a list of translations by an array of text codes.
48
47
  *
49
48
  * Получение списка переводов по массиву кодов текста.
50
- * @param names list of codes to get translations/ список кодов для получения переводов
51
- * @param first If set to false, returns an empty string if there is no text/
52
- * если установлено false, возвращает пустую строку, если нет текста
49
+ * @param names list of codes to get translations / список кодов для получения переводов
50
+ * @param first If set to false, returns an empty string if there is no text / если установлено false, возвращает пустую строку, если нет текста
53
51
  * @returns object with translations / объект с переводами
54
52
  */
55
53
  static getListSync<T extends TranslateCode[]>(names: T, first?: boolean): TranslateList<T>;
@@ -42,10 +42,8 @@ export declare class TranslateInstance {
42
42
  *
43
43
  * Получение текста перевода по его коду (Sync).
44
44
  * @param name code name/ название кода
45
- * @param first If set to false, returns an empty string if there is no text/
46
- * если установлено false, возвращает пустую строку, если нет текста
47
- * @param replacement If set, replaces the text with the specified values/
48
- * если установлено, заменяет текст на указанные значения
45
+ * @param first If set to false, returns an empty string if there is no text / если установлено false, возвращает пустую строку, если нет текста
46
+ * @param replacement If set, replaces the text with the specified values / если установлено, заменяет текст на указанные значения
49
47
  * @returns translation text / текст перевода
50
48
  */
51
49
  getSync(name: string, first?: boolean, replacement?: string[] | Record<string, string | number>): string;
@@ -61,9 +59,8 @@ export declare class TranslateInstance {
61
59
  * Getting a list of translations by an array of text codes.
62
60
  *
63
61
  * Получение списка переводов по массиву кодов текста.
64
- * @param names list of codes to get translations/ список кодов для получения переводов
65
- * @param first If set to false, returns an empty string if there is no text/
66
- * если установлено false, возвращает пустую строку, если нет текста
62
+ * @param names list of codes to get translations / список кодов для получения переводов
63
+ * @param first If set to false, returns an empty string if there is no text / если установлено false, возвращает пустую строку, если нет текста
67
64
  * @returns object with translations / объект с переводами
68
65
  */
69
66
  getListSync<T extends TranslateCode[]>(names: T, first?: boolean): TranslateList<T>;
@@ -4,9 +4,13 @@
4
4
  * Базовый абстрактный класс для работы с состояниями на основе URL (Hash, Query).
5
5
  */
6
6
  export declare abstract class UrlInstanceAbstract {
7
+ /** URL state data record / Запись данных состояния URL */
7
8
  protected data?: Record<string, any>;
9
+ /** Watchers map for URL state variables / Карта слушателей для переменных состояния URL */
8
10
  protected watch: Record<string, ((value: any) => void)[]>;
11
+ /** Update block flag / Флаг блокировки обновления */
9
12
  protected block: boolean;
13
+ /** Debounce timer instance / Экземпляр таймера задержки */
10
14
  protected time?: any;
11
15
  /**
12
16
  * Get data.
package/dist/library.js CHANGED
@@ -123,9 +123,11 @@ function g(e) {
123
123
  var _ = /[^-+\d., ]+/g, v = /( [0-9]{3}[ ,.]|[0-9] [0-9])/, te = / /g, y = /,/g, ne = /,[0-9]{3}[,.]/, re = /[.][0-9]{3}[,.]/, ie = /[.]/g;
124
124
  function b(e) {
125
125
  if (typeof e == "number") return Number.isFinite(e) && e || 0;
126
- if (!e) return 0;
127
- let t = e.replace(_, "");
128
- return t = v.test(t) ? t.replace(te, "").replace(y, ".") : ne.test(t) ? t.replace(y, "") : re.test(t) ? t.replace(ie, "").replace(y, ".") : t.replace(y, "."), parseFloat(t) || 0;
126
+ if (l(e) && d(e)) {
127
+ let t = e.replace(_, "");
128
+ return t = v.test(t) ? t.replace(te, "").replace(y, ".") : ne.test(t) ? t.replace(y, "") : re.test(t) ? t.replace(ie, "").replace(y, ".") : t.replace(y, "."), parseFloat(t) || 0;
129
+ }
130
+ return 0;
129
131
  }
130
132
  //#endregion
131
133
  //#region src/functions/isSelected.ts
@@ -160,7 +162,7 @@ function oe(e, t, n) {
160
162
  return i.length === a.length ? i : (i.pop(), [...i, a.slice(n - 1).join(t)]);
161
163
  }
162
164
  //#endregion
163
- //#region \0@oxc-project+runtime@0.143.0/helpers/esm/typeof.js
165
+ //#region \0@oxc-project+runtime@0.144.0/helpers/esm/typeof.js
164
166
  function C(e) {
165
167
  "@babel/helpers - typeof";
166
168
  return C = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(e) {
@@ -170,7 +172,7 @@ function C(e) {
170
172
  }, C(e);
171
173
  }
172
174
  //#endregion
173
- //#region \0@oxc-project+runtime@0.143.0/helpers/esm/toPrimitive.js
175
+ //#region \0@oxc-project+runtime@0.144.0/helpers/esm/toPrimitive.js
174
176
  function se(e, t) {
175
177
  if (C(e) != "object" || !e) return e;
176
178
  var n = e[Symbol.toPrimitive];
@@ -182,13 +184,13 @@ function se(e, t) {
182
184
  return (t === "string" ? String : Number)(e);
183
185
  }
184
186
  //#endregion
185
- //#region \0@oxc-project+runtime@0.143.0/helpers/esm/toPropertyKey.js
187
+ //#region \0@oxc-project+runtime@0.144.0/helpers/esm/toPropertyKey.js
186
188
  function ce(e) {
187
189
  var t = se(e, "string");
188
190
  return C(t) == "symbol" ? t : t + "";
189
191
  }
190
192
  //#endregion
191
- //#region \0@oxc-project+runtime@0.143.0/helpers/esm/defineProperty.js
193
+ //#region \0@oxc-project+runtime@0.144.0/helpers/esm/defineProperty.js
192
194
  function w(e, t, n) {
193
195
  return (t = ce(t)) in e ? Object.defineProperty(e, t, {
194
196
  value: n,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@dxtmisha/functional-basic",
3
3
  "private": false,
4
- "version": "1.8.6",
4
+ "version": "1.8.7",
5
5
  "type": "module",
6
6
  "description": "Foundational isomorphic utility library for modern web and SSR development — HTTP client, state storage, i18n localization, SEO metadata, DOM events, formatting, and data utilities. Framework-agnostic, TypeScript-first.",
7
7
  "keywords": [
@@ -63,10 +63,10 @@
63
63
  "dev": "vite",
64
64
  "build": "vite build",
65
65
  "preview": "vite preview",
66
- "test": "NODE_OPTIONS=\"--no-webstorage\" vitest",
66
+ "test": "vitest",
67
67
  "library": "dxt-library",
68
- "types": "dxt-types",
69
- "prepublishOnly": "npm run library && npm run build",
68
+ "types": "npm run library && npm run build && dxt-types",
69
+ "prepublishOnly": "npm run library && npm run build && dxt-types-save",
70
70
  "publish-to-npm": "npm publish --access public"
71
71
  },
72
72
  "files": [