feat: add types & source to distribution

This commit is contained in:
ayo 2026-05-14 12:31:46 +02:00
parent fc9a5c483d
commit 7a800fd07a
4 changed files with 40 additions and 11 deletions

View file

@ -11,6 +11,7 @@
}, },
"homepage": "https://status-indicator.webcomponent.io", "homepage": "https://status-indicator.webcomponent.io",
"module": "./dist/status-indicator.js", "module": "./dist/status-indicator.js",
"types": "./dist/status-indicator.d.ts",
"exports": { "exports": {
".": { ".": {
"default": "./dist/status-indicator.js", "default": "./dist/status-indicator.js",
@ -19,6 +20,7 @@
} }
}, },
"files": [ "files": [
"src",
"dist", "dist",
"README.md", "README.md",
"LICENSE", "LICENSE",
@ -35,8 +37,8 @@
"@types/node": "^25.6.2", "@types/node": "^25.6.2",
"eslint": "^10.3.0", "eslint": "^10.3.0",
"husky": "^9.1.7", "husky": "^9.1.7",
"unplugin-dts": "^1.0.0", "vite": "^8.0.11",
"vite": "^8.0.11" "vite-plugin-dts": "^5.0.0"
}, },
"peerDependencies": { "peerDependencies": {
"web-component-base": "^4.1.2" "web-component-base": "^4.1.2"

View file

@ -21,12 +21,12 @@ importers:
husky: husky:
specifier: ^9.1.7 specifier: ^9.1.7
version: 9.1.7 version: 9.1.7
unplugin-dts:
specifier: ^1.0.0
version: 1.0.0(typescript@6.0.3)(vite@8.0.11(@types/node@25.6.2))
vite: vite:
specifier: ^8.0.11 specifier: ^8.0.11
version: 8.0.11(@types/node@25.6.2) version: 8.0.11(@types/node@25.6.2)
vite-plugin-dts:
specifier: ^5.0.0
version: 5.0.0(typescript@6.0.3)(vite@8.0.11(@types/node@25.6.2))
packages: packages:
@ -665,6 +665,20 @@ packages:
uri-js@4.4.1: uri-js@4.4.1:
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
vite-plugin-dts@5.0.0:
resolution: {integrity: sha512-VLNAUttBq7pLxxL/m/ztjd5zj5yiviiC7ijfPFVLK5c45FLcibvieBsdjSka3a4ag1qdrAF9K3OysH4/lW+rPQ==}
peerDependencies:
'@microsoft/api-extractor': '>=7'
rollup: '>=3'
vite: '>=3'
peerDependenciesMeta:
'@microsoft/api-extractor':
optional: true
rollup:
optional: true
vite:
optional: true
vite@8.0.11: vite@8.0.11:
resolution: {integrity: sha512-Jz1mxtUBR5xTT65VOdJZUUeoyLtqljmFkiUXhPTLZka3RDc9vpi/xXkyrnsdRcm2lIi3l3GPMnAidTsEGIj3Ow==} resolution: {integrity: sha512-Jz1mxtUBR5xTT65VOdJZUUeoyLtqljmFkiUXhPTLZka3RDc9vpi/xXkyrnsdRcm2lIi3l3GPMnAidTsEGIj3Ow==}
engines: {node: ^20.19.0 || >=22.12.0} engines: {node: ^20.19.0 || >=22.12.0}
@ -1286,6 +1300,20 @@ snapshots:
dependencies: dependencies:
punycode: 2.3.1 punycode: 2.3.1
vite-plugin-dts@5.0.0(typescript@6.0.3)(vite@8.0.11(@types/node@25.6.2)):
dependencies:
unplugin-dts: 1.0.0(typescript@6.0.3)(vite@8.0.11(@types/node@25.6.2))
optionalDependencies:
vite: 8.0.11(@types/node@25.6.2)
transitivePeerDependencies:
- '@rspack/core'
- '@vue/language-core'
- esbuild
- rolldown
- supports-color
- typescript
- webpack
vite@8.0.11(@types/node@25.6.2): vite@8.0.11(@types/node@25.6.2):
dependencies: dependencies:
lightningcss: 1.32.0 lightningcss: 1.32.0

View file

@ -30,6 +30,7 @@ class StatusIndicator extends WebComponent {
} }
get template(): any { get template(): any {
// @ts-ignore: Needs fixing on the base class
const statusColor = this.#indicatorColor[this.props.status] const statusColor = this.#indicatorColor[this.props.status]
return html` return html`

View file

@ -1,23 +1,21 @@
import { resolve } from 'node:path' import { resolve } from 'node:path'
import { defineConfig } from 'vite' import { defineConfig } from 'vite'
import dts from 'unplugin-dts/vite' import dts from 'vite-plugin-dts'
export default defineConfig({ export default defineConfig({
build: { build: {
lib: { lib: {
entry: resolve(import.meta.dirname, 'src/status-indicator.js'), entry: resolve(import.meta.dirname, 'src/status-indicator.ts'),
name: 'StatusIndicator', name: 'StatusIndicator',
fileName: 'status-indicator', fileName: 'status-indicator',
formats: ['es']
}, },
rolldownOptions: { rolldownOptions: {
external: ['web-component-base'], external: ['web-component-base'],
output: { output: {
globals: { globals: {
'WebComponent': 'WebComponent', 'web-component-base': 'web-component-base',
'html': 'html'
} }
} },
} }
}, },
plugins: [dts()] plugins: [dts()]