Skip to content

Commit

Permalink
refactor: pyramid -> pyramidVector #470
Browse files Browse the repository at this point in the history
  • Loading branch information
ocruze committed Sep 24, 2024
1 parent a9d1724 commit a556fdd
Show file tree
Hide file tree
Showing 28 changed files with 111 additions and 123 deletions.
4 changes: 2 additions & 2 deletions assets/@types/app.ts
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ export enum DatasheetDocumentTypeEnum {

export type DatasheetDetailed = Datasheet & {
vector_db_list: VectorDb[] | undefined;
pyramid_list: Pyramid[] | undefined;
pyramid_vector_list: PyramidVector[] | undefined;
upload_list: Upload[] | undefined;
service_list: Service[] | undefined;
};
Expand All @@ -100,7 +100,7 @@ export type VectorDb = StoredData & {
};

/** stored_data (donnée stockée) du type ROK4-PYRAMID-VECTOR */
export type Pyramid = StoredData & {
export type PyramidVector = StoredData & {
type: StoredDataPrivateDetailResponseDtoTypeEnum.ROK4PYRAMIDVECTOR;
tags: {
datasheet_name?: string;
Expand Down
2 changes: 1 addition & 1 deletion assets/components/Layout/DatastoreLayout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { BreadcrumbProps } from "@codegouvfr/react-dsfr/Breadcrumb";
import { useQuery } from "@tanstack/react-query";
import { FC, PropsWithChildren, memo, useMemo } from "react";

import { Datastore } from "../../@types/app";
import type { Datastore } from "../../@types/app";
import { datastoreNavItems } from "../../config/datastoreNavItems";
import api from "../../entrepot/api";
import RQKeys from "../../modules/entrepot/RQKeys";
Expand Down
19 changes: 0 additions & 19 deletions assets/components/Utils/TextWithLink.tsx

This file was deleted.

4 changes: 2 additions & 2 deletions assets/entrepot/api/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import community from "./community";
import user from "./user";
import wfs from "./wfs";
import wmsVector from "./wms-vector";
import pyramid from "./pyramid";
import pyramidVector from "./pyramidVector";
import service from "./service";
import epsg from "./epsg";
import annexe from "./annexe";
Expand All @@ -31,7 +31,7 @@ const api = {
user,
wfs,
wmsVector,
pyramid,
pyramidVector,
service,
annexe,
style,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { jsonFetch } from "../../modules/jsonFetch";
import { Service } from "../../@types/app";

const add = (datastoreId: string, formData: FormData | object) => {
const url = SymfonyRouting.generate("cartesgouvfr_api_pyramid_add", { datastoreId });
const url = SymfonyRouting.generate("cartesgouvfr_api_pyramid_vector_add", { datastoreId });
return jsonFetch<null>(
url,
{
Expand All @@ -18,7 +18,7 @@ const add = (datastoreId: string, formData: FormData | object) => {
};

const publish = (datastoreId: string, pyramidId: string, formData: FormData | object) => {
const url = SymfonyRouting.generate("cartesgouvfr_api_pyramid_tms_add", { datastoreId, pyramidId });
const url = SymfonyRouting.generate("cartesgouvfr_api_pyramid_vector_tms_add", { datastoreId, pyramidId });
return jsonFetch<Service>(
url,
{
Expand All @@ -33,7 +33,7 @@ const publish = (datastoreId: string, pyramidId: string, formData: FormData | ob
};

const publishEdit = (datastoreId: string, pyramidId: string, offeringId: string, formData: FormData | object) => {
const url = SymfonyRouting.generate("cartesgouvfr_api_pyramid_tms_edit", { datastoreId, pyramidId, offeringId });
const url = SymfonyRouting.generate("cartesgouvfr_api_pyramid_vector_tms_edit", { datastoreId, pyramidId, offeringId });
return jsonFetch<Service>(
url,
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ import Button from "@codegouvfr/react-dsfr/Button";
import { FC, memo, useMemo } from "react";
import { symToStr } from "tsafe/symToStr";

import { routes } from "../../../../../router/router";
import { type DatasheetDetailed } from "../../../../../@types/app";
import PyramidList from "./PyramidList/PyramidList";
import { routes } from "../../../../../router/router";
import PyramidVectorList from "./PyramidVectorList/PyramidVectorList";
import UnfinishedUploadList from "./UnfinishedUploadList";
import VectorDbList from "./VectorDbList/VectorDbList";

Expand Down Expand Up @@ -52,7 +52,7 @@ const DatasetListTab: FC<DataListTabProps> = ({ datastoreId, datasheet }) => {
</div>
<div className={fr.cx("fr-grid-row", "fr-grid-row--center", "fr-grid-row--middle", "fr-mt-4w")}>
<div className={fr.cx("fr-col")}>
<PyramidList datastoreId={datastoreId} datasheetName={datasheet.name} pyramidList={datasheet.pyramid_list} />
<PyramidVectorList datastoreId={datastoreId} datasheetName={datasheet.name} pyramidList={datasheet.pyramid_vector_list} />
</div>
</div>
</>
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,16 @@ import Badge from "@codegouvfr/react-dsfr/Badge";
import { UseQueryResult, useQuery } from "@tanstack/react-query";
import { FC, memo, useMemo } from "react";

import api from "../../../../../api";
import { PyramidVector, VectorDb } from "../../../../../../@types/app";
import { OfferingListResponseDto, ProcessingExecutionStoredDataDto } from "../../../../../../@types/entrepot";
import LoadingText from "../../../../../../components/Utils/LoadingText";
import RQKeys from "../../../../../../modules/entrepot/RQKeys";
import { Pyramid, VectorDb } from "../../../../../../@types/app";
import { OfferingListResponseDto, ProcessingExecutionStoredDataDto } from "../../../../../../@types/entrepot";
import { offeringTypeDisplayName } from "../../../../../../utils";
import api from "../../../../../api";

type PyramidDescProps = {
type PyramidVectorDescProps = {
datastoreId: string;
pyramid: Pyramid;
pyramid: PyramidVector;
dataUsesQuery: UseQueryResult<
{
stored_data_list: ProcessingExecutionStoredDataDto[];
Expand All @@ -22,7 +22,7 @@ type PyramidDescProps = {
>;
};

const PyramidDesc: FC<PyramidDescProps> = ({ datastoreId, pyramid, dataUsesQuery }) => {
const PyramidVectorDesc: FC<PyramidVectorDescProps> = ({ datastoreId, pyramid, dataUsesQuery }) => {
const vectorDbUsedId = useMemo(() => pyramid.tags.vectordb_id, [pyramid.tags.vectordb_id]);

const vectorDbUsedQuery = useQuery({
Expand Down Expand Up @@ -82,4 +82,4 @@ const PyramidDesc: FC<PyramidDescProps> = ({ datastoreId, pyramid, dataUsesQuery
);
};

export default memo(PyramidDesc);
export default memo(PyramidVectorDesc);
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
import { fr } from "@codegouvfr/react-dsfr";
import { FC, memo } from "react";
import { symToStr } from "tsafe/symToStr";

import { PyramidVector } from "../../../../../../@types/app";
import PyramidVectorListItem from "./PyramidVectorListItem";

type PyramidVectorListProps = {
datasheetName: string;
datastoreId: string;
pyramidList: PyramidVector[] | undefined;
};

const PyramidVectorList: FC<PyramidVectorListProps> = ({ datasheetName, datastoreId, pyramidList }) => {
return (
<>
<div className={fr.cx("fr-grid-row")}>
<h5>
<i className={"ri-stack-line"} />
&nbsp;Pyramides de tuiles vectorielles ({pyramidList?.length})
</h5>
</div>
{pyramidList?.map((pyramid) => (
<PyramidVectorListItem key={pyramid._id} datasheetName={datasheetName} datastoreId={datastoreId} pyramid={pyramid} />
))}
</>
);
};

PyramidVectorList.displayName = symToStr({ PyramidVectorList });

export default memo(PyramidVectorList);
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
import { FC, memo, useMemo } from "react";
import { createPortal } from "react-dom";

import { PyramidVector, StoredDataStatusEnum } from "../../../../../../@types/app";
import StoredDataStatusBadge from "../../../../../../components/Utils/Badges/StoredDataStatusBadge";
import LoadingIcon from "../../../../../../components/Utils/LoadingIcon";
import LoadingText from "../../../../../../components/Utils/LoadingText";
Expand All @@ -16,21 +17,20 @@ import useToggle from "../../../../../../hooks/useToggle";
import { Translations, declareComponentKeys, getTranslation, useTranslation } from "../../../../../../i18n/i18n";
import RQKeys from "../../../../../../modules/entrepot/RQKeys";
import { routes } from "../../../../../../router/router";
import { Pyramid, StoredDataStatusEnum } from "../../../../../../@types/app";
import { formatDateFromISO, offeringTypeDisplayName } from "../../../../../../utils";
import api from "../../../../../api";
import PyramidDesc from "./PyramidDesc";
import PyramidVectorDesc from "./PyramidVectorDesc";

type PyramidListItemProps = {
type PyramidVectorListItemProps = {
datasheetName: string;
pyramid: Pyramid;
pyramid: PyramidVector;
datastoreId: string;
};

const { t: tCommon } = getTranslation("Common");

const PyramidListItem: FC<PyramidListItemProps> = ({ datasheetName, datastoreId, pyramid }) => {
const { t } = useTranslation({ PyramidListItem });
const PyramidVectorListItem: FC<PyramidVectorListItemProps> = ({ datasheetName, datastoreId, pyramid }) => {
const { t } = useTranslation({ PyramidVectorListItem });

const [showDescription, toggleShowDescription] = useToggle(false);

Expand Down Expand Up @@ -77,6 +77,11 @@ const PyramidListItem: FC<PyramidListItemProps> = ({ datasheetName, datastoreId,
onClick={toggleShowDescription}
/>
{pyramid.name}
{pyramid.tags?.is_sample === "true" && (
<Badge noIcon={true} severity={"info"} className={fr.cx("fr-ml-2v")}>
Echantillon
</Badge>
)}
</div>
</div>

Expand Down Expand Up @@ -117,7 +122,7 @@ const PyramidListItem: FC<PyramidListItemProps> = ({ datasheetName, datastoreId,
</div>
</div>
</div>
{showDescription && <PyramidDesc datastoreId={datastoreId} pyramid={pyramid} dataUsesQuery={dataUsesQuery} />}
{showDescription && <PyramidVectorDesc datastoreId={datastoreId} pyramid={pyramid} dataUsesQuery={dataUsesQuery} />}
</div>
{deletePyramidMutation.error && (
<Alert
Expand Down Expand Up @@ -180,7 +185,7 @@ const PyramidListItem: FC<PyramidListItemProps> = ({ datasheetName, datastoreId,
);
};

export default memo(PyramidListItem);
export default memo(PyramidVectorListItem);

// traductions
export const { i18n } = declareComponentKeys<
Expand All @@ -192,10 +197,10 @@ export const { i18n } = declareComponentKeys<
| "following_services_deleted"
| { K: "error_deleting"; P: { pyramidName: string }; R: string }
>()({
PyramidListItem,
PyramidVectorListItem,
});

export const PyramidListItemFrTranslations: Translations<"fr">["PyramidListItem"] = {
export const PyramidVectorListItemFrTranslations: Translations<"fr">["PyramidVectorListItem"] = {
show_linked_datas: "Voir les données liées",
other_actions: "Autres actions",
show_details: "Voir les détails",
Expand All @@ -205,7 +210,7 @@ export const PyramidListItemFrTranslations: Translations<"fr">["PyramidListItem"
error_deleting: ({ pyramidName }) => `La suppression de la pyramide ${pyramidName} a échoué`,
};

export const PyramidListItemEnTranslations: Translations<"en">["PyramidListItem"] = {
export const PyramidVectorListItemEnTranslations: Translations<"en">["PyramidVectorListItem"] = {
show_linked_datas: "Show linked datas",
other_actions: "Other actions",
show_details: "Show details",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ import Badge from "@codegouvfr/react-dsfr/Badge";
import { UseQueryResult } from "@tanstack/react-query";
import { FC, memo, useMemo } from "react";

import LoadingText from "../../../../../../components/Utils/LoadingText";
import { StoredDataStatusEnum, StoredDataTypeEnum } from "../../../../../../@types/app";
import { OfferingListResponseDto, ProcessingExecutionStoredDataDto } from "../../../../../../@types/entrepot";
import LoadingText from "../../../../../../components/Utils/LoadingText";
import { offeringTypeDisplayName } from "../../../../../../utils";

type VectorDbDescProps = {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@ const DatasheetView: FC<DatasheetViewProps> = ({ datastoreId, datasheetName }) =
},
{
label: t("tab_label.datasets", {
num: (datasheetQuery.data?.vector_db_list?.length || 0) + (datasheetQuery.data?.pyramid_list?.length || 0),
num: (datasheetQuery.data?.vector_db_list?.length || 0) + (datasheetQuery.data?.pyramid_vector_list?.length || 0),
}),
tabId: DatasheetViewActiveTabEnum.Dataset,
},
Expand Down Expand Up @@ -237,8 +237,8 @@ const DatasheetView: FC<DatasheetViewProps> = ({ datastoreId, datasheetName }) =
{datasheetQuery?.data?.vector_db_list?.length && datasheetQuery?.data?.vector_db_list.length > 0 ? (
<li>{datasheetQuery?.data?.vector_db_list.length} base(s) de données</li>
) : null}
{datasheetQuery?.data?.pyramid_list?.length && datasheetQuery?.data?.pyramid_list.length > 0 ? (
<li>{datasheetQuery?.data?.pyramid_list.length} pyramide(s) de tuiles vectorielles</li>
{datasheetQuery?.data?.pyramid_vector_list?.length && datasheetQuery?.data?.pyramid_vector_list.length > 0 ? (
<li>{datasheetQuery?.data?.pyramid_vector_list.length} pyramide(s) de tuiles vectorielles</li>
) : null}
{datasheetQuery?.data?.service_list?.length && datasheetQuery?.data?.service_list.length > 0 ? (
<li>{datasheetQuery?.data?.service_list.length} service(s) publié(s)</li>
Expand All @@ -249,7 +249,7 @@ const DatasheetView: FC<DatasheetViewProps> = ({ datastoreId, datasheetName }) =

{metadataQuery.data && <li>La métadonnée associée ({metadataQuery.data.file_identifier})</li>}

{/* TODO : pyramides tuiles vectorielles, raster, métadonnées etc... */}
{/* TODO : pyramides tuiles raster, documents etc... */}
</ul>
</deleteDataConfirmModal.Component>,
document.body
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,8 @@ const MetadataTab: FC<MetadataTabProps> = ({ datastoreId, datasheet, metadataQue
}, [metadata]);

const storedDataList: StoredData[] = useMemo(
() => [...(datasheet?.vector_db_list ?? []), ...(datasheet?.pyramid_list ?? [])],
[datasheet?.vector_db_list, datasheet?.pyramid_list]
() => [...(datasheet?.vector_db_list ?? []), ...(datasheet?.pyramid_vector_list ?? [])],
[datasheet?.vector_db_list, datasheet?.pyramid_vector_list]
);

const catalogueDatasheetUrl = useMemo(() => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { FC, useMemo } from "react";
import api from "../../../../api";
import LoadingText from "../../../../../components/Utils/LoadingText";
import RQKeys from "../../../../../modules/entrepot/RQKeys";
import { ConfigurationTypeEnum, Pyramid, Service, VectorDb } from "../../../../../@types/app";
import { ConfigurationTypeEnum, PyramidVector, Service, VectorDb } from "../../../../../@types/app";

type ServiceDescProps = {
service: Service;
Expand All @@ -30,7 +30,7 @@ const ServiceDesc: FC<ServiceDescProps> = ({ service, datastoreId }) => {
if (pyramidUsedId === undefined) {
return Promise.reject();
}
return api.storedData.get<Pyramid>(datastoreId, pyramidUsedId, { signal });
return api.storedData.get<PyramidVector>(datastoreId, pyramidUsedId, { signal });
},
staleTime: 600000,
enabled: !!pyramidUsedId,
Expand Down
4 changes: 2 additions & 2 deletions assets/entrepot/pages/service/metadatas/AdditionalInfo.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import Select from "@codegouvfr/react-dsfr/Select";
import { FC, useMemo } from "react";
import { Controller, UseFormReturn } from "react-hook-form";

import type { Pyramid, ServiceFormValuesBaseType, VectorDb } from "../../../../@types/app";
import type { PyramidVector, ServiceFormValuesBaseType, VectorDb } from "../../../../@types/app";
import AutocompleteSelect from "../../../../components/Input/AutocompleteSelect";
import ignProducts from "../../../../data/md_resolutions.json";
import { getTranslation } from "../../../../i18n/i18n";
Expand All @@ -28,7 +28,7 @@ import { LanguageType, charsets, getLanguages } from "../../../../utils";
// };

type AdditionalInfoProps = {
storedData: VectorDb | Pyramid;
storedData: VectorDb | PyramidVector;
visible: boolean;
form: UseFormReturn<ServiceFormValuesBaseType>;
datastoreId: string;
Expand Down
Loading

0 comments on commit a556fdd

Please sign in to comment.