Skip to content

Commit 8cb3881

Browse files
authored
fix: make vue-tsc pass for EE as well (#14635)
* fix types for EE * add test:types script
1 parent bdecd11 commit 8cb3881

File tree

12 files changed

+25
-26
lines changed

12 files changed

+25
-26
lines changed

ui/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
"check:types": "vue-tsc --noEmit",
1010
"build": "vite build --emptyOutDir",
1111
"preview": "vite preview",
12-
"test:types": "echo 'skipping, not explicit type checking on this release version'",
12+
"test:types": "vue-tsc --noEmit",
1313
"test:lint": "eslint",
1414
"test:all": "vitest run --coverage",
1515
"test:unit": "vitest run --project=unit",

ui/src/components/admin/Triggers.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@
199199
</el-table-column>
200200

201201
<el-table-column
202-
v-if="authStore.user.hasAnyAction(permission.EXECUTION, action.UPDATE)"
202+
v-if="authStore.user?.hasAnyAction(permission.EXECUTION, action.UPDATE)"
203203
columnKey="action"
204204
className="row-action"
205205
>
@@ -241,7 +241,7 @@
241241

242242
<el-button
243243
:icon="CalendarCollapseHorizontalOutline"
244-
v-if="authStore.user.hasAnyAction(permission.EXECUTION, action.UPDATE)"
244+
v-if="authStore.user?.hasAnyAction(permission.EXECUTION, action.UPDATE)"
245245
@click="setBackfillModal(scope.row, true)"
246246
size="small"
247247
type="primary"

ui/src/components/dashboard/components/Header.vue

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,7 @@
6262
load: {type: Function, default: undefined},
6363
});
6464
65-
const user = computed(() => authStore.user);
66-
const isAllowed = computed(() => user.value.isAllowedGlobal(permission.FLOW, action.CREATE));
65+
const isAllowed = computed(() => authStore.user?.isAllowed(permission.FLOW, action.CREATE, "*"));
6766
6867
const routeInfo = computed(() => ({title: props.dashboard?.title ?? t("overview")}));
6968

ui/src/components/flows/FlowCreate.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
const blueprintId = route.query.blueprintId as string;
3939
const blueprintSource = route.query.blueprintSource as BlueprintType;
4040
const blueprintSourceYaml = route.query.blueprintSourceYaml as string;
41-
const implicitDefaultNamespace = authStore.user.getNamespacesForAction(
41+
const implicitDefaultNamespace = authStore.user?.getNamespacesForAction(
4242
permission.FLOW,
4343
action.CREATE,
4444
)[0];

ui/src/components/flows/Flows.vue

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@
171171
/>
172172

173173
<el-table-column
174-
v-else-if="colProp === 'state.startDate' && user.hasAny(permission.EXECUTION)"
174+
v-else-if="colProp === 'state.startDate' && user?.hasAny(permission.EXECUTION)"
175175
prop="state.startDate"
176176
:label="$t('last execution date')"
177177
>
@@ -194,7 +194,7 @@
194194
</el-table-column>
195195

196196
<el-table-column
197-
v-else-if="colProp === 'state.current' && user.hasAny(permission.EXECUTION)"
197+
v-else-if="colProp === 'state.current' && user?.hasAny(permission.EXECUTION)"
198198
prop="state.current"
199199
:label="$t('last execution status')"
200200
>
@@ -221,7 +221,7 @@
221221
</el-table-column>
222222

223223
<el-table-column
224-
v-else-if="colProp === 'state' && user.hasAny(permission.EXECUTION)"
224+
v-else-if="colProp === 'state' && user?.hasAny(permission.EXECUTION)"
225225
prop="state"
226226
:label="$t('execution statistics')"
227227
className="row-graph"
@@ -423,10 +423,11 @@
423423
424424
const user = computed(() => authStore.user);
425425
const canCheck = computed(() => canRead.value || canDelete.value || canUpdate.value);
426-
const canCreate = computed(() => user.value?.hasAnyActionOnAnyNamespace(permission.FLOW, action.CREATE));
427-
const canRead = computed(() => user.value?.isAllowed(permission.FLOW, action.READ, route.query.namespace));
428-
const canDelete = computed(() => user.value?.isAllowed(permission.FLOW, action.DELETE, route.query.namespace));
429-
const canUpdate = computed(() => user.value?.isAllowed(permission.FLOW, action.UPDATE, route.query.namespace));
426+
const canCreate = computed(() => user?.value?.hasAnyActionOnAnyNamespace(permission.FLOW, action.CREATE));
427+
const routeNamespace = computed(() => route.query.namespace as string | undefined);
428+
const canRead = computed(() => user?.value?.isAllowed(permission.FLOW, action.READ, routeNamespace.value));
429+
const canDelete = computed(() => user?.value?.isAllowed(permission.FLOW, action.DELETE, routeNamespace.value));
430+
const canUpdate = computed(() => user?.value?.isAllowed(permission.FLOW, action.UPDATE, routeNamespace.value));
430431
431432
const routeInfo = computed(() => ({title: t("flows")}));
432433

ui/src/components/inputs/EditorWrapper.vue

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -144,9 +144,8 @@
144144
const savedSource = computed(() => props.flow ? flowStore.flowYamlOrigin : savedSourceNS.value);
145145
146146
const aiCopilotAllowed = computed(() => {
147-
return authStore.user?.isAllowedGlobal(permission.AI_COPILOT, action.READ);
148-
}
149-
)
147+
return authStore.user?.isAllowed(permission.AI_COPILOT, action.READ, namespace.value);
148+
});
150149
151150
async function loadFile() {
152151
if (props.dirty || props.flow) return;

ui/src/components/kv/KVTable.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -556,7 +556,7 @@
556556
557557
function removeKvs() {
558558
const groupedByNamespace = _groupBy(selection.value, "namespace");
559-
const withDeletePermissionGroupedKvs = Object.fromEntries(Object.entries(groupedByNamespace).filter(([namespace]) => authStore.user.isAllowed(permission.KVSTORE, action.DELETE, namespace)));
559+
const withDeletePermissionGroupedKvs = Object.fromEntries(Object.entries(groupedByNamespace).filter(([namespace]) => authStore.user?.isAllowed(permission.KVSTORE, action.DELETE, namespace)));
560560
const withDeletePermissionNamespaces = Object.keys(withDeletePermissionGroupedKvs);
561561
const withoutDeletePermissionNamespaces = Object.keys(groupedByNamespace).filter(n => !withDeletePermissionNamespaces.includes(n));
562562
toast.confirm(

ui/src/components/onboarding/Welcome.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@
103103
const isOSS = computed(() => useMiscStore().configs?.edition === "OSS")
104104
105105
const canCreate = computed(() => {
106-
return authStore.user.hasAnyActionOnAnyNamespace(permission.FLOW, action.CREATE);
106+
return authStore.user?.hasAnyActionOnAnyNamespace(permission.FLOW, action.CREATE);
107107
});
108108
109109
useRouteContext(routeInfo);

ui/src/composables/useFlowTemplateEdit.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,9 @@ export function useFlowTemplateEdit(dataType: string, route: any, router: any, t
3838

3939
const canSave = computed(() => canSaveFlowTemplate(true, authStore.user, item.value, dataType))
4040

41-
const canCreate = computed(() => dataType === "flow" && authStore.user.isAllowed(permission.FLOW, action.CREATE, item.value?.namespace))
41+
const canCreate = computed(() => dataType === "flow" && authStore.user?.isAllowed(permission.FLOW, action.CREATE, item.value?.namespace))
4242

43-
const canExecute = computed(() => dataType === "flow" && authStore.user.isAllowed(permission.EXECUTION, action.CREATE, item.value?.namespace))
43+
const canExecute = computed(() => dataType === "flow" && authStore.user?.isAllowed(permission.EXECUTION, action.CREATE, item.value?.namespace))
4444

4545
const routeInfo = computed(() => {
4646
const routeInfo = {

ui/src/mixins/flowTemplateEdit.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,10 @@ export default {
4949
return canSaveFlowTemplate(true, this.authStore.user, this.item, this.dataType);
5050
},
5151
canCreate() {
52-
return this.dataType === "flow" && this.authStore.user.isAllowed(permission.FLOW, action.CREATE, this.item.namespace)
52+
return this.dataType === "flow" && this.authStore.user?.isAllowed(permission.FLOW, action.CREATE, this.item.namespace)
5353
},
5454
canExecute() {
55-
return this.dataType === "flow" && this.authStore.user.isAllowed(permission.EXECUTION, action.CREATE, this.item.namespace)
55+
return this.dataType === "flow" && this.authStore.user?.isAllowed(permission.EXECUTION, action.CREATE, this.item.namespace)
5656
},
5757
routeInfo() {
5858
let route = {

0 commit comments

Comments
 (0)