Skip to content

Commit a4ad5a9

Browse files
committed
Merge remote-tracking branch 'upstream/dev' into dev
2 parents e568a27 + 92c0058 commit a4ad5a9

61 files changed

Lines changed: 5643 additions & 303 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

packages/app/src/components/dialog-select-server.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -504,7 +504,7 @@ export function DialogSelectServer() {
504504

505505
return (
506506
<Dialog title={formTitle()}>
507-
<div class="flex flex-col gap-2">
507+
<div class="flex flex-1 min-h-0 flex-col gap-2">
508508
<Show
509509
when={!isFormMode()}
510510
fallback={
@@ -539,7 +539,7 @@ export function DialogSelectServer() {
539539
if (x) void select(x)
540540
}}
541541
divider={true}
542-
class="px-5 [&_[data-slot=list-search-wrapper]]:w-full [&_[data-slot=list-scroll]]h-[300px] [&_[data-slot=list-scroll]]:overflow-y-auto [&_[data-slot=list-items]]:bg-surface-base [&_[data-slot=list-items]]:rounded-md [&_[data-slot=list-item]]:min-h-14 [&_[data-slot=list-item]]:p-3 [&_[data-slot=list-item]]:!bg-transparent"
542+
class="flex-1 min-h-0 px-5 [&_[data-slot=list-search-wrapper]]:w-full [&_[data-slot=list-scroll]]:flex-1 [&_[data-slot=list-scroll]]:overflow-y-auto [&_[data-slot=list-items]]:bg-surface-base [&_[data-slot=list-items]]:rounded-md [&_[data-slot=list-item]]:min-h-14 [&_[data-slot=list-item]]:p-3 [&_[data-slot=list-item]]:!bg-transparent"
543543
>
544544
{(i) => {
545545
const key = ServerConnection.key(i)
@@ -619,7 +619,7 @@ export function DialogSelectServer() {
619619
</List>
620620
</Show>
621621

622-
<div class="px-5 pb-5">
622+
<div class="shrink-0 px-5 pb-5">
623623
<Show
624624
when={isFormMode()}
625625
fallback={

packages/app/src/context/global-sync.tsx

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import type {
1010
import { showToast } from "@opencode-ai/ui/toast"
1111
import { getFilename } from "@opencode-ai/shared/util/path"
1212
import { batch, createContext, getOwner, onCleanup, onMount, type ParentProps, untrack, useContext } from "solid-js"
13-
import { createStore, produce, reconcile } from "solid-js/store"
13+
import { createStore, produce, reconcile, unwrap } from "solid-js/store"
1414
import { useLanguage } from "@/context/language"
1515
import { Persist, persisted } from "@/utils/persist"
1616
import type { InitError } from "../pages/error"
@@ -95,13 +95,8 @@ function createGlobalSync() {
9595
)
9696
}
9797

98-
const setProjects = (next: Project[] | ((draft: Project[]) => void)) => {
98+
const setProjects = (next: Project[] | ((draft: Project[]) => Project[])) => {
9999
projectWritten = true
100-
if (typeof next === "function") {
101-
setGlobalStore("project", produce(next))
102-
cacheProjects()
103-
return
104-
}
105100
setGlobalStore("project", next)
106101
cacheProjects()
107102
}
@@ -116,7 +111,7 @@ function createGlobalSync() {
116111

117112
const set = ((...input: unknown[]) => {
118113
if (input[0] === "project" && (Array.isArray(input[1]) || typeof input[1] === "function")) {
119-
setProjects(input[1] as Project[] | ((draft: Project[]) => void))
114+
setProjects(input[1] as Project[] | ((draft: Project[]) => Project[]))
120115
return input[1]
121116
}
122117
return (setGlobalStore as (...args: unknown[]) => unknown)(...input)

packages/app/src/context/global-sync/event-reducer.ts

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ const SKIP_PARTS = new Set(["patch", "step-start", "step-finish"])
2121
export function applyGlobalEvent(input: {
2222
event: { type: string; properties?: unknown }
2323
project: Project[]
24-
setGlobalProject: (next: Project[] | ((draft: Project[]) => void)) => void
24+
setGlobalProject: (next: Project[] | ((draft: Project[]) => Project[])) => void
2525
refresh: () => void
2626
}) {
2727
if (input.event.type === "global.disposed" || input.event.type === "server.connected") {
@@ -33,14 +33,18 @@ export function applyGlobalEvent(input: {
3333
const properties = input.event.properties as Project
3434
const result = Binary.search(input.project, properties.id, (s) => s.id)
3535
if (result.found) {
36-
input.setGlobalProject((draft) => {
37-
draft[result.index] = { ...draft[result.index], ...properties }
38-
})
36+
input.setGlobalProject(
37+
produce((draft) => {
38+
draft[result.index] = { ...draft[result.index], ...properties }
39+
}),
40+
)
3941
return
4042
}
41-
input.setGlobalProject((draft) => {
42-
draft.splice(result.index, 0, properties)
43-
})
43+
input.setGlobalProject(
44+
produce((draft) => {
45+
draft.splice(result.index, 0, properties)
46+
}),
47+
)
4448
}
4549

4650
function cleanupSessionCaches(

packages/console/app/src/i18n/ar.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -261,6 +261,8 @@ export const dict = {
261261
"go.cta.promo": "$5 للشهر الأول",
262262
"go.pricing.body":
263263
"استخدمه مع أي وكيل. $5 للشهر الأول، ثم $10/شهر. قم بزيادة الرصيد إذا لزم الأمر. الإلغاء في أي وقت.",
264+
"go.banner.badge": "3x",
265+
"go.banner.text": "Kimi K2.6: حد الاستخدام 3 أضعاف حتى 27 أبريل",
264266
"go.graph.free": "مجاني",
265267
"go.graph.freePill": "Big Pickle ونماذج مجانية",
266268
"go.graph.go": "Go",

packages/console/app/src/i18n/br.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,8 @@ export const dict = {
265265
"go.cta.promo": "$5 no primeiro mês",
266266
"go.pricing.body":
267267
"Use com qualquer agente. $5 no primeiro mês, depois $10/mês. Recarregue o crédito se necessário. Cancele a qualquer momento.",
268+
"go.banner.badge": "3x",
269+
"go.banner.text": "Kimi K2.6: limite de uso 3x maior até 27 de abril",
268270
"go.graph.free": "Grátis",
269271
"go.graph.freePill": "Big Pickle e modelos gratuitos",
270272
"go.graph.go": "Go",

packages/console/app/src/i18n/da.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,8 @@ export const dict = {
263263
"go.cta.promo": "$5 første måned",
264264
"go.pricing.body":
265265
"Brug med enhver agent. $5 første måned, derefter $10/måned. Tank op med kredit efter behov. Afmeld når som helst.",
266+
"go.banner.badge": "3x",
267+
"go.banner.text": "Kimi K2.6: brugsgrænsen tredoblet til 27. april",
266268
"go.graph.free": "Gratis",
267269
"go.graph.freePill": "Big Pickle og gratis modeller",
268270
"go.graph.go": "Go",

packages/console/app/src/i18n/de.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,8 @@ export const dict = {
265265
"go.cta.promo": "$5 im ersten Monat",
266266
"go.pricing.body":
267267
"Mit jedem Agenten nutzbar. $5 im ersten Monat, danach $10/Monat. Guthaben bei Bedarf aufladen. Jederzeit kündbar.",
268+
"go.banner.badge": "3x",
269+
"go.banner.text": "Kimi K2.6: Nutzungslimit bis zum 27. April verdreifacht",
268270
"go.graph.free": "Kostenlos",
269271
"go.graph.freePill": "Big Pickle und kostenlose Modelle",
270272
"go.graph.go": "Go",

packages/console/app/src/i18n/en.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -249,6 +249,8 @@ export const dict = {
249249
"go.title": "OpenCode Go | Low cost coding models for everyone",
250250
"go.meta.description":
251251
"Go starts at $5 for your first month, then $10/month, with generous 5-hour request limits for GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2-Pro, MiMo-V2-Omni, Qwen3.5 Plus, Qwen3.6 Plus, MiniMax M2.5, and MiniMax M2.7.",
252+
"go.banner.badge": "3x",
253+
"go.banner.text": "Kimi K2.6 gets 3× usage limits through April 27",
252254
"go.hero.title": "Low cost coding models for everyone",
253255
"go.hero.body":
254256
"Go brings agentic coding to programmers around the world. Offering generous limits and reliable access to the most capable open-source models, so you can build with powerful agents without worrying about cost or availability.",

packages/console/app/src/i18n/es.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -266,6 +266,8 @@ export const dict = {
266266
"go.cta.promo": "$5 el primer mes",
267267
"go.pricing.body":
268268
"Úsalo con cualquier agente. $5 el primer mes, luego 10 $/mes. Recarga crédito si es necesario. Cancela en cualquier momento.",
269+
"go.banner.badge": "3x",
270+
"go.banner.text": "Kimi K2.6: límite de uso triplicado hasta el 27 de abril",
269271
"go.graph.free": "Gratis",
270272
"go.graph.freePill": "Big Pickle y modelos gratuitos",
271273
"go.graph.go": "Go",

packages/console/app/src/i18n/fr.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -267,6 +267,8 @@ export const dict = {
267267
"go.cta.promo": "$5 le premier mois",
268268
"go.pricing.body":
269269
"Utilisez-le avec n'importe quel agent. $5 le premier mois, puis 10 $/mois. Rechargez du crédit si nécessaire. Annulez à tout moment.",
270+
"go.banner.badge": "3x",
271+
"go.banner.text": "Kimi K2.6 : limites d’utilisation triplées jusqu’au 27 avril",
270272
"go.graph.free": "Gratuit",
271273
"go.graph.freePill": "Big Pickle et modèles gratuits",
272274
"go.graph.go": "Go",

0 commit comments

Comments
 (0)