LinkProvider.basic constructor

LinkProvider.basic(
  1. String key, {
  2. String? label,
  3. String? urlPath,
  4. String? appScheme,
  5. String tag = Tags.socialMedia,
  6. Set<String>? tags,
  7. LinkFromHandle<Subject>? appLinkGenerator,
  8. LinkFromHandle<Subject>? webLinkGenerator,
  9. bool generateAppLink = true,
})

Implementation

LinkProvider.basic(
  String key, {
  String? label,
  String? urlPath,
  String? appScheme,
  String tag = Tags.socialMedia,
  Set<String>? tags,
  LinkFromHandle<Subject>? appLinkGenerator,
  LinkFromHandle<Subject>? webLinkGenerator,
  bool generateAppLink = true,
})  : tags = tags == null ? {tag} : {...tags},
      scheme = appScheme ?? '${key}://',
      typeLabel = label ?? key.capitalize(),
      webLinkGenerator = webLinkGenerator ??
          ((subject) =>
              'https://www.$key.com/${urlPath ?? ''}${subject.handle}'),
      appLinkGenerator = appLinkGenerator ??
          (generateAppLink
              ? ((subject) => '$key://${subject.handle}')
              : null),
      handleExtractor =
          basicSocialHandleExtractor('$key.com', 'www.$key.com'),
      providerKey = ProviderKey(key),
      operationKey =
          OperationKey<Subject, LinkLaunchResponse>('open${key}Link');