Date: Sat, 14 Feb 2026 11:23:43 +0100
Subject: [PATCH 5/7] Fix lint errors in storybook
---
storybook/src/admin/stack/StackBreadcrumbs.stories.tsx | 4 +++-
.../src/admin/stack/StackTableFormQueryAtStack.stories.tsx | 4 +++-
.../src/admin/stack/StackTableFormQueryInTable.stories.tsx | 4 +++-
storybook/src/admin/table/TableBesidesForm.stories.tsx | 4 +++-
.../admin/table/TableBesidesFormSelectionHooks.stories.tsx | 4 +++-
.../src/docs/components/Table/08_SelectionTable.stories.tsx | 5 +++--
storybook/src/docs/icons/AllIcons.stories.tsx | 4 +++-
7 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/storybook/src/admin/stack/StackBreadcrumbs.stories.tsx b/storybook/src/admin/stack/StackBreadcrumbs.stories.tsx
index 8997b951a01..0e00780d75b 100644
--- a/storybook/src/admin/stack/StackBreadcrumbs.stories.tsx
+++ b/storybook/src/admin/stack/StackBreadcrumbs.stories.tsx
@@ -45,7 +45,9 @@ type Args = {
function Story({ selectedBreadcrumbsNumber, selectedBreadcrumbsGroup }: Args) {
const stackApi = useStackApi();
- if (!stackApi) return null;
+ if (!stackApi) {
+ return null;
+ }
stackApi.breadCrumbs = allBreadcrumbGroups[selectedBreadcrumbsGroup][selectedBreadcrumbsNumber];
return ;
}
diff --git a/storybook/src/admin/stack/StackTableFormQueryAtStack.stories.tsx b/storybook/src/admin/stack/StackTableFormQueryAtStack.stories.tsx
index 7b1dceee2e8..dc6dcf6c0f0 100644
--- a/storybook/src/admin/stack/StackTableFormQueryAtStack.stories.tsx
+++ b/storybook/src/admin/stack/StackTableFormQueryAtStack.stories.tsx
@@ -133,7 +133,9 @@ function ExampleForm(props: IExampleFormProps) {
const { loading, data, error } = useQuery(detailQuery, { variables: { id: props.id } });
- if (error) return Error :( {error.toString()}
;
+ if (error) {
+ return Error :( {error.toString()}
;
+ }
return (
<>
diff --git a/storybook/src/admin/stack/StackTableFormQueryInTable.stories.tsx b/storybook/src/admin/stack/StackTableFormQueryInTable.stories.tsx
index 3410a22ae99..cd8da11a31d 100644
--- a/storybook/src/admin/stack/StackTableFormQueryInTable.stories.tsx
+++ b/storybook/src/admin/stack/StackTableFormQueryInTable.stories.tsx
@@ -138,7 +138,9 @@ function ExampleForm(props: IExampleFormProps) {
const { loading, data, error } = useQuery(detailQuery, { variables: { id: props.id } });
- if (error) return Error :( {error.toString()}
;
+ if (error) {
+ return Error :( {error.toString()}
;
+ }
return (
<>
diff --git a/storybook/src/admin/table/TableBesidesForm.stories.tsx b/storybook/src/admin/table/TableBesidesForm.stories.tsx
index 3af7ca8ed49..4b2aa88164e 100644
--- a/storybook/src/admin/table/TableBesidesForm.stories.tsx
+++ b/storybook/src/admin/table/TableBesidesForm.stories.tsx
@@ -80,7 +80,9 @@ function Story() {
}),
});
- if (!tableData) return null;
+ if (!tableData) {
+ return null;
+ }
return (
diff --git a/storybook/src/admin/table/TableBesidesFormSelectionHooks.stories.tsx b/storybook/src/admin/table/TableBesidesFormSelectionHooks.stories.tsx
index 63a8381ab44..70d66d78158 100644
--- a/storybook/src/admin/table/TableBesidesFormSelectionHooks.stories.tsx
+++ b/storybook/src/admin/table/TableBesidesFormSelectionHooks.stories.tsx
@@ -83,7 +83,9 @@ function Story() {
const location = useLocation();
- if (!tableData) return null;
+ if (!tableData) {
+ return null;
+ }
return (
diff --git a/storybook/src/docs/components/Table/08_SelectionTable.stories.tsx b/storybook/src/docs/components/Table/08_SelectionTable.stories.tsx
index c2ce66d1ee0..43d921ce151 100644
--- a/storybook/src/docs/components/Table/08_SelectionTable.stories.tsx
+++ b/storybook/src/docs/components/Table/08_SelectionTable.stories.tsx
@@ -65,8 +65,9 @@ export const SelectionTable = () => {
}),
});
- // eslint-disable-next-line react/jsx-no-useless-fragment
- if (!tableData) return <>>;
+ if (!tableData) {
+ return null;
+ }
return (
diff --git a/storybook/src/docs/icons/AllIcons.stories.tsx b/storybook/src/docs/icons/AllIcons.stories.tsx
index b0ca4473470..a7268480e14 100644
--- a/storybook/src/docs/icons/AllIcons.stories.tsx
+++ b/storybook/src/docs/icons/AllIcons.stories.tsx
@@ -8,7 +8,9 @@ import { useDebounce } from "use-debounce";
const iconBlockList = ["CometDigitalExperienceLogo"];
const matchesSearchQuery = (str: string, query: string): boolean => {
- if (!query.length) return true;
+ if (!query.length) {
+ return true;
+ }
let strIncludesPartOfSearchQuery = false;
From 6dae21a71ed1c2a0faf01621379f911413dab609 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Mon, 16 Feb 2026 15:44:57 +0000
Subject: [PATCH 6/7] Fix linting errors in new files from next branch merge
Co-authored-by: johnnyomair <48853629+johnnyomair@users.noreply.github.com>
---
.../generate/generateCrud/generate-service-hook-call.ts | 8 ++++++--
.../generateCrudInput/__tests__/nested-two-level.spec.ts | 4 +++-
.../generate/utils/__tests__/find-hooks-service.spec.ts | 4 +++-
3 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/packages/api/api-generator/src/commands/generate/generateCrud/generate-service-hook-call.ts b/packages/api/api-generator/src/commands/generate/generateCrud/generate-service-hook-call.ts
index bd349da36ba..46c66485075 100644
--- a/packages/api/api-generator/src/commands/generate/generateCrud/generate-service-hook-call.ts
+++ b/packages/api/api-generator/src/commands/generate/generateCrud/generate-service-hook-call.ts
@@ -16,10 +16,14 @@ export function generateServiceHookCall(
scopeProp: EntityProperty | undefined;
},
) {
- if (!hooksService) return "";
+ if (!hooksService) {
+ return "";
+ }
const hook = type === "validateCreateInput" ? hooksService.validateCreateInput : hooksService.validateUpdateInput;
- if (!hook) return "";
+ if (!hook) {
+ return "";
+ }
const options = [];
if (hook.options?.includes("currentUser")) {
options.push("currentUser: user");
diff --git a/packages/api/api-generator/src/commands/generate/generateCrudInput/__tests__/nested-two-level.spec.ts b/packages/api/api-generator/src/commands/generate/generateCrudInput/__tests__/nested-two-level.spec.ts
index 8e74910e312..85597628795 100644
--- a/packages/api/api-generator/src/commands/generate/generateCrudInput/__tests__/nested-two-level.spec.ts
+++ b/packages/api/api-generator/src/commands/generate/generateCrudInput/__tests__/nested-two-level.spec.ts
@@ -67,7 +67,9 @@ describe("nested two level", () => {
it("input dto should reference the correct import", async () => {
const out = await generateCrudInput({ requiredPermission: testPermission }, orm.em.getMetadata().get("Foo"));
const fooInputDto = out.find((f) => f.name == "dto/foo.input.ts");
- if (!fooInputDto) throw new Error();
+ if (!fooInputDto) {
+ throw new Error();
+ }
expect(fooInputDto.content).toContain(`bars: FooNestedBarInput[];`);
expect(fooInputDto.content).toContain(`import { FooNestedBarInput } from "./foo-nested-bar.input";`);
diff --git a/packages/api/api-generator/src/commands/generate/utils/__tests__/find-hooks-service.spec.ts b/packages/api/api-generator/src/commands/generate/utils/__tests__/find-hooks-service.spec.ts
index e7706d4cbaa..663c261c338 100644
--- a/packages/api/api-generator/src/commands/generate/utils/__tests__/find-hooks-service.spec.ts
+++ b/packages/api/api-generator/src/commands/generate/utils/__tests__/find-hooks-service.spec.ts
@@ -42,7 +42,9 @@ describe("find-hooks-service", () => {
metadata: orm.em.getMetadata().get("TestEntity"),
targetDirectory: __dirname,
});
- if (!hooksService) throw new Error("hooksService not found");
+ if (!hooksService) {
+ throw new Error("hooksService not found");
+ }
expect(hooksService.className).toEqual("TestEntityService");
expect(hooksService.imports).toEqual([]);
expect(hooksService.validateCreateInput).toBeDefined();
From 8b0f7975818601dabda1c688fb50d6ffb5cf89b0 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Tue, 17 Feb 2026 12:20:16 +0000
Subject: [PATCH 7/7] Move inline comments inside braces for better code style
---
demo/admin/src/documents/pages/EditPage.tsx | 3 ++-
demo/admin/src/mainMenu/components/EditMainMenuItem.tsx | 3 ++-
demo/site/src/middleware/redirectToMainHost.ts | 3 ++-
.../src/commands/generate/config/transformConfig.ts | 6 ++++--
.../src/commands/generate/utils/findRootBlocks.ts | 3 ++-
.../src/commands/generate/utils/isFieldOptional.ts | 3 ++-
packages/admin/admin/src/stack/Switch.tsx | 3 ++-
packages/admin/admin/src/table/usePersistedState.tsx | 3 ++-
packages/admin/cms-admin/src/warnings/WarningActions.tsx | 3 ++-
packages/api/cms-api/src/dam/files/file-warning.service.ts | 3 ++-
packages/api/cms-api/src/file-utils/images.util.ts | 6 ++++--
packages/api/cms-api/src/page-tree/page-tree-read-api.ts | 3 ++-
12 files changed, 28 insertions(+), 14 deletions(-)
diff --git a/demo/admin/src/documents/pages/EditPage.tsx b/demo/admin/src/documents/pages/EditPage.tsx
index c4e9040052d..0e136535b36 100644
--- a/demo/admin/src/documents/pages/EditPage.tsx
+++ b/demo/admin/src/documents/pages/EditPage.tsx
@@ -154,9 +154,10 @@ export const EditPage = ({ id }: Props) => {
{hasChanges && (
{
+ //we navigated within our self
if (location.pathname.startsWith(match.url)) {
return true;
- } //we navigated within our self
+ }
return intl.formatMessage({
id: "editPage.discardChanges",
defaultMessage: "Discard unsaved changes?",
diff --git a/demo/admin/src/mainMenu/components/EditMainMenuItem.tsx b/demo/admin/src/mainMenu/components/EditMainMenuItem.tsx
index 45510e6c500..271fdfbe710 100644
--- a/demo/admin/src/mainMenu/components/EditMainMenuItem.tsx
+++ b/demo/admin/src/mainMenu/components/EditMainMenuItem.tsx
@@ -156,9 +156,10 @@ const EditMainMenuItem = ({ item }: EditMainMenuItemProps) => {
{hasChanges && (
{
+ //we navigated within our self
if (location.pathname.startsWith(match.url)) {
return true;
- } //we navigated within our self
+ }
return intl.formatMessage(messages.saveUnsavedChanges);
}}
saveAction={handleSaveAction}
diff --git a/demo/site/src/middleware/redirectToMainHost.ts b/demo/site/src/middleware/redirectToMainHost.ts
index b12009c8d7e..0985e09a24e 100644
--- a/demo/site/src/middleware/redirectToMainHost.ts
+++ b/demo/site/src/middleware/redirectToMainHost.ts
@@ -7,9 +7,10 @@ import { type CustomMiddleware } from "./chain";
const normalizeDomain = (host: string) => (host.startsWith("www.") ? host.substring(4) : host);
const matchesHostWithAdditionalDomain = (siteConfig: PublicSiteConfig, host: string) => {
+ // non-www redirect
if (normalizeDomain(siteConfig.domains.main) === normalizeDomain(host)) {
return true;
- } // non-www redirect
+ }
if (siteConfig.domains.additional?.map(normalizeDomain).includes(normalizeDomain(host))) {
return true;
}
diff --git a/packages/admin/admin-generator/src/commands/generate/config/transformConfig.ts b/packages/admin/admin-generator/src/commands/generate/config/transformConfig.ts
index ef826e2dabf..7be21cc853b 100644
--- a/packages/admin/admin-generator/src/commands/generate/config/transformConfig.ts
+++ b/packages/admin/admin-generator/src/commands/generate/config/transformConfig.ts
@@ -69,9 +69,10 @@ export function transformConfigFile(fileName: string, sourceText: string) {
if (ts.isArrowFunction(node)) {
if (supportedInlineCodePaths.includes(path)) {
let code = node.getText();
+ // for some unknown reason node can contain the trailing comma
if (code.endsWith(",")) {
code = code.slice(0, -1);
- } // for some unknown reason node can contain the trailing comma
+ }
const imports = findUsedImports(node.body, importedIdentifiers); //find all imports used in the function body
// replace inline code with { code, imports } object
return ts.factory.createObjectLiteralExpression(
@@ -122,9 +123,10 @@ export function transformConfigFile(fileName: string, sourceText: string) {
throw new Error(`Only JsxAttributes are supported in FormattedMessage in this context: ${path}`);
}
let name = attr.name?.getText();
+ // rename to identify as formattedMessage
if (name === "id") {
name = "formattedMessageId";
- } // rename to identify as formattedMessage
+ }
if (!attr.initializer || !ts.isStringLiteral(attr.initializer)) {
throw new Error(`Only string literals are supported in FormattedMessage in this context: ${path}.${name}`);
}
diff --git a/packages/admin/admin-generator/src/commands/generate/utils/findRootBlocks.ts b/packages/admin/admin-generator/src/commands/generate/utils/findRootBlocks.ts
index 5463fcde0ef..bb046284575 100644
--- a/packages/admin/admin-generator/src/commands/generate/utils/findRootBlocks.ts
+++ b/packages/admin/admin-generator/src/commands/generate/utils/findRootBlocks.ts
@@ -21,9 +21,10 @@ export function findRootBlocks({ gqlType, targetDirectory }: { gqlType: string;
throw new Error("didn't find entity in schema types");
}
schemaEntity.fields.forEach((field) => {
+ // already defined
if (ret[field.name]) {
return;
- } // already defined
+ }
let type = field.type;
if (type.kind == "NON_NULL") {
type = type.ofType;
diff --git a/packages/admin/admin-generator/src/commands/generate/utils/isFieldOptional.ts b/packages/admin/admin-generator/src/commands/generate/utils/isFieldOptional.ts
index 333ec6518aa..88e8640d834 100644
--- a/packages/admin/admin-generator/src/commands/generate/utils/isFieldOptional.ts
+++ b/packages/admin/admin-generator/src/commands/generate/utils/isFieldOptional.ts
@@ -24,9 +24,10 @@ export const isFieldOptional = ({
if (!schemaEntity) {
throw new Error(`didn't find entity ${gqlType} in schema types`);
}
+ // this should not happen
if (schemaEntity.kind !== "OBJECT") {
throw new Error(`kind of ${gqlType} is not object, but should be.`);
- } // this should not happen
+ }
const fieldDef = schemaEntity.fields.find((field) => field.name === String(config.name));
if (!fieldDef) {
return false;
diff --git a/packages/admin/admin/src/stack/Switch.tsx b/packages/admin/admin/src/stack/Switch.tsx
index 53911e2e7ff..3c5bda646bf 100644
--- a/packages/admin/admin/src/stack/Switch.tsx
+++ b/packages/admin/admin/src/stack/Switch.tsx
@@ -199,9 +199,10 @@ const StackSwitchInner: ForwardRefRenderFunction
{Children.map(props.children, (page: ReactElement) => {
+ // don't render initial Page
if (isInitialPage(page.props.name)) {
return null;
- } // don't render initial Page
+ }
const path = `${removeTrailingSlash(subRoutePrefix)}/:id/${page.props.name}`;
if (matchPath(location.pathname, { path })) {
routeMatched = true;
diff --git a/packages/admin/admin/src/table/usePersistedState.tsx b/packages/admin/admin/src/table/usePersistedState.tsx
index 4f33e045e6d..56284281417 100644
--- a/packages/admin/admin/src/table/usePersistedState.tsx
+++ b/packages/admin/admin/src/table/usePersistedState.tsx
@@ -14,9 +14,10 @@ export function usePersistedState(defaultValue: T, options: IOptions = {}): [
const v = (stateId && allStates[stateId]) || defaultValue;
const [state, setState] = useState(v);
+ // delete from allStates as the component is mounted now and handles it's state itself
if (stateId) {
delete allStates[stateId];
- } // delete from allStates as the component is mounted now and handles it's state itself
+ }
useEffect(() => {
return () => {
diff --git a/packages/admin/cms-admin/src/warnings/WarningActions.tsx b/packages/admin/cms-admin/src/warnings/WarningActions.tsx
index ad0fac75037..810348c006e 100644
--- a/packages/admin/cms-admin/src/warnings/WarningActions.tsx
+++ b/packages/admin/cms-admin/src/warnings/WarningActions.tsx
@@ -28,9 +28,10 @@ export function WarningActions({ sourceInfo, scope }: Props) {
const dependencyObject = entityDependencyMap[sourceInfo.rootEntityName] as DependencyInterface | undefined;
+ // to some warnings it cannot be linked to. When missing a dependency or for example a failing job cannot be resolved in the admin and therefore cannot have a link
if (!dependencyObject) {
return null;
- } // to some warnings it cannot be linked to. When missing a dependency or for example a failing job cannot be resolved in the admin and therefore cannot have a link
+ }
if (dependencyObject === undefined) {
if (process.env.NODE_ENV === "development") {
diff --git a/packages/api/cms-api/src/dam/files/file-warning.service.ts b/packages/api/cms-api/src/dam/files/file-warning.service.ts
index 949b0c9bd5a..6a626cd13ad 100644
--- a/packages/api/cms-api/src/dam/files/file-warning.service.ts
+++ b/packages/api/cms-api/src/dam/files/file-warning.service.ts
@@ -66,9 +66,10 @@ export class FileWarningService implements CreateWarningsServiceInterface area.width) {
x -= x + crop.width - area.width;
}
+ // Can happen because width is rounded and x not
if (x < 0) {
x = 0;
- } // Can happen because width is rounded and x not
+ }
let y = Math.max(focalPoint.y - crop.height / 2, 0);
if (y + crop.height > area.height) {
y -= y + crop.height - area.height;
}
+ // Can happen because height is rounded and y not
if (y < 0) {
y = 0;
- } // Can happen because height is rounded and y not
+ }
return { x: x + area.x, y: y + area.y };
}
diff --git a/packages/api/cms-api/src/page-tree/page-tree-read-api.ts b/packages/api/cms-api/src/page-tree/page-tree-read-api.ts
index bd8b7c19c43..8123c5ac62b 100644
--- a/packages/api/cms-api/src/page-tree/page-tree-read-api.ts
+++ b/packages/api/cms-api/src/page-tree/page-tree-read-api.ts
@@ -377,9 +377,10 @@ export function createReadApi(
async preloadNodes(scope?: ScopeInterface) {
const hash = scopeHash(scope);
+ //don't double-preload
if (preloadedNodes.has(hash)) {
return;
- } //don't double-preload
+ }
return tracer.startActiveSpan("preload PageTreeNode", async (span) => {
span.setAttribute("scope", JSON.stringify(scope));
preloadRunning = true;