Files
pole-book/server/node_modules/@strapi/upload/dist/admin/hooks/useAssets.mjs.map

1 line
5.5 KiB
Plaintext

{"version":3,"file":"useAssets.mjs","sources":["../../../admin/src/hooks/useAssets.ts"],"sourcesContent":["import * as React from 'react';\n\nimport { useNotification, useFetchClient } from '@strapi/admin/strapi-admin';\nimport { useNotifyAT } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { useQuery } from 'react-query';\n\nimport { Query, GetFiles } from '../../../shared/contracts/files';\nimport { pluginId } from '../pluginId';\n\ninterface UseAssetsOptions {\n skipWhen?: boolean;\n query?: Query;\n}\n\nexport const useAssets = ({ skipWhen = false, query = {} }: UseAssetsOptions = {}) => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const { notifyStatus } = useNotifyAT();\n const { get } = useFetchClient();\n const { folderPath, _q, ...paramsExceptFolderAndQ } = query;\n\n let params: Query;\n\n if (_q) {\n params = {\n ...paramsExceptFolderAndQ,\n _q: encodeURIComponent(_q),\n };\n } else {\n params = {\n ...paramsExceptFolderAndQ,\n filters: {\n $and: [\n ...(paramsExceptFolderAndQ?.filters?.$and ?? []),\n {\n folderPath: { $eq: folderPath ?? '/' },\n },\n ],\n },\n };\n }\n\n const { data, error, isLoading } = useQuery<\n GetFiles.Response['data'],\n GetFiles.Response['error']\n >(\n [pluginId, 'assets', params],\n async () => {\n const { data } = await get('/upload/files', { params });\n\n return data;\n },\n {\n enabled: !skipWhen,\n staleTime: 0,\n cacheTime: 0,\n select(data) {\n if (data?.results && Array.isArray(data.results)) {\n return {\n ...data,\n results: data.results\n /**\n * Filter out assets that don't have a name.\n * So we don't try to render them as assets\n * and get errors.\n */\n .filter((asset) => asset.name)\n .map((asset) => ({\n ...asset,\n /**\n * Mime and ext cannot be null in the front-end because\n * we expect them to be strings and use the `includes` method.\n */\n mime: asset.mime ?? '',\n ext: asset.ext ?? '',\n })),\n };\n }\n\n return data;\n },\n }\n );\n\n React.useEffect(() => {\n if (data) {\n notifyStatus(\n formatMessage({\n id: 'list.asset.at.finished',\n defaultMessage: 'The assets have finished loading.',\n })\n );\n }\n }, [data, formatMessage, notifyStatus]);\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error' }),\n });\n }\n }, [error, formatMessage, toggleNotification]);\n\n return { data, error, isLoading };\n};\n"],"names":["useAssets","skipWhen","query","formatMessage","useIntl","toggleNotification","useNotification","notifyStatus","useNotifyAT","get","useFetchClient","folderPath","_q","paramsExceptFolderAndQ","params","encodeURIComponent","filters","$and","$eq","data","error","isLoading","useQuery","pluginId","enabled","staleTime","cacheTime","select","results","Array","isArray","filter","asset","name","map","mime","ext","React","useEffect","id","defaultMessage","type","message"],"mappings":"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"}