ikanban-web 0.2.0 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/dist/assets/{ghostty-web-BkTBr6Qp.js → ghostty-web-DC9h7yp6.js} +1 -1
  2. package/dist/assets/{home-CbMdbws_.js → home-B2bEEt-Q.js} +1 -1
  3. package/dist/assets/{index-DvCClLZk.js → index-BM0fG0_S.js} +1 -1
  4. package/dist/assets/{session-mSsgwdFK.js → session-CFBQK6ra.js} +3 -3
  5. package/dist/index.html +1 -1
  6. package/package.json +3 -3
  7. package/src/app.tsx +7 -7
  8. package/src/components/dialog-connect-provider.tsx +10 -10
  9. package/src/components/dialog-custom-provider.tsx +7 -7
  10. package/src/components/dialog-edit-project.tsx +7 -7
  11. package/src/components/dialog-fork.tsx +5 -5
  12. package/src/components/dialog-manage-models.tsx +6 -6
  13. package/src/components/dialog-release-notes.tsx +3 -3
  14. package/src/components/dialog-select-directory.tsx +6 -6
  15. package/src/components/dialog-select-file.tsx +8 -8
  16. package/src/components/dialog-select-mcp.tsx +3 -3
  17. package/src/components/dialog-select-model-unpaid.tsx +7 -7
  18. package/src/components/dialog-select-model.tsx +7 -7
  19. package/src/components/dialog-select-provider.tsx +5 -5
  20. package/src/components/dialog-select-server.tsx +9 -9
  21. package/src/components/dialog-settings.tsx +3 -3
  22. package/src/components/file-tree.test.ts +4 -4
  23. package/src/components/file-tree.tsx +3 -3
  24. package/src/components/prompt-input/attachments.ts +1 -1
  25. package/src/components/prompt-input/build-request-parts.ts +1 -1
  26. package/src/components/prompt-input/context-items.tsx +4 -4
  27. package/src/components/prompt-input/drag-overlay.tsx +1 -1
  28. package/src/components/prompt-input/image-attachments.tsx +1 -1
  29. package/src/components/prompt-input/slash-popover.tsx +3 -3
  30. package/src/components/prompt-input/submit.test.ts +2 -2
  31. package/src/components/prompt-input/submit.ts +2 -2
  32. package/src/components/prompt-input.tsx +12 -12
  33. package/src/components/server/server-row.tsx +1 -1
  34. package/src/components/session/session-context-tab.tsx +8 -8
  35. package/src/components/session/session-header.tsx +12 -12
  36. package/src/components/session/session-new-view.tsx +2 -2
  37. package/src/components/session/session-sortable-tab.tsx +5 -5
  38. package/src/components/session/session-sortable-terminal-tab.tsx +4 -4
  39. package/src/components/session-context-usage.tsx +3 -3
  40. package/src/components/settings-general.tsx +7 -7
  41. package/src/components/settings-keybinds.tsx +5 -5
  42. package/src/components/settings-models.tsx +6 -6
  43. package/src/components/settings-permissions.tsx +2 -2
  44. package/src/components/settings-providers.tsx +5 -5
  45. package/src/components/status-popover.tsx +7 -7
  46. package/src/components/terminal.tsx +2 -2
  47. package/src/components/titlebar.tsx +5 -5
  48. package/src/context/command.tsx +2 -2
  49. package/src/context/comments.test.ts +1 -1
  50. package/src/context/comments.tsx +1 -1
  51. package/src/context/file.tsx +3 -3
  52. package/src/context/global-sdk.tsx +1 -1
  53. package/src/context/global-sync/bootstrap.ts +3 -3
  54. package/src/context/global-sync/event-reducer.ts +1 -1
  55. package/src/context/global-sync.tsx +2 -2
  56. package/src/context/highlights.tsx +2 -2
  57. package/src/context/language.tsx +18 -18
  58. package/src/context/layout.tsx +1 -1
  59. package/src/context/local.tsx +2 -2
  60. package/src/context/models.tsx +1 -1
  61. package/src/context/notification.tsx +3 -3
  62. package/src/context/permission-auto-respond.test.ts +1 -1
  63. package/src/context/permission-auto-respond.ts +1 -1
  64. package/src/context/permission.tsx +1 -1
  65. package/src/context/platform.tsx +1 -1
  66. package/src/context/prompt.tsx +2 -2
  67. package/src/context/sdk.tsx +1 -1
  68. package/src/context/server.tsx +1 -1
  69. package/src/context/settings.tsx +1 -1
  70. package/src/context/sync.tsx +3 -3
  71. package/src/context/terminal.test.ts +1 -1
  72. package/src/context/terminal.tsx +1 -1
  73. package/src/entry.tsx +1 -1
  74. package/src/index.css +1 -1
  75. package/src/pages/directory-layout.tsx +2 -2
  76. package/src/pages/error.tsx +4 -4
  77. package/src/pages/home.tsx +5 -5
  78. package/src/pages/layout/helpers.ts +1 -1
  79. package/src/pages/layout/inline-editor.tsx +1 -1
  80. package/src/pages/layout/sidebar-items.tsx +10 -10
  81. package/src/pages/layout/sidebar-project.tsx +7 -7
  82. package/src/pages/layout/sidebar-shell.tsx +2 -2
  83. package/src/pages/layout/sidebar-workspace.tsx +9 -9
  84. package/src/pages/layout.tsx +14 -14
  85. package/src/pages/session/composer/session-composer-region.tsx +1 -1
  86. package/src/pages/session/composer/session-composer-state.ts +1 -1
  87. package/src/pages/session/composer/session-permission-dock.tsx +3 -3
  88. package/src/pages/session/composer/session-question-dock.tsx +4 -4
  89. package/src/pages/session/composer/session-todo-dock.tsx +7 -7
  90. package/src/pages/session/file-tabs.tsx +10 -10
  91. package/src/pages/session/message-timeline.tsx +13 -13
  92. package/src/pages/session/review-tab.tsx +2 -2
  93. package/src/pages/session/session-mobile-tabs.tsx +1 -1
  94. package/src/pages/session/session-side-panel.tsx +6 -6
  95. package/src/pages/session/terminal-panel.tsx +4 -4
  96. package/src/pages/session/use-session-commands.tsx +3 -3
  97. package/src/pages/session.tsx +6 -6
  98. package/src/utils/base64.ts +1 -1
  99. package/src/utils/persist.ts +1 -1
  100. package/src/utils/sound.ts +45 -45
@@ -1,7 +1,7 @@
1
1
  import { Match, Show, Switch, createMemo } from "solid-js"
2
- import { Tooltip, type TooltipProps } from "@opencode-ai/ui/tooltip"
3
- import { ProgressCircle } from "@opencode-ai/ui/progress-circle"
4
- import { Button } from "@opencode-ai/ui/button"
2
+ import { Tooltip, type TooltipProps } from "ikanban-ui/tooltip"
3
+ import { ProgressCircle } from "ikanban-ui/progress-circle"
4
+ import { Button } from "ikanban-ui/button"
5
5
  import { useParams } from "@solidjs/router"
6
6
 
7
7
  import { useLayout } from "@/context/layout"
@@ -1,12 +1,12 @@
1
1
  import { Component, Show, createMemo, createResource, type JSX } from "solid-js"
2
2
  import { createStore } from "solid-js/store"
3
- import { Button } from "@opencode-ai/ui/button"
4
- import { Icon } from "@opencode-ai/ui/icon"
5
- import { Select } from "@opencode-ai/ui/select"
6
- import { Switch } from "@opencode-ai/ui/switch"
7
- import { Tooltip } from "@opencode-ai/ui/tooltip"
8
- import { useTheme, type ColorScheme } from "@opencode-ai/ui/theme"
9
- import { showToast } from "@opencode-ai/ui/toast"
3
+ import { Button } from "ikanban-ui/button"
4
+ import { Icon } from "ikanban-ui/icon"
5
+ import { Select } from "ikanban-ui/select"
6
+ import { Switch } from "ikanban-ui/switch"
7
+ import { Tooltip } from "ikanban-ui/tooltip"
8
+ import { useTheme, type ColorScheme } from "ikanban-ui/theme"
9
+ import { showToast } from "ikanban-ui/toast"
10
10
  import { useLanguage } from "@/context/language"
11
11
  import { usePlatform } from "@/context/platform"
12
12
  import { useSettings, monoFontFamily } from "@/context/settings"
@@ -1,10 +1,10 @@
1
1
  import { Component, For, Show, createMemo, onCleanup, onMount } from "solid-js"
2
2
  import { createStore } from "solid-js/store"
3
- import { Button } from "@opencode-ai/ui/button"
4
- import { Icon } from "@opencode-ai/ui/icon"
5
- import { IconButton } from "@opencode-ai/ui/icon-button"
6
- import { TextField } from "@opencode-ai/ui/text-field"
7
- import { showToast } from "@opencode-ai/ui/toast"
3
+ import { Button } from "ikanban-ui/button"
4
+ import { Icon } from "ikanban-ui/icon"
5
+ import { IconButton } from "ikanban-ui/icon-button"
6
+ import { TextField } from "ikanban-ui/text-field"
7
+ import { showToast } from "ikanban-ui/toast"
8
8
  import fuzzysort from "fuzzysort"
9
9
  import { formatKeybind, parseKeybind, useCommand } from "@/context/command"
10
10
  import { useLanguage } from "@/context/language"
@@ -1,9 +1,9 @@
1
- import { useFilteredList } from "@opencode-ai/ui/hooks"
2
- import { ProviderIcon } from "@opencode-ai/ui/provider-icon"
3
- import { Switch } from "@opencode-ai/ui/switch"
4
- import { Icon } from "@opencode-ai/ui/icon"
5
- import { IconButton } from "@opencode-ai/ui/icon-button"
6
- import { TextField } from "@opencode-ai/ui/text-field"
1
+ import { useFilteredList } from "ikanban-ui/hooks"
2
+ import { ProviderIcon } from "ikanban-ui/provider-icon"
3
+ import { Switch } from "ikanban-ui/switch"
4
+ import { Icon } from "ikanban-ui/icon"
5
+ import { IconButton } from "ikanban-ui/icon-button"
6
+ import { TextField } from "ikanban-ui/text-field"
7
7
  import { type Component, For, Show } from "solid-js"
8
8
  import { useLanguage } from "@/context/language"
9
9
  import { useModels } from "@/context/models"
@@ -1,5 +1,5 @@
1
- import { Select } from "@opencode-ai/ui/select"
2
- import { showToast } from "@opencode-ai/ui/toast"
1
+ import { Select } from "ikanban-ui/select"
2
+ import { showToast } from "ikanban-ui/toast"
3
3
  import { Component, For, createMemo, type JSX } from "solid-js"
4
4
  import { useGlobalSync } from "@/context/global-sync"
5
5
  import { useLanguage } from "@/context/language"
@@ -1,8 +1,8 @@
1
- import { Button } from "@opencode-ai/ui/button"
2
- import { useDialog } from "@opencode-ai/ui/context/dialog"
3
- import { ProviderIcon } from "@opencode-ai/ui/provider-icon"
4
- import { Tag } from "@opencode-ai/ui/tag"
5
- import { showToast } from "@opencode-ai/ui/toast"
1
+ import { Button } from "ikanban-ui/button"
2
+ import { useDialog } from "ikanban-ui/context/dialog"
3
+ import { ProviderIcon } from "ikanban-ui/provider-icon"
4
+ import { Tag } from "ikanban-ui/tag"
5
+ import { showToast } from "ikanban-ui/toast"
6
6
  import { popularProviders, useProviders } from "@/hooks/use-providers"
7
7
  import { createMemo, type Component, For, Show } from "solid-js"
8
8
  import { useLanguage } from "@/context/language"
@@ -1,10 +1,10 @@
1
- import { Button } from "@opencode-ai/ui/button"
2
- import { useDialog } from "@opencode-ai/ui/context/dialog"
3
- import { Icon } from "@opencode-ai/ui/icon"
4
- import { Popover } from "@opencode-ai/ui/popover"
5
- import { Switch } from "@opencode-ai/ui/switch"
6
- import { Tabs } from "@opencode-ai/ui/tabs"
7
- import { showToast } from "@opencode-ai/ui/toast"
1
+ import { Button } from "ikanban-ui/button"
2
+ import { useDialog } from "ikanban-ui/context/dialog"
3
+ import { Icon } from "ikanban-ui/icon"
4
+ import { Popover } from "ikanban-ui/popover"
5
+ import { Switch } from "ikanban-ui/switch"
6
+ import { Tabs } from "ikanban-ui/tabs"
7
+ import { showToast } from "ikanban-ui/toast"
8
8
  import { useNavigate } from "@solidjs/router"
9
9
  import { type Accessor, createEffect, createMemo, createSignal, For, type JSXElement, onCleanup, Show } from "solid-js"
10
10
  import { createStore, reconcile } from "solid-js/store"
@@ -1,5 +1,5 @@
1
- import { type HexColor, resolveThemeVariant, useTheme, withAlpha } from "@opencode-ai/ui/theme"
2
- import { showToast } from "@opencode-ai/ui/toast"
1
+ import { type HexColor, resolveThemeVariant, useTheme, withAlpha } from "ikanban-ui/theme"
2
+ import { showToast } from "ikanban-ui/toast"
3
3
  import type { FitAddon, Ghostty, Terminal as Term } from "ghostty-web"
4
4
  import { type ComponentProps, createEffect, createMemo, onCleanup, onMount, splitProps } from "solid-js"
5
5
  import { SerializeAddon } from "@/addons/serialize"
@@ -1,11 +1,11 @@
1
1
  import { createEffect, createMemo, Show, untrack } from "solid-js"
2
2
  import { createStore } from "solid-js/store"
3
3
  import { useLocation, useNavigate, useParams } from "@solidjs/router"
4
- import { IconButton } from "@opencode-ai/ui/icon-button"
5
- import { Icon } from "@opencode-ai/ui/icon"
6
- import { Button } from "@opencode-ai/ui/button"
7
- import { Tooltip, TooltipKeybind } from "@opencode-ai/ui/tooltip"
8
- import { useTheme } from "@opencode-ai/ui/theme"
4
+ import { IconButton } from "ikanban-ui/icon-button"
5
+ import { Icon } from "ikanban-ui/icon"
6
+ import { Button } from "ikanban-ui/button"
7
+ import { Tooltip, TooltipKeybind } from "ikanban-ui/tooltip"
8
+ import { useTheme } from "ikanban-ui/theme"
9
9
 
10
10
  import { useLayout } from "@/context/layout"
11
11
  import { usePlatform } from "@/context/platform"
@@ -1,7 +1,7 @@
1
1
  import { createEffect, createMemo, onCleanup, onMount, type Accessor } from "solid-js"
2
2
  import { createStore } from "solid-js/store"
3
- import { createSimpleContext } from "@opencode-ai/ui/context"
4
- import { useDialog } from "@opencode-ai/ui/context/dialog"
3
+ import { createSimpleContext } from "ikanban-ui/context"
4
+ import { useDialog } from "ikanban-ui/context/dialog"
5
5
  import { useLanguage } from "@/context/language"
6
6
  import { useSettings } from "@/context/settings"
7
7
  import { Persist, persisted } from "@/utils/persist"
@@ -9,7 +9,7 @@ beforeAll(async () => {
9
9
  useNavigate: () => () => undefined,
10
10
  useParams: () => ({}),
11
11
  }))
12
- mock.module("@opencode-ai/ui/context", () => ({
12
+ mock.module("ikanban-ui/context", () => ({
13
13
  createSimpleContext: () => ({
14
14
  use: () => undefined,
15
15
  provider: () => undefined,
@@ -1,6 +1,6 @@
1
1
  import { batch, createMemo, createRoot, onCleanup } from "solid-js"
2
2
  import { createStore, reconcile, type SetStoreFunction, type Store } from "solid-js/store"
3
- import { createSimpleContext } from "@opencode-ai/ui/context"
3
+ import { createSimpleContext } from "ikanban-ui/context"
4
4
  import { useParams } from "@solidjs/router"
5
5
  import { Persist, persisted } from "@/utils/persist"
6
6
  import { createScopedCache } from "@/utils/scoped-cache"
@@ -1,9 +1,9 @@
1
1
  import { batch, createEffect, createMemo, onCleanup } from "solid-js"
2
2
  import { createStore, produce, reconcile } from "solid-js/store"
3
- import { createSimpleContext } from "@opencode-ai/ui/context"
4
- import { showToast } from "@opencode-ai/ui/toast"
3
+ import { createSimpleContext } from "ikanban-ui/context"
4
+ import { showToast } from "ikanban-ui/toast"
5
5
  import { useParams } from "@solidjs/router"
6
- import { getFilename } from "@opencode-ai/util/path"
6
+ import { getFilename } from "ikanban-utils/path"
7
7
  import { useSDK } from "./sdk"
8
8
  import { useSync } from "./sync"
9
9
  import { useLanguage } from "@/context/language"
@@ -1,5 +1,5 @@
1
1
  import type { Event } from "@opencode-ai/sdk/v2/client"
2
- import { createSimpleContext } from "@opencode-ai/ui/context"
2
+ import { createSimpleContext } from "ikanban-ui/context"
3
3
  import { createGlobalEmitter } from "@solid-primitives/event-bus"
4
4
  import { batch, onCleanup } from "solid-js"
5
5
  import z from "zod"
@@ -9,9 +9,9 @@ import type {
9
9
  QuestionRequest,
10
10
  Todo,
11
11
  } from "@opencode-ai/sdk/v2/client"
12
- import { showToast } from "@opencode-ai/ui/toast"
13
- import { getFilename } from "@opencode-ai/util/path"
14
- import { retry } from "@opencode-ai/util/retry"
12
+ import { showToast } from "ikanban-ui/toast"
13
+ import { getFilename } from "ikanban-utils/path"
14
+ import { retry } from "ikanban-utils/retry"
15
15
  import { batch } from "solid-js"
16
16
  import { reconcile, type SetStoreFunction, type Store } from "solid-js/store"
17
17
  import type { State, VcsCache } from "./types"
@@ -1,4 +1,4 @@
1
- import { Binary } from "@opencode-ai/util/binary"
1
+ import { Binary } from "ikanban-utils/binary"
2
2
  import { produce, reconcile, type SetStoreFunction, type Store } from "solid-js/store"
3
3
  import type {
4
4
  FileDiff,
@@ -7,8 +7,8 @@ import type {
7
7
  ProviderListResponse,
8
8
  Todo,
9
9
  } from "@opencode-ai/sdk/v2/client"
10
- import { showToast } from "@opencode-ai/ui/toast"
11
- import { getFilename } from "@opencode-ai/util/path"
10
+ import { showToast } from "ikanban-ui/toast"
11
+ import { getFilename } from "ikanban-utils/path"
12
12
  import {
13
13
  createContext,
14
14
  getOwner,
@@ -1,7 +1,7 @@
1
1
  import { createEffect, createSignal, onCleanup } from "solid-js"
2
2
  import { createStore } from "solid-js/store"
3
- import { createSimpleContext } from "@opencode-ai/ui/context"
4
- import { useDialog } from "@opencode-ai/ui/context/dialog"
3
+ import { createSimpleContext } from "ikanban-ui/context"
4
+ import { useDialog } from "ikanban-ui/context/dialog"
5
5
  import { usePlatform } from "@/context/platform"
6
6
  import { useSettings } from "@/context/settings"
7
7
  import { persisted } from "@/utils/persist"
@@ -1,7 +1,7 @@
1
1
  import * as i18n from "@solid-primitives/i18n"
2
2
  import { createEffect, createMemo } from "solid-js"
3
3
  import { createStore } from "solid-js/store"
4
- import { createSimpleContext } from "@opencode-ai/ui/context"
4
+ import { createSimpleContext } from "ikanban-ui/context"
5
5
  import { Persist, persisted } from "@/utils/persist"
6
6
  import { dict as en } from "@/i18n/en"
7
7
  import { dict as zh } from "@/i18n/zh"
@@ -20,23 +20,23 @@ import { dict as br } from "@/i18n/br"
20
20
  import { dict as th } from "@/i18n/th"
21
21
  import { dict as bs } from "@/i18n/bs"
22
22
  import { dict as tr } from "@/i18n/tr"
23
- import { dict as uiEn } from "@opencode-ai/ui/i18n/en"
24
- import { dict as uiZh } from "@opencode-ai/ui/i18n/zh"
25
- import { dict as uiZht } from "@opencode-ai/ui/i18n/zht"
26
- import { dict as uiKo } from "@opencode-ai/ui/i18n/ko"
27
- import { dict as uiDe } from "@opencode-ai/ui/i18n/de"
28
- import { dict as uiEs } from "@opencode-ai/ui/i18n/es"
29
- import { dict as uiFr } from "@opencode-ai/ui/i18n/fr"
30
- import { dict as uiDa } from "@opencode-ai/ui/i18n/da"
31
- import { dict as uiJa } from "@opencode-ai/ui/i18n/ja"
32
- import { dict as uiPl } from "@opencode-ai/ui/i18n/pl"
33
- import { dict as uiRu } from "@opencode-ai/ui/i18n/ru"
34
- import { dict as uiAr } from "@opencode-ai/ui/i18n/ar"
35
- import { dict as uiNo } from "@opencode-ai/ui/i18n/no"
36
- import { dict as uiBr } from "@opencode-ai/ui/i18n/br"
37
- import { dict as uiTh } from "@opencode-ai/ui/i18n/th"
38
- import { dict as uiBs } from "@opencode-ai/ui/i18n/bs"
39
- import { dict as uiTr } from "@opencode-ai/ui/i18n/tr"
23
+ import { dict as uiEn } from "ikanban-ui/i18n/en"
24
+ import { dict as uiZh } from "ikanban-ui/i18n/zh"
25
+ import { dict as uiZht } from "ikanban-ui/i18n/zht"
26
+ import { dict as uiKo } from "ikanban-ui/i18n/ko"
27
+ import { dict as uiDe } from "ikanban-ui/i18n/de"
28
+ import { dict as uiEs } from "ikanban-ui/i18n/es"
29
+ import { dict as uiFr } from "ikanban-ui/i18n/fr"
30
+ import { dict as uiDa } from "ikanban-ui/i18n/da"
31
+ import { dict as uiJa } from "ikanban-ui/i18n/ja"
32
+ import { dict as uiPl } from "ikanban-ui/i18n/pl"
33
+ import { dict as uiRu } from "ikanban-ui/i18n/ru"
34
+ import { dict as uiAr } from "ikanban-ui/i18n/ar"
35
+ import { dict as uiNo } from "ikanban-ui/i18n/no"
36
+ import { dict as uiBr } from "ikanban-ui/i18n/br"
37
+ import { dict as uiTh } from "ikanban-ui/i18n/th"
38
+ import { dict as uiBs } from "ikanban-ui/i18n/bs"
39
+ import { dict as uiTr } from "ikanban-ui/i18n/tr"
40
40
 
41
41
  export type Locale =
42
42
  | "en"
@@ -1,6 +1,6 @@
1
1
  import { createStore, produce } from "solid-js/store"
2
2
  import { batch, createEffect, createMemo, onCleanup, onMount, type Accessor } from "solid-js"
3
- import { createSimpleContext } from "@opencode-ai/ui/context"
3
+ import { createSimpleContext } from "ikanban-ui/context"
4
4
  import { useGlobalSync } from "./global-sync"
5
5
  import { useGlobalSDK } from "./global-sdk"
6
6
  import { useServer } from "./server"
@@ -1,9 +1,9 @@
1
1
  import { createStore } from "solid-js/store"
2
2
  import { batch, createMemo } from "solid-js"
3
- import { createSimpleContext } from "@opencode-ai/ui/context"
3
+ import { createSimpleContext } from "ikanban-ui/context"
4
4
  import { useSDK } from "./sdk"
5
5
  import { useSync } from "./sync"
6
- import { base64Encode } from "@opencode-ai/util/encode"
6
+ import { base64Encode } from "ikanban-utils/encode"
7
7
  import { useProviders } from "@/hooks/use-providers"
8
8
  import { useModels } from "@/context/models"
9
9
  import { cycleModelVariant, getConfiguredAgentVariant, resolveModelVariant } from "./model-variant"
@@ -2,7 +2,7 @@ import { createMemo } from "solid-js"
2
2
  import { createStore } from "solid-js/store"
3
3
  import { DateTime } from "luxon"
4
4
  import { filter, firstBy, flat, groupBy, mapValues, pipe, uniqueBy, values } from "remeda"
5
- import { createSimpleContext } from "@opencode-ai/ui/context"
5
+ import { createSimpleContext } from "ikanban-ui/context"
6
6
  import { useProviders } from "@/hooks/use-providers"
7
7
  import { Persist, persisted } from "@/utils/persist"
8
8
 
@@ -1,14 +1,14 @@
1
1
  import { createStore, reconcile } from "solid-js/store"
2
2
  import { batch, createEffect, createMemo, onCleanup } from "solid-js"
3
3
  import { useParams } from "@solidjs/router"
4
- import { createSimpleContext } from "@opencode-ai/ui/context"
4
+ import { createSimpleContext } from "ikanban-ui/context"
5
5
  import { useGlobalSDK } from "./global-sdk"
6
6
  import { useGlobalSync } from "./global-sync"
7
7
  import { usePlatform } from "@/context/platform"
8
8
  import { useLanguage } from "@/context/language"
9
9
  import { useSettings } from "@/context/settings"
10
- import { Binary } from "@opencode-ai/util/binary"
11
- import { base64Encode } from "@opencode-ai/util/encode"
10
+ import { Binary } from "ikanban-utils/binary"
11
+ import { base64Encode } from "ikanban-utils/encode"
12
12
  import { decode64 } from "@/utils/base64"
13
13
  import { EventSessionError } from "@opencode-ai/sdk/v2"
14
14
  import { Persist, persisted } from "@/utils/persist"
@@ -1,6 +1,6 @@
1
1
  import { describe, expect, test } from "bun:test"
2
2
  import type { PermissionRequest, Session } from "@opencode-ai/sdk/v2/client"
3
- import { base64Encode } from "@opencode-ai/util/encode"
3
+ import { base64Encode } from "ikanban-utils/encode"
4
4
  import { autoRespondsPermission } from "./permission-auto-respond"
5
5
 
6
6
  const session = (input: { id: string; parentID?: string }) =>
@@ -1,4 +1,4 @@
1
- import { base64Encode } from "@opencode-ai/util/encode"
1
+ import { base64Encode } from "ikanban-utils/encode"
2
2
 
3
3
  export function acceptKey(sessionID: string, directory?: string) {
4
4
  if (!directory) return sessionID
@@ -1,6 +1,6 @@
1
1
  import { createMemo, onCleanup } from "solid-js"
2
2
  import { createStore, produce } from "solid-js/store"
3
- import { createSimpleContext } from "@opencode-ai/ui/context"
3
+ import { createSimpleContext } from "ikanban-ui/context"
4
4
  import type { PermissionRequest } from "@opencode-ai/sdk/v2/client"
5
5
  import { Persist, persisted } from "@/utils/persist"
6
6
  import { useGlobalSDK } from "@/context/global-sdk"
@@ -1,4 +1,4 @@
1
- import { createSimpleContext } from "@opencode-ai/ui/context"
1
+ import { createSimpleContext } from "ikanban-ui/context"
2
2
  import type { AsyncStorage, SyncStorage } from "@solid-primitives/storage"
3
3
  import type { Accessor } from "solid-js"
4
4
 
@@ -1,10 +1,10 @@
1
1
  import { createStore, type SetStoreFunction } from "solid-js/store"
2
- import { createSimpleContext } from "@opencode-ai/ui/context"
2
+ import { createSimpleContext } from "ikanban-ui/context"
3
3
  import { batch, createMemo, createRoot, onCleanup } from "solid-js"
4
4
  import { useParams } from "@solidjs/router"
5
5
  import type { FileSelection } from "@/context/file"
6
6
  import { Persist, persisted } from "@/utils/persist"
7
- import { checksum } from "@opencode-ai/util/encode"
7
+ import { checksum } from "ikanban-utils/encode"
8
8
 
9
9
  interface PartBase {
10
10
  content: string
@@ -1,5 +1,5 @@
1
1
  import type { Event } from "@opencode-ai/sdk/v2/client"
2
- import { createSimpleContext } from "@opencode-ai/ui/context"
2
+ import { createSimpleContext } from "ikanban-ui/context"
3
3
  import { createGlobalEmitter } from "@solid-primitives/event-bus"
4
4
  import { type Accessor, createEffect, createMemo, onCleanup } from "solid-js"
5
5
  import { useGlobalSDK } from "./global-sdk"
@@ -1,4 +1,4 @@
1
- import { createSimpleContext } from "@opencode-ai/ui/context"
1
+ import { createSimpleContext } from "ikanban-ui/context"
2
2
  import { type Accessor, batch, createEffect, createMemo, onCleanup } from "solid-js"
3
3
  import { createStore } from "solid-js/store"
4
4
  import { usePlatform } from "@/context/platform"
@@ -1,6 +1,6 @@
1
1
  import { createStore, reconcile } from "solid-js/store"
2
2
  import { createEffect, createMemo } from "solid-js"
3
- import { createSimpleContext } from "@opencode-ai/ui/context"
3
+ import { createSimpleContext } from "ikanban-ui/context"
4
4
  import { persisted } from "@/utils/persist"
5
5
 
6
6
  export interface NotificationSettings {
@@ -1,8 +1,8 @@
1
1
  import { batch, createMemo } from "solid-js"
2
2
  import { createStore, produce, reconcile } from "solid-js/store"
3
- import { Binary } from "@opencode-ai/util/binary"
4
- import { retry } from "@opencode-ai/util/retry"
5
- import { createSimpleContext } from "@opencode-ai/ui/context"
3
+ import { Binary } from "ikanban-utils/binary"
4
+ import { retry } from "ikanban-utils/retry"
5
+ import { createSimpleContext } from "ikanban-ui/context"
6
6
  import { useGlobalSync } from "./global-sync"
7
7
  import { useSDK } from "./sdk"
8
8
  import type { Message, Part } from "@opencode-ai/sdk/v2/client"
@@ -8,7 +8,7 @@ beforeAll(async () => {
8
8
  useNavigate: () => () => undefined,
9
9
  useParams: () => ({}),
10
10
  }))
11
- mock.module("@opencode-ai/ui/context", () => ({
11
+ mock.module("ikanban-ui/context", () => ({
12
12
  createSimpleContext: () => ({
13
13
  use: () => undefined,
14
14
  provider: () => undefined,
@@ -1,5 +1,5 @@
1
1
  import { createStore, produce } from "solid-js/store"
2
- import { createSimpleContext } from "@opencode-ai/ui/context"
2
+ import { createSimpleContext } from "ikanban-ui/context"
3
3
  import { batch, createEffect, createMemo, createRoot, onCleanup } from "solid-js"
4
4
  import { useParams } from "@solidjs/router"
5
5
  import { useSDK } from "./sdk"
package/src/entry.tsx CHANGED
@@ -1,6 +1,6 @@
1
1
  // @refresh reload
2
2
 
3
- import { iife } from "@opencode-ai/util/iife"
3
+ import { iife } from "ikanban-utils/iife"
4
4
  import { render } from "solid-js/web"
5
5
  import { AppBaseProviders, AppInterface } from "@/app"
6
6
  import { type Platform, PlatformProvider } from "@/context/platform"
package/src/index.css CHANGED
@@ -1 +1 @@
1
- @import "@opencode-ai/ui/styles/tailwind";
1
+ @import "ikanban-ui/styles/tailwind";
@@ -5,9 +5,9 @@ import { SDKProvider } from "@/context/sdk"
5
5
  import { SyncProvider, useSync } from "@/context/sync"
6
6
  import { LocalProvider } from "@/context/local"
7
7
 
8
- import { DataProvider } from "@opencode-ai/ui/context"
8
+ import { DataProvider } from "ikanban-ui/context"
9
9
  import { decode64 } from "@/utils/base64"
10
- import { showToast } from "@opencode-ai/ui/toast"
10
+ import { showToast } from "ikanban-ui/toast"
11
11
  import { useLanguage } from "@/context/language"
12
12
 
13
13
  function DirectoryDataProvider(props: ParentProps<{ directory: string }>) {
@@ -1,11 +1,11 @@
1
- import { TextField } from "@opencode-ai/ui/text-field"
2
- import { Logo } from "@opencode-ai/ui/logo"
3
- import { Button } from "@opencode-ai/ui/button"
1
+ import { TextField } from "ikanban-ui/text-field"
2
+ import { Logo } from "ikanban-ui/logo"
3
+ import { Button } from "ikanban-ui/button"
4
4
  import { Component, Show } from "solid-js"
5
5
  import { createStore } from "solid-js/store"
6
6
  import { usePlatform } from "@/context/platform"
7
7
  import { useLanguage } from "@/context/language"
8
- import { Icon } from "@opencode-ai/ui/icon"
8
+ import { Icon } from "ikanban-ui/icon"
9
9
 
10
10
  export type InitError = {
11
11
  name: string
@@ -1,13 +1,13 @@
1
1
  import { createMemo, For, Match, Switch } from "solid-js"
2
- import { Button } from "@opencode-ai/ui/button"
3
- import { Logo } from "@opencode-ai/ui/logo"
2
+ import { Button } from "ikanban-ui/button"
3
+ import { Logo } from "ikanban-ui/logo"
4
4
  import { useLayout } from "@/context/layout"
5
5
  import { useNavigate } from "@solidjs/router"
6
- import { base64Encode } from "@opencode-ai/util/encode"
7
- import { Icon } from "@opencode-ai/ui/icon"
6
+ import { base64Encode } from "ikanban-utils/encode"
7
+ import { Icon } from "ikanban-ui/icon"
8
8
  import { usePlatform } from "@/context/platform"
9
9
  import { DateTime } from "luxon"
10
- import { useDialog } from "@opencode-ai/ui/context/dialog"
10
+ import { useDialog } from "ikanban-ui/context/dialog"
11
11
  import { DialogSelectDirectory } from "@/components/dialog-select-directory"
12
12
  import { DialogSelectServer } from "@/components/dialog-select-server"
13
13
  import { useServer } from "@/context/server"
@@ -1,4 +1,4 @@
1
- import { getFilename } from "@opencode-ai/util/path"
1
+ import { getFilename } from "ikanban-utils/path"
2
2
  import { type Session } from "@opencode-ai/sdk/v2/client"
3
3
 
4
4
  export const workspaceKey = (directory: string) => {
@@ -1,6 +1,6 @@
1
1
  import { createStore } from "solid-js/store"
2
2
  import { onCleanup, Show, type Accessor } from "solid-js"
3
- import { InlineInput } from "@opencode-ai/ui/inline-input"
3
+ import { InlineInput } from "ikanban-ui/inline-input"
4
4
 
5
5
  export function createInlineEditorController() {
6
6
  // This controller intentionally supports one active inline editor at a time.
@@ -4,16 +4,16 @@ import { useLanguage } from "@/context/language"
4
4
  import { useLayout, type LocalProject, getAvatarColors } from "@/context/layout"
5
5
  import { useNotification } from "@/context/notification"
6
6
  import { usePermission } from "@/context/permission"
7
- import { base64Encode } from "@opencode-ai/util/encode"
8
- import { Avatar } from "@opencode-ai/ui/avatar"
9
- import { DiffChanges } from "@opencode-ai/ui/diff-changes"
10
- import { HoverCard } from "@opencode-ai/ui/hover-card"
11
- import { Icon } from "@opencode-ai/ui/icon"
12
- import { IconButton } from "@opencode-ai/ui/icon-button"
13
- import { MessageNav } from "@opencode-ai/ui/message-nav"
14
- import { Spinner } from "@opencode-ai/ui/spinner"
15
- import { Tooltip } from "@opencode-ai/ui/tooltip"
16
- import { getFilename } from "@opencode-ai/util/path"
7
+ import { base64Encode } from "ikanban-utils/encode"
8
+ import { Avatar } from "ikanban-ui/avatar"
9
+ import { DiffChanges } from "ikanban-ui/diff-changes"
10
+ import { HoverCard } from "ikanban-ui/hover-card"
11
+ import { Icon } from "ikanban-ui/icon"
12
+ import { IconButton } from "ikanban-ui/icon-button"
13
+ import { MessageNav } from "ikanban-ui/message-nav"
14
+ import { Spinner } from "ikanban-ui/spinner"
15
+ import { Tooltip } from "ikanban-ui/tooltip"
16
+ import { getFilename } from "ikanban-utils/path"
17
17
  import { type Message, type Session, type TextPart, type UserMessage } from "@opencode-ai/sdk/v2/client"
18
18
  import { For, Match, Show, Switch, createMemo, onCleanup, type Accessor, type JSX } from "solid-js"
19
19
  import { agentColor } from "@/utils/agent"
@@ -1,12 +1,12 @@
1
1
  import { createEffect, createMemo, For, Show, type Accessor, type JSX } from "solid-js"
2
2
  import { createStore } from "solid-js/store"
3
- import { base64Encode } from "@opencode-ai/util/encode"
4
- import { Button } from "@opencode-ai/ui/button"
5
- import { ContextMenu } from "@opencode-ai/ui/context-menu"
6
- import { HoverCard } from "@opencode-ai/ui/hover-card"
7
- import { Icon } from "@opencode-ai/ui/icon"
8
- import { IconButton } from "@opencode-ai/ui/icon-button"
9
- import { Tooltip } from "@opencode-ai/ui/tooltip"
3
+ import { base64Encode } from "ikanban-utils/encode"
4
+ import { Button } from "ikanban-ui/button"
5
+ import { ContextMenu } from "ikanban-ui/context-menu"
6
+ import { HoverCard } from "ikanban-ui/hover-card"
7
+ import { Icon } from "ikanban-ui/icon"
8
+ import { IconButton } from "ikanban-ui/icon-button"
9
+ import { Tooltip } from "ikanban-ui/tooltip"
10
10
  import { createSortable } from "@thisbeyond/solid-dnd"
11
11
  import { useLayout, type LocalProject } from "@/context/layout"
12
12
  import { useGlobalSync } from "@/context/global-sync"
@@ -8,8 +8,8 @@ import {
8
8
  type DragEvent,
9
9
  } from "@thisbeyond/solid-dnd"
10
10
  import { ConstrainDragXAxis } from "@/utils/solid-dnd"
11
- import { IconButton } from "@opencode-ai/ui/icon-button"
12
- import { Tooltip, TooltipKeybind } from "@opencode-ai/ui/tooltip"
11
+ import { IconButton } from "ikanban-ui/icon-button"
12
+ import { Tooltip, TooltipKeybind } from "ikanban-ui/tooltip"
13
13
  import { type LocalProject } from "@/context/layout"
14
14
  import { sidebarExpanded } from "./sidebar-shell-helpers"
15
15