Commit Graph

2578 Commits

Author SHA1 Message Date
15e6596285 Fix EXE_PATH case in service scripts
Updated the EXE_PATH variable in both installService.bat and uninstallService.bat to use 'welsonjs' instead of 'WelsonJS' for consistency and to avoid potential path issues.
2025-11-21 11:01:10 +09:00
ca8bd275bf Update service paths and installer registry keys
Service executable paths in installService.bat and uninstallService.bat now use %APPDATA% for improved portability. The setup.iss installer script updates registry keys to use the application name macro, adjusts file and icon paths to user appdata, and changes PowerShell execution flags. afterInstall.ps1 now downloads and extracts WelsonJS binary artifacts from a remote URL.
2025-11-21 10:50:31 +09:00
54a76f7078 Add afterInstall.ps1 to installer sources
Included afterInstall.ps1 in the setup script to ensure it is copied to the application directory during installation.
2025-11-20 17:34:24 +09:00
2e92255a3c Use 'using' statement for InstancesForm disposal
Replaces manual disposal of InstancesForm with a 'using' statement to ensure proper resource management and exception safety when recording to the metadata database.
2025-11-20 17:31:50 +09:00
4bd05fd2a2
Update afterInstall.ps1
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-11-20 17:26:11 +09:00
186561639e Add FILE module import and init PythonObject
Imported the FILE module in python3.js and updated PythonObject to initialize the default Python binary path upon creation. Also removed the copyright year range from the file header.
2025-11-20 17:24:26 +09:00
1a75388a69 Fix relative path calculation in file copy loop
Normalizes source directory path before calculating relative file paths to ensure correct substring indexing and prevent off-by-one errors when copying files.
2025-11-20 17:21:47 +09:00
b3b00771c5 Refactor zip file run logic in MainForm
Removed the _filePath field and refactored zip file handling to pass file paths directly as parameters. Simplified the RunAppPackageFile workflow and eliminated redundant methods for improved clarity and maintainability.
2025-11-20 17:14:49 +09:00
afe7d6213a Refactor deploy time recording and improve instance setup
Moved RecordFirstDeployTime from MainForm to Program for better separation of concerns. Updated instance directory creation and asset copying logic in Program.cs to support JS entrypoints, including library copying and first deploy time recording. Added a sleep call to helloworld.js for demonstration purposes.
2025-11-20 17:09:43 +09:00
33c64d50c9 Add afterInstall.ps1 and update tool paths to APPDATA
Introduces afterInstall.ps1 for post-install setup, downloading and extracting required tools to the APPDATA\WelsonJS directory. Updates code in http.js, python3.js, ovftool.js, wamr.js, and system.js to reference binaries from the new APPDATA location. Modifies setup.iss to run the PowerShell script after installation.
2025-11-20 16:44:20 +09:00
6f172aafe1 Revert "Enable COM interop registration in project config"
This reverts commit 4fb7b95c0e.
2025-11-20 14:56:59 +09:00
d156e40e6b Add Korea business area code checker example
Refactored korea_business_areacode.json to include metadata and expanded area code data. Added korea_biz_area_checker.js example script to read Excel files and match business numbers to area names using the updated area code data.
2025-11-19 12:23:22 +09:00
f86ea078c6 Add new file to .gitignore
Added do_not_push_production_on_friday.js to .gitignore to prevent accidental commits of this file.
2025-11-19 10:26:53 +09:00
9c9f865026 Add Korea business area code JSON data
Introduces a new data file containing business area codes for various regions in Korea. This will be used for region-based business logic or lookups.
2025-11-19 10:19:57 +09:00
0e40d890bf Merge branch 'dev' of https://github.com/gnh1201/welsonjs into dev 2025-11-19 09:52:37 +09:00
daea458f64
Update WelsonJS.Toolkit/WelsonJS.Launcher/Program.cs
Co-authored-by: qodo-merge-pro[bot] <151058649+qodo-merge-pro[bot]@users.noreply.github.com>
2025-11-16 18:58:48 +09:00
c392b6a08a
Update WelsonJS.Toolkit/WelsonJS.Launcher/MainForm.cs
Co-authored-by: qodo-merge-pro[bot] <151058649+qodo-merge-pro[bot]@users.noreply.github.com>
2025-11-15 20:39:11 +09:00
a03ea7f3b3
Update WelsonJS.Toolkit/WelsonJS.Launcher/Program.cs
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
2025-11-15 18:23:02 +09:00
c677c6907a Add CLI support for running script and zip files
Launcher now accepts a --file argument to run .js or .zip files directly from the command line. MainForm and Program.cs were refactored to support this, including new registry entries in setup.iss for file associations with WelsonJS Script extensions.
2025-11-15 18:08:47 +09:00
4fb7b95c0e Enable COM interop registration in project config
Added <RegisterForComInterop>True</RegisterForComInterop> to all build configurations in WelsonJS.Cryptography.vbproj to support COM interop registration for both Debug and Release builds.
2025-11-10 09:47:17 +09:00
Namhyeon, Go
ba7b3e3685 Revert "Merge pull request #340 from gnh1201/codex/create-winforms-for-websocket-management"
This reverts commit d71adb8001, reversing
changes made to 83b8e453f0.
2025-11-02 18:17:59 +09:00
d71adb8001
Merge pull request #340 from gnh1201/codex/create-winforms-for-websocket-management
Add WinForms interface for WebSocket management
2025-11-02 18:12:37 +09:00
Namhyeon, Go
cfcfaf3e1f Add WinForms interface for WebSocket management 2025-11-02 18:09:59 +09:00
83b8e453f0 Rename getFilesFromFolder to getFiles and deprecate old name
Renamed the getFilesFromFolder function to getFiles for clarity. The original getFilesFromFolder is now marked as deprecated and calls the new function, with a warning. Updated exports to reflect the change and bumped version to 0.2.17.
2025-10-13 16:23:03 +09:00
b6a95a7c50 Refactor path normalization and absolute path check
Introduced a new normalizePath function in file.js to handle path trimming and BOM removal. Updated isAbsolutePath to use normalizePath for more robust path checking. Modified msoffice.js to use isAbsolutePath instead of manual string checks for determining absolute paths.
2025-10-13 15:12:52 +09:00
7cba7895fd Add isAbsolutePath utility and update path handling
Introduced isAbsolutePath function in file.js to robustly check for absolute paths. Updated msoffice.js to use this utility for file path resolution in Excel.open, improving cross-platform compatibility and reliability. Version numbers incremented in both files.
2025-10-13 14:55:10 +09:00
90806493ed Refactor code editor launch logic
Extracted the code editor launch logic into a new LaunchEditor() method to reduce duplication. Both the button and menu item now use this method, and error handling for resource server startup is centralized.
2025-10-10 12:18:47 +09:00
a77c83736c Add editor and community buttons with icons to MainForm
Replaced the community link label with a button featuring an icon, and added a new button to start the editor with its own icon. Updated resource files and designer code to support these changes, and adjusted related event handlers and UI text for clarity.
2025-10-10 12:07:16 +09:00
ebe7b605cb Add Vary: Origin header and use Response.Close
Sets the 'Vary' header to 'Origin' for CORS responses to improve cache behavior. Replaces OutputStream.Close with Response.Close for proper response handling.
2025-10-09 22:04:27 +09:00
b32801c1c9 clean up the code
clean up the code
2025-10-09 21:14:41 +09:00
33d8fadc8f
Update WelsonJS.Toolkit/WelsonJS.Launcher/ResourceServer.cs
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-10-04 19:39:58 +09:00
cd3e18a4c1 Merge branch 'dev' of https://github.com/gnh1201/welsonjs into dev 2025-10-04 18:11:15 +09:00
49263bb0ac Refactor CORS allowed origins initialization
Replaces GetAllowedOrigins with TryParseAllowedOrigins to initialize allowed origins once during static construction. Adds logging for invalid ResourceServerPrefix values and stores allowed origins in a static field for improved efficiency.
2025-10-04 18:09:03 +09:00
6e499bcedf
Update WelsonJS.Toolkit/WelsonJS.Launcher/ResourceServer.cs
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
2025-10-03 17:49:10 +09:00
8ab70208d0
Update WelsonJS.Toolkit/WelsonJS.Launcher/ResourceServer.cs
Co-authored-by: qodo-merge-pro[bot] <151058649+qodo-merge-pro[bot]@users.noreply.github.com>
2025-10-03 17:48:25 +09:00
a745b6d0a7
Update WelsonJS.Toolkit/WelsonJS.Launcher/ResourceServer.cs
Co-authored-by: qodo-merge-pro[bot] <151058649+qodo-merge-pro[bot]@users.noreply.github.com>
2025-10-03 17:47:01 +09:00
b9e39dd9c7 Add CORS support to ResourceServer
Implemented CORS handling in ResourceServer, including preflight (OPTIONS) request handling and configurable allowed origins via the new ResourceServerAllowOrigins app setting. Updated resources and configuration files to support the new setting.
2025-10-03 17:35:34 +09:00
8cfff666e4
Update WelsonJS.Toolkit/WelsonJS.Launcher/ResourceTools/IpQuery.cs
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
2025-10-02 14:44:22 +09:00
5fb255e1e3 Refactor IP query to support multiple providers
Replaces the single CriminalIP API integration with a new IP query system supporting both CriminalIP and AbuseIPDB providers. Updates configuration keys, resource files, and the editor UI to handle multiple API endpoints and keys. Refactors backend logic to aggregate and return results from both providers in a unified XML format, and updates the frontend to parse and display these results. Adds improved error handling and logging for IP query and WHOIS operations.
2025-10-02 14:39:50 +09:00
a3e00d1762 Add Chromium app mode and update executable config keys
Introduces a new 'ChromiumAppMode' configuration option to launch Chromium in app mode when enabled. Renames 'ChromiumFileName' to 'ChromiumExecutablePath' in both code and configuration for clarity and consistency.
2025-10-01 13:23:27 +09:00
a35e101f23 Refactor log file naming and improve Format method
Changed log file naming to use <Namespace>.<random-6>.<PID>.log instead of including 'pid' in the filename. Moved file stream creation inside the Trace listener check. Reformatted and clarified the Format method for better readability and error handling.
2025-09-28 20:14:00 +09:00
ce84aab861 Improve TraceLogger with file-based logging and fallback
TraceLogger now writes logs to a file in %APPDATA%\WelsonJS\Logs with a randomized suffix and process ID. If the log directory cannot be created, it falls back to the current directory. The logger also improves formatting and random suffix generation for log file names.
2025-09-28 19:59:45 +09:00
676f791fab Add ImageColorPicker tool and async resource serving
Introduces the ImageColorPicker resource tool for extracting color information from images via a POST API. Refactors ResourceServer and all resource tools to use async ServeResource methods, improving scalability and consistency. Updates JsSerializer with an engine-backed document store for efficient repeated JSON extraction.
2025-09-28 03:03:19 +09:00
b1b36744cf
Merge branch 'master' into dev 2025-09-28 01:31:11 +09:00
9547d245b7
Update WelsonJS.Toolkit/WelsonJS.Launcher/JsSerializer.cs
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-09-28 01:06:40 +09:00
91f19bc148
Update WelsonJS.Toolkit/WelsonJS.Launcher/Program.cs
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-09-28 01:02:35 +09:00
2db47bca9a Add optional Authenticode signature validation for native DLLs
Enhanced NativeBootstrap to support optional Authenticode signature validation and custom certificate validators when loading native libraries. Added 'NativeRequireSigned' configuration to app.config and resources, allowing signature enforcement to be toggled. Updated Program.cs to use the new option during initialization.
2025-09-28 00:48:58 +09:00
87020d35ac Refactor logger interface and add JsNative interop layer
Updated ICompatibleLogger to accept params object[] for flexible logging. Refactored TraceLogger to support the new interface and improved formatting. Added JsNative.cs to encapsulate ChakraCore P/Invoke interop, and updated JsCore to use JsNative for all native calls. Modified all resource tools to accept and use ICompatibleLogger for consistent logging. Updated project file to include new and updated sources.
2025-09-28 00:07:41 +09:00
83a037dfa2 Download setup and ChakraCore in AppVeyor build
Added PowerShell steps to download the unsigned setup executable and ChakraCore.dll into the artifacts directory during the AppVeyor after_build phase.
2025-09-27 22:52:13 +09:00
3fe04d1113 Fix submodule gitlink for ChakraCore 2025-09-27 13:01:18 +09:00