From 584e249e7abed61f73b310894d564f24f3845d3d Mon Sep 17 00:00:00 2001 From: Technote Date: Fri, 26 Jun 2020 02:06:06 +0900 Subject: [PATCH 1/6] chore: change indent rule --- .editorconfig | 4 - .eslintrc | 295 +++++++++++++++++++++++++------------------------- 2 files changed, 147 insertions(+), 152 deletions(-) diff --git a/.editorconfig b/.editorconfig index bedce4b..f15441a 100644 --- a/.editorconfig +++ b/.editorconfig @@ -5,10 +5,6 @@ charset = utf-8 end_of_line = lf insert_final_newline = true trim_trailing_whitespace = true -indent_style = tab -indent_size = 4 - -[{*.json,*.yml}] indent_style = space indent_size = 2 diff --git a/.eslintrc b/.eslintrc index 1238f6c..2ddb9cd 100644 --- a/.eslintrc +++ b/.eslintrc @@ -1,150 +1,149 @@ { - "extends": [ - "eslint:recommended", - "plugin:@typescript-eslint/recommended", - "plugin:@typescript-eslint/eslint-recommended" - ], - "plugins": [ - "@typescript-eslint" - ], - "parser": "@typescript-eslint/parser", - "parserOptions": { - "sourceType": "module", - "ecmaVersion": 2018 - }, - "env": { - "node": true, - "jest": true, - "es6": true, - "browser": true - }, - "settings": { - "react": { - "version": "latest" - } - }, - "rules": { - "camelcase": [ - "error", - { - "properties": "always" - } - ], - "require-jsdoc": [ - "error", - { - "require": { - "FunctionDeclaration": true, - "MethodDefinition": true, - "ClassDeclaration": true - } - } - ], - "valid-jsdoc": [ - "error", - { - "requireReturn": false, - "preferType": { - "String": "string", - "Object": "object", - "Number": "number", - "Function": "function", - "Void": "void" - } - } - ], - "quotes": [ - "error", - "single", - "avoid-escape" - ], - "key-spacing": [ - "error", - { - "singleLine": { - "beforeColon": false, - "afterColon": true - }, - "multiLine": { - "beforeColon": false, - "afterColon": true - } - } - ], - "no-magic-numbers": [ - "error", - { - "ignoreArrayIndexes": true - } - ], - "eqeqeq": "error", - "block-scoped-var": "error", - "complexity": [ - "error", - { - "maximum": 20 - } - ], - "curly": "error", - "default-case": "error", - "dot-location": [ - "error", - "property" - ], - "guard-for-in": "error", - "no-eval": "error", - "block-spacing": "error", - "brace-style": "error", - "comma-spacing": [ - "error", - { - "before": false, - "after": true - } - ], - "id-length": [ - "error", - { - "min": 2, - "properties": "never", - "exceptions": [ - "$" - ] - } - ], - "indent": [ - "error", - "tab", - { - "MemberExpression": "off", - "SwitchCase": 1 - } - ], - "space-before-function-paren": [ - "error", - "never" - ], - "space-before-blocks": "error", - "prefer-const": "error", - "no-var": "error", - "arrow-body-style": "off", - "arrow-spacing": "error", - "strict": [ - "error" - ], - "no-warning-comments": [ - "warn", - { - "terms": [ - "todo", - "fixme", - "hack" - ], - "location": "anywhere" - } - ], - "semi": [ - "error" - ] - } + "extends": [ + "eslint:recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/eslint-recommended" + ], + "plugins": [ + "@typescript-eslint" + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "sourceType": "module", + "ecmaVersion": 2018 + }, + "env": { + "node": true, + "jest": true, + "es6": true, + "browser": true + }, + "settings": { + "react": { + "version": "latest" + } + }, + "rules": { + "camelcase": [ + "error", + { + "properties": "always" + } + ], + "require-jsdoc": [ + "error", + { + "require": { + "FunctionDeclaration": true, + "MethodDefinition": true, + "ClassDeclaration": true + } + } + ], + "valid-jsdoc": [ + "error", + { + "requireReturn": false, + "preferType": { + "String": "string", + "Object": "object", + "Number": "number", + "Function": "function", + "Void": "void" + } + } + ], + "quotes": [ + "error", + "single", + "avoid-escape" + ], + "key-spacing": [ + "error", + { + "singleLine": { + "beforeColon": false, + "afterColon": true + }, + "multiLine": { + "beforeColon": false, + "afterColon": true + } + } + ], + "no-magic-numbers": [ + "error", + { + "ignoreArrayIndexes": true + } + ], + "eqeqeq": "error", + "block-scoped-var": "error", + "complexity": [ + "error", + { + "maximum": 20 + } + ], + "curly": "error", + "default-case": "error", + "dot-location": [ + "error", + "property" + ], + "guard-for-in": "error", + "no-eval": "error", + "block-spacing": "error", + "brace-style": "error", + "comma-spacing": [ + "error", + { + "before": false, + "after": true + } + ], + "id-length": [ + "error", + { + "min": 2, + "properties": "never", + "exceptions": [ + "$" + ] + } + ], + "indent": [ + "error", + 2, + { + "SwitchCase": 1 + } + ], + "space-before-function-paren": [ + "error", + "never" + ], + "space-before-blocks": "error", + "prefer-const": "error", + "no-var": "error", + "arrow-body-style": "off", + "arrow-spacing": "error", + "strict": [ + "error" + ], + "no-warning-comments": [ + "warn", + { + "terms": [ + "todo", + "fixme", + "hack" + ], + "location": "anywhere" + } + ], + "semi": [ + "error" + ] + } } From bda5b0748fb636d7897058af5d1d8b453f6f9ab6 Mon Sep 17 00:00:00 2001 From: Technote Date: Fri, 26 Jun 2020 02:06:29 +0900 Subject: [PATCH 2/6] chore: code formattings --- __tests__/utils/commit.test.ts | 264 ++++++++++++------------- __tests__/utils/misc.test.ts | 114 +++++------ __tests__/utils/version.test.ts | 338 ++++++++++++++++---------------- jest.config.js | 22 +-- src/constant.ts | 6 +- src/types.ts | 14 +- src/utils/commit.ts | 24 +-- src/utils/misc.ts | 92 ++++----- src/utils/version.ts | 62 +++--- 9 files changed, 468 insertions(+), 468 deletions(-) diff --git a/__tests__/utils/commit.test.ts b/__tests__/utils/commit.test.ts index 68cca28..62dde26 100644 --- a/__tests__/utils/commit.test.ts +++ b/__tests__/utils/commit.test.ts @@ -2,154 +2,154 @@ import nock from 'nock'; import { resolve } from 'path'; import { - generateContext, - disableNetConnect, - getApiFixture, - getOctokit, + generateContext, + disableNetConnect, + getApiFixture, + getOctokit, } from '@technote-space/github-action-test-helper'; import { getCommits } from '../../src/utils/commit'; const fixtureRootDir = resolve(__dirname, '..', 'fixtures'); const octokit = getOctokit(); const context = generateContext({owner: 'hello', repo: 'world', ref: 'refs/pull/123/merge'}, { - payload: { - number: 123, - 'pull_request': { - head: { - ref: 'feature/change', - }, - }, - }, + payload: { + number: 123, + 'pull_request': { + head: { + ref: 'feature/change', + }, + }, + }, }); describe('getCommits', () => { - disableNetConnect(nock); + disableNetConnect(nock); - it('should list commits 1', async() => { - nock('https://api.github.com') - .persist() - .get('/repos/hello/world/pulls/123/commits') - .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list1')); + it('should list commits 1', async() => { + nock('https://api.github.com') + .persist() + .get('/repos/hello/world/pulls/123/commits') + .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list1')); - const commits = await getCommits(['feat', 'chore'], ['trigger workflow'], ['BREAKING CHANGE'], octokit, context); + const commits = await getCommits(['feat', 'chore'], ['trigger workflow'], ['BREAKING CHANGE'], octokit, context); - expect(commits).toHaveLength(0); - }); + expect(commits).toHaveLength(0); + }); - it('should list commits 2', async() => { - nock('https://api.github.com') - .persist() - .get('/repos/hello/world/pulls/123/commits') - .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list2')); + it('should list commits 2', async() => { + nock('https://api.github.com') + .persist() + .get('/repos/hello/world/pulls/123/commits') + .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list2')); - const commits = await getCommits(['feat', 'chore'], ['trigger workflow'], ['BREAKING CHANGE'], octokit, context); + const commits = await getCommits(['feat', 'chore'], ['trigger workflow'], ['BREAKING CHANGE'], octokit, context); - expect(commits).toHaveLength(4); - expect(commits).toEqual([ - { - 'type': 'chore', - 'message': 'tweaks', - 'normalized': 'chore: tweaks', - 'original': 'chore: tweaks', - 'children': [], - 'notes': [], - 'sha': '2dcb09b5b57875f334f61aebed695e2e4193db5e', - }, - { - 'type': 'feat', - 'message': 'add new features', - 'normalized': 'feat: add new features', - 'original': 'feat!: add new features', - 'children': [ - { - 'type': 'feat', - 'message': 'add new feature1 (#123)', - 'normalized': 'feat: add new feature1 (#123)', - 'original': 'feat: add new feature1 (#123)', - }, - { - 'type': 'feat', - 'message': 'add new feature2 (#234)', - 'normalized': 'feat: add new feature2 (#234)', - 'original': 'feat: add new feature2 (#234)', - }, - ], - 'notes': ['BREAKING CHANGE: changed'], - 'sha': '3dcb09b5b57875f334f61aebed695e2e4193db5e', - }, - { - 'type': 'feat', - 'message': 'add new feature3', - 'normalized': 'feat: add new feature3', - 'original': 'feat : add new feature3', - 'children': [], - 'notes': [], - 'sha': '4dcb09b5b57875f334f61aebed695e2e4193db5e', - }, - { - 'type': 'chore', - 'message': 'tweaks', - 'normalized': 'chore: tweaks', - 'original': 'chore: tweaks', - 'children': [], - 'notes': [], - 'sha': '9dcb09b5b57875f334f61aebed695e2e4193db5e', - }, - ]); - }); + expect(commits).toHaveLength(4); + expect(commits).toEqual([ + { + 'type': 'chore', + 'message': 'tweaks', + 'normalized': 'chore: tweaks', + 'original': 'chore: tweaks', + 'children': [], + 'notes': [], + 'sha': '2dcb09b5b57875f334f61aebed695e2e4193db5e', + }, + { + 'type': 'feat', + 'message': 'add new features', + 'normalized': 'feat: add new features', + 'original': 'feat!: add new features', + 'children': [ + { + 'type': 'feat', + 'message': 'add new feature1 (#123)', + 'normalized': 'feat: add new feature1 (#123)', + 'original': 'feat: add new feature1 (#123)', + }, + { + 'type': 'feat', + 'message': 'add new feature2 (#234)', + 'normalized': 'feat: add new feature2 (#234)', + 'original': 'feat: add new feature2 (#234)', + }, + ], + 'notes': ['BREAKING CHANGE: changed'], + 'sha': '3dcb09b5b57875f334f61aebed695e2e4193db5e', + }, + { + 'type': 'feat', + 'message': 'add new feature3', + 'normalized': 'feat: add new feature3', + 'original': 'feat : add new feature3', + 'children': [], + 'notes': [], + 'sha': '4dcb09b5b57875f334f61aebed695e2e4193db5e', + }, + { + 'type': 'chore', + 'message': 'tweaks', + 'normalized': 'chore: tweaks', + 'original': 'chore: tweaks', + 'children': [], + 'notes': [], + 'sha': '9dcb09b5b57875f334f61aebed695e2e4193db5e', + }, + ]); + }); - it('should list commits 3', async() => { - nock('https://api.github.com') - .persist() - .get('/repos/hello/world/pulls/123/commits') - .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list3')); + it('should list commits 3', async() => { + nock('https://api.github.com') + .persist() + .get('/repos/hello/world/pulls/123/commits') + .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list3')); - const commits = await getCommits(['feat', 'chore'], ['trigger workflow'], ['BREAKING CHANGE'], octokit, context); + const commits = await getCommits(['feat', 'chore'], ['trigger workflow'], ['BREAKING CHANGE'], octokit, context); - expect(commits).toEqual([ - { - 'type': 'chore', - 'message': 'tweaks', - 'normalized': 'chore: tweaks', - 'original': 'chore: tweaks', - 'children': [], - 'notes': [], - 'sha': '2dcb09b5b57875f334f61aebed695e2e4193db5e', - }, - { - 'type': 'feat', - 'message': 'add new feature3', - 'normalized': 'feat: add new feature3', - 'original': 'feat : add new feature3', - 'children': [], - 'notes': [], - 'sha': '4dcb09b5b57875f334f61aebed695e2e4193db5e', - }, - { - 'type': 'chore', - 'message': 'trigger workflow', - 'normalized': 'chore: trigger workflow', - 'original': 'chore: trigger workflow', - 'children': [ - { - 'type': 'feat', - 'message': 'test', - 'normalized': 'feat: test', - 'original': 'feat: test', - }, - ], - 'notes': [], - 'sha': '8dcb09b5b57875f334f61aebed695e2e4193db5e', - }, - { - 'type': 'chore', - 'message': 'tweaks', - 'normalized': 'chore: tweaks', - 'original': 'chore: tweaks', - 'children': [], - 'notes': [], - 'sha': '9dcb09b5b57875f334f61aebed695e2e4193db5e', - }, - ]); - }); + expect(commits).toEqual([ + { + 'type': 'chore', + 'message': 'tweaks', + 'normalized': 'chore: tweaks', + 'original': 'chore: tweaks', + 'children': [], + 'notes': [], + 'sha': '2dcb09b5b57875f334f61aebed695e2e4193db5e', + }, + { + 'type': 'feat', + 'message': 'add new feature3', + 'normalized': 'feat: add new feature3', + 'original': 'feat : add new feature3', + 'children': [], + 'notes': [], + 'sha': '4dcb09b5b57875f334f61aebed695e2e4193db5e', + }, + { + 'type': 'chore', + 'message': 'trigger workflow', + 'normalized': 'chore: trigger workflow', + 'original': 'chore: trigger workflow', + 'children': [ + { + 'type': 'feat', + 'message': 'test', + 'normalized': 'feat: test', + 'original': 'feat: test', + }, + ], + 'notes': [], + 'sha': '8dcb09b5b57875f334f61aebed695e2e4193db5e', + }, + { + 'type': 'chore', + 'message': 'tweaks', + 'normalized': 'chore: tweaks', + 'original': 'chore: tweaks', + 'children': [], + 'notes': [], + 'sha': '9dcb09b5b57875f334f61aebed695e2e4193db5e', + }, + ]); + }); }); diff --git a/__tests__/utils/misc.test.ts b/__tests__/utils/misc.test.ts index ffdcdd1..35cd4fd 100644 --- a/__tests__/utils/misc.test.ts +++ b/__tests__/utils/misc.test.ts @@ -1,67 +1,67 @@ import { parseLine, parseCommitMessage } from '../../src/utils/misc'; describe('parseLine', () => { - it('should return empty', () => { - expect(parseLine('')).toBeUndefined(); - expect(parseLine('test message')).toBeUndefined(); - }); + it('should return empty', () => { + expect(parseLine('')).toBeUndefined(); + expect(parseLine('test message')).toBeUndefined(); + }); - it('should parse line', () => { - expect(parseLine('chore: test message')).toEqual({ - type: 'chore', - message: 'test message', - normalized: 'chore: test message', - original: 'chore: test message', - }); - expect(parseLine('feat!: test message')).toEqual({ - type: 'feat', - message: 'test message', - normalized: 'feat: test message', - original: 'feat!: test message', - }); - }); + it('should parse line', () => { + expect(parseLine('chore: test message')).toEqual({ + type: 'chore', + message: 'test message', + normalized: 'chore: test message', + original: 'chore: test message', + }); + expect(parseLine('feat!: test message')).toEqual({ + type: 'feat', + message: 'test message', + normalized: 'feat: test message', + original: 'feat!: test message', + }); + }); }); describe('parseCommitMessage', () => { - it('should return empty', () => { - expect(parseCommitMessage('', [], [], [])).toBeUndefined(); - expect(parseCommitMessage('abc: test message', ['feat'], [], [])).toBeUndefined(); - expect(parseCommitMessage('feat: test message\nBREAKING CHANGE: test', ['feat'], ['TEST MESSAGE'], [])).toBeUndefined(); - }); + it('should return empty', () => { + expect(parseCommitMessage('', [], [], [])).toBeUndefined(); + expect(parseCommitMessage('abc: test message', ['feat'], [], [])).toBeUndefined(); + expect(parseCommitMessage('feat: test message\nBREAKING CHANGE: test', ['feat'], ['TEST MESSAGE'], [])).toBeUndefined(); + }); - it('should parse commit message', () => { - expect(parseCommitMessage('feat: test message', ['feat'], [], [])).toEqual({ - type: 'feat', - message: 'test message', - normalized: 'feat: test message', - original: 'feat: test message', - children: [], - notes: [], - }); - }); + it('should parse commit message', () => { + expect(parseCommitMessage('feat: test message', ['feat'], [], [])).toEqual({ + type: 'feat', + message: 'test message', + normalized: 'feat: test message', + original: 'feat: test message', + children: [], + notes: [], + }); + }); - it('should parse commit message with children', () => { - expect(parseCommitMessage( - 'feat : add features \nfeat: feature1\nfeat: feature2\n\nchore: tweaks\nBREAKING CHANGE: changed', - ['feat'], - ['feature1'], - ['BREAKING CHANGE']), - ).toEqual({ - type: 'feat', - message: 'add features', - normalized: 'feat: add features', - original: 'feat : add features', - children: [ - { - type: 'feat', - message: 'feature2', - normalized: 'feat: feature2', - original: 'feat: feature2', - }, - ], - notes: [ - 'BREAKING CHANGE: changed', - ], - }); - }); + it('should parse commit message with children', () => { + expect(parseCommitMessage( + 'feat : add features \nfeat: feature1\nfeat: feature2\n\nchore: tweaks\nBREAKING CHANGE: changed', + ['feat'], + ['feature1'], + ['BREAKING CHANGE']), + ).toEqual({ + type: 'feat', + message: 'add features', + normalized: 'feat: add features', + original: 'feat : add features', + children: [ + { + type: 'feat', + message: 'feature2', + normalized: 'feat: feature2', + original: 'feat: feature2', + }, + ], + notes: [ + 'BREAKING CHANGE: changed', + ], + }); + }); }); diff --git a/__tests__/utils/version.test.ts b/__tests__/utils/version.test.ts index d92aaa4..682cf45 100644 --- a/__tests__/utils/version.test.ts +++ b/__tests__/utils/version.test.ts @@ -3,197 +3,197 @@ import { Logger, ApiHelper } from '@technote-space/github-action-helper'; import nock from 'nock'; import { resolve } from 'path'; import { - generateContext, - disableNetConnect, - getApiFixture, - getOctokit, - spyOnStdout, - stdoutCalledWith, - getLogStdout, + generateContext, + disableNetConnect, + getApiFixture, + getOctokit, + spyOnStdout, + stdoutCalledWith, + getLogStdout, } from '@technote-space/github-action-test-helper'; import { getCurrentVersion, whatBump, getNextVersionLevel, getNextVersion } from '../../src/utils/version'; const fixtureRootDir = resolve(__dirname, '..', 'fixtures'); const octokit = getOctokit(); const context = generateContext({owner: 'hello', repo: 'world', ref: 'refs/pull/123/merge'}, { - payload: { - number: 123, - 'pull_request': { - head: { - ref: 'feature/change', - }, - }, - }, + payload: { + number: 123, + 'pull_request': { + head: { + ref: 'feature/change', + }, + }, + }, }); const logger = new Logger(); const helper = new ApiHelper(octokit, context, logger); describe('getCurrentVersion', () => { - disableNetConnect(nock); + disableNetConnect(nock); - it('should get current version 1', async() => { - nock('https://api.github.com') - .persist() - .get('/repos/hello/world/git/matching-refs/tags/') - .reply(200, () => getApiFixture(fixtureRootDir, 'repos.git.matching-refs')); + it('should get current version 1', async() => { + nock('https://api.github.com') + .persist() + .get('/repos/hello/world/git/matching-refs/tags/') + .reply(200, () => getApiFixture(fixtureRootDir, 'repos.git.matching-refs')); - expect(await getCurrentVersion(helper)).toBe('v2.0.0'); - }); + expect(await getCurrentVersion(helper)).toBe('v2.0.0'); + }); - it('should get current version 2', async() => { - nock('https://api.github.com') - .persist() - .get('/repos/hello/world/git/matching-refs/tags/') - .reply(200, () => []); + it('should get current version 2', async() => { + nock('https://api.github.com') + .persist() + .get('/repos/hello/world/git/matching-refs/tags/') + .reply(200, () => []); - expect(await getCurrentVersion(helper)).toBe('v0.0.0'); - }); + expect(await getCurrentVersion(helper)).toBe('v0.0.0'); + }); }); describe('whatBump', () => { - it('should return major', () => { - expect(whatBump([], [ - {notes: ['BREAKING CHANGE: test']}, - {type: 'chore', notes: []}, - {type: 'style', notes: []}, - {type: 'feat', notes: []}, - ])).toBe('major'); - }); - - it('should return minor', () => { - expect(whatBump(['feat'], [ - {type: 'chore', notes: []}, - {type: 'style', notes: []}, - {type: 'feat', notes: []}, - ])).toBe('minor'); - }); - - it('should return patch', () => { - expect(whatBump([], [])).toBe('patch'); - expect(whatBump(['feat'], [ - {type: 'chore', notes: []}, - {type: 'style', notes: []}, - ])).toBe('patch'); - }); + it('should return major', () => { + expect(whatBump([], [ + {notes: ['BREAKING CHANGE: test']}, + {type: 'chore', notes: []}, + {type: 'style', notes: []}, + {type: 'feat', notes: []}, + ])).toBe('major'); + }); + + it('should return minor', () => { + expect(whatBump(['feat'], [ + {type: 'chore', notes: []}, + {type: 'style', notes: []}, + {type: 'feat', notes: []}, + ])).toBe('minor'); + }); + + it('should return patch', () => { + expect(whatBump([], [])).toBe('patch'); + expect(whatBump(['feat'], [ + {type: 'chore', notes: []}, + {type: 'style', notes: []}, + ])).toBe('patch'); + }); }); describe('getNextVersionLevel', () => { - it('should return major level', () => { - expect(getNextVersionLevel([], [ - {type: 'test', notes: ['BREAKING CHANGE: test']}, - ])).toBe(0); - }); - - it('should return minor level', () => { - expect(getNextVersionLevel(['feat'], [ - {type: 'feat', notes: []}, - ])).toBe(1); - }); - - it('should return patch level', () => { - expect(getNextVersionLevel([], [])).toBe(2); - expect(getNextVersionLevel(['feat'], [ - {type: 'chore', notes: []}, - {type: 'style', notes: []}, - ])).toBe(2); - }); + it('should return major level', () => { + expect(getNextVersionLevel([], [ + {type: 'test', notes: ['BREAKING CHANGE: test']}, + ])).toBe(0); + }); + + it('should return minor level', () => { + expect(getNextVersionLevel(['feat'], [ + {type: 'feat', notes: []}, + ])).toBe(1); + }); + + it('should return patch level', () => { + expect(getNextVersionLevel([], [])).toBe(2); + expect(getNextVersionLevel(['feat'], [ + {type: 'chore', notes: []}, + {type: 'style', notes: []}, + ])).toBe(2); + }); }); describe('getNextVersion', () => { - disableNetConnect(nock); - - it('should get next version 1-1', async() => { - nock('https://api.github.com') - .persist() - .get('/repos/hello/world/git/matching-refs/tags/') - .reply(200, () => []) - .get('/repos/hello/world/pulls/123/commits') - .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list1')); - - expect(await getNextVersion([], [], [], helper, octokit, context)).toBe('v0.0.1'); - }); - - it('should get next version 1-2', async() => { - nock('https://api.github.com') - .persist() - .get('/repos/hello/world/git/matching-refs/tags/') - .reply(200, () => []) - .get('/repos/hello/world/pulls/123/commits') - .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list1')); - - expect(await getNextVersion(['fix'], [], [], helper, octokit, context)).toBe('v0.1.0'); - }); - - it('should get next version 1-3', async() => { - nock('https://api.github.com') - .persist() - .get('/repos/hello/world/git/matching-refs/tags/') - .reply(200, () => []) - .get('/repos/hello/world/pulls/123/commits') - .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list1')); - - expect(await getNextVersion(['fix'], ['all the bugs'], [], helper, octokit, context)).toBe('v0.0.1'); - }); - - it('should get next version 2', async() => { - nock('https://api.github.com') - .persist() - .get('/repos/hello/world/git/matching-refs/tags/') - .reply(200, () => getApiFixture(fixtureRootDir, 'repos.git.matching-refs')) - .get('/repos/hello/world/pulls/123/commits') - .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list2')); - - expect(await getNextVersion([], [], ['BREAKING CHANGE'], helper, octokit, context)).toBe('v3.0.0'); - }); - - it('should get next version 3', async() => { - const mockStdout = spyOnStdout(); - - nock('https://api.github.com') - .persist() - .get('/repos/hello/world/git/matching-refs/tags/') - .reply(200, () => getApiFixture(fixtureRootDir, 'repos.git.matching-refs')) - .get('/repos/hello/world/pulls/123/commits') - .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list3')); - - expect(await getNextVersion(['feat'], [], ['BREAKING CHANGE'], helper, octokit, context)).toBe('v2.1.0'); - - stdoutCalledWith(mockStdout, []); - }); - - it('should get next version with stdout', async() => { - const mockStdout = spyOnStdout(); - - nock('https://api.github.com') - .persist() - .get('/repos/hello/world/git/matching-refs/tags/') - .reply(200, () => getApiFixture(fixtureRootDir, 'repos.git.matching-refs')) - .get('/repos/hello/world/pulls/123/commits') - .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list2')); - - expect(await getNextVersion(['style'], [], ['BREAKING CHANGE'], helper, octokit, context, logger)).toBe('v3.0.0'); - - stdoutCalledWith(mockStdout, [ - '::group::Target commits:', - getLogStdout([ - { - 'type': 'feat', - 'message': 'add new features', - 'notes': [ - 'BREAKING CHANGE: changed', - ], - 'sha': '3dcb09b5b57875f334f61aebed695e2e4193db5e', - }, - { - 'type': 'style', - 'message': 'tweaks', - 'notes': [], - 'sha': '7dcb09b5b57875f334f61aebed695e2e4193db5e', - }, - ]), - '::endgroup::', - '> Current version: v2.0.0', - '> Next version: v3.0.0', - ]); - }); + disableNetConnect(nock); + + it('should get next version 1-1', async() => { + nock('https://api.github.com') + .persist() + .get('/repos/hello/world/git/matching-refs/tags/') + .reply(200, () => []) + .get('/repos/hello/world/pulls/123/commits') + .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list1')); + + expect(await getNextVersion([], [], [], helper, octokit, context)).toBe('v0.0.1'); + }); + + it('should get next version 1-2', async() => { + nock('https://api.github.com') + .persist() + .get('/repos/hello/world/git/matching-refs/tags/') + .reply(200, () => []) + .get('/repos/hello/world/pulls/123/commits') + .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list1')); + + expect(await getNextVersion(['fix'], [], [], helper, octokit, context)).toBe('v0.1.0'); + }); + + it('should get next version 1-3', async() => { + nock('https://api.github.com') + .persist() + .get('/repos/hello/world/git/matching-refs/tags/') + .reply(200, () => []) + .get('/repos/hello/world/pulls/123/commits') + .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list1')); + + expect(await getNextVersion(['fix'], ['all the bugs'], [], helper, octokit, context)).toBe('v0.0.1'); + }); + + it('should get next version 2', async() => { + nock('https://api.github.com') + .persist() + .get('/repos/hello/world/git/matching-refs/tags/') + .reply(200, () => getApiFixture(fixtureRootDir, 'repos.git.matching-refs')) + .get('/repos/hello/world/pulls/123/commits') + .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list2')); + + expect(await getNextVersion([], [], ['BREAKING CHANGE'], helper, octokit, context)).toBe('v3.0.0'); + }); + + it('should get next version 3', async() => { + const mockStdout = spyOnStdout(); + + nock('https://api.github.com') + .persist() + .get('/repos/hello/world/git/matching-refs/tags/') + .reply(200, () => getApiFixture(fixtureRootDir, 'repos.git.matching-refs')) + .get('/repos/hello/world/pulls/123/commits') + .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list3')); + + expect(await getNextVersion(['feat'], [], ['BREAKING CHANGE'], helper, octokit, context)).toBe('v2.1.0'); + + stdoutCalledWith(mockStdout, []); + }); + + it('should get next version with stdout', async() => { + const mockStdout = spyOnStdout(); + + nock('https://api.github.com') + .persist() + .get('/repos/hello/world/git/matching-refs/tags/') + .reply(200, () => getApiFixture(fixtureRootDir, 'repos.git.matching-refs')) + .get('/repos/hello/world/pulls/123/commits') + .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list2')); + + expect(await getNextVersion(['style'], [], ['BREAKING CHANGE'], helper, octokit, context, logger)).toBe('v3.0.0'); + + stdoutCalledWith(mockStdout, [ + '::group::Target commits:', + getLogStdout([ + { + 'type': 'feat', + 'message': 'add new features', + 'notes': [ + 'BREAKING CHANGE: changed', + ], + 'sha': '3dcb09b5b57875f334f61aebed695e2e4193db5e', + }, + { + 'type': 'style', + 'message': 'tweaks', + 'notes': [], + 'sha': '7dcb09b5b57875f334f61aebed695e2e4193db5e', + }, + ]), + '::endgroup::', + '> Current version: v2.0.0', + '> Next version: v3.0.0', + ]); + }); }); diff --git a/jest.config.js b/jest.config.js index 92a6974..a70e9b4 100644 --- a/jest.config.js +++ b/jest.config.js @@ -1,13 +1,13 @@ module.exports = { - clearMocks: true, - moduleFileExtensions: ['js', 'ts'], - setupFiles: ['/jest.setup.ts'], - testEnvironment: 'node', - testMatch: ['**/*.test.ts'], - testRunner: 'jest-circus/runner', - transform: { - '^.+\\.ts$': 'ts-jest', - }, - verbose: true, - coverageDirectory: '/coverage', + clearMocks: true, + moduleFileExtensions: ['js', 'ts'], + setupFiles: ['/jest.setup.ts'], + testEnvironment: 'node', + testMatch: ['**/*.test.ts'], + testRunner: 'jest-circus/runner', + transform: { + '^.+\\.ts$': 'ts-jest', + }, + verbose: true, + coverageDirectory: '/coverage', }; diff --git a/src/constant.ts b/src/constant.ts index f0ec85b..9435d1e 100644 --- a/src/constant.ts +++ b/src/constant.ts @@ -3,7 +3,7 @@ export const SEMANTIC_MESSAGE_PATTERN = /^(.+?)!?\s*(\(.+?\)\s*)?:\s*(.+?)\s*$/; export const MERGE_MESSAGE_PATTERN = /^Merge pull request #\d+ /; export const VERSION_BUMP = { - 'major': 0, - 'minor': 1, - 'patch': 2, + 'major': 0, + 'minor': 1, + 'patch': 2, } as const; diff --git a/src/types.ts b/src/types.ts index 7d427a2..2b67baf 100644 --- a/src/types.ts +++ b/src/types.ts @@ -1,15 +1,15 @@ export type CommitMessage = Readonly<{ - type?: string; - message?: string; - normalized?: string; - original: string; - children?: Array; - notes?: Array; + type?: string; + message?: string; + normalized?: string; + original: string; + children?: Array; + notes?: Array; }> export type ParentCommitMessage = CommitMessage & Required>; export type ChildCommitMessage = Required>; export type Commit = ParentCommitMessage & Readonly<{ - sha: string; + sha: string; }> diff --git a/src/utils/commit.ts b/src/utils/commit.ts index e0fb15b..eb41072 100644 --- a/src/utils/commit.ts +++ b/src/utils/commit.ts @@ -5,19 +5,19 @@ import { Commit, ParentCommitMessage } from '../types'; import { MERGE_MESSAGE_PATTERN } from '../constant'; const listCommits = async(octokit: Octokit, context: Context): Promise> => octokit.paginate( - octokit.pulls.listCommits.endpoint.merge({ - ...context.repo, - 'pull_number': context.payload.number, - }), + octokit.pulls.listCommits.endpoint.merge({ + ...context.repo, + 'pull_number': context.payload.number, + }), ); export const getCommits = async(types: Array, excludeMessages: Array, breakingChangeNotes: Array, octokit: Octokit, context: Context): Promise> => - (await listCommits(octokit, context)) - .filter(commit => !MERGE_MESSAGE_PATTERN.test(commit.commit.message)) - .map(commit => ({commit, message: parseCommitMessage(commit.commit.message, types, excludeMessages, breakingChangeNotes)})) - .filter(item => item.message) - .map(item => ({ - sha: item.commit.sha, - ...(item.message as ParentCommitMessage), - })); + (await listCommits(octokit, context)) + .filter(commit => !MERGE_MESSAGE_PATTERN.test(commit.commit.message)) + .map(commit => ({commit, message: parseCommitMessage(commit.commit.message, types, excludeMessages, breakingChangeNotes)})) + .filter(item => item.message) + .map(item => ({ + sha: item.commit.sha, + ...(item.message as ParentCommitMessage), + })); diff --git a/src/utils/misc.ts b/src/utils/misc.ts index 1d28935..d1fca93 100644 --- a/src/utils/misc.ts +++ b/src/utils/misc.ts @@ -3,18 +3,18 @@ import { ParentCommitMessage, ChildCommitMessage } from '../types'; import { SEMANTIC_MESSAGE_PATTERN } from '../constant'; export const parseLine = (message: string): ChildCommitMessage | undefined => { - const trim = message.trim(); - const matches = trim.match(SEMANTIC_MESSAGE_PATTERN); - if (!matches) { - return undefined; - } + const trim = message.trim(); + const matches = trim.match(SEMANTIC_MESSAGE_PATTERN); + if (!matches) { + return undefined; + } - return { - type: matches[1], - message: matches[3], - normalized: `${matches[1]}: ${matches[3]}`, - original: trim, - }; + return { + type: matches[1], + message: matches[3], + normalized: `${matches[1]}: ${matches[3]}`, + original: trim, + }; }; export const normalize = (messages: Array): Array => messages.map(item => item.toLowerCase()); @@ -22,45 +22,45 @@ export const normalize = (messages: Array): Array => messages.ma export const isValidMessage = (type: string, message: string, types: Array, excludeMessages: Array): boolean => types.includes(type) && !excludeMessages.includes(message.toLowerCase()); export const parseCommitMessage = (message: string, types: Array, excludeMessages: Array, breakingChangeNotes: Array): ParentCommitMessage | undefined => { - const normalizedExcludeMessages = normalize(excludeMessages); - const messages = message.trim().split(/\r?\n|\r/); - const trim = messages[0].trim(); - const matches = trim.match(SEMANTIC_MESSAGE_PATTERN); - if (!matches) { - return undefined; - } + const normalizedExcludeMessages = normalize(excludeMessages); + const messages = message.trim().split(/\r?\n|\r/); + const trim = messages[0].trim(); + const matches = trim.match(SEMANTIC_MESSAGE_PATTERN); + if (!matches) { + return undefined; + } - const notes = [] as Array; - const children = [] as Array; - messages - .slice(1) // eslint-disable-line no-magic-numbers - .map(message => parseLine(message)) - .filter(item => item) - .map(item => item as ChildCommitMessage) - .forEach(item => { - if (breakingChangeNotes.length && breakingChangeNotes.includes(item.type)) { - notes.push(item.original); - } else if (isValidMessage(item.type, item.message, types, normalizedExcludeMessages)) { - children.push(item); - } - }); + const notes = [] as Array; + const children = [] as Array; + messages + .slice(1) // eslint-disable-line no-magic-numbers + .map(message => parseLine(message)) + .filter(item => item) + .map(item => item as ChildCommitMessage) + .forEach(item => { + if (breakingChangeNotes.length && breakingChangeNotes.includes(item.type)) { + notes.push(item.original); + } else if (isValidMessage(item.type, item.message, types, normalizedExcludeMessages)) { + children.push(item); + } + }); - if (!isValidMessage(matches[1], matches[3], types, normalizedExcludeMessages) && (!children.length && !notes.length)) { - return undefined; - } + if (!isValidMessage(matches[1], matches[3], types, normalizedExcludeMessages) && (!children.length && !notes.length)) { + return undefined; + } - return { - type: matches[1], - message: matches[3], - normalized: `${matches[1]}: ${matches[3]}`, - original: trim, - children, - notes, - }; + return { + type: matches[1], + message: matches[3], + normalized: `${matches[1]}: ${matches[3]}`, + original: trim, + children, + notes, + }; }; export const log = (log: (logger: Logger) => void, logger?: Logger): void => { - if (logger) { - log(logger); - } + if (logger) { + log(logger); + } }; diff --git a/src/utils/version.ts b/src/utils/version.ts index bcf1f13..2f05ce4 100644 --- a/src/utils/version.ts +++ b/src/utils/version.ts @@ -9,42 +9,42 @@ import { VERSION_BUMP } from '../constant'; export const getCurrentVersion = async(helper: ApiHelper): Promise => helper.getLastTag(); export const whatBump = (minorUpdateCommitTypes: Array, commits: Array>): keyof typeof VERSION_BUMP => { - if (commits.filter(commit => commit.notes.length).length) { - return 'major'; - } + if (commits.filter(commit => commit.notes.length).length) { + return 'major'; + } - if (minorUpdateCommitTypes.length && commits.filter(commit => commit.type && minorUpdateCommitTypes.includes(commit.type)).length) { - return 'minor'; - } + if (minorUpdateCommitTypes.length && commits.filter(commit => commit.type && minorUpdateCommitTypes.includes(commit.type)).length) { + return 'minor'; + } - return 'patch'; + return 'patch'; }; export const getNextVersionLevel = (minorUpdateCommitTypes: Array, commits: Array>): number => VERSION_BUMP[whatBump(minorUpdateCommitTypes, commits)]; export const getNextVersion = async(minorUpdateCommitTypes: Array, excludeMessages: Array, breakingChangeNotes: Array, helper: ApiHelper, octokit: Octokit, context: Context, logger?: Logger): Promise => { - const commits = await getCommits(minorUpdateCommitTypes, excludeMessages, breakingChangeNotes, octokit, context); - log(logger => logger.startProcess('Target commits:'), logger); - log(() => console.log( - commits - .filter(item => item.notes.length || item.type) - .map(item => ({ - type: item.type, - message: item.message, - notes: item.notes, - sha: item.sha, - })), - ), logger); - log(logger => logger.endProcess(), logger); - - const current = await getCurrentVersion(helper); - log(logger => logger.info('Current version: %s', current), logger); - - const next = Utils.generateNewVersion( - current, - getNextVersionLevel(minorUpdateCommitTypes, commits), - ); - log(logger => logger.info('Next version: %s', next), logger); - - return next; + const commits = await getCommits(minorUpdateCommitTypes, excludeMessages, breakingChangeNotes, octokit, context); + log(logger => logger.startProcess('Target commits:'), logger); + log(() => console.log( + commits + .filter(item => item.notes.length || item.type) + .map(item => ({ + type: item.type, + message: item.message, + notes: item.notes, + sha: item.sha, + })), + ), logger); + log(logger => logger.endProcess(), logger); + + const current = await getCurrentVersion(helper); + log(logger => logger.info('Current version: %s', current), logger); + + const next = Utils.generateNewVersion( + current, + getNextVersionLevel(minorUpdateCommitTypes, commits), + ); + log(logger => logger.info('Next version: %s', next), logger); + + return next; }; \ No newline at end of file From f9c6cce8a63c4238c07ee7df81f33fdaea988276 Mon Sep 17 00:00:00 2001 From: Technote Date: Fri, 26 Jun 2020 02:07:13 +0900 Subject: [PATCH 3/6] chore: update packages --- package.json | 18 +- yarn.lock | 907 ++++++++++++++++++++++++--------------------------- 2 files changed, 431 insertions(+), 494 deletions(-) diff --git a/package.json b/package.json index a2fbf6a..f056779 100644 --- a/package.json +++ b/package.json @@ -27,20 +27,20 @@ ], "dependencies": { "@actions/github": "^3.0.0", - "@technote-space/github-action-helper": "^2.0.10" + "@technote-space/github-action-helper": "^3.0.1" }, "devDependencies": { "@commitlint/cli": "^9.0.1", "@commitlint/config-conventional": "^9.0.1", - "@technote-space/github-action-test-helper": "^0.3.8", - "@types/jest": "^26.0.0", - "@types/node": "^14.0.13", - "@typescript-eslint/eslint-plugin": "^3.3.0", - "@typescript-eslint/parser": "^3.3.0", - "eslint": "^7.3.0", + "@technote-space/github-action-test-helper": "^0.4.0", + "@types/jest": "^26.0.3", + "@types/node": "^14.0.14", + "@typescript-eslint/eslint-plugin": "^3.4.0", + "@typescript-eslint/parser": "^3.4.0", + "eslint": "^7.3.1", "husky": "^4.2.5", - "jest": "^26.0.1", - "jest-circus": "^26.0.1", + "jest": "^26.1.0", + "jest-circus": "^26.1.0", "lint-staged": "^10.2.11", "nock": "^12.0.3", "ts-jest": "^26.1.1", diff --git a/yarn.lock b/yarn.lock index 01fa131..ac26d1e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,15 +7,6 @@ resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.2.4.tgz#96179dbf9f8d951dd74b40a0dbd5c22555d186ab" integrity sha512-YJCEq8BE3CdN8+7HPZ/4DxJjk/OkZV2FFIf+DlZTC/4iBlzYCD5yjRR6eiOS5llO11zbRltIRuKAjMKaWTE6cg== -"@actions/github@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@actions/github/-/github-2.2.0.tgz#8952fe96b12b881fa39340f0e7202b04dc5c3e71" - integrity sha512-9UAZqn8ywdR70n3GwVle4N8ALosQs4z50N7XMXrSTUVOmVpaBC5kE3TRTT7qQdi3OaQV24mjGuJZsHUmhD+ZXw== - dependencies: - "@actions/http-client" "^1.0.3" - "@octokit/graphql" "^4.3.1" - "@octokit/rest" "^16.43.1" - "@actions/github@^3.0.0": version "3.0.0" resolved "https://registry.yarnpkg.com/@actions/github/-/github-3.0.0.tgz#ce1b721a266ad5ac522da0c9c013c999009604bf" @@ -462,103 +453,103 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== -"@jest/console@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.0.1.tgz#62b3b2fa8990f3cbffbef695c42ae9ddbc8f4b39" - integrity sha512-9t1KUe/93coV1rBSxMmBAOIK3/HVpwxArCA1CxskKyRiv6o8J70V8C/V3OJminVCTa2M0hQI9AWRd5wxu2dAHw== +"@jest/console@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.1.0.tgz#f67c89e4f4d04dbcf7b052aed5ab9c74f915b954" + integrity sha512-+0lpTHMd/8pJp+Nd4lyip+/Iyf2dZJvcCqrlkeZQoQid+JlThA4M9vxHtheyrQ99jJTMQam+es4BcvZ5W5cC3A== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" chalk "^4.0.0" - jest-message-util "^26.0.1" - jest-util "^26.0.1" + jest-message-util "^26.1.0" + jest-util "^26.1.0" slash "^3.0.0" -"@jest/core@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.0.1.tgz#aa538d52497dfab56735efb00e506be83d841fae" - integrity sha512-Xq3eqYnxsG9SjDC+WLeIgf7/8KU6rddBxH+SCt18gEpOhAGYC/Mq+YbtlNcIdwjnnT+wDseXSbU0e5X84Y4jTQ== +"@jest/core@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.1.0.tgz#4580555b522de412a7998b3938c851e4f9da1c18" + integrity sha512-zyizYmDJOOVke4OO/De//aiv8b07OwZzL2cfsvWF3q9YssfpcKfcnZAwDY8f+A76xXSMMYe8i/f/LPocLlByfw== dependencies: - "@jest/console" "^26.0.1" - "@jest/reporters" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/console" "^26.1.0" + "@jest/reporters" "^26.1.0" + "@jest/test-result" "^26.1.0" + "@jest/transform" "^26.1.0" + "@jest/types" "^26.1.0" ansi-escapes "^4.2.1" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" - jest-changed-files "^26.0.1" - jest-config "^26.0.1" - jest-haste-map "^26.0.1" - jest-message-util "^26.0.1" + jest-changed-files "^26.1.0" + jest-config "^26.1.0" + jest-haste-map "^26.1.0" + jest-message-util "^26.1.0" jest-regex-util "^26.0.0" - jest-resolve "^26.0.1" - jest-resolve-dependencies "^26.0.1" - jest-runner "^26.0.1" - jest-runtime "^26.0.1" - jest-snapshot "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" - jest-watcher "^26.0.1" + jest-resolve "^26.1.0" + jest-resolve-dependencies "^26.1.0" + jest-runner "^26.1.0" + jest-runtime "^26.1.0" + jest-snapshot "^26.1.0" + jest-util "^26.1.0" + jest-validate "^26.1.0" + jest-watcher "^26.1.0" micromatch "^4.0.2" p-each-series "^2.1.0" rimraf "^3.0.0" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.0.1.tgz#82f519bba71959be9b483675ee89de8c8f72a5c8" - integrity sha512-xBDxPe8/nx251u0VJ2dFAFz2H23Y98qdIaNwnMK6dFQr05jc+Ne/2np73lOAx+5mSBO/yuQldRrQOf6hP1h92g== +"@jest/environment@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.1.0.tgz#378853bcdd1c2443b4555ab908cfbabb851e96da" + integrity sha512-86+DNcGongbX7ai/KE/S3/NcUVZfrwvFzOOWX/W+OOTvTds7j07LtC+MgGydH5c8Ri3uIrvdmVgd1xFD5zt/xA== dependencies: - "@jest/fake-timers" "^26.0.1" - "@jest/types" "^26.0.1" - jest-mock "^26.0.1" + "@jest/fake-timers" "^26.1.0" + "@jest/types" "^26.1.0" + jest-mock "^26.1.0" -"@jest/fake-timers@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.0.1.tgz#f7aeff13b9f387e9d0cac9a8de3bba538d19d796" - integrity sha512-Oj/kCBnTKhm7CR+OJSjZty6N1bRDr9pgiYQr4wY221azLz5PHi08x/U+9+QpceAYOWheauLP8MhtSVFrqXQfhg== +"@jest/fake-timers@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.1.0.tgz#9a76b7a94c351cdbc0ad53e5a748789f819a65fe" + integrity sha512-Y5F3kBVWxhau3TJ825iuWy++BAuQzK/xEa+wD9vDH3RytW9f2DbMVodfUQC54rZDX3POqdxCgcKdgcOL0rYUpA== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" "@sinonjs/fake-timers" "^6.0.1" - jest-message-util "^26.0.1" - jest-mock "^26.0.1" - jest-util "^26.0.1" + jest-message-util "^26.1.0" + jest-mock "^26.1.0" + jest-util "^26.1.0" -"@jest/globals@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.0.1.tgz#3f67b508a7ce62b6e6efc536f3d18ec9deb19a9c" - integrity sha512-iuucxOYB7BRCvT+TYBzUqUNuxFX1hqaR6G6IcGgEqkJ5x4htNKo1r7jk1ji9Zj8ZMiMw0oB5NaA7k5Tx6MVssA== +"@jest/globals@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.1.0.tgz#6cc5d7cbb79b76b120f2403d7d755693cf063ab1" + integrity sha512-MKiHPNaT+ZoG85oMaYUmGHEqu98y3WO2yeIDJrs2sJqHhYOy3Z6F7F/luzFomRQ8SQ1wEkmahFAz2291Iv8EAw== dependencies: - "@jest/environment" "^26.0.1" - "@jest/types" "^26.0.1" - expect "^26.0.1" + "@jest/environment" "^26.1.0" + "@jest/types" "^26.1.0" + expect "^26.1.0" -"@jest/reporters@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.0.1.tgz#14ae00e7a93e498cec35b0c00ab21c375d9b078f" - integrity sha512-NWWy9KwRtE1iyG/m7huiFVF9YsYv/e+mbflKRV84WDoJfBqUrNRyDbL/vFxQcYLl8IRqI4P3MgPn386x76Gf2g== +"@jest/reporters@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.1.0.tgz#08952e90c90282e14ff49e927bdf1873617dae78" + integrity sha512-SVAysur9FOIojJbF4wLP0TybmqwDkdnFxHSPzHMMIYyBtldCW9gG+Q5xWjpMFyErDiwlRuPyMSJSU64A67Pazg== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/console" "^26.1.0" + "@jest/test-result" "^26.1.0" + "@jest/transform" "^26.1.0" + "@jest/types" "^26.1.0" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" glob "^7.1.2" graceful-fs "^4.2.4" istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^4.0.0" + istanbul-lib-instrument "^4.0.3" istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.0.2" - jest-haste-map "^26.0.1" - jest-resolve "^26.0.1" - jest-util "^26.0.1" - jest-worker "^26.0.0" + jest-haste-map "^26.1.0" + jest-resolve "^26.1.0" + jest-util "^26.1.0" + jest-worker "^26.1.0" slash "^3.0.0" source-map "^0.6.0" string-length "^4.0.1" @@ -567,51 +558,51 @@ optionalDependencies: node-notifier "^7.0.0" -"@jest/source-map@^26.0.0": - version "26.0.0" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.0.0.tgz#fd7706484a7d3faf7792ae29783933bbf48a4749" - integrity sha512-S2Z+Aj/7KOSU2TfW0dyzBze7xr95bkm5YXNUqqCek+HE0VbNNSNzrRwfIi5lf7wvzDTSS0/ib8XQ1krFNyYgbQ== +"@jest/source-map@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.1.0.tgz#a6a020d00e7d9478f4b690167c5e8b77e63adb26" + integrity sha512-XYRPYx4eEVX15cMT9mstnO7hkHP3krNtKfxUYd8L7gbtia8JvZZ6bMzSwa6IQJENbudTwKMw5R1BePRD+bkEmA== dependencies: callsites "^3.0.0" graceful-fs "^4.2.4" source-map "^0.6.0" -"@jest/test-result@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.0.1.tgz#1ffdc1ba4bc289919e54b9414b74c9c2f7b2b718" - integrity sha512-oKwHvOI73ICSYRPe8WwyYPTtiuOAkLSbY8/MfWF3qDEd/sa8EDyZzin3BaXTqufir/O/Gzea4E8Zl14XU4Mlyg== +"@jest/test-result@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.1.0.tgz#a93fa15b21ad3c7ceb21c2b4c35be2e407d8e971" + integrity sha512-Xz44mhXph93EYMA8aYDz+75mFbarTV/d/x0yMdI3tfSRs/vh4CqSxgzVmCps1fPkHDCtn0tU8IH9iCKgGeGpfw== dependencies: - "@jest/console" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/console" "^26.1.0" + "@jest/types" "^26.1.0" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.0.1.tgz#b0563424728f3fe9e75d1442b9ae4c11da73f090" - integrity sha512-ssga8XlwfP8YjbDcmVhwNlrmblddMfgUeAkWIXts1V22equp2GMIHxm7cyeD5Q/B0ZgKPK/tngt45sH99yLLGg== +"@jest/test-sequencer@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.1.0.tgz#41a6fc8b850c3f33f48288ea9ea517c047e7f14e" + integrity sha512-Z/hcK+rTq56E6sBwMoQhSRDVjqrGtj1y14e2bIgcowARaIE1SgOanwx6gvY4Q9gTKMoZQXbXvptji+q5GYxa6Q== dependencies: - "@jest/test-result" "^26.0.1" + "@jest/test-result" "^26.1.0" graceful-fs "^4.2.4" - jest-haste-map "^26.0.1" - jest-runner "^26.0.1" - jest-runtime "^26.0.1" + jest-haste-map "^26.1.0" + jest-runner "^26.1.0" + jest-runtime "^26.1.0" -"@jest/transform@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.0.1.tgz#0e3ecbb34a11cd4b2080ed0a9c4856cf0ceb0639" - integrity sha512-pPRkVkAQ91drKGbzCfDOoHN838+FSbYaEAvBXvKuWeeRRUD8FjwXkqfUNUZL6Ke48aA/1cqq/Ni7kVMCoqagWA== +"@jest/transform@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.1.0.tgz#697f48898c2a2787c9b4cb71d09d7e617464e509" + integrity sha512-ICPm6sUXmZJieq45ix28k0s+d/z2E8CHDsq+WwtWI6kW8m7I8kPqarSEcUN86entHQ570ZBRci5OWaKL0wlAWw== dependencies: "@babel/core" "^7.1.0" - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" babel-plugin-istanbul "^6.0.0" chalk "^4.0.0" convert-source-map "^1.4.0" fast-json-stable-stringify "^2.0.0" graceful-fs "^4.2.4" - jest-haste-map "^26.0.1" + jest-haste-map "^26.1.0" jest-regex-util "^26.0.0" - jest-util "^26.0.1" + jest-util "^26.1.0" micromatch "^4.0.2" pirates "^4.0.1" slash "^3.0.0" @@ -628,10 +619,10 @@ "@types/yargs" "^15.0.0" chalk "^3.0.0" -"@jest/types@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.0.1.tgz#b78333fbd113fa7aec8d39de24f88de8686dac67" - integrity sha512-IbtjvqI9+eS1qFnOIEL7ggWmT+iK/U+Vde9cGWtYb/b6XgKb3X44ZAe/z9YZzoAAZ/E92m0DqrilF934IGNnQA== +"@jest/types@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.1.0.tgz#f8afaaaeeb23b5cad49dd1f7779689941dcb6057" + integrity sha512-GXigDDsp6ZlNMhXQDeuy/iYCDsRIHJabWtDzvnn36+aqFfG14JmFV0e/iXxY4SP9vbXSiPNOWdehU5MeqrYHBQ== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^1.1.1" @@ -657,6 +648,18 @@ before-after-hook "^2.1.0" universal-user-agent "^5.0.0" +"@octokit/core@^3.0.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@octokit/core/-/core-3.1.0.tgz#9c3c9b23f7504668cfa057f143ccbf0c645a0ac9" + integrity sha512-yPyQSmxIXLieEIRikk2w8AEtWkFdfG/LXcw1KvEtK3iP0ENZLW/WYQmdzOKqfSaLhooz4CJ9D+WY79C8ZliACw== + dependencies: + "@octokit/auth-token" "^2.4.0" + "@octokit/graphql" "^4.3.1" + "@octokit/request" "^5.4.0" + "@octokit/types" "^5.0.0" + before-after-hook "^2.1.0" + universal-user-agent "^5.0.0" + "@octokit/endpoint@^6.0.1": version "6.0.3" resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.3.tgz#dd09b599662d7e1b66374a177ab620d8cdf73487" @@ -675,13 +678,6 @@ "@octokit/types" "^5.0.0" universal-user-agent "^5.0.0" -"@octokit/plugin-paginate-rest@^1.1.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-1.1.2.tgz#004170acf8c2be535aba26727867d692f7b488fc" - integrity sha512-jbsSoi5Q1pj63sC16XIUboklNw+8tL9VOnJsWycWYR78TKss5PVpIPb1TUUcMQ+bBh7cY579cVAWmf5qG+dw+Q== - dependencies: - "@octokit/types" "^2.0.1" - "@octokit/plugin-paginate-rest@^2.2.0": version "2.2.3" resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.2.3.tgz#a6ad4377e7e7832fb4bdd9d421e600cb7640ac27" @@ -694,12 +690,12 @@ resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.0.tgz#eef87a431300f6148c39a7f75f8cfeb218b2547e" integrity sha512-ywoxP68aOT3zHCLgWZgwUJatiENeHE7xJzYjfz8WI0goynp96wETBF+d95b8g/uL4QmS6owPVlaxiz3wyMAzcw== -"@octokit/plugin-rest-endpoint-methods@2.4.0": - version "2.4.0" - resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-2.4.0.tgz#3288ecf5481f68c494dd0602fc15407a59faf61e" - integrity sha512-EZi/AWhtkdfAYi01obpX0DF7U6b1VRr30QNQ5xSFPITMdLSfhcBqjamE3F+sKcxPbD7eZuMHu3Qkk2V+JGxBDQ== +"@octokit/plugin-rest-endpoint-methods@4.0.0", "@octokit/plugin-rest-endpoint-methods@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-4.0.0.tgz#b02a2006dda8e908c3f8ab381dd5475ef5a810a8" + integrity sha512-emS6gysz4E9BNi9IrCl7Pm4kR+Az3MmVB0/DoDCmF4U48NbYG3weKyDlgkrz6Jbl4Mu4nDx8YWZwC4HjoTdcCA== dependencies: - "@octokit/types" "^2.0.1" + "@octokit/types" "^5.0.0" deprecation "^2.3.1" "@octokit/plugin-rest-endpoint-methods@^3.10.0": @@ -710,15 +706,6 @@ "@octokit/types" "^4.1.6" deprecation "^2.3.1" -"@octokit/request-error@^1.0.2": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-1.2.1.tgz#ede0714c773f32347576c25649dc013ae6b31801" - integrity sha512-+6yDyk1EES6WK+l3viRDElw96MvwfJxCt45GvmjDUKWjYIb3PJZQkq3i46TwGwoPD4h8NmTrENmtyA1FwbmhRA== - dependencies: - "@octokit/types" "^2.0.0" - deprecation "^2.0.0" - once "^1.4.0" - "@octokit/request-error@^2.0.0": version "2.0.2" resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-2.0.2.tgz#0e76b83f5d8fdda1db99027ea5f617c2e6ba9ed0" @@ -728,7 +715,7 @@ deprecation "^2.0.0" once "^1.4.0" -"@octokit/request@^5.2.0", "@octokit/request@^5.3.0", "@octokit/request@^5.4.0": +"@octokit/request@^5.3.0", "@octokit/request@^5.4.0": version "5.4.5" resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.4.5.tgz#8df65bd812047521f7e9db6ff118c06ba84ac10b" integrity sha512-atAs5GAGbZedvJXXdjtKljin+e2SltEs48B3naJjqWupYl2IUBbB/CJisyjbNHcKpHzb3E+OYEZ46G8eakXgQg== @@ -742,34 +729,15 @@ once "^1.4.0" universal-user-agent "^5.0.0" -"@octokit/rest@^16.43.1": - version "16.43.1" - resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-16.43.1.tgz#3b11e7d1b1ac2bbeeb23b08a17df0b20947eda6b" - integrity sha512-gfFKwRT/wFxq5qlNjnW2dh+qh74XgTQ2B179UX5K1HYCluioWj8Ndbgqw2PVqa1NnVJkGHp2ovMpVn/DImlmkw== +"@octokit/rest@^18.0.0": + version "18.0.0" + resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-18.0.0.tgz#7f401d9ce13530ad743dfd519ae62ce49bcc0358" + integrity sha512-4G/a42lry9NFGuuECnua1R1eoKkdBYJap97jYbWDNYBOUboWcM75GJ1VIcfvwDV/pW0lMPs7CEmhHoVrSV5shg== dependencies: - "@octokit/auth-token" "^2.4.0" - "@octokit/plugin-paginate-rest" "^1.1.1" + "@octokit/core" "^3.0.0" + "@octokit/plugin-paginate-rest" "^2.2.0" "@octokit/plugin-request-log" "^1.0.0" - "@octokit/plugin-rest-endpoint-methods" "2.4.0" - "@octokit/request" "^5.2.0" - "@octokit/request-error" "^1.0.2" - atob-lite "^2.0.0" - before-after-hook "^2.0.0" - btoa-lite "^1.0.0" - deprecation "^2.0.0" - lodash.get "^4.4.2" - lodash.set "^4.3.2" - lodash.uniq "^4.5.0" - octokit-pagination-methods "^1.1.0" - once "^1.4.0" - universal-user-agent "^4.0.0" - -"@octokit/types@^2.0.0", "@octokit/types@^2.0.1": - version "2.16.2" - resolved "https://registry.yarnpkg.com/@octokit/types/-/types-2.16.2.tgz#4c5f8da3c6fecf3da1811aef678fda03edac35d2" - integrity sha512-O75k56TYvJ8WpAakWwYRN8Bgu60KrmX0z1KqFp1kNiFNkgW+JW+9EBKZ+S33PU6SLvbihqd+3drvPxKK68Ee8Q== - dependencies: - "@types/node" ">= 8" + "@octokit/plugin-rest-endpoint-methods" "4.0.0" "@octokit/types@^4.1.6": version "4.1.10" @@ -799,25 +767,28 @@ dependencies: "@sinonjs/commons" "^1.7.0" -"@technote-space/github-action-helper@^2.0.10": - version "2.0.10" - resolved "https://registry.yarnpkg.com/@technote-space/github-action-helper/-/github-action-helper-2.0.10.tgz#35ef805ba946e4fef0cd4e34f58ed979dbb51832" - integrity sha512-vFciyc2+w0QuSNmrl6IBONsu3wGbBMLSL9O8MkOWq3TnqRJDjkbiPozxmhxJu8gxPkc5tLKqzF0g6llue0a6pg== +"@technote-space/github-action-helper@^3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@technote-space/github-action-helper/-/github-action-helper-3.0.1.tgz#6a42b9b0ebb512661e0a9c7e0937fe35962e52f6" + integrity sha512-LQJZ6d5mLbuHt/DeuecY/EpHpmG+WrxwT0YgVmTz+TioAcihVUB0pipvuf9OITx4R4wrfEkrsGdzZzsf3oWNIw== dependencies: "@actions/core" "^1.2.4" - "@actions/github" "^2.2.0" + "@actions/github" "^3.0.0" + "@octokit/plugin-rest-endpoint-methods" "^4.0.0" shell-escape "^0.2.0" sprintf-js "^1.1.2" -"@technote-space/github-action-test-helper@^0.3.8": - version "0.3.8" - resolved "https://registry.yarnpkg.com/@technote-space/github-action-test-helper/-/github-action-test-helper-0.3.8.tgz#81ef9cb41917b5002ac8d01685e8be16192ddedc" - integrity sha512-+V78HHZrGq7qwcD/6Vweyh+GtXWG6D1N3OLqBKj6d8gs3WClk/AcW9PtHNgvUg9LnuhZQw8bscN+hj/335wk2A== +"@technote-space/github-action-test-helper@^0.4.0": + version "0.4.0" + resolved "https://registry.yarnpkg.com/@technote-space/github-action-test-helper/-/github-action-test-helper-0.4.0.tgz#ad52697904c1a540fdbbc1241b1a1b6b6489d04e" + integrity sha512-xiaDI/f0fjM+n/lY8cYK7438bgc8fVpxieVghGDUiGX3WI9cRVaMc4S3oSGNvhx62vKPH4dVb2IVqjhsS1FjZg== dependencies: - "@actions/github" "^2.2.0" + "@actions/github" "^3.0.0" + "@octokit/plugin-rest-endpoint-methods" "^4.0.0" + "@octokit/rest" "^18.0.0" js-yaml "^3.14.0" -"@types/babel__core@^7.1.7": +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.7": version "7.1.9" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d" integrity sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw== @@ -887,10 +858,10 @@ "@types/istanbul-lib-coverage" "*" "@types/istanbul-lib-report" "*" -"@types/jest@^26.0.0": - version "26.0.0" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.0.tgz#a6d7573dffa9c68cbbdf38f2e0de26f159e11134" - integrity sha512-/yeMsH9HQ1RLORlXAwoLXe8S98xxvhNtUz3yrgrwbaxYjT+6SFPZZRksmRKRA6L5vsUtSHeN71viDOTTyYAD+g== +"@types/jest@^26.0.3": + version "26.0.3" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.3.tgz#79534e0e94857171c0edc596db0ebe7cb7863251" + integrity sha512-v89ga1clpVL/Y1+YI0eIu1VMW+KU7Xl8PhylVtDKVWaSUHBHYPLXMQGBdrpHewaKoTvlXkksbYqPgz8b4cmRZg== dependencies: jest-diff "^25.2.1" pretty-format "^25.2.1" @@ -905,10 +876,10 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.0.tgz#69a23a3ad29caf0097f06eda59b361ee2f0639f6" integrity sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY= -"@types/node@*", "@types/node@>= 8", "@types/node@^14.0.13": - version "14.0.13" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.13.tgz#ee1128e881b874c371374c1f72201893616417c9" - integrity sha512-rouEWBImiRaSJsVA+ITTFM6ZxibuAlTuNOCyxVbwreu6k6+ujs7DfnU9o+PShFhET78pMBl3eH+AGSI5eOTkPA== +"@types/node@*", "@types/node@>= 8", "@types/node@^14.0.14": + version "14.0.14" + resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.14.tgz#24a0b5959f16ac141aeb0c5b3cd7a15b7c64cbce" + integrity sha512-syUgf67ZQpaJj01/tRTknkMNoBBLWJOBODF0Zm4NrXmiSuxjymFrxnTu1QVYRubhVkRcZLYZG8STTwJRdVm/WQ== "@types/normalize-package-data@^2.4.0": version "2.4.0" @@ -942,41 +913,42 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-3.3.0.tgz#89518e5c5209a349bde161c3489b0ec187ae5d37" - integrity sha512-Ybx/wU75Tazz6nU2d7nN6ll0B98odoiYLXwcuwS5WSttGzK46t0n7TPRQ4ozwcTv82UY6TQoIvI+sJfTzqK9dQ== +"@typescript-eslint/eslint-plugin@^3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-3.4.0.tgz#8378062e6be8a1d049259bdbcf27ce5dfbeee62b" + integrity sha512-wfkpiqaEVhZIuQRmudDszc01jC/YR7gMSxa6ulhggAe/Hs0KVIuo9wzvFiDbG3JD5pRFQoqnf4m7REDsUvBnMQ== dependencies: - "@typescript-eslint/experimental-utils" "3.3.0" + "@typescript-eslint/experimental-utils" "3.4.0" + debug "^4.1.1" functional-red-black-tree "^1.0.1" regexpp "^3.0.0" semver "^7.3.2" tsutils "^3.17.1" -"@typescript-eslint/experimental-utils@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-3.3.0.tgz#d72a946e056a83d4edf97f3411cceb639b0b8c87" - integrity sha512-d4pGIAbu/tYsrPrdHCQ5xfadJGvlkUxbeBB56nO/VGmEDi/sKmfa5fGty5t5veL1OyJBrUmSiRn1R1qfVDydrg== +"@typescript-eslint/experimental-utils@3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-3.4.0.tgz#8a44dfc6fb7f1d071937b390fe27608ebda122b8" + integrity sha512-rHPOjL43lOH1Opte4+dhC0a/+ks+8gOBwxXnyrZ/K4OTAChpSjP76fbI8Cglj7V5GouwVAGaK+xVwzqTyE/TPw== dependencies: "@types/json-schema" "^7.0.3" - "@typescript-eslint/typescript-estree" "3.3.0" + "@typescript-eslint/typescript-estree" "3.4.0" eslint-scope "^5.0.0" eslint-utils "^2.0.0" -"@typescript-eslint/parser@^3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-3.3.0.tgz#fcae40012ded822aa8b2739a1a03a4e3c5bbb7bb" - integrity sha512-a7S0Sqn/+RpOOWTcaLw6RD4obsharzxmgMfdK24l364VxuBODXjuJM7ImCkSXEN7oz52aiZbXSbc76+2EsE91w== +"@typescript-eslint/parser@^3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-3.4.0.tgz#fe52b68c5cb3bba3f5d875bd17adb70420d49d8d" + integrity sha512-ZUGI/de44L5x87uX5zM14UYcbn79HSXUR+kzcqU42gH0AgpdB/TjuJy3m4ezI7Q/jk3wTQd755mxSDLhQP79KA== dependencies: "@types/eslint-visitor-keys" "^1.0.0" - "@typescript-eslint/experimental-utils" "3.3.0" - "@typescript-eslint/typescript-estree" "3.3.0" + "@typescript-eslint/experimental-utils" "3.4.0" + "@typescript-eslint/typescript-estree" "3.4.0" eslint-visitor-keys "^1.1.0" -"@typescript-eslint/typescript-estree@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-3.3.0.tgz#841ffed25c29b0049ebffb4c2071268a34558a2a" - integrity sha512-3SqxylENltEvJsjjMSDCUx/edZNSC7wAqifUU1Ywp//0OWEZwMZJfecJud9XxJ/40rAKEbJMKBOQzeOjrLJFzQ== +"@typescript-eslint/typescript-estree@3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-3.4.0.tgz#6a787eb70b48969e4cd1ea67b057083f96dfee29" + integrity sha512-zKwLiybtt4uJb4mkG5q2t6+W7BuYx2IISiDNV+IY68VfoGwErDx/RfVI7SWL4gnZ2t1A1ytQQwZ+YOJbHHJ2rw== dependencies: debug "^4.1.1" eslint-visitor-keys "^1.1.0" @@ -1172,11 +1144,6 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= -atob-lite@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/atob-lite/-/atob-lite-2.0.0.tgz#0fef5ad46f1bd7a8502c65727f0367d5ee43d696" - integrity sha1-D+9a1G8b16hQLGVyfwNn1e5D1pY= - atob@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" @@ -1192,16 +1159,16 @@ aws4@^1.8.0: resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.10.0.tgz#a17b3a8ea811060e74d47d306122400ad4497ae2" integrity sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA== -babel-jest@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.0.1.tgz#450139ce4b6c17174b136425bda91885c397bc46" - integrity sha512-Z4GGmSNQ8pX3WS1O+6v3fo41YItJJZsVxG5gIQ+HuB/iuAQBJxMTHTwz292vuYws1LnHfwSRgoqI+nxdy/pcvw== +babel-jest@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.1.0.tgz#b20751185fc7569a0f135730584044d1cb934328" + integrity sha512-Nkqgtfe7j6PxLO6TnCQQlkMm8wdTdnIF8xrdpooHCuD5hXRzVEPbPneTJKknH5Dsv3L8ip9unHDAp48YQ54Dkg== dependencies: - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/transform" "^26.1.0" + "@jest/types" "^26.1.0" "@types/babel__core" "^7.1.7" babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^26.0.0" + babel-preset-jest "^26.1.0" chalk "^4.0.0" graceful-fs "^4.2.4" slash "^3.0.0" @@ -1217,13 +1184,14 @@ babel-plugin-istanbul@^6.0.0: istanbul-lib-instrument "^4.0.0" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.0.0.tgz#fd1d35f95cf8849fc65cb01b5e58aedd710b34a8" - integrity sha512-+AuoehOrjt9irZL7DOt2+4ZaTM6dlu1s5TTS46JBa0/qem4dy7VNW3tMb96qeEqcIh20LD73TVNtmVEeymTG7w== +babel-plugin-jest-hoist@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.1.0.tgz#c6a774da08247a28285620a64dfadbd05dd5233a" + integrity sha512-qhqLVkkSlqmC83bdMhM8WW4Z9tB+JkjqAqlbbohS9sJLT5Ha2vfzuKqg5yenXrAjOPG2YC0WiXdH3a9PvB+YYw== dependencies: "@babel/template" "^7.3.3" "@babel/types" "^7.3.3" + "@types/babel__core" "^7.0.0" "@types/babel__traverse" "^7.0.6" babel-preset-current-node-syntax@^0.1.2: @@ -1243,12 +1211,12 @@ babel-preset-current-node-syntax@^0.1.2: "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -babel-preset-jest@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.0.0.tgz#1eac82f513ad36c4db2e9263d7c485c825b1faa6" - integrity sha512-9ce+DatAa31DpR4Uir8g4Ahxs5K4W4L8refzt+qHWQANb6LhGcAEfIFgLUwk67oya2cCUd6t4eUMtO/z64ocNw== +babel-preset-jest@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.1.0.tgz#612f714e5b457394acfd863793c564cbcdb7d1c1" + integrity sha512-na9qCqFksknlEj5iSdw1ehMVR06LCCTkZLGKeEtxDDdhg8xpUF09m29Kvh1pRbZ07h7AQ5ttLYUwpXL4tO6w7w== dependencies: - babel-plugin-jest-hoist "^26.0.0" + babel-plugin-jest-hoist "^26.1.0" babel-preset-current-node-syntax "^0.1.2" balanced-match@^1.0.0: @@ -1276,7 +1244,7 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" -before-after-hook@^2.0.0, before-after-hook@^2.1.0: +before-after-hook@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.1.0.tgz#b6c03487f44e24200dd30ca5e6a1979c5d2fb635" integrity sha512-IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A== @@ -1331,11 +1299,6 @@ bser@2.1.1: dependencies: node-int64 "^0.4.0" -btoa-lite@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/btoa-lite/-/btoa-lite-1.0.0.tgz#337766da15801210fdd956c22e9c6891ab9d0337" - integrity sha1-M3dm2hWAEhD92VbCLpxokaudAzc= - buffer-from@1.x, buffer-from@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" @@ -1855,9 +1818,9 @@ escape-string-regexp@^2.0.0: integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== escodegen@^1.14.1: - version "1.14.2" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.2.tgz#14ab71bf5026c2aa08173afba22c6f3173284a84" - integrity sha512-InuOIiKk8wwuOFg6x9BQXbzjrQhtyXh46K9bqVTPzSo2FnyMBaYGBMC6PhQy7yxxil9vIedFBweQBMK74/7o8A== + version "1.14.3" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.3.tgz#4e7b81fba61581dc97582ed78cab7f0e8d63f503" + integrity sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw== dependencies: esprima "^4.0.1" estraverse "^4.2.0" @@ -1886,10 +1849,10 @@ eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.2.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== -eslint@^7.3.0: - version "7.3.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.3.0.tgz#f9f1fc3dc1227985d0db88769f2bbac7b4b875d7" - integrity sha512-dJMVXwfU5PT1cj2Nv2VPPrKahKTGdX+5Dh0Q3YuKt+Y2UhdL2YbzsVaBMyG9HC0tBismlv/r1+eZqs6SMIV38Q== +eslint@^7.3.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.3.1.tgz#76392bd7e44468d046149ba128d1566c59acbe19" + integrity sha512-cQC/xj9bhWUcyi/RuMbRtC3I0eW8MH0jhRELSvpKYkWep3C6YZ2OkvcvJVUeO6gcunABmzptbXBuDoXsjHmfTA== dependencies: "@babel/code-frame" "^7.0.0" ajv "^6.10.0" @@ -2022,16 +1985,16 @@ expand-brackets@^2.1.4: snapdragon "^0.8.1" to-regex "^3.0.1" -expect@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/expect/-/expect-26.0.1.tgz#18697b9611a7e2725e20ba3ceadda49bc9865421" - integrity sha512-QcCy4nygHeqmbw564YxNbHTJlXh47dVID2BUP52cZFpLU9zHViMFK6h07cC1wf7GYCTIigTdAXhVua8Yl1FkKg== +expect@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-26.1.0.tgz#8c62e31d0f8d5a8ebb186ee81473d15dd2fbf7c8" + integrity sha512-QbH4LZXDsno9AACrN9eM0zfnby9G+OsdNgZUohjg/P0mLy1O+/bzTAJGT6VSIjVCe8yKM6SzEl/ckEOFBT7Vnw== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" ansi-styles "^4.0.0" jest-get-type "^26.0.0" - jest-matcher-utils "^26.0.1" - jest-message-util "^26.0.1" + jest-matcher-utils "^26.1.0" + jest-message-util "^26.1.0" jest-regex-util "^26.0.0" extend-shallow@^2.0.1: @@ -2484,7 +2447,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.3, inherits@~2.0.3: +inherits@2, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -2723,7 +2686,7 @@ istanbul-lib-coverage@^3.0.0: resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== -istanbul-lib-instrument@^4.0.0: +istanbul-lib-instrument@^4.0.0, istanbul-lib-instrument@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== @@ -2759,81 +2722,81 @@ istanbul-reports@^3.0.2: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -jest-changed-files@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.0.1.tgz#1334630c6a1ad75784120f39c3aa9278e59f349f" - integrity sha512-q8LP9Sint17HaE2LjxQXL+oYWW/WeeXMPE2+Op9X3mY8IEGFVc14xRxFjUuXUbcPAlDLhtWdIEt59GdQbn76Hw== +jest-changed-files@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.1.0.tgz#de66b0f30453bca2aff98e9400f75905da495305" + integrity sha512-HS5MIJp3B8t0NRKGMCZkcDUZo36mVRvrDETl81aqljT1S9tqiHRSpyoOvWg9ZilzZG9TDisDNaN1IXm54fLRZw== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" execa "^4.0.0" throat "^5.0.0" -jest-circus@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-26.0.1.tgz#602c412ae8d31c5d436fa84c3a58944b166833fa" - integrity sha512-dp20V0Pi1N92Y7+ULPa3tNR9KCG0Sy19NiopyPmo5rNoQ4OGWmuzp1P0q1je2HV3fRD0BYE7wqh8aReGGENfUA== +jest-circus@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-26.1.0.tgz#3c6ef8669eb3b7a83eac27b6b7bec874d697b15f" + integrity sha512-V5h5XJLPf0XXwP92GIOx8n0Q6vdPDcFPBuEVQ9/OPzpsx3gquL8fdxaJGZ5TsvkU3zWM7mDWULAKYJMRkA2e+g== dependencies: "@babel/traverse" "^7.1.0" - "@jest/environment" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/environment" "^26.1.0" + "@jest/test-result" "^26.1.0" + "@jest/types" "^26.1.0" chalk "^4.0.0" co "^4.6.0" dedent "^0.7.0" - expect "^26.0.1" + expect "^26.1.0" is-generator-fn "^2.0.0" - jest-each "^26.0.1" - jest-matcher-utils "^26.0.1" - jest-message-util "^26.0.1" - jest-runtime "^26.0.1" - jest-snapshot "^26.0.1" - jest-util "^26.0.1" - pretty-format "^26.0.1" + jest-each "^26.1.0" + jest-matcher-utils "^26.1.0" + jest-message-util "^26.1.0" + jest-runtime "^26.1.0" + jest-snapshot "^26.1.0" + jest-util "^26.1.0" + pretty-format "^26.1.0" stack-utils "^2.0.2" throat "^5.0.0" -jest-cli@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.0.1.tgz#3a42399a4cbc96a519b99ad069a117d955570cac" - integrity sha512-pFLfSOBcbG9iOZWaMK4Een+tTxi/Wcm34geqZEqrst9cZDkTQ1LZ2CnBrTlHWuYAiTMFr0EQeK52ScyFU8wK+w== +jest-cli@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.1.0.tgz#eb9ec8a18cf3b6aa556d9deaa9e24be12b43ad87" + integrity sha512-Imumvjgi3rU7stq6SJ1JUEMaV5aAgJYXIs0jPqdUnF47N/Tk83EXfmtvNKQ+SnFVI6t6mDOvfM3aA9Sg6kQPSw== dependencies: - "@jest/core" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/core" "^26.1.0" + "@jest/test-result" "^26.1.0" + "@jest/types" "^26.1.0" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" import-local "^3.0.2" is-ci "^2.0.0" - jest-config "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" + jest-config "^26.1.0" + jest-util "^26.1.0" + jest-validate "^26.1.0" prompts "^2.0.1" yargs "^15.3.1" -jest-config@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.0.1.tgz#096a3d4150afadf719d1fab00e9a6fb2d6d67507" - integrity sha512-9mWKx2L1LFgOXlDsC4YSeavnblN6A4CPfXFiobq+YYLaBMymA/SczN7xYTSmLaEYHZOcB98UdoN4m5uNt6tztg== +jest-config@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.1.0.tgz#9074f7539acc185e0113ad6d22ed589c16a37a73" + integrity sha512-ONTGeoMbAwGCdq4WuKkMcdMoyfs5CLzHEkzFOlVvcDXufZSaIWh/OXMLa2fwKXiOaFcqEw8qFr4VOKJQfn4CVw== dependencies: "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^26.0.1" - "@jest/types" "^26.0.1" - babel-jest "^26.0.1" + "@jest/test-sequencer" "^26.1.0" + "@jest/types" "^26.1.0" + babel-jest "^26.1.0" chalk "^4.0.0" deepmerge "^4.2.2" glob "^7.1.1" graceful-fs "^4.2.4" - jest-environment-jsdom "^26.0.1" - jest-environment-node "^26.0.1" + jest-environment-jsdom "^26.1.0" + jest-environment-node "^26.1.0" jest-get-type "^26.0.0" - jest-jasmine2 "^26.0.1" + jest-jasmine2 "^26.1.0" jest-regex-util "^26.0.0" - jest-resolve "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" + jest-resolve "^26.1.0" + jest-util "^26.1.0" + jest-validate "^26.1.0" micromatch "^4.0.2" - pretty-format "^26.0.1" + pretty-format "^26.1.0" jest-diff@^25.2.1: version "25.5.0" @@ -2845,15 +2808,15 @@ jest-diff@^25.2.1: jest-get-type "^25.2.6" pretty-format "^25.5.0" -jest-diff@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.0.1.tgz#c44ab3cdd5977d466de69c46929e0e57f89aa1de" - integrity sha512-odTcHyl5X+U+QsczJmOjWw5tPvww+y9Yim5xzqxVl/R1j4z71+fHW4g8qu1ugMmKdFdxw+AtQgs5mupPnzcIBQ== +jest-diff@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.1.0.tgz#00a549bdc936c9691eb4dc25d1fbd78bf456abb2" + integrity sha512-GZpIcom339y0OXznsEKjtkfKxNdg7bVbEofK8Q6MnevTIiR1jNhDWKhRX6X0SDXJlwn3dy59nZ1z55fLkAqPWg== dependencies: chalk "^4.0.0" diff-sequences "^26.0.0" jest-get-type "^26.0.0" - pretty-format "^26.0.1" + pretty-format "^26.1.0" jest-docblock@^26.0.0: version "26.0.0" @@ -2862,39 +2825,39 @@ jest-docblock@^26.0.0: dependencies: detect-newline "^3.0.0" -jest-each@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.0.1.tgz#633083061619302fc90dd8f58350f9d77d67be04" - integrity sha512-OTgJlwXCAR8NIWaXFL5DBbeS4QIYPuNASkzSwMCJO+ywo9BEa6TqkaSWsfR7VdbMLdgYJqSfQcIyjJCNwl5n4Q== +jest-each@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.1.0.tgz#e35449875009a22d74d1bda183b306db20f286f7" + integrity sha512-lYiSo4Igr81q6QRsVQq9LIkJW0hZcKxkIkHzNeTMPENYYDw/W/Raq28iJ0sLlNFYz2qxxeLnc5K2gQoFYlu2bA== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" chalk "^4.0.0" jest-get-type "^26.0.0" - jest-util "^26.0.1" - pretty-format "^26.0.1" - -jest-environment-jsdom@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.0.1.tgz#217690852e5bdd7c846a4e3b50c8ffd441dfd249" - integrity sha512-u88NJa3aptz2Xix2pFhihRBAatwZHWwSiRLBDBQE1cdJvDjPvv7ZGA0NQBxWwDDn7D0g1uHqxM8aGgfA9Bx49g== - dependencies: - "@jest/environment" "^26.0.1" - "@jest/fake-timers" "^26.0.1" - "@jest/types" "^26.0.1" - jest-mock "^26.0.1" - jest-util "^26.0.1" + jest-util "^26.1.0" + pretty-format "^26.1.0" + +jest-environment-jsdom@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.1.0.tgz#9dc7313ffe1b59761dad1fedb76e2503e5d37c5b" + integrity sha512-dWfiJ+spunVAwzXbdVqPH1LbuJW/kDL+FyqgA5YzquisHqTi0g9hquKif9xKm7c1bKBj6wbmJuDkeMCnxZEpUw== + dependencies: + "@jest/environment" "^26.1.0" + "@jest/fake-timers" "^26.1.0" + "@jest/types" "^26.1.0" + jest-mock "^26.1.0" + jest-util "^26.1.0" jsdom "^16.2.2" -jest-environment-node@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.0.1.tgz#584a9ff623124ff6eeb49e0131b5f7612b310b13" - integrity sha512-4FRBWcSn5yVo0KtNav7+5NH5Z/tEgDLp7VRQVS5tCouWORxj+nI+1tOLutM07Zb2Qi7ja+HEDoOUkjBSWZg/IQ== +jest-environment-node@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.1.0.tgz#8bb387b3eefb132eab7826f9a808e4e05618960b" + integrity sha512-DNm5x1aQH0iRAe9UYAkZenuzuJ69VKzDCAYISFHQ5i9e+2Tbeu2ONGY7YStubCLH8a1wdKBgqScYw85+ySxqxg== dependencies: - "@jest/environment" "^26.0.1" - "@jest/fake-timers" "^26.0.1" - "@jest/types" "^26.0.1" - jest-mock "^26.0.1" - jest-util "^26.0.1" + "@jest/environment" "^26.1.0" + "@jest/fake-timers" "^26.1.0" + "@jest/types" "^26.1.0" + jest-mock "^26.1.0" + jest-util "^26.1.0" jest-get-type@^25.2.6: version "25.2.6" @@ -2906,19 +2869,19 @@ jest-get-type@^26.0.0: resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.0.0.tgz#381e986a718998dbfafcd5ec05934be538db4039" integrity sha512-zRc1OAPnnws1EVfykXOj19zo2EMw5Hi6HLbFCSjpuJiXtOWAYIjNsHVSbpQ8bDX7L5BGYGI8m+HmKdjHYFF0kg== -jest-haste-map@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.0.1.tgz#40dcc03c43ac94d25b8618075804d09cd5d49de7" - integrity sha512-J9kBl/EdjmDsvyv7CiyKY5+DsTvVOScenprz/fGqfLg/pm1gdjbwwQ98nW0t+OIt+f+5nAVaElvn/6wP5KO7KA== +jest-haste-map@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.1.0.tgz#ef31209be73f09b0d9445e7d213e1b53d0d1476a" + integrity sha512-WeBS54xCIz9twzkEdm6+vJBXgRBQfdbbXD0dk8lJh7gLihopABlJmIQFdWSDDtuDe4PRiObsjZSUjbJ1uhWEpA== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" "@types/graceful-fs" "^4.1.2" anymatch "^3.0.3" fb-watchman "^2.0.0" graceful-fs "^4.2.4" - jest-serializer "^26.0.0" - jest-util "^26.0.1" - jest-worker "^26.0.0" + jest-serializer "^26.1.0" + jest-util "^26.1.0" + jest-worker "^26.1.0" micromatch "^4.0.2" sane "^4.0.3" walker "^1.0.7" @@ -2926,54 +2889,54 @@ jest-haste-map@^26.0.1: optionalDependencies: fsevents "^2.1.2" -jest-jasmine2@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.0.1.tgz#947c40ee816636ba23112af3206d6fa7b23c1c1c" - integrity sha512-ILaRyiWxiXOJ+RWTKupzQWwnPaeXPIoLS5uW41h18varJzd9/7I0QJGqg69fhTT1ev9JpSSo9QtalriUN0oqOg== +jest-jasmine2@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.1.0.tgz#4dfe349b2b2d3c6b3a27c024fd4cb57ac0ed4b6f" + integrity sha512-1IPtoDKOAG+MeBrKvvuxxGPJb35MTTRSDglNdWWCndCB3TIVzbLThRBkwH9P081vXLgiJHZY8Bz3yzFS803xqQ== dependencies: "@babel/traverse" "^7.1.0" - "@jest/environment" "^26.0.1" - "@jest/source-map" "^26.0.0" - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/environment" "^26.1.0" + "@jest/source-map" "^26.1.0" + "@jest/test-result" "^26.1.0" + "@jest/types" "^26.1.0" chalk "^4.0.0" co "^4.6.0" - expect "^26.0.1" + expect "^26.1.0" is-generator-fn "^2.0.0" - jest-each "^26.0.1" - jest-matcher-utils "^26.0.1" - jest-message-util "^26.0.1" - jest-runtime "^26.0.1" - jest-snapshot "^26.0.1" - jest-util "^26.0.1" - pretty-format "^26.0.1" + jest-each "^26.1.0" + jest-matcher-utils "^26.1.0" + jest-message-util "^26.1.0" + jest-runtime "^26.1.0" + jest-snapshot "^26.1.0" + jest-util "^26.1.0" + pretty-format "^26.1.0" throat "^5.0.0" -jest-leak-detector@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.0.1.tgz#79b19ab3f41170e0a78eb8fa754a116d3447fb8c" - integrity sha512-93FR8tJhaYIWrWsbmVN1pQ9ZNlbgRpfvrnw5LmgLRX0ckOJ8ut/I35CL7awi2ecq6Ca4lL59bEK9hr7nqoHWPA== +jest-leak-detector@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.1.0.tgz#039c3a07ebcd8adfa984b6ac015752c35792e0a6" + integrity sha512-dsMnKF+4BVOZwvQDlgn3MG+Ns4JuLv8jNvXH56bgqrrboyCbI1rQg6EI5rs+8IYagVcfVP2yZFKfWNZy0rK0Hw== dependencies: jest-get-type "^26.0.0" - pretty-format "^26.0.1" + pretty-format "^26.1.0" -jest-matcher-utils@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.0.1.tgz#12e1fc386fe4f14678f4cc8dbd5ba75a58092911" - integrity sha512-PUMlsLth0Azen8Q2WFTwnSkGh2JZ8FYuwijC8NR47vXKpsrKmA1wWvgcj1CquuVfcYiDEdj985u5Wmg7COEARw== +jest-matcher-utils@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.1.0.tgz#cf75a41bd413dda784f022de5a65a2a5c73a5c92" + integrity sha512-PW9JtItbYvES/xLn5mYxjMd+Rk+/kIt88EfH3N7w9KeOrHWaHrdYPnVHndGbsFGRJ2d5gKtwggCvkqbFDoouQA== dependencies: chalk "^4.0.0" - jest-diff "^26.0.1" + jest-diff "^26.1.0" jest-get-type "^26.0.0" - pretty-format "^26.0.1" + pretty-format "^26.1.0" -jest-message-util@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.0.1.tgz#07af1b42fc450b4cc8e90e4c9cef11b33ce9b0ac" - integrity sha512-CbK8uQREZ8umUfo8+zgIfEt+W7HAHjQCoRaNs4WxKGhAYBGwEyvxuK81FXa7VeB9pwDEXeeKOB2qcsNVCAvB7Q== +jest-message-util@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.1.0.tgz#52573fbb8f5cea443c4d1747804d7a238a3e233c" + integrity sha512-dY0+UlldiAJwNDJ08SF0HdF32g9PkbF2NRK/+2iMPU40O6q+iSn1lgog/u0UH8ksWoPv0+gNq8cjhYO2MFtT0g== dependencies: "@babel/code-frame" "^7.0.0" - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" "@types/stack-utils" "^1.0.1" chalk "^4.0.0" graceful-fs "^4.2.4" @@ -2981,182 +2944,182 @@ jest-message-util@^26.0.1: slash "^3.0.0" stack-utils "^2.0.2" -jest-mock@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.0.1.tgz#7fd1517ed4955397cf1620a771dc2d61fad8fd40" - integrity sha512-MpYTBqycuPYSY6xKJognV7Ja46/TeRbAZept987Zp+tuJvMN0YBWyyhG9mXyYQaU3SBI0TUlSaO5L3p49agw7Q== +jest-mock@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.1.0.tgz#80d8286da1f05a345fbad1bfd6fa49a899465d3d" + integrity sha512-1Rm8EIJ3ZFA8yCIie92UbxZWj9SuVmUGcyhLHyAhY6WI3NIct38nVcfOPWhJteqSn8V8e3xOMha9Ojfazfpovw== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" jest-pnp-resolver@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz#ecdae604c077a7fbc70defb6d517c3c1c898923a" - integrity sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ== + version "1.2.2" + resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" + integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== jest-regex-util@^26.0.0: version "26.0.0" resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== -jest-resolve-dependencies@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.0.1.tgz#607ba7ccc32151d185a477cff45bf33bce417f0b" - integrity sha512-9d5/RS/ft0vB/qy7jct/qAhzJsr6fRQJyGAFigK3XD4hf9kIbEH5gks4t4Z7kyMRhowU6HWm/o8ILqhaHdSqLw== +jest-resolve-dependencies@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.1.0.tgz#1ce36472f864a5dadf7dc82fa158e1c77955691b" + integrity sha512-fQVEPHHQ1JjHRDxzlLU/buuQ9om+hqW6Vo928aa4b4yvq4ZHBtRSDsLdKQLuCqn5CkTVpYZ7ARh2fbA8WkRE6g== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" jest-regex-util "^26.0.0" - jest-snapshot "^26.0.1" + jest-snapshot "^26.1.0" -jest-resolve@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.0.1.tgz#21d1ee06f9ea270a343a8893051aeed940cde736" - integrity sha512-6jWxk0IKZkPIVTvq6s72RH735P8f9eCJW3IM5CX/SJFeKq1p2cZx0U49wf/SdMlhaB/anann5J2nCJj6HrbezQ== +jest-resolve@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.1.0.tgz#a530eaa302b1f6fa0479079d1561dd69abc00e68" + integrity sha512-KsY1JV9FeVgEmwIISbZZN83RNGJ1CC+XUCikf/ZWJBX/tO4a4NvA21YixokhdR9UnmPKKAC4LafVixJBrwlmfg== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" chalk "^4.0.0" graceful-fs "^4.2.4" jest-pnp-resolver "^1.2.1" - jest-util "^26.0.1" + jest-util "^26.1.0" read-pkg-up "^7.0.1" resolve "^1.17.0" slash "^3.0.0" -jest-runner@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.0.1.tgz#ea03584b7ae4bacfb7e533d680a575a49ae35d50" - integrity sha512-CApm0g81b49Znm4cZekYQK67zY7kkB4umOlI2Dx5CwKAzdgw75EN+ozBHRvxBzwo1ZLYZ07TFxkaPm+1t4d8jA== +jest-runner@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.1.0.tgz#457f7fc522afe46ca6db1dccf19f87f500b3288d" + integrity sha512-elvP7y0fVDREnfqit0zAxiXkDRSw6dgCkzPCf1XvIMnSDZ8yogmSKJf192dpOgnUVykmQXwYYJnCx641uLTgcw== dependencies: - "@jest/console" "^26.0.1" - "@jest/environment" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/console" "^26.1.0" + "@jest/environment" "^26.1.0" + "@jest/test-result" "^26.1.0" + "@jest/types" "^26.1.0" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" - jest-config "^26.0.1" + jest-config "^26.1.0" jest-docblock "^26.0.0" - jest-haste-map "^26.0.1" - jest-jasmine2 "^26.0.1" - jest-leak-detector "^26.0.1" - jest-message-util "^26.0.1" - jest-resolve "^26.0.1" - jest-runtime "^26.0.1" - jest-util "^26.0.1" - jest-worker "^26.0.0" + jest-haste-map "^26.1.0" + jest-jasmine2 "^26.1.0" + jest-leak-detector "^26.1.0" + jest-message-util "^26.1.0" + jest-resolve "^26.1.0" + jest-runtime "^26.1.0" + jest-util "^26.1.0" + jest-worker "^26.1.0" source-map-support "^0.5.6" throat "^5.0.0" -jest-runtime@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.0.1.tgz#a121a6321235987d294168e282d52b364d7d3f89" - integrity sha512-Ci2QhYFmANg5qaXWf78T2Pfo6GtmIBn2rRaLnklRyEucmPccmCKvS9JPljcmtVamsdMmkyNkVFb9pBTD6si9Lw== - dependencies: - "@jest/console" "^26.0.1" - "@jest/environment" "^26.0.1" - "@jest/fake-timers" "^26.0.1" - "@jest/globals" "^26.0.1" - "@jest/source-map" "^26.0.0" - "@jest/test-result" "^26.0.1" - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" +jest-runtime@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.1.0.tgz#45a37af42115f123ed5c51f126c05502da2469cb" + integrity sha512-1qiYN+EZLmG1QV2wdEBRf+Ci8i3VSfIYLF02U18PiUDrMbhfpN/EAMMkJtT02jgJUoaEOpHAIXG6zS3QRMzRmA== + dependencies: + "@jest/console" "^26.1.0" + "@jest/environment" "^26.1.0" + "@jest/fake-timers" "^26.1.0" + "@jest/globals" "^26.1.0" + "@jest/source-map" "^26.1.0" + "@jest/test-result" "^26.1.0" + "@jest/transform" "^26.1.0" + "@jest/types" "^26.1.0" "@types/yargs" "^15.0.0" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" glob "^7.1.3" graceful-fs "^4.2.4" - jest-config "^26.0.1" - jest-haste-map "^26.0.1" - jest-message-util "^26.0.1" - jest-mock "^26.0.1" + jest-config "^26.1.0" + jest-haste-map "^26.1.0" + jest-message-util "^26.1.0" + jest-mock "^26.1.0" jest-regex-util "^26.0.0" - jest-resolve "^26.0.1" - jest-snapshot "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" + jest-resolve "^26.1.0" + jest-snapshot "^26.1.0" + jest-util "^26.1.0" + jest-validate "^26.1.0" slash "^3.0.0" strip-bom "^4.0.0" yargs "^15.3.1" -jest-serializer@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.0.0.tgz#f6c521ddb976943b93e662c0d4d79245abec72a3" - integrity sha512-sQGXLdEGWFAE4wIJ2ZaIDb+ikETlUirEOBsLXdoBbeLhTHkZUJwgk3+M8eyFizhM6le43PDCCKPA1hzkSDo4cQ== +jest-serializer@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.1.0.tgz#72a394531fc9b08e173dc7d297440ac610d95022" + integrity sha512-eqZOQG/0+MHmr25b2Z86g7+Kzd5dG9dhCiUoyUNJPgiqi38DqbDEOlHcNijyfZoj74soGBohKBZuJFS18YTJ5w== dependencies: graceful-fs "^4.2.4" -jest-snapshot@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.0.1.tgz#1baa942bd83d47b837a84af7fcf5fd4a236da399" - integrity sha512-jxd+cF7+LL+a80qh6TAnTLUZHyQoWwEHSUFJjkw35u3Gx+BZUNuXhYvDqHXr62UQPnWo2P6fvQlLjsU93UKyxA== +jest-snapshot@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.1.0.tgz#c36ed1e0334bd7bd2fe5ad07e93a364ead7e1349" + integrity sha512-YhSbU7eMTVQO/iRbNs8j0mKRxGp4plo7sJ3GzOQ0IYjvsBiwg0T1o0zGQAYepza7lYHuPTrG5J2yDd0CE2YxSw== dependencies: "@babel/types" "^7.0.0" - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" "@types/prettier" "^2.0.0" chalk "^4.0.0" - expect "^26.0.1" + expect "^26.1.0" graceful-fs "^4.2.4" - jest-diff "^26.0.1" + jest-diff "^26.1.0" jest-get-type "^26.0.0" - jest-matcher-utils "^26.0.1" - jest-message-util "^26.0.1" - jest-resolve "^26.0.1" - make-dir "^3.0.0" + jest-haste-map "^26.1.0" + jest-matcher-utils "^26.1.0" + jest-message-util "^26.1.0" + jest-resolve "^26.1.0" natural-compare "^1.4.0" - pretty-format "^26.0.1" + pretty-format "^26.1.0" semver "^7.3.2" -jest-util@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.0.1.tgz#72c4c51177b695fdd795ca072a6f94e3d7cef00a" - integrity sha512-byQ3n7ad1BO/WyFkYvlWQHTsomB6GIewBh8tlGtusiylAlaxQ1UpS0XYH0ngOyhZuHVLN79Qvl6/pMiDMSSG1g== +jest-util@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.1.0.tgz#80e85d4ba820decacf41a691c2042d5276e5d8d8" + integrity sha512-rNMOwFQevljfNGvbzNQAxdmXQ+NawW/J72dmddsK0E8vgxXCMtwQ/EH0BiWEIxh0hhMcTsxwAxINt7Lh46Uzbg== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" chalk "^4.0.0" graceful-fs "^4.2.4" is-ci "^2.0.0" - make-dir "^3.0.0" + micromatch "^4.0.2" -jest-validate@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.0.1.tgz#a62987e1da5b7f724130f904725e22f4e5b2e23c" - integrity sha512-u0xRc+rbmov/VqXnX3DlkxD74rHI/CfS5xaV2VpeaVySjbb1JioNVOyly5b56q2l9ZKe7bVG5qWmjfctkQb0bA== +jest-validate@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.1.0.tgz#942c85ad3d60f78250c488a7f85d8f11a29788e7" + integrity sha512-WPApOOnXsiwhZtmkDsxnpye+XLb/tUISP+H6cHjfUIXvlG+eKwP+isnivsxlHCPaO9Q5wvbhloIBkdF3qUn+Nw== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" camelcase "^6.0.0" chalk "^4.0.0" jest-get-type "^26.0.0" leven "^3.1.0" - pretty-format "^26.0.1" + pretty-format "^26.1.0" -jest-watcher@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.0.1.tgz#5b5e3ebbdf10c240e22a98af66d645631afda770" - integrity sha512-pdZPydsS8475f89kGswaNsN3rhP6lnC3/QDCppP7bg1L9JQz7oU9Mb/5xPETk1RHDCWeqmVC47M4K5RR7ejxFw== +jest-watcher@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.1.0.tgz#99812a0cd931f0cb3d153180426135ab83e4d8f2" + integrity sha512-ffEOhJl2EvAIki613oPsSG11usqnGUzIiK7MMX6hE4422aXOcVEG3ySCTDFLn1+LZNXGPE8tuJxhp8OBJ1pgzQ== dependencies: - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/test-result" "^26.1.0" + "@jest/types" "^26.1.0" ansi-escapes "^4.2.1" chalk "^4.0.0" - jest-util "^26.0.1" + jest-util "^26.1.0" string-length "^4.0.1" -jest-worker@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.0.0.tgz#4920c7714f0a96c6412464718d0c58a3df3fb066" - integrity sha512-pPaYa2+JnwmiZjK9x7p9BoZht+47ecFCDFA/CJxspHzeDvQcfVBLWzCiWyo+EGrSiQMWZtCFo9iSvMZnAAo8vw== +jest-worker@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.1.0.tgz#65d5641af74e08ccd561c240e7db61284f82f33d" + integrity sha512-Z9P5pZ6UC+kakMbNJn+tA2RdVdNX5WH1x+5UCBZ9MxIK24pjYtFt96fK+UwBTrjLYm232g1xz0L3eTh51OW+yQ== dependencies: merge-stream "^2.0.0" supports-color "^7.0.0" -jest@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest/-/jest-26.0.1.tgz#5c51a2e58dff7525b65f169721767173bf832694" - integrity sha512-29Q54kn5Bm7ZGKIuH2JRmnKl85YRigp0o0asTc6Sb6l2ch1DCXIeZTLLFy9ultJvhkTqbswF5DEx4+RlkmCxWg== +jest@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest/-/jest-26.1.0.tgz#2f3aa7bcffb9bfd025473f83bbbf46a3af026263" + integrity sha512-LIti8jppw5BcQvmNJe4w2g1N/3V68HUfAv9zDVm7v+VAtQulGhH0LnmmiVkbNE4M4I43Bj2fXPiBGKt26k9tHw== dependencies: - "@jest/core" "^26.0.1" + "@jest/core" "^26.1.0" import-local "^3.0.2" - jest-cli "^26.0.1" + jest-cli "^26.1.0" js-tokens@^4.0.0: version "4.0.0" @@ -3387,21 +3350,11 @@ lodash._reinterpolate@^3.0.0: resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= -lodash.get@^4.4.2: - version "4.4.2" - resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" - integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= - lodash.memoize@4.x: version "4.1.2" resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= -lodash.set@^4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/lodash.set/-/lodash.set-4.3.2.tgz#d8757b1da807dde24816b0d6a84bea1a76230b23" - integrity sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM= - lodash.sortby@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" @@ -3422,11 +3375,6 @@ lodash.templatesettings@^4.0.0: dependencies: lodash._reinterpolate "^3.0.0" -lodash.uniq@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" - integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= - lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15: version "4.17.15" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" @@ -3788,11 +3736,6 @@ object.pick@^1.3.0: dependencies: isobject "^3.0.1" -octokit-pagination-methods@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/octokit-pagination-methods/-/octokit-pagination-methods-1.1.0.tgz#cf472edc9d551055f9ef73f6e42b4dbb4c80bea4" - integrity sha512-fZ4qZdQ2nxJvtcasX7Ghl+WlWS/d9IgnBIwFZXVNNZUmzpno91SX5bc5vuxiuKoCtK78XxGGNuSCrDC7xYB3OQ== - once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" @@ -4037,12 +3980,12 @@ pretty-format@^25.2.1, pretty-format@^25.5.0: ansi-styles "^4.0.0" react-is "^16.12.0" -pretty-format@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.0.1.tgz#a4fe54fe428ad2fd3413ca6bbd1ec8c2e277e197" - integrity sha512-SWxz6MbupT3ZSlL0Po4WF/KujhQaVehijR2blyRDCzk9e45EaYMVhMBn49fnRuHxtkSpXTes1GxNpVmH86Bxfw== +pretty-format@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.1.0.tgz#272b9cd1f1a924ab5d443dc224899d7a65cb96ec" + integrity sha512-GmeO1PEYdM+non4BKCj+XsPJjFOJIPnsLewqhDVoqY1xo0yNmDas7tC2XwpMrRAHR3MaE2hPo37deX5OisJ2Wg== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" ansi-regex "^5.0.0" ansi-styles "^4.0.0" react-is "^16.12.0" @@ -4854,10 +4797,11 @@ through2@^2.0.2: xtend "~4.0.1" through2@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.1.tgz#39276e713c3302edf9e388dd9c812dd3b825bd5a" - integrity sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww== + version "3.0.2" + resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.2.tgz#99f88931cfc761ec7678b41d5d7336b5b6a07bf4" + integrity sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ== dependencies: + inherits "^2.0.4" readable-stream "2 || 3" "through@>=2.2.7 <3", through@^2.3.8: @@ -5052,13 +4996,6 @@ union-value@^1.0.0: is-extendable "^0.1.1" set-value "^2.0.1" -universal-user-agent@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-4.0.1.tgz#fd8d6cb773a679a709e967ef8288a31fcc03e557" - integrity sha512-LnST3ebHwVL2aNe4mejI9IQh2HfZ1RLo8Io2HugSif8ekzD1TlWpHpColOB/eh8JHMLkGH3Akqf040I+4ylNxg== - dependencies: - os-name "^3.1.0" - universal-user-agent@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-5.0.0.tgz#a3182aa758069bf0e79952570ca757de3579c1d9" From d6f7cc7581757ce726d3aeb53a73dd66198ded37 Mon Sep 17 00:00:00 2001 From: Technote Date: Fri, 26 Jun 2020 02:33:44 +0900 Subject: [PATCH 4/6] feat: update library usage --- package.json | 3 ++- src/utils/commit.ts | 5 +++-- src/utils/version.ts | 2 +- yarn.lock | 52 ++++++++++---------------------------------- 4 files changed, 18 insertions(+), 44 deletions(-) diff --git a/package.json b/package.json index f056779..6590cec 100644 --- a/package.json +++ b/package.json @@ -27,12 +27,13 @@ ], "dependencies": { "@actions/github": "^3.0.0", + "@octokit/plugin-rest-endpoint-methods": "^4.0.0", "@technote-space/github-action-helper": "^3.0.1" }, "devDependencies": { "@commitlint/cli": "^9.0.1", "@commitlint/config-conventional": "^9.0.1", - "@technote-space/github-action-test-helper": "^0.4.0", + "@technote-space/github-action-test-helper": "^0.5.0", "@types/jest": "^26.0.3", "@types/node": "^14.0.14", "@typescript-eslint/eslint-plugin": "^3.4.0", diff --git a/src/utils/commit.ts b/src/utils/commit.ts index eb41072..101cc45 100644 --- a/src/utils/commit.ts +++ b/src/utils/commit.ts @@ -1,10 +1,11 @@ import { Context } from '@actions/github/lib/context'; -import { Octokit } from '@octokit/rest'; +import { Octokit } from '@technote-space/github-action-helper/dist/types'; +import { PullsListCommitsResponseData } from '@octokit/types/dist-types/generated/Endpoints'; import { parseCommitMessage } from './misc'; import { Commit, ParentCommitMessage } from '../types'; import { MERGE_MESSAGE_PATTERN } from '../constant'; -const listCommits = async(octokit: Octokit, context: Context): Promise> => octokit.paginate( +const listCommits = async(octokit: Octokit, context: Context): Promise => octokit.paginate( octokit.pulls.listCommits.endpoint.merge({ ...context.repo, 'pull_number': context.payload.number, diff --git a/src/utils/version.ts b/src/utils/version.ts index 2f05ce4..a263fe9 100644 --- a/src/utils/version.ts +++ b/src/utils/version.ts @@ -1,6 +1,6 @@ import { Context } from '@actions/github/lib/context'; -import { Octokit } from '@octokit/rest'; import { Utils, ApiHelper, Logger } from '@technote-space/github-action-helper'; +import { Octokit } from '@technote-space/github-action-helper/dist/types'; import { getCommits } from './commit'; import { log } from './misc'; import { Commit } from '../types'; diff --git a/yarn.lock b/yarn.lock index ac26d1e..5eb7fb2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -648,18 +648,6 @@ before-after-hook "^2.1.0" universal-user-agent "^5.0.0" -"@octokit/core@^3.0.0": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@octokit/core/-/core-3.1.0.tgz#9c3c9b23f7504668cfa057f143ccbf0c645a0ac9" - integrity sha512-yPyQSmxIXLieEIRikk2w8AEtWkFdfG/LXcw1KvEtK3iP0ENZLW/WYQmdzOKqfSaLhooz4CJ9D+WY79C8ZliACw== - dependencies: - "@octokit/auth-token" "^2.4.0" - "@octokit/graphql" "^4.3.1" - "@octokit/request" "^5.4.0" - "@octokit/types" "^5.0.0" - before-after-hook "^2.1.0" - universal-user-agent "^5.0.0" - "@octokit/endpoint@^6.0.1": version "6.0.3" resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.3.tgz#dd09b599662d7e1b66374a177ab620d8cdf73487" @@ -685,19 +673,6 @@ dependencies: "@octokit/types" "^5.0.0" -"@octokit/plugin-request-log@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.0.tgz#eef87a431300f6148c39a7f75f8cfeb218b2547e" - integrity sha512-ywoxP68aOT3zHCLgWZgwUJatiENeHE7xJzYjfz8WI0goynp96wETBF+d95b8g/uL4QmS6owPVlaxiz3wyMAzcw== - -"@octokit/plugin-rest-endpoint-methods@4.0.0", "@octokit/plugin-rest-endpoint-methods@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-4.0.0.tgz#b02a2006dda8e908c3f8ab381dd5475ef5a810a8" - integrity sha512-emS6gysz4E9BNi9IrCl7Pm4kR+Az3MmVB0/DoDCmF4U48NbYG3weKyDlgkrz6Jbl4Mu4nDx8YWZwC4HjoTdcCA== - dependencies: - "@octokit/types" "^5.0.0" - deprecation "^2.3.1" - "@octokit/plugin-rest-endpoint-methods@^3.10.0": version "3.17.0" resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-3.17.0.tgz#d8ba04eb883849dd98666c55bf49d8c9fe7be055" @@ -706,6 +681,14 @@ "@octokit/types" "^4.1.6" deprecation "^2.3.1" +"@octokit/plugin-rest-endpoint-methods@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-4.0.0.tgz#b02a2006dda8e908c3f8ab381dd5475ef5a810a8" + integrity sha512-emS6gysz4E9BNi9IrCl7Pm4kR+Az3MmVB0/DoDCmF4U48NbYG3weKyDlgkrz6Jbl4Mu4nDx8YWZwC4HjoTdcCA== + dependencies: + "@octokit/types" "^5.0.0" + deprecation "^2.3.1" + "@octokit/request-error@^2.0.0": version "2.0.2" resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-2.0.2.tgz#0e76b83f5d8fdda1db99027ea5f617c2e6ba9ed0" @@ -729,16 +712,6 @@ once "^1.4.0" universal-user-agent "^5.0.0" -"@octokit/rest@^18.0.0": - version "18.0.0" - resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-18.0.0.tgz#7f401d9ce13530ad743dfd519ae62ce49bcc0358" - integrity sha512-4G/a42lry9NFGuuECnua1R1eoKkdBYJap97jYbWDNYBOUboWcM75GJ1VIcfvwDV/pW0lMPs7CEmhHoVrSV5shg== - dependencies: - "@octokit/core" "^3.0.0" - "@octokit/plugin-paginate-rest" "^2.2.0" - "@octokit/plugin-request-log" "^1.0.0" - "@octokit/plugin-rest-endpoint-methods" "4.0.0" - "@octokit/types@^4.1.6": version "4.1.10" resolved "https://registry.yarnpkg.com/@octokit/types/-/types-4.1.10.tgz#e4029c11e2cc1335051775bc1600e7e740e4aca4" @@ -778,14 +751,13 @@ shell-escape "^0.2.0" sprintf-js "^1.1.2" -"@technote-space/github-action-test-helper@^0.4.0": - version "0.4.0" - resolved "https://registry.yarnpkg.com/@technote-space/github-action-test-helper/-/github-action-test-helper-0.4.0.tgz#ad52697904c1a540fdbbc1241b1a1b6b6489d04e" - integrity sha512-xiaDI/f0fjM+n/lY8cYK7438bgc8fVpxieVghGDUiGX3WI9cRVaMc4S3oSGNvhx62vKPH4dVb2IVqjhsS1FjZg== +"@technote-space/github-action-test-helper@^0.5.0": + version "0.5.0" + resolved "https://registry.yarnpkg.com/@technote-space/github-action-test-helper/-/github-action-test-helper-0.5.0.tgz#8a355a89d3b75237a6968ad55a3c51e767e89944" + integrity sha512-G84qLpP0R/ot2c+AiY5Xs5hsoW88gajnOfnsS+en9Fo1eZbFz7Ws19epL/zf/LMZptZjeqfzQwjJZxqqbVAsyg== dependencies: "@actions/github" "^3.0.0" "@octokit/plugin-rest-endpoint-methods" "^4.0.0" - "@octokit/rest" "^18.0.0" js-yaml "^3.14.0" "@types/babel__core@^7.0.0", "@types/babel__core@^7.1.7": From f61960c391665bb0ff86446621035d0abce96452 Mon Sep 17 00:00:00 2001 From: Technote Date: Fri, 26 Jun 2020 02:33:57 +0900 Subject: [PATCH 5/6] fix: broken tests --- __tests__/utils/version.test.ts | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/__tests__/utils/version.test.ts b/__tests__/utils/version.test.ts index 682cf45..9e4b333 100644 --- a/__tests__/utils/version.test.ts +++ b/__tests__/utils/version.test.ts @@ -34,7 +34,7 @@ describe('getCurrentVersion', () => { it('should get current version 1', async() => { nock('https://api.github.com') .persist() - .get('/repos/hello/world/git/matching-refs/tags/') + .get('/repos/hello/world/git/matching-refs/tags%2F') .reply(200, () => getApiFixture(fixtureRootDir, 'repos.git.matching-refs')); expect(await getCurrentVersion(helper)).toBe('v2.0.0'); @@ -43,7 +43,7 @@ describe('getCurrentVersion', () => { it('should get current version 2', async() => { nock('https://api.github.com') .persist() - .get('/repos/hello/world/git/matching-refs/tags/') + .get('/repos/hello/world/git/matching-refs/tags%2F') .reply(200, () => []); expect(await getCurrentVersion(helper)).toBe('v0.0.0'); @@ -105,7 +105,7 @@ describe('getNextVersion', () => { it('should get next version 1-1', async() => { nock('https://api.github.com') .persist() - .get('/repos/hello/world/git/matching-refs/tags/') + .get('/repos/hello/world/git/matching-refs/tags%2F') .reply(200, () => []) .get('/repos/hello/world/pulls/123/commits') .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list1')); @@ -116,7 +116,7 @@ describe('getNextVersion', () => { it('should get next version 1-2', async() => { nock('https://api.github.com') .persist() - .get('/repos/hello/world/git/matching-refs/tags/') + .get('/repos/hello/world/git/matching-refs/tags%2F') .reply(200, () => []) .get('/repos/hello/world/pulls/123/commits') .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list1')); @@ -127,7 +127,7 @@ describe('getNextVersion', () => { it('should get next version 1-3', async() => { nock('https://api.github.com') .persist() - .get('/repos/hello/world/git/matching-refs/tags/') + .get('/repos/hello/world/git/matching-refs/tags%2F') .reply(200, () => []) .get('/repos/hello/world/pulls/123/commits') .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list1')); @@ -138,7 +138,7 @@ describe('getNextVersion', () => { it('should get next version 2', async() => { nock('https://api.github.com') .persist() - .get('/repos/hello/world/git/matching-refs/tags/') + .get('/repos/hello/world/git/matching-refs/tags%2F') .reply(200, () => getApiFixture(fixtureRootDir, 'repos.git.matching-refs')) .get('/repos/hello/world/pulls/123/commits') .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list2')); @@ -151,7 +151,7 @@ describe('getNextVersion', () => { nock('https://api.github.com') .persist() - .get('/repos/hello/world/git/matching-refs/tags/') + .get('/repos/hello/world/git/matching-refs/tags%2F') .reply(200, () => getApiFixture(fixtureRootDir, 'repos.git.matching-refs')) .get('/repos/hello/world/pulls/123/commits') .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list3')); @@ -166,7 +166,7 @@ describe('getNextVersion', () => { nock('https://api.github.com') .persist() - .get('/repos/hello/world/git/matching-refs/tags/') + .get('/repos/hello/world/git/matching-refs/tags%2F') .reply(200, () => getApiFixture(fixtureRootDir, 'repos.git.matching-refs')) .get('/repos/hello/world/pulls/123/commits') .reply(200, () => getApiFixture(fixtureRootDir, 'commit.list2')); From cf961a1db3fe0f81ed97ed342da2be19084465d6 Mon Sep 17 00:00:00 2001 From: Technote Date: Fri, 26 Jun 2020 02:35:17 +0900 Subject: [PATCH 6/6] feat: update package version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 6590cec..5de6ed5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@technote-space/github-action-version-helper", - "version": "0.3.4", + "version": "0.4.0", "description": "Version helper for GitHub Actions.", "author": { "name": "Technote",