Skip to content

Commit feae61a

Browse files
fix(core,tools): Fix TypeScript compilation errors
- Export ToolScopeItemResponseModel and ToolItemResponseModel types - Remove unused imports (nothing, state) - Fix UserGroupService import (was type, needs to be value) - Fix modal manager null checks - Fix modal result handling with onSubmit() - Remove non-existent description property access Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 5ca2eaa commit feae61a

5 files changed

Lines changed: 17 additions & 12 deletions

File tree

Umbraco.AI/src/Umbraco.AI.Web.StaticAssets/Client/src/core/components/user-group-settings-list/user-group-settings-list.element.ts

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import {
22
css,
33
customElement,
44
html,
5-
nothing,
65
property,
76
repeat,
87
state,
@@ -14,7 +13,7 @@ import { UmbChangeEvent } from "@umbraco-cms/backoffice/event";
1413
import type { UmbModalToken } from "@umbraco-cms/backoffice/modal";
1514
import { UMB_MODAL_MANAGER_CONTEXT } from "@umbraco-cms/backoffice/modal";
1615
import { UMB_USER_GROUP_PICKER_MODAL } from "@umbraco-cms/backoffice/user-group";
17-
import type { UserGroupService } from "@umbraco-cms/backoffice/external/backend-api";
16+
import { UserGroupService } from "@umbraco-cms/backoffice/external/backend-api";
1817
import { tryExecuteAndNotify } from "@umbraco-cms/backoffice/resources";
1918

2019
/**
@@ -186,6 +185,7 @@ export class UaiUserGroupSettingsListElement<TSettings> extends UmbLitElement {
186185
*/
187186
private async _addUserGroup(): Promise<void> {
188187
const modalManager = await this.getContext(UMB_MODAL_MANAGER_CONTEXT);
188+
if (!modalManager) return;
189189

190190
// 1. Open user group picker
191191
const pickerResult = await modalManager.open(this, UMB_USER_GROUP_PICKER_MODAL, {
@@ -194,11 +194,12 @@ export class UaiUserGroupSettingsListElement<TSettings> extends UmbLitElement {
194194
},
195195
});
196196

197-
if (!pickerResult || !pickerResult.selection || pickerResult.selection.length === 0) {
197+
const pickerValue = await pickerResult?.onSubmit();
198+
if (!pickerValue || !pickerValue.selection || pickerValue.selection.length === 0) {
198199
return;
199200
}
200201

201-
const userGroupId = pickerResult.selection[0];
202+
const userGroupId = pickerValue.selection[0];
202203

203204
// Check if already configured
204205
if (this.value[userGroupId]) {
@@ -211,10 +212,11 @@ export class UaiUserGroupSettingsListElement<TSettings> extends UmbLitElement {
211212

212213
// 3. Open editor modal
213214
const modalData = this.config.editorModal.createData(userGroupId, userGroupName);
214-
const modalResult = await modalManager.open(this, this.config.editorModal.token, {
215+
const modal = modalManager.open(this, this.config.editorModal.token, {
215216
data: modalData,
216217
});
217218

219+
const modalResult = await modal.onSubmit();
218220
if (!modalResult) {
219221
return;
220222
}
@@ -230,14 +232,17 @@ export class UaiUserGroupSettingsListElement<TSettings> extends UmbLitElement {
230232
*/
231233
private async _editUserGroup(userGroupId: string): Promise<void> {
232234
const modalManager = await this.getContext(UMB_MODAL_MANAGER_CONTEXT);
235+
if (!modalManager) return;
236+
233237
const userGroupName = (await this._getUserGroupName(userGroupId)) ?? userGroupId;
234238
const existingSettings = this.value[userGroupId];
235239

236240
const modalData = this.config.editorModal.createData(userGroupId, userGroupName, existingSettings);
237-
const modalResult = await modalManager.open(this, this.config.editorModal.token, {
241+
const modal = modalManager.open(this, this.config.editorModal.token, {
238242
data: modalData,
239243
});
240244

245+
const modalResult = await modal.onSubmit();
241246
if (!modalResult) {
242247
return;
243248
}

Umbraco.AI/src/Umbraco.AI.Web.StaticAssets/Client/src/tool/components/tool-permissions-override/tool-permissions-override.element.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import {
22
css,
33
customElement,
44
html,
5-
nothing,
65
property,
76
repeat,
87
state,

Umbraco.AI/src/Umbraco.AI.Web.StaticAssets/Client/src/tool/components/tool-scope-permissions-override/tool-scope-permissions-override.element.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,8 @@ import {
22
css,
33
customElement,
44
html,
5-
nothing,
65
property,
76
repeat,
8-
state,
97
when,
108
} from "@umbraco-cms/backoffice/external/lit";
119
import { UmbLitElement } from "@umbraco-cms/backoffice/lit-element";
@@ -149,7 +147,7 @@ export class UaiToolScopePermissionsOverrideElement extends UmbLitElement {
149147
const camelCaseId = toCamelCase(scope.id);
150148
const localizedName = this.localize.term(`uaiToolScope_${camelCaseId}Label`) || scope.id;
151149
const localizedDescription =
152-
this.localize.term(`uaiToolScope_${camelCaseId}Description`) || scope.description || "";
150+
this.localize.term(`uaiToolScope_${camelCaseId}Description`) || "";
153151

154152
return {
155153
value: scope.id,

Umbraco.AI/src/Umbraco.AI.Web.StaticAssets/Client/src/tool/components/tool-scope-picker/tool-scope-picker.element.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ export class UaiToolScopePickerElement extends UmbFormControlMixin<string[] | un
108108
const camelCaseId = toCamelCase(scope.id);
109109
const localizedName = this.localize.term(`uaiToolScope_${camelCaseId}Label`) || scope.id;
110110
const localizedDescription =
111-
this.localize.term(`uaiToolScope_${camelCaseId}Description`) || scope.description || "";
111+
this.localize.term(`uaiToolScope_${camelCaseId}Description`) || "";
112112

113113
return {
114114
id: scope.id,
@@ -161,7 +161,7 @@ export class UaiToolScopePickerElement extends UmbFormControlMixin<string[] | un
161161
const camelCaseId = toCamelCase(scope.id);
162162
const localizedName = this.localize.term(`uaiToolScope_${camelCaseId}Label`) || scope.id;
163163
const localizedDescription =
164-
this.localize.term(`uaiToolScope_${camelCaseId}Description`) || scope.description || "";
164+
this.localize.term(`uaiToolScope_${camelCaseId}Description`) || "";
165165

166166
return {
167167
value: scope.id,

Umbraco.AI/src/Umbraco.AI.Web.StaticAssets/Client/src/tool/repository/tool.repository.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@ import type { UmbControllerHost } from "@umbraco-cms/backoffice/controller-api";
33
import { UaiToolServerDataSource } from "./tool.server.data-source.js";
44
import type { ToolScopeItemResponseModel, ToolItemResponseModel } from "../../api/types.gen.js";
55

6+
// Re-export types for use by other components
7+
export type { ToolScopeItemResponseModel, ToolItemResponseModel };
8+
69
/**
710
* Repository for tool operations.
811
*/

0 commit comments

Comments
 (0)