@cloudscape-design/components 3.0.847 → 3.0.849

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/internal/environment.js +1 -1
  2. package/internal/environment.json +1 -1
  3. package/internal/manifest.json +1 -1
  4. package/package.json +1 -1
  5. package/s3-resource-selector/s3-modal/buckets-table.js +7 -7
  6. package/s3-resource-selector/s3-modal/buckets-table.js.map +1 -1
  7. package/table/body-cell/inline-editor.js +1 -1
  8. package/table/body-cell/inline-editor.js.map +1 -1
  9. package/table/body-cell/styles.css.js +45 -46
  10. package/table/body-cell/styles.scoped.css +382 -304
  11. package/table/body-cell/styles.selectors.js +45 -46
  12. package/table/body-cell/td-element.d.ts +2 -1
  13. package/table/body-cell/td-element.d.ts.map +1 -1
  14. package/table/body-cell/td-element.js +4 -3
  15. package/table/body-cell/td-element.js.map +1 -1
  16. package/table/column-widths-utils.d.ts +6 -1
  17. package/table/column-widths-utils.d.ts.map +1 -1
  18. package/table/column-widths-utils.js.map +1 -1
  19. package/table/header-cell/index.d.ts +3 -2
  20. package/table/header-cell/index.d.ts.map +1 -1
  21. package/table/header-cell/index.js +2 -2
  22. package/table/header-cell/index.js.map +1 -1
  23. package/table/header-cell/th-element.d.ts +3 -2
  24. package/table/header-cell/th-element.d.ts.map +1 -1
  25. package/table/header-cell/th-element.js +2 -2
  26. package/table/header-cell/th-element.js.map +1 -1
  27. package/table/internal.d.ts.map +1 -1
  28. package/table/internal.js +5 -7
  29. package/table/internal.js.map +1 -1
  30. package/table/styles.css.js +34 -34
  31. package/table/styles.scoped.css +42 -41
  32. package/table/styles.selectors.js +34 -34
  33. package/table/thead.js +1 -1
  34. package/table/thead.js.map +1 -1
  35. package/table/use-column-widths.d.ts +3 -5
  36. package/table/use-column-widths.d.ts.map +1 -1
  37. package/table/use-column-widths.js.map +1 -1
  38. package/wizard/interfaces.d.ts +1 -1
  39. package/wizard/interfaces.js.map +1 -1
@@ -1,4 +1,4 @@
1
1
  export var PACKAGE_SOURCE = "components";
2
- export var PACKAGE_VERSION = "3.0.0 (0b55da66)";
2
+ export var PACKAGE_VERSION = "3.0.0 (468db9e5)";
3
3
  export var THEME = "open-source-visual-refresh";
4
4
  export var ALWAYS_VISUAL_REFRESH = true;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "PACKAGE_SOURCE": "components",
3
- "PACKAGE_VERSION": "3.0.0 (0b55da66)",
3
+ "PACKAGE_VERSION": "3.0.0 (468db9e5)",
4
4
  "THEME": "default",
5
5
  "ALWAYS_VISUAL_REFRESH": false
6
6
  }
@@ -1,3 +1,3 @@
1
1
  {
2
- "commit": "0b55da665d0d4b2dff4fd6883c3580f23f5b98b0"
2
+ "commit": "468db9e5e4f940ceff4c1289f8800121ca1f9cc5"
3
3
  }
package/package.json CHANGED
@@ -131,7 +131,7 @@
131
131
  "./internal/base-component/index.js",
132
132
  "./internal/base-component/styles.css.js"
133
133
  ],
134
- "version": "3.0.847",
134
+ "version": "3.0.849",
135
135
  "repository": {
136
136
  "type": "git",
137
137
  "url": "https://github.com/cloudscape-design/components.git"
@@ -21,13 +21,6 @@ export function BucketsTable({ forwardFocusRef, i18nStrings, isVisualRefresh, is
21
21
  },
22
22
  minWidth: '250px',
23
23
  },
24
- {
25
- id: 'CreationDate',
26
- header: i18n('i18nStrings.columnBucketCreationDate', i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnBucketCreationDate),
27
- ariaLabel: getColumnAriaLabel(i18n, i18nStrings, i18n('i18nStrings.columnBucketCreationDate', i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnBucketCreationDate)),
28
- sortingComparator: (a, b) => compareDates(a.CreationDate, b.CreationDate),
29
- cell: item => formatDefault(item.CreationDate),
30
- },
31
24
  {
32
25
  id: 'Region',
33
26
  header: i18n('i18nStrings.columnBucketRegion', i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnBucketRegion),
@@ -36,6 +29,13 @@ export function BucketsTable({ forwardFocusRef, i18nStrings, isVisualRefresh, is
36
29
  cell: item => formatDefault(item.Region),
37
30
  minWidth: '150px',
38
31
  },
32
+ {
33
+ id: 'CreationDate',
34
+ header: i18n('i18nStrings.columnBucketCreationDate', i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnBucketCreationDate),
35
+ ariaLabel: getColumnAriaLabel(i18n, i18nStrings, i18n('i18nStrings.columnBucketCreationDate', i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnBucketCreationDate)),
36
+ sortingComparator: (a, b) => compareDates(a.CreationDate, b.CreationDate),
37
+ cell: item => formatDefault(item.CreationDate),
38
+ },
39
39
  ], onSelect: item => { var _a; return onSelect((_a = item === null || item === void 0 ? void 0 : item.Name) !== null && _a !== void 0 ? _a : ''); } }));
40
40
  }
41
41
  //# sourceMappingURL=buckets-table.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buckets-table.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/buckets-table.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,YAAY,MAAM,qBAAqB,CAAC;AAG/C,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAc3E,MAAM,UAAU,YAAY,CAAC,EAC3B,eAAe,EACf,WAAW,EACX,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,SAAS,EACT,cAAc,EACd,WAAW,EACX,QAAQ,GACU;;IAClB,MAAM,IAAI,GAAG,eAAe,CAAC,sBAAsB,CAAC,CAAC;IAErD,OAAO,CACL,oBAAC,YAAY,IACX,eAAe,EAAE,eAAe,EAChC,OAAO,EAAC,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC,EACpF,WAAW,kCACN,mBAAmB,CAAC,IAAI,EAAE,WAAW,CAAC,KACzC,MAAM,EAAE,IAAI,CAAC,8BAA8B,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,CAAC,EAC3E,WAAW,EAAE,IAAI,CAAC,qCAAqC,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,uBAAuB,CAAC,EAC9F,kBAAkB,EAAE,MAAA,IAAI,CACtB,4BAA4B,EAC5B,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,cAAc,EAC3B,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAC7C,0CAAG,MAAA,IAAI,CAAC,8BAA8B,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,CAAC,mCAAI,EAAE,CAAC,EAC9E,oBAAoB,EAAE,IAAI,CACxB,+CAA+C,EAC/C,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,iCAAiC,CAC/C,EACD,SAAS,EAAE,IAAI,CAAC,qCAAqC,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,uBAAuB,CAAC,EAC5F,eAAe,kCACV,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,sBAAsB,KACtC,mBAAmB,EAAE,IAAI,CACvB,wDAAwD,EACxD,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,sBAAsB,0CAAE,mBAAmB,CACzD,EACD,kBAAkB,EAAE,IAAI,CACtB,uDAAuD,EACvD,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,sBAAsB,0CAAE,kBAAkB,EACvD,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,WAAC,OAAA,MAAM,CAAC,EAAE,UAAU,EAAE,MAAA,IAAI,CAAC,IAAI,mCAAI,EAAE,EAAE,CAAC,CAAA,EAAA,CAClE,QAGL,eAAe,EAAE,eAAe,EAChC,iBAAiB,EAAE;YACjB;gBACE,EAAE,EAAE,MAAM;gBACV,MAAM,EAAE,IAAI,CAAC,8BAA8B,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,CAAC;gBAC3E,SAAS,EAAE,kBAAkB,CAC3B,IAAI,EACJ,WAAW,EACX,IAAI,CAAC,8BAA8B,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,CAAC,CACpE;gBACD,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,IAAI,CAAC,EAAE;oBACX,MAAM,WAAW,GAAG,QAAQ,CAAC,oBAAoB,EAAE,SAAS,CAAC,IAAI,QAAQ,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;oBAC5G,OAAO,WAAW,CAAC,CAAC,CAAC,CACnB,oBAAC,YAAY,IAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAC,MAAM,IAC9E,IAAI,CAAC,IAAI,CACG,CAChB,CAAC,CAAC,CAAC,CACF,IAAI,CAAC,IAAI,CACV,CAAC;gBACJ,CAAC;gBACD,QAAQ,EAAE,OAAO;aAClB;YACD;gBACE,EAAE,EAAE,cAAc;gBAClB,MAAM,EAAE,IAAI,CAAC,sCAAsC,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,wBAAwB,CAAC;gBAC3F,SAAS,EAAE,kBAAkB,CAC3B,IAAI,EACJ,WAAW,EACX,IAAI,CAAC,sCAAsC,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,wBAAwB,CAAC,CACpF;gBACD,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC;gBACzE,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC;aAC/C;YACD;gBACE,EAAE,EAAE,QAAQ;gBACZ,MAAM,EAAE,IAAI,CAAC,gCAAgC,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,kBAAkB,CAAC;gBAC/E,SAAS,EAAE,kBAAkB,CAC3B,IAAI,EACJ,WAAW,EACX,IAAI,CAAC,gCAAgC,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,kBAAkB,CAAC,CACxE;gBACD,YAAY,EAAE,QAAQ;gBACtB,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;gBACxC,QAAQ,EAAE,OAAO;aAClB;SACF,EACD,QAAQ,EAAE,IAAI,CAAC,EAAE,WAAC,OAAA,QAAQ,CAAC,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,mCAAI,EAAE,CAAC,CAAA,EAAA,GAC5C,CACH,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\n\nimport { useInternalI18n } from '../../i18n/context';\nimport { ForwardFocusRef } from '../../internal/hooks/forward-focus';\nimport InternalLink from '../../link/internal';\nimport { TableProps } from '../../table/interfaces';\nimport { S3ResourceSelectorProps } from '../interfaces';\nimport { BasicS3Table, getSharedI18Strings } from './basic-table';\nimport { formatDefault } from './column-formats';\nimport { compareDates, getColumnAriaLabel, includes } from './table-utils';\n\ninterface BucketsTableProps {\n forwardFocusRef: React.Ref<ForwardFocusRef>;\n visibleColumns: ReadonlyArray<string>;\n isItemDisabled: TableProps.IsItemDisabled<S3ResourceSelectorProps.Bucket> | undefined;\n selectableItemsTypes: S3ResourceSelectorProps['selectableItemsTypes'];\n fetchData: S3ResourceSelectorProps['fetchBuckets'];\n i18nStrings: S3ResourceSelectorProps.I18nStrings | undefined;\n isVisualRefresh?: boolean;\n onDrilldown: (path: string) => void;\n onSelect: (uri: string) => void;\n}\n\nexport function BucketsTable({\n forwardFocusRef,\n i18nStrings,\n isVisualRefresh,\n isItemDisabled,\n selectableItemsTypes,\n fetchData,\n visibleColumns,\n onDrilldown,\n onSelect,\n}: BucketsTableProps) {\n const i18n = useInternalI18n('s3-resource-selector');\n\n return (\n <BasicS3Table<S3ResourceSelectorProps.Bucket>\n forwardFocusRef={forwardFocusRef}\n trackBy=\"Name\"\n fetchData={fetchData}\n visibleColumns={visibleColumns}\n isItemDisabled={isItemDisabled || (() => !includes(selectableItemsTypes, 'buckets'))}\n i18nStrings={{\n ...getSharedI18Strings(i18n, i18nStrings),\n header: i18n('i18nStrings.selectionBuckets', i18nStrings?.selectionBuckets),\n loadingText: i18n('i18nStrings.selectionBucketsLoading', i18nStrings?.selectionBucketsLoading),\n filteringAriaLabel: i18n(\n 'i18nStrings.labelFiltering',\n i18nStrings?.labelFiltering,\n format => itemsType => format({ itemsType })\n )?.(i18n('i18nStrings.selectionBuckets', i18nStrings?.selectionBuckets) ?? ''),\n filteringPlaceholder: i18n(\n 'i18nStrings.selectionBucketsSearchPlaceholder',\n i18nStrings?.selectionBucketsSearchPlaceholder\n ),\n emptyText: i18n('i18nStrings.selectionBucketsNoItems', i18nStrings?.selectionBucketsNoItems),\n selectionLabels: {\n ...i18nStrings?.labelsBucketsSelection,\n selectionGroupLabel: i18n(\n 'i18nStrings.labelsBucketsSelection.selectionGroupLabel',\n i18nStrings?.labelsBucketsSelection?.selectionGroupLabel\n ),\n itemSelectionLabel: i18n(\n 'i18nStrings.labelsBucketsSelection.itemSelectionLabel',\n i18nStrings?.labelsBucketsSelection?.itemSelectionLabel,\n format => (data, item) => format({ item__Name: item.Name ?? '' })\n ),\n },\n }}\n isVisualRefresh={isVisualRefresh}\n columnDefinitions={[\n {\n id: 'Name',\n header: i18n('i18nStrings.columnBucketName', i18nStrings?.columnBucketName),\n ariaLabel: getColumnAriaLabel(\n i18n,\n i18nStrings,\n i18n('i18nStrings.columnBucketName', i18nStrings?.columnBucketName)\n ),\n sortingField: 'Name',\n cell: item => {\n const isClickable = includes(selectableItemsTypes, 'objects') || includes(selectableItemsTypes, 'versions');\n return isClickable ? (\n <InternalLink onFollow={() => item.Name && onDrilldown(item.Name)} variant=\"link\">\n {item.Name}\n </InternalLink>\n ) : (\n item.Name\n );\n },\n minWidth: '250px',\n },\n {\n id: 'CreationDate',\n header: i18n('i18nStrings.columnBucketCreationDate', i18nStrings?.columnBucketCreationDate),\n ariaLabel: getColumnAriaLabel(\n i18n,\n i18nStrings,\n i18n('i18nStrings.columnBucketCreationDate', i18nStrings?.columnBucketCreationDate)\n ),\n sortingComparator: (a, b) => compareDates(a.CreationDate, b.CreationDate),\n cell: item => formatDefault(item.CreationDate),\n },\n {\n id: 'Region',\n header: i18n('i18nStrings.columnBucketRegion', i18nStrings?.columnBucketRegion),\n ariaLabel: getColumnAriaLabel(\n i18n,\n i18nStrings,\n i18n('i18nStrings.columnBucketRegion', i18nStrings?.columnBucketRegion)\n ),\n sortingField: 'Region',\n cell: item => formatDefault(item.Region),\n minWidth: '150px',\n },\n ]}\n onSelect={item => onSelect(item?.Name ?? '')}\n />\n );\n}\n"]}
1
+ {"version":3,"file":"buckets-table.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/buckets-table.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\n\nimport { useInternalI18n } from '../../i18n/context';\nimport { ForwardFocusRef } from '../../internal/hooks/forward-focus';\nimport InternalLink from '../../link/internal';\nimport { TableProps } from '../../table/interfaces';\nimport { S3ResourceSelectorProps } from '../interfaces';\nimport { BasicS3Table, getSharedI18Strings } from './basic-table';\nimport { formatDefault } from './column-formats';\nimport { compareDates, getColumnAriaLabel, includes } from './table-utils';\n\ninterface BucketsTableProps {\n forwardFocusRef: React.Ref<ForwardFocusRef>;\n visibleColumns: ReadonlyArray<string>;\n isItemDisabled: TableProps.IsItemDisabled<S3ResourceSelectorProps.Bucket> | undefined;\n selectableItemsTypes: S3ResourceSelectorProps['selectableItemsTypes'];\n fetchData: S3ResourceSelectorProps['fetchBuckets'];\n i18nStrings: S3ResourceSelectorProps.I18nStrings | undefined;\n isVisualRefresh?: boolean;\n onDrilldown: (path: string) => void;\n onSelect: (uri: string) => void;\n}\n\nexport function BucketsTable({\n forwardFocusRef,\n i18nStrings,\n isVisualRefresh,\n isItemDisabled,\n selectableItemsTypes,\n fetchData,\n visibleColumns,\n onDrilldown,\n onSelect,\n}: BucketsTableProps) {\n const i18n = useInternalI18n('s3-resource-selector');\n\n return (\n <BasicS3Table<S3ResourceSelectorProps.Bucket>\n forwardFocusRef={forwardFocusRef}\n trackBy=\"Name\"\n fetchData={fetchData}\n visibleColumns={visibleColumns}\n isItemDisabled={isItemDisabled || (() => !includes(selectableItemsTypes, 'buckets'))}\n i18nStrings={{\n ...getSharedI18Strings(i18n, i18nStrings),\n header: i18n('i18nStrings.selectionBuckets', i18nStrings?.selectionBuckets),\n loadingText: i18n('i18nStrings.selectionBucketsLoading', i18nStrings?.selectionBucketsLoading),\n filteringAriaLabel: i18n(\n 'i18nStrings.labelFiltering',\n i18nStrings?.labelFiltering,\n format => itemsType => format({ itemsType })\n )?.(i18n('i18nStrings.selectionBuckets', i18nStrings?.selectionBuckets) ?? ''),\n filteringPlaceholder: i18n(\n 'i18nStrings.selectionBucketsSearchPlaceholder',\n i18nStrings?.selectionBucketsSearchPlaceholder\n ),\n emptyText: i18n('i18nStrings.selectionBucketsNoItems', i18nStrings?.selectionBucketsNoItems),\n selectionLabels: {\n ...i18nStrings?.labelsBucketsSelection,\n selectionGroupLabel: i18n(\n 'i18nStrings.labelsBucketsSelection.selectionGroupLabel',\n i18nStrings?.labelsBucketsSelection?.selectionGroupLabel\n ),\n itemSelectionLabel: i18n(\n 'i18nStrings.labelsBucketsSelection.itemSelectionLabel',\n i18nStrings?.labelsBucketsSelection?.itemSelectionLabel,\n format => (data, item) => format({ item__Name: item.Name ?? '' })\n ),\n },\n }}\n isVisualRefresh={isVisualRefresh}\n columnDefinitions={[\n {\n id: 'Name',\n header: i18n('i18nStrings.columnBucketName', i18nStrings?.columnBucketName),\n ariaLabel: getColumnAriaLabel(\n i18n,\n i18nStrings,\n i18n('i18nStrings.columnBucketName', i18nStrings?.columnBucketName)\n ),\n sortingField: 'Name',\n cell: item => {\n const isClickable = includes(selectableItemsTypes, 'objects') || includes(selectableItemsTypes, 'versions');\n return isClickable ? (\n <InternalLink onFollow={() => item.Name && onDrilldown(item.Name)} variant=\"link\">\n {item.Name}\n </InternalLink>\n ) : (\n item.Name\n );\n },\n minWidth: '250px',\n },\n {\n id: 'Region',\n header: i18n('i18nStrings.columnBucketRegion', i18nStrings?.columnBucketRegion),\n ariaLabel: getColumnAriaLabel(\n i18n,\n i18nStrings,\n i18n('i18nStrings.columnBucketRegion', i18nStrings?.columnBucketRegion)\n ),\n sortingField: 'Region',\n cell: item => formatDefault(item.Region),\n minWidth: '150px',\n },\n {\n id: 'CreationDate',\n header: i18n('i18nStrings.columnBucketCreationDate', i18nStrings?.columnBucketCreationDate),\n ariaLabel: getColumnAriaLabel(\n i18n,\n i18nStrings,\n i18n('i18nStrings.columnBucketCreationDate', i18nStrings?.columnBucketCreationDate)\n ),\n sortingComparator: (a, b) => compareDates(a.CreationDate, b.CreationDate),\n cell: item => formatDefault(item.CreationDate),\n },\n ]}\n onSelect={item => onSelect(item?.Name ?? '')}\n />\n );\n}\n"]}
@@ -70,7 +70,7 @@ export function InlineEditor({ ariaLabels, item, column, onEditEnd, submitEdit,
70
70
  const { ariaLabel = undefined, validation = noop, errorIconAriaLabel, constraintText, editingCell, } = column.editConfig;
71
71
  return (React.createElement(FocusLock, { restoreFocus: true, ref: focusLockRef },
72
72
  React.createElement("div", { role: "dialog", ref: clickAwayRef, "aria-label": (_a = ariaLabels === null || ariaLabels === void 0 ? void 0 : ariaLabels.activateEditLabel) === null || _a === void 0 ? void 0 : _a.call(ariaLabels, column, item), onKeyDown: handleEscape },
73
- React.createElement("form", { onSubmit: onSubmitClick, className: styles['body-cell-editor-form'] },
73
+ React.createElement("form", { onSubmit: onSubmitClick },
74
74
  React.createElement(FormField, { stretch: true, label: ariaLabel, constraintText: constraintText, __hideLabel: true, __disableGutters: true, i18nStrings: { errorIconAriaLabel }, errorText: validation(item, currentEditValue) },
75
75
  React.createElement("div", { className: styles['body-cell-editor-row'] },
76
76
  React.createElement("div", { className: styles['body-cell-editor-row-editor'] }, editingCell(item, cellContext)),
@@ -1 +1 @@
1
- {"version":3,"file":"inline-editor.js","sourceRoot":"","sources":["../../../../src/table/body-cell/inline-editor.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport Button from '../../button/internal';\nimport FormField from '../../form-field/internal';\nimport { useInternalI18n } from '../../i18n/context';\nimport FocusLock, { FocusLockRef } from '../../internal/components/focus-lock';\nimport { Optional } from '../../internal/types';\nimport InternalLiveRegion from '../../live-region/internal';\nimport SpaceBetween from '../../space-between/internal';\nimport { TableProps } from '../interfaces';\nimport { useClickAway } from './click-away';\n\nimport styles from './styles.css.js';\n\n// A function that does nothing\nconst noop = () => undefined;\n\ninterface OnEditEndOptions {\n cancelled: boolean;\n refocusCell: boolean;\n}\n\ninterface InlineEditorProps<ItemType> {\n ariaLabels: TableProps['ariaLabels'];\n column: TableProps.ColumnDefinition<ItemType>;\n item: ItemType;\n onEditEnd: (options: OnEditEndOptions) => void;\n submitEdit: TableProps.SubmitEditFunction<ItemType>;\n __onRender?: () => void;\n}\n\nexport function InlineEditor<ItemType>({\n ariaLabels,\n item,\n column,\n onEditEnd,\n submitEdit,\n __onRender,\n}: InlineEditorProps<ItemType>) {\n const [currentEditLoading, setCurrentEditLoading] = useState(false);\n const [currentEditValue, setCurrentEditValue] = useState<Optional<any>>();\n const i18n = useInternalI18n('table');\n\n const focusLockRef = useRef<FocusLockRef>(null);\n\n const cellContext = {\n currentValue: currentEditValue,\n setValue: setCurrentEditValue,\n };\n\n function finishEdit({ cancelled = false, refocusCell = true }: Partial<OnEditEndOptions> = {}) {\n if (!cancelled) {\n setCurrentEditValue(undefined);\n }\n onEditEnd({ cancelled, refocusCell: refocusCell });\n }\n\n async function onSubmitClick(evt: React.FormEvent) {\n evt.preventDefault();\n if (currentEditValue === undefined) {\n finishEdit();\n return;\n }\n\n setCurrentEditLoading(true);\n try {\n await submitEdit(item, column, currentEditValue);\n setCurrentEditLoading(false);\n finishEdit();\n } catch (e) {\n setCurrentEditLoading(false);\n focusLockRef.current?.focusFirst();\n }\n }\n\n function onCancel({ reFocusEditedCell = true } = {}) {\n if (currentEditLoading) {\n return;\n }\n finishEdit({ cancelled: true, refocusCell: reFocusEditedCell });\n }\n\n function handleEscape(event: React.KeyboardEvent): void {\n if (event.key === 'Escape') {\n onCancel();\n }\n }\n\n const clickAwayRef = useClickAway(() => onCancel({ reFocusEditedCell: false }));\n\n useEffect(() => {\n if (__onRender) {\n const timer = setTimeout(__onRender, 1);\n return () => clearTimeout(timer);\n }\n }, [__onRender]);\n\n // asserting non-undefined editConfig here because this component is unreachable otherwise\n const {\n ariaLabel = undefined,\n validation = noop,\n errorIconAriaLabel,\n constraintText,\n editingCell,\n } = column.editConfig!;\n\n return (\n <FocusLock restoreFocus={true} ref={focusLockRef}>\n <div\n role=\"dialog\"\n ref={clickAwayRef}\n aria-label={ariaLabels?.activateEditLabel?.(column, item)}\n onKeyDown={handleEscape}\n >\n <form onSubmit={onSubmitClick} className={styles['body-cell-editor-form']}>\n <FormField\n stretch={true}\n label={ariaLabel}\n constraintText={constraintText}\n __hideLabel={true}\n __disableGutters={true}\n i18nStrings={{ errorIconAriaLabel }}\n errorText={validation(item, currentEditValue)}\n >\n <div className={styles['body-cell-editor-row']}>\n <div className={styles['body-cell-editor-row-editor']}>{editingCell(item, cellContext)}</div>\n <span className={styles['body-cell-editor-controls']}>\n <SpaceBetween direction=\"horizontal\" size=\"xxs\">\n {!currentEditLoading ? (\n <Button\n ariaLabel={ariaLabels?.cancelEditLabel?.(column)}\n formAction=\"none\"\n iconName=\"close\"\n variant=\"inline-icon\"\n onClick={() => onCancel()}\n />\n ) : null}\n <Button\n ariaLabel={ariaLabels?.submitEditLabel?.(column)}\n formAction=\"submit\"\n iconName=\"check\"\n variant=\"inline-icon\"\n loading={currentEditLoading}\n />\n </SpaceBetween>\n <InternalLiveRegion tagName=\"span\" hidden={true}>\n {currentEditLoading\n ? i18n('ariaLabels.submittingEditText', ariaLabels?.submittingEditText?.(column))\n : ''}\n </InternalLiveRegion>\n </span>\n </div>\n </FormField>\n </form>\n </div>\n </FocusLock>\n );\n}\n"]}
1
+ {"version":3,"file":"inline-editor.js","sourceRoot":"","sources":["../../../../src/table/body-cell/inline-editor.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport Button from '../../button/internal';\nimport FormField from '../../form-field/internal';\nimport { useInternalI18n } from '../../i18n/context';\nimport FocusLock, { FocusLockRef } from '../../internal/components/focus-lock';\nimport { Optional } from '../../internal/types';\nimport InternalLiveRegion from '../../live-region/internal';\nimport SpaceBetween from '../../space-between/internal';\nimport { TableProps } from '../interfaces';\nimport { useClickAway } from './click-away';\n\nimport styles from './styles.css.js';\n\n// A function that does nothing\nconst noop = () => undefined;\n\ninterface OnEditEndOptions {\n cancelled: boolean;\n refocusCell: boolean;\n}\n\ninterface InlineEditorProps<ItemType> {\n ariaLabels: TableProps['ariaLabels'];\n column: TableProps.ColumnDefinition<ItemType>;\n item: ItemType;\n onEditEnd: (options: OnEditEndOptions) => void;\n submitEdit: TableProps.SubmitEditFunction<ItemType>;\n __onRender?: () => void;\n}\n\nexport function InlineEditor<ItemType>({\n ariaLabels,\n item,\n column,\n onEditEnd,\n submitEdit,\n __onRender,\n}: InlineEditorProps<ItemType>) {\n const [currentEditLoading, setCurrentEditLoading] = useState(false);\n const [currentEditValue, setCurrentEditValue] = useState<Optional<any>>();\n const i18n = useInternalI18n('table');\n\n const focusLockRef = useRef<FocusLockRef>(null);\n\n const cellContext = {\n currentValue: currentEditValue,\n setValue: setCurrentEditValue,\n };\n\n function finishEdit({ cancelled = false, refocusCell = true }: Partial<OnEditEndOptions> = {}) {\n if (!cancelled) {\n setCurrentEditValue(undefined);\n }\n onEditEnd({ cancelled, refocusCell: refocusCell });\n }\n\n async function onSubmitClick(evt: React.FormEvent) {\n evt.preventDefault();\n if (currentEditValue === undefined) {\n finishEdit();\n return;\n }\n\n setCurrentEditLoading(true);\n try {\n await submitEdit(item, column, currentEditValue);\n setCurrentEditLoading(false);\n finishEdit();\n } catch (e) {\n setCurrentEditLoading(false);\n focusLockRef.current?.focusFirst();\n }\n }\n\n function onCancel({ reFocusEditedCell = true } = {}) {\n if (currentEditLoading) {\n return;\n }\n finishEdit({ cancelled: true, refocusCell: reFocusEditedCell });\n }\n\n function handleEscape(event: React.KeyboardEvent): void {\n if (event.key === 'Escape') {\n onCancel();\n }\n }\n\n const clickAwayRef = useClickAway(() => onCancel({ reFocusEditedCell: false }));\n\n useEffect(() => {\n if (__onRender) {\n const timer = setTimeout(__onRender, 1);\n return () => clearTimeout(timer);\n }\n }, [__onRender]);\n\n // asserting non-undefined editConfig here because this component is unreachable otherwise\n const {\n ariaLabel = undefined,\n validation = noop,\n errorIconAriaLabel,\n constraintText,\n editingCell,\n } = column.editConfig!;\n\n return (\n <FocusLock restoreFocus={true} ref={focusLockRef}>\n <div\n role=\"dialog\"\n ref={clickAwayRef}\n aria-label={ariaLabels?.activateEditLabel?.(column, item)}\n onKeyDown={handleEscape}\n >\n <form onSubmit={onSubmitClick}>\n <FormField\n stretch={true}\n label={ariaLabel}\n constraintText={constraintText}\n __hideLabel={true}\n __disableGutters={true}\n i18nStrings={{ errorIconAriaLabel }}\n errorText={validation(item, currentEditValue)}\n >\n <div className={styles['body-cell-editor-row']}>\n <div className={styles['body-cell-editor-row-editor']}>{editingCell(item, cellContext)}</div>\n <span className={styles['body-cell-editor-controls']}>\n <SpaceBetween direction=\"horizontal\" size=\"xxs\">\n {!currentEditLoading ? (\n <Button\n ariaLabel={ariaLabels?.cancelEditLabel?.(column)}\n formAction=\"none\"\n iconName=\"close\"\n variant=\"inline-icon\"\n onClick={() => onCancel()}\n />\n ) : null}\n <Button\n ariaLabel={ariaLabels?.submitEditLabel?.(column)}\n formAction=\"submit\"\n iconName=\"check\"\n variant=\"inline-icon\"\n loading={currentEditLoading}\n />\n </SpaceBetween>\n <InternalLiveRegion tagName=\"span\" hidden={true}>\n {currentEditLoading\n ? i18n('ariaLabels.submittingEditText', ariaLabels?.submittingEditText?.(column))\n : ''}\n </InternalLiveRegion>\n </span>\n </div>\n </FormField>\n </form>\n </div>\n </FocusLock>\n );\n}\n"]}
@@ -1,51 +1,50 @@
1
1
 
2
2
  import './styles.scoped.css';
3
3
  export default {
4
- "expandable-toggle-wrapper": "awsui_expandable-toggle-wrapper_c6tup_lhoaw_145",
5
- "body-cell": "awsui_body-cell_c6tup_lhoaw_152",
6
- "body-cell-content": "awsui_body-cell-content_c6tup_lhoaw_160",
7
- "expandable-level-0": "awsui_expandable-level-0_c6tup_lhoaw_166",
8
- "expandable-level-1": "awsui_expandable-level-1_c6tup_lhoaw_173",
9
- "expandable-level-2": "awsui_expandable-level-2_c6tup_lhoaw_180",
10
- "expandable-level-3": "awsui_expandable-level-3_c6tup_lhoaw_187",
11
- "expandable-level-4": "awsui_expandable-level-4_c6tup_lhoaw_194",
12
- "expandable-level-5": "awsui_expandable-level-5_c6tup_lhoaw_201",
13
- "expandable-level-6": "awsui_expandable-level-6_c6tup_lhoaw_208",
14
- "expandable-level-7": "awsui_expandable-level-7_c6tup_lhoaw_215",
15
- "expandable-level-8": "awsui_expandable-level-8_c6tup_lhoaw_222",
16
- "expandable-level-9": "awsui_expandable-level-9_c6tup_lhoaw_229",
17
- "expandable-level-next": "awsui_expandable-level-next_c6tup_lhoaw_236",
18
- "body-cell-wrap": "awsui_body-cell-wrap_c6tup_lhoaw_257",
19
- "is-visual-refresh": "awsui_is-visual-refresh_c6tup_lhoaw_271",
20
- "has-striped-rows": "awsui_has-striped-rows_c6tup_lhoaw_283",
21
- "body-cell-edit-active": "awsui_body-cell-edit-active_c6tup_lhoaw_366",
22
- "body-cell-editable": "awsui_body-cell-editable_c6tup_lhoaw_366",
23
- "sticky-cell-pad-inline-start": "awsui_sticky-cell-pad-inline-start_c6tup_lhoaw_449",
24
- "has-selection": "awsui_has-selection_c6tup_lhoaw_449",
25
- "body-cell-align-top": "awsui_body-cell-align-top_c6tup_lhoaw_788",
26
- "body-cell-first-row": "awsui_body-cell-first-row_c6tup_lhoaw_791",
27
- "body-cell-last-row": "awsui_body-cell-last-row_c6tup_lhoaw_794",
28
- "body-cell-selected": "awsui_body-cell-selected_c6tup_lhoaw_794",
29
- "has-footer": "awsui_has-footer_c6tup_lhoaw_794",
30
- "body-cell-shaded": "awsui_body-cell-shaded_c6tup_lhoaw_804",
31
- "sticky-cell": "awsui_sticky-cell_c6tup_lhoaw_449",
32
- "sticky-cell-pad-left": "awsui_sticky-cell-pad-left_c6tup_lhoaw_852",
33
- "sticky-cell-last-inline-end": "awsui_sticky-cell-last-inline-end_c6tup_lhoaw_949",
34
- "sticky-cell-last-inline-start": "awsui_sticky-cell-last-inline-start_c6tup_lhoaw_958",
35
- "body-cell-next-selected": "awsui_body-cell-next-selected_c6tup_lhoaw_980",
36
- "body-cell-prev-selected": "awsui_body-cell-prev-selected_c6tup_lhoaw_987",
37
- "body-cell-editor-wrapper": "awsui_body-cell-editor-wrapper_c6tup_lhoaw_1013",
38
- "body-cell-success": "awsui_body-cell-success_c6tup_lhoaw_1018",
39
- "body-cell-editor": "awsui_body-cell-editor_c6tup_lhoaw_1013",
40
- "body-cell-editor-disabled": "awsui_body-cell-editor-disabled_c6tup_lhoaw_1043",
41
- "body-cell-editor-form": "awsui_body-cell-editor-form_c6tup_lhoaw_1052",
42
- "body-cell-editor-row": "awsui_body-cell-editor-row_c6tup_lhoaw_1062",
43
- "body-cell-editor-controls": "awsui_body-cell-editor-controls_c6tup_lhoaw_1072",
44
- "body-cell-editor-row-editor": "awsui_body-cell-editor-row-editor_c6tup_lhoaw_1075",
45
- "body-cell-expandable": "awsui_body-cell-expandable_c6tup_lhoaw_1078",
46
- "resizable-columns": "awsui_resizable-columns_c6tup_lhoaw_1096",
47
- "expandable-cell-content": "awsui_expandable-cell-content_c6tup_lhoaw_1099",
48
- "body-cell-has-success": "awsui_body-cell-has-success_c6tup_lhoaw_1147",
49
- "body-cell-edit-disabled-popover": "awsui_body-cell-edit-disabled-popover_c6tup_lhoaw_1147"
4
+ "expandable-toggle-wrapper": "awsui_expandable-toggle-wrapper_c6tup_1pd8a_145",
5
+ "body-cell": "awsui_body-cell_c6tup_1pd8a_152",
6
+ "body-cell-content": "awsui_body-cell-content_c6tup_1pd8a_160",
7
+ "expandable-level-0": "awsui_expandable-level-0_c6tup_1pd8a_166",
8
+ "expandable-level-1": "awsui_expandable-level-1_c6tup_1pd8a_173",
9
+ "expandable-level-2": "awsui_expandable-level-2_c6tup_1pd8a_180",
10
+ "expandable-level-3": "awsui_expandable-level-3_c6tup_1pd8a_187",
11
+ "expandable-level-4": "awsui_expandable-level-4_c6tup_1pd8a_194",
12
+ "expandable-level-5": "awsui_expandable-level-5_c6tup_1pd8a_201",
13
+ "expandable-level-6": "awsui_expandable-level-6_c6tup_1pd8a_208",
14
+ "expandable-level-7": "awsui_expandable-level-7_c6tup_1pd8a_215",
15
+ "expandable-level-8": "awsui_expandable-level-8_c6tup_1pd8a_222",
16
+ "expandable-level-9": "awsui_expandable-level-9_c6tup_1pd8a_229",
17
+ "expandable-level-next": "awsui_expandable-level-next_c6tup_1pd8a_236",
18
+ "body-cell-align-top": "awsui_body-cell-align-top_c6tup_1pd8a_259",
19
+ "body-cell-wrap": "awsui_body-cell-wrap_c6tup_1pd8a_262",
20
+ "is-visual-refresh": "awsui_is-visual-refresh_c6tup_1pd8a_276",
21
+ "has-striped-rows": "awsui_has-striped-rows_c6tup_1pd8a_288",
22
+ "body-cell-edit-active": "awsui_body-cell-edit-active_c6tup_1pd8a_371",
23
+ "body-cell-editable": "awsui_body-cell-editable_c6tup_1pd8a_371",
24
+ "sticky-cell-pad-inline-start": "awsui_sticky-cell-pad-inline-start_c6tup_1pd8a_454",
25
+ "has-selection": "awsui_has-selection_c6tup_1pd8a_454",
26
+ "body-cell-first-row": "awsui_body-cell-first-row_c6tup_1pd8a_789",
27
+ "body-cell-last-row": "awsui_body-cell-last-row_c6tup_1pd8a_792",
28
+ "body-cell-selected": "awsui_body-cell-selected_c6tup_1pd8a_792",
29
+ "has-footer": "awsui_has-footer_c6tup_1pd8a_792",
30
+ "body-cell-shaded": "awsui_body-cell-shaded_c6tup_1pd8a_802",
31
+ "sticky-cell": "awsui_sticky-cell_c6tup_1pd8a_454",
32
+ "sticky-cell-pad-left": "awsui_sticky-cell-pad-left_c6tup_1pd8a_850",
33
+ "sticky-cell-last-inline-end": "awsui_sticky-cell-last-inline-end_c6tup_1pd8a_947",
34
+ "sticky-cell-last-inline-start": "awsui_sticky-cell-last-inline-start_c6tup_1pd8a_956",
35
+ "body-cell-next-selected": "awsui_body-cell-next-selected_c6tup_1pd8a_978",
36
+ "body-cell-prev-selected": "awsui_body-cell-prev-selected_c6tup_1pd8a_985",
37
+ "body-cell-editor-wrapper": "awsui_body-cell-editor-wrapper_c6tup_1pd8a_1011",
38
+ "body-cell-success": "awsui_body-cell-success_c6tup_1pd8a_1016",
39
+ "body-cell-editor": "awsui_body-cell-editor_c6tup_1pd8a_1011",
40
+ "body-cell-editor-disabled": "awsui_body-cell-editor-disabled_c6tup_1pd8a_1041",
41
+ "body-cell-editor-row": "awsui_body-cell-editor-row_c6tup_1pd8a_1050",
42
+ "body-cell-editor-controls": "awsui_body-cell-editor-controls_c6tup_1pd8a_1060",
43
+ "body-cell-editor-row-editor": "awsui_body-cell-editor-row-editor_c6tup_1pd8a_1063",
44
+ "body-cell-expandable": "awsui_body-cell-expandable_c6tup_1pd8a_1066",
45
+ "resizable-columns": "awsui_resizable-columns_c6tup_1pd8a_1174",
46
+ "expandable-cell-content": "awsui_expandable-cell-content_c6tup_1pd8a_1177",
47
+ "body-cell-has-success": "awsui_body-cell-has-success_c6tup_1pd8a_1225",
48
+ "body-cell-edit-disabled-popover": "awsui_body-cell-edit-disabled-popover_c6tup_1pd8a_1225"
50
49
  };
51
50