add package for publishing types to npm (#2473)
https://www.npmjs.com/package/@vencord/types
This commit is contained in:
		
							parent
							
								
									54817ab506
								
							
						
					
					
						commit
						c3757a2ae6
					
				
					 26 changed files with 1231 additions and 112 deletions
				
			
		
							
								
								
									
										14
									
								
								package.json
									
										
									
									
									
								
							
							
						
						
									
										14
									
								
								package.json
									
										
									
									
									
								
							|  | @ -19,16 +19,17 @@ | |||
|     "scripts": { | ||||
|         "build": "node --require=./scripts/suppressExperimentalWarnings.js scripts/build/build.mjs", | ||||
|         "buildWeb": "node --require=./scripts/suppressExperimentalWarnings.js scripts/build/buildWeb.mjs", | ||||
|         "watch": "node --require=./scripts/suppressExperimentalWarnings.js scripts/build/build.mjs --watch", | ||||
|         "generatePluginJson": "tsx scripts/generatePluginList.ts", | ||||
|         "generateTypes": "tspc --emitDeclarationOnly --declaration --outDir packages/vencord-types", | ||||
|         "inject": "node scripts/runInstaller.mjs", | ||||
|         "uninject": "node scripts/runInstaller.mjs", | ||||
|         "lint": "eslint . --ext .js,.jsx,.ts,.tsx --ignore-pattern src/userplugins", | ||||
|         "lint-styles": "stylelint \"src/**/*.css\" --ignore-pattern src/userplugins", | ||||
|         "lint:fix": "pnpm lint --fix", | ||||
|         "test": "pnpm build && pnpm lint && pnpm lint-styles && pnpm testTsc && pnpm generatePluginJson", | ||||
|         "testWeb": "pnpm lint && pnpm buildWeb && pnpm testTsc", | ||||
|         "testTsc": "tsc --noEmit", | ||||
|         "uninject": "node scripts/runInstaller.mjs", | ||||
|         "watch": "node --require=./scripts/suppressExperimentalWarnings.js scripts/build/build.mjs --watch" | ||||
|         "testTsc": "tsc --noEmit" | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "@sapphi-red/web-noise-suppressor": "0.3.3", | ||||
|  | @ -65,11 +66,12 @@ | |||
|         "standalone-electron-types": "^1.0.0", | ||||
|         "stylelint": "^15.6.0", | ||||
|         "stylelint-config-standard": "^33.0.0", | ||||
|         "ts-patch": "^3.1.2", | ||||
|         "tsx": "^3.12.7", | ||||
|         "type-fest": "^3.9.0", | ||||
|         "typescript": "^5.0.4", | ||||
|         "zip-local": "^0.3.5", | ||||
|         "zustand": "^3.7.2" | ||||
|         "typescript": "^5.4.5", | ||||
|         "typescript-transform-paths": "^3.4.7", | ||||
|         "zip-local": "^0.3.5" | ||||
|     }, | ||||
|     "packageManager": "pnpm@9.1.0", | ||||
|     "pnpm": { | ||||
|  |  | |||
							
								
								
									
										7
									
								
								packages/vencord-types/.gitignore
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								packages/vencord-types/.gitignore
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,7 @@ | |||
| * | ||||
| !.*ignore | ||||
| !package.json | ||||
| !*.md | ||||
| !prepare.ts | ||||
| !index.d.ts | ||||
| !globals.d.ts | ||||
							
								
								
									
										4
									
								
								packages/vencord-types/.npmignore
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								packages/vencord-types/.npmignore
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,4 @@ | |||
| node_modules | ||||
| prepare.ts | ||||
| .gitignore | ||||
| HOW2PUB.md | ||||
							
								
								
									
										5
									
								
								packages/vencord-types/HOW2PUB.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								packages/vencord-types/HOW2PUB.md
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,5 @@ | |||
| # How to publish | ||||
| 
 | ||||
| 1. run `pnpm generateTypes` in the project root | ||||
| 2. bump package.json version | ||||
| 3. npm publish | ||||
							
								
								
									
										11
									
								
								packages/vencord-types/README.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								packages/vencord-types/README.md
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,11 @@ | |||
| # Vencord Types | ||||
| 
 | ||||
| Typings for Vencord's api, published to npm | ||||
| 
 | ||||
| ```sh | ||||
| npm i @vencord/types | ||||
| 
 | ||||
| yarn add @vencord/types | ||||
| 
 | ||||
| pnpm add @vencord/types | ||||
| ``` | ||||
							
								
								
									
										24
									
								
								packages/vencord-types/globals.d.ts
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								packages/vencord-types/globals.d.ts
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| /* | ||||
|  * Vencord, a modification for Discord's desktop app | ||||
|  * Copyright (c) 2022 Vendicated and contributors | ||||
|  * | ||||
|  * This program is free software: you can redistribute it and/or modify | ||||
|  * it under the terms of the GNU General Public License as published by | ||||
|  * the Free Software Foundation, either version 3 of the License, or | ||||
|  * (at your option) any later version. | ||||
|  * | ||||
|  * This program is distributed in the hope that it will be useful, | ||||
|  * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
|  * GNU General Public License for more details. | ||||
|  * | ||||
|  * You should have received a copy of the GNU General Public License | ||||
|  * along with this program.  If not, see <https://www.gnu.org/licenses/>.
 | ||||
| */ | ||||
| 
 | ||||
| declare global { | ||||
|     export var VencordNative: typeof import("./VencordNative").default; | ||||
|     export var Vencord: typeof import("./Vencord"); | ||||
| } | ||||
| 
 | ||||
| export { }; | ||||
							
								
								
									
										5
									
								
								packages/vencord-types/index.d.ts
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								packages/vencord-types/index.d.ts
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,5 @@ | |||
| /* eslint-disable */ | ||||
| 
 | ||||
| /// <reference path="Vencord.d.ts" />
 | ||||
| /// <reference path="globals.d.ts" />
 | ||||
| /// <reference path="modules.d.ts" />
 | ||||
							
								
								
									
										28
									
								
								packages/vencord-types/package.json
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								packages/vencord-types/package.json
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,28 @@ | |||
| { | ||||
|     "name": "@vencord/types", | ||||
|     "private": false, | ||||
|     "version": "0.1.3", | ||||
|     "description": "", | ||||
|     "types": "index.d.ts", | ||||
|     "scripts": { | ||||
|         "prepublishOnly": "tsx ./prepare.ts", | ||||
|         "test": "echo \"Error: no test specified\" && exit 1" | ||||
|     }, | ||||
|     "keywords": [], | ||||
|     "author": "Vencord", | ||||
|     "license": "GPL-3.0", | ||||
|     "devDependencies": { | ||||
|         "@types/fs-extra": "^11.0.4", | ||||
|         "fs-extra": "^11.2.0", | ||||
|         "tsx": "^3.12.6" | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "@types/lodash": "^4.14.191", | ||||
|         "@types/node": "^18.11.18", | ||||
|         "@types/react": "^18.2.0", | ||||
|         "@types/react-dom": "^18.0.10", | ||||
|         "discord-types": "^1.3.26", | ||||
|         "standalone-electron-types": "^1.0.0", | ||||
|         "type-fest": "^3.5.3" | ||||
|     } | ||||
| } | ||||
							
								
								
									
										47
									
								
								packages/vencord-types/prepare.ts
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								packages/vencord-types/prepare.ts
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,47 @@ | |||
| /* | ||||
|  * Vencord, a modification for Discord's desktop app | ||||
|  * Copyright (c) 2023 Vendicated and contributors | ||||
|  * | ||||
|  * This program is free software: you can redistribute it and/or modify | ||||
|  * it under the terms of the GNU General Public License as published by | ||||
|  * the Free Software Foundation, either version 3 of the License, or | ||||
|  * (at your option) any later version. | ||||
|  * | ||||
|  * This program is distributed in the hope that it will be useful, | ||||
|  * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
|  * GNU General Public License for more details. | ||||
|  * | ||||
|  * You should have received a copy of the GNU General Public License | ||||
|  * along with this program.  If not, see <https://www.gnu.org/licenses/>.
 | ||||
| */ | ||||
| 
 | ||||
| import { cpSync, moveSync, readdirSync, rmSync } from "fs-extra"; | ||||
| import { join } from "path"; | ||||
| 
 | ||||
| readdirSync(join(__dirname, "src")) | ||||
|     .forEach(child => moveSync(join(__dirname, "src", child), join(__dirname, child), { overwrite: true })); | ||||
| 
 | ||||
| const VencordSrc = join(__dirname, "..", "..", "src"); | ||||
| 
 | ||||
| for (const file of ["preload.d.ts", "userplugins", "main", "debug", "src", "browser", "scripts"]) { | ||||
|     rmSync(join(__dirname, file), { recursive: true, force: true }); | ||||
| } | ||||
| 
 | ||||
| function copyDtsFiles(from: string, to: string) { | ||||
|     for (const file of readdirSync(from, { withFileTypes: true })) { | ||||
|         // bad
 | ||||
|         if (from === VencordSrc && file.name === "globals.d.ts") continue; | ||||
| 
 | ||||
|         const fullFrom = join(from, file.name); | ||||
|         const fullTo = join(to, file.name); | ||||
| 
 | ||||
|         if (file.isDirectory()) { | ||||
|             copyDtsFiles(fullFrom, fullTo); | ||||
|         } else if (file.name.endsWith(".d.ts")) { | ||||
|             cpSync(fullFrom, fullTo); | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| copyDtsFiles(VencordSrc, __dirname); | ||||
							
								
								
									
										1123
									
								
								pnpm-lock.yaml
									
										
									
										generated
									
									
									
								
							
							
						
						
									
										1123
									
								
								pnpm-lock.yaml
									
										
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										2
									
								
								pnpm-workspace.yaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								pnpm-workspace.yaml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,2 @@ | |||
| packages: | ||||
|     - packages/* | ||||
|  | @ -17,6 +17,7 @@ | |||
| */ | ||||
| 
 | ||||
| export * as Api from "./api"; | ||||
| export * as Components from "./components"; | ||||
| export * as Plugins from "./plugins"; | ||||
| export * as Util from "./utils"; | ||||
| export * as QuickCss from "./utils/quickCss"; | ||||
|  |  | |||
|  | @ -100,6 +100,7 @@ export async function showNotification(data: NotificationData) { | |||
|         const n = new Notification(title, { | ||||
|             body, | ||||
|             icon, | ||||
|             // @ts-expect-error ts is drunk
 | ||||
|             image | ||||
|         }); | ||||
|         n.onclick = onClick; | ||||
|  |  | |||
|  | @ -16,10 +16,12 @@ | |||
|  * along with this program.  If not, see <https://www.gnu.org/licenses/>.
 | ||||
| */ | ||||
| 
 | ||||
| import "./ExpandableHeader.css"; | ||||
| 
 | ||||
| import { classNameFactory } from "@api/Styles"; | ||||
| import { Text, Tooltip, useState } from "@webpack/common"; | ||||
| export const cl = classNameFactory("vc-expandableheader-"); | ||||
| import "./ExpandableHeader.css"; | ||||
| 
 | ||||
| const cl = classNameFactory("vc-expandableheader-"); | ||||
| 
 | ||||
| export interface ExpandableHeaderProps { | ||||
|     onMoreClick?: () => void; | ||||
|  | @ -31,7 +33,7 @@ export interface ExpandableHeaderProps { | |||
|     buttons?: React.ReactNode[]; | ||||
| } | ||||
| 
 | ||||
| export default function ExpandableHeader({ children, onMoreClick, buttons, moreTooltipText, defaultState = false, onDropDownClick, headerText }: ExpandableHeaderProps) { | ||||
| export function ExpandableHeader({ children, onMoreClick, buttons, moreTooltipText, defaultState = false, onDropDownClick, headerText }: ExpandableHeaderProps) { | ||||
|     const [showContent, setShowContent] = useState(defaultState); | ||||
| 
 | ||||
|     return ( | ||||
|  |  | |||
							
								
								
									
										18
									
								
								src/components/index.ts
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								src/components/index.ts
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,18 @@ | |||
| /* | ||||
|  * Vencord, a Discord client mod | ||||
|  * Copyright (c) 2024 Vendicated and contributors | ||||
|  * SPDX-License-Identifier: GPL-3.0-or-later | ||||
|  */ | ||||
| 
 | ||||
| export * from "./Badge"; | ||||
| export * from "./CheckedTextInput"; | ||||
| export * from "./CodeBlock"; | ||||
| export * from "./DonateButton"; | ||||
| export { default as ErrorBoundary } from "./ErrorBoundary"; | ||||
| export * from "./ErrorCard"; | ||||
| export * from "./ExpandableHeader"; | ||||
| export * from "./Flex"; | ||||
| export * from "./Heart"; | ||||
| export * from "./Icons"; | ||||
| export * from "./Link"; | ||||
| export * from "./Switch"; | ||||
							
								
								
									
										2
									
								
								src/modules.d.ts
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								src/modules.d.ts
									
										
									
									
										vendored
									
									
								
							|  | @ -20,7 +20,7 @@ | |||
| /// <reference types="standalone-electron-types"/>
 | ||||
| 
 | ||||
| declare module "~plugins" { | ||||
|     const plugins: Record<string, import("@utils/types").Plugin>; | ||||
|     const plugins: Record<string, import("./utils/types").Plugin>; | ||||
|     export default plugins; | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -9,7 +9,6 @@ import { proxyLazy } from "@utils/lazy"; | |||
| import { Logger } from "@utils/Logger"; | ||||
| import { openModal } from "@utils/modal"; | ||||
| import { OAuth2AuthorizeModal, showToast, Toasts, UserStore, zustandCreate, zustandPersist } from "@webpack/common"; | ||||
| import type { StateStorage } from "zustand/middleware"; | ||||
| 
 | ||||
| import { AUTHORIZE_URL, CLIENT_ID } from "../constants"; | ||||
| 
 | ||||
|  | @ -23,7 +22,7 @@ interface AuthorizationState { | |||
|     isAuthorized: () => boolean; | ||||
| } | ||||
| 
 | ||||
| const indexedDBStorage: StateStorage = { | ||||
| const indexedDBStorage = { | ||||
|     async getItem(name: string): Promise<string | null> { | ||||
|         return DataStore.get(name).then(v => v ?? null); | ||||
|     }, | ||||
|  | @ -36,9 +35,9 @@ const indexedDBStorage: StateStorage = { | |||
| }; | ||||
| 
 | ||||
| // TODO: Move switching accounts subscription inside the store?
 | ||||
| export const useAuthorizationStore = proxyLazy(() => zustandCreate<AuthorizationState>( | ||||
| export const useAuthorizationStore = proxyLazy(() => zustandCreate( | ||||
|     zustandPersist( | ||||
|         (set, get) => ({ | ||||
|         (set: any, get: any) => ({ | ||||
|             token: null, | ||||
|             tokens: {}, | ||||
|             init: () => { set({ token: get().tokens[UserStore.getCurrentUser().id] ?? null }); }, | ||||
|  | @ -91,7 +90,7 @@ export const useAuthorizationStore = proxyLazy(() => zustandCreate<Authorization | |||
|                 )); | ||||
|             }, | ||||
|             isAuthorized: () => !!get().token, | ||||
|         }), | ||||
|         } as AuthorizationState), | ||||
|         { | ||||
|             name: "decor-auth", | ||||
|             getStorage: () => indexedDBStorage, | ||||
|  |  | |||
|  | @ -21,7 +21,7 @@ interface UserDecorationsState { | |||
|     clear: () => void; | ||||
| } | ||||
| 
 | ||||
| export const useCurrentUserDecorationsStore = proxyLazy(() => zustandCreate<UserDecorationsState>((set, get) => ({ | ||||
| export const useCurrentUserDecorationsStore = proxyLazy(() => zustandCreate((set: any, get: any) => ({ | ||||
|     decorations: [], | ||||
|     selectedDecoration: null, | ||||
|     async fetch() { | ||||
|  | @ -53,4 +53,4 @@ export const useCurrentUserDecorationsStore = proxyLazy(() => zustandCreate<User | |||
|         useUsersDecorationsStore.getState().set(UserStore.getCurrentUser().id, decoration ? decorationToAsset(decoration) : null); | ||||
|     }, | ||||
|     clear: () => set({ decorations: [], selectedDecoration: null }) | ||||
| }))); | ||||
| } as UserDecorationsState))); | ||||
|  |  | |||
|  | @ -30,7 +30,7 @@ interface UsersDecorationsState { | |||
|     set: (userId: string, decoration: string | null) => void; | ||||
| } | ||||
| 
 | ||||
| export const useUsersDecorationsStore = proxyLazy(() => zustandCreate<UsersDecorationsState>((set, get) => ({ | ||||
| export const useUsersDecorationsStore = proxyLazy(() => zustandCreate((set: any, get: any) => ({ | ||||
|     usersDecorations: new Map<string, UserDecorationData>(), | ||||
|     fetchQueue: new Set(), | ||||
|     bulkFetch: debounce(async () => { | ||||
|  | @ -40,7 +40,7 @@ export const useUsersDecorationsStore = proxyLazy(() => zustandCreate<UsersDecor | |||
| 
 | ||||
|         set({ fetchQueue: new Set() }); | ||||
| 
 | ||||
|         const fetchIds = Array.from(fetchQueue); | ||||
|         const fetchIds = [...fetchQueue]; | ||||
|         const fetchedUsersDecorations = await getUsersDecorations(fetchIds); | ||||
| 
 | ||||
|         const newUsersDecorations = new Map(usersDecorations); | ||||
|  | @ -92,7 +92,7 @@ export const useUsersDecorationsStore = proxyLazy(() => zustandCreate<UsersDecor | |||
|         newUsersDecorations.set(userId, { asset: decoration, fetchedAt: new Date() }); | ||||
|         set({ usersDecorations: newUsersDecorations }); | ||||
|     } | ||||
| }))); | ||||
| } as UsersDecorationsState))); | ||||
| 
 | ||||
| export function useUserDecorAvatarDecoration(user?: User): AvatarDecoration | null | undefined { | ||||
|     const [decorAvatarDecoration, setDecorAvatarDecoration] = useState<string | null>(user ? useUsersDecorationsStore.getState().getAsset(user.id) ?? null : null); | ||||
|  |  | |||
|  | @ -15,7 +15,7 @@ import { openChangeDecorationModal } from "../modals/ChangeDecorationModal"; | |||
| 
 | ||||
| const CustomizationSection = findByCodeLazy(".customizationSectionBackground"); | ||||
| 
 | ||||
| interface DecorSectionProps { | ||||
| export interface DecorSectionProps { | ||||
|     hideTitle?: boolean; | ||||
|     hideDivider?: boolean; | ||||
|     noMargin?: boolean; | ||||
|  |  | |||
|  | @ -17,7 +17,7 @@ | |||
| */ | ||||
| 
 | ||||
| import ErrorBoundary from "@components/ErrorBoundary"; | ||||
| import ExpandableHeader from "@components/ExpandableHeader"; | ||||
| import { ExpandableHeader } from "@components/ExpandableHeader"; | ||||
| import { classes } from "@utils/misc"; | ||||
| import { filters, findBulk, proxyLazyWebpack } from "@webpack"; | ||||
| import { i18n, PermissionsBits, Text, Tooltip, useMemo, UserStore } from "@webpack/common"; | ||||
|  |  | |||
|  | @ -20,7 +20,7 @@ import "./style.css"; | |||
| 
 | ||||
| import { NavContextMenuPatchCallback } from "@api/ContextMenu"; | ||||
| import ErrorBoundary from "@components/ErrorBoundary"; | ||||
| import ExpandableHeader from "@components/ExpandableHeader"; | ||||
| import { ExpandableHeader } from "@components/ExpandableHeader"; | ||||
| import { OpenExternalIcon } from "@components/Icons"; | ||||
| import { Devs } from "@utils/constants"; | ||||
| import definePlugin from "@utils/types"; | ||||
|  |  | |||
|  | @ -23,9 +23,11 @@ export * from "./constants"; | |||
| export * from "./discord"; | ||||
| export * from "./guards"; | ||||
| export * from "./lazy"; | ||||
| export * from "./lazyReact"; | ||||
| export * from "./localStorage"; | ||||
| export * from "./Logger"; | ||||
| export * from "./margins"; | ||||
| export * from "./mergeDefaults"; | ||||
| export * from "./misc"; | ||||
| export * from "./modal"; | ||||
| export * from "./onlyOnce"; | ||||
|  |  | |||
|  | @ -244,7 +244,7 @@ export interface PluginSettingSliderDef { | |||
|     stickToMarkers?: boolean; | ||||
| } | ||||
| 
 | ||||
| interface IPluginOptionComponentProps { | ||||
| export interface IPluginOptionComponentProps { | ||||
|     /** | ||||
|      * Run this when the value changes. | ||||
|      * | ||||
|  |  | |||
|  | @ -138,10 +138,10 @@ waitFor(["open", "saveAccountChanges"], m => SettingsRouter = m); | |||
| 
 | ||||
| export const { Permissions: PermissionsBits } = findLazy(m => typeof m.Permissions?.ADMINISTRATOR === "bigint") as { Permissions: t.PermissionsBits; }; | ||||
| 
 | ||||
| export const zustandCreate: typeof import("zustand").default = findByCodeLazy("will be removed in v4"); | ||||
| export const zustandCreate = findByCodeLazy("will be removed in v4"); | ||||
| 
 | ||||
| const persistFilter = filters.byCode("[zustand persist middleware]"); | ||||
| export const { persist: zustandPersist }: typeof import("zustand/middleware") = findLazy(m => m.persist && persistFilter(m.persist)); | ||||
| export const { persist: zustandPersist } = findLazy(m => m.persist && persistFilter(m.persist)); | ||||
| 
 | ||||
| export const MessageActions = findByPropsLazy("editMessage", "sendMessage"); | ||||
| export const UserProfileActions = findByPropsLazy("openUserProfileModal", "closeUserProfileModal"); | ||||
|  |  | |||
|  | @ -29,7 +29,15 @@ | |||
|             "@webpack/types": ["./webpack/common/types"], | ||||
|             "@webpack/common": ["./webpack/common"], | ||||
|             "@webpack": ["./webpack/webpack"] | ||||
|         } | ||||
|         }, | ||||
| 
 | ||||
|         "plugins": [ | ||||
|             // Transform paths in output .d.ts files (Include this line if you output declarations files) | ||||
|             { | ||||
|                 "transform": "typescript-transform-paths", | ||||
|                 "afterDeclarations": true | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     "include": ["src/**/*", "browser/**/*", "scripts/**/*"] | ||||
| } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue