@infosel-sdk/markets 1.2.0

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 (348) hide show
  1. package/CHANGELOG.md +90 -0
  2. package/README.md +996 -0
  3. package/package.json +52 -0
  4. package/src/__tests__/__mocks__/apis/charts-api.mock.d.ts +106 -0
  5. package/src/__tests__/__mocks__/apis/charts-api.mock.js +110 -0
  6. package/src/__tests__/__mocks__/apis/charts-api.mock.js.map +1 -0
  7. package/src/__tests__/__mocks__/apis/markets-api.mock.d.ts +148 -0
  8. package/src/__tests__/__mocks__/apis/markets-api.mock.js +121 -0
  9. package/src/__tests__/__mocks__/apis/markets-api.mock.js.map +1 -0
  10. package/src/__tests__/__mocks__/core/auth-provider.mock.d.ts +35 -0
  11. package/src/__tests__/__mocks__/core/auth-provider.mock.js +28 -0
  12. package/src/__tests__/__mocks__/core/auth-provider.mock.js.map +1 -0
  13. package/src/__tests__/__mocks__/core/graphql-client.mock.d.ts +36 -0
  14. package/src/__tests__/__mocks__/core/graphql-client.mock.js +60 -0
  15. package/src/__tests__/__mocks__/core/graphql-client.mock.js.map +1 -0
  16. package/src/__tests__/__mocks__/core/http-client.mock.d.ts +43 -0
  17. package/src/__tests__/__mocks__/core/http-client.mock.js +40 -0
  18. package/src/__tests__/__mocks__/core/http-client.mock.js.map +1 -0
  19. package/src/__tests__/__mocks__/core/sdk-manager.mock.d.ts +64 -0
  20. package/src/__tests__/__mocks__/core/sdk-manager.mock.js +46 -0
  21. package/src/__tests__/__mocks__/core/sdk-manager.mock.js.map +1 -0
  22. package/src/__tests__/__mocks__/core/storage.mock.d.ts +32 -0
  23. package/src/__tests__/__mocks__/core/storage.mock.js +35 -0
  24. package/src/__tests__/__mocks__/core/storage.mock.js.map +1 -0
  25. package/src/__tests__/__mocks__/index.d.ts +9 -0
  26. package/src/__tests__/__mocks__/index.js +16 -0
  27. package/src/__tests__/__mocks__/index.js.map +1 -0
  28. package/src/__tests__/e2e/config/auth.config.d.ts +44 -0
  29. package/src/__tests__/e2e/config/auth.config.js +217 -0
  30. package/src/__tests__/e2e/config/auth.config.js.map +1 -0
  31. package/src/__tests__/e2e/config/environment.config.d.ts +29 -0
  32. package/src/__tests__/e2e/config/environment.config.js +74 -0
  33. package/src/__tests__/e2e/config/environment.config.js.map +1 -0
  34. package/src/__tests__/e2e/fixtures/test-scenarios.d.ts +176 -0
  35. package/src/__tests__/e2e/fixtures/test-scenarios.js +181 -0
  36. package/src/__tests__/e2e/fixtures/test-scenarios.js.map +1 -0
  37. package/src/__tests__/e2e/helpers/assertion.helper.d.ts +68 -0
  38. package/src/__tests__/e2e/helpers/assertion.helper.js +181 -0
  39. package/src/__tests__/e2e/helpers/assertion.helper.js.map +1 -0
  40. package/src/__tests__/e2e/helpers/auth.helper.d.ts +56 -0
  41. package/src/__tests__/e2e/helpers/auth.helper.js +188 -0
  42. package/src/__tests__/e2e/helpers/auth.helper.js.map +1 -0
  43. package/src/__tests__/e2e/helpers/performance.helper.d.ts +85 -0
  44. package/src/__tests__/e2e/helpers/performance.helper.js +203 -0
  45. package/src/__tests__/e2e/helpers/performance.helper.js.map +1 -0
  46. package/src/__tests__/e2e/setup/global-setup.e2e.d.ts +5 -0
  47. package/src/__tests__/e2e/setup/global-setup.e2e.js +80 -0
  48. package/src/__tests__/e2e/setup/global-setup.e2e.js.map +1 -0
  49. package/src/__tests__/e2e/setup/global-teardown.e2e.d.ts +5 -0
  50. package/src/__tests__/e2e/setup/global-teardown.e2e.js +61 -0
  51. package/src/__tests__/e2e/setup/global-teardown.e2e.js.map +1 -0
  52. package/src/__tests__/e2e/setup/jest.e2e.config.d.ts +7 -0
  53. package/src/__tests__/e2e/setup/jest.e2e.config.js +58 -0
  54. package/src/__tests__/e2e/setup/jest.e2e.config.js.map +1 -0
  55. package/src/__tests__/e2e/setup/setup.e2e.d.ts +8 -0
  56. package/src/__tests__/e2e/setup/setup.e2e.js +61 -0
  57. package/src/__tests__/e2e/setup/setup.e2e.js.map +1 -0
  58. package/src/__tests__/setup.d.ts +16 -0
  59. package/src/__tests__/setup.js +34 -0
  60. package/src/__tests__/setup.js.map +1 -0
  61. package/src/__tests__/utils/mock-datasource.d.ts +5 -0
  62. package/src/__tests__/utils/mock-datasource.js +39 -0
  63. package/src/__tests__/utils/mock-datasource.js.map +1 -0
  64. package/src/__tests__/utils/mock-factories.d.ts +547 -0
  65. package/src/__tests__/utils/mock-factories.js +226 -0
  66. package/src/__tests__/utils/mock-factories.js.map +1 -0
  67. package/src/__tests__/utils/mock-repository.d.ts +21 -0
  68. package/src/__tests__/utils/mock-repository.js +75 -0
  69. package/src/__tests__/utils/mock-repository.js.map +1 -0
  70. package/src/__tests__/utils/test-helpers.d.ts +43 -0
  71. package/src/__tests__/utils/test-helpers.js +129 -0
  72. package/src/__tests__/utils/test-helpers.js.map +1 -0
  73. package/src/data/datasources/charts_datasource_impl.d.ts +11 -0
  74. package/src/data/datasources/charts_datasource_impl.js +52 -0
  75. package/src/data/datasources/charts_datasource_impl.js.map +1 -0
  76. package/src/data/datasources/markets_datasource_impl.d.ts +57 -0
  77. package/src/data/datasources/markets_datasource_impl.js +704 -0
  78. package/src/data/datasources/markets_datasource_impl.js.map +1 -0
  79. package/src/data/di/infosel_charts_module.d.ts +18 -0
  80. package/src/data/di/infosel_charts_module.js +34 -0
  81. package/src/data/di/infosel_charts_module.js.map +1 -0
  82. package/src/data/di/infosel_markets_component.d.ts +71 -0
  83. package/src/data/di/infosel_markets_component.js +196 -0
  84. package/src/data/di/infosel_markets_component.js.map +1 -0
  85. package/src/data/di/infosel_markets_module.d.ts +21 -0
  86. package/src/data/di/infosel_markets_module.js +40 -0
  87. package/src/data/di/infosel_markets_module.js.map +1 -0
  88. package/src/data/mappers/markets_mapper.d.ts +52 -0
  89. package/src/data/mappers/markets_mapper.js +195 -0
  90. package/src/data/mappers/markets_mapper.js.map +1 -0
  91. package/src/data/models/chart_item_model.d.ts +8 -0
  92. package/src/data/models/chart_item_model.js +3 -0
  93. package/src/data/models/chart_item_model.js.map +1 -0
  94. package/src/data/models/delete_workspace_response_model.d.ts +5 -0
  95. package/src/data/models/delete_workspace_response_model.js +3 -0
  96. package/src/data/models/delete_workspace_response_model.js.map +1 -0
  97. package/src/data/models/get_user_workspaces_response_model.d.ts +13 -0
  98. package/src/data/models/get_user_workspaces_response_model.js +3 -0
  99. package/src/data/models/get_user_workspaces_response_model.js.map +1 -0
  100. package/src/data/models/instrument_detail_financial_model.d.ts +8 -0
  101. package/src/data/models/instrument_detail_financial_model.js +3 -0
  102. package/src/data/models/instrument_detail_financial_model.js.map +1 -0
  103. package/src/data/models/instrument_detail_financial_reasons_model.d.ts +40 -0
  104. package/src/data/models/instrument_detail_financial_reasons_model.js +3 -0
  105. package/src/data/models/instrument_detail_financial_reasons_model.js.map +1 -0
  106. package/src/data/models/instrument_detail_profile_model.d.ts +25 -0
  107. package/src/data/models/instrument_detail_profile_model.js +3 -0
  108. package/src/data/models/instrument_detail_profile_model.js.map +1 -0
  109. package/src/data/models/instrument_fields_model.d.ts +67 -0
  110. package/src/data/models/instrument_fields_model.js +3 -0
  111. package/src/data/models/instrument_fields_model.js.map +1 -0
  112. package/src/data/models/instrument_model.d.ts +5 -0
  113. package/src/data/models/instrument_model.js +3 -0
  114. package/src/data/models/instrument_model.js.map +1 -0
  115. package/src/data/models/instrument_report_financial_reasons_model.d.ts +21 -0
  116. package/src/data/models/instrument_report_financial_reasons_model.js +3 -0
  117. package/src/data/models/instrument_report_financial_reasons_model.js.map +1 -0
  118. package/src/data/models/project_model.d.ts +12 -0
  119. package/src/data/models/project_model.js +3 -0
  120. package/src/data/models/project_model.js.map +1 -0
  121. package/src/data/models/project_widgets_response_model.d.ts +8 -0
  122. package/src/data/models/project_widgets_response_model.js +3 -0
  123. package/src/data/models/project_widgets_response_model.js.map +1 -0
  124. package/src/data/models/user_model.d.ts +7 -0
  125. package/src/data/models/user_model.js +3 -0
  126. package/src/data/models/user_model.js.map +1 -0
  127. package/src/data/models/widget_layout_model.d.ts +6 -0
  128. package/src/data/models/widget_layout_model.js +3 -0
  129. package/src/data/models/widget_layout_model.js.map +1 -0
  130. package/src/data/models/widget_model.d.ts +15 -0
  131. package/src/data/models/widget_model.js +3 -0
  132. package/src/data/models/widget_model.js.map +1 -0
  133. package/src/data/models/widget_size_model.d.ts +9 -0
  134. package/src/data/models/widget_size_model.js +3 -0
  135. package/src/data/models/widget_size_model.js.map +1 -0
  136. package/src/data/models/widget_table_column_format_model.d.ts +6 -0
  137. package/src/data/models/widget_table_column_format_model.js +3 -0
  138. package/src/data/models/widget_table_column_format_model.js.map +1 -0
  139. package/src/data/models/widget_table_column_model.d.ts +8 -0
  140. package/src/data/models/widget_table_column_model.js +3 -0
  141. package/src/data/models/widget_table_column_model.js.map +1 -0
  142. package/src/data/models/widget_ticker_configuration.d.ts +7 -0
  143. package/src/data/models/widget_ticker_configuration.js +3 -0
  144. package/src/data/models/widget_ticker_configuration.js.map +1 -0
  145. package/src/data/models/workspace_model.d.ts +6 -0
  146. package/src/data/models/workspace_model.js +3 -0
  147. package/src/data/models/workspace_model.js.map +1 -0
  148. package/src/data/repositories/charts_repository_impl.d.ts +9 -0
  149. package/src/data/repositories/charts_repository_impl.js +22 -0
  150. package/src/data/repositories/charts_repository_impl.js.map +1 -0
  151. package/src/data/repositories/markets_repository_impl.d.ts +50 -0
  152. package/src/data/repositories/markets_repository_impl.js +69 -0
  153. package/src/data/repositories/markets_repository_impl.js.map +1 -0
  154. package/src/domain/datasources/charts_datasource.d.ts +6 -0
  155. package/src/domain/datasources/charts_datasource.js +3 -0
  156. package/src/domain/datasources/charts_datasource.js.map +1 -0
  157. package/src/domain/datasources/markets_datasource.d.ts +45 -0
  158. package/src/domain/datasources/markets_datasource.js +3 -0
  159. package/src/domain/datasources/markets_datasource.js.map +1 -0
  160. package/src/domain/di/charts_module.d.ts +8 -0
  161. package/src/domain/di/charts_module.js +3 -0
  162. package/src/domain/di/charts_module.js.map +1 -0
  163. package/src/domain/di/markets_component.d.ts +34 -0
  164. package/src/domain/di/markets_component.js +3 -0
  165. package/src/domain/di/markets_component.js.map +1 -0
  166. package/src/domain/di/markets_module.d.ts +9 -0
  167. package/src/domain/di/markets_module.js +3 -0
  168. package/src/domain/di/markets_module.js.map +1 -0
  169. package/src/domain/entities/chart_item.d.ts +8 -0
  170. package/src/domain/entities/chart_item.js +3 -0
  171. package/src/domain/entities/chart_item.js.map +1 -0
  172. package/src/domain/entities/chart_period.d.ts +6 -0
  173. package/src/domain/entities/chart_period.js +3 -0
  174. package/src/domain/entities/chart_period.js.map +1 -0
  175. package/src/domain/entities/chart_request.d.ts +5 -0
  176. package/src/domain/entities/chart_request.js +3 -0
  177. package/src/domain/entities/chart_request.js.map +1 -0
  178. package/src/domain/entities/create_instrument_request.d.ts +5 -0
  179. package/src/domain/entities/create_instrument_request.js +3 -0
  180. package/src/domain/entities/create_instrument_request.js.map +1 -0
  181. package/src/domain/entities/create_widget_request.d.ts +10 -0
  182. package/src/domain/entities/create_widget_request.js +3 -0
  183. package/src/domain/entities/create_widget_request.js.map +1 -0
  184. package/src/domain/entities/create_workspace_request.d.ts +5 -0
  185. package/src/domain/entities/create_workspace_request.js +3 -0
  186. package/src/domain/entities/create_workspace_request.js.map +1 -0
  187. package/src/domain/entities/delete_workspace_request.d.ts +3 -0
  188. package/src/domain/entities/delete_workspace_request.js +3 -0
  189. package/src/domain/entities/delete_workspace_request.js.map +1 -0
  190. package/src/domain/entities/get_instruments_request.d.ts +12 -0
  191. package/src/domain/entities/get_instruments_request.js +3 -0
  192. package/src/domain/entities/get_instruments_request.js.map +1 -0
  193. package/src/domain/entities/get_project_widgets_request.d.ts +12 -0
  194. package/src/domain/entities/get_project_widgets_request.js +3 -0
  195. package/src/domain/entities/get_project_widgets_request.js.map +1 -0
  196. package/src/domain/entities/get_user_workspaces_request.d.ts +4 -0
  197. package/src/domain/entities/get_user_workspaces_request.js +3 -0
  198. package/src/domain/entities/get_user_workspaces_request.js.map +1 -0
  199. package/src/domain/entities/get_workspace_request.d.ts +3 -0
  200. package/src/domain/entities/get_workspace_request.js +3 -0
  201. package/src/domain/entities/get_workspace_request.js.map +1 -0
  202. package/src/domain/entities/get_workspaces_by_user_request.d.ts +12 -0
  203. package/src/domain/entities/get_workspaces_by_user_request.js +3 -0
  204. package/src/domain/entities/get_workspaces_by_user_request.js.map +1 -0
  205. package/src/domain/entities/get_workspaces_request.d.ts +12 -0
  206. package/src/domain/entities/get_workspaces_request.js +3 -0
  207. package/src/domain/entities/get_workspaces_request.js.map +1 -0
  208. package/src/domain/entities/index.d.ts +28 -0
  209. package/src/domain/entities/index.js +32 -0
  210. package/src/domain/entities/index.js.map +1 -0
  211. package/src/domain/entities/instrument.d.ts +4 -0
  212. package/src/domain/entities/instrument.js +3 -0
  213. package/src/domain/entities/instrument.js.map +1 -0
  214. package/src/domain/entities/instrument_detail_financial.d.ts +8 -0
  215. package/src/domain/entities/instrument_detail_financial.js +3 -0
  216. package/src/domain/entities/instrument_detail_financial.js.map +1 -0
  217. package/src/domain/entities/instrument_detail_financial_annual_request.d.ts +5 -0
  218. package/src/domain/entities/instrument_detail_financial_annual_request.js +3 -0
  219. package/src/domain/entities/instrument_detail_financial_annual_request.js.map +1 -0
  220. package/src/domain/entities/instrument_detail_financial_quarterly_request.d.ts +5 -0
  221. package/src/domain/entities/instrument_detail_financial_quarterly_request.js +3 -0
  222. package/src/domain/entities/instrument_detail_financial_quarterly_request.js.map +1 -0
  223. package/src/domain/entities/instrument_detail_financial_reasons.d.ts +40 -0
  224. package/src/domain/entities/instrument_detail_financial_reasons.js +3 -0
  225. package/src/domain/entities/instrument_detail_financial_reasons.js.map +1 -0
  226. package/src/domain/entities/instrument_detail_financial_reasons_request.d.ts +5 -0
  227. package/src/domain/entities/instrument_detail_financial_reasons_request.js +3 -0
  228. package/src/domain/entities/instrument_detail_financial_reasons_request.js.map +1 -0
  229. package/src/domain/entities/instrument_detail_profile.d.ts +25 -0
  230. package/src/domain/entities/instrument_detail_profile.js +3 -0
  231. package/src/domain/entities/instrument_detail_profile.js.map +1 -0
  232. package/src/domain/entities/instrument_detail_profile_request.d.ts +3 -0
  233. package/src/domain/entities/instrument_detail_profile_request.js +3 -0
  234. package/src/domain/entities/instrument_detail_profile_request.js.map +1 -0
  235. package/src/domain/entities/instrument_fields.d.ts +69 -0
  236. package/src/domain/entities/instrument_fields.js +3 -0
  237. package/src/domain/entities/instrument_fields.js.map +1 -0
  238. package/src/domain/entities/instrument_report_financial_reasons.d.ts +21 -0
  239. package/src/domain/entities/instrument_report_financial_reasons.js +3 -0
  240. package/src/domain/entities/instrument_report_financial_reasons.js.map +1 -0
  241. package/src/domain/entities/instrument_report_financial_reasons_request.d.ts +4 -0
  242. package/src/domain/entities/instrument_report_financial_reasons_request.js +3 -0
  243. package/src/domain/entities/instrument_report_financial_reasons_request.js.map +1 -0
  244. package/src/domain/entities/instruments_response.d.ts +6 -0
  245. package/src/domain/entities/instruments_response.js +3 -0
  246. package/src/domain/entities/instruments_response.js.map +1 -0
  247. package/src/domain/entities/period_type.d.ts +1 -0
  248. package/src/domain/entities/period_type.js +3 -0
  249. package/src/domain/entities/period_type.js.map +1 -0
  250. package/src/domain/entities/project_widgets_container.d.ts +12 -0
  251. package/src/domain/entities/project_widgets_container.js +3 -0
  252. package/src/domain/entities/project_widgets_container.js.map +1 -0
  253. package/src/domain/entities/search_instruments_request.d.ts +7 -0
  254. package/src/domain/entities/search_instruments_request.js +3 -0
  255. package/src/domain/entities/search_instruments_request.js.map +1 -0
  256. package/src/domain/entities/search_result_item.d.ts +5 -0
  257. package/src/domain/entities/search_result_item.js +3 -0
  258. package/src/domain/entities/search_result_item.js.map +1 -0
  259. package/src/domain/entities/update_widget_instruments_reques.d.ts +11 -0
  260. package/src/domain/entities/update_widget_instruments_reques.js +3 -0
  261. package/src/domain/entities/update_widget_instruments_reques.js.map +1 -0
  262. package/src/domain/entities/user_workspaces.d.ts +8 -0
  263. package/src/domain/entities/user_workspaces.js +3 -0
  264. package/src/domain/entities/user_workspaces.js.map +1 -0
  265. package/src/domain/entities/widget.d.ts +46 -0
  266. package/src/domain/entities/widget.js +3 -0
  267. package/src/domain/entities/widget.js.map +1 -0
  268. package/src/domain/entities/workspace.d.ts +4 -0
  269. package/src/domain/entities/workspace.js +3 -0
  270. package/src/domain/entities/workspace.js.map +1 -0
  271. package/src/domain/entities/workspace_widgets.d.ts +6 -0
  272. package/src/domain/entities/workspace_widgets.js +3 -0
  273. package/src/domain/entities/workspace_widgets.js.map +1 -0
  274. package/src/domain/entities/workspaces_container.d.ts +18 -0
  275. package/src/domain/entities/workspaces_container.js +3 -0
  276. package/src/domain/entities/workspaces_container.js.map +1 -0
  277. package/src/domain/repositories/charts_repository.d.ts +5 -0
  278. package/src/domain/repositories/charts_repository.js +3 -0
  279. package/src/domain/repositories/charts_repository.js.map +1 -0
  280. package/src/domain/repositories/markets_repository.d.ts +41 -0
  281. package/src/domain/repositories/markets_repository.js +3 -0
  282. package/src/domain/repositories/markets_repository.js.map +1 -0
  283. package/src/domain/use_cases/create_instrument_use_case.d.ts +9 -0
  284. package/src/domain/use_cases/create_instrument_use_case.js +22 -0
  285. package/src/domain/use_cases/create_instrument_use_case.js.map +1 -0
  286. package/src/domain/use_cases/create_widget_use_case.d.ts +9 -0
  287. package/src/domain/use_cases/create_widget_use_case.js +22 -0
  288. package/src/domain/use_cases/create_widget_use_case.js.map +1 -0
  289. package/src/domain/use_cases/create_workspace_use_case.d.ts +9 -0
  290. package/src/domain/use_cases/create_workspace_use_case.js +22 -0
  291. package/src/domain/use_cases/create_workspace_use_case.js.map +1 -0
  292. package/src/domain/use_cases/delete_instrument_use_case.d.ts +7 -0
  293. package/src/domain/use_cases/delete_instrument_use_case.js +19 -0
  294. package/src/domain/use_cases/delete_instrument_use_case.js.map +1 -0
  295. package/src/domain/use_cases/delete_widget_use_case.d.ts +7 -0
  296. package/src/domain/use_cases/delete_widget_use_case.js +19 -0
  297. package/src/domain/use_cases/delete_widget_use_case.js.map +1 -0
  298. package/src/domain/use_cases/delete_workspace_use_case.d.ts +8 -0
  299. package/src/domain/use_cases/delete_workspace_use_case.js +22 -0
  300. package/src/domain/use_cases/delete_workspace_use_case.js.map +1 -0
  301. package/src/domain/use_cases/get_chart_data_use_case.d.ts +9 -0
  302. package/src/domain/use_cases/get_chart_data_use_case.js +16 -0
  303. package/src/domain/use_cases/get_chart_data_use_case.js.map +1 -0
  304. package/src/domain/use_cases/get_instrument_detail_financial_annual_use_case.d.ts +8 -0
  305. package/src/domain/use_cases/get_instrument_detail_financial_annual_use_case.js +16 -0
  306. package/src/domain/use_cases/get_instrument_detail_financial_annual_use_case.js.map +1 -0
  307. package/src/domain/use_cases/get_instrument_detail_financial_quartely_use_case.d.ts +8 -0
  308. package/src/domain/use_cases/get_instrument_detail_financial_quartely_use_case.js +16 -0
  309. package/src/domain/use_cases/get_instrument_detail_financial_quartely_use_case.js.map +1 -0
  310. package/src/domain/use_cases/get_instrument_detail_financial_reasons_use_case.d.ts +8 -0
  311. package/src/domain/use_cases/get_instrument_detail_financial_reasons_use_case.js +16 -0
  312. package/src/domain/use_cases/get_instrument_detail_financial_reasons_use_case.js.map +1 -0
  313. package/src/domain/use_cases/get_instrument_detail_profile_use_case.d.ts +8 -0
  314. package/src/domain/use_cases/get_instrument_detail_profile_use_case.js +16 -0
  315. package/src/domain/use_cases/get_instrument_detail_profile_use_case.js.map +1 -0
  316. package/src/domain/use_cases/get_instrument_fields_use_case.d.ts +8 -0
  317. package/src/domain/use_cases/get_instrument_fields_use_case.js +19 -0
  318. package/src/domain/use_cases/get_instrument_fields_use_case.js.map +1 -0
  319. package/src/domain/use_cases/get_instrument_report_financial_reasons.d.ts +9 -0
  320. package/src/domain/use_cases/get_instrument_report_financial_reasons.js +16 -0
  321. package/src/domain/use_cases/get_instrument_report_financial_reasons.js.map +1 -0
  322. package/src/domain/use_cases/get_instruments_use_case.d.ts +9 -0
  323. package/src/domain/use_cases/get_instruments_use_case.js +16 -0
  324. package/src/domain/use_cases/get_instruments_use_case.js.map +1 -0
  325. package/src/domain/use_cases/get_project_widgets_use_case.d.ts +9 -0
  326. package/src/domain/use_cases/get_project_widgets_use_case.js +19 -0
  327. package/src/domain/use_cases/get_project_widgets_use_case.js.map +1 -0
  328. package/src/domain/use_cases/get_user_workspace_use_case.d.ts +9 -0
  329. package/src/domain/use_cases/get_user_workspace_use_case.js +22 -0
  330. package/src/domain/use_cases/get_user_workspace_use_case.js.map +1 -0
  331. package/src/domain/use_cases/get_workspace_use_case.d.ts +9 -0
  332. package/src/domain/use_cases/get_workspace_use_case.js +19 -0
  333. package/src/domain/use_cases/get_workspace_use_case.js.map +1 -0
  334. package/src/domain/use_cases/get_workspaces_by_user_use_case.d.ts +9 -0
  335. package/src/domain/use_cases/get_workspaces_by_user_use_case.js +19 -0
  336. package/src/domain/use_cases/get_workspaces_by_user_use_case.js.map +1 -0
  337. package/src/domain/use_cases/get_workspaces_use_case.d.ts +9 -0
  338. package/src/domain/use_cases/get_workspaces_use_case.js +19 -0
  339. package/src/domain/use_cases/get_workspaces_use_case.js.map +1 -0
  340. package/src/domain/use_cases/search_instruments_use_case.d.ts +9 -0
  341. package/src/domain/use_cases/search_instruments_use_case.js +25 -0
  342. package/src/domain/use_cases/search_instruments_use_case.js.map +1 -0
  343. package/src/domain/use_cases/update_widget_instruments_use_case.d.ts +9 -0
  344. package/src/domain/use_cases/update_widget_instruments_use_case.js +22 -0
  345. package/src/domain/use_cases/update_widget_instruments_use_case.js.map +1 -0
  346. package/src/index.d.ts +8 -0
  347. package/src/index.js +12 -0
  348. package/src/index.js.map +1 -0
@@ -0,0 +1,181 @@
1
+ "use strict";
2
+ /**
3
+ * Assertion Helper Functions
4
+ * Provides reusable assertion utilities for E2E tests
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.AssertionHelper = exports.logSuccessResult = exports.validateExpectedError = exports.validateSuccessResponse = exports.validateInstrumentId = exports.validateUUID = exports.validateResponseTime = exports.validateErrorResponse = exports.validateWorkspacesByUserResponse = exports.validateWorkspacesArray = exports.validateWorkspaceStructure = void 0;
8
+ const test_scenarios_1 = require("../fixtures/test-scenarios");
9
+ /**
10
+ * Validates basic workspace structure
11
+ */
12
+ function validateWorkspaceStructure(workspace) {
13
+ expect(workspace).toBeDefined();
14
+ expect(workspace).toHaveProperty('id');
15
+ expect(workspace).toHaveProperty('name');
16
+ expect(typeof workspace.id).toBe('string');
17
+ expect(typeof workspace.name).toBe('string');
18
+ expect(workspace.id.trim()).not.toBe('');
19
+ expect(workspace.name.trim()).not.toBe('');
20
+ }
21
+ exports.validateWorkspaceStructure = validateWorkspaceStructure;
22
+ /**
23
+ * Validates workspaces array structure
24
+ */
25
+ function validateWorkspacesArray(workspaces) {
26
+ expect(Array.isArray(workspaces)).toBe(true);
27
+ if (workspaces.length > 0) {
28
+ workspaces.forEach((workspace, index) => {
29
+ try {
30
+ validateWorkspaceStructure(workspace);
31
+ }
32
+ catch (error) {
33
+ throw new Error(`Invalid workspace structure at index ${index}: ${error}`);
34
+ }
35
+ });
36
+ }
37
+ }
38
+ exports.validateWorkspacesArray = validateWorkspacesArray;
39
+ /**
40
+ * Validates complete getWorkspacesByUser response
41
+ */
42
+ function validateWorkspacesByUserResponse(response) {
43
+ expect(response).toBeDefined();
44
+ expect(response).toHaveProperty('workspaces');
45
+ // Validate workspaces array
46
+ validateWorkspacesArray(response.workspaces);
47
+ // Validate optional properties
48
+ if (response.widgets) {
49
+ expect(typeof response.widgets).toBe('object');
50
+ }
51
+ if (response.instruments) {
52
+ expect(typeof response.instruments).toBe('object');
53
+ }
54
+ }
55
+ exports.validateWorkspacesByUserResponse = validateWorkspacesByUserResponse;
56
+ /**
57
+ * Validates error response structure
58
+ */
59
+ function validateErrorResponse(error, expectedStatusCodes) {
60
+ expect(error).toBeDefined();
61
+ expect(error.message).toBeDefined();
62
+ // Extract status code from error message
63
+ const statusCodeMatch = error.message.match(/(\d{3})/);
64
+ if (statusCodeMatch) {
65
+ const statusCode = parseInt(statusCodeMatch[1]);
66
+ expect((0, test_scenarios_1.isExpectedStatusCode)(statusCode, expectedStatusCodes)).toBe(true);
67
+ }
68
+ else {
69
+ // If no status code in message, check if it's a network or validation error
70
+ const isNetworkError = error.message.includes('network') ||
71
+ error.message.includes('timeout') ||
72
+ error.message.includes('connection');
73
+ const isValidationError = error.message.includes('validation') ||
74
+ error.message.includes('required') ||
75
+ error.message.includes('invalid') ||
76
+ error.message.includes('400') ||
77
+ error.message.includes('Bad Request') ||
78
+ error.message.includes('Validation failed') ||
79
+ error.message.includes('uuid is expected') ||
80
+ error.message.includes('must not be null') ||
81
+ error.name === 'ApolloError' ||
82
+ (error.response &&
83
+ error.response.status >= 400 &&
84
+ error.response.status < 500);
85
+ expect(isNetworkError || isValidationError).toBe(true);
86
+ }
87
+ }
88
+ exports.validateErrorResponse = validateErrorResponse;
89
+ /**
90
+ * Validates response time is within acceptable limits
91
+ */
92
+ function validateResponseTime(duration, maxDuration = 10000) {
93
+ expect(duration).toBeDefined();
94
+ expect(typeof duration).toBe('number');
95
+ expect(duration).toBeGreaterThan(0);
96
+ expect(duration).toBeLessThan(maxDuration);
97
+ }
98
+ exports.validateResponseTime = validateResponseTime;
99
+ /**
100
+ * Validates UUID format
101
+ */
102
+ function validateUUID(uuid) {
103
+ const uuidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
104
+ expect(uuid).toMatch(uuidRegex);
105
+ }
106
+ exports.validateUUID = validateUUID;
107
+ /**
108
+ * Validates instrument ID format
109
+ */
110
+ function validateInstrumentId(instrumentId) {
111
+ const instrumentRegex = /^\d+\/\d+\/\d+\/[A-Z*]+$/;
112
+ expect(instrumentId).toMatch(instrumentRegex);
113
+ }
114
+ exports.validateInstrumentId = validateInstrumentId;
115
+ /**
116
+ * Validates that response is successful (200 status)
117
+ */
118
+ function validateSuccessResponse(response, startTime) {
119
+ const duration = Date.now() - startTime;
120
+ // Validate response time
121
+ validateResponseTime(duration);
122
+ // Validate response structure
123
+ validateWorkspacesByUserResponse(response);
124
+ return response;
125
+ }
126
+ exports.validateSuccessResponse = validateSuccessResponse;
127
+ /**
128
+ * Validates that error is as expected
129
+ */
130
+ function validateExpectedError(error, expectedStatusCodes, testDescription) {
131
+ var _a;
132
+ console.log(`✅ Expected error for ${testDescription}:`);
133
+ console.log(` Type: ${(_a = error.constructor) === null || _a === void 0 ? void 0 : _a.name}`);
134
+ console.log(` Message: ${error.message}`);
135
+ validateErrorResponse(error, expectedStatusCodes);
136
+ }
137
+ exports.validateExpectedError = validateExpectedError;
138
+ /**
139
+ * Logs successful test result
140
+ */
141
+ function logSuccessResult(response, duration, testDescription) {
142
+ console.log(`✅ Success for ${testDescription}:`);
143
+ console.log(` Workspaces: ${response.workspaces.length}`);
144
+ console.log(` Widgets: ${response.widgets ? Object.keys(response.widgets).length : 0}`);
145
+ console.log(` Instruments: ${response.instruments ? Object.keys(response.instruments).length : 0}`);
146
+ console.log(` Response time: ${duration}ms`);
147
+ if (response.workspaces.length > 0) {
148
+ const firstWorkspace = response.workspaces[0];
149
+ console.log(` First workspace: ID=${firstWorkspace.id}, Name=${firstWorkspace.name}`);
150
+ }
151
+ }
152
+ exports.logSuccessResult = logSuccessResult;
153
+ /**
154
+ * Helper for common test assertions
155
+ */
156
+ class AssertionHelper {
157
+ static validateSuccess(response, startTime, description) {
158
+ const validatedResponse = validateSuccessResponse(response, startTime);
159
+ const duration = Date.now() - startTime;
160
+ logSuccessResult(validatedResponse, duration, description);
161
+ return validatedResponse;
162
+ }
163
+ static validateError(error, expectedStatusCodes, description) {
164
+ validateExpectedError(error, expectedStatusCodes, description);
165
+ }
166
+ static validatePerformance(responseTimes, maxTime = 10000) {
167
+ expect(responseTimes).toBeDefined();
168
+ expect(responseTimes.length).toBeGreaterThan(0);
169
+ responseTimes.forEach((time, index) => {
170
+ expect(time).toBeLessThan(maxTime);
171
+ });
172
+ const avgTime = responseTimes.reduce((sum, time) => sum + time, 0) / responseTimes.length;
173
+ console.log(`📊 Performance Summary:`);
174
+ console.log(` Calls: ${responseTimes.length}`);
175
+ console.log(` Average time: ${Math.round(avgTime)}ms`);
176
+ console.log(` Max time: ${Math.max(...responseTimes)}ms`);
177
+ console.log(` Min time: ${Math.min(...responseTimes)}ms`);
178
+ }
179
+ }
180
+ exports.AssertionHelper = AssertionHelper;
181
+ //# sourceMappingURL=assertion.helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assertion.helper.js","sourceRoot":"","sources":["../../../../../../../packages/markets/src/__tests__/e2e/helpers/assertion.helper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Authentication Helper Functions
3
+ * Provides reusable authentication utilities for E2E tests
4
+ */
5
+ import { AuthConfig, AuthMode } from '../config/auth.config';
6
+ /**
7
+ * Auth helper class for managing authentication in tests
8
+ */
9
+ export declare class AuthHelper {
10
+ private static instance;
11
+ private authConfigs;
12
+ private initialized;
13
+ private static globalConfigs;
14
+ private constructor();
15
+ static getInstance(): AuthHelper;
16
+ /**
17
+ * Initializes auth configurations
18
+ */
19
+ initialize(configs?: Record<AuthMode, AuthConfig>): Promise<void>;
20
+ /**
21
+ * Gets SDK manager for specific auth mode
22
+ */
23
+ getSdkManager(mode: AuthMode): any;
24
+ /**
25
+ * Checks if authentication mode is available and working
26
+ */
27
+ isAuthenticated(mode: AuthMode): boolean;
28
+ /**
29
+ * Gets authentication status for all modes
30
+ */
31
+ getAuthStatus(): Record<AuthMode, boolean>;
32
+ /**
33
+ * Re-verifies authentication for a specific mode
34
+ */
35
+ reVerifyAuthentication(mode: AuthMode): Promise<boolean>;
36
+ /**
37
+ * Gets all available authentication modes
38
+ */
39
+ getAvailableModes(): AuthMode[];
40
+ /**
41
+ * Logs authentication status summary
42
+ */
43
+ logAuthStatus(): void;
44
+ }
45
+ /**
46
+ * Skip test if authentication is not available
47
+ */
48
+ export declare function skipIfNotAuthenticated(mode: AuthMode, testDescription: string): void;
49
+ /**
50
+ * Test helper to run test with authentication check
51
+ */
52
+ export declare function withAuthentication<T>(mode: AuthMode, testFn: (sdkManager: any) => Promise<T>, testDescription: string): Promise<T | undefined>;
53
+ /**
54
+ * Retry authentication if needed
55
+ */
56
+ export declare function retryWithAuth<T>(mode: AuthMode, operation: (sdkManager: any) => Promise<T>, maxRetries?: number): Promise<T>;
@@ -0,0 +1,188 @@
1
+ "use strict";
2
+ /**
3
+ * Authentication Helper Functions
4
+ * Provides reusable authentication utilities for E2E tests
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.retryWithAuth = exports.withAuthentication = exports.skipIfNotAuthenticated = exports.AuthHelper = void 0;
8
+ const tslib_1 = require("tslib");
9
+ const auth_config_1 = require("../config/auth.config");
10
+ /**
11
+ * Auth helper class for managing authentication in tests
12
+ */
13
+ class AuthHelper {
14
+ constructor() {
15
+ this.authConfigs = {};
16
+ this.initialized = false;
17
+ // Private constructor for singleton pattern
18
+ }
19
+ static getInstance() {
20
+ if (!AuthHelper.instance) {
21
+ AuthHelper.instance = new AuthHelper();
22
+ }
23
+ return AuthHelper.instance;
24
+ }
25
+ /**
26
+ * Initializes auth configurations
27
+ */
28
+ initialize(configs) {
29
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
30
+ // If configs are provided, cache them globally
31
+ if (configs) {
32
+ AuthHelper.globalConfigs = configs;
33
+ this.authConfigs = configs;
34
+ this.initialized = true;
35
+ return;
36
+ }
37
+ // If no configs provided but we have cached configs, use those
38
+ if (AuthHelper.globalConfigs) {
39
+ this.authConfigs = AuthHelper.globalConfigs;
40
+ this.initialized = true;
41
+ return;
42
+ }
43
+ // Otherwise, create fresh configurations
44
+ const { createAuthConfigurations } = yield Promise.resolve().then(() => tslib_1.__importStar(require('../config/auth.config')));
45
+ const newConfigs = yield createAuthConfigurations();
46
+ AuthHelper.globalConfigs = newConfigs;
47
+ this.authConfigs = newConfigs;
48
+ this.initialized = true;
49
+ });
50
+ }
51
+ /**
52
+ * Gets SDK manager for specific auth mode
53
+ */
54
+ getSdkManager(mode) {
55
+ var _a;
56
+ if (!this.initialized) {
57
+ throw new Error('AuthHelper not initialized. Call initialize() first.');
58
+ }
59
+ return (_a = this.authConfigs[mode]) === null || _a === void 0 ? void 0 : _a.sdkManager;
60
+ }
61
+ /**
62
+ * Checks if authentication mode is available and working
63
+ */
64
+ isAuthenticated(mode) {
65
+ var _a;
66
+ if (!this.initialized)
67
+ return false;
68
+ return ((_a = this.authConfigs[mode]) === null || _a === void 0 ? void 0 : _a.isAuthenticated) || false;
69
+ }
70
+ /**
71
+ * Gets authentication status for all modes
72
+ */
73
+ getAuthStatus() {
74
+ return {
75
+ 'keycloak-hub': this.isAuthenticated('keycloak-hub'),
76
+ 'keycloak-sibolsa': this.isAuthenticated('keycloak-sibolsa'),
77
+ 'existing-token': this.isAuthenticated('existing-token'),
78
+ };
79
+ }
80
+ /**
81
+ * Re-verifies authentication for a specific mode
82
+ */
83
+ reVerifyAuthentication(mode) {
84
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
85
+ const sdkManager = this.getSdkManager(mode);
86
+ if (!sdkManager)
87
+ return false;
88
+ const isAuthenticated = yield (0, auth_config_1.verifyAuthentication)(sdkManager);
89
+ this.authConfigs[mode].isAuthenticated = isAuthenticated;
90
+ return isAuthenticated;
91
+ });
92
+ }
93
+ /**
94
+ * Gets all available authentication modes
95
+ */
96
+ getAvailableModes() {
97
+ if (!this.initialized)
98
+ return [];
99
+ return Object.keys(this.authConfigs).filter(mode => this.isAuthenticated(mode));
100
+ }
101
+ /**
102
+ * Logs authentication status summary
103
+ */
104
+ logAuthStatus() {
105
+ console.log('🔐 Authentication Status Summary:');
106
+ const status = this.getAuthStatus();
107
+ Object.entries(status).forEach(([mode, isAuth]) => {
108
+ const emoji = isAuth ? '✅' : '❌';
109
+ console.log(` ${emoji} ${mode}: ${isAuth ? 'Available' : 'Unavailable'}`);
110
+ });
111
+ }
112
+ }
113
+ exports.AuthHelper = AuthHelper;
114
+ AuthHelper.globalConfigs = null;
115
+ /**
116
+ * Skip test if authentication is not available
117
+ */
118
+ function skipIfNotAuthenticated(mode, testDescription) {
119
+ const authHelper = AuthHelper.getInstance();
120
+ if (!authHelper.isAuthenticated(mode)) {
121
+ console.warn(`⚠️ Skipping test "${testDescription}" - ${mode} not authenticated`);
122
+ return;
123
+ }
124
+ }
125
+ exports.skipIfNotAuthenticated = skipIfNotAuthenticated;
126
+ /**
127
+ * Test helper to run test with authentication check
128
+ */
129
+ function withAuthentication(mode, testFn, testDescription) {
130
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
131
+ const authHelper = AuthHelper.getInstance();
132
+ // Auto-initialize if not initialized
133
+ if (!authHelper['initialized']) {
134
+ yield authHelper.initialize();
135
+ }
136
+ if (!authHelper.isAuthenticated(mode)) {
137
+ console.warn(`⚠️ Skipping test "${testDescription}" - ${mode} not authenticated`);
138
+ return undefined;
139
+ }
140
+ const sdkManager = authHelper.getSdkManager(mode);
141
+ if (!sdkManager) {
142
+ console.error(`❌ SDK Manager is null/undefined for ${mode}`);
143
+ throw new Error(`SDK Manager not available for ${mode}`);
144
+ }
145
+ return yield testFn(sdkManager);
146
+ });
147
+ }
148
+ exports.withAuthentication = withAuthentication;
149
+ /**
150
+ * Retry authentication if needed
151
+ */
152
+ function retryWithAuth(mode, operation, maxRetries = 2) {
153
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
154
+ const authHelper = AuthHelper.getInstance();
155
+ let lastError;
156
+ for (let attempt = 1; attempt <= maxRetries; attempt++) {
157
+ try {
158
+ const sdkManager = authHelper.getSdkManager(mode);
159
+ if (!sdkManager) {
160
+ throw new Error(`No SDK manager available for ${mode}`);
161
+ }
162
+ return yield operation(sdkManager);
163
+ }
164
+ catch (error) {
165
+ lastError = error;
166
+ // If authentication error, try to re-verify
167
+ if (attempt < maxRetries && isAuthError(error)) {
168
+ console.warn(`⚠️ Auth error on attempt ${attempt}, re-verifying...`);
169
+ yield authHelper.reVerifyAuthentication(mode);
170
+ }
171
+ }
172
+ }
173
+ throw lastError || new Error(`Operation failed after ${maxRetries} attempts`);
174
+ });
175
+ }
176
+ exports.retryWithAuth = retryWithAuth;
177
+ /**
178
+ * Checks if error is authentication related
179
+ */
180
+ function isAuthError(error) {
181
+ var _a;
182
+ const errorMessage = ((_a = error.message) === null || _a === void 0 ? void 0 : _a.toLowerCase()) || '';
183
+ return (errorMessage.includes('401') ||
184
+ errorMessage.includes('403') ||
185
+ errorMessage.includes('unauthorized') ||
186
+ errorMessage.includes('authentication'));
187
+ }
188
+ //# sourceMappingURL=auth.helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.helper.js","sourceRoot":"","sources":["../../../../../../../packages/markets/src/__tests__/e2e/helpers/auth.helper.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;AAEH,uDAI+B;AAE/B;;GAEG;AACH,MAAa,UAAU;IAMrB;QAJQ,gBAAW,GAAiC,EAAS,CAAC;QACtD,gBAAW,GAAG,KAAK,CAAC;QAI1B,4CAA4C;IAC9C,CAAC;IAED,MAAM,CAAC,WAAW;QAChB,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;YACxB,UAAU,CAAC,QAAQ,GAAG,IAAI,UAAU,EAAE,CAAC;SACxC;QACD,OAAO,UAAU,CAAC,QAAQ,CAAC;IAC7B,CAAC;IAED;;OAEG;IACG,UAAU,CAAC,OAAsC;;YACrD,+CAA+C;YAC/C,IAAI,OAAO,EAAE;gBACX,UAAU,CAAC,aAAa,GAAG,OAAO,CAAC;gBACnC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;gBAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,OAAO;aACR;YAED,+DAA+D;YAC/D,IAAI,UAAU,CAAC,aAAa,EAAE;gBAC5B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,aAAa,CAAC;gBAC5C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,OAAO;aACR;YAED,yCAAyC;YACzC,MAAM,EAAE,wBAAwB,EAAE,GAAG,gEAAa,uBAAuB,GAAC,CAAC;YAC3E,MAAM,UAAU,GAAG,MAAM,wBAAwB,EAAE,CAAC;YACpD,UAAU,CAAC,aAAa,GAAG,UAAU,CAAC;YACtC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;YAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC1B,CAAC;KAAA;IAED;;OAEG;IACH,aAAa,CAAC,IAAc;;QAC1B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;SACzE;QACD,OAAO,MAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,0CAAE,UAAU,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,IAAc;;QAC5B,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO,KAAK,CAAC;QACpC,OAAO,CAAA,MAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,0CAAE,eAAe,KAAI,KAAK,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO;YACL,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC;YACpD,kBAAkB,EAAE,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC;YAC5D,gBAAgB,EAAE,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC;SACzD,CAAC;IACJ,CAAC;IAED;;OAEG;IACG,sBAAsB,CAAC,IAAc;;YACzC,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,CAAC,UAAU;gBAAE,OAAO,KAAK,CAAC;YAE9B,MAAM,eAAe,GAAG,MAAM,IAAA,kCAAoB,EAAC,UAAU,CAAC,CAAC;YAC/D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,eAAe,GAAG,eAAe,CAAC;YACzD,OAAO,eAAe,CAAC;QACzB,CAAC;KAAA;IAED;;OAEG;IACH,iBAAiB;QACf,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO,EAAE,CAAC;QAEjC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CACjD,IAAI,CAAC,eAAe,CAAC,IAAgB,CAAC,CACzB,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACpC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE;YAChD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YACjC,OAAO,CAAC,GAAG,CACT,MAAM,KAAK,IAAI,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,EAAE,CAC/D,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;;AA5GH,gCA6GC;AAzGgB,wBAAa,GAAwC,IAAI,AAA5C,CAA6C;AA2G3E;;GAEG;AACH,SAAgB,sBAAsB,CACpC,IAAc,EACd,eAAuB;IAEvB,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IAE5C,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;QACrC,OAAO,CAAC,IAAI,CACV,sBAAsB,eAAe,OAAO,IAAI,oBAAoB,CACrE,CAAC;QACF,OAAO;KACR;AACH,CAAC;AAZD,wDAYC;AAED;;GAEG;AACH,SAAsB,kBAAkB,CACtC,IAAc,EACd,MAAuC,EACvC,eAAuB;;QAEvB,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QAE5C,qCAAqC;QACrC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE;YAC9B,MAAM,UAAU,CAAC,UAAU,EAAE,CAAC;SAC/B;QAED,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;YACrC,OAAO,CAAC,IAAI,CACV,sBAAsB,eAAe,OAAO,IAAI,oBAAoB,CACrE,CAAC;YACF,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAElD,IAAI,CAAC,UAAU,EAAE;YACf,OAAO,CAAC,KAAK,CAAC,uCAAuC,IAAI,EAAE,CAAC,CAAC;YAC7D,MAAM,IAAI,KAAK,CAAC,iCAAiC,IAAI,EAAE,CAAC,CAAC;SAC1D;QAED,OAAO,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;IAClC,CAAC;CAAA;AA3BD,gDA2BC;AAED;;GAEG;AACH,SAAsB,aAAa,CACjC,IAAc,EACd,SAA0C,EAC1C,UAAU,GAAG,CAAC;;QAEd,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QAC5C,IAAI,SAA4B,CAAC;QAEjC,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,UAAU,EAAE,OAAO,EAAE,EAAE;YACtD,IAAI;gBACF,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBAClD,IAAI,CAAC,UAAU,EAAE;oBACf,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC;iBACzD;gBAED,OAAO,MAAM,SAAS,CAAC,UAAU,CAAC,CAAC;aACpC;YAAC,OAAO,KAAU,EAAE;gBACnB,SAAS,GAAG,KAAK,CAAC;gBAElB,4CAA4C;gBAC5C,IAAI,OAAO,GAAG,UAAU,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE;oBAC9C,OAAO,CAAC,IAAI,CAAC,6BAA6B,OAAO,mBAAmB,CAAC,CAAC;oBACtE,MAAM,UAAU,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;iBAC/C;aACF;SACF;QAED,MAAM,SAAS,IAAI,IAAI,KAAK,CAAC,0BAA0B,UAAU,WAAW,CAAC,CAAC;IAChF,CAAC;CAAA;AA5BD,sCA4BC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,KAAU;;IAC7B,MAAM,YAAY,GAAG,CAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,WAAW,EAAE,KAAI,EAAE,CAAC;IACxD,OAAO,CACL,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;QAC5B,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;QAC5B,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC;QACrC,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CACxC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Performance Helper Functions
3
+ * Provides utilities for measuring and validating performance in E2E tests
4
+ */
5
+ import { PERFORMANCE_THRESHOLDS } from '../fixtures/test-scenarios';
6
+ export interface PerformanceMetrics {
7
+ duration: number;
8
+ startTime: number;
9
+ endTime: number;
10
+ operation: string;
11
+ }
12
+ export interface ConcurrentResult<T = any> {
13
+ success: boolean;
14
+ duration: number;
15
+ result?: T;
16
+ error?: any;
17
+ index: number;
18
+ }
19
+ /**
20
+ * Performance measurement utility
21
+ */
22
+ export declare class PerformanceHelper {
23
+ private static measurements;
24
+ /**
25
+ * Measures the execution time of an async operation
26
+ */
27
+ static measure<T>(operation: string, asyncOperation: () => Promise<T>): Promise<{
28
+ result: T;
29
+ metrics: PerformanceMetrics;
30
+ }>;
31
+ /**
32
+ * Validates performance against thresholds
33
+ */
34
+ static validatePerformance(duration: number, threshold?: keyof typeof PERFORMANCE_THRESHOLDS, operation?: string): void;
35
+ /**
36
+ * Runs multiple sequential calls and measures performance consistency
37
+ */
38
+ static measureSequentialCalls<T>(operation: string, asyncOperation: () => Promise<T>, callCount?: number): Promise<{
39
+ results: (T | null)[];
40
+ errors: any[];
41
+ metrics: PerformanceMetrics[];
42
+ summary: {
43
+ successCount: number;
44
+ errorCount: number;
45
+ avgDuration: number;
46
+ minDuration: number;
47
+ maxDuration: number;
48
+ };
49
+ }>;
50
+ /**
51
+ * Runs concurrent operations and measures performance
52
+ */
53
+ static measureConcurrentCalls<T>(operation: string, asyncOperation: () => Promise<T>, concurrency?: number): Promise<{
54
+ results: ConcurrentResult<T>[];
55
+ summary: {
56
+ successCount: number;
57
+ errorCount: number;
58
+ avgDuration: number;
59
+ minDuration: number;
60
+ maxDuration: number;
61
+ };
62
+ }>;
63
+ /**
64
+ * Gets all recorded measurements
65
+ */
66
+ static getMeasurements(): PerformanceMetrics[];
67
+ /**
68
+ * Clears all recorded measurements
69
+ */
70
+ static clearMeasurements(): void;
71
+ /**
72
+ * Gets performance summary for specific operation
73
+ */
74
+ static getOperationSummary(operationPattern: string): {
75
+ count: number;
76
+ avgDuration: number;
77
+ minDuration: number;
78
+ maxDuration: number;
79
+ measurements: PerformanceMetrics[];
80
+ };
81
+ /**
82
+ * Validates that all measurements meet performance criteria
83
+ */
84
+ static validateAllMeasurements(threshold?: keyof typeof PERFORMANCE_THRESHOLDS): void;
85
+ }