@cypress-design/react-runresults 1.0.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.
@@ -0,0 +1,9 @@
1
+ 
2
+ ./index.ts → ./dist/index.umd.js, ./dist/index.es.mjs...
3
+ (!) Mixing named and default exports
4
+ https://rollupjs.org/configuration-options/#output-exports
5
+ The following entry modules are using named and default exports together:
6
+ index.ts
7
+
8
+ Consumers of your bundle will have to use chunk.default to access their default export, which may not be what you want. Use `output.exports: "named"` to disable this warning.
9
+ created ./dist/index.umd.js, ./dist/index.es.mjs in 9.4s
package/CHANGELOG.md ADDED
@@ -0,0 +1,12 @@
1
+ # @cypress-design/react-runresults
2
+
3
+ ## 1.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - [#676](https://github.com/cypress-io/cypress-design/pull/676) [`1531f94`](https://github.com/cypress-io/cypress-design/commit/1531f9439d73493e3eb08c72f41c0e7f0db958de) Thanks [@emilmilanov](https://github.com/emilmilanov)! - Add RunResults component — a pill of test-result counts (passed / failed / skipped / pending) with optional `flaky` and `self-healed` leading stats separated by a vertical divider. Each stat is an icon + count, optionally wrapped in a link (`links` prop or a custom `renderLink` callback) and an optional tooltip. Supports `light` and `dark` themes and an `expanded` mode that shows zero-count regular stats. Available for React and Vue with shared constants. See `components/RunResults/instructions.md` for the full props API.
8
+
9
+ ### Patch Changes
10
+
11
+ - Updated dependencies [[`1531f94`](https://github.com/cypress-io/cypress-design/commit/1531f9439d73493e3eb08c72f41c0e7f0db958de)]:
12
+ - @cypress-design/constants-runresults@1.0.0
package/RunResults.tsx ADDED
@@ -0,0 +1,274 @@
1
+ import * as React from 'react'
2
+ import clsx from 'clsx'
3
+ import StatusIcon from '@cypress-design/react-statusicon'
4
+ import {
5
+ IconStatusFlaky,
6
+ IconGeneralSparkleSingleSmall,
7
+ } from '@cypress-design/react-icon'
8
+ import Tooltip from '@cypress-design/react-tooltip'
9
+ import {
10
+ CssClasses,
11
+ CssTheme,
12
+ CssTooltipPopperDark,
13
+ CssTooltipPopperLight,
14
+ TooltipColorForTheme,
15
+ type RunResultsProps,
16
+ type RunResultsTheme,
17
+ type StatKey,
18
+ getSeparatorAfterKey,
19
+ getTooltipLabel,
20
+ getTooltipPlacement,
21
+ getFlakyTooltipText,
22
+ hasAnyStat,
23
+ showRegularStat,
24
+ statKeyToKebab,
25
+ statValue,
26
+ } from '@cypress-design/constants-runresults'
27
+
28
+ export type { RunResultsProps } from '@cypress-design/constants-runresults'
29
+
30
+ interface StatProps {
31
+ statKey: StatKey
32
+ count: number
33
+ link: string | undefined
34
+ renderLink: RunResultsProps['renderLink']
35
+ showTooltip: boolean
36
+ theme: RunResultsTheme
37
+ applySeparator: boolean
38
+ }
39
+
40
+ const Stat: React.FC<StatProps> = ({
41
+ statKey,
42
+ count,
43
+ link,
44
+ renderLink,
45
+ showTooltip,
46
+ theme,
47
+ applySeparator,
48
+ }) => {
49
+ const kebab = statKeyToKebab(statKey)
50
+ const isLinked = !!link
51
+ const label = getTooltipLabel(statKey, count, isLinked)
52
+
53
+ const icon = (() => {
54
+ if (statKey === 'flaky') {
55
+ return (
56
+ <IconStatusFlaky
57
+ size="12"
58
+ data-cy="status-icon-flaky"
59
+ className={CssClasses.iconFlaky}
60
+ />
61
+ )
62
+ }
63
+ if (statKey === 'selfHealed') {
64
+ return (
65
+ <IconGeneralSparkleSingleSmall
66
+ strokeColor="jade-400"
67
+ fillColor="jade-50"
68
+ data-cy="status-icon-self-healed"
69
+ className={CssClasses.iconSelfHealed}
70
+ />
71
+ )
72
+ }
73
+ return (
74
+ <StatusIcon
75
+ size="12"
76
+ status={statKey}
77
+ data-cy={`status-icon-${kebab}`}
78
+ className={CssClasses.icon}
79
+ />
80
+ )
81
+ })()
82
+
83
+ const inner = (
84
+ <>
85
+ {icon}
86
+ <span>{count}</span>
87
+ </>
88
+ )
89
+
90
+ const linkClasses = clsx(CssClasses.link, CssTheme[theme].link)
91
+ const unlinkedClasses = CssClasses.unlinked
92
+
93
+ let content: React.ReactNode
94
+ if (isLinked && link) {
95
+ if (renderLink) {
96
+ content = renderLink(link, inner) as React.ReactNode
97
+ } else {
98
+ content = (
99
+ <a
100
+ href={link}
101
+ aria-label={label}
102
+ data-cy={`link-${kebab}`}
103
+ className={linkClasses}
104
+ >
105
+ {inner}
106
+ </a>
107
+ )
108
+ }
109
+ } else {
110
+ content = <span className={unlinkedClasses}>{inner}</span>
111
+ }
112
+
113
+ const tooltipText = statKey === 'flaky' ? getFlakyTooltipText(count) : label
114
+
115
+ const wrappedContent = showTooltip ? (
116
+ <Tooltip
117
+ placement={getTooltipPlacement(statKey)}
118
+ color={TooltipColorForTheme[theme]}
119
+ popper={tooltipText}
120
+ popperClassName={
121
+ TooltipColorForTheme[theme] === 'dark'
122
+ ? CssTooltipPopperDark
123
+ : CssTooltipPopperLight
124
+ }
125
+ >
126
+ {content}
127
+ </Tooltip>
128
+ ) : (
129
+ content
130
+ )
131
+
132
+ return (
133
+ <li
134
+ data-cy={`total-${kebab}`}
135
+ className={clsx(
136
+ CssClasses.item,
137
+ applySeparator && CssClasses.separatorAfter,
138
+ applySeparator && CssTheme[theme].separator,
139
+ )}
140
+ >
141
+ {wrappedContent}
142
+ </li>
143
+ )
144
+ }
145
+
146
+ // `forwardRef` so a parent can attach a `ref` to the outer pill `<div>`,
147
+ // per architecture.md's documented API. Sibling `@cypress-design/react-textbox`
148
+ // follows the same pattern.
149
+ export const RunResults = React.forwardRef<
150
+ HTMLDivElement,
151
+ RunResultsProps &
152
+ Omit<React.HTMLAttributes<HTMLDivElement>, keyof RunResultsProps>
153
+ >(function RunResults(
154
+ {
155
+ passed,
156
+ failed,
157
+ skipped,
158
+ pending,
159
+ flaky,
160
+ selfHealed,
161
+ showSelfHealed = false,
162
+ theme = 'light',
163
+ expanded = false,
164
+ links,
165
+ renderLink,
166
+ showTooltip = true,
167
+ className,
168
+ ...rest
169
+ },
170
+ ref,
171
+ ) {
172
+ const summaryProps = {
173
+ passed,
174
+ failed,
175
+ skipped,
176
+ pending,
177
+ flaky,
178
+ selfHealed,
179
+ showSelfHealed,
180
+ expanded,
181
+ }
182
+
183
+ if (!hasAnyStat(summaryProps)) return null
184
+
185
+ const separatorAfterKey = getSeparatorAfterKey(summaryProps)
186
+ const showFlaky = statValue(flaky) > 0
187
+ // Self-healed renders whenever the flag is true; the count (0 included) is
188
+ // shown verbatim. See instructions.md / architecture.md for rationale.
189
+ const showSelfHealedStat = !!showSelfHealed
190
+
191
+ return (
192
+ <div
193
+ ref={ref}
194
+ {...rest}
195
+ // `data-cy` is set AFTER `{...rest}` so a consumer passing their own
196
+ // `data-cy` cannot override our fixed selector. This matches the Vue
197
+ // side and preserves the documented public test contract — see the
198
+ // `[data-cy="run-results"]` row in instructions.md.
199
+ data-cy="run-results"
200
+ className={clsx(CssClasses.container, className)}
201
+ >
202
+ <ul className={clsx(CssClasses.list, CssTheme[theme].list)}>
203
+ {showFlaky && (
204
+ <Stat
205
+ statKey="flaky"
206
+ count={statValue(flaky)}
207
+ link={links?.flaky}
208
+ renderLink={renderLink}
209
+ showTooltip={showTooltip}
210
+ theme={theme}
211
+ applySeparator={separatorAfterKey === 'flaky'}
212
+ />
213
+ )}
214
+ {showSelfHealedStat && (
215
+ <Stat
216
+ statKey="selfHealed"
217
+ count={statValue(selfHealed)}
218
+ link={links?.selfHealed}
219
+ renderLink={renderLink}
220
+ showTooltip={showTooltip}
221
+ theme={theme}
222
+ applySeparator={separatorAfterKey === 'selfHealed'}
223
+ />
224
+ )}
225
+ {showRegularStat(skipped, expanded) && (
226
+ <Stat
227
+ statKey="skipped"
228
+ count={statValue(skipped)}
229
+ link={links?.skipped}
230
+ renderLink={renderLink}
231
+ showTooltip={showTooltip}
232
+ theme={theme}
233
+ applySeparator={false}
234
+ />
235
+ )}
236
+ {showRegularStat(pending, expanded) && (
237
+ <Stat
238
+ statKey="pending"
239
+ count={statValue(pending)}
240
+ link={links?.pending}
241
+ renderLink={renderLink}
242
+ showTooltip={showTooltip}
243
+ theme={theme}
244
+ applySeparator={false}
245
+ />
246
+ )}
247
+ {showRegularStat(passed, expanded) && (
248
+ <Stat
249
+ statKey="passed"
250
+ count={statValue(passed)}
251
+ link={links?.passed}
252
+ renderLink={renderLink}
253
+ showTooltip={showTooltip}
254
+ theme={theme}
255
+ applySeparator={false}
256
+ />
257
+ )}
258
+ {showRegularStat(failed, expanded) && (
259
+ <Stat
260
+ statKey="failed"
261
+ count={statValue(failed)}
262
+ link={links?.failed}
263
+ renderLink={renderLink}
264
+ showTooltip={showTooltip}
265
+ theme={theme}
266
+ applySeparator={false}
267
+ />
268
+ )}
269
+ </ul>
270
+ </div>
271
+ )
272
+ })
273
+
274
+ export default RunResults
@@ -0,0 +1,30 @@
1
+ /// <reference types="cypress" />
2
+ import * as React from 'react'
3
+ import { mount } from 'cypress/react'
4
+ import { RunResults } from './RunResults'
5
+ import a11yAssertions from '../a11y-assertions'
6
+ import type { RunResultsProps } from '@cypress-design/constants-runresults'
7
+
8
+ function mountStory(props: Partial<RunResultsProps> = {}) {
9
+ mount(
10
+ <div className="p-8">
11
+ <RunResults
12
+ passed={props.passed ?? 0}
13
+ failed={props.failed ?? 0}
14
+ skipped={props.skipped ?? 0}
15
+ pending={props.pending ?? 0}
16
+ flaky={props.flaky}
17
+ selfHealed={props.selfHealed}
18
+ showSelfHealed={props.showSelfHealed}
19
+ theme={props.theme}
20
+ expanded={props.expanded}
21
+ links={props.links}
22
+ showTooltip={false}
23
+ />
24
+ </div>,
25
+ )
26
+ }
27
+
28
+ describe('<RunResults /> React — Accessibility', () => {
29
+ a11yAssertions(mountStory, 'react')
30
+ })
@@ -0,0 +1,45 @@
1
+ /// <reference types="cypress" />
2
+ import * as React from 'react'
3
+ import { mount } from 'cypress/react'
4
+ import { RunResults } from './RunResults'
5
+ import assertions from '../assertions'
6
+ import type { RunResultsProps } from '@cypress-design/constants-runresults'
7
+
8
+ function mountStory(props: Partial<RunResultsProps> = {}) {
9
+ mount(
10
+ <div className="p-8">
11
+ <RunResults
12
+ passed={props.passed ?? 0}
13
+ failed={props.failed ?? 0}
14
+ skipped={props.skipped ?? 0}
15
+ pending={props.pending ?? 0}
16
+ flaky={props.flaky}
17
+ selfHealed={props.selfHealed}
18
+ showSelfHealed={props.showSelfHealed}
19
+ theme={props.theme}
20
+ expanded={props.expanded}
21
+ links={props.links}
22
+ renderLink={props.renderLink}
23
+ showTooltip={props.showTooltip}
24
+ />
25
+ </div>,
26
+ )
27
+ }
28
+
29
+ describe('<RunResults /> React', () => {
30
+ assertions(mountStory, 'react')
31
+
32
+ it('renders a custom link via renderLink', () => {
33
+ mountStory({
34
+ passed: 22,
35
+ failed: 0,
36
+ skipped: 0,
37
+ pending: 0,
38
+ links: { passed: '#passed' },
39
+ renderLink: (href, children) => (
40
+ <button data-href={href}>{children as React.ReactNode}</button>
41
+ ),
42
+ })
43
+ cy.get('button[data-href="#passed"]').should('exist')
44
+ })
45
+ })
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+ import { type RunResultsProps } from '@cypress-design/constants-runresults';
3
+ export type { RunResultsProps } from '@cypress-design/constants-runresults';
4
+ export declare const RunResults: React.ForwardRefExoticComponent<RunResultsProps & Omit<React.HTMLAttributes<HTMLDivElement>, keyof RunResultsProps> & React.RefAttributes<HTMLDivElement>>;
5
+ export default RunResults;
6
+ //# sourceMappingURL=RunResults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunResults.d.ts","sourceRoot":"./","sources":["RunResults.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAQ9B,OAAO,EAML,KAAK,eAAe,EAWrB,MAAM,sCAAsC,CAAA;AAE7C,YAAY,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAA;AAyH3E,eAAO,MAAM,UAAU,4JA2HrB,CAAA;AAEF,eAAe,UAAU,CAAA"}
@@ -0,0 +1,5 @@
1
+ export { default } from './RunResults';
2
+ export { RunResults } from './RunResults';
3
+ export type { RunResultsProps } from './RunResults';
4
+ export { type StatKey, type RunResultsTheme, } from '@cypress-design/constants-runresults';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"./","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,eAAe,GACrB,MAAM,sCAAsC,CAAA"}
@@ -0,0 +1,125 @@
1
+ import * as React from 'react';
2
+ import clsx from 'clsx';
3
+ import StatusIcon from '@cypress-design/react-statusicon';
4
+ import { IconStatusFlaky, IconGeneralSparkleSingleSmall } from '@cypress-design/react-icon';
5
+ import Tooltip from '@cypress-design/react-tooltip';
6
+ import { hasAnyStat, getSeparatorAfterKey, statValue, CssClasses, CssTheme, showRegularStat, statKeyToKebab, getTooltipLabel, getFlakyTooltipText, getTooltipPlacement, TooltipColorForTheme, CssTooltipPopperDark, CssTooltipPopperLight } from '@cypress-design/constants-runresults';
7
+
8
+ /******************************************************************************
9
+ Copyright (c) Microsoft Corporation.
10
+
11
+ Permission to use, copy, modify, and/or distribute this software for any
12
+ purpose with or without fee is hereby granted.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
15
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
16
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
17
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
18
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
19
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
20
+ PERFORMANCE OF THIS SOFTWARE.
21
+ ***************************************************************************** */
22
+ /* global Reflect, Promise, SuppressedError, Symbol */
23
+
24
+
25
+ var __assign = function() {
26
+ __assign = Object.assign || function __assign(t) {
27
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
28
+ s = arguments[i];
29
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
30
+ }
31
+ return t;
32
+ };
33
+ return __assign.apply(this, arguments);
34
+ };
35
+
36
+ function __rest(s, e) {
37
+ var t = {};
38
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
39
+ t[p] = s[p];
40
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
41
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
42
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
43
+ t[p[i]] = s[p[i]];
44
+ }
45
+ return t;
46
+ }
47
+
48
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
49
+ var e = new Error(message);
50
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
51
+ };
52
+
53
+ var Stat = function (_a) {
54
+ var statKey = _a.statKey, count = _a.count, link = _a.link, renderLink = _a.renderLink, showTooltip = _a.showTooltip, theme = _a.theme, applySeparator = _a.applySeparator;
55
+ var kebab = statKeyToKebab(statKey);
56
+ var isLinked = !!link;
57
+ var label = getTooltipLabel(statKey, count, isLinked);
58
+ var icon = (function () {
59
+ if (statKey === 'flaky') {
60
+ return (React.createElement(IconStatusFlaky, { size: "12", "data-cy": "status-icon-flaky", className: CssClasses.iconFlaky }));
61
+ }
62
+ if (statKey === 'selfHealed') {
63
+ return (React.createElement(IconGeneralSparkleSingleSmall, { strokeColor: "jade-400", fillColor: "jade-50", "data-cy": "status-icon-self-healed", className: CssClasses.iconSelfHealed }));
64
+ }
65
+ return (React.createElement(StatusIcon, { size: "12", status: statKey, "data-cy": "status-icon-".concat(kebab), className: CssClasses.icon }));
66
+ })();
67
+ var inner = (React.createElement(React.Fragment, null,
68
+ icon,
69
+ React.createElement("span", null, count)));
70
+ var linkClasses = clsx(CssClasses.link, CssTheme[theme].link);
71
+ var unlinkedClasses = CssClasses.unlinked;
72
+ var content;
73
+ if (isLinked && link) {
74
+ if (renderLink) {
75
+ content = renderLink(link, inner);
76
+ }
77
+ else {
78
+ content = (React.createElement("a", { href: link, "aria-label": label, "data-cy": "link-".concat(kebab), className: linkClasses }, inner));
79
+ }
80
+ }
81
+ else {
82
+ content = React.createElement("span", { className: unlinkedClasses }, inner);
83
+ }
84
+ var tooltipText = statKey === 'flaky' ? getFlakyTooltipText(count) : label;
85
+ var wrappedContent = showTooltip ? (React.createElement(Tooltip, { placement: getTooltipPlacement(statKey), color: TooltipColorForTheme[theme], popper: tooltipText, popperClassName: TooltipColorForTheme[theme] === 'dark'
86
+ ? CssTooltipPopperDark
87
+ : CssTooltipPopperLight }, content)) : (content);
88
+ return (React.createElement("li", { "data-cy": "total-".concat(kebab), className: clsx(CssClasses.item, applySeparator && CssClasses.separatorAfter, applySeparator && CssTheme[theme].separator) }, wrappedContent));
89
+ };
90
+ // `forwardRef` so a parent can attach a `ref` to the outer pill `<div>`,
91
+ // per architecture.md's documented API. Sibling `@cypress-design/react-textbox`
92
+ // follows the same pattern.
93
+ var RunResults = React.forwardRef(function RunResults(_a, ref) {
94
+ var passed = _a.passed, failed = _a.failed, skipped = _a.skipped, pending = _a.pending, flaky = _a.flaky, selfHealed = _a.selfHealed, _b = _a.showSelfHealed, showSelfHealed = _b === void 0 ? false : _b, _c = _a.theme, theme = _c === void 0 ? 'light' : _c, _d = _a.expanded, expanded = _d === void 0 ? false : _d, links = _a.links, renderLink = _a.renderLink, _e = _a.showTooltip, showTooltip = _e === void 0 ? true : _e, className = _a.className, rest = __rest(_a, ["passed", "failed", "skipped", "pending", "flaky", "selfHealed", "showSelfHealed", "theme", "expanded", "links", "renderLink", "showTooltip", "className"]);
95
+ var summaryProps = {
96
+ passed: passed,
97
+ failed: failed,
98
+ skipped: skipped,
99
+ pending: pending,
100
+ flaky: flaky,
101
+ selfHealed: selfHealed,
102
+ showSelfHealed: showSelfHealed,
103
+ expanded: expanded,
104
+ };
105
+ if (!hasAnyStat(summaryProps))
106
+ return null;
107
+ var separatorAfterKey = getSeparatorAfterKey(summaryProps);
108
+ var showFlaky = statValue(flaky) > 0;
109
+ // Self-healed renders whenever the flag is true; the count (0 included) is
110
+ // shown verbatim. See instructions.md / architecture.md for rationale.
111
+ var showSelfHealedStat = !!showSelfHealed;
112
+ return (React.createElement("div", __assign({ ref: ref }, rest, { "data-cy": "run-results", className: clsx(CssClasses.container, className) }),
113
+ React.createElement("ul", { className: clsx(CssClasses.list, CssTheme[theme].list) },
114
+ showFlaky && (React.createElement(Stat, { statKey: "flaky", count: statValue(flaky), link: links === null || links === void 0 ? void 0 : links.flaky, renderLink: renderLink, showTooltip: showTooltip, theme: theme, applySeparator: separatorAfterKey === 'flaky' })),
115
+ showSelfHealedStat && (React.createElement(Stat, { statKey: "selfHealed", count: statValue(selfHealed), link: links === null || links === void 0 ? void 0 : links.selfHealed, renderLink: renderLink, showTooltip: showTooltip, theme: theme, applySeparator: separatorAfterKey === 'selfHealed' })),
116
+ showRegularStat(skipped, expanded) && (React.createElement(Stat, { statKey: "skipped", count: statValue(skipped), link: links === null || links === void 0 ? void 0 : links.skipped, renderLink: renderLink, showTooltip: showTooltip, theme: theme, applySeparator: false })),
117
+ showRegularStat(pending, expanded) && (React.createElement(Stat, { statKey: "pending", count: statValue(pending), link: links === null || links === void 0 ? void 0 : links.pending, renderLink: renderLink, showTooltip: showTooltip, theme: theme, applySeparator: false })),
118
+ showRegularStat(passed, expanded) && (React.createElement(Stat, { statKey: "passed", count: statValue(passed), link: links === null || links === void 0 ? void 0 : links.passed, renderLink: renderLink, showTooltip: showTooltip, theme: theme, applySeparator: false })),
119
+ showRegularStat(failed, expanded) && (React.createElement(Stat, { statKey: "failed", count: statValue(failed), link: links === null || links === void 0 ? void 0 : links.failed, renderLink: renderLink, showTooltip: showTooltip, theme: theme, applySeparator: false })))));
120
+ });
121
+
122
+ export { RunResults, RunResults as default };
123
+ //# sourceMappingURL=index.es.mjs.map
124
+
125
+ /* <wind-keep class="container"> */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.es.mjs","sources":["../../../../node_modules/tslib/tslib.es6.js","../RunResults.tsx"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n",null],"names":[],"mappings":"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","x_google_ignoreList":[0]}
@@ -0,0 +1,149 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var clsx = require('clsx');
7
+ var StatusIcon = require('@cypress-design/react-statusicon');
8
+ var reactIcon = require('@cypress-design/react-icon');
9
+ var Tooltip = require('@cypress-design/react-tooltip');
10
+ var constantsRunresults = require('@cypress-design/constants-runresults');
11
+
12
+ function _interopNamespaceDefault(e) {
13
+ var n = Object.create(null);
14
+ if (e) {
15
+ Object.keys(e).forEach(function (k) {
16
+ if (k !== 'default') {
17
+ var d = Object.getOwnPropertyDescriptor(e, k);
18
+ Object.defineProperty(n, k, d.get ? d : {
19
+ enumerable: true,
20
+ get: function () { return e[k]; }
21
+ });
22
+ }
23
+ });
24
+ }
25
+ n.default = e;
26
+ return Object.freeze(n);
27
+ }
28
+
29
+ var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
30
+
31
+ /******************************************************************************
32
+ Copyright (c) Microsoft Corporation.
33
+
34
+ Permission to use, copy, modify, and/or distribute this software for any
35
+ purpose with or without fee is hereby granted.
36
+
37
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
38
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
39
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
40
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
41
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
42
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
43
+ PERFORMANCE OF THIS SOFTWARE.
44
+ ***************************************************************************** */
45
+ /* global Reflect, Promise, SuppressedError, Symbol */
46
+
47
+
48
+ var __assign = function() {
49
+ __assign = Object.assign || function __assign(t) {
50
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
51
+ s = arguments[i];
52
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
53
+ }
54
+ return t;
55
+ };
56
+ return __assign.apply(this, arguments);
57
+ };
58
+
59
+ function __rest(s, e) {
60
+ var t = {};
61
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
62
+ t[p] = s[p];
63
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
64
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
65
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
66
+ t[p[i]] = s[p[i]];
67
+ }
68
+ return t;
69
+ }
70
+
71
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
72
+ var e = new Error(message);
73
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
74
+ };
75
+
76
+ var Stat = function (_a) {
77
+ var statKey = _a.statKey, count = _a.count, link = _a.link, renderLink = _a.renderLink, showTooltip = _a.showTooltip, theme = _a.theme, applySeparator = _a.applySeparator;
78
+ var kebab = constantsRunresults.statKeyToKebab(statKey);
79
+ var isLinked = !!link;
80
+ var label = constantsRunresults.getTooltipLabel(statKey, count, isLinked);
81
+ var icon = (function () {
82
+ if (statKey === 'flaky') {
83
+ return (React__namespace.createElement(reactIcon.IconStatusFlaky, { size: "12", "data-cy": "status-icon-flaky", className: constantsRunresults.CssClasses.iconFlaky }));
84
+ }
85
+ if (statKey === 'selfHealed') {
86
+ return (React__namespace.createElement(reactIcon.IconGeneralSparkleSingleSmall, { strokeColor: "jade-400", fillColor: "jade-50", "data-cy": "status-icon-self-healed", className: constantsRunresults.CssClasses.iconSelfHealed }));
87
+ }
88
+ return (React__namespace.createElement(StatusIcon, { size: "12", status: statKey, "data-cy": "status-icon-".concat(kebab), className: constantsRunresults.CssClasses.icon }));
89
+ })();
90
+ var inner = (React__namespace.createElement(React__namespace.Fragment, null,
91
+ icon,
92
+ React__namespace.createElement("span", null, count)));
93
+ var linkClasses = clsx(constantsRunresults.CssClasses.link, constantsRunresults.CssTheme[theme].link);
94
+ var unlinkedClasses = constantsRunresults.CssClasses.unlinked;
95
+ var content;
96
+ if (isLinked && link) {
97
+ if (renderLink) {
98
+ content = renderLink(link, inner);
99
+ }
100
+ else {
101
+ content = (React__namespace.createElement("a", { href: link, "aria-label": label, "data-cy": "link-".concat(kebab), className: linkClasses }, inner));
102
+ }
103
+ }
104
+ else {
105
+ content = React__namespace.createElement("span", { className: unlinkedClasses }, inner);
106
+ }
107
+ var tooltipText = statKey === 'flaky' ? constantsRunresults.getFlakyTooltipText(count) : label;
108
+ var wrappedContent = showTooltip ? (React__namespace.createElement(Tooltip, { placement: constantsRunresults.getTooltipPlacement(statKey), color: constantsRunresults.TooltipColorForTheme[theme], popper: tooltipText, popperClassName: constantsRunresults.TooltipColorForTheme[theme] === 'dark'
109
+ ? constantsRunresults.CssTooltipPopperDark
110
+ : constantsRunresults.CssTooltipPopperLight }, content)) : (content);
111
+ return (React__namespace.createElement("li", { "data-cy": "total-".concat(kebab), className: clsx(constantsRunresults.CssClasses.item, applySeparator && constantsRunresults.CssClasses.separatorAfter, applySeparator && constantsRunresults.CssTheme[theme].separator) }, wrappedContent));
112
+ };
113
+ // `forwardRef` so a parent can attach a `ref` to the outer pill `<div>`,
114
+ // per architecture.md's documented API. Sibling `@cypress-design/react-textbox`
115
+ // follows the same pattern.
116
+ var RunResults = React__namespace.forwardRef(function RunResults(_a, ref) {
117
+ var passed = _a.passed, failed = _a.failed, skipped = _a.skipped, pending = _a.pending, flaky = _a.flaky, selfHealed = _a.selfHealed, _b = _a.showSelfHealed, showSelfHealed = _b === void 0 ? false : _b, _c = _a.theme, theme = _c === void 0 ? 'light' : _c, _d = _a.expanded, expanded = _d === void 0 ? false : _d, links = _a.links, renderLink = _a.renderLink, _e = _a.showTooltip, showTooltip = _e === void 0 ? true : _e, className = _a.className, rest = __rest(_a, ["passed", "failed", "skipped", "pending", "flaky", "selfHealed", "showSelfHealed", "theme", "expanded", "links", "renderLink", "showTooltip", "className"]);
118
+ var summaryProps = {
119
+ passed: passed,
120
+ failed: failed,
121
+ skipped: skipped,
122
+ pending: pending,
123
+ flaky: flaky,
124
+ selfHealed: selfHealed,
125
+ showSelfHealed: showSelfHealed,
126
+ expanded: expanded,
127
+ };
128
+ if (!constantsRunresults.hasAnyStat(summaryProps))
129
+ return null;
130
+ var separatorAfterKey = constantsRunresults.getSeparatorAfterKey(summaryProps);
131
+ var showFlaky = constantsRunresults.statValue(flaky) > 0;
132
+ // Self-healed renders whenever the flag is true; the count (0 included) is
133
+ // shown verbatim. See instructions.md / architecture.md for rationale.
134
+ var showSelfHealedStat = !!showSelfHealed;
135
+ return (React__namespace.createElement("div", __assign({ ref: ref }, rest, { "data-cy": "run-results", className: clsx(constantsRunresults.CssClasses.container, className) }),
136
+ React__namespace.createElement("ul", { className: clsx(constantsRunresults.CssClasses.list, constantsRunresults.CssTheme[theme].list) },
137
+ showFlaky && (React__namespace.createElement(Stat, { statKey: "flaky", count: constantsRunresults.statValue(flaky), link: links === null || links === void 0 ? void 0 : links.flaky, renderLink: renderLink, showTooltip: showTooltip, theme: theme, applySeparator: separatorAfterKey === 'flaky' })),
138
+ showSelfHealedStat && (React__namespace.createElement(Stat, { statKey: "selfHealed", count: constantsRunresults.statValue(selfHealed), link: links === null || links === void 0 ? void 0 : links.selfHealed, renderLink: renderLink, showTooltip: showTooltip, theme: theme, applySeparator: separatorAfterKey === 'selfHealed' })),
139
+ constantsRunresults.showRegularStat(skipped, expanded) && (React__namespace.createElement(Stat, { statKey: "skipped", count: constantsRunresults.statValue(skipped), link: links === null || links === void 0 ? void 0 : links.skipped, renderLink: renderLink, showTooltip: showTooltip, theme: theme, applySeparator: false })),
140
+ constantsRunresults.showRegularStat(pending, expanded) && (React__namespace.createElement(Stat, { statKey: "pending", count: constantsRunresults.statValue(pending), link: links === null || links === void 0 ? void 0 : links.pending, renderLink: renderLink, showTooltip: showTooltip, theme: theme, applySeparator: false })),
141
+ constantsRunresults.showRegularStat(passed, expanded) && (React__namespace.createElement(Stat, { statKey: "passed", count: constantsRunresults.statValue(passed), link: links === null || links === void 0 ? void 0 : links.passed, renderLink: renderLink, showTooltip: showTooltip, theme: theme, applySeparator: false })),
142
+ constantsRunresults.showRegularStat(failed, expanded) && (React__namespace.createElement(Stat, { statKey: "failed", count: constantsRunresults.statValue(failed), link: links === null || links === void 0 ? void 0 : links.failed, renderLink: renderLink, showTooltip: showTooltip, theme: theme, applySeparator: false })))));
143
+ });
144
+
145
+ exports.RunResults = RunResults;
146
+ exports.default = RunResults;
147
+ //# sourceMappingURL=index.umd.js.map
148
+
149
+ /* <wind-keep class="container"> */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../RunResults.tsx"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n",null],"names":["statKeyToKebab","getTooltipLabel","React","IconStatusFlaky","CssClasses","IconGeneralSparkleSingleSmall","CssTheme","getFlakyTooltipText","getTooltipPlacement","TooltipColorForTheme","CssTooltipPopperDark","CssTooltipPopperLight","hasAnyStat","getSeparatorAfterKey","statValue","showRegularStat"],"mappings":"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","x_google_ignoreList":[0]}
package/index.ts ADDED
@@ -0,0 +1,7 @@
1
+ export { default } from './RunResults'
2
+ export { RunResults } from './RunResults'
3
+ export type { RunResultsProps } from './RunResults'
4
+ export {
5
+ type StatKey,
6
+ type RunResultsTheme,
7
+ } from '@cypress-design/constants-runresults'
package/package.json ADDED
@@ -0,0 +1,33 @@
1
+ {
2
+ "name": "@cypress-design/react-runresults",
3
+ "version": "1.0.0",
4
+ "files": [
5
+ "*"
6
+ ],
7
+ "typings": "./dist/index.d.ts",
8
+ "module": "./dist/index.es.mjs",
9
+ "main": "./dist/index.umd.js",
10
+ "exports": {
11
+ ".": {
12
+ "import": "./dist/index.es.mjs",
13
+ "require": "./dist/index.umd.js",
14
+ "types": "./dist/index.d.ts"
15
+ }
16
+ },
17
+ "scripts": {
18
+ "build": "yarn build:module && yarn build:types",
19
+ "build:module": "rollup -c ./rollup.config.mjs",
20
+ "build:types": "tsc --project ./tsconfig.build.json"
21
+ },
22
+ "dependencies": {
23
+ "@cypress-design/constants-runresults": "^1.0.0",
24
+ "@cypress-design/react-icon": "^1.40.0",
25
+ "@cypress-design/react-statusicon": "^1.0.2",
26
+ "@cypress-design/react-tooltip": "^2.1.0",
27
+ "clsx": "^2.1.1"
28
+ },
29
+ "devDependencies": {
30
+ "@cypress-design/rollup-plugin-tailwind-keep": "*"
31
+ },
32
+ "license": "MIT"
33
+ }
@@ -0,0 +1,7 @@
1
+ import rootRollupConfig from '../../react.rollup.config.mjs'
2
+ import pkg from './package.json' with { type: 'json' }
3
+
4
+ export default rootRollupConfig({
5
+ input: './index.ts',
6
+ external: Object.keys(pkg.dependencies),
7
+ })
@@ -0,0 +1,8 @@
1
+ {
2
+ "extends": "../../../tsconfig.react.build.json",
3
+ "include": ["./RunResults.tsx", "./index.ts"],
4
+ "compilerOptions": {
5
+ "sourceRoot": "./",
6
+ "outDir": "dist"
7
+ }
8
+ }