From 58548a6576601533caa3a02cf73f1832d14c7e8b Mon Sep 17 00:00:00 2001
From: KyMAN <0kyman0@gmail.com>
Date: Sun, 29 Mar 2026 20:37:07 +0200
Subject: [PATCH] #wip(py,sql,cs,js): Starting project.
---
.gitignore | 12 +
AnPv2.sln.old | 29 +
CSharp/AnP.csproj | 23 +
CSharp/AnP.slnx | 3 +
CSharp/Application/AnP.cs | 9 +
CSharp/Interfaces/Application/AnPInterface.cs | 5 +
.../Managers/I18NManagerInterface.cs | 14 +
CSharp/Managers/I18NManager.cs | 58 ++
CSharp/Managers/SettingsManager.cs | 31 +
CSharp/Program.cs | 9 +
CSharp/Types/ColorType.cs | 14 +
CSharp/Types/I18NSentenceType.cs | 10 +
CSharp/Utils/Check.cs | 41 ++
CSharp/Utils/Color.cs | 140 ++++
CSharp/Utils/Common.cs | 99 +++
CSharp/Utils/Options.cs | 57 ++
CSharp/Utils/Patterns.cs | 7 +
DotNET/Dockerfile | 5 +
DotNET/docker.rebuild.sh | 4 +
DotNET/scripts/entrypoint.sh | 7 +
JSON/AnP.settings.json | 69 ++
JSON/I18N/AnP.i18n.espanol.json | 44 ++
Public/ecma/Abstracts/BaseAbstract.ecma.js | 190 +++++
Public/ecma/Application/AnP.ecma.js | 67 ++
Public/ecma/Application/Components.ecma.js | 412 +++++++++++
Public/ecma/Drivers/FilesDriver.ecma.js | 155 ++++
Public/ecma/Managers/I18NManager.ecma.js | 139 ++++
.../ecma/Managers/IdentifiersManager.ecma.js | 89 +++
Public/ecma/Managers/SettingsManager.ecma.js | 135 ++++
Public/ecma/Utils/Check.ecma.js | 102 +++
Public/ecma/Utils/Options.ecma.js | 113 +++
Public/ecma/Utils/Patterns.ecma.js | 24 +
Public/ecma/Utils/Utils.ecma.js | 404 ++++++++++
Public/json/AnP.settings.json | 1 +
Public/json/i18n/anP.i18n.espanol.json | 3 +
Python/Abstracts/BaseAbstract.py | 44 ++
Python/Application/AnP.py | 33 +
Python/Interfaces/Application/AnPInterface.py | 31 +
.../Managers/I18NManagerInterface.py | 18 +
.../Managers/PrintTypesManagerInterface.py | 13 +
.../Managers/SettingsManagerInterface.py | 18 +
Python/Managers/I18NManager.py | 72 ++
Python/Managers/PrintTypesManager.py | 26 +
Python/Managers/SettingsManager.py | 36 +
Python/Models/PrintTypeModel.py | 30 +
Python/Utils/Check.py | 27 +
Python/Utils/Color.py | 75 ++
Python/Utils/Options.py | 60 ++
Python/Utils/Patterns.py | 8 +
Python/Utils/Utils.py | 140 ++++
README.md | 38 +-
SQLServer/AnP.1.10.common.server.sql | 690 ++++++++++++++++++
SQLServer/AnP.1.11.groups.server.sql | 345 +++++++++
SQLServer/Dockerfile | 4 +
SQLServer/docker.rebuild.sh | 4 +
Tools/reinstall.dockers.sh | 6 +
Tools/run.cs.server.sh | 4 +
Tools/run.server.sh | 3 +
Tools/sass.sh | 3 +
docker-compose.yml | 41 ++
version | 1 +
61 files changed, 4293 insertions(+), 1 deletion(-)
create mode 100644 .gitignore
create mode 100644 AnPv2.sln.old
create mode 100755 CSharp/AnP.csproj
create mode 100755 CSharp/AnP.slnx
create mode 100755 CSharp/Application/AnP.cs
create mode 100644 CSharp/Interfaces/Application/AnPInterface.cs
create mode 100644 CSharp/Interfaces/Managers/I18NManagerInterface.cs
create mode 100644 CSharp/Managers/I18NManager.cs
create mode 100644 CSharp/Managers/SettingsManager.cs
create mode 100755 CSharp/Program.cs
create mode 100644 CSharp/Types/ColorType.cs
create mode 100644 CSharp/Types/I18NSentenceType.cs
create mode 100755 CSharp/Utils/Check.cs
create mode 100755 CSharp/Utils/Color.cs
create mode 100755 CSharp/Utils/Common.cs
create mode 100755 CSharp/Utils/Options.cs
create mode 100755 CSharp/Utils/Patterns.cs
create mode 100644 DotNET/Dockerfile
create mode 100755 DotNET/docker.rebuild.sh
create mode 100755 DotNET/scripts/entrypoint.sh
create mode 100644 JSON/AnP.settings.json
create mode 100644 JSON/I18N/AnP.i18n.espanol.json
create mode 100644 Public/ecma/Abstracts/BaseAbstract.ecma.js
create mode 100644 Public/ecma/Application/AnP.ecma.js
create mode 100644 Public/ecma/Application/Components.ecma.js
create mode 100644 Public/ecma/Drivers/FilesDriver.ecma.js
create mode 100644 Public/ecma/Managers/I18NManager.ecma.js
create mode 100644 Public/ecma/Managers/IdentifiersManager.ecma.js
create mode 100644 Public/ecma/Managers/SettingsManager.ecma.js
create mode 100644 Public/ecma/Utils/Check.ecma.js
create mode 100644 Public/ecma/Utils/Options.ecma.js
create mode 100644 Public/ecma/Utils/Patterns.ecma.js
create mode 100644 Public/ecma/Utils/Utils.ecma.js
create mode 100644 Public/json/AnP.settings.json
create mode 100644 Public/json/i18n/anP.i18n.espanol.json
create mode 100644 Python/Abstracts/BaseAbstract.py
create mode 100644 Python/Application/AnP.py
create mode 100644 Python/Interfaces/Application/AnPInterface.py
create mode 100644 Python/Interfaces/Managers/I18NManagerInterface.py
create mode 100644 Python/Interfaces/Managers/PrintTypesManagerInterface.py
create mode 100644 Python/Interfaces/Managers/SettingsManagerInterface.py
create mode 100644 Python/Managers/I18NManager.py
create mode 100644 Python/Managers/PrintTypesManager.py
create mode 100644 Python/Managers/SettingsManager.py
create mode 100644 Python/Models/PrintTypeModel.py
create mode 100644 Python/Utils/Check.py
create mode 100644 Python/Utils/Color.py
create mode 100644 Python/Utils/Options.py
create mode 100644 Python/Utils/Patterns.py
create mode 100644 Python/Utils/Utils.py
create mode 100644 SQLServer/AnP.1.10.common.server.sql
create mode 100644 SQLServer/AnP.1.11.groups.server.sql
create mode 100644 SQLServer/Dockerfile
create mode 100755 SQLServer/docker.rebuild.sh
create mode 100755 Tools/reinstall.dockers.sh
create mode 100755 Tools/run.cs.server.sh
create mode 100755 Tools/run.server.sh
create mode 100755 Tools/sass.sh
create mode 100644 docker-compose.yml
create mode 100644 version
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..d16d594
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,12 @@
+/Data
+/Public/data
+__pycache__
+.sass-cache
+*.[Ss]ecret.*
+*.[Ss]ecrets.*
+*.deleted.*
+/CSharp/bin
+/CSharp/obj
+/SQLServer/data
+/SQLServer/scripts
+/SQLServer/temporary
\ No newline at end of file
diff --git a/AnPv2.sln.old b/AnPv2.sln.old
new file mode 100644
index 0000000..38626be
--- /dev/null
+++ b/AnPv2.sln.old
@@ -0,0 +1,29 @@
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.5.2.0
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CSharp", "CSharp", "{B41BF331-FCCB-2ADF-CDB6-767964B34647}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AnP", "CSharp\AnP.csproj", "{720E15E3-2F0D-4B91-98F1-400300826A0A}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {720E15E3-2F0D-4B91-98F1-400300826A0A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {720E15E3-2F0D-4B91-98F1-400300826A0A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {720E15E3-2F0D-4B91-98F1-400300826A0A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {720E15E3-2F0D-4B91-98F1-400300826A0A}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {720E15E3-2F0D-4B91-98F1-400300826A0A} = {B41BF331-FCCB-2ADF-CDB6-767964B34647}
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {47442BB3-05F5-4AAF-A859-D456A81FC0A2}
+ EndGlobalSection
+EndGlobal
diff --git a/CSharp/AnP.csproj b/CSharp/AnP.csproj
new file mode 100755
index 0000000..41964d3
--- /dev/null
+++ b/CSharp/AnP.csproj
@@ -0,0 +1,23 @@
+
+
+ Exe
+ net10.0;net462
+ enable
+ enable
+ latest
+ AnP
+ AnP
+
+
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/CSharp/AnP.slnx b/CSharp/AnP.slnx
new file mode 100755
index 0000000..939d01f
--- /dev/null
+++ b/CSharp/AnP.slnx
@@ -0,0 +1,3 @@
+
+
+
diff --git a/CSharp/Application/AnP.cs b/CSharp/Application/AnP.cs
new file mode 100755
index 0000000..3ccf424
--- /dev/null
+++ b/CSharp/Application/AnP.cs
@@ -0,0 +1,9 @@
+using AnP.Interfaces.Application;
+
+namespace AnP.Application{
+ class AnP:AnPInterface{
+
+ public AnP(object? inputs = null){}
+
+ }
+}
\ No newline at end of file
diff --git a/CSharp/Interfaces/Application/AnPInterface.cs b/CSharp/Interfaces/Application/AnPInterface.cs
new file mode 100644
index 0000000..962bd67
--- /dev/null
+++ b/CSharp/Interfaces/Application/AnPInterface.cs
@@ -0,0 +1,5 @@
+namespace AnP.Interfaces.Application{
+ public interface AnPInterface{
+
+ }
+}
\ No newline at end of file
diff --git a/CSharp/Interfaces/Managers/I18NManagerInterface.cs b/CSharp/Interfaces/Managers/I18NManagerInterface.cs
new file mode 100644
index 0000000..49193f4
--- /dev/null
+++ b/CSharp/Interfaces/Managers/I18NManagerInterface.cs
@@ -0,0 +1,14 @@
+using System.Collections.Generic;
+using System.Linq;
+
+namespace AnP.Interface.Managers{
+
+ public interface I18NManagerInterface{
+
+ public string get(List strings, object? inputs = null, List? languages = null, int custom_options = 0);
+
+ public void add(object? items, int custom_options = 0);
+
+ }
+
+}
\ No newline at end of file
diff --git a/CSharp/Managers/I18NManager.cs b/CSharp/Managers/I18NManager.cs
new file mode 100644
index 0000000..0da2fc9
--- /dev/null
+++ b/CSharp/Managers/I18NManager.cs
@@ -0,0 +1,58 @@
+using System.Collections.Generic;
+using AnP.Types;
+using AnP.Utils;
+using AnP.Interfaces.Application;
+
+namespace AnP.Managers{
+ public class I18NManager{
+
+ private static readonly Dictionary> DEFAULT_SENTENCES = new Dictionary>{
+ {"english", new Dictionary{
+ {"greeting", new I18NSentenceType.Text("Hello, World!")}
+ }}
+ };
+
+ private static readonly Options GET_OPTIONS = new Options();
+
+ public AnPInterface anp;
+ private Dictionary> sentences;
+ private string language;
+ private string default_language;
+
+ public I18NManager(AnPInterface anp){
+ this.anp = anp;
+ sentences = new Dictionary>(DEFAULT_SENTENCES);
+ language = default_language = "english";
+ }
+
+ public string get(object strings, object? inputs = null, object? languages = null, int custom_options = 0){
+
+ List keys = Common.get_keys(strings);
+ Options options = new Options(custom_options, GET_OPTIONS);
+
+ if(keys.Count != 0){
+
+ List languages_used = new List();
+
+ foreach(string language in Common.get_keys(languages).Concat(
+ new List{this.language, default_language}
+ ).Concat(sentences.Keys))
+ if(!languages_used.Contains(language)){
+ languages_used.Add(language);
+ if(sentences.ContainsKey(language))
+ foreach(string key in keys)
+ if(sentences[language].ContainsKey(key))
+ return sentences[language][key] switch{
+ I18NSentenceType.Text text => text.value,
+ I18NSentenceType.List list => string.Join("", list.value),
+ _ => ""
+ };
+ }
+ };
+ return Common.get_strings(strings).FirstOrDefault() ?? "";
+ }
+
+ public void add(object? items, int custom_options = 0){}
+
+ }
+}
\ No newline at end of file
diff --git a/CSharp/Managers/SettingsManager.cs b/CSharp/Managers/SettingsManager.cs
new file mode 100644
index 0000000..db628c2
--- /dev/null
+++ b/CSharp/Managers/SettingsManager.cs
@@ -0,0 +1,31 @@
+using System.Collections.Generic;
+using AnP.Utils;
+using AnP.Interfaces.Application;
+
+namespace AnP.Managers{
+ public class SettingsManager{
+
+ public static readonly Dictionary DEFAULT_SETTINGS = new Dictionary{};
+ public static readonly Options GET_OPTIONS = new Options(Options.ALLOW_NULLS);
+ public static readonly Options ADD_OPTIONS = new Options(Options.NO_OVERWRITE);
+
+ public AnPInterface anp;
+ public Dictionary settings = new Dictionary(){};
+ public Dictionary secrets = new Dictionary(){};
+ public Dictionary inputs;
+
+ public SettingsManager(AnPInterface anp, object? inputs = null){
+ this.anp = anp;
+ this.inputs = Common.get_dictionary