@dxtmisha/wiki 0.39.6 → 0.39.8

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 (194) hide show
  1. package/dist/defineProperty-Bjg6wMoX.js +39 -0
  2. package/dist/library.d.ts +0 -1
  3. package/dist/library.js +25 -25
  4. package/dist/media.js +12 -0
  5. package/dist/storybook.js +26929 -11
  6. package/package.json +1 -1
  7. package/src/library.ts +0 -1
  8. package/src/media/functional/functional-basic/api/api.en.mdx +45 -0
  9. package/src/media/functional/functional-basic/api/api.ru.mdx +45 -0
  10. package/src/media/functional/functional-basic/api/api.vi.mdx +45 -0
  11. package/src/media/functional/functional-basic/classes/Api/Api.en.mdx +54 -54
  12. package/src/media/functional/functional-basic/classes/Api/Api.ru.mdx +54 -54
  13. package/src/media/functional/functional-basic/classes/Api/Api.vi.mdx +54 -54
  14. package/src/media/functional/functional-basic/classes/ApiCache/ApiCache.en.mdx +111 -0
  15. package/src/media/functional/functional-basic/classes/ApiCache/ApiCache.ru.mdx +111 -0
  16. package/src/media/functional/functional-basic/classes/ApiCache/ApiCache.vi.mdx +111 -0
  17. package/src/media/functional/functional-basic/classes/ApiDataReturn/ApiDataReturn.en.mdx +32 -0
  18. package/src/media/functional/functional-basic/classes/ApiDataReturn/ApiDataReturn.ru.mdx +32 -0
  19. package/src/media/functional/functional-basic/classes/ApiDataReturn/ApiDataReturn.vi.mdx +32 -0
  20. package/src/media/functional/functional-basic/classes/ApiDefault/ApiDefault.en.mdx +24 -28
  21. package/src/media/functional/functional-basic/classes/ApiDefault/ApiDefault.ru.mdx +24 -28
  22. package/src/media/functional/functional-basic/classes/ApiDefault/ApiDefault.vi.mdx +24 -28
  23. package/src/media/functional/functional-basic/classes/ApiHeaders/ApiHeaders.en.mdx +28 -14
  24. package/src/media/functional/functional-basic/classes/ApiHeaders/ApiHeaders.ru.mdx +33 -19
  25. package/src/media/functional/functional-basic/classes/ApiHeaders/ApiHeaders.vi.mdx +33 -19
  26. package/src/media/functional/functional-basic/classes/ApiHydration/ApiHydration.en.mdx +56 -0
  27. package/src/media/functional/functional-basic/classes/ApiHydration/ApiHydration.ru.mdx +56 -0
  28. package/src/media/functional/functional-basic/classes/ApiHydration/ApiHydration.vi.mdx +55 -0
  29. package/src/media/functional/functional-basic/classes/ApiInstance/ApiInstance.en.mdx +101 -49
  30. package/src/media/functional/functional-basic/classes/ApiInstance/ApiInstance.ru.mdx +101 -49
  31. package/src/media/functional/functional-basic/classes/ApiInstance/ApiInstance.vi.mdx +98 -47
  32. package/src/media/functional/functional-basic/classes/ApiPreparation/ApiPreparation.en.mdx +44 -26
  33. package/src/media/functional/functional-basic/classes/ApiPreparation/ApiPreparation.ru.mdx +45 -27
  34. package/src/media/functional/functional-basic/classes/ApiPreparation/ApiPreparation.vi.mdx +44 -26
  35. package/src/media/functional/functional-basic/classes/ApiResponse/ApiResponse.en.mdx +50 -21
  36. package/src/media/functional/functional-basic/classes/ApiResponse/ApiResponse.ru.mdx +54 -25
  37. package/src/media/functional/functional-basic/classes/ApiResponse/ApiResponse.vi.mdx +55 -26
  38. package/src/media/functional/functional-basic/classes/ApiStatus/ApiStatus.en.mdx +29 -32
  39. package/src/media/functional/functional-basic/classes/ApiStatus/ApiStatus.ru.mdx +33 -36
  40. package/src/media/functional/functional-basic/classes/ApiStatus/ApiStatus.vi.mdx +33 -36
  41. package/src/media/functional/functional-basic/classes/BroadcastMessage/BroadcastMessage.en.mdx +34 -53
  42. package/src/media/functional/functional-basic/classes/BroadcastMessage/BroadcastMessage.ru.mdx +33 -52
  43. package/src/media/functional/functional-basic/classes/BroadcastMessage/BroadcastMessage.vi.mdx +39 -58
  44. package/src/media/functional/functional-basic/classes/Cache/Cache.en.mdx +7 -4
  45. package/src/media/functional/functional-basic/classes/Cache/Cache.ru.mdx +7 -4
  46. package/src/media/functional/functional-basic/classes/Cache/Cache.vi.mdx +28 -25
  47. package/src/media/functional/functional-basic/classes/CacheItem/CacheItem.en.mdx +45 -53
  48. package/src/media/functional/functional-basic/classes/CacheItem/CacheItem.ru.mdx +46 -54
  49. package/src/media/functional/functional-basic/classes/CacheItem/CacheItem.vi.mdx +47 -55
  50. package/src/media/functional/functional-basic/classes/CacheStatic/CacheStatic.en.mdx +13 -1
  51. package/src/media/functional/functional-basic/classes/CacheStatic/CacheStatic.ru.mdx +13 -1
  52. package/src/media/functional/functional-basic/classes/CacheStatic/CacheStatic.vi.mdx +13 -0
  53. package/src/media/functional/functional-basic/classes/Cookie/Cookie.en.mdx +88 -44
  54. package/src/media/functional/functional-basic/classes/Cookie/Cookie.ru.mdx +88 -44
  55. package/src/media/functional/functional-basic/classes/Cookie/Cookie.vi.mdx +85 -41
  56. package/src/media/functional/functional-basic/classes/CookieBlock/CookieBlock.en.mdx +43 -22
  57. package/src/media/functional/functional-basic/classes/CookieBlock/CookieBlock.ru.mdx +46 -25
  58. package/src/media/functional/functional-basic/classes/CookieBlock/CookieBlock.vi.mdx +43 -22
  59. package/src/media/functional/functional-basic/classes/CookieBlockInstance/CookieBlockInstance.en.mdx +84 -0
  60. package/src/media/functional/functional-basic/classes/CookieBlockInstance/CookieBlockInstance.ru.mdx +84 -0
  61. package/src/media/functional/functional-basic/classes/CookieBlockInstance/CookieBlockInstance.vi.mdx +100 -0
  62. package/src/media/functional/functional-basic/classes/CookieStorage/CookieStorage.en.mdx +153 -0
  63. package/src/media/functional/functional-basic/classes/CookieStorage/CookieStorage.ru.mdx +153 -0
  64. package/src/media/functional/functional-basic/classes/CookieStorage/CookieStorage.vi.mdx +153 -0
  65. package/src/media/functional/functional-basic/classes/DataStorage/DataStorage.en.mdx +32 -25
  66. package/src/media/functional/functional-basic/classes/DataStorage/DataStorage.ru.mdx +32 -25
  67. package/src/media/functional/functional-basic/classes/DataStorage/DataStorage.vi.mdx +32 -27
  68. package/src/media/functional/functional-basic/classes/Datetime/Datetime.en.mdx +36 -4
  69. package/src/media/functional/functional-basic/classes/Datetime/Datetime.ru.mdx +36 -4
  70. package/src/media/functional/functional-basic/classes/Datetime/Datetime.vi.mdx +36 -4
  71. package/src/media/functional/functional-basic/classes/ErrorCenter/ErrorCenter.en.mdx +101 -70
  72. package/src/media/functional/functional-basic/classes/ErrorCenter/ErrorCenter.ru.mdx +100 -69
  73. package/src/media/functional/functional-basic/classes/ErrorCenter/ErrorCenter.vi.mdx +101 -70
  74. package/src/media/functional/functional-basic/classes/ErrorCenterHandler/ErrorCenterHandler.en.mdx +46 -42
  75. package/src/media/functional/functional-basic/classes/ErrorCenterHandler/ErrorCenterHandler.ru.mdx +46 -42
  76. package/src/media/functional/functional-basic/classes/ErrorCenterHandler/ErrorCenterHandler.vi.mdx +46 -42
  77. package/src/media/functional/functional-basic/classes/ErrorCenterInstance/ErrorCenterInstance.en.mdx +44 -96
  78. package/src/media/functional/functional-basic/classes/ErrorCenterInstance/ErrorCenterInstance.ru.mdx +44 -96
  79. package/src/media/functional/functional-basic/classes/ErrorCenterInstance/ErrorCenterInstance.vi.mdx +44 -96
  80. package/src/media/functional/functional-basic/classes/EventItem/EventItem.en.mdx +49 -28
  81. package/src/media/functional/functional-basic/classes/EventItem/EventItem.ru.mdx +21 -0
  82. package/src/media/functional/functional-basic/classes/EventItem/EventItem.vi.mdx +63 -42
  83. package/src/media/functional/functional-basic/classes/Formatters/Formatters.en.mdx +97 -109
  84. package/src/media/functional/functional-basic/classes/Formatters/Formatters.ru.mdx +86 -98
  85. package/src/media/functional/functional-basic/classes/Formatters/Formatters.vi.mdx +99 -111
  86. package/src/media/functional/functional-basic/classes/Geo/Geo.en.mdx +3 -3
  87. package/src/media/functional/functional-basic/classes/Geo/Geo.ru.mdx +5 -5
  88. package/src/media/functional/functional-basic/classes/Geo/Geo.vi.mdx +5 -5
  89. package/src/media/functional/functional-basic/classes/GeoFlag/GeoFlag.en.mdx +83 -40
  90. package/src/media/functional/functional-basic/classes/GeoFlag/GeoFlag.ru.mdx +83 -40
  91. package/src/media/functional/functional-basic/classes/GeoFlag/GeoFlag.vi.mdx +87 -44
  92. package/src/media/functional/functional-basic/classes/GeoInstance/GeoInstance.en.mdx +81 -0
  93. package/src/media/functional/functional-basic/classes/GeoInstance/GeoInstance.ru.mdx +81 -0
  94. package/src/media/functional/functional-basic/classes/GeoInstance/GeoInstance.vi.mdx +81 -0
  95. package/src/media/functional/functional-basic/classes/GeoPhone/GeoPhone.en.mdx +56 -105
  96. package/src/media/functional/functional-basic/classes/GeoPhone/GeoPhone.ru.mdx +53 -102
  97. package/src/media/functional/functional-basic/classes/GeoPhone/GeoPhone.vi.mdx +55 -105
  98. package/src/media/functional/functional-basic/classes/Hash/Hash.en.mdx +18 -7
  99. package/src/media/functional/functional-basic/classes/Hash/Hash.ru.mdx +18 -7
  100. package/src/media/functional/functional-basic/classes/Hash/Hash.vi.mdx +18 -7
  101. package/src/media/functional/functional-basic/classes/HashInstance/HashInstance.en.mdx +54 -0
  102. package/src/media/functional/functional-basic/classes/HashInstance/HashInstance.ru.mdx +54 -0
  103. package/src/media/functional/functional-basic/classes/HashInstance/HashInstance.vi.mdx +54 -0
  104. package/src/media/functional/functional-basic/classes/MetaStatic/MetaStatic.en.mdx +78 -0
  105. package/src/media/functional/functional-basic/classes/MetaStatic/MetaStatic.ru.mdx +78 -0
  106. package/src/media/functional/functional-basic/classes/MetaStatic/MetaStatic.vi.mdx +78 -0
  107. package/src/media/functional/functional-basic/classes/ResumableTimer/ResumableTimer.en.mdx +50 -0
  108. package/src/media/functional/functional-basic/classes/ResumableTimer/ResumableTimer.ru.mdx +50 -0
  109. package/src/media/functional/functional-basic/classes/ResumableTimer/ResumableTimer.vi.mdx +50 -0
  110. package/src/media/functional/functional-basic/classes/ServerStorage/ServerStorage.en.mdx +131 -0
  111. package/src/media/functional/functional-basic/classes/ServerStorage/ServerStorage.ru.mdx +131 -0
  112. package/src/media/functional/functional-basic/classes/ServerStorage/ServerStorage.vi.mdx +131 -0
  113. package/src/media/functional/functional-basic/classes/StorageCallback/StorageCallback.en.mdx +97 -0
  114. package/src/media/functional/functional-basic/classes/StorageCallback/StorageCallback.ru.mdx +97 -0
  115. package/src/media/functional/functional-basic/classes/StorageCallback/StorageCallback.vi.mdx +97 -0
  116. package/src/media/functional/functional-basic/functions/addTagHighlightMatch/addTagHighlightMatch.en.mdx +13 -5
  117. package/src/media/functional/functional-basic/functions/addTagHighlightMatch/addTagHighlightMatch.ru.mdx +13 -5
  118. package/src/media/functional/functional-basic/functions/addTagHighlightMatch/addTagHighlightMatch.vi.mdx +13 -5
  119. package/src/media/functional/functional-basic/functions/anyToString/anyToString.en.mdx +37 -19
  120. package/src/media/functional/functional-basic/functions/anyToString/anyToString.ru.mdx +37 -19
  121. package/src/media/functional/functional-basic/functions/anyToString/anyToString.vi.mdx +35 -17
  122. package/src/media/functional/functional-basic/functions/applyTemplate/applyTemplate.en.mdx +31 -19
  123. package/src/media/functional/functional-basic/functions/applyTemplate/applyTemplate.ru.mdx +31 -19
  124. package/src/media/functional/functional-basic/functions/applyTemplate/applyTemplate.vi.mdx +32 -20
  125. package/src/media/functional/functional-basic/functions/blobToBase64/blobToBase64.en.mdx +29 -15
  126. package/src/media/functional/functional-basic/functions/blobToBase64/blobToBase64.ru.mdx +28 -14
  127. package/src/media/functional/functional-basic/functions/blobToBase64/blobToBase64.vi.mdx +28 -14
  128. package/src/media/functional/functional-basic/functions/capitalize/capitalize.en.mdx +7 -3
  129. package/src/media/functional/functional-basic/functions/capitalize/capitalize.ru.mdx +7 -3
  130. package/src/media/functional/functional-basic/functions/capitalize/capitalize.vi.mdx +7 -3
  131. package/src/media/functional/functional-basic/functions/copyObject/copyObject.en.mdx +17 -13
  132. package/src/media/functional/functional-basic/functions/copyObject/copyObject.ru.mdx +17 -13
  133. package/src/media/functional/functional-basic/functions/copyObject/copyObject.vi.mdx +17 -13
  134. package/src/media/functional/functional-basic/functions/createElement/createElement.en.mdx +2 -0
  135. package/src/media/functional/functional-basic/functions/createElement/createElement.ru.mdx +2 -0
  136. package/src/media/functional/functional-basic/functions/createElement/createElement.vi.mdx +2 -0
  137. package/src/media/functional/functional-basic/functions/encodeAttribute/encodeAttribute.en.mdx +1 -3
  138. package/src/media/functional/functional-basic/functions/encodeAttribute/encodeAttribute.ru.mdx +1 -3
  139. package/src/media/functional/functional-basic/functions/encodeAttribute/encodeAttribute.vi.mdx +1 -3
  140. package/src/media/functional/functional-basic/functions/executeFunction/executeFunction.en.mdx +13 -10
  141. package/src/media/functional/functional-basic/functions/executeFunction/executeFunction.ru.mdx +14 -11
  142. package/src/media/functional/functional-basic/functions/executeFunction/executeFunction.vi.mdx +12 -9
  143. package/src/media/functional/functional-basic/functions/executePromise/executePromise.en.mdx +14 -13
  144. package/src/media/functional/functional-basic/functions/executePromise/executePromise.ru.mdx +15 -14
  145. package/src/media/functional/functional-basic/functions/executePromise/executePromise.vi.mdx +14 -13
  146. package/src/media/functional/functional-basic/functions/forEach/forEach.en.mdx +1 -1
  147. package/src/media/functional/functional-basic/functions/forEach/forEach.ru.mdx +1 -1
  148. package/src/media/functional/functional-basic/functions/forEach/forEach.vi.mdx +1 -1
  149. package/src/media/functional/functional-basic/functions/frame/frame.en.mdx +7 -4
  150. package/src/media/functional/functional-basic/functions/frame/frame.ru.mdx +6 -3
  151. package/src/media/functional/functional-basic/functions/frame/frame.vi.mdx +7 -4
  152. package/src/media/functional/functional-basic/functions/getArrayHighlightMatch/getArrayHighlightMatch.en.mdx +34 -0
  153. package/src/media/functional/functional-basic/functions/getArrayHighlightMatch/getArrayHighlightMatch.ru.mdx +34 -0
  154. package/src/media/functional/functional-basic/functions/getArrayHighlightMatch/getArrayHighlightMatch.vi.mdx +35 -0
  155. package/src/media/functional/functional-basic/functions/getCurrentDate/getCurrentDate.en.mdx +2 -0
  156. package/src/media/functional/functional-basic/functions/getCurrentDate/getCurrentDate.ru.mdx +2 -0
  157. package/src/media/functional/functional-basic/functions/getCurrentDate/getCurrentDate.vi.mdx +2 -0
  158. package/src/media/functional/functional-basic/functions/getCurrentTime/getCurrentTime.en.mdx +21 -0
  159. package/src/media/functional/functional-basic/functions/getCurrentTime/getCurrentTime.ru.mdx +21 -0
  160. package/src/media/functional/functional-basic/functions/getCurrentTime/getCurrentTime.vi.mdx +21 -0
  161. package/src/media/functional/functional-basic/functions/getElementId/getElementId.en.mdx +17 -3
  162. package/src/media/functional/functional-basic/functions/getElementId/getElementId.ru.mdx +17 -3
  163. package/src/media/functional/functional-basic/functions/getElementId/getElementId.vi.mdx +18 -4
  164. package/src/media/functional/functional-basic/functions/getElementSafeScript/getElementSafeScript.en.mdx +31 -0
  165. package/src/media/functional/functional-basic/functions/getElementSafeScript/getElementSafeScript.ru.mdx +31 -0
  166. package/src/media/functional/functional-basic/functions/getElementSafeScript/getElementSafeScript.vi.mdx +31 -0
  167. package/src/media/functional/functional-basic/functions/getOnlyText/getOnlyText.en.mdx +25 -0
  168. package/src/media/functional/functional-basic/functions/getOnlyText/getOnlyText.ru.mdx +25 -0
  169. package/src/media/functional/functional-basic/functions/getOnlyText/getOnlyText.vi.mdx +25 -0
  170. package/src/media/functional/functional-basic/functions/getSearchExp/getSearchExp.en.mdx +11 -4
  171. package/src/media/functional/functional-basic/functions/getSearchExp/getSearchExp.ru.mdx +14 -7
  172. package/src/media/functional/functional-basic/functions/getSearchExp/getSearchExp.vi.mdx +13 -6
  173. package/src/media/functional/functional-basic/functions/getSeparatingSearchExp/getSeparatingSearchExp.en.mdx +3 -2
  174. package/src/media/functional/functional-basic/functions/getSeparatingSearchExp/getSeparatingSearchExp.ru.mdx +3 -2
  175. package/src/media/functional/functional-basic/functions/getSeparatingSearchExp/getSeparatingSearchExp.vi.mdx +3 -2
  176. package/src/media/functional/functional-basic/functions/toNumber/toNumber.en.mdx +25 -9
  177. package/src/media/functional/functional-basic/functions/toNumber/toNumber.ru.mdx +25 -9
  178. package/src/media/functional/functional-basic/functions/toNumber/toNumber.vi.mdx +25 -9
  179. package/src/media/functional/functional-basic/functions/toString/toString.en.mdx +28 -0
  180. package/src/media/functional/functional-basic/functions/toString/toString.ru.mdx +28 -0
  181. package/src/media/functional/functional-basic/functions/toString/toString.vi.mdx +28 -0
  182. package/src/media/functional/ui/about/about.en.mdx +45 -0
  183. package/src/media/functional/ui/about/about.ru.mdx +45 -0
  184. package/src/media/functional/ui/about/about.vi.mdx +45 -0
  185. package/src/media/functional/ui/component/component.en.mdx +104 -0
  186. package/src/media/functional/ui/component/component.ru.mdx +106 -0
  187. package/src/media/functional/ui/component/component.vi.mdx +104 -0
  188. package/src/media/functional/ui/setup/setup.en.mdx +72 -0
  189. package/src/media/functional/ui/setup/setup.ru.mdx +72 -0
  190. package/src/media/functional/ui/setup/setup.vi.mdx +72 -0
  191. package/src/media/functional/ui/wiki-data.en.mdx +114 -0
  192. package/src/media/functional/ui/wiki-data.ru.mdx +114 -0
  193. package/src/media/functional/ui/wiki-data.vi.mdx +114 -0
  194. package/dist/WikiStorybookDescriptions-IKMchHA-.js +0 -26959
@@ -2,122 +2,70 @@ import {Meta} from '@storybook/addon-docs/blocks'
2
2
 
3
3
  <Meta title='@dxtmisha/en/functional-basic/Classes/ErrorCenterInstance - Error Instance'/>
4
4
 
5
- # ErrorCenterInstance
5
+ # ErrorCenterInstance Class
6
6
 
7
- A class for managing error storage and handling within a specific instance. It provides the core logic for maintaining a registry of error causes and orchestrating their notification through a handler manager.
8
-
9
- While `ErrorCenter` provides a global static bridge, `ErrorCenterInstance` can be used directly for isolated error tracking or custom error management systems.
7
+ `ErrorCenterInstance` is the main engine of the error system. It combines an error registry and a handler manager. You can create independent instances of this class for different parts of the application to isolate their error processing logic.
10
8
 
11
9
  ## Key Features
12
10
 
13
- - **Isolated Storage** — Maintain a local list of error causes separate from the global state.
14
- - **Data Merging** — Automatically supplements triggered errors with pre-registered label and message data.
15
- - **Handler Delegation** — Uses a dedicated `ErrorCenterHandler` to manage and execute callbacks.
16
- - **Predefined Causes** — Can be initialized with a list of default error causes.
17
- - **Chainable Methods** — Supports fluent configuration for adding causes and handlers.
18
-
19
- ## Check Methods
20
-
21
- - `has(code: string, group?: string): boolean` — Checks if a cause exists in the instance's registry.
22
- - `get(code: string, group?: string): ErrorCenterCauseItem | undefined` — Retrieves the stored error cause object.
23
-
24
- ## Configuration
25
-
26
- - `add(cause: ErrorCenterCauseItem): this` — Adds a single error cause to the storage.
27
- - `addList(causes: ErrorCenterCauseList): this` — Adds multiple error causes.
28
- - `addHandler(group: ErrorCenterGroup, handler: ErrorCenterHandlerCallback): this` — Registers a callback for a specific error group.
29
- - `addHandlerList(handlers: ErrorCenterHandlerList): this` — Registers a collection of handlers.
30
-
31
- ## Action Methods
11
+ - **Isolated Storage** — maintaining a local list of error causes.
12
+ - **Intelligent Merging** — automatic supplementation of error data based on a priority system.
13
+ - **Handling Delegation** — using `ErrorCenterHandler` to trigger callback functions.
14
+ - **Chainable API** — support for call chaining for configuration.
32
15
 
33
- ### `on`
16
+ ## Initialization
34
17
 
35
- Triggers error handling. It looks up the pre-registered data for the provided error code, merges it with the input `cause`, and passes it to the internal handler.
18
+ To create an instance, use the constructor `ErrorCenterInstance(causes, handler)`.
36
19
 
37
20
  **Parameters:**
38
- - `cause: ErrorCenterCauseItem` — The error information to trigger.
39
-
40
- **Returns:** `this`
41
-
42
- ## Types
43
-
44
- ### `ErrorCenterCauseItem`
45
-
46
- The main object used to define an error cause in this instance.
21
+ - `causes?: ErrorCenterCauseList` — initial list of error causes.
22
+ - `handler?: ErrorCenterHandler` — handler instance (if not specified, a new one is created).
47
23
 
48
- - `group?: ErrorCenterGroup` — The category/group the error belongs to.
49
- - `code: string` — Unique identifier for the error.
50
- - `label?: string` — Human-readable name of the error.
51
- - `message?: string` — Detailed description of the error.
52
- - `details?: any` — Optional object for additional context or technical data.
53
-
54
- ## Guide: Managing Errors and Listeners
55
-
56
- Using the `ErrorCenterInstance` involves three main steps: defining error causes, setting up listeners (handlers), and triggering the errors.
57
-
58
- ### 1. Adding Error Causes
59
-
60
- Error causes act as a dictionary for your application. By pre-registering them, you ensure that consistent labels and messages are used throughout your platform.
61
-
62
- ```javascript
24
+ ```typescript
63
25
  import { ErrorCenterInstance } from '@dxtmisha/functional-basic'
64
26
 
65
- const myErrorCenter = new ErrorCenterInstance()
66
-
67
- // Register a single error cause
68
- myErrorCenter.add({
69
- group: 'auth',
70
- code: 'token_expired',
71
- label: 'Session Expired',
72
- message: 'Your login session has expired. Please log in again.'
73
- })
74
-
75
- // Register multiple causes at once
76
- myErrorCenter.addList([
77
- { group: 'api', code: '404', label: 'Not Found', message: 'The requested data does not exist.' },
78
- { group: 'api', code: '500', label: 'Server Error', message: 'Something went wrong on the server.' }
27
+ const myErrorCenter = new ErrorCenterInstance([
28
+ { group: 'api', code: '404', label: 'Not Found' }
79
29
  ])
80
30
  ```
81
31
 
82
- ### 2. Adding Listeners
32
+ ## Methods
83
33
 
84
- Listeners (handlers) are callback functions that execute when a specific error occurs. You assign listeners to a specific `group` so they only react to relevant errors.
34
+ ### Action
35
+ - `on(cause: ErrorCenterCauseItem): this` — Starts the processing. Merges data from the registry with input data and passes it to the handler.
85
36
 
86
- ```javascript
87
- // Add a listener specifically for the "auth" group
88
- myErrorCenter.addHandler('auth', (cause) => {
89
- // E.g., redirect to login or show an alert
90
- console.log(`[AUTH ERROR] ${cause.label}: ${cause.message}`)
91
- })
37
+ ### Verification
38
+ - `has(code: string, group?: string): boolean` — Search in the local registry.
39
+ - `get(code: string, group?: string): ErrorCenterCauseItem | undefined` — Retrieve data from the registry.
92
40
 
93
- // Add a listener for the "api" group
94
- myErrorCenter.addHandler('api', (cause) => {
95
- // E.g., show a toast notification
96
- console.error(`[API ERROR ${cause.code}] ${cause.message}`)
97
- })
41
+ ### Configuration
42
+ - `add(cause: ErrorCenterCauseItem): this` — Add an error to the local registry.
43
+ - `addList(causes: ErrorCenterCauseList): this` Batch addition of errors.
44
+ - `addHandler(group: ErrorCenterGroup, handler: ErrorCenterHandlerCallback): this` Register a reaction to a group.
45
+ - `addHandlerList(handlers: ErrorCenterHandlerList): this` — Batch registration of reactions.
98
46
 
99
- // Add a global fallback listener (catches errors without a specific group handler)
100
- myErrorCenter.addHandler(undefined, (cause) => {
101
- console.warn(`[UNKNOWN ERROR]`, cause)
102
- })
103
- ```
47
+ ## Types
48
+
49
+ #### `ErrorCenterCauseItem`
50
+ Object describing a specific error.
51
+ - `group?: ErrorCenterGroup` — error group (e.g., 'api').
52
+ - `code: string` — unique error code.
53
+ - `priority?: number` — priority level (default `500`). Used during data merging.
54
+ - `label?: string` — error title.
55
+ - `message?: string` — error description.
56
+ - `details?: any` — additional data.
104
57
 
105
- ### 3. Triggering Errors
58
+ #### `ErrorCenterHandlerCallback`
59
+ - `(cause: ErrorCenterCauseItem) => void` — processing function.
106
60
 
107
- When an error occurs in your application, you trigger the handling process using the `on` method. You only need to provide the `code` and the `group`. The `ErrorCenterInstance` will automatically merge this with the pre-registered `label` and `message` before passing it to the listeners.
61
+ ## Examples
108
62
 
109
- ```javascript
110
- // Trigger an authentication error
111
- // The listeners for "auth" will receive the full ErrorCenterCauseItem
112
- myErrorCenter.on({
113
- group: 'auth',
114
- code: 'token_expired'
115
- })
63
+ ### Initialization with a Dictionary
64
+ ```typescript
65
+ const myEC = new ErrorCenterInstance([
66
+ { group: 'db', code: 'connection_lost', label: 'DB Unavailable' }
67
+ ]);
116
68
 
117
- // Trigger an unregistered error (will fallback to the undefined group listener)
118
- myErrorCenter.on({
119
- group: 'database',
120
- code: 'connection_lost',
121
- message: 'Lost connection to DB.' // You can pass inline data as well
122
- })
69
+ myEC.addHandler('db', (cause) => alert(cause.label));
70
+ myEC.on({ group: 'db', code: 'connection_lost' });
123
71
  ```
@@ -2,122 +2,70 @@ import {Meta} from '@storybook/addon-docs/blocks'
2
2
 
3
3
  <Meta title='@dxtmisha/ru/functional-basic/Classes/ErrorCenterInstance - Экземпляр ошибок'/>
4
4
 
5
- # ErrorCenterInstance
5
+ # Класс ErrorCenterInstance
6
6
 
7
- Класс для управления хранилищем ошибок и их обработкой внутри конкретного экземпляра. Он обеспечивает основную логику для ведения реестра причин ошибок и организации уведомлений о них через менеджер обработчиков.
8
-
9
- Хотя `ErrorCenter` предоставляет глобальный статический мост, `ErrorCenterInstance` можно использовать напрямую для изолированного отслеживания ошибок или создания пользовательских систем управления.
7
+ `ErrorCenterInstance` это основной движок системы ошибок. Он объединяет в себе реестр причин и менеджер обработчиков. Вы можете создавать независимые экземпляры этого класса для разных частей приложения, чтобы изолировать их логику обработки ошибок.
10
8
 
11
9
  ## Ключевые особенности
12
10
 
13
- - **Изолированное хранилище** — Ведение локального списка причин ошибок отдельно от глобального состояния.
14
- - **Объединение данных**Автоматически дополняет возникающие ошибки данными о заголовках и сообщениях из реестра.
15
- - **Делегирование обработки** — Использует выделенный `ErrorCenterHandler` для выполнения функций обратного вызова.
16
- - **Предопределенные причины**Может быть инициализирован со списком причин ошибок по умолчанию.
17
- - **Chainable API** — Поддерживает удобную конфигурацию для добавления причин и обработчиков.
18
-
19
- ## Методы проверки
20
-
21
- - `has(code: string, group?: string): boolean` — Проверяет, существует ли причина с конкретным кодом в реестре.
22
- - `get(code: string, group?: string): ErrorCenterCauseItem | undefined` — Извлекает сохраненный объект причины ошибки.
23
-
24
- ## Конфигурация
25
-
26
- - `add(cause: ErrorCenterCauseItem): this` — Добавляет одну причину ошибки в хранилище экземпляра.
27
- - `addList(causes: ErrorCenterCauseList): this` — Добавляет список причин ошибок.
28
- - `addHandler(group: ErrorCenterGroup, handler: ErrorCenterHandlerCallback): this` — Регистрирует обработчик для конкретной группы.
29
- - `addHandlerList(handlers: ErrorCenterHandlerList): this` — Регистрирует список обработчиков.
30
-
31
- ## Методы действий
11
+ - **Изолированное хранилище** — ведение локального списка причин ошибок.
12
+ - **Интеллектуальное слияние**автоматическое дополнение данных ошибки на основе системы приоритетов.
13
+ - **Делегирование обработки** — использование `ErrorCenterHandler` для вызова функций обратного вызова.
14
+ - **Chainable API**поддержка цепочки вызовов для конфигурации.
32
15
 
33
- ### `on`
16
+ ## Инициализация
34
17
 
35
- Запускает обработку ошибки. Метод ищет предварительно зарегистрированные данные для указанного кода ошибки, объединяет их с входной причиной (`cause`) и передает внутреннему обработчику.
18
+ Для создания экземпляра используйте конструктор `ErrorCenterInstance(causes, handler)`.
36
19
 
37
20
  **Параметры:**
38
- - `cause: ErrorCenterCauseItem` — Информация об ошибке для запуска.
39
-
40
- **Возвращает:** `this`
41
-
42
- ## Типы
43
-
44
- ### `ErrorCenterCauseItem`
45
-
46
- Основной объект, используемый для определения причины ошибки в этом экземпляре.
21
+ - `causes?: ErrorCenterCauseList` — начальный список причин ошибок.
22
+ - `handler?: ErrorCenterHandler` — экземпляр обработчика (если не указан, создается новый).
47
23
 
48
- - `group?: ErrorCenterGroup` — категория/группа, к которой относится ошибка.
49
- - `code: string` — уникальный идентификатор ошибки.
50
- - `label?: string` — понятное человеку название ошибки.
51
- - `message?: string` — подробное описание ошибки.
52
- - `details?: any` — необязательный объект для дополнительных данных.
53
-
54
- ## Руководство: Управление причинами ошибок и обработчиками
55
-
56
- Использование `ErrorCenterInstance` включает три основных шага: определение причин ошибок, настройка слушателей (обработчиков) и вызов ошибок.
57
-
58
- ### 1. Добавление причин ошибок
59
-
60
- Причины ошибок действуют как словарь для вашего приложения. Предварительно регистрируя их, вы обеспечиваете единообразие заголовков и сообщений по всей платформе.
61
-
62
- ```javascript
24
+ ```typescript
63
25
  import { ErrorCenterInstance } from '@dxtmisha/functional-basic'
64
26
 
65
- const myErrorCenter = new ErrorCenterInstance()
66
-
67
- // Регистрация одной причины ошибки
68
- myErrorCenter.add({
69
- group: 'auth',
70
- code: 'token_expired',
71
- label: 'Сессия истекла',
72
- message: 'Срок действия вашей сессии истек. Пожалуйста, войдите снова.'
73
- })
74
-
75
- // Регистрация нескольких причин сразу
76
- myErrorCenter.addList([
77
- { group: 'api', code: '404', label: 'Не найдено', message: 'Запрошенные данные не существуют.' },
78
- { group: 'api', code: '500', label: 'Ошибка сервера', message: 'На сервере что-то пошло не так.' }
27
+ const myErrorCenter = new ErrorCenterInstance([
28
+ { group: 'api', code: '404', label: 'Не найдено' }
79
29
  ])
80
30
  ```
81
31
 
82
- ### 2. Добавление слушателей
32
+ ## Методы
83
33
 
84
- Слушатели (обработчики) — это функции обратного вызова, которые выполняются при возникновении определенной ошибки. Вы назначаете слушателей для конкретной группы (`group`), чтобы они реагировали только на соответствующие ошибки.
34
+ ### Действие
35
+ - `on(cause: ErrorCenterCauseItem): this` — Запускает процесс обработки. Склеивает данные из реестра с входными данными и передает их обработчику.
85
36
 
86
- ```javascript
87
- // Добавление слушателя специально для группы "auth"
88
- myErrorCenter.addHandler('auth', (cause) => {
89
- // Например, перенаправление на страницу входа или показ уведомления
90
- console.log(`[ОШИБКА АВТОРИЗАЦИИ] ${cause.label}: ${cause.message}`)
91
- })
37
+ ### Проверка
38
+ - `has(code: string, group?: string): boolean` — Поиск в локальном реестре.
39
+ - `get(code: string, group?: string): ErrorCenterCauseItem | undefined` — Получение данных из реестра.
92
40
 
93
- // Добавление слушателя для группы "api"
94
- myErrorCenter.addHandler('api', (cause) => {
95
- // Например, показ всплывающего уведомления
96
- console.error(`[ОШИБКА API ${cause.code}] ${cause.message}`)
97
- })
41
+ ### Конфигурация
42
+ - `add(cause: ErrorCenterCauseItem): this` — Добавление ошибки в локальный реестр.
43
+ - `addList(causes: ErrorCenterCauseList): this` — Пакетное добавление ошибок.
44
+ - `addHandler(group: ErrorCenterGroup, handler: ErrorCenterHandlerCallback): this` Регистрация реакции на группу.
45
+ - `addHandlerList(handlers: ErrorCenterHandlerList): this` — Пакетная регистрация реакций.
98
46
 
99
- // Добавление глобального запасного слушателя (перехватывает ошибки без специфического обработчика)
100
- myErrorCenter.addHandler(undefined, (cause) => {
101
- console.warn(`[НЕИЗВЕСТНАЯ ОШИБКА]`, cause)
102
- })
103
- ```
47
+ ## Типы
48
+
49
+ #### `ErrorCenterCauseItem`
50
+ Объект, описывающий конкретную ошибку.
51
+ - `group?: ErrorCenterGroup` — группа ошибки (например, 'api').
52
+ - `code: string` — уникальный код ошибки.
53
+ - `priority?: number` — уровень приоритета (по умолчанию `500`). Используется при слиянии данных.
54
+ - `label?: string` — заголовок ошибки.
55
+ - `message?: string` — описание ошибки.
56
+ - `details?: any` — дополнительные данные.
104
57
 
105
- ### 3. Вызов ошибок
58
+ #### `ErrorCenterHandlerCallback`
59
+ - `(cause: ErrorCenterCauseItem) => void` — функция обработки.
106
60
 
107
- Когда в вашем приложении происходит ошибка, вы запускаете процесс обработки с помощью метода `on`. Вам нужно указать только код (`code`) и группу (`group`). `ErrorCenterInstance` автоматически объединит это с предварительно зарегистрированными данными (`label` и `message`) перед передачей слушателям.
61
+ ## Примеры
108
62
 
109
- ```javascript
110
- // Запуск ошибки авторизации
111
- // Слушатели для "auth" получат полный объект ErrorCenterCauseItem
112
- myErrorCenter.on({
113
- group: 'auth',
114
- code: 'token_expired'
115
- })
63
+ ### Инициализация со словарем
64
+ ```typescript
65
+ const myEC = new ErrorCenterInstance([
66
+ { group: 'db', code: 'connection_lost', label: 'БД недоступна' }
67
+ ]);
116
68
 
117
- // Запуск незарегистрированной ошибки (сработает обработчик группы undefined)
118
- myErrorCenter.on({
119
- group: 'database',
120
- code: 'connection_lost',
121
- message: 'Потеряно соединение с БД.' // Данные можно передавать "на лету"
122
- })
69
+ myEC.addHandler('db', (cause) => alert(cause.label));
70
+ myEC.on({ group: 'db', code: 'connection_lost' });
123
71
  ```
@@ -2,122 +2,70 @@ import {Meta} from '@storybook/addon-docs/blocks'
2
2
 
3
3
  <Meta title='@dxtmisha/vi/functional-basic/Classes/ErrorCenterInstance - Thực thể lỗi'/>
4
4
 
5
- # ErrorCenterInstance
5
+ # Lớp ErrorCenterInstance
6
6
 
7
- Một lớp để quản việc lưu trữ xử lỗi trong một thực thể (instance) cụ thể. cung cấp logic cốt lõi để duy trì một danh mục các nguyên nhân gây lỗi điều phối các thông báo thông qua một trình quản xử lý.
8
-
9
- Trong khi `ErrorCenter` cung cấp một lớp tĩnh toàn cục, `ErrorCenterInstance` có thể được sử dụng trực tiếp để theo dõi lỗi tách biệt hoặc các hệ thống quản lý lỗi tùy chỉnh.
7
+ `ErrorCenterInstance` động chính của hệ thống lỗi. kết hợp một sổ đăng nguyên nhân một trình quản xử lý. Bạn thể tạo các thực thể độc lập của lớp này cho các phần khác nhau của ứng dụng để lập logic xử lý lỗi của chúng.
10
8
 
11
9
  ## Các tính năng chính
12
10
 
13
- - **Lưu trữ tách biệt** — Duy trì danh sách các nguyên nhân lỗi cục bộ riêng biệt với trạng thái toàn cầu.
14
- - **Hợp nhất dữ liệu** — Tự động bổ sung thông tin nhãn thông báo đã đăng ký cho các lỗi được kích hoạt.
15
- - **Ủy quyền xử lý** — Sử dụng một `ErrorCenterHandler` riêng để thực thi các hàm gọi lại.
16
- - **Nguyên nhân định nghĩa trước** — thể được khởi tạo với một danh sách các nguyên nhân lỗi mặc định.
17
- - **Chainable API** — Hỗ trợ cấu hình linh hoạt để thêm nguyên nhân và trình xử lý.
18
-
19
- ## Các phương thức kiểm tra
20
-
21
- - `has(code: string, group?: string): boolean` — Kiểm tra xem một nguyên nhân lỗi có tồn tại trong bộ lưu trữ không.
22
- - `get(code: string, group?: string): ErrorCenterCauseItem | undefined` — Truy xuất đối tượng nguyên nhân lỗi đã lưu trữ.
23
-
24
- ## Cấu hình
25
-
26
- - `add(cause: ErrorCenterCauseItem): this` — Thêm một nguyên nhân lỗi duy nhất vào bộ lưu trữ.
27
- - `addList(causes: ErrorCenterCauseList): this` — Thêm một danh sách các nguyên nhân lỗi.
28
- - `addHandler(group: ErrorCenterGroup, handler: ErrorCenterHandlerCallback): this` — Đăng ký một trình xử lý cho nhóm cụ thể.
29
- - `addHandlerList(handlers: ErrorCenterHandlerList): this` — Đăng ký một loạt các trình xử lý.
30
-
31
- ## Các phương thức hành động
11
+ - **Kho lưu trữ lập** — duy trì một danh sách cục bộ các nguyên nhân lỗi.
12
+ - **Hợp nhất thông minh** — tự động bổ sung dữ liệu lỗi dựa trên hệ thống ưu tiên.
13
+ - **Ủy quyền xử lý** — sử dụng `ErrorCenterHandler` để kích hoạt các hàm callback.
14
+ - **API nối chuỗi** — hỗ trợ nối chuỗi cuộc gọi để cấu hình.
32
15
 
33
- ### `on`
16
+ ## Khởi tạo
34
17
 
35
- Kích hoạt xử lỗi. tìm kiếm dữ liệu đã đăng ký cho mã lỗi đầu vào, hợp nhất dữ liệu đó với nguyên nhân `cause`, và chuyển nó cho trình xử lý nội bộ.
18
+ Để tạo một thực thể, sử dụng constructor `ErrorCenterInstance(causes, handler)`.
36
19
 
37
20
  **Tham số:**
38
- - `cause: ErrorCenterCauseItem` — Thông tin lỗi cần kích hoạt.
39
-
40
- **Trả về:** `this`
41
-
42
- ## Các kiểu dữ liệu
43
-
44
- ### `ErrorCenterCauseItem`
45
-
46
- Đối tượng chính được sử dụng để xác định nguyên nhân gây lỗi trong thực thể này.
21
+ - `causes?: ErrorCenterCauseList` — danh sách nguyên nhân lỗi ban đầu.
22
+ - `handler?: ErrorCenterHandler` — thực thể trình xử lý (nếu không được chỉ định, một thực thể mới sẽ được tạo).
47
23
 
48
- - `group?: ErrorCenterGroup` — danh mục/nhóm mà lỗi thuộc về.
49
- - `code: string` — mã định danh duy nhất cho lỗi.
50
- - `label?: string` — tên lỗi dễ đọc cho người dùng.
51
- - `message?: string` — mô tả chi tiết về lỗi.
52
- - `details?: any` — đối tượng tùy chọn cho các dữ liệu bổ sung.
53
-
54
- ## Hướng dẫn: Quản lý nguyên nhân lỗi và bộ lắng nghe
55
-
56
- Sử dụng `ErrorCenterInstance` bao gồm ba bước chính: định nghĩa các nguyên nhân gây lỗi, thiết lập bộ lắng nghe (trình xử lý), và kích hoạt lỗi.
57
-
58
- ### 1. Thêm nguyên nhân lỗi
59
-
60
- Các nguyên nhân gây lỗi hoạt động như một từ điển cho ứng dụng của bạn. Bằng cách đăng ký trước chúng, bạn đảm bảo rằng các nhãn và thông báo nhất quán được sử dụng trên toàn bộ nền tảng.
61
-
62
- ```javascript
24
+ ```typescript
63
25
  import { ErrorCenterInstance } from '@dxtmisha/functional-basic'
64
26
 
65
- const myErrorCenter = new ErrorCenterInstance()
66
-
67
- // Đăng ký một nguyên nhân lỗi duy nhất
68
- myErrorCenter.add({
69
- group: 'auth',
70
- code: 'token_expired',
71
- label: 'Phiên hết hạn',
72
- message: 'Phiên đăng nhập của bạn đã hết hạn. Vui lòng đăng nhập lại.'
73
- })
74
-
75
- // Đăng ký nhiều nguyên nhân cùng lúc
76
- myErrorCenter.addList([
77
- { group: 'api', code: '404', label: 'Không tìm thấy', message: 'Dữ liệu được yêu cầu không tồn tại.' },
78
- { group: 'api', code: '500', label: 'Lỗi máy chủ', message: 'Đã có lỗi xảy ra trên máy chủ.' }
27
+ const myErrorCenter = new ErrorCenterInstance([
28
+ { group: 'api', code: '404', label: 'Không tìm thấy' }
79
29
  ])
80
30
  ```
81
31
 
82
- ### 2. Thêm bộ lắng nghe
32
+ ## Các phương thức
83
33
 
84
- Bộ lắng nghe (trình xử lý) là các hàm callback thực thi khi một lỗi cụ thể xảy ra. Bạn gán các bộ lắng nghe cho một nhóm (`group`) cụ thể để chúng chỉ phản ứng với các lỗi liên quan.
34
+ ### Hành động
35
+ - `on(cause: ErrorCenterCauseItem): this` — Bắt đầu quá trình xử lý. Hợp nhất dữ liệu từ sổ đăng ký với dữ liệu đầu vào và chuyển nó cho trình xử lý.
85
36
 
86
- ```javascript
87
- // Thêm bộ lắng nghe dành riêng cho nhóm "auth"
88
- myErrorCenter.addHandler('auth', (cause) => {
89
- // Ví dụ: chuyển hướng đến trang đăng nhập hoặc hiển thị thông báo cảnh báo
90
- console.log(`[LỖI XÁC THỰC] ${cause.label}: ${cause.message}`)
91
- })
37
+ ### Xác minh
38
+ - `has(code: string, group?: string): boolean` Tìm kiếm trong sổ đăng ký cục bộ.
39
+ - `get(code: string, group?: string): ErrorCenterCauseItem | undefined` — Truy xuất dữ liệu từ sổ đăng ký.
92
40
 
93
- // Thêm bộ lắng nghe cho nhóm "api"
94
- myErrorCenter.addHandler('api', (cause) => {
95
- // dụ: hiển thị thông báo dạng toast
96
- console.error(`[LỖI API ${cause.code}] ${cause.message}`)
97
- })
41
+ ### Cấu hình
42
+ - `add(cause: ErrorCenterCauseItem): this` — Thêm một lỗi vào sổ đăng ký cục bộ.
43
+ - `addList(causes: ErrorCenterCauseList): this` Thêm lỗi hàng loạt.
44
+ - `addHandler(group: ErrorCenterGroup, handler: ErrorCenterHandlerCallback): this` Đăng ký một phản ứng cho nhóm.
45
+ - `addHandlerList(handlers: ErrorCenterHandlerList): this` — Đăng ký hàng loạt các phản ứng.
98
46
 
99
- // Thêm bộ lắng nghe dự phòng toàn cục (bắt các lỗi không có trình xử lý cụ thể)
100
- myErrorCenter.addHandler(undefined, (cause) => {
101
- console.warn(`[LỖI KHÔNG XÁC ĐỊNH]`, cause)
102
- })
103
- ```
47
+ ## Các kiểu dữ liệu
48
+
49
+ #### `ErrorCenterCauseItem`
50
+ Đối tượng mô tả một lỗi cụ thể.
51
+ - `group?: ErrorCenterGroup` — nhóm lỗi (ví dụ: 'api').
52
+ - `code: string` — mã lỗi duy nhất.
53
+ - `priority?: number` — mức độ ưu tiên (mặc định `500`). Được sử dụng trong quá trình hợp nhất dữ liệu.
54
+ - `label?: string` — tiêu đề lỗi.
55
+ - `message?: string` — mô tả lỗi.
56
+ - `details?: any` — dữ liệu bổ sung.
104
57
 
105
- ### 3. Kích hoạt lỗi
58
+ #### `ErrorCenterHandlerCallback`
59
+ - `(cause: ErrorCenterCauseItem) => void` — hàm xử lý.
106
60
 
107
- Khi một lỗi xảy ra trong ứng dụng của bạn, bạn kích hoạt quá trình xử lý bằng cách sử dụng phương thức `on`. Bạn chỉ cần cung cấp mã (`code`) và nhóm (`group`). `ErrorCenterInstance` sẽ tự động hợp nhất yêu cầu này với nhãn (`label`) và thông báo (`message`) đã đăng ký trước đó rồi mới truyền đến các bộ lắng nghe.
61
+ ## dụ
108
62
 
109
- ```javascript
110
- // Kích hoạt lỗi xác thực
111
- // Các bộ lắng nghe cho "auth" sẽ nhận được toàn bộ đối tượng ErrorCenterCauseItem
112
- myErrorCenter.on({
113
- group: 'auth',
114
- code: 'token_expired'
115
- })
63
+ ### Khởi tạo với một từ điển
64
+ ```typescript
65
+ const myEC = new ErrorCenterInstance([
66
+ { group: 'db', code: 'connection_lost', label: 'DB không khả dụng' }
67
+ ]);
116
68
 
117
- // Kích hoạt một lỗi chưa đăng ký (sẽ rơi vào bộ lắng nghe của nhóm undefined)
118
- myErrorCenter.on({
119
- group: 'database',
120
- code: 'connection_lost',
121
- message: 'Mất kết nối với CSDL.' // Bạn cũng có thể truyền dữ liệu trực tiếp
122
- })
69
+ myEC.addHandler('db', (cause) => alert(cause.label));
70
+ myEC.on({ group: 'db', code: 'connection_lost' });
123
71
  ```