- Modified the `assertEqual` function to include a custom message for assertion failures.
- Added tests for empty tables and JavaScript arrays to verify correct behavior of `pairs` and `ipairs`.
- Implemented checks for mixed key types and ensured `ipairs` only iterates over numeric indices, validating the expected values.
- Introduced a new `TagDef` type to define tags with optional schema and metatable.
- Added `registerTag` method in `ScriptEnvironment` to register tags.
- Updated `indexSyscalls` to handle tag registration and enrich query results with tag metadata.
- Modified `queryLua` and `DataStore` to support an optional enricher function for enhanced data processing.
- Updated the `pairsFunction` to specify that keys can be of type `string` or `number`, enhancing type safety.
- Corrected a comment for clarity regarding key retrieval from plain JavaScript objects, ensuring accurate documentation.
- Updated the `tonumber` function to support optional base conversion, allowing for binary, octal, decimal, hexadecimal, and base 36 inputs.
- Added validation for invalid bases and non-numeric strings.
- Introduced comprehensive tests for various `tonumber` scenarios in `language_core_test.lua` to ensure correct functionality.
- Modified `luaCall` and `luaValueToJS` functions to handle promises, allowing asynchronous execution of JavaScript functions from Lua.
- Updated the `jsApi` to expose the global `globalThis` object instead of `window`, improving compatibility across different environments.
- Added a convenience function for creating HTML widgets, streamlining widget creation.
- Enhanced the key retrieval logic in the pairs function to ensure it captures prototype keys correctly.
- Exposed the global window object in the jsApi for better access to DOM functions.
- Deleted the `share` plug, including its associated files and YAML configuration.
- Removed references to share options and commands from the codebase.
- Cleaned up unused event listeners and functions related to sharing content.
- Updated `ipairsFunction` and `pairsFunction` to accept both `LuaTable` and array types, enhancing flexibility.
- Modified `eachFunction` to support arrays, ensuring consistent behavior across different data structures.
- Added type checks and adjusted key retrieval logic for better compatibility with JavaScript objects.
- Added slash commands for inserting today's, yesterday's, and tomorrow's dates.
- Introduced new admonition commands for notes and warnings.
- Implemented a table command for quick table insertion.
- Enhanced the `insertAtCursor` function to support a cursor placeholder option.
- Updated `getSelection` to return the selected text along with cursor positions.
- Added a new widget function to display linked tasks in the editor.