@cloudscape-design/components 3.0.749 → 3.0.750

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 (109) hide show
  1. package/alert/actions-wrapper/index.d.ts +1 -1
  2. package/alert/actions-wrapper/index.d.ts.map +1 -1
  3. package/alert/actions-wrapper/index.js +2 -2
  4. package/alert/actions-wrapper/index.js.map +1 -1
  5. package/alert/internal.d.ts.map +1 -1
  6. package/alert/internal.js +5 -15
  7. package/alert/internal.js.map +1 -1
  8. package/alert/styles.css.js +25 -27
  9. package/alert/styles.scoped.css +39 -45
  10. package/alert/styles.selectors.js +25 -27
  11. package/app-layout/visual-refresh-toolbar/toolbar/styles.css.js +12 -12
  12. package/app-layout/visual-refresh-toolbar/toolbar/styles.scoped.css +15 -15
  13. package/app-layout/visual-refresh-toolbar/toolbar/styles.selectors.js +12 -12
  14. package/breadcrumb-group/implementation.d.ts.map +1 -1
  15. package/breadcrumb-group/implementation.js +1 -1
  16. package/breadcrumb-group/implementation.js.map +1 -1
  17. package/breadcrumb-group/interfaces.d.ts +1 -1
  18. package/breadcrumb-group/interfaces.js.map +1 -1
  19. package/button-dropdown/interfaces.d.ts +0 -7
  20. package/button-dropdown/interfaces.d.ts.map +1 -1
  21. package/button-dropdown/interfaces.js.map +1 -1
  22. package/button-dropdown/internal.d.ts.map +1 -1
  23. package/button-dropdown/internal.js +2 -2
  24. package/button-dropdown/internal.js.map +1 -1
  25. package/button-dropdown/item-element/index.d.ts +1 -1
  26. package/button-dropdown/item-element/index.d.ts.map +1 -1
  27. package/button-dropdown/item-element/index.js +4 -4
  28. package/button-dropdown/item-element/index.js.map +1 -1
  29. package/button-dropdown/item-element/styles.css.js +12 -13
  30. package/button-dropdown/item-element/styles.scoped.css +14 -52
  31. package/button-dropdown/item-element/styles.selectors.js +12 -13
  32. package/button-dropdown/items-list.d.ts +1 -1
  33. package/button-dropdown/items-list.d.ts.map +1 -1
  34. package/button-dropdown/items-list.js +2 -2
  35. package/button-dropdown/items-list.js.map +1 -1
  36. package/flashbar/collapsible-flashbar.d.ts.map +1 -1
  37. package/flashbar/collapsible-flashbar.js +5 -13
  38. package/flashbar/collapsible-flashbar.js.map +1 -1
  39. package/flashbar/flash.d.ts.map +1 -1
  40. package/flashbar/flash.js +7 -19
  41. package/flashbar/flash.js.map +1 -1
  42. package/flashbar/non-collapsible-flashbar.d.ts.map +1 -1
  43. package/flashbar/non-collapsible-flashbar.js +2 -4
  44. package/flashbar/non-collapsible-flashbar.js.map +1 -1
  45. package/flashbar/styles.css.js +47 -50
  46. package/flashbar/styles.scoped.css +146 -152
  47. package/flashbar/styles.selectors.js +47 -50
  48. package/internal/components/tooltip/index.d.ts +1 -3
  49. package/internal/components/tooltip/index.d.ts.map +1 -1
  50. package/internal/components/tooltip/index.js +2 -2
  51. package/internal/components/tooltip/index.js.map +1 -1
  52. package/internal/environment.js +1 -1
  53. package/internal/environment.json +1 -1
  54. package/internal/manifest.json +1 -1
  55. package/internal/plugins/api.d.ts +0 -9
  56. package/internal/plugins/api.d.ts.map +1 -1
  57. package/internal/plugins/api.js +0 -7
  58. package/internal/plugins/api.js.map +1 -1
  59. package/internal/plugins/helpers/index.d.ts +0 -1
  60. package/internal/plugins/helpers/index.d.ts.map +1 -1
  61. package/internal/plugins/helpers/index.js +0 -1
  62. package/internal/plugins/helpers/index.js.map +1 -1
  63. package/internal/plugins/helpers/use-discovered-action.d.ts +2 -2
  64. package/internal/plugins/helpers/use-discovered-action.d.ts.map +1 -1
  65. package/internal/plugins/helpers/use-discovered-action.js.map +1 -1
  66. package/package.json +1 -1
  67. package/property-filter/styles.css.js +38 -38
  68. package/property-filter/styles.scoped.css +44 -40
  69. package/property-filter/styles.selectors.js +38 -38
  70. package/side-navigation/implementation.d.ts +1 -1
  71. package/side-navigation/implementation.d.ts.map +1 -1
  72. package/side-navigation/implementation.js +1 -2
  73. package/side-navigation/implementation.js.map +1 -1
  74. package/side-navigation/interfaces.d.ts +0 -4
  75. package/side-navigation/interfaces.d.ts.map +1 -1
  76. package/side-navigation/interfaces.js.map +1 -1
  77. package/side-navigation/styles.css.js +29 -30
  78. package/side-navigation/styles.scoped.css +41 -46
  79. package/side-navigation/styles.selectors.js +29 -30
  80. package/test-utils/dom/side-navigation/index.d.ts +0 -1
  81. package/test-utils/dom/side-navigation/index.js +0 -3
  82. package/test-utils/dom/side-navigation/index.js.map +1 -1
  83. package/test-utils/selectors/side-navigation/index.d.ts +0 -1
  84. package/test-utils/selectors/side-navigation/index.js +0 -3
  85. package/test-utils/selectors/side-navigation/index.js.map +1 -1
  86. package/test-utils/tsconfig.tsbuildinfo +1 -1
  87. package/flashbar/analytics-metadata/interfaces.d.ts +0 -36
  88. package/flashbar/analytics-metadata/interfaces.d.ts.map +0 -1
  89. package/flashbar/analytics-metadata/interfaces.js +0 -4
  90. package/flashbar/analytics-metadata/interfaces.js.map +0 -1
  91. package/flashbar/analytics-metadata/styles.css.js +0 -6
  92. package/flashbar/analytics-metadata/styles.scoped.css +0 -7
  93. package/flashbar/analytics-metadata/styles.selectors.js +0 -7
  94. package/flashbar/analytics-metadata/utils.d.ts +0 -7
  95. package/flashbar/analytics-metadata/utils.d.ts.map +0 -1
  96. package/flashbar/analytics-metadata/utils.js +0 -33
  97. package/flashbar/analytics-metadata/utils.js.map +0 -1
  98. package/internal/components/tooltip/registry.d.ts +0 -4
  99. package/internal/components/tooltip/registry.d.ts.map +0 -1
  100. package/internal/components/tooltip/registry.js +0 -28
  101. package/internal/components/tooltip/registry.js.map +0 -1
  102. package/internal/plugins/controllers/alert-flash-content.d.ts +0 -46
  103. package/internal/plugins/controllers/alert-flash-content.d.ts.map +0 -1
  104. package/internal/plugins/controllers/alert-flash-content.js +0 -59
  105. package/internal/plugins/controllers/alert-flash-content.js.map +0 -1
  106. package/internal/plugins/helpers/use-discovered-content.d.ts +0 -15
  107. package/internal/plugins/helpers/use-discovered-content.d.ts.map +0 -1
  108. package/internal/plugins/helpers/use-discovered-content.js +0 -82
  109. package/internal/plugins/helpers/use-discovered-content.js.map +0 -1
@@ -1,36 +0,0 @@
1
- import { LabelIdentifier } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';
2
- export interface GeneratedAnalyticsMetadataFlashbarDismiss {
3
- action: 'dismiss';
4
- detail: {
5
- label: string;
6
- };
7
- }
8
- export interface GeneratedAnalyticsMetadataFlashbarButtonClick {
9
- action: 'buttonClick';
10
- detail: {
11
- label: string;
12
- };
13
- }
14
- export interface GeneratedAnalyticsMetadataFlashbarExpand {
15
- action: 'expand';
16
- detail: {
17
- label: string;
18
- expanded: string;
19
- };
20
- }
21
- export interface GeneratedAnalyticsMetadataFlashbarComponent {
22
- name: 'awsui.Flashbar';
23
- label: LabelIdentifier;
24
- properties: {
25
- itemsCount: string;
26
- stackItems: string;
27
- expanded?: string;
28
- };
29
- innerContext?: {
30
- itemPosition: string;
31
- itemLabel: string;
32
- itemType: string;
33
- itemId?: string;
34
- };
35
- }
36
- //# sourceMappingURL=interfaces.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../src/flashbar/analytics-metadata/interfaces.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,kEAAkE,CAAC;AAEnG,MAAM,WAAW,yCAAyC;IACxD,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED,MAAM,WAAW,6CAA6C;IAC5D,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED,MAAM,WAAW,wCAAwC;IACvD,MAAM,EAAE,QAAQ,CAAC;IACjB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,MAAM,WAAW,2CAA2C;IAC1D,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,EAAE,eAAe,CAAC;IACvB,UAAU,EAAE;QACV,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,YAAY,CAAC,EAAE;QACb,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH"}
@@ -1,4 +0,0 @@
1
- // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
- // SPDX-License-Identifier: Apache-2.0
3
- export {};
4
- //# sourceMappingURL=interfaces.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../../src/flashbar/analytics-metadata/interfaces.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { LabelIdentifier } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nexport interface GeneratedAnalyticsMetadataFlashbarDismiss {\n action: 'dismiss';\n detail: {\n label: string;\n };\n}\n\nexport interface GeneratedAnalyticsMetadataFlashbarButtonClick {\n action: 'buttonClick';\n detail: {\n label: string;\n };\n}\n\nexport interface GeneratedAnalyticsMetadataFlashbarExpand {\n action: 'expand';\n detail: {\n label: string;\n expanded: string;\n };\n}\n\nexport interface GeneratedAnalyticsMetadataFlashbarComponent {\n name: 'awsui.Flashbar';\n label: LabelIdentifier;\n properties: {\n itemsCount: string;\n stackItems: string;\n expanded?: string;\n };\n innerContext?: {\n itemPosition: string;\n itemLabel: string;\n itemType: string;\n itemId?: string;\n };\n}\n"]}
@@ -1,6 +0,0 @@
1
-
2
- import './styles.scoped.css';
3
- export default {
4
- "flash-header": "awsui_flash-header_4c95g_vov7p_5"
5
- };
6
-
@@ -1,7 +0,0 @@
1
- /*
2
- Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
- SPDX-License-Identifier: Apache-2.0
4
- */
5
- .awsui_flash-header_4c95g_vov7p_5:not(#\9) {
6
- /* used in analytics metadata */
7
- }
@@ -1,7 +0,0 @@
1
-
2
- // es-module interop with Babel and Typescript
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- module.exports.default = {
5
- "flash-header": "awsui_flash-header_4c95g_vov7p_5"
6
- };
7
-
@@ -1,7 +0,0 @@
1
- import { GeneratedAnalyticsMetadataFragment } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';
2
- import { GeneratedAnalyticsMetadataFlashbarComponent } from './interfaces';
3
- export declare const getComponentsAnalyticsMetadata: (itemsCount: number, stackItems: boolean, expanded?: boolean) => {
4
- component: GeneratedAnalyticsMetadataFlashbarComponent;
5
- };
6
- export declare const getItemAnalyticsMetadata: (position: number, type: string, id?: string) => GeneratedAnalyticsMetadataFragment;
7
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/flashbar/analytics-metadata/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kCAAkC,EAAE,MAAM,kEAAkE,CAAC;AAEtH,OAAO,EAAE,2CAA2C,EAAE,MAAM,cAAc,CAAC;AAI3E,eAAO,MAAM,8BAA8B,eAC7B,MAAM,cACN,OAAO,aACR,OAAO,KACjB;IAAE,SAAS,EAAE,2CAA2C,CAAA;CAgB1D,CAAC;AAEF,eAAO,MAAM,wBAAwB,aACzB,MAAM,QACV,MAAM,OACP,MAAM,KACV,kCAYF,CAAC"}
@@ -1,33 +0,0 @@
1
- // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
- // SPDX-License-Identifier: Apache-2.0
3
- import analyticsSelectors from './styles.css.js';
4
- export const getComponentsAnalyticsMetadata = (itemsCount, stackItems, expanded) => {
5
- const metadata = {
6
- component: {
7
- name: 'awsui.Flashbar',
8
- label: stackItems ? { root: 'self', selector: 'ul' } : { root: 'self' },
9
- properties: {
10
- itemsCount: `${itemsCount}`,
11
- stackItems: `${stackItems}`,
12
- },
13
- },
14
- };
15
- if (expanded !== undefined) {
16
- metadata.component.properties.expanded = `${expanded}`;
17
- }
18
- return metadata;
19
- };
20
- export const getItemAnalyticsMetadata = (position, type, id) => {
21
- const baseMetadata = {
22
- itemLabel: `.${analyticsSelectors['flash-header']}`,
23
- itemPosition: `${position}`,
24
- itemType: type,
25
- };
26
- if (id) {
27
- baseMetadata.itemId = id;
28
- }
29
- return {
30
- component: { innerContext: baseMetadata },
31
- };
32
- };
33
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/flashbar/analytics-metadata/utils.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AAMtC,OAAO,kBAAkB,MAAM,iBAAiB,CAAC;AAEjD,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAC5C,UAAkB,EAClB,UAAmB,EACnB,QAAkB,EAC0C,EAAE;IAC9D,MAAM,QAAQ,GAA+D;QAC3E,SAAS,EAAE;YACT,IAAI,EAAE,gBAAgB;YACtB,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE;YACvE,UAAU,EAAE;gBACV,UAAU,EAAE,GAAG,UAAU,EAAE;gBAC3B,UAAU,EAAE,GAAG,UAAU,EAAE;aAC5B;SACF;KACF,CAAC;IAEF,IAAI,QAAQ,KAAK,SAAS,EAAE;QAC1B,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,GAAG,GAAG,QAAQ,EAAE,CAAC;KACxD;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,QAAgB,EAChB,IAAY,EACZ,EAAW,EACyB,EAAE;IACtC,MAAM,YAAY,GAAgE;QAChF,SAAS,EAAE,IAAI,kBAAkB,CAAC,cAAc,CAAC,EAAE;QACnD,YAAY,EAAE,GAAG,QAAQ,EAAE;QAC3B,QAAQ,EAAE,IAAI;KACf,CAAC;IACF,IAAI,EAAE,EAAE;QACN,YAAY,CAAC,MAAM,GAAG,EAAE,CAAC;KAC1B;IACD,OAAO;QACL,SAAS,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE;KAC1C,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { GeneratedAnalyticsMetadataFragment } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport { GeneratedAnalyticsMetadataFlashbarComponent } from './interfaces';\n\nimport analyticsSelectors from './styles.css.js';\n\nexport const getComponentsAnalyticsMetadata = (\n itemsCount: number,\n stackItems: boolean,\n expanded?: boolean\n): { component: GeneratedAnalyticsMetadataFlashbarComponent } => {\n const metadata: { component: GeneratedAnalyticsMetadataFlashbarComponent } = {\n component: {\n name: 'awsui.Flashbar',\n label: stackItems ? { root: 'self', selector: 'ul' } : { root: 'self' },\n properties: {\n itemsCount: `${itemsCount}`,\n stackItems: `${stackItems}`,\n },\n },\n };\n\n if (expanded !== undefined) {\n metadata.component.properties.expanded = `${expanded}`;\n }\n return metadata;\n};\n\nexport const getItemAnalyticsMetadata = (\n position: number,\n type: string,\n id?: string\n): GeneratedAnalyticsMetadataFragment => {\n const baseMetadata: GeneratedAnalyticsMetadataFlashbarComponent['innerContext'] = {\n itemLabel: `.${analyticsSelectors['flash-header']}`,\n itemPosition: `${position}`,\n itemType: type,\n };\n if (id) {\n baseMetadata.itemId = id;\n }\n return {\n component: { innerContext: baseMetadata },\n };\n};\n"]}
@@ -1,4 +0,0 @@
1
- type OnClose = () => void;
2
- export declare const registerTooltip: (onClose: OnClose) => () => void;
3
- export {};
4
- //# sourceMappingURL=registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/tooltip/registry.ts"],"names":[],"mappings":"AAGA,KAAK,OAAO,GAAG,MAAM,IAAI,CAAC;AAW1B,eAAO,MAAM,eAAe,YAAa,OAAO,eAU/C,CAAC"}
@@ -1,28 +0,0 @@
1
- // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
- // SPDX-License-Identifier: Apache-2.0
3
- let callbacks = [];
4
- let listenerRegistered = false;
5
- const onKeyDown = (event) => {
6
- if (event.key === 'Escape') {
7
- callbacks.forEach(callback => callback());
8
- }
9
- };
10
- export const registerTooltip = (onClose) => {
11
- callbacks.forEach(callback => callback());
12
- callbacks.push(onClose);
13
- if (!listenerRegistered) {
14
- listenerRegistered = true;
15
- document.addEventListener('keydown', onKeyDown);
16
- }
17
- return () => {
18
- deregisterTooltip(onClose);
19
- };
20
- };
21
- const deregisterTooltip = (onClose) => {
22
- callbacks = callbacks.filter(callback => callback !== onClose);
23
- if (listenerRegistered && callbacks.length === 0) {
24
- listenerRegistered = false;
25
- document.removeEventListener('keydown', onKeyDown);
26
- }
27
- };
28
- //# sourceMappingURL=registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../../src/internal/components/tooltip/registry.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AAItC,IAAI,SAAS,GAAmB,EAAE,CAAC;AACnC,IAAI,kBAAkB,GAAG,KAAK,CAAC;AAE/B,MAAM,SAAS,GAAG,CAAC,KAAoB,EAAE,EAAE;IACzC,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE;QAC1B,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;KAC3C;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAgB,EAAE,EAAE;IAClD,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC1C,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxB,IAAI,CAAC,kBAAkB,EAAE;QACvB,kBAAkB,GAAG,IAAI,CAAC;QAC1B,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;KACjD;IACD,OAAO,GAAG,EAAE;QACV,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,OAAgB,EAAE,EAAE;IAC7C,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;IAC/D,IAAI,kBAAkB,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;QAChD,kBAAkB,GAAG,KAAK,CAAC;QAC3B,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;KACpD;AACH,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\ntype OnClose = () => void;\n\nlet callbacks: Array<OnClose> = [];\nlet listenerRegistered = false;\n\nconst onKeyDown = (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n callbacks.forEach(callback => callback());\n }\n};\n\nexport const registerTooltip = (onClose: OnClose) => {\n callbacks.forEach(callback => callback());\n callbacks.push(onClose);\n if (!listenerRegistered) {\n listenerRegistered = true;\n document.addEventListener('keydown', onKeyDown);\n }\n return () => {\n deregisterTooltip(onClose);\n };\n};\n\nconst deregisterTooltip = (onClose: OnClose) => {\n callbacks = callbacks.filter(callback => callback !== onClose);\n if (listenerRegistered && callbacks.length === 0) {\n listenerRegistered = false;\n document.removeEventListener('keydown', onKeyDown);\n }\n};\n"]}
@@ -1,46 +0,0 @@
1
- interface RefShim<T> {
2
- current: T | null;
3
- }
4
- export interface AlertFlashContentContext {
5
- type: string;
6
- headerRef: RefShim<HTMLElement>;
7
- contentRef: RefShim<HTMLElement>;
8
- }
9
- export type ReplacementType = 'original' | 'remove' | 'replaced';
10
- export interface ReplacementApi {
11
- hideHeader(): void;
12
- restoreHeader(): void;
13
- replaceHeader(replacer: (container: HTMLElement) => void): void;
14
- hideContent(): void;
15
- restoreContent(): void;
16
- replaceContent(replacer: (container: HTMLElement) => void): void;
17
- }
18
- export interface AlertFlashContentResult {
19
- update: () => void;
20
- unmount: (containers: {
21
- replacementHeaderContainer: HTMLElement;
22
- replacementContentContainer: HTMLElement;
23
- }) => void;
24
- }
25
- export interface AlertFlashContentConfig {
26
- id: string;
27
- runReplacer: (context: AlertFlashContentContext, replacementApi: ReplacementApi) => AlertFlashContentResult;
28
- }
29
- export type AlertFlashContentRegistrationListener = (provider: AlertFlashContentConfig) => () => void;
30
- export interface AlertFlashContentApiPublic {
31
- registerContentReplacer(config: AlertFlashContentConfig): void;
32
- }
33
- export interface AlertFlashContentApiInternal {
34
- clearRegisteredReplacer(): void;
35
- onContentRegistered(listener: AlertFlashContentRegistrationListener): () => void;
36
- }
37
- export declare class AlertFlashContentController {
38
- #private;
39
- registerContentReplacer: (content: AlertFlashContentConfig) => void;
40
- clearRegisteredReplacer: () => void;
41
- onContentRegistered: (listener: AlertFlashContentRegistrationListener) => () => void;
42
- installPublic(api?: Partial<AlertFlashContentApiPublic>): AlertFlashContentApiPublic;
43
- installInternal(internalApi?: Partial<AlertFlashContentApiInternal>): AlertFlashContentApiInternal;
44
- }
45
- export {};
46
- //# sourceMappingURL=alert-flash-content.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"alert-flash-content.d.ts","sourceRoot":"","sources":["../../../../../src/internal/plugins/controllers/alert-flash-content.ts"],"names":[],"mappings":"AAMA,UAAU,OAAO,CAAC,CAAC;IACjB,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAChC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;CAClC;AAED,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEjE,MAAM,WAAW,cAAc;IAC7B,UAAU,IAAI,IAAI,CAAC;IACnB,aAAa,IAAI,IAAI,CAAC;IACtB,aAAa,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI,CAAC;IAChE,WAAW,IAAI,IAAI,CAAC;IACpB,cAAc,IAAI,IAAI,CAAC;IACvB,cAAc,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI,CAAC;CAClE;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,CAAC,UAAU,EAAE;QAAE,0BAA0B,EAAE,WAAW,CAAC;QAAC,2BAA2B,EAAE,WAAW,CAAA;KAAE,KAAK,IAAI,CAAC;CACtH;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,CAAC,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,cAAc,KAAK,uBAAuB,CAAC;CAC7G;AAED,MAAM,MAAM,qCAAqC,GAAG,CAAC,QAAQ,EAAE,uBAAuB,KAAK,MAAM,IAAI,CAAC;AAEtG,MAAM,WAAW,0BAA0B;IACzC,uBAAuB,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI,CAAC;CAChE;AAED,MAAM,WAAW,4BAA4B;IAC3C,uBAAuB,IAAI,IAAI,CAAC;IAChC,mBAAmB,CAAC,QAAQ,EAAE,qCAAqC,GAAG,MAAM,IAAI,CAAC;CAClF;AAED,qBAAa,2BAA2B;;IAgBtC,uBAAuB,YAAa,uBAAuB,UAWzD;IAEF,uBAAuB,aAErB;IAEF,mBAAmB,aAAc,qCAAqC,gBAapE;IAEF,aAAa,CAAC,GAAG,GAAE,OAAO,CAAC,0BAA0B,CAAM,GAAG,0BAA0B;IAKxF,eAAe,CAAC,WAAW,GAAE,OAAO,CAAC,4BAA4B,CAAM,GAAG,4BAA4B;CAKvG"}
@@ -1,59 +0,0 @@
1
- // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
- // SPDX-License-Identifier: Apache-2.0
3
- var _AlertFlashContentController_listeners, _AlertFlashContentController_cleanups, _AlertFlashContentController_provider, _AlertFlashContentController_scheduleUpdate;
4
- import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
5
- import debounce from '../../debounce';
6
- export class AlertFlashContentController {
7
- constructor() {
8
- _AlertFlashContentController_listeners.set(this, []);
9
- _AlertFlashContentController_cleanups.set(this, new Map());
10
- _AlertFlashContentController_provider.set(this, void 0);
11
- _AlertFlashContentController_scheduleUpdate.set(this, debounce(() => __classPrivateFieldGet(this, _AlertFlashContentController_listeners, "f").forEach(listener => {
12
- if (__classPrivateFieldGet(this, _AlertFlashContentController_provider, "f")) {
13
- const cleanup = listener(__classPrivateFieldGet(this, _AlertFlashContentController_provider, "f"));
14
- __classPrivateFieldGet(this, _AlertFlashContentController_cleanups, "f").set(listener, cleanup);
15
- }
16
- }), 0));
17
- this.registerContentReplacer = (content) => {
18
- if (__classPrivateFieldGet(this, _AlertFlashContentController_provider, "f")) {
19
- console.warn(`Cannot call \`registerContentReplacer\` with new provider: provider with id "${__classPrivateFieldGet(this, _AlertFlashContentController_provider, "f").id}" already registered.`);
20
- return;
21
- }
22
- __classPrivateFieldSet(this, _AlertFlashContentController_provider, content, "f");
23
- // Notify existing components if registration happens after the components are rendered.
24
- __classPrivateFieldGet(this, _AlertFlashContentController_scheduleUpdate, "f").call(this);
25
- };
26
- this.clearRegisteredReplacer = () => {
27
- __classPrivateFieldSet(this, _AlertFlashContentController_provider, undefined, "f");
28
- };
29
- this.onContentRegistered = (listener) => {
30
- if (__classPrivateFieldGet(this, _AlertFlashContentController_provider, "f")) {
31
- const cleanup = listener(__classPrivateFieldGet(this, _AlertFlashContentController_provider, "f"));
32
- __classPrivateFieldGet(this, _AlertFlashContentController_listeners, "f").push(listener);
33
- __classPrivateFieldGet(this, _AlertFlashContentController_cleanups, "f").set(listener, cleanup);
34
- }
35
- else {
36
- __classPrivateFieldGet(this, _AlertFlashContentController_listeners, "f").push(listener);
37
- }
38
- return () => {
39
- var _a;
40
- (_a = __classPrivateFieldGet(this, _AlertFlashContentController_cleanups, "f").get(listener)) === null || _a === void 0 ? void 0 : _a();
41
- __classPrivateFieldSet(this, _AlertFlashContentController_listeners, __classPrivateFieldGet(this, _AlertFlashContentController_listeners, "f").filter(item => item !== listener), "f");
42
- __classPrivateFieldGet(this, _AlertFlashContentController_cleanups, "f").delete(listener);
43
- };
44
- };
45
- }
46
- installPublic(api = {}) {
47
- var _a;
48
- (_a = api.registerContentReplacer) !== null && _a !== void 0 ? _a : (api.registerContentReplacer = this.registerContentReplacer);
49
- return api;
50
- }
51
- installInternal(internalApi = {}) {
52
- var _a, _b;
53
- (_a = internalApi.clearRegisteredReplacer) !== null && _a !== void 0 ? _a : (internalApi.clearRegisteredReplacer = this.clearRegisteredReplacer);
54
- (_b = internalApi.onContentRegistered) !== null && _b !== void 0 ? _b : (internalApi.onContentRegistered = this.onContentRegistered);
55
- return internalApi;
56
- }
57
- }
58
- _AlertFlashContentController_listeners = new WeakMap(), _AlertFlashContentController_cleanups = new WeakMap(), _AlertFlashContentController_provider = new WeakMap(), _AlertFlashContentController_scheduleUpdate = new WeakMap();
59
- //# sourceMappingURL=alert-flash-content.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"alert-flash-content.js","sourceRoot":"","sources":["../../../../../src/internal/plugins/controllers/alert-flash-content.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;;;AAEtC,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AA6CtC,MAAM,OAAO,2BAA2B;IAAxC;QACE,iDAA2D,EAAE,EAAC;QAC9D,gDAAY,IAAI,GAAG,EAAqD,EAAC;QACzE,wDAAoC;QAEpC,sDAAkB,QAAQ,CACxB,GAAG,EAAE,CACH,uBAAA,IAAI,8CAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YACjC,IAAI,uBAAA,IAAI,6CAAU,EAAE;gBAClB,MAAM,OAAO,GAAG,QAAQ,CAAC,uBAAA,IAAI,6CAAU,CAAC,CAAC;gBACzC,uBAAA,IAAI,6CAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;aACvC;QACH,CAAC,CAAC,EACJ,CAAC,CACF,EAAC;QAEF,4BAAuB,GAAG,CAAC,OAAgC,EAAE,EAAE;YAC7D,IAAI,uBAAA,IAAI,6CAAU,EAAE;gBAClB,OAAO,CAAC,IAAI,CACV,gFAAgF,uBAAA,IAAI,6CAAU,CAAC,EAAE,uBAAuB,CACzH,CAAC;gBACF,OAAO;aACR;YACD,uBAAA,IAAI,yCAAa,OAAO,MAAA,CAAC;YAEzB,wFAAwF;YACxF,uBAAA,IAAI,mDAAgB,MAApB,IAAI,CAAkB,CAAC;QACzB,CAAC,CAAC;QAEF,4BAAuB,GAAG,GAAG,EAAE;YAC7B,uBAAA,IAAI,yCAAa,SAAS,MAAA,CAAC;QAC7B,CAAC,CAAC;QAEF,wBAAmB,GAAG,CAAC,QAA+C,EAAE,EAAE;YACxE,IAAI,uBAAA,IAAI,6CAAU,EAAE;gBAClB,MAAM,OAAO,GAAG,QAAQ,CAAC,uBAAA,IAAI,6CAAU,CAAC,CAAC;gBACzC,uBAAA,IAAI,8CAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC/B,uBAAA,IAAI,6CAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;aACvC;iBAAM;gBACL,uBAAA,IAAI,8CAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAChC;YACD,OAAO,GAAG,EAAE;;gBACV,MAAA,uBAAA,IAAI,6CAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,2CAAI,CAAC;gBACjC,uBAAA,IAAI,0CAAc,uBAAA,IAAI,8CAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,MAAA,CAAC;gBACpE,uBAAA,IAAI,6CAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAClC,CAAC,CAAC;QACJ,CAAC,CAAC;IAYJ,CAAC;IAVC,aAAa,CAAC,MAA2C,EAAE;;QACzD,MAAA,GAAG,CAAC,uBAAuB,oCAA3B,GAAG,CAAC,uBAAuB,GAAK,IAAI,CAAC,uBAAuB,EAAC;QAC7D,OAAO,GAAiC,CAAC;IAC3C,CAAC;IAED,eAAe,CAAC,cAAqD,EAAE;;QACrE,MAAA,WAAW,CAAC,uBAAuB,oCAAnC,WAAW,CAAC,uBAAuB,GAAK,IAAI,CAAC,uBAAuB,EAAC;QACrE,MAAA,WAAW,CAAC,mBAAmB,oCAA/B,WAAW,CAAC,mBAAmB,GAAK,IAAI,CAAC,mBAAmB,EAAC;QAC7D,OAAO,WAA2C,CAAC;IACrD,CAAC;CACF","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport debounce from '../../debounce';\n\n// this code should not depend on React typings, because it is portable between major versions\ninterface RefShim<T> {\n current: T | null;\n}\n\nexport interface AlertFlashContentContext {\n type: string;\n headerRef: RefShim<HTMLElement>;\n contentRef: RefShim<HTMLElement>;\n}\n\nexport type ReplacementType = 'original' | 'remove' | 'replaced';\n\nexport interface ReplacementApi {\n hideHeader(): void;\n restoreHeader(): void;\n replaceHeader(replacer: (container: HTMLElement) => void): void;\n hideContent(): void;\n restoreContent(): void;\n replaceContent(replacer: (container: HTMLElement) => void): void;\n}\n\nexport interface AlertFlashContentResult {\n update: () => void;\n unmount: (containers: { replacementHeaderContainer: HTMLElement; replacementContentContainer: HTMLElement }) => void;\n}\n\nexport interface AlertFlashContentConfig {\n id: string;\n runReplacer: (context: AlertFlashContentContext, replacementApi: ReplacementApi) => AlertFlashContentResult;\n}\n\nexport type AlertFlashContentRegistrationListener = (provider: AlertFlashContentConfig) => () => void;\n\nexport interface AlertFlashContentApiPublic {\n registerContentReplacer(config: AlertFlashContentConfig): void;\n}\n\nexport interface AlertFlashContentApiInternal {\n clearRegisteredReplacer(): void;\n onContentRegistered(listener: AlertFlashContentRegistrationListener): () => void;\n}\n\nexport class AlertFlashContentController {\n #listeners: Array<AlertFlashContentRegistrationListener> = [];\n #cleanups = new Map<AlertFlashContentRegistrationListener, () => void>();\n #provider?: AlertFlashContentConfig;\n\n #scheduleUpdate = debounce(\n () =>\n this.#listeners.forEach(listener => {\n if (this.#provider) {\n const cleanup = listener(this.#provider);\n this.#cleanups.set(listener, cleanup);\n }\n }),\n 0\n );\n\n registerContentReplacer = (content: AlertFlashContentConfig) => {\n if (this.#provider) {\n console.warn(\n `Cannot call \\`registerContentReplacer\\` with new provider: provider with id \"${this.#provider.id}\" already registered.`\n );\n return;\n }\n this.#provider = content;\n\n // Notify existing components if registration happens after the components are rendered.\n this.#scheduleUpdate();\n };\n\n clearRegisteredReplacer = () => {\n this.#provider = undefined;\n };\n\n onContentRegistered = (listener: AlertFlashContentRegistrationListener) => {\n if (this.#provider) {\n const cleanup = listener(this.#provider);\n this.#listeners.push(listener);\n this.#cleanups.set(listener, cleanup);\n } else {\n this.#listeners.push(listener);\n }\n return () => {\n this.#cleanups.get(listener)?.();\n this.#listeners = this.#listeners.filter(item => item !== listener);\n this.#cleanups.delete(listener);\n };\n };\n\n installPublic(api: Partial<AlertFlashContentApiPublic> = {}): AlertFlashContentApiPublic {\n api.registerContentReplacer ??= this.registerContentReplacer;\n return api as AlertFlashContentApiPublic;\n }\n\n installInternal(internalApi: Partial<AlertFlashContentApiInternal> = {}): AlertFlashContentApiInternal {\n internalApi.clearRegisteredReplacer ??= this.clearRegisteredReplacer;\n internalApi.onContentRegistered ??= this.onContentRegistered;\n return internalApi as AlertFlashContentApiInternal;\n }\n}\n"]}
@@ -1,15 +0,0 @@
1
- import { ReactNode } from 'react';
2
- import { AlertFlashContentController, ReplacementType } from '../controllers/alert-flash-content';
3
- export declare function createUseDiscoveredContent(componentName: string, onContentRegistered: AlertFlashContentController['onContentRegistered']): ({ type, header, children, }: {
4
- type: string;
5
- header: ReactNode;
6
- children: ReactNode;
7
- }) => {
8
- headerReplacementType: ReplacementType;
9
- contentReplacementType: ReplacementType;
10
- headerRef: import("react").Ref<HTMLDivElement>;
11
- replacementHeaderRef: import("react").Ref<HTMLDivElement>;
12
- contentRef: import("react").Ref<HTMLDivElement>;
13
- replacementContentRef: import("react").Ref<HTMLDivElement>;
14
- };
15
- //# sourceMappingURL=use-discovered-content.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-discovered-content.d.ts","sourceRoot":"","sources":["../../../../../src/internal/plugins/helpers/use-discovered-content.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAA+B,MAAM,OAAO,CAAC;AAE/D,OAAO,EACL,2BAA2B,EAE3B,eAAe,EAChB,MAAM,oCAAoC,CAAC;AAE5C,wBAAgB,0BAA0B,CACxC,aAAa,EAAE,MAAM,EACrB,mBAAmB,EAAE,2BAA2B,CAAC,qBAAqB,CAAC;UAO/D,MAAM;YACJ,SAAS;cACP,SAAS;;;;;;;;EAoFtB"}
@@ -1,82 +0,0 @@
1
- // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
- // SPDX-License-Identifier: Apache-2.0
3
- import { useEffect, useRef, useState } from 'react';
4
- export function createUseDiscoveredContent(componentName, onContentRegistered) {
5
- return function useDiscoveredContent({ type, header, children, }) {
6
- const headerRef = useRef(null);
7
- const contentRef = useRef(null);
8
- const replacementHeaderRef = useRef(null);
9
- const replacementContentRef = useRef(null);
10
- const [headerReplacementType, setFoundHeaderReplacement] = useState('original');
11
- const [contentReplacementType, setFoundContentReplacement] = useState('original');
12
- const mountedProvider = useRef();
13
- useEffect(() => {
14
- const context = { type, headerRef, contentRef };
15
- return onContentRegistered(provider => {
16
- let mounted = true;
17
- function checkMounted(methodName) {
18
- if (!mounted) {
19
- console.warn(`[AwsUi] [Runtime ${componentName} content] \`${methodName}\` called after component unmounted`);
20
- return false;
21
- }
22
- return true;
23
- }
24
- mountedProvider.current = provider.runReplacer(context, {
25
- hideHeader() {
26
- if (checkMounted('hideHeader')) {
27
- setFoundHeaderReplacement('remove');
28
- }
29
- },
30
- restoreHeader() {
31
- if (checkMounted('restoreHeader')) {
32
- setFoundHeaderReplacement('original');
33
- }
34
- },
35
- replaceHeader(replacer) {
36
- if (checkMounted('replaceHeader')) {
37
- replacer(replacementHeaderRef.current);
38
- setFoundHeaderReplacement('replaced');
39
- }
40
- },
41
- hideContent() {
42
- if (checkMounted('hideContent')) {
43
- setFoundContentReplacement('remove');
44
- }
45
- },
46
- restoreContent() {
47
- if (checkMounted('restoreContent')) {
48
- setFoundContentReplacement('original');
49
- }
50
- },
51
- replaceContent(replacer) {
52
- if (checkMounted('replaceContent')) {
53
- replacer(replacementContentRef.current);
54
- setFoundContentReplacement('replaced');
55
- }
56
- },
57
- });
58
- return () => {
59
- var _a;
60
- (_a = mountedProvider.current) === null || _a === void 0 ? void 0 : _a.unmount({
61
- replacementHeaderContainer: replacementHeaderRef.current,
62
- replacementContentContainer: replacementContentRef.current,
63
- });
64
- mounted = false;
65
- };
66
- });
67
- }, [type]);
68
- useEffect(() => {
69
- var _a;
70
- (_a = mountedProvider.current) === null || _a === void 0 ? void 0 : _a.update();
71
- }, [type, header, children]);
72
- return {
73
- headerReplacementType,
74
- contentReplacementType,
75
- headerRef: headerRef,
76
- replacementHeaderRef: replacementHeaderRef,
77
- contentRef: contentRef,
78
- replacementContentRef: replacementContentRef,
79
- };
80
- };
81
- }
82
- //# sourceMappingURL=use-discovered-content.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-discovered-content.js","sourceRoot":"","sources":["../../../../../src/internal/plugins/helpers/use-discovered-content.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 { ReactNode, useEffect, useRef, useState } from 'react';\n\nimport {\n AlertFlashContentController,\n AlertFlashContentResult,\n ReplacementType,\n} from '../controllers/alert-flash-content';\n\nexport function createUseDiscoveredContent(\n componentName: string,\n onContentRegistered: AlertFlashContentController['onContentRegistered']\n) {\n return function useDiscoveredContent({\n type,\n header,\n children,\n }: {\n type: string;\n header: ReactNode;\n children: ReactNode;\n }) {\n const headerRef = useRef<HTMLDivElement>(null);\n const contentRef = useRef<HTMLDivElement>(null);\n const replacementHeaderRef = useRef<HTMLDivElement>(null);\n const replacementContentRef = useRef<HTMLDivElement>(null);\n const [headerReplacementType, setFoundHeaderReplacement] = useState<ReplacementType>('original');\n const [contentReplacementType, setFoundContentReplacement] = useState<ReplacementType>('original');\n const mountedProvider = useRef<AlertFlashContentResult | undefined>();\n\n useEffect(() => {\n const context = { type, headerRef, contentRef };\n\n return onContentRegistered(provider => {\n let mounted = true;\n\n function checkMounted(methodName: string) {\n if (!mounted) {\n console.warn(\n `[AwsUi] [Runtime ${componentName} content] \\`${methodName}\\` called after component unmounted`\n );\n return false;\n }\n return true;\n }\n\n mountedProvider.current = provider.runReplacer(context, {\n hideHeader() {\n if (checkMounted('hideHeader')) {\n setFoundHeaderReplacement('remove');\n }\n },\n restoreHeader() {\n if (checkMounted('restoreHeader')) {\n setFoundHeaderReplacement('original');\n }\n },\n replaceHeader(replacer: (container: HTMLElement) => void) {\n if (checkMounted('replaceHeader')) {\n replacer(replacementHeaderRef.current!);\n setFoundHeaderReplacement('replaced');\n }\n },\n hideContent() {\n if (checkMounted('hideContent')) {\n setFoundContentReplacement('remove');\n }\n },\n restoreContent() {\n if (checkMounted('restoreContent')) {\n setFoundContentReplacement('original');\n }\n },\n replaceContent(replacer: (container: HTMLElement) => void) {\n if (checkMounted('replaceContent')) {\n replacer(replacementContentRef.current!);\n setFoundContentReplacement('replaced');\n }\n },\n });\n\n return () => {\n mountedProvider.current?.unmount({\n replacementHeaderContainer: replacementHeaderRef.current!,\n replacementContentContainer: replacementContentRef.current!,\n });\n mounted = false;\n };\n });\n }, [type]);\n\n useEffect(() => {\n mountedProvider.current?.update();\n }, [type, header, children]);\n\n return {\n headerReplacementType,\n contentReplacementType,\n headerRef: headerRef as React.Ref<HTMLDivElement>,\n replacementHeaderRef: replacementHeaderRef as React.Ref<HTMLDivElement>,\n contentRef: contentRef as React.Ref<HTMLDivElement>,\n replacementContentRef: replacementContentRef as React.Ref<HTMLDivElement>,\n };\n };\n}\n"]}