420 lines
10 KiB
Dart
420 lines
10 KiB
Dart
// ignore_for_file: non_constant_identifier_names, avoid_init_to_null
|
|
|
|
import 'package:dart_framework/utils/slack/slack_sender.dart';
|
|
import 'package:json_annotation/json_annotation.dart';
|
|
import 'package:dart_framework/core/app_data_manager.dart';
|
|
import 'package:dart_framework/utils/slack/slack_data.dart';
|
|
import 'package:oto_cli/oto/commands/command.dart';
|
|
import 'package:oto_cli/oto/data/pipeline_data.dart';
|
|
part 'command_data.g.dart';
|
|
|
|
/// ***************************** Base Data ****************************///
|
|
@JsonSerializable()
|
|
class DataBuild {
|
|
late Map<String, dynamic> property;
|
|
late DataPipeline? pipeline;
|
|
late List<DataCommand> commands;
|
|
|
|
DataBuild();
|
|
|
|
factory DataBuild.fromJson(Map<String, dynamic> json) =>
|
|
_$DataBuildFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataBuildToJson(this);
|
|
}
|
|
|
|
@JsonSerializable()
|
|
class DataCommand {
|
|
DataCommand();
|
|
|
|
late CommandType command;
|
|
late String id;
|
|
late dynamic param;
|
|
|
|
String get name {
|
|
return command.toString().replaceAll('CommandType.', '');
|
|
}
|
|
|
|
factory DataCommand.fromJson(Map<String, dynamic> json) =>
|
|
_$DataCommandFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataCommandToJson(this);
|
|
}
|
|
|
|
@JsonSerializable()
|
|
class DataParam {
|
|
DataParam();
|
|
|
|
late String? workspace;
|
|
}
|
|
|
|
/// ***************************** Command List ****************************///
|
|
//SimpleCommand
|
|
@JsonSerializable()
|
|
class DataSimpleCommand extends DataParam {
|
|
DataSimpleCommand();
|
|
|
|
late String message;
|
|
|
|
factory DataSimpleCommand.fromJson(Map<String, dynamic> json) =>
|
|
_$DataSimpleCommandFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataSimpleCommandToJson(this);
|
|
}
|
|
|
|
//AppDataCreator
|
|
@JsonSerializable()
|
|
class DataAppDataCreator extends DataParam {
|
|
DataAppDataCreator();
|
|
|
|
late SCMType scm;
|
|
late String relativeAssetPath;
|
|
@JsonKey(name: 'return-version')
|
|
late String return_version;
|
|
@JsonKey(name: 'return-hash')
|
|
late String return_hash;
|
|
late String name;
|
|
|
|
factory DataAppDataCreator.fromJson(Map<String, dynamic> json) =>
|
|
_$DataAppDataCreatorFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataAppDataCreatorToJson(this);
|
|
}
|
|
|
|
//BuildDart
|
|
@JsonSerializable()
|
|
class DataBuildDart extends DataParam {
|
|
DataBuildDart();
|
|
|
|
late bool? executeBuildRunner;
|
|
|
|
factory DataBuildDart.fromJson(Map<String, dynamic> json) =>
|
|
_$DataBuildDartFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataBuildDartToJson(this);
|
|
}
|
|
|
|
//BuildFlutter
|
|
@JsonSerializable()
|
|
class DataBuildFlutter extends DataBuildDart {
|
|
DataBuildFlutter();
|
|
|
|
late String platform;
|
|
late String? additional;
|
|
|
|
factory DataBuildFlutter.fromJson(Map<String, dynamic> json) =>
|
|
_$DataBuildFlutterFromJson(json);
|
|
@override
|
|
Map<String, dynamic> toJson() => _$DataBuildFlutterToJson(this);
|
|
}
|
|
|
|
//BuildDartCompile
|
|
@JsonSerializable()
|
|
class DataBuildDartCompile extends DataBuildDart {
|
|
DataBuildDartCompile();
|
|
|
|
late String? targetDartFile;
|
|
late String? buildFileName;
|
|
|
|
factory DataBuildDartCompile.fromJson(Map<String, dynamic> json) =>
|
|
_$DataBuildDartCompileFromJson(json);
|
|
@override
|
|
Map<String, dynamic> toJson() => _$DataBuildDartCompileToJson(this);
|
|
}
|
|
|
|
//BuildDotNet
|
|
@JsonSerializable()
|
|
class DataBuildDotNet extends DataParam {
|
|
DataBuildDotNet();
|
|
|
|
late String projectFile;
|
|
|
|
factory DataBuildDotNet.fromJson(Map<String, dynamic> json) =>
|
|
_$DataBuildDotNetFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataBuildDotNetToJson(this);
|
|
}
|
|
|
|
//BuildiOS
|
|
@JsonSerializable()
|
|
class DataBuildiOS extends DataParam {
|
|
DataBuildiOS();
|
|
|
|
late String scheme;
|
|
late String? destination;
|
|
late String xcworkspaceFilePath;
|
|
late bool? cleanPod;
|
|
|
|
factory DataBuildiOS.fromJson(Map<String, dynamic> json) =>
|
|
_$DataBuildiOSFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataBuildiOSToJson(this);
|
|
}
|
|
|
|
//ArchiveiOS
|
|
@JsonSerializable()
|
|
class DataArchiveiOS extends DataParam {
|
|
DataArchiveiOS();
|
|
|
|
late String xcworkspaceFilePath;
|
|
late String scheme;
|
|
late String archivePath;
|
|
|
|
factory DataArchiveiOS.fromJson(Map<String, dynamic> json) =>
|
|
_$DataArchiveiOSFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataArchiveiOSToJson(this);
|
|
}
|
|
|
|
//ExportiOS
|
|
@JsonSerializable()
|
|
class DataExportiOS extends DataParam {
|
|
DataExportiOS();
|
|
|
|
late String archivePath;
|
|
late String exportOptionPlistPath;
|
|
late String exportPath;
|
|
|
|
factory DataExportiOS.fromJson(Map<String, dynamic> json) =>
|
|
_$DataExportiOSFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataExportiOSToJson(this);
|
|
}
|
|
|
|
//PublishiOS
|
|
@JsonSerializable()
|
|
class DataPublishiOS extends DataParam {
|
|
DataPublishiOS();
|
|
|
|
late String bundleID;
|
|
late String version;
|
|
late String appName;
|
|
late String ipaURL;
|
|
late String menifestURL;
|
|
late String displayImageURL;
|
|
late String fullSizeImageURL;
|
|
late String destinationPath;
|
|
|
|
factory DataPublishiOS.fromJson(Map<String, dynamic> json) =>
|
|
_$DataPublishiOSFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataPublishiOSToJson(this);
|
|
}
|
|
|
|
//ExecuteApp
|
|
@JsonSerializable()
|
|
class DataExecuteApp extends DataParam {
|
|
DataExecuteApp();
|
|
|
|
late String executable;
|
|
late String desktopServicePath;
|
|
|
|
factory DataExecuteApp.fromJson(Map<String, dynamic> json) =>
|
|
_$DataExecuteAppFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataExecuteAppToJson(this);
|
|
}
|
|
|
|
//Uploader
|
|
@JsonSerializable()
|
|
class DataUploader extends DataParam {
|
|
DataUploader();
|
|
|
|
late bool sftp;
|
|
late int port;
|
|
late String host;
|
|
late String user;
|
|
late String password;
|
|
late Map<String, String> uploadMap;
|
|
|
|
factory DataUploader.fromJson(Map<String, dynamic> json) =>
|
|
_$DataUploaderFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataUploaderToJson(this);
|
|
}
|
|
|
|
class DataFile extends DataParam {
|
|
DataFile();
|
|
late List<String>? ignorePattern;
|
|
}
|
|
|
|
//Copy & Move
|
|
@JsonSerializable()
|
|
class DataCopy extends DataFile {
|
|
DataCopy();
|
|
|
|
late bool? isMove;
|
|
late Map<String, String> copyMap;
|
|
|
|
factory DataCopy.fromJson(Map<String, dynamic> json) =>
|
|
_$DataCopyFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataCopyToJson(this);
|
|
}
|
|
|
|
//Delete
|
|
@JsonSerializable()
|
|
class DataDelete extends DataFile {
|
|
DataDelete();
|
|
|
|
late List<String> list;
|
|
|
|
factory DataDelete.fromJson(Map<String, dynamic> json) =>
|
|
_$DataDeleteFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataDeleteToJson(this);
|
|
}
|
|
|
|
//Rename
|
|
@JsonSerializable()
|
|
class DataRename extends DataFile {
|
|
DataRename();
|
|
|
|
late Map<String, String> renameMap;
|
|
|
|
factory DataRename.fromJson(Map<String, dynamic> json) =>
|
|
_$DataRenameFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataRenameToJson(this);
|
|
}
|
|
|
|
//Slack
|
|
@JsonSerializable()
|
|
class DataSlackSender extends DataParam {
|
|
DataSlackSender();
|
|
|
|
late String token;
|
|
late String? property;
|
|
late DataSlack message;
|
|
|
|
factory DataSlackSender.fromJson(Map<String, dynamic> json) =>
|
|
_$DataSlackSenderFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataSlackSenderToJson(this);
|
|
}
|
|
|
|
//Slack Build
|
|
@JsonSerializable()
|
|
class DataSlackBuild extends DataSlackSender {
|
|
DataSlackBuild();
|
|
|
|
late String appName;
|
|
late SlackBuildType type;
|
|
late String color;
|
|
late String version;
|
|
late String downloadURL;
|
|
|
|
factory DataSlackBuild.fromJson(Map<String, dynamic> json) =>
|
|
_$DataSlackBuildFromJson(json);
|
|
@override
|
|
Map<String, dynamic> toJson() => _$DataSlackBuildToJson(this);
|
|
}
|
|
|
|
//Jira
|
|
@JsonSerializable()
|
|
class DataJira extends DataParam {
|
|
DataJira();
|
|
|
|
late String id;
|
|
late String token;
|
|
late String domain;
|
|
late String issue;
|
|
@JsonKey(name: 'sub-channel')
|
|
late String? sub_channel;
|
|
late List<DataJiraUser> users;
|
|
@JsonKey(name: 'return-slack-data')
|
|
late String return_slack_data;
|
|
@JsonKey(name: 'return-slack-channel')
|
|
late String return_slack_channel;
|
|
|
|
factory DataJira.fromJson(Map<String, dynamic> json) =>
|
|
_$DataJiraFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataJiraToJson(this);
|
|
}
|
|
|
|
//Jira User
|
|
@JsonSerializable()
|
|
class DataJiraUser extends DataParam {
|
|
DataJiraUser();
|
|
|
|
late String? mail = null;
|
|
late String? slackID = null;
|
|
|
|
factory DataJiraUser.fromJson(Map<String, dynamic> json) =>
|
|
_$DataJiraUserFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataJiraUserToJson(this);
|
|
}
|
|
|
|
//Zip
|
|
@JsonSerializable()
|
|
class DataZip extends DataParam {
|
|
DataZip();
|
|
|
|
late String zipFile;
|
|
late List<String> zipList;
|
|
|
|
factory DataZip.fromJson(Map<String, dynamic> json) =>
|
|
_$DataZipFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataZipToJson(this);
|
|
}
|
|
|
|
//Shell
|
|
@JsonSerializable()
|
|
class DataShell extends DataParam {
|
|
DataShell();
|
|
|
|
late String path;
|
|
|
|
factory DataShell.fromJson(Map<String, dynamic> json) =>
|
|
_$DataShellFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataShellToJson(this);
|
|
}
|
|
|
|
//Git
|
|
@JsonSerializable()
|
|
class DataGit extends DataParam {
|
|
DataGit();
|
|
|
|
late List<String> commands;
|
|
|
|
factory DataGit.fromJson(Map<String, dynamic> json) =>
|
|
_$DataGitFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataGitToJson(this);
|
|
}
|
|
|
|
//GitCount
|
|
@JsonSerializable()
|
|
class DataGitCount extends DataParam {
|
|
DataGitCount();
|
|
|
|
@JsonKey(name: 'result-value')
|
|
late String result_value;
|
|
|
|
factory DataGitCount.fromJson(Map<String, dynamic> json) =>
|
|
_$DataGitCountFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataGitCountToJson(this);
|
|
}
|
|
|
|
//GitRev
|
|
@JsonSerializable()
|
|
class DataGitRev extends DataParam {
|
|
DataGitRev();
|
|
|
|
late String? branch; //null will be show local HEAD
|
|
|
|
@JsonKey(name: 'result-value')
|
|
late String result_value;
|
|
|
|
factory DataGitRev.fromJson(Map<String, dynamic> json) =>
|
|
_$DataGitRevFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataGitRevToJson(this);
|
|
}
|
|
|
|
//GitRev
|
|
@JsonSerializable()
|
|
class DataJsonReader extends DataParam {
|
|
DataJsonReader();
|
|
|
|
late String path;
|
|
late List<DataPair> pair;
|
|
|
|
factory DataJsonReader.fromJson(Map<String, dynamic> json) =>
|
|
_$DataJsonReaderFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataJsonReaderToJson(this);
|
|
}
|
|
|
|
@JsonSerializable()
|
|
class DataPair {
|
|
late String from;
|
|
late String to;
|
|
|
|
DataPair();
|
|
|
|
factory DataPair.fromJson(Map<String, dynamic> json) =>
|
|
_$DataPairFromJson(json);
|
|
Map<String, dynamic> toJson() => _$DataPairToJson(this);
|
|
}
|