This commit is contained in:
David Sanders 2024-11-08 13:29:50 -08:00 коммит произвёл GitHub
Родитель b822859458
Коммит 93c7248b24
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
5 изменённых файлов: 82 добавлений и 36 удалений

Просмотреть файл

@ -1,34 +0,0 @@
version: 2.1
orbs:
cfa: continuousauth/npm@2.1.1
node: electronjs/node@2.3.1
workflows:
test_and_release:
# Run the test jobs first, then the release only when all the test jobs are successful
jobs:
- node/test:
name: test-<< matrix.executor >>-<< matrix.node-version >>
test-steps:
- run: yarn prettier:check
- run: yarn test
use-test-steps: true
matrix:
alias: test
parameters:
executor:
- node/linux
- node/macos
- node/windows
node-version:
- '22.9'
- '20.11'
- cfa/release:
requires:
- test
filters:
branches:
only:
- main
context: cfa-release

35
.github/workflows/release.yml поставляемый Normal file
Просмотреть файл

@ -0,0 +1,35 @@
name: Release
on:
push:
branches:
- main
jobs:
test:
uses: ./.github/workflows/test.yml
release:
name: Release
runs-on: ubuntu-latest
needs: test
environment: npm
permissions:
id-token: write # for CFA and npm provenance
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
persist-credentials: false
- name: Setup Node.js
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
with:
node-version: 20.x
cache: 'yarn'
- name: Install
run: yarn install --frozen-lockfile
- uses: continuousauth/action@c32f05c950d4e6f4abd8d1d8a46269525e2dbf55 # v1.0.3
with:
project-id: ${{ secrets.CFA_PROJECT_ID }}
secret: ${{ secrets.CFA_SECRET }}
npm-token: ${{ secrets.NPM_TOKEN }}

42
.github/workflows/test.yml поставляемый Normal file
Просмотреть файл

@ -0,0 +1,42 @@
name: Test
on:
pull_request:
branches:
- main
schedule:
- cron: '0 22 * * 3'
workflow_call:
permissions:
contents: read
jobs:
test:
name: Test
strategy:
matrix:
node-version:
- '22.9'
- '20.11'
os:
- macos-latest
- ubuntu-latest
- windows-latest
runs-on: "${{ matrix.os }}"
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup Node.js
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
with:
node-version: "${{ matrix.node-version }}"
cache: 'yarn'
- name: Install
run: yarn install --frozen-lockfile
- name: Build
run: yarn build
- name: Lint
run: yarn prettier:check
- name: Test
run: yarn test

Просмотреть файл

@ -2,7 +2,7 @@
This module uses Electron's [JSON API documentation](https://github.com/electron/docs-parser) to produce a TypeScript definition file for the Electron API.
[![CircleCI](https://dl.circleci.com/status-badge/img/gh/electron/typescript-definitions/tree/main.svg?style=shield)](https://dl.circleci.com/status-badge/redirect/gh/electron/typescript-definitions/tree/main)
[![Test](https://github.com/electron/typescript-definitions/actions/workflows/test.yml/badge.svg)](https://github.com/electron/typescript-definitions/actions/workflows/test.yml)
[![npm version](http://img.shields.io/npm/v/@electron/typescript-definitions.svg)](https://npmjs.org/package/@electron/typescript-definitions)
## Installation
@ -33,7 +33,7 @@ import { generateDefinitions } from '@electron/typescript-definitions'
const apiPath = './vendor/electron/docs/api.json'
const definitionLines = generateDefinitions({ electronApi: loadJSON(apiPath) })
// definitionLines will be an strin representation of the definition file
// definitionLines will be an string representation of the definition file
```
## License

Просмотреть файл

@ -24,6 +24,9 @@
"homepage": "https://www.samuelattard.com"
},
"license": "MIT",
"publishConfig": {
"provenance": true
},
"devDependencies": {
"@electron/docs-parser": "^2.0.0",
"@types/debug": "^4.1.12",