xyz_config 0.26.0 copy "xyz_config: ^0.26.0" to clipboard
xyz_config: ^0.26.0 copied to clipboard

discontinuedreplaced by: df_config

This package allows you to add configurations and language support to your apps.

example/example.dart

//.title
// ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
//
// 🇽🇾🇿 & Dev
//
// Copyright Ⓒ Robert Mollentze, xyzand.dev
//
// Licensing details can be found in the LICENSE file in the root directory.
//
// ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
//.title~

import 'dart:io';

import 'package:xyz_config/_common.dart';

// ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░

// Step 1: Create a translations file somewhere and call it something like
// `en_US.yaml`.

/**
```yaml
greetings:
  HelloWorld: Hello World!
```
*/

void main() async {
  // Step 2 - Create a function that reads a file and returns its contents as a
  // string. In Flutter, you'd use the rootBundle.loadString or you can
  // even read remote files using the http package.
  final fileReader = (filePath) => File(filePath).readAsString();

  // Step 3 - Create a translations reader that reads YAML files from the
  // translations/ directory.
  final translationFileReader = TranslationFileReader(
    translationsDirPath: ['translations'],
    fileType: ConfigFileType.YAML,
    fileReader: fileReader,
  );

  // Step 4 - Read the en_US translation and set it as the active translation.
  // In Flutter, you'd want to rebuild your widget tree after setting this.
  await translationFileReader.read('en_US');

  // Step 5 - Use the tr() extension method to translate strings.
  // The text after the || is what will be printed if the translation is missing.
  // Use the <<<>>> syntax to include the translated string in a larger string.

  // No default value, prints 'Hello World!'
  print('greetings.HelloWorld'.tr());

  // Case insensitive, prints 'Hello World!'
  print('Hi there world!||message.HELLOWORLD'.tr());

  // Key doesn't exist, prints 'Uhm, hola!'
  print('Uhm, hola!||greetings.doesntexist'.tr());

  // Key exists, prints 'Hello World! is the message!'
  print('<<<greetings.HelloWorld>>> is the message!'.tr());

  // Key exists, prints 'Greeting: Hello World!'
  print('Greeting: <<<Hello there old friend!||greetings.HelloWorld>>>'.tr());
}
3
likes
0
points
8
downloads

Publisher

unverified uploader

Weekly Downloads

This package allows you to add configurations and language support to your apps.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

equatable, meta, path, xyz_utils, yaml

More

Packages that depend on xyz_config