diff --git a/packages/angular/src/components.ts b/packages/angular/src/components.ts
index 2ac53315c9b..b80e3c0e082 100644
--- a/packages/angular/src/components.ts
+++ b/packages/angular/src/components.ts
@@ -649,14 +649,14 @@ export declare interface IxEventListItem extends Components.IxEventListItem {
@ProxyCmp({
- inputs: ['icon', 'placeholder', 'value']
+ inputs: ['fullWidth', 'icon', 'placeholder', 'value']
})
@Component({
selector: 'ix-expanding-search',
changeDetection: ChangeDetectionStrategy.OnPush,
template: '',
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['icon', 'placeholder', 'value'],
+ inputs: ['fullWidth', 'icon', 'placeholder', 'value'],
})
export class IxExpandingSearch {
protected el: HTMLElement;
diff --git a/packages/core/component-doc.json b/packages/core/component-doc.json
index 1f34816bcd8..72d1094c950 100644
--- a/packages/core/component-doc.json
+++ b/packages/core/component-doc.json
@@ -3429,6 +3429,28 @@
]
},
"props": [
+ {
+ "name": "fullWidth",
+ "type": "boolean",
+ "mutable": false,
+ "attr": "full-width",
+ "reflectToAttr": false,
+ "docs": "If true the search field will fill all available horizontal space of it's parent container when expanded.",
+ "docsTags": [
+ {
+ "name": "since",
+ "text": "1.6.0"
+ }
+ ],
+ "default": "false",
+ "values": [
+ {
+ "type": "boolean"
+ }
+ ],
+ "optional": false,
+ "required": false
+ },
{
"name": "icon",
"type": "string",
diff --git a/packages/core/src/components.d.ts b/packages/core/src/components.d.ts
index 0dc2b03ef3e..2f8bdd3774f 100644
--- a/packages/core/src/components.d.ts
+++ b/packages/core/src/components.d.ts
@@ -669,6 +669,11 @@ export namespace Components {
"selected": boolean;
}
interface IxExpandingSearch {
+ /**
+ * If true the search field will fill all available horizontal space of it's parent container when expanded.
+ * @since 1.6.0
+ */
+ "fullWidth": boolean;
/**
* Search icon
*/
@@ -3189,6 +3194,11 @@ declare namespace LocalJSX {
"selected"?: boolean;
}
interface IxExpandingSearch {
+ /**
+ * If true the search field will fill all available horizontal space of it's parent container when expanded.
+ * @since 1.6.0
+ */
+ "fullWidth"?: boolean;
/**
* Search icon
*/
diff --git a/packages/core/src/components/expanding-search/expanding-search.scss b/packages/core/src/components/expanding-search/expanding-search.scss
index b97c5c86b2d..89ac5bedd6a 100644
--- a/packages/core/src/components/expanding-search/expanding-search.scss
+++ b/packages/core/src/components/expanding-search/expanding-search.scss
@@ -19,9 +19,14 @@ $container-width: 11.5625rem;
height: $x-large-space;
align-items: center;
justify-content: space-between;
+ position: relative;
&.right-position {
width: $container-width !important;
+
+ &.fullWidth {
+ width: 100% !important;
+ }
}
.input-container {
@@ -34,10 +39,15 @@ $container-width: 11.5625rem;
input {
box-shadow: var(--theme-input--box-shadow);
+ cursor: auto !important;
}
.expanded {
width: $container-width;
+
+ &.fullWidth {
+ width: 100%;
+ }
}
.collapsed {
diff --git a/packages/core/src/components/expanding-search/expanding-search.tsx b/packages/core/src/components/expanding-search/expanding-search.tsx
index 2ba5238e1ae..3a813d72974 100644
--- a/packages/core/src/components/expanding-search/expanding-search.tsx
+++ b/packages/core/src/components/expanding-search/expanding-search.tsx
@@ -38,6 +38,12 @@ export class ExpandingSearch {
*/
@Prop({ mutable: true }) value = '';
+ /**
+ * If true the search field will fill all available horizontal space of it's parent container when expanded.
+ * @since 1.6.0
+ */
+ @Prop() fullWidth = false;
+
@State() isFieldChanged = false;
@State() expanded = false;
@@ -98,6 +104,7 @@ export class ExpandingSearch {
class={{
expanded: this.expanded,
'right-position': this.expanded,
+ fullWidth: this.fullWidth,
}}
>