added Dart shell command to move headers to google/flutter-mediapipe
This commit is contained in:
parent
82d83f2dd8
commit
69d1b3a8b8
3
mediapipe/dart/moveheaders/.gitignore
vendored
Normal file
3
mediapipe/dart/moveheaders/.gitignore
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
# https://dart.dev/guides/libraries/private-files
|
||||
# Created by `dart pub`
|
||||
.dart_tool/
|
3
mediapipe/dart/moveheaders/CHANGELOG.md
Normal file
3
mediapipe/dart/moveheaders/CHANGELOG.md
Normal file
|
@ -0,0 +1,3 @@
|
|||
## 1.0.0
|
||||
|
||||
- Initial version.
|
2
mediapipe/dart/moveheaders/README.md
Normal file
2
mediapipe/dart/moveheaders/README.md
Normal file
|
@ -0,0 +1,2 @@
|
|||
A sample command-line application with an entrypoint in `bin/`, library code
|
||||
in `lib/`, and example unit test in `test/`.
|
30
mediapipe/dart/moveheaders/analysis_options.yaml
Normal file
30
mediapipe/dart/moveheaders/analysis_options.yaml
Normal file
|
@ -0,0 +1,30 @@
|
|||
# This file configures the static analysis results for your project (errors,
|
||||
# warnings, and lints).
|
||||
#
|
||||
# This enables the 'recommended' set of lints from `package:lints`.
|
||||
# This set helps identify many issues that may lead to problems when running
|
||||
# or consuming Dart code, and enforces writing Dart using a single, idiomatic
|
||||
# style and format.
|
||||
#
|
||||
# If you want a smaller set of lints you can change this to specify
|
||||
# 'package:lints/core.yaml'. These are just the most critical lints
|
||||
# (the recommended set includes the core lints).
|
||||
# The core lints are also what is used by pub.dev for scoring packages.
|
||||
|
||||
include: package:lints/recommended.yaml
|
||||
|
||||
# Uncomment the following section to specify additional rules.
|
||||
|
||||
# linter:
|
||||
# rules:
|
||||
# - camel_case_types
|
||||
|
||||
# analyzer:
|
||||
# exclude:
|
||||
# - path/to/excluded/files/**
|
||||
|
||||
# For more information about the core and recommended set of lints, see
|
||||
# https://dart.dev/go/core-lints
|
||||
|
||||
# For additional information about configuring this file, see
|
||||
# https://dart.dev/guides/language/analysis-options
|
53
mediapipe/dart/moveheaders/bin/moveheaders.dart
Normal file
53
mediapipe/dart/moveheaders/bin/moveheaders.dart
Normal file
|
@ -0,0 +1,53 @@
|
|||
import 'dart:io' as io;
|
||||
import 'package:moveheaders/moveheaders.dart' as moveheaders;
|
||||
import 'package:args/args.dart';
|
||||
import 'package:path/path.dart' as path;
|
||||
|
||||
final parser = ArgParser()
|
||||
..addFlag(
|
||||
'overwrite',
|
||||
abbr: 'o',
|
||||
defaultsTo: true,
|
||||
help: 'If true, will overwrite existing header files '
|
||||
'at destination locations.',
|
||||
)
|
||||
..addOption(
|
||||
'destination',
|
||||
abbr: 'd',
|
||||
help: 'The location of google/flutter-mediapipe. Defaults to being '
|
||||
'adjacent to google/mediapipe.',
|
||||
);
|
||||
|
||||
void main(List<String> arguments) {
|
||||
final results = parser.parse(arguments);
|
||||
final config = moveheaders.Options(
|
||||
allowOverwrite: results['overwrite'],
|
||||
);
|
||||
|
||||
final io.Directory mediaPipeDirectory = moveheaders.findMediaPipeRoot();
|
||||
|
||||
final passedDestination =
|
||||
results['destination'] != null && results['destination'] != '';
|
||||
final flutterMediaPipeDirectory = io.Directory(
|
||||
passedDestination
|
||||
? results['destination']
|
||||
: path.joinAll([
|
||||
mediaPipeDirectory.parent.absolute.path,
|
||||
'flutter-mediapipe',
|
||||
]),
|
||||
);
|
||||
|
||||
if (!flutterMediaPipeDirectory.existsSync()) {
|
||||
io.stderr.writeln(
|
||||
'Could not find ${flutterMediaPipeDirectory.absolute.path}. '
|
||||
'Folder does not exist.',
|
||||
);
|
||||
io.exit(1);
|
||||
}
|
||||
|
||||
moveheaders.moveHeaders(
|
||||
mediaPipeDirectory,
|
||||
flutterMediaPipeDirectory,
|
||||
config,
|
||||
);
|
||||
}
|
116
mediapipe/dart/moveheaders/lib/moveheaders.dart
Normal file
116
mediapipe/dart/moveheaders/lib/moveheaders.dart
Normal file
|
@ -0,0 +1,116 @@
|
|||
import 'dart:convert';
|
||||
import 'dart:io' as io;
|
||||
import 'package:io/ansi.dart';
|
||||
import 'package:path/path.dart' as path;
|
||||
import 'package:process/process.dart';
|
||||
|
||||
/// google/mediapipe paths
|
||||
final containers = 'mediapipe/tasks/c/components/containers';
|
||||
final processors = 'mediapipe/tasks/c/components/processors';
|
||||
final originCore = 'mediapipe/tasks/c/core';
|
||||
final tc = 'mediapipe/tasks/c/text/text_classifier';
|
||||
|
||||
/// google/flutter-mediapipe paths
|
||||
final core = 'packages/mediapipe-core/third_party/mediapipe/';
|
||||
final text = 'packages/mediapipe-task-text/third_party/mediapipe/';
|
||||
|
||||
/// First string is its location in this repository;
|
||||
/// Second string is its location in `google/flutter-mediapipe`,
|
||||
/// Third string is the file name
|
||||
List<(String, String, String)> headerPaths = [
|
||||
(containers, core, 'category.h'),
|
||||
(containers, core, 'classification_result.h'),
|
||||
(originCore, core, 'base_options.h'),
|
||||
(processors, core, 'classifier_options.h'),
|
||||
(tc, text, 'text_classifier.h'),
|
||||
];
|
||||
|
||||
class Options {
|
||||
const Options({
|
||||
required this.allowOverwrite,
|
||||
});
|
||||
|
||||
final bool allowOverwrite;
|
||||
}
|
||||
|
||||
Future<void> moveHeaders(
|
||||
io.Directory mediaPipe,
|
||||
io.Directory flutterMediaPipe,
|
||||
Options config,
|
||||
) async {
|
||||
final mgr = LocalProcessManager();
|
||||
for (final tup in headerPaths) {
|
||||
final headerFile = io.File(path.joinAll(
|
||||
[mediaPipe.absolute.path, tup.$1, tup.$3],
|
||||
));
|
||||
if (!headerFile.existsSync()) {
|
||||
io.stderr.writeln(
|
||||
'Expected to find ${headerFile.path}, but '
|
||||
'file does not exist.',
|
||||
);
|
||||
io.exit(1);
|
||||
}
|
||||
final destinationPath = path.joinAll(
|
||||
[flutterMediaPipe.absolute.path, tup.$2, tup.$3],
|
||||
);
|
||||
if (io.File(destinationPath).existsSync() && !config.allowOverwrite) {
|
||||
io.stdout.writeln(
|
||||
'Warning: Not overwriting existing file at $destinationPath. '
|
||||
'Skipping ${tup.$3}.',
|
||||
);
|
||||
continue;
|
||||
}
|
||||
|
||||
io.stderr.writeln(wrapWith('Moving ${tup.$3}', [green]));
|
||||
final process = await mgr.start([
|
||||
'cp',
|
||||
headerFile.path,
|
||||
destinationPath,
|
||||
]);
|
||||
int processExitCode = await process.exitCode;
|
||||
if (processExitCode != 0) {
|
||||
final processStdErr = utf8.decoder.convert(await process.stderr.drain());
|
||||
io.stderr.write(wrapWith(processStdErr, [red]));
|
||||
io.exit(processExitCode);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
io.Directory findMediaPipeRoot() {
|
||||
io.Directory dir = io.Directory(path.current);
|
||||
while (true) {
|
||||
if (isMediaPipeRoot(dir)) {
|
||||
return dir;
|
||||
}
|
||||
dir = dir.parent;
|
||||
if (dir.parent.path == dir.path) {
|
||||
io.stderr.writeln(
|
||||
wrapWith(
|
||||
'Failed to find google/mediapipe root directory. '
|
||||
'Did you execute this command from within the repository?',
|
||||
[red],
|
||||
),
|
||||
);
|
||||
io.exit(1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool isMediaPipeRoot(io.Directory dir) {
|
||||
final bazelrcExists = io.File(
|
||||
path.joinAll(
|
||||
[dir.absolute.path, '.bazelrc'],
|
||||
),
|
||||
).existsSync();
|
||||
final mediapipeExists = io.Directory(
|
||||
path.joinAll(
|
||||
[dir.absolute.path, 'mediapipe'],
|
||||
),
|
||||
).existsSync();
|
||||
final dotGitExists = io.Directory(
|
||||
path.joinAll(
|
||||
[dir.absolute.path, '.git'],
|
||||
),
|
||||
).existsSync();
|
||||
return bazelrcExists && mediapipeExists && dotGitExists;
|
||||
}
|
389
mediapipe/dart/moveheaders/pubspec.lock
Normal file
389
mediapipe/dart/moveheaders/pubspec.lock
Normal file
|
@ -0,0 +1,389 @@
|
|||
# Generated by pub
|
||||
# See https://dart.dev/tools/pub/glossary#lockfile
|
||||
packages:
|
||||
_fe_analyzer_shared:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: _fe_analyzer_shared
|
||||
sha256: eb376e9acf6938204f90eb3b1f00b578640d3188b4c8a8ec054f9f479af8d051
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "64.0.0"
|
||||
analyzer:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: analyzer
|
||||
sha256: "69f54f967773f6c26c7dcb13e93d7ccee8b17a641689da39e878d5cf13b06893"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "6.2.0"
|
||||
args:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: args
|
||||
sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.4.2"
|
||||
async:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: async
|
||||
sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.11.0"
|
||||
boolean_selector:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: boolean_selector
|
||||
sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.1.1"
|
||||
collection:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: collection
|
||||
sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.18.0"
|
||||
convert:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: convert
|
||||
sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.1.1"
|
||||
coverage:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: coverage
|
||||
sha256: "2fb815080e44a09b85e0f2ca8a820b15053982b2e714b59267719e8a9ff17097"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.6.3"
|
||||
crypto:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: crypto
|
||||
sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.0.3"
|
||||
file:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: file
|
||||
sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "7.0.0"
|
||||
frontend_server_client:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: frontend_server_client
|
||||
sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.2.0"
|
||||
glob:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: glob
|
||||
sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.1.2"
|
||||
http_multi_server:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: http_multi_server
|
||||
sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.2.1"
|
||||
http_parser:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: http_parser
|
||||
sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.0.2"
|
||||
io:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: io
|
||||
sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.0.4"
|
||||
js:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: js
|
||||
sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.6.7"
|
||||
lints:
|
||||
dependency: "direct dev"
|
||||
description:
|
||||
name: lints
|
||||
sha256: "0a217c6c989d21039f1498c3ed9f3ed71b354e69873f13a8dfc3c9fe76f1b452"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.1.1"
|
||||
logging:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: logging
|
||||
sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.2.0"
|
||||
matcher:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: matcher
|
||||
sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.12.16"
|
||||
meta:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: meta
|
||||
sha256: a6e590c838b18133bb482a2745ad77c5bb7715fb0451209e1a7567d416678b8e
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.10.0"
|
||||
mime:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: mime
|
||||
sha256: e4ff8e8564c03f255408decd16e7899da1733852a9110a58fe6d1b817684a63e
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.0.4"
|
||||
node_preamble:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: node_preamble
|
||||
sha256: "6e7eac89047ab8a8d26cf16127b5ed26de65209847630400f9aefd7cd5c730db"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.0.2"
|
||||
package_config:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: package_config
|
||||
sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.1.0"
|
||||
path:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: path
|
||||
sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.8.3"
|
||||
platform:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: platform
|
||||
sha256: ae68c7bfcd7383af3629daafb32fb4e8681c7154428da4febcff06200585f102
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.1.2"
|
||||
pool:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: pool
|
||||
sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.5.1"
|
||||
process:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: process
|
||||
sha256: c8298bb2d31a637afd4be38177d1d7fb9a062c985bd8e4558d98e2d9f0c38127
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "5.0.0"
|
||||
pub_semver:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: pub_semver
|
||||
sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.1.4"
|
||||
shelf:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: shelf
|
||||
sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.4.1"
|
||||
shelf_packages_handler:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: shelf_packages_handler
|
||||
sha256: "89f967eca29607c933ba9571d838be31d67f53f6e4ee15147d5dc2934fee1b1e"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.0.2"
|
||||
shelf_static:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: shelf_static
|
||||
sha256: a41d3f53c4adf0f57480578c1d61d90342cd617de7fc8077b1304643c2d85c1e
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.1.2"
|
||||
shelf_web_socket:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: shelf_web_socket
|
||||
sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.0.4"
|
||||
source_map_stack_trace:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: source_map_stack_trace
|
||||
sha256: "84cf769ad83aa6bb61e0aa5a18e53aea683395f196a6f39c4c881fb90ed4f7ae"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.1.1"
|
||||
source_maps:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: source_maps
|
||||
sha256: "708b3f6b97248e5781f493b765c3337db11c5d2c81c3094f10904bfa8004c703"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.10.12"
|
||||
source_span:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: source_span
|
||||
sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.10.0"
|
||||
stack_trace:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: stack_trace
|
||||
sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.11.1"
|
||||
stream_channel:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: stream_channel
|
||||
sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.1.2"
|
||||
string_scanner:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: string_scanner
|
||||
sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.2.0"
|
||||
term_glyph:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: term_glyph
|
||||
sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.2.1"
|
||||
test:
|
||||
dependency: "direct dev"
|
||||
description:
|
||||
name: test
|
||||
sha256: "9b0dd8e36af4a5b1569029949d50a52cb2a2a2fdaa20cebb96e6603b9ae241f9"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.24.6"
|
||||
test_api:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: test_api
|
||||
sha256: "5c2f730018264d276c20e4f1503fd1308dfbbae39ec8ee63c5236311ac06954b"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.6.1"
|
||||
test_core:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: test_core
|
||||
sha256: "4bef837e56375537055fdbbbf6dd458b1859881f4c7e6da936158f77d61ab265"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.5.6"
|
||||
typed_data:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: typed_data
|
||||
sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.3.2"
|
||||
vm_service:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: vm_service
|
||||
sha256: c538be99af830f478718b51630ec1b6bee5e74e52c8a802d328d9e71d35d2583
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "11.10.0"
|
||||
watcher:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: watcher
|
||||
sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.1.0"
|
||||
web_socket_channel:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: web_socket_channel
|
||||
sha256: d88238e5eac9a42bb43ca4e721edba3c08c6354d4a53063afaa568516217621b
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.4.0"
|
||||
webkit_inspection_protocol:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: webkit_inspection_protocol
|
||||
sha256: "87d3f2333bb240704cd3f1c6b5b7acd8a10e7f0bc28c28dcf14e782014f4a572"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.2.1"
|
||||
yaml:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: yaml
|
||||
sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.1.2"
|
||||
sdks:
|
||||
dart: ">=3.2.0-162.0.dev <4.0.0"
|
18
mediapipe/dart/moveheaders/pubspec.yaml
Normal file
18
mediapipe/dart/moveheaders/pubspec.yaml
Normal file
|
@ -0,0 +1,18 @@
|
|||
name: moveheaders
|
||||
description: A sample command-line application.
|
||||
version: 1.0.0
|
||||
# repository: https://github.com/my_org/my_repo
|
||||
environment:
|
||||
sdk: ^3.2.0-162.0.dev
|
||||
|
||||
# Add regular dependencies here.
|
||||
dependencies:
|
||||
args: ^2.4.2
|
||||
io: ^1.0.4
|
||||
logging: ^1.2.0
|
||||
path: ^1.8.0
|
||||
process: ^5.0.0
|
||||
|
||||
dev_dependencies:
|
||||
lints: ^2.1.0
|
||||
test: ^1.24.0
|
4
mediapipe/dart/moveheaders/test/moveheaders_test.dart
Normal file
4
mediapipe/dart/moveheaders/test/moveheaders_test.dart
Normal file
|
@ -0,0 +1,4 @@
|
|||
import 'package:moveheaders/moveheaders.dart';
|
||||
import 'package:test/test.dart';
|
||||
|
||||
void main() {}
|
Loading…
Reference in New Issue
Block a user