diff --git a/assets/icons/icon.svg b/assets/icons/icon.svg
index 71496d6..95c3dcf 100644
--- a/assets/icons/icon.svg
+++ b/assets/icons/icon.svg
@@ -1,9 +1 @@
-
+
\ No newline at end of file
diff --git a/bin/flash/.files b/bin/flash/.files
new file mode 100644
index 0000000..e69de29
diff --git a/bin/flash/bin/LPTCManager2026.swf b/bin/flash/bin/LPTCManager2026.swf
new file mode 100644
index 0000000..1b957fe
Binary files /dev/null and b/bin/flash/bin/LPTCManager2026.swf differ
diff --git a/bin/flash/haxe/ApplicationMain.hx b/bin/flash/haxe/ApplicationMain.hx
new file mode 100644
index 0000000..42e7f85
--- /dev/null
+++ b/bin/flash/haxe/ApplicationMain.hx
@@ -0,0 +1,330 @@
+package;
+
+#if macro
+import haxe.macro.Compiler;
+import haxe.macro.Context;
+import haxe.macro.Expr;
+#end
+
+@:access(lime.app.Application)
+@:access(lime.system.System)
+@:access(openfl.display.Stage)
+@:access(openfl.events.UncaughtErrorEvents)
+@:dox(hide)
+class ApplicationMain
+{
+ #if !macro
+ public static function main()
+ {
+ lime.system.System.__registerEntryPoint("LPTCManager2026", create);
+
+ #if (js && html5)
+ #if (munit || (utest && openfl_enable_utest_legacy_mode))
+ lime.system.System.embed("LPTCManager2026", null, 500, 800);
+ #end
+ #else
+ create(null);
+ #end
+ }
+
+ public static function create(config):Void
+ {
+ var app = new openfl.display.Application();
+
+ #if !disable_preloader_assets
+ ManifestResources.init(config);
+ #end
+
+ app.meta["build"] = "2";
+ app.meta["company"] = "Nekotoro";
+ app.meta["file"] = "LPTCManager2026";
+ app.meta["name"] = "LPTCManager2026";
+ app.meta["packageName"] = "com.nekotoro.LPTCManager2026";
+ app.meta["version"] = "1.0.0";
+
+
+
+ #if !flash
+
+ var attributes:lime.ui.WindowAttributes = {
+ allowHighDPI: true,
+ alwaysOnTop: false,
+ borderless: false,
+ // display: 0,
+ element: null,
+ frameRate: 60,
+ #if !web fullscreen: false, #end
+ height: 800,
+ hidden: #if munit true #else false #end,
+ maximized: false,
+ minimized: false,
+ parameters: {},
+ resizable: true,
+ title: "LPTCManager2026",
+ width: 500,
+ x: null,
+ y: null,
+ };
+
+ attributes.context = {
+ antialiasing: 0,
+ background: 13156797,
+ colorDepth: 32,
+ depth: true,
+ hardware: true,
+ stencil: true,
+ type: null,
+ vsync: false
+ };
+
+ if (app.window == null)
+ {
+ if (config != null)
+ {
+ for (field in Reflect.fields(config))
+ {
+ if (Reflect.hasField(attributes, field))
+ {
+ Reflect.setField(attributes, field, Reflect.field(config, field));
+ }
+ else if (Reflect.hasField(attributes.context, field))
+ {
+ Reflect.setField(attributes.context, field, Reflect.field(config, field));
+ }
+ }
+ }
+
+ #if sys
+ lime.system.System.__parseArguments(attributes);
+ #end
+ }
+
+ app.createWindow(attributes);
+
+ #elseif air
+ app.window.title = "LPTCManager2026";
+ #else
+ app.window.context.attributes.background = 13156797;
+ app.window.frameRate = 60;
+ #end
+
+ var preloader = getPreloader();
+ app.preloader.onProgress.add (function(loaded, total)
+ {
+ @:privateAccess preloader.update(loaded, total);
+ });
+ app.preloader.onComplete.add(function()
+ {
+ @:privateAccess preloader.start();
+ });
+
+ preloader.onComplete.add(start.bind((cast app.window:openfl.display.Window).stage));
+
+ #if !disable_preloader_assets
+ for (library in ManifestResources.preloadLibraries)
+ {
+ app.preloader.addLibrary(library);
+ }
+
+ for (name in ManifestResources.preloadLibraryNames)
+ {
+ app.preloader.addLibraryName(name);
+ }
+ #end
+
+ app.preloader.load();
+
+ var result = app.exec();
+
+ #if (sys && !ios && !nodejs && !emscripten)
+ lime.system.System.exit(result);
+ #end
+ }
+
+ public static function start(stage:openfl.display.Stage):Void
+ {
+ #if flash
+ ApplicationMain.getEntryPoint();
+ #else
+ if (stage.__uncaughtErrorEvents.__enabled)
+ {
+ try
+ {
+ ApplicationMain.getEntryPoint();
+
+ stage.dispatchEvent(new openfl.events.Event(openfl.events.Event.RESIZE, false, false));
+
+ if (stage.window.fullscreen)
+ {
+ stage.dispatchEvent(new openfl.events.FullScreenEvent(openfl.events.FullScreenEvent.FULL_SCREEN, false, false, true, true));
+ }
+ }
+ catch (e:Dynamic)
+ {
+ #if !display
+ stage.__handleError(e);
+ #end
+ }
+ }
+ else
+ {
+ ApplicationMain.getEntryPoint();
+
+ stage.dispatchEvent(new openfl.events.Event(openfl.events.Event.RESIZE, false, false));
+
+ if (stage.window.fullscreen)
+ {
+ stage.dispatchEvent(new openfl.events.FullScreenEvent(openfl.events.FullScreenEvent.FULL_SCREEN, false, false, true, true));
+ }
+ }
+ #end
+ }
+ #end
+
+ macro public static function getEntryPoint()
+ {
+ var hasMain = false;
+
+ switch (Context.follow(Context.getType("LPTCManager2026")))
+ {
+ case TInst(t, params):
+
+ var type = t.get();
+ for (method in type.statics.get())
+ {
+ if (method.name == "main")
+ {
+ hasMain = true;
+ break;
+ }
+ }
+
+ if (hasMain)
+ {
+ return Context.parse("@:privateAccess LPTCManager2026.main()", Context.currentPos());
+ }
+ else if (type.constructor != null)
+ {
+ return macro
+ {
+ var current = stage.getChildAt (0);
+
+ if (current == null || !(current is openfl.display.DisplayObjectContainer))
+ {
+ current = new openfl.display.MovieClip();
+ stage.addChild(current);
+ }
+
+ new DocumentClass(cast current);
+ };
+ }
+ else
+ {
+ Context.fatalError("Main class \"LPTCManager2026\" has neither a static main nor a constructor.", Context.currentPos());
+ }
+
+ default:
+
+ Context.fatalError("Main class \"LPTCManager2026\" isn't a class.", Context.currentPos());
+ }
+
+ return null;
+ }
+
+ macro public static function getPreloader()
+ {
+
+ return macro
+ {
+ new openfl.display.Preloader(new openfl.display.Preloader.DefaultPreloader());
+ };
+
+ }
+
+ #if !macro
+ @:noCompletion @:dox(hide) public static function __init__()
+ {
+ var init = lime.app.Application;
+
+ #if neko
+ // Copy from https://github.com/HaxeFoundation/haxe/blob/development/std/neko/_std/Sys.hx#L164
+ // since Sys.programPath () isn't available in __init__
+ var sys_program_path = {
+ var m = neko.vm.Module.local().name;
+ try
+ {
+ sys.FileSystem.fullPath(m);
+ }
+ catch (e:Dynamic)
+ {
+ // maybe the neko module name was supplied without .n extension...
+ if (!StringTools.endsWith(m, ".n"))
+ {
+ try
+ {
+ sys.FileSystem.fullPath(m + ".n");
+ }
+ catch (e:Dynamic)
+ {
+ m;
+ }
+ }
+ else
+ {
+ m;
+ }
+ }
+ };
+
+ var loader = new neko.vm.Loader(untyped $loader);
+ loader.addPath(haxe.io.Path.directory(#if (haxe_ver >= 3.3) sys_program_path #else Sys.executablePath() #end));
+ loader.addPath("./");
+ loader.addPath("@executable_path/");
+ #end
+ }
+ #end
+}
+
+#if !macro
+@:build(DocumentClass.build())
+@:keep @:dox(hide) class DocumentClass extends LPTCManager2026 {}
+#else
+class DocumentClass
+{
+ macro public static function build():Array
+ {
+ var classType = Context.getLocalClass().get();
+ var searchTypes = classType;
+
+ while (searchTypes != null)
+ {
+ if (searchTypes.module == "openfl.display.DisplayObject" || searchTypes.module == "flash.display.DisplayObject")
+ {
+ var fields = Context.getBuildFields();
+
+ var method = macro
+ {
+ current.addChild(this);
+ super();
+ dispatchEvent(new openfl.events.Event(openfl.events.Event.ADDED_TO_STAGE, false, false));
+ }
+
+ fields.push({ name: "new", access: [ APublic ], kind: FFun({ args: [ { name: "current", opt: false, type: macro :openfl.display.DisplayObjectContainer, value: null } ], expr: method, params: [], ret: macro :Void }), pos: Context.currentPos() });
+
+ return fields;
+ }
+
+ if (searchTypes.superClass != null)
+ {
+ searchTypes = searchTypes.superClass.t.get();
+ }
+ else
+ {
+ searchTypes = null;
+ }
+ }
+
+ return null;
+ }
+}
+#end
diff --git a/bin/flash/haxe/ManifestResources.hx b/bin/flash/haxe/ManifestResources.hx
new file mode 100644
index 0000000..c04ad68
--- /dev/null
+++ b/bin/flash/haxe/ManifestResources.hx
@@ -0,0 +1,112 @@
+package;
+
+import haxe.io.Bytes;
+import haxe.io.Path;
+import lime.utils.AssetBundle;
+import lime.utils.AssetLibrary;
+import lime.utils.AssetManifest;
+import lime.utils.Assets;
+
+#if sys
+import sys.FileSystem;
+#end
+
+#if disable_preloader_assets
+@:dox(hide) class ManifestResources {
+ public static var preloadLibraries:Array;
+ public static var preloadLibraryNames:Array;
+ public static var rootPath:String;
+
+ public static function init (config:Dynamic):Void {
+ preloadLibraries = new Array ();
+ preloadLibraryNames = new Array ();
+ }
+}
+#else
+@:access(lime.utils.Assets)
+
+
+@:keep @:dox(hide) class ManifestResources {
+
+
+ public static var preloadLibraries:Array;
+ public static var preloadLibraryNames:Array;
+ public static var rootPath:String;
+
+
+ public static function init (config:Dynamic):Void {
+
+ preloadLibraries = new Array ();
+ preloadLibraryNames = new Array ();
+
+ rootPath = null;
+
+ if (config != null && Reflect.hasField (config, "rootPath")) {
+
+ rootPath = Reflect.field (config, "rootPath");
+
+ if(!StringTools.endsWith (rootPath, "/")) {
+
+ rootPath += "/";
+
+ }
+
+ }
+
+ if (rootPath == null) {
+
+ #if (ios || tvos || webassembly)
+ rootPath = "assets/";
+ #elseif android
+ rootPath = "";
+ #elseif (console || sys)
+ rootPath = lime.system.System.applicationDirectory;
+ #else
+ rootPath = "./";
+ #end
+
+ }
+
+ #if (openfl && !flash && !display)
+
+ #end
+
+ var data, manifest, library, bundle;
+
+
+
+
+
+ }
+
+
+}
+
+#if !display
+#if flash
+
+
+
+#elseif (desktop || cpp)
+
+
+
+
+#else
+
+
+
+#end
+
+#if (openfl && !flash)
+
+#if html5
+
+#else
+
+#end
+
+#end
+#end
+
+#end
\ No newline at end of file
diff --git a/bin/flash/haxe/debug.hxml b/bin/flash/haxe/debug.hxml
new file mode 100644
index 0000000..20522db
--- /dev/null
+++ b/bin/flash/haxe/debug.hxml
@@ -0,0 +1,33 @@
+-main ApplicationMain
+--macro lime._internal.macros.DefineMacro.run()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/lime/8,2,3/src
+-D lime=8.2.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-cairngorm/1,0,0/src
+-D feathersui-cairngorm=1.0.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui/1,3,0/src
+-D feathersui=1.3.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/actuate/1,9,0/src
+-D actuate=1.9.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/hxargs/4,0,0
+-D hxargs=4.0.0
+--macro openfl.utils._internal.ExtraParamsMacro.include()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/openfl/9,4,2/src
+-D openfl=9.4.2
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-rpc-services/1,0,3/src
+-D feathersui-rpc-services=1.0.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/amfio/1,0,2/src
+-D amfio=1.0.2
+-cp src
+-cp /Users/chatmurai/Documents/code/Haxe/lib/openfl/9,4,2/lib/flash-externs/src
+-D AIR_SDK=/Users/chatmurai/Documents/code/AS3/SDKs/AIR_SDK_32.0
+-D native-trace
+-D tools=8.2.3
+-D no-compilation
+-D disable_preloader_assets=1
+-D openfl-flash
+-D web
+-swf-version 17
+-swf bin/flash/bin/LPTCManager2026.swf
+-swf-header 500:800:60:C8C1BD
+-cp bin/flash/haxe
+-debug
\ No newline at end of file
diff --git a/bin/flash/haxe/final.hxml b/bin/flash/haxe/final.hxml
new file mode 100644
index 0000000..8dfc2e2
--- /dev/null
+++ b/bin/flash/haxe/final.hxml
@@ -0,0 +1,33 @@
+-main ApplicationMain
+--macro lime._internal.macros.DefineMacro.run()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/lime/8,2,3/src
+-D lime=8.2.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-cairngorm/1,0,0/src
+-D feathersui-cairngorm=1.0.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui/1,3,0/src
+-D feathersui=1.3.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/actuate/1,9,0/src
+-D actuate=1.9.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/hxargs/4,0,0
+-D hxargs=4.0.0
+--macro openfl.utils._internal.ExtraParamsMacro.include()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/openfl/9,4,2/src
+-D openfl=9.4.2
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-rpc-services/1,0,3/src
+-D feathersui-rpc-services=1.0.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/amfio/1,0,2/src
+-D amfio=1.0.2
+-cp src
+-cp /Users/chatmurai/Documents/code/Haxe/lib/openfl/9,4,2/lib/flash-externs/src
+-D AIR_SDK=/Users/chatmurai/Documents/code/AS3/SDKs/AIR_SDK_32.0
+-D native-trace
+-D tools=8.2.3
+-D no-compilation
+-D disable_preloader_assets=1
+-D openfl-flash
+-D web
+-swf-version 17
+-swf bin/flash/bin/LPTCManager2026.swf
+-swf-header 500:800:60:C8C1BD
+-cp bin/flash/haxe
+-D final
\ No newline at end of file
diff --git a/bin/flash/haxe/release.hxml b/bin/flash/haxe/release.hxml
new file mode 100644
index 0000000..42aea39
--- /dev/null
+++ b/bin/flash/haxe/release.hxml
@@ -0,0 +1,32 @@
+-main ApplicationMain
+--macro lime._internal.macros.DefineMacro.run()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/lime/8,2,3/src
+-D lime=8.2.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-cairngorm/1,0,0/src
+-D feathersui-cairngorm=1.0.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui/1,3,0/src
+-D feathersui=1.3.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/actuate/1,9,0/src
+-D actuate=1.9.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/hxargs/4,0,0
+-D hxargs=4.0.0
+--macro openfl.utils._internal.ExtraParamsMacro.include()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/openfl/9,4,2/src
+-D openfl=9.4.2
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-rpc-services/1,0,3/src
+-D feathersui-rpc-services=1.0.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/amfio/1,0,2/src
+-D amfio=1.0.2
+-cp src
+-cp /Users/chatmurai/Documents/code/Haxe/lib/openfl/9,4,2/lib/flash-externs/src
+-D AIR_SDK=/Users/chatmurai/Documents/code/AS3/SDKs/AIR_SDK_32.0
+-D native-trace
+-D tools=8.2.3
+-D no-compilation
+-D disable_preloader_assets=1
+-D openfl-flash
+-D web
+-swf-version 17
+-swf bin/flash/bin/LPTCManager2026.swf
+-swf-header 500:800:60:C8C1BD
+-cp bin/flash/haxe
\ No newline at end of file
diff --git a/bin/html5/.files b/bin/html5/.files
new file mode 100644
index 0000000..e69de29
diff --git a/bin/html5/bin/favicon.png b/bin/html5/bin/favicon.png
new file mode 100644
index 0000000..8637dfc
Binary files /dev/null and b/bin/html5/bin/favicon.png differ
diff --git a/bin/html5/bin/index.html b/bin/html5/bin/index.html
new file mode 100644
index 0000000..1e03334
--- /dev/null
+++ b/bin/html5/bin/index.html
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+ lepetittrot.com - manager
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/html5/haxe/ApplicationMain.hx b/bin/html5/haxe/ApplicationMain.hx
new file mode 100644
index 0000000..d8810de
--- /dev/null
+++ b/bin/html5/haxe/ApplicationMain.hx
@@ -0,0 +1,330 @@
+package;
+
+#if macro
+import haxe.macro.Compiler;
+import haxe.macro.Context;
+import haxe.macro.Expr;
+#end
+
+@:access(lime.app.Application)
+@:access(lime.system.System)
+@:access(openfl.display.Stage)
+@:access(openfl.events.UncaughtErrorEvents)
+@:dox(hide)
+class ApplicationMain
+{
+ #if !macro
+ public static function main()
+ {
+ lime.system.System.__registerEntryPoint("LPTCManager2026", create);
+
+ #if (js && html5)
+ #if (munit || (utest && openfl_enable_utest_legacy_mode))
+ lime.system.System.embed("LPTCManager2026", null, 500, 800);
+ #end
+ #else
+ create(null);
+ #end
+ }
+
+ public static function create(config):Void
+ {
+ var app = new openfl.display.Application();
+
+ #if !disable_preloader_assets
+ ManifestResources.init(config);
+ #end
+
+ app.meta["build"] = "2";
+ app.meta["company"] = "Nekotoro";
+ app.meta["file"] = "LPTCManager2026";
+ app.meta["name"] = "lepetittrot.com - manager";
+ app.meta["packageName"] = "com.nekotoro.LPTCManager2026";
+ app.meta["version"] = "1.0.0";
+
+
+
+ #if !flash
+
+ var attributes:lime.ui.WindowAttributes = {
+ allowHighDPI: true,
+ alwaysOnTop: false,
+ borderless: false,
+ // display: 0,
+ element: null,
+ frameRate: 0,
+ #if !web fullscreen: false, #end
+ height: 800,
+ hidden: #if munit true #else false #end,
+ maximized: false,
+ minimized: false,
+ parameters: {},
+ resizable: true,
+ title: "lepetittrot.com - manager",
+ width: 500,
+ x: null,
+ y: null,
+ };
+
+ attributes.context = {
+ antialiasing: 0,
+ background: 13156797,
+ colorDepth: 32,
+ depth: true,
+ hardware: true,
+ stencil: true,
+ type: null,
+ vsync: false
+ };
+
+ if (app.window == null)
+ {
+ if (config != null)
+ {
+ for (field in Reflect.fields(config))
+ {
+ if (Reflect.hasField(attributes, field))
+ {
+ Reflect.setField(attributes, field, Reflect.field(config, field));
+ }
+ else if (Reflect.hasField(attributes.context, field))
+ {
+ Reflect.setField(attributes.context, field, Reflect.field(config, field));
+ }
+ }
+ }
+
+ #if sys
+ lime.system.System.__parseArguments(attributes);
+ #end
+ }
+
+ app.createWindow(attributes);
+
+ #elseif air
+ app.window.title = "lepetittrot.com - manager";
+ #else
+ app.window.context.attributes.background = 13156797;
+ app.window.frameRate = 0;
+ #end
+
+ var preloader = getPreloader();
+ app.preloader.onProgress.add (function(loaded, total)
+ {
+ @:privateAccess preloader.update(loaded, total);
+ });
+ app.preloader.onComplete.add(function()
+ {
+ @:privateAccess preloader.start();
+ });
+
+ preloader.onComplete.add(start.bind((cast app.window:openfl.display.Window).stage));
+
+ #if !disable_preloader_assets
+ for (library in ManifestResources.preloadLibraries)
+ {
+ app.preloader.addLibrary(library);
+ }
+
+ for (name in ManifestResources.preloadLibraryNames)
+ {
+ app.preloader.addLibraryName(name);
+ }
+ #end
+
+ app.preloader.load();
+
+ var result = app.exec();
+
+ #if (sys && !ios && !nodejs && !emscripten)
+ lime.system.System.exit(result);
+ #end
+ }
+
+ public static function start(stage:openfl.display.Stage):Void
+ {
+ #if flash
+ ApplicationMain.getEntryPoint();
+ #else
+ if (stage.__uncaughtErrorEvents.__enabled)
+ {
+ try
+ {
+ ApplicationMain.getEntryPoint();
+
+ stage.dispatchEvent(new openfl.events.Event(openfl.events.Event.RESIZE, false, false));
+
+ if (stage.window.fullscreen)
+ {
+ stage.dispatchEvent(new openfl.events.FullScreenEvent(openfl.events.FullScreenEvent.FULL_SCREEN, false, false, true, true));
+ }
+ }
+ catch (e:Dynamic)
+ {
+ #if !display
+ stage.__handleError(e);
+ #end
+ }
+ }
+ else
+ {
+ ApplicationMain.getEntryPoint();
+
+ stage.dispatchEvent(new openfl.events.Event(openfl.events.Event.RESIZE, false, false));
+
+ if (stage.window.fullscreen)
+ {
+ stage.dispatchEvent(new openfl.events.FullScreenEvent(openfl.events.FullScreenEvent.FULL_SCREEN, false, false, true, true));
+ }
+ }
+ #end
+ }
+ #end
+
+ macro public static function getEntryPoint()
+ {
+ var hasMain = false;
+
+ switch (Context.follow(Context.getType("LPTCManager2026")))
+ {
+ case TInst(t, params):
+
+ var type = t.get();
+ for (method in type.statics.get())
+ {
+ if (method.name == "main")
+ {
+ hasMain = true;
+ break;
+ }
+ }
+
+ if (hasMain)
+ {
+ return Context.parse("@:privateAccess LPTCManager2026.main()", Context.currentPos());
+ }
+ else if (type.constructor != null)
+ {
+ return macro
+ {
+ var current = stage.getChildAt (0);
+
+ if (current == null || !(current is openfl.display.DisplayObjectContainer))
+ {
+ current = new openfl.display.MovieClip();
+ stage.addChild(current);
+ }
+
+ new DocumentClass(cast current);
+ };
+ }
+ else
+ {
+ Context.fatalError("Main class \"LPTCManager2026\" has neither a static main nor a constructor.", Context.currentPos());
+ }
+
+ default:
+
+ Context.fatalError("Main class \"LPTCManager2026\" isn't a class.", Context.currentPos());
+ }
+
+ return null;
+ }
+
+ macro public static function getPreloader()
+ {
+
+ return macro
+ {
+ new openfl.display.Preloader(new openfl.display.Preloader.DefaultPreloader());
+ };
+
+ }
+
+ #if !macro
+ @:noCompletion @:dox(hide) public static function __init__()
+ {
+ var init = lime.app.Application;
+
+ #if neko
+ // Copy from https://github.com/HaxeFoundation/haxe/blob/development/std/neko/_std/Sys.hx#L164
+ // since Sys.programPath () isn't available in __init__
+ var sys_program_path = {
+ var m = neko.vm.Module.local().name;
+ try
+ {
+ sys.FileSystem.fullPath(m);
+ }
+ catch (e:Dynamic)
+ {
+ // maybe the neko module name was supplied without .n extension...
+ if (!StringTools.endsWith(m, ".n"))
+ {
+ try
+ {
+ sys.FileSystem.fullPath(m + ".n");
+ }
+ catch (e:Dynamic)
+ {
+ m;
+ }
+ }
+ else
+ {
+ m;
+ }
+ }
+ };
+
+ var loader = new neko.vm.Loader(untyped $loader);
+ loader.addPath(haxe.io.Path.directory(#if (haxe_ver >= 3.3) sys_program_path #else Sys.executablePath() #end));
+ loader.addPath("./");
+ loader.addPath("@executable_path/");
+ #end
+ }
+ #end
+}
+
+#if !macro
+@:build(DocumentClass.build())
+@:keep @:dox(hide) class DocumentClass extends LPTCManager2026 {}
+#else
+class DocumentClass
+{
+ macro public static function build():Array
+ {
+ var classType = Context.getLocalClass().get();
+ var searchTypes = classType;
+
+ while (searchTypes != null)
+ {
+ if (searchTypes.module == "openfl.display.DisplayObject" || searchTypes.module == "flash.display.DisplayObject")
+ {
+ var fields = Context.getBuildFields();
+
+ var method = macro
+ {
+ current.addChild(this);
+ super();
+ dispatchEvent(new openfl.events.Event(openfl.events.Event.ADDED_TO_STAGE, false, false));
+ }
+
+ fields.push({ name: "new", access: [ APublic ], kind: FFun({ args: [ { name: "current", opt: false, type: macro :openfl.display.DisplayObjectContainer, value: null } ], expr: method, params: [], ret: macro :Void }), pos: Context.currentPos() });
+
+ return fields;
+ }
+
+ if (searchTypes.superClass != null)
+ {
+ searchTypes = searchTypes.superClass.t.get();
+ }
+ else
+ {
+ searchTypes = null;
+ }
+ }
+
+ return null;
+ }
+}
+#end
diff --git a/bin/html5/haxe/ManifestResources.hx b/bin/html5/haxe/ManifestResources.hx
new file mode 100644
index 0000000..c04ad68
--- /dev/null
+++ b/bin/html5/haxe/ManifestResources.hx
@@ -0,0 +1,112 @@
+package;
+
+import haxe.io.Bytes;
+import haxe.io.Path;
+import lime.utils.AssetBundle;
+import lime.utils.AssetLibrary;
+import lime.utils.AssetManifest;
+import lime.utils.Assets;
+
+#if sys
+import sys.FileSystem;
+#end
+
+#if disable_preloader_assets
+@:dox(hide) class ManifestResources {
+ public static var preloadLibraries:Array;
+ public static var preloadLibraryNames:Array;
+ public static var rootPath:String;
+
+ public static function init (config:Dynamic):Void {
+ preloadLibraries = new Array ();
+ preloadLibraryNames = new Array ();
+ }
+}
+#else
+@:access(lime.utils.Assets)
+
+
+@:keep @:dox(hide) class ManifestResources {
+
+
+ public static var preloadLibraries:Array;
+ public static var preloadLibraryNames:Array;
+ public static var rootPath:String;
+
+
+ public static function init (config:Dynamic):Void {
+
+ preloadLibraries = new Array ();
+ preloadLibraryNames = new Array ();
+
+ rootPath = null;
+
+ if (config != null && Reflect.hasField (config, "rootPath")) {
+
+ rootPath = Reflect.field (config, "rootPath");
+
+ if(!StringTools.endsWith (rootPath, "/")) {
+
+ rootPath += "/";
+
+ }
+
+ }
+
+ if (rootPath == null) {
+
+ #if (ios || tvos || webassembly)
+ rootPath = "assets/";
+ #elseif android
+ rootPath = "";
+ #elseif (console || sys)
+ rootPath = lime.system.System.applicationDirectory;
+ #else
+ rootPath = "./";
+ #end
+
+ }
+
+ #if (openfl && !flash && !display)
+
+ #end
+
+ var data, manifest, library, bundle;
+
+
+
+
+
+ }
+
+
+}
+
+#if !display
+#if flash
+
+
+
+#elseif (desktop || cpp)
+
+
+
+
+#else
+
+
+
+#end
+
+#if (openfl && !flash)
+
+#if html5
+
+#else
+
+#end
+
+#end
+#end
+
+#end
\ No newline at end of file
diff --git a/bin/html5/haxe/debug.hxml b/bin/html5/haxe/debug.hxml
new file mode 100644
index 0000000..a2e12e9
--- /dev/null
+++ b/bin/html5/haxe/debug.hxml
@@ -0,0 +1,39 @@
+-main ApplicationMain
+--macro lime._internal.macros.DefineMacro.run()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/lime/8,2,3/src
+-D lime=8.2.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-cairngorm/1,0,0/src
+-D feathersui-cairngorm=1.0.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui/1,3,0/src
+-D feathersui=1.3.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/actuate/1,9,0/src
+-D actuate=1.9.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/hxargs/4,0,0
+-D hxargs=4.0.0
+--macro openfl.utils._internal.ExtraParamsMacro.include()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/openfl/9,4,2/src
+-D openfl=9.4.2
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-rpc-services/1,0,3/src
+-D feathersui-rpc-services=1.0.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/amfio/1,0,2/src
+-D amfio=1.0.2
+-cp src
+-D AIR_SDK=/Users/chatmurai/Documents/code/AS3/SDKs/AIR_SDK_32.0
+-D lime-threads
+-D tools=8.2.3
+-D lime-canvas
+-D howlerjs
+-D no-compilation
+-D openfl-html5
+-D disable_preloader_assets=1
+-D lime-webgl
+-D lime-dom
+-D lime-howlerjs
+-D lime-html5
+-D html5
+-D web
+--remap flash:openfl
+-js bin/html5/bin/LPTCManager2026.js
+-cp bin/html5/haxe
+-D html5
+-debug
\ No newline at end of file
diff --git a/bin/html5/haxe/final.hxml b/bin/html5/haxe/final.hxml
new file mode 100644
index 0000000..03bf6ff
--- /dev/null
+++ b/bin/html5/haxe/final.hxml
@@ -0,0 +1,42 @@
+-main ApplicationMain
+--macro lime._internal.macros.DefineMacro.run()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/lime/8,2,3/src
+-D lime=8.2.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-cairngorm/1,0,0/src
+-D feathersui-cairngorm=1.0.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui/1,3,0/src
+-D feathersui=1.3.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/actuate/1,9,0/src
+-D actuate=1.9.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/hxargs/4,0,0
+-D hxargs=4.0.0
+--macro openfl.utils._internal.ExtraParamsMacro.include()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/openfl/9,4,2/src
+-D openfl=9.4.2
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-rpc-services/1,0,3/src
+-D feathersui-rpc-services=1.0.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/amfio/1,0,2/src
+-D amfio=1.0.2
+-cp src
+-D AIR_SDK=/Users/chatmurai/Documents/code/AS3/SDKs/AIR_SDK_32.0
+-D lime-threads
+-D tools=8.2.3
+-D lime-canvas
+-D howlerjs
+-D no-compilation
+-D openfl-html5
+-D disable_preloader_assets=1
+-D lime-webgl
+-D lime-dom
+-D lime-howlerjs
+-D lime-html5
+-D html5
+-D web
+--remap flash:openfl
+-js bin/html5/bin/LPTCManager2026.js
+-cp bin/html5/haxe
+-D html5
+-dce full
+-D final
+-D js-flatten
+-dce full
\ No newline at end of file
diff --git a/bin/html5/haxe/release.hxml b/bin/html5/haxe/release.hxml
new file mode 100644
index 0000000..9b5c78d
--- /dev/null
+++ b/bin/html5/haxe/release.hxml
@@ -0,0 +1,38 @@
+-main ApplicationMain
+--macro lime._internal.macros.DefineMacro.run()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/lime/8,2,3/src
+-D lime=8.2.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-cairngorm/1,0,0/src
+-D feathersui-cairngorm=1.0.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui/1,3,0/src
+-D feathersui=1.3.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/actuate/1,9,0/src
+-D actuate=1.9.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/hxargs/4,0,0
+-D hxargs=4.0.0
+--macro openfl.utils._internal.ExtraParamsMacro.include()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/openfl/9,4,2/src
+-D openfl=9.4.2
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-rpc-services/1,0,3/src
+-D feathersui-rpc-services=1.0.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/amfio/1,0,2/src
+-D amfio=1.0.2
+-cp src
+-D AIR_SDK=/Users/chatmurai/Documents/code/AS3/SDKs/AIR_SDK_32.0
+-D lime-threads
+-D tools=8.2.3
+-D lime-canvas
+-D howlerjs
+-D no-compilation
+-D openfl-html5
+-D disable_preloader_assets=1
+-D lime-webgl
+-D lime-dom
+-D lime-howlerjs
+-D lime-html5
+-D html5
+-D web
+--remap flash:openfl
+-js bin/html5/bin/LPTCManager2026.js
+-cp bin/html5/haxe
+-D html5
\ No newline at end of file
diff --git a/bin/neko/.files b/bin/neko/.files
new file mode 100644
index 0000000..e69de29
diff --git a/bin/neko/bin/LPTCManager2026.app/Contents/Entitlements.plist b/bin/neko/bin/LPTCManager2026.app/Contents/Entitlements.plist
new file mode 100644
index 0000000..0cfed71
--- /dev/null
+++ b/bin/neko/bin/LPTCManager2026.app/Contents/Entitlements.plist
@@ -0,0 +1,8 @@
+
+
+
+
+ com.apple.security.app-sandbox
+
+
+
\ No newline at end of file
diff --git a/bin/neko/bin/LPTCManager2026.app/Contents/Info.plist b/bin/neko/bin/LPTCManager2026.app/Contents/Info.plist
new file mode 100644
index 0000000..def91c9
--- /dev/null
+++ b/bin/neko/bin/LPTCManager2026.app/Contents/Info.plist
@@ -0,0 +1,32 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ English
+ CFBundleExecutable
+ LPTCManager2026
+ CFBundleIconFile
+ icon.icns
+ CFBundleIdentifier
+ com.nekotoro.LPTCManager2026
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ LPTCManager2026
+ CFBundlePackageType
+ APPL
+ CFBundleShortVersionString
+ 1.0.0
+ CFBundleSignature
+ haxe
+ CFBundleVersion
+ 2
+ NSAppleScriptEnabled
+ NO
+ LSApplicationCategoryType
+ public.app-category.games
+ NSHighResolutionCapable
+ True
+
+
diff --git a/bin/neko/bin/LPTCManager2026.app/Contents/MacOS/LPTCManager2026 b/bin/neko/bin/LPTCManager2026.app/Contents/MacOS/LPTCManager2026
new file mode 100755
index 0000000..f0ab83a
Binary files /dev/null and b/bin/neko/bin/LPTCManager2026.app/Contents/MacOS/LPTCManager2026 differ
diff --git a/bin/neko/bin/LPTCManager2026.app/Contents/MacOS/lime.ndll b/bin/neko/bin/LPTCManager2026.app/Contents/MacOS/lime.ndll
new file mode 100644
index 0000000..3742043
Binary files /dev/null and b/bin/neko/bin/LPTCManager2026.app/Contents/MacOS/lime.ndll differ
diff --git a/bin/neko/bin/LPTCManager2026.app/Contents/Resources/icon.icns b/bin/neko/bin/LPTCManager2026.app/Contents/Resources/icon.icns
new file mode 100644
index 0000000..193fac1
Binary files /dev/null and b/bin/neko/bin/LPTCManager2026.app/Contents/Resources/icon.icns differ
diff --git a/bin/neko/bin/MyApplication.app/Contents/Entitlements.plist b/bin/neko/bin/MyApplication.app/Contents/Entitlements.plist
new file mode 100644
index 0000000..0cfed71
--- /dev/null
+++ b/bin/neko/bin/MyApplication.app/Contents/Entitlements.plist
@@ -0,0 +1,8 @@
+
+
+
+
+ com.apple.security.app-sandbox
+
+
+
\ No newline at end of file
diff --git a/bin/neko/bin/MyApplication.app/Contents/Info.plist b/bin/neko/bin/MyApplication.app/Contents/Info.plist
new file mode 100644
index 0000000..53777ab
--- /dev/null
+++ b/bin/neko/bin/MyApplication.app/Contents/Info.plist
@@ -0,0 +1,32 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ English
+ CFBundleExecutable
+ MyApplication
+ CFBundleIconFile
+ icon.icns
+ CFBundleIdentifier
+ com.nekotoro.LPTCManager2026
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ LPTCManager2026
+ CFBundlePackageType
+ APPL
+ CFBundleShortVersionString
+ 1.0.0
+ CFBundleSignature
+ haxe
+ CFBundleVersion
+ 2
+ NSAppleScriptEnabled
+ NO
+ LSApplicationCategoryType
+ public.app-category.games
+ NSHighResolutionCapable
+ True
+
+
diff --git a/bin/neko/bin/MyApplication.app/Contents/MacOS/lime.ndll b/bin/neko/bin/MyApplication.app/Contents/MacOS/lime.ndll
new file mode 100644
index 0000000..3742043
Binary files /dev/null and b/bin/neko/bin/MyApplication.app/Contents/MacOS/lime.ndll differ
diff --git a/bin/neko/haxe/ApplicationMain.hx b/bin/neko/haxe/ApplicationMain.hx
new file mode 100644
index 0000000..647c931
--- /dev/null
+++ b/bin/neko/haxe/ApplicationMain.hx
@@ -0,0 +1,330 @@
+package;
+
+#if macro
+import haxe.macro.Compiler;
+import haxe.macro.Context;
+import haxe.macro.Expr;
+#end
+
+@:access(lime.app.Application)
+@:access(lime.system.System)
+@:access(openfl.display.Stage)
+@:access(openfl.events.UncaughtErrorEvents)
+@:dox(hide)
+class ApplicationMain
+{
+ #if !macro
+ public static function main()
+ {
+ lime.system.System.__registerEntryPoint("LPTCManager2026", create);
+
+ #if (js && html5)
+ #if (munit || (utest && openfl_enable_utest_legacy_mode))
+ lime.system.System.embed("LPTCManager2026", null, 800, 600);
+ #end
+ #else
+ create(null);
+ #end
+ }
+
+ public static function create(config):Void
+ {
+ var app = new openfl.display.Application();
+
+ #if !disable_preloader_assets
+ ManifestResources.init(config);
+ #end
+
+ app.meta["build"] = "2";
+ app.meta["company"] = "Nekotoro";
+ app.meta["file"] = "LPTCManager2026";
+ app.meta["name"] = "LPTCManager2026";
+ app.meta["packageName"] = "com.nekotoro.LPTCManager2026";
+ app.meta["version"] = "1.0.0";
+
+
+
+ #if !flash
+
+ var attributes:lime.ui.WindowAttributes = {
+ allowHighDPI: true,
+ alwaysOnTop: false,
+ borderless: false,
+ // display: 0,
+ element: null,
+ frameRate: 60,
+ #if !web fullscreen: false, #end
+ height: 600,
+ hidden: #if munit true #else false #end,
+ maximized: false,
+ minimized: false,
+ parameters: {},
+ resizable: true,
+ title: "LPTCManager2026",
+ width: 800,
+ x: null,
+ y: null,
+ };
+
+ attributes.context = {
+ antialiasing: 0,
+ background: 16777215,
+ colorDepth: 32,
+ depth: true,
+ hardware: true,
+ stencil: true,
+ type: null,
+ vsync: false
+ };
+
+ if (app.window == null)
+ {
+ if (config != null)
+ {
+ for (field in Reflect.fields(config))
+ {
+ if (Reflect.hasField(attributes, field))
+ {
+ Reflect.setField(attributes, field, Reflect.field(config, field));
+ }
+ else if (Reflect.hasField(attributes.context, field))
+ {
+ Reflect.setField(attributes.context, field, Reflect.field(config, field));
+ }
+ }
+ }
+
+ #if sys
+ lime.system.System.__parseArguments(attributes);
+ #end
+ }
+
+ app.createWindow(attributes);
+
+ #elseif air
+ app.window.title = "LPTCManager2026";
+ #else
+ app.window.context.attributes.background = 16777215;
+ app.window.frameRate = 60;
+ #end
+
+ var preloader = getPreloader();
+ app.preloader.onProgress.add (function(loaded, total)
+ {
+ @:privateAccess preloader.update(loaded, total);
+ });
+ app.preloader.onComplete.add(function()
+ {
+ @:privateAccess preloader.start();
+ });
+
+ preloader.onComplete.add(start.bind((cast app.window:openfl.display.Window).stage));
+
+ #if !disable_preloader_assets
+ for (library in ManifestResources.preloadLibraries)
+ {
+ app.preloader.addLibrary(library);
+ }
+
+ for (name in ManifestResources.preloadLibraryNames)
+ {
+ app.preloader.addLibraryName(name);
+ }
+ #end
+
+ app.preloader.load();
+
+ var result = app.exec();
+
+ #if (sys && !ios && !nodejs && !emscripten)
+ lime.system.System.exit(result);
+ #end
+ }
+
+ public static function start(stage:openfl.display.Stage):Void
+ {
+ #if flash
+ ApplicationMain.getEntryPoint();
+ #else
+ if (stage.__uncaughtErrorEvents.__enabled)
+ {
+ try
+ {
+ ApplicationMain.getEntryPoint();
+
+ stage.dispatchEvent(new openfl.events.Event(openfl.events.Event.RESIZE, false, false));
+
+ if (stage.window.fullscreen)
+ {
+ stage.dispatchEvent(new openfl.events.FullScreenEvent(openfl.events.FullScreenEvent.FULL_SCREEN, false, false, true, true));
+ }
+ }
+ catch (e:Dynamic)
+ {
+ #if !display
+ stage.__handleError(e);
+ #end
+ }
+ }
+ else
+ {
+ ApplicationMain.getEntryPoint();
+
+ stage.dispatchEvent(new openfl.events.Event(openfl.events.Event.RESIZE, false, false));
+
+ if (stage.window.fullscreen)
+ {
+ stage.dispatchEvent(new openfl.events.FullScreenEvent(openfl.events.FullScreenEvent.FULL_SCREEN, false, false, true, true));
+ }
+ }
+ #end
+ }
+ #end
+
+ macro public static function getEntryPoint()
+ {
+ var hasMain = false;
+
+ switch (Context.follow(Context.getType("LPTCManager2026")))
+ {
+ case TInst(t, params):
+
+ var type = t.get();
+ for (method in type.statics.get())
+ {
+ if (method.name == "main")
+ {
+ hasMain = true;
+ break;
+ }
+ }
+
+ if (hasMain)
+ {
+ return Context.parse("@:privateAccess LPTCManager2026.main()", Context.currentPos());
+ }
+ else if (type.constructor != null)
+ {
+ return macro
+ {
+ var current = stage.getChildAt (0);
+
+ if (current == null || !(current is openfl.display.DisplayObjectContainer))
+ {
+ current = new openfl.display.MovieClip();
+ stage.addChild(current);
+ }
+
+ new DocumentClass(cast current);
+ };
+ }
+ else
+ {
+ Context.fatalError("Main class \"LPTCManager2026\" has neither a static main nor a constructor.", Context.currentPos());
+ }
+
+ default:
+
+ Context.fatalError("Main class \"LPTCManager2026\" isn't a class.", Context.currentPos());
+ }
+
+ return null;
+ }
+
+ macro public static function getPreloader()
+ {
+
+ return macro
+ {
+ new openfl.display.Preloader(new openfl.display.Preloader.DefaultPreloader());
+ };
+
+ }
+
+ #if !macro
+ @:noCompletion @:dox(hide) public static function __init__()
+ {
+ var init = lime.app.Application;
+
+ #if neko
+ // Copy from https://github.com/HaxeFoundation/haxe/blob/development/std/neko/_std/Sys.hx#L164
+ // since Sys.programPath () isn't available in __init__
+ var sys_program_path = {
+ var m = neko.vm.Module.local().name;
+ try
+ {
+ sys.FileSystem.fullPath(m);
+ }
+ catch (e:Dynamic)
+ {
+ // maybe the neko module name was supplied without .n extension...
+ if (!StringTools.endsWith(m, ".n"))
+ {
+ try
+ {
+ sys.FileSystem.fullPath(m + ".n");
+ }
+ catch (e:Dynamic)
+ {
+ m;
+ }
+ }
+ else
+ {
+ m;
+ }
+ }
+ };
+
+ var loader = new neko.vm.Loader(untyped $loader);
+ loader.addPath(haxe.io.Path.directory(#if (haxe_ver >= 3.3) sys_program_path #else Sys.executablePath() #end));
+ loader.addPath("./");
+ loader.addPath("@executable_path/");
+ #end
+ }
+ #end
+}
+
+#if !macro
+@:build(DocumentClass.build())
+@:keep @:dox(hide) class DocumentClass extends LPTCManager2026 {}
+#else
+class DocumentClass
+{
+ macro public static function build():Array
+ {
+ var classType = Context.getLocalClass().get();
+ var searchTypes = classType;
+
+ while (searchTypes != null)
+ {
+ if (searchTypes.module == "openfl.display.DisplayObject" || searchTypes.module == "flash.display.DisplayObject")
+ {
+ var fields = Context.getBuildFields();
+
+ var method = macro
+ {
+ current.addChild(this);
+ super();
+ dispatchEvent(new openfl.events.Event(openfl.events.Event.ADDED_TO_STAGE, false, false));
+ }
+
+ fields.push({ name: "new", access: [ APublic ], kind: FFun({ args: [ { name: "current", opt: false, type: macro :openfl.display.DisplayObjectContainer, value: null } ], expr: method, params: [], ret: macro :Void }), pos: Context.currentPos() });
+
+ return fields;
+ }
+
+ if (searchTypes.superClass != null)
+ {
+ searchTypes = searchTypes.superClass.t.get();
+ }
+ else
+ {
+ searchTypes = null;
+ }
+ }
+
+ return null;
+ }
+}
+#end
diff --git a/bin/neko/haxe/ManifestResources.hx b/bin/neko/haxe/ManifestResources.hx
new file mode 100644
index 0000000..c04ad68
--- /dev/null
+++ b/bin/neko/haxe/ManifestResources.hx
@@ -0,0 +1,112 @@
+package;
+
+import haxe.io.Bytes;
+import haxe.io.Path;
+import lime.utils.AssetBundle;
+import lime.utils.AssetLibrary;
+import lime.utils.AssetManifest;
+import lime.utils.Assets;
+
+#if sys
+import sys.FileSystem;
+#end
+
+#if disable_preloader_assets
+@:dox(hide) class ManifestResources {
+ public static var preloadLibraries:Array;
+ public static var preloadLibraryNames:Array;
+ public static var rootPath:String;
+
+ public static function init (config:Dynamic):Void {
+ preloadLibraries = new Array ();
+ preloadLibraryNames = new Array ();
+ }
+}
+#else
+@:access(lime.utils.Assets)
+
+
+@:keep @:dox(hide) class ManifestResources {
+
+
+ public static var preloadLibraries:Array;
+ public static var preloadLibraryNames:Array;
+ public static var rootPath:String;
+
+
+ public static function init (config:Dynamic):Void {
+
+ preloadLibraries = new Array ();
+ preloadLibraryNames = new Array ();
+
+ rootPath = null;
+
+ if (config != null && Reflect.hasField (config, "rootPath")) {
+
+ rootPath = Reflect.field (config, "rootPath");
+
+ if(!StringTools.endsWith (rootPath, "/")) {
+
+ rootPath += "/";
+
+ }
+
+ }
+
+ if (rootPath == null) {
+
+ #if (ios || tvos || webassembly)
+ rootPath = "assets/";
+ #elseif android
+ rootPath = "";
+ #elseif (console || sys)
+ rootPath = lime.system.System.applicationDirectory;
+ #else
+ rootPath = "./";
+ #end
+
+ }
+
+ #if (openfl && !flash && !display)
+
+ #end
+
+ var data, manifest, library, bundle;
+
+
+
+
+
+ }
+
+
+}
+
+#if !display
+#if flash
+
+
+
+#elseif (desktop || cpp)
+
+
+
+
+#else
+
+
+
+#end
+
+#if (openfl && !flash)
+
+#if html5
+
+#else
+
+#end
+
+#end
+#end
+
+#end
\ No newline at end of file
diff --git a/bin/neko/haxe/debug.hxml b/bin/neko/haxe/debug.hxml
new file mode 100644
index 0000000..2c3edde
--- /dev/null
+++ b/bin/neko/haxe/debug.hxml
@@ -0,0 +1,43 @@
+-main ApplicationMain
+--macro lime._internal.macros.DefineMacro.run()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/lime/8,2,3/src
+-D lime=8.2.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-cairngorm/1,0,0/src
+-D feathersui-cairngorm=1.0.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui/1,3,0/src
+-D feathersui=1.3.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/actuate/1,9,0/src
+-D actuate=1.9.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/hxargs/4,0,0
+-D hxargs=4.0.0
+--macro openfl.utils._internal.ExtraParamsMacro.include()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/openfl/9,4,2/src
+-D openfl=9.4.2
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-rpc-services/1,0,3/src
+-D feathersui-rpc-services=1.0.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/amfio/1,0,2/src
+-D amfio=1.0.2
+-cp src
+-D AIR_SDK=/Users/chatmurai/Documents/code/AS3/SDKs/AIR_SDK_32.0
+-D lime-openal
+-D native
+-D lime-curl
+-D openfl-native
+-D lime-harfbuzz
+-D lime-threads
+-D tools=8.2.3
+-D lime-cairo
+-D lime-opengl
+-D no-compilation
+-D disable_preloader_assets=1
+-D lime-native
+-D lime-vorbis
+-D MACOSX_DEPLOYMENT_TARGET=10.9
+-D lime-cffi
+-D mac
+-D desktop
+--remap flash:openfl
+-cp bin/neko/haxe
+-neko bin/neko/obj/ApplicationMain.n
+--macro keep("LPTCManager2026")
+-debug
\ No newline at end of file
diff --git a/bin/neko/haxe/final.hxml b/bin/neko/haxe/final.hxml
new file mode 100644
index 0000000..bf2b012
--- /dev/null
+++ b/bin/neko/haxe/final.hxml
@@ -0,0 +1,43 @@
+-main ApplicationMain
+--macro lime._internal.macros.DefineMacro.run()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/lime/8,2,3/src
+-D lime=8.2.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-cairngorm/1,0,0/src
+-D feathersui-cairngorm=1.0.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui/1,3,0/src
+-D feathersui=1.3.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/actuate/1,9,0/src
+-D actuate=1.9.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/hxargs/4,0,0
+-D hxargs=4.0.0
+--macro openfl.utils._internal.ExtraParamsMacro.include()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/openfl/9,4,2/src
+-D openfl=9.4.2
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-rpc-services/1,0,3/src
+-D feathersui-rpc-services=1.0.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/amfio/1,0,2/src
+-D amfio=1.0.2
+-cp src
+-D AIR_SDK=/Users/chatmurai/Documents/code/AS3/SDKs/AIR_SDK_32.0
+-D lime-openal
+-D native
+-D lime-curl
+-D openfl-native
+-D lime-harfbuzz
+-D lime-threads
+-D tools=8.2.3
+-D lime-cairo
+-D lime-opengl
+-D no-compilation
+-D disable_preloader_assets=1
+-D lime-native
+-D lime-vorbis
+-D MACOSX_DEPLOYMENT_TARGET=10.9
+-D lime-cffi
+-D mac
+-D desktop
+--remap flash:openfl
+-cp bin/neko/haxe
+-neko bin/neko/obj/ApplicationMain.n
+--macro keep("LPTCManager2026")
+-D final
\ No newline at end of file
diff --git a/bin/neko/haxe/release.hxml b/bin/neko/haxe/release.hxml
new file mode 100644
index 0000000..78b30ef
--- /dev/null
+++ b/bin/neko/haxe/release.hxml
@@ -0,0 +1,42 @@
+-main ApplicationMain
+--macro lime._internal.macros.DefineMacro.run()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/lime/8,2,3/src
+-D lime=8.2.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-cairngorm/1,0,0/src
+-D feathersui-cairngorm=1.0.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui/1,3,0/src
+-D feathersui=1.3.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/actuate/1,9,0/src
+-D actuate=1.9.0
+-cp /Users/chatmurai/Documents/code/Haxe/lib/hxargs/4,0,0
+-D hxargs=4.0.0
+--macro openfl.utils._internal.ExtraParamsMacro.include()
+-cp /Users/chatmurai/Documents/code/Haxe/lib/openfl/9,4,2/src
+-D openfl=9.4.2
+-cp /Users/chatmurai/Documents/code/Haxe/lib/feathersui-rpc-services/1,0,3/src
+-D feathersui-rpc-services=1.0.3
+-cp /Users/chatmurai/Documents/code/Haxe/lib/amfio/1,0,2/src
+-D amfio=1.0.2
+-cp src
+-D AIR_SDK=/Users/chatmurai/Documents/code/AS3/SDKs/AIR_SDK_32.0
+-D lime-openal
+-D native
+-D lime-curl
+-D openfl-native
+-D lime-harfbuzz
+-D lime-threads
+-D tools=8.2.3
+-D lime-cairo
+-D lime-opengl
+-D no-compilation
+-D disable_preloader_assets=1
+-D lime-native
+-D lime-vorbis
+-D MACOSX_DEPLOYMENT_TARGET=10.9
+-D lime-cffi
+-D mac
+-D desktop
+--remap flash:openfl
+-cp bin/neko/haxe
+-neko bin/neko/obj/ApplicationMain.n
+--macro keep("LPTCManager2026")
\ No newline at end of file
diff --git a/bin/neko/obj/ApplicationMain b/bin/neko/obj/ApplicationMain
new file mode 100755
index 0000000..f0ab83a
Binary files /dev/null and b/bin/neko/obj/ApplicationMain differ
diff --git a/bin/neko/obj/ApplicationMain.n b/bin/neko/obj/ApplicationMain.n
new file mode 100644
index 0000000..7a856a4
Binary files /dev/null and b/bin/neko/obj/ApplicationMain.n differ
diff --git a/project.xml b/project.xml
index 0cd30de..4cf87e8 100644
--- a/project.xml
+++ b/project.xml
@@ -1,17 +1,23 @@
-
-
-
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/LPTCManager2026.hx b/src/LPTCManager2026.hx
index 7dc36d3..9a16de5 100644
--- a/src/LPTCManager2026.hx
+++ b/src/LPTCManager2026.hx
@@ -1,12 +1,62 @@
+import components.NekoRectangle;
+import openfl.display.Shape;
+import openfl.display.Graphics;
+import feathers.layout.AnchorLayoutData;
+import feathers.layout.AnchorLayout;
+import feathers.controls.LayoutGroup;
+import openfl.display.Sprite;
+import feathers.controls.Panel;
+import feathers.controls.navigators.StackNavigator;
import feathers.controls.Application;
import feathers.controls.Label;
class LPTCManager2026 extends Application {
+ private var mainPanel:Panel;
+
+ // private var nav:StackNavigator;
+
public function new() {
super();
-
- var label = new Label();
- label.text = "Hello World";
- addChild(label);
}
-}
\ No newline at end of file
+
+ override private function initialize():Void {
+ super.initialize();
+
+ stage.displayState = NORMAL;
+ stage.scaleMode = NO_SCALE;
+
+ mainPanel = new Panel();
+ mainPanel.autoSizeMode = STAGE;
+ mainPanel.backgroundSkin = new NekoRectangle(0x93E9CB);
+
+ var header = new LayoutGroup();
+ header.variant = LayoutGroup.VARIANT_TOOL_BAR;
+ header.layout = new AnchorLayout();
+
+ var title = new Label();
+ title.text = "Header";
+ title.variant = Label.VARIANT_HEADING;
+ title.layoutData = AnchorLayoutData.center();
+ header.addChild(title);
+
+ mainPanel.header = header;
+
+ var footer = new LayoutGroup();
+ footer.variant = LayoutGroup.VARIANT_TOOL_BAR;
+ footer.layout = new AnchorLayout();
+
+ var title = new Label();
+ title.text = "Footer";
+ title.variant = Label.VARIANT_HEADING;
+ title.layoutData = AnchorLayoutData.center();
+ footer.addChild(title);
+
+ mainPanel.footer = footer;
+
+ addChild(mainPanel);
+
+ // nav = new StackNavigator();
+
+ trace(this, "--> initialize()");
+ }
+}
diff --git a/src/components/NekoRectangle.hx b/src/components/NekoRectangle.hx
new file mode 100644
index 0000000..2fbd8ee
--- /dev/null
+++ b/src/components/NekoRectangle.hx
@@ -0,0 +1,13 @@
+package components;
+
+import openfl.display.Shape;
+
+class NekoRectangle extends Shape {
+ public function new(pColor:Int = 0xFF0000, pX:Int = 0, pY:Int = 0, pWidth:Int = 100, pHeight:Int = 100) {
+ super();
+
+ graphics.beginFill(pColor);
+ graphics.drawRect(pX, pY, pWidth, pHeight);
+ graphics.endFill();
+ }
+}
\ No newline at end of file
diff --git a/src/view/UserLogin.hx b/src/view/UserLogin.hx
new file mode 100644
index 0000000..b4a23ef
--- /dev/null
+++ b/src/view/UserLogin.hx
@@ -0,0 +1,13 @@
+package view;
+
+import feathers.controls.ScrollContainer;
+
+class UserLogin extends ScrollContainer {
+ public function new() {
+ super();
+ }
+
+ override private function initialize():Void {
+ super.initialize();
+ }
+}
\ No newline at end of file