resolveTokenArgs function

SceneArgs resolveTokenArgs(
  1. SceneArgs args,
  2. Map<String, Object?> tokens
)

args with every opaque-token marker replaced by the token's object; a marker naming nothing the app declared resolves to null, which is the widget's own fallback.

Implementation

SceneArgs resolveTokenArgs(SceneArgs args, Map<String, Object?> tokens) =>
    SceneArgs({
      for (var name in args.names)
        name: switch (tokenMarkerName(args.raw(name))) {
          var token? => tokens[token],
          null => args.raw(name),
        },
    });