Skip to content

Commit 7b51326

Browse files
committed
Merge branch 'main' into app-problems
2 parents 3793f0a + 9a824cb commit 7b51326

1,980 files changed

Lines changed: 6413 additions & 5736 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

eslint.config.mjs

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,16 @@ export default tseslint.config(
3131
".github/**/*.js",
3232
".featureFlags/",
3333
]),
34-
eslint.configs.recommended, // Note: we can migrate to rules using TypeScript types
34+
eslint.configs.recommended,
3535
tseslint.configs.recommended,
36+
{
37+
languageOptions: {
38+
parserOptions: {
39+
projectService: true,
40+
tsconfigRootDir: import.meta.dirname,
41+
},
42+
},
43+
},
3644
react.configs.flat.recommended,
3745
react.configs.flat["jsx-runtime"],
3846
reactHooks.configs.flat["recommended-latest"],
@@ -54,7 +62,6 @@ export default tseslint.config(
5462
"@typescript-eslint/explicit-function-return-type": "off",
5563
"@typescript-eslint/no-floating-promises": "off",
5664
"@typescript-eslint/no-misused-promises": "off",
57-
"@typescript-eslint/consistent-type-imports": "off",
5865
"@typescript-eslint/no-confusing-void-expression": "off",
5966
"react/prop-types": "off",
6067
"react-hooks/exhaustive-deps": "warn",
@@ -289,6 +296,23 @@ export default tseslint.config(
289296
},
290297
],
291298
},
299+
}, // Type-checked rules (only for TypeScript files, not .graphql virtual files)
300+
{
301+
files: ["**/*.ts", "**/*.tsx"],
302+
rules: {
303+
"@typescript-eslint/consistent-type-imports": [
304+
"warn",
305+
{
306+
prefer: "type-imports",
307+
fixStyle: "inline-type-imports",
308+
disallowTypeAnnotations: true,
309+
},
310+
],
311+
},
312+
}, // Disable type-checked linting for non-TypeScript files (no type information available)
313+
{
314+
files: ["**/*.js", "**/*.mjs", "**/*.cjs"],
315+
...tseslint.configs.disableTypeChecked,
292316
}, // Graphql plugin
293317
{
294318
/**

src/attributes/components/AssignReferenceTypesDialog/AssignReferenceTypesDialog.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import AssignContainerDialog, {
2-
AssignContainerDialogProps,
2+
type AssignContainerDialogProps,
33
} from "@dashboard/components/AssignContainerDialog";
44
import { AttributeEntityTypeEnum } from "@dashboard/graphql";
55
import { useIntl } from "react-intl";

src/attributes/components/AttributeBulkDeleteDialog/AttributeBulkDeleteDialog.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import ActionDialog from "@dashboard/components/ActionDialog";
2-
import { ConfirmButtonTransitionState } from "@dashboard/components/ConfirmButton";
2+
import { type ConfirmButtonTransitionState } from "@dashboard/components/ConfirmButton";
33
import { FormattedMessage, useIntl } from "react-intl";
44

55
interface AttributeBulkDeleteDialogProps {

src/attributes/components/AttributeDeleteDialog/AttributeDeleteDialog.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import ActionDialog from "@dashboard/components/ActionDialog";
2-
import { ConfirmButtonTransitionState } from "@dashboard/components/ConfirmButton";
2+
import { type ConfirmButtonTransitionState } from "@dashboard/components/ConfirmButton";
33
import { FormattedMessage, useIntl } from "react-intl";
44

55
interface AttributeDeleteDialogProps {

src/attributes/components/AttributeDetails/AttributeDetails.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ import FormSpacer from "@dashboard/components/FormSpacer";
44
import { Select } from "@dashboard/components/Select";
55
import {
66
AttributeEntityTypeEnum,
7-
AttributeErrorFragment,
7+
type AttributeErrorFragment,
88
AttributeInputTypeEnum,
99
} from "@dashboard/graphql";
10-
import { FormChange, UseFormResult } from "@dashboard/hooks/useForm";
10+
import { type FormChange, type UseFormResult } from "@dashboard/hooks/useForm";
1111
import { commonMessages } from "@dashboard/intl";
1212
import { getFormErrors } from "@dashboard/utils/errors";
1313
import getAttributeErrorMessage from "@dashboard/utils/errors/attribute";
@@ -17,7 +17,7 @@ import { defineMessages, useIntl } from "react-intl";
1717
import slugify from "slugify";
1818

1919
import { getAttributeSlugErrorMessage } from "../../errors";
20-
import { AttributePageFormData } from "../AttributePage";
20+
import { type AttributePageFormData } from "../AttributePage";
2121
import { inputTypeMessages, messages } from "./messages";
2222

2323
const entityTypeMessages = defineMessages({

src/attributes/components/AttributeDetails/NumericUnits.tsx

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,21 @@
1-
import { AttributePageFormData } from "@dashboard/attributes/components/AttributePage";
1+
import { type AttributePageFormData } from "@dashboard/attributes/components/AttributePage";
22
import { Select } from "@dashboard/components/Select";
3-
import { MeasurementUnitsEnum } from "@dashboard/graphql";
4-
import { UseFormResult } from "@dashboard/hooks/useForm";
3+
import { type MeasurementUnitsEnum } from "@dashboard/graphql";
4+
import { type UseFormResult } from "@dashboard/hooks/useForm";
55
import { commonMessages } from "@dashboard/intl";
66
import { makeStyles } from "@saleor/macaw-ui";
7-
import { Box, Checkbox, Option, Text } from "@saleor/macaw-ui-next";
7+
import { Box, Checkbox, type Option, Text } from "@saleor/macaw-ui-next";
88
import { useEffect, useMemo, useState } from "react";
99
import { useIntl } from "react-intl";
1010

1111
import * as M from "./messages";
12-
import { getUnitChoices, UnitSystem, unitSystemChoices, UnitType, unitTypeChoices } from "./utils";
12+
import {
13+
getUnitChoices,
14+
type UnitSystem,
15+
unitSystemChoices,
16+
type UnitType,
17+
unitTypeChoices,
18+
} from "./utils";
1319

1420
const useStyles = makeStyles(
1521
theme => ({

src/attributes/components/AttributeDetails/utils.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { MeasurementUnitsEnum } from "@dashboard/graphql";
2-
import { Option } from "@saleor/macaw-ui-next";
2+
import { type Option } from "@saleor/macaw-ui-next";
33
import * as React from "react";
4-
import { IntlShape, MessageDescriptor } from "react-intl";
4+
import { type IntlShape, type MessageDescriptor } from "react-intl";
55

66
import * as M from "./messages";
77

src/attributes/components/AttributeListDatagrid/AttributeListDatagrid.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { AttributeListUrlSortField, attributeUrl } from "@dashboard/attributes/urls";
1+
import { type AttributeListUrlSortField, attributeUrl } from "@dashboard/attributes/urls";
22
import { ColumnPicker } from "@dashboard/components/Datagrid/ColumnPicker/ColumnPicker";
33
import { useColumns } from "@dashboard/components/Datagrid/ColumnPicker/useColumns";
44
import Datagrid from "@dashboard/components/Datagrid/Datagrid";
@@ -7,11 +7,11 @@ import {
77
useDatagridChangeState,
88
} from "@dashboard/components/Datagrid/hooks/useDatagridChange";
99
import { DatagridPagination } from "@dashboard/components/TablePagination";
10-
import { AttributeFragment } from "@dashboard/graphql";
10+
import { type AttributeFragment } from "@dashboard/graphql";
1111
import { getPrevLocationState } from "@dashboard/hooks/useBackLinkWithState";
1212
import useNavigator from "@dashboard/hooks/useNavigator";
13-
import { ListProps, SortPage } from "@dashboard/types";
14-
import { Item } from "@glideapps/glide-data-grid";
13+
import { type ListProps, type SortPage } from "@dashboard/types";
14+
import { type Item } from "@glideapps/glide-data-grid";
1515
import { useCallback, useMemo } from "react";
1616
import { useIntl } from "react-intl";
1717
import { useLocation } from "react-router";

src/attributes/components/AttributeListDatagrid/datagrid.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
import { AttributeListUrlSortField } from "@dashboard/attributes/urls";
1+
import { type AttributeListUrlSortField } from "@dashboard/attributes/urls";
22
import { PLACEHOLDER } from "@dashboard/components/Datagrid/const";
33
import { readonlyTextCell } from "@dashboard/components/Datagrid/customCells/cells";
4-
import { AvailableColumn } from "@dashboard/components/Datagrid/types";
5-
import { AttributeFragment } from "@dashboard/graphql";
4+
import { type AvailableColumn } from "@dashboard/components/Datagrid/types";
5+
import { type AttributeFragment } from "@dashboard/graphql";
66
import { translateBoolean } from "@dashboard/intl";
7-
import { Sort } from "@dashboard/types";
7+
import { type Sort } from "@dashboard/types";
88
import { getColumnSortDirectionIcon } from "@dashboard/utils/columns/getColumnSortDirectionIcon";
9-
import { GridCell, Item } from "@glideapps/glide-data-grid";
10-
import { IntlShape } from "react-intl";
9+
import { type GridCell, type Item } from "@glideapps/glide-data-grid";
10+
import { type IntlShape } from "react-intl";
1111

1212
import { columnsMessages } from "./messages";
1313

src/attributes/components/AttributeListPage/AttributeListPage.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
1-
import { attributeAddUrl, AttributeListUrlSortField } from "@dashboard/attributes/urls";
1+
import { attributeAddUrl, type AttributeListUrlSortField } from "@dashboard/attributes/urls";
22
import { ListFilters } from "@dashboard/components/AppLayout/ListFilters";
33
import { TopNav } from "@dashboard/components/AppLayout/TopNav";
44
import { BulkDeleteButton } from "@dashboard/components/BulkDeleteButton";
55
import { DashboardCard } from "@dashboard/components/Card";
66
import { FilterPresetsSelect } from "@dashboard/components/FilterPresetsSelect";
77
import { configurationMenuUrl } from "@dashboard/configuration/urls";
8-
import { AttributeFragment } from "@dashboard/graphql";
8+
import { type AttributeFragment } from "@dashboard/graphql";
99
import useNavigator from "@dashboard/hooks/useNavigator";
1010
import { sectionNames } from "@dashboard/intl";
1111
import { Box, Button } from "@saleor/macaw-ui-next";
1212
import { useState } from "react";
1313
import { FormattedMessage, useIntl } from "react-intl";
1414

15-
import { FilterPagePropsWithPresets, PageListProps, SortPage } from "../../../types";
15+
import { type FilterPagePropsWithPresets, type PageListProps, type SortPage } from "../../../types";
1616
import { AttributeListDatagrid } from "../AttributeListDatagrid";
17-
import { AttributeFilterKeys, AttributeListFilterOpts } from "./filters";
17+
import { type AttributeFilterKeys, type AttributeListFilterOpts } from "./filters";
1818

1919
interface AttributeListPageProps
2020
extends PageListProps,

0 commit comments

Comments
 (0)