From a0a7ea20da16d0a6fe47552b941bd96182ff6b21 Mon Sep 17 00:00:00 2001 From: Snider Date: Thu, 15 Jan 2026 22:47:11 +0000 Subject: [PATCH] feat: add autogenerated TypeScript definitions and service interfaces --- .../frontend/bindings/core-gui/index.ts | 7 + .../frontend/bindings/core-gui/mcpbridge.ts | 57 + .../Snider/Core/pkg/config/index.ts | 7 + .../Snider/Core/pkg/config/service.ts | 226 ++ .../github.com/Snider/Core/pkg/core/index.ts | 12 + .../github.com/Snider/Core/pkg/core/models.ts | 96 + .../github.com/Snider/Core/pkg/crypt/index.ts | 11 + .../Snider/Core/pkg/crypt/models.ts | 16 + .../Snider/Core/pkg/crypt/service.ts | 169 ++ .../Snider/Core/pkg/display/index.ts | 34 + .../Snider/Core/pkg/display/models.ts | 641 ++++++ .../Snider/Core/pkg/display/service.ts | 618 +++++ .../github.com/Snider/Core/pkg/docs/index.ts | 7 + .../Snider/Core/pkg/docs/service.ts | 37 + .../github.com/Snider/Core/pkg/help/index.ts | 12 + .../github.com/Snider/Core/pkg/help/models.ts | 20 + .../Snider/Core/pkg/help/service.ts | 48 + .../github.com/Snider/Core/pkg/i18n/index.ts | 7 + .../Snider/Core/pkg/i18n/service.ts | 65 + .../github.com/Snider/Core/pkg/ide/index.ts | 13 + .../github.com/Snider/Core/pkg/ide/models.ts | 121 + .../github.com/Snider/Core/pkg/ide/service.ts | 130 ++ .../github.com/Snider/Core/pkg/mcp/index.ts | 6 + .../github.com/Snider/Core/pkg/mcp/models.ts | 26 + .../Snider/Core/pkg/module/index.ts | 23 + .../Snider/Core/pkg/module/models.ts | 577 +++++ .../Snider/Core/pkg/module/service.ts | 142 ++ .../Snider/Core/pkg/plugin/index.ts | 15 + .../Snider/Core/pkg/plugin/models.ts | 66 + .../Snider/Core/pkg/plugin/router.ts | 100 + .../Snider/Core/pkg/webview/index.ts | 6 + .../Snider/Core/pkg/webview/models.ts | 26 + .../Snider/Core/pkg/workspace/index.ts | 11 + .../Snider/Core/pkg/workspace/models.ts | 34 + .../Snider/Core/pkg/workspace/service.ts | 96 + .../Snider/Enchantrix/pkg/crypt/index.ts | 6 + .../Snider/Enchantrix/pkg/crypt/models.ts | 41 + .../github.com/gin-gonic/gin/index.ts | 11 + .../github.com/gin-gonic/gin/models.ts | 220 ++ .../github.com/gin-gonic/gin/render/index.ts | 6 + .../github.com/gin-gonic/gin/render/models.ts | 11 + .../bindings/github.com/leaanthony/u/index.ts | 7 + .../github.com/leaanthony/u/models.ts | 40 + .../nicksnyder/go-i18n/v2/i18n/index.ts | 6 + .../nicksnyder/go-i18n/v2/i18n/models.ts | 30 + .../wailsapp/wails/v3/internal/eventcreate.ts | 9 + .../wailsapp/wails/v3/internal/eventdata.d.ts | 2 + .../wails/v3/pkg/application/index.ts | 47 + .../wails/v3/pkg/application/models.ts | 2051 +++++++++++++++++ .../wailsapp/wails/v3/pkg/events/index.ts | 6 + .../wailsapp/wails/v3/pkg/events/models.ts | 8 + .../v3/pkg/services/notifications/index.ts | 14 + .../v3/pkg/services/notifications/models.ts | 127 + .../notifications/notificationservice.ts | 62 + .../frontend/bindings/html/template/index.ts | 6 + .../frontend/bindings/html/template/models.ts | 12 + cmd/core-gui/frontend/bindings/io/index.ts | 6 + cmd/core-gui/frontend/bindings/io/models.ts | 19 + .../frontend/bindings/log/slog/index.ts | 6 + .../frontend/bindings/log/slog/models.ts | 31 + .../frontend/bindings/net/http/index.ts | 6 + .../frontend/bindings/net/http/models.ts | 34 + .../frontend/bindings/text/template/index.ts | 6 + .../frontend/bindings/text/template/models.ts | 24 + 64 files changed, 6336 insertions(+) create mode 100644 cmd/core-gui/frontend/bindings/core-gui/index.ts create mode 100644 cmd/core-gui/frontend/bindings/core-gui/mcpbridge.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/config/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/config/service.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/core/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/core/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/crypt/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/crypt/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/crypt/service.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/display/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/display/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/display/service.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/docs/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/docs/service.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/help/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/help/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/help/service.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/i18n/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/i18n/service.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/ide/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/ide/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/ide/service.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/mcp/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/mcp/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/module/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/module/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/module/service.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/plugin/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/plugin/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/plugin/router.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/webview/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/webview/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/workspace/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/workspace/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/workspace/service.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Enchantrix/pkg/crypt/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/Snider/Enchantrix/pkg/crypt/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/render/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/render/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/leaanthony/u/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/leaanthony/u/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/nicksnyder/go-i18n/v2/i18n/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/nicksnyder/go-i18n/v2/i18n/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/internal/eventcreate.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/internal/eventdata.d.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/application/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/application/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/events/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/events/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/services/notifications/index.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/services/notifications/models.ts create mode 100644 cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/services/notifications/notificationservice.ts create mode 100644 cmd/core-gui/frontend/bindings/html/template/index.ts create mode 100644 cmd/core-gui/frontend/bindings/html/template/models.ts create mode 100644 cmd/core-gui/frontend/bindings/io/index.ts create mode 100644 cmd/core-gui/frontend/bindings/io/models.ts create mode 100644 cmd/core-gui/frontend/bindings/log/slog/index.ts create mode 100644 cmd/core-gui/frontend/bindings/log/slog/models.ts create mode 100644 cmd/core-gui/frontend/bindings/net/http/index.ts create mode 100644 cmd/core-gui/frontend/bindings/net/http/models.ts create mode 100644 cmd/core-gui/frontend/bindings/text/template/index.ts create mode 100644 cmd/core-gui/frontend/bindings/text/template/models.ts diff --git a/cmd/core-gui/frontend/bindings/core-gui/index.ts b/cmd/core-gui/frontend/bindings/core-gui/index.ts new file mode 100644 index 00000000..6ed5d059 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/core-gui/index.ts @@ -0,0 +1,7 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +import * as MCPBridge from "./mcpbridge.js"; +export { + MCPBridge +}; diff --git a/cmd/core-gui/frontend/bindings/core-gui/mcpbridge.ts b/cmd/core-gui/frontend/bindings/core-gui/mcpbridge.ts new file mode 100644 index 00000000..bf5209e7 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/core-gui/mcpbridge.ts @@ -0,0 +1,57 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +/** + * MCPBridge wires together MCP, WebView, Display and WebSocket services + * and starts the MCP HTTP server after Wails initializes. + * @module + */ + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as display$0 from "../github.com/Snider/Core/pkg/display/models.js"; +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as mcp$0 from "../github.com/Snider/Core/pkg/mcp/models.js"; +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as webview$0 from "../github.com/Snider/Core/pkg/webview/models.js"; + +/** + * GetDisplay returns the Display service. + */ +export function GetDisplay(): $CancellablePromise { + return $Call.ByID(3763799861).then(($result: any) => { + return $$createType1($result); + }); +} + +/** + * GetMCPService returns the MCP service for direct access. + */ +export function GetMCPService(): $CancellablePromise { + return $Call.ByID(4133944486).then(($result: any) => { + return $$createType3($result); + }); +} + +/** + * GetWebView returns the WebView service. + */ +export function GetWebView(): $CancellablePromise { + return $Call.ByID(903939500).then(($result: any) => { + return $$createType5($result); + }); +} + +// Private type creation functions +const $$createType0 = display$0.Service.createFrom; +const $$createType1 = $Create.Nullable($$createType0); +const $$createType2 = mcp$0.Service.createFrom; +const $$createType3 = $Create.Nullable($$createType2); +const $$createType4 = webview$0.Service.createFrom; +const $$createType5 = $Create.Nullable($$createType4); diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/config/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/config/index.ts new file mode 100644 index 00000000..fd900b4c --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/config/index.ts @@ -0,0 +1,7 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +import * as Service from "./service.js"; +export { + Service +}; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/config/service.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/config/service.ts new file mode 100644 index 00000000..0b1168be --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/config/service.ts @@ -0,0 +1,226 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +/** + * Service provides access to the application's configuration. + * It handles loading, saving, and providing access to configuration values, + * abstracting away the details of file I/O and data serialization. + * The Service is designed to be a central point for all configuration-related + * operations within the application. + * + * The fields of the Service struct are automatically saved to and loaded from + * a JSON configuration file. The `json:"-"` tag on ServiceRuntime prevents + * it from being serialized. + * @module + */ + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as core$0 from "../core/models.js"; + +/** + * Config returns the registered Config service from the core application. + * This is a convenience method for accessing the application's configuration. + */ +export function Config(): $CancellablePromise { + return $Call.ByID(80156326); +} + +/** + * Core returns the central core instance, providing access to all registered services. + */ +export function Core(): $CancellablePromise { + return $Call.ByID(1678901799).then(($result: any) => { + return $$createType1($result); + }); +} + +/** + * DisableFeature disables a feature by removing it from the features list. + * If the feature is not enabled, this is a no-op. + * + * Example: + * + * err := cfg.DisableFeature("dark_mode") + * if err != nil { + * log.Printf("Failed to disable feature: %v", err) + * } + */ +export function DisableFeature(feature: string): $CancellablePromise { + return $Call.ByID(796720498, feature); +} + +/** + * EnableFeature enables a feature by adding it to the features list. + * If the feature is already enabled, this is a no-op. + * + * Example: + * + * err := cfg.EnableFeature("dark_mode") + * if err != nil { + * log.Printf("Failed to enable feature: %v", err) + * } + */ +export function EnableFeature(feature: string): $CancellablePromise { + return $Call.ByID(953595547, feature); +} + +/** + * Get retrieves a configuration value by its key. The key corresponds to the + * JSON tag of a field in the Service struct. The retrieved value is stored in + * the `out` parameter, which must be a non-nil pointer to a variable of the + * correct type. + * + * Example: + * + * var currentLanguage string + * err := cfg.Get("language", ¤tLanguage) + * if err != nil { + * log.Printf("Could not retrieve language setting: %v", err) + * } + * fmt.Println("Current language is:", currentLanguage) + */ +export function Get(key: string, out: any): $CancellablePromise { + return $Call.ByID(1987004372, key, out); +} + +/** + * HandleIPCEvents processes IPC messages for the config service. + */ +export function HandleIPCEvents(c: core$0.Core | null, msg: core$0.Message): $CancellablePromise { + return $Call.ByID(1015502349, c, msg); +} + +/** + * IsFeatureEnabled checks if a feature is enabled. + * + * Example: + * + * if cfg.IsFeatureEnabled("dark_mode") { + * // Apply dark mode styles + * } + */ +export function IsFeatureEnabled(feature: string): $CancellablePromise { + return $Call.ByID(1495993163, feature); +} + +/** + * LoadKeyValues loads a map of key-value pairs from a file in the config + * directory. The file format is determined by the extension of the `key` + * parameter. This allows for easy retrieval of data stored in various formats. + * + * Example: + * + * dbConfig, err := cfg.LoadKeyValues("database.yml") + * if err != nil { + * log.Printf("Error loading database config: %v", err) + * } + * port, ok := dbConfig["port"].(int) + * // ... + */ +export function LoadKeyValues(key: string): $CancellablePromise<{ [_: string]: any }> { + return $Call.ByID(1235871433, key).then(($result: any) => { + return $$createType2($result); + }); +} + +/** + * LoadStruct loads an arbitrary struct from a JSON file in the config directory. + * The `key` parameter specifies the filename (without the .json extension). The + * loaded data is unmarshaled into the `data` parameter, which must be a + * non-nil pointer to a struct. + * + * Example: + * + * var prefs UserPreferences + * err := cfg.LoadStruct("user_prefs", &prefs) + * if err != nil { + * log.Printf("Error loading user preferences: %v", err) + * } + * fmt.Printf("User theme is: %s", prefs.Theme) + */ +export function LoadStruct(key: string, data: any): $CancellablePromise { + return $Call.ByID(2823566133, key, data); +} + +/** + * Save writes the current configuration to a JSON file. The location of the file + * is determined by the ConfigPath field of the Service struct. This method is + * typically called automatically by Set, but can be used to explicitly save + * changes. + * + * Example: + * + * err := cfg.Save() + * if err != nil { + * log.Printf("Error saving configuration: %v", err) + * } + */ +export function Save(): $CancellablePromise { + return $Call.ByID(1923338053); +} + +/** + * SaveKeyValues saves a map of key-value pairs to a file in the config + * directory. The file format is determined by the extension of the `key` + * parameter. This method is a convenient way to store structured data in a + * format of choice. + * + * Example: + * + * data := map[string]interface{}{"host": "localhost", "port": 8080} + * err := cfg.SaveKeyValues("database.yml", data) + * if err != nil { + * log.Printf("Error saving database config: %v", err) + * } + */ +export function SaveKeyValues(key: string, data: { [_: string]: any }): $CancellablePromise { + return $Call.ByID(2830367426, key, data); +} + +/** + * SaveStruct saves an arbitrary struct to a JSON file in the config directory. + * This is useful for storing complex data that is not part of the main + * configuration. The `key` parameter is used as the filename (with a .json + * extension). + * + * Example: + * + * type UserPreferences struct { + * Theme string `json:"theme"` + * Notifications bool `json:"notifications"` + * } + * prefs := UserPreferences{Theme: "dark", Notifications: true} + * err := cfg.SaveStruct("user_prefs", prefs) + * if err != nil { + * log.Printf("Error saving user preferences: %v", err) + * } + */ +export function SaveStruct(key: string, data: any): $CancellablePromise { + return $Call.ByID(2819770048, key, data); +} + +/** + * Set updates a configuration value and saves the change to the configuration + * file. The key corresponds to the JSON tag of a field in the Service struct. + * The provided value `v` must be of a type that is assignable to the field. + * + * Example: + * + * err := cfg.Set("default_route", "/home") + * if err != nil { + * log.Printf("Failed to set default route: %v", err) + * } + */ +export function Set(key: string, v: any): $CancellablePromise { + return $Call.ByID(2438166024, key, v); +} + +// Private type creation functions +const $$createType0 = core$0.Core.createFrom; +const $$createType1 = $Create.Nullable($$createType0); +const $$createType2 = $Create.Map($Create.Any, $Create.Any); diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/core/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/core/index.ts new file mode 100644 index 00000000..f82fcea5 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/core/index.ts @@ -0,0 +1,12 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export { + Core, + Features +} from "./models.js"; + +export type { + Config, + Message +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/core/models.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/core/models.ts new file mode 100644 index 00000000..5eb08972 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/core/models.ts @@ -0,0 +1,96 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as application$0 from "../../../../wailsapp/wails/v3/pkg/application/models.js"; + +/** + * Config provides access to application configuration. + */ +export type Config = any; + +/** + * Core is the central application object that manages services, assets, and communication. + */ +export class Core { + "App": application$0.App | null; + "Features": Features | null; + + /** Creates a new Core instance. */ + constructor($$source: Partial = {}) { + if (!("App" in $$source)) { + this["App"] = null; + } + if (!("Features" in $$source)) { + this["Features"] = null; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new Core instance from a string or object. + */ + static createFrom($$source: any = {}): Core { + const $$createField0_0 = $$createType1; + const $$createField1_0 = $$createType3; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("App" in $$parsedSource) { + $$parsedSource["App"] = $$createField0_0($$parsedSource["App"]); + } + if ("Features" in $$parsedSource) { + $$parsedSource["Features"] = $$createField1_0($$parsedSource["Features"]); + } + return new Core($$parsedSource as Partial); + } +} + +/** + * Features provides a way to check if a feature is enabled. + * This is used for feature flagging and conditional logic. + */ +export class Features { + /** + * Flags is a list of enabled feature flags. + */ + "Flags": string[]; + + /** Creates a new Features instance. */ + constructor($$source: Partial = {}) { + if (!("Flags" in $$source)) { + this["Flags"] = []; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new Features instance from a string or object. + */ + static createFrom($$source: any = {}): Features { + const $$createField0_0 = $$createType4; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("Flags" in $$parsedSource) { + $$parsedSource["Flags"] = $$createField0_0($$parsedSource["Flags"]); + } + return new Features($$parsedSource as Partial); + } +} + +/** + * Message is the interface for all messages that can be sent through the Core's IPC system. + * Any struct can be a message, allowing for structured data to be passed between services. + */ +export type Message = any; + +// Private type creation functions +const $$createType0 = application$0.App.createFrom; +const $$createType1 = $Create.Nullable($$createType0); +const $$createType2 = Features.createFrom; +const $$createType3 = $Create.Nullable($$createType2); +const $$createType4 = $Create.Array($Create.Any); diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/crypt/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/crypt/index.ts new file mode 100644 index 00000000..17c9e390 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/crypt/index.ts @@ -0,0 +1,11 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +import * as Service from "./service.js"; +export { + Service +}; + +export type { + HashType +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/crypt/models.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/crypt/models.ts new file mode 100644 index 00000000..b40f9581 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/crypt/models.ts @@ -0,0 +1,16 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as crypt$0 from "../../../Enchantrix/pkg/crypt/models.js"; + +/** + * HashType defines the supported hashing algorithms. + * Re-exported from Enchantrix for convenience. + */ +export type HashType = crypt$0.HashType; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/crypt/service.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/crypt/service.ts new file mode 100644 index 00000000..c313954a --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/crypt/service.ts @@ -0,0 +1,169 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +/** + * Service provides cryptographic functions to the application. + * It delegates to Enchantrix for all cryptographic operations. + * @module + */ + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as core$0 from "../core/models.js"; +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as io$0 from "../../../../../io/models.js"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as $models from "./models.js"; + +/** + * Config returns the registered Config service from the core application. + * This is a convenience method for accessing the application's configuration. + */ +export function Config(): $CancellablePromise { + return $Call.ByID(4086601246); +} + +/** + * Core returns the central core instance, providing access to all registered services. + */ +export function Core(): $CancellablePromise { + return $Call.ByID(81428095).then(($result: any) => { + return $$createType1($result); + }); +} + +/** + * DecryptPGP decrypts a PGP message. + * Note: Enchantrix does not support passphrase-protected keys for decryption. + */ +export function DecryptPGP(privateKey: string, message: string): $CancellablePromise { + return $Call.ByID(583706276, privateKey, message); +} + +/** + * DecryptRSA decrypts data using an RSA private key. + * Takes PEM-encoded private key and ciphertext. + */ +export function DecryptRSA(privateKeyPEM: string, ciphertext: string): $CancellablePromise { + return $Call.ByID(1345539309, privateKeyPEM, ciphertext); +} + +/** + * EncryptPGP encrypts data for a recipient and writes to the provided writer. + */ +export function EncryptPGP(writer: io$0.Writer, recipientPublicKey: string, data: string): $CancellablePromise { + return $Call.ByID(2890283020, writer, recipientPublicKey, data); +} + +/** + * EncryptPGPToString encrypts data for a recipient and returns the ciphertext. + */ +export function EncryptPGPToString(recipientPublicKey: string, data: string): $CancellablePromise { + return $Call.ByID(165721080, recipientPublicKey, data); +} + +/** + * EncryptRSA encrypts data using an RSA public key. + * Takes PEM-encoded public key and returns base64-encoded ciphertext. + */ +export function EncryptRSA(publicKeyPEM: string, plaintext: string): $CancellablePromise { + return $Call.ByID(2625148021, publicKeyPEM, plaintext); +} + +/** + * Fletcher16 computes the Fletcher-16 checksum. + */ +export function Fletcher16(payload: string): $CancellablePromise { + return $Call.ByID(1946934332, payload); +} + +/** + * Fletcher32 computes the Fletcher-32 checksum. + */ +export function Fletcher32(payload: string): $CancellablePromise { + return $Call.ByID(134657290, payload); +} + +/** + * Fletcher64 computes the Fletcher-64 checksum. + */ +export function Fletcher64(payload: string): $CancellablePromise { + return $Call.ByID(4160741397, payload); +} + +/** + * GeneratePGPKeyPair generates a PGP key pair. + * Note: Enchantrix PGP keys are not passphrase-protected. The comment parameter + * is used instead of passphrase for key metadata. + */ +export function GeneratePGPKeyPair(name: string, email: string, comment: string): $CancellablePromise<[string, string]> { + return $Call.ByID(404306973, name, email, comment); +} + +/** + * GenerateRSAKeyPair generates an RSA key pair with the specified bit size. + * Returns PEM-encoded public and private keys. + */ +export function GenerateRSAKeyPair(bits: number): $CancellablePromise<[string, string]> { + return $Call.ByID(931266286, bits); +} + +/** + * HandleIPCEvents processes IPC messages for the crypt service. + */ +export function HandleIPCEvents(c: core$0.Core | null, msg: core$0.Message): $CancellablePromise { + return $Call.ByID(2172739989, c, msg); +} + +/** + * Hash computes a hash of the payload using the specified algorithm. + */ +export function Hash(lib: $models.HashType, payload: string): $CancellablePromise { + return $Call.ByID(2586228864, lib, payload); +} + +/** + * IsHashAlgo checks if the given string is a valid hash algorithm. + */ +export function IsHashAlgo(algo: string): $CancellablePromise { + return $Call.ByID(326857739, algo); +} + +/** + * Luhn validates a number using the Luhn algorithm. + */ +export function Luhn(payload: string): $CancellablePromise { + return $Call.ByID(2072043901, payload); +} + +/** + * SignPGP signs data with a PGP private key. + */ +export function SignPGP(privateKey: string, data: string): $CancellablePromise { + return $Call.ByID(1808182420, privateKey, data); +} + +/** + * SymmetricallyEncryptPGP encrypts data using a passphrase and writes to the provided writer. + */ +export function SymmetricallyEncryptPGP(writer: io$0.Writer, data: string, passphrase: string): $CancellablePromise { + return $Call.ByID(1965343785, writer, data, passphrase); +} + +/** + * VerifyPGP verifies a PGP signature. + */ +export function VerifyPGP(publicKey: string, data: string, signature: string): $CancellablePromise { + return $Call.ByID(2355577904, publicKey, data, signature); +} + +// Private type creation functions +const $$createType0 = core$0.Core.createFrom; +const $$createType1 = $Create.Nullable($$createType0); diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/display/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/display/index.ts new file mode 100644 index 00000000..9064bee0 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/display/index.ts @@ -0,0 +1,34 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +import * as Service from "./service.js"; +export { + Service +}; + +export { + CreateWindowOptions, + FileFilter, + Layout, + LayoutInfo, + NotificationOptions, + OpenDirectoryOptions, + OpenFileOptions, + SaveFileOptions, + ScreenInfo, + Service, + SnapPosition, + ThemeInfo, + TileMode, + TrayMenuItem, + WSEventManager, + Window, + WindowInfo, + WindowState, + WorkArea, + WorkflowType +} from "./models.js"; + +export type { + WindowOption +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/display/models.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/display/models.ts new file mode 100644 index 00000000..933ffd40 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/display/models.ts @@ -0,0 +1,641 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as application$0 from "../../../../wailsapp/wails/v3/pkg/application/models.js"; + +/** + * CreateWindowOptions contains options for creating a new window. + */ +export class CreateWindowOptions { + "name": string; + "title"?: string; + "url"?: string; + "x"?: number; + "y"?: number; + "width"?: number; + "height"?: number; + + /** Creates a new CreateWindowOptions instance. */ + constructor($$source: Partial = {}) { + if (!("name" in $$source)) { + this["name"] = ""; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new CreateWindowOptions instance from a string or object. + */ + static createFrom($$source: any = {}): CreateWindowOptions { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new CreateWindowOptions($$parsedSource as Partial); + } +} + +/** + * FileFilter represents a file type filter for dialogs. + */ +export class FileFilter { + "displayName": string; + "pattern": string; + "extensions"?: string[]; + + /** Creates a new FileFilter instance. */ + constructor($$source: Partial = {}) { + if (!("displayName" in $$source)) { + this["displayName"] = ""; + } + if (!("pattern" in $$source)) { + this["pattern"] = ""; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new FileFilter instance from a string or object. + */ + static createFrom($$source: any = {}): FileFilter { + const $$createField2_0 = $$createType0; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("extensions" in $$parsedSource) { + $$parsedSource["extensions"] = $$createField2_0($$parsedSource["extensions"]); + } + return new FileFilter($$parsedSource as Partial); + } +} + +/** + * Layout represents a saved window arrangement. + */ +export class Layout { + "name": string; + "windows": { [_: string]: WindowState }; + "createdAt": number; + "updatedAt": number; + + /** Creates a new Layout instance. */ + constructor($$source: Partial = {}) { + if (!("name" in $$source)) { + this["name"] = ""; + } + if (!("windows" in $$source)) { + this["windows"] = {}; + } + if (!("createdAt" in $$source)) { + this["createdAt"] = 0; + } + if (!("updatedAt" in $$source)) { + this["updatedAt"] = 0; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new Layout instance from a string or object. + */ + static createFrom($$source: any = {}): Layout { + const $$createField1_0 = $$createType2; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("windows" in $$parsedSource) { + $$parsedSource["windows"] = $$createField1_0($$parsedSource["windows"]); + } + return new Layout($$parsedSource as Partial); + } +} + +/** + * LayoutInfo contains summary information about a layout. + */ +export class LayoutInfo { + "name": string; + "windowCount": number; + "createdAt": number; + "updatedAt": number; + + /** Creates a new LayoutInfo instance. */ + constructor($$source: Partial = {}) { + if (!("name" in $$source)) { + this["name"] = ""; + } + if (!("windowCount" in $$source)) { + this["windowCount"] = 0; + } + if (!("createdAt" in $$source)) { + this["createdAt"] = 0; + } + if (!("updatedAt" in $$source)) { + this["updatedAt"] = 0; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new LayoutInfo instance from a string or object. + */ + static createFrom($$source: any = {}): LayoutInfo { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new LayoutInfo($$parsedSource as Partial); + } +} + +/** + * NotificationOptions contains options for showing a notification. + */ +export class NotificationOptions { + "id"?: string; + "title": string; + "message": string; + "subtitle"?: string; + + /** Creates a new NotificationOptions instance. */ + constructor($$source: Partial = {}) { + if (!("title" in $$source)) { + this["title"] = ""; + } + if (!("message" in $$source)) { + this["message"] = ""; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new NotificationOptions instance from a string or object. + */ + static createFrom($$source: any = {}): NotificationOptions { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new NotificationOptions($$parsedSource as Partial); + } +} + +/** + * OpenDirectoryOptions contains options for the directory picker. + */ +export class OpenDirectoryOptions { + "title"?: string; + "defaultDirectory"?: string; + "allowMultiple"?: boolean; + + /** Creates a new OpenDirectoryOptions instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new OpenDirectoryOptions instance from a string or object. + */ + static createFrom($$source: any = {}): OpenDirectoryOptions { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new OpenDirectoryOptions($$parsedSource as Partial); + } +} + +/** + * OpenFileOptions contains options for the open file dialog. + */ +export class OpenFileOptions { + "title"?: string; + "defaultDirectory"?: string; + "defaultFilename"?: string; + "filters"?: FileFilter[]; + "allowMultiple"?: boolean; + + /** Creates a new OpenFileOptions instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new OpenFileOptions instance from a string or object. + */ + static createFrom($$source: any = {}): OpenFileOptions { + const $$createField3_0 = $$createType4; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("filters" in $$parsedSource) { + $$parsedSource["filters"] = $$createField3_0($$parsedSource["filters"]); + } + return new OpenFileOptions($$parsedSource as Partial); + } +} + +/** + * SaveFileOptions contains options for the save file dialog. + */ +export class SaveFileOptions { + "title"?: string; + "defaultDirectory"?: string; + "defaultFilename"?: string; + "filters"?: FileFilter[]; + + /** Creates a new SaveFileOptions instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new SaveFileOptions instance from a string or object. + */ + static createFrom($$source: any = {}): SaveFileOptions { + const $$createField3_0 = $$createType4; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("filters" in $$parsedSource) { + $$parsedSource["filters"] = $$createField3_0($$parsedSource["filters"]); + } + return new SaveFileOptions($$parsedSource as Partial); + } +} + +/** + * ScreenInfo contains information about a display screen. + */ +export class ScreenInfo { + "id": string; + "name": string; + "x": number; + "y": number; + "width": number; + "height": number; + "primary": boolean; + + /** Creates a new ScreenInfo instance. */ + constructor($$source: Partial = {}) { + if (!("id" in $$source)) { + this["id"] = ""; + } + if (!("name" in $$source)) { + this["name"] = ""; + } + if (!("x" in $$source)) { + this["x"] = 0; + } + if (!("y" in $$source)) { + this["y"] = 0; + } + if (!("width" in $$source)) { + this["width"] = 0; + } + if (!("height" in $$source)) { + this["height"] = 0; + } + if (!("primary" in $$source)) { + this["primary"] = false; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new ScreenInfo instance from a string or object. + */ + static createFrom($$source: any = {}): ScreenInfo { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new ScreenInfo($$parsedSource as Partial); + } +} + +/** + * Service manages windowing, dialogs, and other visual elements. + * It is the primary interface for interacting with the UI. + */ +export class Service { + + /** Creates a new Service instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new Service instance from a string or object. + */ + static createFrom($$source: any = {}): Service { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new Service($$parsedSource as Partial); + } +} + +/** + * SnapPosition represents positions for snapping windows. + */ +export enum SnapPosition { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = "", + + SnapLeft = "left", + SnapRight = "right", + SnapTop = "top", + SnapBottom = "bottom", + SnapTopLeft = "top-left", + SnapTopRight = "top-right", + SnapBottomLeft = "bottom-left", + SnapBottomRight = "bottom-right", + SnapCenter = "center", +}; + +/** + * ThemeInfo contains information about the current theme. + */ +export class ThemeInfo { + "isDark": boolean; + + /** + * "dark" or "light" + */ + "theme": string; + + /** + * Whether following system theme + */ + "system": boolean; + + /** Creates a new ThemeInfo instance. */ + constructor($$source: Partial = {}) { + if (!("isDark" in $$source)) { + this["isDark"] = false; + } + if (!("theme" in $$source)) { + this["theme"] = ""; + } + if (!("system" in $$source)) { + this["system"] = false; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new ThemeInfo instance from a string or object. + */ + static createFrom($$source: any = {}): ThemeInfo { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new ThemeInfo($$parsedSource as Partial); + } +} + +/** + * TileMode represents different tiling arrangements. + */ +export enum TileMode { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = "", + + TileModeLeft = "left", + TileModeRight = "right", + TileModeTop = "top", + TileModeBottom = "bottom", + TileModeTopLeft = "top-left", + TileModeTopRight = "top-right", + TileModeBottomLeft = "bottom-left", + TileModeBottomRight = "bottom-right", + TileModeGrid = "grid", +}; + +/** + * TrayMenuItem represents a menu item for the system tray. + */ +export class TrayMenuItem { + "label": string; + + /** + * "normal", "separator", "checkbox", "radio" + */ + "type"?: string; + + /** + * for checkbox/radio items + */ + "checked"?: boolean; + "disabled"?: boolean; + "tooltip"?: string; + "submenu"?: TrayMenuItem[]; + + /** + * ID for callback + */ + "actionId"?: string; + + /** Creates a new TrayMenuItem instance. */ + constructor($$source: Partial = {}) { + if (!("label" in $$source)) { + this["label"] = ""; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new TrayMenuItem instance from a string or object. + */ + static createFrom($$source: any = {}): TrayMenuItem { + const $$createField5_0 = $$createType6; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("submenu" in $$parsedSource) { + $$parsedSource["submenu"] = $$createField5_0($$parsedSource["submenu"]); + } + return new TrayMenuItem($$parsedSource as Partial); + } +} + +/** + * WSEventManager manages WebSocket connections and event subscriptions. + */ +export class WSEventManager { + + /** Creates a new WSEventManager instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new WSEventManager instance from a string or object. + */ + static createFrom($$source: any = {}): WSEventManager { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new WSEventManager($$parsedSource as Partial); + } +} + +export const Window = application$0.WebviewWindowOptions; +export type Window = application$0.WebviewWindowOptions; + +/** + * WindowInfo contains information about a window for MCP. + */ +export class WindowInfo { + "name": string; + "x": number; + "y": number; + "width": number; + "height": number; + "maximized": boolean; + + /** Creates a new WindowInfo instance. */ + constructor($$source: Partial = {}) { + if (!("name" in $$source)) { + this["name"] = ""; + } + if (!("x" in $$source)) { + this["x"] = 0; + } + if (!("y" in $$source)) { + this["y"] = 0; + } + if (!("width" in $$source)) { + this["width"] = 0; + } + if (!("height" in $$source)) { + this["height"] = 0; + } + if (!("maximized" in $$source)) { + this["maximized"] = false; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new WindowInfo instance from a string or object. + */ + static createFrom($$source: any = {}): WindowInfo { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new WindowInfo($$parsedSource as Partial); + } +} + +export type WindowOption = any; + +/** + * WindowState holds the persisted state of a window. + */ +export class WindowState { + "x": number; + "y": number; + "width": number; + "height": number; + "maximized": boolean; + + /** + * Screen identifier for multi-monitor + */ + "screen"?: string; + + /** + * Last URL/route + */ + "url"?: string; + "updatedAt": number; + + /** Creates a new WindowState instance. */ + constructor($$source: Partial = {}) { + if (!("x" in $$source)) { + this["x"] = 0; + } + if (!("y" in $$source)) { + this["y"] = 0; + } + if (!("width" in $$source)) { + this["width"] = 0; + } + if (!("height" in $$source)) { + this["height"] = 0; + } + if (!("maximized" in $$source)) { + this["maximized"] = false; + } + if (!("updatedAt" in $$source)) { + this["updatedAt"] = 0; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new WindowState instance from a string or object. + */ + static createFrom($$source: any = {}): WindowState { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new WindowState($$parsedSource as Partial); + } +} + +/** + * WorkArea represents usable screen space (excluding dock, menubar, etc). + */ +export class WorkArea { + "screenId": string; + "x": number; + "y": number; + "width": number; + "height": number; + + /** Creates a new WorkArea instance. */ + constructor($$source: Partial = {}) { + if (!("screenId" in $$source)) { + this["screenId"] = ""; + } + if (!("x" in $$source)) { + this["x"] = 0; + } + if (!("y" in $$source)) { + this["y"] = 0; + } + if (!("width" in $$source)) { + this["width"] = 0; + } + if (!("height" in $$source)) { + this["height"] = 0; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new WorkArea instance from a string or object. + */ + static createFrom($$source: any = {}): WorkArea { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new WorkArea($$parsedSource as Partial); + } +} + +/** + * WorkflowType represents predefined workflow layouts. + */ +export enum WorkflowType { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = "", + + WorkflowCoding = "coding", + WorkflowDebugging = "debugging", + WorkflowPresenting = "presenting", + WorkflowSideBySide = "side-by-side", +}; + +// Private type creation functions +const $$createType0 = $Create.Array($Create.Any); +const $$createType1 = WindowState.createFrom; +const $$createType2 = $Create.Map($Create.Any, $$createType1); +const $$createType3 = FileFilter.createFrom; +const $$createType4 = $Create.Array($$createType3); +const $$createType5 = TrayMenuItem.createFrom; +const $$createType6 = $Create.Array($$createType5); diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/display/service.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/display/service.ts new file mode 100644 index 00000000..378c8bd8 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/display/service.ts @@ -0,0 +1,618 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +/** + * Service manages windowing, dialogs, and other visual elements. + * It is the primary interface for interacting with the UI. + * @module + */ + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as core$0 from "../core/models.js"; +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as application$0 from "../../../../wailsapp/wails/v3/pkg/application/models.js"; +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as notifications$0 from "../../../../wailsapp/wails/v3/pkg/services/notifications/models.js"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as $models from "./models.js"; + +/** + * ApplyWorkflowLayout applies a predefined layout for a specific workflow. + */ +export function ApplyWorkflowLayout(workflow: $models.WorkflowType): $CancellablePromise { + return $Call.ByID(476043825, workflow); +} + +/** + * CheckNotificationPermission checks if notifications are authorized. + */ +export function CheckNotificationPermission(): $CancellablePromise { + return $Call.ByID(3457032254); +} + +/** + * ClearClipboard clears the clipboard by setting empty text. + */ +export function ClearClipboard(): $CancellablePromise { + return $Call.ByID(841655875); +} + +/** + * CloseWindow closes a window by name. + */ +export function CloseWindow(name: string): $CancellablePromise { + return $Call.ByID(3433483506, name); +} + +/** + * Config returns the registered Config service from the core application. + * This is a convenience method for accessing the application's configuration. + */ +export function Config(): $CancellablePromise { + return $Call.ByID(2232242108); +} + +/** + * ConfirmDialog shows a confirmation dialog and returns the user's choice. + */ +export function ConfirmDialog(title: string, message: string): $CancellablePromise { + return $Call.ByID(3496660522, title, message); +} + +/** + * Core returns the central core instance, providing access to all registered services. + */ +export function Core(): $CancellablePromise { + return $Call.ByID(1945729093).then(($result: any) => { + return $$createType1($result); + }); +} + +/** + * CreateWindow creates a new window with the specified options. + */ +export function CreateWindow(opts: $models.CreateWindowOptions): $CancellablePromise<$models.WindowInfo | null> { + return $Call.ByID(2268870170, opts).then(($result: any) => { + return $$createType3($result); + }); +} + +/** + * DeleteLayout removes a saved layout by name. + */ +export function DeleteLayout(name: string): $CancellablePromise { + return $Call.ByID(431293335, name); +} + +/** + * FocusWindow brings a window to the front. + */ +export function FocusWindow(name: string): $CancellablePromise { + return $Call.ByID(3679876474, name); +} + +/** + * GetEventManager returns the event manager for WebSocket event subscriptions. + */ +export function GetEventManager(): $CancellablePromise<$models.WSEventManager | null> { + return $Call.ByID(4088339441).then(($result: any) => { + return $$createType5($result); + }); +} + +/** + * GetFocusedWindow returns the name of the currently focused window, or empty if none. + */ +export function GetFocusedWindow(): $CancellablePromise { + return $Call.ByID(4250461515); +} + +/** + * GetLayout returns a specific layout by name. + */ +export function GetLayout(name: string): $CancellablePromise<$models.Layout | null> { + return $Call.ByID(2300207048, name).then(($result: any) => { + return $$createType7($result); + }); +} + +/** + * GetPrimaryScreen returns information about the primary screen. + */ +export function GetPrimaryScreen(): $CancellablePromise<$models.ScreenInfo | null> { + return $Call.ByID(1543157204).then(($result: any) => { + return $$createType9($result); + }); +} + +/** + * GetSavedWindowStates returns all saved window states. + */ +export function GetSavedWindowStates(): $CancellablePromise<{ [_: string]: $models.WindowState | null }> { + return $Call.ByID(959704111).then(($result: any) => { + return $$createType12($result); + }); +} + +/** + * GetScreen returns information about a specific screen by ID. + */ +export function GetScreen(id: string): $CancellablePromise<$models.ScreenInfo | null> { + return $Call.ByID(461483954, id).then(($result: any) => { + return $$createType9($result); + }); +} + +/** + * GetScreenAtPoint returns the screen containing a specific point. + */ +export function GetScreenAtPoint(x: number, y: number): $CancellablePromise<$models.ScreenInfo | null> { + return $Call.ByID(1700073503, x, y).then(($result: any) => { + return $$createType9($result); + }); +} + +/** + * GetScreenForWindow returns the screen containing a specific window. + */ +export function GetScreenForWindow(name: string): $CancellablePromise<$models.ScreenInfo | null> { + return $Call.ByID(835390401, name).then(($result: any) => { + return $$createType9($result); + }); +} + +/** + * GetScreens returns information about all available screens. + */ +export function GetScreens(): $CancellablePromise<$models.ScreenInfo[]> { + return $Call.ByID(237481171).then(($result: any) => { + return $$createType13($result); + }); +} + +/** + * GetSystemTheme returns the system's theme preference. + * This is the same as GetTheme since Wails follows the system theme. + */ +export function GetSystemTheme(): $CancellablePromise<$models.ThemeInfo> { + return $Call.ByID(3150417360).then(($result: any) => { + return $$createType14($result); + }); +} + +/** + * GetTheme returns the current application theme. + */ +export function GetTheme(): $CancellablePromise<$models.ThemeInfo> { + return $Call.ByID(4073748231).then(($result: any) => { + return $$createType14($result); + }); +} + +/** + * GetTrayInfo returns information about the current tray state. + */ +export function GetTrayInfo(): $CancellablePromise<{ [_: string]: any }> { + return $Call.ByID(3859382794).then(($result: any) => { + return $$createType15($result); + }); +} + +/** + * GetWindowInfo returns information about a window by name. + */ +export function GetWindowInfo(name: string): $CancellablePromise<$models.WindowInfo | null> { + return $Call.ByID(349034490, name).then(($result: any) => { + return $$createType3($result); + }); +} + +/** + * GetWindowTitle returns the title of a window by name. + * Note: Wails v3 doesn't expose a title getter, so we track it ourselves or return the name. + */ +export function GetWindowTitle(name: string): $CancellablePromise { + return $Call.ByID(2943922308, name); +} + +/** + * GetWorkAreas returns the usable work area for all screens. + */ +export function GetWorkAreas(): $CancellablePromise<$models.WorkArea[]> { + return $Call.ByID(2006398407).then(($result: any) => { + return $$createType17($result); + }); +} + +/** + * HasClipboard checks if the clipboard has content. + */ +export function HasClipboard(): $CancellablePromise { + return $Call.ByID(2739125668); +} + +/** + * ListLayouts returns all saved layout names with metadata. + */ +export function ListLayouts(): $CancellablePromise<$models.LayoutInfo[]> { + return $Call.ByID(1178398225).then(($result: any) => { + return $$createType19($result); + }); +} + +/** + * ListWindowInfos returns information about all windows. + */ +export function ListWindowInfos(): $CancellablePromise<$models.WindowInfo[]> { + return $Call.ByID(1417409467).then(($result: any) => { + return $$createType20($result); + }); +} + +/** + * MaximizeWindow maximizes a window. + */ +export function MaximizeWindow(name: string): $CancellablePromise { + return $Call.ByID(3409085844, name); +} + +/** + * MinimizeWindow minimizes a window. + */ +export function MinimizeWindow(name: string): $CancellablePromise { + return $Call.ByID(282422382, name); +} + +/** + * NewWithOptions creates a new window by applying a series of options. + */ +export function NewWithOptions(...opts: $models.WindowOption[]): $CancellablePromise { + return $Call.ByID(2933522506, opts).then(($result: any) => { + return $$createType22($result); + }); +} + +/** + * NewWithStruct creates a new window using the provided options and returns its handle. + */ +export function NewWithStruct(options: $models.Window | null): $CancellablePromise { + return $Call.ByID(51896165, options).then(($result: any) => { + return $$createType22($result); + }); +} + +/** + * NewWithURL creates a new default window pointing to the specified URL. + */ +export function NewWithURL(url: string): $CancellablePromise { + return $Call.ByID(1128847469, url).then(($result: any) => { + return $$createType22($result); + }); +} + +/** + * OpenDirectoryDialog shows a directory picker. + */ +export function OpenDirectoryDialog(opts: $models.OpenDirectoryOptions): $CancellablePromise { + return $Call.ByID(2018109069, opts); +} + +/** + * OpenFileDialog shows a file open dialog and returns selected path(s). + */ +export function OpenFileDialog(opts: $models.OpenFileOptions): $CancellablePromise { + return $Call.ByID(1105329884, opts).then(($result: any) => { + return $$createType23($result); + }); +} + +/** + * OpenSingleFileDialog shows a file open dialog for a single file. + */ +export function OpenSingleFileDialog(opts: $models.OpenFileOptions): $CancellablePromise { + return $Call.ByID(2818039508, opts); +} + +/** + * OpenWindow creates a new window with the given options. If no options are + * provided, it will use the default options. + * + * example: + * + * err := displayService.OpenWindow( + * display.WithName("my-window"), + * display.WithTitle("My Window"), + * display.WithWidth(800), + * display.WithHeight(600), + * ) + * if err != nil { + * log.Fatal(err) + * } + */ +export function OpenWindow(...opts: $models.WindowOption[]): $CancellablePromise { + return $Call.ByID(1872737238, opts); +} + +/** + * PromptDialog shows an input prompt dialog. + * Note: Wails v3 doesn't have a native prompt dialog, so this uses a question dialog. + */ +export function PromptDialog(title: string, message: string): $CancellablePromise<[string, boolean]> { + return $Call.ByID(3860540752, title, message); +} + +/** + * ReadClipboard reads text content from the system clipboard. + */ +export function ReadClipboard(): $CancellablePromise { + return $Call.ByID(353696084); +} + +/** + * RegisterTrayMenuCallback registers a callback for a tray menu action ID. + */ +export function RegisterTrayMenuCallback(actionID: string, callback: any): $CancellablePromise { + return $Call.ByID(2238034275, actionID, callback); +} + +/** + * RequestNotificationPermission requests permission for native notifications. + */ +export function RequestNotificationPermission(): $CancellablePromise { + return $Call.ByID(1315305223); +} + +/** + * ResetWindowState clears saved window positions. + */ +export function ResetWindowState(): $CancellablePromise { + return $Call.ByID(610344254); +} + +/** + * RestoreLayout applies a saved layout, positioning all windows. + */ +export function RestoreLayout(name: string): $CancellablePromise { + return $Call.ByID(2529654318, name); +} + +/** + * RestoreWindow restores a maximized/minimized window. + */ +export function RestoreWindow(name: string): $CancellablePromise { + return $Call.ByID(2762972996, name); +} + +/** + * SaveFileDialog shows a save file dialog and returns the selected path. + */ +export function SaveFileDialog(opts: $models.SaveFileOptions): $CancellablePromise { + return $Call.ByID(3969587317, opts); +} + +/** + * SaveLayout saves the current window arrangement as a named layout. + */ +export function SaveLayout(name: string): $CancellablePromise { + return $Call.ByID(1426429509, name); +} + +/** + * SelectDirectory opens a directory selection dialog and returns the selected path. + */ +export function SelectDirectory(): $CancellablePromise { + return $Call.ByID(968138697); +} + +/** + * SetNotifier sets the notifications service for native notifications. + */ +export function SetNotifier(notifier: notifications$0.NotificationService | null): $CancellablePromise { + return $Call.ByID(4060884340, notifier); +} + +/** + * SetTrayIcon sets the system tray icon from raw PNG data. + */ +export function SetTrayIcon(iconData: string): $CancellablePromise { + return $Call.ByID(888726123, iconData); +} + +/** + * SetTrayLabel sets the system tray label text. + */ +export function SetTrayLabel(label: string): $CancellablePromise { + return $Call.ByID(3980670180, label); +} + +/** + * SetTrayMenu sets the system tray menu from a list of menu items. + */ +export function SetTrayMenu(items: $models.TrayMenuItem[]): $CancellablePromise { + return $Call.ByID(3981223617, items); +} + +/** + * SetTrayTooltip sets the system tray tooltip text. + */ +export function SetTrayTooltip(tooltip: string): $CancellablePromise { + return $Call.ByID(85856277, tooltip); +} + +/** + * SetWindowAlwaysOnTop sets whether a window stays on top of other windows. + */ +export function SetWindowAlwaysOnTop(name: string, alwaysOnTop: boolean): $CancellablePromise { + return $Call.ByID(2197119377, name, alwaysOnTop); +} + +/** + * SetWindowBackgroundColour sets the background color of a window with alpha for transparency. + * Note: On Windows, only alpha 0 or 255 are supported. Other values treated as 255. + */ +export function SetWindowBackgroundColour(name: string, r: number, g: number, b: number, a: number): $CancellablePromise { + return $Call.ByID(3749517962, name, r, g, b, a); +} + +/** + * SetWindowBounds sets both position and size of a window. + */ +export function SetWindowBounds(name: string, x: number, y: number, width: number, height: number): $CancellablePromise { + return $Call.ByID(2084950575, name, x, y, width, height); +} + +/** + * SetWindowFullscreen sets a window to fullscreen mode. + */ +export function SetWindowFullscreen(name: string, fullscreen: boolean): $CancellablePromise { + return $Call.ByID(4232233979, name, fullscreen); +} + +/** + * SetWindowPosition moves a window to the specified position. + */ +export function SetWindowPosition(name: string, x: number, y: number): $CancellablePromise { + return $Call.ByID(3018518601, name, x, y); +} + +/** + * SetWindowSize resizes a window. + */ +export function SetWindowSize(name: string, width: number, height: number): $CancellablePromise { + return $Call.ByID(2987817615, name, width, height); +} + +/** + * SetWindowTitle changes a window's title. + */ +export function SetWindowTitle(name: string, title: string): $CancellablePromise { + return $Call.ByID(3349151432, name, title); +} + +/** + * SetWindowVisibility shows or hides a window. + */ +export function SetWindowVisibility(name: string, visible: boolean): $CancellablePromise { + return $Call.ByID(121431198, name, visible); +} + +/** + * ShowEnvironmentDialog displays a dialog containing detailed information about + * the application's runtime environment. This is useful for debugging and + * understanding the context in which the application is running. + * + * example: + * + * displayService.ShowEnvironmentDialog() + */ +export function ShowEnvironmentDialog(): $CancellablePromise { + return $Call.ByID(3261510832); +} + +/** + * ShowErrorNotification shows an error notification. + */ +export function ShowErrorNotification(title: string, message: string): $CancellablePromise { + return $Call.ByID(1228262280, title, message); +} + +/** + * ShowInfoNotification shows an info notification with a simple message. + */ +export function ShowInfoNotification(title: string, message: string): $CancellablePromise { + return $Call.ByID(2419366044, title, message); +} + +/** + * ShowNotification displays a native system notification. + * Falls back to dialog if notifier is not available. + */ +export function ShowNotification(opts: $models.NotificationOptions): $CancellablePromise { + return $Call.ByID(2416075800, opts); +} + +/** + * ShowWarningNotification shows a warning notification. + */ +export function ShowWarningNotification(title: string, message: string): $CancellablePromise { + return $Call.ByID(200899338, title, message); +} + +/** + * SnapWindow snaps a window to a screen edge or corner. + */ +export function SnapWindow(name: string, position: $models.SnapPosition): $CancellablePromise { + return $Call.ByID(3088366266, name, position); +} + +/** + * StackWindows arranges windows in a cascade (stacked) pattern. + * Each window is offset by the given amount from the previous one. + */ +export function StackWindows(windowNames: string[], offsetX: number, offsetY: number): $CancellablePromise { + return $Call.ByID(3309040327, windowNames, offsetX, offsetY); +} + +/** + * Startup is called when the app starts. It initializes the display service + * and sets up the main application window and system tray. + * + * err := displayService.Startup(ctx) + * if err != nil { + * log.Fatal(err) + * } + */ +export function Startup(): $CancellablePromise { + return $Call.ByID(1664741927); +} + +/** + * TileWindows arranges windows in a tiled layout. + * mode can be: left, right, top, bottom, top-left, top-right, bottom-left, bottom-right, grid + * If windowNames is empty, tiles all windows. + */ +export function TileWindows(mode: $models.TileMode, windowNames: string[]): $CancellablePromise { + return $Call.ByID(1638500379, mode, windowNames); +} + +/** + * WriteClipboard writes text content to the system clipboard. + */ +export function WriteClipboard(text: string): $CancellablePromise { + return $Call.ByID(2577466505, text); +} + +// Private type creation functions +const $$createType0 = core$0.Core.createFrom; +const $$createType1 = $Create.Nullable($$createType0); +const $$createType2 = $models.WindowInfo.createFrom; +const $$createType3 = $Create.Nullable($$createType2); +const $$createType4 = $models.WSEventManager.createFrom; +const $$createType5 = $Create.Nullable($$createType4); +const $$createType6 = $models.Layout.createFrom; +const $$createType7 = $Create.Nullable($$createType6); +const $$createType8 = $models.ScreenInfo.createFrom; +const $$createType9 = $Create.Nullable($$createType8); +const $$createType10 = $models.WindowState.createFrom; +const $$createType11 = $Create.Nullable($$createType10); +const $$createType12 = $Create.Map($Create.Any, $$createType11); +const $$createType13 = $Create.Array($$createType8); +const $$createType14 = $models.ThemeInfo.createFrom; +const $$createType15 = $Create.Map($Create.Any, $Create.Any); +const $$createType16 = $models.WorkArea.createFrom; +const $$createType17 = $Create.Array($$createType16); +const $$createType18 = $models.LayoutInfo.createFrom; +const $$createType19 = $Create.Array($$createType18); +const $$createType20 = $Create.Array($$createType2); +const $$createType21 = application$0.WebviewWindow.createFrom; +const $$createType22 = $Create.Nullable($$createType21); +const $$createType23 = $Create.Array($Create.Any); diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/docs/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/docs/index.ts new file mode 100644 index 00000000..fd900b4c --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/docs/index.ts @@ -0,0 +1,7 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +import * as Service from "./service.js"; +export { + Service +}; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/docs/service.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/docs/service.ts new file mode 100644 index 00000000..6493ff95 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/docs/service.ts @@ -0,0 +1,37 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +/** + * Service manages documentation windows. + * @module + */ + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as core$0 from "../core/models.js"; + +/** + * OpenDocsWindow opens a documentation window at the specified path. + * The path is appended to the base URL to form the full documentation URL. + */ +export function OpenDocsWindow(path: string): $CancellablePromise { + return $Call.ByID(2514509460, path); +} + +/** + * SetBaseURL sets the base URL for documentation. + */ +export function SetBaseURL(url: string): $CancellablePromise { + return $Call.ByID(1851990453, url); +} + +/** + * SetCore sets the core reference for accessing other services. + */ +export function SetCore(c: core$0.Core | null): $CancellablePromise { + return $Call.ByID(527529290, c); +} diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/help/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/help/index.ts new file mode 100644 index 00000000..60e9dac5 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/help/index.ts @@ -0,0 +1,12 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +import * as Service from "./service.js"; +export { + Service +}; + +export type { + Core, + Display +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/help/models.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/help/models.ts new file mode 100644 index 00000000..870f934a --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/help/models.ts @@ -0,0 +1,20 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * Core defines the interface for the core runtime functionalities that the + * help service depends on. This typically includes methods for performing + * actions and accessing the application context. + */ +export type Core = any; + +/** + * Display defines the interface for a display service. The help service + * uses this interface to check for the presence of a display module, + * allowing it to function as an optional dependency. + */ +export type Display = any; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/help/service.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/help/service.ts new file mode 100644 index 00000000..27f822d8 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/help/service.ts @@ -0,0 +1,48 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +/** + * Service manages the in-app help system. It handles the initialization + * of the help content, interaction with the core runtime, and display + * of the help window. + * @module + */ + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as $models from "./models.js"; + +/** + * Init initializes the service with its core dependencies. This method is + * intended to be called by the dependency injection system of the application + * to provide the necessary `Core` and `Display` implementations. + */ +export function Init(c: $models.Core, d: $models.Display): $CancellablePromise { + return $Call.ByID(2251945077, c, d); +} + +/** + * Show displays the main help window. If a `Display` service is available, + * it sends an action to the core runtime to open the window. Otherwise, it + * falls back to using the `wails3` application instance to create a new + * window. This ensures that the help functionality is available even when + * the `Snider/display` module is not in use. + */ +export function Show(): $CancellablePromise { + return $Call.ByID(401579614); +} + +/** + * ShowAt displays a specific section of the help documentation, identified + * by an anchor. Similar to `Show`, it uses the `Display` service if available, + * or falls back to a direct `wails3` implementation. The anchor is appended + * to the URL, allowing the help window to open directly to the relevant + * section. + */ +export function ShowAt(anchor: string): $CancellablePromise { + return $Call.ByID(3303047483, anchor); +} diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/i18n/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/i18n/index.ts new file mode 100644 index 00000000..fd900b4c --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/i18n/index.ts @@ -0,0 +1,7 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +import * as Service from "./service.js"; +export { + Service +}; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/i18n/service.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/i18n/service.ts new file mode 100644 index 00000000..e731b9ea --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/i18n/service.ts @@ -0,0 +1,65 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +/** + * Service provides internationalization and localization. + * It is the primary entrypoint for the i18n package. + * @module + */ + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as i18n$0 from "../../../../nicksnyder/go-i18n/v2/i18n/models.js"; + +/** + * AvailableLanguages returns a list of available language codes. + */ +export function AvailableLanguages(): $CancellablePromise { + return $Call.ByID(3797911080).then(($result: any) => { + return $$createType0($result); + }); +} + +/** + * GetAllMessages returns all translation messages for the specified language. + * The keys are message IDs and values are the translated strings. + * If lang is empty, it uses the current language. + */ +export function GetAllMessages(lang: string): $CancellablePromise<{ [_: string]: string }> { + return $Call.ByID(497958721, lang).then(($result: any) => { + return $$createType1($result); + }); +} + +/** + * SetBundle is a test helper to inject a bundle. + */ +export function SetBundle(bundle: i18n$0.Bundle | null): $CancellablePromise { + return $Call.ByID(2373446086, bundle); +} + +/** + * SetLanguage sets the language for the i18n service. + * The language tag should be a valid BCP 47 language tag (e.g., "en", "en-US"). + * If the language is not supported, an error is returned. + */ +export function SetLanguage(lang: string): $CancellablePromise { + return $Call.ByID(1882213732, lang); +} + +/** + * Translate translates a message by its ID. + * It accepts an optional template data argument to interpolate into the translation. + * If the message is not found, the message ID is returned. + */ +export function Translate(messageID: string, ...args: any[]): $CancellablePromise { + return $Call.ByID(1625170060, messageID, args); +} + +// Private type creation functions +const $$createType0 = $Create.Array($Create.Any); +const $$createType1 = $Create.Map($Create.Any, $Create.Any); diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/ide/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/ide/index.ts new file mode 100644 index 00000000..fdc53935 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/ide/index.ts @@ -0,0 +1,13 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +import * as Service from "./service.js"; +export { + Service +}; + +export { + DirectoryEntry, + FileInfo, + LanguageInfo +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/ide/models.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/ide/models.ts new file mode 100644 index 00000000..d406c521 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/ide/models.ts @@ -0,0 +1,121 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * DirectoryEntry represents a file or directory in a listing. + */ +export class DirectoryEntry { + "name": string; + "path": string; + "isDir": boolean; + "size": number; + + /** Creates a new DirectoryEntry instance. */ + constructor($$source: Partial = {}) { + if (!("name" in $$source)) { + this["name"] = ""; + } + if (!("path" in $$source)) { + this["path"] = ""; + } + if (!("isDir" in $$source)) { + this["isDir"] = false; + } + if (!("size" in $$source)) { + this["size"] = 0; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new DirectoryEntry instance from a string or object. + */ + static createFrom($$source: any = {}): DirectoryEntry { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new DirectoryEntry($$parsedSource as Partial); + } +} + +/** + * FileInfo represents information about a file for the editor. + */ +export class FileInfo { + "path": string; + "name": string; + "content": string; + "language": string; + "isNew": boolean; + + /** Creates a new FileInfo instance. */ + constructor($$source: Partial = {}) { + if (!("path" in $$source)) { + this["path"] = ""; + } + if (!("name" in $$source)) { + this["name"] = ""; + } + if (!("content" in $$source)) { + this["content"] = ""; + } + if (!("language" in $$source)) { + this["language"] = ""; + } + if (!("isNew" in $$source)) { + this["isNew"] = false; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new FileInfo instance from a string or object. + */ + static createFrom($$source: any = {}): FileInfo { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new FileInfo($$parsedSource as Partial); + } +} + +/** + * LanguageInfo describes a supported programming language. + */ +export class LanguageInfo { + "id": string; + "name": string; + "extensions": string[]; + + /** Creates a new LanguageInfo instance. */ + constructor($$source: Partial = {}) { + if (!("id" in $$source)) { + this["id"] = ""; + } + if (!("name" in $$source)) { + this["name"] = ""; + } + if (!("extensions" in $$source)) { + this["extensions"] = []; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new LanguageInfo instance from a string or object. + */ + static createFrom($$source: any = {}): LanguageInfo { + const $$createField2_0 = $$createType0; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("extensions" in $$parsedSource) { + $$parsedSource["extensions"] = $$createField2_0($$parsedSource["extensions"]); + } + return new LanguageInfo($$parsedSource as Partial); + } +} + +// Private type creation functions +const $$createType0 = $Create.Array($Create.Any); diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/ide/service.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/ide/service.ts new file mode 100644 index 00000000..02998c0b --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/ide/service.ts @@ -0,0 +1,130 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +/** + * Service provides IDE functionality for code editing, file management, and project operations. + * @module + */ + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as core$0 from "../core/models.js"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as $models from "./models.js"; + +/** + * Config returns the registered Config service from the core application. + * This is a convenience method for accessing the application's configuration. + */ +export function Config(): $CancellablePromise { + return $Call.ByID(2256800318); +} + +/** + * Core returns the central core instance, providing access to all registered services. + */ +export function Core(): $CancellablePromise { + return $Call.ByID(2000663455).then(($result: any) => { + return $$createType1($result); + }); +} + +/** + * CreateDirectory creates a new directory at the given path. + */ +export function CreateDirectory(path: string): $CancellablePromise { + return $Call.ByID(4108527007, path); +} + +/** + * DeleteFile removes a file at the given path. + */ +export function DeleteFile(path: string): $CancellablePromise { + return $Call.ByID(1778361797, path); +} + +/** + * DetectLanguage returns the Monaco editor language for a given file path. + */ +export function DetectLanguage(path: string): $CancellablePromise { + return $Call.ByID(1446649409, path); +} + +/** + * FileExists checks if a file exists at the given path. + */ +export function FileExists(path: string): $CancellablePromise { + return $Call.ByID(2444049838, path); +} + +/** + * GetSupportedLanguages returns a list of languages supported by the editor. + */ +export function GetSupportedLanguages(): $CancellablePromise<$models.LanguageInfo[]> { + return $Call.ByID(948137385).then(($result: any) => { + return $$createType3($result); + }); +} + +/** + * ListDirectory returns a list of files and directories in the given path. + */ +export function ListDirectory(path: string): $CancellablePromise<$models.DirectoryEntry[]> { + return $Call.ByID(2978024379, path).then(($result: any) => { + return $$createType5($result); + }); +} + +/** + * NewFile creates a new untitled file with the specified language. + */ +export function NewFile(language: string): $CancellablePromise<$models.FileInfo> { + return $Call.ByID(354339848, language).then(($result: any) => { + return $$createType6($result); + }); +} + +/** + * OpenFile reads a file from disk and returns its content with language detection. + */ +export function OpenFile(path: string): $CancellablePromise<$models.FileInfo> { + return $Call.ByID(1563991886, path).then(($result: any) => { + return $$createType6($result); + }); +} + +/** + * ReadFile reads content from a file without additional metadata. + */ +export function ReadFile(path: string): $CancellablePromise { + return $Call.ByID(1836122514, path); +} + +/** + * RenameFile renames/moves a file from oldPath to newPath. + */ +export function RenameFile(oldPath: string, newPath: string): $CancellablePromise { + return $Call.ByID(128270740, oldPath, newPath); +} + +/** + * SaveFile saves content to the specified path. + */ +export function SaveFile(path: string, content: string): $CancellablePromise { + return $Call.ByID(1229744459, path, content); +} + +// Private type creation functions +const $$createType0 = core$0.Core.createFrom; +const $$createType1 = $Create.Nullable($$createType0); +const $$createType2 = $models.LanguageInfo.createFrom; +const $$createType3 = $Create.Array($$createType2); +const $$createType4 = $models.DirectoryEntry.createFrom; +const $$createType5 = $Create.Array($$createType4); +const $$createType6 = $models.FileInfo.createFrom; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/mcp/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/mcp/index.ts new file mode 100644 index 00000000..f47f133b --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/mcp/index.ts @@ -0,0 +1,6 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export { + Service +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/mcp/models.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/mcp/models.ts new file mode 100644 index 00000000..9809f717 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/mcp/models.ts @@ -0,0 +1,26 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * Service provides an MCP server that exposes Core functionality. + */ +export class Service { + + /** Creates a new Service instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new Service instance from a string or object. + */ + static createFrom($$source: any = {}): Service { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new Service($$parsedSource as Partial); + } +} diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/module/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/module/index.ts new file mode 100644 index 00000000..30cdf0a2 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/module/index.ts @@ -0,0 +1,23 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +import * as Service from "./service.js"; +export { + Service +}; + +export { + APIEndpoint, + AppConfig, + AppHook, + BinaryInfo, + Config, + Context, + Downloads, + MenuItem, + ModuleType, + PlatformBinaries, + Registry, + Route, + UIConfig +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/module/models.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/module/models.ts new file mode 100644 index 00000000..acbcfab1 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/module/models.ts @@ -0,0 +1,577 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * APIEndpoint declares an API endpoint the module provides. + */ +export class APIEndpoint { + /** + * GET, POST, etc. + */ + "method": string; + + /** + * Relative to /api/{namespace}/{code} + */ + "path": string; + "description"?: string; + + /** Creates a new APIEndpoint instance. */ + constructor($$source: Partial = {}) { + if (!("method" in $$source)) { + this["method"] = ""; + } + if (!("path" in $$source)) { + this["path"] = ""; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new APIEndpoint instance from a string or object. + */ + static createFrom($$source: any = {}): APIEndpoint { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new APIEndpoint($$parsedSource as Partial); + } +} + +/** + * AppConfig defines web app specific configuration. + */ +export class AppConfig { + "url"?: string; + + /** + * spa, iframe, etc. + */ + "type"?: string; + "hooks"?: AppHook[]; + + /** Creates a new AppConfig instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new AppConfig instance from a string or object. + */ + static createFrom($$source: any = {}): AppConfig { + const $$createField2_0 = $$createType1; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("hooks" in $$parsedSource) { + $$parsedSource["hooks"] = $$createField2_0($$parsedSource["hooks"]); + } + return new AppConfig($$parsedSource as Partial); + } +} + +/** + * AppHook defines app lifecycle hooks. + */ +export class AppHook { + /** + * rename, copy, etc. + */ + "type": string; + "from"?: string; + "to"?: string; + "data"?: { [_: string]: any }; + + /** Creates a new AppHook instance. */ + constructor($$source: Partial = {}) { + if (!("type" in $$source)) { + this["type"] = ""; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new AppHook instance from a string or object. + */ + static createFrom($$source: any = {}): AppHook { + const $$createField3_0 = $$createType2; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("data" in $$parsedSource) { + $$parsedSource["data"] = $$createField3_0($$parsedSource["data"]); + } + return new AppHook($$parsedSource as Partial); + } +} + +/** + * BinaryInfo contains download info for a binary. + */ +export class BinaryInfo { + "url": string; + "checksum"?: string; + + /** Creates a new BinaryInfo instance. */ + constructor($$source: Partial = {}) { + if (!("url" in $$source)) { + this["url"] = ""; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new BinaryInfo instance from a string or object. + */ + static createFrom($$source: any = {}): BinaryInfo { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new BinaryInfo($$parsedSource as Partial); + } +} + +/** + * Config is the .itw3.json format for module registration. + * This is the boundary format between Core and external modules. + */ +export class Config { + /** + * Unique identifier + */ + "code": string; + + /** + * core, app, bin + */ + "type": ModuleType; + + /** + * Display name + */ + "name": string; + + /** + * Semantic version + */ + "version": string; + + /** + * API/config namespace + */ + "namespace": string; + + /** + * Human description + */ + "description"?: string; + "author"?: string; + + /** + * UI menu contributions + */ + "menu"?: MenuItem[]; + + /** + * UI route contributions + */ + "routes"?: Route[]; + + /** + * Which contexts this module supports + */ + "contexts"?: Context[]; + + /** + * Platform binaries + */ + "downloads"?: Downloads | null; + + /** + * Web app config + */ + "app"?: AppConfig | null; + + /** + * Module dependencies + */ + "depends"?: string[]; + + /** + * API endpoint declarations + */ + "api"?: APIEndpoint[]; + + /** + * Default configuration + */ + "config"?: { [_: string]: any }; + + /** Creates a new Config instance. */ + constructor($$source: Partial = {}) { + if (!("code" in $$source)) { + this["code"] = ""; + } + if (!("type" in $$source)) { + this["type"] = ModuleType.$zero; + } + if (!("name" in $$source)) { + this["name"] = ""; + } + if (!("version" in $$source)) { + this["version"] = ""; + } + if (!("namespace" in $$source)) { + this["namespace"] = ""; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new Config instance from a string or object. + */ + static createFrom($$source: any = {}): Config { + const $$createField7_0 = $$createType4; + const $$createField8_0 = $$createType6; + const $$createField9_0 = $$createType7; + const $$createField10_0 = $$createType9; + const $$createField11_0 = $$createType11; + const $$createField12_0 = $$createType12; + const $$createField13_0 = $$createType14; + const $$createField14_0 = $$createType2; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("menu" in $$parsedSource) { + $$parsedSource["menu"] = $$createField7_0($$parsedSource["menu"]); + } + if ("routes" in $$parsedSource) { + $$parsedSource["routes"] = $$createField8_0($$parsedSource["routes"]); + } + if ("contexts" in $$parsedSource) { + $$parsedSource["contexts"] = $$createField9_0($$parsedSource["contexts"]); + } + if ("downloads" in $$parsedSource) { + $$parsedSource["downloads"] = $$createField10_0($$parsedSource["downloads"]); + } + if ("app" in $$parsedSource) { + $$parsedSource["app"] = $$createField11_0($$parsedSource["app"]); + } + if ("depends" in $$parsedSource) { + $$parsedSource["depends"] = $$createField12_0($$parsedSource["depends"]); + } + if ("api" in $$parsedSource) { + $$parsedSource["api"] = $$createField13_0($$parsedSource["api"]); + } + if ("config" in $$parsedSource) { + $$parsedSource["config"] = $$createField14_0($$parsedSource["config"]); + } + return new Config($$parsedSource as Partial); + } +} + +/** + * Context represents the UI context (developer, retail, miner, etc.) + */ +export enum Context { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = "", + + ContextDefault = "default", + ContextDeveloper = "developer", + ContextRetail = "retail", + ContextMiner = "miner", +}; + +/** + * Downloads defines platform-specific binary downloads. + */ +export class Downloads { + /** + * Web app archive + */ + "app"?: string; + "x86_64"?: PlatformBinaries | null; + "aarch64"?: PlatformBinaries | null; + + /** Creates a new Downloads instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new Downloads instance from a string or object. + */ + static createFrom($$source: any = {}): Downloads { + const $$createField1_0 = $$createType16; + const $$createField2_0 = $$createType16; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("x86_64" in $$parsedSource) { + $$parsedSource["x86_64"] = $$createField1_0($$parsedSource["x86_64"]); + } + if ("aarch64" in $$parsedSource) { + $$parsedSource["aarch64"] = $$createField2_0($$parsedSource["aarch64"]); + } + return new Downloads($$parsedSource as Partial); + } +} + +/** + * MenuItem represents a menu item contribution. + */ +export class MenuItem { + "id": string; + "label": string; + "icon"?: string; + + /** + * Event name to emit + */ + "action"?: string; + + /** + * Frontend route + */ + "route"?: string; + + /** + * Keyboard shortcut + */ + "accelerator"?: string; + + /** + * Show in these contexts + */ + "contexts"?: Context[]; + + /** + * Submenu items + */ + "children"?: MenuItem[]; + + /** + * Sort order + */ + "order"?: number; + "separator"?: boolean; + + /** Creates a new MenuItem instance. */ + constructor($$source: Partial = {}) { + if (!("id" in $$source)) { + this["id"] = ""; + } + if (!("label" in $$source)) { + this["label"] = ""; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new MenuItem instance from a string or object. + */ + static createFrom($$source: any = {}): MenuItem { + const $$createField6_0 = $$createType7; + const $$createField7_0 = $$createType4; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("contexts" in $$parsedSource) { + $$parsedSource["contexts"] = $$createField6_0($$parsedSource["contexts"]); + } + if ("children" in $$parsedSource) { + $$parsedSource["children"] = $$createField7_0($$parsedSource["children"]); + } + return new MenuItem($$parsedSource as Partial); + } +} + +/** + * ModuleType defines the type of module. + */ +export enum ModuleType { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = "", + + /** + * Built-in core module + */ + TypeCore = "core", + + /** + * External application + */ + TypeApp = "app", + + /** + * Binary/daemon wrapper + */ + TypeBin = "bin", +}; + +/** + * PlatformBinaries defines OS-specific binary URLs. + */ +export class PlatformBinaries { + "darwin"?: BinaryInfo | null; + "linux"?: BinaryInfo | null; + "windows"?: BinaryInfo | null; + + /** Creates a new PlatformBinaries instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new PlatformBinaries instance from a string or object. + */ + static createFrom($$source: any = {}): PlatformBinaries { + const $$createField0_0 = $$createType18; + const $$createField1_0 = $$createType18; + const $$createField2_0 = $$createType18; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("darwin" in $$parsedSource) { + $$parsedSource["darwin"] = $$createField0_0($$parsedSource["darwin"]); + } + if ("linux" in $$parsedSource) { + $$parsedSource["linux"] = $$createField1_0($$parsedSource["linux"]); + } + if ("windows" in $$parsedSource) { + $$parsedSource["windows"] = $$createField2_0($$parsedSource["windows"]); + } + return new PlatformBinaries($$parsedSource as Partial); + } +} + +/** + * Registry manages module registration and provides unified API routing + UI assembly. + */ +export class Registry { + + /** Creates a new Registry instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new Registry instance from a string or object. + */ + static createFrom($$source: any = {}): Registry { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new Registry($$parsedSource as Partial); + } +} + +/** + * Route represents a UI route contribution. + */ +export class Route { + "path": string; + + /** + * Custom element or component + */ + "component": string; + "title"?: string; + "icon"?: string; + "contexts"?: Context[]; + + /** Creates a new Route instance. */ + constructor($$source: Partial = {}) { + if (!("path" in $$source)) { + this["path"] = ""; + } + if (!("component" in $$source)) { + this["component"] = ""; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new Route instance from a string or object. + */ + static createFrom($$source: any = {}): Route { + const $$createField4_0 = $$createType7; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("contexts" in $$parsedSource) { + $$parsedSource["contexts"] = $$createField4_0($$parsedSource["contexts"]); + } + return new Route($$parsedSource as Partial); + } +} + +/** + * UIConfig is the complete UI configuration for frontends. + */ +export class UIConfig { + "context": Context; + "menus": MenuItem[]; + "routes": Route[]; + "modules": Config[]; + + /** Creates a new UIConfig instance. */ + constructor($$source: Partial = {}) { + if (!("context" in $$source)) { + this["context"] = Context.$zero; + } + if (!("menus" in $$source)) { + this["menus"] = []; + } + if (!("routes" in $$source)) { + this["routes"] = []; + } + if (!("modules" in $$source)) { + this["modules"] = []; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new UIConfig instance from a string or object. + */ + static createFrom($$source: any = {}): UIConfig { + const $$createField1_0 = $$createType4; + const $$createField2_0 = $$createType6; + const $$createField3_0 = $$createType20; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("menus" in $$parsedSource) { + $$parsedSource["menus"] = $$createField1_0($$parsedSource["menus"]); + } + if ("routes" in $$parsedSource) { + $$parsedSource["routes"] = $$createField2_0($$parsedSource["routes"]); + } + if ("modules" in $$parsedSource) { + $$parsedSource["modules"] = $$createField3_0($$parsedSource["modules"]); + } + return new UIConfig($$parsedSource as Partial); + } +} + +// Private type creation functions +const $$createType0 = AppHook.createFrom; +const $$createType1 = $Create.Array($$createType0); +const $$createType2 = $Create.Map($Create.Any, $Create.Any); +const $$createType3 = MenuItem.createFrom; +const $$createType4 = $Create.Array($$createType3); +const $$createType5 = Route.createFrom; +const $$createType6 = $Create.Array($$createType5); +const $$createType7 = $Create.Array($Create.Any); +const $$createType8 = Downloads.createFrom; +const $$createType9 = $Create.Nullable($$createType8); +const $$createType10 = AppConfig.createFrom; +const $$createType11 = $Create.Nullable($$createType10); +const $$createType12 = $Create.Array($Create.Any); +const $$createType13 = APIEndpoint.createFrom; +const $$createType14 = $Create.Array($$createType13); +const $$createType15 = PlatformBinaries.createFrom; +const $$createType16 = $Create.Nullable($$createType15); +const $$createType17 = BinaryInfo.createFrom; +const $$createType18 = $Create.Nullable($$createType17); +const $$createType19 = Config.createFrom; +const $$createType20 = $Create.Array($$createType19); diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/module/service.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/module/service.ts new file mode 100644 index 00000000..4f8d62bf --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/module/service.ts @@ -0,0 +1,142 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +/** + * Service wraps Registry for Wails service registration. + * @module + */ + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as core$0 from "../core/models.js"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as $models from "./models.js"; + +/** + * Config returns the registered Config service from the core application. + * This is a convenience method for accessing the application's configuration. + */ +export function Config(): $CancellablePromise { + return $Call.ByID(2666037348); +} + +/** + * Core returns the central core instance, providing access to all registered services. + */ +export function Core(): $CancellablePromise { + return $Call.ByID(2667999981).then(($result: any) => { + return $$createType1($result); + }); +} + +/** + * GetAvailableContexts returns all available contexts. + */ +export function GetAvailableContexts(): $CancellablePromise { + return $Call.ByID(581350213).then(($result: any) => { + return $$createType2($result); + }); +} + +/** + * GetContext returns the current context. + */ +export function GetContext(): $CancellablePromise { + return $Call.ByID(2851668817); +} + +/** + * GetMenus returns menus for the current context. + */ +export function GetMenus(): $CancellablePromise<$models.MenuItem[]> { + return $Call.ByID(2772432318).then(($result: any) => { + return $$createType4($result); + }); +} + +/** + * GetModule returns a specific module by code. + */ +export function GetModule(code: string): $CancellablePromise<[$models.Config, boolean]> { + return $Call.ByID(2941496402, code).then(($result: any) => { + $result[0] = $$createType5($result[0]); + return $result; + }); +} + +/** + * GetModules returns all registered modules. + */ +export function GetModules(): $CancellablePromise<$models.Config[]> { + return $Call.ByID(565704691).then(($result: any) => { + return $$createType6($result); + }); +} + +/** + * GetRoutes returns routes for the current context. + */ +export function GetRoutes(): $CancellablePromise<$models.Route[]> { + return $Call.ByID(2452947460).then(($result: any) => { + return $$createType8($result); + }); +} + +/** + * GetUIConfig returns complete UI config for the current context. + */ +export function GetUIConfig(): $CancellablePromise<$models.UIConfig> { + return $Call.ByID(1850432430).then(($result: any) => { + return $$createType9($result); + }); +} + +/** + * RegisterModule registers a module from JSON config string. + */ +export function RegisterModule(jsonConfig: string): $CancellablePromise { + return $Call.ByID(3476381919, jsonConfig); +} + +/** + * Registry returns the underlying registry for direct access. + */ +export function Registry(): $CancellablePromise<$models.Registry | null> { + return $Call.ByID(406000161).then(($result: any) => { + return $$createType11($result); + }); +} + +/** + * SetContext changes the active UI context. + */ +export function SetContext(ctx: string): $CancellablePromise { + return $Call.ByID(2231690805, ctx); +} + +/** + * UnregisterModule removes a module by code. + */ +export function UnregisterModule(code: string): $CancellablePromise { + return $Call.ByID(514107996, code); +} + +// Private type creation functions +const $$createType0 = core$0.Core.createFrom; +const $$createType1 = $Create.Nullable($$createType0); +const $$createType2 = $Create.Array($Create.Any); +const $$createType3 = $models.MenuItem.createFrom; +const $$createType4 = $Create.Array($$createType3); +const $$createType5 = $models.Config.createFrom; +const $$createType6 = $Create.Array($$createType5); +const $$createType7 = $models.Route.createFrom; +const $$createType8 = $Create.Array($$createType7); +const $$createType9 = $models.UIConfig.createFrom; +const $$createType10 = $models.Registry.createFrom; +const $$createType11 = $Create.Nullable($$createType10); diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/plugin/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/plugin/index.ts new file mode 100644 index 00000000..2c5eddf7 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/plugin/index.ts @@ -0,0 +1,15 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +import * as Router from "./router.js"; +export { + Router +}; + +export { + PluginInfo +} from "./models.js"; + +export type { + Plugin +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/plugin/models.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/plugin/models.ts new file mode 100644 index 00000000..99922ea7 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/plugin/models.ts @@ -0,0 +1,66 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * Plugin defines the interface that all plugins must implement. + */ +export type Plugin = any; + +/** + * PluginInfo contains metadata about a registered plugin. + */ +export class PluginInfo { + "Name": string; + "Namespace": string; + "Description": string; + "Version": string; + "Author": string; + + /** + * List of sub-routes this plugin handles + */ + "Routes": string[]; + + /** Creates a new PluginInfo instance. */ + constructor($$source: Partial = {}) { + if (!("Name" in $$source)) { + this["Name"] = ""; + } + if (!("Namespace" in $$source)) { + this["Namespace"] = ""; + } + if (!("Description" in $$source)) { + this["Description"] = ""; + } + if (!("Version" in $$source)) { + this["Version"] = ""; + } + if (!("Author" in $$source)) { + this["Author"] = ""; + } + if (!("Routes" in $$source)) { + this["Routes"] = []; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new PluginInfo instance from a string or object. + */ + static createFrom($$source: any = {}): PluginInfo { + const $$createField5_0 = $$createType0; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("Routes" in $$parsedSource) { + $$parsedSource["Routes"] = $$createField5_0($$parsedSource["Routes"]); + } + return new PluginInfo($$parsedSource as Partial); + } +} + +// Private type creation functions +const $$createType0 = $Create.Array($Create.Any); diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/plugin/router.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/plugin/router.ts new file mode 100644 index 00000000..d42aeb28 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/plugin/router.ts @@ -0,0 +1,100 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +/** + * Router manages plugin registration and provides a Gin-based HTTP router. + * It implements http.Handler and can be used as the Wails asset handler middleware. + * @module + */ + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as gin$0 from "../../../../gin-gonic/gin/models.js"; +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as application$0 from "../../../../wailsapp/wails/v3/pkg/application/models.js"; +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as http$0 from "../../../../../net/http/models.js"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as $models from "./models.js"; + +/** + * Engine returns the underlying Gin engine for advanced configuration. + */ +export function Engine(): $CancellablePromise { + return $Call.ByID(2071121571).then(($result: any) => { + return $$createType1($result); + }); +} + +/** + * Get returns a plugin by namespace and name. + */ +export function Get($namespace: string, name: string): $CancellablePromise<[$models.Plugin, boolean]> { + return $Call.ByID(2263988351, $namespace, name); +} + +/** + * List returns info about all registered plugins. + */ +export function List(): $CancellablePromise<$models.PluginInfo[]> { + return $Call.ByID(1465721241).then(($result: any) => { + return $$createType3($result); + }); +} + +/** + * ListByNamespace returns all plugins in a namespace. + */ +export function ListByNamespace($namespace: string): $CancellablePromise<$models.Plugin[]> { + return $Call.ByID(3303695111, $namespace).then(($result: any) => { + return $$createType4($result); + }); +} + +/** + * Register adds a plugin to the router. + */ +export function Register(p: $models.Plugin): $CancellablePromise { + return $Call.ByID(1142024616, p); +} + +/** + * ServiceOptions returns the Wails service options for the router. + */ +export function ServiceOptions(): $CancellablePromise { + return $Call.ByID(1034114530).then(($result: any) => { + return $$createType5($result); + }); +} + +/** + * SetAssetHandler sets the fallback handler for non-API routes (Wails assets). + */ +export function SetAssetHandler(h: http$0.Handler): $CancellablePromise { + return $Call.ByID(417441915, h); +} + +/** + * Unregister removes a plugin from the router. + * Note: Gin doesn't support removing routes, so this only removes from our registry. + * A restart is required for route changes to take effect. + */ +export function Unregister($namespace: string, name: string): $CancellablePromise { + return $Call.ByID(2047711931, $namespace, name); +} + +// Private type creation functions +const $$createType0 = gin$0.Engine.createFrom; +const $$createType1 = $Create.Nullable($$createType0); +const $$createType2 = $models.PluginInfo.createFrom; +const $$createType3 = $Create.Array($$createType2); +const $$createType4 = $Create.Array($Create.Any); +const $$createType5 = application$0.ServiceOptions.createFrom; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/webview/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/webview/index.ts new file mode 100644 index 00000000..f47f133b --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/webview/index.ts @@ -0,0 +1,6 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export { + Service +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/webview/models.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/webview/models.ts new file mode 100644 index 00000000..410186e0 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/webview/models.ts @@ -0,0 +1,26 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * Service provides WebView interaction capabilities. + */ +export class Service { + + /** Creates a new Service instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new Service instance from a string or object. + */ + static createFrom($$source: any = {}): Service { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new Service($$parsedSource as Partial); + } +} diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/workspace/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/workspace/index.ts new file mode 100644 index 00000000..ca4fea6a --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/workspace/index.ts @@ -0,0 +1,11 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +import * as Service from "./service.js"; +export { + Service +}; + +export { + Workspace +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/workspace/models.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/workspace/models.ts new file mode 100644 index 00000000..2f6d54e9 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/workspace/models.ts @@ -0,0 +1,34 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * Workspace represents a user's workspace. + */ +export class Workspace { + "Name": string; + "Path": string; + + /** Creates a new Workspace instance. */ + constructor($$source: Partial = {}) { + if (!("Name" in $$source)) { + this["Name"] = ""; + } + if (!("Path" in $$source)) { + this["Path"] = ""; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new Workspace instance from a string or object. + */ + static createFrom($$source: any = {}): Workspace { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new Workspace($$parsedSource as Partial); + } +} diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/workspace/service.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/workspace/service.ts new file mode 100644 index 00000000..f3b531e9 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Core/pkg/workspace/service.ts @@ -0,0 +1,96 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +/** + * Service manages user workspaces. + * @module + */ + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as core$0 from "../core/models.js"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as $models from "./models.js"; + +/** + * ActiveWorkspace returns the currently active workspace, or nil if none is active. + */ +export function ActiveWorkspace(): $CancellablePromise<$models.Workspace | null> { + return $Call.ByID(1950953690).then(($result: any) => { + return $$createType1($result); + }); +} + +/** + * Config returns the registered Config service from the core application. + * This is a convenience method for accessing the application's configuration. + */ +export function Config(): $CancellablePromise { + return $Call.ByID(1263760661); +} + +/** + * Core returns the central core instance, providing access to all registered services. + */ +export function Core(): $CancellablePromise { + return $Call.ByID(235692716).then(($result: any) => { + return $$createType3($result); + }); +} + +/** + * CreateWorkspace creates a new, obfuscated workspace on the local medium. + */ +export function CreateWorkspace(identifier: string, password: string): $CancellablePromise { + return $Call.ByID(1795228612, identifier, password); +} + +/** + * HandleIPCEvents processes IPC messages, including injecting dependencies on startup. + */ +export function HandleIPCEvents(c: core$0.Core | null, msg: core$0.Message): $CancellablePromise { + return $Call.ByID(2170147968, c, msg); +} + +/** + * ListWorkspaces returns the list of workspace IDs. + */ +export function ListWorkspaces(): $CancellablePromise { + return $Call.ByID(539524341).then(($result: any) => { + return $$createType4($result); + }); +} + +/** + * SwitchWorkspace changes the active workspace. + */ +export function SwitchWorkspace(name: string): $CancellablePromise { + return $Call.ByID(3125647852, name); +} + +/** + * WorkspaceFileGet retrieves a file from the active workspace. + */ +export function WorkspaceFileGet(filename: string): $CancellablePromise { + return $Call.ByID(3718387990, filename); +} + +/** + * WorkspaceFileSet writes a file to the active workspace. + */ +export function WorkspaceFileSet(filename: string, content: string): $CancellablePromise { + return $Call.ByID(1806719962, filename, content); +} + +// Private type creation functions +const $$createType0 = $models.Workspace.createFrom; +const $$createType1 = $Create.Nullable($$createType0); +const $$createType2 = core$0.Core.createFrom; +const $$createType3 = $Create.Nullable($$createType2); +const $$createType4 = $Create.Array($Create.Any); diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Enchantrix/pkg/crypt/index.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Enchantrix/pkg/crypt/index.ts new file mode 100644 index 00000000..addf62d3 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Enchantrix/pkg/crypt/index.ts @@ -0,0 +1,6 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export { + HashType +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/Snider/Enchantrix/pkg/crypt/models.ts b/cmd/core-gui/frontend/bindings/github.com/Snider/Enchantrix/pkg/crypt/models.ts new file mode 100644 index 00000000..e52f9778 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/Snider/Enchantrix/pkg/crypt/models.ts @@ -0,0 +1,41 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * HashType defines the supported hashing algorithms. + */ +export enum HashType { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = "", + + /** + * LTHN is a custom quasi-salted hashing algorithm. + */ + LTHN = "lthn", + + /** + * SHA512 is the SHA-512 hashing algorithm. + */ + SHA512 = "sha512", + + /** + * SHA256 is the SHA-256 hashing algorithm. + */ + SHA256 = "sha256", + + /** + * SHA1 is the SHA-1 hashing algorithm. + */ + SHA1 = "sha1", + + /** + * MD5 is the MD5 hashing algorithm. + */ + MD5 = "md5", +}; diff --git a/cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/index.ts b/cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/index.ts new file mode 100644 index 00000000..9305413e --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/index.ts @@ -0,0 +1,11 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export { + Engine +} from "./models.js"; + +export type { + HandlerFunc, + HandlersChain +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/models.ts b/cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/models.ts new file mode 100644 index 00000000..f38a25ee --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/models.ts @@ -0,0 +1,220 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as render$0 from "./render/models.js"; +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as template$0 from "../../../html/template/models.js"; + +/** + * Engine is the framework's instance, it contains the muxer, middleware and configuration settings. + * Create an instance of Engine, by using New() or Default() + */ +export class Engine { + "Handlers": HandlersChain; + + /** + * RedirectTrailingSlash enables automatic redirection if the current route can't be matched but a + * handler for the path with (without) the trailing slash exists. + * For example if /foo/ is requested but a route only exists for /foo, the + * client is redirected to /foo with http status code 301 for GET requests + * and 307 for all other request methods. + */ + "RedirectTrailingSlash": boolean; + + /** + * RedirectFixedPath if enabled, the router tries to fix the current request path, if no + * handle is registered for it. + * First superfluous path elements like ../ or // are removed. + * Afterwards the router does a case-insensitive lookup of the cleaned path. + * If a handle can be found for this route, the router makes a redirection + * to the corrected path with status code 301 for GET requests and 307 for + * all other request methods. + * For example /FOO and /..//Foo could be redirected to /foo. + * RedirectTrailingSlash is independent of this option. + */ + "RedirectFixedPath": boolean; + + /** + * HandleMethodNotAllowed if enabled, the router checks if another method is allowed for the + * current route, if the current request can not be routed. + * If this is the case, the request is answered with 'Method Not Allowed' + * and HTTP status code 405. + * If no other Method is allowed, the request is delegated to the NotFound + * handler. + */ + "HandleMethodNotAllowed": boolean; + + /** + * ForwardedByClientIP if enabled, client IP will be parsed from the request's headers that + * match those stored at `(*gin.Engine).RemoteIPHeaders`. If no IP was + * fetched, it falls back to the IP obtained from + * `(*gin.Context).Request.RemoteAddr`. + */ + "ForwardedByClientIP": boolean; + + /** + * AppEngine was deprecated. + * Deprecated: USE `TrustedPlatform` WITH VALUE `gin.PlatformGoogleAppEngine` INSTEAD + * #726 #755 If enabled, it will trust some headers starting with + * 'X-AppEngine...' for better integration with that PaaS. + */ + "AppEngine": boolean; + + /** + * UseRawPath if enabled, the url.RawPath will be used to find parameters. + */ + "UseRawPath": boolean; + + /** + * UnescapePathValues if true, the path value will be unescaped. + * If UseRawPath is false (by default), the UnescapePathValues effectively is true, + * as url.Path gonna be used, which is already unescaped. + */ + "UnescapePathValues": boolean; + + /** + * RemoveExtraSlash a parameter can be parsed from the URL even with extra slashes. + * See the PR #1817 and issue #1644 + */ + "RemoveExtraSlash": boolean; + + /** + * RemoteIPHeaders list of headers used to obtain the client IP when + * `(*gin.Engine).ForwardedByClientIP` is `true` and + * `(*gin.Context).Request.RemoteAddr` is matched by at least one of the + * network origins of list defined by `(*gin.Engine).SetTrustedProxies()`. + */ + "RemoteIPHeaders": string[]; + + /** + * TrustedPlatform if set to a constant of value gin.Platform*, trusts the headers set by + * that platform, for example to determine the client IP + */ + "TrustedPlatform": string; + + /** + * MaxMultipartMemory value of 'maxMemory' param that is given to http.Request's ParseMultipartForm + * method call. + */ + "MaxMultipartMemory": number; + + /** + * UseH2C enable h2c support. + */ + "UseH2C": boolean; + + /** + * ContextWithFallback enable fallback Context.Deadline(), Context.Done(), Context.Err() and Context.Value() when Context.Request.Context() is not nil. + */ + "ContextWithFallback": boolean; + "HTMLRender": render$0.HTMLRender; + "FuncMap": template$0.FuncMap; + + /** Creates a new Engine instance. */ + constructor($$source: Partial = {}) { + if (!("Handlers" in $$source)) { + this["Handlers"] = []; + } + if (!("RedirectTrailingSlash" in $$source)) { + this["RedirectTrailingSlash"] = false; + } + if (!("RedirectFixedPath" in $$source)) { + this["RedirectFixedPath"] = false; + } + if (!("HandleMethodNotAllowed" in $$source)) { + this["HandleMethodNotAllowed"] = false; + } + if (!("ForwardedByClientIP" in $$source)) { + this["ForwardedByClientIP"] = false; + } + if (!("AppEngine" in $$source)) { + this["AppEngine"] = false; + } + if (!("UseRawPath" in $$source)) { + this["UseRawPath"] = false; + } + if (!("UnescapePathValues" in $$source)) { + this["UnescapePathValues"] = false; + } + if (!("RemoveExtraSlash" in $$source)) { + this["RemoveExtraSlash"] = false; + } + if (!("RemoteIPHeaders" in $$source)) { + this["RemoteIPHeaders"] = []; + } + if (!("TrustedPlatform" in $$source)) { + this["TrustedPlatform"] = ""; + } + if (!("MaxMultipartMemory" in $$source)) { + this["MaxMultipartMemory"] = 0; + } + if (!("UseH2C" in $$source)) { + this["UseH2C"] = false; + } + if (!("ContextWithFallback" in $$source)) { + this["ContextWithFallback"] = false; + } + if (!("HTMLRender" in $$source)) { + this["HTMLRender"] = null; + } + if (!("FuncMap" in $$source)) { + this["FuncMap"] = {}; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new Engine instance from a string or object. + */ + static createFrom($$source: any = {}): Engine { + const $$createField0_0 = $$createType0; + const $$createField9_0 = $$createType2; + const $$createField15_0 = $$createType3; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("Handlers" in $$parsedSource) { + $$parsedSource["Handlers"] = $$createField0_0($$parsedSource["Handlers"]); + } + if ("RemoteIPHeaders" in $$parsedSource) { + $$parsedSource["RemoteIPHeaders"] = $$createField9_0($$parsedSource["RemoteIPHeaders"]); + } + if ("FuncMap" in $$parsedSource) { + $$parsedSource["FuncMap"] = $$createField15_0($$parsedSource["FuncMap"]); + } + return new Engine($$parsedSource as Partial); + } +} + +/** + * HandlerFunc defines the handler used by gin middleware as return value. + */ +export type HandlerFunc = any; + +/** + * HandlersChain defines a HandlerFunc slice. + */ +export type HandlersChain = HandlerFunc[]; + +// Private type creation functions +var $$createType0 = (function $$initCreateType0(...args: any[]): any { + if ($$createType0 === $$initCreateType0) { + $$createType0 = $$createType1; + } + return $$createType0(...args); +}); +const $$createType1 = $Create.Array($Create.Any); +const $$createType2 = $Create.Array($Create.Any); +var $$createType3 = (function $$initCreateType3(...args: any[]): any { + if ($$createType3 === $$initCreateType3) { + $$createType3 = $$createType4; + } + return $$createType3(...args); +}); +const $$createType4 = $Create.Map($Create.Any, $Create.Any); diff --git a/cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/render/index.ts b/cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/render/index.ts new file mode 100644 index 00000000..c4ad4213 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/render/index.ts @@ -0,0 +1,6 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export type { + HTMLRender +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/render/models.ts b/cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/render/models.ts new file mode 100644 index 00000000..07b0af3d --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/gin-gonic/gin/render/models.ts @@ -0,0 +1,11 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * HTMLRender interface is to be implemented by HTMLProduction and HTMLDebug. + */ +export type HTMLRender = any; diff --git a/cmd/core-gui/frontend/bindings/github.com/leaanthony/u/index.ts b/cmd/core-gui/frontend/bindings/github.com/leaanthony/u/index.ts new file mode 100644 index 00000000..69f881f2 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/leaanthony/u/index.ts @@ -0,0 +1,7 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export { + Bool, + Var +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/leaanthony/u/models.ts b/cmd/core-gui/frontend/bindings/github.com/leaanthony/u/models.ts new file mode 100644 index 00000000..48012618 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/leaanthony/u/models.ts @@ -0,0 +1,40 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * Var is a variable that can be set, unset and queried for its state. + */ +export class Var { + + /** Creates a new Var instance. */ + constructor($$source: Partial> = {}) { + + Object.assign(this, $$source); + } + + /** + * Given creation functions for each type parameter, + * returns a creation function for a concrete instance + * of the generic class Var. + */ + static createFrom($$createParamT: (source: any) => T): ($$source?: any) => Var { + return ($$source: any = {}) => { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new Var($$parsedSource as Partial>); + }; + } +} + +/** + * Bool is a `bool` that can be unset + */ +export const Bool = Var; + +/** + * Bool is a `bool` that can be unset + */ +export type Bool = Var; diff --git a/cmd/core-gui/frontend/bindings/github.com/nicksnyder/go-i18n/v2/i18n/index.ts b/cmd/core-gui/frontend/bindings/github.com/nicksnyder/go-i18n/v2/i18n/index.ts new file mode 100644 index 00000000..5510dfa9 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/nicksnyder/go-i18n/v2/i18n/index.ts @@ -0,0 +1,6 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export { + Bundle +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/nicksnyder/go-i18n/v2/i18n/models.ts b/cmd/core-gui/frontend/bindings/github.com/nicksnyder/go-i18n/v2/i18n/models.ts new file mode 100644 index 00000000..8d8eaf64 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/nicksnyder/go-i18n/v2/i18n/models.ts @@ -0,0 +1,30 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * Bundle stores a set of messages and pluralization rules. + * Most applications only need a single bundle + * that is initialized early in the application's lifecycle. + * It is not goroutine safe to modify the bundle while Localizers + * are reading from it. + */ +export class Bundle { + + /** Creates a new Bundle instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new Bundle instance from a string or object. + */ + static createFrom($$source: any = {}): Bundle { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new Bundle($$parsedSource as Partial); + } +} diff --git a/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/internal/eventcreate.ts b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/internal/eventcreate.ts new file mode 100644 index 00000000..1ea10585 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/internal/eventcreate.ts @@ -0,0 +1,9 @@ +//@ts-check +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +Object.freeze($Create.Events); diff --git a/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/internal/eventdata.d.ts b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/internal/eventdata.d.ts new file mode 100644 index 00000000..3dd1807b --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/internal/eventdata.d.ts @@ -0,0 +1,2 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT diff --git a/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/application/index.ts b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/application/index.ts new file mode 100644 index 00000000..0f5cf566 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/application/index.ts @@ -0,0 +1,47 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export { + App, + BackdropType, + BackgroundType, + BrowserManager, + ButtonState, + ClipboardManager, + ContextMenuManager, + CoreWebView2PermissionState, + DialogManager, + DragEffect, + EnvironmentManager, + EventManager, + KeyBindingManager, + LinuxWindow, + MacAppearanceType, + MacBackdrop, + MacLiquidGlass, + MacLiquidGlassStyle, + MacTitleBar, + MacToolbarStyle, + MacWebviewPreferences, + MacWindow, + MacWindowLevel, + Menu, + MenuBarTheme, + MenuManager, + NSVisualEffectMaterial, + RGBA, + ScreenManager, + ServiceOptions, + SystemTrayManager, + TextTheme, + Theme, + ThemeSettings, + WebviewGpuPolicy, + WebviewWindow, + WebviewWindowOptions, + WindowManager, + WindowStartPosition, + WindowState, + WindowTheme, + WindowsWindow +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/application/models.ts b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/application/models.ts new file mode 100644 index 00000000..59c28a48 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/application/models.ts @@ -0,0 +1,2051 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as u$0 from "../../../../../leaanthony/u/models.js"; +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as events$0 from "../events/models.js"; +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as slog$0 from "../../../../../../log/slog/models.js"; + +export class App { + /** + * Manager pattern for organized API + */ + "Window": WindowManager | null; + "ContextMenu": ContextMenuManager | null; + "KeyBinding": KeyBindingManager | null; + "Browser": BrowserManager | null; + "Env": EnvironmentManager | null; + "Dialog": DialogManager | null; + "Event": EventManager | null; + "Menu": MenuManager | null; + "Screen": ScreenManager | null; + "Clipboard": ClipboardManager | null; + "SystemTray": SystemTrayManager | null; + "Logger": slog$0.Logger | null; + + /** Creates a new App instance. */ + constructor($$source: Partial = {}) { + if (!("Window" in $$source)) { + this["Window"] = null; + } + if (!("ContextMenu" in $$source)) { + this["ContextMenu"] = null; + } + if (!("KeyBinding" in $$source)) { + this["KeyBinding"] = null; + } + if (!("Browser" in $$source)) { + this["Browser"] = null; + } + if (!("Env" in $$source)) { + this["Env"] = null; + } + if (!("Dialog" in $$source)) { + this["Dialog"] = null; + } + if (!("Event" in $$source)) { + this["Event"] = null; + } + if (!("Menu" in $$source)) { + this["Menu"] = null; + } + if (!("Screen" in $$source)) { + this["Screen"] = null; + } + if (!("Clipboard" in $$source)) { + this["Clipboard"] = null; + } + if (!("SystemTray" in $$source)) { + this["SystemTray"] = null; + } + if (!("Logger" in $$source)) { + this["Logger"] = null; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new App instance from a string or object. + */ + static createFrom($$source: any = {}): App { + const $$createField0_0 = $$createType1; + const $$createField1_0 = $$createType3; + const $$createField2_0 = $$createType5; + const $$createField3_0 = $$createType7; + const $$createField4_0 = $$createType9; + const $$createField5_0 = $$createType11; + const $$createField6_0 = $$createType13; + const $$createField7_0 = $$createType15; + const $$createField8_0 = $$createType17; + const $$createField9_0 = $$createType19; + const $$createField10_0 = $$createType21; + const $$createField11_0 = $$createType23; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("Window" in $$parsedSource) { + $$parsedSource["Window"] = $$createField0_0($$parsedSource["Window"]); + } + if ("ContextMenu" in $$parsedSource) { + $$parsedSource["ContextMenu"] = $$createField1_0($$parsedSource["ContextMenu"]); + } + if ("KeyBinding" in $$parsedSource) { + $$parsedSource["KeyBinding"] = $$createField2_0($$parsedSource["KeyBinding"]); + } + if ("Browser" in $$parsedSource) { + $$parsedSource["Browser"] = $$createField3_0($$parsedSource["Browser"]); + } + if ("Env" in $$parsedSource) { + $$parsedSource["Env"] = $$createField4_0($$parsedSource["Env"]); + } + if ("Dialog" in $$parsedSource) { + $$parsedSource["Dialog"] = $$createField5_0($$parsedSource["Dialog"]); + } + if ("Event" in $$parsedSource) { + $$parsedSource["Event"] = $$createField6_0($$parsedSource["Event"]); + } + if ("Menu" in $$parsedSource) { + $$parsedSource["Menu"] = $$createField7_0($$parsedSource["Menu"]); + } + if ("Screen" in $$parsedSource) { + $$parsedSource["Screen"] = $$createField8_0($$parsedSource["Screen"]); + } + if ("Clipboard" in $$parsedSource) { + $$parsedSource["Clipboard"] = $$createField9_0($$parsedSource["Clipboard"]); + } + if ("SystemTray" in $$parsedSource) { + $$parsedSource["SystemTray"] = $$createField10_0($$parsedSource["SystemTray"]); + } + if ("Logger" in $$parsedSource) { + $$parsedSource["Logger"] = $$createField11_0($$parsedSource["Logger"]); + } + return new App($$parsedSource as Partial); + } +} + +export enum BackdropType { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = 0, + + Auto = 0, + None = 1, + Mica = 2, + Acrylic = 3, + Tabbed = 4, +}; + +export enum BackgroundType { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = 0, + + BackgroundTypeSolid = 0, + BackgroundTypeTransparent = 1, + BackgroundTypeTranslucent = 2, +}; + +/** + * BrowserManager manages browser-related operations + */ +export class BrowserManager { + + /** Creates a new BrowserManager instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new BrowserManager instance from a string or object. + */ + static createFrom($$source: any = {}): BrowserManager { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new BrowserManager($$parsedSource as Partial); + } +} + +export enum ButtonState { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = 0, + + ButtonEnabled = 0, + ButtonDisabled = 1, + ButtonHidden = 2, +}; + +/** + * ClipboardManager manages clipboard operations + */ +export class ClipboardManager { + + /** Creates a new ClipboardManager instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new ClipboardManager instance from a string or object. + */ + static createFrom($$source: any = {}): ClipboardManager { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new ClipboardManager($$parsedSource as Partial); + } +} + +/** + * ContextMenuManager manages all context menu operations + */ +export class ContextMenuManager { + + /** Creates a new ContextMenuManager instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new ContextMenuManager instance from a string or object. + */ + static createFrom($$source: any = {}): ContextMenuManager { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new ContextMenuManager($$parsedSource as Partial); + } +} + +export enum CoreWebView2PermissionState { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = 0, + + CoreWebView2PermissionStateDefault = 0, + CoreWebView2PermissionStateAllow = 1, + CoreWebView2PermissionStateDeny = 2, +}; + +/** + * DialogManager manages dialog-related operations + */ +export class DialogManager { + + /** Creates a new DialogManager instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new DialogManager instance from a string or object. + */ + static createFrom($$source: any = {}): DialogManager { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new DialogManager($$parsedSource as Partial); + } +} + +export enum DragEffect { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = 0, + + /** + * DragEffectNone is used to indicate that the drop target cannot accept the data. + */ + DragEffectNone = 1, + + /** + * DragEffectCopy is used to indicate that the data is copied to the drop target. + */ + DragEffectCopy = 2, + + /** + * DragEffectMove is used to indicate that the data is removed from the drag source. + */ + DragEffectMove = 3, + + /** + * DragEffectLink is used to indicate that a link to the original data is established. + */ + DragEffectLink = 4, +}; + +/** + * EnvironmentManager manages environment-related operations + */ +export class EnvironmentManager { + + /** Creates a new EnvironmentManager instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new EnvironmentManager instance from a string or object. + */ + static createFrom($$source: any = {}): EnvironmentManager { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new EnvironmentManager($$parsedSource as Partial); + } +} + +/** + * EventManager manages event-related operations + */ +export class EventManager { + + /** Creates a new EventManager instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new EventManager instance from a string or object. + */ + static createFrom($$source: any = {}): EventManager { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new EventManager($$parsedSource as Partial); + } +} + +/** + * KeyBindingManager manages all key binding operations + */ +export class KeyBindingManager { + + /** Creates a new KeyBindingManager instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new KeyBindingManager instance from a string or object. + */ + static createFrom($$source: any = {}): KeyBindingManager { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new KeyBindingManager($$parsedSource as Partial); + } +} + +/** + * LinuxWindow specific to Linux windows + */ +export class LinuxWindow { + /** + * Icon Sets up the icon representing the window. This icon is used when the window is minimized + * (also known as iconified). + */ + "Icon": string; + + /** + * WindowIsTranslucent sets the window's background to transparent when enabled. + */ + "WindowIsTranslucent": boolean; + + /** + * WebviewGpuPolicy used for determining the hardware acceleration policy for the webview. + * - WebviewGpuPolicyAlways + * - WebviewGpuPolicyOnDemand + * - WebviewGpuPolicyNever + * + * Due to https://github.com/wailsapp/wails/issues/2977, if options.Linux is nil + * in the call to wails.Run(), WebviewGpuPolicy is set by default to WebviewGpuPolicyNever. + * Client code may override this behavior by passing a non-nil Options and set + * WebviewGpuPolicy as needed. + */ + "WebviewGpuPolicy": WebviewGpuPolicy; + + /** + * WindowDidMoveDebounceMS is the debounce time in milliseconds for the WindowDidMove event + */ + "WindowDidMoveDebounceMS": number; + + /** + * Menu is the window's menu + */ + "Menu": Menu | null; + + /** Creates a new LinuxWindow instance. */ + constructor($$source: Partial = {}) { + if (!("Icon" in $$source)) { + this["Icon"] = ""; + } + if (!("WindowIsTranslucent" in $$source)) { + this["WindowIsTranslucent"] = false; + } + if (!("WebviewGpuPolicy" in $$source)) { + this["WebviewGpuPolicy"] = WebviewGpuPolicy.$zero; + } + if (!("WindowDidMoveDebounceMS" in $$source)) { + this["WindowDidMoveDebounceMS"] = 0; + } + if (!("Menu" in $$source)) { + this["Menu"] = null; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new LinuxWindow instance from a string or object. + */ + static createFrom($$source: any = {}): LinuxWindow { + const $$createField0_0 = $Create.ByteSlice; + const $$createField4_0 = $$createType25; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("Icon" in $$parsedSource) { + $$parsedSource["Icon"] = $$createField0_0($$parsedSource["Icon"]); + } + if ("Menu" in $$parsedSource) { + $$parsedSource["Menu"] = $$createField4_0($$parsedSource["Menu"]); + } + return new LinuxWindow($$parsedSource as Partial); + } +} + +/** + * MacAppearanceType is a type of Appearance for Cocoa windows + */ +export enum MacAppearanceType { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = "", + + /** + * DefaultAppearance uses the default system value + */ + DefaultAppearance = "", + + /** + * NSAppearanceNameAqua - The standard light system appearance. + */ + NSAppearanceNameAqua = "NSAppearanceNameAqua", + + /** + * NSAppearanceNameDarkAqua - The standard dark system appearance. + */ + NSAppearanceNameDarkAqua = "NSAppearanceNameDarkAqua", + + /** + * NSAppearanceNameVibrantLight - The light vibrant appearance + */ + NSAppearanceNameVibrantLight = "NSAppearanceNameVibrantLight", + + /** + * NSAppearanceNameAccessibilityHighContrastAqua - A high-contrast version of the standard light system appearance. + */ + NSAppearanceNameAccessibilityHighContrastAqua = "NSAppearanceNameAccessibilityHighContrastAqua", + + /** + * NSAppearanceNameAccessibilityHighContrastDarkAqua - A high-contrast version of the standard dark system appearance. + */ + NSAppearanceNameAccessibilityHighContrastDarkAqua = "NSAppearanceNameAccessibilityHighContrastDarkAqua", + + /** + * NSAppearanceNameAccessibilityHighContrastVibrantLight - A high-contrast version of the light vibrant appearance. + */ + NSAppearanceNameAccessibilityHighContrastVibrantLight = "NSAppearanceNameAccessibilityHighContrastVibrantLight", + + /** + * NSAppearanceNameAccessibilityHighContrastVibrantDark - A high-contrast version of the dark vibrant appearance. + */ + NSAppearanceNameAccessibilityHighContrastVibrantDark = "NSAppearanceNameAccessibilityHighContrastVibrantDark", +}; + +/** + * MacBackdrop is the backdrop type for macOS + */ +export enum MacBackdrop { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = 0, + + /** + * MacBackdropNormal - The default value. The window will have a normal opaque background. + */ + MacBackdropNormal = 0, + + /** + * MacBackdropTransparent - The window will have a transparent background, with the content underneath it being visible + */ + MacBackdropTransparent = 1, + + /** + * MacBackdropTranslucent - The window will have a translucent background, with the content underneath it being "fuzzy" or "frosted" + */ + MacBackdropTranslucent = 2, + + /** + * MacBackdropLiquidGlass - The window will use Apple's Liquid Glass effect (macOS 15.0+ with fallback to translucent) + */ + MacBackdropLiquidGlass = 3, +}; + +/** + * MacLiquidGlass contains configuration for the Liquid Glass effect + */ +export class MacLiquidGlass { + /** + * Style of the glass effect + */ + "Style": MacLiquidGlassStyle; + + /** + * Material to use for NSVisualEffectView (when NSGlassEffectView is not available) + * Set to NSVisualEffectMaterialAuto to use automatic selection based on Style + */ + "Material": NSVisualEffectMaterial; + + /** + * Corner radius for the glass effect (0 for square corners) + */ + "CornerRadius": number; + + /** + * Tint color for the glass (optional, nil for no tint) + */ + "TintColor": RGBA | null; + + /** + * Group identifier for merging multiple glass windows + */ + "GroupID": string; + + /** + * Spacing between grouped glass elements (in points) + */ + "GroupSpacing": number; + + /** Creates a new MacLiquidGlass instance. */ + constructor($$source: Partial = {}) { + if (!("Style" in $$source)) { + this["Style"] = MacLiquidGlassStyle.$zero; + } + if (!("Material" in $$source)) { + this["Material"] = NSVisualEffectMaterial.$zero; + } + if (!("CornerRadius" in $$source)) { + this["CornerRadius"] = 0; + } + if (!("TintColor" in $$source)) { + this["TintColor"] = null; + } + if (!("GroupID" in $$source)) { + this["GroupID"] = ""; + } + if (!("GroupSpacing" in $$source)) { + this["GroupSpacing"] = 0; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new MacLiquidGlass instance from a string or object. + */ + static createFrom($$source: any = {}): MacLiquidGlass { + const $$createField3_0 = $$createType27; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("TintColor" in $$parsedSource) { + $$parsedSource["TintColor"] = $$createField3_0($$parsedSource["TintColor"]); + } + return new MacLiquidGlass($$parsedSource as Partial); + } +} + +/** + * MacLiquidGlassStyle defines the style of the Liquid Glass effect + */ +export enum MacLiquidGlassStyle { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = 0, + + /** + * LiquidGlassStyleAutomatic - System determines the best style + */ + LiquidGlassStyleAutomatic = 0, + + /** + * LiquidGlassStyleLight - Light glass appearance + */ + LiquidGlassStyleLight = 1, + + /** + * LiquidGlassStyleDark - Dark glass appearance + */ + LiquidGlassStyleDark = 2, + + /** + * LiquidGlassStyleVibrant - Vibrant glass with enhanced effects + */ + LiquidGlassStyleVibrant = 3, +}; + +/** + * MacTitleBar contains options for the Mac titlebar + */ +export class MacTitleBar { + /** + * AppearsTransparent will make the titlebar transparent + */ + "AppearsTransparent": boolean; + + /** + * Hide will hide the titlebar + */ + "Hide": boolean; + + /** + * HideTitle will hide the title + */ + "HideTitle": boolean; + + /** + * FullSizeContent will extend the window content to the full size of the window + */ + "FullSizeContent": boolean; + + /** + * UseToolbar will use a toolbar instead of a titlebar + */ + "UseToolbar": boolean; + + /** + * HideToolbarSeparator will hide the toolbar separator + */ + "HideToolbarSeparator": boolean; + + /** + * ShowToolbarWhenFullscreen will keep the toolbar visible when the window is in fullscreen mode + */ + "ShowToolbarWhenFullscreen": boolean; + + /** + * ToolbarStyle is the style of toolbar to use + */ + "ToolbarStyle": MacToolbarStyle; + + /** Creates a new MacTitleBar instance. */ + constructor($$source: Partial = {}) { + if (!("AppearsTransparent" in $$source)) { + this["AppearsTransparent"] = false; + } + if (!("Hide" in $$source)) { + this["Hide"] = false; + } + if (!("HideTitle" in $$source)) { + this["HideTitle"] = false; + } + if (!("FullSizeContent" in $$source)) { + this["FullSizeContent"] = false; + } + if (!("UseToolbar" in $$source)) { + this["UseToolbar"] = false; + } + if (!("HideToolbarSeparator" in $$source)) { + this["HideToolbarSeparator"] = false; + } + if (!("ShowToolbarWhenFullscreen" in $$source)) { + this["ShowToolbarWhenFullscreen"] = false; + } + if (!("ToolbarStyle" in $$source)) { + this["ToolbarStyle"] = MacToolbarStyle.$zero; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new MacTitleBar instance from a string or object. + */ + static createFrom($$source: any = {}): MacTitleBar { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new MacTitleBar($$parsedSource as Partial); + } +} + +/** + * MacToolbarStyle is the style of toolbar for macOS + */ +export enum MacToolbarStyle { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = 0, + + /** + * MacToolbarStyleAutomatic - The default value. The style will be determined by the window's given configuration + */ + MacToolbarStyleAutomatic = 0, + + /** + * MacToolbarStyleExpanded - The toolbar will appear below the window title + */ + MacToolbarStyleExpanded = 1, + + /** + * MacToolbarStylePreference - The toolbar will appear below the window title and the items in the toolbar will attempt to have equal widths when possible + */ + MacToolbarStylePreference = 2, + + /** + * MacToolbarStyleUnified - The window title will appear inline with the toolbar when visible + */ + MacToolbarStyleUnified = 3, + + /** + * MacToolbarStyleUnifiedCompact - Same as MacToolbarStyleUnified, but with reduced margins in the toolbar allowing more focus to be on the contents of the window + */ + MacToolbarStyleUnifiedCompact = 4, +}; + +/** + * MacWebviewPreferences contains preferences for the Mac webview + */ +export class MacWebviewPreferences { + /** + * TabFocusesLinks will enable tabbing to links + */ + "TabFocusesLinks": u$0.Bool; + + /** + * TextInteractionEnabled will enable text interaction + */ + "TextInteractionEnabled": u$0.Bool; + + /** + * FullscreenEnabled will enable fullscreen + */ + "FullscreenEnabled": u$0.Bool; + + /** + * AllowsBackForwardNavigationGestures enables horizontal swipe gestures for back/forward navigation + */ + "AllowsBackForwardNavigationGestures": u$0.Bool; + + /** Creates a new MacWebviewPreferences instance. */ + constructor($$source: Partial = {}) { + if (!("TabFocusesLinks" in $$source)) { + this["TabFocusesLinks"] = (new u$0.Bool()); + } + if (!("TextInteractionEnabled" in $$source)) { + this["TextInteractionEnabled"] = (new u$0.Bool()); + } + if (!("FullscreenEnabled" in $$source)) { + this["FullscreenEnabled"] = (new u$0.Bool()); + } + if (!("AllowsBackForwardNavigationGestures" in $$source)) { + this["AllowsBackForwardNavigationGestures"] = (new u$0.Bool()); + } + + Object.assign(this, $$source); + } + + /** + * Creates a new MacWebviewPreferences instance from a string or object. + */ + static createFrom($$source: any = {}): MacWebviewPreferences { + const $$createField0_0 = $$createType28; + const $$createField1_0 = $$createType28; + const $$createField2_0 = $$createType28; + const $$createField3_0 = $$createType28; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("TabFocusesLinks" in $$parsedSource) { + $$parsedSource["TabFocusesLinks"] = $$createField0_0($$parsedSource["TabFocusesLinks"]); + } + if ("TextInteractionEnabled" in $$parsedSource) { + $$parsedSource["TextInteractionEnabled"] = $$createField1_0($$parsedSource["TextInteractionEnabled"]); + } + if ("FullscreenEnabled" in $$parsedSource) { + $$parsedSource["FullscreenEnabled"] = $$createField2_0($$parsedSource["FullscreenEnabled"]); + } + if ("AllowsBackForwardNavigationGestures" in $$parsedSource) { + $$parsedSource["AllowsBackForwardNavigationGestures"] = $$createField3_0($$parsedSource["AllowsBackForwardNavigationGestures"]); + } + return new MacWebviewPreferences($$parsedSource as Partial); + } +} + +/** + * MacWindow contains macOS specific options for Webview Windows + */ +export class MacWindow { + /** + * Backdrop is the backdrop type for the window + */ + "Backdrop": MacBackdrop; + + /** + * DisableShadow will disable the window shadow + */ + "DisableShadow": boolean; + + /** + * TitleBar contains options for the Mac titlebar + */ + "TitleBar": MacTitleBar; + + /** + * Appearance is the appearance type for the window + */ + "Appearance": MacAppearanceType; + + /** + * InvisibleTitleBarHeight defines the height of an invisible titlebar which responds to dragging + */ + "InvisibleTitleBarHeight": number; + + /** + * Maps events from platform specific to common event types + */ + "EventMapping": { [_: `${number}`]: events$0.WindowEventType }; + + /** + * EnableFraudulentWebsiteWarnings will enable warnings for fraudulent websites. + * Default: false + */ + "EnableFraudulentWebsiteWarnings": boolean; + + /** + * WebviewPreferences contains preferences for the webview + */ + "WebviewPreferences": MacWebviewPreferences; + + /** + * WindowLevel sets the window level to control the order of windows in the screen + */ + "WindowLevel": MacWindowLevel; + + /** + * LiquidGlass contains configuration for the Liquid Glass effect + */ + "LiquidGlass": MacLiquidGlass; + + /** Creates a new MacWindow instance. */ + constructor($$source: Partial = {}) { + if (!("Backdrop" in $$source)) { + this["Backdrop"] = MacBackdrop.$zero; + } + if (!("DisableShadow" in $$source)) { + this["DisableShadow"] = false; + } + if (!("TitleBar" in $$source)) { + this["TitleBar"] = (new MacTitleBar()); + } + if (!("Appearance" in $$source)) { + this["Appearance"] = MacAppearanceType.$zero; + } + if (!("InvisibleTitleBarHeight" in $$source)) { + this["InvisibleTitleBarHeight"] = 0; + } + if (!("EventMapping" in $$source)) { + this["EventMapping"] = {}; + } + if (!("EnableFraudulentWebsiteWarnings" in $$source)) { + this["EnableFraudulentWebsiteWarnings"] = false; + } + if (!("WebviewPreferences" in $$source)) { + this["WebviewPreferences"] = (new MacWebviewPreferences()); + } + if (!("WindowLevel" in $$source)) { + this["WindowLevel"] = MacWindowLevel.$zero; + } + if (!("LiquidGlass" in $$source)) { + this["LiquidGlass"] = (new MacLiquidGlass()); + } + + Object.assign(this, $$source); + } + + /** + * Creates a new MacWindow instance from a string or object. + */ + static createFrom($$source: any = {}): MacWindow { + const $$createField2_0 = $$createType29; + const $$createField5_0 = $$createType30; + const $$createField7_0 = $$createType31; + const $$createField9_0 = $$createType32; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("TitleBar" in $$parsedSource) { + $$parsedSource["TitleBar"] = $$createField2_0($$parsedSource["TitleBar"]); + } + if ("EventMapping" in $$parsedSource) { + $$parsedSource["EventMapping"] = $$createField5_0($$parsedSource["EventMapping"]); + } + if ("WebviewPreferences" in $$parsedSource) { + $$parsedSource["WebviewPreferences"] = $$createField7_0($$parsedSource["WebviewPreferences"]); + } + if ("LiquidGlass" in $$parsedSource) { + $$parsedSource["LiquidGlass"] = $$createField9_0($$parsedSource["LiquidGlass"]); + } + return new MacWindow($$parsedSource as Partial); + } +} + +export enum MacWindowLevel { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = "", + + MacWindowLevelNormal = "normal", + MacWindowLevelFloating = "floating", + MacWindowLevelTornOffMenu = "tornOffMenu", + MacWindowLevelModalPanel = "modalPanel", + MacWindowLevelMainMenu = "mainMenu", + MacWindowLevelStatus = "status", + MacWindowLevelPopUpMenu = "popUpMenu", + MacWindowLevelScreenSaver = "screenSaver", +}; + +export class Menu { + + /** Creates a new Menu instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new Menu instance from a string or object. + */ + static createFrom($$source: any = {}): Menu { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new Menu($$parsedSource as Partial); + } +} + +export class MenuBarTheme { + /** + * Default is the default theme + */ + "Default": TextTheme | null; + + /** + * Hover defines the theme to use when the menu item is hovered + */ + "Hover": TextTheme | null; + + /** + * Selected defines the theme to use when the menu item is selected + */ + "Selected": TextTheme | null; + + /** Creates a new MenuBarTheme instance. */ + constructor($$source: Partial = {}) { + if (!("Default" in $$source)) { + this["Default"] = null; + } + if (!("Hover" in $$source)) { + this["Hover"] = null; + } + if (!("Selected" in $$source)) { + this["Selected"] = null; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new MenuBarTheme instance from a string or object. + */ + static createFrom($$source: any = {}): MenuBarTheme { + const $$createField0_0 = $$createType34; + const $$createField1_0 = $$createType34; + const $$createField2_0 = $$createType34; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("Default" in $$parsedSource) { + $$parsedSource["Default"] = $$createField0_0($$parsedSource["Default"]); + } + if ("Hover" in $$parsedSource) { + $$parsedSource["Hover"] = $$createField1_0($$parsedSource["Hover"]); + } + if ("Selected" in $$parsedSource) { + $$parsedSource["Selected"] = $$createField2_0($$parsedSource["Selected"]); + } + return new MenuBarTheme($$parsedSource as Partial); + } +} + +/** + * MenuManager manages menu-related operations + */ +export class MenuManager { + + /** Creates a new MenuManager instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new MenuManager instance from a string or object. + */ + static createFrom($$source: any = {}): MenuManager { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new MenuManager($$parsedSource as Partial); + } +} + +/** + * NSVisualEffectMaterial represents the NSVisualEffectMaterial enum for macOS + */ +export enum NSVisualEffectMaterial { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = 0, + + /** + * NSVisualEffectMaterial values from macOS SDK + */ + NSVisualEffectMaterialAppearanceBased = 0, + NSVisualEffectMaterialLight = 1, + NSVisualEffectMaterialDark = 2, + NSVisualEffectMaterialTitlebar = 3, + NSVisualEffectMaterialSelection = 4, + NSVisualEffectMaterialMenu = 5, + NSVisualEffectMaterialPopover = 6, + NSVisualEffectMaterialSidebar = 7, + NSVisualEffectMaterialHeaderView = 10, + NSVisualEffectMaterialSheet = 11, + NSVisualEffectMaterialWindowBackground = 12, + NSVisualEffectMaterialHUDWindow = 13, + NSVisualEffectMaterialFullScreenUI = 15, + NSVisualEffectMaterialToolTip = 17, + NSVisualEffectMaterialContentBackground = 18, + NSVisualEffectMaterialUnderWindowBackground = 21, + NSVisualEffectMaterialUnderPageBackground = 22, + + /** + * Use auto-selection based on Style + */ + NSVisualEffectMaterialAuto = -1, +}; + +export class RGBA { + "Red": number; + "Green": number; + "Blue": number; + "Alpha": number; + + /** Creates a new RGBA instance. */ + constructor($$source: Partial = {}) { + if (!("Red" in $$source)) { + this["Red"] = 0; + } + if (!("Green" in $$source)) { + this["Green"] = 0; + } + if (!("Blue" in $$source)) { + this["Blue"] = 0; + } + if (!("Alpha" in $$source)) { + this["Alpha"] = 0; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new RGBA instance from a string or object. + */ + static createFrom($$source: any = {}): RGBA { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new RGBA($$parsedSource as Partial); + } +} + +export class ScreenManager { + + /** Creates a new ScreenManager instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new ScreenManager instance from a string or object. + */ + static createFrom($$source: any = {}): ScreenManager { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new ScreenManager($$parsedSource as Partial); + } +} + +/** + * ServiceOptions provides optional parameters for calls to [NewService]. + */ +export class ServiceOptions { + /** + * Name can be set to override the name of the service + * for logging and debugging purposes. + * + * If empty, it will default + * either to the value obtained through the [ServiceName] interface, + * or to the type name. + */ + "Name": string; + + /** + * If the service instance implements [http.Handler], + * it will be mounted on the internal asset server + * at the prefix specified by Route. + */ + "Route": string; + + /** + * MarshalError will be called if non-nil + * to marshal to JSON the error values returned by this service's methods. + * + * MarshalError is not allowed to fail, + * but it may return a nil slice to fall back + * to the globally configured error handler. + * + * If the returned slice is not nil, it must contain valid JSON. + */ + "MarshalError": any; + + /** Creates a new ServiceOptions instance. */ + constructor($$source: Partial = {}) { + if (!("Name" in $$source)) { + this["Name"] = ""; + } + if (!("Route" in $$source)) { + this["Route"] = ""; + } + if (!("MarshalError" in $$source)) { + this["MarshalError"] = null; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new ServiceOptions instance from a string or object. + */ + static createFrom($$source: any = {}): ServiceOptions { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new ServiceOptions($$parsedSource as Partial); + } +} + +/** + * SystemTrayManager manages system tray-related operations + */ +export class SystemTrayManager { + + /** Creates a new SystemTrayManager instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new SystemTrayManager instance from a string or object. + */ + static createFrom($$source: any = {}): SystemTrayManager { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new SystemTrayManager($$parsedSource as Partial); + } +} + +export class TextTheme { + /** + * Text is the colour of the text + */ + "Text": number | null; + + /** + * Background is the background colour of the text + */ + "Background": number | null; + + /** Creates a new TextTheme instance. */ + constructor($$source: Partial = {}) { + if (!("Text" in $$source)) { + this["Text"] = null; + } + if (!("Background" in $$source)) { + this["Background"] = null; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new TextTheme instance from a string or object. + */ + static createFrom($$source: any = {}): TextTheme { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new TextTheme($$parsedSource as Partial); + } +} + +export enum Theme { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = 0, + + /** + * SystemDefault will use whatever the system theme is. The application will follow system theme changes. + */ + SystemDefault = 0, + + /** + * Dark Mode + */ + Dark = 1, + + /** + * Light Mode + */ + Light = 2, +}; + +/** + * ThemeSettings defines custom colours to use in dark or light mode. + * They may be set using the hex values: 0x00BBGGRR + */ +export class ThemeSettings { + /** + * Dark mode active window + */ + "DarkModeActive": WindowTheme | null; + + /** + * Dark mode inactive window + */ + "DarkModeInactive": WindowTheme | null; + + /** + * Light mode active window + */ + "LightModeActive": WindowTheme | null; + + /** + * Light mode inactive window + */ + "LightModeInactive": WindowTheme | null; + + /** + * Dark mode MenuBar + */ + "DarkModeMenuBar": MenuBarTheme | null; + + /** + * Light mode MenuBar + */ + "LightModeMenuBar": MenuBarTheme | null; + + /** Creates a new ThemeSettings instance. */ + constructor($$source: Partial = {}) { + if (!("DarkModeActive" in $$source)) { + this["DarkModeActive"] = null; + } + if (!("DarkModeInactive" in $$source)) { + this["DarkModeInactive"] = null; + } + if (!("LightModeActive" in $$source)) { + this["LightModeActive"] = null; + } + if (!("LightModeInactive" in $$source)) { + this["LightModeInactive"] = null; + } + if (!("DarkModeMenuBar" in $$source)) { + this["DarkModeMenuBar"] = null; + } + if (!("LightModeMenuBar" in $$source)) { + this["LightModeMenuBar"] = null; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new ThemeSettings instance from a string or object. + */ + static createFrom($$source: any = {}): ThemeSettings { + const $$createField0_0 = $$createType36; + const $$createField1_0 = $$createType36; + const $$createField2_0 = $$createType36; + const $$createField3_0 = $$createType36; + const $$createField4_0 = $$createType38; + const $$createField5_0 = $$createType38; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("DarkModeActive" in $$parsedSource) { + $$parsedSource["DarkModeActive"] = $$createField0_0($$parsedSource["DarkModeActive"]); + } + if ("DarkModeInactive" in $$parsedSource) { + $$parsedSource["DarkModeInactive"] = $$createField1_0($$parsedSource["DarkModeInactive"]); + } + if ("LightModeActive" in $$parsedSource) { + $$parsedSource["LightModeActive"] = $$createField2_0($$parsedSource["LightModeActive"]); + } + if ("LightModeInactive" in $$parsedSource) { + $$parsedSource["LightModeInactive"] = $$createField3_0($$parsedSource["LightModeInactive"]); + } + if ("DarkModeMenuBar" in $$parsedSource) { + $$parsedSource["DarkModeMenuBar"] = $$createField4_0($$parsedSource["DarkModeMenuBar"]); + } + if ("LightModeMenuBar" in $$parsedSource) { + $$parsedSource["LightModeMenuBar"] = $$createField5_0($$parsedSource["LightModeMenuBar"]); + } + return new ThemeSettings($$parsedSource as Partial); + } +} + +/** + * WebviewGpuPolicy values used for determining the webview's hardware acceleration policy. + */ +export enum WebviewGpuPolicy { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = 0, + + /** + * WebviewGpuPolicyAlways Hardware acceleration is always enabled. + */ + WebviewGpuPolicyAlways = 0, + + /** + * WebviewGpuPolicyOnDemand Hardware acceleration is enabled/disabled as request by web contents. + */ + WebviewGpuPolicyOnDemand = 1, + + /** + * WebviewGpuPolicyNever Hardware acceleration is always disabled. + */ + WebviewGpuPolicyNever = 2, +}; + +export class WebviewWindow { + + /** Creates a new WebviewWindow instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new WebviewWindow instance from a string or object. + */ + static createFrom($$source: any = {}): WebviewWindow { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new WebviewWindow($$parsedSource as Partial); + } +} + +export class WebviewWindowOptions { + /** + * Name is a unique identifier that can be given to a window. + */ + "Name": string; + + /** + * Title is the title of the window. + */ + "Title": string; + + /** + * Width is the starting width of the window. + */ + "Width": number; + + /** + * Height is the starting height of the window. + */ + "Height": number; + + /** + * AlwaysOnTop will make the window float above other windows. + */ + "AlwaysOnTop": boolean; + + /** + * URL is the URL to load in the window. + */ + "URL": string; + + /** + * DisableResize will disable the ability to resize the window. + */ + "DisableResize": boolean; + + /** + * Frameless will remove the window frame. + */ + "Frameless": boolean; + + /** + * MinWidth is the minimum width of the window. + */ + "MinWidth": number; + + /** + * MinHeight is the minimum height of the window. + */ + "MinHeight": number; + + /** + * MaxWidth is the maximum width of the window. + */ + "MaxWidth": number; + + /** + * MaxHeight is the maximum height of the window. + */ + "MaxHeight": number; + + /** + * StartState indicates the state of the window when it is first shown. + * Default: WindowStateNormal + */ + "StartState": WindowState; + + /** + * BackgroundType is the type of background to use for the window. + * Default: BackgroundTypeSolid + */ + "BackgroundType": BackgroundType; + + /** + * BackgroundColour is the colour to use for the window background. + */ + "BackgroundColour": RGBA; + + /** + * HTML is the HTML to load in the window. + */ + "HTML": string; + + /** + * JS is the JavaScript to load in the window. + */ + "JS": string; + + /** + * CSS is the CSS to load in the window. + */ + "CSS": string; + + /** + * Initial Position + */ + "InitialPosition": WindowStartPosition; + + /** + * X is the starting X position of the window. + */ + "X": number; + + /** + * Y is the starting Y position of the window. + */ + "Y": number; + + /** + * Hidden will hide the window when it is first created. + */ + "Hidden": boolean; + + /** + * Zoom is the zoom level of the window. + */ + "Zoom": number; + + /** + * ZoomControlEnabled will enable the zoom control. + */ + "ZoomControlEnabled": boolean; + + /** + * EnableDragAndDrop will enable drag and drop. + */ + "EnableDragAndDrop": boolean; + + /** + * OpenInspectorOnStartup will open the inspector when the window is first shown. + */ + "OpenInspectorOnStartup": boolean; + + /** + * Mac options + */ + "Mac": MacWindow; + + /** + * Windows options + */ + "Windows": WindowsWindow; + + /** + * Linux options + */ + "Linux": LinuxWindow; + + /** + * Toolbar button states + */ + "MinimiseButtonState": ButtonState; + "MaximiseButtonState": ButtonState; + "CloseButtonState": ButtonState; + + /** + * If true, the window's devtools will be available (default true in builds without the `production` build tag) + */ + "DevToolsEnabled": boolean; + + /** + * If true, the window's default context menu will be disabled (default false) + */ + "DefaultContextMenuDisabled": boolean; + + /** + * KeyBindings is a map of key bindings to functions + */ + "KeyBindings": { [_: string]: any }; + + /** + * IgnoreMouseEvents will ignore mouse events in the window (Windows + Mac only) + */ + "IgnoreMouseEvents": boolean; + + /** + * ContentProtectionEnabled specifies whether content protection is enabled, preventing screen capture and recording. + * Effective on Windows and macOS only; no-op on Linux. + * Best-effort protection with platform-specific caveats (see docs). + */ + "ContentProtectionEnabled": boolean; + + /** Creates a new WebviewWindowOptions instance. */ + constructor($$source: Partial = {}) { + if (!("Name" in $$source)) { + this["Name"] = ""; + } + if (!("Title" in $$source)) { + this["Title"] = ""; + } + if (!("Width" in $$source)) { + this["Width"] = 0; + } + if (!("Height" in $$source)) { + this["Height"] = 0; + } + if (!("AlwaysOnTop" in $$source)) { + this["AlwaysOnTop"] = false; + } + if (!("URL" in $$source)) { + this["URL"] = ""; + } + if (!("DisableResize" in $$source)) { + this["DisableResize"] = false; + } + if (!("Frameless" in $$source)) { + this["Frameless"] = false; + } + if (!("MinWidth" in $$source)) { + this["MinWidth"] = 0; + } + if (!("MinHeight" in $$source)) { + this["MinHeight"] = 0; + } + if (!("MaxWidth" in $$source)) { + this["MaxWidth"] = 0; + } + if (!("MaxHeight" in $$source)) { + this["MaxHeight"] = 0; + } + if (!("StartState" in $$source)) { + this["StartState"] = WindowState.$zero; + } + if (!("BackgroundType" in $$source)) { + this["BackgroundType"] = BackgroundType.$zero; + } + if (!("BackgroundColour" in $$source)) { + this["BackgroundColour"] = (new RGBA()); + } + if (!("HTML" in $$source)) { + this["HTML"] = ""; + } + if (!("JS" in $$source)) { + this["JS"] = ""; + } + if (!("CSS" in $$source)) { + this["CSS"] = ""; + } + if (!("InitialPosition" in $$source)) { + this["InitialPosition"] = WindowStartPosition.$zero; + } + if (!("X" in $$source)) { + this["X"] = 0; + } + if (!("Y" in $$source)) { + this["Y"] = 0; + } + if (!("Hidden" in $$source)) { + this["Hidden"] = false; + } + if (!("Zoom" in $$source)) { + this["Zoom"] = 0; + } + if (!("ZoomControlEnabled" in $$source)) { + this["ZoomControlEnabled"] = false; + } + if (!("EnableDragAndDrop" in $$source)) { + this["EnableDragAndDrop"] = false; + } + if (!("OpenInspectorOnStartup" in $$source)) { + this["OpenInspectorOnStartup"] = false; + } + if (!("Mac" in $$source)) { + this["Mac"] = (new MacWindow()); + } + if (!("Windows" in $$source)) { + this["Windows"] = (new WindowsWindow()); + } + if (!("Linux" in $$source)) { + this["Linux"] = (new LinuxWindow()); + } + if (!("MinimiseButtonState" in $$source)) { + this["MinimiseButtonState"] = ButtonState.$zero; + } + if (!("MaximiseButtonState" in $$source)) { + this["MaximiseButtonState"] = ButtonState.$zero; + } + if (!("CloseButtonState" in $$source)) { + this["CloseButtonState"] = ButtonState.$zero; + } + if (!("DevToolsEnabled" in $$source)) { + this["DevToolsEnabled"] = false; + } + if (!("DefaultContextMenuDisabled" in $$source)) { + this["DefaultContextMenuDisabled"] = false; + } + if (!("KeyBindings" in $$source)) { + this["KeyBindings"] = {}; + } + if (!("IgnoreMouseEvents" in $$source)) { + this["IgnoreMouseEvents"] = false; + } + if (!("ContentProtectionEnabled" in $$source)) { + this["ContentProtectionEnabled"] = false; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new WebviewWindowOptions instance from a string or object. + */ + static createFrom($$source: any = {}): WebviewWindowOptions { + const $$createField14_0 = $$createType26; + const $$createField26_0 = $$createType39; + const $$createField27_0 = $$createType40; + const $$createField28_0 = $$createType41; + const $$createField34_0 = $$createType42; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("BackgroundColour" in $$parsedSource) { + $$parsedSource["BackgroundColour"] = $$createField14_0($$parsedSource["BackgroundColour"]); + } + if ("Mac" in $$parsedSource) { + $$parsedSource["Mac"] = $$createField26_0($$parsedSource["Mac"]); + } + if ("Windows" in $$parsedSource) { + $$parsedSource["Windows"] = $$createField27_0($$parsedSource["Windows"]); + } + if ("Linux" in $$parsedSource) { + $$parsedSource["Linux"] = $$createField28_0($$parsedSource["Linux"]); + } + if ("KeyBindings" in $$parsedSource) { + $$parsedSource["KeyBindings"] = $$createField34_0($$parsedSource["KeyBindings"]); + } + return new WebviewWindowOptions($$parsedSource as Partial); + } +} + +/** + * WindowManager manages all window-related operations + */ +export class WindowManager { + + /** Creates a new WindowManager instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new WindowManager instance from a string or object. + */ + static createFrom($$source: any = {}): WindowManager { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new WindowManager($$parsedSource as Partial); + } +} + +export enum WindowStartPosition { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = 0, + + WindowCentered = 0, + WindowXY = 1, +}; + +export enum WindowState { + /** + * The Go zero value for the underlying type of the enum. + */ + $zero = 0, + + WindowStateNormal = 0, + WindowStateMinimised = 1, + WindowStateMaximised = 2, + WindowStateFullscreen = 3, +}; + +export class WindowTheme { + /** + * BorderColour is the colour of the window border + */ + "BorderColour": number | null; + + /** + * TitleBarColour is the colour of the window title bar + */ + "TitleBarColour": number | null; + + /** + * TitleTextColour is the colour of the window title text + */ + "TitleTextColour": number | null; + + /** Creates a new WindowTheme instance. */ + constructor($$source: Partial = {}) { + if (!("BorderColour" in $$source)) { + this["BorderColour"] = null; + } + if (!("TitleBarColour" in $$source)) { + this["TitleBarColour"] = null; + } + if (!("TitleTextColour" in $$source)) { + this["TitleTextColour"] = null; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new WindowTheme instance from a string or object. + */ + static createFrom($$source: any = {}): WindowTheme { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new WindowTheme($$parsedSource as Partial); + } +} + +export class WindowsWindow { + /** + * Select the type of translucent backdrop. Requires Windows 11 22621 or later. + * Only used when window's `BackgroundType` is set to `BackgroundTypeTranslucent`. + * Default: Auto + */ + "BackdropType": BackdropType; + + /** + * Disable the icon in the titlebar + * Default: false + */ + "DisableIcon": boolean; + + /** + * Theme (Dark / Light / SystemDefault) + * Default: SystemDefault - The application will follow system theme changes. + */ + "Theme": Theme; + + /** + * Specify custom colours to use for dark/light mode + * Default: nil + */ + "CustomTheme": ThemeSettings; + + /** + * Disable all window decorations in Frameless mode, which means no "Aero Shadow" and no "Rounded Corner" will be shown. + * "Rounded Corners" are only available on Windows 11. + * Default: false + */ + "DisableFramelessWindowDecorations": boolean; + + /** + * WindowMask is used to set the window shape. Use a PNG with an alpha channel to create a custom shape. + * Default: nil + */ + "WindowMask": string; + + /** + * WindowMaskDraggable is used to make the window draggable by clicking on the window mask. + * Default: false + */ + "WindowMaskDraggable": boolean; + + /** + * ResizeDebounceMS is the amount of time to debounce redraws of webview2 + * when resizing the window + * Default: 0 + */ + "ResizeDebounceMS": number; + + /** + * WindowDidMoveDebounceMS is the amount of time to debounce the WindowDidMove event + * when moving the window + * Default: 0 + */ + "WindowDidMoveDebounceMS": number; + + /** + * Event mapping for the window. This allows you to define a translation from one event to another. + * Default: nil + */ + "EventMapping": { [_: `${number}`]: events$0.WindowEventType }; + + /** + * HiddenOnTaskbar hides the window from the taskbar + * Default: false + */ + "HiddenOnTaskbar": boolean; + + /** + * EnableSwipeGestures enables swipe gestures for the window + * Default: false + */ + "EnableSwipeGestures": boolean; + + /** + * Menu is the menu to use for the window. + */ + "Menu": Menu | null; + + /** + * Drag Cursor Effects + */ + "OnEnterEffect": DragEffect; + "OnOverEffect": DragEffect; + + /** + * Permissions map for WebView2. If empty, default permissions will be granted. + */ + "Permissions": { [_: `${number}`]: CoreWebView2PermissionState }; + + /** + * ExStyle is the extended window style + */ + "ExStyle": number; + + /** + * GeneralAutofillEnabled enables general autofill + */ + "GeneralAutofillEnabled": boolean; + + /** + * PasswordAutosaveEnabled enables autosaving passwords + */ + "PasswordAutosaveEnabled": boolean; + + /** + * EnabledFeatures, DisabledFeatures and AdditionalLaunchArgs are used to enable or disable specific features in the WebView2 browser. + * Available flags: https://learn.microsoft.com/en-us/microsoft-edge/webview2/concepts/webview-features-flags?tabs=dotnetcsharp#available-webview2-browser-flags + * WARNING: Apps in production shouldn't use WebView2 browser flags, + * because these flags might be removed or altered at any time, + * and aren't necessarily supported long-term. + * AdditionalLaunchArgs should always be preceded by "--" + */ + "EnabledFeatures": string[]; + "DisabledFeatures": string[]; + "AdditionalLaunchArgs": string[]; + + /** Creates a new WindowsWindow instance. */ + constructor($$source: Partial = {}) { + if (!("BackdropType" in $$source)) { + this["BackdropType"] = BackdropType.$zero; + } + if (!("DisableIcon" in $$source)) { + this["DisableIcon"] = false; + } + if (!("Theme" in $$source)) { + this["Theme"] = Theme.$zero; + } + if (!("CustomTheme" in $$source)) { + this["CustomTheme"] = (new ThemeSettings()); + } + if (!("DisableFramelessWindowDecorations" in $$source)) { + this["DisableFramelessWindowDecorations"] = false; + } + if (!("WindowMask" in $$source)) { + this["WindowMask"] = ""; + } + if (!("WindowMaskDraggable" in $$source)) { + this["WindowMaskDraggable"] = false; + } + if (!("ResizeDebounceMS" in $$source)) { + this["ResizeDebounceMS"] = 0; + } + if (!("WindowDidMoveDebounceMS" in $$source)) { + this["WindowDidMoveDebounceMS"] = 0; + } + if (!("EventMapping" in $$source)) { + this["EventMapping"] = {}; + } + if (!("HiddenOnTaskbar" in $$source)) { + this["HiddenOnTaskbar"] = false; + } + if (!("EnableSwipeGestures" in $$source)) { + this["EnableSwipeGestures"] = false; + } + if (!("Menu" in $$source)) { + this["Menu"] = null; + } + if (!("OnEnterEffect" in $$source)) { + this["OnEnterEffect"] = DragEffect.$zero; + } + if (!("OnOverEffect" in $$source)) { + this["OnOverEffect"] = DragEffect.$zero; + } + if (!("Permissions" in $$source)) { + this["Permissions"] = {}; + } + if (!("ExStyle" in $$source)) { + this["ExStyle"] = 0; + } + if (!("GeneralAutofillEnabled" in $$source)) { + this["GeneralAutofillEnabled"] = false; + } + if (!("PasswordAutosaveEnabled" in $$source)) { + this["PasswordAutosaveEnabled"] = false; + } + if (!("EnabledFeatures" in $$source)) { + this["EnabledFeatures"] = []; + } + if (!("DisabledFeatures" in $$source)) { + this["DisabledFeatures"] = []; + } + if (!("AdditionalLaunchArgs" in $$source)) { + this["AdditionalLaunchArgs"] = []; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new WindowsWindow instance from a string or object. + */ + static createFrom($$source: any = {}): WindowsWindow { + const $$createField3_0 = $$createType43; + const $$createField5_0 = $Create.ByteSlice; + const $$createField9_0 = $$createType30; + const $$createField12_0 = $$createType25; + const $$createField15_0 = $$createType44; + const $$createField19_0 = $$createType45; + const $$createField20_0 = $$createType45; + const $$createField21_0 = $$createType45; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("CustomTheme" in $$parsedSource) { + $$parsedSource["CustomTheme"] = $$createField3_0($$parsedSource["CustomTheme"]); + } + if ("WindowMask" in $$parsedSource) { + $$parsedSource["WindowMask"] = $$createField5_0($$parsedSource["WindowMask"]); + } + if ("EventMapping" in $$parsedSource) { + $$parsedSource["EventMapping"] = $$createField9_0($$parsedSource["EventMapping"]); + } + if ("Menu" in $$parsedSource) { + $$parsedSource["Menu"] = $$createField12_0($$parsedSource["Menu"]); + } + if ("Permissions" in $$parsedSource) { + $$parsedSource["Permissions"] = $$createField15_0($$parsedSource["Permissions"]); + } + if ("EnabledFeatures" in $$parsedSource) { + $$parsedSource["EnabledFeatures"] = $$createField19_0($$parsedSource["EnabledFeatures"]); + } + if ("DisabledFeatures" in $$parsedSource) { + $$parsedSource["DisabledFeatures"] = $$createField20_0($$parsedSource["DisabledFeatures"]); + } + if ("AdditionalLaunchArgs" in $$parsedSource) { + $$parsedSource["AdditionalLaunchArgs"] = $$createField21_0($$parsedSource["AdditionalLaunchArgs"]); + } + return new WindowsWindow($$parsedSource as Partial); + } +} + +// Private type creation functions +const $$createType0 = WindowManager.createFrom; +const $$createType1 = $Create.Nullable($$createType0); +const $$createType2 = ContextMenuManager.createFrom; +const $$createType3 = $Create.Nullable($$createType2); +const $$createType4 = KeyBindingManager.createFrom; +const $$createType5 = $Create.Nullable($$createType4); +const $$createType6 = BrowserManager.createFrom; +const $$createType7 = $Create.Nullable($$createType6); +const $$createType8 = EnvironmentManager.createFrom; +const $$createType9 = $Create.Nullable($$createType8); +const $$createType10 = DialogManager.createFrom; +const $$createType11 = $Create.Nullable($$createType10); +const $$createType12 = EventManager.createFrom; +const $$createType13 = $Create.Nullable($$createType12); +const $$createType14 = MenuManager.createFrom; +const $$createType15 = $Create.Nullable($$createType14); +const $$createType16 = ScreenManager.createFrom; +const $$createType17 = $Create.Nullable($$createType16); +const $$createType18 = ClipboardManager.createFrom; +const $$createType19 = $Create.Nullable($$createType18); +const $$createType20 = SystemTrayManager.createFrom; +const $$createType21 = $Create.Nullable($$createType20); +const $$createType22 = slog$0.Logger.createFrom; +const $$createType23 = $Create.Nullable($$createType22); +const $$createType24 = Menu.createFrom; +const $$createType25 = $Create.Nullable($$createType24); +const $$createType26 = RGBA.createFrom; +const $$createType27 = $Create.Nullable($$createType26); +const $$createType28 = u$0.Var.createFrom($Create.Any); +const $$createType29 = MacTitleBar.createFrom; +const $$createType30 = $Create.Map($Create.Any, $Create.Any); +const $$createType31 = MacWebviewPreferences.createFrom; +const $$createType32 = MacLiquidGlass.createFrom; +const $$createType33 = TextTheme.createFrom; +const $$createType34 = $Create.Nullable($$createType33); +const $$createType35 = WindowTheme.createFrom; +const $$createType36 = $Create.Nullable($$createType35); +const $$createType37 = MenuBarTheme.createFrom; +const $$createType38 = $Create.Nullable($$createType37); +const $$createType39 = MacWindow.createFrom; +const $$createType40 = WindowsWindow.createFrom; +const $$createType41 = LinuxWindow.createFrom; +const $$createType42 = $Create.Map($Create.Any, $Create.Any); +const $$createType43 = ThemeSettings.createFrom; +const $$createType44 = $Create.Map($Create.Any, $Create.Any); +const $$createType45 = $Create.Array($Create.Any); diff --git a/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/events/index.ts b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/events/index.ts new file mode 100644 index 00000000..64958d68 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/events/index.ts @@ -0,0 +1,6 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export type { + WindowEventType +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/events/models.ts b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/events/models.ts new file mode 100644 index 00000000..f14a4a10 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/events/models.ts @@ -0,0 +1,8 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +export type WindowEventType = number; diff --git a/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/services/notifications/index.ts b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/services/notifications/index.ts new file mode 100644 index 00000000..2c4a6ccb --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/services/notifications/index.ts @@ -0,0 +1,14 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +import * as NotificationService from "./notificationservice.js"; +export { + NotificationService +}; + +export { + NotificationAction, + NotificationCategory, + NotificationOptions, + NotificationService +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/services/notifications/models.ts b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/services/notifications/models.ts new file mode 100644 index 00000000..efc61d75 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/services/notifications/models.ts @@ -0,0 +1,127 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * NotificationAction represents an action button for a notification. + */ +export class NotificationAction { + "id"?: string; + "title"?: string; + + /** + * (macOS-specific) + */ + "destructive"?: boolean; + + /** Creates a new NotificationAction instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new NotificationAction instance from a string or object. + */ + static createFrom($$source: any = {}): NotificationAction { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new NotificationAction($$parsedSource as Partial); + } +} + +/** + * NotificationCategory groups actions for notifications. + */ +export class NotificationCategory { + "id"?: string; + "actions"?: NotificationAction[]; + "hasReplyField"?: boolean; + "replyPlaceholder"?: string; + "replyButtonTitle"?: string; + + /** Creates a new NotificationCategory instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new NotificationCategory instance from a string or object. + */ + static createFrom($$source: any = {}): NotificationCategory { + const $$createField1_0 = $$createType1; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("actions" in $$parsedSource) { + $$parsedSource["actions"] = $$createField1_0($$parsedSource["actions"]); + } + return new NotificationCategory($$parsedSource as Partial); + } +} + +/** + * NotificationOptions contains configuration for a notification + */ +export class NotificationOptions { + "id": string; + "title": string; + + /** + * (macOS and Linux only) + */ + "subtitle"?: string; + "body"?: string; + "categoryId"?: string; + "data"?: { [_: string]: any }; + + /** Creates a new NotificationOptions instance. */ + constructor($$source: Partial = {}) { + if (!("id" in $$source)) { + this["id"] = ""; + } + if (!("title" in $$source)) { + this["title"] = ""; + } + + Object.assign(this, $$source); + } + + /** + * Creates a new NotificationOptions instance from a string or object. + */ + static createFrom($$source: any = {}): NotificationOptions { + const $$createField5_0 = $$createType2; + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + if ("data" in $$parsedSource) { + $$parsedSource["data"] = $$createField5_0($$parsedSource["data"]); + } + return new NotificationOptions($$parsedSource as Partial); + } +} + +/** + * Service represents the notifications service + */ +export class NotificationService { + + /** Creates a new NotificationService instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new NotificationService instance from a string or object. + */ + static createFrom($$source: any = {}): NotificationService { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new NotificationService($$parsedSource as Partial); + } +} + +// Private type creation functions +const $$createType0 = NotificationAction.createFrom; +const $$createType1 = $Create.Array($$createType0); +const $$createType2 = $Create.Map($Create.Any, $Create.Any); diff --git a/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/services/notifications/notificationservice.ts b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/services/notifications/notificationservice.ts new file mode 100644 index 00000000..859f3570 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/github.com/wailsapp/wails/v3/pkg/services/notifications/notificationservice.ts @@ -0,0 +1,62 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +/** + * Service represents the notifications service + * @module + */ + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as $models from "./models.js"; + +export function CheckNotificationAuthorization(): $CancellablePromise { + return $Call.ByID(2216952893); +} + +export function RegisterNotificationCategory(category: $models.NotificationCategory): $CancellablePromise { + return $Call.ByID(2917562919, category); +} + +export function RemoveAllDeliveredNotifications(): $CancellablePromise { + return $Call.ByID(3956282340); +} + +export function RemoveAllPendingNotifications(): $CancellablePromise { + return $Call.ByID(108821341); +} + +export function RemoveDeliveredNotification(identifier: string): $CancellablePromise { + return $Call.ByID(975691940, identifier); +} + +export function RemoveNotification(identifier: string): $CancellablePromise { + return $Call.ByID(3966653866, identifier); +} + +export function RemoveNotificationCategory(categoryID: string): $CancellablePromise { + return $Call.ByID(2032615554, categoryID); +} + +export function RemovePendingNotification(identifier: string): $CancellablePromise { + return $Call.ByID(3729049703, identifier); +} + +/** + * Public methods that delegate to the implementation. + */ +export function RequestNotificationAuthorization(): $CancellablePromise { + return $Call.ByID(3933442950); +} + +export function SendNotification(options: $models.NotificationOptions): $CancellablePromise { + return $Call.ByID(3968228732, options); +} + +export function SendNotificationWithActions(options: $models.NotificationOptions): $CancellablePromise { + return $Call.ByID(1886542847, options); +} diff --git a/cmd/core-gui/frontend/bindings/html/template/index.ts b/cmd/core-gui/frontend/bindings/html/template/index.ts new file mode 100644 index 00000000..6bf5d696 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/html/template/index.ts @@ -0,0 +1,6 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export type { + FuncMap +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/html/template/models.ts b/cmd/core-gui/frontend/bindings/html/template/models.ts new file mode 100644 index 00000000..6cec6cbb --- /dev/null +++ b/cmd/core-gui/frontend/bindings/html/template/models.ts @@ -0,0 +1,12 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import * as template$0 from "../../text/template/models.js"; + +export type FuncMap = template$0.FuncMap; diff --git a/cmd/core-gui/frontend/bindings/io/index.ts b/cmd/core-gui/frontend/bindings/io/index.ts new file mode 100644 index 00000000..b370ee05 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/io/index.ts @@ -0,0 +1,6 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export type { + Writer +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/io/models.ts b/cmd/core-gui/frontend/bindings/io/models.ts new file mode 100644 index 00000000..035bada8 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/io/models.ts @@ -0,0 +1,19 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * Writer is the interface that wraps the basic Write method. + * + * Write writes len(p) bytes from p to the underlying data stream. + * It returns the number of bytes written from p (0 <= n <= len(p)) + * and any error encountered that caused the write to stop early. + * Write must return a non-nil error if it returns n < len(p). + * Write must not modify the slice data, even temporarily. + * + * Implementations must not retain p. + */ +export type Writer = any; diff --git a/cmd/core-gui/frontend/bindings/log/slog/index.ts b/cmd/core-gui/frontend/bindings/log/slog/index.ts new file mode 100644 index 00000000..28f9022d --- /dev/null +++ b/cmd/core-gui/frontend/bindings/log/slog/index.ts @@ -0,0 +1,6 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export { + Logger +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/log/slog/models.ts b/cmd/core-gui/frontend/bindings/log/slog/models.ts new file mode 100644 index 00000000..ef606c67 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/log/slog/models.ts @@ -0,0 +1,31 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * A Logger records structured information about each call to its + * Log, Debug, Info, Warn, and Error methods. + * For each call, it creates a [Record] and passes it to a [Handler]. + * + * To create a new Logger, call [New] or a Logger method + * that begins "With". + */ +export class Logger { + + /** Creates a new Logger instance. */ + constructor($$source: Partial = {}) { + + Object.assign(this, $$source); + } + + /** + * Creates a new Logger instance from a string or object. + */ + static createFrom($$source: any = {}): Logger { + let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source; + return new Logger($$parsedSource as Partial); + } +} diff --git a/cmd/core-gui/frontend/bindings/net/http/index.ts b/cmd/core-gui/frontend/bindings/net/http/index.ts new file mode 100644 index 00000000..dd70b927 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/net/http/index.ts @@ -0,0 +1,6 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export type { + Handler +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/net/http/models.ts b/cmd/core-gui/frontend/bindings/net/http/models.ts new file mode 100644 index 00000000..6b222d0a --- /dev/null +++ b/cmd/core-gui/frontend/bindings/net/http/models.ts @@ -0,0 +1,34 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * A Handler responds to an HTTP request. + * + * [Handler.ServeHTTP] should write reply headers and data to the [ResponseWriter] + * and then return. Returning signals that the request is finished; it + * is not valid to use the [ResponseWriter] or read from the + * [Request.Body] after or concurrently with the completion of the + * ServeHTTP call. + * + * Depending on the HTTP client software, HTTP protocol version, and + * any intermediaries between the client and the Go server, it may not + * be possible to read from the [Request.Body] after writing to the + * [ResponseWriter]. Cautious handlers should read the [Request.Body] + * first, and then reply. + * + * Except for reading the body, handlers should not modify the + * provided Request. + * + * If ServeHTTP panics, the server (the caller of ServeHTTP) assumes + * that the effect of the panic was isolated to the active request. + * It recovers the panic, logs a stack trace to the server error log, + * and either closes the network connection or sends an HTTP/2 + * RST_STREAM, depending on the HTTP protocol. To abort a handler so + * the client sees an interrupted response but the server doesn't log + * an error, panic with the value [ErrAbortHandler]. + */ +export type Handler = any; diff --git a/cmd/core-gui/frontend/bindings/text/template/index.ts b/cmd/core-gui/frontend/bindings/text/template/index.ts new file mode 100644 index 00000000..6bf5d696 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/text/template/index.ts @@ -0,0 +1,6 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export type { + FuncMap +} from "./models.js"; diff --git a/cmd/core-gui/frontend/bindings/text/template/models.ts b/cmd/core-gui/frontend/bindings/text/template/models.ts new file mode 100644 index 00000000..5ec33760 --- /dev/null +++ b/cmd/core-gui/frontend/bindings/text/template/models.ts @@ -0,0 +1,24 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import { Create as $Create } from "@wailsio/runtime"; + +/** + * FuncMap is the type of the map defining the mapping from names to functions. + * Each function must have either a single return value, or two return values of + * which the second has type error. In that case, if the second (error) + * return value evaluates to non-nil during execution, execution terminates and + * Execute returns that error. + * + * Errors returned by Execute wrap the underlying error; call [errors.As] to + * unwrap them. + * + * When template execution invokes a function with an argument list, that list + * must be assignable to the function's parameter types. Functions meant to + * apply to arguments of arbitrary type can use parameters of type interface{} or + * of type [reflect.Value]. Similarly, functions meant to return a result of arbitrary + * type can return interface{} or [reflect.Value]. + */ +export type FuncMap = { [_: string]: any };