@ui5/webcomponents-fiori 1.21.1 → 1.22.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/CHANGELOG.md +5 -2
  2. package/dist/Bar.d.ts +6 -27
  3. package/dist/Bar.js +3 -14
  4. package/dist/Bar.js.map +1 -1
  5. package/dist/BarcodeScannerDialog.d.ts +2 -13
  6. package/dist/BarcodeScannerDialog.js +10 -12
  7. package/dist/BarcodeScannerDialog.js.map +1 -1
  8. package/dist/DynamicSideContent.d.ts +9 -35
  9. package/dist/DynamicSideContent.js +15 -7
  10. package/dist/DynamicSideContent.js.map +1 -1
  11. package/dist/FilterItem.d.ts +3 -14
  12. package/dist/FilterItem.js +1 -5
  13. package/dist/FilterItem.js.map +1 -1
  14. package/dist/FilterItemOption.d.ts +3 -11
  15. package/dist/FilterItemOption.js +1 -5
  16. package/dist/FilterItemOption.js.map +1 -1
  17. package/dist/FlexibleColumnLayout.d.ts +13 -51
  18. package/dist/FlexibleColumnLayout.js +28 -26
  19. package/dist/FlexibleColumnLayout.js.map +1 -1
  20. package/dist/IllustratedMessage.d.ts +9 -35
  21. package/dist/IllustratedMessage.js +1 -4
  22. package/dist/IllustratedMessage.js.map +1 -1
  23. package/dist/Interfaces.d.ts +28 -88
  24. package/dist/Interfaces.js +2 -113
  25. package/dist/Interfaces.js.map +1 -1
  26. package/dist/MediaGallery.d.ts +9 -26
  27. package/dist/MediaGallery.js +4 -8
  28. package/dist/MediaGallery.js.map +1 -1
  29. package/dist/MediaGalleryItem.d.ts +7 -22
  30. package/dist/MediaGalleryItem.js +2 -5
  31. package/dist/MediaGalleryItem.js.map +1 -1
  32. package/dist/NotificationAction.d.ts +7 -20
  33. package/dist/NotificationAction.js +3 -9
  34. package/dist/NotificationAction.js.map +1 -1
  35. package/dist/NotificationListGroupItem.d.ts +5 -27
  36. package/dist/NotificationListGroupItem.js +1 -16
  37. package/dist/NotificationListGroupItem.js.map +1 -1
  38. package/dist/NotificationListItem.d.ts +3 -27
  39. package/dist/NotificationListItem.js +2 -15
  40. package/dist/NotificationListItem.js.map +1 -1
  41. package/dist/NotificationListItemBase.d.ts +7 -32
  42. package/dist/NotificationListItemBase.js +15 -15
  43. package/dist/NotificationListItemBase.js.map +1 -1
  44. package/dist/Page.d.ts +7 -35
  45. package/dist/Page.js +2 -13
  46. package/dist/Page.js.map +1 -1
  47. package/dist/ProductSwitch.d.ts +3 -10
  48. package/dist/ProductSwitch.js +1 -5
  49. package/dist/ProductSwitch.js.map +1 -1
  50. package/dist/ProductSwitchItem.d.ts +9 -22
  51. package/dist/ProductSwitchItem.js +2 -7
  52. package/dist/ProductSwitchItem.js.map +1 -1
  53. package/dist/ShellBar.d.ts +30 -90
  54. package/dist/ShellBar.js +28 -41
  55. package/dist/ShellBar.js.map +1 -1
  56. package/dist/ShellBarItem.d.ts +9 -14
  57. package/dist/ShellBarItem.js +6 -6
  58. package/dist/ShellBarItem.js.map +1 -1
  59. package/dist/SideNavigation.d.ts +29 -17
  60. package/dist/SideNavigation.js +155 -9
  61. package/dist/SideNavigation.js.map +1 -1
  62. package/dist/SideNavigationItem.d.ts +4 -17
  63. package/dist/SideNavigationItem.js +1 -5
  64. package/dist/SideNavigationItem.js.map +1 -1
  65. package/dist/SideNavigationItemBase.d.ts +7 -36
  66. package/dist/SideNavigationItemBase.js +20 -12
  67. package/dist/SideNavigationItemBase.js.map +1 -1
  68. package/dist/SideNavigationSubItem.d.ts +1 -5
  69. package/dist/SideNavigationSubItem.js +1 -5
  70. package/dist/SideNavigationSubItem.js.map +1 -1
  71. package/dist/SortItem.d.ts +3 -11
  72. package/dist/SortItem.js +1 -5
  73. package/dist/SortItem.js.map +1 -1
  74. package/dist/Timeline.d.ts +5 -16
  75. package/dist/Timeline.js +1 -5
  76. package/dist/Timeline.js.map +1 -1
  77. package/dist/TimelineItem.d.ts +11 -34
  78. package/dist/TimelineItem.js +3 -15
  79. package/dist/TimelineItem.js.map +1 -1
  80. package/dist/UploadCollection.d.ts +11 -32
  81. package/dist/UploadCollection.js +7 -9
  82. package/dist/UploadCollection.js.map +1 -1
  83. package/dist/UploadCollectionItem.d.ts +16 -47
  84. package/dist/UploadCollectionItem.js +3 -10
  85. package/dist/UploadCollectionItem.js.map +1 -1
  86. package/dist/ViewSettingsDialog.d.ts +5 -28
  87. package/dist/ViewSettingsDialog.js +34 -18
  88. package/dist/ViewSettingsDialog.js.map +1 -1
  89. package/dist/Wizard.d.ts +15 -39
  90. package/dist/Wizard.js +23 -33
  91. package/dist/Wizard.js.map +1 -1
  92. package/dist/WizardStep.d.ts +8 -31
  93. package/dist/WizardStep.js +2 -5
  94. package/dist/WizardStep.js.map +1 -1
  95. package/dist/WizardTab.d.ts +20 -24
  96. package/dist/WizardTab.js +1 -5
  97. package/dist/WizardTab.js.map +1 -1
  98. package/dist/css/themes/SideNavigation.css +1 -1
  99. package/dist/custom-elements-internal.json +6682 -0
  100. package/dist/custom-elements.json +4098 -1
  101. package/dist/generated/i18n/i18n-defaults.d.ts +2 -1
  102. package/dist/generated/i18n/i18n-defaults.js +2 -1
  103. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  104. package/dist/generated/templates/SideNavigationPopoverTemplate.lit.js +6 -2
  105. package/dist/generated/templates/SideNavigationPopoverTemplate.lit.js.map +1 -1
  106. package/dist/generated/templates/SideNavigationTemplate.lit.js +1 -1
  107. package/dist/generated/templates/SideNavigationTemplate.lit.js.map +1 -1
  108. package/dist/generated/themes/SideNavigation.css.js +1 -1
  109. package/dist/generated/themes/SideNavigation.css.js.map +1 -1
  110. package/dist/types/BarDesign.d.ts +0 -8
  111. package/dist/types/BarDesign.js +0 -8
  112. package/dist/types/BarDesign.js.map +1 -1
  113. package/dist/types/FCLLayout.d.ts +0 -13
  114. package/dist/types/FCLLayout.js +0 -13
  115. package/dist/types/FCLLayout.js.map +1 -1
  116. package/dist/types/IllustrationMessageSize.d.ts +0 -9
  117. package/dist/types/IllustrationMessageSize.js +0 -9
  118. package/dist/types/IllustrationMessageSize.js.map +1 -1
  119. package/dist/types/IllustrationMessageType.d.ts +0 -107
  120. package/dist/types/IllustrationMessageType.js +0 -107
  121. package/dist/types/IllustrationMessageType.js.map +1 -1
  122. package/dist/types/MediaGalleryItemLayout.d.ts +0 -6
  123. package/dist/types/MediaGalleryItemLayout.js +0 -6
  124. package/dist/types/MediaGalleryItemLayout.js.map +1 -1
  125. package/dist/types/MediaGalleryLayout.d.ts +0 -7
  126. package/dist/types/MediaGalleryLayout.js +0 -7
  127. package/dist/types/MediaGalleryLayout.js.map +1 -1
  128. package/dist/types/MediaGalleryMenuHorizontalAlign.d.ts +0 -6
  129. package/dist/types/MediaGalleryMenuHorizontalAlign.js +0 -6
  130. package/dist/types/MediaGalleryMenuHorizontalAlign.js.map +1 -1
  131. package/dist/types/MediaGalleryMenuVerticalAlign.d.ts +0 -6
  132. package/dist/types/MediaGalleryMenuVerticalAlign.js +0 -6
  133. package/dist/types/MediaGalleryMenuVerticalAlign.js.map +1 -1
  134. package/dist/types/PageBackgroundDesign.d.ts +0 -7
  135. package/dist/types/PageBackgroundDesign.js +0 -7
  136. package/dist/types/PageBackgroundDesign.js.map +1 -1
  137. package/dist/types/SideContentFallDown.d.ts +0 -8
  138. package/dist/types/SideContentFallDown.js +0 -8
  139. package/dist/types/SideContentFallDown.js.map +1 -1
  140. package/dist/types/SideContentPosition.d.ts +0 -6
  141. package/dist/types/SideContentPosition.js +0 -6
  142. package/dist/types/SideContentPosition.js.map +1 -1
  143. package/dist/types/SideContentVisibility.d.ts +0 -9
  144. package/dist/types/SideContentVisibility.js +0 -9
  145. package/dist/types/SideContentVisibility.js.map +1 -1
  146. package/dist/types/TimelineLayout.d.ts +0 -6
  147. package/dist/types/TimelineLayout.js +0 -6
  148. package/dist/types/TimelineLayout.js.map +1 -1
  149. package/dist/types/UploadCollectionDnDMode.d.ts +0 -7
  150. package/dist/types/UploadCollectionDnDMode.js +0 -7
  151. package/dist/types/UploadCollectionDnDMode.js.map +1 -1
  152. package/dist/types/UploadState.d.ts +0 -8
  153. package/dist/types/UploadState.js +0 -8
  154. package/dist/types/UploadState.js.map +1 -1
  155. package/dist/types/ViewSettingsDialogMode.d.ts +0 -6
  156. package/dist/types/ViewSettingsDialogMode.js +0 -6
  157. package/dist/types/ViewSettingsDialogMode.js.map +1 -1
  158. package/dist/types/WizardContentLayout.d.ts +0 -6
  159. package/dist/types/WizardContentLayout.js +0 -6
  160. package/dist/types/WizardContentLayout.js.map +1 -1
  161. package/package.json +7 -7
  162. package/src/SideNavigation.hbs +21 -0
  163. package/src/SideNavigationPopover.hbs +61 -28
  164. package/src/i18n/messagebundle.properties +3 -0
  165. package/src/themes/SideNavigation.css +11 -1
  166. package/dist/api.json +0 -1
@@ -13,39 +13,28 @@ import type FilterItemOption from "./FilterItemOption.js";
13
13
  * <code>import @ui5/webcomponents-fiori/dist/FilterItem.js";</code>
14
14
  *
15
15
  * @constructor
16
- * @author SAP SE
17
- * @alias sap.ui.webc.fiori.FilterItem
18
- * @extends sap.ui.webc.base.UI5Element
16
+ * @extends UI5Element
19
17
  * @abstract
20
18
  * @since 1.0.0-rc.16
21
- * @tagname ui5-filter-item
22
- * @implements sap.ui.webc.fiori.IFilterItem
23
19
  * @public
24
20
  */
25
21
  declare class FilterItem extends UI5Element {
26
22
  /**
27
23
  * Defines the text of the component.
28
24
  *
29
- * @name sap.ui.webc.fiori.FilterItem.prototype.text
30
- * @type {string}
31
- * @defaultvalue ""
25
+ * @default ""
32
26
  * @public
33
27
  */
34
28
  text: string;
35
29
  /**
36
30
  * Defines the additional text of the component.
37
31
  *
38
- * @name sap.ui.webc.fiori.FilterItem.prototype.additionalText
39
- * @type {string}
40
- * @defaultvalue ""
32
+ * @default ""
41
33
  * @public
42
34
  */
43
35
  additionalText: string;
44
36
  /**
45
37
  * Defines the <code>values</code> list.
46
- * @name sap.ui.webc.fiori.FilterItem.prototype.values
47
- * @type {sap.ui.webc.fiori.IFilterItemOption[]}
48
- * @slot values
49
38
  * @public
50
39
  */
51
40
  values: Array<FilterItemOption>;
@@ -21,13 +21,9 @@ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement
21
21
  * <code>import @ui5/webcomponents-fiori/dist/FilterItem.js";</code>
22
22
  *
23
23
  * @constructor
24
- * @author SAP SE
25
- * @alias sap.ui.webc.fiori.FilterItem
26
- * @extends sap.ui.webc.base.UI5Element
24
+ * @extends UI5Element
27
25
  * @abstract
28
26
  * @since 1.0.0-rc.16
29
- * @tagname ui5-filter-item
30
- * @implements sap.ui.webc.fiori.IFilterItem
31
27
  * @public
32
28
  */
33
29
  let FilterItem = class FilterItem extends UI5Element {
@@ -1 +1 @@
1
- {"version":3,"file":"FilterItem.js","sourceRoot":"","sources":["../src/FilterItem.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AAGrF;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,UAAU;CAgClC,CAAA;AAtBA;IADC,QAAQ,EAAE;wCACG;AAWd;IADC,QAAQ,EAAE;kDACa;AAUxB;IADC,IAAI,EAAE;0CAC0B;AA/B5B,UAAU;IADf,aAAa,CAAC,iBAAiB,CAAC;GAC3B,UAAU,CAgCf;AAED,UAAU,CAAC,MAAM,EAAE,CAAC;AAEpB,eAAe,UAAU,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type FilterItemOption from \"./FilterItemOption.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * <h3>Usage</h3>\n *\n * For the <code>ui5-filter-item</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import @ui5/webcomponents-fiori/dist/FilterItem.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.fiori.FilterItem\n * @extends sap.ui.webc.base.UI5Element\n * @abstract\n * @since 1.0.0-rc.16\n * @tagname ui5-filter-item\n * @implements sap.ui.webc.fiori.IFilterItem\n * @public\n */\n@customElement(\"ui5-filter-item\")\nclass FilterItem extends UI5Element {\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * @name sap.ui.webc.fiori.FilterItem.prototype.text\n\t * @type {string}\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines the additional text of the component.\n\t *\n\t * @name sap.ui.webc.fiori.FilterItem.prototype.additionalText\n\t * @type {string}\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\tadditionalText!: string;\n\n\t/**\n\t * Defines the <code>values</code> list.\n\t * @name sap.ui.webc.fiori.FilterItem.prototype.values\n\t * @type {sap.ui.webc.fiori.IFilterItemOption[]}\n\t * @slot values\n\t * @public\n\t */\n\t@slot()\n\tvalues!: Array<FilterItemOption>;\n}\n\nFilterItem.define();\n\nexport default FilterItem;\n"]}
1
+ {"version":3,"file":"FilterItem.js","sourceRoot":"","sources":["../src/FilterItem.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AAGrF;;;;;;;;;;;;;;;;;GAiBG;AAEH,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,UAAU;CAyBlC,CAAA;AAjBA;IADC,QAAQ,EAAE;wCACG;AASd;IADC,QAAQ,EAAE;kDACa;AAOxB;IADC,IAAI,EAAE;0CAC0B;AAxB5B,UAAU;IADf,aAAa,CAAC,iBAAiB,CAAC;GAC3B,UAAU,CAyBf;AAED,UAAU,CAAC,MAAM,EAAE,CAAC;AAEpB,eAAe,UAAU,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type FilterItemOption from \"./FilterItemOption.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * <h3>Usage</h3>\n *\n * For the <code>ui5-filter-item</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import @ui5/webcomponents-fiori/dist/FilterItem.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @abstract\n * @since 1.0.0-rc.16\n * @public\n */\n@customElement(\"ui5-filter-item\")\nclass FilterItem extends UI5Element {\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines the additional text of the component.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tadditionalText!: string;\n\n\t/**\n\t * Defines the <code>values</code> list.\n\t * @public\n\t */\n\t@slot()\n\tvalues!: Array<FilterItemOption>;\n}\n\nFilterItem.define();\n\nexport default FilterItem;\n"]}
@@ -13,31 +13,23 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
13
13
  * <code>import @ui5/webcomponents-fiori/dist/FilterItemOption.js";</code>
14
14
  *
15
15
  * @constructor
16
- * @author SAP SE
17
- * @alias sap.ui.webc.fiori.FilterItemOption
18
- * @extends sap.ui.webc.base.UI5Element
16
+ * @extends UI5Element
19
17
  * @abstract
20
18
  * @since 1.0.0-rc.16
21
- * @tagname ui5-filter-item-option
22
- * @implements sap.ui.webc.fiori.IFilterItemOption
23
19
  * @public
24
20
  */
25
21
  declare class FilterItemOption extends UI5Element {
26
22
  /**
27
23
  * Defines the text of the component.
28
24
  *
29
- * @name sap.ui.webc.fiori.FilterItemOption.prototype.text
30
- * @type {string}
31
- * @defaultvalue ""
25
+ * @default ""
32
26
  * @public
33
27
  */
34
28
  text: string;
35
29
  /**
36
30
  * Defines if the component is selected.
37
31
  *
38
- * @name sap.ui.webc.fiori.FilterItemOption.prototype.selected
39
- * @type {boolean}
40
- * @defaultvalue false
32
+ * @default false
41
33
  * @public
42
34
  */
43
35
  selected: boolean;
@@ -21,13 +21,9 @@ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement
21
21
  * <code>import @ui5/webcomponents-fiori/dist/FilterItemOption.js";</code>
22
22
  *
23
23
  * @constructor
24
- * @author SAP SE
25
- * @alias sap.ui.webc.fiori.FilterItemOption
26
- * @extends sap.ui.webc.base.UI5Element
24
+ * @extends UI5Element
27
25
  * @abstract
28
26
  * @since 1.0.0-rc.16
29
- * @tagname ui5-filter-item-option
30
- * @implements sap.ui.webc.fiori.IFilterItemOption
31
27
  * @public
32
28
  */
33
29
  let FilterItemOption = class FilterItemOption extends UI5Element {
@@ -1 +1 @@
1
- {"version":3,"file":"FilterItemOption.js","sourceRoot":"","sources":["../src/FilterItemOption.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,aAAa,MAAM,0DAA0D,CAAC;AAErF;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,UAAU;CAsBxC,CAAA;AAZA;IADC,QAAQ,EAAE;8CACG;AAWd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;kDACT;AArBd,gBAAgB;IADrB,aAAa,CAAC,wBAAwB,CAAC;GAClC,gBAAgB,CAsBrB;AAED,gBAAgB,CAAC,MAAM,EAAE,CAAC;AAE1B,eAAe,gBAAgB,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>ui5-filter-item-option</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import @ui5/webcomponents-fiori/dist/FilterItemOption.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.fiori.FilterItemOption\n * @extends sap.ui.webc.base.UI5Element\n * @abstract\n * @since 1.0.0-rc.16\n * @tagname ui5-filter-item-option\n * @implements sap.ui.webc.fiori.IFilterItemOption\n * @public\n */\n@customElement(\"ui5-filter-item-option\")\nclass FilterItemOption extends UI5Element {\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * @name sap.ui.webc.fiori.FilterItemOption.prototype.text\n\t * @type {string}\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines if the component is selected.\n\t *\n\t * @name sap.ui.webc.fiori.FilterItemOption.prototype.selected\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tselected!: boolean;\n}\n\nFilterItemOption.define();\n\nexport default FilterItemOption;\n"]}
1
+ {"version":3,"file":"FilterItemOption.js","sourceRoot":"","sources":["../src/FilterItemOption.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,aAAa,MAAM,0DAA0D,CAAC;AAErF;;;;;;;;;;;;;;;;;;GAkBG;AAEH,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,UAAU;CAkBxC,CAAA;AAVA;IADC,QAAQ,EAAE;8CACG;AASd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;kDACT;AAjBd,gBAAgB;IADrB,aAAa,CAAC,wBAAwB,CAAC;GAClC,gBAAgB,CAkBrB;AAED,gBAAgB,CAAC,MAAM,EAAE,CAAC;AAE1B,eAAe,gBAAgB,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>ui5-filter-item-option</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import @ui5/webcomponents-fiori/dist/FilterItemOption.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @abstract\n * @since 1.0.0-rc.16\n * @public\n */\n@customElement(\"ui5-filter-item-option\")\nclass FilterItemOption extends UI5Element {\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines if the component is selected.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tselected!: boolean;\n}\n\nFilterItemOption.define();\n\nexport default FilterItemOption;\n"]}
@@ -80,10 +80,7 @@ type AccessibilityRoles = {
80
80
  * <code>import "@ui5/webcomponents-fiori/dist/FlexibleColumnLayout.js";</code>
81
81
  *
82
82
  * @constructor
83
- * @author SAP SE
84
- * @alias sap.ui.webc.fiori.FlexibleColumnLayout
85
- * @extends sap.ui.webc.base.UI5Element
86
- * @tagname ui5-flexible-column-layout
83
+ * @extends UI5Element
87
84
  * @public
88
85
  * @since 1.0.0-rc.8
89
86
  */
@@ -96,9 +93,7 @@ declare class FlexibleColumnLayout extends UI5Element {
96
93
  * <br><br>
97
94
  * <b>For example:</b> layout=<code>TwoColumnsStartExpanded</code> means the layout will display up to two columns
98
95
  * in 67%/33% proportion.
99
- * @type {sap.ui.webc.fiori.types.FCLLayout}
100
- * @defaultvalue "OneColumn"
101
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.layout
96
+ * @default "OneColumn"
102
97
  * @public
103
98
  */
104
99
  layout: `${FCLLayout}`;
@@ -106,9 +101,7 @@ declare class FlexibleColumnLayout extends UI5Element {
106
101
  * Defines the visibility of the arrows,
107
102
  * used for expanding and shrinking the columns.
108
103
  *
109
- * @type {boolean}
110
- * @defaultvalue false
111
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.hideArrows
104
+ * @default false
112
105
  * @public
113
106
  * @since 1.0.0-rc.15
114
107
  */
@@ -127,8 +120,7 @@ declare class FlexibleColumnLayout extends UI5Element {
127
120
  * - <code>startArrowContainerAccessibleName</code>: the text that the first arrow container (between the <code>begin</code> and <code>mid</code> columns) will have as <code>aria-label</code>
128
121
  * - <code>endArrowContainerAccessibleName</code>: the text that the second arrow container (between the <code>mid</code> and <code>end</code> columns) will have as <code>aria-label</code>
129
122
  *
130
- * @type {object}
131
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.accessibilityTexts
123
+ * @default {}
132
124
  * @public
133
125
  * @since 1.0.0-rc.11
134
126
  */
@@ -143,17 +135,15 @@ declare class FlexibleColumnLayout extends UI5Element {
143
135
  * - <code>endArrowContainerRole</code>: the accessibility role for the second arrow container (between the <code>mid</code> and <code>end</code> columns)
144
136
  * - <code>endColumnRole</code>: the accessibility role for the <code>endColumn</code>
145
137
  *
146
- * @type {object}
138
+ * @default {}
147
139
  * @public
148
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.accessibilityRoles
149
140
  * @since 1.1.0
150
141
  */
151
142
  accessibilityRoles: AccessibilityRoles;
152
143
  /**
153
144
  * Defines the component width in px.
154
145
  *
155
- * @type {sap.ui.webc.base.types.Float}
156
- * @defaultvalue 0
146
+ * @default 0
157
147
  * @private
158
148
  */
159
149
  _width: number;
@@ -162,48 +152,35 @@ declare class FlexibleColumnLayout extends UI5Element {
162
152
  * based on both the <code>layout</code> property and the screen size.
163
153
  * Example: [67%, 33%, 0], [25%, 50%, 25%], etc.
164
154
  *
165
- * @type {object}
166
- * @defaultvalue undefined
155
+ * @default undefined
167
156
  * @private
168
157
  */
169
158
  _columnLayout?: ColumnLayout;
170
159
  /**
171
160
  * Defines the visible columns count - 1, 2 or 3.
172
161
  *
173
- * @type {sap.ui.webc.base.types.Integer}
174
- * @defaultvalue 1
162
+ * @default 1
175
163
  * @private
176
164
  */
177
165
  _visibleColumns: number;
178
166
  /**
179
167
  * Allows the user to replace the whole layouts configuration
180
168
  *
181
- * @type {object}
182
169
  * @private
183
- * @sap-restricted
184
170
  */
185
171
  _layoutsConfiguration?: LayoutConfiguration;
186
172
  /**
187
173
  * Defines the content in the start column.
188
- * @type {HTMLElement}
189
- * @slot
190
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.startColumn
191
174
  * @public
192
175
  */
193
176
  startColumn: Array<HTMLElement>;
194
177
  /**
195
178
  * Defines the content in the middle column.
196
- * @type {HTMLElement}
197
- * @slot
198
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.midColumn
199
179
  * @public
200
180
  */
201
181
  midColumn: Array<HTMLElement>;
202
182
  /**
203
183
  * Defines the content in the end column.
204
- * @type {HTMLElement}
205
- * @slot
206
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.endColumn
207
184
  * @public
208
185
  */
209
186
  endColumn: Array<HTMLElement>;
@@ -246,46 +223,31 @@ declare class FlexibleColumnLayout extends UI5Element {
246
223
  * <br><br>
247
224
  * <b>For example:</b> ["67%", "33%", 0], ["100%", 0, 0], ["25%", "50%", "25%"], etc,
248
225
  * where the numbers represents the width of the start, middle and end columns.
249
- * @readonly
250
- * @type {array}
251
- * @defaultvalue ["100%", 0, 0]
252
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.columnLayout
226
+ * @default undefined
253
227
  * @public
254
228
  */
255
229
  get columnLayout(): ColumnLayout | undefined;
256
230
  /**
257
231
  * Returns if the <code>start</code> column is visible.
258
- * @readonly
259
- * @defaultvalue true
260
- * @type {boolean}
261
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.startColumnVisible
232
+ * @default true
262
233
  * @public
263
234
  */
264
235
  get startColumnVisible(): boolean;
265
236
  /**
266
237
  * Returns if the <code>middle</code> column is visible.
267
- * @readonly
268
- * @type {boolean}
269
- * @defaultvalue false
270
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.midColumnVisible
238
+ * @default false
271
239
  * @public
272
240
  */
273
241
  get midColumnVisible(): boolean;
274
242
  /**
275
243
  * Returns if the <code>end</code> column is visible.
276
- * @readonly
277
- * @type {boolean}
278
- * @defaultvalue false
279
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.endColumnVisible
244
+ * @default false
280
245
  * @public
281
246
  */
282
247
  get endColumnVisible(): boolean;
283
248
  /**
284
249
  * Returns the number of currently visible columns.
285
- * @readonly
286
- * @type {sap.ui.webc.base.types.Integer}
287
- * @defaultvalue 1
288
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.visibleColumns
250
+ * @default 1
289
251
  * @public
290
252
  */
291
253
  get visibleColumns(): number;
@@ -79,10 +79,7 @@ const BREAKPOINTS = {
79
79
  * <code>import "@ui5/webcomponents-fiori/dist/FlexibleColumnLayout.js";</code>
80
80
  *
81
81
  * @constructor
82
- * @author SAP SE
83
- * @alias sap.ui.webc.fiori.FlexibleColumnLayout
84
- * @extends sap.ui.webc.base.UI5Element
85
- * @tagname ui5-flexible-column-layout
82
+ * @extends UI5Element
86
83
  * @public
87
84
  * @since 1.0.0-rc.8
88
85
  */
@@ -245,10 +242,7 @@ let FlexibleColumnLayout = FlexibleColumnLayout_1 = class FlexibleColumnLayout e
245
242
  * <br><br>
246
243
  * <b>For example:</b> ["67%", "33%", 0], ["100%", 0, 0], ["25%", "50%", "25%"], etc,
247
244
  * where the numbers represents the width of the start, middle and end columns.
248
- * @readonly
249
- * @type {array}
250
- * @defaultvalue ["100%", 0, 0]
251
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.columnLayout
245
+ * @default undefined
252
246
  * @public
253
247
  */
254
248
  get columnLayout() {
@@ -256,10 +250,7 @@ let FlexibleColumnLayout = FlexibleColumnLayout_1 = class FlexibleColumnLayout e
256
250
  }
257
251
  /**
258
252
  * Returns if the <code>start</code> column is visible.
259
- * @readonly
260
- * @defaultvalue true
261
- * @type {boolean}
262
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.startColumnVisible
253
+ * @default true
263
254
  * @public
264
255
  */
265
256
  get startColumnVisible() {
@@ -270,10 +261,7 @@ let FlexibleColumnLayout = FlexibleColumnLayout_1 = class FlexibleColumnLayout e
270
261
  }
271
262
  /**
272
263
  * Returns if the <code>middle</code> column is visible.
273
- * @readonly
274
- * @type {boolean}
275
- * @defaultvalue false
276
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.midColumnVisible
264
+ * @default false
277
265
  * @public
278
266
  */
279
267
  get midColumnVisible() {
@@ -284,10 +272,7 @@ let FlexibleColumnLayout = FlexibleColumnLayout_1 = class FlexibleColumnLayout e
284
272
  }
285
273
  /**
286
274
  * Returns if the <code>end</code> column is visible.
287
- * @readonly
288
- * @type {boolean}
289
- * @defaultvalue false
290
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.endColumnVisible
275
+ * @default false
291
276
  * @public
292
277
  */
293
278
  get endColumnVisible() {
@@ -298,10 +283,7 @@ let FlexibleColumnLayout = FlexibleColumnLayout_1 = class FlexibleColumnLayout e
298
283
  }
299
284
  /**
300
285
  * Returns the number of currently visible columns.
301
- * @readonly
302
- * @type {sap.ui.webc.base.types.Integer}
303
- * @defaultvalue 1
304
- * @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.visibleColumns
286
+ * @default 1
305
287
  * @public
306
288
  */
307
289
  get visibleColumns() {
@@ -532,25 +514,45 @@ FlexibleColumnLayout = FlexibleColumnLayout_1 = __decorate([
532
514
  * Fired when the layout changes via user interaction by clicking the arrows
533
515
  * or by changing the component size due to resizing.
534
516
  *
535
- * @param {sap.ui.webc.fiori.types.FCLLayout} layout The current layout
517
+ * @param {FCLLayout} layout The current layout
536
518
  * @param {array} columnLayout The effective column layout, f.e [67%, 33%, 0]
537
519
  * @param {boolean} startColumnVisible Indicates if the start column is currently visible
538
520
  * @param {boolean} midColumnVisible Indicates if the middle column is currently visible
539
521
  * @param {boolean} endColumnVisible Indicates if the end column is currently visible
540
522
  * @param {boolean} arrowsUsed Indicates if the layout is changed via the arrows
541
523
  * @param {boolean} resize Indicates if the layout is changed via resizing
542
- * @event sap.ui.webc.fiori.FlexibleColumnLayout#layout-change
543
524
  * @public
544
525
  */
545
526
  ,
546
527
  event("layout-change", {
547
528
  detail: {
529
+ /**
530
+ * @public
531
+ */
548
532
  layout: { type: FCLLayout },
533
+ /**
534
+ * @public
535
+ */
549
536
  columnLayout: { type: Array },
537
+ /**
538
+ * @public
539
+ */
550
540
  startColumnVisible: { type: Boolean },
541
+ /**
542
+ * @public
543
+ */
551
544
  midColumnVisible: { type: Boolean },
545
+ /**
546
+ * @public
547
+ */
552
548
  endColumnVisible: { type: Boolean },
549
+ /**
550
+ * @public
551
+ */
553
552
  arrowsUsed: { type: Boolean },
553
+ /**
554
+ * @public
555
+ */
554
556
  resize: { type: Boolean },
555
557
  },
556
558
  })
@@ -1 +1 @@
1
- {"version":3,"file":"FlexibleColumnLayout.js","sourceRoot":"","sources":["../src/FlexibleColumnLayout.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport Float from \"@ui5/webcomponents-base/dist/types/Float.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport AnimationMode from \"@ui5/webcomponents-base/dist/types/AnimationMode.js\";\nimport { getAnimationMode } from \"@ui5/webcomponents-base/dist/config/AnimationMode.js\";\nimport Button from \"@ui5/webcomponents/dist/Button.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-left.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\nimport FCLLayout from \"./types/FCLLayout.js\";\nimport type { LayoutConfiguration } from \"./fcl-utils/FCLLayout.js\";\nimport {\n\tgetLayoutsByMedia,\n\tgetNextLayoutByStartArrow,\n\tgetNextLayoutByEndArrow,\n} from \"./fcl-utils/FCLLayout.js\";\n\n// Texts\nimport {\n\tFCL_START_COLUMN_TXT,\n\tFCL_MIDDLE_COLUMN_TXT,\n\tFCL_END_COLUMN_TXT,\n\tFCL_START_COLUMN_EXPAND_BUTTON_TOOLTIP,\n\tFCL_START_COLUMN_COLLAPSE_BUTTON_TOOLTIP,\n\tFCL_END_COLUMN_EXPAND_BUTTON_TOOLTIP,\n\tFCL_END_COLUMN_COLLAPSE_BUTTON_TOOLTIP,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport FlexibleColumnLayoutTemplate from \"./generated/templates/FlexibleColumnLayoutTemplate.lit.js\";\n\n// Styles\nimport FlexibleColumnLayoutCss from \"./generated/themes/FlexibleColumnLayout.css.js\";\n\nenum MEDIA {\n\tPHONE = \"phone\",\n\tTABLET = \"tablet\",\n\tDESKTOP = \"desktop\",\n}\n\nconst BREAKPOINTS = {\n\t\"PHONE\": 599,\n\t\"TABLET\": 1023,\n} as const;\n\ntype ColumnLayout = Array<string | number>;\n\ntype FlexibleColumnLayoutLayoutChangeEventDetail = {\n\tlayout: `${FCLLayout}`,\n\tcolumnLayout: ColumnLayout,\n\tstartColumnVisible: boolean,\n\tmidColumnVisible: boolean,\n\tendColumnVisible: boolean,\n\tarrowUsed: boolean,\n\tarrowsUsed: boolean,\n\tresize: boolean,\n};\n\ntype AccessiblilityTexts = {\n\tstartColumnAccessibleName?: I18nText;\n\tstartArrowContainerAccessibleName?: I18nText;\n\tstartArrowLeftText?: I18nText;\n\tstartArrowRightText?: I18nText;\n\tmidColumnAccessibleName?: I18nText;\n\tendColumnAccessibleName?: I18nText;\n\tendArrowContainerAccessibleName?: I18nText;\n\tendArrowRightText?: I18nText;\n\tendArrowLeftText?: I18nText;\n};\n\ntype AccessibilityRoles = {\n\tstartColumnRole?: I18nText;\n\tmidColumnRole?: I18nText;\n\tendColumnRole?: I18nText;\n\tstartArrowContainerRole?: I18nText;\n\tendArrowContainerRole?: I18nText;\n};\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>FlexibleColumnLayout</code> implements the list-detail-detail paradigm by displaying up to three pages in separate columns.\n * There are several possible layouts that can be changed either with the component API, or by pressing the arrows, displayed between the columns.\n *\n * <h3>Usage</h3>\n *\n * Use this component for applications that need to display several logical levels of related information side by side (e.g. list of items, item, sub-item, etc.).\n * The Component is flexible in a sense that the application can focus the user's attention on one particular column.\n *\n * <h3>Responsive Behavior</h3>\n *\n * The <code>FlexibleColumnLayout</code> automatically displays the maximum possible number of columns based on <code>layout</code> property and the window size.\n * The component would display 1 column for window size smaller than 599px, up to two columns between 599px and 1023px,\n * and 3 columns for sizes bigger than 1023px.\n *\n * <br><br>\n * <h3>Keyboard Handling</h3>\n *\n * <h4>Basic Navigation</h4>\n * <ul>\n * <li>[SPACE, ENTER, RETURN] - If focus is on the layout toggle button (arrow button), once activated, it triggers the associated action (such as expand/collapse the column).</li>\n * <li>This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.\n * In order to use this functionality, you need to import the following module:\n * <code>import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"</code></li>\n * </ul>\n *\n * <h4>Fast Navigation</h4>\n * This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.\n * In order to use this functionality, you need to import the following module:\n * <code>import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"</code>\n * <br><br>\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents-fiori/dist/FlexibleColumnLayout.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.fiori.FlexibleColumnLayout\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-flexible-column-layout\n * @public\n * @since 1.0.0-rc.8\n */\n@customElement({\n\ttag: \"ui5-flexible-column-layout\",\n\tfastNavigation: true,\n\trenderer: litRender,\n\tstyles: FlexibleColumnLayoutCss,\n\ttemplate: FlexibleColumnLayoutTemplate,\n\tdependencies: [Button],\n})\n\n/**\n * Fired when the layout changes via user interaction by clicking the arrows\n * or by changing the component size due to resizing.\n *\n * @param {sap.ui.webc.fiori.types.FCLLayout} layout The current layout\n * @param {array} columnLayout The effective column layout, f.e [67%, 33%, 0]\n * @param {boolean} startColumnVisible Indicates if the start column is currently visible\n * @param {boolean} midColumnVisible Indicates if the middle column is currently visible\n * @param {boolean} endColumnVisible Indicates if the end column is currently visible\n * @param {boolean} arrowsUsed Indicates if the layout is changed via the arrows\n * @param {boolean} resize Indicates if the layout is changed via resizing\n * @event sap.ui.webc.fiori.FlexibleColumnLayout#layout-change\n * @public\n */\n@event(\"layout-change\", {\n\tdetail: {\n\t\tlayout: { type: FCLLayout },\n\t\tcolumnLayout: { type: Array },\n\t\tstartColumnVisible: { type: Boolean },\n\t\tmidColumnVisible: { type: Boolean },\n\t\tendColumnVisible: { type: Boolean },\n\t\tarrowsUsed: { type: Boolean },\n\t\tresize: { type: Boolean },\n\t},\n})\nclass FlexibleColumnLayout extends UI5Element {\n\t/**\n\t* Defines the columns layout and their proportion.\n\t* <br><br>\n\t* <b>Note:</b> The layout also depends on the screen size - one column for screens smaller than 599px,\n\t* two columns between 599px and 1023px and three columns for sizes bigger than 1023px.\n\t* <br><br>\n\t* <b>For example:</b> layout=<code>TwoColumnsStartExpanded</code> means the layout will display up to two columns\n\t* in 67%/33% proportion.\n\t* @type {sap.ui.webc.fiori.types.FCLLayout}\n\t* @defaultvalue \"OneColumn\"\n\t* @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.layout\n\t* @public\n\t*/\n\t@property({ type: FCLLayout, defaultValue: FCLLayout.OneColumn })\n\tlayout!: `${FCLLayout}`;\n\n\t/**\n\t* Defines the visibility of the arrows,\n\t* used for expanding and shrinking the columns.\n\t*\n\t* @type {boolean}\n\t* @defaultvalue false\n\t* @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.hideArrows\n\t* @public\n\t* @since 1.0.0-rc.15\n\t*/\n\t@property({ type: Boolean })\n\thideArrows!: boolean;\n\n\t/**\n\t* An object of strings that defines several additional accessibility texts for even further customization.\n\t*\n\t* It supports the following fields:\n\t* - <code>startColumnAccessibleName</code>: the accessibility name for the <code>startColumn</code> region\n\t* - <code>midColumnAccessibleName</code>: the accessibility name for the <code>midColumn</code> region\n\t* - <code>endColumnAccessibleName</code>: the accessibility name for the <code>endColumn</code> region\n\t* - <code>startArrowLeftText</code>: the text that the first arrow (between the <code>begin</code> and <code>mid</code> columns) will have when pointing to the left\n\t* - <code>startArrowRightText</code>: the text that the first arrow (between the <code>begin</code> and <code>mid</code> columns) will have when pointing to the right\n\t* - <code>endArrowLeftText</code>: the text that the second arrow (between the <code>mid</code> and <code>end</code> columns) will have when pointing to the left\n\t* - <code>endArrowRightText</code>: the text that the second arrow (between the <code>mid</code> and <code>end</code> columns) will have when pointing to the right\n\t* - <code>startArrowContainerAccessibleName</code>: the text that the first arrow container (between the <code>begin</code> and <code>mid</code> columns) will have as <code>aria-label</code>\n\t* - <code>endArrowContainerAccessibleName</code>: the text that the second arrow container (between the <code>mid</code> and <code>end</code> columns) will have as <code>aria-label</code>\n\t*\n\t* @type {object}\n\t* @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.accessibilityTexts\n\t* @public\n\t* @since 1.0.0-rc.11\n\t*/\n\t@property({ type: Object })\n\taccessibilityTexts!: AccessiblilityTexts;\n\n\t/**\n\t* An object of strings that defines additional accessibility roles for further customization.\n\t*\n\t* It supports the following fields:\n\t* - <code>startColumnRole</code>: the accessibility role for the <code>startColumn</code>\n\t* - <code>startArrowContainerRole</code>: the accessibility role for the first arrow container (between the <code>begin</code> and <code>mid</code> columns)\n\t* - <code>midColumnRole</code>: the accessibility role for the <code>midColumn</code>\n\t* - <code>endArrowContainerRole</code>: the accessibility role for the second arrow container (between the <code>mid</code> and <code>end</code> columns)\n\t* - <code>endColumnRole</code>: the accessibility role for the <code>endColumn</code>\n\t*\n\t* @type {object}\n\t* @public\n\t* @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.accessibilityRoles\n\t* @since 1.1.0\n\t*/\n\t@property({ type: Object })\n\taccessibilityRoles!: AccessibilityRoles;\n\n\t/**\n\t* Defines the component width in px.\n\t*\n\t* @type {sap.ui.webc.base.types.Float}\n\t* @defaultvalue 0\n\t* @private\n\t*/\n\t@property({ validator: Float, defaultValue: 0 })\n\t_width!: number;\n\n\t/**\n\t* Defines the effective columns layout,\n\t* based on both the <code>layout</code> property and the screen size.\n\t* Example: [67%, 33%, 0], [25%, 50%, 25%], etc.\n\t*\n\t* @type {object}\n\t* @defaultvalue undefined\n\t* @private\n\t*/\n\t@property({ type: Object, defaultValue: undefined })\n\t_columnLayout?: ColumnLayout;\n\n\t/**\n\t* Defines the visible columns count - 1, 2 or 3.\n\t*\n\t* @type {sap.ui.webc.base.types.Integer}\n\t* @defaultvalue 1\n\t* @private\n\t*/\n\t@property({ validator: Integer, defaultValue: 0 })\n\t_visibleColumns!: number;\n\n\t/**\n\t* Allows the user to replace the whole layouts configuration\n\t*\n\t* @type {object}\n\t* @private\n\t* @sap-restricted\n\t*/\n\t@property({ type: Object, defaultValue: undefined })\n\t_layoutsConfiguration?: LayoutConfiguration;\n\n\t/**\n\t* Defines the content in the start column.\n\t* @type {HTMLElement}\n\t* @slot\n\t* @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.startColumn\n\t* @public\n\t*/\n\t@slot()\n\tstartColumn!: Array<HTMLElement>;\n\n\t/**\n\t* Defines the content in the middle column.\n\t* @type {HTMLElement}\n\t* @slot\n\t* @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.midColumn\n\t* @public\n\t*/\n\t@slot()\n\tmidColumn!: Array<HTMLElement>;\n\n\t/**\n\t* Defines the content in the end column.\n\t* @type {HTMLElement}\n\t* @slot\n\t* @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.endColumn\n\t* @public\n\t*/\n\t@slot()\n\tendColumn!: Array<HTMLElement>;\n\n\tinitialRendering: boolean;\n\t_handleResize: () => void;\n\tstatic i18nBundle: I18nBundle;\n\t_prevLayout: `${FCLLayout}` | null;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._prevLayout = null;\n\t\tthis.initialRendering = true;\n\t\tthis._handleResize = this.handleResize.bind(this);\n\t}\n\n\tstatic async onDefine() {\n\t\tFlexibleColumnLayout.i18nBundle = await getI18nBundle(\"@ui5/webcomponents-fiori\");\n\t}\n\n\tstatic get ANIMATION_DURATION() {\n\t\treturn getAnimationMode() !== AnimationMode.None ? 560 : 0;\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResize.bind(this));\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._handleResize);\n\t}\n\n\tonAfterRendering() {\n\t\tif (this.initialRendering) {\n\t\t\tthis.handleInitialRendering();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.syncLayout();\n\t}\n\n\thandleInitialRendering() {\n\t\tthis._prevLayout = this.layout;\n\t\tthis.updateLayout();\n\t\tthis.initialRendering = false;\n\t}\n\n\thandleResize() {\n\t\tif (this.initialRendering) {\n\t\t\treturn;\n\t\t}\n\n\t\t// store the previous layout\n\t\tconst prevLayoutHash = this.columnLayout!.join();\n\n\t\t// update the column layout, based on the current width\n\t\tthis.updateLayout();\n\n\t\t// fire layout-change if the column layout changed\n\t\tif (prevLayoutHash !== this.columnLayout!.join()) {\n\t\t\tthis.fireLayoutChange(false, true);\n\t\t}\n\t}\n\n\tstartArrowClick() {\n\t\tthis.arrowClick({ start: true, end: false });\n\t}\n\n\tendArrowClick() {\n\t\tthis.arrowClick({ start: false, end: true });\n\t}\n\n\tarrowClick(options: { start: boolean, end: boolean }) {\n\t\t// update public property\n\t\tthis.layout = this.nextLayout(this.layout, { start: options.start, end: options.end })!;\n\n\t\t// update layout\n\t\tthis.updateLayout();\n\n\t\t// fire layout-change\n\t\tthis.fireLayoutChange(true, false);\n\t}\n\n\tupdateLayout() {\n\t\tthis._width = this.widthDOM;\n\t\tthis._columnLayout = this.nextColumnLayout(this.layout);\n\t\tthis._visibleColumns = this.calcVisibleColumns(this._columnLayout);\n\t\tthis.toggleColumns();\n\t}\n\n\tsyncLayout() {\n\t\tif (this._prevLayout !== this.layout) {\n\t\t\tthis.updateLayout();\n\t\t\tthis._prevLayout = this.layout;\n\t\t}\n\t}\n\n\ttoggleColumns() {\n\t\tthis.toggleColumn(\"start\");\n\t\tthis.toggleColumn(\"mid\");\n\t\tthis.toggleColumn(\"end\");\n\t}\n\n\ttoggleColumn(column: string) {\n\t\tlet columnWidth;\n\t\tlet columnDOM;\n\n\t\tif (column === \"start\") {\n\t\t\tcolumnWidth = this.startColumnWidth;\n\t\t\tcolumnDOM = this.startColumnDOM;\n\t\t} else if (column === \"mid\") {\n\t\t\tcolumnWidth = this.midColumnWidth;\n\t\t\tcolumnDOM = this.midColumnDOM;\n\t\t} else {\n\t\t\tcolumnWidth = this.endColumnWidth;\n\t\t\tcolumnDOM = this.endColumnDOM;\n\t\t}\n\n\t\tconst currentlyHidden = this._isColumnHidden(columnWidth);\n\t\tconst previouslyHidden = this._isColumnHidden(columnDOM.style.width);\n\n\t\t// no change\n\t\tif (currentlyHidden && previouslyHidden) {\n\t\t\treturn;\n\t\t}\n\n\t\t// column resizing: from 33% to 67%, from 25% to 50%, etc.\n\t\tif (!currentlyHidden && !previouslyHidden) {\n\t\t\tcolumnDOM.style.width = typeof columnWidth === \"number\" ? `${columnWidth}px` : columnWidth;\n\t\t\treturn;\n\t\t}\n\n\t\t// hide column: 33% to 0, 25% to 0, etc .\n\t\tif (currentlyHidden) {\n\t\t\t// animate the width\n\t\t\tcolumnDOM.style.width = typeof columnWidth === \"number\" ? `${columnWidth}px` : columnWidth;\n\n\t\t\t// hide column with delay to allow the animation runs entirely\n\t\t\tcolumnDOM.addEventListener(\"transitionend\", this.columnResizeHandler);\n\n\t\t\treturn;\n\t\t}\n\n\t\t// show column: from 0 to 33%, from 0 to 25%, etc.\n\t\tif (previouslyHidden) {\n\t\t\tcolumnDOM.removeEventListener(\"transitionend\", this.columnResizeHandler);\n\t\t\tcolumnDOM.classList.remove(\"ui5-fcl-column--hidden\");\n\t\t\tcolumnDOM.style.width = typeof columnWidth === \"number\" ? `${columnWidth}px` : columnWidth;\n\t\t}\n\t}\n\n\tcolumnResizeHandler = (e: Event) => {\n\t\t(e.target as HTMLElement).classList.add(\"ui5-fcl-column--hidden\");\n\t}\n\n\tnextLayout(layout: `${FCLLayout}`, arrowsInfo: { start: boolean, end: boolean }) {\n\t\tif (!arrowsInfo) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (arrowsInfo.start) {\n\t\t\treturn getNextLayoutByStartArrow()[layout as keyof typeof getNextLayoutByStartArrow];\n\t\t}\n\n\t\tif (arrowsInfo.end) {\n\t\t\treturn getNextLayoutByEndArrow()[layout as keyof typeof getNextLayoutByEndArrow];\n\t\t}\n\t}\n\n\tnextColumnLayout(layout: `${FCLLayout}`) {\n\t\treturn this._effectiveLayoutsByMedia[this.media][layout].layout;\n\t}\n\n\tcalcVisibleColumns(colLayout: ColumnLayout) {\n\t\treturn colLayout.filter(colWidth => !this._isColumnHidden(colWidth)).length;\n\t}\n\n\tfireLayoutChange(arrowUsed: boolean, resize: boolean) {\n\t\tthis.fireEvent<FlexibleColumnLayoutLayoutChangeEventDetail>(\"layout-change\", {\n\t\t\tlayout: this.layout,\n\t\t\tcolumnLayout: this._columnLayout!,\n\t\t\tstartColumnVisible: this.startColumnVisible,\n\t\t\tmidColumnVisible: this.midColumnVisible,\n\t\t\tendColumnVisible: this.endColumnVisible,\n\t\t\tarrowUsed, // for backwards compatibility\n\t\t\tarrowsUsed: arrowUsed, // as documented\n\t\t\tresize,\n\t\t});\n\t}\n\n\t/**\n\t * Checks if a column is hidden based on its width.\n\t */\n\tprivate _isColumnHidden(columnWidth: number | string): boolean {\n\t\treturn columnWidth === 0 || columnWidth === \"0px\";\n\t}\n\n\t/**\n\t* Returns the current column layout, based on both the <code>layout</code> property and the screen size.\n\t* <br><br>\n\t* <b>For example:</b> [\"67%\", \"33%\", 0], [\"100%\", 0, 0], [\"25%\", \"50%\", \"25%\"], etc,\n\t* where the numbers represents the width of the start, middle and end columns.\n\t* @readonly\n\t* @type {array}\n\t* @defaultvalue [\"100%\", 0, 0]\n\t* @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.columnLayout\n\t* @public\n\t*/\n\tget columnLayout(): ColumnLayout | undefined {\n\t\treturn this._columnLayout;\n\t}\n\n\t/**\n\t* Returns if the <code>start</code> column is visible.\n\t* @readonly\n\t* @defaultvalue true\n\t* @type {boolean}\n\t* @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.startColumnVisible\n\t* @public\n\t*/\n\tget startColumnVisible(): boolean {\n\t\tif (this._columnLayout) {\n\t\t\treturn !this._isColumnHidden(this._columnLayout[0]);\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Returns if the <code>middle</code> column is visible.\n\t* @readonly\n\t* @type {boolean}\n\t* @defaultvalue false\n\t* @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.midColumnVisible\n\t* @public\n\t*/\n\tget midColumnVisible(): boolean {\n\t\tif (this._columnLayout) {\n\t\t\treturn !this._isColumnHidden(this._columnLayout[1]);\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Returns if the <code>end</code> column is visible.\n\t* @readonly\n\t* @type {boolean}\n\t* @defaultvalue false\n\t* @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.endColumnVisible\n\t* @public\n\t*/\n\tget endColumnVisible(): boolean {\n\t\tif (this._columnLayout) {\n\t\t\treturn !this._isColumnHidden(this._columnLayout[2]);\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Returns the number of currently visible columns.\n\t* @readonly\n\t* @type {sap.ui.webc.base.types.Integer}\n\t* @defaultvalue 1\n\t* @name sap.ui.webc.fiori.FlexibleColumnLayout.prototype.visibleColumns\n\t* @public\n\t*/\n\tget visibleColumns(): number {\n\t\treturn this._visibleColumns;\n\t}\n\n\tget classes() {\n\t\tconst hasAnimation = getAnimationMode() !== AnimationMode.None;\n\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-fcl-root\": true,\n\t\t\t},\n\t\t\tcolumns: {\n\t\t\t\tstart: {\n\t\t\t\t\t\"ui5-fcl-column\": true,\n\t\t\t\t\t\"ui5-fcl-column-animation\": hasAnimation,\n\t\t\t\t\t\"ui5-fcl-column--start\": true,\n\t\t\t\t},\n\t\t\t\tmiddle: {\n\t\t\t\t\t\"ui5-fcl-column\": true,\n\t\t\t\t\t\"ui5-fcl-column-animation\": hasAnimation,\n\t\t\t\t\t\"ui5-fcl-column--middle\": true,\n\t\t\t\t},\n\t\t\t\tend: {\n\t\t\t\t\t\"ui5-fcl-column\": true,\n\t\t\t\t\t\"ui5-fcl-column-animation\": hasAnimation,\n\t\t\t\t\t\"ui5-fcl-column--end\": true,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tarrowsContainer: {\n\t\t\t\tstart: {\n\t\t\t\t\tdisplay: this.showStartSeparator ? \"flex\" : \"none\",\n\t\t\t\t},\n\t\t\t\tend: {\n\t\t\t\t\tdisplay: this.showEndSeparator ? \"flex\" : \"none\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tarrows: {\n\t\t\t\tstart: {\n\t\t\t\t\tdisplay: this.showStartArrow ? \"inline-block\" : \"none\",\n\t\t\t\t\ttransform: this.startArrowDirection === \"mirror\" ? \"rotate(180deg)\" : \"\",\n\t\t\t\t},\n\t\t\t\tend: {\n\t\t\t\t\tdisplay: this.showEndArrow ? \"inline-block\" : \"none\",\n\t\t\t\t\ttransform: this.endArrowDirection === \"mirror\" ? \"rotate(180deg)\" : \"\",\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget startColumnWidth() {\n\t\treturn this._columnLayout ? this._columnLayout[0] : \"100%\";\n\t}\n\n\tget midColumnWidth() {\n\t\treturn this._columnLayout ? this._columnLayout[1] : \"0px\";\n\t}\n\n\tget endColumnWidth() {\n\t\treturn this._columnLayout ? this._columnLayout[2] : \"0px\";\n\t}\n\n\tget showStartSeparator() {\n\t\treturn this.effectiveArrowsInfo[0].separator || this.startArrowVisibility;\n\t}\n\n\tget showEndSeparator() {\n\t\treturn this.effectiveArrowsInfo[1].separator || this.endArrowVisibility;\n\t}\n\n\tget showStartArrow() {\n\t\treturn this.hideArrows ? false : this.startArrowVisibility;\n\t}\n\n\tget showEndArrow() {\n\t\treturn this.hideArrows ? false : this.endArrowVisibility;\n\t}\n\n\tget startArrowVisibility() {\n\t\treturn this.effectiveArrowsInfo[0].visible;\n\t}\n\n\tget endArrowVisibility() {\n\t\treturn this.effectiveArrowsInfo[1].visible;\n\t}\n\n\tget startArrowDirection() {\n\t\treturn this.effectiveArrowsInfo[0].dir;\n\t}\n\n\tget endArrowDirection() {\n\t\treturn this.effectiveArrowsInfo[1].dir;\n\t}\n\n\tget effectiveArrowsInfo() {\n\t\treturn this._effectiveLayoutsByMedia[this.media][this.layout].arrows;\n\t}\n\n\tget media() {\n\t\tif (this._width <= BREAKPOINTS.PHONE) {\n\t\t\treturn MEDIA.PHONE;\n\t\t}\n\n\t\tif (this._width <= BREAKPOINTS.TABLET) {\n\t\t\treturn MEDIA.TABLET;\n\t\t}\n\n\t\treturn MEDIA.DESKTOP;\n\t}\n\n\tget widthDOM() {\n\t\treturn this.getBoundingClientRect().width;\n\t}\n\n\tget startColumnDOM() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-fcl-column--start\")!;\n\t}\n\n\tget midColumnDOM() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-fcl-column--middle\")!;\n\t}\n\n\tget endColumnDOM() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-fcl-column--end\")!;\n\t}\n\n\tget accStartColumnText() {\n\t\treturn this.accessibilityTexts.startColumnAccessibleName || FlexibleColumnLayout.i18nBundle.getText(FCL_START_COLUMN_TXT);\n\t}\n\n\tget accMiddleColumnText() {\n\t\treturn this.accessibilityTexts.midColumnAccessibleName || FlexibleColumnLayout.i18nBundle.getText(FCL_MIDDLE_COLUMN_TXT);\n\t}\n\n\tget accEndColumnText() {\n\t\treturn this.accessibilityTexts.endColumnAccessibleName || FlexibleColumnLayout.i18nBundle.getText(FCL_END_COLUMN_TXT);\n\t}\n\n\tget accStartArrowContainerText() {\n\t\treturn this.accessibilityTexts.startArrowContainerAccessibleName || undefined;\n\t}\n\n\tget accEndArrowContainerText() {\n\t\treturn this.accessibilityTexts.endArrowContainerAccessibleName || undefined;\n\t}\n\n\tget accStartColumnRole() {\n\t\tif (this.startColumnVisible) {\n\t\t\treturn this.accessibilityRoles.startColumnRole || \"region\";\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tget accMiddleColumnRole() {\n\t\tif (this.midColumnVisible) {\n\t\t\treturn this.accessibilityRoles.midColumnRole || \"region\";\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tget accEndColumnRole() {\n\t\tif (this.endColumnVisible) {\n\t\t\treturn this.accessibilityRoles.endColumnRole || \"region\";\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tget accStartArrowContainerRole() {\n\t\treturn this.accessibilityRoles.startArrowContainerRole || undefined;\n\t}\n\n\tget accEndArrowContainerRole() {\n\t\treturn this.accessibilityRoles.endArrowContainerRole || undefined;\n\t}\n\n\tget _effectiveLayoutsByMedia() {\n\t\treturn this._layoutsConfiguration || getLayoutsByMedia();\n\t}\n\n\tget _accAttributes() {\n\t\treturn {\n\t\t\tcolumns: {\n\t\t\t\tstart: {\n\t\t\t\t\trole: this.accStartColumnRole,\n\t\t\t\t\tariaHidden: !this.startColumnVisible || undefined,\n\t\t\t\t},\n\t\t\t\tmiddle: {\n\t\t\t\t\trole: this.accMiddleColumnRole,\n\t\t\t\t\tariaHidden: !this.midColumnVisible || undefined,\n\t\t\t\t},\n\t\t\t\tend: {\n\t\t\t\t\trole: this.accEndColumnRole,\n\t\t\t\t\tariaHidden: !this.endColumnVisible || undefined,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget accStartArrowText() {\n\t\tconst customTexts = this.accessibilityTexts;\n\n\t\tif (this.startArrowDirection === \"mirror\") {\n\t\t\treturn customTexts.startArrowLeftText || FlexibleColumnLayout.i18nBundle.getText(FCL_START_COLUMN_COLLAPSE_BUTTON_TOOLTIP);\n\t\t}\n\n\t\treturn customTexts.startArrowRightText || FlexibleColumnLayout.i18nBundle.getText(FCL_START_COLUMN_EXPAND_BUTTON_TOOLTIP);\n\t}\n\n\tget accEndArrowText() {\n\t\tconst customTexts = this.accessibilityTexts;\n\n\t\tif (this.endArrowDirection === \"mirror\") {\n\t\t\treturn customTexts.endArrowRightText || FlexibleColumnLayout.i18nBundle.getText(FCL_END_COLUMN_COLLAPSE_BUTTON_TOOLTIP);\n\t\t}\n\n\t\treturn customTexts.endArrowLeftText || FlexibleColumnLayout.i18nBundle.getText(FCL_END_COLUMN_EXPAND_BUTTON_TOOLTIP);\n\t}\n}\n\nFlexibleColumnLayout.define();\n\nexport default FlexibleColumnLayout;\n\nexport type {\n\tMEDIA,\n\tFlexibleColumnLayoutLayoutChangeEventDetail,\n};\n"]}
1
+ {"version":3,"file":"FlexibleColumnLayout.js","sourceRoot":"","sources":["../src/FlexibleColumnLayout.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport Float from \"@ui5/webcomponents-base/dist/types/Float.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport AnimationMode from \"@ui5/webcomponents-base/dist/types/AnimationMode.js\";\nimport { getAnimationMode } from \"@ui5/webcomponents-base/dist/config/AnimationMode.js\";\nimport Button from \"@ui5/webcomponents/dist/Button.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-left.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\nimport FCLLayout from \"./types/FCLLayout.js\";\nimport type { LayoutConfiguration } from \"./fcl-utils/FCLLayout.js\";\nimport {\n\tgetLayoutsByMedia,\n\tgetNextLayoutByStartArrow,\n\tgetNextLayoutByEndArrow,\n} from \"./fcl-utils/FCLLayout.js\";\n\n// Texts\nimport {\n\tFCL_START_COLUMN_TXT,\n\tFCL_MIDDLE_COLUMN_TXT,\n\tFCL_END_COLUMN_TXT,\n\tFCL_START_COLUMN_EXPAND_BUTTON_TOOLTIP,\n\tFCL_START_COLUMN_COLLAPSE_BUTTON_TOOLTIP,\n\tFCL_END_COLUMN_EXPAND_BUTTON_TOOLTIP,\n\tFCL_END_COLUMN_COLLAPSE_BUTTON_TOOLTIP,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport FlexibleColumnLayoutTemplate from \"./generated/templates/FlexibleColumnLayoutTemplate.lit.js\";\n\n// Styles\nimport FlexibleColumnLayoutCss from \"./generated/themes/FlexibleColumnLayout.css.js\";\n\nenum MEDIA {\n\tPHONE = \"phone\",\n\tTABLET = \"tablet\",\n\tDESKTOP = \"desktop\",\n}\n\nconst BREAKPOINTS = {\n\t\"PHONE\": 599,\n\t\"TABLET\": 1023,\n} as const;\n\ntype ColumnLayout = Array<string | number>;\n\ntype FlexibleColumnLayoutLayoutChangeEventDetail = {\n\tlayout: `${FCLLayout}`,\n\tcolumnLayout: ColumnLayout,\n\tstartColumnVisible: boolean,\n\tmidColumnVisible: boolean,\n\tendColumnVisible: boolean,\n\tarrowUsed: boolean,\n\tarrowsUsed: boolean,\n\tresize: boolean,\n};\n\ntype AccessiblilityTexts = {\n\tstartColumnAccessibleName?: I18nText;\n\tstartArrowContainerAccessibleName?: I18nText;\n\tstartArrowLeftText?: I18nText;\n\tstartArrowRightText?: I18nText;\n\tmidColumnAccessibleName?: I18nText;\n\tendColumnAccessibleName?: I18nText;\n\tendArrowContainerAccessibleName?: I18nText;\n\tendArrowRightText?: I18nText;\n\tendArrowLeftText?: I18nText;\n};\n\ntype AccessibilityRoles = {\n\tstartColumnRole?: I18nText;\n\tmidColumnRole?: I18nText;\n\tendColumnRole?: I18nText;\n\tstartArrowContainerRole?: I18nText;\n\tendArrowContainerRole?: I18nText;\n};\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>FlexibleColumnLayout</code> implements the list-detail-detail paradigm by displaying up to three pages in separate columns.\n * There are several possible layouts that can be changed either with the component API, or by pressing the arrows, displayed between the columns.\n *\n * <h3>Usage</h3>\n *\n * Use this component for applications that need to display several logical levels of related information side by side (e.g. list of items, item, sub-item, etc.).\n * The Component is flexible in a sense that the application can focus the user's attention on one particular column.\n *\n * <h3>Responsive Behavior</h3>\n *\n * The <code>FlexibleColumnLayout</code> automatically displays the maximum possible number of columns based on <code>layout</code> property and the window size.\n * The component would display 1 column for window size smaller than 599px, up to two columns between 599px and 1023px,\n * and 3 columns for sizes bigger than 1023px.\n *\n * <br><br>\n * <h3>Keyboard Handling</h3>\n *\n * <h4>Basic Navigation</h4>\n * <ul>\n * <li>[SPACE, ENTER, RETURN] - If focus is on the layout toggle button (arrow button), once activated, it triggers the associated action (such as expand/collapse the column).</li>\n * <li>This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.\n * In order to use this functionality, you need to import the following module:\n * <code>import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"</code></li>\n * </ul>\n *\n * <h4>Fast Navigation</h4>\n * This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.\n * In order to use this functionality, you need to import the following module:\n * <code>import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"</code>\n * <br><br>\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents-fiori/dist/FlexibleColumnLayout.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.0.0-rc.8\n */\n@customElement({\n\ttag: \"ui5-flexible-column-layout\",\n\tfastNavigation: true,\n\trenderer: litRender,\n\tstyles: FlexibleColumnLayoutCss,\n\ttemplate: FlexibleColumnLayoutTemplate,\n\tdependencies: [Button],\n})\n\n/**\n * Fired when the layout changes via user interaction by clicking the arrows\n * or by changing the component size due to resizing.\n *\n * @param {FCLLayout} layout The current layout\n * @param {array} columnLayout The effective column layout, f.e [67%, 33%, 0]\n * @param {boolean} startColumnVisible Indicates if the start column is currently visible\n * @param {boolean} midColumnVisible Indicates if the middle column is currently visible\n * @param {boolean} endColumnVisible Indicates if the end column is currently visible\n * @param {boolean} arrowsUsed Indicates if the layout is changed via the arrows\n * @param {boolean} resize Indicates if the layout is changed via resizing\n * @public\n */\n@event(\"layout-change\", {\n\tdetail: {\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tlayout: { type: FCLLayout },\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tcolumnLayout: { type: Array },\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tstartColumnVisible: { type: Boolean },\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tmidColumnVisible: { type: Boolean },\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tendColumnVisible: { type: Boolean },\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tarrowsUsed: { type: Boolean },\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tresize: { type: Boolean },\n\t},\n})\nclass FlexibleColumnLayout extends UI5Element {\n\t/**\n\t* Defines the columns layout and their proportion.\n\t* <br><br>\n\t* <b>Note:</b> The layout also depends on the screen size - one column for screens smaller than 599px,\n\t* two columns between 599px and 1023px and three columns for sizes bigger than 1023px.\n\t* <br><br>\n\t* <b>For example:</b> layout=<code>TwoColumnsStartExpanded</code> means the layout will display up to two columns\n\t* in 67%/33% proportion.\n\t* @default \"OneColumn\"\n\t* @public\n\t*/\n\t@property({ type: FCLLayout, defaultValue: FCLLayout.OneColumn })\n\tlayout!: `${FCLLayout}`;\n\n\t/**\n\t* Defines the visibility of the arrows,\n\t* used for expanding and shrinking the columns.\n\t*\n\t* @default false\n\t* @public\n\t* @since 1.0.0-rc.15\n\t*/\n\t@property({ type: Boolean })\n\thideArrows!: boolean;\n\n\t/**\n\t* An object of strings that defines several additional accessibility texts for even further customization.\n\t*\n\t* It supports the following fields:\n\t* - <code>startColumnAccessibleName</code>: the accessibility name for the <code>startColumn</code> region\n\t* - <code>midColumnAccessibleName</code>: the accessibility name for the <code>midColumn</code> region\n\t* - <code>endColumnAccessibleName</code>: the accessibility name for the <code>endColumn</code> region\n\t* - <code>startArrowLeftText</code>: the text that the first arrow (between the <code>begin</code> and <code>mid</code> columns) will have when pointing to the left\n\t* - <code>startArrowRightText</code>: the text that the first arrow (between the <code>begin</code> and <code>mid</code> columns) will have when pointing to the right\n\t* - <code>endArrowLeftText</code>: the text that the second arrow (between the <code>mid</code> and <code>end</code> columns) will have when pointing to the left\n\t* - <code>endArrowRightText</code>: the text that the second arrow (between the <code>mid</code> and <code>end</code> columns) will have when pointing to the right\n\t* - <code>startArrowContainerAccessibleName</code>: the text that the first arrow container (between the <code>begin</code> and <code>mid</code> columns) will have as <code>aria-label</code>\n\t* - <code>endArrowContainerAccessibleName</code>: the text that the second arrow container (between the <code>mid</code> and <code>end</code> columns) will have as <code>aria-label</code>\n\t*\n\t* @default {}\n\t* @public\n\t* @since 1.0.0-rc.11\n\t*/\n\t@property({ type: Object })\n\taccessibilityTexts!: AccessiblilityTexts;\n\n\t/**\n\t* An object of strings that defines additional accessibility roles for further customization.\n\t*\n\t* It supports the following fields:\n\t* - <code>startColumnRole</code>: the accessibility role for the <code>startColumn</code>\n\t* - <code>startArrowContainerRole</code>: the accessibility role for the first arrow container (between the <code>begin</code> and <code>mid</code> columns)\n\t* - <code>midColumnRole</code>: the accessibility role for the <code>midColumn</code>\n\t* - <code>endArrowContainerRole</code>: the accessibility role for the second arrow container (between the <code>mid</code> and <code>end</code> columns)\n\t* - <code>endColumnRole</code>: the accessibility role for the <code>endColumn</code>\n\t*\n\t* @default {}\n\t* @public\n\t* @since 1.1.0\n\t*/\n\t@property({ type: Object })\n\taccessibilityRoles!: AccessibilityRoles;\n\n\t/**\n\t* Defines the component width in px.\n\t*\n\t* @default 0\n\t* @private\n\t*/\n\t@property({ validator: Float, defaultValue: 0 })\n\t_width!: number;\n\n\t/**\n\t* Defines the effective columns layout,\n\t* based on both the <code>layout</code> property and the screen size.\n\t* Example: [67%, 33%, 0], [25%, 50%, 25%], etc.\n\t*\n\t* @default undefined\n\t* @private\n\t*/\n\t@property({ type: Object, defaultValue: undefined })\n\t_columnLayout?: ColumnLayout;\n\n\t/**\n\t* Defines the visible columns count - 1, 2 or 3.\n\t*\n\t* @default 1\n\t* @private\n\t*/\n\t@property({ validator: Integer, defaultValue: 0 })\n\t_visibleColumns!: number;\n\n\t/**\n\t* Allows the user to replace the whole layouts configuration\n\t*\n\t* @private\n\t*/\n\t@property({ type: Object, defaultValue: undefined })\n\t_layoutsConfiguration?: LayoutConfiguration;\n\n\t/**\n\t* Defines the content in the start column.\n\t* @public\n\t*/\n\t@slot()\n\tstartColumn!: Array<HTMLElement>;\n\n\t/**\n\t* Defines the content in the middle column.\n\t* @public\n\t*/\n\t@slot()\n\tmidColumn!: Array<HTMLElement>;\n\n\t/**\n\t* Defines the content in the end column.\n\t* @public\n\t*/\n\t@slot()\n\tendColumn!: Array<HTMLElement>;\n\n\tinitialRendering: boolean;\n\t_handleResize: () => void;\n\tstatic i18nBundle: I18nBundle;\n\t_prevLayout: `${FCLLayout}` | null;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._prevLayout = null;\n\t\tthis.initialRendering = true;\n\t\tthis._handleResize = this.handleResize.bind(this);\n\t}\n\n\tstatic async onDefine() {\n\t\tFlexibleColumnLayout.i18nBundle = await getI18nBundle(\"@ui5/webcomponents-fiori\");\n\t}\n\n\tstatic get ANIMATION_DURATION() {\n\t\treturn getAnimationMode() !== AnimationMode.None ? 560 : 0;\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResize.bind(this));\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._handleResize);\n\t}\n\n\tonAfterRendering() {\n\t\tif (this.initialRendering) {\n\t\t\tthis.handleInitialRendering();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.syncLayout();\n\t}\n\n\thandleInitialRendering() {\n\t\tthis._prevLayout = this.layout;\n\t\tthis.updateLayout();\n\t\tthis.initialRendering = false;\n\t}\n\n\thandleResize() {\n\t\tif (this.initialRendering) {\n\t\t\treturn;\n\t\t}\n\n\t\t// store the previous layout\n\t\tconst prevLayoutHash = this.columnLayout!.join();\n\n\t\t// update the column layout, based on the current width\n\t\tthis.updateLayout();\n\n\t\t// fire layout-change if the column layout changed\n\t\tif (prevLayoutHash !== this.columnLayout!.join()) {\n\t\t\tthis.fireLayoutChange(false, true);\n\t\t}\n\t}\n\n\tstartArrowClick() {\n\t\tthis.arrowClick({ start: true, end: false });\n\t}\n\n\tendArrowClick() {\n\t\tthis.arrowClick({ start: false, end: true });\n\t}\n\n\tarrowClick(options: { start: boolean, end: boolean }) {\n\t\t// update public property\n\t\tthis.layout = this.nextLayout(this.layout, { start: options.start, end: options.end })!;\n\n\t\t// update layout\n\t\tthis.updateLayout();\n\n\t\t// fire layout-change\n\t\tthis.fireLayoutChange(true, false);\n\t}\n\n\tupdateLayout() {\n\t\tthis._width = this.widthDOM;\n\t\tthis._columnLayout = this.nextColumnLayout(this.layout);\n\t\tthis._visibleColumns = this.calcVisibleColumns(this._columnLayout);\n\t\tthis.toggleColumns();\n\t}\n\n\tsyncLayout() {\n\t\tif (this._prevLayout !== this.layout) {\n\t\t\tthis.updateLayout();\n\t\t\tthis._prevLayout = this.layout;\n\t\t}\n\t}\n\n\ttoggleColumns() {\n\t\tthis.toggleColumn(\"start\");\n\t\tthis.toggleColumn(\"mid\");\n\t\tthis.toggleColumn(\"end\");\n\t}\n\n\ttoggleColumn(column: string) {\n\t\tlet columnWidth;\n\t\tlet columnDOM;\n\n\t\tif (column === \"start\") {\n\t\t\tcolumnWidth = this.startColumnWidth;\n\t\t\tcolumnDOM = this.startColumnDOM;\n\t\t} else if (column === \"mid\") {\n\t\t\tcolumnWidth = this.midColumnWidth;\n\t\t\tcolumnDOM = this.midColumnDOM;\n\t\t} else {\n\t\t\tcolumnWidth = this.endColumnWidth;\n\t\t\tcolumnDOM = this.endColumnDOM;\n\t\t}\n\n\t\tconst currentlyHidden = this._isColumnHidden(columnWidth);\n\t\tconst previouslyHidden = this._isColumnHidden(columnDOM.style.width);\n\n\t\t// no change\n\t\tif (currentlyHidden && previouslyHidden) {\n\t\t\treturn;\n\t\t}\n\n\t\t// column resizing: from 33% to 67%, from 25% to 50%, etc.\n\t\tif (!currentlyHidden && !previouslyHidden) {\n\t\t\tcolumnDOM.style.width = typeof columnWidth === \"number\" ? `${columnWidth}px` : columnWidth;\n\t\t\treturn;\n\t\t}\n\n\t\t// hide column: 33% to 0, 25% to 0, etc .\n\t\tif (currentlyHidden) {\n\t\t\t// animate the width\n\t\t\tcolumnDOM.style.width = typeof columnWidth === \"number\" ? `${columnWidth}px` : columnWidth;\n\n\t\t\t// hide column with delay to allow the animation runs entirely\n\t\t\tcolumnDOM.addEventListener(\"transitionend\", this.columnResizeHandler);\n\n\t\t\treturn;\n\t\t}\n\n\t\t// show column: from 0 to 33%, from 0 to 25%, etc.\n\t\tif (previouslyHidden) {\n\t\t\tcolumnDOM.removeEventListener(\"transitionend\", this.columnResizeHandler);\n\t\t\tcolumnDOM.classList.remove(\"ui5-fcl-column--hidden\");\n\t\t\tcolumnDOM.style.width = typeof columnWidth === \"number\" ? `${columnWidth}px` : columnWidth;\n\t\t}\n\t}\n\n\tcolumnResizeHandler = (e: Event) => {\n\t\t(e.target as HTMLElement).classList.add(\"ui5-fcl-column--hidden\");\n\t}\n\n\tnextLayout(layout: `${FCLLayout}`, arrowsInfo: { start: boolean, end: boolean }) {\n\t\tif (!arrowsInfo) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (arrowsInfo.start) {\n\t\t\treturn getNextLayoutByStartArrow()[layout as keyof typeof getNextLayoutByStartArrow];\n\t\t}\n\n\t\tif (arrowsInfo.end) {\n\t\t\treturn getNextLayoutByEndArrow()[layout as keyof typeof getNextLayoutByEndArrow];\n\t\t}\n\t}\n\n\tnextColumnLayout(layout: `${FCLLayout}`) {\n\t\treturn this._effectiveLayoutsByMedia[this.media][layout].layout;\n\t}\n\n\tcalcVisibleColumns(colLayout: ColumnLayout) {\n\t\treturn colLayout.filter(colWidth => !this._isColumnHidden(colWidth)).length;\n\t}\n\n\tfireLayoutChange(arrowUsed: boolean, resize: boolean) {\n\t\tthis.fireEvent<FlexibleColumnLayoutLayoutChangeEventDetail>(\"layout-change\", {\n\t\t\tlayout: this.layout,\n\t\t\tcolumnLayout: this._columnLayout!,\n\t\t\tstartColumnVisible: this.startColumnVisible,\n\t\t\tmidColumnVisible: this.midColumnVisible,\n\t\t\tendColumnVisible: this.endColumnVisible,\n\t\t\tarrowUsed, // for backwards compatibility\n\t\t\tarrowsUsed: arrowUsed, // as documented\n\t\t\tresize,\n\t\t});\n\t}\n\n\t/**\n\t * Checks if a column is hidden based on its width.\n\t */\n\tprivate _isColumnHidden(columnWidth: number | string): boolean {\n\t\treturn columnWidth === 0 || columnWidth === \"0px\";\n\t}\n\n\t/**\n\t* Returns the current column layout, based on both the <code>layout</code> property and the screen size.\n\t* <br><br>\n\t* <b>For example:</b> [\"67%\", \"33%\", 0], [\"100%\", 0, 0], [\"25%\", \"50%\", \"25%\"], etc,\n\t* where the numbers represents the width of the start, middle and end columns.\n\t* @default undefined\n\t* @public\n\t*/\n\tget columnLayout(): ColumnLayout | undefined {\n\t\treturn this._columnLayout;\n\t}\n\n\t/**\n\t* Returns if the <code>start</code> column is visible.\n\t* @default true\n\t* @public\n\t*/\n\tget startColumnVisible(): boolean {\n\t\tif (this._columnLayout) {\n\t\t\treturn !this._isColumnHidden(this._columnLayout[0]);\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Returns if the <code>middle</code> column is visible.\n\t* @default false\n\t* @public\n\t*/\n\tget midColumnVisible(): boolean {\n\t\tif (this._columnLayout) {\n\t\t\treturn !this._isColumnHidden(this._columnLayout[1]);\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Returns if the <code>end</code> column is visible.\n\t* @default false\n\t* @public\n\t*/\n\tget endColumnVisible(): boolean {\n\t\tif (this._columnLayout) {\n\t\t\treturn !this._isColumnHidden(this._columnLayout[2]);\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Returns the number of currently visible columns.\n\t* @default 1\n\t* @public\n\t*/\n\tget visibleColumns(): number {\n\t\treturn this._visibleColumns;\n\t}\n\n\tget classes() {\n\t\tconst hasAnimation = getAnimationMode() !== AnimationMode.None;\n\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-fcl-root\": true,\n\t\t\t},\n\t\t\tcolumns: {\n\t\t\t\tstart: {\n\t\t\t\t\t\"ui5-fcl-column\": true,\n\t\t\t\t\t\"ui5-fcl-column-animation\": hasAnimation,\n\t\t\t\t\t\"ui5-fcl-column--start\": true,\n\t\t\t\t},\n\t\t\t\tmiddle: {\n\t\t\t\t\t\"ui5-fcl-column\": true,\n\t\t\t\t\t\"ui5-fcl-column-animation\": hasAnimation,\n\t\t\t\t\t\"ui5-fcl-column--middle\": true,\n\t\t\t\t},\n\t\t\t\tend: {\n\t\t\t\t\t\"ui5-fcl-column\": true,\n\t\t\t\t\t\"ui5-fcl-column-animation\": hasAnimation,\n\t\t\t\t\t\"ui5-fcl-column--end\": true,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tarrowsContainer: {\n\t\t\t\tstart: {\n\t\t\t\t\tdisplay: this.showStartSeparator ? \"flex\" : \"none\",\n\t\t\t\t},\n\t\t\t\tend: {\n\t\t\t\t\tdisplay: this.showEndSeparator ? \"flex\" : \"none\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tarrows: {\n\t\t\t\tstart: {\n\t\t\t\t\tdisplay: this.showStartArrow ? \"inline-block\" : \"none\",\n\t\t\t\t\ttransform: this.startArrowDirection === \"mirror\" ? \"rotate(180deg)\" : \"\",\n\t\t\t\t},\n\t\t\t\tend: {\n\t\t\t\t\tdisplay: this.showEndArrow ? \"inline-block\" : \"none\",\n\t\t\t\t\ttransform: this.endArrowDirection === \"mirror\" ? \"rotate(180deg)\" : \"\",\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget startColumnWidth() {\n\t\treturn this._columnLayout ? this._columnLayout[0] : \"100%\";\n\t}\n\n\tget midColumnWidth() {\n\t\treturn this._columnLayout ? this._columnLayout[1] : \"0px\";\n\t}\n\n\tget endColumnWidth() {\n\t\treturn this._columnLayout ? this._columnLayout[2] : \"0px\";\n\t}\n\n\tget showStartSeparator() {\n\t\treturn this.effectiveArrowsInfo[0].separator || this.startArrowVisibility;\n\t}\n\n\tget showEndSeparator() {\n\t\treturn this.effectiveArrowsInfo[1].separator || this.endArrowVisibility;\n\t}\n\n\tget showStartArrow() {\n\t\treturn this.hideArrows ? false : this.startArrowVisibility;\n\t}\n\n\tget showEndArrow() {\n\t\treturn this.hideArrows ? false : this.endArrowVisibility;\n\t}\n\n\tget startArrowVisibility() {\n\t\treturn this.effectiveArrowsInfo[0].visible;\n\t}\n\n\tget endArrowVisibility() {\n\t\treturn this.effectiveArrowsInfo[1].visible;\n\t}\n\n\tget startArrowDirection() {\n\t\treturn this.effectiveArrowsInfo[0].dir;\n\t}\n\n\tget endArrowDirection() {\n\t\treturn this.effectiveArrowsInfo[1].dir;\n\t}\n\n\tget effectiveArrowsInfo() {\n\t\treturn this._effectiveLayoutsByMedia[this.media][this.layout].arrows;\n\t}\n\n\tget media() {\n\t\tif (this._width <= BREAKPOINTS.PHONE) {\n\t\t\treturn MEDIA.PHONE;\n\t\t}\n\n\t\tif (this._width <= BREAKPOINTS.TABLET) {\n\t\t\treturn MEDIA.TABLET;\n\t\t}\n\n\t\treturn MEDIA.DESKTOP;\n\t}\n\n\tget widthDOM() {\n\t\treturn this.getBoundingClientRect().width;\n\t}\n\n\tget startColumnDOM() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-fcl-column--start\")!;\n\t}\n\n\tget midColumnDOM() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-fcl-column--middle\")!;\n\t}\n\n\tget endColumnDOM() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-fcl-column--end\")!;\n\t}\n\n\tget accStartColumnText() {\n\t\treturn this.accessibilityTexts.startColumnAccessibleName || FlexibleColumnLayout.i18nBundle.getText(FCL_START_COLUMN_TXT);\n\t}\n\n\tget accMiddleColumnText() {\n\t\treturn this.accessibilityTexts.midColumnAccessibleName || FlexibleColumnLayout.i18nBundle.getText(FCL_MIDDLE_COLUMN_TXT);\n\t}\n\n\tget accEndColumnText() {\n\t\treturn this.accessibilityTexts.endColumnAccessibleName || FlexibleColumnLayout.i18nBundle.getText(FCL_END_COLUMN_TXT);\n\t}\n\n\tget accStartArrowContainerText() {\n\t\treturn this.accessibilityTexts.startArrowContainerAccessibleName || undefined;\n\t}\n\n\tget accEndArrowContainerText() {\n\t\treturn this.accessibilityTexts.endArrowContainerAccessibleName || undefined;\n\t}\n\n\tget accStartColumnRole() {\n\t\tif (this.startColumnVisible) {\n\t\t\treturn this.accessibilityRoles.startColumnRole || \"region\";\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tget accMiddleColumnRole() {\n\t\tif (this.midColumnVisible) {\n\t\t\treturn this.accessibilityRoles.midColumnRole || \"region\";\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tget accEndColumnRole() {\n\t\tif (this.endColumnVisible) {\n\t\t\treturn this.accessibilityRoles.endColumnRole || \"region\";\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tget accStartArrowContainerRole() {\n\t\treturn this.accessibilityRoles.startArrowContainerRole || undefined;\n\t}\n\n\tget accEndArrowContainerRole() {\n\t\treturn this.accessibilityRoles.endArrowContainerRole || undefined;\n\t}\n\n\tget _effectiveLayoutsByMedia() {\n\t\treturn this._layoutsConfiguration || getLayoutsByMedia();\n\t}\n\n\tget _accAttributes() {\n\t\treturn {\n\t\t\tcolumns: {\n\t\t\t\tstart: {\n\t\t\t\t\trole: this.accStartColumnRole,\n\t\t\t\t\tariaHidden: !this.startColumnVisible || undefined,\n\t\t\t\t},\n\t\t\t\tmiddle: {\n\t\t\t\t\trole: this.accMiddleColumnRole,\n\t\t\t\t\tariaHidden: !this.midColumnVisible || undefined,\n\t\t\t\t},\n\t\t\t\tend: {\n\t\t\t\t\trole: this.accEndColumnRole,\n\t\t\t\t\tariaHidden: !this.endColumnVisible || undefined,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget accStartArrowText() {\n\t\tconst customTexts = this.accessibilityTexts;\n\n\t\tif (this.startArrowDirection === \"mirror\") {\n\t\t\treturn customTexts.startArrowLeftText || FlexibleColumnLayout.i18nBundle.getText(FCL_START_COLUMN_COLLAPSE_BUTTON_TOOLTIP);\n\t\t}\n\n\t\treturn customTexts.startArrowRightText || FlexibleColumnLayout.i18nBundle.getText(FCL_START_COLUMN_EXPAND_BUTTON_TOOLTIP);\n\t}\n\n\tget accEndArrowText() {\n\t\tconst customTexts = this.accessibilityTexts;\n\n\t\tif (this.endArrowDirection === \"mirror\") {\n\t\t\treturn customTexts.endArrowRightText || FlexibleColumnLayout.i18nBundle.getText(FCL_END_COLUMN_COLLAPSE_BUTTON_TOOLTIP);\n\t\t}\n\n\t\treturn customTexts.endArrowLeftText || FlexibleColumnLayout.i18nBundle.getText(FCL_END_COLUMN_EXPAND_BUTTON_TOOLTIP);\n\t}\n}\n\nFlexibleColumnLayout.define();\n\nexport default FlexibleColumnLayout;\n\nexport type {\n\tMEDIA,\n\tFlexibleColumnLayoutLayoutChangeEventDetail,\n};\n"]}