tiki_trail 3.0.1 copy "tiki_trail: ^3.0.1" to clipboard
tiki_trail: ^3.0.1 copied to clipboard

Create and enforce TIKI's immutable data transaction records.

example/lib/example.dart

/*
 * Copyright (c) TIKI Inc.
 * MIT license. See LICENSE file in root directory.
 */

import 'dart:io';

import 'package:example/in_mem_key_storage.dart';
import 'package:sqlite3/common.dart';
import 'package:sqlite3/sqlite3.dart';
import 'package:tiki_trail/tiki_sdk.dart';
import 'package:uuid/uuid.dart';

void main(List<String> arguments) async {
  InMemKeyStorage keyStorage = InMemKeyStorage();
  CommonDatabase database = sqlite3.openInMemory();

  String id = Uuid().v4();
  String ptr = const Uuid().v4();

  TikiSdk.withId(id, keyStorage);
  TikiSdk tiki = await TikiSdk.init('PUBLISHING_ID',
      'com.mytiki.tiki_trail.example', keyStorage, id, database);

  TitleRecord title = await tiki.title.create(ptr, tags: [TitleTag.userId()]);
  print("Title Record created with id ${title.id} for ptr: $ptr");

  LicenseRecord license = await tiki.license.create(
      title,
      [
        LicenseUse([LicenseUsecase.attribution()])
      ],
      'terms');
  print(
      "License Record created with id ${license.id} for title: ${license.title.id}");

  tiki.guard(ptr, [LicenseUsecase.attribution()],
      onPass: () => print("There is a valid license for usecase attribution."));

  tiki.guard(ptr, [LicenseUsecase.support()],
      onFail: (cause) => print(
          "There is not a valid license for usecase support. Cause: $cause"));

  exit(0);
}
0
likes
0
pub points
0%
popularity

Publisher

verified publishermytiki.com

Create and enforce TIKI's immutable data transaction records.

Homepage
Repository (GitHub)
View/report issues

Documentation

Documentation

License

unknown (LICENSE)

Dependencies

html, http, pointycastle, sqlite3, uuid

More

Packages that depend on tiki_trail