Skip to content

Commit

Permalink
up
Browse files Browse the repository at this point in the history
  • Loading branch information
committed Jan 12, 2025
1 parent d1f3813 commit 736d803
Show file tree
Hide file tree
Showing 30 changed files with 3,392 additions and 3,570 deletions.
3 changes: 3 additions & 0 deletions analysis_options.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ analyzer:
- dev/
- test/

linter:
rules:
- public_member_api_docs
# Uncomment the following section to specify additional rules.

# linter:
Expand Down
59 changes: 22 additions & 37 deletions lib/json_to_script_dart/json_to_script.dart
Original file line number Diff line number Diff line change
Expand Up @@ -40,20 +40,22 @@ import 'package:general_lib/general_lib.dart' as glx_lib;
import 'package:io_universe/io_universe.dart';
import "package:path/path.dart" as p;

/// GeneralLib
class JsonDatasScript {
/// GeneralLib
List<String> datas;
/// GeneralLib
JsonDatasScript({
required this.datas,
});
}

/// GeneralLib
Future<Directory> jsonToScripts(
List<Map> scripts_origin, {
String? comment,
String comment = "/// Generated",
bool isMethodApi = true,
required Directory directory,
String path_package_json_dart =
"import \"package:general_lib/general_lib.dart\";",
String path_package_json_dart = "import \"package:general_lib/general_lib.dart\";",
int try_loop = 2,
}) async {
// String base_name = p.basename(directory.path);
Expand All @@ -63,9 +65,7 @@ Future<Directory> jsonToScripts(
await directory.create(recursive: true);
}

for (var loop_index_first = 0;
loop_index_first < try_loop;
loop_index_first++) {
for (var loop_index_first = 0; loop_index_first < try_loop; loop_index_first++) {
// print(loop_index_first);
void json_script_update({
required Map newData,
Expand Down Expand Up @@ -207,9 +207,7 @@ Future<Directory> jsonToScripts(
comment: comment,
path_package_json_dart: path_package_json_dart,
);
await File(p.join(directory.path,
"${data["@type"].toString().snakeCaseClass()}.dart"))
.writeAsString(res);
await File(p.join(directory.path, "${data["@type"].toString().snakeCaseClass()}.dart")).writeAsString(res);
}

// String json_dart = """
Expand Down Expand Up @@ -370,27 +368,25 @@ Future<Directory> jsonToScripts(
// """;
datas.sort();
// await File(p.join(directory.path, "json_dart.dart")).writeAsString(json_dart);
await File(p.join(directory.path, "${p.basename(directory.path)}.dart"))
.writeAsString(datas.toSet().toList().join("\n"));
await File(p.join(directory.path, "${p.basename(directory.path)}.dart")).writeAsString(datas.toSet().toList().join("\n"));

return directory;
}

/// GeneralLib
String jsonToScriptStatic(
Map<String, dynamic> data, {
bool isMethodApi = true,
String? comment,
required String? comment,
required Directory directory,
String path_package_json_dart =
"import \"package:general_lib/general_lib.dart\";",
String path_package_json_dart = "import \"package:general_lib/general_lib.dart\";",
}) {
// String base_name = p.basename(directory.path);
// String baseName = base_name.camelCaseClass();
comment ??= "";
// List<String> classMessages = [];
final String className = data["@type"].toString().camelCaseClass();
final String class_name =
className[0].toLowerCase() + className.substring(1, className.length);
final String class_name = className[0].toLowerCase() + className.substring(1, className.length);
String package_data = "";
String classMessage = """
// ignore_for_file: non_constant_identifier_names, unused_import
Expand Down Expand Up @@ -570,14 +566,12 @@ final Map ${class_name}_data_create_json = {
if (values.isNotEmpty) {
if (values.first is Map) {
String value_class_name = () {
if (values.first["@type"] is String &&
(values.first["@type"] as String).isNotEmpty) {
if (values.first["@type"] is String && (values.first["@type"] as String).isNotEmpty) {
return values.first["@type"];
}
return key;
}();
package_data +=
"\nimport \"${value_class_name.snakeCaseClass()}.dart\";";
package_data += "\nimport \"${value_class_name.snakeCaseClass()}.dart\";";
classMessage += textToListFunction(
key: key,
className: value_class_name.camelCaseClass(),
Expand Down Expand Up @@ -720,14 +714,12 @@ final Map ${class_name}_data_create_json = {
if (value.first is Map) {
// package_data += "${className.snakeCaseClass()}.dart";
String value_class_name = () {
if (value.first["@type"] is String &&
(value.first["@type"] as String).isNotEmpty) {
if (value.first["@type"] is String && (value.first["@type"] as String).isNotEmpty) {
return value.first["@type"];
}
return key;
}();
package_data +=
"\nimport \"${value_class_name.snakeCaseClass()}.dart\";";
package_data += "\nimport \"${value_class_name.snakeCaseClass()}.dart\";";
classMessage += textToFunctionDart(
key: key,
value: value.first,
Expand Down Expand Up @@ -935,12 +927,10 @@ return ${className}(${class_name}_data_create_json);

// classMessage += "\n\n${classMessages.join("\n\n")}";/

classMessage = classMessage.replaceAll(
RegExp(r"{package_data}", caseSensitive: false),
package_data.split("\n").toSet().toList().join("\n"));
classMessage = classMessage.replaceAll(RegExp(r"{package_data}", caseSensitive: false), package_data.split("\n").toSet().toList().join("\n"));
return classMessage;
}

/// GeneralLib
String textToFunctionDart({
required String key,
required dynamic value,
Expand All @@ -955,10 +945,7 @@ String textToFunctionDart({
comment ??= "";
String nameClass = className.camelCaseClass();

String nameMethod = key
.replaceAll(RegExp(r"^(@|[0-9]+)", caseSensitive: false), "special_")
.replaceAll(RegExp(r"([\-]+)", caseSensitive: false), "_")
.replaceAll(RegExp(r"^(_)", caseSensitive: false), "special_");
String nameMethod = key.replaceAll(RegExp(r"^(@|[0-9]+)", caseSensitive: false), "special_").replaceAll(RegExp(r"([\-]+)", caseSensitive: false), "_").replaceAll(RegExp(r"^(_)", caseSensitive: false), "special_");
if (RegExp(r"^(do|is|in)$", caseSensitive: false).hasMatch(nameMethod)) {
nameMethod += "_";
}
Expand Down Expand Up @@ -1097,6 +1084,7 @@ String textToFunctionDart({
""";
}

/// GeneralLib
String textToListFunction({
required String key,
required String returnType,
Expand All @@ -1110,10 +1098,7 @@ String textToListFunction({
comment ??= "";
String nameClass = className.camelCaseClass();

String nameMethod = key
.replaceAll(RegExp(r"^(@|[0-9]+)", caseSensitive: false), "special_")
.replaceAll(RegExp(r"([\-]+)", caseSensitive: false), "_")
.replaceAll(RegExp(r"^(_)", caseSensitive: false), "special_");
String nameMethod = key.replaceAll(RegExp(r"^(@|[0-9]+)", caseSensitive: false), "special_").replaceAll(RegExp(r"([\-]+)", caseSensitive: false), "_").replaceAll(RegExp(r"^(_)", caseSensitive: false), "special_");
if (RegExp(r"^(do|is|in)$", caseSensitive: false).hasMatch(nameMethod)) {
nameMethod += "_";
}
Expand Down
100 changes: 64 additions & 36 deletions lib/scheme/captcha_result.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,20 @@ import "package:general_lib/general_lib.dart";

import "emoji.dart";

/// Generated
class CaptchaResult extends JsonScheme {
CaptchaResult(super.rawData);

/// Generated
CaptchaResult(super.rawData);

/// return default data
///
///
static Map get defaultData {
return {
"@type": "captchaResult",
"type": "words",
"emoji_answer": {"@type": "emoji"},
"random_words": [""],
"words": [""]
};
return {"@type":"captchaResult","type":"words","emoji_answer":{"@type":"emoji"},"random_words":[""],"words":[""]};
}

/// check data
/// if raw data
/// check data
/// if raw data
/// - rawData["@type"] == captchaResult
/// if same return true
bool json_scheme_utils_checkDataIsSameBySpecialType() {
Expand All @@ -34,15 +31,20 @@ class CaptchaResult extends JsonScheme {
return onResult(rawData["@type"], defaultData["@type"]);
}



/// create [CaptchaResult]
/// Empty
/// Empty
static CaptchaResult empty() {
return CaptchaResult({});
}



/// Generated
String? get special_type {
try {
if (rawData["@type"] is String == false) {
if (rawData["@type"] is String == false){
return null;
}
return rawData["@type"] as String;
Expand All @@ -51,13 +53,16 @@ class CaptchaResult extends JsonScheme {
}
}

/// Generated
set special_type(String? value) {
rawData["@type"] = value;
}


/// Generated
String? get type {
try {
if (rawData["type"] is String == false) {
if (rawData["type"] is String == false){
return null;
}
return rawData["type"] as String;
Expand All @@ -66,32 +71,40 @@ class CaptchaResult extends JsonScheme {
}
}

/// Generated
set type(String? value) {
rawData["type"] = value;
}


/// Generated
Emoji get emoji_answer {
try {
if (rawData["emoji_answer"] is Map == false) {
return Emoji({});
if (rawData["emoji_answer"] is Map == false){
return Emoji({});
}
return Emoji(rawData["emoji_answer"] as Map);
} catch (e) {
return Emoji({});
} catch (e) {
return Emoji({});
}
}


/// Generated
set emoji_answer(Emoji value) {
rawData["emoji_answer"] = value.toJson();
}



/// Generated
///
/// default:
///
///
///
///
List<String> get random_words {
try {
if (rawData["random_words"] is List == false) {
if (rawData["random_words"] is List == false){
return [];
}
return (rawData["random_words"] as List).cast<String>();
Expand All @@ -100,17 +113,21 @@ class CaptchaResult extends JsonScheme {
}
}


/// Generated
set random_words(List<String> value) {
rawData["random_words"] = value;
}


/// Generated
///
/// default:
///
///
///
///
List<String> get words {
try {
if (rawData["words"] is List == false) {
if (rawData["words"] is List == false){
return [];
}
return (rawData["words"] as List).cast<String>();
Expand All @@ -119,28 +136,37 @@ class CaptchaResult extends JsonScheme {
}
}


/// Generated
set words(List<String> value) {
rawData["words"] = value;
}


/// Generated
static CaptchaResult create({
bool schemeUtilsIsSetDefaultData = false,
bool schemeUtilsIsSetDefaultData = false,

String special_type = "captchaResult",
String? type,
Emoji? emoji_answer,
List<String>? random_words,
List<String>? words,
}) {
Emoji? emoji_answer,
List<String>? random_words,
List<String>? words,
}) {
// CaptchaResult captchaResult = CaptchaResult({
final Map captchaResult_data_create_json = {
final Map captchaResult_data_create_json = {

"@type": special_type,
"type": type,
"emoji_answer": (emoji_answer != null) ? emoji_answer.toJson() : null,
"emoji_answer": (emoji_answer != null)?emoji_answer.toJson(): null,
"random_words": random_words,
"words": words,
};

captchaResult_data_create_json.removeWhere((key, value) => value == null);

};


captchaResult_data_create_json.removeWhere((key, value) => value == null);

if (schemeUtilsIsSetDefaultData) {
defaultData.forEach((key, value) {
Expand All @@ -149,6 +175,8 @@ class CaptchaResult extends JsonScheme {
}
});
}
return CaptchaResult(captchaResult_data_create_json);
}
}
return CaptchaResult(captchaResult_data_create_json);


}
}
Loading

0 comments on commit 736d803

Please sign in to comment.