nihilqui
Version:
Typescript .d.ts generator from GIR for gjs and node-gtk
178 lines (177 loc) • 5.55 kB
JSON
<%# This template is used if the Option `package` is enabled %>
<%_ let entryPointName = importName _%>
<%_ if (packageName === 'Gjs') { _%>
<%_ entryPointName = 'gjs' _%>
<%_ } _%>
<%_ if (packageName === 'node-gtk') { _%>
<%_ entryPointName = 'node-gtk' _%>
<%_ } _%>
<%_ let depVersion = packageYarn ? 'workspace:^' : APP_VERSION _%>
{
"name": "<%- npmScope %>/<%- importName %>",
<%_ if(typeof girModule !== "undefined"){ _%>
"version": "<%- girModule.libraryVersion %>-<%- APP_VERSION %>",
<%_ } else { _%>
"version": "<%- APP_VERSION %>",
<%_ } _%>
"description": "<%- PACKAGE_DESC %>",
<%_ if (moduleType === 'esm') { _%>
"type": "module",
"module": "<%- entryPointName %>.js",
<%_ } else { _%>
"type": "commonjs",
"module": "<%- entryPointName %>.mjs",
<%_ } _%>
"main": "<%- entryPointName %>.js",
"typedoc": {
"entryPoint": "./<%- entryPointName %>.d.ts",
"readmeFile": "./README.md",
"displayName": "<%- packageName %>",
"tsconfig": "./tsconfig.doc.json"
},
"exports": {
<%_ if (packageName === 'Gjs' && generateAlias) { _%>
"./tsconfig.alias.json": "./tsconfig.alias.json",
<%_ } _%>
<%_ if (packageName === 'Gjs') { _%>
"./ambient": "./ambient.d.ts",
"./gettext": {
<%_ if (moduleType === 'esm') { _%>
"import": {
"types": "./gettext.d.ts",
"default": "./gettext.js"
},
"require": {
"types": "./gettext.d.cts",
"default": "./gettext.cjs"
}
<%_ } else { _%>
"import": {
"types": "./gettext.d.mts",
"default": "./gettext.mjs"
},
"require": {
"types": "./gettext.d.ts",
"default": "./gettext.js"
}
<%_ } _%>
},
"./system": {
<%_ if (moduleType === 'esm') { _%>
"import": {
"types": "./system.d.ts",
"default": "./system.js"
},
"require": {
"types": "./system.d.cts",
"default": "./system.cjs"
}
<%_ } else { _%>
"import": {
"types": "./system.d.mts",
"default": "./system.mjs"
},
"require": {
"types": "./system.d.ts",
"default": "./system.js"
}
<%_ } _%>
},
"./cairo": {
<%_ if (moduleType === 'esm') { _%>
"import": {
"types": "./cairo.d.ts",
"default": "./cairo.js"
},
"require": {
"types": "./cairo.d.cts",
"default": "./cairo.cjs"
}
<%_ } else { _%>
"import": {
"types": "./cairo.d.mts",
"default": "./cairo.mjs"
},
"require": {
"types": "./cairo.d.ts",
"default": "./cairo.js"
}
<%_ } _%>
},
<%_ } _%>
<%_ if (entryPointName === 'gjs') { _%>
"./ambient": "./ambient.d.ts",
<%_ } else if (entryPointName === 'node-gtk') { _%>
"./ambient": "./node-ambient.d.ts",
<%_ } else {_%>
"./ambient": "./<%- entryPointName %>-ambient.d.ts",
"./import": "./<%- entryPointName %>-import.d.ts",
<%_ } _%>
".": {
<%_ if (moduleType === 'esm') { _%>
"import": {
"types": "./<%- entryPointName %>.d.ts",
"default": "./<%- entryPointName %>.js"
},
"require": {
"types": "./<%- entryPointName %>.d.cts",
"default": "./<%- entryPointName %>.cjs"
}
<%_ } else { _%>
"import": {
"types": "./<%- entryPointName %>.d.mts",
"default": "./<%- entryPointName %>.mjs"
},
"require": {
"types": "./<%- entryPointName %>.d.ts",
"default": "./<%- entryPointName %>.js"
}
<%_ } _%>
}
},
"scripts": {
"test": "yarn test:esm && yarn test:cjs",
<%_ if (moduleType === 'esm') { _%>
"test:esm": "tsc --noEmit <%- entryPointName %>.d.ts",
"test:cjs": "tsc --noEmit <%- entryPointName %>.d.cts"
<%_ } else { _%>
"test:esm": "tsc --noEmit <%- entryPointName %>.d.mts",
"test:cjs": "tsc --noEmit <%- entryPointName %>.d.ts"
<%_ } _%>
},
"dependencies": {
<%_ if (packageName !== 'Gjs' && packageName !== 'node-gtk') { _%>
<%_ if (environment === 'node') { _%>
"<%- npmScope %>/node-gtk": "<%- depVersion %>"<%_ if(deps.length > 0 ) { _%>,<%_ } _%>
<%_ } else { _%>
"<%- npmScope %>/gjs": "<%- depVersion %>"<%_ if(deps.length > 0 ) { _%>,<%_ } _%>
<%_ } _%>
<%_ } _%>
<%_ for (let i = 0; i < deps.length; i++ ) { _%>
<%_ if (!packageYarn) { _%>
<%_ girModule = dep.getModule(girModules, deps[i]) _%>
<%_ depVersion = `${girModule.libraryVersion}-${APP_VERSION}` _%>
<%_ } _%>
"<%- deps[i].importPath %>": "<%- depVersion %>"<%_ if(i < deps.length - 1) { _%>,<%_ } _%>
<% } %>
},
<%_ if (environment === 'node') { _%>
"peerDependencies": {
"node-gtk": "*"
},
<%_ } _%>
"devDependencies": {
"typescript": "*"
},
"keywords": [<%- PACKAGE_KEYWORDS %>],
"author": "<%- APP_NAME %>",
"license": "MIT",
"repository": {
"type": "git",
"url": "git+https://github.com/gjsify/types.git"
},
"bugs": {
"url": "https://github.com/gjsify/ts-for-gir/issues"
},
"homepage": "https://github.com/gjsify/types/tree/main/<%- importName %>#readme"
}