@allurereport/web-awesome 3.0.0 → 3.1.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 (146) hide show
  1. package/dist/multi/173.app-79c65c7bff941abcbc51.js +1 -0
  2. package/dist/multi/174.app-79c65c7bff941abcbc51.js +1 -0
  3. package/dist/multi/252.app-79c65c7bff941abcbc51.js +1 -0
  4. package/dist/multi/282.app-79c65c7bff941abcbc51.js +1 -0
  5. package/dist/multi/29.app-79c65c7bff941abcbc51.js +1 -0
  6. package/dist/multi/416.app-79c65c7bff941abcbc51.js +1 -0
  7. package/dist/multi/527.app-79c65c7bff941abcbc51.js +1 -0
  8. package/dist/multi/600.app-79c65c7bff941abcbc51.js +1 -0
  9. package/dist/multi/605.app-79c65c7bff941abcbc51.js +1 -0
  10. package/dist/multi/638.app-79c65c7bff941abcbc51.js +1 -0
  11. package/dist/multi/672.app-79c65c7bff941abcbc51.js +1 -0
  12. package/dist/multi/686.app-79c65c7bff941abcbc51.js +1 -0
  13. package/dist/multi/725.app-79c65c7bff941abcbc51.js +1 -0
  14. package/dist/multi/741.app-79c65c7bff941abcbc51.js +1 -0
  15. package/dist/multi/755.app-79c65c7bff941abcbc51.js +1 -0
  16. package/dist/multi/894.app-79c65c7bff941abcbc51.js +1 -0
  17. package/dist/multi/91.app-79c65c7bff941abcbc51.js +1 -0
  18. package/dist/multi/943.app-79c65c7bff941abcbc51.js +1 -0
  19. package/dist/multi/980.app-79c65c7bff941abcbc51.js +1 -0
  20. package/dist/multi/app-79c65c7bff941abcbc51.js +2 -0
  21. package/dist/multi/{app-9931797d1602fc52db5b.js.LICENSE.txt → app-79c65c7bff941abcbc51.js.LICENSE.txt} +7 -0
  22. package/dist/multi/manifest.json +21 -21
  23. package/dist/multi/styles-9e390bad7ce54a807a8e.css +49 -0
  24. package/dist/single/app-3ca67f29d0f1166c08ca.js +2 -0
  25. package/dist/single/{app-6199dc1c2fd3bddc2526.js.LICENSE.txt → app-3ca67f29d0f1166c08ca.js.LICENSE.txt} +7 -0
  26. package/dist/single/manifest.json +1 -1
  27. package/package.json +8 -8
  28. package/src/assets/scss/palette.scss +102 -102
  29. package/src/assets/scss/vars.scss +3 -0
  30. package/src/components/BaseLayout/index.tsx +25 -21
  31. package/src/components/BaseLayout/styles.scss +1 -0
  32. package/src/components/Charts/index.tsx +5 -2
  33. package/src/components/Footer/FooterVersion.tsx +14 -8
  34. package/src/components/Header/index.tsx +9 -7
  35. package/src/components/HeaderControls/index.tsx +5 -2
  36. package/src/components/MainReport/styles.scss +1 -0
  37. package/src/components/Metadata/index.tsx +24 -7
  38. package/src/components/ReportBody/HeaderActions.tsx +4 -13
  39. package/src/components/ReportBody/SortBy.tsx +28 -17
  40. package/src/components/ReportBody/index.tsx +12 -17
  41. package/src/components/ReportBody/styles.scss +4 -1
  42. package/src/components/ReportFilters/BaseFilters.tsx +345 -0
  43. package/src/components/ReportFilters/RetryFlaky.tsx +29 -0
  44. package/src/components/ReportFilters/TagsFilter.tsx +41 -0
  45. package/src/components/ReportFilters/TransitionFilter.tsx +49 -0
  46. package/src/components/ReportFilters/index.tsx +44 -0
  47. package/src/components/ReportFilters/styles.scss +55 -0
  48. package/src/components/ReportSearch/index.tsx +29 -0
  49. package/src/components/ReportTabs/index.tsx +37 -0
  50. package/src/components/SectionPicker/index.tsx +1 -1
  51. package/src/components/SplitLayout/index.tsx +7 -5
  52. package/src/components/TestResult/TestStepsEmpty/index.tsx +1 -7
  53. package/src/components/TestResult/TrEmpty/index.tsx +1 -7
  54. package/src/components/TestResult/TrEnvironmentItem/index.tsx +2 -2
  55. package/src/components/TestResult/TrError/index.tsx +9 -2
  56. package/src/components/TestResult/TrHeader/TrBreadcrumbs.tsx +2 -2
  57. package/src/components/TestResult/TrHistory/TrHistoryItem.tsx +38 -7
  58. package/src/components/TestResult/TrHistory/index.tsx +18 -8
  59. package/src/components/TestResult/TrHistory/styles.scss +4 -7
  60. package/src/components/TestResult/TrInfo/styles.scss +1 -0
  61. package/src/components/TestResult/TrNavigation/index.tsx +109 -68
  62. package/src/components/TestResult/TrNavigation/styles.scss +15 -25
  63. package/src/components/TestResult/TrPwTraces/PwTraceButton.tsx +1 -8
  64. package/src/components/TestResult/TrRetriesView/TrRetriesItem.tsx +2 -3
  65. package/src/components/TestResult/TrRetriesView/index.tsx +4 -3
  66. package/src/components/TestResult/TrSteps/TrAttachment.tsx +5 -3
  67. package/src/components/TestResult/TrSteps/TrAttachmentInfo.tsx +10 -3
  68. package/src/components/TestResult/TrSteps/TrStep.tsx +3 -3
  69. package/src/components/TestResult/TrTabs/index.tsx +7 -23
  70. package/src/components/TestResult/index.tsx +9 -4
  71. package/src/components/TestResult/styles.scss +1 -0
  72. package/src/components/Tree/index.tsx +22 -25
  73. package/src/index.html +19 -18
  74. package/src/index.tsx +20 -28
  75. package/src/locales/az.json +42 -12
  76. package/src/locales/de.json +42 -12
  77. package/src/locales/en.json +42 -12
  78. package/src/locales/es.json +42 -12
  79. package/src/locales/fr.json +42 -12
  80. package/src/locales/he.json +42 -12
  81. package/src/locales/hy.json +42 -12
  82. package/src/locales/it.json +42 -12
  83. package/src/locales/ja.json +42 -12
  84. package/src/locales/ka.json +42 -12
  85. package/src/locales/kr.json +42 -12
  86. package/src/locales/nl.json +42 -12
  87. package/src/locales/pl.json +42 -12
  88. package/src/locales/pt.json +42 -12
  89. package/src/locales/ru.json +42 -12
  90. package/src/locales/sv.json +42 -12
  91. package/src/locales/tr.json +42 -12
  92. package/src/locales/ua.json +42 -12
  93. package/src/locales/zh.json +42 -12
  94. package/src/stores/chart.ts +2 -2
  95. package/src/stores/env.ts +6 -6
  96. package/src/stores/envInfo.ts +2 -2
  97. package/src/stores/globals.ts +1 -1
  98. package/src/stores/index.ts +0 -1
  99. package/src/stores/layout.ts +20 -11
  100. package/src/stores/locale.ts +2 -1
  101. package/src/stores/qualityGate.ts +2 -2
  102. package/src/stores/router.ts +25 -91
  103. package/src/stores/sections.ts +32 -45
  104. package/src/stores/stats.ts +4 -4
  105. package/src/stores/testResult.ts +5 -0
  106. package/src/stores/testResults.ts +7 -5
  107. package/src/stores/tree.ts +49 -126
  108. package/src/stores/treeFilters/actions.ts +63 -0
  109. package/src/stores/treeFilters/constants.ts +13 -0
  110. package/src/stores/treeFilters/model.ts +51 -0
  111. package/src/stores/treeFilters/store.ts +273 -0
  112. package/src/stores/treeFilters/utils.ts +132 -0
  113. package/src/stores/treeSort.ts +71 -0
  114. package/src/stores/variables.ts +3 -3
  115. package/src/utils/persist.ts +23 -0
  116. package/src/utils/tree.ts +12 -5
  117. package/src/utils/treeFilters.ts +48 -54
  118. package/test/components/Header.test.tsx +49 -58
  119. package/test/utils/treeFilters.test.ts +18 -176
  120. package/types.d.ts +4 -1
  121. package/dist/multi/173.app-9931797d1602fc52db5b.js +0 -1
  122. package/dist/multi/174.app-9931797d1602fc52db5b.js +0 -1
  123. package/dist/multi/252.app-9931797d1602fc52db5b.js +0 -1
  124. package/dist/multi/282.app-9931797d1602fc52db5b.js +0 -1
  125. package/dist/multi/29.app-9931797d1602fc52db5b.js +0 -1
  126. package/dist/multi/416.app-9931797d1602fc52db5b.js +0 -1
  127. package/dist/multi/527.app-9931797d1602fc52db5b.js +0 -1
  128. package/dist/multi/600.app-9931797d1602fc52db5b.js +0 -1
  129. package/dist/multi/605.app-9931797d1602fc52db5b.js +0 -1
  130. package/dist/multi/638.app-9931797d1602fc52db5b.js +0 -1
  131. package/dist/multi/672.app-9931797d1602fc52db5b.js +0 -1
  132. package/dist/multi/686.app-9931797d1602fc52db5b.js +0 -1
  133. package/dist/multi/725.app-9931797d1602fc52db5b.js +0 -1
  134. package/dist/multi/741.app-9931797d1602fc52db5b.js +0 -1
  135. package/dist/multi/755.app-9931797d1602fc52db5b.js +0 -1
  136. package/dist/multi/894.app-9931797d1602fc52db5b.js +0 -1
  137. package/dist/multi/91.app-9931797d1602fc52db5b.js +0 -1
  138. package/dist/multi/943.app-9931797d1602fc52db5b.js +0 -1
  139. package/dist/multi/980.app-9931797d1602fc52db5b.js +0 -1
  140. package/dist/multi/app-9931797d1602fc52db5b.js +0 -2
  141. package/dist/multi/styles-8fe37354d1c2270c691e.css +0 -48
  142. package/dist/single/app-6199dc1c2fd3bddc2526.js +0 -2
  143. package/src/components/ReportBody/Filters.tsx +0 -71
  144. package/src/components/Tabs/index.tsx +0 -62
  145. package/src/stores/theme.ts +0 -30
  146. /package/src/components/{Tabs → ReportTabs}/styles.scss +0 -0
@@ -8,3 +8,10 @@
8
8
  * @namespace
9
9
  * @public
10
10
  */
11
+
12
+ /**!
13
+ * Sortable 1.15.6
14
+ * @author RubaXa <trash@rubaxa.org>
15
+ * @author owenm <owen23355@gmail.com>
16
+ * @license MIT
17
+ */
@@ -1,3 +1,3 @@
1
1
  {
2
- "main.js": "app-6199dc1c2fd3bddc2526.js"
2
+ "main.js": "app-3ca67f29d0f1166c08ca.js"
3
3
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@allurereport/web-awesome",
3
- "version": "3.0.0",
3
+ "version": "3.1.0",
4
4
  "description": "The static files for Allure Awesome Report",
5
5
  "keywords": [
6
6
  "allure",
@@ -31,17 +31,17 @@
31
31
  "IE 11"
32
32
  ],
33
33
  "dependencies": {
34
- "@allurereport/charts-api": "3.0.0",
35
- "@allurereport/core-api": "3.0.0",
36
- "@allurereport/plugin-api": "3.0.0",
37
- "@allurereport/web-commons": "3.0.0",
38
- "@allurereport/web-components": "3.0.0",
39
- "@preact/signals": "^1.3.0",
34
+ "@allurereport/charts-api": "3.1.0",
35
+ "@allurereport/core-api": "3.1.0",
36
+ "@allurereport/plugin-api": "3.1.0",
37
+ "@allurereport/web-commons": "3.1.0",
38
+ "@allurereport/web-components": "3.1.0",
39
+ "@preact/signals": "^2.6.1",
40
40
  "clsx": "^2.1.1",
41
41
  "d3-shape": "^3.2.0",
42
42
  "i18next": "^24.0.2",
43
43
  "md5": "^2.3.0",
44
- "preact": "^10.24.0",
44
+ "preact": "^10.28.2",
45
45
  "prismjs": "^1.30.0",
46
46
  "reset.css": "^2.0.2"
47
47
  },
@@ -98,13 +98,13 @@
98
98
  --gray-neutral-0: #ffffffff;
99
99
  --gray-neutral-alpha-day-25: #36799b08;
100
100
  --gray-neutral-alpha-day-50: #1d4f810a;
101
- --gray-neutral-alpha-day-75: #1658790f;
101
+ --gray-neutral-alpha-day-75: #165879f;
102
102
  --gray-neutral-alpha-day-100: #1d4f8114;
103
103
  --gray-neutral-alpha-day-150: #1a4c751a;
104
104
  --gray-neutral-alpha-day-200: #092f5d21;
105
105
  --gray-neutral-alpha-day-250: #0b305629;
106
106
  --gray-neutral-alpha-day-300: #05264d3d;
107
- --gray-neutral-alpha-day-350: #07254654;
107
+ --gray-neutral-alpha-day-350: #072546547;
108
108
  --gray-neutral-alpha-day-400: #031c3a6b;
109
109
  --gray-neutral-alpha-day-450: #0316308f;
110
110
  --gray-neutral-alpha-day-500: #02132c99;
@@ -124,7 +124,7 @@
124
124
  --gray-neutral-alpha-night-200: #f5f9ffe8;
125
125
  --gray-neutral-alpha-night-250: #f2f7fde3;
126
126
  --gray-neutral-alpha-night-300: #ecf4fdd1;
127
- --gray-neutral-alpha-night-350: #e3effdbd;
127
+ --gray-neutral-alpha-night-350: #e3efffbd;
128
128
  --gray-neutral-alpha-night-400: #deecfca6;
129
129
  --gray-neutral-alpha-night-450: #d2e4fe80;
130
130
  --gray-neutral-alpha-night-500: #d1e5ff73;
@@ -138,69 +138,69 @@
138
138
  --gray-neutral-alpha-night-950: #769ac108;
139
139
  --gray-neutral-alpha-day-850: #000714db;
140
140
  --gray-neutral-alpha-night-850: #afc5f31f;
141
- --capella-day-base: #eb5c46ff;
142
- --capella-day-darken-1: #e8452cff;
143
- --capella-day-darken-2: #df3319ff;
144
- --capella-day-darken-3: #cf2f17ff;
145
- --capella-day-darken-4: #c62e16ff;
146
- --capella-day-darken-5: #ba2b15ff;
147
- --capella-day-darken-6: #a52612ff;
148
- --capella-night-base: #ff8c7aff;
149
- --capella-night-darken-1: #ff6b55ff;
150
- --capella-night-darken-2: #f66751ff;
151
- --capella-night-darken-3: #ff4b2fff;
152
- --capella-night-darken-4: #f44c32ff;
153
- --capella-night-darken-5: #e8452cff;
154
- --capella-night-darken-6: #df3319ff;
155
- --capella-night-darken-7: #c62e16ff;
156
- --capella-day-darken-1-8: #e8452c14;
157
- --capella-night-darken-5-12: #e8452c1f;
158
- --capella-day-darken-1-16: #e8452c29;
159
- --capella-day-darken-1-24: #e8452c3d;
160
- --capella-night-darken-5-20: #e8452c33;
161
- --capella-night-darken-5-28: #e8452c47;
162
- --gliese-day-base: #eb4672ff;
163
- --gliese-day-darken-1: #e82b5eff;
164
- --gliese-day-darken-2: #df194eff;
165
- --gliese-day-darken-3: #cf1648ff;
166
- --gliese-day-darken-4: #c61645ff;
167
- --gliese-day-darken-5: #bb1440ff;
168
- --gliese-day-darken-6: #a61139ff;
169
- --gliese-day-darken-1-8: #e82b5e14;
170
- --gliese-day-darken-1-16: #e82b5e29;
171
- --gliese-day-darken-1-24: #e82b5e3d;
172
- --gliese-night-base: #ff7a9eff;
173
- --gliese-night-darken-1: #ff5582ff;
174
- --gliese-night-darken-2: #f6517dff;
175
- --gliese-night-darken-3: #ff2f66ff;
176
- --gliese-night-darken-4: #f43265ff;
177
- --gliese-night-darken-5: #e82c5eff;
178
- --gliese-night-darken-6: #df194eff;
179
- --gliese-night-darken-7: #c61645ff;
180
- --gliese-night-darken-5-12: #e82c5e1f;
181
- --gliese-night-darken-5-20: #e82c5e33;
182
- --gliese-night-darken-5-28: #e82c5e47;
183
- --antares-day-base: #eb468bff;
184
- --antares-day-darken-1: #e82c7aff;
185
- --antares-day-darken-2: #df196bff;
186
- --antares-day-darken-3: #cf1764ff;
187
- --antares-day-darken-4: #c6165fff;
188
- --antares-day-darken-5: #ba155aff;
189
- --antares-day-darken-6: #a51250ff;
190
- --antares-day-darken-1-8: #e82c7a14;
191
- --antares-day-darken-1-16: #e82c7a29;
192
- --antares-day-darken-1-24: #e82c7a3d;
193
- --antares-night-base: #ff7ab1ff;
194
- --antares-night-darken-1: #ff559cff;
195
- --antares-night-darken-2: #f65195ff;
196
- --antares-night-darken-3: #ff2f86ff;
197
- --antares-night-darken-4: #f43283ff;
198
- --antares-night-darken-5: #e82c7aff;
199
- --antares-night-darken-6: #df196bff;
200
- --antares-night-darken-7: #c6165fff;
201
- --antares-night-darken-5-12: #e82c7a1f;
202
- --antares-night-darken-5-20: #e82c7a33;
203
- --antares-night-darken-5-28: #e82c7a47;
141
+ --capella-day-base: #eb5146ff;
142
+ --capella-day-darken-1: #e8392cff;
143
+ --capella-day-darken-2: #df2619ff;
144
+ --capella-day-darken-3: #cf2317ff;
145
+ --capella-day-darken-4: #c62216ff;
146
+ --capella-day-darken-5: #ba2015ff;
147
+ --capella-day-darken-6: #a51c12ff;
148
+ --capella-night-base: #ff584dff;
149
+ --capella-night-darken-1: #f55c51ff;
150
+ --capella-night-darken-2: #ff392bff;
151
+ --capella-night-darken-3: #f34033ff;
152
+ --capella-night-darken-4: #e8392cff;
153
+ --capella-night-darken-5: #ff1b0aff;
154
+ --capella-night-darken-6: #df2619ff;
155
+ --capella-night-darken-7: #c62216ff;
156
+ --capella-day-darken-1-8: #e8392c14;
157
+ --capella-night-darken-4-12: #e8392c1f;
158
+ --capella-day-darken-1-16: #e8392c29;
159
+ --capella-day-darken-1-24: #e8392c3d;
160
+ --capella-night-darken-4-20: #e8392c33;
161
+ --capella-night-darken-4-28: #e8392c47;
162
+ --gliese-day-base: #eb467dff;
163
+ --gliese-day-darken-1: #e82c6aff;
164
+ --gliese-day-darken-2: #df195bff;
165
+ --gliese-day-darken-3: #cf1753ff;
166
+ --gliese-day-darken-4: #c61651ff;
167
+ --gliese-day-darken-5: #ba154cff;
168
+ --gliese-day-darken-6: #a51243ff;
169
+ --gliese-day-darken-1-8: #e82c6a14;
170
+ --gliese-day-darken-1-16: #e82c6a29;
171
+ --gliese-day-darken-1-24: #e82c6a3d;
172
+ --gliese-night-base: #ff4d87ff;
173
+ --gliese-night-darken-1: #f55187ff;
174
+ --gliese-night-darken-2: #ff2b72ff;
175
+ --gliese-night-darken-3: #f33373ff;
176
+ --gliese-night-darken-4: #e82c6aff;
177
+ --gliese-night-darken-5: #ff0a5cff;
178
+ --gliese-night-darken-6: #df195bff;
179
+ --gliese-night-darken-7: #c61651ff;
180
+ --gliese-night-darken-4-12: #e82c6a1f;
181
+ --gliese-night-darken-4-20: #e82c6a33;
182
+ --gliese-night-darken-4-28: #e82c6a47;
183
+ --antares-day-base: #e846ebff;
184
+ --antares-day-darken-1: #e42ce8ff;
185
+ --antares-day-darken-2: #dc19dfff;
186
+ --antares-day-darken-3: #cb17cfff;
187
+ --antares-day-darken-4: #c316c6ff;
188
+ --antares-day-darken-5: #b715baff;
189
+ --antares-day-darken-6: #a312a5ff;
190
+ --antares-day-darken-1-8: #e42ce814;
191
+ --antares-day-darken-1-16: #e42ce829;
192
+ --antares-day-darken-1-24: #e42ce83d;
193
+ --antares-night-base: #fc4dffff;
194
+ --antares-night-darken-1: #f251f5ff;
195
+ --antares-night-darken-2: #fb2bffff;
196
+ --antares-night-darken-3: #f033f3ff;
197
+ --antares-night-darken-4: #e52ce8ff;
198
+ --antares-night-darken-5: #fb0affff;
199
+ --antares-night-darken-6: #dc19dfff;
200
+ --antares-night-darken-7: #c316c6ff;
201
+ --antares-night-darken-4-12: #e52ce81f;
202
+ --antares-night-darken-4-20: #e52ce833;
203
+ --antares-night-darken-4-28: #e52ce847;
204
204
  --atlas-day-base: #eb9b46ff;
205
205
  --atlas-day-darken-1: #e88d2cff;
206
206
  --atlas-day-darken-2: #df7f19ff;
@@ -211,17 +211,17 @@
211
211
  --atlas-day-darken-1-8: #e88d2c14;
212
212
  --atlas-day-darken-1-16: #e88d2c29;
213
213
  --atlas-day-darken-1-24: #e88d2c3d;
214
- --atlas-night-base: #ffbf7aff;
215
- --atlas-night-darken-1: #ffad55ff;
216
- --atlas-night-darken-2: #f6a651ff;
217
- --atlas-night-darken-3: #ff9a2fff;
218
- --atlas-night-darken-4: #f49632ff;
219
- --atlas-night-darken-5: #e88d2cff;
214
+ --atlas-night-base: #ffa94dff;
215
+ --atlas-night-darken-1: #f6a651ff;
216
+ --atlas-night-darken-2: #ff992bff;
217
+ --atlas-night-darken-3: #f49632ff;
218
+ --atlas-night-darken-4: #e88d2cff;
219
+ --atlas-night-darken-5: #ff890aff;
220
220
  --atlas-night-darken-6: #df7f19ff;
221
221
  --atlas-night-darken-7: #c67116ff;
222
- --atlas-night-darken-5-12: #e88d2c1f;
223
- --atlas-night-darken-5-20: #e88d2c33;
224
- --atlas-night-darken-5-28: #e88d2c47;
222
+ --atlas-night-darken-4-12: #e88d2c1f;
223
+ --atlas-night-darken-4-20: #e88d2c33;
224
+ --atlas-night-darken-4-28: #e88d2c47;
225
225
  --rigel-day-base: #ebc746ff;
226
226
  --rigel-day-darken-1: #e8bf2cff;
227
227
  --rigel-day-darken-2: #dfb419ff;
@@ -232,17 +232,17 @@
232
232
  --rigel-day-darken-1-8: #e8bf2c14;
233
233
  --rigel-day-darken-1-16: #e8bf2c29;
234
234
  --rigel-day-darken-1-24: #e8bf2c3d;
235
- --rigel-night-base: #ffe27aff;
236
- --rigel-night-darken-1: #ffda55ff;
237
- --rigel-night-darken-2: #f6d251ff;
238
- --rigel-night-darken-3: #ffd22fff;
239
- --rigel-night-darken-4: #f4ca32ff;
240
- --rigel-night-darken-5: #e8bf2cff;
235
+ --rigel-night-base: #ffd84dff;
236
+ --rigel-night-darken-1: #f6d251ff;
237
+ --rigel-night-darken-2: #ffd12bff;
238
+ --rigel-night-darken-3: #f4ca32ff;
239
+ --rigel-night-darken-4: #e8bf2cff;
240
+ --rigel-night-darken-5: #ffca0aff;
241
241
  --rigel-night-darken-6: #dfb419ff;
242
242
  --rigel-night-darken-7: #c6a016ff;
243
- --rigel-night-darken-5-12: #e8bf2c1f;
244
- --rigel-night-darken-5-20: #e8bf2c33;
245
- --rigel-night-darken-5-28: #e8bf2c47;
243
+ --rigel-night-darken-4-12: #e8bf2c1f;
244
+ --rigel-night-darken-4-20: #e8bf2c33;
245
+ --rigel-night-darken-4-28: #e8bf2c47;
246
246
  --castor-day-base: #09a232ff;
247
247
  --castor-day-darken-1: #099337ff;
248
248
  --castor-day-darken-2: #098632ff;
@@ -253,9 +253,9 @@
253
253
  --castor-day-darken-1-8: #09933714;
254
254
  --castor-day-darken-1-16: #09933729;
255
255
  --castor-day-darken-1-24: #0993373d;
256
- --castor-night-base: #40dd75ff;
257
- --castor-night-darken-1: #28d963ff;
258
- --castor-night-darken-2: #22c258ff;
256
+ --castor-night-base: #45e57bff;
257
+ --castor-night-darken-1: #2ae167ff;
258
+ --castor-night-darken-2: #1ecf59ff;
259
259
  --castor-night-darken-3: #40bf6aff;
260
260
  --castor-night-darken-4: #39ac60ff;
261
261
  --castor-night-darken-5: #29a352ff;
@@ -274,9 +274,9 @@
274
274
  --mirach-day-darken-1-8: #09937814;
275
275
  --mirach-day-darken-1-16: #09937829;
276
276
  --mirach-day-darken-1-24: #0993783d;
277
- --mirach-night-base: #40ddbeff;
278
- --mirach-night-darken-1: #28d9b6ff;
279
- --mirach-night-darken-2: #22c2a2ff;
277
+ --mirach-night-base: #45e5c5ff;
278
+ --mirach-night-darken-1: #2ae1bcff;
279
+ --mirach-night-darken-2: #1ecfacff;
280
280
  --mirach-night-darken-3: #40bfa6ff;
281
281
  --mirach-night-darken-4: #39ac95ff;
282
282
  --mirach-night-darken-5: #29a38bff;
@@ -295,10 +295,10 @@
295
295
  --aldebaran-day-darken-1-8: #2c67e814;
296
296
  --aldebaran-day-darken-1-16: #2c67e829;
297
297
  --aldebaran-day-darken-1-24: #2c67e83d;
298
- --aldebaran-night-base: #99bdffff;
299
- --aldebaran-night-darken-1: #70a2ffff;
298
+ --aldebaran-night-base: #7aa8ffff;
299
+ --aldebaran-night-darken-1: #5590ffff;
300
300
  --aldebaran-night-darken-2: #518af6ff;
301
- --aldebaran-night-darken-3: #4788ffff;
301
+ --aldebaran-night-darken-3: #2f78ffff;
302
302
  --aldebaran-night-darken-4: #3276f4ff;
303
303
  --aldebaran-night-darken-5: #2c6de8ff;
304
304
  --aldebaran-night-darken-6: #195edfff;
@@ -316,10 +316,10 @@
316
316
  --sirius-day-darken-1-8: #2c99e814;
317
317
  --sirius-day-darken-1-16: #2c99e829;
318
318
  --sirius-day-darken-1-24: #2c99e83d;
319
- --sirius-night-base: #99d4ffff;
320
- --sirius-night-darken-1: #70c4ffff;
319
+ --sirius-night-base: #7ac7ffff;
320
+ --sirius-night-darken-1: #55b8ffff;
321
321
  --sirius-night-darken-2: #51b0f6ff;
322
- --sirius-night-darken-3: #47b3ffff;
322
+ --sirius-night-darken-3: #2fa8ffff;
323
323
  --sirius-night-darken-4: #32a3f4ff;
324
324
  --sirius-night-darken-5: #2c99e8ff;
325
325
  --sirius-night-darken-6: #198cdfff;
@@ -337,10 +337,10 @@
337
337
  --betelgeuse-day-darken-1-8: #7a2ce814;
338
338
  --betelgeuse-day-darken-1-16: #7a2ce829;
339
339
  --betelgeuse-day-darken-1-24: #7a2ce83d;
340
- --betelgeuse-night-base: #c399ffff;
341
- --betelgeuse-night-darken-1: #ac70ffff;
340
+ --betelgeuse-night-base: #b17affff;
341
+ --betelgeuse-night-darken-1: #9c55ffff;
342
342
  --betelgeuse-night-darken-2: #9551f6ff;
343
- --betelgeuse-night-darken-3: #9447ffff;
343
+ --betelgeuse-night-darken-3: #862fffff;
344
344
  --betelgeuse-night-darken-4: #8332f4ff;
345
345
  --betelgeuse-night-darken-5: #7a2ce8ff;
346
346
  --betelgeuse-night-darken-6: #6b19dfff;
@@ -358,10 +358,10 @@
358
358
  --skat-day-darken-1-8: #b92ce814;
359
359
  --skat-day-darken-1-16: #b92ce829;
360
360
  --skat-day-darken-1-24: #b92ce83d;
361
- --skat-night-base: #e599ffff;
362
- --skat-night-darken-1: #db70ffff;
361
+ --skat-night-base: #dd7affff;
362
+ --skat-night-darken-1: #d455ffff;
363
363
  --skat-night-darken-2: #cc51f6ff;
364
- --skat-night-darken-3: #d147ffff;
364
+ --skat-night-darken-3: #cb2fffff;
365
365
  --skat-night-darken-4: #c432f4ff;
366
366
  --skat-night-darken-5: #b82ce8ff;
367
367
  --skat-night-darken-6: #ae19dfff;
@@ -1,6 +1,9 @@
1
1
  :root {
2
2
  --shadow-small: 0px 2px 10px 0px rgba(48, 57, 64, 0.08);
3
+ --shadow-small-01: 0px 1px 2px 0px rgba(16, 24, 40, 0.1);
4
+ --shadow-small-02: 0px 1px 3px 0px rgba(16, 24, 40, 0.06);
3
5
  --shadow-medium: 0px 8px 24px 0px rgba(48, 57, 64, 0.12);
6
+ --shadow-large: 0px 2px 24px 0px rgba(48, 57, 64, 0.12);
4
7
  --shadow-raised: 0px 2px 6px 0px rgba(48, 57, 64, 0.08);
5
8
 
6
9
  --color-change-transition-duration: 0.15s;
@@ -1,7 +1,7 @@
1
1
  import { Loadable, PageLoader } from "@allurereport/web-components";
2
2
  import MainReport from "@/components/MainReport";
3
3
  import TestResult from "@/components/TestResult";
4
- import { route } from "@/stores/router";
4
+ import { testResultRoute } from "@/stores/router";
5
5
  import { testResultStore } from "@/stores/testResults";
6
6
  import { treeStore } from "@/stores/tree";
7
7
  import * as styles from "./styles.scss";
@@ -11,30 +11,34 @@ export type BaseLayoutProps = {
11
11
  };
12
12
 
13
13
  export const BaseLayout = () => {
14
- const testResultId = route.value.params?.testResultId ?? null;
14
+ const { matches, params } = testResultRoute.value;
15
15
 
16
- const content = testResultId ? (
17
- <Loadable
18
- source={testResultStore}
19
- renderLoader={() => <PageLoader />}
20
- transformData={(data) => data[testResultId]}
21
- renderData={(testResult) => (
22
- <>
23
- <div className={styles.wrapper} key={testResult?.id}>
24
- <TestResult testResult={testResult} />
25
- </div>
26
- </>
27
- )}
28
- />
29
- ) : (
30
- <div className={styles.wrapper}>
31
- <Loadable source={treeStore} renderLoader={() => <PageLoader />} renderData={() => <MainReport />} />
32
- </div>
33
- );
16
+ if (matches) {
17
+ const testResultId = params.testResultId;
18
+
19
+ return (
20
+ <div className={styles.layout} data-testid="base-layout">
21
+ <Loadable
22
+ source={testResultStore}
23
+ renderLoader={() => <PageLoader />}
24
+ transformData={(data) => data[testResultId]}
25
+ renderData={(testResult) => (
26
+ <>
27
+ <div className={styles.wrapper} key={testResult?.id}>
28
+ <TestResult testResult={testResult} />
29
+ </div>
30
+ </>
31
+ )}
32
+ />
33
+ </div>
34
+ );
35
+ }
34
36
 
35
37
  return (
36
38
  <div className={styles.layout} data-testid="base-layout">
37
- {content}
39
+ <div className={styles.wrapper}>
40
+ <Loadable source={treeStore} renderLoader={() => <PageLoader />} renderData={() => <MainReport />} />
41
+ </div>
38
42
  </div>
39
43
  );
40
44
  };
@@ -6,6 +6,7 @@
6
6
  font-size: 14px;
7
7
  height: 100%;
8
8
  overflow: auto;
9
+ scrollbar-width: thin;
9
10
  }
10
11
 
11
12
  .wrapper {
@@ -1,6 +1,7 @@
1
1
  /* eslint-disable @typescript-eslint/no-unsafe-argument */
2
2
  import { ChartType } from "@allurereport/charts-api";
3
3
  import { type UIChartData } from "@allurereport/web-commons";
4
+ import { themeStore } from "@allurereport/web-commons";
4
5
  import {
5
6
  CurrentStatusChartWidget,
6
7
  DurationDynamicsChartWidget,
@@ -20,13 +21,15 @@ import {
20
21
  TrSeveritiesChartWidget,
21
22
  TreeMapChartWidget,
22
23
  } from "@allurereport/web-components";
24
+ import { computed } from "@preact/signals";
23
25
  import { useEffect } from "preact/hooks";
24
- import { themeStore } from "@/stores";
25
26
  import { chartsStore, fetchChartsData } from "@/stores/chart";
26
27
  import { currentEnvironment } from "@/stores/env";
27
28
  import { useI18n } from "@/stores/locale";
28
29
  import * as styles from "./styles.scss";
29
30
 
31
+ const currentTheme = computed(() => themeStore.value.current);
32
+
30
33
  const getChartWidgetByType = (
31
34
  chartData: UIChartData,
32
35
  { t, empty }: Record<string, (key: string, options?: any) => string>,
@@ -210,7 +213,7 @@ export const Charts = () => {
210
213
  }, []);
211
214
 
212
215
  return (
213
- <ThemeProvider theme={themeStore.value}>
216
+ <ThemeProvider theme={currentTheme.value}>
214
217
  <Loadable
215
218
  source={chartsStore}
216
219
  renderLoader={() => <PageLoader />}
@@ -1,23 +1,29 @@
1
1
  import { getReportOptions } from "@allurereport/web-commons";
2
2
  import { Text } from "@allurereport/web-components";
3
- import { useEffect, useState } from "preact/hooks";
3
+ import { useState } from "preact/hooks";
4
4
  import type { AwesomeReportOptions } from "types";
5
5
  import { currentLocaleIso } from "@/stores";
6
6
  import * as styles from "./styles.scss";
7
7
 
8
8
  export const FooterVersion = () => {
9
- const [createdAt, setCreatedAt] = useState<number | null>(null);
10
- const [currentVersion, setCurrentVersion] = useState<string>();
11
-
12
- useEffect(() => {
9
+ const [createdAt] = useState(() => {
13
10
  const reportOptions = getReportOptions<AwesomeReportOptions>();
14
11
  if (reportOptions?.createdAt) {
15
- setCreatedAt(Number(reportOptions.createdAt));
12
+ return Number(reportOptions.createdAt);
16
13
  }
14
+
15
+ return undefined;
16
+ });
17
+
18
+ const [currentVersion] = useState<string>(() => {
19
+ const reportOptions = getReportOptions<AwesomeReportOptions>();
20
+
17
21
  if (reportOptions?.allureVersion) {
18
- setCurrentVersion(reportOptions.allureVersion as string);
22
+ return reportOptions.allureVersion as string;
19
23
  }
20
- }, []);
24
+
25
+ return undefined;
26
+ });
21
27
 
22
28
  const formattedCreatedAt = new Date(createdAt as number).toLocaleDateString(currentLocaleIso.value as string, {
23
29
  month: "numeric",
@@ -1,10 +1,11 @@
1
+ import { computed } from "@preact/signals";
1
2
  import type { ClassValue } from "clsx";
2
3
  import clsx from "clsx";
3
4
  import { HeaderControls } from "@/components/HeaderControls";
4
5
  import { SectionPicker } from "@/components/SectionPicker";
5
6
  import { TrBreadcrumbs } from "@/components/TestResult/TrHeader/TrBreadcrumbs";
6
- import { route } from "@/stores/router";
7
- import { availableSections } from "@/stores/sections";
7
+ import { testResultRoute } from "@/stores/router";
8
+ import { currentTrId } from "@/stores/testResult";
8
9
  import { testResultStore } from "@/stores/testResults";
9
10
  import { CiInfo } from "./CiInfo";
10
11
  import * as styles from "./styles.scss";
@@ -13,14 +14,15 @@ interface HeaderProps {
13
14
  className?: ClassValue;
14
15
  }
15
16
 
16
- export const Header = ({ className }: HeaderProps) => {
17
- const testResultId = route.value.params?.testResultId;
17
+ const isTestResultRoute = computed(() => testResultRoute.value.matches);
18
+ const testResult = computed(() => testResultStore.value?.data?.[currentTrId.value]);
18
19
 
20
+ export const Header = ({ className }: HeaderProps) => {
19
21
  return (
20
22
  <div className={clsx(styles.above, className)}>
21
- {Boolean(availableSections.value?.length) && <SectionPicker />}
22
- {!testResultId && <CiInfo />}
23
- {testResultId && <TrBreadcrumbs testResult={testResultStore.value?.data?.[testResultId]} />}
23
+ <SectionPicker />
24
+ {!isTestResultRoute.value && <CiInfo />}
25
+ {isTestResultRoute.value && <TrBreadcrumbs testResult={testResult.value} />}
24
26
  <HeaderControls className={styles.right} />
25
27
  </div>
26
28
  );
@@ -1,20 +1,23 @@
1
+ import { themeStore, toggleUserTheme } from "@allurereport/web-commons";
1
2
  import { LanguagePicker, ThemeButton } from "@allurereport/web-components";
3
+ import { computed } from "@preact/signals";
2
4
  import { EnvironmentPicker } from "@/components/EnvironmentPicker";
3
5
  import ToggleLayout from "@/components/ToggleLayout";
4
6
  import { currentLocale, setLocale } from "@/stores/locale";
5
- import { getTheme, themeStore, toggleTheme } from "@/stores/theme";
6
7
 
7
8
  interface HeaderControlsProps {
8
9
  className?: string;
9
10
  }
10
11
 
12
+ const selectedTheme = computed(() => themeStore.value.selected);
13
+
11
14
  export const HeaderControls = ({ className }: HeaderControlsProps) => {
12
15
  return (
13
16
  <div className={className}>
14
17
  <EnvironmentPicker />
15
18
  <LanguagePicker locale={currentLocale.value} setLocale={setLocale} />
16
19
  <ToggleLayout />
17
- <ThemeButton theme={themeStore.value} toggleTheme={toggleTheme} getTheme={getTheme} />
20
+ <ThemeButton theme={selectedTheme.value} toggleTheme={toggleUserTheme} />
18
21
  </div>
19
22
  );
20
23
  };
@@ -9,6 +9,7 @@
9
9
  overflow: auto;
10
10
  height: 100%;
11
11
  border-radius: 0;
12
+ scrollbar-width: thin;
12
13
  }
13
14
 
14
15
  .main-report-tabs {
@@ -1,10 +1,11 @@
1
- import { Button, Menu, Text, allureIcons } from "@allurereport/web-components";
1
+ import { Button, ButtonLink, Menu, Text, allureIcons } from "@allurereport/web-components";
2
2
  import clsx from "clsx";
3
3
  import type { FunctionalComponent } from "preact";
4
4
  import { useState } from "preact/hooks";
5
5
  import { MetadataButton } from "@/components/MetadataButton";
6
6
  import type { MetadataProps } from "@/components/ReportMetadata";
7
7
  import { useI18n } from "@/stores/locale";
8
+ import { getTagsFilterUrl } from "@/stores/treeFilters/utils";
8
9
  import { copyToClipboard } from "@/utils/copyToClipboard";
9
10
  import * as styles from "./styles.scss";
10
11
 
@@ -50,8 +51,22 @@ export const Metadata: FunctionalComponent<MetadataProps> = ({ envInfo }) => {
50
51
  );
51
52
  };
52
53
 
53
- const MetadataTooltip = (props: { value: string }) => {
54
- const { value } = props;
54
+ const OpenFilterUrlButton: FunctionalComponent<{ url: string }> = ({ url }) => {
55
+ const { t } = useI18n("filters");
56
+
57
+ return (
58
+ <ButtonLink
59
+ href={url}
60
+ target="_blank"
61
+ style="ghost"
62
+ icon={allureIcons.lineGeneralLinkExternal}
63
+ text={t("goto_filter")}
64
+ />
65
+ );
66
+ };
67
+
68
+ const MetadataTooltip = (props: { value: string; name: string }) => {
69
+ const { value, name } = props;
55
70
  const { t } = useI18n("ui");
56
71
 
57
72
  return (
@@ -59,6 +74,7 @@ const MetadataTooltip = (props: { value: string }) => {
59
74
  <div className={styles["metadata-tooltip-value"]}>
60
75
  <Text>{value}</Text>
61
76
  </div>
77
+ {name === "tag" && <OpenFilterUrlButton url={getTagsFilterUrl([value])} />}
62
78
  <Button
63
79
  style={"outline"}
64
80
  icon={allureIcons.lineGeneralCopy3}
@@ -70,9 +86,10 @@ const MetadataTooltip = (props: { value: string }) => {
70
86
  };
71
87
 
72
88
  const MetaDataKeyLabel: FunctionalComponent<{
89
+ name: string;
73
90
  size?: "s" | "m";
74
91
  value: string;
75
- }> = ({ size = "s", value }) => {
92
+ }> = ({ name, size = "s", value }) => {
76
93
  return (
77
94
  <Menu
78
95
  size="xl"
@@ -85,7 +102,7 @@ const MetaDataKeyLabel: FunctionalComponent<{
85
102
  )}
86
103
  >
87
104
  <Menu.Section>
88
- <MetadataTooltip value={value} />
105
+ <MetadataTooltip value={value} name={name} />
89
106
  </Menu.Section>
90
107
  </Menu>
91
108
  );
@@ -110,12 +127,12 @@ const MetadataKeyValue: FunctionalComponent<{
110
127
  {values?.length ? (
111
128
  <div className={styles["report-metadata-values"]} data-testid={"metadata-item-value"}>
112
129
  {values.map((item) => (
113
- <MetaDataKeyLabel key={item} value={item} />
130
+ <MetaDataKeyLabel key={item} value={item} name={title} />
114
131
  ))}
115
132
  </div>
116
133
  ) : (
117
134
  <div className={styles["report-metadata-values"]} data-testid={"metadata-item-value"}>
118
- <MetaDataKeyLabel value={value} />
135
+ <MetaDataKeyLabel value={value} name={title} />
119
136
  </div>
120
137
  )}
121
138
  </div>