From 2ae36ffb81b0cc086edbb0e83ee2c95db0177e04 Mon Sep 17 00:00:00 2001 From: ayoayco Date: Mon, 7 Apr 2025 23:44:01 +0100 Subject: [PATCH] feat: organize preset exports --- demo/astro.config.mjs | 4 +++- package/package.json | 12 ++++++++---- package/src/presets/delete-old-caches/index.ts | 4 ++-- package/src/presets/index.ts | 2 ++ .../src/presets/stale-while-revalidate/activate.ts | 7 ------- package/src/presets/stale-while-revalidate/index.ts | 8 +++----- 6 files changed, 18 insertions(+), 19 deletions(-) create mode 100644 package/src/presets/index.ts delete mode 100644 package/src/presets/stale-while-revalidate/activate.ts diff --git a/demo/astro.config.mjs b/demo/astro.config.mjs index b60eaca..1ef409f 100644 --- a/demo/astro.config.mjs +++ b/demo/astro.config.mjs @@ -2,7 +2,8 @@ import { defineConfig } from 'astro/config' import node from '@astrojs/node' -import serviceWorker from '../package/src/astro-sw' +import serviceWorker from '@ayco/astro-sw' +import { deleteOldCaches, staleWhileRevalidate } from '@ayco/astro-sw/presets' export default defineConfig({ output: 'static', @@ -13,6 +14,7 @@ export default defineConfig({ integrations: [ serviceWorker({ path: './src/example_sw.js', + presets: [staleWhileRevalidate(), deleteOldCaches()], customRoutes: [ // '/threads' ], diff --git a/package/package.json b/package/package.json index 0693ded..5ef0ce8 100644 --- a/package/package.json +++ b/package/package.json @@ -16,9 +16,13 @@ "types": "./dist/eslint/globals.d.ts", "default": "./dist/eslint/globals.js" }, - "./presets/**": { - "types": "./dist/presets/**/index.d.ts", - "default": "./dist/presets/**/index.js" + "./presets": { + "types": "./dist/presets/index.d.ts", + "default": "./dist/presets/index.js" + }, + "./presets/*": { + "types": "./dist/presets/*/index.d.ts", + "default": "./dist/presets/*/index.js" } }, "files": [ @@ -30,7 +34,7 @@ "node": ">=18.0.0" }, "scripts": { - "build": "tsup src/**/index.ts src/eslint/globals.ts --format esm --dts --clean", + "build": "tsup src/index.ts src/presets/index.ts src/presets/**/index.ts src/eslint/globals.ts --format esm --dts --clean", "test": "vitest run", "version:patch": "npm version patch", "version:minor": "npm version minor", diff --git a/package/src/presets/delete-old-caches/index.ts b/package/src/presets/delete-old-caches/index.ts index a2fe7fb..629bd73 100644 --- a/package/src/presets/delete-old-caches/index.ts +++ b/package/src/presets/delete-old-caches/index.ts @@ -1,8 +1,8 @@ import { ServiceWorkerPreset } from '../../types' import activate from './activate' -const deleteOldCaches: ServiceWorkerPreset = { +export const deleteOldCaches: () => ServiceWorkerPreset = () => ({ activate, -} +}) export default deleteOldCaches diff --git a/package/src/presets/index.ts b/package/src/presets/index.ts new file mode 100644 index 0000000..b2555e5 --- /dev/null +++ b/package/src/presets/index.ts @@ -0,0 +1,2 @@ +export { staleWhileRevalidate } from './stale-while-revalidate' +export { deleteOldCaches } from './delete-old-caches' diff --git a/package/src/presets/stale-while-revalidate/activate.ts b/package/src/presets/stale-while-revalidate/activate.ts deleted file mode 100644 index ccf7033..0000000 --- a/package/src/presets/stale-while-revalidate/activate.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ServiceWorkerPreset } from '../../types' - -export const activateFn: ServiceWorkerPreset['activate'] = ({ event }) => { - console.info('activating service worker...', event) -} - -export default activateFn diff --git a/package/src/presets/stale-while-revalidate/index.ts b/package/src/presets/stale-while-revalidate/index.ts index 388889c..0ca2afb 100644 --- a/package/src/presets/stale-while-revalidate/index.ts +++ b/package/src/presets/stale-while-revalidate/index.ts @@ -3,14 +3,12 @@ */ import { ServiceWorkerPreset } from '../../types' -import activate from './activate' import install from './install' import fetch from './fetch' -export const presetStaleWhileRevalidate: ServiceWorkerPreset = { - activate, +export const staleWhileRevalidate: () => ServiceWorkerPreset = () => ({ install, fetch, -} +}) -export default presetStaleWhileRevalidate +export default staleWhileRevalidate