@uplink-protocol/form-controller
Version:
Reactive multi-step form controller with dynamic validation and state management
261 lines (133 loc) • 7.34 kB
Markdown
[**@uplink-protocol/form-controller v0.2.6**](../README.md)
***
[@uplink-protocol/form-controller](../globals.md) / FormControllerClass
# Class: FormControllerClass
Defined in: [controller.ts:23](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L23)
FormControllerClass - A class for multi-step forms with dynamic configuration
## Implements
- `TypedController`
## Constructors
### Constructor
> **new FormControllerClass**(`config`): `FormControllerClass`
Defined in: [controller.ts:50](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L50)
#### Parameters
##### config
[`FormConfig`](../interfaces/FormConfig.md)
#### Returns
`FormControllerClass`
## Properties
### bindingManager
> `protected` **bindingManager**: [`BindingManager`](BindingManager.md)
Defined in: [controller.ts:38](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L38)
***
### bindings
> **bindings**: `any`
Defined in: [controller.ts:45](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L45)
#### Implementation of
`TypedController.bindings`
***
### configManagerService
> `protected` **configManagerService**: [`ConfigManagerService`](ConfigManagerService.md)
Defined in: [controller.ts:36](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L36)
***
### configService
> `protected` **configService**: [`ConfigService`](ConfigService.md)
Defined in: [controller.ts:25](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L25)
***
### fieldErrorsService
> `protected` **fieldErrorsService**: [`BaseService`](BaseService.md)\<`Record`\<`string`, `Record`\<`string`, `string`\>\>\>
Defined in: [controller.ts:31](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L31)
***
### fieldService
> `protected` **fieldService**: [`FieldService`](FieldService.md)
Defined in: [controller.ts:28](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L28)
***
### formManagerService
> `protected` **formManagerService**: [`FormManagerService`](FormManagerService.md)
Defined in: [controller.ts:35](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L35)
***
### formService
> `protected` **formService**: [`FormService`](FormService.md)
Defined in: [controller.ts:27](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L27)
***
### initialFormData
> `protected` **initialFormData**: `Record`\<`string`, `Record`\<`string`, `any`\>\> = `{}`
Defined in: [controller.ts:41](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L41)
***
### interactionService
> `protected` **interactionService**: [`InteractionService`](InteractionService.md)
Defined in: [controller.ts:29](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L29)
***
### methods
> **methods**: `any`
Defined in: [controller.ts:46](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L46)
#### Implementation of
`TypedController.methods`
***
### navigationManager
> `protected` **navigationManager**: [`NavigationManager`](NavigationManager.md)
Defined in: [controller.ts:37](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L37)
***
### stepperService
> `protected` **stepperService**: [`StepperService`](StepperService.md)
Defined in: [controller.ts:26](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L26)
***
### stepsValidityService
> `protected` **stepsValidityService**: [`BaseService`](BaseService.md)\<`Record`\<`string`, `boolean`\>\>
Defined in: [controller.ts:32](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L32)
***
### stepValidationState
> `protected` **stepValidationState**: `Record`\<`string`, `boolean`\> = `{}`
Defined in: [controller.ts:42](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L42)
***
### validatorService
> `protected` **validatorService**: [`ValidatorService`](ValidatorService.md)
Defined in: [controller.ts:30](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L30)
## Methods
### initializeManagerServices()
> `protected` **initializeManagerServices**(): `void`
Defined in: [controller.ts:125](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L125)
Initialize manager services
This method can be overridden by subclasses to customize manager service initialization
#### Returns
`void`
***
### initializeMethods()
> `protected` **initializeMethods**(): `void`
Defined in: [controller.ts:161](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L161)
Initialize the methods object with all controller functions
This method can be overridden by subclasses to customize controller functionality
#### Returns
`void`
***
### initializeServices()
> `protected` **initializeServices**(`config`): `void`
Defined in: [controller.ts:99](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L99)
Initialize base services
This method can be overridden by subclasses to customize service initialization
#### Parameters
##### config
[`FormConfig`](../interfaces/FormConfig.md)
The form configuration
#### Returns
`void`
***
### initializeStepValidation()
> `protected` **initializeStepValidation**(): `void`
Defined in: [controller.ts:358](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L358)
Initialize step validation without showing error messages
This method can be overridden by subclasses to customize validation behavior
#### Returns
`void`
***
### setupInitialFormData()
> `protected` **setupInitialFormData**(`config`): `void`
Defined in: [controller.ts:75](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/controller.ts#L75)
Set up initial form data and validation state
This method can be overridden by subclasses to customize initial data setup
#### Parameters
##### config
[`FormConfig`](../interfaces/FormConfig.md)
The form configuration
#### Returns
`void`