Skip to content

Commit cbd07a3

Browse files
committed
updates
1 parent 2006ef0 commit cbd07a3

3 files changed

Lines changed: 28 additions & 8 deletions

File tree

packages/ui/src/features/loops/components/LoopBehaviorFields.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ export function LoopBehaviorFields({
2626
Auto-fix pull requests
2727
</Text>
2828
<Text className="text-[12px] text-gray-10">
29-
Watch CI and review comments on PRs this loop opens, and let
30-
PostHog push fixes.
29+
Watch CI and review comments on PRs this loop opens, and let PostHog
30+
push fixes.
3131
</Text>
3232
</Flex>
3333
<Switch

packages/ui/src/features/loops/components/LoopsListView.tsx

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import {
22
ArrowSquareOutIcon,
33
ArrowUpIcon,
44
ClockIcon,
5+
CloudIcon,
56
LightningIcon,
67
PlugsIcon,
78
PlusIcon,
@@ -86,10 +87,26 @@ export function LoopsListView() {
8687
>
8788
<Flex align="center" justify="between" gap="3">
8889
<Flex direction="column" gap="1" className="min-w-0">
89-
<Heading className="font-bold text-2xl">Loops</Heading>
90-
<Text color="gray" className="text-sm">
90+
<Flex align="center" gap="2">
91+
<Heading className="font-bold text-2xl">Loops</Heading>
92+
<Flex
93+
align="center"
94+
className="gap-1.5 rounded-full bg-(--accent-a3) px-2.5 py-1"
95+
>
96+
<CloudIcon
97+
size={12}
98+
weight="fill"
99+
className="text-(--accent-11)"
100+
/>
101+
<Text className="font-medium text-(--accent-11) text-[11px]">
102+
Runs entirely in the cloud
103+
</Text>
104+
</Flex>
105+
</Flex>
106+
<Text color="gray" className="max-w-2xl text-sm">
91107
Put your work on autopilot. Loops run on a schedule, on an API
92-
call, or when something happens on GitHub.
108+
call, or when something happens on GitHub. You can finally
109+
close the laptop!
93110
</Text>
94111
</Flex>
95112
<Button variant="solid" size="2" onClick={startBlank}>
@@ -288,7 +305,7 @@ function TemplateCard({
288305
const GETTING_STARTED_STEPS = [
289306
"Describe what you want, or start from a template",
290307
"Pick when it runs and what it can touch",
291-
"Review it once, then it runs unattended and reports back",
308+
"Review it once, then it runs unattended in the cloud and reports back",
292309
];
293310

294311
function LoopsEmptyState() {
@@ -306,7 +323,8 @@ function LoopsEmptyState() {
306323
Create your first loop
307324
</Text>
308325
<Text className="text-[13px] text-gray-11 leading-relaxed">
309-
Set it up once and it keeps running on its own.
326+
Set it up once and it keeps running on its own, even with your
327+
laptop closed.
310328
</Text>
311329
</Flex>
312330
<div className="flex flex-col gap-2">

packages/ui/src/features/loops/loopFormTypes.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,9 @@ export function emptyLoopFormValues(): LoopFormValues {
118118
/** A context-attached loop files its runs into the context's shared feed, so it must be
119119
* team-visible. The backend rejects personal + context; this keeps form state consistent
120120
* for prefills (e.g. "New loop" from a context page) and legacy loops. */
121-
export function normalizeLoopFormValues(values: LoopFormValues): LoopFormValues {
121+
export function normalizeLoopFormValues(
122+
values: LoopFormValues,
123+
): LoopFormValues {
122124
if (values.contextTarget && values.visibility !== "team") {
123125
return { ...values, visibility: "team" };
124126
}

0 commit comments

Comments
 (0)