- attempt to move to ESM from CJS

This commit is contained in:
Mike Penz
2024-12-14 12:25:28 +01:00
parent 8f930b161a
commit 30758be82d
36 changed files with 9574 additions and 10632 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
import {Extractor, PullConfiguration, Regex, Rule} from './pr-collector/types'
import {Extractor, PullConfiguration, Regex, Rule} from './pr-collector/types.js'
export interface Configuration extends PullConfiguration {
template: string
+5 -5
View File
@@ -1,10 +1,10 @@
import * as core from '@actions/core'
import * as github from '@actions/github'
import {mergeConfiguration, parseConfiguration, resolveConfiguration, resolveMode, retrieveRepositoryPath, writeOutput} from './utils'
import {ReleaseNotesBuilder} from './releaseNotesBuilder'
import {Configuration} from './configuration'
import {GithubRepository} from './repositories/GithubRepository'
import {GiteaRepository} from './repositories/GiteaRepository'
import {mergeConfiguration, parseConfiguration, resolveConfiguration, resolveMode, retrieveRepositoryPath, writeOutput} from './utils.js'
import {ReleaseNotesBuilder} from './releaseNotesBuilder.js'
import {Configuration} from './configuration.js'
import {GithubRepository} from './repositories/GithubRepository.js'
import {GiteaRepository} from './repositories/GiteaRepository.js'
async function run(): Promise<void> {
const supportedPlatform = {
+4 -4
View File
@@ -1,9 +1,9 @@
import * as core from '@actions/core'
import moment from 'moment'
import {failOrError} from './utils'
import {PullRequestInfo} from './pullRequests'
import {Options} from './prCollector'
import {BaseRepository} from '../repositories/BaseRepository'
import {failOrError} from './utils.js'
import {PullRequestInfo} from './pullRequests.js'
import {Options} from './prCollector.js'
import {BaseRepository} from '../repositories/BaseRepository.js'
export interface DiffInfo {
changedFiles: number
+1 -1
View File
@@ -1,6 +1,6 @@
import * as exec from '@actions/exec'
import * as io from '@actions/io'
import {directoryExistsSync} from './utils'
import {directoryExistsSync} from './utils.js'
export async function createCommandManager(workingDirectory: string): Promise<GitCommandManager> {
return await GitCommandManager.createCommandManager(workingDirectory)
+6 -6
View File
@@ -1,10 +1,10 @@
import * as core from '@actions/core'
import {PullConfiguration} from './types'
import {TagInfo, Tags} from './tags'
import {failOrError} from './utils'
import {PullRequestInfo, PullRequests} from './pullRequests'
import {Commits, DefaultDiffInfo, DiffInfo, convertCommitsToPrs} from './commits'
import {BaseRepository} from '../repositories/BaseRepository'
import {PullConfiguration} from './types.js'
import {TagInfo, Tags} from './tags.js'
import {failOrError} from './utils.js'
import {PullRequestInfo, PullRequests} from './pullRequests.js'
import {Commits, DefaultDiffInfo, DiffInfo, convertCommitsToPrs} from './commits.js'
import {BaseRepository} from '../repositories/BaseRepository.js'
export interface Options {
owner: string // the owner of the repository
+4 -4
View File
@@ -1,10 +1,10 @@
import * as core from '@actions/core'
import {RestEndpointMethodTypes} from '@octokit/rest'
import moment from 'moment'
import {Property, Sort} from './types'
import {Commits, DiffInfo, filterCommits} from './commits'
import {Options} from './prCollector'
import {BaseRepository} from '../repositories/BaseRepository'
import {Property, Sort} from './types.js'
import {Commits, DiffInfo, filterCommits} from './commits.js'
import {Options} from './prCollector.js'
import {BaseRepository} from '../repositories/BaseRepository.js'
export interface PullRequestInfo {
number: number
+1 -1
View File
@@ -1,5 +1,5 @@
import * as core from '@actions/core'
import {Extractor, Property, Regex, RegexTransformer} from './types'
import {Extractor, Property, Regex, RegexTransformer} from './types.js'
export function validateRegex(regex?: Regex): RegexTransformer | null {
if (regex === undefined) {
+4 -4
View File
@@ -2,11 +2,11 @@ import * as core from '@actions/core'
import * as github from '@actions/github'
import * as semver from 'semver'
import {SemVer} from 'semver'
import {Regex, RegexTransformer, TagResolver} from './types'
import {createCommandManager} from './gitHelper'
import {Regex, RegexTransformer, TagResolver} from './types.js'
import {createCommandManager} from './gitHelper.js'
import moment from 'moment'
import {transformStringToOptionalValue, transformStringToValue, validateRegex} from './regexUtils'
import {BaseRepository} from '../repositories/BaseRepository'
import {transformStringToOptionalValue, transformStringToValue, validateRegex} from './regexUtils.js'
import {BaseRepository} from '../repositories/BaseRepository.js'
export interface TagResult {
from: TagInfo | null
+4 -4
View File
@@ -1,13 +1,13 @@
import * as core from '@actions/core'
import {RegexTransformer, Rule} from './pr-collector/types'
import {PullRequestInfo, retrieveProperty} from './pr-collector/pullRequests'
import {validateRegex} from './pr-collector/regexUtils'
import {RegexTransformer, Rule} from './pr-collector/types.js'
import {PullRequestInfo, retrieveProperty} from './pr-collector/pullRequests.js'
import {validateRegex} from './pr-collector/regexUtils.js'
/**
* Checks if any of the rules match the given PR
*/
export function matchesRules(rules: Rule[], pr: PullRequestInfo, exhaustive: boolean): boolean {
const transformers: RegexTransformer[] = rules.map(rule => validateRegex(rule)).filter(t => t !== null) as RegexTransformer[]
const transformers: RegexTransformer[] = rules.map(rule => validateRegex(rule)).filter(t => t !== null)
if (exhaustive) {
return transformers.every(transformer => {
return matches(pr, transformer, 'rule')
+9 -9
View File
@@ -1,13 +1,13 @@
import * as core from '@actions/core'
import {Configuration} from './configuration'
import {checkExportedData, writeCacheData} from './utils'
import {buildChangelog} from './transform'
import {PullRequestCollector} from './pr-collector/prCollector'
import {failOrError} from './pr-collector/utils'
import {TagInfo} from './pr-collector/tags'
import {DiffInfo} from './pr-collector/commits'
import {PullRequestData, PullRequestInfo} from './pr-collector/pullRequests'
import {BaseRepository} from './repositories/BaseRepository'
import {Configuration} from './configuration.js'
import {checkExportedData, writeCacheData} from './utils.js'
import {buildChangelog} from './transform.js'
import {PullRequestCollector} from './pr-collector/prCollector.js'
import {failOrError} from './pr-collector/utils.js'
import {TagInfo} from './pr-collector/tags.js'
import {DiffInfo} from './pr-collector/commits.js'
import {PullRequestData, PullRequestInfo} from './pr-collector/pullRequests.js'
import {BaseRepository} from './repositories/BaseRepository.js'
export interface ReleaseNotesOptions {
owner: string // the owner of the repository
+5 -5
View File
@@ -1,9 +1,9 @@
import {TagInfo} from '../pr-collector/tags'
import {DiffInfo} from '../pr-collector/commits'
import moment from 'moment/moment'
import {PullRequestInfo} from '../pr-collector/pullRequests'
import {TagInfo} from '../pr-collector/tags.js'
import {DiffInfo} from '../pr-collector/commits.js'
import {PullRequestInfo} from '../pr-collector/pullRequests.js'
import * as core from '@actions/core'
import {createCommandManager} from '../pr-collector/gitHelper'
import {createCommandManager} from '../pr-collector/gitHelper.js'
import moment from 'moment'
export abstract class BaseRepository {
proxy?: string
+5 -5
View File
@@ -1,11 +1,11 @@
import {BaseRepository} from './BaseRepository'
import {TagInfo} from '../pr-collector/tags'
import {CommentInfo, PullRequestInfo} from '../pr-collector/pullRequests'
import {DiffInfo} from '../pr-collector/commits'
import {BaseRepository} from './BaseRepository.js'
import {TagInfo} from '../pr-collector/tags.js'
import {CommentInfo, PullRequestInfo} from '../pr-collector/pullRequests.js'
import {DiffInfo} from '../pr-collector/commits.js'
import {Api, PullRequest, PullReview, giteaApi} from 'gitea-js'
import moment from 'moment'
import * as core from '@actions/core'
import {createCommandManager} from '../pr-collector/gitHelper'
import {createCommandManager} from '../pr-collector/gitHelper.js'
interface Pulls {
closed: PullRequest[]
+6 -6
View File
@@ -1,12 +1,12 @@
import {BaseRepository} from './BaseRepository'
import {BaseRepository} from './BaseRepository.js'
import {Octokit, RestEndpointMethodTypes} from '@octokit/rest'
import {HttpsProxyAgent} from 'https-proxy-agent'
import * as core from '@actions/core'
import {TagInfo} from '../pr-collector/tags'
import moment from 'moment/moment'
import {DiffInfo} from '../pr-collector/commits'
import {CommentInfo, PullData, PullRequestInfo, PullReviewsData, PullsListData} from '../pr-collector/pullRequests'
import {Unpacked} from '../pr-collector/utils'
import {TagInfo} from '../pr-collector/tags.js'
import {DiffInfo} from '../pr-collector/commits.js'
import {CommentInfo, PullData, PullRequestInfo, PullReviewsData, PullsListData} from '../pr-collector/pullRequests.js'
import {Unpacked} from '../pr-collector/utils.js'
import moment from 'moment'
export class GithubRepository extends BaseRepository {
async getDiffRemote(owner: string, repo: string, base: string, head: string): Promise<DiffInfo> {
+8 -8
View File
@@ -1,6 +1,6 @@
import * as core from '@actions/core'
import {Category, Configuration, Placeholder, PlaceholderGroup, Property} from './configuration'
import {createOrSet, groupPlaceholders, haveCommonElementsArr, haveEveryElementsArr, mergeMaps} from './utils'
import {Category, Configuration, Placeholder, PlaceholderGroup, Property} from './configuration.js'
import {createOrSet, groupPlaceholders, haveCommonElementsArr, haveEveryElementsArr, mergeMaps} from './utils.js'
import {
CommentInfo,
EMPTY_COMMENT_INFO,
@@ -9,12 +9,12 @@ import {
PullRequestInfo,
retrieveProperty,
sortPullRequests
} from './pr-collector/pullRequests'
import {DiffInfo} from './pr-collector/commits'
import {transformStringToOptionalValue, transformStringToValues, validateRegex} from './pr-collector/regexUtils'
import {ChangelogStrings, GroupedTemplateContext, PrStrings, Regex, RegexTransformer, TemplateContext} from './pr-collector/types'
import {ReleaseNotesOptions} from './releaseNotesBuilder'
import {matchesRules} from './regexUtils'
} from './pr-collector/pullRequests.js'
import {DiffInfo} from './pr-collector/commits.js'
import {transformStringToOptionalValue, transformStringToValues, validateRegex} from './pr-collector/regexUtils.js'
import {ChangelogStrings, GroupedTemplateContext, PrStrings, Regex, RegexTransformer, TemplateContext} from './pr-collector/types.js'
import {ReleaseNotesOptions} from './releaseNotesBuilder.js'
import {matchesRules} from './regexUtils.js'
let CLEAR = false
+4 -4
View File
@@ -1,11 +1,11 @@
import * as core from '@actions/core'
import * as fs from 'fs'
import * as path from 'path'
import {Configuration, DefaultCommitConfiguration, DefaultConfiguration, Placeholder} from './configuration'
import {Configuration, DefaultCommitConfiguration, DefaultConfiguration, Placeholder} from './configuration.js'
import moment from 'moment'
import {DiffInfo} from './pr-collector/commits'
import {PullRequestInfo} from './pr-collector/pullRequests'
import {Data, ReleaseNotesOptions} from './releaseNotesBuilder'
import {DiffInfo} from './pr-collector/commits.js'
import {PullRequestInfo} from './pr-collector/pullRequests.js'
import {Data, ReleaseNotesOptions} from './releaseNotesBuilder.js'
import {env} from 'process'
/**