Skip to content
Draft
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
0185c0a
init functinoality
royendo Dec 16, 2025
47c11ed
nit fix for saving
royendo Dec 16, 2025
8b57993
prettier
royendo Dec 16, 2025
0da0d0f
code qual
royendo Dec 16, 2025
e50214e
pretty
royendo Dec 16, 2025
da5d2c1
qual
royendo Dec 16, 2025
7ba537f
adding buttons
royendo Dec 17, 2025
d155dbb
mangeprjoect access only
royendo Dec 17, 2025
6edc05b
simple UI will replace
royendo Dec 17, 2025
6e89198
push/pull functionality
royendo Dec 17, 2025
dadaa3d
Merge branch 'main' into feat/env-ui-editor
royendo Feb 5, 2026
3fa7726
change button to disabled if no project synced
royendo Feb 5, 2026
17c7cf8
update behavior
royendo Feb 5, 2026
6d432c6
code fail
royendo Feb 5, 2026
d1ce955
code qual + prettier
royendo Feb 5, 2026
89c4be7
migrate APIs to runtime
k-anshul Feb 20, 2026
e7f9123
Merge remote-tracking branch 'origin/main' into feat/env-ui-editor
k-anshul Feb 20, 2026
b84fd15
prettier fixes
k-anshul Feb 20, 2026
cf5fd00
update css with themes
royendo Feb 20, 2026
12b0825
api changes
k-anshul Feb 26, 2026
6c232be
config reloader changes
k-anshul Feb 26, 2026
eb39ae9
minor changes
k-anshul Feb 26, 2026
45cbaed
some more minor changes
k-anshul Feb 27, 2026
4df228a
some more minor changes
k-anshul Feb 27, 2026
0fa63e0
not seeing env editor for .dev.env fix
royendo Mar 3, 2026
fd71ded
Merge remote-tracking branch 'origin/main' into feat/env-ui-editor
royendo Mar 3, 2026
4b2569b
make proto.generate
royendo Mar 3, 2026
85cb061
make proto.generate
royendo Mar 3, 2026
13e4a57
prettier
royendo Mar 3, 2026
7a9301e
Merge branch 'feat/env-ui-editor' of https://github.com/rilldata/rill…
royendo Mar 3, 2026
fe8db58
Merge branch 'main' into feat/env-ui-editor
royendo Mar 3, 2026
baace21
4-7
royendo Mar 3, 2026
3c2247c
8-15
royendo Mar 3, 2026
c6f503f
prettier
royendo Mar 3, 2026
09db430
Merge remote-tracking branch 'origin/main' into feat/env-ui-editor
k-anshul Mar 6, 2026
df84695
vars renames
k-anshul Mar 6, 2026
85d3b75
Merge remote-tracking branch 'origin/main' into feat/env-ui-editor
royendo Mar 30, 2026
f057da9
fix and migration
royendo Mar 30, 2026
43e22c5
web code wual fixes
royendo Mar 30, 2026
d142b6a
prettier
royendo Mar 30, 2026
0a32b5b
code qual
royendo Mar 30, 2026
830c38b
go code
royendo Mar 30, 2026
be2686c
Merge remote-tracking branch 'origin/main' into feat/env-ui-editor
k-anshul Apr 10, 2026
5523577
simplification
k-anshul Apr 10, 2026
e0b3845
more simplifactions
k-anshul Apr 10, 2026
2d0d9c9
add code removed by merge conflicts
k-anshul Apr 10, 2026
1ca1e0a
Merge remote-tracking branch 'origin/main' into feat/env-ui-editor
k-anshul Apr 21, 2026
9856b6e
Update proto/rill/admin/v1/api.proto
k-anshul Apr 21, 2026
024f8dd
review comments - 1
k-anshul Apr 21, 2026
76fc504
fixes
k-anshul Apr 21, 2026
1256607
remove getvariables
k-anshul Apr 22, 2026
04bd4bf
lint fix
k-anshul Apr 22, 2026
5242b97
use repo functions
k-anshul Apr 22, 2026
86489f3
Merge remote-tracking branch 'origin/main' into feat/env-ui-editor
k-anshul Apr 22, 2026
fa5a8c2
remove pull env api
k-anshul Apr 22, 2026
ae6093c
lint fix
k-anshul Apr 22, 2026
9aef5d2
init map
k-anshul Apr 22, 2026
1c48d6d
git merge main
royendo Apr 29, 2026
a6420bb
Revert "git merge main"
royendo Apr 29, 2026
1aca2de
Merge remote-tracking branch 'origin/main' into feat/env-ui-editor
royendo Apr 29, 2026
d8e94b9
Restore PullEnv runtime API and frontend Pull dialog
royendo Apr 29, 2026
73b0b8b
revert
royendo Apr 29, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
simple UI will replace
  • Loading branch information
royendo committed Dec 17, 2025
commit 6edc05bee6d4170c4399f90d34dd93dc957cb05f
58 changes: 29 additions & 29 deletions web-common/src/features/environment-variables/EnvWorkspace.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,10 @@
const project = currentProject?.project;
const adminUrl = metadata?.adminUrl;
const hasManageProject = $manageProjectAccess ?? false;

// Only show RC URL if user has manageProject permission (is admin)
if (!project?.orgName || !project?.name || !adminUrl || !hasManageProject) return "";
if (!project?.orgName || !project?.name || !adminUrl || !hasManageProject)
return "";

// Convert admin URL to frontend URL (similar to getPlanUpgradeUrl)
let cloudUrl = adminUrl.replace("admin.rilldata", "ui.rilldata");
Expand Down Expand Up @@ -177,7 +178,7 @@
/>
</div>
</div>
<div class="ml-auto flex gap-x-2 h-full w-fit items-center">
<div class="ml-auto flex gap-x-2 h-full w-fit items-center">
{#if rcUrl}
<Button
type="secondary"
Expand All @@ -191,33 +192,32 @@
</Button>
{/if}
<Button
type="secondary"
small
onClick={() => (pullDialogOpen = true)}
class="flex items-center gap-2"
>
<Download size="14px" />
</Button>
<Button
type="secondary"
small
onClick={() => (pushDialogOpen = true)}
class="flex items-center gap-2"
>
<Upload size="14px" />
</Button>
type="secondary"
small
onClick={() => (pullDialogOpen = true)}
class="flex items-center gap-2"
>
<Download size="14px" />
</Button>
<Button
type="secondary"
small
onClick={() => (pushDialogOpen = true)}
class="flex items-center gap-2"
>
<Upload size="14px" />
</Button>
{#if viewMode === "viz"}

<Button
type="primary"
small
onClick={() => (addDialogOpen = true)}
class="flex items-center gap-2"
>
<Plus size="14px" />
<span>Add variable</span>
</Button>
{/if}
<Button
type="primary"
small
onClick={() => (addDialogOpen = true)}
class="flex items-center gap-2"
>
<Plus size="14px" />
<span>Add variable</span>
</Button>
{/if}
</div>
</div>
</div>
Expand Down
57 changes: 17 additions & 40 deletions web-common/src/features/environment-variables/PullEnvDialog.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,9 @@
DialogTrigger,
} from "@rilldata/web-common/components/dialog";
import { Copy, CheckIcon } from "lucide-svelte";
import type { EnvVariable } from "./types";

Check failure on line 13 in web-common/src/features/environment-variables/PullEnvDialog.svelte

View workflow job for this annotation

GitHub Actions / build

'EnvVariable' is defined but never used

export let open = false;
export let currentVariables: EnvVariable[] = [];

let copied = false;
let copiedTimeout: ReturnType<typeof setTimeout>;
Expand All @@ -27,7 +26,7 @@
copiedTimeout = setTimeout(() => {
copied = false;
}, 2000);
}
}
</script>

<Dialog bind:open>
Expand All @@ -43,46 +42,24 @@
</DialogDescription>
</DialogHeader>
<div class="py-4 space-y-4">
<p class="text-sm text-gray-700">
Use the Rill CLI to pull environment variables from your cloud project.
This will merge cloud variables with your local .env file.
</p>

<div class="space-y-2">
<p class="text-xs font-medium text-gray-600 uppercase">Command</p>
<div class="relative">
<div class="bg-gray-50 border border-gray-200 rounded-md p-3 pr-12 font-mono text-sm">
{pullCommand}
</div>
<button
class="absolute right-2 top-1/2 -translate-y-1/2 p-2 hover:bg-gray-100 rounded transition-colors"
on:click={handleCopyCommand}
aria-label="Copy command"
>
{#if copied}
<CheckIcon size="16px" class="text-green-600" />
{:else}
<Copy size="16px" class="text-gray-600" />
{/if}
</button>
<div class="relative">
<div
class="bg-gray-50 border border-gray-200 rounded-md p-3 pr-12 font-mono text-sm"
>
{pullCommand}
</div>
<button
class="absolute right-2 top-1/2 -translate-y-1/2 p-2 hover:bg-gray-100 rounded transition-colors"
on:click={handleCopyCommand}
aria-label="Copy command"
>
{#if copied}
<CheckIcon size="16px" class="text-green-600" />
{:else}
<Copy size="16px" class="text-gray-600" />
{/if}
</button>
</div>

<div class="space-y-2">
<p class="text-xs font-medium text-gray-600 uppercase">Options</p>
<ul class="text-sm text-gray-600 space-y-1">
<li><code class="bg-gray-100 px-1 rounded">--environment dev</code> - Pull dev environment variables (default)</li>
<li><code class="bg-gray-100 px-1 rounded">--environment prod</code> - Pull prod environment variables</li>
<li><code class="bg-gray-100 px-1 rounded">--project &lt;name&gt;</code> - Specify project name</li>
</ul>
</div>

<p class="text-xs text-gray-500">
You currently have <strong>{currentVariables.length}</strong> variable{currentVariables.length ===
1
? ""
: "s"} in your local .env file.
</p>
</div>
<DialogFooter>
<Button type="plain" onClick={() => (open = false)}>Close</Button>
Expand Down
47 changes: 17 additions & 30 deletions web-common/src/features/environment-variables/PushEnvDialog.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
import type { EnvVariable } from "./types";

export let open = false;
export let currentVariables: EnvVariable[] = [];

Check failure on line 16 in web-common/src/features/environment-variables/PushEnvDialog.svelte

View workflow job for this annotation

GitHub Actions / build

Component has unused export property 'currentVariables'. If it is for external reference only, please consider using `export const currentVariables`(unused-export-let)

let copied = false;
let copiedTimeout: ReturnType<typeof setTimeout>;
Expand Down Expand Up @@ -42,39 +42,26 @@
</DialogDescription>
</DialogHeader>
<div class="py-4 space-y-4">
<p class="text-sm text-gray-700">
Use the Rill CLI to push your local environment variables to your cloud
project. This will merge your local variables with cloud variables.
</p>

<div class="space-y-2">
<p class="text-xs font-medium text-gray-600 uppercase">Command</p>
<div class="relative">
<div
class="bg-gray-50 border border-gray-200 rounded-md p-3 pr-12 font-mono text-sm"
>
{pushCommand}
</div>
<button
class="absolute right-2 top-1/2 -translate-y-1/2 p-2 hover:bg-gray-100 rounded transition-colors"
on:click={handleCopyCommand}
aria-label="Copy command"
>
{#if copied}
<CheckIcon size="16px" class="text-green-600" />
{:else}
<Copy size="16px" class="text-gray-600" />
{/if}
</button>
<div class="relative">
<div
class="bg-gray-50 border border-gray-200 rounded-md p-3 pr-12 font-mono text-sm"
>
{pushCommand}
</div>
<button
class="absolute right-2 top-1/2 -translate-y-1/2 p-2 hover:bg-gray-100 rounded transition-colors"
on:click={handleCopyCommand}
aria-label="Copy command"
>
{#if copied}
<CheckIcon size="16px" class="text-green-600" />
{:else}
<Copy size="16px" class="text-gray-600" />
{/if}
</button>
</div>
<p class="text-xs text-gray-500">
You currently have <strong>{currentVariables.length}</strong> variable{currentVariables.length ===
1
? ""
: "s"} in your local .env file.
</p>
</div>

<DialogFooter>
<Button type="plain" onClick={() => (open = false)}>Close</Button>
</DialogFooter>
Expand Down
Loading