@uplink-protocol/form-controller
Version:
Reactive multi-step form controller with dynamic validation and state management
153 lines (77 loc) • 3.5 kB
Markdown
[**@uplink-protocol/form-controller v0.2.6**](../README.md)
***
[@uplink-protocol/form-controller](../globals.md) / ConfigManagerService
# Class: ConfigManagerService
Defined in: [services/config-manager.service.ts:14](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/services/config-manager.service.ts#L14)
ConfigManagerService - Manages configuration operations that require coordination with other services
This provides a higher-level abstraction for configuration management across the form
## Constructors
### Constructor
> **new ConfigManagerService**(`configService`, `formService`, `fieldService`, `interactionService`, `fieldErrorsService`, `stepsValidityService`, `stepperService`): `ConfigManagerService`
Defined in: [services/config-manager.service.ts:23](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/services/config-manager.service.ts#L23)
#### Parameters
##### configService
[`ConfigService`](ConfigService.md)
##### formService
[`FormService`](FormService.md)
##### fieldService
[`FieldService`](FieldService.md)
##### interactionService
[`InteractionService`](InteractionService.md)
##### fieldErrorsService
[`BaseService`](BaseService.md)\<`Record`\<`string`, `Record`\<`string`, `string`\>\>\>
##### stepsValidityService
[`BaseService`](BaseService.md)\<`Record`\<`string`, `boolean`\>\>
##### stepperService
[`StepperService`](StepperService.md)
#### Returns
`ConfigManagerService`
## Methods
### addStepWithFormData()
> **addStepWithFormData**(`step`, `index?`): `number`
Defined in: [services/config-manager.service.ts:91](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/services/config-manager.service.ts#L91)
Add a new step dynamically with updated form data
#### Parameters
##### step
[`FormStep`](../interfaces/FormStep.md)
New form step
##### index?
`number`
Position to insert (defaults to end)
#### Returns
`number`
New steps length
***
### removeStepWithCleanup()
> **removeStepWithCleanup**(`stepId`): `boolean`
Defined in: [services/config-manager.service.ts:128](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/services/config-manager.service.ts#L128)
Remove a step dynamically and clean up related state
#### Parameters
##### stepId
`string`
ID of the step to remove
#### Returns
`boolean`
Success flag
***
### updateConfigWithFullReset()
> **updateConfigWithFullReset**(`newConfig`): `void`
Defined in: [services/config-manager.service.ts:55](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/services/config-manager.service.ts#L55)
Update config with full reset - handles all reset operations internally
#### Parameters
##### newConfig
[`FormConfig`](../interfaces/FormConfig.md)
New form configuration
#### Returns
`void`
***
### updateConfigWithReset()
> **updateConfigWithReset**(`newConfig`): `void`
Defined in: [services/config-manager.service.ts:44](https://github.com/jmkcoder/uplink-protocol-form-controller/blob/b4197b802291c2a362dd28d04ee111d1534495f5/src/services/config-manager.service.ts#L44)
Update form configuration and reset all form state
#### Parameters
##### newConfig
[`FormConfig`](../interfaces/FormConfig.md)
New form configuration
#### Returns
`void`