diff --git a/client/src/app/(landing)/globe/page.tsx b/client/src/app/(landing)/globe/page.tsx index a88885a..e9b5aa0 100644 --- a/client/src/app/(landing)/globe/page.tsx +++ b/client/src/app/(landing)/globe/page.tsx @@ -7,6 +7,7 @@ import { getStoriesParams } from '@/lib/stories'; import { getGetCategoriesQueryOptions } from '@/types/generated/category'; import { getGetStoriesQueryOptions } from '@/types/generated/story'; import { CategoryListResponse } from '@/types/generated/strapi.schemas'; +import { getGetTopStoriesQueryOptions } from '@/types/generated/top-story'; import Globe from '@/containers/globe'; @@ -55,6 +56,18 @@ async function prefetchQueries(searchParams: HomePageProps['searchParams']) { queryFn: storiesQueryFn, }); + const { queryKey: topStoriesQueryKey, queryFn: topStoriesQueryFn } = + getGetTopStoriesQueryOptions({ + 'pagination[limit]': 5, + populate: 'story,cover_image', + sort: 'index:asc', + }); + + await queryClient.prefetchQuery({ + queryKey: topStoriesQueryKey, + queryFn: topStoriesQueryFn, + }); + return dehydrate(queryClient); } catch (error) { console.info(error); diff --git a/client/src/components/map/layers/marker/index.tsx b/client/src/components/map/layers/marker/index.tsx index 7d75e61..ad19b0e 100644 --- a/client/src/components/map/layers/marker/index.tsx +++ b/client/src/components/map/layers/marker/index.tsx @@ -1,67 +1,72 @@ -import { MouseEventHandler } from 'react'; - -import { Marker as RMarker, MarkerProps as RMarkerProps } from 'react-map-gl'; +import { Marker as RMarker } from 'react-map-gl'; import { cn } from '@/lib/classnames'; import { Button } from '@/components/ui/button'; import CategoryIcon from '@/components/ui/category-icon'; -import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip'; -type MarkerProps = RMarkerProps & { - properties: GeoJSON.GeoJsonProperties; - onClick: MouseEventHandler; +type MarkerProps = { + markers?: (GeoJSON.Feature | null)[]; + handleClick: (id: string | number) => void; }; -const Marker = (props: MarkerProps) => { - const { properties, onClick, ...rest } = props; +const Marker = ({ markers, handleClick }: MarkerProps) => { + const { coordinates } = markers?.[0]?.geometry || {}; + if (!coordinates?.length) return null; return ( - - - + +
+
-
-
-
+
- - -
e.stopPropagation()}> -
- -

{properties?.categoryName}

-
-

{properties?.title}

-

{properties?.location}

+
- -
- - +
+ {markers?.map((marker) => { + if (!marker || !marker?.id) return null; + return ( +
e.stopPropagation()} + > +
+ +

{marker?.properties?.categoryName}

+
+

{marker?.properties?.title}

+

+ {marker?.properties?.location} +

+ + +
+ ); + })} +
+
); }; diff --git a/client/src/components/ui/card.tsx b/client/src/components/ui/card.tsx index 64a6e5f..b4f97a1 100644 --- a/client/src/components/ui/card.tsx +++ b/client/src/components/ui/card.tsx @@ -4,7 +4,7 @@ import { InfoIcon } from 'lucide-react'; import { cn } from '@/lib/classnames'; -// import { ScrollArea } from '@/components/ui/scroll-area'; +import { ScrollArea } from '@/components/ui/scroll-area'; type CardProps = PropsWithChildren & { title?: string; @@ -26,11 +26,9 @@ const Card = ({ children, title, info, className }: CardProps) => { {info && } )} - {/* */} -
+
{children}
-
- {/*
*/} + ); }; diff --git a/client/src/components/ui/dialog.tsx b/client/src/components/ui/dialog.tsx index 9b9e126..a30b705 100644 --- a/client/src/components/ui/dialog.tsx +++ b/client/src/components/ui/dialog.tsx @@ -60,7 +60,7 @@ const DialogContentHome = React.forwardRef< React.ComponentPropsWithoutRef >(({ className, children, ...props }, ref) => ( - +
; +import { cn } from '@/lib/classnames'; + +type GradientLineProps = { + className?: string; +}; + +const GradientLine = ({ className }: GradientLineProps) => ( +
+); export default GradientLine; diff --git a/client/src/components/ui/input.tsx b/client/src/components/ui/input.tsx index 8660978..63b7b71 100644 --- a/client/src/components/ui/input.tsx +++ b/client/src/components/ui/input.tsx @@ -10,7 +10,7 @@ const Input = React.forwardRef( */} - - {isError && isFetched && !isFetching && (errorMessage || 'Error')} +
+ {isError && isFetched && !isFetching && (errorMessage || 'Error')} + {!isPlaceholderData && !isError && isFetched && !data && 'No data'} +
{!isPlaceholderData && !isError && isFetched && !!data && children} - - {!isPlaceholderData && !isError && isFetched && !data && 'No data'} ); }; diff --git a/client/src/components/ui/scroll-explanation.tsx b/client/src/components/ui/scroll-explanation.tsx new file mode 100644 index 0000000..81bcc3b --- /dev/null +++ b/client/src/components/ui/scroll-explanation.tsx @@ -0,0 +1,14 @@ +import { PropsWithChildren } from 'react'; + +const ScrollExplanation = ({ children }: PropsWithChildren) => { + return ( +
+
+
+
+

{children}

+
+ ); +}; + +export default ScrollExplanation; diff --git a/client/src/containers/globe/categories/index.tsx b/client/src/containers/globe/categories/index.tsx index 05cfc20..39f223a 100644 --- a/client/src/containers/globe/categories/index.tsx +++ b/client/src/containers/globe/categories/index.tsx @@ -1,5 +1,3 @@ -import { cn } from '@/lib/classnames'; - import { useGetCategories } from '@/types/generated/category'; import ContentLoader from '@/components/ui/loader'; @@ -8,12 +6,12 @@ import { Skeleton } from '@/components/ui/skeleton'; import Category from './item'; const Categories = () => { - const { data, isError, isSuccess, isPlaceholderData, isFetched, isFetching } = useGetCategories(); + const { data, isError, isPlaceholderData, isFetched, isFetching } = useGetCategories(); const categories = data?.data; return ( -
+
{ isFetched={isFetched} isFetching={isFetching} errorMessage="Error loading the categories" - className="3xl:mb-4 mx-auto mb-14 h-10 w-full max-w-3xl text-center" + className="mx-auto mb-8 h-10 w-full max-w-3xl text-center" SkeletonComponent={ -
+
{[...Array(11)].map((_, i) => ( ))}
} > -
-
-
-

+

+
+
+

Select category

diff --git a/client/src/containers/globe/categories/item.tsx b/client/src/containers/globe/categories/item.tsx index f4001bf..07026da 100644 --- a/client/src/containers/globe/categories/item.tsx +++ b/client/src/containers/globe/categories/item.tsx @@ -30,12 +30,12 @@ const CategoryItem = ({ name, slug }: CategoryProps) => { title={name} onClick={() => handleClick(slug)} className={cn( - 'hover:fill-secondary transition-all delay-200 ease-out hover:-translate-y-2 hover:opacity-100', + 'hover:fill-secondary pointer-events-auto transition-all delay-200 ease-out hover:-translate-y-2 hover:opacity-100', slug === 'placeholder-category' ? 'animate-pulse' : category === slug ? 'fill-secondary opacity-70' - : 'fill-primary opacity-50' + : 'fill-primary' )} > diff --git a/client/src/containers/globe/dashboard/index.tsx b/client/src/containers/globe/dashboard/index.tsx index 80ed7c7..6e73951 100644 --- a/client/src/containers/globe/dashboard/index.tsx +++ b/client/src/containers/globe/dashboard/index.tsx @@ -6,15 +6,19 @@ import DashboardRegions from './regions'; const Dashboard = () => { return ( -
- - - - - + <> +
+ + + +
+ +
+
+ -
+ ); }; diff --git a/client/src/containers/globe/dashboard/regions.tsx b/client/src/containers/globe/dashboard/regions.tsx index 595c83f..2f7d8ba 100644 --- a/client/src/containers/globe/dashboard/regions.tsx +++ b/client/src/containers/globe/dashboard/regions.tsx @@ -15,10 +15,10 @@ const DashboardRegions = () => { return (
-
    +
      {regions.map(({ name, stories }) => ( -
    • -
      +
    • +

      {name}

      {stories}

      diff --git a/client/src/containers/globe/filters/index.tsx b/client/src/containers/globe/filters/index.tsx index 7005693..c696f77 100644 --- a/client/src/containers/globe/filters/index.tsx +++ b/client/src/containers/globe/filters/index.tsx @@ -1,85 +1,83 @@ -import { useAtom } from 'jotai'; -import { XIcon } from 'lucide-react'; +import { useMemo } from 'react'; -import { cn } from '@/lib/classnames'; +import { + DialogClose, + DialogContent, + DialogTrigger, + Dialog, + DialogPortal, + DialogOverlay, +} from '@radix-ui/react-dialog'; +import { FilterIcon, XIcon } from 'lucide-react'; -import { filtersOpenAtom } from '@/store/globe'; - -import { Button } from '@/components/ui/button'; +import { useGetIfis } from '@/types/generated/ifi'; +import { useGetTags } from '@/types/generated/tag'; import FilterItem from './item'; -const filtersData: { - title: string; - id: string; - options: { name: string; id: string }[]; -}[] = [ - { - title: 'IFI', - id: 'ifi', - options: [ - { name: 'World Bank', id: 'world-bank' }, - { name: 'ADB', id: 'adb' }, - { name: 'IFAD', id: 'ifad' }, - ], - }, - { - title: 'Status', - id: 'status', - options: [ - { name: 'In progress', id: 'in-progress' }, - { name: 'Completed', id: 'completed' }, - ], - }, - { - title: 'Tags', - id: 'tags', - options: [ - { name: 'Tag 1', id: 'tag-1' }, - { name: 'Tag 2', id: 'tag-2' }, - { name: 'Tag 3', id: 'tag-3' }, - { name: 'Tag 4', id: 'tag-4' }, - { name: 'Tag 5', id: 'tag-5' }, - { name: 'Tag 6', id: 'tag-6' }, - { name: 'Tag 7', id: 'tag-7' }, - { name: 'Tag 8', id: 'tag-8' }, - ], - }, -]; - export const Filters = () => { - const [isOpen, setIsOpen] = useAtom(filtersOpenAtom); + const { data: tagsData } = useGetTags({ 'pagination[limit]': 1000 }); + const { data: ifisData } = useGetIfis({ 'pagination[limit]': 1000 }); + + const filtersData = useMemo(() => { + return [ + { + title: 'IFIs', + id: 'ifis', + options: ifisData?.data || [], + }, + { + title: 'Status', + id: 'status', + options: [ + { attributes: { name: 'In progress' }, id: 'in-progress' }, + { attributes: { name: 'Completed' }, id: 'completed' }, + ], + }, + { + title: 'Tags', + id: 'tags', + options: tagsData?.data || [], + }, + ]; + }, [ifisData?.data, tagsData?.data]); return ( -
      -
      -
      -
      -

      Filters

      - -
      -
      -

      Filter stories on the globe by

      -
      -
      - {filtersData.map((filter) => ( - - ))} -
      +
      + + + + Filters + + + + +
      + + + + +
      +
      +
      +

      + Filters +

      +
      +
      +

      + Filter stories on the globe by +

      +
      +
      + {filtersData.map((filter) => + filter?.options?.length ? : null + )} +
      +
      +
      +
      +
      ); }; diff --git a/client/src/containers/globe/filters/item.tsx b/client/src/containers/globe/filters/item.tsx index b11eb54..f4baffe 100644 --- a/client/src/containers/globe/filters/item.tsx +++ b/client/src/containers/globe/filters/item.tsx @@ -1,48 +1,76 @@ import { useSyncFilters } from '@/store/globe'; +import { IfiListResponseDataItem, TagListResponseDataItem } from '@/types/generated/strapi.schemas'; + import { Button } from '@/components/ui/button'; import { CheckboxButton } from '@/components/ui/checkbox-button'; +type StatusOptions = { + attributes: { name: string }; + id: string; +}; + type FilterItemProps = { filter: { title: string; id: string; - options: { name: string; id: string }[]; + options: (IfiListResponseDataItem | TagListResponseDataItem | StatusOptions)[]; }; }; const FilterItem = ({ filter: { id, options, title } }: FilterItemProps) => { const [filters, setFilters] = useSyncFilters(); - const filter = filters[id as keyof typeof filters]; + const filter: (string | number)[] | null = filters[id as keyof typeof filters]; + + const setFilter = (value: (string | number)[] | null) => setFilters({ ...filters, [id]: value }); + + const handleChangeFilter = (optionId: string | number) => { + if (!filter?.includes(optionId)) { + setFilter([...(filter || []), optionId]); + } else { + setFilter(filter?.filter((item) => item !== optionId) || null); + } + }; - const setFilter = (value: string[] | null) => setFilters({ ...filters, [id]: value }); + const isMoreThanOneSelected = !!filter && filter.length > 1; - const handleChangeFilter = (id: string) => { - if (!filter?.includes(id)) { - setFilter([...(filter || []), id]); + const handleSelectAll = () => { + if (isMoreThanOneSelected) { + setFilter([]); } else { - setFilter(filter?.filter((item) => item !== id) || null); + setFilter( + options.reduce<(string | number)[]>((acc, { id }) => (!!id ? [...acc, id] : acc), []) + ); } }; return (
      -
      -

      {title}

      -
      - {options.map(({ id: optionId, name }) => { + {options.map(({ id: optionId, attributes }) => { + if (!optionId) return null; return ( handleChangeFilter(optionId)} - label={name} + label={attributes?.name || ''} /> ); })} diff --git a/client/src/containers/globe/index.tsx b/client/src/containers/globe/index.tsx index 8aa850e..59ce9d0 100644 --- a/client/src/containers/globe/index.tsx +++ b/client/src/containers/globe/index.tsx @@ -3,14 +3,13 @@ import { useEffect } from 'react'; import { useSetAtom } from 'jotai'; +import { ExternalLinkIcon } from 'lucide-react'; import { layersAtom, tmpBboxAtom } from '@/store/map'; import { useSyncStep } from '@/store/stories'; import { DEFAULT_MAP_BBOX, DEFAULT_MAP_STATE } from '@/constants/map'; -import Sidebar from '@/containers/globe/sidebar'; - import Card from '@/components/ui/card'; import GradientLine from '@/components/ui/gradient-line'; @@ -19,6 +18,7 @@ import Header from '../header'; import Categories from './categories'; import Dashboard from './dashboard'; import { Filters } from './filters'; +import SearchStories from './search'; import TopStories from './top-stories'; export default function Home() { @@ -39,14 +39,17 @@ export default function Home() { return (
      -
      - -
      +
      +
      + + +
      +
      - -
      +
      +
      @@ -57,16 +60,17 @@ export default function Home() { Detailed report dashboard on ESA GDA programme. +
      -
      +
      diff --git a/client/src/containers/globe/search/index.tsx b/client/src/containers/globe/search/index.tsx new file mode 100644 index 0000000..36c37a3 --- /dev/null +++ b/client/src/containers/globe/search/index.tsx @@ -0,0 +1,31 @@ +import { SearchIcon, XIcon } from 'lucide-react'; + +import { cn } from '@/lib/classnames'; + +import { useSyncSearch } from '@/store/globe'; + +const SearchStories = () => { + const [search, setSearch] = useSyncSearch(); + + const handleChange = (e: React.ChangeEvent) => { + setSearch(e.target.value); + }; + + return ( +
      + + + setSearch(null)} + className={cn('h-5 w-5 cursor-pointer stroke-gray-200', !!search ? 'block' : 'hidden')} + /> +
      + ); +}; + +export default SearchStories; diff --git a/client/src/containers/globe/sidebar/index.tsx b/client/src/containers/globe/sidebar/index.tsx index c25e724..e113e1d 100644 --- a/client/src/containers/globe/sidebar/index.tsx +++ b/client/src/containers/globe/sidebar/index.tsx @@ -19,9 +19,7 @@ export default function Sidebar({ children }: PropsWithChildren) { '-translate-x-full': !open, })} > -
      - {children} -
      +
      {children}
      ); } diff --git a/client/src/containers/globe/top-stories/item.tsx b/client/src/containers/globe/top-stories/item.tsx index a147cea..776b359 100644 --- a/client/src/containers/globe/top-stories/item.tsx +++ b/client/src/containers/globe/top-stories/item.tsx @@ -37,7 +37,7 @@ const TopStoriesItem = ({ topStory }: TopStoriesItemProps) => { />
      -

      +

      {storyData?.attributes?.title}

      {topStory?.location}

      diff --git a/client/src/containers/header/header-link.tsx b/client/src/containers/header/header-link.tsx deleted file mode 100644 index a39905a..0000000 --- a/client/src/containers/header/header-link.tsx +++ /dev/null @@ -1,19 +0,0 @@ -'use client'; -import Link from 'next/link'; -import { usePathname } from 'next/navigation'; - -const HeaderLink = () => { - const pathname = usePathname(); - - const link = pathname.includes('/landing') - ? { name: 'About', href: '/about' } - : { name: 'About', href: '/about' }; - - return ( - - {link.name} - - ); -}; - -export default HeaderLink; diff --git a/client/src/containers/header/index.tsx b/client/src/containers/header/index.tsx index bbce954..a741f4d 100644 --- a/client/src/containers/header/index.tsx +++ b/client/src/containers/header/index.tsx @@ -1,10 +1,18 @@ import Image from 'next/image'; +import Link from 'next/link'; + +import { cn } from '@/lib/classnames'; import GradientLine from '@/components/ui/gradient-line'; import About from './about'; -const Header = () => { +type HeaderProps = { + pathname?: string; +}; + +const Header = ({ pathname }: HeaderProps) => { + const isHome = pathname?.includes('home'); return (
      @@ -27,18 +35,16 @@ const Header = () => { />
      -
      - -
      +
      -
      -

      Impact Sphere

      +
      +

      + Impact Sphere +

      -
      -
      - -
      +
      +
      diff --git a/client/src/containers/home/index.tsx b/client/src/containers/home/index.tsx index 7233be6..112f13f 100644 --- a/client/src/containers/home/index.tsx +++ b/client/src/containers/home/index.tsx @@ -128,9 +128,9 @@ const Home = () => {
      -
      +
      -
      +
      @@ -142,24 +142,20 @@ const Home = () => {
      -
      - +
      +

      Uncover the stories told by powerful satellites, revealing their crucial role in addressing global challenges. From monitoring climate change to enhancing precision agriculture, the GDA program utilises satellite data to accelerate impact. - - +

      +

      Dive into these uplifting stories and discover how satellites are shaping a more - sustainable and interconnected future for our planet. - - - {' '} - Ready to explore GDA stories - - - ? - + sustainable and interconnected future for our planet.{' '} + + Ready to explore GDA stories? + +

      diff --git a/client/src/containers/map/index.tsx b/client/src/containers/map/index.tsx index ff9a9b7..dcf028f 100644 --- a/client/src/containers/map/index.tsx +++ b/client/src/containers/map/index.tsx @@ -6,7 +6,6 @@ import { MapLayerMouseEvent, useMap } from 'react-map-gl'; import dynamic from 'next/dynamic'; import { usePathname } from 'next/navigation'; -import { useRouter } from 'next/navigation'; import { useAtomValue, useSetAtom } from 'jotai'; import { LngLatBoundsLike } from 'mapbox-gl'; @@ -24,9 +23,10 @@ import StoryMarkers from '@/containers/map/markers/story-markers'; import Popup from '@/containers/map/popup'; import Map from '@/components/map'; -import Marker from '@/components/map/layers/marker'; import { CustomMapProps } from '@/components/map/types'; +import SelectedStoriesMarker from './markers/selected-stories-marker'; + const MapLegends = dynamic(() => import('@/containers/map/legend'), { ssr: false, }); @@ -46,9 +46,7 @@ export default function MapContainer() { const { [id]: map } = useMap(); - const { push } = useRouter(); - - const [marker, setMarker] = useState | null>(null); + const [markers, setMarkers] = useState<(GeoJSON.Feature | null)[]>([]); const bbox = useAtomValue(bboxAtom); const tmpBbox = useAtomValue(tmpBboxAtom); @@ -94,22 +92,22 @@ export default function MapContainer() { const handleMouseMove = useCallback((e: MapLayerMouseEvent) => { if (e.features?.length) { - const f = e.features[0]; - - if (f.source === 'story-markers') { - setMarker({ + const storyMarkersFeatures = e.features + .filter((f) => f.source === 'story-markers') + .map((f) => ({ ...f, geometry: f.geometry as GeoJSON.Point, - }); - } + })); - if (f.source !== 'story-markers') { - setMarker(null); + if (storyMarkersFeatures.length) { + setMarkers(storyMarkersFeatures as GeoJSON.Feature[]); + } else { + setMarkers([]); } } if (e.features?.length === 0) { - setMarker(null); + setMarkers([]); } }, []); @@ -158,21 +156,10 @@ export default function MapContainer() { {(isGlobePage || pathname.includes('home')) && } - {marker && isGlobePage && ( - { - setMarker(null); - push(`/stories/${marker.id}`); - }} - /> - )} + setMarkers([])} /> {pathname.includes('stories') && } -
      +
      diff --git a/client/src/containers/map/markers/globe-markers/index.tsx b/client/src/containers/map/markers/globe-markers/index.tsx index b99862f..0c3ab55 100644 --- a/client/src/containers/map/markers/globe-markers/index.tsx +++ b/client/src/containers/map/markers/globe-markers/index.tsx @@ -6,7 +6,7 @@ import { Layer, Source } from 'react-map-gl'; import { getStoriesParams } from '@/lib/stories'; -import { useSyncCategory } from '@/store/globe'; +import { useSyncCategory, useSyncFilters, useSyncSearch } from '@/store/globe'; import { useGetCategories } from '@/types/generated/category'; import { useGetStories } from '@/types/generated/story'; @@ -16,6 +16,8 @@ import { useMapImage } from '@/hooks/map'; const GlobeMarkers = () => { const [category] = useSyncCategory(); + const [search] = useSyncSearch(); + const [filters] = useSyncFilters(); const { data: categories } = useGetCategories(); const categoryId = useMemo(() => { @@ -23,7 +25,7 @@ const GlobeMarkers = () => { return categoryItem?.id; }, [categories?.data, category]); - const params = getStoriesParams({ category: categoryId }); + const params = getStoriesParams({ category: categoryId, title: search, ...filters }); const { data: stories } = useGetStories(params); const FeatureCollection = useMemo( () => ({ @@ -35,16 +37,12 @@ const GlobeMarkers = () => { const lng = marker?.lng; return { type: 'Feature', - // bbox: attributes?.bbox, id, geometry: { type: 'Point', coordinates: [lng, lat] }, properties: { - // TODO: Category should be saved with all the attributes, not just slug or name category: attributes?.category?.data?.attributes?.slug, categoryName: attributes?.category?.data?.attributes?.name, - ifi: 'IFAD', - status: 'completed', - tags: ['nature'], + location: attributes?.location, title: attributes?.title, active: attributes?.active, }, @@ -60,7 +58,7 @@ const GlobeMarkers = () => { }); return ( - + | null)[]; + onCloseMarker: () => void; +}; + +const SelectedStoriesMarker = ({ markers, onCloseMarker }: SelectedStoriesMarkerProps) => { + const { push } = useRouter(); + + if (!markers?.length) return null; + + const handleClick = (id: string | number) => { + onCloseMarker(); + push(`/stories/${id}`); + }; + + return ; +}; + +export default SelectedStoriesMarker; diff --git a/client/src/containers/map/tooltips/globe-tooltip/index.tsx b/client/src/containers/map/tooltips/globe-tooltip/index.tsx index 4b8f90b..d743a52 100644 --- a/client/src/containers/map/tooltips/globe-tooltip/index.tsx +++ b/client/src/containers/map/tooltips/globe-tooltip/index.tsx @@ -16,7 +16,7 @@ const GlobeTooltip = (props: GlobeTooltipProps) => { @@ -32,7 +32,7 @@ const GlobeTooltip = (props: GlobeTooltipProps) => {

      {properties?.location}

      + +
      +
      +
      + ); +}; + +export default StoryHeader; diff --git a/client/src/containers/story/index.tsx b/client/src/containers/story/index.tsx index 38f5ad8..9635c9d 100644 --- a/client/src/containers/story/index.tsx +++ b/client/src/containers/story/index.tsx @@ -2,12 +2,10 @@ import { useEffect, useMemo } from 'react'; -import { useParams, useRouter } from 'next/navigation'; +import { useParams } from 'next/navigation'; import { useSetAtom } from 'jotai'; -import { ArrowLeft, Share2 } from 'lucide-react'; -import { cn } from '@/lib/classnames'; import { ScrollProvider } from '@/lib/scroll'; import { layersAtom, tmpBboxAtom } from '@/store/map'; @@ -15,21 +13,15 @@ import { useSyncStep } from '@/store/stories'; import { useGetStoriesId } from '@/types/generated/story'; -import { Button } from '@/components/ui/button'; - -import Step from './steps'; +import Header from './header'; +import Steps from './steps'; import { ScrollItemController } from './steps/controller/controller-item'; -import { ScrollItem } from './steps/controller/scroll-item'; import { isMapNotEmpty } from './utils'; -const headerButtonClassName = - 'rounded-4xl h-auto border-gray-800 bg-[hsl(198,100%,14%)]/75 px-5 py-2.5 hover:bg-gray-800'; - const Story = () => { const { step } = useSyncStep(); const setTmpBbox = useSetAtom(tmpBboxAtom); const setLayers = useSetAtom(layersAtom); - const { push } = useRouter(); const { id } = useParams(); const { data: storyData } = useGetStoriesId(+id, { @@ -39,11 +31,6 @@ const Story = () => { const story = useMemo(() => storyData?.data?.attributes, [storyData]); const steps = useMemo(() => story?.steps || [], [story]); - const handleGoHome = () => { - setLayers([]); - push('/'); - }; - useEffect(() => { if (!steps) return; const currStep = steps[step - 1]; @@ -76,38 +63,16 @@ const Story = () => { return (
      -
      -
      - -

      {story?.title}

      - -
      -
      +
      - {steps?.map((mapStep, index) => { - return ( - - - - ); - })} +
      {steps?.map((s, index) => ( - + ))}
      diff --git a/client/src/containers/story/steps/controller/controller-item.tsx b/client/src/containers/story/steps/controller/controller-item.tsx index d956ce5..a11b279 100644 --- a/client/src/containers/story/steps/controller/controller-item.tsx +++ b/client/src/containers/story/steps/controller/controller-item.tsx @@ -2,6 +2,7 @@ import { useCallback } from 'react'; +import { cn } from '@/lib/classnames'; import { useScrollToItem } from '@/lib/scroll'; import { useSyncStep } from '@/store/stories'; @@ -15,7 +16,7 @@ type ScrollItemControllerProps = { className?: string; }; -export const ScrollItemController = ({ title, newStep, className }: ScrollItemControllerProps) => { +export const ScrollItemController = ({ title, newStep }: ScrollItemControllerProps) => { const scrollToItem = useScrollToItem(); const { step: currStep } = useSyncStep(); @@ -35,18 +36,32 @@ export const ScrollItemController = ({ title, newStep, className }: ScrollItemCo className="h-5" asChild > - {title &&

      {title}

      } - {newStep === 0 && !title &&

      Introduction

      } - {newStep === 4 && !title &&

      Conclusion

      }
      diff --git a/client/src/containers/story/steps/index.tsx b/client/src/containers/story/steps/index.tsx index 7937b57..5117dab 100644 --- a/client/src/containers/story/steps/index.tsx +++ b/client/src/containers/story/steps/index.tsx @@ -5,61 +5,91 @@ import { cn } from '@/lib/classnames'; import { useSyncStep } from '@/store/stories'; -import { - StepLayoutOutroStepComponentMedia, - StoryCategory, - StoryStepsItem, -} from '@/types/generated/strapi.schemas'; +import { Story } from '@/types/generated/strapi.schemas'; -import MapStepLayout from './layouts/map-step'; +import { ScrollItem } from './controller/scroll-item'; +import MapStepLayout, { StorySummary } from './layouts/map-step'; import OutroStepLayout from './layouts/outro-step'; import { getStepType } from './utils'; type StepProps = PropsWithChildren<{ - media?: StepLayoutOutroStepComponentMedia; - step: StoryStepsItem; - category?: StoryCategory; - index: number; + story?: Story; }>; -const Step = ({ step, category, index }: StepProps) => { +const Step = ({ story }: StepProps) => { + const steps = useMemo(() => story?.steps || [], [story]); const { step: currentStep } = useSyncStep(); - const type = getStepType(step); - const STEP_COMPONENT = useMemo(() => { - const stepLayout = step; - if (!type || !stepLayout) return null; - - switch (type) { - case 'map-step': { - return ( - - ); - } + const storySummary = useMemo(() => { + if (currentStep !== 1) { + return null; + } + const summary: StorySummary[] = []; + if (story?.location) { + summary.push({ + title: 'Location', + content: [{ attributes: { name: story.location } }], + }); + } + if (story?.ifis) { + summary.push({ + title: 'Institutions', + content: story.ifis?.data, + }); + } + if (story?.tags) { + summary.push({ + title: 'Tags', + content: story.tags?.data, + }); + } + if (story?.impacted_people) { + summary.push({ + title: 'People Impacted', + content: [{ attributes: { name: story.impacted_people } }], + }); + } + return summary; + }, [currentStep, story]); - case 'outro-step': - return ( - - ); - default: - return null; + const disclaimer = useMemo(() => { + const categoryAttributes = story?.category?.data?.attributes; + if (!!categoryAttributes && 'disclaimer' in categoryAttributes) { + return categoryAttributes.disclaimer; } - }, [step, type, currentStep, index, category?.data?.id, category?.data?.attributes]); + return []; + }, [story?.category?.data?.attributes]); return ( -
      - {STEP_COMPONENT} +
      + {steps.map((step, index) => { + const type = getStepType(step); + return ( + +
      + {type === 'map-step' && ( + + )} + {type === 'outro-step' && ( + + )} +
      +
      + ); + })}
      ); }; diff --git a/client/src/containers/story/steps/layouts/components/map-content.tsx b/client/src/containers/story/steps/layouts/components/map-content.tsx index d0ef91f..d3c3d1c 100644 --- a/client/src/containers/story/steps/layouts/components/map-content.tsx +++ b/client/src/containers/story/steps/layouts/components/map-content.tsx @@ -17,11 +17,11 @@ const MapContent = ({ showContent, title, titlePlaceholder, children }: MapConte - +

      {title ? ( title @@ -34,7 +34,7 @@ const MapContent = ({ showContent, title, titlePlaceholder, children }: MapConte -
      +
      {children}
      diff --git a/client/src/containers/story/steps/layouts/map-step.tsx b/client/src/containers/story/steps/layouts/map-step.tsx index 2c6f640..ff8f18e 100644 --- a/client/src/containers/story/steps/layouts/map-step.tsx +++ b/client/src/containers/story/steps/layouts/map-step.tsx @@ -4,76 +4,48 @@ import { InfoIcon } from 'lucide-react'; import { cn } from '@/lib/classnames'; +import { useSyncStep } from '@/store/stories'; + import { StepLayoutMapStepComponent, + StoryIfisDataItem, StoryStepsItem, - StoryCategoryDataAttributes, + StoryTagsDataItem, WidgetWidgetComponent, } from '@/types/generated/strapi.schemas'; import Chart from '@/components/chart'; -import CategoryIcon from '@/components/ui/category-icon'; import RichText from '@/components/ui/rich-text'; +import ScrollExplanation from '@/components/ui/scroll-explanation'; import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip'; import MapContent from './components/map-content'; +export type StorySummary = { + title: string; + content?: (StoryIfisDataItem | StoryTagsDataItem)[]; +}; + type MapStepLayoutProps = { step: StoryStepsItem; - category: StoryCategoryDataAttributes | undefined; - stepIndex: number; showContent?: boolean; + storySummary?: StorySummary[] | null; }; -const cardClassName = - 'rounded border border-gray-800 bg-[#335e6f] bg-opacity-50 py-6 px-4 backdrop-blur'; +const MapStepLayout = ({ step, showContent, storySummary }: MapStepLayoutProps) => { + const { card, widget } = step as StepLayoutMapStepComponent; -const MapStepLayout = ({ step, category, showContent }: MapStepLayoutProps) => { - const { story_summary, card, widget } = step as StepLayoutMapStepComponent; - return ( -
      -
      - {!!story_summary?.length && ( -
      -
      - - {category?.name} -
      + const { step: currentStep } = useSyncStep(); -
      - {story_summary?.map((item) => ( -
      -
      -

      {item.title}

      - {item.info && ( - - - - - {item.info} - - )} -
      - {item.link ? ( - - {item.content} - - ) : ( -

      {item.content}

      - )} -
      - ))} -
      -
      + return ( +
      +
      -
      -
      + > +
      {!!card && ( {
      )} + {!!storySummary?.length && ( +
      + {storySummary?.map((item) => ( +
      +
      +

      {item.title}

      +
      +
      + {item.content?.map((c) => { + return ( +
      + <> + {c.attributes?.link ? ( + + {c.attributes?.name} + + ) : ( +

      + {c.attributes?.name} +

      + )} + {c.attributes?.description && ( + + + + + + {c.attributes?.description} + + + )} + +
      + ); + })} +
      +
      + ))} +
      + )}
      + {currentStep === 1 && ( +
      + Scroll down to explore the story +
      + )}
      ); }; diff --git a/client/src/containers/story/steps/layouts/outro-step.tsx b/client/src/containers/story/steps/layouts/outro-step.tsx index 61a97be..bbc78f9 100644 --- a/client/src/containers/story/steps/layouts/outro-step.tsx +++ b/client/src/containers/story/steps/layouts/outro-step.tsx @@ -14,13 +14,25 @@ import { isFlyingBackAtom } from '@/store/map'; import { StepLayoutOutroStepComponent } from '@/types/generated/strapi.schemas'; +import ScrollExplanation from '@/components/ui/scroll-explanation'; + +type Disclaimer = { + id: number; + title: string; + partners: { + id: number; + logo: { data: { id: number; attributes: { url: string } } }; + url: string; + }[]; +}; + type MediaStepLayoutProps = { step: StepLayoutOutroStepComponent; - categoryId?: number; showContent: boolean; + disclaimer?: unknown; }; -const OutroStepLayout = ({ step, showContent }: MediaStepLayoutProps) => { +const OutroStepLayout = ({ step, showContent, disclaimer }: MediaStepLayoutProps) => { const { push } = useRouter(); const setIsFlyingBack = useSetAtom(isFlyingBackAtom); @@ -67,10 +79,12 @@ const OutroStepLayout = ({ step, showContent }: MediaStepLayoutProps) => { const mediaMime = media?.mime; const isVideo = mediaType?.includes('video'); + const isImage = mediaType?.includes('image'); - const scale = useTransform(scrollYProgress, [0.5, 0.7], ['1', '2']); const scaleContent = useTransform(scrollYProgress, [0.5, 0.7], ['1', '0.75']); + const categoryDisclaimer = disclaimer as Disclaimer[]; + return (
      {showContent && show && ( @@ -85,15 +99,15 @@ const OutroStepLayout = ({ step, showContent }: MediaStepLayoutProps) => {
      - {isVideo && ( - + + {isVideo && ( - - )} + )} + {isImage && ( + story conclusion image + )} + + {
      - -

      Continue scrolling to explore more stories

      -
      - {showContent && show && step.story_disclaimer?.length && ( -
      +
      + Continue scrolling to explore more stories +
      + + {showContent && show && categoryDisclaimer?.length && ( +
        - {step.story_disclaimer.map((sd) => ( -
      • -

        {sd.title}

        + {categoryDisclaimer.map((item) => ( +
      • +

        {item.title}

        - {sd.disclaimer?.length && - sd.disclaimer?.map((d) => { - const src = getImageSrc(d.logo?.data?.attributes?.url); - - const url = d.url; - return url ? ( - - - - ) : ( -
        - -
        - ); - })} + {item.partners?.map((partner) => { + const src = getImageSrc(partner.logo?.data?.attributes?.url); + + const url = partner.url; + return url ? ( + + + + ) : ( +
        + +
        + ); + })}
      • ))} diff --git a/client/src/lib/stories/index.ts b/client/src/lib/stories/index.ts index 02c5541..7b4ccbb 100644 --- a/client/src/lib/stories/index.ts +++ b/client/src/lib/stories/index.ts @@ -1,13 +1,17 @@ import { GetCategoriesParams } from '@/types/generated/strapi.schemas'; export const getStoriesParams = (params?: { - [key: string]: string | string[] | number | undefined; + [key: string]: string | string[] | number | number[] | undefined | null; }): GetCategoriesParams => { + const { category, title, ...rest } = params || {}; + return { populate: '*', 'pagination[limit]': 1000, filters: { - ...(params?.category && { category: Number(params?.category) }), + ...(category && { category: Number(category) }), + ...(title && { title: { $containsi: title } }), + ...rest, }, }; }; diff --git a/client/src/store/globe.ts b/client/src/store/globe.ts index 38773ad..f445104 100644 --- a/client/src/store/globe.ts +++ b/client/src/store/globe.ts @@ -1,14 +1,16 @@ import { atom } from 'jotai'; -import { parseAsArrayOf, useQueryStates, parseAsString, useQueryState } from 'nuqs'; +import { parseAsArrayOf, useQueryStates, parseAsString, useQueryState, parseAsInteger } from 'nuqs'; // NUQS SYNC STATE HOOKS export const useSyncCategory = () => useQueryState('category', parseAsString); +export const useSyncSearch = () => useQueryState('search', parseAsString); + export const useSyncFilters = () => useQueryStates({ - tags: parseAsArrayOf(parseAsString), - ifi: parseAsArrayOf(parseAsString), + tags: parseAsArrayOf(parseAsInteger), + ifis: parseAsArrayOf(parseAsInteger), status: parseAsArrayOf(parseAsString), }); diff --git a/client/src/styles/mapbox.css b/client/src/styles/mapbox.css index e0e2d95..9d53d73 100644 --- a/client/src/styles/mapbox.css +++ b/client/src/styles/mapbox.css @@ -80,7 +80,7 @@ float: right; } .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl { - margin: 0 0 24px 24px; + margin: 0 0 0px 0px; float: left; } .mapboxgl-ctrl-bottom-right .mapboxgl-ctrl { @@ -285,7 +285,8 @@ a.mapboxgl-ctrl-logo { width: 88px; height: 23px; - margin: 0 0 -4px -4px; + margin: 0; + transform: scale(0.8) translateX(-6px); display: block; background-repeat: no-repeat; cursor: pointer; @@ -309,7 +310,8 @@ a.mapboxgl-ctrl-logo.mapboxgl-compact { .mapboxgl-ctrl.mapboxgl-ctrl-attrib { padding: 0 5px; background-color: hsla(0, 0%, 100%, 0.5); - margin: 0 24px 24px 0; + margin: 0 0px 0px 0; + font-size: 12px; } .map-report .mapboxgl-ctrl.mapboxgl-ctrl-attrib { diff --git a/client/src/types/generated/ifi.ts b/client/src/types/generated/ifi.ts new file mode 100644 index 0000000..6fffe0e --- /dev/null +++ b/client/src/types/generated/ifi.ts @@ -0,0 +1,323 @@ +/** + * Generated by orval v6.20.0 🍺 + * Do not edit manually. + * DOCUMENTATION + * OpenAPI spec version: 1.0.0 + */ +import { useInfiniteQuery, useMutation, useQuery } from '@tanstack/react-query'; +import type { + MutationFunction, + QueryFunction, + QueryKey, + UseInfiniteQueryOptions, + UseInfiniteQueryResult, + UseMutationOptions, + UseQueryOptions, + UseQueryResult, +} from '@tanstack/react-query'; +import type { + Error, + GetIfisIdParams, + GetIfisParams, + IfiListResponse, + IfiRequest, + IfiResponse, +} from './strapi.schemas'; +import { API } from '../../services/api/index'; +import type { ErrorType } from '../../services/api/index'; + +export const getIfis = (params?: GetIfisParams, signal?: AbortSignal) => { + return API({ url: `/ifis`, method: 'get', params, signal }); +}; + +export const getGetIfisQueryKey = (params?: GetIfisParams) => { + return [`/ifis`, ...(params ? [params] : [])] as const; +}; + +export const getGetIfisInfiniteQueryOptions = < + TData = Awaited>, + TError = ErrorType +>( + params?: GetIfisParams, + options?: { query?: UseInfiniteQueryOptions>, TError, TData> } +) => { + const { query: queryOptions } = options ?? {}; + + const queryKey = queryOptions?.queryKey ?? getGetIfisQueryKey(params); + + const queryFn: QueryFunction>> = ({ signal, pageParam }) => + getIfis({ 'pagination[page]': pageParam, ...params }, signal); + + return { queryKey, queryFn, staleTime: 10000, ...queryOptions } as UseInfiniteQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: QueryKey }; +}; + +export type GetIfisInfiniteQueryResult = NonNullable>>; +export type GetIfisInfiniteQueryError = ErrorType; + +export const useGetIfisInfinite = < + TData = Awaited>, + TError = ErrorType +>( + params?: GetIfisParams, + options?: { query?: UseInfiniteQueryOptions>, TError, TData> } +): UseInfiniteQueryResult & { queryKey: QueryKey } => { + const queryOptions = getGetIfisInfiniteQueryOptions(params, options); + + const query = useInfiniteQuery(queryOptions) as UseInfiniteQueryResult & { + queryKey: QueryKey; + }; + + query.queryKey = queryOptions.queryKey; + + return query; +}; + +export const getGetIfisQueryOptions = < + TData = Awaited>, + TError = ErrorType +>( + params?: GetIfisParams, + options?: { query?: UseQueryOptions>, TError, TData> } +) => { + const { query: queryOptions } = options ?? {}; + + const queryKey = queryOptions?.queryKey ?? getGetIfisQueryKey(params); + + const queryFn: QueryFunction>> = ({ signal }) => + getIfis(params, signal); + + return { queryKey, queryFn, staleTime: 10000, ...queryOptions } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: QueryKey }; +}; + +export type GetIfisQueryResult = NonNullable>>; +export type GetIfisQueryError = ErrorType; + +export const useGetIfis = >, TError = ErrorType>( + params?: GetIfisParams, + options?: { query?: UseQueryOptions>, TError, TData> } +): UseQueryResult & { queryKey: QueryKey } => { + const queryOptions = getGetIfisQueryOptions(params, options); + + const query = useQuery(queryOptions) as UseQueryResult & { queryKey: QueryKey }; + + query.queryKey = queryOptions.queryKey; + + return query; +}; + +export const postIfis = (ifiRequest: IfiRequest) => { + return API({ + url: `/ifis`, + method: 'post', + headers: { 'Content-Type': 'application/json' }, + data: ifiRequest, + }); +}; + +export const getPostIfisMutationOptions = < + TError = ErrorType, + TContext = unknown +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { data: IfiRequest }, + TContext + >; +}): UseMutationOptions< + Awaited>, + TError, + { data: IfiRequest }, + TContext +> => { + const { mutation: mutationOptions } = options ?? {}; + + const mutationFn: MutationFunction>, { data: IfiRequest }> = ( + props + ) => { + const { data } = props ?? {}; + + return postIfis(data); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type PostIfisMutationResult = NonNullable>>; +export type PostIfisMutationBody = IfiRequest; +export type PostIfisMutationError = ErrorType; + +export const usePostIfis = , TContext = unknown>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { data: IfiRequest }, + TContext + >; +}) => { + const mutationOptions = getPostIfisMutationOptions(options); + + return useMutation(mutationOptions); +}; +export const getIfisId = (id: number, params?: GetIfisIdParams, signal?: AbortSignal) => { + return API({ url: `/ifis/${id}`, method: 'get', params, signal }); +}; + +export const getGetIfisIdQueryKey = (id: number, params?: GetIfisIdParams) => { + return [`/ifis/${id}`, ...(params ? [params] : [])] as const; +}; + +export const getGetIfisIdQueryOptions = < + TData = Awaited>, + TError = ErrorType +>( + id: number, + params?: GetIfisIdParams, + options?: { query?: UseQueryOptions>, TError, TData> } +) => { + const { query: queryOptions } = options ?? {}; + + const queryKey = queryOptions?.queryKey ?? getGetIfisIdQueryKey(id, params); + + const queryFn: QueryFunction>> = ({ signal }) => + getIfisId(id, params, signal); + + return { queryKey, queryFn, enabled: !!id, staleTime: 10000, ...queryOptions } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: QueryKey }; +}; + +export type GetIfisIdQueryResult = NonNullable>>; +export type GetIfisIdQueryError = ErrorType; + +export const useGetIfisId = < + TData = Awaited>, + TError = ErrorType +>( + id: number, + params?: GetIfisIdParams, + options?: { query?: UseQueryOptions>, TError, TData> } +): UseQueryResult & { queryKey: QueryKey } => { + const queryOptions = getGetIfisIdQueryOptions(id, params, options); + + const query = useQuery(queryOptions) as UseQueryResult & { queryKey: QueryKey }; + + query.queryKey = queryOptions.queryKey; + + return query; +}; + +export const putIfisId = (id: number, ifiRequest: IfiRequest) => { + return API({ + url: `/ifis/${id}`, + method: 'put', + headers: { 'Content-Type': 'application/json' }, + data: ifiRequest, + }); +}; + +export const getPutIfisIdMutationOptions = < + TError = ErrorType, + TContext = unknown +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { id: number; data: IfiRequest }, + TContext + >; +}): UseMutationOptions< + Awaited>, + TError, + { id: number; data: IfiRequest }, + TContext +> => { + const { mutation: mutationOptions } = options ?? {}; + + const mutationFn: MutationFunction< + Awaited>, + { id: number; data: IfiRequest } + > = (props) => { + const { id, data } = props ?? {}; + + return putIfisId(id, data); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type PutIfisIdMutationResult = NonNullable>>; +export type PutIfisIdMutationBody = IfiRequest; +export type PutIfisIdMutationError = ErrorType; + +export const usePutIfisId = , TContext = unknown>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { id: number; data: IfiRequest }, + TContext + >; +}) => { + const mutationOptions = getPutIfisIdMutationOptions(options); + + return useMutation(mutationOptions); +}; +export const deleteIfisId = (id: number) => { + return API({ url: `/ifis/${id}`, method: 'delete' }); +}; + +export const getDeleteIfisIdMutationOptions = < + TError = ErrorType, + TContext = unknown +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { id: number }, + TContext + >; +}): UseMutationOptions< + Awaited>, + TError, + { id: number }, + TContext +> => { + const { mutation: mutationOptions } = options ?? {}; + + const mutationFn: MutationFunction>, { id: number }> = ( + props + ) => { + const { id } = props ?? {}; + + return deleteIfisId(id); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type DeleteIfisIdMutationResult = NonNullable>>; + +export type DeleteIfisIdMutationError = ErrorType; + +export const useDeleteIfisId = , TContext = unknown>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { id: number }, + TContext + >; +}) => { + const mutationOptions = getDeleteIfisIdMutationOptions(options); + + return useMutation(mutationOptions); +}; diff --git a/client/src/types/generated/strapi.schemas.ts b/client/src/types/generated/strapi.schemas.ts index f622fa5..90b20ff 100644 --- a/client/src/types/generated/strapi.schemas.ts +++ b/client/src/types/generated/strapi.schemas.ts @@ -54,6 +54,56 @@ export type GetTopStoriesParams = { locale?: string; }; +export type GetTagsIdParams = { + /** + * Relations to return + */ + populate?: string; +}; + +export type GetTagsParams = { + /** + * Sort by attributes ascending (asc) or descending (desc) + */ + sort?: string; + /** + * Return page/pageSize (default: true) + */ + 'pagination[withCount]'?: boolean; + /** + * Page number (default: 0) + */ + 'pagination[page]'?: number; + /** + * Page size (default: 25) + */ + 'pagination[pageSize]'?: number; + /** + * Offset value (default: 0) + */ + 'pagination[start]'?: number; + /** + * Number of entities to return (default: 25) + */ + 'pagination[limit]'?: number; + /** + * Fields to return (ex: title,author) + */ + fields?: string; + /** + * Relations to return + */ + populate?: string; + /** + * Filters to apply + */ + filters?: { [key: string]: any }; + /** + * Locale to apply + */ + locale?: string; +}; + export type GetStoriesIdParams = { /** * Relations to return @@ -154,6 +204,56 @@ export type GetLayersParams = { locale?: string; }; +export type GetIfisIdParams = { + /** + * Relations to return + */ + populate?: string; +}; + +export type GetIfisParams = { + /** + * Sort by attributes ascending (asc) or descending (desc) + */ + sort?: string; + /** + * Return page/pageSize (default: true) + */ + 'pagination[withCount]'?: boolean; + /** + * Page number (default: 0) + */ + 'pagination[page]'?: number; + /** + * Page size (default: 25) + */ + 'pagination[pageSize]'?: number; + /** + * Offset value (default: 0) + */ + 'pagination[start]'?: number; + /** + * Number of entities to return (default: 25) + */ + 'pagination[limit]'?: number; + /** + * Fields to return (ex: title,author) + */ + fields?: string; + /** + * Relations to return + */ + populate?: string; + /** + * Filters to apply + */ + filters?: { [key: string]: any }; + /** + * Locale to apply + */ + locale?: string; +}; + export type GetDatasetGroupsIdParams = { /** * Relations to return @@ -412,16 +512,29 @@ export interface TopStory { updatedBy?: TopStoryUpdatedBy; } +export type TopStoryStoryDataAttributesUpdatedByData = { + attributes?: TopStoryStoryDataAttributesUpdatedByDataAttributes; + id?: number; +}; + +export type TopStoryStoryDataAttributesUpdatedBy = { + data?: TopStoryStoryDataAttributesUpdatedByData; +}; + export type TopStoryStoryDataAttributes = { active?: boolean; category?: TopStoryStoryDataAttributesCategory; createdAt?: string; createdBy?: TopStoryStoryDataAttributesCreatedBy; + ifis?: TopStoryStoryDataAttributesIfis; + impacted_people?: string; + location?: string; marker?: unknown; publishedAt?: string; slug?: string; status?: TopStoryStoryDataAttributesStatus; steps?: TopStoryStoryDataAttributesStepsItem[]; + tags?: TopStoryStoryDataAttributesTags; title?: string; updatedAt?: string; updatedBy?: TopStoryStoryDataAttributesUpdatedBy; @@ -438,53 +551,65 @@ export type TopStoryStory = { export type TopStoryStoryDataAttributesUpdatedByDataAttributes = { [key: string]: any }; -export type TopStoryStoryDataAttributesUpdatedByData = { - attributes?: TopStoryStoryDataAttributesUpdatedByDataAttributes; +export type TopStoryStoryDataAttributesTagsDataItemAttributes = { + createdAt?: string; + createdBy?: TopStoryStoryDataAttributesTagsDataItemAttributesCreatedBy; + description?: string; + name?: string; + publishedAt?: string; + updatedAt?: string; + updatedBy?: TopStoryStoryDataAttributesTagsDataItemAttributesUpdatedBy; +}; + +export type TopStoryStoryDataAttributesTagsDataItem = { + attributes?: TopStoryStoryDataAttributesTagsDataItemAttributes; id?: number; }; -export type TopStoryStoryDataAttributesUpdatedBy = { - data?: TopStoryStoryDataAttributesUpdatedByData; +export type TopStoryStoryDataAttributesTags = { + data?: TopStoryStoryDataAttributesTagsDataItem[]; }; -export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByDataAttributes = - { [key: string]: any }; +export type TopStoryStoryDataAttributesTagsDataItemAttributesUpdatedByDataAttributes = { + [key: string]: any; +}; -export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByData = - { - attributes?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByDataAttributes; - id?: number; - }; +export type TopStoryStoryDataAttributesTagsDataItemAttributesUpdatedByData = { + attributes?: TopStoryStoryDataAttributesTagsDataItemAttributesUpdatedByDataAttributes; + id?: number; +}; -export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedBy = - { - data?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByData; - }; +export type TopStoryStoryDataAttributesTagsDataItemAttributesUpdatedBy = { + data?: TopStoryStoryDataAttributesTagsDataItemAttributesUpdatedByData; +}; -export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributes = - { - alternativeText?: string; - caption?: string; - createdAt?: string; - createdBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesCreatedBy; - ext?: string; - folder?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesFolder; - folderPath?: string; - formats?: unknown; - hash?: string; - height?: number; - mime?: string; - name?: string; - previewUrl?: string; - provider?: string; - provider_metadata?: unknown; - related?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesRelated; - size?: number; - updatedAt?: string; - updatedBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedBy; - url?: string; - width?: number; - }; +export type TopStoryStoryDataAttributesTagsDataItemAttributesCreatedByDataAttributes = { + [key: string]: any; +}; + +export type TopStoryStoryDataAttributesTagsDataItemAttributesCreatedByData = { + attributes?: TopStoryStoryDataAttributesTagsDataItemAttributesCreatedByDataAttributes; + id?: number; +}; + +export type TopStoryStoryDataAttributesTagsDataItemAttributesCreatedBy = { + data?: TopStoryStoryDataAttributesTagsDataItemAttributesCreatedByData; +}; + +export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwo = { + __component?: string; + content?: string; + id?: number; + layers?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoLayers; + map?: unknown; + media?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMedia; + story_disclaimer?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItem[]; + title?: string; +}; + +export type TopStoryStoryDataAttributesStepsItem = + | TopStoryStoryDataAttributesStepsItemAnyOf + | TopStoryStoryDataAttributesStepsItemAnyOfFourtwo; export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoData = { @@ -510,6 +635,20 @@ export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItem title?: string; }; +export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByDataAttributes = + { [key: string]: any }; + +export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByData = + { + attributes?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByDataAttributes; + id?: number; + }; + +export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedBy = + { + data?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByData; + }; + export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesRelatedDataItemAttributes = { [key: string]: any }; @@ -538,6 +677,31 @@ export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemD data?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesFolderData; }; +export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributes = + { + alternativeText?: string; + caption?: string; + createdAt?: string; + createdBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesCreatedBy; + ext?: string; + folder?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesFolder; + folderPath?: string; + formats?: unknown; + hash?: string; + height?: number; + mime?: string; + name?: string; + previewUrl?: string; + provider?: string; + provider_metadata?: unknown; + related?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesRelated; + size?: number; + updatedAt?: string; + updatedBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedBy; + url?: string; + width?: number; + }; + export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesCreatedByDataAttributes = { [key: string]: any }; @@ -552,6 +716,34 @@ export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemD data?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesCreatedByData; }; +export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesUpdatedBy = { + data?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesUpdatedByData; +}; + +export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributes = { + alternativeText?: string; + caption?: string; + createdAt?: string; + createdBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesCreatedBy; + ext?: string; + folder?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolder; + folderPath?: string; + formats?: unknown; + hash?: string; + height?: number; + mime?: string; + name?: string; + previewUrl?: string; + provider?: string; + provider_metadata?: unknown; + related?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesRelated; + size?: number; + updatedAt?: string; + updatedBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesUpdatedBy; + url?: string; + width?: number; +}; + export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaData = { attributes?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributes; id?: number; @@ -569,10 +761,6 @@ export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesU id?: number; }; -export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesUpdatedBy = { - data?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesUpdatedByData; -}; - export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesRelatedDataItemAttributes = { [key: string]: any }; @@ -585,37 +773,27 @@ export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesR data?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesRelatedDataItem[]; }; -export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderData = { - attributes?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributes; - id?: number; -}; - -export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolder = { - data?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderData; +export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributes = + { + children?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesChildren; + createdAt?: string; + createdBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesCreatedBy; + files?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFiles; + name?: string; + parent?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesParent; + path?: string; + pathId?: number; + updatedAt?: string; + updatedBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesUpdatedBy; + }; + +export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderData = { + attributes?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributes; + id?: number; }; -export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributes = { - alternativeText?: string; - caption?: string; - createdAt?: string; - createdBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesCreatedBy; - ext?: string; - folder?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolder; - folderPath?: string; - formats?: unknown; - hash?: string; - height?: number; - mime?: string; - name?: string; - previewUrl?: string; - provider?: string; - provider_metadata?: unknown; - related?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesRelated; - size?: number; - updatedAt?: string; - updatedBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesUpdatedBy; - url?: string; - width?: number; +export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolder = { + data?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderData; }; export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesUpdatedByDataAttributes = @@ -646,31 +824,6 @@ export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesF data?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesParentData; }; -export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributes = - { - alternativeText?: string; - caption?: string; - createdAt?: string; - createdBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesCreatedBy; - ext?: string; - folder?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesFolder; - folderPath?: string; - formats?: unknown; - hash?: string; - height?: number; - mime?: string; - name?: string; - previewUrl?: string; - provider?: string; - provider_metadata?: unknown; - related?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesRelated; - size?: number; - updatedAt?: string; - updatedBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedBy; - url?: string; - width?: number; - }; - export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItem = { attributes?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributes; @@ -682,20 +835,6 @@ export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesF data?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItem[]; }; -export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributes = - { - children?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesChildren; - createdAt?: string; - createdBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesCreatedBy; - files?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFiles; - name?: string; - parent?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesParent; - path?: string; - pathId?: number; - updatedAt?: string; - updatedBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesUpdatedBy; - }; - export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -738,6 +877,31 @@ export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesF data?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesFolderData; }; +export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributes = + { + alternativeText?: string; + caption?: string; + createdAt?: string; + createdBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesCreatedBy; + ext?: string; + folder?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesFolder; + folderPath?: string; + formats?: unknown; + hash?: string; + height?: number; + mime?: string; + name?: string; + previewUrl?: string; + provider?: string; + provider_metadata?: unknown; + related?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesRelated; + size?: number; + updatedAt?: string; + updatedBy?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedBy; + url?: string; + width?: number; + }; + export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesCreatedByDataAttributes = { [key: string]: any }; @@ -805,32 +969,6 @@ export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwoLayers = { data?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoLayersDataItem[]; }; -export type TopStoryStoryDataAttributesStepsItemAnyOfFourtwo = { - __component?: string; - content?: string; - id?: number; - layers?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoLayers; - map?: unknown; - media?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoMedia; - story_disclaimer?: TopStoryStoryDataAttributesStepsItemAnyOfFourtwoStoryDisclaimerItem[]; - title?: string; -}; - -export type TopStoryStoryDataAttributesStepsItemAnyOf = { - __component?: string; - card?: TopStoryStoryDataAttributesStepsItemAnyOfCard; - id?: number; - layers?: TopStoryStoryDataAttributesStepsItemAnyOfLayers; - map?: unknown; - story_summary?: TopStoryStoryDataAttributesStepsItemAnyOfStorySummaryItem[]; - title?: string; - widget?: TopStoryStoryDataAttributesStepsItemAnyOfWidget; -}; - -export type TopStoryStoryDataAttributesStepsItem = - | TopStoryStoryDataAttributesStepsItemAnyOf - | TopStoryStoryDataAttributesStepsItemAnyOfFourtwo; - export type TopStoryStoryDataAttributesStepsItemAnyOfWidgetType = (typeof TopStoryStoryDataAttributesStepsItemAnyOfWidgetType)[keyof typeof TopStoryStoryDataAttributesStepsItemAnyOfWidgetType]; @@ -849,6 +987,7 @@ export const TopStoryStoryDataAttributesStepsItemAnyOfWidgetType = { export type TopStoryStoryDataAttributesStepsItemAnyOfWidget = { data?: unknown; id?: number; + legend?: string; options?: unknown; title?: string; type?: TopStoryStoryDataAttributesStepsItemAnyOfWidgetType; @@ -862,6 +1001,17 @@ export type TopStoryStoryDataAttributesStepsItemAnyOfStorySummaryItem = { title?: string; }; +export type TopStoryStoryDataAttributesStepsItemAnyOf = { + __component?: string; + card?: TopStoryStoryDataAttributesStepsItemAnyOfCard; + id?: number; + layers?: TopStoryStoryDataAttributesStepsItemAnyOfLayers; + map?: unknown; + story_summary?: TopStoryStoryDataAttributesStepsItemAnyOfStorySummaryItem[]; + title?: string; + widget?: TopStoryStoryDataAttributesStepsItemAnyOfWidget; +}; + export type TopStoryStoryDataAttributesStepsItemAnyOfLayersDataItem = { attributes?: TopStoryStoryDataAttributesStepsItemAnyOfLayersDataItemAttributes; id?: number; @@ -1084,35 +1234,63 @@ export const TopStoryStoryDataAttributesStatus = { In_progress: 'In progress', } as const; -export type TopStoryStoryDataAttributesCreatedByDataAttributes = { [key: string]: any }; +export type TopStoryStoryDataAttributesIfisDataItemAttributes = { + createdAt?: string; + createdBy?: TopStoryStoryDataAttributesIfisDataItemAttributesCreatedBy; + description?: string; + link?: string; + name?: string; + publishedAt?: string; + updatedAt?: string; + updatedBy?: TopStoryStoryDataAttributesIfisDataItemAttributesUpdatedBy; +}; -export type TopStoryStoryDataAttributesCreatedByData = { - attributes?: TopStoryStoryDataAttributesCreatedByDataAttributes; +export type TopStoryStoryDataAttributesIfisDataItem = { + attributes?: TopStoryStoryDataAttributesIfisDataItemAttributes; id?: number; }; -export type TopStoryStoryDataAttributesCreatedBy = { - data?: TopStoryStoryDataAttributesCreatedByData; +export type TopStoryStoryDataAttributesIfis = { + data?: TopStoryStoryDataAttributesIfisDataItem[]; }; -export type TopStoryStoryDataAttributesCategoryData = { - attributes?: TopStoryStoryDataAttributesCategoryDataAttributes; +export type TopStoryStoryDataAttributesIfisDataItemAttributesUpdatedByDataAttributes = { + [key: string]: any; +}; + +export type TopStoryStoryDataAttributesIfisDataItemAttributesUpdatedByData = { + attributes?: TopStoryStoryDataAttributesIfisDataItemAttributesUpdatedByDataAttributes; id?: number; }; -export type TopStoryStoryDataAttributesCategory = { - data?: TopStoryStoryDataAttributesCategoryData; +export type TopStoryStoryDataAttributesIfisDataItemAttributesUpdatedBy = { + data?: TopStoryStoryDataAttributesIfisDataItemAttributesUpdatedByData; }; -export type TopStoryStoryDataAttributesCategoryDataAttributesUpdatedByDataAttributes = { +export type TopStoryStoryDataAttributesIfisDataItemAttributesCreatedByDataAttributes = { [key: string]: any; }; -export type TopStoryStoryDataAttributesCategoryDataAttributesUpdatedByData = { - attributes?: TopStoryStoryDataAttributesCategoryDataAttributesUpdatedByDataAttributes; +export type TopStoryStoryDataAttributesIfisDataItemAttributesCreatedByData = { + attributes?: TopStoryStoryDataAttributesIfisDataItemAttributesCreatedByDataAttributes; + id?: number; +}; + +export type TopStoryStoryDataAttributesIfisDataItemAttributesCreatedBy = { + data?: TopStoryStoryDataAttributesIfisDataItemAttributesCreatedByData; +}; + +export type TopStoryStoryDataAttributesCreatedByDataAttributes = { [key: string]: any }; + +export type TopStoryStoryDataAttributesCreatedByData = { + attributes?: TopStoryStoryDataAttributesCreatedByDataAttributes; id?: number; }; +export type TopStoryStoryDataAttributesCreatedBy = { + data?: TopStoryStoryDataAttributesCreatedByData; +}; + export type TopStoryStoryDataAttributesCategoryDataAttributesUpdatedBy = { data?: TopStoryStoryDataAttributesCategoryDataAttributesUpdatedByData; }; @@ -1128,6 +1306,24 @@ export type TopStoryStoryDataAttributesCategoryDataAttributes = { updatedBy?: TopStoryStoryDataAttributesCategoryDataAttributesUpdatedBy; }; +export type TopStoryStoryDataAttributesCategoryData = { + attributes?: TopStoryStoryDataAttributesCategoryDataAttributes; + id?: number; +}; + +export type TopStoryStoryDataAttributesCategory = { + data?: TopStoryStoryDataAttributesCategoryData; +}; + +export type TopStoryStoryDataAttributesCategoryDataAttributesUpdatedByDataAttributes = { + [key: string]: any; +}; + +export type TopStoryStoryDataAttributesCategoryDataAttributesUpdatedByData = { + attributes?: TopStoryStoryDataAttributesCategoryDataAttributesUpdatedByDataAttributes; + id?: number; +}; + export type TopStoryStoryDataAttributesCategoryDataAttributesStoriesDataItemAttributes = { [key: string]: any; }; @@ -1180,19 +1376,6 @@ export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttrib data?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesUpdatedByData; }; -export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributes = - { - code?: string; - createdAt?: string; - createdBy?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedBy; - description?: string; - name?: string; - permissions?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissions; - updatedAt?: string; - updatedBy?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; - users?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsers; - }; - export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItem = { attributes?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributes; @@ -1217,6 +1400,19 @@ export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttrib data?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItem[]; }; +export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributes = + { + code?: string; + createdAt?: string; + createdBy?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedBy; + description?: string; + name?: string; + permissions?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissions; + updatedAt?: string; + updatedBy?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; + users?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsers; + }; + export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -1256,19 +1452,6 @@ export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttrib data?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData; }; -export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = - { - action?: string; - conditions?: unknown; - createdAt?: string; - createdBy?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy; - properties?: unknown; - role?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole; - subject?: string; - updatedAt?: string; - updatedBy?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy; - }; - export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes = { [key: string]: any }; @@ -1297,13 +1480,17 @@ export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttrib data?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByData; }; -export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes = - { [key: string]: any }; - -export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByData = +export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = { - attributes?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes; - id?: number; + action?: string; + conditions?: unknown; + createdAt?: string; + createdBy?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy; + properties?: unknown; + role?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole; + subject?: string; + updatedAt?: string; + updatedBy?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy; }; export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedBy = @@ -1311,12 +1498,21 @@ export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttrib data?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByData; }; -export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesCreatedByDataAttributes = +export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes = { [key: string]: any }; -export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesCreatedByData = +export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByData = { - attributes?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesCreatedByDataAttributes; + attributes?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes; + id?: number; + }; + +export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesCreatedByDataAttributes = + { [key: string]: any }; + +export type TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesCreatedByData = + { + attributes?: TopStoryStoryDataAttributesCategoryDataAttributesCreatedByDataAttributesCreatedByDataAttributes; id?: number; }; @@ -1355,30 +1551,6 @@ export type TopStoryCoverImageDataAttributesUpdatedBy = { data?: TopStoryCoverImageDataAttributesUpdatedByData; }; -export type TopStoryCoverImageDataAttributes = { - alternativeText?: string; - caption?: string; - createdAt?: string; - createdBy?: TopStoryCoverImageDataAttributesCreatedBy; - ext?: string; - folder?: TopStoryCoverImageDataAttributesFolder; - folderPath?: string; - formats?: unknown; - hash?: string; - height?: number; - mime?: string; - name?: string; - previewUrl?: string; - provider?: string; - provider_metadata?: unknown; - related?: TopStoryCoverImageDataAttributesRelated; - size?: number; - updatedAt?: string; - updatedBy?: TopStoryCoverImageDataAttributesUpdatedBy; - url?: string; - width?: number; -}; - export type TopStoryCoverImageDataAttributesRelatedDataItemAttributes = { [key: string]: any }; export type TopStoryCoverImageDataAttributesRelatedDataItem = { @@ -1412,6 +1584,30 @@ export type TopStoryCoverImageDataAttributesCreatedBy = { data?: TopStoryCoverImageDataAttributesCreatedByData; }; +export type TopStoryCoverImageDataAttributes = { + alternativeText?: string; + caption?: string; + createdAt?: string; + createdBy?: TopStoryCoverImageDataAttributesCreatedBy; + ext?: string; + folder?: TopStoryCoverImageDataAttributesFolder; + folderPath?: string; + formats?: unknown; + hash?: string; + height?: number; + mime?: string; + name?: string; + previewUrl?: string; + provider?: string; + provider_metadata?: unknown; + related?: TopStoryCoverImageDataAttributesRelated; + size?: number; + updatedAt?: string; + updatedBy?: TopStoryCoverImageDataAttributesUpdatedBy; + url?: string; + width?: number; +}; + export type TopStoryListResponseMetaPagination = { page?: number; pageCount?: number; @@ -1433,6 +1629,10 @@ export interface TopStoryListResponse { meta?: TopStoryListResponseMeta; } +export type TopStoryRequestDataStory = number | string; + +export type TopStoryRequestDataCoverImage = number | string; + export type TopStoryRequestData = { cover_image: TopStoryRequestDataCoverImage; index: number; @@ -1444,9 +1644,247 @@ export interface TopStoryRequest { data: TopStoryRequestData; } -export type TopStoryRequestDataStory = number | string; +export type TagResponseMeta = { [key: string]: any }; -export type TopStoryRequestDataCoverImage = number | string; +export interface Tag { + createdAt?: string; + createdBy?: TagCreatedBy; + description?: string; + name: string; + publishedAt?: string; + updatedAt?: string; + updatedBy?: TagUpdatedBy; +} + +export interface TagResponseDataObject { + attributes?: Tag; + id?: number; +} + +export interface TagResponse { + data?: TagResponseDataObject; + meta?: TagResponseMeta; +} + +export type TagUpdatedByDataAttributes = { [key: string]: any }; + +export type TagUpdatedByData = { + attributes?: TagUpdatedByDataAttributes; + id?: number; +}; + +export type TagUpdatedBy = { + data?: TagUpdatedByData; +}; + +export type TagCreatedByDataAttributes = { + blocked?: boolean; + createdAt?: string; + createdBy?: TagCreatedByDataAttributesCreatedBy; + email?: string; + firstname?: string; + isActive?: boolean; + lastname?: string; + preferedLanguage?: string; + registrationToken?: string; + resetPasswordToken?: string; + roles?: TagCreatedByDataAttributesRoles; + updatedAt?: string; + updatedBy?: TagCreatedByDataAttributesUpdatedBy; + username?: string; +}; + +export type TagCreatedByData = { + attributes?: TagCreatedByDataAttributes; + id?: number; +}; + +export type TagCreatedBy = { + data?: TagCreatedByData; +}; + +export type TagCreatedByDataAttributesUpdatedByDataAttributes = { [key: string]: any }; + +export type TagCreatedByDataAttributesUpdatedByData = { + attributes?: TagCreatedByDataAttributesUpdatedByDataAttributes; + id?: number; +}; + +export type TagCreatedByDataAttributesUpdatedBy = { + data?: TagCreatedByDataAttributesUpdatedByData; +}; + +export type TagCreatedByDataAttributesRolesDataItem = { + attributes?: TagCreatedByDataAttributesRolesDataItemAttributes; + id?: number; +}; + +export type TagCreatedByDataAttributesRoles = { + data?: TagCreatedByDataAttributesRolesDataItem[]; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributesUsersDataItemAttributes = { + [key: string]: any; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributesUsersDataItem = { + attributes?: TagCreatedByDataAttributesRolesDataItemAttributesUsersDataItemAttributes; + id?: number; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributesUsers = { + data?: TagCreatedByDataAttributesRolesDataItemAttributesUsersDataItem[]; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributes = { + code?: string; + createdAt?: string; + createdBy?: TagCreatedByDataAttributesRolesDataItemAttributesCreatedBy; + description?: string; + name?: string; + permissions?: TagCreatedByDataAttributesRolesDataItemAttributesPermissions; + updatedAt?: string; + updatedBy?: TagCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; + users?: TagCreatedByDataAttributesRolesDataItemAttributesUsers; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributesUpdatedByDataAttributes = { + [key: string]: any; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributesUpdatedByData = { + attributes?: TagCreatedByDataAttributesRolesDataItemAttributesUpdatedByDataAttributes; + id?: number; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributesUpdatedBy = { + data?: TagCreatedByDataAttributesRolesDataItemAttributesUpdatedByData; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem = { + attributes?: TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes; + id?: number; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributesPermissions = { + data?: TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem[]; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes = + { [key: string]: any }; + +export type TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData = + { + attributes?: TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes; + id?: number; + }; + +export type TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy = + { + data?: TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData; + }; + +export type TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes = + { [key: string]: any }; + +export type TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleData = + { + attributes?: TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes; + id?: number; + }; + +export type TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole = { + data?: TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleData; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByDataAttributes = + { [key: string]: any }; + +export type TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByData = + { + attributes?: TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByDataAttributes; + id?: number; + }; + +export type TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy = + { + data?: TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByData; + }; + +export type TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = { + action?: string; + conditions?: unknown; + createdAt?: string; + createdBy?: TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy; + properties?: unknown; + role?: TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole; + subject?: string; + updatedAt?: string; + updatedBy?: TagCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributesCreatedBy = { + data?: TagCreatedByDataAttributesRolesDataItemAttributesCreatedByData; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes = { + [key: string]: any; +}; + +export type TagCreatedByDataAttributesRolesDataItemAttributesCreatedByData = { + attributes?: TagCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes; + id?: number; +}; + +export type TagCreatedByDataAttributesCreatedByDataAttributes = { [key: string]: any }; + +export type TagCreatedByDataAttributesCreatedByData = { + attributes?: TagCreatedByDataAttributesCreatedByDataAttributes; + id?: number; +}; + +export type TagCreatedByDataAttributesCreatedBy = { + data?: TagCreatedByDataAttributesCreatedByData; +}; + +export type TagListResponseMetaPagination = { + page?: number; + pageCount?: number; + pageSize?: number; + total?: number; +}; + +export type TagListResponseMeta = { + pagination?: TagListResponseMetaPagination; +}; + +export interface TagListResponseDataItem { + attributes?: Tag; + id?: number; +} + +export interface TagListResponse { + data?: TagListResponseDataItem[]; + meta?: TagListResponseMeta; +} + +export type TagRequestData = { + description?: string; + name: string; +}; + +export interface TagRequest { + data: TagRequestData; +} + +export type StepLayoutOutroStepComponentMediaData = { + attributes?: StepLayoutOutroStepComponentMediaDataAttributes; + id?: number; +}; + +export type StepLayoutOutroStepComponentMedia = { + data?: StepLayoutOutroStepComponentMediaData; +}; export interface StepLayoutOutroStepComponent { __component?: string; @@ -1459,6 +1897,19 @@ export interface StepLayoutOutroStepComponent { title?: string; } +export type StepLayoutOutroStepComponentMediaDataAttributesUpdatedByDataAttributes = { + [key: string]: any; +}; + +export type StepLayoutOutroStepComponentMediaDataAttributesUpdatedByData = { + attributes?: StepLayoutOutroStepComponentMediaDataAttributesUpdatedByDataAttributes; + id?: number; +}; + +export type StepLayoutOutroStepComponentMediaDataAttributesUpdatedBy = { + data?: StepLayoutOutroStepComponentMediaDataAttributesUpdatedByData; +}; + export type StepLayoutOutroStepComponentMediaDataAttributes = { alternativeText?: string; caption?: string; @@ -1483,28 +1934,6 @@ export type StepLayoutOutroStepComponentMediaDataAttributes = { width?: number; }; -export type StepLayoutOutroStepComponentMediaData = { - attributes?: StepLayoutOutroStepComponentMediaDataAttributes; - id?: number; -}; - -export type StepLayoutOutroStepComponentMedia = { - data?: StepLayoutOutroStepComponentMediaData; -}; - -export type StepLayoutOutroStepComponentMediaDataAttributesUpdatedByDataAttributes = { - [key: string]: any; -}; - -export type StepLayoutOutroStepComponentMediaDataAttributesUpdatedByData = { - attributes?: StepLayoutOutroStepComponentMediaDataAttributesUpdatedByDataAttributes; - id?: number; -}; - -export type StepLayoutOutroStepComponentMediaDataAttributesUpdatedBy = { - data?: StepLayoutOutroStepComponentMediaDataAttributesUpdatedByData; -}; - export type StepLayoutOutroStepComponentMediaDataAttributesRelatedDataItemAttributes = { [key: string]: any; }; @@ -1555,6 +1984,17 @@ export type StepLayoutOutroStepComponentLayers = { data?: StepLayoutOutroStepComponentLayersDataItem[]; }; +export type StoryOutroDisclaimerDisclaimerComponentDisclaimerItemLogo = { + data?: StoryOutroDisclaimerDisclaimerComponentDisclaimerItemLogoData; +}; + +export type StoryOutroDisclaimerDisclaimerComponentDisclaimerItem = { + id?: number; + logo?: StoryOutroDisclaimerDisclaimerComponentDisclaimerItemLogo; + name?: string; + url?: string; +}; + export interface StoryOutroDisclaimerDisclaimerComponent { disclaimer?: StoryOutroDisclaimerDisclaimerComponentDisclaimerItem[]; id?: number; @@ -1590,17 +2030,6 @@ export type StoryOutroDisclaimerDisclaimerComponentDisclaimerItemLogoData = { id?: number; }; -export type StoryOutroDisclaimerDisclaimerComponentDisclaimerItemLogo = { - data?: StoryOutroDisclaimerDisclaimerComponentDisclaimerItemLogoData; -}; - -export type StoryOutroDisclaimerDisclaimerComponentDisclaimerItem = { - id?: number; - logo?: StoryOutroDisclaimerDisclaimerComponentDisclaimerItemLogo; - name?: string; - url?: string; -}; - export type StoryOutroDisclaimerDisclaimerComponentDisclaimerItemLogoDataAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -1679,6 +2108,7 @@ export const WidgetWidgetComponentType = { export interface WidgetWidgetComponent { data?: unknown; id?: number; + legend?: string; options?: unknown; title?: string; type?: WidgetWidgetComponentType; @@ -1711,6 +2141,33 @@ export interface StepLayoutMapStepComponent { export type StoryResponseMeta = { [key: string]: any }; +export type StoryStatus = (typeof StoryStatus)[keyof typeof StoryStatus]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const StoryStatus = { + Completed: 'Completed', + In_progress: 'In progress', +} as const; + +export interface Story { + active?: boolean; + category?: StoryCategory; + createdAt?: string; + createdBy?: StoryCreatedBy; + ifis?: StoryIfis; + impacted_people?: string; + location?: string; + marker: unknown; + publishedAt?: string; + slug?: string; + status: StoryStatus; + steps?: StoryStepsItem[]; + tags?: StoryTags; + title: string; + updatedAt?: string; + updatedBy?: StoryUpdatedBy; +} + export interface StoryResponseDataObject { attributes?: Story; id?: number; @@ -1732,30 +2189,29 @@ export type StoryUpdatedBy = { data?: StoryUpdatedByData; }; +export type StoryTagsDataItemAttributes = { [key: string]: any }; + +export type StoryTagsDataItem = { + attributes?: StoryTagsDataItemAttributes; + id?: number; +}; + +export type StoryTags = { + data?: StoryTagsDataItem[]; +}; + export type StoryStepsItem = StepLayoutMapStepComponent | StepLayoutOutroStepComponent; -export type StoryStatus = (typeof StoryStatus)[keyof typeof StoryStatus]; +export type StoryIfisDataItemAttributes = { [key: string]: any }; -// eslint-disable-next-line @typescript-eslint/no-redeclare -export const StoryStatus = { - Completed: 'Completed', - In_progress: 'In progress', -} as const; +export type StoryIfisDataItem = { + attributes?: StoryIfisDataItemAttributes; + id?: number; +}; -export interface Story { - active?: boolean; - category?: StoryCategory; - createdAt?: string; - createdBy?: StoryCreatedBy; - marker: unknown; - publishedAt?: string; - slug?: string; - status: StoryStatus; - steps?: StoryStepsItem[]; - title: string; - updatedAt?: string; - updatedBy?: StoryUpdatedBy; -} +export type StoryIfis = { + data?: StoryIfisDataItem[]; +}; export type StoryCreatedByDataAttributes = { [key: string]: any }; @@ -1816,31 +2272,24 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesUpdatedBy = { data?: StoryCategoryDataAttributesStoriesDataItemAttributesUpdatedByData; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwo = { - __component?: string; - content?: string; - id?: number; - layers?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoLayers; - map?: unknown; - media?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMedia; - story_disclaimer?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItem[]; - title?: string; +export type StoryCategoryDataAttributesStoriesDataItemAttributesTags = { + data?: StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItem[]; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItem = - | StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOf - | StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwo; - export type StoryCategoryDataAttributesStoriesDataItemAttributes = { active?: boolean; category?: StoryCategoryDataAttributesStoriesDataItemAttributesCategory; createdAt?: string; createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesCreatedBy; + ifis?: StoryCategoryDataAttributesStoriesDataItemAttributesIfis; + impacted_people?: string; + location?: string; marker?: unknown; publishedAt?: string; slug?: string; status?: StoryCategoryDataAttributesStoriesDataItemAttributesStatus; steps?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItem[]; + tags?: StoryCategoryDataAttributesStoriesDataItemAttributesTags; title?: string; updatedAt?: string; updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesUpdatedBy; @@ -1851,12 +2300,47 @@ export type StoryCategoryDataAttributesStoriesDataItem = { id?: number; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoData = +export type StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributesUpdatedByDataAttributes = + { [key: string]: any }; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributesUpdatedByData = { - attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributes; + attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributesUpdatedByDataAttributes; + id?: number; + }; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributesUpdatedBy = { + data?: StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributesUpdatedByData; +}; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributesCreatedByDataAttributes = + { [key: string]: any }; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributesCreatedByData = + { + attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributesCreatedByDataAttributes; id?: number; }; +export type StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributesCreatedBy = { + data?: StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributesCreatedByData; +}; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributes = { + createdAt?: string; + createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributesCreatedBy; + description?: string; + name?: string; + publishedAt?: string; + updatedAt?: string; + updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributesUpdatedBy; +}; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItem = { + attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesTagsDataItemAttributes; + id?: number; +}; + export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogo = { data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoData; @@ -1877,6 +2361,52 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSe title?: string; }; +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwo = { + __component?: string; + content?: string; + id?: number; + layers?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoLayers; + map?: unknown; + media?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMedia; + story_disclaimer?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItem[]; + title?: string; +}; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItem = + | StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOf + | StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwo; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributes = + { + alternativeText?: string; + caption?: string; + createdAt?: string; + createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesCreatedBy; + ext?: string; + folder?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesFolder; + folderPath?: string; + formats?: unknown; + hash?: string; + height?: number; + mime?: string; + name?: string; + previewUrl?: string; + provider?: string; + provider_metadata?: unknown; + related?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesRelated; + size?: number; + updatedAt?: string; + updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedBy; + url?: string; + width?: number; + }; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoData = + { + attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributes; + id?: number; + }; + export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -1919,31 +2449,6 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSe data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesFolderData; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributes = - { - alternativeText?: string; - caption?: string; - createdAt?: string; - createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesCreatedBy; - ext?: string; - folder?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesFolder; - folderPath?: string; - formats?: unknown; - hash?: string; - height?: number; - mime?: string; - name?: string; - previewUrl?: string; - provider?: string; - provider_metadata?: unknown; - related?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesRelated; - size?: number; - updatedAt?: string; - updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedBy; - url?: string; - width?: number; - }; - export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesCreatedByDataAttributes = { [key: string]: any }; @@ -1981,31 +2486,6 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSe data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesUpdatedByData; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributes = - { - alternativeText?: string; - caption?: string; - createdAt?: string; - createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesCreatedBy; - ext?: string; - folder?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolder; - folderPath?: string; - formats?: unknown; - hash?: string; - height?: number; - mime?: string; - name?: string; - previewUrl?: string; - provider?: string; - provider_metadata?: unknown; - related?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesRelated; - size?: number; - updatedAt?: string; - updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesUpdatedBy; - url?: string; - width?: number; - }; - export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesRelatedDataItemAttributes = { [key: string]: any }; @@ -2020,6 +2500,20 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSe data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesRelatedDataItem[]; }; +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributes = + { + children?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesChildren; + createdAt?: string; + createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesCreatedBy; + files?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesFiles; + name?: string; + parent?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesParent; + path?: string; + pathId?: number; + updatedAt?: string; + updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesUpdatedBy; + }; + export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderData = { attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributes; @@ -2031,6 +2525,31 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSe data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderData; }; +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributes = + { + alternativeText?: string; + caption?: string; + createdAt?: string; + createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesCreatedBy; + ext?: string; + folder?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolder; + folderPath?: string; + formats?: unknown; + hash?: string; + height?: number; + mime?: string; + name?: string; + previewUrl?: string; + provider?: string; + provider_metadata?: unknown; + related?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesRelated; + size?: number; + updatedAt?: string; + updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesUpdatedBy; + url?: string; + width?: number; + }; + export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -2045,20 +2564,6 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSe data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesUpdatedByData; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributes = - { - children?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesChildren; - createdAt?: string; - createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesCreatedBy; - files?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesFiles; - name?: string; - parent?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesParent; - path?: string; - pathId?: number; - updatedAt?: string; - updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesUpdatedBy; - }; - export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesParentDataAttributes = { [key: string]: any }; @@ -2073,6 +2578,11 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSe data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesParentData; }; +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesFiles = + { + data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesFilesDataItem[]; + }; + export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributes = { alternativeText?: string; @@ -2104,11 +2614,6 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSe id?: number; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesFiles = - { - data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesFilesDataItem[]; - }; - export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSeventwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -2238,6 +2743,7 @@ export const StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfW export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfWidget = { data?: unknown; id?: number; + legend?: string; options?: unknown; title?: string; type?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfWidgetType; @@ -2251,10 +2757,6 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfSt title?: string; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayers = { - data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItem[]; -}; - export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOf = { __component?: string; card?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfCard; @@ -2266,6 +2768,32 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOf = widget?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfWidget; }; +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributes = + { + config?: unknown; + createdAt?: string; + createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesCreatedBy; + dataset?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDataset; + interaction_config?: unknown; + legend_config?: unknown; + metadata?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesMetadata; + params_config?: unknown; + publishedAt?: string; + title?: string; + type?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesType; + updatedAt?: string; + updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesUpdatedBy; + }; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItem = { + attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributes; + id?: number; +}; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayers = { + data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItem[]; +}; + export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -2301,33 +2829,17 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLa source?: string; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDataset = +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetData = { - data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetData; + attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributes; + id?: number; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributes = +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDataset = { - config?: unknown; - createdAt?: string; - createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesCreatedBy; - dataset?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDataset; - interaction_config?: unknown; - legend_config?: unknown; - metadata?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesMetadata; - params_config?: unknown; - publishedAt?: string; - title?: string; - type?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesType; - updatedAt?: string; - updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesUpdatedBy; + data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetData; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItem = { - attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributes; - id?: number; -}; - export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -2353,25 +2865,6 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLa source?: string; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributes = - { - createdAt?: string; - createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesCreatedBy; - dataset_group?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroup; - layers?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesLayers; - metadata?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesMetadata; - publishedAt?: string; - title?: string; - updatedAt?: string; - updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesUpdatedBy; - }; - -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetData = - { - attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributes; - id?: number; - }; - export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesLayersDataItemAttributes = { [key: string]: any }; @@ -2408,6 +2901,19 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLa data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupData; }; +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributes = + { + createdAt?: string; + createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesCreatedBy; + dataset_group?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroup; + layers?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesLayers; + metadata?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesMetadata; + publishedAt?: string; + title?: string; + updatedAt?: string; + updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesUpdatedBy; + }; + export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -2479,6 +2985,19 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLa data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesUpdatedByData; }; +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributes = + { + code?: string; + createdAt?: string; + createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedBy; + description?: string; + name?: string; + permissions?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissions; + updatedAt?: string; + updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; + users?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsers; + }; + export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItem = { attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributes; @@ -2518,6 +3037,19 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLa data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByData; }; +export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = + { + action?: string; + conditions?: unknown; + createdAt?: string; + createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy; + properties?: unknown; + role?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole; + subject?: string; + updatedAt?: string; + updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy; + }; + export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem = { attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes; @@ -2529,19 +3061,6 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLa data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem[]; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributes = - { - code?: string; - createdAt?: string; - createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedBy; - description?: string; - name?: string; - permissions?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissions; - updatedAt?: string; - updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; - users?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsers; - }; - export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -2556,19 +3075,6 @@ export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLa data?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData; }; -export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = - { - action?: string; - conditions?: unknown; - createdAt?: string; - createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy; - properties?: unknown; - role?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole; - subject?: string; - updatedAt?: string; - updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy; - }; - export type StoryCategoryDataAttributesStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes = { [key: string]: any }; @@ -2668,6 +3174,52 @@ export const StoryCategoryDataAttributesStoriesDataItemAttributesStatus = { In_progress: 'In progress', } as const; +export type StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributes = { + createdAt?: string; + createdBy?: StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributesCreatedBy; + description?: string; + link?: string; + name?: string; + publishedAt?: string; + updatedAt?: string; + updatedBy?: StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributesUpdatedBy; +}; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItem = { + attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributes; + id?: number; +}; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesIfis = { + data?: StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItem[]; +}; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributesUpdatedByDataAttributes = + { [key: string]: any }; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributesUpdatedByData = + { + attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributesUpdatedByDataAttributes; + id?: number; + }; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributesUpdatedBy = { + data?: StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributesUpdatedByData; +}; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributesCreatedByDataAttributes = + { [key: string]: any }; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributesCreatedByData = + { + attributes?: StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributesCreatedByDataAttributes; + id?: number; + }; + +export type StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributesCreatedBy = { + data?: StoryCategoryDataAttributesStoriesDataItemAttributesIfisDataItemAttributesCreatedByData; +}; + export type StoryCategoryDataAttributesStoriesDataItemAttributesCreatedByDataAttributes = { [key: string]: any; }; @@ -2726,9 +3278,7 @@ export interface StoryListResponse { meta?: StoryListResponseMeta; } -export interface StoryRequest { - data: StoryRequestData; -} +export type StoryRequestDataTagsItem = number | string; export type StoryRequestDataStepsItem = StepLayoutMapStepComponent | StepLayoutOutroStepComponent; @@ -2741,18 +3291,28 @@ export const StoryRequestDataStatus = { In_progress: 'In progress', } as const; +export type StoryRequestDataIfisItem = number | string; + export type StoryRequestDataCategory = number | string; export type StoryRequestData = { active?: boolean; category?: StoryRequestDataCategory; + ifis?: StoryRequestDataIfisItem[]; + impacted_people?: string; + location?: string; marker: unknown; slug?: string; status: StoryRequestDataStatus; steps?: StoryRequestDataStepsItem[]; + tags?: StoryRequestDataTagsItem[]; title: string; }; +export interface StoryRequest { + data: StoryRequestData; +} + export type LayerResponseMeta = { [key: string]: any }; export interface LayerResponse { @@ -2760,34 +3320,10 @@ export interface LayerResponse { meta?: LayerResponseMeta; } -export type LayerUpdatedByDataAttributes = { [key: string]: any }; - -export type LayerUpdatedByData = { - attributes?: LayerUpdatedByDataAttributes; - id?: number; -}; - export type LayerUpdatedBy = { data?: LayerUpdatedByData; }; -export type LayerType = (typeof LayerType)[keyof typeof LayerType]; - -// eslint-disable-next-line @typescript-eslint/no-redeclare -export const LayerType = { - deckgl: 'deckgl', - mapbox: 'mapbox', -} as const; - -export type LayerDatasetData = { - attributes?: LayerDatasetDataAttributes; - id?: number; -}; - -export type LayerDataset = { - data?: LayerDatasetData; -}; - export interface Layer { config: unknown; createdAt?: string; @@ -2809,6 +3345,30 @@ export interface LayerResponseDataObject { id?: number; } +export type LayerUpdatedByDataAttributes = { [key: string]: any }; + +export type LayerUpdatedByData = { + attributes?: LayerUpdatedByDataAttributes; + id?: number; +}; + +export type LayerType = (typeof LayerType)[keyof typeof LayerType]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const LayerType = { + deckgl: 'deckgl', + mapbox: 'mapbox', +} as const; + +export type LayerDatasetData = { + attributes?: LayerDatasetDataAttributes; + id?: number; +}; + +export type LayerDataset = { + data?: LayerDatasetData; +}; + export type LayerDatasetDataAttributesUpdatedByDataAttributes = { [key: string]: any }; export type LayerDatasetDataAttributesUpdatedByData = { @@ -2883,22 +3443,6 @@ export type LayerDatasetDataAttributesLayersDataItemAttributesMetadata = { source?: string; }; -export type LayerDatasetDataAttributesLayersDataItemAttributes = { - config?: unknown; - createdAt?: string; - createdBy?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedBy; - dataset?: LayerDatasetDataAttributesLayersDataItemAttributesDataset; - interaction_config?: unknown; - legend_config?: unknown; - metadata?: LayerDatasetDataAttributesLayersDataItemAttributesMetadata; - params_config?: unknown; - publishedAt?: string; - title?: string; - type?: LayerDatasetDataAttributesLayersDataItemAttributesType; - updatedAt?: string; - updatedBy?: LayerDatasetDataAttributesLayersDataItemAttributesUpdatedBy; -}; - export type LayerDatasetDataAttributesLayersDataItemAttributesDatasetDataAttributes = { [key: string]: any; }; @@ -2925,26 +3469,20 @@ export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedBy = { data?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedByData; }; -export type LayerDatasetDataAttributesDatasetGroupData = { - attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributes; - id?: number; -}; - -export type LayerDatasetDataAttributesDatasetGroup = { - data?: LayerDatasetDataAttributesDatasetGroupData; -}; - -export type LayerDatasetDataAttributesDatasetGroupDataAttributesUpdatedByDataAttributes = { - [key: string]: any; -}; - -export type LayerDatasetDataAttributesDatasetGroupDataAttributesUpdatedByData = { - attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesUpdatedByDataAttributes; - id?: number; -}; - -export type LayerDatasetDataAttributesDatasetGroupDataAttributesUpdatedBy = { - data?: LayerDatasetDataAttributesDatasetGroupDataAttributesUpdatedByData; +export type LayerDatasetDataAttributesLayersDataItemAttributes = { + config?: unknown; + createdAt?: string; + createdBy?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedBy; + dataset?: LayerDatasetDataAttributesLayersDataItemAttributesDataset; + interaction_config?: unknown; + legend_config?: unknown; + metadata?: LayerDatasetDataAttributesLayersDataItemAttributesMetadata; + params_config?: unknown; + publishedAt?: string; + title?: string; + type?: LayerDatasetDataAttributesLayersDataItemAttributesType; + updatedAt?: string; + updatedBy?: LayerDatasetDataAttributesLayersDataItemAttributesUpdatedBy; }; export type LayerDatasetDataAttributesDatasetGroupDataAttributes = { @@ -2957,40 +3495,39 @@ export type LayerDatasetDataAttributesDatasetGroupDataAttributes = { updatedBy?: LayerDatasetDataAttributesDatasetGroupDataAttributesUpdatedBy; }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesDatasetsDataItemAttributes = { - [key: string]: any; +export type LayerDatasetDataAttributesDatasetGroupData = { + attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributes; + id?: number; }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesDatasetsDataItem = { - attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesDatasetsDataItemAttributes; - id?: number; +export type LayerDatasetDataAttributesDatasetGroup = { + data?: LayerDatasetDataAttributesDatasetGroupData; }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesDatasets = { - data?: LayerDatasetDataAttributesDatasetGroupDataAttributesDatasetsDataItem[]; +export type LayerDatasetDataAttributesDatasetGroupDataAttributesUpdatedByDataAttributes = { + [key: string]: any; }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesUpdatedByDataAttributes = - { [key: string]: any }; +export type LayerDatasetDataAttributesDatasetGroupDataAttributesUpdatedByData = { + attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesUpdatedByDataAttributes; + id?: number; +}; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesUpdatedByData = - { - attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesUpdatedByDataAttributes; - id?: number; - }; +export type LayerDatasetDataAttributesDatasetGroupDataAttributesUpdatedBy = { + data?: LayerDatasetDataAttributesDatasetGroupDataAttributesUpdatedByData; +}; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesUpdatedBy = { - data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesUpdatedByData; +export type LayerDatasetDataAttributesDatasetGroupDataAttributesDatasetsDataItemAttributes = { + [key: string]: any; }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItem = - { - attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributes; - id?: number; - }; +export type LayerDatasetDataAttributesDatasetGroupDataAttributesDatasetsDataItem = { + attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesDatasetsDataItemAttributes; + id?: number; +}; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRoles = { - data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItem[]; +export type LayerDatasetDataAttributesDatasetGroupDataAttributesDatasets = { + data?: LayerDatasetDataAttributesDatasetGroupDataAttributesDatasetsDataItem[]; }; export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributes = { @@ -3019,24 +3556,18 @@ export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedBy = { data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByData; }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItemAttributes = +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesUpdatedByDataAttributes = { [key: string]: any }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItem = +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesUpdatedByData = { - attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItemAttributes; + attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesUpdatedByDataAttributes; id?: number; }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsers = - { - data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItem[]; - }; - -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedBy = - { - data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByData; - }; +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesUpdatedBy = { + data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesUpdatedByData; +}; export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributes = { @@ -3051,6 +3582,30 @@ export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAtt users?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsers; }; +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItem = + { + attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributes; + id?: number; + }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRoles = { + data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItem[]; +}; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItemAttributes = + { [key: string]: any }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItem = + { + attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItemAttributes; + id?: number; + }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsers = + { + data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItem[]; + }; + export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -3060,6 +3615,11 @@ export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAtt id?: number; }; +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedBy = + { + data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByData; + }; + export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = { action?: string; @@ -3073,154 +3633,389 @@ export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAtt updatedBy?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy; }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem = - { - attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes; - id?: number; - }; +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem = + { + attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes; + id?: number; + }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissions = + { + data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem[]; + }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes = + { [key: string]: any }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData = + { + attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes; + id?: number; + }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy = + { + data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData; + }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes = + { [key: string]: any }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleData = + { + attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes; + id?: number; + }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole = + { + data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleData; + }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByDataAttributes = + { [key: string]: any }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByData = + { + attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByDataAttributes; + id?: number; + }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy = + { + data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByData; + }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes = + { [key: string]: any }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByData = + { + attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes; + id?: number; + }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedBy = + { + data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByData; + }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesCreatedByDataAttributes = + { [key: string]: any }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesCreatedByData = + { + attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesCreatedByDataAttributes; + id?: number; + }; + +export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesCreatedBy = { + data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesCreatedByData; +}; + +export type LayerDatasetDataAttributesCreatedByDataAttributes = { [key: string]: any }; + +export type LayerDatasetDataAttributesCreatedByData = { + attributes?: LayerDatasetDataAttributesCreatedByDataAttributes; + id?: number; +}; + +export type LayerDatasetDataAttributesCreatedBy = { + data?: LayerDatasetDataAttributesCreatedByData; +}; + +export type LayerCreatedByDataAttributes = { [key: string]: any }; + +export type LayerCreatedByData = { + attributes?: LayerCreatedByDataAttributes; + id?: number; +}; + +export type LayerCreatedBy = { + data?: LayerCreatedByData; +}; + +export type LayerListResponseMetaPagination = { + page?: number; + pageCount?: number; + pageSize?: number; + total?: number; +}; + +export type LayerListResponseMeta = { + pagination?: LayerListResponseMetaPagination; +}; + +export interface LayerListResponseDataItem { + attributes?: Layer; + id?: number; +} + +export interface LayerListResponse { + data?: LayerListResponseDataItem[]; + meta?: LayerListResponseMeta; +} + +export type LayerRequestDataType = (typeof LayerRequestDataType)[keyof typeof LayerRequestDataType]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const LayerRequestDataType = { + deckgl: 'deckgl', + mapbox: 'mapbox', +} as const; + +export type LayerRequestDataDataset = number | string; + +export type LayerRequestData = { + config: unknown; + dataset?: LayerRequestDataDataset; + interaction_config?: unknown; + legend_config: unknown; + metadata?: DocumentationMetadataComponent; + params_config?: unknown; + title: string; + type: LayerRequestDataType; +}; + +export interface LayerRequest { + data: LayerRequestData; +} + +export type IfiResponseMeta = { [key: string]: any }; + +export interface Ifi { + createdAt?: string; + createdBy?: IfiCreatedBy; + description?: string; + link?: string; + name: string; + publishedAt?: string; + updatedAt?: string; + updatedBy?: IfiUpdatedBy; +} + +export interface IfiResponseDataObject { + attributes?: Ifi; + id?: number; +} + +export interface IfiResponse { + data?: IfiResponseDataObject; + meta?: IfiResponseMeta; +} + +export type IfiUpdatedByDataAttributes = { [key: string]: any }; + +export type IfiUpdatedByData = { + attributes?: IfiUpdatedByDataAttributes; + id?: number; +}; + +export type IfiUpdatedBy = { + data?: IfiUpdatedByData; +}; + +export type IfiCreatedByData = { + attributes?: IfiCreatedByDataAttributes; + id?: number; +}; + +export type IfiCreatedBy = { + data?: IfiCreatedByData; +}; + +export type IfiCreatedByDataAttributesUpdatedByDataAttributes = { [key: string]: any }; + +export type IfiCreatedByDataAttributesUpdatedByData = { + attributes?: IfiCreatedByDataAttributesUpdatedByDataAttributes; + id?: number; +}; + +export type IfiCreatedByDataAttributesUpdatedBy = { + data?: IfiCreatedByDataAttributesUpdatedByData; +}; + +export type IfiCreatedByDataAttributes = { + blocked?: boolean; + createdAt?: string; + createdBy?: IfiCreatedByDataAttributesCreatedBy; + email?: string; + firstname?: string; + isActive?: boolean; + lastname?: string; + preferedLanguage?: string; + registrationToken?: string; + resetPasswordToken?: string; + roles?: IfiCreatedByDataAttributesRoles; + updatedAt?: string; + updatedBy?: IfiCreatedByDataAttributesUpdatedBy; + username?: string; +}; + +export type IfiCreatedByDataAttributesRolesDataItemAttributesUsersDataItemAttributes = { + [key: string]: any; +}; + +export type IfiCreatedByDataAttributesRolesDataItemAttributesUsersDataItem = { + attributes?: IfiCreatedByDataAttributesRolesDataItemAttributesUsersDataItemAttributes; + id?: number; +}; + +export type IfiCreatedByDataAttributesRolesDataItemAttributesUsers = { + data?: IfiCreatedByDataAttributesRolesDataItemAttributesUsersDataItem[]; +}; + +export type IfiCreatedByDataAttributesRolesDataItemAttributes = { + code?: string; + createdAt?: string; + createdBy?: IfiCreatedByDataAttributesRolesDataItemAttributesCreatedBy; + description?: string; + name?: string; + permissions?: IfiCreatedByDataAttributesRolesDataItemAttributesPermissions; + updatedAt?: string; + updatedBy?: IfiCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; + users?: IfiCreatedByDataAttributesRolesDataItemAttributesUsers; +}; + +export type IfiCreatedByDataAttributesRolesDataItem = { + attributes?: IfiCreatedByDataAttributesRolesDataItemAttributes; + id?: number; +}; + +export type IfiCreatedByDataAttributesRoles = { + data?: IfiCreatedByDataAttributesRolesDataItem[]; +}; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissions = - { - data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem[]; - }; +export type IfiCreatedByDataAttributesRolesDataItemAttributesUpdatedByDataAttributes = { + [key: string]: any; +}; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes = - { [key: string]: any }; +export type IfiCreatedByDataAttributesRolesDataItemAttributesUpdatedByData = { + attributes?: IfiCreatedByDataAttributesRolesDataItemAttributesUpdatedByDataAttributes; + id?: number; +}; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData = - { - attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes; - id?: number; - }; +export type IfiCreatedByDataAttributesRolesDataItemAttributesUpdatedBy = { + data?: IfiCreatedByDataAttributesRolesDataItemAttributesUpdatedByData; +}; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy = - { - data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData; - }; +export type IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = { + action?: string; + conditions?: unknown; + createdAt?: string; + createdBy?: IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy; + properties?: unknown; + role?: IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole; + subject?: string; + updatedAt?: string; + updatedBy?: IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy; +}; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes = +export type IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem = { + attributes?: IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes; + id?: number; +}; + +export type IfiCreatedByDataAttributesRolesDataItemAttributesPermissions = { + data?: IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem[]; +}; + +export type IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleData = +export type IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData = { - attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes; + attributes?: IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes; id?: number; }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole = +export type IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy = { - data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleData; + data?: IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData; }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByDataAttributes = +export type IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes = { [key: string]: any }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByData = +export type IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleData = { - attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByDataAttributes; + attributes?: IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes; id?: number; }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy = - { - data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByData; - }; +export type IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole = { + data?: IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleData; +}; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes = +export type IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByDataAttributes = { [key: string]: any }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByData = +export type IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByData = { - attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes; + attributes?: IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByDataAttributes; id?: number; }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedBy = - { - data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByData; - }; - -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesCreatedByDataAttributes = - { [key: string]: any }; - -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesCreatedByData = +export type IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy = { - attributes?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesCreatedByDataAttributes; - id?: number; + data?: IfiCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByData; }; -export type LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesCreatedBy = { - data?: LayerDatasetDataAttributesDatasetGroupDataAttributesCreatedByDataAttributesCreatedByData; +export type IfiCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes = { + [key: string]: any; }; -export type LayerDatasetDataAttributesCreatedByDataAttributes = { [key: string]: any }; - -export type LayerDatasetDataAttributesCreatedByData = { - attributes?: LayerDatasetDataAttributesCreatedByDataAttributes; +export type IfiCreatedByDataAttributesRolesDataItemAttributesCreatedByData = { + attributes?: IfiCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes; id?: number; }; -export type LayerDatasetDataAttributesCreatedBy = { - data?: LayerDatasetDataAttributesCreatedByData; +export type IfiCreatedByDataAttributesRolesDataItemAttributesCreatedBy = { + data?: IfiCreatedByDataAttributesRolesDataItemAttributesCreatedByData; }; -export type LayerCreatedByDataAttributes = { [key: string]: any }; +export type IfiCreatedByDataAttributesCreatedByDataAttributes = { [key: string]: any }; -export type LayerCreatedByData = { - attributes?: LayerCreatedByDataAttributes; +export type IfiCreatedByDataAttributesCreatedByData = { + attributes?: IfiCreatedByDataAttributesCreatedByDataAttributes; id?: number; }; -export type LayerCreatedBy = { - data?: LayerCreatedByData; +export type IfiCreatedByDataAttributesCreatedBy = { + data?: IfiCreatedByDataAttributesCreatedByData; }; -export type LayerListResponseMetaPagination = { +export type IfiListResponseMetaPagination = { page?: number; pageCount?: number; pageSize?: number; total?: number; }; -export type LayerListResponseMeta = { - pagination?: LayerListResponseMetaPagination; +export type IfiListResponseMeta = { + pagination?: IfiListResponseMetaPagination; }; -export interface LayerListResponseDataItem { - attributes?: Layer; +export interface IfiListResponseDataItem { + attributes?: Ifi; id?: number; } -export interface LayerListResponse { - data?: LayerListResponseDataItem[]; - meta?: LayerListResponseMeta; -} - -export interface LayerRequest { - data: LayerRequestData; +export interface IfiListResponse { + data?: IfiListResponseDataItem[]; + meta?: IfiListResponseMeta; } -export type LayerRequestDataType = (typeof LayerRequestDataType)[keyof typeof LayerRequestDataType]; - -// eslint-disable-next-line @typescript-eslint/no-redeclare -export const LayerRequestDataType = { - deckgl: 'deckgl', - mapbox: 'mapbox', -} as const; - -export type LayerRequestDataDataset = number | string; - -export type LayerRequestData = { - config: unknown; - dataset?: LayerRequestDataDataset; - interaction_config?: unknown; - legend_config: unknown; - metadata?: DocumentationMetadataComponent; - params_config?: unknown; - title: string; - type: LayerRequestDataType; +export type IfiRequestData = { + description?: string; + link?: string; + name: string; }; +export interface IfiRequest { + data: IfiRequestData; +} + export type DatasetGroupResponseMeta = { [key: string]: any }; export interface DatasetGroupResponse { @@ -3228,8 +4023,6 @@ export interface DatasetGroupResponse { meta?: DatasetGroupResponseMeta; } -export type DatasetGroupUpdatedByDataAttributes = { [key: string]: any }; - export type DatasetGroupUpdatedByData = { attributes?: DatasetGroupUpdatedByDataAttributes; id?: number; @@ -3239,10 +4032,6 @@ export type DatasetGroupUpdatedBy = { data?: DatasetGroupUpdatedByData; }; -export type DatasetGroupDatasets = { - data?: DatasetGroupDatasetsDataItem[]; -}; - export interface DatasetGroup { createdAt?: string; createdBy?: DatasetGroupCreatedBy; @@ -3258,6 +4047,17 @@ export interface DatasetGroupResponseDataObject { id?: number; } +export type DatasetGroupUpdatedByDataAttributes = { [key: string]: any }; + +export type DatasetGroupDatasetsDataItem = { + attributes?: DatasetGroupDatasetsDataItemAttributes; + id?: number; +}; + +export type DatasetGroupDatasets = { + data?: DatasetGroupDatasetsDataItem[]; +}; + export type DatasetGroupDatasetsDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; export type DatasetGroupDatasetsDataItemAttributesUpdatedByData = { @@ -3279,15 +4079,6 @@ export type DatasetGroupDatasetsDataItemAttributesMetadata = { source?: string; }; -export type DatasetGroupDatasetsDataItemAttributesLayersDataItem = { - attributes?: DatasetGroupDatasetsDataItemAttributesLayersDataItemAttributes; - id?: number; -}; - -export type DatasetGroupDatasetsDataItemAttributesLayers = { - data?: DatasetGroupDatasetsDataItemAttributesLayersDataItem[]; -}; - export type DatasetGroupDatasetsDataItemAttributes = { createdAt?: string; createdBy?: DatasetGroupDatasetsDataItemAttributesCreatedBy; @@ -3300,11 +4091,6 @@ export type DatasetGroupDatasetsDataItemAttributes = { updatedBy?: DatasetGroupDatasetsDataItemAttributesUpdatedBy; }; -export type DatasetGroupDatasetsDataItem = { - attributes?: DatasetGroupDatasetsDataItemAttributes; - id?: number; -}; - export type DatasetGroupDatasetsDataItemAttributesLayersDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -3352,6 +4138,15 @@ export type DatasetGroupDatasetsDataItemAttributesLayersDataItemAttributes = { updatedBy?: DatasetGroupDatasetsDataItemAttributesLayersDataItemAttributesUpdatedBy; }; +export type DatasetGroupDatasetsDataItemAttributesLayersDataItem = { + attributes?: DatasetGroupDatasetsDataItemAttributesLayersDataItemAttributes; + id?: number; +}; + +export type DatasetGroupDatasetsDataItemAttributesLayers = { + data?: DatasetGroupDatasetsDataItemAttributesLayersDataItem[]; +}; + export type DatasetGroupDatasetsDataItemAttributesLayersDataItemAttributesDatasetDataAttributes = { [key: string]: any; }; @@ -3398,6 +4193,16 @@ export type DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesUpda data?: DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesUpdatedByData; }; +export type DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributes = { + createdAt?: string; + createdBy?: DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCreatedBy; + datasets?: DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesDatasets; + publishedAt?: string; + title?: string; + updatedAt?: string; + updatedBy?: DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesUpdatedBy; +}; + export type DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesDatasetsDataItemAttributes = { [key: string]: any }; @@ -3419,16 +4224,6 @@ export type DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCrea data?: DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCreatedByData; }; -export type DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributes = { - createdAt?: string; - createdBy?: DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCreatedBy; - datasets?: DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesDatasets; - publishedAt?: string; - title?: string; - updatedAt?: string; - updatedBy?: DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesUpdatedBy; -}; - export type DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCreatedByDataAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -3500,12 +4295,6 @@ export type DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCrea data?: DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByData; }; -export type DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem = - { - attributes?: DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes; - id?: number; - }; - export type DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissions = { data?: DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem[]; @@ -3579,6 +4368,12 @@ export type DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCrea updatedBy?: DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy; }; +export type DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem = + { + attributes?: DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes; + id?: number; + }; + export type DatasetGroupDatasetsDataItemAttributesDatasetGroupDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes = { [key: string]: any }; @@ -3694,6 +4489,18 @@ export type DatasetUpdatedBy = { data?: DatasetUpdatedByData; }; +export interface Dataset { + createdAt?: string; + createdBy?: DatasetCreatedBy; + dataset_group?: DatasetDatasetGroup; + layers?: DatasetLayers; + metadata?: DocumentationMetadataComponent; + publishedAt?: string; + title: string; + updatedAt?: string; + updatedBy?: DatasetUpdatedBy; +} + export type DatasetLayersDataItemAttributes = { [key: string]: any }; export type DatasetLayersDataItem = { @@ -3714,18 +4521,6 @@ export type DatasetDatasetGroup = { data?: DatasetDatasetGroupData; }; -export interface Dataset { - createdAt?: string; - createdBy?: DatasetCreatedBy; - dataset_group?: DatasetDatasetGroup; - layers?: DatasetLayers; - metadata?: DocumentationMetadataComponent; - publishedAt?: string; - title: string; - updatedAt?: string; - updatedBy?: DatasetUpdatedBy; -} - export type DatasetDatasetGroupDataAttributesUpdatedByDataAttributes = { [key: string]: any }; export type DatasetDatasetGroupDataAttributesUpdatedByData = { @@ -3737,15 +4532,6 @@ export type DatasetDatasetGroupDataAttributesUpdatedBy = { data?: DatasetDatasetGroupDataAttributesUpdatedByData; }; -export type DatasetDatasetGroupDataAttributesDatasetsDataItem = { - attributes?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributes; - id?: number; -}; - -export type DatasetDatasetGroupDataAttributesDatasets = { - data?: DatasetDatasetGroupDataAttributesDatasetsDataItem[]; -}; - export type DatasetDatasetGroupDataAttributes = { createdAt?: string; createdBy?: DatasetDatasetGroupDataAttributesCreatedBy; @@ -3756,10 +4542,6 @@ export type DatasetDatasetGroupDataAttributes = { updatedBy?: DatasetDatasetGroupDataAttributesUpdatedBy; }; -export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesUpdatedByDataAttributes = { - [key: string]: any; -}; - export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesUpdatedByData = { attributes?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesUpdatedByDataAttributes; id?: number; @@ -3769,20 +4551,6 @@ export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesUpdatedBy data?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesUpdatedByData; }; -export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesMetadata = { - citation?: string; - content_date?: string; - description?: string; - id?: number; - license?: string; - resolution?: string; - source?: string; -}; - -export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayers = { - data?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItem[]; -}; - export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributes = { createdAt?: string; createdBy?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesCreatedBy; @@ -3795,6 +4563,38 @@ export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributes = { updatedBy?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesUpdatedBy; }; +export type DatasetDatasetGroupDataAttributesDatasetsDataItem = { + attributes?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributes; + id?: number; +}; + +export type DatasetDatasetGroupDataAttributesDatasets = { + data?: DatasetDatasetGroupDataAttributesDatasetsDataItem[]; +}; + +export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesUpdatedByDataAttributes = { + [key: string]: any; +}; + +export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesMetadata = { + citation?: string; + content_date?: string; + description?: string; + id?: number; + license?: string; + resolution?: string; + source?: string; +}; + +export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItem = { + attributes?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributes; + id?: number; +}; + +export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayers = { + data?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItem[]; +}; + export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -3830,6 +4630,25 @@ export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDat source?: string; }; +export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesDatasetDataAttributes = + { [key: string]: any }; + +export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesDatasetData = + { + attributes?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesDatasetDataAttributes; + id?: number; + }; + +export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesDataset = + { + data?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesDatasetData; + }; + +export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedBy = + { + data?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByData; + }; + export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributes = { config?: unknown; createdAt?: string; @@ -3846,25 +4665,6 @@ export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDat updatedBy?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesUpdatedBy; }; -export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItem = { - attributes?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributes; - id?: number; -}; - -export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesDatasetDataAttributes = - { [key: string]: any }; - -export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesDatasetData = - { - attributes?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesDatasetDataAttributes; - id?: number; - }; - -export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesDataset = - { - data?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesDatasetData; - }; - export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -3879,12 +4679,6 @@ export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDat data?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesUpdatedByData; }; -export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItem = - { - attributes?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributes; - id?: number; - }; - export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRoles = { data?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItem[]; @@ -3914,11 +4708,6 @@ export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDat id?: number; }; -export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedBy = - { - data?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByData; - }; - export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItemAttributes = { [key: string]: any }; @@ -3933,6 +4722,15 @@ export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDat data?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItem[]; }; +export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByDataAttributes = + { [key: string]: any }; + +export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByData = + { + attributes?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByDataAttributes; + id?: number; + }; + export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedBy = { data?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByData; @@ -3951,15 +4749,23 @@ export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDat users?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUsers; }; -export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByDataAttributes = - { [key: string]: any }; +export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItem = + { + attributes?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributes; + id?: number; + }; -export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByData = +export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData = { - attributes?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByDataAttributes; + attributes?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes; id?: number; }; +export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy = + { + data?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData; + }; + export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = { action?: string; @@ -3987,17 +4793,6 @@ export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDat export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; -export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData = - { - attributes?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes; - id?: number; - }; - -export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy = - { - data?: DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData; - }; - export type DatasetDatasetGroupDataAttributesDatasetsDataItemAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes = { [key: string]: any }; @@ -4122,6 +4917,10 @@ export interface DatasetListResponse { meta?: DatasetListResponseMeta; } +export interface DatasetRequest { + data: DatasetRequestData; +} + export type DatasetRequestDataLayersItem = number | string; export type DatasetRequestDataDatasetGroup = number | string; @@ -4133,12 +4932,19 @@ export type DatasetRequestData = { title: string; }; -export interface DatasetRequest { - data: DatasetRequestData; -} - export type CategoryResponseMeta = { [key: string]: any }; +export interface Category { + createdAt?: string; + createdBy?: CategoryCreatedBy; + name: string; + publishedAt?: string; + slug: string; + stories?: CategoryStories; + updatedAt?: string; + updatedBy?: CategoryUpdatedBy; +} + export interface CategoryResponseDataObject { attributes?: Category; id?: number; @@ -4169,17 +4975,6 @@ export type CategoryStories = { data?: CategoryStoriesDataItem[]; }; -export interface Category { - createdAt?: string; - createdBy?: CategoryCreatedBy; - name: string; - publishedAt?: string; - slug: string; - stories?: CategoryStories; - updatedAt?: string; - updatedBy?: CategoryUpdatedBy; -} - export type CategoryStoriesDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; export type CategoryStoriesDataItemAttributesUpdatedByData = { @@ -4191,36 +4986,96 @@ export type CategoryStoriesDataItemAttributesUpdatedBy = { data?: CategoryStoriesDataItemAttributesUpdatedByData; }; -export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwo = { - __component?: string; - content?: string; +export type CategoryStoriesDataItemAttributesTagsDataItem = { + attributes?: CategoryStoriesDataItemAttributesTagsDataItemAttributes; id?: number; - layers?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoLayers; - map?: unknown; - media?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMedia; - story_disclaimer?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItem[]; - title?: string; }; -export type CategoryStoriesDataItemAttributesStepsItem = - | CategoryStoriesDataItemAttributesStepsItemAnyOf - | CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwo; +export type CategoryStoriesDataItemAttributesTags = { + data?: CategoryStoriesDataItemAttributesTagsDataItem[]; +}; export type CategoryStoriesDataItemAttributes = { active?: boolean; category?: CategoryStoriesDataItemAttributesCategory; createdAt?: string; createdBy?: CategoryStoriesDataItemAttributesCreatedBy; + ifis?: CategoryStoriesDataItemAttributesIfis; + impacted_people?: string; + location?: string; marker?: unknown; publishedAt?: string; slug?: string; status?: CategoryStoriesDataItemAttributesStatus; steps?: CategoryStoriesDataItemAttributesStepsItem[]; + tags?: CategoryStoriesDataItemAttributesTags; title?: string; updatedAt?: string; updatedBy?: CategoryStoriesDataItemAttributesUpdatedBy; }; +export type CategoryStoriesDataItemAttributesTagsDataItemAttributesUpdatedByDataAttributes = { + [key: string]: any; +}; + +export type CategoryStoriesDataItemAttributesTagsDataItemAttributesUpdatedByData = { + attributes?: CategoryStoriesDataItemAttributesTagsDataItemAttributesUpdatedByDataAttributes; + id?: number; +}; + +export type CategoryStoriesDataItemAttributesTagsDataItemAttributesUpdatedBy = { + data?: CategoryStoriesDataItemAttributesTagsDataItemAttributesUpdatedByData; +}; + +export type CategoryStoriesDataItemAttributesTagsDataItemAttributes = { + createdAt?: string; + createdBy?: CategoryStoriesDataItemAttributesTagsDataItemAttributesCreatedBy; + description?: string; + name?: string; + publishedAt?: string; + updatedAt?: string; + updatedBy?: CategoryStoriesDataItemAttributesTagsDataItemAttributesUpdatedBy; +}; + +export type CategoryStoriesDataItemAttributesTagsDataItemAttributesCreatedByDataAttributes = { + [key: string]: any; +}; + +export type CategoryStoriesDataItemAttributesTagsDataItemAttributesCreatedByData = { + attributes?: CategoryStoriesDataItemAttributesTagsDataItemAttributesCreatedByDataAttributes; + id?: number; +}; + +export type CategoryStoriesDataItemAttributesTagsDataItemAttributesCreatedBy = { + data?: CategoryStoriesDataItemAttributesTagsDataItemAttributesCreatedByData; +}; + +export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwo = { + __component?: string; + content?: string; + id?: number; + layers?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoLayers; + map?: unknown; + media?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMedia; + story_disclaimer?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItem[]; + title?: string; +}; + +export type CategoryStoriesDataItemAttributesStepsItem = + | CategoryStoriesDataItemAttributesStepsItemAnyOf + | CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwo; + +export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoData = + { + attributes?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributes; + id?: number; + }; + +export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogo = + { + data?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoData; + }; + export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItem = { id?: number; @@ -4235,6 +5090,25 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaime title?: string; }; +export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByDataAttributes = + { [key: string]: any }; + +export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByData = + { + attributes?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByDataAttributes; + id?: number; + }; + +export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedBy = + { + data?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByData; + }; + +export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesRelated = + { + data?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesRelatedDataItem[]; + }; + export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributes = { alternativeText?: string; @@ -4260,31 +5134,6 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaime width?: number; }; -export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoData = - { - attributes?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributes; - id?: number; - }; - -export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogo = - { - data?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoData; - }; - -export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByDataAttributes = - { [key: string]: any }; - -export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByData = - { - attributes?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByDataAttributes; - id?: number; - }; - -export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedBy = - { - data?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesUpdatedByData; - }; - export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesRelatedDataItemAttributes = { [key: string]: any }; @@ -4294,11 +5143,6 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaime id?: number; }; -export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesRelated = - { - data?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesRelatedDataItem[]; - }; - export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesFolderDataAttributes = { [key: string]: any }; @@ -4327,6 +5171,11 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaime data?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoStoryDisclaimerItemDisclaimerItemLogoDataAttributesCreatedByData; }; +export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaData = { + attributes?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributes; + id?: number; +}; + export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMedia = { data?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaData; }; @@ -4404,11 +5253,6 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttri width?: number; }; -export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaData = { - attributes?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributes; - id?: number; -}; - export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -4451,15 +5295,45 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttri export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; -export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedByData = +export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedByData = + { + attributes?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedByDataAttributes; + id?: number; + }; + +export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedBy = + { + data?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedByData; + }; + +export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesRelated = { - attributes?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedByDataAttributes; - id?: number; + data?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesRelatedDataItem[]; }; -export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedBy = +export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributes = { - data?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedByData; + alternativeText?: string; + caption?: string; + createdAt?: string; + createdBy?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesCreatedBy; + ext?: string; + folder?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesFolder; + folderPath?: string; + formats?: unknown; + hash?: string; + height?: number; + mime?: string; + name?: string; + previewUrl?: string; + provider?: string; + provider_metadata?: unknown; + related?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesRelated; + size?: number; + updatedAt?: string; + updatedBy?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedBy; + url?: string; + width?: number; }; export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesRelatedDataItemAttributes = @@ -4471,11 +5345,6 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttri id?: number; }; -export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesRelated = - { - data?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesRelatedDataItem[]; - }; - export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesFolderDataAttributes = { [key: string]: any }; @@ -4504,31 +5373,6 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttri data?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesCreatedByData; }; -export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributes = - { - alternativeText?: string; - caption?: string; - createdAt?: string; - createdBy?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesCreatedBy; - ext?: string; - folder?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesFolder; - folderPath?: string; - formats?: unknown; - hash?: string; - height?: number; - mime?: string; - name?: string; - previewUrl?: string; - provider?: string; - provider_metadata?: unknown; - related?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesRelated; - size?: number; - updatedAt?: string; - updatedBy?: CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesFilesDataItemAttributesUpdatedBy; - url?: string; - width?: number; - }; - export type CategoryStoriesDataItemAttributesStepsItemAnyOfFourtwoMediaDataAttributesFolderDataAttributesCreatedByDataAttributes = { [key: string]: any }; @@ -4601,6 +5445,7 @@ export const CategoryStoriesDataItemAttributesStepsItemAnyOfWidgetType = { export type CategoryStoriesDataItemAttributesStepsItemAnyOfWidget = { data?: unknown; id?: number; + legend?: string; options?: unknown; title?: string; type?: CategoryStoriesDataItemAttributesStepsItemAnyOfWidgetType; @@ -4614,10 +5459,6 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOfStorySummaryItem = { title?: string; }; -export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayers = { - data?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItem[]; -}; - export type CategoryStoriesDataItemAttributesStepsItemAnyOf = { __component?: string; card?: CategoryStoriesDataItemAttributesStepsItemAnyOfCard; @@ -4629,6 +5470,15 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOf = { widget?: CategoryStoriesDataItemAttributesStepsItemAnyOfWidget; }; +export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItem = { + attributes?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributes; + id?: number; +}; + +export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayers = { + data?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItem[]; +}; + export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -4660,6 +5510,10 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttribu source?: string; }; +export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDataset = { + data?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetData; +}; + export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributes = { config?: unknown; createdAt?: string; @@ -4676,20 +5530,6 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttribu updatedBy?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesUpdatedBy; }; -export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItem = { - attributes?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributes; - id?: number; -}; - -export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetData = { - attributes?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributes; - id?: number; -}; - -export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDataset = { - data?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetData; -}; - export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -4715,6 +5555,24 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttribu source?: string; }; +export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributes = + { + createdAt?: string; + createdBy?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesCreatedBy; + dataset_group?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroup; + layers?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesLayers; + metadata?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesMetadata; + publishedAt?: string; + title?: string; + updatedAt?: string; + updatedBy?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesUpdatedBy; + }; + +export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetData = { + attributes?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributes; + id?: number; +}; + export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesLayersDataItemAttributes = { [key: string]: any }; @@ -4740,19 +5598,6 @@ export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttribu data?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupData; }; -export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributes = - { - createdAt?: string; - createdBy?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesCreatedBy; - dataset_group?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroup; - layers?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesLayers; - metadata?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesMetadata; - publishedAt?: string; - title?: string; - updatedAt?: string; - updatedBy?: CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesUpdatedBy; - }; - export type CategoryStoriesDataItemAttributesStepsItemAnyOfLayersDataItemAttributesDatasetDataAttributesDatasetGroupDataAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -4847,6 +5692,52 @@ export const CategoryStoriesDataItemAttributesStatus = { In_progress: 'In progress', } as const; +export type CategoryStoriesDataItemAttributesIfisDataItemAttributesUpdatedBy = { + data?: CategoryStoriesDataItemAttributesIfisDataItemAttributesUpdatedByData; +}; + +export type CategoryStoriesDataItemAttributesIfisDataItemAttributes = { + createdAt?: string; + createdBy?: CategoryStoriesDataItemAttributesIfisDataItemAttributesCreatedBy; + description?: string; + link?: string; + name?: string; + publishedAt?: string; + updatedAt?: string; + updatedBy?: CategoryStoriesDataItemAttributesIfisDataItemAttributesUpdatedBy; +}; + +export type CategoryStoriesDataItemAttributesIfisDataItem = { + attributes?: CategoryStoriesDataItemAttributesIfisDataItemAttributes; + id?: number; +}; + +export type CategoryStoriesDataItemAttributesIfis = { + data?: CategoryStoriesDataItemAttributesIfisDataItem[]; +}; + +export type CategoryStoriesDataItemAttributesIfisDataItemAttributesUpdatedByDataAttributes = { + [key: string]: any; +}; + +export type CategoryStoriesDataItemAttributesIfisDataItemAttributesUpdatedByData = { + attributes?: CategoryStoriesDataItemAttributesIfisDataItemAttributesUpdatedByDataAttributes; + id?: number; +}; + +export type CategoryStoriesDataItemAttributesIfisDataItemAttributesCreatedByDataAttributes = { + [key: string]: any; +}; + +export type CategoryStoriesDataItemAttributesIfisDataItemAttributesCreatedByData = { + attributes?: CategoryStoriesDataItemAttributesIfisDataItemAttributesCreatedByDataAttributes; + id?: number; +}; + +export type CategoryStoriesDataItemAttributesIfisDataItemAttributesCreatedBy = { + data?: CategoryStoriesDataItemAttributesIfisDataItemAttributesCreatedByData; +}; + export type CategoryStoriesDataItemAttributesCreatedByDataAttributes = { [key: string]: any }; export type CategoryStoriesDataItemAttributesCreatedByData = { @@ -4858,17 +5749,6 @@ export type CategoryStoriesDataItemAttributesCreatedBy = { data?: CategoryStoriesDataItemAttributesCreatedByData; }; -export type CategoryStoriesDataItemAttributesCategoryDataAttributes = { - createdAt?: string; - createdBy?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedBy; - name?: string; - publishedAt?: string; - slug?: string; - stories?: CategoryStoriesDataItemAttributesCategoryDataAttributesStories; - updatedAt?: string; - updatedBy?: CategoryStoriesDataItemAttributesCategoryDataAttributesUpdatedBy; -}; - export type CategoryStoriesDataItemAttributesCategoryData = { attributes?: CategoryStoriesDataItemAttributesCategoryDataAttributes; id?: number; @@ -4904,30 +5784,6 @@ export type CategoryStoriesDataItemAttributesCategoryDataAttributesStories = { data?: CategoryStoriesDataItemAttributesCategoryDataAttributesStoriesDataItem[]; }; -export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesUpdatedByDataAttributes = - { [key: string]: any }; - -export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesUpdatedByData = - { - attributes?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesUpdatedByDataAttributes; - id?: number; - }; - -export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesUpdatedBy = - { - data?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesUpdatedByData; - }; - -export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItem = - { - attributes?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributes; - id?: number; - }; - -export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRoles = { - data?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItem[]; -}; - export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributes = { blocked?: boolean; createdAt?: string; @@ -4954,6 +5810,54 @@ export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedBy = { data?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByData; }; +export type CategoryStoriesDataItemAttributesCategoryDataAttributes = { + createdAt?: string; + createdBy?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedBy; + name?: string; + publishedAt?: string; + slug?: string; + stories?: CategoryStoriesDataItemAttributesCategoryDataAttributesStories; + updatedAt?: string; + updatedBy?: CategoryStoriesDataItemAttributesCategoryDataAttributesUpdatedBy; +}; + +export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesUpdatedByDataAttributes = + { [key: string]: any }; + +export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesUpdatedByData = + { + attributes?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesUpdatedByDataAttributes; + id?: number; + }; + +export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesUpdatedBy = + { + data?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesUpdatedByData; + }; + +export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributes = + { + code?: string; + createdAt?: string; + createdBy?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedBy; + description?: string; + name?: string; + permissions?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissions; + updatedAt?: string; + updatedBy?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; + users?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsers; + }; + +export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItem = + { + attributes?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributes; + id?: number; + }; + +export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRoles = { + data?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItem[]; +}; + export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItemAttributes = { [key: string]: any }; @@ -4982,6 +5886,11 @@ export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByData data?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByData; }; +export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissions = + { + data?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem[]; + }; + export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = { action?: string; @@ -5001,11 +5910,6 @@ export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByData id?: number; }; -export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissions = - { - data?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem[]; - }; - export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes = { [key: string]: any }; @@ -5062,19 +5966,6 @@ export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByData data?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByData; }; -export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributes = - { - code?: string; - createdAt?: string; - createdBy?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedBy; - description?: string; - name?: string; - permissions?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissions; - updatedAt?: string; - updatedBy?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; - users?: CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsers; - }; - export type CategoryStoriesDataItemAttributesCategoryDataAttributesCreatedByDataAttributesCreatedByDataAttributes = { [key: string]: any }; diff --git a/client/src/types/generated/tag.ts b/client/src/types/generated/tag.ts new file mode 100644 index 0000000..fc41daa --- /dev/null +++ b/client/src/types/generated/tag.ts @@ -0,0 +1,323 @@ +/** + * Generated by orval v6.20.0 🍺 + * Do not edit manually. + * DOCUMENTATION + * OpenAPI spec version: 1.0.0 + */ +import { useInfiniteQuery, useMutation, useQuery } from '@tanstack/react-query'; +import type { + MutationFunction, + QueryFunction, + QueryKey, + UseInfiniteQueryOptions, + UseInfiniteQueryResult, + UseMutationOptions, + UseQueryOptions, + UseQueryResult, +} from '@tanstack/react-query'; +import type { + Error, + GetTagsIdParams, + GetTagsParams, + TagListResponse, + TagRequest, + TagResponse, +} from './strapi.schemas'; +import { API } from '../../services/api/index'; +import type { ErrorType } from '../../services/api/index'; + +export const getTags = (params?: GetTagsParams, signal?: AbortSignal) => { + return API({ url: `/tags`, method: 'get', params, signal }); +}; + +export const getGetTagsQueryKey = (params?: GetTagsParams) => { + return [`/tags`, ...(params ? [params] : [])] as const; +}; + +export const getGetTagsInfiniteQueryOptions = < + TData = Awaited>, + TError = ErrorType +>( + params?: GetTagsParams, + options?: { query?: UseInfiniteQueryOptions>, TError, TData> } +) => { + const { query: queryOptions } = options ?? {}; + + const queryKey = queryOptions?.queryKey ?? getGetTagsQueryKey(params); + + const queryFn: QueryFunction>> = ({ signal, pageParam }) => + getTags({ 'pagination[page]': pageParam, ...params }, signal); + + return { queryKey, queryFn, staleTime: 10000, ...queryOptions } as UseInfiniteQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: QueryKey }; +}; + +export type GetTagsInfiniteQueryResult = NonNullable>>; +export type GetTagsInfiniteQueryError = ErrorType; + +export const useGetTagsInfinite = < + TData = Awaited>, + TError = ErrorType +>( + params?: GetTagsParams, + options?: { query?: UseInfiniteQueryOptions>, TError, TData> } +): UseInfiniteQueryResult & { queryKey: QueryKey } => { + const queryOptions = getGetTagsInfiniteQueryOptions(params, options); + + const query = useInfiniteQuery(queryOptions) as UseInfiniteQueryResult & { + queryKey: QueryKey; + }; + + query.queryKey = queryOptions.queryKey; + + return query; +}; + +export const getGetTagsQueryOptions = < + TData = Awaited>, + TError = ErrorType +>( + params?: GetTagsParams, + options?: { query?: UseQueryOptions>, TError, TData> } +) => { + const { query: queryOptions } = options ?? {}; + + const queryKey = queryOptions?.queryKey ?? getGetTagsQueryKey(params); + + const queryFn: QueryFunction>> = ({ signal }) => + getTags(params, signal); + + return { queryKey, queryFn, staleTime: 10000, ...queryOptions } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: QueryKey }; +}; + +export type GetTagsQueryResult = NonNullable>>; +export type GetTagsQueryError = ErrorType; + +export const useGetTags = >, TError = ErrorType>( + params?: GetTagsParams, + options?: { query?: UseQueryOptions>, TError, TData> } +): UseQueryResult & { queryKey: QueryKey } => { + const queryOptions = getGetTagsQueryOptions(params, options); + + const query = useQuery(queryOptions) as UseQueryResult & { queryKey: QueryKey }; + + query.queryKey = queryOptions.queryKey; + + return query; +}; + +export const postTags = (tagRequest: TagRequest) => { + return API({ + url: `/tags`, + method: 'post', + headers: { 'Content-Type': 'application/json' }, + data: tagRequest, + }); +}; + +export const getPostTagsMutationOptions = < + TError = ErrorType, + TContext = unknown +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { data: TagRequest }, + TContext + >; +}): UseMutationOptions< + Awaited>, + TError, + { data: TagRequest }, + TContext +> => { + const { mutation: mutationOptions } = options ?? {}; + + const mutationFn: MutationFunction>, { data: TagRequest }> = ( + props + ) => { + const { data } = props ?? {}; + + return postTags(data); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type PostTagsMutationResult = NonNullable>>; +export type PostTagsMutationBody = TagRequest; +export type PostTagsMutationError = ErrorType; + +export const usePostTags = , TContext = unknown>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { data: TagRequest }, + TContext + >; +}) => { + const mutationOptions = getPostTagsMutationOptions(options); + + return useMutation(mutationOptions); +}; +export const getTagsId = (id: number, params?: GetTagsIdParams, signal?: AbortSignal) => { + return API({ url: `/tags/${id}`, method: 'get', params, signal }); +}; + +export const getGetTagsIdQueryKey = (id: number, params?: GetTagsIdParams) => { + return [`/tags/${id}`, ...(params ? [params] : [])] as const; +}; + +export const getGetTagsIdQueryOptions = < + TData = Awaited>, + TError = ErrorType +>( + id: number, + params?: GetTagsIdParams, + options?: { query?: UseQueryOptions>, TError, TData> } +) => { + const { query: queryOptions } = options ?? {}; + + const queryKey = queryOptions?.queryKey ?? getGetTagsIdQueryKey(id, params); + + const queryFn: QueryFunction>> = ({ signal }) => + getTagsId(id, params, signal); + + return { queryKey, queryFn, enabled: !!id, staleTime: 10000, ...queryOptions } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: QueryKey }; +}; + +export type GetTagsIdQueryResult = NonNullable>>; +export type GetTagsIdQueryError = ErrorType; + +export const useGetTagsId = < + TData = Awaited>, + TError = ErrorType +>( + id: number, + params?: GetTagsIdParams, + options?: { query?: UseQueryOptions>, TError, TData> } +): UseQueryResult & { queryKey: QueryKey } => { + const queryOptions = getGetTagsIdQueryOptions(id, params, options); + + const query = useQuery(queryOptions) as UseQueryResult & { queryKey: QueryKey }; + + query.queryKey = queryOptions.queryKey; + + return query; +}; + +export const putTagsId = (id: number, tagRequest: TagRequest) => { + return API({ + url: `/tags/${id}`, + method: 'put', + headers: { 'Content-Type': 'application/json' }, + data: tagRequest, + }); +}; + +export const getPutTagsIdMutationOptions = < + TError = ErrorType, + TContext = unknown +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { id: number; data: TagRequest }, + TContext + >; +}): UseMutationOptions< + Awaited>, + TError, + { id: number; data: TagRequest }, + TContext +> => { + const { mutation: mutationOptions } = options ?? {}; + + const mutationFn: MutationFunction< + Awaited>, + { id: number; data: TagRequest } + > = (props) => { + const { id, data } = props ?? {}; + + return putTagsId(id, data); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type PutTagsIdMutationResult = NonNullable>>; +export type PutTagsIdMutationBody = TagRequest; +export type PutTagsIdMutationError = ErrorType; + +export const usePutTagsId = , TContext = unknown>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { id: number; data: TagRequest }, + TContext + >; +}) => { + const mutationOptions = getPutTagsIdMutationOptions(options); + + return useMutation(mutationOptions); +}; +export const deleteTagsId = (id: number) => { + return API({ url: `/tags/${id}`, method: 'delete' }); +}; + +export const getDeleteTagsIdMutationOptions = < + TError = ErrorType, + TContext = unknown +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { id: number }, + TContext + >; +}): UseMutationOptions< + Awaited>, + TError, + { id: number }, + TContext +> => { + const { mutation: mutationOptions } = options ?? {}; + + const mutationFn: MutationFunction>, { id: number }> = ( + props + ) => { + const { id } = props ?? {}; + + return deleteTagsId(id); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type DeleteTagsIdMutationResult = NonNullable>>; + +export type DeleteTagsIdMutationError = ErrorType; + +export const useDeleteTagsId = , TContext = unknown>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { id: number }, + TContext + >; +}) => { + const mutationOptions = getDeleteTagsIdMutationOptions(options); + + return useMutation(mutationOptions); +}; diff --git a/client/tailwind.config.js b/client/tailwind.config.js index dda9d22..7d08e47 100644 --- a/client/tailwind.config.js +++ b/client/tailwind.config.js @@ -79,8 +79,13 @@ module.exports = { from: { height: 'var(--radix-accordion-content-height)' }, to: { height: 0 }, }, + 'fade-down': { + '0%': { opacity: 0, transform: 'translateY(0)' }, + '100%': { opacity: 1, transform: 'translateY(20px)' }, + }, }, animation: { + 'fade-down': 'fade-down 2s ease-in-out infinite', 'accordion-down': 'accordion-down 0.2s ease-out', 'accordion-up': 'accordion-up 0.2s ease-out', }, @@ -92,6 +97,8 @@ module.exports = { backgroundImage: { 'header-line': 'linear-gradient(90deg, rgba(0, 174, 157, 0.00) 0%, rgba(0, 174, 157, 0.70) 51.56%, rgba(0, 174, 157, 0.00) 98.43%)', + 'story-header': + 'linear-gradient(180deg, rgba(12, 62, 84, 1) 43.82%, rgba(12, 62, 84, 0.00) 95.85%)', }, screens: { '3xl': '1650px', diff --git a/cms/src/api/category/content-types/category/schema.json b/cms/src/api/category/content-types/category/schema.json index 929573e..966c868 100644 --- a/cms/src/api/category/content-types/category/schema.json +++ b/cms/src/api/category/content-types/category/schema.json @@ -27,6 +27,12 @@ "relation": "oneToMany", "target": "api::story.story", "mappedBy": "category" + }, + "disclaimer": { + "displayName": "partners", + "type": "component", + "repeatable": true, + "component": "partners.partners" } } } diff --git a/cms/src/api/ifi/content-types/ifi/schema.json b/cms/src/api/ifi/content-types/ifi/schema.json new file mode 100644 index 0000000..1cf6994 --- /dev/null +++ b/cms/src/api/ifi/content-types/ifi/schema.json @@ -0,0 +1,25 @@ +{ + "kind": "collectionType", + "collectionName": "ifis", + "info": { + "singularName": "ifi", + "pluralName": "ifis", + "displayName": "IFI" + }, + "options": { + "draftAndPublish": true + }, + "pluginOptions": {}, + "attributes": { + "name": { + "type": "string", + "required": true + }, + "description": { + "type": "text" + }, + "link": { + "type": "string" + } + } +} diff --git a/cms/src/api/ifi/controllers/ifi.ts b/cms/src/api/ifi/controllers/ifi.ts new file mode 100644 index 0000000..d9c1553 --- /dev/null +++ b/cms/src/api/ifi/controllers/ifi.ts @@ -0,0 +1,7 @@ +/** + * ifi controller + */ + +import { factories } from '@strapi/strapi' + +export default factories.createCoreController('api::ifi.ifi'); diff --git a/cms/src/api/ifi/documentation/1.0.0/ifi.json b/cms/src/api/ifi/documentation/1.0.0/ifi.json new file mode 100644 index 0000000..f4907c3 --- /dev/null +++ b/cms/src/api/ifi/documentation/1.0.0/ifi.json @@ -0,0 +1,507 @@ +{ + "/ifis": { + "get": { + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IfiListResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + }, + "tags": [ + "Ifi" + ], + "parameters": [ + { + "name": "sort", + "in": "query", + "description": "Sort by attributes ascending (asc) or descending (desc)", + "deprecated": false, + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "pagination[withCount]", + "in": "query", + "description": "Return page/pageSize (default: true)", + "deprecated": false, + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "pagination[page]", + "in": "query", + "description": "Page number (default: 0)", + "deprecated": false, + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "pagination[pageSize]", + "in": "query", + "description": "Page size (default: 25)", + "deprecated": false, + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "pagination[start]", + "in": "query", + "description": "Offset value (default: 0)", + "deprecated": false, + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "pagination[limit]", + "in": "query", + "description": "Number of entities to return (default: 25)", + "deprecated": false, + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "fields", + "in": "query", + "description": "Fields to return (ex: title,author)", + "deprecated": false, + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "populate", + "in": "query", + "description": "Relations to return", + "deprecated": false, + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "filters", + "in": "query", + "description": "Filters to apply", + "deprecated": false, + "required": false, + "schema": { + "type": "object" + }, + "style": "deepObject" + }, + { + "name": "locale", + "in": "query", + "description": "Locale to apply", + "deprecated": false, + "required": false, + "schema": { + "type": "string" + } + } + ], + "operationId": "get/ifis" + }, + "post": { + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IfiResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + }, + "tags": [ + "Ifi" + ], + "parameters": [], + "operationId": "post/ifis", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IfiRequest" + } + } + } + } + } + }, + "/ifis/{id}": { + "get": { + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IfiResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + }, + "tags": [ + "Ifi" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "description": "", + "deprecated": false, + "required": true, + "schema": { + "type": "number" + } + } + ], + "operationId": "get/ifis/{id}" + }, + "put": { + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IfiResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + }, + "tags": [ + "Ifi" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "description": "", + "deprecated": false, + "required": true, + "schema": { + "type": "number" + } + } + ], + "operationId": "put/ifis/{id}", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IfiRequest" + } + } + } + } + }, + "delete": { + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "integer", + "format": "int64" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + }, + "tags": [ + "Ifi" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "description": "", + "deprecated": false, + "required": true, + "schema": { + "type": "number" + } + } + ], + "operationId": "delete/ifis/{id}" + } + } +} diff --git a/cms/src/api/ifi/routes/ifi.ts b/cms/src/api/ifi/routes/ifi.ts new file mode 100644 index 0000000..8b24756 --- /dev/null +++ b/cms/src/api/ifi/routes/ifi.ts @@ -0,0 +1,7 @@ +/** + * ifi router + */ + +import { factories } from '@strapi/strapi'; + +export default factories.createCoreRouter('api::ifi.ifi'); diff --git a/cms/src/api/ifi/services/ifi.ts b/cms/src/api/ifi/services/ifi.ts new file mode 100644 index 0000000..701090d --- /dev/null +++ b/cms/src/api/ifi/services/ifi.ts @@ -0,0 +1,7 @@ +/** + * ifi service + */ + +import { factories } from '@strapi/strapi'; + +export default factories.createCoreService('api::ifi.ifi'); diff --git a/cms/src/api/story/content-types/story/schema.json b/cms/src/api/story/content-types/story/schema.json index d18732d..82ddf0a 100644 --- a/cms/src/api/story/content-types/story/schema.json +++ b/cms/src/api/story/content-types/story/schema.json @@ -55,6 +55,22 @@ }, "customField": "plugin::map-field.map-field", "required": true + }, + "ifis": { + "type": "relation", + "relation": "oneToMany", + "target": "api::ifi.ifi" + }, + "tags": { + "type": "relation", + "relation": "oneToMany", + "target": "api::tag.tag" + }, + "location": { + "type": "string" + }, + "impacted_people": { + "type": "string" } } } diff --git a/cms/src/api/tag/content-types/tag/schema.json b/cms/src/api/tag/content-types/tag/schema.json new file mode 100644 index 0000000..70b67f5 --- /dev/null +++ b/cms/src/api/tag/content-types/tag/schema.json @@ -0,0 +1,22 @@ +{ + "kind": "collectionType", + "collectionName": "tags", + "info": { + "singularName": "tag", + "pluralName": "tags", + "displayName": "Tag" + }, + "options": { + "draftAndPublish": true + }, + "pluginOptions": {}, + "attributes": { + "name": { + "type": "string", + "required": true + }, + "description": { + "type": "text" + } + } +} diff --git a/cms/src/api/tag/controllers/tag.ts b/cms/src/api/tag/controllers/tag.ts new file mode 100644 index 0000000..0b3e997 --- /dev/null +++ b/cms/src/api/tag/controllers/tag.ts @@ -0,0 +1,7 @@ +/** + * tag controller + */ + +import { factories } from '@strapi/strapi' + +export default factories.createCoreController('api::tag.tag'); diff --git a/cms/src/api/tag/documentation/1.0.0/tag.json b/cms/src/api/tag/documentation/1.0.0/tag.json new file mode 100644 index 0000000..e968f26 --- /dev/null +++ b/cms/src/api/tag/documentation/1.0.0/tag.json @@ -0,0 +1,507 @@ +{ + "/tags": { + "get": { + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagListResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + }, + "tags": [ + "Tag" + ], + "parameters": [ + { + "name": "sort", + "in": "query", + "description": "Sort by attributes ascending (asc) or descending (desc)", + "deprecated": false, + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "pagination[withCount]", + "in": "query", + "description": "Return page/pageSize (default: true)", + "deprecated": false, + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "pagination[page]", + "in": "query", + "description": "Page number (default: 0)", + "deprecated": false, + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "pagination[pageSize]", + "in": "query", + "description": "Page size (default: 25)", + "deprecated": false, + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "pagination[start]", + "in": "query", + "description": "Offset value (default: 0)", + "deprecated": false, + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "pagination[limit]", + "in": "query", + "description": "Number of entities to return (default: 25)", + "deprecated": false, + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "fields", + "in": "query", + "description": "Fields to return (ex: title,author)", + "deprecated": false, + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "populate", + "in": "query", + "description": "Relations to return", + "deprecated": false, + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "filters", + "in": "query", + "description": "Filters to apply", + "deprecated": false, + "required": false, + "schema": { + "type": "object" + }, + "style": "deepObject" + }, + { + "name": "locale", + "in": "query", + "description": "Locale to apply", + "deprecated": false, + "required": false, + "schema": { + "type": "string" + } + } + ], + "operationId": "get/tags" + }, + "post": { + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + }, + "tags": [ + "Tag" + ], + "parameters": [], + "operationId": "post/tags", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagRequest" + } + } + } + } + } + }, + "/tags/{id}": { + "get": { + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + }, + "tags": [ + "Tag" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "description": "", + "deprecated": false, + "required": true, + "schema": { + "type": "number" + } + } + ], + "operationId": "get/tags/{id}" + }, + "put": { + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + }, + "tags": [ + "Tag" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "description": "", + "deprecated": false, + "required": true, + "schema": { + "type": "number" + } + } + ], + "operationId": "put/tags/{id}", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagRequest" + } + } + } + } + }, + "delete": { + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "integer", + "format": "int64" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + }, + "tags": [ + "Tag" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "description": "", + "deprecated": false, + "required": true, + "schema": { + "type": "number" + } + } + ], + "operationId": "delete/tags/{id}" + } + } +} diff --git a/cms/src/api/tag/routes/tag.ts b/cms/src/api/tag/routes/tag.ts new file mode 100644 index 0000000..d15b0cf --- /dev/null +++ b/cms/src/api/tag/routes/tag.ts @@ -0,0 +1,7 @@ +/** + * tag router + */ + +import { factories } from '@strapi/strapi'; + +export default factories.createCoreRouter('api::tag.tag'); diff --git a/cms/src/api/tag/services/tag.ts b/cms/src/api/tag/services/tag.ts new file mode 100644 index 0000000..d45b676 --- /dev/null +++ b/cms/src/api/tag/services/tag.ts @@ -0,0 +1,7 @@ +/** + * tag service + */ + +import { factories } from '@strapi/strapi'; + +export default factories.createCoreService('api::tag.tag'); diff --git a/cms/src/components/disclaimer/disclaimer.json b/cms/src/components/disclaimer/disclaimer.json new file mode 100644 index 0000000..3b062fc --- /dev/null +++ b/cms/src/components/disclaimer/disclaimer.json @@ -0,0 +1,8 @@ +{ + "collectionName": "components_disclaimer_disclaimers", + "info": { + "displayName": "disclaimer" + }, + "options": {}, + "attributes": {} +} diff --git a/cms/src/components/partners/partners.json b/cms/src/components/partners/partners.json new file mode 100644 index 0000000..dcb96c8 --- /dev/null +++ b/cms/src/components/partners/partners.json @@ -0,0 +1,17 @@ +{ + "collectionName": "components_partners_partners", + "info": { + "displayName": "partners" + }, + "options": {}, + "attributes": { + "title": { + "type": "string" + }, + "partners": { + "type": "component", + "repeatable": true, + "component": "disclaimer.outro-step-disclaimer" + } + } +} diff --git a/types/orval.config.ts b/types/orval.config.ts index 6d9640d..eb9f006 100644 --- a/types/orval.config.ts +++ b/types/orval.config.ts @@ -92,6 +92,26 @@ module.exports = { staleTime: 10000, }, } + }, + "get/ifis/{id}": { + query: { + useQuery: true, + useInfinite: false, + signal: true, + options: { + staleTime: 10000, + }, + } + }, + "get/tags/{id}": { + query: { + useQuery: true, + useInfinite: false, + signal: true, + options: { + staleTime: 10000, + }, + } } } }, @@ -99,7 +119,7 @@ module.exports = { input: { target: '../cms/dist/src/extensions/documentation/documentation/1.0.0/full_documentation.json', filters: { - tags: ['Dataset', 'Dataset-group', 'Layer', 'Story', 'Category', 'Top-story'], + tags: ['Dataset', 'Dataset-group', 'Layer', 'Story', 'Category', 'Top-story', 'Ifi', 'Tag'], }, } }