[READ-ONLY] Mirror of https://github.com/danielroe/dwaring87-webdev-wedding. Marissa & David's Wedding Website!
0

Configure Feed

Select the types of activity you want to include in your feed.

Images: load from Directus

+340 -29
+1 -1
components/Home/BikeTour.vue
··· 12 12 </div> 13 13 </div> 14 14 <div class="mx-auto my-auto p-4"> 15 - <img class="rounded-md border-2 border-white object-cover object-left-top mx-auto" src="/images/bikes.jpg" alt="Killarney National Park Bike Tour"> 15 + <Image d-key="tour" class="rounded-md border-2 border-white object-cover object-left-top mx-auto" /> 16 16 </div> 17 17 </div> 18 18 </div>
+2 -2
components/Home/Hero.vue
··· 7 7 <div class="max-w-7xl mx-auto sm:my-12 sm:px-6 lg:px-8"> 8 8 <div class="relative shadow-xl sm:rounded-2xl sm:overflow-hidden"> 9 9 <div class="absolute inset-0"> 10 - <img class="h-full w-full object-cover" src="/images/beach1.jpg" alt="Dundag Beach" /> 11 - <div class="absolute inset-0 bg-gray-500 mix-blend-multiply" /> 10 + <Image d-key="hero" class="h-full w-full object-cover" /> 11 + <div class="absolute inset-0 bg-gray-500 mix-blend-multiply"></div> 12 12 </div> 13 13 <br /> 14 14 <div class="relative h-full px-4 py-16 sm:px-6 sm:py-24 lg:py-32 lg:px-8">
+1 -1
components/Home/MoreInfo.vue
··· 2 2 <div class="container py-8"> 3 3 <div class="flex flex-wrap md:flex-nowrap justify-center gap-8"> 4 4 <div class="w-full max-w-lg "> 5 - <img class="rounded-md shadow-md border-2 border-white" src="/images/beach2.jpg" /> 5 + <Image d-key="info" class="rounded-md shadow-md border-2 border-white" width="600" /> 6 6 </div> 7 7 <div class="max-w-lg"> 8 8 <h1>More Information</h1>
+50
components/Image.vue
··· 1 + <script setup> 2 + import { useRuntimeConfig } from "#app"; 3 + const { getPhotos } = useCMS(); 4 + const config = useRuntimeConfig(); 5 + 6 + const props = defineProps({ 7 + dKey: String, 8 + dId: String, 9 + fit: String, 10 + width: String, 11 + height: String, 12 + quality: { 13 + type: Number, 14 + default: 90, 15 + }, 16 + format: { 17 + type: String, 18 + default: "png" 19 + } 20 + }); 21 + 22 + const params = setParams({ 23 + fit: props.fit, 24 + width: props.width, 25 + height: props.height, 26 + quality: props.quality, 27 + format: props.format, 28 + access_token: config.directus.token 29 + }); 30 + 31 + const id = props?.dId ? props.dId : props?.dKey ? await getPhotos(props.dKey) : undefined; 32 + const url = id ? `${config.directus.url}/assets/${id}?${params.toString()}` : undefined; 33 + 34 + function setParams(params) { 35 + let p = []; 36 + for ( let key in params ) { 37 + if ( params.hasOwnProperty(key) ) { 38 + let value = params[key]; 39 + if ( value && value !== '' ) { 40 + p.push(`${key}=${value}`); 41 + } 42 + } 43 + } 44 + return p.join('&'); 45 + } 46 + </script> 47 + 48 + <template> 49 + <nuxt-img v-if="url" preload :src="url" /> 50 + </template>
+56 -9
composables/useCMS.ts
··· 1 1 export const useCMS = () => { 2 2 const { getItems, getSingletonItem } = useDirectusItems(); 3 - const { getFiles, getThumbnail } = useDirectusFiles(); 4 3 5 4 /** 6 5 * Get the key/value pairs of the requested details 7 6 * @param keys The array of keys to get (return all details, if not defined) 8 - * @returns The value 7 + * @returns The value or an object of key/value pairs 9 8 */ 10 9 const getDetails = async (keys?: string|string[]): Promise<string|Details> => { 11 10 keys = typeof keys === 'string' ? [keys] : keys; 12 - const properties: Detail[] = await getItems({ 11 + const details: Detail[] = await getItems({ 13 12 collection: 'details', 14 13 params: { 15 14 fields: ['key', 'value'], ··· 19 18 } 20 19 }); 21 20 22 - if ( properties && properties.length === 1 ) { 23 - return properties[0].value; 21 + if ( details && details.length === 1 ) { 22 + return details[0].value; 24 23 } 25 - if ( properties && properties.length > 1 ) { 24 + else if ( details && details.length > 1 ) { 26 25 let rtn: Details = {}; 27 - properties.forEach((prop) => { 28 - rtn[prop.key] = prop.value; 26 + details.forEach((detail) => { 27 + rtn[detail.key] = detail.value; 28 + }); 29 + return rtn; 30 + } 31 + else { 32 + return {}; 33 + } 34 + } 35 + 36 + /** 37 + * Get the key/image id pairs of the requested photos 38 + * @param keys The array of keys to get (return all photos, if not defined) 39 + * @returns The image id or an object of key/image id pairs 40 + */ 41 + const getPhotos = async(keys?: string|string[]): Promise<string|Photos> => { 42 + keys = typeof keys === 'string' ? [keys] : keys; 43 + const photos: Photos[] = await getItems({ 44 + collection: 'photos', 45 + params: { 46 + fields: ['key', 'image'], 47 + filter: { 48 + key: keys ? { "_in": keys } : undefined 49 + } 50 + } 51 + }); 52 + 53 + if ( photos && photos.length === 1 ) { 54 + return photos[0].image; 55 + } 56 + else if ( photos && photos.length > 1 ) { 57 + let rtn: Photos = {}; 58 + photos.forEach((photo) => { 59 + rtn[photo.key] = photo.image; 29 60 }); 30 61 return rtn; 31 62 } ··· 36 67 37 68 38 69 return { 39 - getDetails 70 + getDetails, 71 + getPhotos 40 72 } 41 73 } 42 74 ··· 54 86 */ 55 87 type Details = { 56 88 [key: Detail["key"]]: Detail["value"]; 89 + } 90 + 91 + /** 92 + * A key/id pair from the Photos collection 93 + */ 94 + type Photo = { 95 + key: string, 96 + id: string 97 + } 98 + 99 + /** 100 + * A collection of Photos (key/id pairs) 101 + */ 102 + type Photos = { 103 + [key: Photo["key"]]: Photo["id"]; 57 104 }
+1 -1
nuxt.config.ts
··· 6 6 strict: true 7 7 }, 8 8 9 - modules: ['@nuxtjs/tailwindcss', 'nuxt-directus'], 9 + modules: ['@nuxt/image-edge', '@nuxtjs/tailwindcss', 'nuxt-directus'], 10 10 11 11 vite: { 12 12 plugins: [
+2 -3
package.json
··· 10 10 }, 11 11 "devDependencies": { 12 12 "@iconify-json/ri": "^1.1.3", 13 + "@nuxt/image-edge": "^1.0.0-27719579.87dcdf2", 13 14 "@nuxtjs/tailwindcss": "^5.3.3", 15 + "@tailwindcss/aspect-ratio": "^0.4.2", 14 16 "nuxt": "3.0.0-rc.11", 15 17 "nuxt-directus": "^3.0.3", 16 18 "unplugin-icons": "^0.14.10" 17 - }, 18 - "dependencies": { 19 - "@tailwindcss/aspect-ratio": "^0.4.2" 20 19 } 21 20 }
public/images/beach1.jpg

This is a binary file and will not be displayed.

public/images/beach2.jpg

This is a binary file and will not be displayed.

public/images/beach3.jpg

This is a binary file and will not be displayed.

public/images/bikes.jpg

This is a binary file and will not be displayed.

+227 -12
yarn.lock
··· 450 450 resolved "https://registry.yarnpkg.com/@nuxt/devalue/-/devalue-2.0.0.tgz#c7bd7e9a516514e612d5d2e511ffc399e0eac322" 451 451 integrity sha512-YBI/6o2EBz02tdEJRBK8xkt3zvOFOWlLBf7WKYGBsSYSRtjjgrqPe2skp6VLLmKx5WbHHDNcW+6oACaurxGzeA== 452 452 453 - "@nuxt/kit@3.0.0-rc.11", "@nuxt/kit@^3.0.0-rc.9": 453 + "@nuxt/image-edge@^1.0.0-27719579.87dcdf2": 454 + version "1.0.0-27719579.87dcdf2" 455 + resolved "https://registry.yarnpkg.com/@nuxt/image-edge/-/image-edge-1.0.0-27719579.87dcdf2.tgz#7cc03b6f237eb19b63e2d4d2b337aea86b4131da" 456 + integrity sha512-JFFoBVauNBzNYNducnV92S2LVn2zMFiOv+aeVVsoKKdLP89x8w4kIjg0smMyUEhJ9psx7q8J43duqjvwnEYPqw== 457 + dependencies: 458 + "@nuxt/kit" "^3.0.0-rc.10" 459 + consola "^2.15.3" 460 + defu "^6.1.0" 461 + h3 "^0.7.21" 462 + image-meta "^0.1.1" 463 + node-fetch-native "^0.1.4" 464 + ohash "^0.1.5" 465 + pathe "^0.3.7" 466 + ufo "^0.8.5" 467 + optionalDependencies: 468 + ipx "^0.9.11" 469 + 470 + "@nuxt/kit@3.0.0-rc.11", "@nuxt/kit@^3.0.0-rc.10", "@nuxt/kit@^3.0.0-rc.9": 454 471 version "3.0.0-rc.11" 455 472 resolved "https://registry.yarnpkg.com/@nuxt/kit/-/kit-3.0.0-rc.11.tgz#d147ef65509c073f1101fa1a19071e309bcf634f" 456 473 integrity sha512-o0E/k635Lzcxp4K5t0ToHC6WwQ1wyN0EIqMAQEzgiUexoAhzdURr21QI0D6e6U461u4KP7x92wYM87VxhMFXmQ== ··· 1338 1355 optionalDependencies: 1339 1356 fsevents "~2.3.2" 1340 1357 1341 - chownr@^1.1.4: 1358 + chownr@^1.1.1, chownr@^1.1.4: 1342 1359 version "1.1.4" 1343 1360 resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" 1344 1361 integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== ··· 1430 1447 resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 1431 1448 integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== 1432 1449 1433 - color-name@^1.1.4, color-name@~1.1.4: 1450 + color-name@^1.0.0, color-name@^1.1.4, color-name@~1.1.4: 1434 1451 version "1.1.4" 1435 1452 resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" 1436 1453 integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== 1454 + 1455 + color-string@^1.9.0: 1456 + version "1.9.1" 1457 + resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.9.1.tgz#4467f9146f036f855b764dfb5bf8582bf342c7a4" 1458 + integrity sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg== 1459 + dependencies: 1460 + color-name "^1.0.0" 1461 + simple-swizzle "^0.2.2" 1437 1462 1438 1463 color-support@^1.1.2: 1439 1464 version "1.1.3" 1440 1465 resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" 1441 1466 integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== 1442 1467 1468 + color@^4.2.3: 1469 + version "4.2.3" 1470 + resolved "https://registry.yarnpkg.com/color/-/color-4.2.3.tgz#d781ecb5e57224ee43ea9627560107c0e0c6463a" 1471 + integrity sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A== 1472 + dependencies: 1473 + color-convert "^2.0.1" 1474 + color-string "^1.9.0" 1475 + 1443 1476 colord@^2.9.1: 1444 1477 version "2.9.3" 1445 1478 resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" ··· 1450 1483 resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" 1451 1484 integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== 1452 1485 1453 - commander@^2.20.0: 1486 + commander@^2.20.0, commander@^2.20.3: 1454 1487 version "2.20.3" 1455 1488 resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" 1456 1489 integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== ··· 1806 1839 resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" 1807 1840 integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== 1808 1841 1842 + cssfilter@0.0.10: 1843 + version "0.0.10" 1844 + resolved "https://registry.yarnpkg.com/cssfilter/-/cssfilter-0.0.10.tgz#c6d2672632a2e5c83e013e6864a42ce8defd20ae" 1845 + integrity sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw== 1846 + 1809 1847 cssnano-preset-default@^5.2.12: 1810 1848 version "5.2.12" 1811 1849 resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-5.2.12.tgz#ebe6596ec7030e62c3eb2b3c09f533c0644a9a97" ··· 1921 1959 resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" 1922 1960 integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== 1923 1961 1962 + decompress-response@^6.0.0: 1963 + version "6.0.0" 1964 + resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" 1965 + integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ== 1966 + dependencies: 1967 + mimic-response "^3.1.0" 1968 + 1924 1969 deep-equal@~1.0.1: 1925 1970 version "1.0.1" 1926 1971 resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" 1927 1972 integrity sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw== 1973 + 1974 + deep-extend@^0.6.0: 1975 + version "0.6.0" 1976 + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" 1977 + integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== 1928 1978 1929 1979 deepmerge@^4.2.2: 1930 1980 version "4.2.2" ··· 1993 2043 resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" 1994 2044 integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== 1995 2045 1996 - detect-libc@^2.0.0: 2046 + detect-libc@^2.0.0, detect-libc@^2.0.1: 1997 2047 version "2.0.1" 1998 2048 resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.1.tgz#e1897aa88fa6ad197862937fbc0441ef352ee0cd" 1999 2049 integrity sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w== ··· 2126 2176 resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" 2127 2177 integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== 2128 2178 2129 - end-of-stream@^1.4.1: 2179 + end-of-stream@^1.1.0, end-of-stream@^1.4.1: 2130 2180 version "1.4.4" 2131 2181 resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" 2132 2182 integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== ··· 2361 2411 onetime "^5.1.2" 2362 2412 signal-exit "^3.0.3" 2363 2413 strip-final-newline "^2.0.0" 2414 + 2415 + expand-template@^2.0.3: 2416 + version "2.0.3" 2417 + resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" 2418 + integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== 2364 2419 2365 2420 external-editor@^3.0.3: 2366 2421 version "3.1.0" ··· 2660 2715 dependencies: 2661 2716 ini "^1.3.2" 2662 2717 2718 + github-from-package@0.0.0: 2719 + version "0.0.0" 2720 + resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" 2721 + integrity sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw== 2722 + 2663 2723 gittar@^0.1.1: 2664 2724 version "0.1.1" 2665 2725 resolved "https://registry.yarnpkg.com/gittar/-/gittar-0.1.1.tgz#d6993ea6160a86c8b7f3de722a61f73bc99e14b4" ··· 2899 2959 resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a" 2900 2960 integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== 2901 2961 2962 + image-meta@^0.1.1: 2963 + version "0.1.1" 2964 + resolved "https://registry.yarnpkg.com/image-meta/-/image-meta-0.1.1.tgz#a84dc7d5f61c7d60e85ec0c3ac81beee8646039b" 2965 + integrity sha512-+oXiHwOEPr1IE5zY0tcBLED/CYcre15J4nwL50x3o0jxWqEkyjrusiKP3YSU+tr9fvJp33ZcP5Gpj2295g3aEw== 2966 + 2902 2967 import-fresh@^3.2.1: 2903 2968 version "3.3.0" 2904 2969 resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" ··· 2930 2995 resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 2931 2996 integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== 2932 2997 2933 - ini@^1.3.2, ini@^1.3.5: 2998 + ini@^1.3.2, ini@^1.3.5, ini@~1.3.0: 2934 2999 version "1.3.8" 2935 3000 resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" 2936 3001 integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== ··· 2976 3041 resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-5.0.0.tgz#cd313b2ae9c80c07bd3851e12bf4fa4dc5480632" 2977 3042 integrity sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw== 2978 3043 3044 + ipx@^0.9.11: 3045 + version "0.9.11" 3046 + resolved "https://registry.yarnpkg.com/ipx/-/ipx-0.9.11.tgz#89bbeffc6f62df80dfd0f8fe1e68c6638d09251c" 3047 + integrity sha512-/wsBt7hV8rvNR6O4kwgOUAhtm0F/M/mXaolXot/Bz7fdOD+W7i9OtWuoASWv1PFwwtOunhZGaoCx8BOpSdG2VQ== 3048 + dependencies: 3049 + consola "^2.15.3" 3050 + defu "^6.1.0" 3051 + destr "^1.1.1" 3052 + etag "^1.8.1" 3053 + image-meta "^0.1.1" 3054 + listhen "^0.2.15" 3055 + ohmyfetch "^0.4.18" 3056 + pathe "^0.3.5" 3057 + sharp "^0.30.7" 3058 + ufo "^0.8.5" 3059 + xss "^1.0.14" 3060 + 2979 3061 is-arrayish@^0.2.1: 2980 3062 version "0.2.1" 2981 3063 resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 2982 3064 integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== 2983 3065 3066 + is-arrayish@^0.3.1: 3067 + version "0.3.2" 3068 + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" 3069 + integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== 3070 + 2984 3071 is-binary-path@~2.1.0: 2985 3072 version "2.1.0" 2986 3073 resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" ··· 3290 3377 resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" 3291 3378 integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== 3292 3379 3293 - listhen@^0.2.13: 3380 + listhen@^0.2.13, listhen@^0.2.15: 3294 3381 version "0.2.15" 3295 3382 resolved "https://registry.yarnpkg.com/listhen/-/listhen-0.2.15.tgz#1af0f47f94a09d5f3ba4efa5a4b07df65198bb59" 3296 3383 integrity sha512-F/IWj/aJLeokHAIVY+l3JoWRUnbRaf2F0cr+Ybc1YyozMA/yP0C2nf3c0Oi7vAbFvtfiwfWWfP7bIrQc/u5L1A== ··· 3587 3674 resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" 3588 3675 integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== 3589 3676 3677 + mimic-response@^3.1.0: 3678 + version "3.1.0" 3679 + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" 3680 + integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ== 3681 + 3590 3682 min-indent@^1.0.0: 3591 3683 version "1.0.1" 3592 3684 resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" ··· 3622 3714 is-plain-obj "^1.1.0" 3623 3715 kind-of "^6.0.3" 3624 3716 3625 - minimist@^1.2.5, minimist@^1.2.6: 3717 + minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5, minimist@^1.2.6: 3626 3718 version "1.2.6" 3627 3719 resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" 3628 3720 integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== ··· 3657 3749 minipass "^3.0.0" 3658 3750 yallist "^4.0.0" 3659 3751 3752 + mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: 3753 + version "0.5.3" 3754 + resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" 3755 + integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== 3756 + 3660 3757 mkdirp@^0.5.1, mkdirp@^0.5.5, mkdirp@^0.5.6: 3661 3758 version "0.5.6" 3662 3759 resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" ··· 3718 3815 version "4.0.0" 3719 3816 resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-4.0.0.tgz#6e144dee117609232c3f415c34b0e550e64999a5" 3720 3817 integrity sha512-IgBP8piMxe/gf73RTQx7hmnhwz0aaEXYakvqZyE302IXW3HyVNhdNGC+O2MwMAVhLEnvXlvKtGbtJf6wvHihCg== 3818 + 3819 + napi-build-utils@^1.0.1: 3820 + version "1.0.2" 3821 + resolved "https://registry.yarnpkg.com/napi-build-utils/-/napi-build-utils-1.0.2.tgz#b1fddc0b2c46e380a0b7a76f984dd47c41a13806" 3822 + integrity sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg== 3721 3823 3722 3824 negotiator@0.6.3: 3723 3825 version "0.6.3" ··· 3793 3895 unimport "^0.6.7" 3794 3896 unstorage "^0.5.6" 3795 3897 3898 + node-abi@^3.3.0: 3899 + version "3.25.0" 3900 + resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.25.0.tgz#ca57dd23ae67679ce152b6c45cae2c57ed04faff" 3901 + integrity sha512-p+0xx5ruIQ+8X57CRIMxbTZRT7tU0Tjn2C/aAK68AEMrbGsCo6IjnDdPNhEyyjWCT4bRtzomXchYd3sSgk3BJQ== 3902 + dependencies: 3903 + semver "^7.3.5" 3904 + 3905 + node-addon-api@^5.0.0: 3906 + version "5.0.0" 3907 + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-5.0.0.tgz#7d7e6f9ef89043befdb20c1989c905ebde18c501" 3908 + integrity sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA== 3909 + 3796 3910 node-domexception@^1.0.0: 3797 3911 version "1.0.0" 3798 3912 resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5" ··· 3993 4107 dependencies: 3994 4108 ee-first "1.1.1" 3995 4109 3996 - once@^1.3.0, once@^1.4.0: 4110 + once@^1.3.0, once@^1.3.1, once@^1.4.0: 3997 4111 version "1.4.0" 3998 4112 resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 3999 4113 integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== ··· 4601 4715 picocolors "^1.0.0" 4602 4716 source-map-js "^1.0.2" 4603 4717 4718 + prebuild-install@^7.1.1: 4719 + version "7.1.1" 4720 + resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-7.1.1.tgz#de97d5b34a70a0c81334fd24641f2a1702352e45" 4721 + integrity sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw== 4722 + dependencies: 4723 + detect-libc "^2.0.0" 4724 + expand-template "^2.0.3" 4725 + github-from-package "0.0.0" 4726 + minimist "^1.2.3" 4727 + mkdirp-classic "^0.5.3" 4728 + napi-build-utils "^1.0.1" 4729 + node-abi "^3.3.0" 4730 + pump "^3.0.0" 4731 + rc "^1.2.7" 4732 + simple-get "^4.0.0" 4733 + tar-fs "^2.0.0" 4734 + tunnel-agent "^0.6.0" 4735 + 4604 4736 pretty-bytes@^6.0.0: 4605 4737 version "6.0.0" 4606 4738 resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-6.0.0.tgz#928be2ad1f51a2e336add8ba764739f9776a8140" ··· 4620 4752 version "1.0.1" 4621 4753 resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" 4622 4754 integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== 4755 + 4756 + pump@^3.0.0: 4757 + version "3.0.0" 4758 + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" 4759 + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== 4760 + dependencies: 4761 + end-of-stream "^1.1.0" 4762 + once "^1.3.1" 4623 4763 4624 4764 punycode@^2.1.0: 4625 4765 version "2.1.1" ··· 4671 4811 defu "^6.0.0" 4672 4812 destr "^1.1.1" 4673 4813 flat "^5.0.0" 4814 + 4815 + rc@^1.2.7: 4816 + version "1.2.8" 4817 + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" 4818 + integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== 4819 + dependencies: 4820 + deep-extend "^0.6.0" 4821 + ini "~1.3.0" 4822 + minimist "^1.2.0" 4823 + strip-json-comments "~2.0.1" 4674 4824 4675 4825 read-cache@^1.0.0: 4676 4826 version "1.0.0" ··· 4896 5046 dependencies: 4897 5047 tslib "^2.1.0" 4898 5048 4899 - safe-buffer@5.2.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: 5049 + safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: 4900 5050 version "5.2.1" 4901 5051 resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" 4902 5052 integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== ··· 5007 5157 resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" 5008 5158 integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== 5009 5159 5160 + sharp@^0.30.7: 5161 + version "0.30.7" 5162 + resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.30.7.tgz#7862bda98804fdd1f0d5659c85e3324b90d94c7c" 5163 + integrity sha512-G+MY2YW33jgflKPTXXptVO28HvNOo9G3j0MybYAHeEmby+QuD2U98dT6ueht9cv/XDqZspSpIhoSW+BAKJ7Hig== 5164 + dependencies: 5165 + color "^4.2.3" 5166 + detect-libc "^2.0.1" 5167 + node-addon-api "^5.0.0" 5168 + prebuild-install "^7.1.1" 5169 + semver "^7.3.7" 5170 + simple-get "^4.0.1" 5171 + tar-fs "^2.1.1" 5172 + tunnel-agent "^0.6.0" 5173 + 5010 5174 shebang-command@^2.0.0: 5011 5175 version "2.0.0" 5012 5176 resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" ··· 5023 5187 version "3.0.7" 5024 5188 resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" 5025 5189 integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== 5190 + 5191 + simple-concat@^1.0.0: 5192 + version "1.0.1" 5193 + resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" 5194 + integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q== 5195 + 5196 + simple-get@^4.0.0, simple-get@^4.0.1: 5197 + version "4.0.1" 5198 + resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-4.0.1.tgz#4a39db549287c979d352112fa03fd99fd6bc3543" 5199 + integrity sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA== 5200 + dependencies: 5201 + decompress-response "^6.0.0" 5202 + once "^1.3.1" 5203 + simple-concat "^1.0.0" 5204 + 5205 + simple-swizzle@^0.2.2: 5206 + version "0.2.2" 5207 + resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" 5208 + integrity sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg== 5209 + dependencies: 5210 + is-arrayish "^0.3.1" 5026 5211 5027 5212 slash@^3.0.0: 5028 5213 version "3.0.0" ··· 5215 5400 dependencies: 5216 5401 min-indent "^1.0.0" 5217 5402 5403 + strip-json-comments@~2.0.1: 5404 + version "2.0.1" 5405 + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" 5406 + integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== 5407 + 5218 5408 strip-literal@^0.4.0, strip-literal@^0.4.2: 5219 5409 version "0.4.2" 5220 5410 resolved "https://registry.yarnpkg.com/strip-literal/-/strip-literal-0.4.2.tgz#4f9fa6c38bb157b924e9ace7155ebf8a2342cbcf" ··· 5319 5509 resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" 5320 5510 integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== 5321 5511 5322 - tar-stream@^2.2.0: 5512 + tar-fs@^2.0.0, tar-fs@^2.1.1: 5513 + version "2.1.1" 5514 + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.1.tgz#489a15ab85f1f0befabb370b7de4f9eb5cbe8784" 5515 + integrity sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng== 5516 + dependencies: 5517 + chownr "^1.1.1" 5518 + mkdirp-classic "^0.5.2" 5519 + pump "^3.0.0" 5520 + tar-stream "^2.1.4" 5521 + 5522 + tar-stream@^2.1.4, tar-stream@^2.2.0: 5323 5523 version "2.2.0" 5324 5524 resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" 5325 5525 integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== ··· 5438 5638 version "1.0.6" 5439 5639 resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.6.tgz#85b99583ac3589ec4bfef825b5000aa911d605eb" 5440 5640 integrity sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA== 5641 + 5642 + tunnel-agent@^0.6.0: 5643 + version "0.6.0" 5644 + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" 5645 + integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== 5646 + dependencies: 5647 + safe-buffer "^5.0.1" 5441 5648 5442 5649 type-fest@^0.18.0: 5443 5650 version "0.18.1" ··· 5823 6030 version "8.9.0" 5824 6031 resolved "https://registry.yarnpkg.com/ws/-/ws-8.9.0.tgz#2a994bb67144be1b53fe2d23c53c028adeb7f45e" 5825 6032 integrity sha512-Ja7nszREasGaYUYCI2k4lCKIRTt+y7XuqVoHR44YpI49TtryyqbqvDMn5eqfW7e6HzTukDRIsXqzVHScqRcafg== 6033 + 6034 + xss@^1.0.14: 6035 + version "1.0.14" 6036 + resolved "https://registry.yarnpkg.com/xss/-/xss-1.0.14.tgz#4f3efbde75ad0d82e9921cc3c95e6590dd336694" 6037 + integrity sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw== 6038 + dependencies: 6039 + commander "^2.20.3" 6040 + cssfilter "0.0.10" 5826 6041 5827 6042 xtend@^4.0.2, xtend@~4.0.1: 5828 6043 version "4.0.2"