feat: organize preset exports

This commit is contained in:
Ayo Ayco 2025-04-07 23:44:01 +01:00
parent 8d7e5df515
commit 2ae36ffb81
6 changed files with 18 additions and 19 deletions

View file

@ -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'
],

View file

@ -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",

View file

@ -1,8 +1,8 @@
import { ServiceWorkerPreset } from '../../types'
import activate from './activate'
const deleteOldCaches: ServiceWorkerPreset = {
export const deleteOldCaches: () => ServiceWorkerPreset = () => ({
activate,
}
})
export default deleteOldCaches

View file

@ -0,0 +1,2 @@
export { staleWhileRevalidate } from './stale-while-revalidate'
export { deleteOldCaches } from './delete-old-caches'

View file

@ -1,7 +0,0 @@
import { ServiceWorkerPreset } from '../../types'
export const activateFn: ServiceWorkerPreset['activate'] = ({ event }) => {
console.info('activating service worker...', event)
}
export default activateFn

View file

@ -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