cipher_vault 1.1.1  cipher_vault: ^1.1.1 copied to clipboard
cipher_vault: ^1.1.1 copied to clipboard
Widget that displays the secret Depending on the argument, is it a secret? displays either an animation or a secret
Cipher Vault #
 
Example of using #
The simplest example is when we have two states. We don't know the password - we display the animation. We know the password - we display an animation that will eventually show the password.
CipherVault(
    secret: _isShowSecretBool ? 'cipher_vault' : null,
),
When the password is shown at the end of the animation, we can copy using Selectable Text or use our copy widget
CipherVault(
    secret: 'My Password',
    buttonCopy: YourButtonCopyWidget(),
),
 
You can fine-tune the animation using the configurator. For example, to adjust the animation speed or to use other languages. Check Example in lib
CipherVault(
    secret: 'Мой секрет 3',
    textStyle: const TextStyle(fontSize: 18.0),
    config: CipherVaultConfig(
        alphabetCipherVault: myAlphabet,
        minLengthCipherVault: 10,
        maxLengthCipherVault: 20,
    ),
),
 
All available settings at the moment
/// VaultConfig - Fine-tuning the CipherVault
///
/// [alphabetCipherVault] - The symbols that can make
///  up the animation of the secret
///
/// [minLengthCipherVault] - Minimum secret length
///
/// [maxLengthCipherVault] - Maximum secret length
///
/// [updateAnimationUpdate] - Animation widget refresh rate
///
/// [updatePasswordAnimationUpdate] - Refresh rate of the password
///  display animation widget
///
/// [showAnimationFrequency] - How often characters are replaced when
///  animating a classified secret. The standard value is 0.2
///
/// [showPasswordAnimationFrequency] - How often characters are replaced
///  when animating the declassification of a secret.
///  The standard value is 0.5
///
/// [countAttemp] - The number of possible replacements when the
///  password is declassified. The standard value is 5
const CipherVaultConfig({
    required this.alphabetCipherVault,
    required this.minLengthCipherVault,
    required this.maxLengthCipherVault,
    required this.updateAnimationUpdate,
    required this.updatePasswordAnimationUpdate,
    required this.showAnimationFrequency,
    required this.showPasswordAnimationFrequency,
    required this.countAttemp,
});
Changelog #
Refer to the Changelog to get all release notes.
Maintainers #
Valerij Shishov Igor Molchanov
This library is open for issues and pull requests. If you have ideas for improvements or bugs, the repository is open to contributions!