mirror of
https://github.com/different-ai/openwork
synced 2026-04-25 17:15:34 +02:00
chore(app): remove notion banner remnants
This commit is contained in:
13
AGENTS.md
13
AGENTS.md
@@ -130,6 +130,19 @@ Design principles for hot reload:
|
||||
* Use `DESIGN-LANGUAGE.md` as the default visual reference for OpenWork app and landing work.
|
||||
* For OpenWork session-surface details, also reference `packages/docs/orbita-layout-style.mdx`.
|
||||
|
||||
## App Architecture (CUPID)
|
||||
|
||||
For `apps/app/src/app/**`, use CUPID: small public surfaces, intention-revealing names, minimal dependencies, predictable ownership, and domain-based structure.
|
||||
|
||||
* Organize app code by product domain and app behavior, not generic buckets like `pages`, `hooks`, `utils`, or app-wide props.
|
||||
* Prefer a thin shell, domain modules, and tiny shared primitives.
|
||||
* Colocate state, UI, helpers, and server/client adapters with the domain that owns the workflow.
|
||||
* Treat shared utilities as a last resort; promote only after multiple real consumers exist.
|
||||
* Cross-domain imports should go through a small public API, not another domain's internals.
|
||||
* Keep global shell code thin and use it for routing, top-level layout, runtime wiring, and shared reload/update surfaces only.
|
||||
* Domain map: shell, workspace, session, connections, automations, cloud, app-settings, and kernel.
|
||||
* When changing app architecture, moving ownership, or editing hot spots like `app.tsx`, `pages/dashboard.tsx`, `pages/session.tsx`, or `pages/settings.tsx`, consult the workspace-root skill at `../../.opencode/skills/cupid-app-architecture/SKILL.md` first.
|
||||
|
||||
## Dev Debugging
|
||||
|
||||
* If you change `apps/server/src`, rebuild the OpenWork server binary (`pnpm --filter openwork-server build:bin`) because `openwork` (openwork-orchestrator) runs the compiled server, not the TS sources.
|
||||
|
||||
@@ -45,8 +45,6 @@ type ComposerProps = {
|
||||
onToggleAgentPicker: () => void;
|
||||
onSelectAgent: (agent: string | null) => void;
|
||||
setAgentPickerRef: (el: HTMLDivElement) => void;
|
||||
showNotionBanner: boolean;
|
||||
onNotionBannerClick: () => void;
|
||||
toast: string | null;
|
||||
onToast: (message: string) => void;
|
||||
listAgents: () => Promise<Agent[]>;
|
||||
@@ -1623,17 +1621,6 @@ export default function Composer(props: ComposerProps) {
|
||||
</Show>
|
||||
|
||||
<div class="p-5 md:p-6">
|
||||
<Show when={props.showNotionBanner}>
|
||||
<button
|
||||
type="button"
|
||||
class="w-full mb-2 flex items-center justify-between gap-3 rounded-xl border border-green-7/20 bg-green-7/10 px-3 py-2 text-left text-sm text-green-12 transition-colors hover:bg-green-7/15"
|
||||
onClick={props.onNotionBannerClick}
|
||||
>
|
||||
<span>Try it now: set up my CRM in Notion</span>
|
||||
<span class="text-xs text-green-12 font-medium">Insert prompt</span>
|
||||
</button>
|
||||
</Show>
|
||||
|
||||
<Show when={attachments().length}>
|
||||
<div class="mb-3 flex flex-wrap gap-2">
|
||||
<For each={attachments()}>
|
||||
|
||||
@@ -210,11 +210,6 @@ export type SettingsViewProps = {
|
||||
pickAuthorizedFolder: () => Promise<void>;
|
||||
removeAuthorizedFolder: (folder: string) => Promise<void>;
|
||||
resetAppConfigDefaults: () => Promise<{ ok: boolean; message: string }>;
|
||||
notionStatus: "disconnected" | "connecting" | "connected" | "error";
|
||||
notionStatusDetail: string | null;
|
||||
notionError: string | null;
|
||||
notionBusy: boolean;
|
||||
connectNotion: () => void;
|
||||
engineDoctorVersion: string | null;
|
||||
openDebugDeepLink: (
|
||||
rawUrl: string,
|
||||
@@ -494,32 +489,6 @@ export default function SettingsView(props: SettingsViewProps) {
|
||||
props.checkForUpdates();
|
||||
};
|
||||
|
||||
const notionStatusLabel = () => {
|
||||
switch (props.notionStatus) {
|
||||
case "connected":
|
||||
return "Connected";
|
||||
case "connecting":
|
||||
return "Reload required";
|
||||
case "error":
|
||||
return "Connection failed";
|
||||
default:
|
||||
return "Not connected";
|
||||
}
|
||||
};
|
||||
|
||||
const notionStatusStyle = () => {
|
||||
if (props.notionStatus === "connected") {
|
||||
return "bg-green-7/10 text-green-11 border-green-7/20";
|
||||
}
|
||||
if (props.notionStatus === "error") {
|
||||
return "bg-red-7/10 text-red-11 border-red-7/20";
|
||||
}
|
||||
if (props.notionStatus === "connecting") {
|
||||
return "bg-amber-7/10 text-amber-11 border-amber-7/20";
|
||||
}
|
||||
return "bg-gray-4/60 text-gray-11 border-gray-7/50";
|
||||
};
|
||||
|
||||
const [providerConnectError, setProviderConnectError] = createSignal<
|
||||
string | null
|
||||
>(null);
|
||||
|
||||
Reference in New Issue
Block a user