@k2b/cloud 0.39.0 → 0.40.0
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.
- package/README.md +8 -0
- package/package.json +8 -4
- package/src/_internal/app-favicon.ts +4 -2
- package/src/_internal/capabilities.ts +72 -48
- package/src/_internal/capability-reviews.ts +81 -0
- package/src/_internal/capability-schemas.ts +29 -0
- package/src/_internal/capability-sentences.ts +216 -1
- package/src/_internal/capability-streams.ts +7 -0
- package/src/_internal/define-app.ts +36 -15
- package/src/_internal/font-preloads.ts +2 -1
- package/src/_internal/runtime-watcher.ts +6 -0
- package/src/_internal/static-assets.ts +52 -3
- package/src/_internal/status-preserving-ssr.ts +2 -0
- package/src/access/PermissionEditor.tsx +2 -2
- package/src/account/EntitySearch.tsx +1 -1
- package/src/ai/action-review.ts +101 -0
- package/src/ai/background-review.ts +72 -0
- package/src/ai/capabilities.ts +29 -11
- package/src/ai/capability-execution.ts +76 -43
- package/src/ai/capability-result.ts +95 -0
- package/src/ai/chat/action-card.ts +398 -0
- package/src/ai/chat/action-messages.ts +129 -0
- package/src/ai/chat/action-question.browser-harness.tsx +245 -0
- package/src/ai/chat/action-question.fixtures.ts +733 -0
- package/src/ai/chat/action-question.tsx +669 -0
- package/src/ai/chat/blocks.tsx +19 -25
- package/src/ai/chat/message-actions.tsx +6 -0
- package/src/ai/chat/tool-action.tsx +481 -0
- package/src/ai/chat/turn-view.tsx +10 -160
- package/src/ai/chat/view-block.tsx +15 -5
- package/src/ai/chat-task-contracts.ts +4 -1
- package/src/ai/chat-task-reasons-migrate.ts +7 -0
- package/src/ai/chat-task-reasons.ts +1 -1
- package/src/ai/chat-tasks.ts +55 -25
- package/src/ai/client/controller.ts +59 -0
- package/src/ai/default-tools.ts +9 -1
- package/src/ai/executor.ts +190 -39
- package/src/ai/index.ts +2 -0
- package/src/ai/migrate.ts +11 -2
- package/src/ai/projects-routes.ts +3 -0
- package/src/ai/protocol.ts +14 -2
- package/src/ai/recent-resources.ts +240 -0
- package/src/ai/recent-sent-refs.ts +38 -0
- package/src/ai/routes.ts +145 -1
- package/src/ai/runtime.ts +1 -0
- package/src/ai/skills-routes.ts +3 -0
- package/src/ai/skills.ts +10 -1
- package/src/ai/store.ts +227 -24
- package/src/ai/tool-audit.ts +8 -0
- package/src/ai/tool-wording.ts +24 -2
- package/src/ai/types.ts +28 -3
- package/src/api/accounts-entities.ts +2 -1
- package/src/api/admin-ai-projects.ts +2 -0
- package/src/api/admin-ai-skills.ts +2 -0
- package/src/api/admin-ai-usage.ts +2 -0
- package/src/api/admin-geoip.ts +80 -0
- package/src/api/admin-identity.ts +3 -0
- package/src/api/admin-lifecycle.ts +3 -0
- package/src/api/admin-outgoing-mail.ts +2 -0
- package/src/api/app-approval.ts +46 -5
- package/src/api/approvals-loader.ts +23 -1
- package/src/api/approvals.ts +2 -0
- package/src/api/auth.ts +25 -6
- package/src/api/capabilities.ts +44 -11
- package/src/api/capability-streams.ts +12 -0
- package/src/api/help.ts +4 -28
- package/src/api/index.ts +6 -1
- package/src/api/lasting-access-messages.ts +17 -0
- package/src/api/mcp.ts +3 -0
- package/src/api/me-panel-consent.ts +71 -0
- package/src/api/me.ts +80 -33
- package/src/api/search.ts +3 -1
- package/src/api/sync-ops.ts +2 -0
- package/src/api/widgets.ts +3 -0
- package/src/approvals/Approvals.tsx +180 -238
- package/src/approvals/messages.ts +12 -24
- package/src/browser/CloudResourceSearch.browser-harness.tsx +10 -2
- package/src/browser/app-approval.ts +54 -5
- package/src/browser/commands.ts +22 -6
- package/src/browser/composer-catalog.ts +45 -3
- package/src/browser/composer-insert.ts +10 -0
- package/src/browser/composer-open-messages.ts +17 -0
- package/src/browser/composer-open.ts +110 -0
- package/src/browser/discoverable-command.ts +6 -0
- package/src/browser/hints.ts +6 -0
- package/src/browser/live-connection.ts +26 -2
- package/src/browser/navigation-apps.ts +7 -0
- package/src/browser/panel-context-bridge.ts +30 -0
- package/src/browser/panel-context-receiver.ts +53 -0
- package/src/browser/panel-menu.tsx +56 -0
- package/src/browser/panel-messages.ts +11 -0
- package/src/browser/panel-shortcuts.ts +31 -0
- package/src/browser/panel-slot.ts +412 -10
- package/src/browser/panel.ts +37 -0
- package/src/browser/search-commands.ts +6 -3
- package/src/capabilities/client.ts +8 -2
- package/src/capabilities/reviews.ts +205 -0
- package/src/capabilities/server.ts +10 -3
- package/src/capabilities/testing.ts +47 -0
- package/src/capabilities/types.ts +2 -2
- package/src/cli/account.ts +13 -3
- package/src/cli/admin/geoip.ts +115 -0
- package/src/cli/admin/index.ts +3 -0
- package/src/contracts/app-approval.ts +120 -13
- package/src/contracts/approvals.ts +2 -2
- package/src/contracts/capabilities.ts +410 -18
- package/src/contracts/geoip.ts +42 -0
- package/src/contracts/index.ts +3 -0
- package/src/contracts/panel-context-plain.ts +99 -0
- package/src/contracts/panel-context.ts +93 -0
- package/src/contracts/seen-hints.ts +35 -0
- package/src/server/client-ip.ts +5 -0
- package/src/server/help-payload.ts +38 -0
- package/src/server/middleware/auth.ts +11 -1
- package/src/server/middleware/middleware.ts +9 -0
- package/src/server/middleware/no-transform.ts +19 -0
- package/src/server/middleware/rate-limit.ts +4 -6
- package/src/server/request-context/address.ts +45 -0
- package/src/server/request-context/geoip.ts +380 -0
- package/src/server/request-context/index.ts +33 -0
- package/src/server/request-context/user-agent.ts +95 -0
- package/src/services/app-approval.ts +382 -59
- package/src/services/approvals/device.ts +7 -5
- package/src/services/approvals/index.ts +6 -5
- package/src/services/approvals/list.ts +26 -5
- package/src/services/auth-flows/notification-sender.ts +3 -0
- package/src/services/geoip/index.ts +164 -0
- package/src/services/geoip/store.ts +30 -0
- package/src/services/geoip/upload.ts +150 -0
- package/src/services/identity/routes.ts +5 -1
- package/src/services/index.ts +11 -0
- package/src/services/known-browsers.ts +312 -0
- package/src/services/login-address-store.ts +51 -0
- package/src/services/login-context.ts +118 -0
- package/src/services/mandates/index.ts +3 -0
- package/src/services/mandates/policy.ts +15 -3
- package/src/services/notifications/email-frame.ts +1 -1
- package/src/services/oauth-tokens.ts +16 -2
- package/src/services/panel-context-consent.ts +58 -0
- package/src/services/service-account-credentials.ts +21 -0
- package/src/services/session/index.ts +97 -16
- package/src/services/session/recent.ts +13 -0
- package/src/services/webauthn.ts +12 -0
- package/src/shared/email-html.ts +2 -0
- package/src/shared/help.ts +3 -0
- package/src/shared-text/cursor.ts +22 -0
- package/src/shared-text/documents.ts +142 -0
- package/src/shared-text/events.ts +43 -0
- package/src/shared-text/index.ts +12 -0
- package/src/shared-text/log.ts +48 -0
- package/src/shared-text/text-diff.ts +23 -0
- package/src/shared-text/types.ts +41 -0
- package/src/ssr/AdminLayout.tsx +2 -0
- package/src/ssr/AppLaunchpadPanel.tsx +2 -2
- package/src/ssr/CloudShell.island.tsx +10 -2
- package/src/ssr/Layout.tsx +25 -2
- package/src/ssr/LayoutHelp.browser-harness.tsx +2 -0
- package/src/ssr/LayoutHelp.tsx +435 -274
- package/src/ssr/LayoutHelpPanel.browser-harness.tsx +136 -0
- package/src/ssr/LayoutHelpTrigger.tsx +27 -2
- package/src/ssr/MobileNavigation.tsx +2 -2
- package/src/ssr/PanelLayout.tsx +9 -1
- package/src/ssr/PanelRuntime.island.tsx +7 -0
- package/src/ssr/PanelSlot.tsx +53 -3
- package/src/ssr/ShellRuntime.island.tsx +11 -2
- package/src/ssr/app-color.ts +14 -9
- package/src/ssr/app-navigation.ts +16 -3
- package/src/ssr/compact-shell.browser-harness.ts +30 -22
- package/src/ssr/dialog-app-colors.browser-harness.tsx +43 -0
- package/src/ssr/help-messages.ts +4 -0
- package/src/ssr/help.ts +20 -0
- package/src/ssr/hints.ts +25 -0
- package/src/ssr/index.ts +2 -0
- package/src/ssr/islands/index.ts +4 -3
- package/src/ssr/layout-context.ts +2 -0
- package/src/ssr/layout-help-article.server.ts +50 -0
- package/src/ssr/layout-help-start.ts +33 -7
- package/src/ssr/panel-consent.ts +29 -0
- package/src/ssr/panel-context.ts +10 -0
- package/src/ssr/panel-slot.browser-harness.tsx +53 -4
- package/src/ssr/platform-messages.ts +18 -0
- package/src/ssr/shell-data.tsx +2 -1
- package/src/styles/effects.css +198 -9
- package/src/styles/file-chooser.css +2 -1
- package/src/styles/global.css +49 -12
- package/src/styles/panel.css +47 -4
- package/src/styles/resource-search.css +6 -2
- package/src/styles/tokens.css +17 -11
- package/src/styles/utilities-buttons.css +3 -2
- package/src/styles/utilities-data.css +2 -1
- package/src/styles/utilities-feedback.css +2 -2
- package/src/styles/utilities-layout.css +3 -13
- package/src/styles/utilities-markdown-editor.css +6 -6
- package/src/styles/utilities-navigation.css +17 -22
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
.md-editor-tool {
|
|
96
96
|
@apply inline-flex items-center justify-center;
|
|
97
97
|
@apply w-7 h-7 rounded;
|
|
98
|
-
@apply text-
|
|
98
|
+
@apply text-dimmed;
|
|
99
99
|
@apply hover:bg-zinc-200 hover:text-zinc-800;
|
|
100
100
|
@apply dark:hover:bg-zinc-700 dark:hover:text-zinc-100;
|
|
101
101
|
@apply transition-colors;
|
|
@@ -339,7 +339,7 @@
|
|
|
339
339
|
pointer-events: none !important;
|
|
340
340
|
user-select: none !important;
|
|
341
341
|
z-index: 0 !important;
|
|
342
|
-
@apply text-
|
|
342
|
+
@apply text-dimmed;
|
|
343
343
|
white-space: pre-wrap !important;
|
|
344
344
|
word-wrap: break-word !important;
|
|
345
345
|
word-break: normal !important;
|
|
@@ -354,7 +354,7 @@
|
|
|
354
354
|
on-screen but dimmed so prose stands out. */
|
|
355
355
|
.md-syntax,
|
|
356
356
|
.md-marker {
|
|
357
|
-
@apply text-
|
|
357
|
+
@apply text-dimmed;
|
|
358
358
|
}
|
|
359
359
|
|
|
360
360
|
/* Bold + headers via `text-shadow` instead of `font-weight`.
|
|
@@ -422,7 +422,7 @@
|
|
|
422
422
|
doesn't affect layout, unlike border-left or padding-left). The bar
|
|
423
423
|
sits visually outside the text column edge so prose stays aligned. */
|
|
424
424
|
.md-quote {
|
|
425
|
-
@apply text-
|
|
425
|
+
@apply text-dimmed;
|
|
426
426
|
box-shadow: inset 3px 0 0 var(--color-zinc-300);
|
|
427
427
|
}
|
|
428
428
|
|
|
@@ -475,7 +475,7 @@
|
|
|
475
475
|
/* Horizontal rule (---) — just dim the marker; can't draw an actual
|
|
476
476
|
rule line without inserting layout-shifting elements. */
|
|
477
477
|
.md-hr {
|
|
478
|
-
@apply text-
|
|
478
|
+
@apply text-dimmed;
|
|
479
479
|
}
|
|
480
480
|
|
|
481
481
|
/* Completion match — every occurrence of a registered completion
|
|
@@ -498,7 +498,7 @@
|
|
|
498
498
|
.md-editor-stats {
|
|
499
499
|
@apply flex justify-start items-center gap-3;
|
|
500
500
|
@apply px-3 py-1;
|
|
501
|
-
@apply text-[10px] text-
|
|
501
|
+
@apply text-[10px] text-dimmed;
|
|
502
502
|
@apply font-mono select-none;
|
|
503
503
|
letter-spacing: 0.02em;
|
|
504
504
|
}
|
|
@@ -176,12 +176,16 @@
|
|
|
176
176
|
}
|
|
177
177
|
}
|
|
178
178
|
|
|
179
|
+
/* The current navigation target carries the app's navigation fill and ink. */
|
|
179
180
|
@utility sidebar-icon-action-active {
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
box-shadow:
|
|
183
|
-
|
|
184
|
-
|
|
181
|
+
color: var(--ui-app-accent-text);
|
|
182
|
+
background: var(--ui-app-selected-nav);
|
|
183
|
+
box-shadow: none;
|
|
184
|
+
|
|
185
|
+
&:hover {
|
|
186
|
+
color: var(--ui-app-accent-text);
|
|
187
|
+
background: var(--ui-app-selected-nav);
|
|
188
|
+
}
|
|
185
189
|
}
|
|
186
190
|
|
|
187
191
|
@utility sidebar-icon-action-success {
|
|
@@ -225,7 +229,7 @@
|
|
|
225
229
|
|
|
226
230
|
@utility sidebar-item-active {
|
|
227
231
|
position: relative;
|
|
228
|
-
background: var(--ui-selected);
|
|
232
|
+
background: var(--ui-app-selected-nav);
|
|
229
233
|
color: var(--ui-app-accent-text);
|
|
230
234
|
@apply font-medium;
|
|
231
235
|
box-shadow: var(--ui-shadow-surface);
|
|
@@ -714,7 +718,7 @@
|
|
|
714
718
|
@utility list-item-active {
|
|
715
719
|
border-left: 0;
|
|
716
720
|
position: relative;
|
|
717
|
-
background: var(--ui-selected);
|
|
721
|
+
background: var(--ui-app-selected);
|
|
718
722
|
color: var(--ui-app-accent-text);
|
|
719
723
|
@apply rounded-lg font-medium;
|
|
720
724
|
box-shadow: var(--ui-shadow-surface);
|
|
@@ -1047,23 +1051,14 @@
|
|
|
1047
1051
|
padding: 0 0.25rem;
|
|
1048
1052
|
}
|
|
1049
1053
|
|
|
1054
|
+
/* The box and the app ink; the chip comes from the shared `k2b-icon-tile` on the same element. */
|
|
1050
1055
|
.sidebar-header-icon {
|
|
1051
1056
|
width: 1.4375rem;
|
|
1052
1057
|
height: 1.4375rem;
|
|
1053
|
-
border-radius: 0.4375rem;
|
|
1054
|
-
background: color-mix(in srgb, var(--app-accent, var(--color-blue-500)) 9%, transparent) !important;
|
|
1055
|
-
color: color-mix(in srgb, var(--app-accent, var(--color-blue-500)) 80%, black) !important;
|
|
1056
|
-
box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--app-accent, var(--color-blue-500)) 16%, transparent);
|
|
1057
|
-
}
|
|
1058
|
-
|
|
1059
|
-
.sidebar-header-icon-mobile {
|
|
1060
|
-
background: color-mix(in srgb, var(--app-accent, var(--color-blue-500)) 9%, transparent) !important;
|
|
1061
|
-
color: color-mix(in srgb, var(--app-accent, var(--color-blue-500)) 80%, black) !important;
|
|
1062
|
-
box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--app-accent, var(--color-blue-500)) 16%, transparent);
|
|
1063
1058
|
}
|
|
1064
1059
|
|
|
1065
|
-
|
|
1066
|
-
color:
|
|
1060
|
+
:is(.sidebar-header-icon, .sidebar-header-icon-mobile) {
|
|
1061
|
+
color: var(--ui-app-accent-text) !important;
|
|
1067
1062
|
}
|
|
1068
1063
|
|
|
1069
1064
|
.sidebar-header-title {
|
|
@@ -1100,8 +1095,8 @@
|
|
|
1100
1095
|
|
|
1101
1096
|
.sidebar-icon-action-active {
|
|
1102
1097
|
color: var(--ui-app-accent-text);
|
|
1103
|
-
background: var(--ui-selected);
|
|
1104
|
-
box-shadow:
|
|
1098
|
+
background: var(--ui-app-selected-nav);
|
|
1099
|
+
box-shadow: none;
|
|
1105
1100
|
}
|
|
1106
1101
|
|
|
1107
1102
|
:is(.sidebar-item-active, .list-item-active) {
|
|
@@ -1114,7 +1109,7 @@
|
|
|
1114
1109
|
}
|
|
1115
1110
|
|
|
1116
1111
|
.file-tree > li > div[data-state="selected"] {
|
|
1117
|
-
background: var(--ui-selected) !important;
|
|
1112
|
+
background: var(--ui-app-selected) !important;
|
|
1118
1113
|
box-shadow: none !important;
|
|
1119
1114
|
}
|
|
1120
1115
|
|