Compare commits

...

38 Commits

Author SHA1 Message Date
Evan Simkowitz a4ac8be3da attempt to fix the dockerfile for macos 2024-08-28 12:32:41 -07:00
Sujal Goswami fd707dd857 Add devconatainer config file for easy development using VS Code. 2024-08-28 00:17:58 +05:30
Sujal Goswami 71fcc7a542 Update .dockerignore
Co-authored-by: Evan Simkowitz <esimkowitz@users.noreply.github.com>
2024-08-26 15:02:36 +05:30
Sujal Goswami 702446cba8 Update .dockerignore
Co-authored-by: Evan Simkowitz <esimkowitz@users.noreply.github.com>
2024-08-26 15:02:27 +05:30
Sujal Goswami 15acdcc850 Update .dockerignore
Co-authored-by: Evan Simkowitz <esimkowitz@users.noreply.github.com>
2024-08-26 15:02:03 +05:30
Sujal Goswami fc053b06ae Update .dockerignore
Co-authored-by: Evan Simkowitz <esimkowitz@users.noreply.github.com>
2024-08-26 15:01:45 +05:30
Sujal Goswami 37ba95bbe7 Update .dockerignore
Co-authored-by: Evan Simkowitz <esimkowitz@users.noreply.github.com>
2024-08-26 15:01:26 +05:30
Sujal Goswami a5e6885597 chore: containerize project by adding Docker configuration files and ignore unnecessary files 2024-08-26 00:00:48 +05:30
Evan Simkowitz 595102fefa Update build-linux.md (#766) 2024-08-24 15:12:18 -07:00
Evan Simkowitz 63526fbe8a Update build-linux.md (#765) 2024-08-24 15:10:54 -07:00
Evan Simkowitz f2faa6b735 Upgrade a bunch of Yarn packages (#755)
Addresses some security notices
2024-08-07 12:08:25 -07:00
Evan Simkowitz b0f8de5331 Forgot one env var for the arm builds (#754) 2024-08-07 11:44:53 -07:00
Henrique Goncalves 3c81eae8af Add Linux arm64 build (#752)
Closes #745

---------

Co-authored-by: Evan Simkowitz <esimkowitz@users.noreply.github.com>
2024-08-07 11:42:37 -07:00
Henrique Goncalves f8269b7495 Allow colon in SSH username (#730)
Fixes #693
2024-07-26 08:13:49 -07:00
dependabot[bot] fbf4915210 Bump electron-updater from 6.1.8 to 6.2.1 in the npm_and_yarn group across 1 directory (#717)
Bumps the npm_and_yarn group with 1 update in the / directory:
[electron-updater](https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater).

Updates `electron-updater` from 6.1.8 to 6.2.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/electron-userland/electron-builder/releases">electron-updater's
releases</a>.</em></p>
<blockquote>
<h2>electron-updater@6.2.1</h2>
<h3>Patch Changes</h3>
<ul>
<li><a
href="https://redirect.github.com/electron-userland/electron-builder/pull/8091">#8091</a>
<a
href="https://github.com/electron-userland/electron-builder/commit/e2a181d9fe3fbdd84690359e275daaef24584729"><code>e2a181d9</code></a>
Thanks <a
href="https://github.com/mmaietta"><code>@​mmaietta</code></a>! -
fix(mac): revert autoupdate for mac differential</li>
</ul>
<h2>electron-updater@6.2.0</h2>
<h3>Minor Changes</h3>
<ul>
<li><a
href="https://redirect.github.com/electron-userland/electron-builder/pull/7709">#7709</a>
<a
href="https://github.com/electron-userland/electron-builder/commit/79df54238621fbe48ba20444129950ba2dc49983"><code>79df5423</code></a>
Thanks <a
href="https://github.com/beyondkmp"><code>@​beyondkmp</code></a>! -
feat: adding differential downloader for updates on macOS</li>
</ul>
<h2>electron-updater@6.1.9</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a
href="https://redirect.github.com/electron-userland/electron-builder/pull/8051">#8051</a>
<a
href="https://github.com/electron-userland/electron-builder/commit/48603ba09dc7103849a2975799c19068fd08fc07"><code>48603ba0</code></a>
Thanks <a
href="https://github.com/mmaietta"><code>@​mmaietta</code></a>! - fix:
auto-update powershell script requires reset of
<code>PSModulePath</code></p>
</li>
<li>
<p><a
href="https://redirect.github.com/electron-userland/electron-builder/pull/8057">#8057</a>
<a
href="https://github.com/electron-userland/electron-builder/commit/ccbb80dea4b6146ea2d2186193a1f307096e4d1e"><code>ccbb80de</code></a>
Thanks <a
href="https://github.com/mmaietta"><code>@​mmaietta</code></a>! - chore:
upgrading connected dependencies (typescript requires higher eslint
version)</p>
</li>
<li>
<p>Updated dependencies [<a
href="https://github.com/electron-userland/electron-builder/commit/ccbb80dea4b6146ea2d2186193a1f307096e4d1e"><code>ccbb80de</code></a>]:</p>
<ul>
<li>builder-util-runtime@9.2.4</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/electron-userland/electron-builder/blob/master/packages/electron-updater/CHANGELOG.md">electron-updater's
changelog</a>.</em></p>
<blockquote>
<h2>6.2.1</h2>
<h3>Patch Changes</h3>
<ul>
<li><a
href="https://redirect.github.com/electron-userland/electron-builder/pull/8091">#8091</a>
<a
href="https://github.com/electron-userland/electron-builder/commit/e2a181d9fe3fbdd84690359e275daaef24584729"><code>e2a181d9</code></a>
Thanks <a
href="https://github.com/mmaietta"><code>@​mmaietta</code></a>! -
fix(mac): revert autoupdate for mac differential</li>
</ul>
<h2>6.2.0</h2>
<h3>Minor Changes</h3>
<ul>
<li><a
href="https://redirect.github.com/electron-userland/electron-builder/pull/7709">#7709</a>
<a
href="https://github.com/electron-userland/electron-builder/commit/79df54238621fbe48ba20444129950ba2dc49983"><code>79df5423</code></a>
Thanks <a
href="https://github.com/beyondkmp"><code>@​beyondkmp</code></a>! -
feat: adding differential downloader for updates on macOS</li>
</ul>
<h2>6.1.9</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a
href="https://redirect.github.com/electron-userland/electron-builder/pull/8051">#8051</a>
<a
href="https://github.com/electron-userland/electron-builder/commit/48603ba09dc7103849a2975799c19068fd08fc07"><code>48603ba0</code></a>
Thanks <a
href="https://github.com/mmaietta"><code>@​mmaietta</code></a>! - fix:
auto-update powershell script requires reset of
<code>PSModulePath</code></p>
</li>
<li>
<p><a
href="https://redirect.github.com/electron-userland/electron-builder/pull/8057">#8057</a>
<a
href="https://github.com/electron-userland/electron-builder/commit/ccbb80dea4b6146ea2d2186193a1f307096e4d1e"><code>ccbb80de</code></a>
Thanks <a
href="https://github.com/mmaietta"><code>@​mmaietta</code></a>! - chore:
upgrading connected dependencies (typescript requires higher eslint
version)</p>
</li>
<li>
<p>Updated dependencies [<a
href="https://github.com/electron-userland/electron-builder/commit/ccbb80dea4b6146ea2d2186193a1f307096e4d1e"><code>ccbb80de</code></a>]:</p>
<ul>
<li>builder-util-runtime@9.2.4</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/electron-userland/electron-builder/commit/62d1991a7f1a26476100349733588763500ef16a"><code>62d1991</code></a>
chore(deploy): Release (electron-updater@6.2.1) (<a
href="https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater/issues/8092">#8092</a>)</li>
<li><a
href="https://github.com/electron-userland/electron-builder/commit/e2a181d9fe3fbdd84690359e275daaef24584729"><code>e2a181d</code></a>
fix(mac): revert mac differential autoupdate (<a
href="https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater/issues/8091">#8091</a>)</li>
<li><a
href="https://github.com/electron-userland/electron-builder/commit/cb335ecfef1f4fd1aef94020c1eaf5ce91bef574"><code>cb335ec</code></a>
chore(deploy): Release v24.13.3 (electron-updater@6.2.0) (<a
href="https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater/issues/8084">#8084</a>)</li>
<li><a
href="https://github.com/electron-userland/electron-builder/commit/79df54238621fbe48ba20444129950ba2dc49983"><code>79df542</code></a>
feat: add support for differential zip updates on macOS (<a
href="https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater/issues/7709">#7709</a>)</li>
<li><a
href="https://github.com/electron-userland/electron-builder/commit/89656087d683dbe53240c920a684092b70d638db"><code>8965608</code></a>
chore(deploy): Release v24.13.1 (electron-updater@6.1.9) (<a
href="https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater/issues/8056">#8056</a>)</li>
<li><a
href="https://github.com/electron-userland/electron-builder/commit/ccbb80dea4b6146ea2d2186193a1f307096e4d1e"><code>ccbb80d</code></a>
chore: upgrading connected dependencies (typescript 5.3.3 requires
higher esl...</li>
<li><a
href="https://github.com/electron-userland/electron-builder/commit/48603ba09dc7103849a2975799c19068fd08fc07"><code>48603ba</code></a>
fix: auto-update powershell script requires reset of
<code>PSModulePath</code> (<a
href="https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater/issues/8051">#8051</a>)</li>
<li>See full diff in <a
href="https://github.com/electron-userland/electron-builder/commits/electron-updater@6.2.1/packages/electron-updater">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=electron-updater&package-manager=npm_and_yarn&previous-version=6.1.8&new-version=6.2.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 <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
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>
2024-07-23 12:22:19 -07:00
Ian Jennings d0c0a7fd96 upgrade to 3.6.5 (#726) 2024-07-22 18:10:38 -05:00
Ian Jennings 3d72e97831 WIP: TestDriver: Update to v3 (#690)
**Action Required:**
We've moved to an authenticated system and you must now provide an
authentication key within our script.

1. Create an account or log into https://app.dashcam.io. 
2. Copy the API key from https://app.dashcam.io/team. You must be the
team "owner"
3. Add the API key as `DASHCAM_API_KEY` within GitHub actions by
following the guide
[here](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions).

This PR moves to our v3 system which includes

- Faster and more stable tests. Notice we're using a `yml` file to guide
the test rather than open prompts. This means the AI will follow the
same steps every time.
- Smarter AI. Better text matching, and more commands. We optimized how
the AI matches text and images, making it way faster and more
fault-tolerant.
- Better summaries. The AI will summarize the full test execution as
well as errors
- Assertions. We can now explicitly ask the AI to verify things on
screen
- Embedded tests. We can nest scripts for reusable components.

---------

Co-authored-by: orliesaurus <orliesaurus@users.noreply.github.com>
2024-07-02 14:38:05 -05:00
dependabot[bot] d54a61658f Bump braces from 3.0.2 to 3.0.3 in the npm_and_yarn group across 1 directory (#684)
Bumps the npm_and_yarn group with 1 update in the / directory:
[braces](https://github.com/micromatch/braces).

Updates `braces` from 3.0.2 to 3.0.3
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/micromatch/braces/commit/74b2db2938fad48a2ea54a9c8bf27a37a62c350d"><code>74b2db2</code></a>
3.0.3</li>
<li><a
href="https://github.com/micromatch/braces/commit/88f1429a0f47e1dd3813de35211fc97ffda27f9e"><code>88f1429</code></a>
update eslint. lint, fix unit tests.</li>
<li><a
href="https://github.com/micromatch/braces/commit/415d660c3002d1ab7e63dbf490c9851da80596ff"><code>415d660</code></a>
Snyk js braces 6838727 (<a
href="https://redirect.github.com/micromatch/braces/issues/40">#40</a>)</li>
<li><a
href="https://github.com/micromatch/braces/commit/190510f79db1adf21d92798b0bb6fccc1f72c9d6"><code>190510f</code></a>
fix tests, skip 1 test in test/braces.expand</li>
<li><a
href="https://github.com/micromatch/braces/commit/716eb9f12d820b145a831ad678618731927e8856"><code>716eb9f</code></a>
readme bump</li>
<li><a
href="https://github.com/micromatch/braces/commit/a5851e57f45c3431a94d83fc565754bc10f5bbc3"><code>a5851e5</code></a>
Merge pull request <a
href="https://redirect.github.com/micromatch/braces/issues/37">#37</a>
from coderaiser/fix/vulnerability</li>
<li><a
href="https://github.com/micromatch/braces/commit/2092bd1fb108d2c59bd62e243b70ad98db961538"><code>2092bd1</code></a>
feature: braces: add maxSymbols (<a
href="https://github.com/micromatch/braces/issues/">https://github.com/micromatch/braces/issues/</a>...</li>
<li><a
href="https://github.com/micromatch/braces/commit/9f5b4cf47329351bcb64287223ffb6ecc9a5e6d3"><code>9f5b4cf</code></a>
fix: vulnerability (<a
href="https://security.snyk.io/vuln/SNYK-JS-BRACES-6838727">https://security.snyk.io/vuln/SNYK-JS-BRACES-6838727</a>)</li>
<li><a
href="https://github.com/micromatch/braces/commit/98414f9f1fabe021736e26836d8306d5de747e0d"><code>98414f9</code></a>
remove funding file</li>
<li><a
href="https://github.com/micromatch/braces/commit/665ab5d561c017a38ba7aafd92cc6655b91d8c14"><code>665ab5d</code></a>
update keepEscaping doc (<a
href="https://redirect.github.com/micromatch/braces/issues/27">#27</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/micromatch/braces/compare/3.0.2...3.0.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](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 <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
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>
2024-06-26 21:34:48 -07:00
luckrnx09 e38c5bf16a chore: fix incorrect alt text #682 (#685)
fix #682
new look:

![image](https://github.com/wavetermdev/waveterm/assets/113882203/c51145c0-a34d-4c45-824c-15e205fe74bd)
2024-06-23 12:08:44 -07:00
dependabot[bot] 56f44151df Bump ws from 7.5.9 to 7.5.10 in the npm_and_yarn group across 1 directory (#683)
Bumps the npm_and_yarn group with 1 update in the / directory:
[ws](https://github.com/websockets/ws).

Updates `ws` from 7.5.9 to 7.5.10
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/websockets/ws/releases">ws's
releases</a>.</em></p>
<blockquote>
<h2>7.5.10</h2>
<h1>Bug fixes</h1>
<ul>
<li>Backported e55e5106 to the 7.x release line (22c28763).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/websockets/ws/commit/d962d70649e393841ee1ed726a8f7ffbe90d0c06"><code>d962d70</code></a>
[dist] 7.5.10</li>
<li><a
href="https://github.com/websockets/ws/commit/22c28763234aa75a7e1b76f5c01c181260d7917f"><code>22c2876</code></a>
[security] Fix crash when the Upgrade header cannot be read (<a
href="https://redirect.github.com/websockets/ws/issues/2231">#2231</a>)</li>
<li>See full diff in <a
href="https://github.com/websockets/ws/compare/7.5.9...7.5.10">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ws&package-manager=npm_and_yarn&previous-version=7.5.9&new-version=7.5.10)](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 <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
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>
2024-06-20 19:11:02 -07:00
Mike Sawka 936537a03a put in some code to fix losing focus on the screen name (#679) 2024-06-14 17:24:36 -07:00
Red J Adaya 66310e8bfb fix pre tag bg color in markdown (#678) 2024-06-14 10:00:53 -07:00
Mike Sawka 2361154551 never log ephemeral commands to history (#676) 2024-06-07 17:58:21 -07:00
Red J Adaya 7888a61766 Fix regression where click event in the DOM is no longer being captured (#675) 2024-06-07 17:41:05 -07:00
Evan Simkowitz 29ad232ac6 Don't show ghost text if curLine is empty (#674) 2024-06-07 17:40:50 -07:00
Red J Adaya 067bef0cb5 Remove old aichat and some fixes (#672) 2024-06-06 20:09:57 -07:00
Mike Sawka 97deb2ef14 update ghost text color (#671) 2024-06-06 19:24:06 -07:00
Mike Sawka 69d58ef525 bigger rightsidebar by default. also remove ctrl:space keybinding (#670) 2024-06-06 18:45:28 -07:00
Red J Adaya d7173c970c aichat improvements (#667) 2024-06-06 17:31:52 -07:00
Mike Sawka 1234919229 enable right sidebar (#663) 2024-05-28 22:44:57 -07:00
Mike Sawka 652250ac3c bump electron to 30.0.8 (#662) 2024-05-28 21:01:18 -07:00
Mike Sawka 11b110d633 bump version to 0.7.6 (#661) 2024-05-28 20:55:40 -07:00
Red J Adaya 14b38b31c8 AI Chat Sidebar (#657) 2024-05-28 20:53:16 -07:00
SG Prakash 1ace947d1e added hide/show MenuBar feature (#660)
**Description:**
I recently installed waveterm and I just love it. I like to use my
terminal without titlebar, So I removed the titlebar of waveterm in my
ubuntu desktop but the menu bar is showing constantly. So I look into
the code and made the changes. This pull request adds a simple feature
which will hide/show the menubar using `ALT` key.

**Changes Made:**
1. When initializing electron's BrowserWindow, I added a parameter
`autoHideMenuBar: true`.

**Testing Done:**
Tested the feature by pressing `ALT` Key. It works perfectly.
2024-05-28 20:48:28 -07:00
Evan Simkowitz 13f4203437 Autocomplete using the Newton parser (#599)
I've reworked the autocomplete parser to more closely match Newton, the
Fig-compatible parser I prototyped earlier this year. I was able to move
a lot faster by reusing patterns that inshellisense proved out, such as
for templates and generators.

I also support some features that inshellisense doesn't, like proper
combining of Posix-compatible flags, handling of option argument
separators, and handling of cursors in insertValues.
2024-05-28 17:17:29 -07:00
orliesaurus cd15beba26 fix: yml formatting issues (#656)
looks like there were some issues to the yml format before that caused
the workflow to not run.
2024-05-21 16:02:30 -07:00
Mike Sawka aac9e27382 upgrade electron version (#658) 2024-05-16 12:48:37 -07:00
Ian Jennings d07068c09d TestDriver v2.12.12 (#655) 2024-05-08 11:10:17 -07:00
75 changed files with 20818 additions and 1640 deletions
+16
View File
@@ -0,0 +1,16 @@
{
"name": "Wave Terminal Dev Container",
"dockerComposeFile": "../docker-compose.yml",
"service": "wave",
"workspaceFolder": "/app/waveterm",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.shell.linux": "/bin/bash",
"extensions": ["golang.go", "dbaeumer.vscode-eslint", "esbenp.prettier-vscode"]
}
}
},
"runServices": ["dbus"],
"postAttachCommand": "scripthaus run webpack-watch"
}
+21
View File
@@ -0,0 +1,21 @@
# Ignore node_modules and other dependencies
node_modules
.yarn
# Ignore build directories
build
dist
# Ignore logs and temporary files
logs
*.log
*.tmp
# Ignore test and coverage files
coverage
test-results
# Ignore OS-specific files
.DS_Store
Thumbs.db
+7
View File
@@ -16,6 +16,10 @@ jobs:
arch: "amd64"
runner: "ubuntu-latest"
scripthaus: "build-package-linux"
- platform: "linux"
arch: "arm64"
runner: ubuntu-24.04-arm64-16core
scripthaus: "build-package-linux"
runs-on: ${{ matrix.runner }}
steps:
- uses: actions/checkout@v4
@@ -28,6 +32,8 @@ jobs:
run: |
sudo apt-get update
sudo apt-get install --no-install-recommends -y libarchive-tools libopenjp2-tools rpm
- name: Install FPM # The version of FPM that comes bundled with electron-builder doesn't include a Linux ARM target. Installing Gems onto the runner is super quick so we'll just do this for all targets.
run: sudo gem install fpm
- uses: actions/setup-go@v5
with:
go-version: ${{env.GO_VERSION}}
@@ -58,6 +64,7 @@ jobs:
run: scripthaus run ${{ matrix.scripthaus }}
env:
GOARCH: ${{ matrix.arch }}
USE_SYSTEM_FPM: true # Ensure that the installed version of FPM is used rather than the bundled one.
CSC_LINK: ${{ matrix.platform == 'darwin' && secrets.PROD_MACOS_CERTIFICATE}}
CSC_KEY_PASSWORD: ${{ matrix.platform == 'darwin' && secrets.PROD_MACOS_CERTIFICATE_PWD }}
APPLE_ID: ${{ matrix.platform == 'darwin' && secrets.PROD_MACOS_NOTARIZATION_APPLE_ID }}
+34 -50
View File
@@ -1,4 +1,4 @@
name: TestDriver.ai Regression Testing
name: TestDriver.ai Regression Testing - Waveterm
on:
push:
branches:
@@ -14,53 +14,37 @@ permissions:
contents: read # To allow the action to read repository contents
pull-requests: write # To allow the action to create/update pull request comments
jobs:
test:
name: TestDriver
runs-on: ubuntu-latest
steps:
- uses: dashcamio/testdriver@main
id: testdriver
with:
version: v2.12.5
prerun: |
rm ~/Desktop/WITH-LOVE-FROM-AMERICA.txt
cd ~/actions-runner/_work/testdriver/testdriver/
brew install go
brew tap scripthaus-dev/scripthaus
brew install corepack
brew install scripthaus
corepack enable
yarn install
scripthaus run build-backend
echo "Yarn"
yarn
echo "Rebuild"
scripthaus run electron-rebuild
echo "Webpack"
scripthaus run webpack-build
echo "Starting Electron"
scripthaus run electron 1>/dev/null 2>&1 &
echo "Electron Done"
exit
prompt: |
1. wait 10 seconds
1. click "Get Started"
1. validate that overlapping text does not appear in the application
1. focus the Wave input with the keyboard shorcut Command + I
1. type 'ls' into the input
1. press return
1. validate Wave shows the result of 'ls'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- uses: peter-evans/create-or-update-comment@v4
if: ${{always()}}
with:
issue-number: ${{ github.event.pull_request.number }}
body: |
## TestDriver Summary
${{ steps.testdriver.outputs.markdown }}
${{ steps.testdriver.outputs.summary }}
reactions: |
+1
-1
test:
name: "TestDriver"
runs-on: ubuntu-latest
steps:
- uses: dashcamio/testdriver@main
id: testdriver
with:
version: v3.6.5
key: ${{secrets.DASHCAM_API}}
prerun: |
cd ~/actions-runner/_work/testdriver/testdriver/
brew install go
brew tap scripthaus-dev/scripthaus
brew install corepack
brew install scripthaus
corepack enable
yarn install
scripthaus run build-backend
echo "Yarn"
yarn
echo "Rebuild"
scripthaus run electron-rebuild
echo "Webpack"
scripthaus run webpack-build
echo "Starting Electron"
scripthaus run electron 1>/dev/null 2>&1 &
echo "Electron Done"
cd /Users/ec2-user/Downloads/td/
npm rebuild
exit
prompt: |
1. /run /Users/ec2-user/actions-runner/_work/testdriver/testdriver/.testdriver/wave1.yml
-18
View File
@@ -1,18 +0,0 @@
rm ~/Desktop/WITH-LOVE-FROM-AMERICA.txt
cd ~/actions-runner/_work/testdriver/testdriver/
brew install go
brew tap scripthaus-dev/scripthaus
brew install scripthaus
corepack enable
yarn install
scripthaus run build-backend
echo "Yarn"
yarn
echo "Rebuild"
scripthaus run electron-rebuild
echo "Webpack"
scripthaus run webpack-build
echo "Starting Electron"
scripthaus run electron 1>/dev/null 2>&1 &
echo "Electron Done"
exit
+29
View File
@@ -0,0 +1,29 @@
steps:
- step:
- command: focus-application
name: Electron
- command: hover-text
text: Get Started
action: click
- command: hover-text
text: Settings
action: click
- command: hover-text
text: 13px
action: click
- command: hover-text
text: 12px
action: click
- command: hover-text
text: Dark
action: click
- command: hover-text
text: Light
action: click
- command: hover-text
text: workspace-1
action: click
- step:
- command: assert
expect: the terminal is white
+25
View File
@@ -0,0 +1,25 @@
FROM ubuntu:latest
WORKDIR /app
RUN apt update && \
apt install -y golang-go nodejs npm libgtk2.0-0t64 libgtk-3-0t64 libgbm-dev libnotify-dev libnss3 libxss1 libasound2t64 libxtst6 xauth xvfb && \
npm install -g corepack
RUN corepack enable && \
yarn install
RUN git clone https://github.com/scripthaus-dev/scripthaus.git
WORKDIR /app/scripthaus
RUN CGO_ENABLED=1 go build -o scripthaus cmd/main.go && \
cp scripthaus /usr/local/bin
WORKDIR /app
RUN mkdir waveterm
WORKDIR /app/waveterm
COPY . .
ENV GOFLAGS="-buildvcs=false"
ENV DISPLAY=":0"
RUN useradd -ms /bin/bash wave
+4 -4
View File
@@ -285,10 +285,6 @@
"keys": ["Ctrl:r"],
"commandStr": ["/history"]
},
{
"command": "cmdinput:openAIChat",
"keys": ["Ctrl:Space"]
},
{
"command": "history:closeHistory",
"keys": ["Ctrl:g", "Ctrl:c"]
@@ -332,5 +328,9 @@
{
"command": "codeedit:togglePreview",
"keys": ["Cmd:p"]
},
{
"command": "rightsidebar:toggle",
"keys": ["Cmd:Shift:Space"]
}
]
+13 -10
View File
@@ -34,20 +34,23 @@ You'll now have to move the built `scripthaus` binary to a directory in your pat
sudo cp scripthaus /usr/local/bin
```
## Install nodejs, npm, and yarn
## Install nodejs and yarn
We use [nvm](https://github.com/nvm-sh/nvm) to install nodejs on Linux (you can use an alternate installer if you wish). You must have a relatively recent version of node in order to build the terminal. Different distributions and shells will require different setup instructions. These instructions work for Ubuntu 22 using bash (will install node v20.8.1):
You also need a relatively modern nodejs with npm and yarn installed.
```
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
source ~/.bashrc
nvm install v20.8.1
```
Node can be installed from [https://nodejs.org](https://nodejs.org).
Now we can install yarn:
We use Yarn Modern to manage our packages. The recommended way to install Yarn Modern is using Corepack, a new utility shipped by NodeJS that lets you manage your package manager versioning as you would any packages.
```
npm install -g yarn
If you installed NodeJS from the official feed (via the website or using NVM), this should come preinstalled. If you use Homebrew or some other feed, you may need to manually install Corepack using `npm install -g corepack`.
For more information on Corepack, check out [this link](https://yarnpkg.com/corepack).
Once you've verified that you have Corepack installed, run the following script to set up Yarn for the repository:
```sh
corepack enable
yarn install
```
## Clone the Wave Repo
+18
View File
@@ -0,0 +1,18 @@
version: '3.8'
services:
wave:
build:
context: .
dockerfile: Dockerfile
container_name: waveterminal
environment:
- DISPLAY=${DISPLAY}
- NODE_ENV=development
volumes:
- /tmp/.X11-unix:/tmp/.X11-unix
- .:/app/waveterm
stdin_open: true
tty: true
ports:
- "3000:3000"
+14710
View File
File diff suppressed because it is too large Load Diff
+54 -50
View File
@@ -6,7 +6,7 @@
},
"productName": "Wave",
"description": "An Open-Source, AI-Native, Terminal Built for Seamless Workflows",
"version": "0.7.5",
"version": "0.7.6",
"main": "dist/emain.js",
"license": "Apache-2.0",
"repository": {
@@ -18,91 +18,95 @@
"appId": "dev.commandline.waveterm"
},
"dependencies": {
"@lexical/react": "^0.14.3",
"@monaco-editor/react": "^4.5.1",
"@lexical/react": "^0.17.0",
"@monaco-editor/react": "^4.6.0",
"@table-nav/core": "^0.0.7",
"@table-nav/react": "^0.0.7",
"@tanstack/match-sorter-utils": "^8.8.4",
"@tanstack/react-table": "^8.10.3",
"@tanstack/match-sorter-utils": "^8.19.4",
"@tanstack/react-table": "^8.20.1",
"@withfig/autocomplete": "^2.672.0",
"autobind-decorator": "^2.4.0",
"base64-js": "^1.5.1",
"clsx": "^2.1.1",
"dayjs": "^1.11.3",
"dompurify": "^3.0.2",
"electron-squirrel-startup": "^1.0.0",
"electron-updater": "^6.1.8",
"framer-motion": "^10.16.16",
"dayjs": "^1.11.12",
"dompurify": "^3.1.6",
"electron-squirrel-startup": "^1.0.1",
"electron-updater": "^6.3.2",
"framer-motion": "^10.18.0",
"lexical": "0.14.5",
"mobx": "6.12",
"mobx-react": "^7.5.0",
"mobx": "6.12.5",
"mobx-react": "^7.6.0",
"monaco-editor": "0.48.0",
"mustache": "^4.2.0",
"node-fetch": "^3.2.10",
"overlayscrollbars": "^2.6.1",
"overlayscrollbars-react": "^0.5.5",
"node-fetch": "^3.3.2",
"overlayscrollbars": "^2.10.0",
"overlayscrollbars-react": "^0.5.6",
"papaparse": "^5.4.1",
"react": "^18.1.0",
"react-dom": "^18.1.0",
"react-markdown": "^9.0.0",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-markdown": "^9.0.1",
"remark": "^15.0.1",
"remark-gfm": "^4.0.0",
"sprintf-js": "^1.1.2",
"throttle-debounce": "^5.0.0",
"sprintf-js": "^1.1.3",
"throttle-debounce": "^5.0.2",
"tinycolor2": "^1.6.0",
"tsx-control-statements": "^5.1.1",
"uuid": "^9.0.0",
"winston": "^3.8.2",
"uuid": "^9.0.1",
"winston": "^3.13.1",
"xterm": "^5.3.0",
"xterm-addon-serialize": "^0.11.0",
"xterm-addon-web-links": "^0.9.0",
"xterm-addon-webgl": "^0.16.0"
},
"devDependencies": {
"@babel/cli": "^7.17.10",
"@babel/core": "^7.18.2",
"@babel/cli": "^7.24.8",
"@babel/core": "^7.25.2",
"@babel/plugin-proposal-class-properties": "^7.18.6",
"@babel/plugin-proposal-decorators": "^7.18.2",
"@babel/plugin-proposal-decorators": "^7.24.7",
"@babel/plugin-proposal-private-methods": "^7.18.6",
"@babel/plugin-proposal-private-property-in-object": "^7.21.11",
"@babel/plugin-transform-react-jsx": "^7.17.12",
"@babel/plugin-transform-runtime": "^7.23.4",
"@babel/preset-env": "^7.18.2",
"@babel/preset-react": "^7.23.3",
"@babel/preset-typescript": "^7.17.12",
"@babel/plugin-transform-react-jsx": "^7.25.2",
"@babel/plugin-transform-runtime": "^7.24.7",
"@babel/preset-env": "^7.25.3",
"@babel/preset-react": "^7.24.7",
"@babel/preset-typescript": "^7.24.7",
"@electron/rebuild": "^3.6.0",
"@svgr/webpack": "^8.1.0",
"@types/electron": "^1.6.10",
"@types/node": "^20.11.0",
"@types/papaparse": "^5.3.10",
"@types/react": "^18.0.12",
"@types/semver": "^7.5.6",
"@types/sprintf-js": "^1.1.3",
"@types/throttle-debounce": "^5.0.1",
"@types/uuid": "^9.0.7",
"@types/webpack-env": "^1.18.3",
"@types/node": "^22.1.0",
"@types/papaparse": "^5.3.14",
"@types/react": "^18.3.3",
"@types/semver": "^7.5.8",
"@types/sprintf-js": "^1.1.4",
"@types/throttle-debounce": "^5.0.2",
"@types/tinycolor2": "^1.4.6",
"@types/uuid": "^9.0.8",
"@types/webpack-env": "^1.18.5",
"@withfig/autocomplete-types": "^1.31.0",
"babel-loader": "^9.1.3",
"babel-plugin-jsx-control-statements": "^4.1.2",
"copy-webpack-plugin": "^12.0.0",
"css-loader": "^7.1.0",
"electron": "^30.0.1",
"copy-webpack-plugin": "^12.0.2",
"css-loader": "^7.1.2",
"electron": "^31.3.1",
"electron-builder": "^24.13.3",
"electron-builder-squirrel-windows": "^24.13.3",
"electron-builder-squirrel-windows": "25.0.0-alpha.10",
"file-loader": "^6.2.0",
"http-server": "^14.1.1",
"less": "^4.1.2",
"less-loader": "^12.0.0",
"less": "^4.2.0",
"less-loader": "^12.2.0",
"lodash-webpack-plugin": "^0.11.6",
"mini-css-extract-plugin": "^2.6.0",
"mini-css-extract-plugin": "^2.9.0",
"prettier": "^2.8.8",
"raw-loader": "^4.0.2",
"react-split-it": "^2.0.0",
"style-loader": "4.0.0",
"typescript": "^5.0.0",
"webpack": "^5.73.0",
"webpack-bundle-analyzer": "^4.10.1",
"typescript": "^5.5.4",
"webpack": "^5.93.0",
"webpack-bundle-analyzer": "^4.10.2",
"webpack-cli": "^5.1.4",
"webpack-dev-server": "^5.0.4",
"webpack-merge": "^5.8.0",
"yaml": "^2.4.0"
"webpack-merge": "^5.10.0",
"yaml": "^2.5.0"
},
"scripts": {
"postinstall": "electron-builder install-app-deps"
+1
View File
@@ -170,6 +170,7 @@
--cmdinput-button-bg-color: var(--tab-green);
--cmdinput-disabled-bg-color: var(--app-text-bg-disabled-color);
--cmdinput-history-bg-color: var(--app-bg-color);
--cmdinput-ghost-text-color: rgb(145, 150, 144);
/* screen view color */
--screen-view-text-caption-color: rgb(139, 145, 138);
+1
View File
@@ -50,6 +50,7 @@
--modal-header-bottom-border-color: rgba(0, 0, 0, 0.3);
/* cmd input */
--cmdinput-ghost-text-color: rgb(116, 116, 116);
/* scroll colors */
--scrollbar-background-color: var(--app-bg-color);
+16 -9
View File
@@ -31,12 +31,20 @@ class App extends React.Component<{}, {}> {
dcWait: OV<boolean> = mobx.observable.box(false, { name: "dcWait" });
mainContentRef: React.RefObject<HTMLDivElement> = React.createRef();
termThemesLoaded: OV<boolean> = mobx.observable.box(false, { name: "termThemesLoaded" });
chatFocusTimeoutId: NodeJS.Timeout = null;
constructor(props: {}) {
super(props);
if (GlobalModel.isDev) document.body.classList.add("is-dev");
}
componentWillUnmount() {
if (this.chatFocusTimeoutId) {
clearTimeout(this.chatFocusTimeoutId);
this.chatFocusTimeoutId = null;
}
}
@boundMethod
handleContextMenu(e: any) {
let isInNonTermInput = false;
@@ -68,16 +76,15 @@ class App extends React.Component<{}, {}> {
@boundMethod
openMainSidebar() {
const mainSidebarModel = GlobalModel.mainSidebarModel;
const width = mainSidebarModel.getWidth(true);
mainSidebarModel.saveState(width, false);
GlobalModel.mainSidebarModel.setCollapsed(false);
}
@boundMethod
openRightSidebar() {
const rightSidebarModel = GlobalModel.rightSidebarModel;
const width = rightSidebarModel.getWidth(true);
rightSidebarModel.saveState(width, false);
GlobalModel.rightSidebarModel.setCollapsed(false);
this.chatFocusTimeoutId = setTimeout(() => {
GlobalModel.inputModel.setChatSidebarFocus();
}, 100);
}
@boundMethod
@@ -159,13 +166,13 @@ class App extends React.Component<{}, {}> {
</div>
</div>
</If>
<If condition={GlobalModel.isDev && rightSidebarCollapsed && activeMainView == "session"}>
<div className="right-sidebar-triggers">
<If condition={rightSidebarCollapsed && activeMainView == "session"}>
<div className="right-sidebar-triggers" title="Open Wave AI (Cmd-Shift-Space)">
<Button
className="secondary ghost right-sidebar-trigger"
onClick={this.openRightSidebar}
>
<i className="fa-sharp fa-solid fa-sidebar-flip"></i>
<i className="fa-sharp fa-regular fa-sparkles"></i>
</Button>
</div>
</If>
+1
View File
@@ -72,3 +72,4 @@ export const ErrorCode_InvalidCwd = "ERRCWD";
export const InputAuxView_History = "history";
export const InputAuxView_Info = "info";
export const InputAuxView_AIChat = "aichat";
export const InputAuxView_Suggestions = "suggestions";
+33 -2
View File
@@ -11,10 +11,10 @@ import { Toggle, InlineSettingsTextEdit, SettingsError, Dropdown } from "@/commo
import { commandRtnHandler, isBlank } from "@/util/util";
import { getTermThemes } from "@/util/themeutil";
import * as appconst from "@/app/appconst";
import { MainView } from "@/common/elements/mainview";
import { OverlayScrollbarsComponent } from "overlayscrollbars-react";
import "./clientsettings.less";
import { MainView } from "../common/elements/mainview";
import { OverlayScrollbarsComponent } from "overlayscrollbars-react";
class ClientSettingsKeybindings extends React.Component<{}, {}> {
componentDidMount() {
@@ -110,6 +110,19 @@ class ClientSettingsView extends React.Component<{ model: RemotesModel }, { hove
GlobalModel.getElectronApi().changeAutoUpdate(val);
}
@boundMethod
handleChangeAutocompleteEnabled(val: boolean): void {
const prtn: Promise<CommandRtnType> = GlobalCommandRunner.setAutocompleteEnabled(val);
commandRtnHandler(prtn, this.errorMessage);
}
@boundMethod
handleChangeAutocompleteDebuggingEnabled(val: boolean): void {
mobx.action(() => {
GlobalModel.autocompleteModel.loggingEnabled = val;
})();
}
getFontSizes(): DropdownItem[] {
const availableFontSizes: DropdownItem[] = [];
for (let s = appconst.MinFontSize; s <= appconst.MaxFontSize; s++) {
@@ -447,6 +460,24 @@ class ClientSettingsView extends React.Component<{ model: RemotesModel }, { hove
/>
</div>
</div>
<div className="settings-field">
<div className="settings-label">Command Autocomplete</div>
<div className="settings-input">
<Toggle
checked={cdata.clientopts.autocompleteenabled ?? false}
onChange={this.handleChangeAutocompleteEnabled}
/>
</div>
</div>
<div className="settings-field">
<div className="settings-label">Command Autocomplete Debugging</div>
<div className="settings-input">
<Toggle
checked={GlobalModel.autocompleteModel.loggingEnabled}
onChange={this.handleChangeAutocompleteDebuggingEnabled}
/>
</div>
</div>
<SettingsError errorMessage={this.errorMessage} />
</div>
</MainView>
+8 -2
View File
@@ -3,11 +3,13 @@ import { Button } from "./button";
import { boundMethod } from "autobind-decorator";
import * as mobxReact from "mobx-react";
import * as mobx from "mobx";
import { clsx } from "clsx";
import "./copybutton.less";
type CopyButtonProps = {
title: string;
className?: string;
onClick: (e: React.MouseEvent<HTMLButtonElement>) => void;
};
@@ -34,10 +36,14 @@ class CopyButton extends React.Component<CopyButtonProps, {}> {
}
render() {
const { title, onClick } = this.props;
const { title, className } = this.props;
const isCopied = this.isCopied.get();
return (
<Button onClick={this.handleOnClick} className="copy-button secondary ghost" title={title}>
<Button
onClick={this.handleOnClick}
className={clsx("copy-button secondary ghost", className)}
title={title}
>
{isCopied ? (
<i className="fa-sharp fa-solid fa-check"></i>
) : (
+1
View File
@@ -19,3 +19,4 @@ export { TabIcon } from "./tabicon";
export { DatePicker } from "./datepicker";
export { TermStyleList } from "./termstyle";
export { CopyButton } from "./copybutton";
export { TypingIndicator } from "./typingindicator";
+54 -11
View File
@@ -48,28 +48,67 @@
pre {
background-color: var(--markdown-bg-color);
margin: 4px 10px 4px 10px;
padding: 0.7em;
margin: 4px 10px;
padding: 0.4em 0.7em;
border-radius: 4px;
position: relative;
code {
background-color: transparent;
padding: 0;
line-height: normal;
line-height: 1.5;
white-space: pre-wrap;
word-wrap: break-word;
overflow: auto;
overflow: hidden;
}
}
pre.selected {
outline: 2px solid var(--markdown-outline-color);
.codeblock-actions {
display: none;
position: absolute;
top: 4px;
right: 4px;
border-radius: 4px;
align-items: center;
justify-content: flex-end;
padding-left: 4px;
padding-right: 4px;
background-color: var(--line-actions-bg-color);
backdrop-filter: blur(8px);
i {
color: var(--line-actions-inactive-color);
&:first-child {
margin-right: 4px;
}
&:hover {
color: var(--line-actions-active-color);
}
&.fa-check {
color: var(--app-success-color);
}
&.fa-square-terminal {
cursor: pointer;
}
}
}
&:hover .codeblock-actions {
display: flex;
}
}
code {
color: var(--app-text-color);
background-color: var(--markdown-bg-color);
font-family: var(--termfontfamily);
border-radius: 4px;
background-color: var(--markdown-bg-color);
padding: 0.15em 0.5em;
line-height: 1.5;
}
pre.selected {
outline: 2px solid var(--markdown-outline-color);
}
.title {
@@ -101,6 +140,10 @@
}
}
.markdown.content {
line-height: 1.5;
}
.markdown > *:first-child {
margin-top: 0 !important;
}

Some files were not shown because too many files have changed in this diff Show More