Add import order sorting rules
Signed-off-by: Émile Ré <emile@getprobo.com>
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
import { defineConfig } from "eslint/config";
|
|
||||||
import { configs } from "@probo/eslint-config";
|
import { configs } from "@probo/eslint-config";
|
||||||
|
import { defineConfig } from "eslint/config";
|
||||||
|
|
||||||
export default defineConfig([
|
export default defineConfig([
|
||||||
...configs.base,
|
...configs.base,
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
|
import { ConfirmDialog, Toasts } from "@probo/ui";
|
||||||
import { RouterProvider } from "react-router";
|
import { RouterProvider } from "react-router";
|
||||||
import { Toasts, ConfirmDialog } from "@probo/ui";
|
|
||||||
|
|
||||||
import { router } from "./routes";
|
import { router } from "./routes";
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { useLocation, useRouteError } from "react-router";
|
|
||||||
import { IconPageCross } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { useEffect, useRef } from "react";
|
|
||||||
import { AuthenticationRequiredError } from "@probo/relay";
|
import { AuthenticationRequiredError } from "@probo/relay";
|
||||||
|
import { IconPageCross } from "@probo/ui";
|
||||||
|
import { useEffect, useRef } from "react";
|
||||||
|
import { useLocation, useRouteError } from "react-router";
|
||||||
|
|
||||||
const classNames = {
|
const classNames = {
|
||||||
wrapper: "py-10 text-center space-y-2 ",
|
wrapper: "py-10 text-center space-y-2 ",
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import { IconClock } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { useLazyLoadQuery, graphql } from "react-relay";
|
|
||||||
import { useLocation } from "react-router";
|
|
||||||
import {
|
import {
|
||||||
getSnapshotTypeUrlPath,
|
|
||||||
getSnapshotTypeLabel,
|
|
||||||
sprintf,
|
|
||||||
formatDate,
|
formatDate,
|
||||||
|
getSnapshotTypeLabel,
|
||||||
|
getSnapshotTypeUrlPath,
|
||||||
|
sprintf,
|
||||||
} from "@probo/helpers";
|
} from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { IconClock } from "@probo/ui";
|
||||||
|
import { graphql, useLazyLoadQuery } from "react-relay";
|
||||||
|
import { useLocation } from "react-router";
|
||||||
|
|
||||||
import type { SnapshotBannerQuery } from "/__generated__/core/SnapshotBannerQuery.graphql";
|
import type { SnapshotBannerQuery } from "/__generated__/core/SnapshotBannerQuery.graphql";
|
||||||
|
|
||||||
|
|||||||
@@ -9,11 +9,11 @@ import {
|
|||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { clsx } from "clsx";
|
import { clsx } from "clsx";
|
||||||
import {
|
import {
|
||||||
|
type ComponentProps,
|
||||||
createContext,
|
createContext,
|
||||||
startTransition,
|
startTransition,
|
||||||
useContext,
|
useContext,
|
||||||
useState,
|
useState,
|
||||||
type ComponentProps,
|
|
||||||
} from "react";
|
} from "react";
|
||||||
import type { LoadMoreFn } from "react-relay";
|
import type { LoadMoreFn } from "react-relay";
|
||||||
import type { OperationType } from "relay-runtime";
|
import type { OperationType } from "relay-runtime";
|
||||||
|
|||||||
@@ -17,19 +17,19 @@ import {
|
|||||||
import { useMutation } from "react-relay";
|
import { useMutation } from "react-relay";
|
||||||
import type { usePaginationFragmentHookType } from "react-relay/relay-hooks/usePaginationFragment";
|
import type { usePaginationFragmentHookType } from "react-relay/relay-hooks/usePaginationFragment";
|
||||||
import { Link } from "react-router";
|
import { Link } from "react-router";
|
||||||
import { z } from "zod";
|
|
||||||
import type { OperationType } from "relay-runtime";
|
import type { OperationType } from "relay-runtime";
|
||||||
|
import { z } from "zod";
|
||||||
|
|
||||||
import {
|
|
||||||
createAssetMutation,
|
|
||||||
deleteAssetMutation,
|
|
||||||
updateAssetMutation,
|
|
||||||
} from "/hooks/graph/AssetGraph";
|
|
||||||
import type { AssetGraphDeleteMutation } from "/__generated__/core/AssetGraphDeleteMutation.graphql";
|
import type { AssetGraphDeleteMutation } from "/__generated__/core/AssetGraphDeleteMutation.graphql";
|
||||||
import type {
|
import type {
|
||||||
AssetsPageFragment$data,
|
AssetsPageFragment$data,
|
||||||
AssetsPageFragment$key,
|
AssetsPageFragment$key,
|
||||||
} from "/__generated__/core/AssetsPageFragment.graphql";
|
} from "/__generated__/core/AssetsPageFragment.graphql";
|
||||||
|
import {
|
||||||
|
createAssetMutation,
|
||||||
|
deleteAssetMutation,
|
||||||
|
updateAssetMutation,
|
||||||
|
} from "/hooks/graph/AssetGraph";
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|
||||||
import { EditableTable } from "../table/EditableTable";
|
import { EditableTable } from "../table/EditableTable";
|
||||||
|
|||||||
@@ -1,16 +1,16 @@
|
|||||||
import { Avatar, Badge, Tbody, Td, Th, Thead, Tr } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import type { usePaginationFragmentHookType } from "react-relay/relay-hooks/usePaginationFragment";
|
|
||||||
import type { OperationType } from "relay-runtime";
|
|
||||||
import { useParams } from "react-router";
|
|
||||||
import { faviconUrl, getAssetTypeVariant } from "@probo/helpers";
|
import { faviconUrl, getAssetTypeVariant } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { Avatar, Badge, Tbody, Td, Th, Thead, Tr } from "@probo/ui";
|
||||||
|
import type { usePaginationFragmentHookType } from "react-relay/relay-hooks/usePaginationFragment";
|
||||||
|
import { useParams } from "react-router";
|
||||||
|
import type { OperationType } from "relay-runtime";
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
AssetsPageFragment$data,
|
AssetsPageFragment$data,
|
||||||
AssetsPageFragment$key,
|
AssetsPageFragment$key,
|
||||||
} from "/__generated__/core/AssetsPageFragment.graphql";
|
} from "/__generated__/core/AssetsPageFragment.graphql";
|
||||||
import type { NodeOf } from "/types";
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
import type { NodeOf } from "/types";
|
||||||
|
|
||||||
import { SortableTable } from "../SortableTable";
|
import { SortableTable } from "../SortableTable";
|
||||||
|
|
||||||
|
|||||||
@@ -1,27 +1,27 @@
|
|||||||
import { graphql } from "relay-runtime";
|
import { getAuditStateVariant, sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Card,
|
|
||||||
IconPlusLarge,
|
|
||||||
Button,
|
|
||||||
Tr,
|
|
||||||
Td,
|
|
||||||
Table,
|
|
||||||
Thead,
|
|
||||||
Tbody,
|
|
||||||
Th,
|
|
||||||
IconChevronDown,
|
|
||||||
IconTrashCan,
|
|
||||||
Badge,
|
Badge,
|
||||||
|
Button,
|
||||||
|
Card,
|
||||||
|
IconChevronDown,
|
||||||
|
IconPlusLarge,
|
||||||
|
IconTrashCan,
|
||||||
|
Table,
|
||||||
|
Tbody,
|
||||||
|
Td,
|
||||||
|
Th,
|
||||||
|
Thead,
|
||||||
|
Tr,
|
||||||
TrButton,
|
TrButton,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { useFragment } from "react-relay";
|
|
||||||
import { useMemo, useState } from "react";
|
|
||||||
import { sprintf, getAuditStateVariant } from "@probo/helpers";
|
|
||||||
import { clsx } from "clsx";
|
import { clsx } from "clsx";
|
||||||
|
import { useMemo, useState } from "react";
|
||||||
|
import { useFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import type { LinkedAuditsCardFragment$key } from "/__generated__/core/LinkedAuditsCardFragment.graphql";
|
import type { LinkedAuditsCardFragment$key } from "/__generated__/core/LinkedAuditsCardFragment.graphql";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|
||||||
import { LinkedAuditsDialog } from "./LinkedAuditsDialog";
|
import { LinkedAuditsDialog } from "./LinkedAuditsDialog";
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,11 @@
|
|||||||
|
import { getAuditStateVariant } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
|
Badge,
|
||||||
Button,
|
Button,
|
||||||
Dialog,
|
Dialog,
|
||||||
DialogContent,
|
DialogContent,
|
||||||
DialogFooter,
|
DialogFooter,
|
||||||
Badge,
|
|
||||||
IconMagnifyingGlass,
|
IconMagnifyingGlass,
|
||||||
IconPlusLarge,
|
IconPlusLarge,
|
||||||
IconTrashCan,
|
IconTrashCan,
|
||||||
@@ -11,19 +13,17 @@ import {
|
|||||||
Input,
|
Input,
|
||||||
Spinner,
|
Spinner,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { type ReactNode, Suspense, useMemo, useState } from "react";
|
||||||
import { getAuditStateVariant } from "@probo/helpers";
|
|
||||||
import { Suspense, useMemo, useState, type ReactNode } from "react";
|
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
import { useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import type { LinkedAuditsDialogQuery } from "/__generated__/core/LinkedAuditsDialogQuery.graphql";
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import type { NodeOf } from "/types";
|
|
||||||
import type {
|
import type {
|
||||||
LinkedAuditsDialogFragment$data,
|
LinkedAuditsDialogFragment$data,
|
||||||
LinkedAuditsDialogFragment$key,
|
LinkedAuditsDialogFragment$key,
|
||||||
} from "/__generated__/core/LinkedAuditsDialogFragment.graphql";
|
} from "/__generated__/core/LinkedAuditsDialogFragment.graphql";
|
||||||
|
import type { LinkedAuditsDialogQuery } from "/__generated__/core/LinkedAuditsDialogQuery.graphql";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
import type { NodeOf } from "/types";
|
||||||
|
|
||||||
const auditsQuery = graphql`
|
const auditsQuery = graphql`
|
||||||
query LinkedAuditsDialogQuery($organizationId: ID!) {
|
query LinkedAuditsDialogQuery($organizationId: ID!) {
|
||||||
|
|||||||
@@ -1,18 +1,18 @@
|
|||||||
import { graphql } from "relay-runtime";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Button,
|
|
||||||
Tr,
|
|
||||||
Td,
|
|
||||||
Thead,
|
|
||||||
Tbody,
|
|
||||||
Th,
|
|
||||||
IconTrashCan,
|
|
||||||
Badge,
|
Badge,
|
||||||
|
Button,
|
||||||
|
IconTrashCan,
|
||||||
|
Tbody,
|
||||||
|
Td,
|
||||||
|
Th,
|
||||||
|
Thead,
|
||||||
|
Tr,
|
||||||
TrButton,
|
TrButton,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { useFragment } from "react-relay";
|
|
||||||
import type { ComponentProps } from "react";
|
import type { ComponentProps } from "react";
|
||||||
|
import { useFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import type { LinkedControlsCardFragment$key } from "/__generated__/core/LinkedControlsCardFragment.graphql";
|
import type { LinkedControlsCardFragment$key } from "/__generated__/core/LinkedControlsCardFragment.graphql";
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Badge,
|
Badge,
|
||||||
Button,
|
Button,
|
||||||
@@ -11,25 +12,24 @@ import {
|
|||||||
Spinner,
|
Spinner,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import {
|
import {
|
||||||
|
type ReactNode,
|
||||||
|
type RefObject,
|
||||||
Suspense,
|
Suspense,
|
||||||
useEffect,
|
useEffect,
|
||||||
useMemo,
|
useMemo,
|
||||||
useRef,
|
useRef,
|
||||||
useState,
|
useState,
|
||||||
type ReactNode,
|
|
||||||
type RefObject,
|
|
||||||
} from "react";
|
} from "react";
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
import { useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
import { useDebounceCallback } from "usehooks-ts";
|
import { useDebounceCallback } from "usehooks-ts";
|
||||||
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import type { LinkedControlsDialogQuery } from "/__generated__/core/LinkedControlsDialogQuery.graphql";
|
|
||||||
import type {
|
import type {
|
||||||
LinkedControlsDialogFragment$data,
|
LinkedControlsDialogFragment$data,
|
||||||
LinkedControlsDialogFragment$key,
|
LinkedControlsDialogFragment$key,
|
||||||
} from "/__generated__/core/LinkedControlsDialogFragment.graphql";
|
} from "/__generated__/core/LinkedControlsDialogFragment.graphql";
|
||||||
|
import type { LinkedControlsDialogQuery } from "/__generated__/core/LinkedControlsDialogQuery.graphql";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
import type { NodeOf } from "/types";
|
import type { NodeOf } from "/types";
|
||||||
|
|
||||||
const query = graphql`
|
const query = graphql`
|
||||||
|
|||||||
@@ -1,17 +1,17 @@
|
|||||||
|
import { sprintf } from "@probo/helpers";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Button,
|
Button,
|
||||||
|
Checkbox,
|
||||||
Dialog,
|
Dialog,
|
||||||
DialogContent,
|
DialogContent,
|
||||||
DialogFooter,
|
DialogFooter,
|
||||||
Field,
|
Field,
|
||||||
useDialogRef,
|
|
||||||
Spinner,
|
Spinner,
|
||||||
Checkbox,
|
useDialogRef,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { type ReactNode, useImperativeHandle, forwardRef } from "react";
|
import { forwardRef, type ReactNode, useImperativeHandle } from "react";
|
||||||
import { z } from "zod";
|
import { z } from "zod";
|
||||||
import { sprintf } from "@probo/helpers";
|
|
||||||
|
|
||||||
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
||||||
|
|
||||||
|
|||||||
@@ -1,28 +1,28 @@
|
|||||||
import { graphql } from "relay-runtime";
|
import { sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Card,
|
|
||||||
IconPlusLarge,
|
|
||||||
Button,
|
Button,
|
||||||
Tr,
|
Card,
|
||||||
Td,
|
|
||||||
Table,
|
|
||||||
Thead,
|
|
||||||
Tbody,
|
|
||||||
Th,
|
|
||||||
IconChevronDown,
|
|
||||||
IconTrashCan,
|
|
||||||
DocumentVersionBadge,
|
|
||||||
DocumentTypeBadge,
|
DocumentTypeBadge,
|
||||||
|
DocumentVersionBadge,
|
||||||
|
IconChevronDown,
|
||||||
|
IconPlusLarge,
|
||||||
|
IconTrashCan,
|
||||||
|
Table,
|
||||||
|
Tbody,
|
||||||
|
Td,
|
||||||
|
Th,
|
||||||
|
Thead,
|
||||||
|
Tr,
|
||||||
TrButton,
|
TrButton,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { useFragment } from "react-relay";
|
|
||||||
import { useMemo, useState } from "react";
|
|
||||||
import { sprintf } from "@probo/helpers";
|
|
||||||
import { clsx } from "clsx";
|
import { clsx } from "clsx";
|
||||||
|
import { useMemo, useState } from "react";
|
||||||
|
import { useFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import type { LinkedDocumentsCardFragment$key } from "/__generated__/core/LinkedDocumentsCardFragment.graphql";
|
import type { LinkedDocumentsCardFragment$key } from "/__generated__/core/LinkedDocumentsCardFragment.graphql";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|
||||||
import { LinkedDocumentDialog } from "./LinkedDocumentsDialog.tsx";
|
import { LinkedDocumentDialog } from "./LinkedDocumentsDialog.tsx";
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Button,
|
Button,
|
||||||
Dialog,
|
Dialog,
|
||||||
@@ -11,18 +12,17 @@ import {
|
|||||||
Input,
|
Input,
|
||||||
Spinner,
|
Spinner,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { type ReactNode, Suspense, useMemo, useState } from "react";
|
||||||
import { Suspense, useMemo, useState, type ReactNode } from "react";
|
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
import { useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import type { LinkedDocumentsDialogQuery } from "/__generated__/core/LinkedDocumentsDialogQuery.graphql";
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import type { NodeOf } from "/types";
|
|
||||||
import type {
|
import type {
|
||||||
LinkedDocumentsDialogFragment$data,
|
LinkedDocumentsDialogFragment$data,
|
||||||
LinkedDocumentsDialogFragment$key,
|
LinkedDocumentsDialogFragment$key,
|
||||||
} from "/__generated__/core/LinkedDocumentsDialogFragment.graphql";
|
} from "/__generated__/core/LinkedDocumentsDialogFragment.graphql";
|
||||||
|
import type { LinkedDocumentsDialogQuery } from "/__generated__/core/LinkedDocumentsDialogQuery.graphql";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
import type { NodeOf } from "/types";
|
||||||
|
|
||||||
const documentsQuery = graphql`
|
const documentsQuery = graphql`
|
||||||
query LinkedDocumentsDialogQuery($organizationId: ID!) {
|
query LinkedDocumentsDialogQuery($organizationId: ID!) {
|
||||||
|
|||||||
@@ -1,7 +1,4 @@
|
|||||||
import { Document, Page, pdfjs } from "react-pdf";
|
import { times } from "@probo/helpers";
|
||||||
import "react-pdf/dist/Page/TextLayer.css";
|
|
||||||
import "react-pdf/dist/Page/AnnotationLayer.css";
|
|
||||||
import { type ComponentProps, useRef, useState } from "react";
|
|
||||||
import {
|
import {
|
||||||
IconArrowInbox,
|
IconArrowInbox,
|
||||||
IconChevronLeft,
|
IconChevronLeft,
|
||||||
@@ -9,8 +6,12 @@ import {
|
|||||||
IconPlusLarge,
|
IconPlusLarge,
|
||||||
Spinner,
|
Spinner,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { times } from "@probo/helpers";
|
|
||||||
import { IconMinusLarge } from "@probo/ui/src/Atoms/Icons/IconMinusLarge.tsx";
|
import { IconMinusLarge } from "@probo/ui/src/Atoms/Icons/IconMinusLarge.tsx";
|
||||||
|
import { type ComponentProps, useRef, useState } from "react";
|
||||||
|
import { Document, Page, pdfjs } from "react-pdf";
|
||||||
|
|
||||||
|
import "react-pdf/dist/Page/TextLayer.css";
|
||||||
|
import "react-pdf/dist/Page/AnnotationLayer.css";
|
||||||
|
|
||||||
// Worker for PDF.js
|
// Worker for PDF.js
|
||||||
pdfjs.GlobalWorkerOptions.workerSrc = `//unpkg.com/pdfjs-dist@${pdfjs.version}/build/pdf.worker.min.mjs`;
|
pdfjs.GlobalWorkerOptions.workerSrc = `//unpkg.com/pdfjs-dist@${pdfjs.version}/build/pdf.worker.min.mjs`;
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Button,
|
Button,
|
||||||
|
Checkbox,
|
||||||
Dialog,
|
Dialog,
|
||||||
DialogContent,
|
DialogContent,
|
||||||
DialogFooter,
|
DialogFooter,
|
||||||
Field,
|
Field,
|
||||||
useDialogRef,
|
|
||||||
Spinner,
|
Spinner,
|
||||||
Checkbox,
|
useDialogRef,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { type ReactNode, useImperativeHandle, forwardRef } from "react";
|
import { forwardRef, type ReactNode, useImperativeHandle } from "react";
|
||||||
import { z } from "zod";
|
import { z } from "zod";
|
||||||
|
|
||||||
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
import { Field, Option, Select, Badge } from "@probo/ui";
|
import { getAuditStateLabel, getAuditStateVariant } from "@probo/helpers";
|
||||||
import { Suspense, type ComponentProps } from "react";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { Badge, Field, Option, Select } from "@probo/ui";
|
||||||
|
import { type ComponentProps, Suspense } from "react";
|
||||||
import {
|
import {
|
||||||
type Control,
|
type Control,
|
||||||
Controller,
|
Controller,
|
||||||
type FieldValues,
|
type FieldValues,
|
||||||
type Path,
|
type Path,
|
||||||
} from "react-hook-form";
|
} from "react-hook-form";
|
||||||
import { useLazyLoadQuery, graphql } from "react-relay";
|
import { graphql, useLazyLoadQuery } from "react-relay";
|
||||||
import { getAuditStateVariant, getAuditStateLabel } from "@probo/helpers";
|
|
||||||
|
|
||||||
import type { AuditSelectFieldQuery } from "/__generated__/core/AuditSelectFieldQuery.graphql";
|
import type { AuditSelectFieldQuery } from "/__generated__/core/AuditSelectFieldQuery.graphql";
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import type { ComponentProps } from "react";
|
|
||||||
import { Field, Select } from "@probo/ui";
|
import { Field, Select } from "@probo/ui";
|
||||||
|
import type { ComponentProps } from "react";
|
||||||
import { Controller, type FieldPath, type FieldValues } from "react-hook-form";
|
import { Controller, type FieldPath, type FieldValues } from "react-hook-form";
|
||||||
|
|
||||||
type Props<
|
type Props<
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
|
import { countries, type CountryCode, getCountryName, getCountryOptions } from "@probo/helpers";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { useEffect, useState } from "react";
|
import { Badge, IconCrossLargeX, Input } from "@probo/ui";
|
||||||
import { Badge, Input, IconCrossLargeX } from "@probo/ui";
|
|
||||||
import { type Control, Controller, type FieldPath, type FieldValues } from "react-hook-form";
|
|
||||||
import { getCountryName, getCountryOptions, countries, type CountryCode } from "@probo/helpers";
|
|
||||||
import { clsx } from "clsx";
|
import { clsx } from "clsx";
|
||||||
|
import { useEffect, useState } from "react";
|
||||||
|
import { type Control, Controller, type FieldPath, type FieldValues } from "react-hook-form";
|
||||||
|
|
||||||
type Props<T extends FieldValues = FieldValues> = {
|
type Props<T extends FieldValues = FieldValues> = {
|
||||||
control: Control<T>;
|
control: Control<T>;
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { Option } from "@probo/ui";
|
|
||||||
import {
|
import {
|
||||||
documentClassifications,
|
documentClassifications,
|
||||||
getDocumentClassificationLabel,
|
getDocumentClassificationLabel,
|
||||||
} from "@probo/helpers";
|
} from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { Option } from "@probo/ui";
|
||||||
|
|
||||||
export function DocumentClassificationOptions() {
|
export function DocumentClassificationOptions() {
|
||||||
const { __ } = useTranslate();
|
const { __ } = useTranslate();
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
|
import { documentTypes, getDocumentTypeLabel } from "@probo/helpers";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { Option } from "@probo/ui";
|
import { Option } from "@probo/ui";
|
||||||
import { documentTypes, getDocumentTypeLabel } from "@probo/helpers";
|
|
||||||
|
|
||||||
export function DocumentTypeOptions() {
|
export function DocumentTypeOptions() {
|
||||||
const { __ } = useTranslate();
|
const { __ } = useTranslate();
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { Button, IconPlusLarge, IconTrashCan, Input, Label } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { useFieldArray } from "react-hook-form";
|
import { Button, IconPlusLarge, IconTrashCan, Input, Label } from "@probo/ui";
|
||||||
import type { ArrayPath, Control, FieldValue, FieldValues, Path, UseFormRegister } from "react-hook-form";
|
import type { ArrayPath, Control, FieldValue, FieldValues, Path, UseFormRegister } from "react-hook-form";
|
||||||
|
import { useFieldArray } from "react-hook-form";
|
||||||
|
|
||||||
type Props<TFieldValues extends FieldValues = FieldValues> = {
|
type Props<TFieldValues extends FieldValues = FieldValues> = {
|
||||||
control: Control<TFieldValues>;
|
control: Control<TFieldValues>;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { Field, Combobox, ComboboxItem } from "@probo/ui";
|
|
||||||
import { Suspense, useMemo, useState, type ComponentProps } from "react";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { Combobox, ComboboxItem, Field } from "@probo/ui";
|
||||||
|
import { type ComponentProps, Suspense, useMemo, useState } from "react";
|
||||||
import { type Control, Controller, type FieldPath, type FieldValues } from "react-hook-form";
|
import { type Control, Controller, type FieldPath, type FieldValues } from "react-hook-form";
|
||||||
|
|
||||||
import { usePaginatedMeasures } from "/hooks/graph/usePaginatedMeasures";
|
import { usePaginatedMeasures } from "/hooks/graph/usePaginatedMeasures";
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { Avatar, Field, Option, Select, Badge, Button, IconCrossLargeX } from "@probo/ui";
|
|
||||||
import { Suspense, useState, type ComponentProps } from "react";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { Avatar, Badge, Button, Field, IconCrossLargeX, Option, Select } from "@probo/ui";
|
||||||
|
import { type ComponentProps, Suspense, useState } from "react";
|
||||||
import { type Control, Controller, type FieldValues, Path } from "react-hook-form";
|
import { type Control, Controller, type FieldValues, Path } from "react-hook-form";
|
||||||
|
|
||||||
import { usePeople } from "/hooks/graph/PeopleGraph.ts";
|
import { usePeople } from "/hooks/graph/PeopleGraph.ts";
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { Avatar, Field, Option, Select } from "@probo/ui";
|
|
||||||
import { Suspense, type ComponentProps } from "react";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { Avatar, Field, Option, Select } from "@probo/ui";
|
||||||
|
import { type ComponentProps, Suspense } from "react";
|
||||||
import { type Control, Controller, type FieldPath, type FieldValues } from "react-hook-form";
|
import { type Control, Controller, type FieldPath, type FieldValues } from "react-hook-form";
|
||||||
|
|
||||||
import { usePeople } from "/hooks/graph/PeopleGraph.ts";
|
import { usePeople } from "/hooks/graph/PeopleGraph.ts";
|
||||||
|
|||||||
@@ -2,9 +2,9 @@ import { useTranslate } from "@probo/i18n";
|
|||||||
import { Option } from "@probo/ui";
|
import { Option } from "@probo/ui";
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
ProcessingActivitySpecialOrCriminalDatum,
|
|
||||||
ProcessingActivityLawfulBasis,
|
|
||||||
ProcessingActivityDataProtectionImpactAssessment,
|
ProcessingActivityDataProtectionImpactAssessment,
|
||||||
|
ProcessingActivityLawfulBasis,
|
||||||
|
ProcessingActivitySpecialOrCriminalDatum,
|
||||||
ProcessingActivityTransferImpactAssessment,
|
ProcessingActivityTransferImpactAssessment,
|
||||||
} from "/__generated__/core/ProcessingActivityGraphCreateMutation.graphql";
|
} from "/__generated__/core/ProcessingActivityGraphCreateMutation.graphql";
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
|
import { getSnapshotTypeLabel, snapshotTypes } from "@probo/helpers";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { Option } from "@probo/ui";
|
import { Option } from "@probo/ui";
|
||||||
import { snapshotTypes, getSnapshotTypeLabel } from "@probo/helpers";
|
|
||||||
|
|
||||||
export function SnapshotTypeOptions() {
|
export function SnapshotTypeOptions() {
|
||||||
const { __ } = useTranslate();
|
const { __ } = useTranslate();
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { Avatar, Field, Option, Select, Badge, Button, IconCrossLargeX } from "@probo/ui";
|
|
||||||
import { Suspense, useState, type ComponentProps } from "react";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { type Control, Controller, type FieldValues, Path } from "react-hook-form";
|
|
||||||
import { faviconUrl } from "@probo/helpers";
|
import { faviconUrl } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { Avatar, Badge, Button, Field, IconCrossLargeX, Option, Select } from "@probo/ui";
|
||||||
|
import { type ComponentProps, Suspense, useState } from "react";
|
||||||
|
import { type Control, Controller, type FieldValues, Path } from "react-hook-form";
|
||||||
|
|
||||||
import { useVendors } from "/hooks/graph/VendorGraph.ts";
|
import { useVendors } from "/hooks/graph/VendorGraph.ts";
|
||||||
|
|
||||||
|
|||||||
@@ -1,27 +1,27 @@
|
|||||||
import { graphql } from "relay-runtime";
|
import { sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Card,
|
|
||||||
IconPlusLarge,
|
|
||||||
Button,
|
Button,
|
||||||
Tr,
|
Card,
|
||||||
Td,
|
|
||||||
Table,
|
|
||||||
Thead,
|
|
||||||
Tbody,
|
|
||||||
Th,
|
|
||||||
IconChevronDown,
|
IconChevronDown,
|
||||||
|
IconPlusLarge,
|
||||||
IconTrashCan,
|
IconTrashCan,
|
||||||
|
Table,
|
||||||
|
Tbody,
|
||||||
|
Td,
|
||||||
|
Th,
|
||||||
|
Thead,
|
||||||
|
Tr,
|
||||||
TrButton,
|
TrButton,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { MeasureBadge } from "@probo/ui/src/Molecules/Badge/MeasureBadge";
|
import { MeasureBadge } from "@probo/ui/src/Molecules/Badge/MeasureBadge";
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { useFragment } from "react-relay";
|
|
||||||
import { useMemo, useState } from "react";
|
|
||||||
import { sprintf } from "@probo/helpers";
|
|
||||||
import { clsx } from "clsx";
|
import { clsx } from "clsx";
|
||||||
|
import { useMemo, useState } from "react";
|
||||||
|
import { useFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import type { LinkedMeasuresCardFragment$key } from "/__generated__/core/LinkedMeasuresCardFragment.graphql";
|
import type { LinkedMeasuresCardFragment$key } from "/__generated__/core/LinkedMeasuresCardFragment.graphql";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|
||||||
import { LinkedMeasureDialog } from "./LinkedMeasuresDialog.tsx";
|
import { LinkedMeasureDialog } from "./LinkedMeasuresDialog.tsx";
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Badge,
|
Badge,
|
||||||
Button,
|
Button,
|
||||||
@@ -13,11 +14,10 @@ import {
|
|||||||
Select,
|
Select,
|
||||||
Spinner,
|
Spinner,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { type ReactNode, Suspense, useMemo, useState } from "react";
|
||||||
import { Suspense, useMemo, useState, type ReactNode } from "react";
|
|
||||||
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import { usePaginatedMeasures } from "/hooks/graph/usePaginatedMeasures";
|
import { usePaginatedMeasures } from "/hooks/graph/usePaginatedMeasures";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
children: ReactNode;
|
children: ReactNode;
|
||||||
|
|||||||
@@ -1,29 +1,29 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import {
|
import {
|
||||||
Card,
|
|
||||||
IconPlusLarge,
|
|
||||||
Button,
|
|
||||||
Tr,
|
|
||||||
Td,
|
|
||||||
Table,
|
|
||||||
Thead,
|
|
||||||
Tbody,
|
|
||||||
Th,
|
|
||||||
IconChevronDown,
|
|
||||||
IconTrashCan,
|
|
||||||
TrButton,
|
|
||||||
Badge,
|
|
||||||
} from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { useFragment } from "react-relay";
|
|
||||||
import { useMemo, useState } from "react";
|
|
||||||
import {
|
|
||||||
sprintf,
|
|
||||||
getObligationStatusVariant,
|
|
||||||
getObligationStatusLabel,
|
getObligationStatusLabel,
|
||||||
|
getObligationStatusVariant,
|
||||||
|
sprintf,
|
||||||
} from "@probo/helpers";
|
} from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import {
|
||||||
|
Badge,
|
||||||
|
Button,
|
||||||
|
Card,
|
||||||
|
IconChevronDown,
|
||||||
|
IconPlusLarge,
|
||||||
|
IconTrashCan,
|
||||||
|
Table,
|
||||||
|
Tbody,
|
||||||
|
Td,
|
||||||
|
Th,
|
||||||
|
Thead,
|
||||||
|
Tr,
|
||||||
|
TrButton,
|
||||||
|
} from "@probo/ui";
|
||||||
import { clsx } from "clsx";
|
import { clsx } from "clsx";
|
||||||
|
import { useMemo, useState } from "react";
|
||||||
|
import { useFragment } from "react-relay";
|
||||||
import { useParams } from "react-router";
|
import { useParams } from "react-router";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import type { LinkedObligationsCardFragment$key } from "/__generated__/core/LinkedObligationsCardFragment.graphql";
|
import type { LinkedObligationsCardFragment$key } from "/__generated__/core/LinkedObligationsCardFragment.graphql";
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|||||||
@@ -1,4 +1,10 @@
|
|||||||
import {
|
import {
|
||||||
|
getObligationStatusLabel,
|
||||||
|
getObligationStatusVariant,
|
||||||
|
} from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import {
|
||||||
|
Badge,
|
||||||
Button,
|
Button,
|
||||||
Dialog,
|
Dialog,
|
||||||
DialogContent,
|
DialogContent,
|
||||||
@@ -9,24 +15,18 @@ import {
|
|||||||
InfiniteScrollTrigger,
|
InfiniteScrollTrigger,
|
||||||
Input,
|
Input,
|
||||||
Spinner,
|
Spinner,
|
||||||
Badge,
|
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { type ReactNode, Suspense, useMemo, useState } from "react";
|
||||||
import {
|
|
||||||
getObligationStatusVariant,
|
|
||||||
getObligationStatusLabel,
|
|
||||||
} from "@probo/helpers";
|
|
||||||
import { Suspense, useMemo, useState, type ReactNode } from "react";
|
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
import { useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import type { LinkedObligationsDialogQuery } from "/__generated__/core/LinkedObligationsDialogQuery.graphql";
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import type { NodeOf } from "/types";
|
|
||||||
import type {
|
import type {
|
||||||
LinkedObligationsDialogFragment$data,
|
LinkedObligationsDialogFragment$data,
|
||||||
LinkedObligationsDialogFragment$key,
|
LinkedObligationsDialogFragment$key,
|
||||||
} from "/__generated__/core/LinkedObligationsDialogFragment.graphql";
|
} from "/__generated__/core/LinkedObligationsDialogFragment.graphql";
|
||||||
|
import type { LinkedObligationsDialogQuery } from "/__generated__/core/LinkedObligationsDialogQuery.graphql";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
import type { NodeOf } from "/types";
|
||||||
|
|
||||||
const obligationsQuery = graphql`
|
const obligationsQuery = graphql`
|
||||||
query LinkedObligationsDialogQuery($organizationId: ID!) {
|
query LinkedObligationsDialogQuery($organizationId: ID!) {
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
import { useState } from "react";
|
import { sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
|
Button,
|
||||||
Dialog,
|
Dialog,
|
||||||
DialogContent,
|
DialogContent,
|
||||||
DialogFooter,
|
DialogFooter,
|
||||||
Button,
|
|
||||||
Field,
|
Field,
|
||||||
IconTrashCan,
|
IconTrashCan,
|
||||||
useDialogRef,
|
useDialogRef,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useState } from "react";
|
||||||
import { sprintf } from "@probo/helpers";
|
|
||||||
|
|
||||||
type DeleteOrganizationDialogProps = {
|
type DeleteOrganizationDialogProps = {
|
||||||
children: React.ReactNode;
|
children: React.ReactNode;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { Badge, Button, Card } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { sprintf } from "@probo/helpers";
|
import { sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { Badge, Button, Card } from "@probo/ui";
|
||||||
|
|
||||||
import type { TrustCenterGraphQuery$data } from "/__generated__/core/TrustCenterGraphQuery.graphql";
|
import type { TrustCenterGraphQuery$data } from "/__generated__/core/TrustCenterGraphQuery.graphql";
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { graphql } from "relay-runtime";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Button,
|
Button,
|
||||||
IconTrashCan,
|
IconTrashCan,
|
||||||
@@ -11,8 +11,8 @@ import {
|
|||||||
Tr,
|
Tr,
|
||||||
TrButton,
|
TrButton,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { useFragment } from "react-relay";
|
import { useFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import type { LinkedRisksCardFragment$key } from "/__generated__/core/LinkedRisksCardFragment.graphql";
|
import type { LinkedRisksCardFragment$key } from "/__generated__/core/LinkedRisksCardFragment.graphql";
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Badge,
|
Badge,
|
||||||
Button,
|
Button,
|
||||||
@@ -12,10 +13,9 @@ import {
|
|||||||
Select,
|
Select,
|
||||||
Spinner,
|
Spinner,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { type ReactNode, Suspense, useMemo, useState } from "react";
|
||||||
import { Suspense, useMemo, useState, type ReactNode } from "react";
|
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useLazyLoadQuery } from "react-relay";
|
import { useLazyLoadQuery } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import type { LinkedRisksDialogQuery } from "/__generated__/core/LinkedRisksDialogQuery.graphql";
|
import type { LinkedRisksDialogQuery } from "/__generated__/core/LinkedRisksDialogQuery.graphql";
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { ActionDropdown, Skeleton, Button, IconPencil } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { ActionDropdown, Button, IconPencil, Skeleton } from "@probo/ui";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Skeleton state for the framework control panel
|
* Skeleton state for the framework control panel
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { Button, IconPlusLarge, PageHeader, Skeleton } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { Button, IconPlusLarge, PageHeader, Skeleton } from "@probo/ui";
|
||||||
|
|
||||||
export function RisksPageSkeleton() {
|
export function RisksPageSkeleton() {
|
||||||
const { __ } = useTranslate();
|
const { __ } = useTranslate();
|
||||||
|
|||||||
@@ -1,32 +1,32 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import {
|
import {
|
||||||
Card,
|
formatDate,
|
||||||
IconPlusLarge,
|
|
||||||
Button,
|
|
||||||
Tr,
|
|
||||||
Td,
|
|
||||||
Table,
|
|
||||||
Thead,
|
|
||||||
Tbody,
|
|
||||||
Th,
|
|
||||||
IconChevronDown,
|
|
||||||
IconTrashCan,
|
|
||||||
Badge,
|
|
||||||
TrButton,
|
|
||||||
} from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { useFragment } from "react-relay";
|
|
||||||
import { useMemo, useState } from "react";
|
|
||||||
import {
|
|
||||||
sprintf,
|
|
||||||
getSnapshotTypeLabel,
|
getSnapshotTypeLabel,
|
||||||
getSnapshotTypeUrlPath,
|
getSnapshotTypeUrlPath,
|
||||||
formatDate,
|
sprintf,
|
||||||
} from "@probo/helpers";
|
} from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import {
|
||||||
|
Badge,
|
||||||
|
Button,
|
||||||
|
Card,
|
||||||
|
IconChevronDown,
|
||||||
|
IconPlusLarge,
|
||||||
|
IconTrashCan,
|
||||||
|
Table,
|
||||||
|
Tbody,
|
||||||
|
Td,
|
||||||
|
Th,
|
||||||
|
Thead,
|
||||||
|
Tr,
|
||||||
|
TrButton,
|
||||||
|
} from "@probo/ui";
|
||||||
import { clsx } from "clsx";
|
import { clsx } from "clsx";
|
||||||
|
import { useMemo, useState } from "react";
|
||||||
|
import { useFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import type { LinkedSnapshotsCardFragment$key } from "/__generated__/core/LinkedSnapshotsCardFragment.graphql";
|
import type { LinkedSnapshotsCardFragment$key } from "/__generated__/core/LinkedSnapshotsCardFragment.graphql";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|
||||||
import { LinkedSnapshotsDialog } from "./LinkedSnapshotsDialog";
|
import { LinkedSnapshotsDialog } from "./LinkedSnapshotsDialog";
|
||||||
|
|
||||||
|
|||||||
@@ -1,29 +1,29 @@
|
|||||||
|
import { formatDate, getSnapshotTypeLabel } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
|
Badge,
|
||||||
Button,
|
Button,
|
||||||
Dialog,
|
Dialog,
|
||||||
DialogContent,
|
DialogContent,
|
||||||
DialogFooter,
|
DialogFooter,
|
||||||
Badge,
|
|
||||||
InfiniteScrollTrigger,
|
|
||||||
Input,
|
|
||||||
Spinner,
|
|
||||||
IconMagnifyingGlass,
|
IconMagnifyingGlass,
|
||||||
IconPlusLarge,
|
IconPlusLarge,
|
||||||
IconTrashCan,
|
IconTrashCan,
|
||||||
|
InfiniteScrollTrigger,
|
||||||
|
Input,
|
||||||
|
Spinner,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { type ReactNode, Suspense, useMemo, useState } from "react";
|
||||||
import { getSnapshotTypeLabel, formatDate } from "@probo/helpers";
|
|
||||||
import { Suspense, useMemo, useState, type ReactNode } from "react";
|
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
import { useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import type { LinkedSnapshotsDialogQuery } from "/__generated__/core/LinkedSnapshotsDialogQuery.graphql";
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import type { NodeOf } from "/types";
|
|
||||||
import type {
|
import type {
|
||||||
LinkedSnapshotsDialogFragment$data,
|
LinkedSnapshotsDialogFragment$data,
|
||||||
LinkedSnapshotsDialogFragment$key,
|
LinkedSnapshotsDialogFragment$key,
|
||||||
} from "/__generated__/core/LinkedSnapshotsDialogFragment.graphql";
|
} from "/__generated__/core/LinkedSnapshotsDialogFragment.graphql";
|
||||||
|
import type { LinkedSnapshotsDialogQuery } from "/__generated__/core/LinkedSnapshotsDialogQuery.graphql";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
import type { NodeOf } from "/types";
|
||||||
|
|
||||||
const snapshotsQuery = graphql`
|
const snapshotsQuery = graphql`
|
||||||
query LinkedSnapshotsDialogQuery($organizationId: ID!) {
|
query LinkedSnapshotsDialogQuery($organizationId: ID!) {
|
||||||
|
|||||||
@@ -1,27 +1,27 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import {
|
|
||||||
Card,
|
|
||||||
IconPlusLarge,
|
|
||||||
Button,
|
|
||||||
Tr,
|
|
||||||
Td,
|
|
||||||
Table,
|
|
||||||
Thead,
|
|
||||||
Tbody,
|
|
||||||
Th,
|
|
||||||
IconChevronDown,
|
|
||||||
IconTrashCan,
|
|
||||||
TrButton,
|
|
||||||
Badge,
|
|
||||||
} from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { useFragment } from "react-relay";
|
|
||||||
import { useMemo, useState, useEffect } from "react";
|
|
||||||
import { sprintf } from "@probo/helpers";
|
import { sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import {
|
||||||
|
Badge,
|
||||||
|
Button,
|
||||||
|
Card,
|
||||||
|
IconChevronDown,
|
||||||
|
IconPlusLarge,
|
||||||
|
IconTrashCan,
|
||||||
|
Table,
|
||||||
|
Tbody,
|
||||||
|
Td,
|
||||||
|
Th,
|
||||||
|
Thead,
|
||||||
|
Tr,
|
||||||
|
TrButton,
|
||||||
|
} from "@probo/ui";
|
||||||
import { clsx } from "clsx";
|
import { clsx } from "clsx";
|
||||||
|
import { useEffect, useMemo, useState } from "react";
|
||||||
|
import { useFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import type { LinkedStatesOfApplicabilityCardFragment$key } from "/__generated__/core/LinkedStatesOfApplicabilityCardFragment.graphql";
|
import type { LinkedStatesOfApplicabilityCardFragment$key } from "/__generated__/core/LinkedStatesOfApplicabilityCardFragment.graphql";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|
||||||
import { LinkedStatesOfApplicabilityDialog } from "./LinkedStatesOfApplicabilityDialog";
|
import { LinkedStatesOfApplicabilityDialog } from "./LinkedStatesOfApplicabilityDialog";
|
||||||
|
|
||||||
|
|||||||
@@ -1,20 +1,20 @@
|
|||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
|
Badge,
|
||||||
|
Button,
|
||||||
|
Checkbox,
|
||||||
Dialog,
|
Dialog,
|
||||||
DialogContent,
|
DialogContent,
|
||||||
DialogFooter,
|
DialogFooter,
|
||||||
Button,
|
|
||||||
Checkbox,
|
|
||||||
Textarea,
|
Textarea,
|
||||||
Badge,
|
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { Suspense, useState, useRef } from "react";
|
|
||||||
import type { ReactNode } from "react";
|
import type { ReactNode } from "react";
|
||||||
|
import { Suspense, useRef, useState } from "react";
|
||||||
import { useLazyLoadQuery } from "react-relay";
|
import { useLazyLoadQuery } from "react-relay";
|
||||||
import { graphql } from "relay-runtime";
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import type { LinkedStatesOfApplicabilityDialogQuery } from "/__generated__/core/LinkedStatesOfApplicabilityDialogQuery.graphql";
|
import type { LinkedStatesOfApplicabilityDialogQuery } from "/__generated__/core/LinkedStatesOfApplicabilityDialogQuery.graphql";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|
||||||
const query = graphql`
|
const query = graphql`
|
||||||
query LinkedStatesOfApplicabilityDialogQuery($organizationId: ID!) {
|
query LinkedStatesOfApplicabilityDialogQuery($organizationId: ID!) {
|
||||||
|
|||||||
@@ -1,6 +1,4 @@
|
|||||||
import type { GraphQLTaggedNode, OperationType } from "relay-runtime";
|
import { useToggle } from "@probo/hooks";
|
||||||
import type { KeyType, KeyTypeData } from "react-relay/relay-hooks/helpers";
|
|
||||||
import type { usePaginationFragmentHookType } from "react-relay/relay-hooks/usePaginationFragment";
|
|
||||||
import {
|
import {
|
||||||
Button,
|
Button,
|
||||||
Cell,
|
Cell,
|
||||||
@@ -11,18 +9,20 @@ import {
|
|||||||
RowButton,
|
RowButton,
|
||||||
Spinner,
|
Spinner,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { z } from "zod";
|
|
||||||
import { type ReactNode } from "react";
|
|
||||||
import { useToggle } from "@probo/hooks";
|
|
||||||
import { clsx } from "clsx";
|
import { clsx } from "clsx";
|
||||||
|
import { type ReactNode } from "react";
|
||||||
|
import type { KeyType, KeyTypeData } from "react-relay/relay-hooks/helpers";
|
||||||
|
import type { usePaginationFragmentHookType } from "react-relay/relay-hooks/usePaginationFragment";
|
||||||
|
import type { GraphQLTaggedNode, OperationType } from "relay-runtime";
|
||||||
|
import { z } from "zod";
|
||||||
|
|
||||||
import { useStateWithSchema } from "/hooks/useStateWithSchema.ts";
|
import { defaultPageSize,
|
||||||
import { useMutateField } from "/hooks/useMutateField.tsx";
|
|
||||||
import {
|
|
||||||
SortableCellHead,
|
SortableCellHead,
|
||||||
SortableDataTable, defaultPageSize,
|
SortableDataTable,
|
||||||
} from "/components/table/SortableDataTable.tsx";
|
} from "/components/table/SortableDataTable.tsx";
|
||||||
|
import { useMutateField } from "/hooks/useMutateField.tsx";
|
||||||
import { useMutationWithToasts } from "/hooks/useMutationWithToasts.ts";
|
import { useMutationWithToasts } from "/hooks/useMutationWithToasts.ts";
|
||||||
|
import { useStateWithSchema } from "/hooks/useStateWithSchema.ts";
|
||||||
|
|
||||||
type ColumnDefinition = { label: string; field: string } | string;
|
type ColumnDefinition = { label: string; field: string } | string;
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
import { useStateWithRef } from "@probo/hooks";
|
import { useStateWithRef } from "@probo/hooks";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { EditableCell, SelectValue, Spinner, selectCell } from "@probo/ui";
|
import { EditableCell, selectCell, SelectValue, Spinner } from "@probo/ui";
|
||||||
import { useEditableCellRef } from "@probo/ui/src/Molecules/Table/EditableCell.tsx";
|
import { useEditableCellRef } from "@probo/ui/src/Molecules/Table/EditableCell.tsx";
|
||||||
import { useEditableRowContext } from "@probo/ui/src/Molecules/Table/EditableRow.tsx";
|
import { useEditableRowContext } from "@probo/ui/src/Molecules/Table/EditableRow.tsx";
|
||||||
import { getKey } from "@probo/ui/src/Molecules/Table/utils.ts";
|
import { getKey } from "@probo/ui/src/Molecules/Table/utils.ts";
|
||||||
import { Command } from "cmdk";
|
import { Command } from "cmdk";
|
||||||
import { Suspense, type ReactNode } from "react";
|
import { type ReactNode, Suspense } from "react";
|
||||||
import { useLazyLoadQuery } from "react-relay";
|
import { useLazyLoadQuery } from "react-relay";
|
||||||
import type {
|
import type {
|
||||||
GraphQLTaggedNode,
|
GraphQLTaggedNode,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { Avatar } from "@probo/ui";
|
import { Avatar } from "@probo/ui";
|
||||||
|
|
||||||
import { GraphQLCell } from "/components/table/GraphQLCell.tsx";
|
|
||||||
import type { PeopleGraphQuery } from "/__generated__/core/PeopleGraphQuery.graphql.ts";
|
import type { PeopleGraphQuery } from "/__generated__/core/PeopleGraphQuery.graphql.ts";
|
||||||
|
import { GraphQLCell } from "/components/table/GraphQLCell.tsx";
|
||||||
import { peopleQuery } from "/hooks/graph/PeopleGraph.ts";
|
import { peopleQuery } from "/hooks/graph/PeopleGraph.ts";
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import { Avatar, Badge, IconCrossLargeX } from "@probo/ui";
|
|
||||||
import { faviconUrl } from "@probo/helpers";
|
import { faviconUrl } from "@probo/helpers";
|
||||||
|
import { Avatar, Badge, IconCrossLargeX } from "@probo/ui";
|
||||||
|
|
||||||
|
import type { VendorGraphSelectQuery } from "/__generated__/core/VendorGraphSelectQuery.graphql.ts";
|
||||||
import { GraphQLCell } from "/components/table/GraphQLCell";
|
import { GraphQLCell } from "/components/table/GraphQLCell";
|
||||||
import { vendorsSelectQuery } from "/hooks/graph/VendorGraph";
|
import { vendorsSelectQuery } from "/hooks/graph/VendorGraph";
|
||||||
import type { VendorGraphSelectQuery } from "/__generated__/core/VendorGraphSelectQuery.graphql.ts";
|
|
||||||
|
|
||||||
type Vendor = {
|
type Vendor = {
|
||||||
id: string;
|
id: string;
|
||||||
|
|||||||
@@ -1,32 +1,32 @@
|
|||||||
|
import { formatDatetime } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Button,
|
Button,
|
||||||
Dialog,
|
Dialog,
|
||||||
DialogContent,
|
DialogContent,
|
||||||
DialogFooter,
|
DialogFooter,
|
||||||
|
type DialogRef,
|
||||||
DurationPicker,
|
DurationPicker,
|
||||||
Input,
|
Input,
|
||||||
Label,
|
Label,
|
||||||
PropertyRow,
|
PropertyRow,
|
||||||
Textarea,
|
Textarea,
|
||||||
useDialogRef,
|
useDialogRef,
|
||||||
type DialogRef,
|
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import type { ReactNode } from "react";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { Breadcrumb } from "@probo/ui";
|
import { Breadcrumb } from "@probo/ui";
|
||||||
import { graphql } from "relay-runtime";
|
import type { ReactNode } from "react";
|
||||||
import { useFragment, useRelayEnvironment } from "react-relay";
|
|
||||||
import { z } from "zod";
|
|
||||||
import { Controller } from "react-hook-form";
|
import { Controller } from "react-hook-form";
|
||||||
import { formatDatetime } from "@probo/helpers";
|
import { useFragment, useRelayEnvironment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
import { z } from "zod";
|
||||||
|
|
||||||
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
|
||||||
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import { PeopleSelectField } from "/components/form/PeopleSelectField";
|
|
||||||
import type { TaskFormDialogFragment$key } from "/__generated__/core/TaskFormDialogFragment.graphql";
|
import type { TaskFormDialogFragment$key } from "/__generated__/core/TaskFormDialogFragment.graphql";
|
||||||
import { MeasureSelectField } from "/components/form/MeasureSelectField";
|
import { MeasureSelectField } from "/components/form/MeasureSelectField";
|
||||||
|
import { PeopleSelectField } from "/components/form/PeopleSelectField";
|
||||||
|
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
||||||
import { updateStoreCounter } from "/hooks/useMutationWithIncrement";
|
import { updateStoreCounter } from "/hooks/useMutationWithIncrement";
|
||||||
|
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|
||||||
const taskFragment = graphql`
|
const taskFragment = graphql`
|
||||||
fragment TaskFormDialogFragment on Task {
|
fragment TaskFormDialogFragment on Task {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { promisifyMutation, formatDate, formatDuration } from "@probo/helpers";
|
import { formatDate, formatDuration, promisifyMutation } from "@probo/helpers";
|
||||||
import { usePageTitle } from "@probo/hooks";
|
import { usePageTitle } from "@probo/hooks";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
@@ -26,15 +26,15 @@ import {
|
|||||||
} from "react-relay";
|
} from "react-relay";
|
||||||
import { Link, useLocation, useParams } from "react-router";
|
import { Link, useLocation, useParams } from "react-router";
|
||||||
|
|
||||||
|
import type { MeasureTasksTabQuery$data } from "/__generated__/core/MeasureTasksTabQuery.graphql";
|
||||||
|
import type { TaskFormDialogFragment$key } from "/__generated__/core/TaskFormDialogFragment.graphql";
|
||||||
|
import type { TasksCard_TaskRowFragment$key } from "/__generated__/core/TasksCard_TaskRowFragment.graphql";
|
||||||
|
import type { TasksPageFragment$data } from "/__generated__/core/TasksPageFragment.graphql";
|
||||||
import TaskFormDialog, {
|
import TaskFormDialog, {
|
||||||
taskUpdateMutation,
|
taskUpdateMutation,
|
||||||
} from "/components/tasks/TaskFormDialog";
|
} from "/components/tasks/TaskFormDialog";
|
||||||
import { updateStoreCounter } from "/hooks/useMutationWithIncrement";
|
import { updateStoreCounter } from "/hooks/useMutationWithIncrement";
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
import type { TasksCard_TaskRowFragment$key } from "/__generated__/core/TasksCard_TaskRowFragment.graphql";
|
|
||||||
import type { TasksPageFragment$data } from "/__generated__/core/TasksPageFragment.graphql";
|
|
||||||
import type { MeasureTasksTabQuery$data } from "/__generated__/core/MeasureTasksTabQuery.graphql";
|
|
||||||
import type { TaskFormDialogFragment$key } from "/__generated__/core/TaskFormDialogFragment.graphql";
|
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
tasks:
|
tasks:
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
import { sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Button,
|
Button,
|
||||||
Dialog,
|
Dialog,
|
||||||
@@ -7,11 +9,9 @@ import {
|
|||||||
Spinner,
|
Spinner,
|
||||||
useDialogRef,
|
useDialogRef,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { sprintf } from "@probo/helpers";
|
|
||||||
|
|
||||||
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
|
||||||
import { deleteTrustCenterReferenceMutation } from "/hooks/graph/TrustCenterReferenceGraph";
|
import { deleteTrustCenterReferenceMutation } from "/hooks/graph/TrustCenterReferenceGraph";
|
||||||
|
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
children: React.ReactNode;
|
children: React.ReactNode;
|
||||||
|
|||||||
@@ -1,30 +1,30 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import {
|
import {
|
||||||
Button,
|
|
||||||
Tr,
|
|
||||||
Td,
|
|
||||||
Table,
|
|
||||||
Thead,
|
|
||||||
Tbody,
|
|
||||||
Th,
|
|
||||||
IconChevronDown,
|
|
||||||
Badge,
|
|
||||||
Field,
|
|
||||||
Option,
|
|
||||||
} from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { useFragment } from "react-relay";
|
|
||||||
import { useMemo, useState, useCallback } from "react";
|
|
||||||
import {
|
|
||||||
sprintf,
|
|
||||||
getAuditStateVariant,
|
|
||||||
getAuditStateLabel,
|
|
||||||
formatDate,
|
formatDate,
|
||||||
|
getAuditStateLabel,
|
||||||
|
getAuditStateVariant,
|
||||||
getTrustCenterVisibilityOptions,
|
getTrustCenterVisibilityOptions,
|
||||||
|
sprintf,
|
||||||
} from "@probo/helpers";
|
} from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import {
|
||||||
|
Badge,
|
||||||
|
Button,
|
||||||
|
Field,
|
||||||
|
IconChevronDown,
|
||||||
|
Option,
|
||||||
|
Table,
|
||||||
|
Tbody,
|
||||||
|
Td,
|
||||||
|
Th,
|
||||||
|
Thead,
|
||||||
|
Tr,
|
||||||
|
} from "@probo/ui";
|
||||||
|
import { useCallback, useMemo, useState } from "react";
|
||||||
|
import { useFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import type { TrustCenterAuditsCardFragment$key } from "/__generated__/core/TrustCenterAuditsCardFragment.graphql";
|
import type { TrustCenterAuditsCardFragment$key } from "/__generated__/core/TrustCenterAuditsCardFragment.graphql";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|
||||||
const trustCenterAuditFragment = graphql`
|
const trustCenterAuditFragment = graphql`
|
||||||
fragment TrustCenterAuditsCardFragment on Audit {
|
fragment TrustCenterAuditsCardFragment on Audit {
|
||||||
|
|||||||
@@ -1,23 +1,23 @@
|
|||||||
import { graphql } from "relay-runtime";
|
import { getTrustCenterVisibilityOptions, sprintf } from "@probo/helpers";
|
||||||
import {
|
|
||||||
Button,
|
|
||||||
Tr,
|
|
||||||
Td,
|
|
||||||
Table,
|
|
||||||
Thead,
|
|
||||||
Tbody,
|
|
||||||
Th,
|
|
||||||
IconChevronDown,
|
|
||||||
DocumentVersionBadge,
|
|
||||||
DocumentTypeBadge,
|
|
||||||
Field,
|
|
||||||
Option,
|
|
||||||
Badge,
|
|
||||||
} from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import {
|
||||||
|
Badge,
|
||||||
|
Button,
|
||||||
|
DocumentTypeBadge,
|
||||||
|
DocumentVersionBadge,
|
||||||
|
Field,
|
||||||
|
IconChevronDown,
|
||||||
|
Option,
|
||||||
|
Table,
|
||||||
|
Tbody,
|
||||||
|
Td,
|
||||||
|
Th,
|
||||||
|
Thead,
|
||||||
|
Tr,
|
||||||
|
} from "@probo/ui";
|
||||||
|
import { useCallback, useMemo, useState } from "react";
|
||||||
import { useFragment } from "react-relay";
|
import { useFragment } from "react-relay";
|
||||||
import { useMemo, useState, useCallback } from "react";
|
import { graphql } from "relay-runtime";
|
||||||
import { sprintf, getTrustCenterVisibilityOptions } from "@probo/helpers";
|
|
||||||
|
|
||||||
import type { TrustCenterDocumentsCardFragment$key } from "/__generated__/core/TrustCenterDocumentsCardFragment.graphql";
|
import type { TrustCenterDocumentsCardFragment$key } from "/__generated__/core/TrustCenterDocumentsCardFragment.graphql";
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|||||||
@@ -1,28 +1,28 @@
|
|||||||
import { graphql } from "relay-runtime";
|
import { formatDate, getTrustCenterVisibilityOptions, sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Button,
|
|
||||||
Tr,
|
|
||||||
Td,
|
|
||||||
Table,
|
|
||||||
Thead,
|
|
||||||
Tbody,
|
|
||||||
Th,
|
|
||||||
IconChevronDown,
|
|
||||||
Field,
|
|
||||||
Option,
|
|
||||||
Badge,
|
Badge,
|
||||||
|
Button,
|
||||||
|
Field,
|
||||||
|
IconArrowLink,
|
||||||
|
IconChevronDown,
|
||||||
IconPencil,
|
IconPencil,
|
||||||
IconTrashCan,
|
IconTrashCan,
|
||||||
IconArrowLink,
|
Option,
|
||||||
|
Table,
|
||||||
|
Tbody,
|
||||||
|
Td,
|
||||||
|
Th,
|
||||||
|
Thead,
|
||||||
|
Tr,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useCallback, useMemo, useState } from "react";
|
||||||
import { useFragment } from "react-relay";
|
import { useFragment } from "react-relay";
|
||||||
import { useMemo, useState, useCallback } from "react";
|
import { graphql } from "relay-runtime";
|
||||||
import { sprintf, getTrustCenterVisibilityOptions, formatDate } from "@probo/helpers";
|
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
TrustCenterFilesCardFragment$key,
|
|
||||||
TrustCenterFilesCardFragment$data,
|
TrustCenterFilesCardFragment$data,
|
||||||
|
TrustCenterFilesCardFragment$key,
|
||||||
} from "/__generated__/core/TrustCenterFilesCardFragment.graphql";
|
} from "/__generated__/core/TrustCenterFilesCardFragment.graphql";
|
||||||
|
|
||||||
const trustCenterFileFragment = graphql`
|
const trustCenterFileFragment = graphql`
|
||||||
|
|||||||
@@ -10,14 +10,14 @@ import {
|
|||||||
Textarea,
|
Textarea,
|
||||||
useDialogRef,
|
useDialogRef,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { type ReactNode, useState, useImperativeHandle, forwardRef } from "react";
|
import { forwardRef, type ReactNode, useImperativeHandle, useState } from "react";
|
||||||
import { z } from "zod";
|
import { z } from "zod";
|
||||||
|
|
||||||
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
|
||||||
import {
|
import {
|
||||||
useCreateTrustCenterReferenceMutation,
|
useCreateTrustCenterReferenceMutation,
|
||||||
useUpdateTrustCenterReferenceMutation,
|
useUpdateTrustCenterReferenceMutation,
|
||||||
} from "/hooks/graph/TrustCenterReferenceGraph";
|
} from "/hooks/graph/TrustCenterReferenceGraph";
|
||||||
|
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
||||||
|
|
||||||
const referenceSchema = z.object({
|
const referenceSchema = z.object({
|
||||||
name: z.string().min(1, "Name is required"),
|
name: z.string().min(1, "Name is required"),
|
||||||
|
|||||||
@@ -1,36 +1,36 @@
|
|||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { safeOpenUrl } from "@probo/helpers";
|
import { safeOpenUrl } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Avatar,
|
Avatar,
|
||||||
Button,
|
Button,
|
||||||
Table,
|
IconArrowLink,
|
||||||
Thead,
|
IconPencil,
|
||||||
Tbody,
|
|
||||||
Tr,
|
|
||||||
Th,
|
|
||||||
Td,
|
|
||||||
IconPlusLarge,
|
IconPlusLarge,
|
||||||
IconTrashCan,
|
IconTrashCan,
|
||||||
IconPencil,
|
Table,
|
||||||
IconArrowLink,
|
Tbody,
|
||||||
|
Td,
|
||||||
|
Th,
|
||||||
|
Thead,
|
||||||
|
Tr,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useRef, useState } from "react";
|
import { useRef, useState } from "react";
|
||||||
import { useLazyLoadQuery } from "react-relay";
|
import { useLazyLoadQuery } from "react-relay";
|
||||||
|
|
||||||
|
import type {
|
||||||
|
TrustCenterReferenceGraphQuery$data,
|
||||||
|
TrustCenterReferenceGraphQuery,
|
||||||
|
} from "/__generated__/core/TrustCenterReferenceGraphQuery.graphql";
|
||||||
import {
|
import {
|
||||||
trustCenterReferencesQuery,
|
trustCenterReferencesQuery,
|
||||||
useUpdateTrustCenterReferenceRankMutation,
|
useUpdateTrustCenterReferenceRankMutation,
|
||||||
} from "/hooks/graph/TrustCenterReferenceGraph";
|
} from "/hooks/graph/TrustCenterReferenceGraph";
|
||||||
import type {
|
|
||||||
TrustCenterReferenceGraphQuery,
|
|
||||||
TrustCenterReferenceGraphQuery$data,
|
|
||||||
} from "/__generated__/core/TrustCenterReferenceGraphQuery.graphql";
|
|
||||||
|
|
||||||
|
import { DeleteTrustCenterReferenceDialog } from "./DeleteTrustCenterReferenceDialog";
|
||||||
import {
|
import {
|
||||||
TrustCenterReferenceDialog,
|
TrustCenterReferenceDialog,
|
||||||
type TrustCenterReferenceDialogRef,
|
type TrustCenterReferenceDialogRef,
|
||||||
} from "./TrustCenterReferenceDialog";
|
} from "./TrustCenterReferenceDialog";
|
||||||
import { DeleteTrustCenterReferenceDialog } from "./DeleteTrustCenterReferenceDialog";
|
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
trustCenterId: string;
|
trustCenterId: string;
|
||||||
|
|||||||
@@ -1,24 +1,24 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import {
|
|
||||||
Button,
|
|
||||||
Tr,
|
|
||||||
Td,
|
|
||||||
Table,
|
|
||||||
Thead,
|
|
||||||
Tbody,
|
|
||||||
Th,
|
|
||||||
IconChevronDown,
|
|
||||||
IconCheckmark1,
|
|
||||||
IconCrossLargeX,
|
|
||||||
Badge,
|
|
||||||
} from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { useFragment } from "react-relay";
|
|
||||||
import { useMemo, useState } from "react";
|
|
||||||
import { sprintf } from "@probo/helpers";
|
import { sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import {
|
||||||
|
Badge,
|
||||||
|
Button,
|
||||||
|
IconCheckmark1,
|
||||||
|
IconChevronDown,
|
||||||
|
IconCrossLargeX,
|
||||||
|
Table,
|
||||||
|
Tbody,
|
||||||
|
Td,
|
||||||
|
Th,
|
||||||
|
Thead,
|
||||||
|
Tr,
|
||||||
|
} from "@probo/ui";
|
||||||
|
import { useMemo, useState } from "react";
|
||||||
|
import { useFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useOrganizationId } from "/hooks/useOrganizationId";
|
|
||||||
import type { TrustCenterVendorsCardFragment$key } from "/__generated__/core/TrustCenterVendorsCardFragment.graphql";
|
import type { TrustCenterVendorsCardFragment$key } from "/__generated__/core/TrustCenterVendorsCardFragment.graphql";
|
||||||
|
import { useOrganizationId } from "/hooks/useOrganizationId";
|
||||||
|
|
||||||
const trustCenterVendorFragment = graphql`
|
const trustCenterVendorFragment = graphql`
|
||||||
fragment TrustCenterVendorsCardFragment on Vendor {
|
fragment TrustCenterVendorsCardFragment on Vendor {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { Environment, Network, RecordSource, Store } from "relay-runtime";
|
|
||||||
import { makeFetchQuery } from "@probo/relay";
|
import { makeFetchQuery } from "@probo/relay";
|
||||||
|
import { Environment, Network, RecordSource, Store } from "relay-runtime";
|
||||||
|
|
||||||
export const coreEnvironment = new Environment({
|
export const coreEnvironment = new Environment({
|
||||||
configName: "core",
|
configName: "core",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { z } from "zod";
|
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useFragment } from "react-relay";
|
import { useFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
import { z } from "zod";
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
useRiskFormFragment$data,
|
useRiskFormFragment$data,
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import { z } from "zod";
|
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useFragment } from "react-relay";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { useEffect, useMemo } from "react";
|
import { useEffect, useMemo } from "react";
|
||||||
|
import { useFragment } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
import { z } from "zod";
|
||||||
|
|
||||||
import type { useVendorFormFragment$key } from "/__generated__/core/useVendorFormFragment.graphql";
|
import type { useVendorFormFragment$key } from "/__generated__/core/useVendorFormFragment.graphql";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "../useMutationWithToasts";
|
|
||||||
import { useFormWithSchema } from "../useFormWithSchema";
|
import { useFormWithSchema } from "../useFormWithSchema";
|
||||||
|
import { useMutationWithToasts } from "../useMutationWithToasts";
|
||||||
|
|
||||||
const schema = z.object({
|
const schema = z.object({
|
||||||
name: z.string().min(1, "Name is required"),
|
name: z.string().min(1, "Name is required"),
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
|
||||||
import { useConfirm } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { promisifyMutation, sprintf } from "@probo/helpers";
|
import { promisifyMutation, sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useConfirm } from "@probo/ui";
|
||||||
|
import { useMutation } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "../useMutationWithToasts";
|
import { useMutationWithToasts } from "../useMutationWithToasts";
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
|
||||||
import { useConfirm } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { promisifyMutation, sprintf } from "@probo/helpers";
|
import { promisifyMutation, sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useConfirm } from "@probo/ui";
|
||||||
|
import { useMutation } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "../useMutationWithToasts";
|
import { useMutationWithToasts } from "../useMutationWithToasts";
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
|
||||||
import { useConfirm } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { promisifyMutation, sprintf } from "@probo/helpers";
|
import { promisifyMutation, sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useConfirm } from "@probo/ui";
|
||||||
|
import { useMutation } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "../useMutationWithToasts";
|
import { useMutationWithToasts } from "../useMutationWithToasts";
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
|
||||||
import { useConfirm } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { promisifyMutation, sprintf } from "@probo/helpers";
|
import { promisifyMutation, sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useConfirm } from "@probo/ui";
|
||||||
|
import { useMutation } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
export const dataQuery = graphql`
|
export const dataQuery = graphql`
|
||||||
query DatumGraphListQuery($organizationId: ID!, $snapshotId: ID = null) {
|
query DatumGraphListQuery($organizationId: ID!, $snapshotId: ID = null) {
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { graphql } from "relay-runtime";
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
|
import type { DocumentGraphBulkExportDocumentsMutation } from "/__generated__/core/DocumentGraphBulkExportDocumentsMutation.graphql";
|
||||||
|
import type { DocumentGraphDeleteDraftMutation } from "/__generated__/core/DocumentGraphDeleteDraftMutation.graphql";
|
||||||
import type { DocumentGraphDeleteMutation } from "/__generated__/core/DocumentGraphDeleteMutation.graphql";
|
import type { DocumentGraphDeleteMutation } from "/__generated__/core/DocumentGraphDeleteMutation.graphql";
|
||||||
import type { DocumentGraphSendSigningNotificationsMutation } from "/__generated__/core/DocumentGraphSendSigningNotificationsMutation.graphql";
|
import type { DocumentGraphSendSigningNotificationsMutation } from "/__generated__/core/DocumentGraphSendSigningNotificationsMutation.graphql";
|
||||||
import type { DocumentGraphDeleteDraftMutation } from "/__generated__/core/DocumentGraphDeleteDraftMutation.graphql";
|
|
||||||
import type { DocumentGraphBulkExportDocumentsMutation } from "/__generated__/core/DocumentGraphBulkExportDocumentsMutation.graphql";
|
|
||||||
|
|
||||||
import { useMutationWithToasts } from "../useMutationWithToasts";
|
import { useMutationWithToasts } from "../useMutationWithToasts";
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useCallback } from "react";
|
|
||||||
import { sprintf } from "@probo/helpers";
|
import { sprintf } from "@probo/helpers";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { useConfirm } from "@probo/ui";
|
import { useConfirm } from "@probo/ui";
|
||||||
|
import { useCallback } from "react";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "../useMutationWithToasts";
|
import { useMutationWithToasts } from "../useMutationWithToasts";
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
|
||||||
import { useConfirm } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { promisifyMutation, sprintf } from "@probo/helpers";
|
import { promisifyMutation, sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useConfirm } from "@probo/ui";
|
||||||
|
import { useMutation } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "../useMutationWithToasts";
|
import { useMutationWithToasts } from "../useMutationWithToasts";
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
|
||||||
import { useConfirm } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { promisifyMutation } from "@probo/helpers";
|
import { promisifyMutation } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useConfirm } from "@probo/ui";
|
||||||
|
import { useMutation } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "../useMutationWithToasts";
|
import { useMutationWithToasts } from "../useMutationWithToasts";
|
||||||
|
|
||||||
|
|||||||
@@ -1,24 +1,24 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import {
|
import {
|
||||||
|
formatError,
|
||||||
|
type GraphQLError,
|
||||||
|
promisifyMutation,
|
||||||
|
sprintf,
|
||||||
|
} from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useConfirm, useToast } from "@probo/ui";
|
||||||
|
import { useMemo } from "react";
|
||||||
|
import {
|
||||||
|
type PreloadedQuery,
|
||||||
useLazyLoadQuery,
|
useLazyLoadQuery,
|
||||||
useMutation,
|
useMutation,
|
||||||
usePaginationFragment,
|
usePaginationFragment,
|
||||||
usePreloadedQuery,
|
usePreloadedQuery,
|
||||||
type PreloadedQuery,
|
|
||||||
} from "react-relay";
|
} from "react-relay";
|
||||||
import { useMemo } from "react";
|
import { graphql } from "relay-runtime";
|
||||||
import { useConfirm, useToast } from "@probo/ui";
|
|
||||||
import {
|
|
||||||
promisifyMutation,
|
|
||||||
sprintf,
|
|
||||||
formatError,
|
|
||||||
type GraphQLError,
|
|
||||||
} from "@probo/helpers";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
|
|
||||||
import type { PeopleGraphPaginatedQuery } from "/__generated__/core/PeopleGraphPaginatedQuery.graphql";
|
|
||||||
import type { PeopleGraphPaginatedFragment$key } from "/__generated__/core/PeopleGraphPaginatedFragment.graphql";
|
|
||||||
import type { PeopleGraphDeleteMutation } from "/__generated__/core/PeopleGraphDeleteMutation.graphql";
|
import type { PeopleGraphDeleteMutation } from "/__generated__/core/PeopleGraphDeleteMutation.graphql";
|
||||||
|
import type { PeopleGraphPaginatedFragment$key } from "/__generated__/core/PeopleGraphPaginatedFragment.graphql";
|
||||||
|
import type { PeopleGraphPaginatedQuery } from "/__generated__/core/PeopleGraphPaginatedQuery.graphql";
|
||||||
import type { PeopleGraphQuery } from "/__generated__/core/PeopleGraphQuery.graphql";
|
import type { PeopleGraphQuery } from "/__generated__/core/PeopleGraphQuery.graphql";
|
||||||
|
|
||||||
export const peopleQuery = graphql`
|
export const peopleQuery = graphql`
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
|
||||||
import { useConfirm } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { promisifyMutation, sprintf } from "@probo/helpers";
|
import { promisifyMutation, sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useConfirm } from "@probo/ui";
|
||||||
|
import { useMutation } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "../useMutationWithToasts";
|
import { useMutationWithToasts } from "../useMutationWithToasts";
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
|
||||||
import { useConfirm } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { promisifyMutation, sprintf } from "@probo/helpers";
|
import { promisifyMutation, sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useConfirm } from "@probo/ui";
|
||||||
|
import { useMutation } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "../useMutationWithToasts";
|
import { useMutationWithToasts } from "../useMutationWithToasts";
|
||||||
|
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
usePreloadedQuery,
|
|
||||||
usePaginationFragment,
|
|
||||||
type PreloadedQuery,
|
type PreloadedQuery,
|
||||||
|
usePaginationFragment,
|
||||||
|
usePreloadedQuery,
|
||||||
} from "react-relay";
|
} from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import type { RiskGraphDeleteMutation } from "/__generated__/core/RiskGraphDeleteMutation.graphql.ts";
|
import type { RiskGraphDeleteMutation } from "/__generated__/core/RiskGraphDeleteMutation.graphql.ts";
|
||||||
import type { RiskGraphListQuery } from "/__generated__/core/RiskGraphListQuery.graphql.ts";
|
|
||||||
import type { RiskGraphFragment$key } from "/__generated__/core/RiskGraphFragment.graphql.ts";
|
import type { RiskGraphFragment$key } from "/__generated__/core/RiskGraphFragment.graphql.ts";
|
||||||
|
import type { RiskGraphListQuery } from "/__generated__/core/RiskGraphListQuery.graphql.ts";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "../useMutationWithToasts.ts";
|
import { useMutationWithToasts } from "../useMutationWithToasts.ts";
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
|
||||||
import { useConfirm } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { promisifyMutation, sprintf } from "@probo/helpers";
|
import { promisifyMutation, sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useConfirm } from "@probo/ui";
|
||||||
|
import { useMutation } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "../useMutationWithToasts";
|
import { useMutationWithToasts } from "../useMutationWithToasts";
|
||||||
|
|
||||||
|
|||||||
@@ -1,18 +1,18 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import {
|
import {
|
||||||
|
formatError,
|
||||||
|
type GraphQLError,
|
||||||
|
promisifyMutation,
|
||||||
|
sprintf,
|
||||||
|
} from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useConfirm, useToast } from "@probo/ui";
|
||||||
|
import {
|
||||||
|
type PreloadedQuery,
|
||||||
useMutation,
|
useMutation,
|
||||||
usePaginationFragment,
|
usePaginationFragment,
|
||||||
usePreloadedQuery,
|
usePreloadedQuery,
|
||||||
type PreloadedQuery,
|
|
||||||
} from "react-relay";
|
} from "react-relay";
|
||||||
import { useConfirm, useToast } from "@probo/ui";
|
import { graphql } from "relay-runtime";
|
||||||
import {
|
|
||||||
promisifyMutation,
|
|
||||||
sprintf,
|
|
||||||
formatError,
|
|
||||||
type GraphQLError,
|
|
||||||
} from "@probo/helpers";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
|
|
||||||
import type { StateOfApplicabilityGraphDeleteMutation } from "/__generated__/core/StateOfApplicabilityGraphDeleteMutation.graphql";
|
import type { StateOfApplicabilityGraphDeleteMutation } from "/__generated__/core/StateOfApplicabilityGraphDeleteMutation.graphql";
|
||||||
import type { StateOfApplicabilityGraphPaginatedFragment$key } from "/__generated__/core/StateOfApplicabilityGraphPaginatedFragment.graphql";
|
import type { StateOfApplicabilityGraphPaginatedFragment$key } from "/__generated__/core/StateOfApplicabilityGraphPaginatedFragment.graphql";
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import { graphql, useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
import { graphql, useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
||||||
|
|
||||||
import type { TrustCenterAccessGraphQuery } from "/__generated__/core/TrustCenterAccessGraphQuery.graphql";
|
|
||||||
import type {
|
import type {
|
||||||
TrustCenterAccessGraph_accesses$data,
|
TrustCenterAccessGraph_accesses$data,
|
||||||
TrustCenterAccessGraph_accesses$key,
|
TrustCenterAccessGraph_accesses$key,
|
||||||
} from "/__generated__/core/TrustCenterAccessGraph_accesses.graphql";
|
} from "/__generated__/core/TrustCenterAccessGraph_accesses.graphql";
|
||||||
|
import type { TrustCenterAccessGraphQuery } from "/__generated__/core/TrustCenterAccessGraphQuery.graphql";
|
||||||
|
|
||||||
export const trustCenterAccessesPaginationFragment = graphql`
|
export const trustCenterAccessesPaginationFragment = graphql`
|
||||||
fragment TrustCenterAccessGraph_accesses on TrustCenter
|
fragment TrustCenterAccessGraph_accesses on TrustCenter
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
|
||||||
import type { TrustCenterAuditGraphUpdateMutation } from "/__generated__/core/TrustCenterAuditGraphUpdateMutation.graphql";
|
import type { TrustCenterAuditGraphUpdateMutation } from "/__generated__/core/TrustCenterAuditGraphUpdateMutation.graphql";
|
||||||
|
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
||||||
|
|
||||||
export const trustCenterAuditUpdateMutation = graphql`
|
export const trustCenterAuditUpdateMutation = graphql`
|
||||||
mutation TrustCenterAuditGraphUpdateMutation($input: UpdateAuditInput!) {
|
mutation TrustCenterAuditGraphUpdateMutation($input: UpdateAuditInput!) {
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
|
||||||
import type { TrustCenterDocumentGraphUpdateMutation } from "/__generated__/core/TrustCenterDocumentGraphUpdateMutation.graphql";
|
import type { TrustCenterDocumentGraphUpdateMutation } from "/__generated__/core/TrustCenterDocumentGraphUpdateMutation.graphql";
|
||||||
|
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
||||||
|
|
||||||
export const trustCenterDocumentsQuery = graphql`
|
export const trustCenterDocumentsQuery = graphql`
|
||||||
query TrustCenterDocumentGraphQuery($organizationId: ID!) {
|
query TrustCenterDocumentGraphQuery($organizationId: ID!) {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { graphql } from "relay-runtime";
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
|
||||||
import type { TrustCenterGraphUpdateMutation } from "/__generated__/core/TrustCenterGraphUpdateMutation.graphql";
|
import type { TrustCenterGraphUpdateMutation } from "/__generated__/core/TrustCenterGraphUpdateMutation.graphql";
|
||||||
|
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
||||||
|
|
||||||
export const trustCenterQuery = graphql`
|
export const trustCenterQuery = graphql`
|
||||||
query TrustCenterGraphQuery($organizationId: ID!) {
|
query TrustCenterGraphQuery($organizationId: ID!) {
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import { graphql } from "react-relay";
|
import { graphql } from "react-relay";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
|
||||||
import type { TrustCenterReferenceGraphCreateMutation } from "/__generated__/core/TrustCenterReferenceGraphCreateMutation.graphql";
|
import type { TrustCenterReferenceGraphCreateMutation } from "/__generated__/core/TrustCenterReferenceGraphCreateMutation.graphql";
|
||||||
|
import type { TrustCenterReferenceGraphDeleteMutation } from "/__generated__/core/TrustCenterReferenceGraphDeleteMutation.graphql";
|
||||||
import type { TrustCenterReferenceGraphUpdateMutation } from "/__generated__/core/TrustCenterReferenceGraphUpdateMutation.graphql";
|
import type { TrustCenterReferenceGraphUpdateMutation } from "/__generated__/core/TrustCenterReferenceGraphUpdateMutation.graphql";
|
||||||
import type { TrustCenterReferenceGraphUpdateRankMutation } from "/__generated__/core/TrustCenterReferenceGraphUpdateRankMutation.graphql";
|
import type { TrustCenterReferenceGraphUpdateRankMutation } from "/__generated__/core/TrustCenterReferenceGraphUpdateRankMutation.graphql";
|
||||||
import type { TrustCenterReferenceGraphDeleteMutation } from "/__generated__/core/TrustCenterReferenceGraphDeleteMutation.graphql";
|
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
||||||
|
|
||||||
export const trustCenterReferencesQuery = graphql`
|
export const trustCenterReferencesQuery = graphql`
|
||||||
query TrustCenterReferenceGraphQuery($trustCenterId: ID!) {
|
query TrustCenterReferenceGraphQuery($trustCenterId: ID!) {
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
|
||||||
import type { TrustCenterVendorGraphUpdateMutation } from "/__generated__/core/TrustCenterVendorGraphUpdateMutation.graphql";
|
import type { TrustCenterVendorGraphUpdateMutation } from "/__generated__/core/TrustCenterVendorGraphUpdateMutation.graphql";
|
||||||
|
import { useMutationWithToasts } from "/hooks/useMutationWithToasts";
|
||||||
|
|
||||||
export const trustCenterVendorUpdateMutation = graphql`
|
export const trustCenterVendorUpdateMutation = graphql`
|
||||||
mutation TrustCenterVendorGraphUpdateMutation($input: UpdateVendorInput!) {
|
mutation TrustCenterVendorGraphUpdateMutation($input: UpdateVendorInput!) {
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation, useLazyLoadQuery } from "react-relay";
|
|
||||||
import { useConfirm } from "@probo/ui";
|
|
||||||
import { promisifyMutation, sprintf } from "@probo/helpers";
|
import { promisifyMutation, sprintf } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useConfirm } from "@probo/ui";
|
||||||
import { useMemo } from "react";
|
import { useMemo } from "react";
|
||||||
|
import { useLazyLoadQuery, useMutation } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import type { VendorGraphSelectQuery } from "/__generated__/core/VendorGraphSelectQuery.graphql.ts";
|
|
||||||
import type { VendorGraphDeleteMutation } from "/__generated__/core/VendorGraphDeleteMutation.graphql.ts";
|
|
||||||
import type { VendorGraphCreateMutation } from "/__generated__/core/VendorGraphCreateMutation.graphql.ts";
|
import type { VendorGraphCreateMutation } from "/__generated__/core/VendorGraphCreateMutation.graphql.ts";
|
||||||
|
import type { VendorGraphDeleteMutation } from "/__generated__/core/VendorGraphDeleteMutation.graphql.ts";
|
||||||
|
import type { VendorGraphSelectQuery } from "/__generated__/core/VendorGraphSelectQuery.graphql.ts";
|
||||||
|
|
||||||
import { useMutationWithToasts } from "../useMutationWithToasts.ts";
|
import { useMutationWithToasts } from "../useMutationWithToasts.ts";
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { graphql, useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
import { graphql, useLazyLoadQuery, usePaginationFragment } from "react-relay";
|
||||||
|
|
||||||
import type { usePaginatedMeasuresQuery } from "/__generated__/core/usePaginatedMeasuresQuery.graphql";
|
|
||||||
import type { usePaginatedMeasuresFragment$key } from "/__generated__/core/usePaginatedMeasuresFragment.graphql";
|
import type { usePaginatedMeasuresFragment$key } from "/__generated__/core/usePaginatedMeasuresFragment.graphql";
|
||||||
|
import type { usePaginatedMeasuresQuery } from "/__generated__/core/usePaginatedMeasuresQuery.graphql";
|
||||||
|
|
||||||
const measuresQuery = graphql`
|
const measuresQuery = graphql`
|
||||||
query usePaginatedMeasuresQuery($organizationId: ID!) {
|
query usePaginatedMeasuresQuery($organizationId: ID!) {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
|
import { zodResolver } from "@hookform/resolvers/zod";
|
||||||
import { useForm } from "react-hook-form";
|
import { useForm } from "react-hook-form";
|
||||||
import type { z, ZodTypeAny } from "zod";
|
import type { z, ZodTypeAny } from "zod";
|
||||||
import { zodResolver } from "@hookform/resolvers/zod";
|
|
||||||
|
|
||||||
export function useFormWithSchema<T extends ZodTypeAny>(
|
export function useFormWithSchema<T extends ZodTypeAny>(
|
||||||
schema: T,
|
schema: T,
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import type { GraphQLTaggedNode } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
import { useMutation } from "react-relay";
|
||||||
|
import type { GraphQLTaggedNode } from "relay-runtime";
|
||||||
|
|
||||||
export type MutationFieldUpdate<T extends Record<string, unknown>, TKey extends keyof T> = (
|
export type MutationFieldUpdate<T extends Record<string, unknown>, TKey extends keyof T> = (
|
||||||
field: TKey,
|
field: TKey,
|
||||||
|
|||||||
@@ -1,3 +1,6 @@
|
|||||||
|
import { formatError, type GraphQLError } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useToast } from "@probo/ui";
|
||||||
import { useCallback } from "react";
|
import { useCallback } from "react";
|
||||||
import {
|
import {
|
||||||
useMutation,
|
useMutation,
|
||||||
@@ -10,9 +13,6 @@ import {
|
|||||||
type GraphQLTaggedNode,
|
type GraphQLTaggedNode,
|
||||||
type MutationParameters,
|
type MutationParameters,
|
||||||
} from "relay-runtime";
|
} from "relay-runtime";
|
||||||
import { useToast } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { formatError, type GraphQLError } from "@probo/helpers";
|
|
||||||
|
|
||||||
const defaultOptions = {
|
const defaultOptions = {
|
||||||
field: "totalCount",
|
field: "totalCount",
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
|
import { formatError, type GraphQLError } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { useToast } from "@probo/ui";
|
||||||
import { useCallback } from "react";
|
import { useCallback } from "react";
|
||||||
import { useMutation, type UseMutationConfig } from "react-relay";
|
import { useMutation, type UseMutationConfig } from "react-relay";
|
||||||
import { useToast } from "@probo/ui";
|
import type { GraphQLTaggedNode, MutationParameters } from "relay-runtime";
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import type { MutationParameters, GraphQLTaggedNode } from "relay-runtime";
|
|
||||||
import { formatError, type GraphQLError } from "@probo/helpers";
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A decorated useMutation hook that emits toast notifications on success or error.
|
* A decorated useMutation hook that emits toast notifications on success or error.
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { z, ZodError, type ZodTypeAny } from "zod";
|
|
||||||
import { useCallback, useMemo, useState } from "react";
|
import { useCallback, useMemo, useState } from "react";
|
||||||
|
import { z, ZodError, type ZodTypeAny } from "zod";
|
||||||
|
|
||||||
export function useStateWithSchema<T extends ZodTypeAny>(
|
export function useStateWithSchema<T extends ZodTypeAny>(
|
||||||
schema: T,
|
schema: T,
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { useEffect, useRef, useState } from "react";
|
|
||||||
import MiniSearch from "minisearch";
|
|
||||||
import type { Vendor } from "@probo/vendors";
|
import type { Vendor } from "@probo/vendors";
|
||||||
|
import MiniSearch from "minisearch";
|
||||||
|
import { useEffect, useRef, useState } from "react";
|
||||||
|
|
||||||
export function useVendorSearch() {
|
export function useVendorSearch() {
|
||||||
const searchRef = useRef<(s: string) => Vendor[]>(() => []);
|
const searchRef = useRef<(s: string) => Vendor[]>(() => []);
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { Outlet } from "react-router";
|
|
||||||
import { Logo, Button, IconArrowBoxLeft, useToast } from "@probo/ui";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { Button, IconArrowBoxLeft, Logo, useToast } from "@probo/ui";
|
||||||
import type { ReactNode } from "react";
|
import type { ReactNode } from "react";
|
||||||
|
import { Outlet } from "react-router";
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
organizationName: string;
|
organizationName: string;
|
||||||
|
|||||||
@@ -1,17 +1,17 @@
|
|||||||
import { useEffect, useState } from "react";
|
import { sprintf } from "@probo/helpers";
|
||||||
import { useSearchParams } from "react-router";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Button,
|
Button,
|
||||||
Card,
|
Card,
|
||||||
|
IconCircleCheck,
|
||||||
|
IconCircleProgress,
|
||||||
Logo,
|
Logo,
|
||||||
Spinner,
|
Spinner,
|
||||||
IconCircleProgress,
|
|
||||||
IconCircleCheck,
|
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useWindowSize } from "usehooks-ts";
|
|
||||||
import { clsx } from "clsx";
|
import { clsx } from "clsx";
|
||||||
import { sprintf } from "@probo/helpers";
|
import { useEffect, useState } from "react";
|
||||||
|
import { useSearchParams } from "react-router";
|
||||||
|
import { useWindowSize } from "usehooks-ts";
|
||||||
|
|
||||||
import { PDFPreview } from "../components/documents/PDFPreview";
|
import { PDFPreview } from "../components/documents/PDFPreview";
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { graphql, usePreloadedQuery, type PreloadedQuery } from "react-relay";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
|
import { graphql, type PreloadedQuery, usePreloadedQuery } from "react-relay";
|
||||||
|
|
||||||
import type { APIKeysPageQuery } from "/__generated__/iam/APIKeysPageQuery.graphql";
|
import type { APIKeysPageQuery } from "/__generated__/iam/APIKeysPageQuery.graphql";
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
|
import { CenteredLayoutSkeleton } from "@probo/ui";
|
||||||
import { Suspense, useEffect } from "react";
|
import { Suspense, useEffect } from "react";
|
||||||
import { useQueryLoader } from "react-relay";
|
import { useQueryLoader } from "react-relay";
|
||||||
import { CenteredLayoutSkeleton } from "@probo/ui";
|
|
||||||
|
|
||||||
import type { APIKeysPageQuery } from "/__generated__/iam/APIKeysPageQuery.graphql";
|
import type { APIKeysPageQuery } from "/__generated__/iam/APIKeysPageQuery.graphql";
|
||||||
import { IAMRelayProvider } from "/providers/IAMRelayProvider";
|
import { IAMRelayProvider } from "/providers/IAMRelayProvider";
|
||||||
|
|||||||
@@ -1,14 +1,5 @@
|
|||||||
import { useState } from "react";
|
|
||||||
import { Controller } from "react-hook-form";
|
|
||||||
import {
|
|
||||||
ConnectionHandler,
|
|
||||||
graphql,
|
|
||||||
useFragment,
|
|
||||||
useMutation,
|
|
||||||
} from "react-relay";
|
|
||||||
import { z } from "zod";
|
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { formatError } from "@probo/helpers";
|
import { formatError } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Breadcrumb,
|
Breadcrumb,
|
||||||
Button,
|
Button,
|
||||||
@@ -24,10 +15,19 @@ import {
|
|||||||
useDialogRef,
|
useDialogRef,
|
||||||
useToast,
|
useToast,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
|
import { useState } from "react";
|
||||||
|
import { Controller } from "react-hook-form";
|
||||||
|
import {
|
||||||
|
ConnectionHandler,
|
||||||
|
graphql,
|
||||||
|
useFragment,
|
||||||
|
useMutation,
|
||||||
|
} from "react-relay";
|
||||||
|
import { z } from "zod";
|
||||||
|
|
||||||
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
|
||||||
import type { PersonalAPIKeyListFragment$key } from "/__generated__/iam/PersonalAPIKeyListFragment.graphql";
|
|
||||||
import type { PersonalAPIKeyListCreateMutation } from "/__generated__/iam/PersonalAPIKeyListCreateMutation.graphql";
|
import type { PersonalAPIKeyListCreateMutation } from "/__generated__/iam/PersonalAPIKeyListCreateMutation.graphql";
|
||||||
|
import type { PersonalAPIKeyListFragment$key } from "/__generated__/iam/PersonalAPIKeyListFragment.graphql";
|
||||||
|
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
||||||
|
|
||||||
import { PersonalAPIKeysTable } from "./PersonalAPIKeysTable";
|
import { PersonalAPIKeysTable } from "./PersonalAPIKeysTable";
|
||||||
import { PersonalAPIKeyTokenDialog } from "./PersonalAPIKeyTokenDialog";
|
import { PersonalAPIKeyTokenDialog } from "./PersonalAPIKeyTokenDialog";
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { formatDate, formatError, type GraphQLError } from "@probo/helpers";
|
import { formatDate, formatError, type GraphQLError } from "@probo/helpers";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { Button, Spinner, Td, Tr, useConfirm, useToast } from "@probo/ui";
|
import { Button, Spinner, Td, Tr, useConfirm, useToast } from "@probo/ui";
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation, useFragment } from "react-relay";
|
|
||||||
import { clsx } from "clsx";
|
import { clsx } from "clsx";
|
||||||
import { Suspense } from "react";
|
import { Suspense } from "react";
|
||||||
|
import { useFragment, useMutation } from "react-relay";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
|
||||||
import type { PersonalAPIKeyRowFragment$key } from "/__generated__/iam/PersonalAPIKeyRowFragment.graphql";
|
|
||||||
import type { PersonalAPIKeyRow_revokeMutation } from "/__generated__/iam/PersonalAPIKeyRow_revokeMutation.graphql";
|
import type { PersonalAPIKeyRow_revokeMutation } from "/__generated__/iam/PersonalAPIKeyRow_revokeMutation.graphql";
|
||||||
|
import type { PersonalAPIKeyRowFragment$key } from "/__generated__/iam/PersonalAPIKeyRowFragment.graphql";
|
||||||
|
|
||||||
import { PersonalAPIKeyTokenAction } from "./PersonalAPIKeyTokenAction";
|
import { PersonalAPIKeyTokenAction } from "./PersonalAPIKeyTokenAction";
|
||||||
|
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
|
import { formatError } from "@probo/helpers";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { Button, useDialogRef, useToast } from "@probo/ui";
|
import { Button, useDialogRef, useToast } from "@probo/ui";
|
||||||
import { formatError } from "@probo/helpers";
|
|
||||||
import { useRefetchableFragment } from "react-relay";
|
import { useRefetchableFragment } from "react-relay";
|
||||||
|
|
||||||
import type { PersonalAPIKeyRowFragment$key } from "/__generated__/iam/PersonalAPIKeyRowFragment.graphql";
|
import type { PersonalAPIKeyRowFragment$key } from "/__generated__/iam/PersonalAPIKeyRowFragment.graphql";
|
||||||
import type { PersonalAPIKeyRowRefetchQuery } from "/__generated__/iam/PersonalAPIKeyRowRefetchQuery.graphql";
|
import type { PersonalAPIKeyRowRefetchQuery } from "/__generated__/iam/PersonalAPIKeyRowRefetchQuery.graphql";
|
||||||
|
|
||||||
import { PersonalAPIKeyTokenDialog } from "./PersonalAPIKeyTokenDialog";
|
|
||||||
import { personalAPIKeyRowFragment } from "./PersonalAPIKeyRow";
|
import { personalAPIKeyRowFragment } from "./PersonalAPIKeyRow";
|
||||||
|
import { PersonalAPIKeyTokenDialog } from "./PersonalAPIKeyTokenDialog";
|
||||||
|
|
||||||
export function PersonalAPIKeyTokenAction(props: {
|
export function PersonalAPIKeyTokenAction(props: {
|
||||||
fKey: PersonalAPIKeyRowFragment$key;
|
fKey: PersonalAPIKeyRowFragment$key;
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
import { useCopy } from "@probo/hooks";
|
||||||
|
import { useTranslate } from "@probo/i18n";
|
||||||
import {
|
import {
|
||||||
Breadcrumb,
|
Breadcrumb,
|
||||||
Button,
|
Button,
|
||||||
@@ -5,8 +7,6 @@ import {
|
|||||||
DialogContent,
|
DialogContent,
|
||||||
DialogFooter,
|
DialogFooter,
|
||||||
} from "@probo/ui";
|
} from "@probo/ui";
|
||||||
import { useTranslate } from "@probo/i18n";
|
|
||||||
import { useCopy } from "@probo/hooks";
|
|
||||||
|
|
||||||
export function PersonalAPIKeyTokenDialog(props: {
|
export function PersonalAPIKeyTokenDialog(props: {
|
||||||
dialogRef: React.RefObject<{ open: () => void; close: () => void } | null>;
|
dialogRef: React.RefObject<{ open: () => void; close: () => void } | null>;
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
|
import { formatError } from "@probo/helpers";
|
||||||
import { usePageTitle } from "@probo/hooks";
|
import { usePageTitle } from "@probo/hooks";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { Button, Field, useToast } from "@probo/ui";
|
import { Button, Field, useToast } from "@probo/ui";
|
||||||
import { useState } from "react";
|
import { useState } from "react";
|
||||||
import { Link } from "react-router";
|
|
||||||
import { z } from "zod";
|
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
import { useMutation } from "react-relay";
|
||||||
import { formatError } from "@probo/helpers";
|
import { Link } from "react-router";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
import { z } from "zod";
|
||||||
|
|
||||||
import type { ForgotPasswordPageMutation } from "/__generated__/iam/ForgotPasswordPageMutation.graphql";
|
import type { ForgotPasswordPageMutation } from "/__generated__/iam/ForgotPasswordPageMutation.graphql";
|
||||||
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
|
import { formatError, type GraphQLError } from "@probo/helpers";
|
||||||
import { usePageTitle } from "@probo/hooks";
|
import { usePageTitle } from "@probo/hooks";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { Button, Field, useToast } from "@probo/ui";
|
import { Button, Field, useToast } from "@probo/ui";
|
||||||
import { Link, useNavigate, useSearchParams } from "react-router";
|
|
||||||
import { z } from "zod";
|
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
import { useMutation } from "react-relay";
|
||||||
import { formatError, type GraphQLError } from "@probo/helpers";
|
import { Link, useNavigate, useSearchParams } from "react-router";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
import { z } from "zod";
|
||||||
|
|
||||||
import type { ResetPasswordPageMutation } from "/__generated__/iam/ResetPasswordPageMutation.graphql";
|
import type { ResetPasswordPageMutation } from "/__generated__/iam/ResetPasswordPageMutation.graphql";
|
||||||
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
|
import { formatError } from "@probo/helpers";
|
||||||
import { usePageTitle } from "@probo/hooks";
|
import { usePageTitle } from "@probo/hooks";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { Button, Field, useToast } from "@probo/ui";
|
import { Button, Field, useToast } from "@probo/ui";
|
||||||
import { Link, useSearchParams } from "react-router";
|
|
||||||
import { z } from "zod";
|
|
||||||
import { useState } from "react";
|
import { useState } from "react";
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
import { useMutation } from "react-relay";
|
||||||
import { formatError } from "@probo/helpers";
|
import { Link, useSearchParams } from "react-router";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
import { z } from "zod";
|
||||||
|
|
||||||
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
|
||||||
import type { VerifyEmailPageMutation } from "/__generated__/iam/VerifyEmailPageMutation.graphql";
|
import type { VerifyEmailPageMutation } from "/__generated__/iam/VerifyEmailPageMutation.graphql";
|
||||||
|
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
||||||
|
|
||||||
const verifyEmailMutation = graphql`
|
const verifyEmailMutation = graphql`
|
||||||
mutation VerifyEmailPageMutation($input: VerifyEmailInput!) {
|
mutation VerifyEmailPageMutation($input: VerifyEmailInput!) {
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
|
import { formatError, type GraphQLError } from "@probo/helpers";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { Button, Field, IconChevronLeft, useToast } from "@probo/ui";
|
import { Button, Field, IconChevronLeft, useToast } from "@probo/ui";
|
||||||
import type { FormEventHandler } from "react";
|
import type { FormEventHandler } from "react";
|
||||||
import { useMutation } from "react-relay";
|
import { useMutation } from "react-relay";
|
||||||
import { Link } from "react-router";
|
import { Link } from "react-router";
|
||||||
import { graphql } from "relay-runtime";
|
import { graphql } from "relay-runtime";
|
||||||
import { formatError, type GraphQLError } from "@probo/helpers";
|
|
||||||
|
|
||||||
import type { PasswordSignInPageMutation } from "/__generated__/iam/PasswordSignInPageMutation.graphql";
|
import type { PasswordSignInPageMutation } from "/__generated__/iam/PasswordSignInPageMutation.graphql";
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { Button, Field, IconChevronLeft, useToast } from "@probo/ui";
|
import { Button, Field, IconChevronLeft, useToast } from "@probo/ui";
|
||||||
import { useEffect, useState, type FormEventHandler } from "react";
|
import { type FormEventHandler, useEffect, useState } from "react";
|
||||||
import {
|
import {
|
||||||
|
type PreloadedQuery,
|
||||||
usePreloadedQuery,
|
usePreloadedQuery,
|
||||||
useQueryLoader,
|
useQueryLoader,
|
||||||
type PreloadedQuery,
|
|
||||||
} from "react-relay";
|
} from "react-relay";
|
||||||
import { Link, useNavigate } from "react-router";
|
import { Link, useNavigate } from "react-router";
|
||||||
import { graphql } from "relay-runtime";
|
import { graphql } from "relay-runtime";
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
|
import { formatError } from "@probo/helpers";
|
||||||
import { usePageTitle } from "@probo/hooks";
|
import { usePageTitle } from "@probo/hooks";
|
||||||
import { useTranslate } from "@probo/i18n";
|
import { useTranslate } from "@probo/i18n";
|
||||||
import { Button, Field, useToast } from "@probo/ui";
|
import { Button, Field, useToast } from "@probo/ui";
|
||||||
import { Link, useNavigate, useSearchParams } from "react-router";
|
|
||||||
import { z } from "zod";
|
|
||||||
import { graphql } from "relay-runtime";
|
|
||||||
import { useMutation } from "react-relay";
|
import { useMutation } from "react-relay";
|
||||||
import { formatError } from "@probo/helpers";
|
import { Link, useNavigate, useSearchParams } from "react-router";
|
||||||
|
import { graphql } from "relay-runtime";
|
||||||
|
import { z } from "zod";
|
||||||
|
|
||||||
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
import { useFormWithSchema } from "/hooks/useFormWithSchema";
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user