DataleonFlowController class

Inheritance

Constructors

DataleonFlowController({required DataleonConfig config, DataleonApiService? apiService, List<DataleonFlowStep>? steps})

Properties

activeChainedDocument Map<String, dynamic>?
no setter
advancedDesignConfiguration Map<String, dynamic>
no setter
apiService DataleonApiService
no setter
brandingAppName String?
Application name from the branding config, used as a text fallback when no logo is available on the loading screen.
no setter
brandingLogoUrl String?
Sanitized logo URL (http/https only) for the loading screen, or null.
no setter
brandingPrincipalColor String?
Raw principalColor from the branding config used to fill the loading progress bar (null → caller falls back to a neutral grey).
no setter
completedDocumentKeys List<String>
no setter
config DataleonConfig
no setter
configErrorMessage String?
no setter
contentsConfig Map<String, dynamic>
no setter
currentDocumentKey String?
no setter
currentIndex int
no setter
currentStep DataleonFlowStep
no setter
customDocuments List<Map<String, dynamic>>
no setter
customFontFamily String?
no setter
dashboardConfiguration Map<String, dynamic>
no setter
documentCountry String?
no setter
documentType String?
no setter
formSteps List<Map<String, dynamic>>
no setter
hasCompletedChainedCustomDocuments bool
no setter
hashCode int
The hash code for this object.
no setterinherited
hasListeners bool
Whether any listeners are currently registered.
no setterinherited
isChartResolved bool
True once the public branding config (/config/chart) has resolved. While false the loading screen shows the indeterminate spinner; once true it shows the determinate progress bar.
no setter
isLastStep bool
no setter
isLoading bool
no setter
languageCode String
no setter
loadingMessageKey String
Current loading-screen message key (loadingScreen.
no setter
pendingChainedDocuments List<Map<String, dynamic>>
no setter
progress double
no setter
requestConfig Map<String, dynamic>?
no setter
requestResult Map<String, dynamic>
no setter
result DataleonResult
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
selectedChainedDocumentOption Map<String, dynamic>?
no setter
selectedCustomDocument Map<String, dynamic>?
no setter
stepResults Map<DataleonFlowStep, DataleonStepResult>
no setter
steps List<DataleonFlowStep>
no setter
uploadedFiles Map<String, Map<String, String>>
no setter
uploadedFilesByDocument Map<String, Map<String, Map<String, String>>>
no setter
visibleCustomDocuments List<Map<String, dynamic>>
no setter
webviewConfig Map<String, dynamic>
no setter
workspace Map<String, dynamic>?
no setter

Methods

abort() → void
addListener(VoidCallback listener) → void
Register a closure to be called when the object changes.
inherited
beginChainedDocument(Map<String, dynamic> document) → void
cancel() → void
chainedDocumentIntroComplete() → void
Called when the user taps the CTA on the chained document intro page. Marks the intro as shown and advances to the actual document step.
clearUploadedFiles() → void
completeCurrentDocumentAndContinue({String? completedSelectedOptionId, int? completedFlowStep}) bool
completeSession() Future<void>
Complete the session on the backend and mark the flow as finished.
dispose() → void
Discards any resources used by the object.
override
exitChainedDocumentFlow() → void
fail([String? error]) → void
fetchConfig() Future<void>
Orchestrate the branded loading sequence and advance to the welcome step.
finish() → void
formStepForAction(String action) Map<String, dynamic>?
getFlowStepTrigger(String? previousDocumentKey) int?
Parse a previousDocumentKey of the form "step:N" and return N or null.
getNextChainedDocuments(String? completedDocumentKey, {List<String> excludedKeys = const [], int? completedFlowStep, String? completedSelectedOptionId}) List<Map<String, dynamic>>
goToStep(DataleonFlowStep step) → void
handleCaptureClose() → void
hasChainedDocIntroContent() bool
Returns true if the webviewConfig contains a non-empty intro_custom_document content block.
hasSelectableCountryForCustomDocument(Map<String, dynamic>? document) bool
hasWorldCountryForCustomDocument(Map<String, dynamic>? document) bool
hasWorldCountryForDocType(String? docType) bool
isChainedCustomDocument(Map<String, dynamic>? document) bool
matchesPreviousDocumentKey(String? previousDocumentKey, String completedDocKey, int? completedFlowStep) bool
matchesPreviousStepTriggerOptionValues(List? previousStepTriggerOptionValues, String completedDocKey, String? completedSelectedOptionId) bool
nextStep() → void
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notifyListeners() → void
Call all the registered listeners.
inherited
previousStep() → void
removeListener(VoidCallback listener) → void
Remove a previously registered closure from the list of closures that are notified when the object changes.
inherited
reset() → void
saveStepResult(DataleonFlowStep step, DataleonStepResult result) → void
Save an intermediate step result locally.
saveUploadedFile({required String phase, required String url, required String name, required String key}) → void
selectChainedDocumentOption(Map<String, dynamic>? option) → void
selectDocumentCountry(String? documentCountry) → void
selectDocumentType(String documentType, {Map<String, dynamic>? customDocument}) → void
setError(String error) → void
setLanguage(String languageCode) → void
setLoading(bool value) → void
shouldSkipCountryStepForCustomDocument(Map<String, dynamic>? document) bool
start() → void
startActiveChainedDocumentCapture() → void
submitStepData({required String stepName, required Map<String, dynamic> data}) Future<Map<String, dynamic>>
Submit the current step data to the backend API.
toString() String
A string representation of this object.
inherited
updateProgress(double value) → void
uploadFile({required String stepName, required String fieldName, required List<int> fileBytes, required String fileName}) Future<Map<String, dynamic>>
Upload a file to the backend for the given step.

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

normalizeLanguage(String language) String
Normalize a backend language code to the ISO2 code used by the UI.
sanitizeLogoUrl(String? raw) String?
Sanitize a branding logo URL: only http/https is allowed. Relative paths are resolved against the customer-assets bucket (https). Any other scheme (javascript:, data:, file:, …) is rejected and returns null.