fileUploadStory top-level property
Story
fileUploadStory
getter/setter pair
Implementation
Story fileUploadStory = Story(
name: 'File Upload',
builder: (context) {
final title = context.knobs.text(label: 'Title', initial: 'Upload Files');
final description = context.knobs.text(
label: 'Descriptions', initial: 'Press button and upload your file');
final buttonText =
context.knobs.text(label: 'Button Text', initial: 'Browse File');
final errorMessage = context.knobs
.text(label: 'Error Uploading File', initial: 'Error Uploading File');
final uploadURL = context.knobs.text(
label: 'Upload URL',
initial: 'https://httpbin.org/post');
final allowedExtensions = context.knobs
.text(
label: 'Allowed Extensions',
initial: 'pdf, svg, jpg',
)
.split(',')
.map((ext) => ext.trim())
.toList();
final allowMultipleFiles =
context.knobs.boolean(label: 'Allow Multiple Files', initial: false);
final fileUploadVariant = context.knobs.options(
label: 'File Upload Variant',
options: [
Option(label: 'Primary', value: FileUploadVariant.primary),
Option(label: 'Secondary', value: FileUploadVariant.secondary),
],
initial: FileUploadVariant.secondary,
);
return Container(
width: MediaQuery.of(context).size.width * 0.8,
child: DDSFileUpload(
uploadUrl: uploadURL,
title: title,
description: description,
errorMessage: errorMessage,
buttonText: buttonText,
variant: fileUploadVariant,
allowMultipleFiles: allowMultipleFiles,
allowedExtensions: allowedExtensions,
displayFilesTitle: 'Uploaded',
),
);
},
);