@terraware/web-components 2.3.71-rc.1 → 2.3.71-rc.3
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/components/table/EnhancedTableToolbar.d.ts +4 -1
- package/components/table/EnhancedTableToolbar.d.ts.map +1 -1
- package/components/table/EnhancedTableToolbar.js +32 -5
- package/components/table/EnhancedTableToolbarV2.d.ts +20 -0
- package/components/table/EnhancedTableToolbarV2.d.ts.map +1 -0
- package/components/table/EnhancedTableToolbarV2.js +50 -0
- package/components/table/index.d.ts +8 -2
- package/components/table/index.d.ts.map +1 -1
- package/components/table/index.js +21 -6
- package/package.json +1 -1
- package/stories/Table.stories.d.ts +4 -0
- package/stories/Table.stories.d.ts.map +1 -1
@@ -1,8 +1,11 @@
|
|
1
1
|
import { TopBarButton } from '.';
|
2
|
+
import { EnhancedTopBarSelectionConfig } from './EnhancedTableToolbarV2';
|
2
3
|
interface EnhancedTableToolbarProps {
|
4
|
+
isAllSelected?: boolean;
|
3
5
|
numSelected: number;
|
4
|
-
renderNumSelectedText?: (numSelected: number) => string
|
6
|
+
renderNumSelectedText?: (numSelected: number) => string;
|
5
7
|
topBarButtons?: (TopBarButton | JSX.Element)[];
|
8
|
+
topBarSelectionConfig?: EnhancedTopBarSelectionConfig;
|
6
9
|
}
|
7
10
|
export default function EnhancedTableToolbar(props: EnhancedTableToolbarProps): JSX.Element | null;
|
8
11
|
export {};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"EnhancedTableToolbar.d.ts","sourceRoot":"","sources":["../../../src/components/table/EnhancedTableToolbar.tsx"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"EnhancedTableToolbar.d.ts","sourceRoot":"","sources":["../../../src/components/table/EnhancedTableToolbar.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAkB,YAAY,EAAE,MAAM,GAAG,CAAC;AAGjD,OAAO,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AAkBzE,UAAU,yBAAyB;IACjC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;IACxD,aAAa,CAAC,EAAE,CAAC,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/C,qBAAqB,CAAC,EAAE,6BAA6B,CAAC;CACvD;AAED,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,GAAG,GAAG,CAAC,OAAO,GAAG,IAAI,CAyDjG"}
|
@@ -1,15 +1,16 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
5
6
|
value: true
|
6
7
|
});
|
7
8
|
exports.default = EnhancedTableToolbar;
|
8
|
-
var _react =
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
9
10
|
var _material = require("@mui/material");
|
11
|
+
var _styles = require("@mui/styles");
|
10
12
|
var _ = require(".");
|
11
13
|
var _Button = _interopRequireDefault(require("../Button/Button"));
|
12
|
-
var _styles = require("@mui/styles");
|
13
14
|
var _Tooltip = _interopRequireDefault(require("../Tooltip/Tooltip"));
|
14
15
|
var styles = (0, _styles.makeStyles)(function (theme) {
|
15
16
|
return {
|
@@ -21,14 +22,40 @@ var styles = (0, _styles.makeStyles)(function (theme) {
|
|
21
22
|
},
|
22
23
|
buttonSpacing: {
|
23
24
|
marginLeft: theme.spacing(1)
|
25
|
+
},
|
26
|
+
selectLink: {
|
27
|
+
color: theme.palette.TwClrTxtBrand,
|
28
|
+
cursor: 'pointer'
|
24
29
|
}
|
25
30
|
};
|
26
31
|
});
|
27
32
|
function EnhancedTableToolbar(props) {
|
28
|
-
var
|
33
|
+
var isAllSelected = props.isAllSelected,
|
34
|
+
numSelected = props.numSelected,
|
29
35
|
renderNumSelectedText = props.renderNumSelectedText,
|
30
|
-
topBarButtons = props.topBarButtons
|
36
|
+
topBarButtons = props.topBarButtons,
|
37
|
+
topBarSelectionConfig = props.topBarSelectionConfig;
|
31
38
|
var classes = styles();
|
39
|
+
var topBarSelection = (0, _react.useMemo)(function () {
|
40
|
+
if (!renderNumSelectedText) {
|
41
|
+
return null;
|
42
|
+
}
|
43
|
+
if (!topBarSelectionConfig) {
|
44
|
+
return renderNumSelectedText(numSelected);
|
45
|
+
}
|
46
|
+
var handleSelectAll = topBarSelectionConfig.handleSelectAll,
|
47
|
+
handleSelectNone = topBarSelectionConfig.handleSelectNone,
|
48
|
+
renderSelectAllText = topBarSelectionConfig.renderSelectAllText,
|
49
|
+
renderSelectNoneText = topBarSelectionConfig.renderSelectNoneText,
|
50
|
+
renderEnhancedNumSelectedText = topBarSelectionConfig.renderEnhancedNumSelectedText;
|
51
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, renderEnhancedNumSelectedText ? renderEnhancedNumSelectedText() : renderNumSelectedText(numSelected), ' ', !isAllSelected && handleSelectAll && renderSelectAllText && /*#__PURE__*/_react.default.createElement(_material.Link, {
|
52
|
+
className: classes.selectLink,
|
53
|
+
onClick: handleSelectAll
|
54
|
+
}, renderSelectAllText()), isAllSelected && handleSelectNone && renderSelectNoneText && /*#__PURE__*/_react.default.createElement(_material.Link, {
|
55
|
+
className: classes.selectLink,
|
56
|
+
onClick: handleSelectNone
|
57
|
+
}, renderSelectNoneText()));
|
58
|
+
}, [renderNumSelectedText, topBarSelectionConfig, numSelected]);
|
32
59
|
return renderNumSelectedText && numSelected > 0 ? /*#__PURE__*/_react.default.createElement(_material.Toolbar, {
|
33
60
|
className: classes.toolbar
|
34
61
|
}, /*#__PURE__*/_react.default.createElement(_material.Typography, {
|
@@ -36,7 +63,7 @@ function EnhancedTableToolbar(props) {
|
|
36
63
|
variant: "subtitle1",
|
37
64
|
component: "div",
|
38
65
|
className: classes.flexText
|
39
|
-
},
|
66
|
+
}, topBarSelection), topBarButtons === null || topBarButtons === void 0 ? void 0 : topBarButtons.map(function (tbButton, index) {
|
40
67
|
return (0, _.isTopBarButton)(tbButton) ? /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
|
41
68
|
title: tbButton.tooltipTitle,
|
42
69
|
key: index
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import { TopBarButton, EnhancedTopBarSelectionProps } from './index';
|
2
|
+
export interface EnhancedTopBarSelectionConfig {
|
3
|
+
handleSelectAll?: () => void;
|
4
|
+
handleSelectNone?: () => void;
|
5
|
+
renderEnhancedNumSelectedText?: () => string;
|
6
|
+
renderSelectAllText?: () => string;
|
7
|
+
renderSelectNoneText?: () => string;
|
8
|
+
}
|
9
|
+
type DecoratedEnhancedTopBarSelectionConfig = Omit<EnhancedTopBarSelectionConfig, 'renderEnhancedNumSelectedText' | 'renderSelectAllText' | 'renderSelectNoneText'> & EnhancedTopBarSelectionProps;
|
10
|
+
interface EnhancedTableToolbarV2Props {
|
11
|
+
selectedRowsCount: number;
|
12
|
+
pagesCount: number;
|
13
|
+
renderNumSelectedText?: (selectedCount: number) => string;
|
14
|
+
rowsCount: number;
|
15
|
+
topBarButtons?: (TopBarButton | JSX.Element)[];
|
16
|
+
topBarSelectionConfig?: DecoratedEnhancedTopBarSelectionConfig;
|
17
|
+
}
|
18
|
+
declare const EnhancedTableToolbarV2: ({ selectedRowsCount, pagesCount, renderNumSelectedText, rowsCount, topBarButtons, topBarSelectionConfig, }: EnhancedTableToolbarV2Props) => JSX.Element;
|
19
|
+
export default EnhancedTableToolbarV2;
|
20
|
+
//# sourceMappingURL=EnhancedTableToolbarV2.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"EnhancedTableToolbarV2.d.ts","sourceRoot":"","sources":["../../../src/components/table/EnhancedTableToolbarV2.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,4BAA4B,EAAE,MAAM,SAAS,CAAC;AAErE,MAAM,WAAW,6BAA6B;IAC5C,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,6BAA6B,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7C,mBAAmB,CAAC,EAAE,MAAM,MAAM,CAAC;IACnC,oBAAoB,CAAC,EAAE,MAAM,MAAM,CAAC;CACrC;AAED,KAAK,sCAAsC,GAAG,IAAI,CAChD,6BAA6B,EAC7B,+BAA+B,GAAG,qBAAqB,GAAG,sBAAsB,CACjF,GACC,4BAA4B,CAAC;AAE/B,UAAU,2BAA2B;IACnC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1D,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,CAAC,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/C,qBAAqB,CAAC,EAAE,sCAAsC,CAAC;CAChE;AAED,QAAA,MAAM,sBAAsB,+GAOzB,2BAA2B,gBA4B7B,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
|
@@ -0,0 +1,50 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
6
|
+
value: true
|
7
|
+
});
|
8
|
+
exports.default = void 0;
|
9
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
11
|
+
var _EnhancedTableToolbar = _interopRequireDefault(require("./EnhancedTableToolbar"));
|
12
|
+
var EnhancedTableToolbarV2 = function EnhancedTableToolbarV2(_ref) {
|
13
|
+
var selectedRowsCount = _ref.selectedRowsCount,
|
14
|
+
pagesCount = _ref.pagesCount,
|
15
|
+
renderNumSelectedText = _ref.renderNumSelectedText,
|
16
|
+
rowsCount = _ref.rowsCount,
|
17
|
+
topBarButtons = _ref.topBarButtons,
|
18
|
+
topBarSelectionConfig = _ref.topBarSelectionConfig;
|
19
|
+
var _topBarSelectionConfig = (0, _react.useMemo)(function () {
|
20
|
+
if (!topBarSelectionConfig) {
|
21
|
+
return topBarSelectionConfig;
|
22
|
+
}
|
23
|
+
var _renderEnhancedNumSelectedText = topBarSelectionConfig.renderEnhancedNumSelectedText,
|
24
|
+
_renderSelectAllText = topBarSelectionConfig.renderSelectAllText;
|
25
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, topBarSelectionConfig), {}, {
|
26
|
+
renderEnhancedNumSelectedText: function renderEnhancedNumSelectedText() {
|
27
|
+
return _renderEnhancedNumSelectedText && _renderEnhancedNumSelectedText(selectedRowsCount || 0, pagesCount) || '';
|
28
|
+
},
|
29
|
+
renderSelectAllText: function renderSelectAllText() {
|
30
|
+
return _renderSelectAllText && _renderSelectAllText(rowsCount) || '';
|
31
|
+
}
|
32
|
+
});
|
33
|
+
}, [topBarSelectionConfig, selectedRowsCount, rowsCount, pagesCount]);
|
34
|
+
if (topBarSelectionConfig) {
|
35
|
+
return /*#__PURE__*/_react.default.createElement(_EnhancedTableToolbar.default, {
|
36
|
+
numSelected: selectedRowsCount,
|
37
|
+
topBarButtons: topBarButtons,
|
38
|
+
topBarSelectionConfig: _topBarSelectionConfig,
|
39
|
+
isAllSelected: rowsCount === selectedRowsCount,
|
40
|
+
renderNumSelectedText: renderNumSelectedText
|
41
|
+
});
|
42
|
+
}
|
43
|
+
return /*#__PURE__*/_react.default.createElement(_EnhancedTableToolbar.default, {
|
44
|
+
numSelected: selectedRowsCount,
|
45
|
+
renderNumSelectedText: renderNumSelectedText,
|
46
|
+
topBarButtons: topBarButtons
|
47
|
+
});
|
48
|
+
};
|
49
|
+
var _default = EnhancedTableToolbarV2;
|
50
|
+
exports.default = _default;
|
@@ -11,12 +11,17 @@ export interface HeadCell {
|
|
11
11
|
tooltipTitle?: TooltipProps['title'];
|
12
12
|
}
|
13
13
|
export interface LocalizationProps {
|
14
|
-
renderNumSelectedText?: (numSelected: number) => string
|
14
|
+
renderNumSelectedText?: (numSelected: number) => string;
|
15
15
|
renderPaginationText?: (from: number, to: number, total: number) => string;
|
16
16
|
booleanFalseText: string;
|
17
17
|
booleanTrueText: string;
|
18
18
|
editText: string;
|
19
19
|
}
|
20
|
+
export type EnhancedTopBarSelectionProps = {
|
21
|
+
renderEnhancedNumSelectedText?: (selectedCount: number, pagesCount: number) => string;
|
22
|
+
renderSelectAllText?: (rowsCount: number) => string;
|
23
|
+
renderSelectNoneText?: () => string;
|
24
|
+
};
|
20
25
|
export interface Props<T> extends LocalizationProps {
|
21
26
|
id?: string;
|
22
27
|
orderBy: string;
|
@@ -42,6 +47,7 @@ export interface Props<T> extends LocalizationProps {
|
|
42
47
|
reloadData?: () => void;
|
43
48
|
stickyHeader?: boolean;
|
44
49
|
hideHeader?: boolean;
|
50
|
+
enhancedTopBarSelectionConfig?: EnhancedTopBarSelectionProps;
|
45
51
|
}
|
46
52
|
export type TopBarButton = {
|
47
53
|
buttonText?: string;
|
@@ -52,6 +58,6 @@ export type TopBarButton = {
|
|
52
58
|
tooltipTitle?: TooltipProps['title'];
|
53
59
|
};
|
54
60
|
export declare const isTopBarButton: (input: unknown) => input is TopBarButton;
|
55
|
-
export default function EnhancedTable<T extends TableRowType>({ id, columns, rows, order: _order, orderBy: _orderBy, Renderer, onSelect, DetailsRenderer, sortComparator, sortHandler, isInactive, isPresorted, onReorderEnd, isClickable, emptyTableMessage, showCheckbox, showTopBar, topBarButtons, selectedRows, setSelectedRows, controlledOnSelect, reloadData, stickyHeader, hideHeader, booleanFalseText, booleanTrueText, editText, renderNumSelectedText, renderPaginationText, }: Props<T>): JSX.Element;
|
61
|
+
export default function EnhancedTable<T extends TableRowType>({ id, columns, rows, order: _order, orderBy: _orderBy, Renderer, onSelect, DetailsRenderer, sortComparator, sortHandler, isInactive, isPresorted, onReorderEnd, isClickable, emptyTableMessage, showCheckbox, showTopBar, topBarButtons, selectedRows, setSelectedRows, controlledOnSelect, reloadData, stickyHeader, hideHeader, booleanFalseText, booleanTrueText, editText, renderNumSelectedText, renderPaginationText, enhancedTopBarSelectionConfig, }: Props<T>): JSX.Element;
|
56
62
|
export declare function tableSort<T>(ignore: boolean, array: T[], comparator: (a: T, b: T) => number): T[];
|
57
63
|
//# sourceMappingURL=index.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/table/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA2F,YAAY,EAAwB,MAAM,eAAe,CAAC;AAC5J,OAAO,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/table/index.tsx"],"names":[],"mappings":"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"}
|
@@ -13,7 +13,7 @@ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/
|
|
13
13
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
14
14
|
var _material = require("@mui/material");
|
15
15
|
var _react = _interopRequireWildcard(require("react"));
|
16
|
-
var
|
16
|
+
var _EnhancedTableToolbarV = _interopRequireDefault(require("./EnhancedTableToolbarV2"));
|
17
17
|
var _sort = require("./sort");
|
18
18
|
var _TableCellRenderer = _interopRequireDefault(require("./TableCellRenderer"));
|
19
19
|
var _TableHeader = _interopRequireDefault(require("./TableHeader"));
|
@@ -48,6 +48,9 @@ var tableStyles = (0, _styles.makeStyles)(function (theme) {
|
|
48
48
|
}
|
49
49
|
};
|
50
50
|
});
|
51
|
+
|
52
|
+
// Only the text related props need to be passed in by the implementer, and extra data is passed to the caller
|
53
|
+
|
51
54
|
var isTopBarButton = function isTopBarButton(input) {
|
52
55
|
var castInput = input;
|
53
56
|
return !!(castInput.buttonType && castInput.onButtonClick);
|
@@ -86,7 +89,8 @@ function EnhancedTable(_ref) {
|
|
86
89
|
booleanTrueText = _ref.booleanTrueText,
|
87
90
|
editText = _ref.editText,
|
88
91
|
renderNumSelectedText = _ref.renderNumSelectedText,
|
89
|
-
renderPaginationText = _ref.renderPaginationText
|
92
|
+
renderPaginationText = _ref.renderPaginationText,
|
93
|
+
enhancedTopBarSelectionConfig = _ref.enhancedTopBarSelectionConfig;
|
90
94
|
var classes = tableStyles();
|
91
95
|
var theme = (0, _material.useTheme)();
|
92
96
|
var _React$useState = _react.default.useState(_order),
|
@@ -257,10 +261,21 @@ function EnhancedTable(_ref) {
|
|
257
261
|
}
|
258
262
|
}
|
259
263
|
}
|
260
|
-
|
261
|
-
|
264
|
+
var pagesCount = Math.ceil(rows.length / maxItemsPerPage);
|
265
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, showTopBar && /*#__PURE__*/_react.default.createElement(_EnhancedTableToolbarV.default, {
|
266
|
+
selectedRowsCount: (selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.length) || 0,
|
267
|
+
pagesCount: pagesCount,
|
262
268
|
renderNumSelectedText: renderNumSelectedText,
|
263
|
-
|
269
|
+
rowsCount: rows.length,
|
270
|
+
topBarButtons: topBarButtons,
|
271
|
+
topBarSelectionConfig: enhancedTopBarSelectionConfig ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, enhancedTopBarSelectionConfig), {}, {
|
272
|
+
handleSelectAll: function handleSelectAll() {
|
273
|
+
return setSelectedRows && setSelectedRows(rows);
|
274
|
+
},
|
275
|
+
handleSelectNone: function handleSelectNone() {
|
276
|
+
return setSelectedRows && setSelectedRows([]);
|
277
|
+
}
|
278
|
+
}) : undefined
|
264
279
|
}), /*#__PURE__*/_react.default.createElement(_material.TableContainer, {
|
265
280
|
id: id,
|
266
281
|
sx: {
|
@@ -357,7 +372,7 @@ function EnhancedTable(_ref) {
|
|
357
372
|
paddingRight: "24px",
|
358
373
|
fontSize: "14px"
|
359
374
|
}, renderPaginationText(0, 0, 0)), /*#__PURE__*/_react.default.createElement(_material.Pagination, {
|
360
|
-
count:
|
375
|
+
count: pagesCount,
|
361
376
|
page: itemsToSkip / maxItemsPerPage + 1,
|
362
377
|
shape: "rounded",
|
363
378
|
onChange: handleChangePage,
|
package/package.json
CHANGED
@@ -20,4 +20,8 @@ export declare const ShowTopBar: import("@storybook/types").AnnotatedStoryFn<imp
|
|
20
20
|
name: string;
|
21
21
|
lastname: string;
|
22
22
|
}>>;
|
23
|
+
export declare const ShowTopBarV2: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0a347bb9").R, TableProps<{
|
24
|
+
name: string;
|
25
|
+
lastname: string;
|
26
|
+
}>>;
|
23
27
|
//# sourceMappingURL=Table.stories.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Table.stories.d.ts","sourceRoot":"","sources":["../../src/stories/Table.stories.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,
|
1
|
+
{"version":3,"file":"Table.stories.d.ts","sourceRoot":"","sources":["../../src/stories/Table.stories.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAgC,KAAK,IAAI,UAAU,EAAE,MAAM,2BAA2B,CAAC;;;;;AAYrG,wBAGE;AAmDF,eAAO,MAAM,OAAO;UAtCqB,MAAM;cAAY,MAAM;GAsCzB,CAAC;AACzC,eAAO,MAAM,UAAU;UAvCkB,MAAM;cAAY,MAAM;GAuCtB,CAAC;AAC5C,eAAO,MAAM,SAAS;UAxCmB,MAAM;cAAY,MAAM;GAwCvB,CAAC;AAC3C,eAAO,MAAM,UAAU;UAzCkB,MAAM;cAAY,MAAM;GAyCtB,CAAC;AAC5C,eAAO,MAAM,YAAY;UA1CgB,MAAM;cAAY,MAAM;GA0CpB,CAAC"}
|