Commit graph

2178 commits

Author SHA1 Message Date
Mike Sawka
ba573c4bcb
tsunami builder 3 (checkpoint) (#2487)
Got preview hooked up, log output hooked up, environment tab hooked
up... the controller, restarting the apps. it is actually working! still
lots to do and lots of hard coding to fix, but it is coming together...
2025-10-28 13:59:02 -07:00
Copilot
58e000bf12
Add alert and confirm modal system for tsunami apps (#2484)
## Alert and Confirm Modal System for Tsunami

This PR implements a complete modal system for the tsunami app framework
as specified in the requirements.

### Implementation Summary

**Backend (Go) - 574 lines changed across 11 files:**

1. **Type Definitions** (`rpctypes/protocoltypes.go`):
- `ModalConfig`: Configuration for modal display with icon, title, text,
and button labels
- `ModalResult`: Result structure containing modal ID and confirmation
status

2. **Client State Management** (`engine/clientimpl.go`):
   - Added `ModalState` to track open modals with result channels
   - `OpenModals` map to track all currently open modals
- `ShowModal()`: Sends SSE event to display modal and returns result
channel
   - `CloseModal()`: Processes modal result from frontend
- `CloseAllModals()`: Automatically cancels all modals when frontend
sends Resync flag (page refresh)

3. **API Endpoint** (`engine/serverhandlers.go`):
- `/api/modalresult` POST endpoint to receive modal results from
frontend
   - Validates and processes `ModalResult` JSON payload
   - Closes all modals on Resync (page refresh) before processing events

4. **User-Facing Hooks** (`app/hooks.go`):
   - `UseAlertModal()`: Returns (isOpen, triggerAlert) for alert modals
- `UseConfirmModal()`: Returns (isOpen, triggerConfirm) for confirm
modals
   - Both hooks manage local state and handle async modal lifecycle

**Frontend (TypeScript/React):**

1. **Type Definitions** (`types/vdom.d.ts`):
   - Added `ModalConfig` and `ModalResult` TypeScript types

2. **Modal Components** (`element/modals.tsx`):
- `AlertModal`: Dark-mode styled alert with icon, title, text, and OK
button
- `ConfirmModal`: Dark-mode styled confirm with icon, title, text, OK
and Cancel buttons
   - Both support keyboard (ESC) and backdrop click dismissal
   - Fully accessible with focus management

3. **Model Integration** (`model/tsunami-model.tsx`):
   - Added `currentModal` atom to track displayed modal
   - SSE event handler for `showmodal` events
- `sendModalResult()`: Sends result to `/api/modalresult` and clears
modal

4. **UI Integration** (`vdom.tsx`):
   - Integrated modal display in `VDomView` component
   - Conditionally renders alert or confirm modal based on type

**Demo Application** (`demo/modaltest/`):
- Comprehensive demonstration of modal functionality
- Shows 4 different modal configurations:
  - Alert with icon
  - Simple alert with custom button text
  - Confirm modal
  - Delete confirmation with custom buttons
- Displays modal state and results in real-time

### Key Features

 **SSE-Based Modal Display**: Modals are pushed from backend to
frontend via SSE
 **API-Based Result Handling**: Results sent back via
`/api/modalresult` endpoint
 **Automatic Cleanup**: All open modals auto-cancel on page refresh
(when Resync flag is set)
 **Type-Safe Hooks**: Full TypeScript and Go type safety  
 **Dark Mode UI**: Components styled for Wave Terminal's dark theme  
 **Accessibility**: Keyboard navigation, ESC to dismiss, backdrop click
support
 **Zero Security Issues**: Passed CodeQL security analysis  
 **Zero Code Review Issues**: Clean implementation following best
practices

### Testing

-  Go code compiles without errors
-  TypeScript/React builds without errors  
-  All existing tests pass
-  Demo app created and compiles successfully
-  CodeQL security scan: 0 vulnerabilities
-  Code review: 0 issues

### Security Summary

No security vulnerabilities were introduced. All modal operations are
properly scoped to the client's SSE connection, and modal IDs are
generated server-side to prevent tampering.


Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: sawka <2722291+sawka@users.noreply.github.com>
2025-10-27 18:11:19 -07:00
Mike Sawka
ef5a59e710
tsunami app builder 2 (#2486) 2025-10-27 16:37:15 -07:00
Mike Sawka
42769068e4
do not enable OSC 7 support for old 5.x powershell (#2485)
fix for #2471, and better debugging for #2481
2025-10-27 12:51:20 -07:00
Copilot
80c25de5d1
Add Stop, Restart, and Force Rebuild menu items to Tsunami view (#2483)
Adds settings menu items to the Tsunami app view for stopping and
restarting the controller, with support for forcing rebuilds that bypass
the build cache.

### Changes

- **Added three menu items** to
`TsunamiViewModel.getSettingsMenuItems()`:
- "Stop WaveApp" - stops the running tsunami controller using
`ControllerStopCommand`
- "Restart WaveApp" - stops the controller, waits 300ms, then resyncs to
restart it (uses existing cache if available)
- "Restart WaveApp and Force Rebuild" - triggers
`ControllerResyncCommand` with `forcerestart: true` (bypasses build
cache per line 228 in `tsunamicontroller.go`)

- **Refactored controller resync logic** - extracted common code into
`doControllerResync()` helper with optional `triggerRestart` parameter
to handle both user-initiated restarts and automatic mount sync

- **Implemented proper restart behavior** - "Restart WaveApp" now
performs a stop → wait → resync sequence to ensure the controller
actually restarts instead of just resyncing to the already-running state

### Implementation Note

No backend changes required. The existing
`CommandControllerResyncData.ForceRestart` flag already controls cache
bypass behavior in the tsunami controller's build logic, and
`ControllerStopCommand` is used for stopping the controller.


Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: sawka <2722291+sawka@users.noreply.github.com>
2025-10-27 11:18:26 -07:00
Mike Sawka
755d9783c9
waveapps builder window (scaffolding, restructure AI panel to work in both builder and tab windows) (#2482) 2025-10-26 17:48:01 -07:00
dependabot[bot]
b038b1302e
Bump the dev-dependencies-patch group with 4 updates (#2476)
Bumps the dev-dependencies-patch group with 4 updates:
[@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite),
[tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss),
[typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)
and
[@tailwindcss/cli](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-cli).

Updates `@tailwindcss/vite` from 4.1.14 to 4.1.16
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tailwindlabs/tailwindcss/releases"><code>@​tailwindcss/vite</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v4.1.16</h2>
<h3>Fixed</h3>
<ul>
<li>Discard candidates with an empty data type (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19172">#19172</a>)</li>
<li>Fix canonicalization of arbitrary variants with attribute selectors
(<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19176">#19176</a>)</li>
<li>Fix invalid colors due to nested <code>&amp;</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19184">#19184</a>)</li>
<li>Improve canonicalization for <code>&amp; &gt; :pseudo</code> and
<code>&amp; :pseudo</code> arbitrary variants (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19178">#19178</a>)</li>
</ul>
<h2>v4.1.15</h2>
<h3>Fixed</h3>
<ul>
<li>Fix Safari devtools rendering issue due to <code>color-mix</code>
fallback (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19069">#19069</a>)</li>
<li>Suppress Lightning CSS warnings about <code>:deep</code>,
<code>:slotted</code>, and <code>:global</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19094">#19094</a>)</li>
<li>Fix resolving theme keys when starting with the name of another
theme key in JS configs and plugins (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19097">#19097</a>)</li>
<li>Allow named groups in combination with <code>not-*</code>,
<code>has-*</code>, and <code>in-*</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19100">#19100</a>)</li>
<li>Prevent important utilities from affecting other utilities (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19110">#19110</a>)</li>
<li>Don’t index into strings with the <code>theme(…)</code> function (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19111">#19111</a>)</li>
<li>Fix parsing issue when <code>\t</code> is used in at-rules (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19130">#19130</a>)</li>
<li>Upgrade: Canonicalize utilities containing <code>0</code> values (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19095">#19095</a>)</li>
<li>Upgrade: Migrate deprecated <code>break-words</code> to
<code>wrap-break-word</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19157">#19157</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Remove the <code>postinstall</code> script from oxide (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19149">#19149</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md"><code>@​tailwindcss/vite</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>[4.1.16] - 2025-10-23</h2>
<h3>Fixed</h3>
<ul>
<li>Discard candidates with an empty data type (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19172">#19172</a>)</li>
<li>Fix canonicalization of arbitrary variants with attribute selectors
(<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19176">#19176</a>)</li>
<li>Fix invalid colors due to nested <code>&amp;</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19184">#19184</a>)</li>
<li>Improve canonicalization for <code>&amp; &gt; :pseudo</code> and
<code>&amp; :pseudo</code> arbitrary variants (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19178">#19178</a>)</li>
</ul>
<h2>[4.1.15] - 2025-10-20</h2>
<h3>Fixed</h3>
<ul>
<li>Fix Safari devtools rendering issue due to <code>color-mix</code>
fallback (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19069">#19069</a>)</li>
<li>Suppress Lightning CSS warnings about <code>:deep</code>,
<code>:slotted</code>, and <code>:global</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19094">#19094</a>)</li>
<li>Fix resolving theme keys when starting with the name of another
theme key in JS configs and plugins (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19097">#19097</a>)</li>
<li>Allow named groups in combination with <code>not-*</code>,
<code>has-*</code>, and <code>in-*</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19100">#19100</a>)</li>
<li>Prevent important utilities from affecting other utilities (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19110">#19110</a>)</li>
<li>Don’t index into strings with the <code>theme(…)</code> function (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19111">#19111</a>)</li>
<li>Fix parsing issue when <code>\t</code> is used in at-rules (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19130">#19130</a>)</li>
<li>Upgrade: Canonicalize utilities containing <code>0</code> values (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19095">#19095</a>)</li>
<li>Upgrade: Migrate deprecated <code>break-words</code> to
<code>wrap-break-word</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19157">#19157</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Remove the <code>postinstall</code> script from oxide (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19149">#19149</a>)(<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19149">tailwindlabs/tailwindcss#19149</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="cbbbe84475"><code>cbbbe84</code></a>
Release 4.1.16 (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19185">#19185</a>)</li>
<li><a
href="b2e2435ccb"><code>b2e2435</code></a>
Release 4.1.15 (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19159">#19159</a>)</li>
<li><a
href="89cbfc7b2d"><code>89cbfc7</code></a>
Add <code>optimize</code> option to <code>@tailwindcss/vite</code>
plugin (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19131">#19131</a>)</li>
<li>See full diff in <a
href="https://github.com/tailwindlabs/tailwindcss/commits/v4.1.16/packages/@tailwindcss-vite">compare
view</a></li>
</ul>
</details>
<br />

Updates `tailwindcss` from 4.1.14 to 4.1.16
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tailwindlabs/tailwindcss/releases">tailwindcss's
releases</a>.</em></p>
<blockquote>
<h2>v4.1.16</h2>
<h3>Fixed</h3>
<ul>
<li>Discard candidates with an empty data type (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19172">#19172</a>)</li>
<li>Fix canonicalization of arbitrary variants with attribute selectors
(<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19176">#19176</a>)</li>
<li>Fix invalid colors due to nested <code>&amp;</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19184">#19184</a>)</li>
<li>Improve canonicalization for <code>&amp; &gt; :pseudo</code> and
<code>&amp; :pseudo</code> arbitrary variants (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19178">#19178</a>)</li>
</ul>
<h2>v4.1.15</h2>
<h3>Fixed</h3>
<ul>
<li>Fix Safari devtools rendering issue due to <code>color-mix</code>
fallback (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19069">#19069</a>)</li>
<li>Suppress Lightning CSS warnings about <code>:deep</code>,
<code>:slotted</code>, and <code>:global</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19094">#19094</a>)</li>
<li>Fix resolving theme keys when starting with the name of another
theme key in JS configs and plugins (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19097">#19097</a>)</li>
<li>Allow named groups in combination with <code>not-*</code>,
<code>has-*</code>, and <code>in-*</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19100">#19100</a>)</li>
<li>Prevent important utilities from affecting other utilities (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19110">#19110</a>)</li>
<li>Don’t index into strings with the <code>theme(…)</code> function (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19111">#19111</a>)</li>
<li>Fix parsing issue when <code>\t</code> is used in at-rules (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19130">#19130</a>)</li>
<li>Upgrade: Canonicalize utilities containing <code>0</code> values (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19095">#19095</a>)</li>
<li>Upgrade: Migrate deprecated <code>break-words</code> to
<code>wrap-break-word</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19157">#19157</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Remove the <code>postinstall</code> script from oxide (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19149">#19149</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md">tailwindcss's
changelog</a>.</em></p>
<blockquote>
<h2>[4.1.16] - 2025-10-23</h2>
<h3>Fixed</h3>
<ul>
<li>Discard candidates with an empty data type (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19172">#19172</a>)</li>
<li>Fix canonicalization of arbitrary variants with attribute selectors
(<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19176">#19176</a>)</li>
<li>Fix invalid colors due to nested <code>&amp;</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19184">#19184</a>)</li>
<li>Improve canonicalization for <code>&amp; &gt; :pseudo</code> and
<code>&amp; :pseudo</code> arbitrary variants (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19178">#19178</a>)</li>
</ul>
<h2>[4.1.15] - 2025-10-20</h2>
<h3>Fixed</h3>
<ul>
<li>Fix Safari devtools rendering issue due to <code>color-mix</code>
fallback (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19069">#19069</a>)</li>
<li>Suppress Lightning CSS warnings about <code>:deep</code>,
<code>:slotted</code>, and <code>:global</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19094">#19094</a>)</li>
<li>Fix resolving theme keys when starting with the name of another
theme key in JS configs and plugins (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19097">#19097</a>)</li>
<li>Allow named groups in combination with <code>not-*</code>,
<code>has-*</code>, and <code>in-*</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19100">#19100</a>)</li>
<li>Prevent important utilities from affecting other utilities (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19110">#19110</a>)</li>
<li>Don’t index into strings with the <code>theme(…)</code> function (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19111">#19111</a>)</li>
<li>Fix parsing issue when <code>\t</code> is used in at-rules (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19130">#19130</a>)</li>
<li>Upgrade: Canonicalize utilities containing <code>0</code> values (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19095">#19095</a>)</li>
<li>Upgrade: Migrate deprecated <code>break-words</code> to
<code>wrap-break-word</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19157">#19157</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Remove the <code>postinstall</code> script from oxide (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19149">#19149</a>)(<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19149">tailwindlabs/tailwindcss#19149</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="cbbbe84475"><code>cbbbe84</code></a>
Release 4.1.16 (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19185">#19185</a>)</li>
<li><a
href="601d6719f8"><code>601d671</code></a>
Fix incorrect colors used in pseudo-element (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19184">#19184</a>)</li>
<li><a
href="a41add9fab"><code>a41add9</code></a>
Improve canonicalization for <code>&amp; &gt; :pseudo</code> and
<code>&amp; :pseudo</code> arbitrary variants...</li>
<li><a
href="0113b88fbd"><code>0113b88</code></a>
Fix canonicalization of arbitrary variants with attribute selectors (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19176">#19176</a>)</li>
<li><a
href="29687e0183"><code>29687e0</code></a>
Discard candidates with an empty data type (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19172">#19172</a>)</li>
<li><a
href="56e7f3b2c2"><code>56e7f3b</code></a>
Improve memory usage during canonicalization (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19171">#19171</a>)</li>
<li><a
href="3a4ab8201b"><code>3a4ab82</code></a>
Stop suggesting legacy utilities (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19169">#19169</a>)</li>
<li><a
href="7537e34fd1"><code>7537e34</code></a>
Ignore <code>--tw-</code> variables during internal signature
computation (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19156">#19156</a>)</li>
<li><a
href="66c18ca8a4"><code>66c18ca</code></a>
Collapse multiple utilities (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19147">#19147</a>)</li>
<li><a
href="b2e2435ccb"><code>b2e2435</code></a>
Release 4.1.15 (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19159">#19159</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/tailwindlabs/tailwindcss/commits/v4.1.16/packages/tailwindcss">compare
view</a></li>
</ul>
</details>
<br />

Updates `typescript-eslint` from 8.46.1 to 8.46.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases">typescript-eslint's
releases</a>.</em></p>
<blockquote>
<h2>v8.46.2</h2>
<h2>8.46.2 (2025-10-20)</h2>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [prefer-optional-chain] skip
optional chaining when it could change the result (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11702">#11702</a>)</li>
<li><strong>typescript-estree:</strong> forbid invalid modifiers in
object methods (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11689">#11689</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>fisker Cheung <a
href="https://github.com/fisker"><code>@​fisker</code></a></li>
<li>mdm317</li>
</ul>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md">typescript-eslint's
changelog</a>.</em></p>
<blockquote>
<h2>8.46.2 (2025-10-20)</h2>
<p>This was a version bump only for typescript-eslint to align it with
other projects, there were no code changes.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="55ca033ee8"><code>55ca033</code></a>
chore(release): publish 8.46.2</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.46.2/packages/typescript-eslint">compare
view</a></li>
</ul>
</details>
<br />

Updates `@tailwindcss/cli` from 4.1.14 to 4.1.16
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tailwindlabs/tailwindcss/releases"><code>@​tailwindcss/cli</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v4.1.16</h2>
<h3>Fixed</h3>
<ul>
<li>Discard candidates with an empty data type (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19172">#19172</a>)</li>
<li>Fix canonicalization of arbitrary variants with attribute selectors
(<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19176">#19176</a>)</li>
<li>Fix invalid colors due to nested <code>&amp;</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19184">#19184</a>)</li>
<li>Improve canonicalization for <code>&amp; &gt; :pseudo</code> and
<code>&amp; :pseudo</code> arbitrary variants (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19178">#19178</a>)</li>
</ul>
<h2>v4.1.15</h2>
<h3>Fixed</h3>
<ul>
<li>Fix Safari devtools rendering issue due to <code>color-mix</code>
fallback (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19069">#19069</a>)</li>
<li>Suppress Lightning CSS warnings about <code>:deep</code>,
<code>:slotted</code>, and <code>:global</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19094">#19094</a>)</li>
<li>Fix resolving theme keys when starting with the name of another
theme key in JS configs and plugins (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19097">#19097</a>)</li>
<li>Allow named groups in combination with <code>not-*</code>,
<code>has-*</code>, and <code>in-*</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19100">#19100</a>)</li>
<li>Prevent important utilities from affecting other utilities (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19110">#19110</a>)</li>
<li>Don’t index into strings with the <code>theme(…)</code> function (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19111">#19111</a>)</li>
<li>Fix parsing issue when <code>\t</code> is used in at-rules (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19130">#19130</a>)</li>
<li>Upgrade: Canonicalize utilities containing <code>0</code> values (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19095">#19095</a>)</li>
<li>Upgrade: Migrate deprecated <code>break-words</code> to
<code>wrap-break-word</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19157">#19157</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Remove the <code>postinstall</code> script from oxide (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19149">#19149</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md"><code>@​tailwindcss/cli</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>[4.1.16] - 2025-10-23</h2>
<h3>Fixed</h3>
<ul>
<li>Discard candidates with an empty data type (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19172">#19172</a>)</li>
<li>Fix canonicalization of arbitrary variants with attribute selectors
(<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19176">#19176</a>)</li>
<li>Fix invalid colors due to nested <code>&amp;</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19184">#19184</a>)</li>
<li>Improve canonicalization for <code>&amp; &gt; :pseudo</code> and
<code>&amp; :pseudo</code> arbitrary variants (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19178">#19178</a>)</li>
</ul>
<h2>[4.1.15] - 2025-10-20</h2>
<h3>Fixed</h3>
<ul>
<li>Fix Safari devtools rendering issue due to <code>color-mix</code>
fallback (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19069">#19069</a>)</li>
<li>Suppress Lightning CSS warnings about <code>:deep</code>,
<code>:slotted</code>, and <code>:global</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19094">#19094</a>)</li>
<li>Fix resolving theme keys when starting with the name of another
theme key in JS configs and plugins (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19097">#19097</a>)</li>
<li>Allow named groups in combination with <code>not-*</code>,
<code>has-*</code>, and <code>in-*</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19100">#19100</a>)</li>
<li>Prevent important utilities from affecting other utilities (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19110">#19110</a>)</li>
<li>Don’t index into strings with the <code>theme(…)</code> function (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19111">#19111</a>)</li>
<li>Fix parsing issue when <code>\t</code> is used in at-rules (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19130">#19130</a>)</li>
<li>Upgrade: Canonicalize utilities containing <code>0</code> values (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19095">#19095</a>)</li>
<li>Upgrade: Migrate deprecated <code>break-words</code> to
<code>wrap-break-word</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19157">#19157</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Remove the <code>postinstall</code> script from oxide (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-cli/issues/19149">#19149</a>)(<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19149">tailwindlabs/tailwindcss#19149</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="cbbbe84475"><code>cbbbe84</code></a>
Release 4.1.16 (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-cli/issues/19185">#19185</a>)</li>
<li><a
href="b2e2435ccb"><code>b2e2435</code></a>
Release 4.1.15 (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-cli/issues/19159">#19159</a>)</li>
<li>See full diff in <a
href="https://github.com/tailwindlabs/tailwindcss/commits/v4.1.16/packages/@tailwindcss-cli">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-26 11:10:52 -07:00
Copilot
6c8df20bd8
Remove ellipsis mixin and delete mixins.scss (#2480)
The `ellipsis()` mixin in `mixins.scss` was only used in two files.
Replaced with plain CSS and removed the file entirely.

## Changes

- **Converted mixin usage to plain CSS** in `flyoutmenu.scss` and
`expandablemenu.scss`:
  ```scss
  // Before
  .label {
      @include mixins.ellipsis();
  }
  
  // After
  .label {
      display: block;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
  }
  ```

- **Removed unused imports** from 8 SCSS files that imported
`mixins.scss` but didn't use it

- **Deleted** `frontend/app/mixins.scss`

<!-- START COPILOT CODING AGENT SUFFIX -->



<details>

<summary>Original prompt</summary>

> in mixins.scss we have one last one called ellipsis(). i believe it is
only used in a couple places now... at least flyoutmenu.scss and
expandablemenu.scss. lets convert those to just plain CSS instead of
using the mixin. and then i think we can delete the mixins.scss file
completely... maybe 8 or so scss files that include it that will also
need modification.
> 
> do your own check though to find any additional usages of mixins.scss
and the ellipsis mixin. make sure we remove all usages.


</details>



<!-- START COPILOT CODING AGENT TIPS -->
---

💬 We'd love your input! Share your thoughts on Copilot coding agent in
our [2 minute survey](https://gh.io/copilot-coding-agent-survey).

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: sawka <2722291+sawka@users.noreply.github.com>
2025-10-26 11:08:47 -07:00
dependabot[bot]
4df6dfdd5a
Bump github.com/aws/aws-sdk-go-v2/config from 1.31.13 to 1.31.15 (#2474)
Bumps
[github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2)
from 1.31.13 to 1.31.15.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4bd7f5481e"><code>4bd7f54</code></a>
Release 2025-10-23</li>
<li><a
href="55fb47cb07"><code>55fb47c</code></a>
Regenerated Clients</li>
<li><a
href="bf727c0b40"><code>bf727c0</code></a>
Update partitions file</li>
<li><a
href="0ca943fb07"><code>0ca943f</code></a>
Update endpoints model</li>
<li><a
href="3908bc4e96"><code>3908bc4</code></a>
Update API model</li>
<li><a
href="a0c74d28b6"><code>a0c74d2</code></a>
Release 2025-10-22</li>
<li><a
href="eb611540d5"><code>eb61154</code></a>
Regenerated Clients</li>
<li><a
href="e20d3e4b60"><code>e20d3e4</code></a>
Update endpoints model</li>
<li><a
href="9acd5faf2c"><code>9acd5fa</code></a>
Update API model</li>
<li><a
href="a91cc6c722"><code>a91cc6c</code></a>
Speed up unit tests by removing duplicate work (<a
href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/3216">#3216</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/aws/aws-sdk-go-v2/compare/config/v1.31.13...config/v1.31.15">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/aws/aws-sdk-go-v2/config&package-manager=go_modules&previous-version=1.31.13&new-version=1.31.15)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-25 22:33:49 -07:00
Copilot
e27717461e
Remove unused chat directory and related components (#2479)
Removes the entire `frontend/app/view/chat/` directory and its
dependencies—avatar and collapsiblemenu components—which were only
referenced within the chat code itself.

**Removed:**
- `frontend/app/view/chat/` directory (13 files: channels, chat,
chatbox, chatmessages, userlist + their styles/stories)
- `frontend/app/element/avatar.{tsx,scss,stories.tsx}` (only used by
chat/userlist)
- `frontend/app/element/collapsiblemenu.{tsx,scss,stories.tsx}` (only
used by chat/channels)
- `avatar-dims-mixin` from `frontend/app/mixins.scss` (only used by
avatar.scss)

Total: 19 files, ~1300 lines removed.


---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: sawka <2722291+sawka@users.noreply.github.com>
2025-10-25 22:33:27 -07:00
dependabot[bot]
f86de16983
Bump github.com/aws/aws-sdk-go-v2 from 1.39.3 to 1.39.4 (#2473)
Bumps
[github.com/aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2)
from 1.39.3 to 1.39.4.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4bd7f5481e"><code>4bd7f54</code></a>
Release 2025-10-23</li>
<li><a
href="55fb47cb07"><code>55fb47c</code></a>
Regenerated Clients</li>
<li><a
href="bf727c0b40"><code>bf727c0</code></a>
Update partitions file</li>
<li><a
href="0ca943fb07"><code>0ca943f</code></a>
Update endpoints model</li>
<li><a
href="3908bc4e96"><code>3908bc4</code></a>
Update API model</li>
<li><a
href="a0c74d28b6"><code>a0c74d2</code></a>
Release 2025-10-22</li>
<li><a
href="eb611540d5"><code>eb61154</code></a>
Regenerated Clients</li>
<li><a
href="e20d3e4b60"><code>e20d3e4</code></a>
Update endpoints model</li>
<li><a
href="9acd5faf2c"><code>9acd5fa</code></a>
Update API model</li>
<li><a
href="a91cc6c722"><code>a91cc6c</code></a>
Speed up unit tests by removing duplicate work (<a
href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/3216">#3216</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/aws/aws-sdk-go-v2/compare/v1.39.3...v1.39.4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/aws/aws-sdk-go-v2&package-manager=go_modules&previous-version=1.39.3&new-version=1.39.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-25 22:12:51 -07:00
dependabot[bot]
786f7ba78c
Bump google.golang.org/api from 0.252.0 to 0.253.0 (#2475)
Bumps
[google.golang.org/api](https://github.com/googleapis/google-api-go-client)
from 0.252.0 to 0.253.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/googleapis/google-api-go-client/releases">google.golang.org/api's
releases</a>.</em></p>
<blockquote>
<h2>v0.253.0</h2>
<h2><a
href="https://github.com/googleapis/google-api-go-client/compare/v0.252.0...v0.253.0">0.253.0</a>
(2025-10-22)</h2>
<h3>Features</h3>
<ul>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3337">#3337</a>)
(<a
href="40f2752ec3">40f2752</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3339">#3339</a>)
(<a
href="d1ef9766c4">d1ef976</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3340">#3340</a>)
(<a
href="580c65f002">580c65f</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3341">#3341</a>)
(<a
href="9d031c4229">9d031c4</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3342">#3342</a>)
(<a
href="ca2b9ad85a">ca2b9ad</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3344">#3344</a>)
(<a
href="844753e402">844753e</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3345">#3345</a>)
(<a
href="3de8a5b1f0">3de8a5b</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3346">#3346</a>)
(<a
href="a590b9a898">a590b9a</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3347">#3347</a>)
(<a
href="40ca8fedda">40ca8fe</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md">google.golang.org/api's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/googleapis/google-api-go-client/compare/v0.252.0...v0.253.0">0.253.0</a>
(2025-10-22)</h2>
<h3>Features</h3>
<ul>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3337">#3337</a>)
(<a
href="40f2752ec3">40f2752</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3339">#3339</a>)
(<a
href="d1ef9766c4">d1ef976</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3340">#3340</a>)
(<a
href="580c65f002">580c65f</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3341">#3341</a>)
(<a
href="9d031c4229">9d031c4</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3342">#3342</a>)
(<a
href="ca2b9ad85a">ca2b9ad</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3344">#3344</a>)
(<a
href="844753e402">844753e</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3345">#3345</a>)
(<a
href="3de8a5b1f0">3de8a5b</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3346">#3346</a>)
(<a
href="a590b9a898">a590b9a</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3347">#3347</a>)
(<a
href="40ca8fedda">40ca8fe</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="bf0e302fbe"><code>bf0e302</code></a>
chore(main): release 0.253.0 (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3338">#3338</a>)</li>
<li><a
href="40ca8fedda"><code>40ca8fe</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3347">#3347</a>)</li>
<li><a
href="a590b9a898"><code>a590b9a</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3346">#3346</a>)</li>
<li><a
href="3de8a5b1f0"><code>3de8a5b</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3345">#3345</a>)</li>
<li><a
href="8012a7b9bf"><code>8012a7b</code></a>
chore(all): update all (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3343">#3343</a>)</li>
<li><a
href="844753e402"><code>844753e</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3344">#3344</a>)</li>
<li><a
href="ca2b9ad85a"><code>ca2b9ad</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3342">#3342</a>)</li>
<li><a
href="9d031c4229"><code>9d031c4</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3341">#3341</a>)</li>
<li><a
href="580c65f002"><code>580c65f</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3340">#3340</a>)</li>
<li><a
href="d1ef9766c4"><code>d1ef976</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3339">#3339</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/googleapis/google-api-go-client/compare/v0.252.0...v0.253.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=google.golang.org/api&package-manager=go_modules&previous-version=0.252.0&new-version=0.253.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-25 22:12:21 -07:00
Mike Sawka
d886b5e246
more terminal integration for wave ai (#2470)
- mark last command / prompts in xterm.js
- split out term model into its own file
- try to detect repl/shells/ssh/tmux etc commands that stop wave ai
integration
- show icons in term headers for whether wave ai integration is
available
- keep integration status / last command client side (sync with server
on reload)
2025-10-25 21:47:16 -07:00
Mike Sawka
edacd6580f
allow wsh ai to attach directory listings to the chat (#2469) 2025-10-22 09:47:58 -07:00
Mike Sawka
271c3550ab
should lowercase ext when looking up in staticmimetypemap (#2468) 2025-10-21 10:06:08 -07:00
dependabot[bot]
f99bad8267
Bump vite from 6.3.6 to 6.4.1 (#2464)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite)
from 6.3.6 to 6.4.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/releases">vite's
releases</a>.</em></p>
<blockquote>
<h2>create-vite@6.4.1</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/create-vite@6.4.1/packages/create-vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>v6.4.1</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.4.1/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>create-vite@6.4.0</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/create-vite@6.4.0/packages/create-vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>v6.4.0</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.4.0/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>v6.3.7</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.3.7/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5003434040"><code>5003434</code></a>
fix(preview): use host url to open browser (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19836">#19836</a>)</li>
<li><a
href="bf9728e79e"><code>bf9728e</code></a>
release: v6.3.0-beta.2</li>
<li><a
href="380c10e665"><code>380c10e</code></a>
fix(hmr): run HMR handler sequentially (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19793">#19793</a>)</li>
<li><a
href="8bed1de571"><code>8bed1de</code></a>
fix: addWatchFile doesn't work if base is specified (fixes <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19792">#19792</a>)
(<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19794">#19794</a>)</li>
<li><a
href="0a0c50a7ed"><code>0a0c50a</code></a>
refactor: simplify pluginFilter implementation (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19828">#19828</a>)</li>
<li><a
href="59d0b35b30"><code>59d0b35</code></a>
perf(css): avoid constructing <code>renderedModules</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19775">#19775</a>)</li>
<li><a
href="175a83909f"><code>175a839</code></a>
fix: reject requests with <code>#</code> in request-target (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19830">#19830</a>)</li>
<li><a
href="e2e11b15a6"><code>e2e11b1</code></a>
fix(module-runner): allow already resolved id as entry (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19768">#19768</a>)</li>
<li><a
href="7200deec91"><code>7200dee</code></a>
fix: correct the behavior when multiple transform filter options are
specifie...</li>
<li><a
href="b1251720d4"><code>b125172</code></a>
fix(css): remove empty chunk imports correctly when chunk file name
contained...</li>
<li>Additional commits viewable in <a
href="https://github.com/vitejs/vite/commits/create-vite@6.4.1/packages/vite">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vite&package-manager=npm_and_yarn&previous-version=6.3.6&new-version=6.4.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/wavetermdev/waveterm/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-21 09:43:38 -07:00
wave-builder[bot]
7131ca48d5
chore: bump package version to 0.12.1 2025-10-21 06:29:04 +00:00
Mike Sawka
6781ae4e2d
Fix IME inputs for Wave AI, and update privacy wording to be more clear about OpenAI (#2466)
Fix for https://github.com/wavetermdev/waveterm/issues/2385 for Wave AI.

Also update privacy information to say we send the chats to OpenAI for
processing.

Also modify the system prompt to say that file editing + command execution is coming soon.
2025-10-20 23:27:16 -07:00
Mike Sawka
e510f3507a
v0.12.1 release notes and onboarding (#2465) 2025-10-20 22:10:57 -07:00
wave-builder[bot]
df85a49d4f
chore: bump package version to 0.12.1-beta.0 2025-10-21 00:33:14 +00:00
Mike Sawka
2e0b3d2569
implement more OSC 16162 for fish, pwsh, and bash (#2462) 2025-10-20 17:29:38 -07:00
Matt
6bfb9e650a
Fix Monaco editor syntax highlighting in Preview block (#2459)
The Preview block's CodeEditPreview component was not passing file
information to Monaco editor, preventing automatic language detection
from file extensions.

Changes:
- Add fileName prop to CodeEditor component
- Pass actual file path to Monaco with fallback to random UUID

Fixes syntax highlighting for all text files opened in Preview blocks
while maintaining backward compatibility with existing CodeEditor usage.

---------

Co-authored-by: sawka
2025-10-20 17:26:47 -07:00
Mike Sawka
ae42e2ccce
fix padding for header buttons (tailwind regression) (#2458) 2025-10-20 10:09:34 -07:00
dependabot[bot]
64d24cd4d4
Bump the prod-dependencies-patch group with 2 updates (#2451)
[//]: # (dependabot-start)
⚠️  **Dependabot is rebasing this PR** ⚠️ 

Rebasing might not happen immediately, so don't worry if this takes some
time.

Note: if you make any changes to this PR yourself, they will take
precedence over the rebase.

---

[//]: # (dependabot-end)

Bumps the prod-dependencies-patch group with 2 updates:
[@ai-sdk/react](https://github.com/vercel/ai) and
[ai](https://github.com/vercel/ai).

Updates `@ai-sdk/react` from 2.0.68 to 2.0.76
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vercel/ai/releases"><code>@​ai-sdk/react</code>'s
releases</a>.</em></p>
<blockquote>
<h2><code>@​ai-sdk/react</code><a
href="https://github.com/2"><code>@​2</code></a>.0.76</h2>
<h3>Patch Changes</h3>
<ul>
<li>Updated dependencies [87b03d5]
<ul>
<li>ai@5.0.76</li>
</ul>
</li>
</ul>
<h2><code>@​ai-sdk/react</code><a
href="https://github.com/2"><code>@​2</code></a>.0.75</h2>
<h3>Patch Changes</h3>
<ul>
<li>ai@5.0.75</li>
</ul>
<h2><code>@​ai-sdk/react</code><a
href="https://github.com/2"><code>@​2</code></a>.0.74</h2>
<h3>Patch Changes</h3>
<ul>
<li>ai@5.0.74</li>
</ul>
<h2><code>@​ai-sdk/react</code><a
href="https://github.com/2"><code>@​2</code></a>.0.73</h2>
<h3>Patch Changes</h3>
<ul>
<li>Updated dependencies [734c4c3]
<ul>
<li>ai@5.0.73</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="716c41cee8"><code>716c41c</code></a>
Version Packages (<a
href="https://redirect.github.com/vercel/ai/issues/9602">#9602</a>)</li>
<li><a
href="87b03d5abe"><code>87b03d5</code></a>
Backport: feat(ui): add isDataUIPart helper (<a
href="https://redirect.github.com/vercel/ai/issues/9598">#9598</a>)</li>
<li><a
href="58d701fc59"><code>58d701f</code></a>
Backport: docs: fix openai provider section of migration guide (<a
href="https://redirect.github.com/vercel/ai/issues/9592">#9592</a>)</li>
<li><a
href="7a6b5497bf"><code>7a6b549</code></a>
Version Packages (<a
href="https://redirect.github.com/vercel/ai/issues/9587">#9587</a>)</li>
<li><a
href="76678cdabc"><code>76678cd</code></a>
Backport: fix(gateway): trigger release (<a
href="https://redirect.github.com/vercel/ai/issues/9585">#9585</a>)</li>
<li><a
href="f45b3738f6"><code>f45b373</code></a>
Backport: fix(gateway): bump <code>@vercel/oidc</code> to latest (<a
href="https://redirect.github.com/vercel/ai/issues/9583">#9583</a>)</li>
<li><a
href="ef11cd5fd4"><code>ef11cd5</code></a>
Version Packages (<a
href="https://redirect.github.com/vercel/ai/issues/9575">#9575</a>)</li>
<li><a
href="11a886793f"><code>11a8867</code></a>
Backport: feat (provider/gateway): improve auth error messages (<a
href="https://redirect.github.com/vercel/ai/issues/9573">#9573</a>)</li>
<li><a
href="099ed347f1"><code>099ed34</code></a>
Backport: docs(tools): update multi-modal tool results providers and
example ...</li>
<li><a
href="951ad41832"><code>951ad41</code></a>
Version Packages (<a
href="https://redirect.github.com/vercel/ai/issues/9567">#9567</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/vercel/ai/compare/@ai-sdk/react@2.0.68...@ai-sdk/react@2.0.76">compare
view</a></li>
</ul>
</details>
<br />

Updates `ai` from 5.0.68 to 5.0.76
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/vercel/ai/releases">ai's
releases</a>.</em></p>
<blockquote>
<h2>ai@5.0.76</h2>
<h3>Patch Changes</h3>
<ul>
<li>87b03d5: feat(ui): add isDataUIPart helper</li>
</ul>
<h2>ai@5.0.75</h2>
<h3>Patch Changes</h3>
<ul>
<li>Updated dependencies [76678cd]
<ul>
<li><code>@​ai-sdk/gateway</code><a
href="https://github.com/2"><code>@​2</code></a>.0.0</li>
</ul>
</li>
</ul>
<h2>ai@5.0.74</h2>
<h3>Patch Changes</h3>
<ul>
<li>Updated dependencies [11a8867]
<ul>
<li><code>@​ai-sdk/gateway</code><a
href="https://github.com/1"><code>@​1</code></a>.0.41</li>
</ul>
</li>
</ul>
<h2>ai@5.0.73</h2>
<h3>Patch Changes</h3>
<ul>
<li>734c4c3: fix(ai): add missing export for
<code>LoadSettingError</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="716c41cee8"><code>716c41c</code></a>
Version Packages (<a
href="https://redirect.github.com/vercel/ai/issues/9602">#9602</a>)</li>
<li><a
href="87b03d5abe"><code>87b03d5</code></a>
Backport: feat(ui): add isDataUIPart helper (<a
href="https://redirect.github.com/vercel/ai/issues/9598">#9598</a>)</li>
<li><a
href="58d701fc59"><code>58d701f</code></a>
Backport: docs: fix openai provider section of migration guide (<a
href="https://redirect.github.com/vercel/ai/issues/9592">#9592</a>)</li>
<li><a
href="7a6b5497bf"><code>7a6b549</code></a>
Version Packages (<a
href="https://redirect.github.com/vercel/ai/issues/9587">#9587</a>)</li>
<li><a
href="76678cdabc"><code>76678cd</code></a>
Backport: fix(gateway): trigger release (<a
href="https://redirect.github.com/vercel/ai/issues/9585">#9585</a>)</li>
<li><a
href="f45b3738f6"><code>f45b373</code></a>
Backport: fix(gateway): bump <code>@vercel/oidc</code> to latest (<a
href="https://redirect.github.com/vercel/ai/issues/9583">#9583</a>)</li>
<li><a
href="ef11cd5fd4"><code>ef11cd5</code></a>
Version Packages (<a
href="https://redirect.github.com/vercel/ai/issues/9575">#9575</a>)</li>
<li><a
href="11a886793f"><code>11a8867</code></a>
Backport: feat (provider/gateway): improve auth error messages (<a
href="https://redirect.github.com/vercel/ai/issues/9573">#9573</a>)</li>
<li><a
href="099ed347f1"><code>099ed34</code></a>
Backport: docs(tools): update multi-modal tool results providers and
example ...</li>
<li><a
href="951ad41832"><code>951ad41</code></a>
Version Packages (<a
href="https://redirect.github.com/vercel/ai/issues/9567">#9567</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/vercel/ai/compare/ai@5.0.68...ai@5.0.76">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-17 17:55:04 -07:00
dependabot[bot]
e72ddf1dfc
Bump actions/setup-node from 5 to 6 in /.github/workflows (#2445)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 5
to 6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/setup-node/releases">actions/setup-node's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.0</h2>
<h2>What's Changed</h2>
<p><strong>Breaking Changes</strong></p>
<ul>
<li>Limit automatic caching to npm, update workflows and documentation
by <a
href="https://github.com/priyagupta108"><code>@​priyagupta108</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/1374">actions/setup-node#1374</a></li>
</ul>
<p><strong>Dependency Upgrades</strong></p>
<ul>
<li>Upgrade ts-jest from 29.1.2 to 29.4.1 and document breaking changes
in v5 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/setup-node/pull/1336">#1336</a></li>
<li>Upgrade prettier from 2.8.8 to 3.6.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/setup-node/pull/1334">#1334</a></li>
<li>Upgrade actions/publish-action from 0.3.0 to 0.4.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/setup-node/pull/1362">#1362</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v5...v6.0.0">https://github.com/actions/setup-node/compare/v5...v6.0.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="2028fbc5c2"><code>2028fbc</code></a>
Limit automatic caching to npm, update workflows and documentation (<a
href="https://redirect.github.com/actions/setup-node/issues/1374">#1374</a>)</li>
<li><a
href="13427813f7"><code>1342781</code></a>
Bump actions/publish-action from 0.3.0 to 0.4.0 (<a
href="https://redirect.github.com/actions/setup-node/issues/1362">#1362</a>)</li>
<li><a
href="89d709d423"><code>89d709d</code></a>
Bump prettier from 2.8.8 to 3.6.2 (<a
href="https://redirect.github.com/actions/setup-node/issues/1334">#1334</a>)</li>
<li><a
href="cd2651c462"><code>cd2651c</code></a>
Bump ts-jest from 29.1.2 to 29.4.1 (<a
href="https://redirect.github.com/actions/setup-node/issues/1336">#1336</a>)</li>
<li>See full diff in <a
href="https://github.com/actions/setup-node/compare/v5...v6">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-node&package-manager=github_actions&previous-version=5&new-version=6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-17 17:49:17 -07:00
dependabot[bot]
eeea477525
Bump the dev-dependencies-patch group with 3 updates (#2450)
Bumps the dev-dependencies-patch group with 3 updates:
[@rollup/plugin-node-resolve](https://github.com/rollup/plugins/tree/HEAD/packages/node-resolve),
[typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)
and
[vite-plugin-static-copy](https://github.com/sapphi-red/vite-plugin-static-copy).

Updates `@rollup/plugin-node-resolve` from 16.0.2 to 16.0.3
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rollup/plugins/blob/master/packages/node-resolve/CHANGELOG.md"><code>@​rollup/plugin-node-resolve</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>v16.0.3</h2>
<p><em>2025-10-13</em></p>
<h3>Bugfixes</h3>
<ul>
<li>fix: resolve bare targets of package &quot;imports&quot; using
export maps; avoid fileURLToPath(null) (<a
href="https://github.com/rollup/plugins/tree/HEAD/packages/node-resolve/issues/1908">#1908</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="764910a09d"><code>764910a</code></a>
chore(release): node-resolve v16.0.3</li>
<li><a
href="35697207a4"><code>3569720</code></a>
fix(node-resolve): resolve bare targets of package &quot;imports&quot;
using export map...</li>
<li>See full diff in <a
href="https://github.com/rollup/plugins/commits/node-resolve-v16.0.3/packages/node-resolve">compare
view</a></li>
</ul>
</details>
<br />

Updates `typescript-eslint` from 8.46.0 to 8.46.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases">typescript-eslint's
releases</a>.</em></p>
<blockquote>
<h2>v8.46.1</h2>
<h2>8.46.1 (2025-10-13)</h2>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>ast-spec:</strong> cleanup <code>TSLiteralType</code> (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11624">#11624</a>)</li>
<li><strong>eslint-plugin:</strong> [prefer-optional-chain] include
mixed &quot;nullish comparison style&quot; chains in checks (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11533">#11533</a>)</li>
<li><strong>eslint-plugin:</strong> [no-misused-promises] special-case
<code>.finally</code> not to report when a promise returning function is
provided as an argument (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11667">#11667</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Abraham Guo</li>
<li>mdm317</li>
<li>Ronen Amiel</li>
</ul>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md">typescript-eslint's
changelog</a>.</em></p>
<blockquote>
<h2>8.46.1 (2025-10-13)</h2>
<p>This was a version bump only for typescript-eslint to align it with
other projects, there were no code changes.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3f5fbf698e"><code>3f5fbf6</code></a>
chore(release): publish 8.46.1</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.46.1/packages/typescript-eslint">compare
view</a></li>
</ul>
</details>
<br />

Updates `vite-plugin-static-copy` from 3.1.3 to 3.1.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/sapphi-red/vite-plugin-static-copy/releases">vite-plugin-static-copy's
releases</a>.</em></p>
<blockquote>
<h2>vite-plugin-static-copy@3.1.4</h2>
<h3>Patch Changes</h3>
<ul>
<li><a
href="https://redirect.github.com/sapphi-red/vite-plugin-static-copy/pull/204">#204</a>
<a
href="d0b5370352"><code>d0b5370</code></a>
Thanks <a
href="https://github.com/stianjensen"><code>@​stianjensen</code></a>! -
Removed <code>fs-extra</code> dependency in favor of
<code>node:fs</code>. This should not affect the behavior.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/sapphi-red/vite-plugin-static-copy/blob/main/CHANGELOG.md">vite-plugin-static-copy's
changelog</a>.</em></p>
<blockquote>
<h2>3.1.4</h2>
<h3>Patch Changes</h3>
<ul>
<li><a
href="https://redirect.github.com/sapphi-red/vite-plugin-static-copy/pull/204">#204</a>
<a
href="d0b5370352"><code>d0b5370</code></a>
Thanks <a
href="https://github.com/stianjensen"><code>@​stianjensen</code></a>! -
Removed <code>fs-extra</code> dependency in favor of
<code>node:fs</code>. This should not affect the behavior.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="a7e8639783"><code>a7e8639</code></a>
chore: update versions (<a
href="https://redirect.github.com/sapphi-red/vite-plugin-static-copy/issues/206">#206</a>)</li>
<li><a
href="d0b5370352"><code>d0b5370</code></a>
refactor: replace <code>fs-extra</code> with <code>node:fs</code> (<a
href="https://redirect.github.com/sapphi-red/vite-plugin-static-copy/issues/204">#204</a>)</li>
<li>See full diff in <a
href="https://github.com/sapphi-red/vite-plugin-static-copy/compare/vite-plugin-static-copy@3.1.3...vite-plugin-static-copy@3.1.4">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-17 17:47:08 -07:00
dependabot[bot]
1f1d8bd354
Bump google.golang.org/api from 0.251.0 to 0.252.0 (#2448)
Bumps
[google.golang.org/api](https://github.com/googleapis/google-api-go-client)
from 0.251.0 to 0.252.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/googleapis/google-api-go-client/releases">google.golang.org/api's
releases</a>.</em></p>
<blockquote>
<h2>v0.252.0</h2>
<h2><a
href="https://github.com/googleapis/google-api-go-client/compare/v0.251.0...v0.252.0">0.252.0</a>
(2025-10-07)</h2>
<h3>Features</h3>
<ul>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3326">#3326</a>)
(<a
href="c992545408">c992545</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3328">#3328</a>)
(<a
href="b9b915b1d8">b9b915b</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3330">#3330</a>)
(<a
href="fcb7723a72">fcb7723</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3331">#3331</a>)
(<a
href="a67f44d16f">a67f44d</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3332">#3332</a>)
(<a
href="b9890fcd36">b9890fc</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3334">#3334</a>)
(<a
href="163216d91d">163216d</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3336">#3336</a>)
(<a
href="2c4dd78944">2c4dd78</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md">google.golang.org/api's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/googleapis/google-api-go-client/compare/v0.251.0...v0.252.0">0.252.0</a>
(2025-10-07)</h2>
<h3>Features</h3>
<ul>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3326">#3326</a>)
(<a
href="c992545408">c992545</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3328">#3328</a>)
(<a
href="b9b915b1d8">b9b915b</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3330">#3330</a>)
(<a
href="fcb7723a72">fcb7723</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3331">#3331</a>)
(<a
href="a67f44d16f">a67f44d</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3332">#3332</a>)
(<a
href="b9890fcd36">b9890fc</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3334">#3334</a>)
(<a
href="163216d91d">163216d</a>)</li>
<li><strong>all:</strong> Auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3336">#3336</a>)
(<a
href="2c4dd78944">2c4dd78</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="88c288c354"><code>88c288c</code></a>
chore(main): release 0.252.0 (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3327">#3327</a>)</li>
<li><a
href="2c4dd78944"><code>2c4dd78</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3336">#3336</a>)</li>
<li><a
href="ceff1a1fca"><code>ceff1a1</code></a>
chore(all): update all (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3333">#3333</a>)</li>
<li><a
href="163216d91d"><code>163216d</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3334">#3334</a>)</li>
<li><a
href="b9890fcd36"><code>b9890fc</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3332">#3332</a>)</li>
<li><a
href="a67f44d16f"><code>a67f44d</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3331">#3331</a>)</li>
<li><a
href="4312741a47"><code>4312741</code></a>
chore: update CODEOWNERS, remove blunderbuss (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3329">#3329</a>)</li>
<li><a
href="fcb7723a72"><code>fcb7723</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3330">#3330</a>)</li>
<li><a
href="b9b915b1d8"><code>b9b915b</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3328">#3328</a>)</li>
<li><a
href="c992545408"><code>c992545</code></a>
feat(all): auto-regenerate discovery clients (<a
href="https://redirect.github.com/googleapis/google-api-go-client/issues/3326">#3326</a>)</li>
<li>See full diff in <a
href="https://github.com/googleapis/google-api-go-client/compare/v0.251.0...v0.252.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=google.golang.org/api&package-manager=go_modules&previous-version=0.251.0&new-version=0.252.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-17 17:46:26 -07:00
dependabot[bot]
6388790b7d
Bump github.com/aws/aws-sdk-go-v2/config from 1.31.8 to 1.31.13 (#2449)
Bumps
[github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2)
from 1.31.8 to 1.31.13.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b9b0c6553b"><code>b9b0c65</code></a>
Release 2025-10-16</li>
<li><a
href="e2bc8a0ec6"><code>e2bc8a0</code></a>
Regenerated Clients</li>
<li><a
href="8691ee380a"><code>8691ee3</code></a>
Update API model</li>
<li><a
href="51e8a3fe03"><code>51e8a3f</code></a>
bump to go1.23 (<a
href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/3211">#3211</a>)</li>
<li><a
href="ad2d36cba7"><code>ad2d36c</code></a>
Release 2025-10-15</li>
<li><a
href="19a35d639f"><code>19a35d6</code></a>
Regenerated Clients</li>
<li><a
href="35cb02fd50"><code>35cb02f</code></a>
Update endpoints model</li>
<li><a
href="f673a1b0a8"><code>f673a1b</code></a>
Update API model</li>
<li><a
href="48421fd812"><code>48421fd</code></a>
Release 2025-10-14</li>
<li><a
href="fedcba778c"><code>fedcba7</code></a>
Regenerated Clients</li>
<li>Additional commits viewable in <a
href="https://github.com/aws/aws-sdk-go-v2/compare/config/v1.31.8...config/v1.31.13">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/aws/aws-sdk-go-v2/config&package-manager=go_modules&previous-version=1.31.8&new-version=1.31.13)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-17 17:46:04 -07:00
Copilot
665facbc7c
Add mobile user agent emulation for web widgets (#2454)
This PR adds support for mobile user agent emulation in web widgets,
enabling developers to test mobile-responsive websites directly within
WaveTerm.

## Changes

### New Meta Key: `web:useragenttype`

Added a new metadata key that accepts the following values:
- `"default"` (or `null`) - Uses the standard browser user agent
- `"mobile:iphone"` - Emulates iPhone Safari (iOS 17.0)
- `"mobile:android"` - Emulates Android Chrome (Android 13)

### User Interface

**Settings Menu**: Added a "User Agent Type" submenu to web widget
settings (accessible via right-click → Settings) with radio button
options for Default, Mobile: iPhone, and Mobile: Android.

**Visual Indicator**: When a mobile user agent is active, a mobile
device icon appears in the widget's header toolbar with an appropriate
tooltip indicating the current emulation mode.

### Implementation Details

The implementation leverages Electron's webview `useragent` attribute to
override the default user agent string. The setting is persisted in the
block's metadata and automatically applied when the webview is rendered.

User agent strings used:
- **iPhone**: `Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X)
AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0 Mobile/15E148
Safari/604.1`
- **Android**: `Mozilla/5.0 (Linux; Android 13) AppleWebKit/537.36
(KHTML, like Gecko) Chrome/120.0.6099.43 Mobile Safari/537.36`

## Use Cases

This feature is particularly useful for:
- Testing mobile-responsive web designs
- Debugging mobile-specific website behaviors
- Viewing mobile versions of websites without needing physical devices
- Web development workflows that require testing across different user
agents

## Files Changed

- `pkg/waveobj/wtypemeta.go` - Added `WebUserAgentType` field to
metadata type
- `frontend/types/gotypes.d.ts` - Generated TypeScript types for the new
meta key
- `frontend/app/view/webview/webview.tsx` - Implemented user agent
selection UI and webview configuration
- `pkg/waveobj/metaconsts.go` - Generated Go constants for the new meta
key


Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: sawka <2722291+sawka@users.noreply.github.com>
2025-10-17 17:45:32 -07:00
Copilot
0d04b99b46
Add Google AI file summarization package (#2455)
- [x] Create new directory pkg/aiusechat/google
- [x] Implement SummarizeFile function with:
  - Context parameter for timeout
  - File validation (images, PDFs, text files only)
  - Use gemini-2.5-flash-lite model
  - Configurable API URL and prompt as constants
  - Return (string, usage, error)
- [x] Define Google-specific usage struct
- [x] Test the implementation (all tests pass)
- [x] Verify with existing linting and build
- [x] Run CodeQL security check (no issues found)
- [x] Revert unintended tsunami demo dependency changes

## Summary

Successfully implemented a new Google AI package at
`pkg/aiusechat/google` with:

1. **SummarizeFile function** - A simple request-response API (not
streaming, not SSE)
   - Takes context for timeout
   - Validates file types (images, PDFs, text only) 
   - Enforces file size limits matching wshcmd-ai.go
   - Uses gemini-2.5-flash-lite model
   - Returns (summary string, usage stats, error)

2. **GoogleUsage struct** - Tracks token consumption:
   - PromptTokenCount
   - CachedContentTokenCount  
   - CandidatesTokenCount
   - TotalTokenCount

3. **Configurable constants**:
   - GoogleAPIURL (for reference)
   - SummarizePrompt (customizable prompt)
   - SummarizeModel (gemini-2.5-flash-lite)

4. **Comprehensive tests** - 41.7% coverage with all tests passing
5. **Security verified** - No CodeQL alerts
6. **Package documentation** - doc.go with usage examples

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: sawka <2722291+sawka@users.noreply.github.com>
2025-10-17 17:24:06 -07:00
Copilot
2619c85d03
Add OSC 7 support for Fish and PowerShell shells (#2456)
## Overview

This PR implements OSC 7 (current working directory reporting) support
for Fish shell and PowerShell, completing the shell integration coverage
alongside the existing Bash and Zsh implementations added in #2444.

## What is OSC 7?

OSC 7 is an operating system command that allows shells to automatically
report their current working directory to the terminal emulator using
the format:
```
ESC]7;file://hostname/path BEL
```

This enables the terminal to track the current directory without manual
commands, providing better context for AI features and ensuring accurate
path information.

## Implementation Details

### Fish Shell (`fish_wavefish.sh`)

Added shell integration functions using Fish-native features:
- `_waveterm_si_blocked()` - Prevents OSC 7 in tmux/screen environments
using `set -q` and `string match -q`
- `_waveterm_si_osc7()` - Sends the OSC 7 sequence with built-in URL
encoding
- Uses `string escape --style=url` for UTF-8 percent-encoding
- Hooked to `fish_prompt` event and `PWD` variable changes for automatic
updates

**Key Features:**
- Fish-native checks (`set -q`, `string match`) instead of non-portable
`test -o`
- Built-in `string escape --style=url` for proper UTF-8 percent-encoding
- Simple, portable, and maintainable (32 lines total)

### PowerShell (`pwsh_wavepwsh.sh`)

Added simplified shell integration that leverages frontend
normalization:
- `_waveterm_si_blocked()` - Prevents OSC 7 in tmux/screen environments
- `_waveterm_si_osc7()` - Sends OSC 7 with raw path encoding
- Uses `[System.Uri]::EscapeDataString()` for proper percent-encoding
- Integrated into the prompt function while preserving existing prompts

**Key Features:**
- **No path rewriting**: Sends raw paths (e.g., `C:\Users\Name` →
`C%3A%5CUsers%5CName`)
- **UNC support**: Network paths like `\\server\share` encoded as
`%5C%5Cserver%5Cshare`
- **Hostname fallback**: `$env:COMPUTERNAME` → `$env:HOSTNAME` → empty
(produces `file:///path`)
- **No DNS lookup**: Avoids potentially slow DNS calls
- Simple and efficient (53 lines total)

## Implementation Benefits

Both implementations use native, built-in features for maximum
compatibility and maintainability:

**Fish:**
-  Replaced `test -o` with fish-native `set -q` and `string match -q`
for better portability
-  Replaced manual string replacements with `string escape --style=url`
for proper UTF-8 support
-  Removed custom URL encoding function (19 lines removed)

**PowerShell:**
-  Uses built-in `[System.Uri]::EscapeDataString()` for proper
percent-encoding
-  No path rewriting - frontend handles normalization via
`decodeURIComponent()` and backslash conversion
-  Proper UNC path support without special-casing
-  Removed DNS lookup to avoid slow operations
-  Removed custom URL encoding function

## Testing

All implementations were tested for:
-  URL encoding of special characters (spaces, #, ?, &, ;, +, %)
-  Correct OSC 7 format generation
-  Fish-native checks work correctly (TMUX, STY, TERM patterns)
-  Raw path encoding (PowerShell - no rewriting)
-  UNC path support (PowerShell)
-  Unix path handling
-  Go package compilation
-  No security issues (CodeQL)

## Path Handling Examples

**Fish:**
- `/home/user` → `/home/user`
- `/path with spaces` → `/path%20with%20spaces`
- `/file#hash` → `/file%23hash`

**PowerShell:**
- Windows: `C:\Users\Name` → `file://HOST/C%3A%5CUsers%5CName`
- UNC: `\\server\share\folder` →
`file://HOST/%5C%5Cserver%5Cshare%5Cfolder`
- Empty hostname: produces `file:///path` format

## Files Changed

- `pkg/util/shellutil/shellintegration/fish_wavefish.sh` (+22 lines, -18
lines = net +4 lines, but 19 lines of custom code removed)
- `pkg/util/shellutil/shellintegration/pwsh_wavepwsh.sh` (+26 lines, -51
lines = net -25 lines)

Total: 38 fewer lines of code with better functionality and
maintainability.

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: sawka <2722291+sawka@users.noreply.github.com>
2025-10-17 17:23:08 -07:00
Mike Sawka
38ede673aa
Add AI Response Feedback + Copy Buttons (#2457) 2025-10-17 14:18:30 -07:00
Mike Sawka
6a173a6227
working on more terminal context (#2444)
* add automatic OSC 7 support to bash and zsh
* add new wave OSC 16162 (planck length) to get up-to-date shell
information into blockrtinfo. currently implemented only for zsh. bash
will not support as rich of data as zsh, but we'll be able to do some.
* new rtinfo will be used to provide better context for AI in the
future, and to make sure AI is running safe commands.
* added a small local machine description to tab context (so AI knows
we're running on MacOS, Linux, or Windows)
2025-10-17 12:19:40 -07:00
Jérôme Petazzoni
54cd3e5b8e
wsh ai example was missing -m flag (#2452)
I got very confused when I naively copy pasted these examples 😅
2025-10-17 11:14:44 -07:00
Mike Sawka
af3279b411
handle reasoning deltas and display them in the UI (#2443) 2025-10-16 11:17:24 -07:00
wave-builder[bot]
ab2dbd6517
chore: bump package version to 0.12.0 2025-10-16 05:23:52 +00:00
Mike Sawka
4077c26b97
reduce some logging for prod release (#2440) 2025-10-15 22:10:00 -07:00
Mike Sawka
38163e7633
exclude autoupdate channel in custom settings (#2438) 2025-10-15 21:20:58 -07:00
Mike Sawka
a44db26ddc
first cut at release notes for v0.12 (#2437) 2025-10-15 20:25:14 -07:00
Mike Sawka
de39bc3ea6
fix api-dev URLs (#2436) 2025-10-15 18:21:44 -07:00
wave-builder[bot]
c5b1a278ac
chore: bump package version to 0.12.0-beta.4 2025-10-16 00:48:03 +00:00
Mike Sawka
0fd0daf134
Reimplement wsh ai, fix text file attaching format (#2435) 2025-10-15 17:28:56 -07:00
Mike Sawka
0e8eb83f62
Updates to prepare for v0.12 launch (#2434)
Documentation Updates (removing AI Widget Information / deprecation)
Hover effect on tool calls shows which widget is effected
Remove AI Widget from sidebar unless there is customized presets
Backend now provides blockid (if available) to frontend for tool calls
2025-10-15 16:10:37 -07:00
wave-builder[bot]
a2f1d4f51c
chore: bump package version to 0.12.0-beta.3 2025-10-15 04:56:56 +00:00
Mike Sawka
50cf6b589b
add an onboarding upgrade modal (#2433) 2025-10-14 20:21:10 -07:00
Mike Sawka
3f41c643b9
quick log rotation (#2432) 2025-10-14 20:17:02 -07:00
wave-builder[bot]
8b46463f95
chore: bump package version to 0.12.0-beta.2 2025-10-14 06:41:04 +00:00
Mike Sawka
2480ebe2dd
Batch Approval for AI Tool Calls, fix "AI is thinking" message, chunk JS (#2430)
We now show all Read File/Dir calls together and batch approve them
(backend change to emit them all at once, and FE change to display them
as a batch)

JS chunking for monaco, mermaid, and shiki, etc. shiki is huge, almost
10M but can't be easily split out of Streamdown. Tried making it load
async, but w/ Streamdown we can't do that easily. Trying to split the JS
up because of a build error we were running into in build-helper.
2025-10-13 23:37:45 -07:00
wave-builder[bot]
df400463f3
chore: bump package version to 0.12.0-beta.1 2025-10-14 01:02:33 +00:00
Mike Sawka
7e8dca8ed6
small bug fixes noticed in beta 0 (#2429) 2025-10-13 18:01:24 -07:00