@elastic/eui 62.0.1 → 62.0.2
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.
- package/es/components/comment_list/comment_event.js +22 -28
- package/es/components/comment_list/comment_event.styles.js +15 -16
- package/es/test/rtl/component_helpers.d.ts +7 -0
- package/es/test/rtl/component_helpers.js +72 -0
- package/es/test/rtl/custom_render.d.ts +74 -0
- package/es/test/rtl/custom_render.js +52 -0
- package/es/test/rtl/data_test_subj_queries.d.ts +5 -0
- package/es/test/rtl/data_test_subj_queries.js +46 -0
- package/es/test/rtl/index.d.ts +3 -0
- package/es/test/rtl/index.js +10 -0
- package/eui.d.ts +86 -4
- package/lib/components/comment_list/comment_event.js +29 -26
- package/lib/components/comment_list/comment_event.styles.js +15 -16
- package/lib/test/rtl/component_helpers.d.ts +7 -0
- package/lib/test/rtl/component_helpers.js +77 -0
- package/lib/test/rtl/custom_render.d.ts +74 -0
- package/lib/test/rtl/custom_render.js +60 -0
- package/lib/test/rtl/data_test_subj_queries.d.ts +5 -0
- package/lib/test/rtl/data_test_subj_queries.js +52 -0
- package/lib/test/rtl/index.d.ts +3 -0
- package/lib/test/rtl/index.js +81 -0
- package/optimize/es/components/comment_list/comment_event.js +22 -28
- package/optimize/es/components/comment_list/comment_event.styles.js +15 -16
- package/optimize/es/test/rtl/component_helpers.d.ts +7 -0
- package/optimize/es/test/rtl/component_helpers.js +71 -0
- package/optimize/es/test/rtl/custom_render.d.ts +74 -0
- package/optimize/es/test/rtl/custom_render.js +48 -0
- package/optimize/es/test/rtl/data_test_subj_queries.d.ts +5 -0
- package/optimize/es/test/rtl/data_test_subj_queries.js +36 -0
- package/optimize/es/test/rtl/index.d.ts +3 -0
- package/optimize/es/test/rtl/index.js +10 -0
- package/optimize/lib/components/comment_list/comment_event.js +22 -26
- package/optimize/lib/components/comment_list/comment_event.styles.js +15 -16
- package/optimize/lib/test/rtl/component_helpers.d.ts +7 -0
- package/optimize/lib/test/rtl/component_helpers.js +87 -0
- package/optimize/lib/test/rtl/custom_render.d.ts +74 -0
- package/optimize/lib/test/rtl/custom_render.js +59 -0
- package/optimize/lib/test/rtl/data_test_subj_queries.d.ts +5 -0
- package/optimize/lib/test/rtl/data_test_subj_queries.js +51 -0
- package/optimize/lib/test/rtl/index.d.ts +3 -0
- package/optimize/lib/test/rtl/index.js +81 -0
- package/package.json +7 -1
- package/test-env/components/comment_list/comment_event.js +22 -26
- package/test-env/components/comment_list/comment_event.styles.js +15 -16
- package/test-env/test/rtl/component_helpers.js +87 -0
- package/test-env/test/rtl/custom_render.js +59 -0
- package/test-env/test/rtl/data_test_subj_queries.js +51 -0
- package/test-env/test/rtl/index.js +81 -0
|
@@ -34,20 +34,20 @@ var euiCommentEventStyles = function euiCommentEventStyles(_ref4) {
|
|
|
34
34
|
exports.euiCommentEventStyles = euiCommentEventStyles;
|
|
35
35
|
|
|
36
36
|
var _ref = process.env.NODE_ENV === "production" ? {
|
|
37
|
-
name: "
|
|
38
|
-
styles: "
|
|
37
|
+
name: "ui5tce-euiCommentEvent__headerEvent",
|
|
38
|
+
styles: "align-items:center;display:inline-flex;white-space:pre-wrap;flex-wrap:wrap;label:euiCommentEvent__headerEvent;"
|
|
39
39
|
} : {
|
|
40
|
-
name: "
|
|
41
|
-
styles: "
|
|
40
|
+
name: "ui5tce-euiCommentEvent__headerEvent",
|
|
41
|
+
styles: "align-items:center;display:inline-flex;white-space:pre-wrap;flex-wrap:wrap;label:euiCommentEvent__headerEvent;",
|
|
42
42
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
43
43
|
};
|
|
44
44
|
|
|
45
45
|
var _ref2 = process.env.NODE_ENV === "production" ? {
|
|
46
|
-
name: "
|
|
47
|
-
styles: "
|
|
46
|
+
name: "bqgcpj-hasEventColor",
|
|
47
|
+
styles: "padding:0;label:hasEventColor;"
|
|
48
48
|
} : {
|
|
49
|
-
name: "
|
|
50
|
-
styles: "
|
|
49
|
+
name: "bqgcpj-hasEventColor",
|
|
50
|
+
styles: "padding:0;label:hasEventColor;",
|
|
51
51
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
52
52
|
};
|
|
53
53
|
|
|
@@ -55,18 +55,17 @@ var euiCommentEventHeaderStyles = function euiCommentEventHeaderStyles(_ref5) {
|
|
|
55
55
|
var euiTheme = _ref5.euiTheme;
|
|
56
56
|
return {
|
|
57
57
|
euiCommentEvent__header: /*#__PURE__*/(0, _react.css)(";label:euiCommentEvent__header;"),
|
|
58
|
-
|
|
58
|
+
// types
|
|
59
|
+
regular: /*#__PURE__*/(0, _react.css)("background:", euiTheme.colors.lightestShade, ";border-bottom:", euiTheme.border.thin, ";padding:", euiTheme.size.s, ";;label:regular;"),
|
|
60
|
+
// variants
|
|
61
|
+
hasEventColor: _ref2,
|
|
62
|
+
// Children
|
|
59
63
|
euiCommentEvent__headerMain: /*#__PURE__*/(0, _react.css)("display:flex;flex:1;gap:", euiTheme.size.s, ";;label:euiCommentEvent__headerMain;"),
|
|
60
64
|
euiCommentEvent__headerData: /*#__PURE__*/(0, _react.css)("display:flex;flex:1;align-items:center;flex-wrap:wrap;gap:", euiTheme.size.xs, ";;label:euiCommentEvent__headerData;"),
|
|
61
65
|
euiCommentEvent__headerEventIcon: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('margin-right', euiTheme.size.xs), ";;label:euiCommentEvent__headerEventIcon;"),
|
|
62
66
|
euiCommentEvent__headerUsername: /*#__PURE__*/(0, _react.css)("font-weight:", euiTheme.font.weight.semiBold, ";;label:euiCommentEvent__headerUsername;"),
|
|
63
|
-
euiCommentEvent__headerEvent:
|
|
64
|
-
|
|
65
|
-
euiCommentEvent__headerActions: /*#__PURE__*/(0, _react.css)("display:flex;flex-wrap:wrap;gap:", euiTheme.size.xs, ";;label:euiCommentEvent__headerActions;"),
|
|
66
|
-
// types
|
|
67
|
-
regular: /*#__PURE__*/(0, _react.css)("background:", euiTheme.colors.lightestShade, ";border-bottom:", euiTheme.border.thin, ";padding:", euiTheme.size.s, ";;label:regular;"),
|
|
68
|
-
// variants
|
|
69
|
-
hasEventColor: _ref
|
|
67
|
+
euiCommentEvent__headerEvent: _ref,
|
|
68
|
+
euiCommentEvent__headerActions: /*#__PURE__*/(0, _react.css)("display:flex;flex-wrap:wrap;gap:", euiTheme.size.xs, ";;label:euiCommentEvent__headerActions;")
|
|
70
69
|
};
|
|
71
70
|
};
|
|
72
71
|
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ensure the EuiPopover being tested is open/closed before contiuning
|
|
3
|
+
* Note: Because EuiPopover is portalled, we want to query `document`
|
|
4
|
+
* instead of the `container` returned by RTL's render()
|
|
5
|
+
*/
|
|
6
|
+
export declare const waitForEuiPopoverOpen: () => Promise<void>;
|
|
7
|
+
export declare const waitForEuiPopoverClose: () => Promise<void>;
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.waitForEuiPopoverOpen = exports.waitForEuiPopoverClose = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = require("@testing-library/react");
|
|
9
|
+
|
|
10
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
11
|
+
|
|
12
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Ensure the EuiPopover being tested is open/closed before contiuning
|
|
16
|
+
* Note: Because EuiPopover is portalled, we want to query `document`
|
|
17
|
+
* instead of the `container` returned by RTL's render()
|
|
18
|
+
*/
|
|
19
|
+
var waitForEuiPopoverOpen = /*#__PURE__*/function () {
|
|
20
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
|
|
21
|
+
return regeneratorRuntime.wrap(function _callee$(_context) {
|
|
22
|
+
while (1) {
|
|
23
|
+
switch (_context.prev = _context.next) {
|
|
24
|
+
case 0:
|
|
25
|
+
_context.next = 2;
|
|
26
|
+
return (0, _react.waitFor)(function () {
|
|
27
|
+
var openPopover = document.querySelector('[data-popover-open]');
|
|
28
|
+
expect(openPopover).toBeTruthy();
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
case 2:
|
|
32
|
+
return _context.abrupt("return", _context.sent);
|
|
33
|
+
|
|
34
|
+
case 3:
|
|
35
|
+
case "end":
|
|
36
|
+
return _context.stop();
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}, _callee);
|
|
40
|
+
}));
|
|
41
|
+
|
|
42
|
+
return function waitForEuiPopoverOpen() {
|
|
43
|
+
return _ref.apply(this, arguments);
|
|
44
|
+
};
|
|
45
|
+
}();
|
|
46
|
+
|
|
47
|
+
exports.waitForEuiPopoverOpen = waitForEuiPopoverOpen;
|
|
48
|
+
|
|
49
|
+
var waitForEuiPopoverClose = /*#__PURE__*/function () {
|
|
50
|
+
var _ref2 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
|
|
51
|
+
return regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
52
|
+
while (1) {
|
|
53
|
+
switch (_context2.prev = _context2.next) {
|
|
54
|
+
case 0:
|
|
55
|
+
_context2.next = 2;
|
|
56
|
+
return (0, _react.waitFor)(function () {
|
|
57
|
+
var openPopover = document.querySelector('[data-popover-open]');
|
|
58
|
+
expect(openPopover).toBeFalsy();
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
case 2:
|
|
62
|
+
return _context2.abrupt("return", _context2.sent);
|
|
63
|
+
|
|
64
|
+
case 3:
|
|
65
|
+
case "end":
|
|
66
|
+
return _context2.stop();
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}, _callee2);
|
|
70
|
+
}));
|
|
71
|
+
|
|
72
|
+
return function waitForEuiPopoverClose() {
|
|
73
|
+
return _ref2.apply(this, arguments);
|
|
74
|
+
};
|
|
75
|
+
}();
|
|
76
|
+
|
|
77
|
+
exports.waitForEuiPopoverClose = waitForEuiPopoverClose;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { ReactElement } from 'react';
|
|
2
|
+
import { queries, RenderOptions, Screen } from '@testing-library/react';
|
|
3
|
+
import * as dataTestSubjQueries from './data_test_subj_queries';
|
|
4
|
+
/**
|
|
5
|
+
* Custom render() fn with EuiProvider and query helpers
|
|
6
|
+
*
|
|
7
|
+
* @see https://testing-library.com/docs/react-testing-library/setup#custom-render
|
|
8
|
+
* @see https://testing-library.com/docs/react-testing-library/setup#add-custom-queries
|
|
9
|
+
*/
|
|
10
|
+
declare const customRender: (ui: ReactElement, { queries: renderQueries, ...options }?: RenderOptions) => import("@testing-library/react").RenderResult<{
|
|
11
|
+
getByLabelText: typeof queries.getByLabelText;
|
|
12
|
+
getAllByLabelText: typeof queries.getAllByLabelText;
|
|
13
|
+
queryByLabelText: typeof queries.queryByLabelText;
|
|
14
|
+
queryAllByLabelText: typeof queries.queryAllByLabelText;
|
|
15
|
+
findByLabelText: typeof queries.findByLabelText;
|
|
16
|
+
findAllByLabelText: typeof queries.findAllByLabelText;
|
|
17
|
+
getByPlaceholderText: typeof queries.getByPlaceholderText;
|
|
18
|
+
getAllByPlaceholderText: typeof queries.getAllByPlaceholderText;
|
|
19
|
+
queryByPlaceholderText: typeof queries.queryByPlaceholderText;
|
|
20
|
+
queryAllByPlaceholderText: typeof queries.queryAllByPlaceholderText;
|
|
21
|
+
findByPlaceholderText: typeof queries.findByPlaceholderText;
|
|
22
|
+
findAllByPlaceholderText: typeof queries.findAllByPlaceholderText;
|
|
23
|
+
getByText: typeof queries.getByText;
|
|
24
|
+
getAllByText: typeof queries.getAllByText;
|
|
25
|
+
queryByText: typeof queries.queryByText;
|
|
26
|
+
queryAllByText: typeof queries.queryAllByText;
|
|
27
|
+
findByText: typeof queries.findByText;
|
|
28
|
+
findAllByText: typeof queries.findAllByText;
|
|
29
|
+
getByAltText: typeof queries.getByAltText;
|
|
30
|
+
getAllByAltText: typeof queries.getAllByAltText;
|
|
31
|
+
queryByAltText: typeof queries.queryByAltText;
|
|
32
|
+
queryAllByAltText: typeof queries.queryAllByAltText;
|
|
33
|
+
findByAltText: typeof queries.findByAltText;
|
|
34
|
+
findAllByAltText: typeof queries.findAllByAltText;
|
|
35
|
+
getByTitle: typeof queries.getByTitle;
|
|
36
|
+
getAllByTitle: typeof queries.getAllByTitle;
|
|
37
|
+
queryByTitle: typeof queries.queryByTitle;
|
|
38
|
+
queryAllByTitle: typeof queries.queryAllByTitle;
|
|
39
|
+
findByTitle: typeof queries.findByTitle;
|
|
40
|
+
findAllByTitle: typeof queries.findAllByTitle;
|
|
41
|
+
getByDisplayValue: typeof queries.getByDisplayValue;
|
|
42
|
+
getAllByDisplayValue: typeof queries.getAllByDisplayValue;
|
|
43
|
+
queryByDisplayValue: typeof queries.queryByDisplayValue;
|
|
44
|
+
queryAllByDisplayValue: typeof queries.queryAllByDisplayValue;
|
|
45
|
+
findByDisplayValue: typeof queries.findByDisplayValue;
|
|
46
|
+
findAllByDisplayValue: typeof queries.findAllByDisplayValue;
|
|
47
|
+
getByRole: typeof queries.getByRole;
|
|
48
|
+
getAllByRole: typeof queries.getAllByRole;
|
|
49
|
+
queryByRole: typeof queries.queryByRole;
|
|
50
|
+
queryAllByRole: typeof queries.queryAllByRole;
|
|
51
|
+
findByRole: typeof queries.findByRole;
|
|
52
|
+
findAllByRole: typeof queries.findAllByRole;
|
|
53
|
+
getByTestId: typeof queries.getByTestId;
|
|
54
|
+
getAllByTestId: typeof queries.getAllByTestId;
|
|
55
|
+
queryByTestId: typeof queries.queryByTestId;
|
|
56
|
+
queryAllByTestId: typeof queries.queryAllByTestId;
|
|
57
|
+
findByTestId: typeof queries.findByTestId;
|
|
58
|
+
findAllByTestId: typeof queries.findAllByTestId;
|
|
59
|
+
queryByTestSubject: import("@testing-library/react").QueryBy<[import("@testing-library/react").Matcher]>;
|
|
60
|
+
queryAllByTestSubject: (container: HTMLElement, id: import("@testing-library/react").Matcher, options?: import("@testing-library/react").MatcherOptions | undefined) => HTMLElement[];
|
|
61
|
+
getByTestSubject: import("@testing-library/react").GetBy<[import("@testing-library/react").Matcher]>;
|
|
62
|
+
getAllByTestSubject: import("@testing-library/react").GetAllBy<[import("@testing-library/react").Matcher]>;
|
|
63
|
+
findAllByTestSubject: import("@testing-library/react").FindAllBy<[import("@testing-library/react").Matcher]>;
|
|
64
|
+
findByTestSubject: import("@testing-library/react").FindBy<[import("@testing-library/react").Matcher]>;
|
|
65
|
+
}, HTMLElement, HTMLElement>;
|
|
66
|
+
export { customRender as render };
|
|
67
|
+
/**
|
|
68
|
+
* Custom screen util with EUI query helpers
|
|
69
|
+
*
|
|
70
|
+
* @see https://testing-library.com/docs/queries/about/#screen
|
|
71
|
+
* @see https://github.com/testing-library/dom-testing-library/issues/516
|
|
72
|
+
*/
|
|
73
|
+
declare const customScreen: Screen<typeof queries & typeof dataTestSubjQueries>;
|
|
74
|
+
export { customScreen as screen };
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.screen = exports.render = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = require("@testing-library/react");
|
|
11
|
+
|
|
12
|
+
var _components = require("../../components");
|
|
13
|
+
|
|
14
|
+
var dataTestSubjQueries = _interopRequireWildcard(require("./data_test_subj_queries"));
|
|
15
|
+
|
|
16
|
+
var _excluded = ["queries"];
|
|
17
|
+
|
|
18
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
|
+
|
|
20
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
21
|
+
|
|
22
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
23
|
+
|
|
24
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
25
|
+
|
|
26
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
27
|
+
|
|
28
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
29
|
+
|
|
30
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Custom render() fn with EuiProvider and query helpers
|
|
34
|
+
*
|
|
35
|
+
* @see https://testing-library.com/docs/react-testing-library/setup#custom-render
|
|
36
|
+
* @see https://testing-library.com/docs/react-testing-library/setup#add-custom-queries
|
|
37
|
+
*/
|
|
38
|
+
var customRender = function customRender(ui) {
|
|
39
|
+
var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
40
|
+
|
|
41
|
+
var renderQueries = _ref.queries,
|
|
42
|
+
options = _objectWithoutProperties(_ref, _excluded);
|
|
43
|
+
|
|
44
|
+
return (0, _react.render)(ui, _objectSpread({
|
|
45
|
+
queries: _objectSpread(_objectSpread(_objectSpread({}, _react.queries), dataTestSubjQueries), renderQueries || {}),
|
|
46
|
+
wrapper: _components.EuiProvider
|
|
47
|
+
}, options));
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
exports.render = customRender;
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Custom screen util with EUI query helpers
|
|
54
|
+
*
|
|
55
|
+
* @see https://testing-library.com/docs/queries/about/#screen
|
|
56
|
+
* @see https://github.com/testing-library/dom-testing-library/issues/516
|
|
57
|
+
*/
|
|
58
|
+
var customScreen = _objectSpread(_objectSpread({}, _react.screen), (0, _react.within)(document.body, dataTestSubjQueries));
|
|
59
|
+
|
|
60
|
+
exports.screen = customScreen;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { Matcher, MatcherOptions } from '@testing-library/react';
|
|
2
|
+
import { queryHelpers } from '@testing-library/react';
|
|
3
|
+
declare const queryAllByTestSubject: (container: HTMLElement, id: Matcher, options?: MatcherOptions | undefined) => HTMLElement[];
|
|
4
|
+
declare const queryByTestSubject: queryHelpers.QueryBy<[Matcher]>, getAllByTestSubject: queryHelpers.GetAllBy<[Matcher]>, getByTestSubject: queryHelpers.GetBy<[Matcher]>, findAllByTestSubject: queryHelpers.FindAllBy<[Matcher]>, findByTestSubject: queryHelpers.FindBy<[Matcher]>;
|
|
5
|
+
export { queryByTestSubject, queryAllByTestSubject, getByTestSubject, getAllByTestSubject, findAllByTestSubject, findByTestSubject, };
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.queryByTestSubject = exports.queryAllByTestSubject = exports.getByTestSubject = exports.getAllByTestSubject = exports.findByTestSubject = exports.findAllByTestSubject = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = require("@testing-library/react");
|
|
9
|
+
|
|
10
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
11
|
+
|
|
12
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
13
|
+
|
|
14
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
15
|
+
|
|
16
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
17
|
+
|
|
18
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
19
|
+
|
|
20
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
21
|
+
|
|
22
|
+
var queryAllByTestSubject = function queryAllByTestSubject() {
|
|
23
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
24
|
+
args[_key] = arguments[_key];
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
return _react.queryHelpers.queryAllByAttribute.apply(_react.queryHelpers, ['data-test-subj'].concat(args));
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
exports.queryAllByTestSubject = queryAllByTestSubject;
|
|
31
|
+
|
|
32
|
+
var getMultipleError = function getMultipleError(_, TestSubjectValue) {
|
|
33
|
+
return "Found multiple elements with the data-test-subj attribute of: ".concat(TestSubjectValue);
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
var getMissingError = function getMissingError(_, TestSubjectValue) {
|
|
37
|
+
return "Unable to find an element with the data-test-subj attribute of: ".concat(TestSubjectValue);
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
var _buildQueries = (0, _react.buildQueries)(queryAllByTestSubject, getMultipleError, getMissingError),
|
|
41
|
+
_buildQueries2 = _slicedToArray(_buildQueries, 5),
|
|
42
|
+
queryByTestSubject = _buildQueries2[0],
|
|
43
|
+
getAllByTestSubject = _buildQueries2[1],
|
|
44
|
+
getByTestSubject = _buildQueries2[2],
|
|
45
|
+
findAllByTestSubject = _buildQueries2[3],
|
|
46
|
+
findByTestSubject = _buildQueries2[4];
|
|
47
|
+
|
|
48
|
+
exports.findByTestSubject = findByTestSubject;
|
|
49
|
+
exports.findAllByTestSubject = findAllByTestSubject;
|
|
50
|
+
exports.getByTestSubject = getByTestSubject;
|
|
51
|
+
exports.getAllByTestSubject = getAllByTestSubject;
|
|
52
|
+
exports.queryByTestSubject = queryByTestSubject;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _exportNames = {
|
|
7
|
+
queryByTestSubject: true,
|
|
8
|
+
queryAllByTestSubject: true,
|
|
9
|
+
getByTestSubject: true,
|
|
10
|
+
getAllByTestSubject: true,
|
|
11
|
+
findAllByTestSubject: true,
|
|
12
|
+
findByTestSubject: true,
|
|
13
|
+
render: true,
|
|
14
|
+
screen: true
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "findAllByTestSubject", {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: function get() {
|
|
19
|
+
return _data_test_subj_queries.findAllByTestSubject;
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
Object.defineProperty(exports, "findByTestSubject", {
|
|
23
|
+
enumerable: true,
|
|
24
|
+
get: function get() {
|
|
25
|
+
return _data_test_subj_queries.findByTestSubject;
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
Object.defineProperty(exports, "getAllByTestSubject", {
|
|
29
|
+
enumerable: true,
|
|
30
|
+
get: function get() {
|
|
31
|
+
return _data_test_subj_queries.getAllByTestSubject;
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
Object.defineProperty(exports, "getByTestSubject", {
|
|
35
|
+
enumerable: true,
|
|
36
|
+
get: function get() {
|
|
37
|
+
return _data_test_subj_queries.getByTestSubject;
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
Object.defineProperty(exports, "queryAllByTestSubject", {
|
|
41
|
+
enumerable: true,
|
|
42
|
+
get: function get() {
|
|
43
|
+
return _data_test_subj_queries.queryAllByTestSubject;
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
Object.defineProperty(exports, "queryByTestSubject", {
|
|
47
|
+
enumerable: true,
|
|
48
|
+
get: function get() {
|
|
49
|
+
return _data_test_subj_queries.queryByTestSubject;
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
Object.defineProperty(exports, "render", {
|
|
53
|
+
enumerable: true,
|
|
54
|
+
get: function get() {
|
|
55
|
+
return _custom_render.render;
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
Object.defineProperty(exports, "screen", {
|
|
59
|
+
enumerable: true,
|
|
60
|
+
get: function get() {
|
|
61
|
+
return _custom_render.screen;
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
var _component_helpers = require("./component_helpers");
|
|
66
|
+
|
|
67
|
+
Object.keys(_component_helpers).forEach(function (key) {
|
|
68
|
+
if (key === "default" || key === "__esModule") return;
|
|
69
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
70
|
+
if (key in exports && exports[key] === _component_helpers[key]) return;
|
|
71
|
+
Object.defineProperty(exports, key, {
|
|
72
|
+
enumerable: true,
|
|
73
|
+
get: function get() {
|
|
74
|
+
return _component_helpers[key];
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
|
|
79
|
+
var _data_test_subj_queries = require("./data_test_subj_queries");
|
|
80
|
+
|
|
81
|
+
var _custom_render = require("./custom_render");
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
-
|
|
3
1
|
/*
|
|
4
2
|
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
5
3
|
* or more contributor license agreements. Licensed under the Elastic License
|
|
@@ -44,14 +42,6 @@ export var EuiCommentEvent = function EuiCommentEvent(_ref) {
|
|
|
44
42
|
var cssStyles = [styles.euiCommentEvent, styles[type]];
|
|
45
43
|
var headerStyles = euiCommentEventHeaderStyles(euiTheme);
|
|
46
44
|
var cssHeaderStyles = [headerStyles.euiCommentEvent__header, eventColor && headerStyles.hasEventColor, isTypeRegular && headerStyles.regular];
|
|
47
|
-
var cssHeaderPanelStyles = headerStyles.euiCommentEvent__headerPanel;
|
|
48
|
-
var cssHeaderEventIconStyles = headerStyles.euiCommentEvent__headerEventIcon;
|
|
49
|
-
var cssHeaderUsernameStyles = headerStyles.euiCommentEvent__headerUsername;
|
|
50
|
-
var cssHeaderEventStyles = headerStyles.euiCommentEvent__headerEvent;
|
|
51
|
-
var cssHeaderTimestampStyles = headerStyles.euiCommentEvent__headerTimestamp;
|
|
52
|
-
var cssHeaderMainStyles = headerStyles.euiCommentEvent__headerMain;
|
|
53
|
-
var cssHeaderDataStyles = headerStyles.euiCommentEvent__headerData;
|
|
54
|
-
var cssHeaderActionsStyles = headerStyles.euiCommentEvent__headerActions;
|
|
55
45
|
var bodyStyles = euiCommentEventBodyStyles(euiTheme);
|
|
56
46
|
var cssBodyStyles = [bodyStyles.euiCommentEvent__body, bodyStyles[type]];
|
|
57
47
|
var isFigure = isTypeRegular;
|
|
@@ -67,36 +57,40 @@ export var EuiCommentEvent = function EuiCommentEvent(_ref) {
|
|
|
67
57
|
color: 'transparent',
|
|
68
58
|
paddingSize: 'none'
|
|
69
59
|
};
|
|
70
|
-
|
|
71
|
-
|
|
60
|
+
return ___EmotionJSX(Element, {
|
|
61
|
+
className: classes,
|
|
62
|
+
css: cssStyles,
|
|
63
|
+
"data-type": type
|
|
64
|
+
}, hasEventElements && ___EmotionJSX(HeaderElement, {
|
|
65
|
+
className: "euiCommentEvent__header",
|
|
72
66
|
css: cssHeaderStyles
|
|
73
|
-
}, ___EmotionJSX(EuiPanel,
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
css: cssHeaderMainStyles
|
|
67
|
+
}, ___EmotionJSX(EuiPanel, panelProps, ___EmotionJSX("div", {
|
|
68
|
+
className: "euiCommentEvent__headerMain",
|
|
69
|
+
css: headerStyles.euiCommentEvent__headerMain
|
|
77
70
|
}, ___EmotionJSX("div", {
|
|
78
|
-
|
|
71
|
+
className: "euiCommentEvent__headerData",
|
|
72
|
+
css: headerStyles.euiCommentEvent__headerData
|
|
79
73
|
}, eventIcon && ___EmotionJSX(EuiAvatar, {
|
|
80
|
-
|
|
74
|
+
className: "euiCommentEvent__headerEventIcon",
|
|
75
|
+
css: headerStyles.euiCommentEvent__headerEventIcon,
|
|
81
76
|
size: "s",
|
|
82
77
|
iconType: eventIcon,
|
|
83
78
|
name: eventIconAriaLabel ? eventIconAriaLabel : '',
|
|
84
79
|
color: "subdued",
|
|
85
80
|
"aria-hidden": !eventIconAriaLabel
|
|
86
81
|
}), username && ___EmotionJSX("div", {
|
|
87
|
-
|
|
82
|
+
className: "euiCommentEvent__headerUsername",
|
|
83
|
+
css: headerStyles.euiCommentEvent__headerUsername
|
|
88
84
|
}, username), event && ___EmotionJSX("div", {
|
|
89
|
-
|
|
85
|
+
className: "euiCommentEvent__headerEvent",
|
|
86
|
+
css: headerStyles.euiCommentEvent__headerEvent
|
|
90
87
|
}, event), timestamp && ___EmotionJSX("div", {
|
|
91
|
-
|
|
88
|
+
className: "euiCommentEvent__headerTimestamp"
|
|
92
89
|
}, ___EmotionJSX("time", null, timestamp))), actions && ___EmotionJSX("div", {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
className: classes,
|
|
98
|
-
css: cssStyles
|
|
99
|
-
}, hasEventElements && eventHeader, children && ___EmotionJSX("div", {
|
|
90
|
+
className: "euiCommentEvent__headerActions",
|
|
91
|
+
css: headerStyles.euiCommentEvent__headerActions
|
|
92
|
+
}, actions)))), children && ___EmotionJSX("div", {
|
|
93
|
+
className: "euiCommentEvent__body",
|
|
100
94
|
css: cssBodyStyles
|
|
101
95
|
}, children));
|
|
102
96
|
};
|
|
@@ -31,20 +31,20 @@ export var euiCommentEventStyles = function euiCommentEventStyles(_ref4) {
|
|
|
31
31
|
};
|
|
32
32
|
|
|
33
33
|
var _ref = process.env.NODE_ENV === "production" ? {
|
|
34
|
-
name: "
|
|
35
|
-
styles: "
|
|
34
|
+
name: "ui5tce-euiCommentEvent__headerEvent",
|
|
35
|
+
styles: "align-items:center;display:inline-flex;white-space:pre-wrap;flex-wrap:wrap;label:euiCommentEvent__headerEvent;"
|
|
36
36
|
} : {
|
|
37
|
-
name: "
|
|
38
|
-
styles: "
|
|
37
|
+
name: "ui5tce-euiCommentEvent__headerEvent",
|
|
38
|
+
styles: "align-items:center;display:inline-flex;white-space:pre-wrap;flex-wrap:wrap;label:euiCommentEvent__headerEvent;",
|
|
39
39
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
40
40
|
};
|
|
41
41
|
|
|
42
42
|
var _ref2 = process.env.NODE_ENV === "production" ? {
|
|
43
|
-
name: "
|
|
44
|
-
styles: "
|
|
43
|
+
name: "bqgcpj-hasEventColor",
|
|
44
|
+
styles: "padding:0;label:hasEventColor;"
|
|
45
45
|
} : {
|
|
46
|
-
name: "
|
|
47
|
-
styles: "
|
|
46
|
+
name: "bqgcpj-hasEventColor",
|
|
47
|
+
styles: "padding:0;label:hasEventColor;",
|
|
48
48
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
49
49
|
};
|
|
50
50
|
|
|
@@ -52,18 +52,17 @@ export var euiCommentEventHeaderStyles = function euiCommentEventHeaderStyles(_r
|
|
|
52
52
|
var euiTheme = _ref5.euiTheme;
|
|
53
53
|
return {
|
|
54
54
|
euiCommentEvent__header: /*#__PURE__*/css(";label:euiCommentEvent__header;"),
|
|
55
|
-
|
|
55
|
+
// types
|
|
56
|
+
regular: /*#__PURE__*/css("background:", euiTheme.colors.lightestShade, ";border-bottom:", euiTheme.border.thin, ";padding:", euiTheme.size.s, ";;label:regular;"),
|
|
57
|
+
// variants
|
|
58
|
+
hasEventColor: _ref2,
|
|
59
|
+
// Children
|
|
56
60
|
euiCommentEvent__headerMain: /*#__PURE__*/css("display:flex;flex:1;gap:", euiTheme.size.s, ";;label:euiCommentEvent__headerMain;"),
|
|
57
61
|
euiCommentEvent__headerData: /*#__PURE__*/css("display:flex;flex:1;align-items:center;flex-wrap:wrap;gap:", euiTheme.size.xs, ";;label:euiCommentEvent__headerData;"),
|
|
58
62
|
euiCommentEvent__headerEventIcon: /*#__PURE__*/css(logicalCSS('margin-right', euiTheme.size.xs), ";;label:euiCommentEvent__headerEventIcon;"),
|
|
59
63
|
euiCommentEvent__headerUsername: /*#__PURE__*/css("font-weight:", euiTheme.font.weight.semiBold, ";;label:euiCommentEvent__headerUsername;"),
|
|
60
|
-
euiCommentEvent__headerEvent:
|
|
61
|
-
|
|
62
|
-
euiCommentEvent__headerActions: /*#__PURE__*/css("display:flex;flex-wrap:wrap;gap:", euiTheme.size.xs, ";;label:euiCommentEvent__headerActions;"),
|
|
63
|
-
// types
|
|
64
|
-
regular: /*#__PURE__*/css("background:", euiTheme.colors.lightestShade, ";border-bottom:", euiTheme.border.thin, ";padding:", euiTheme.size.s, ";;label:regular;"),
|
|
65
|
-
// variants
|
|
66
|
-
hasEventColor: _ref
|
|
64
|
+
euiCommentEvent__headerEvent: _ref,
|
|
65
|
+
euiCommentEvent__headerActions: /*#__PURE__*/css("display:flex;flex-wrap:wrap;gap:", euiTheme.size.xs, ";;label:euiCommentEvent__headerActions;")
|
|
67
66
|
};
|
|
68
67
|
};
|
|
69
68
|
export var euiCommentEventBodyStyles = function euiCommentEventBodyStyles(_ref6) {
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ensure the EuiPopover being tested is open/closed before contiuning
|
|
3
|
+
* Note: Because EuiPopover is portalled, we want to query `document`
|
|
4
|
+
* instead of the `container` returned by RTL's render()
|
|
5
|
+
*/
|
|
6
|
+
export declare const waitForEuiPopoverOpen: () => Promise<void>;
|
|
7
|
+
export declare const waitForEuiPopoverClose: () => Promise<void>;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
2
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
3
|
+
|
|
4
|
+
/*
|
|
5
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
6
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
7
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
8
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
9
|
+
* Side Public License, v 1.
|
|
10
|
+
*/
|
|
11
|
+
import { waitFor } from '@testing-library/react';
|
|
12
|
+
/**
|
|
13
|
+
* Ensure the EuiPopover being tested is open/closed before contiuning
|
|
14
|
+
* Note: Because EuiPopover is portalled, we want to query `document`
|
|
15
|
+
* instead of the `container` returned by RTL's render()
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
export var waitForEuiPopoverOpen = /*#__PURE__*/function () {
|
|
19
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
20
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
21
|
+
while (1) {
|
|
22
|
+
switch (_context.prev = _context.next) {
|
|
23
|
+
case 0:
|
|
24
|
+
_context.next = 2;
|
|
25
|
+
return waitFor(function () {
|
|
26
|
+
var openPopover = document.querySelector('[data-popover-open]');
|
|
27
|
+
expect(openPopover).toBeTruthy();
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
case 2:
|
|
31
|
+
return _context.abrupt("return", _context.sent);
|
|
32
|
+
|
|
33
|
+
case 3:
|
|
34
|
+
case "end":
|
|
35
|
+
return _context.stop();
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}, _callee);
|
|
39
|
+
}));
|
|
40
|
+
|
|
41
|
+
return function waitForEuiPopoverOpen() {
|
|
42
|
+
return _ref.apply(this, arguments);
|
|
43
|
+
};
|
|
44
|
+
}();
|
|
45
|
+
export var waitForEuiPopoverClose = /*#__PURE__*/function () {
|
|
46
|
+
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
47
|
+
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
48
|
+
while (1) {
|
|
49
|
+
switch (_context2.prev = _context2.next) {
|
|
50
|
+
case 0:
|
|
51
|
+
_context2.next = 2;
|
|
52
|
+
return waitFor(function () {
|
|
53
|
+
var openPopover = document.querySelector('[data-popover-open]');
|
|
54
|
+
expect(openPopover).toBeFalsy();
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
case 2:
|
|
58
|
+
return _context2.abrupt("return", _context2.sent);
|
|
59
|
+
|
|
60
|
+
case 3:
|
|
61
|
+
case "end":
|
|
62
|
+
return _context2.stop();
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}, _callee2);
|
|
66
|
+
}));
|
|
67
|
+
|
|
68
|
+
return function waitForEuiPopoverClose() {
|
|
69
|
+
return _ref2.apply(this, arguments);
|
|
70
|
+
};
|
|
71
|
+
}();
|