diff --git a/docs/.vitepress/theme/components/packages/PackageList.data.ts b/docs/.vitepress/theme/components/packages/PackageList.data.ts new file mode 100644 index 000000000..aa6a9cf9d --- /dev/null +++ b/docs/.vitepress/theme/components/packages/PackageList.data.ts @@ -0,0 +1,19 @@ +import packageData from '../../../data/packageData.json'; +import thirdPartyPackages from '../../../data/packageData.thirdParty.json'; +import fetchPackages from "../../../lib/fetchPackages"; + +export default { + async load() { + const packages = await fetchPackages(); + return { + packages: packages + .filter(p => p.name in packageData) + .map((pData) => ({ + ...pData, + ...packageData[pData.name], + icon: `/framework-logos/${packageData[pData.name].icon}.svg`, + })).sort((a, b) => a.order - b.order), + thirdPartyPackages, + }; + } +} diff --git a/docs/.vitepress/theme/components/packages/PackageList.vue b/docs/.vitepress/theme/components/packages/PackageList.vue new file mode 100644 index 000000000..90e813d3e --- /dev/null +++ b/docs/.vitepress/theme/components/packages/PackageList.vue @@ -0,0 +1,38 @@ + + + + + Packages + + + + + + Third-party packages + + + + + + + diff --git a/docs/.vitepress/theme/components/packages/PackageListItem.vue b/docs/.vitepress/theme/components/packages/PackageListItem.vue new file mode 100644 index 000000000..04f328e5f --- /dev/null +++ b/docs/.vitepress/theme/components/packages/PackageListItem.vue @@ -0,0 +1,73 @@ + + + + + + + + + + {{ props.packageData.name }} + + + + + + + {{ packageData.description }} + + + + + + diff --git a/docs/packages.md b/docs/packages.md new file mode 100644 index 000000000..3596e850a --- /dev/null +++ b/docs/packages.md @@ -0,0 +1,8 @@ +--- +aside: false +--- + + +