8000 feat(web,sdf): New SDF Secrets endpoints by vbustamante · Pull Request #2726 · systeminit/si · GitHub
[go: up one dir, main page]

Skip to content
This repository was archived by the owner on Feb 6, 2026. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
1 change: 1 addition & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions app/web/src/components/AddSecretForm.vue
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
type="textarea"
label="Description"
/>
<VormInput v-model="secretFormData.value" type="textarea" label="Value" />
<VButton
size="sm"
tone="action"
Expand All @@ -26,6 +27,7 @@
<script setup lang="ts">
import { VormInput, VButton } from "@si/vue-lib/design-system";
import { reactive } from "vue";
import * as _ from "lodash-es";
import { SecretDefinitionId, useSecretsStore } from "@/store/secrets.store";

const props = defineProps<{ definitionId: SecretDefinitionId }>();
Expand All @@ -35,6 +37,7 @@ const secretsStore = useSecretsStore();
const secretFormData = reactive({
name: "",
description: "",
value: "",
});

const saveSecret = () => {
Expand All @@ -44,5 +47,9 @@ const saveSecret = () => {
{},
secretFormData.description,
);

secretFormData.name = "";
secretFormData.description = "";
secretFormData.value = "";
};
</script>
2 changes: 1 addition & 1 deletion app/web/src/components/PropertyEditor.vue
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
v-if="featureFlagsStore.SECRETS"
class="flex flex-col w-full pt-sm px-lg"
>
<VButton label="Add Secret" @click="(e) => popoverRef.open(e)" />
<VButton label="Select Secret" @click="(e) => popoverRef.open(e)" />
<Popover ref="popoverRef" anchorDirectionX="left" anchorAlignY="bottom">
<SecretsList definitionId="Mocks" />
</Popover>
Expand Down
14 changes: 11 additions & 3 deletions app/web/src/components/SecretsList.vue
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,14 @@
/>
</div>

<AddSecretForm v-if="addingSecret" definitionId="definitionId" />
<AddSecretForm v-if="addingSecret" :definitionId="definitionId" />
<div v-else class="overflow-y-auto flex flex-col h-full">
<template v-if="secrets.length > 0">
<RequestStatusMessage
v-if="loadSecretsReq.isPending"
:requestStatus="loadSecretsReq"
loadingMessage="Loading Secrets"
/>
<template v-else-if="secrets.length > 0">
<SecretCard
v-for="secret in secrets"
:key="secret.id"
Expand All @@ -58,7 +63,8 @@
</template>

<script setup lang="ts">
import { VButton } from "@si/vue-lib/design-system";
import { VButton, RequestStatusMessage } from "@si/vue-lib/design-system";

import { ref, computed } from "vue";
import clsx from "clsx";
import { useSecretsStore, SecretDefinitionId } from "@/store/secrets.store";
Expand All @@ -69,6 +75,8 @@ const props = defineProps<{ definitionId: SecretDefinitionId }>();

const secretsStore = useSecretsStore();

const loadSecretsReq = secretsStore.getRequestStatus("LOAD_SECRETS");

const secrets = computed(
() => secretsStore.secretsByDefinitionId[props.definitionId] ?? [],
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
by {{ secret.createdInfo.actor.label }}
</i>
<VButton
:disabled="secretsStore.secretIsTransitioning[secret.id]"
class="ml-2"
size="xs"
tone="neutral"
Expand Down Expand Up @@ -50,7 +51,6 @@
</template>

<script lang="ts" setup>
import * as _ from "lodash-es";
import { computed } from "vue";
import { ResizablePanel, VButton } from "@si/vue-lib/design-system";
import { useFeatureFlagsStore } from "@/store/feature_flags.store";
Expand Down
Loading
0