[**@rxap/form-system v19.1.0**](../README.md)

***

[@rxap/form-system](../globals.md) / InputSelectOptionsDirective

# Class: InputSelectOptionsDirective

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:85](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L85)

## Extends

- `OnDestroy`.`AfterViewInit`.[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md)

## Implements

- `OnDestroy`
- `AfterViewInit`

## Constructors

### new InputSelectOptionsDirective()

> **new InputSelectOptionsDirective**(`template`, `dataSourceLoader`, `viewContainerRef`, `injector`, `cdr`, `ngControl`, `matFormField`): [`InputSelectOptionsDirective`](InputSelectOptionsDirective.md)

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:124](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L124)

#### Parameters

##### template

`TemplateRef`\<[`InputSelectOptionsTemplateContext`](../interfaces/InputSelectOptionsTemplateContext.md)\>

##### dataSourceLoader

`DataSourceLoader`

##### viewContainerRef

`ViewContainerRef`

##### injector

`Injector`

##### cdr

`ChangeDetectorRef`

##### ngControl

`null` | `NgControl`

##### matFormField

`null` | `MatFormField`

#### Returns

[`InputSelectOptionsDirective`](InputSelectOptionsDirective.md)

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`constructor`](ExtractOptionsDataSourceMixin.md#constructors)

## Properties

### cdr

> `protected` `readonly` **cdr**: `ChangeDetectorRef`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:134](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L134)

***

### control

> `protected` **control**: `RxapFormControl`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:107](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L107)

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`control`](ExtractOptionsDataSourceMixin.md#control)

***

### dataSource

> `protected` **dataSource**: `BaseDataSource`\<`ControlOptions` \| `Record`\<`string`, `any`\>\>

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:109](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L109)

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`dataSource`](ExtractOptionsDataSourceMixin.md#datasource)

***

### dataSourceLoader

> `protected` `readonly` **dataSourceLoader**: `DataSourceLoader`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:128](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L128)

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`dataSourceLoader`](ExtractOptionsDataSourceMixin.md#datasourceloader)

***

### injector

> `protected` `readonly` **injector**: `Injector`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:132](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L132)

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`injector`](ExtractOptionsDataSourceMixin.md#injector)

***

### matAutocomplete?

> `optional` **matAutocomplete**: `MatAutocomplete`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:103](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L103)

***

### matFormField

> `protected` **matFormField**: `null` \| `MatFormField` = `null`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:142](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L142)

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`matFormField`](ExtractOptionsDataSourceMixin.md#matformfield)

***

### metadata?

> `optional` **metadata**: `BaseDataSourceMetadata`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:100](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L100)

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`metadata`](ExtractOptionsDataSourceMixin.md#metadata)

***

### ngControl

> `protected` **ngControl**: `null` \| `NgControl` = `null`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:139](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L139)

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`ngControl`](ExtractOptionsDataSourceMixin.md#ngcontrol)

***

### options

> `protected` **options**: `null` \| `ControlOptions` \| `Record`\<`string`, `any`\> = `null`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:111](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L111)

***

### settings?

> `protected` `optional` **settings**: [`InputSelectOptionsSettings`](../interfaces/InputSelectOptionsSettings.md)\<`any`\>

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:113](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L113)

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`settings`](ExtractOptionsDataSourceMixin.md#settings)

***

### subscription

> `protected` `readonly` **subscription**: `Subscription`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:105](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L105)

***

### template

> `protected` `readonly` **template**: `TemplateRef`\<[`InputSelectOptionsTemplateContext`](../interfaces/InputSelectOptionsTemplateContext.md)\>

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:126](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L126)

***

### useDataSourceValue?

> `protected` `optional` **useDataSourceValue**: [`UseDataSourceValue`](../interfaces/UseDataSourceValue.md)\<`ControlOptions` \| `Record`\<`string`, `any`\>, `ControlOptions` \| `Record`\<`string`, `any`\>\>

Defined in: [packages/angular/form-system/src/lib/mixins/extract-options-data-source.mixin.ts:74](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/mixins/extract-options-data-source.mixin.ts#L74)

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`useDataSourceValue`](ExtractOptionsDataSourceMixin.md#usedatasourcevalue)

***

### viewContainerRef

> `protected` `readonly` **viewContainerRef**: `ViewContainerRef`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:130](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L130)

***

### viewer

> **viewer**: `BaseDataSourceViewer`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:97](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L97)

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`viewer`](ExtractOptionsDataSourceMixin.md#viewer)

## Methods

### extractControl()

> `protected` **extractControl**(`ngControl`): `RxapFormControl`

Defined in: [packages/angular/form-system/src/lib/mixins/extract-control.mixin.ts:16](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/mixins/extract-control.mixin.ts#L16)

#### Parameters

##### ngControl

`null` | `NgControl` | `AbstractControlDirective`

#### Returns

`RxapFormControl`

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`extractControl`](ExtractOptionsDataSourceMixin.md#extractcontrol)

***

### extractDataSources()

> `protected` **extractDataSources**(`formDefinition`, `controlId`): `Map`\<`string`, [`UseDataSourceValue`](../interfaces/UseDataSourceValue.md)\<`any`, `any`\>\>

Defined in: [packages/angular/form-system/src/lib/mixins/extract-data-sources.mixin.ts:9](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/mixins/extract-data-sources.mixin.ts#L9)

#### Parameters

##### formDefinition

`FormDefinition`

##### controlId

`string`

#### Returns

`Map`\<`string`, [`UseDataSourceValue`](../interfaces/UseDataSourceValue.md)\<`any`, `any`\>\>

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`extractDataSources`](ExtractOptionsDataSourceMixin.md#extractdatasources)

***

### extractFormDefinition()

> `protected` **extractFormDefinition**(`control`): `FormDefinition`

Defined in: [packages/angular/form-system/src/lib/mixins/extract-form-definition.mixin.ts:10](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/mixins/extract-form-definition.mixin.ts#L10)

#### Parameters

##### control

`AbstractControl`

#### Returns

`FormDefinition`

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`extractFormDefinition`](ExtractOptionsDataSourceMixin.md#extractformdefinition)

***

### extractOptionsDatasource()

> `protected` **extractOptionsDatasource**(`control`?): `BaseDataSource`\<`ControlOptions` \| `Record`\<`string`, `any`\>\>

Defined in: [packages/angular/form-system/src/lib/mixins/extract-options-data-source.mixin.ts:76](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/mixins/extract-options-data-source.mixin.ts#L76)

#### Parameters

##### control?

`AbstractControl`\<`any`, `any`\>

#### Returns

`BaseDataSource`\<`ControlOptions` \| `Record`\<`string`, `any`\>\>

#### Inherited from

[`ExtractOptionsDataSourceMixin`](ExtractOptionsDataSourceMixin.md).[`extractOptionsDatasource`](ExtractOptionsDataSourceMixin.md#extractoptionsdatasource)

***

### ngAfterViewInit()

> **ngAfterViewInit**(): `void`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:146](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L146)

A callback method that is invoked immediately after
Angular has completed initialization of a component's view.
It is invoked only once when the view is instantiated.

#### Returns

`void`

#### Inherited from

`AfterViewInit.ngAfterViewInit`

***

### ngOnDestroy()

> **ngOnDestroy**(): `void`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:178](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L178)

A callback method that performs custom clean-up, invoked immediately
before a directive, pipe, or service instance is destroyed.

#### Returns

`void`

#### Inherited from

`OnDestroy.ngOnDestroy`

***

### renderTemplate()

> `protected` **renderTemplate**(`options`): `void`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:221](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L221)

#### Parameters

##### options

`null` | `ControlOptions` | `Record`\<`string`, `any`\>

#### Returns

`void`

***

### toDisplay()

> **toDisplay**(`value`): `string`

Defined in: [packages/angular/form-system/src/lib/directives/input-select-options.directive.ts:170](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/form-system/src/lib/directives/input-select-options.directive.ts#L170)

#### Parameters

##### value

`any`

#### Returns

`string`
