mirror of
https://github.com/carloscuesta/gitmoji.git
synced 2025-12-08 20:14:12 +00:00
♻️ Replace jsonlint with ajv-cli (#1253)
* ♻️ Update schema to `draft2020` * ♻️ Replace `jsonlint` with `ajv-cli` * 🚚 Rename `api` endpoint from `.tsx` to `.ts` * 🔧 Use prettier on .ts files in gitmojis
This commit is contained in:
parent
37571b1220
commit
6233229fe1
@ -1,3 +1,4 @@
|
||||
{
|
||||
"./src/*.json": ["prettier --write ./src/*.json"]
|
||||
"./src/*.json": ["prettier --write ./src/*.json"],
|
||||
"./src/*.ts": ["prettier --write ./src/*.ts"]
|
||||
}
|
||||
|
||||
@ -8,11 +8,11 @@
|
||||
],
|
||||
"types": "src/gitmojis.d.ts",
|
||||
"scripts": {
|
||||
"lint": "jsonlint ./src/gitmojis.json -V ./src/schema.json",
|
||||
"lint": "ajv --spec=draft2020 validate -s ./src/schema.json -d ./src/gitmojis.json",
|
||||
"publishPackage": "npm publish"
|
||||
},
|
||||
"devDependencies": {
|
||||
"jsonlint": "^1.6.3",
|
||||
"ajv-cli": "^5.0.0",
|
||||
"lint-staged": "^13.0.0",
|
||||
"prettier": "2.8.1"
|
||||
},
|
||||
|
||||
@ -1,46 +1,40 @@
|
||||
{
|
||||
"type": "object",
|
||||
"$schema": "http://json-schema.org/draft-03/schema",
|
||||
"id": "http://jsonschema.net",
|
||||
"required": true,
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"required": ["gitmojis"],
|
||||
"properties": {
|
||||
"gitmojis": {
|
||||
"type": "array",
|
||||
"id": "http://jsonschema.net/gitmojis",
|
||||
"required": true,
|
||||
"minItems": 1,
|
||||
"uniqueItems": true,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"id": "http://jsonschema.net/gitmojis/0",
|
||||
"required": true,
|
||||
"required": [
|
||||
"emoji",
|
||||
"entity",
|
||||
"code",
|
||||
"description",
|
||||
"name",
|
||||
"semver"
|
||||
],
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "string",
|
||||
"id": "http://jsonschema.net/gitmojis/0/code",
|
||||
"required": true
|
||||
"type": "string"
|
||||
},
|
||||
"entity": {
|
||||
"type": "string",
|
||||
"id": "http://jsonschema.net/gitmojis/0/entity"
|
||||
"type": "string"
|
||||
},
|
||||
"description": {
|
||||
"type": "string",
|
||||
"id": "http://jsonschema.net/gitmojis/0/description",
|
||||
"required": true
|
||||
"type": "string"
|
||||
},
|
||||
"emoji": {
|
||||
"type": "string",
|
||||
"id": "http://jsonschema.net/gitmojis/0/emoji",
|
||||
"required": true
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string",
|
||||
"id": "http://jsonschema.net/gitmojis/0/name",
|
||||
"required": true
|
||||
"type": "string"
|
||||
},
|
||||
"semver": {
|
||||
"enum": ["major", "minor", "patch", null],
|
||||
"id": "http://jsonschema.net/gitmojis/0/semver",
|
||||
"required": true
|
||||
"enum": ["major", "minor", "patch", null]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,18 +1,14 @@
|
||||
import { useEffect, useState } from 'react'
|
||||
import Clipboard from 'clipboard'
|
||||
import { useRouter } from 'next/router'
|
||||
import type { Gitmoji as GitmojiType } from 'gitmojis'
|
||||
|
||||
import Gitmoji from './Gitmoji'
|
||||
import Toolbar from './Toolbar'
|
||||
import useLocalStorage from './hooks/useLocalStorage'
|
||||
|
||||
type Props = {
|
||||
gitmojis: Array<{
|
||||
code: string
|
||||
description: string
|
||||
emoji: string
|
||||
name: string
|
||||
}>
|
||||
gitmojis: readonly GitmojiType[]
|
||||
}
|
||||
|
||||
const GitmojiList = (props: Props) => {
|
||||
|
||||
@ -1,11 +1,14 @@
|
||||
import type { NextApiRequest, NextApiResponse } from 'next'
|
||||
import gitmojisData from 'gitmojis'
|
||||
import { gitmojis } from 'gitmojis'
|
||||
|
||||
const gitmojis = (request: NextApiRequest, response: NextApiResponse): void => {
|
||||
const getGitmojis = (
|
||||
request: NextApiRequest,
|
||||
response: NextApiResponse
|
||||
): void => {
|
||||
const { method } = request
|
||||
|
||||
if (method === 'GET') {
|
||||
response.status(200).json(gitmojisData)
|
||||
response.status(200).json({ gitmojis })
|
||||
return
|
||||
}
|
||||
|
||||
@ -13,4 +16,4 @@ const gitmojis = (request: NextApiRequest, response: NextApiResponse): void => {
|
||||
response.status(405).json({ error: `Error: method ${method} not allowed` })
|
||||
}
|
||||
|
||||
export default gitmojis
|
||||
export default getGitmojis
|
||||
144
yarn.lock
144
yarn.lock
@ -2520,13 +2520,6 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"JSV@npm:^4.0.x":
|
||||
version: 4.0.2
|
||||
resolution: "JSV@npm:4.0.2"
|
||||
checksum: 9e2e070b2149d4ffed6c135dedb5f8cebb870dc63c0ca6d3cb647067248c7ca15d1a934ee46e9d2ac0e468436d0f70bc1b63cd5f93e705ee9aa0669430e6e66f
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"abab@npm:^2.0.6":
|
||||
version: 2.0.6
|
||||
resolution: "abab@npm:2.0.6"
|
||||
@ -2634,6 +2627,28 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"ajv-cli@npm:^5.0.0":
|
||||
version: 5.0.0
|
||||
resolution: "ajv-cli@npm:5.0.0"
|
||||
dependencies:
|
||||
ajv: ^8.0.0
|
||||
fast-json-patch: ^2.0.0
|
||||
glob: ^7.1.0
|
||||
js-yaml: ^3.14.0
|
||||
json-schema-migrate: ^2.0.0
|
||||
json5: ^2.1.3
|
||||
minimist: ^1.2.0
|
||||
peerDependencies:
|
||||
ts-node: ">=9.0.0"
|
||||
peerDependenciesMeta:
|
||||
ts-node:
|
||||
optional: true
|
||||
bin:
|
||||
ajv: dist/index.js
|
||||
checksum: e8ba29f618c653abba3a08d8784f8c882b5ac560dab587540af4d53d8230acb93af07c37165a0461294adb4015ba8ceb09916017a66754c782f950f9679ae94a
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"ajv-keywords@npm:^3.5.2":
|
||||
version: 3.5.2
|
||||
resolution: "ajv-keywords@npm:3.5.2"
|
||||
@ -2655,6 +2670,18 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"ajv@npm:^8.0.0":
|
||||
version: 8.12.0
|
||||
resolution: "ajv@npm:8.12.0"
|
||||
dependencies:
|
||||
fast-deep-equal: ^3.1.1
|
||||
json-schema-traverse: ^1.0.0
|
||||
require-from-string: ^2.0.2
|
||||
uri-js: ^4.2.2
|
||||
checksum: 4dc13714e316e67537c8b31bc063f99a1d9d9a497eb4bbd55191ac0dcd5e4985bbb71570352ad6f1e76684fb6d790928f96ba3b2d4fd6e10024be9612fe3f001
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"ajv@npm:^8.6.0":
|
||||
version: 8.11.0
|
||||
resolution: "ajv@npm:8.11.0"
|
||||
@ -2722,13 +2749,6 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"ansi-styles@npm:~1.0.0":
|
||||
version: 1.0.0
|
||||
resolution: "ansi-styles@npm:1.0.0"
|
||||
checksum: 6dd47dccb268b4cc1fd0dd6617067a7acd34ad2761f0438800fdd55c0d45f50a90787acd82806009c2bf467f4e2920166be03e19b23529038c1c4527d80f598b
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"anymatch@npm:^3.0.3":
|
||||
version: 3.1.2
|
||||
resolution: "anymatch@npm:3.1.2"
|
||||
@ -3225,17 +3245,6 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"chalk@npm:~0.4.0":
|
||||
version: 0.4.0
|
||||
resolution: "chalk@npm:0.4.0"
|
||||
dependencies:
|
||||
ansi-styles: ~1.0.0
|
||||
has-color: ~0.1.0
|
||||
strip-ansi: ~0.1.0
|
||||
checksum: e8f04f387b9fbf746fdce4b61a633f8a0d28224d8b022603db0f2d137471a18c5bc0bc33b243df09c361688f12bd3ab8a9dd1f8b4450d5a361bfe83aadbde739
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"char-regex@npm:^1.0.2":
|
||||
version: 1.0.2
|
||||
resolution: "char-regex@npm:1.0.2"
|
||||
@ -4372,6 +4381,13 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"fast-deep-equal@npm:^2.0.1":
|
||||
version: 2.0.1
|
||||
resolution: "fast-deep-equal@npm:2.0.1"
|
||||
checksum: b701835a87985e0ec4925bdf1f0c1e7eb56309b5d12d534d5b4b69d95a54d65bb16861c081781ead55f73f12d6c60ba668713391ee7fbf6b0567026f579b7b0b
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3":
|
||||
version: 3.1.3
|
||||
resolution: "fast-deep-equal@npm:3.1.3"
|
||||
@ -4405,6 +4421,15 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"fast-json-patch@npm:^2.0.0":
|
||||
version: 2.2.1
|
||||
resolution: "fast-json-patch@npm:2.2.1"
|
||||
dependencies:
|
||||
fast-deep-equal: ^2.0.1
|
||||
checksum: 955aebb3f873d1fb0452a5d8c34865ce4c3c6cdafeb7d3ad98d43b467de9a5a0d304132f8595fd2b373f8f4d200605947e865286b180f3a55e8377a634893164
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0":
|
||||
version: 2.1.0
|
||||
resolution: "fast-json-stable-stringify@npm:2.1.0"
|
||||
@ -4731,7 +4756,7 @@ __metadata:
|
||||
version: 0.0.0-use.local
|
||||
resolution: "gitmojis@workspace:packages/gitmojis"
|
||||
dependencies:
|
||||
jsonlint: ^1.6.3
|
||||
ajv-cli: ^5.0.0
|
||||
lint-staged: ^13.0.0
|
||||
prettier: 2.8.1
|
||||
languageName: unknown
|
||||
@ -4769,7 +4794,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"glob@npm:^7.0.3, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.6":
|
||||
"glob@npm:^7.0.3, glob@npm:^7.1.0, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.6":
|
||||
version: 7.2.3
|
||||
resolution: "glob@npm:7.2.3"
|
||||
dependencies:
|
||||
@ -4896,13 +4921,6 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"has-color@npm:~0.1.0":
|
||||
version: 0.1.7
|
||||
resolution: "has-color@npm:0.1.7"
|
||||
checksum: 5753d76b1330bc1f5a07171f222ed0718f5ec2d64d5677800e434f183a99f7042f5cda43c9625a2d0f0204063aa03499a66f1c15283d789773b3544f18f93f58
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"has-flag@npm:^3.0.0":
|
||||
version: 3.0.0
|
||||
resolution: "has-flag@npm:3.0.0"
|
||||
@ -5989,7 +6007,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"js-yaml@npm:^3.13.1":
|
||||
"js-yaml@npm:^3.13.1, js-yaml@npm:^3.14.0":
|
||||
version: 3.14.1
|
||||
resolution: "js-yaml@npm:3.14.1"
|
||||
dependencies:
|
||||
@ -6077,6 +6095,15 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"json-schema-migrate@npm:^2.0.0":
|
||||
version: 2.0.0
|
||||
resolution: "json-schema-migrate@npm:2.0.0"
|
||||
dependencies:
|
||||
ajv: ^8.0.0
|
||||
checksum: 21537305f3a5102695cfeeab997d565516297b240ee560bf7fe5c01ea4d56b65e0fbc4e9a4f9a32819e2cb1874daf43b06eb580e623d0aade0cf50d03ae40418
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"json-schema-traverse@npm:^0.4.1":
|
||||
version: 0.4.1
|
||||
resolution: "json-schema-traverse@npm:0.4.1"
|
||||
@ -6125,6 +6152,15 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"json5@npm:^2.1.3":
|
||||
version: 2.2.3
|
||||
resolution: "json5@npm:2.2.3"
|
||||
bin:
|
||||
json5: lib/cli.js
|
||||
checksum: 2a7436a93393830bce797d4626275152e37e877b265e94ca69c99e3d20c2b9dab021279146a39cdb700e71b2dd32a4cebd1514cd57cee102b1af906ce5040349
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jsonfile@npm:^6.0.1":
|
||||
version: 6.1.0
|
||||
resolution: "jsonfile@npm:6.1.0"
|
||||
@ -6138,18 +6174,6 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jsonlint@npm:^1.6.3":
|
||||
version: 1.6.3
|
||||
resolution: "jsonlint@npm:1.6.3"
|
||||
dependencies:
|
||||
JSV: ^4.0.x
|
||||
nomnom: ^1.5.x
|
||||
bin:
|
||||
jsonlint: lib/cli.js
|
||||
checksum: be0972cf552ff1ec589db5d7b20ff31064561fbe4605708f5a260e2dcc18e26acd5bf842ba10dd157706232aca6d6c9116d21005cb3e8fb5ec9d9b01c8869677
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jsonpointer@npm:^5.0.0":
|
||||
version: 5.0.1
|
||||
resolution: "jsonpointer@npm:5.0.1"
|
||||
@ -6854,16 +6878,6 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"nomnom@npm:^1.5.x":
|
||||
version: 1.8.1
|
||||
resolution: "nomnom@npm:1.8.1"
|
||||
dependencies:
|
||||
chalk: ~0.4.0
|
||||
underscore: ~1.6.0
|
||||
checksum: cc6f538062741e8914b65352499c444a754d18a95f8c4b336b9183367c44335f00a9d3beb54648f6a76d5434702a3d71bf37c23ef4c960d39595ed72d376c6fd
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"nopt@npm:^6.0.0":
|
||||
version: 6.0.0
|
||||
resolution: "nopt@npm:6.0.0"
|
||||
@ -8221,15 +8235,6 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"strip-ansi@npm:~0.1.0":
|
||||
version: 0.1.1
|
||||
resolution: "strip-ansi@npm:0.1.1"
|
||||
bin:
|
||||
strip-ansi: cli.js
|
||||
checksum: 31f1d4d3b86e6d968aa568bf47d712626dd748aff7d576a98ba2ed378dd60dfb1475898254b62479779231e50a38f0b7ea0b66d3b22d14cde38b769c1c747d33
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"strip-bom@npm:^3.0.0":
|
||||
version: 3.0.0
|
||||
resolution: "strip-bom@npm:3.0.0"
|
||||
@ -8719,13 +8724,6 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"underscore@npm:~1.6.0":
|
||||
version: 1.6.0
|
||||
resolution: "underscore@npm:1.6.0"
|
||||
checksum: bfb837d95164077bd2751247dd9797546287c060d86c3a730f590948dbc132b426238e37df7bea28f39d3e3abf571de5b974809ee3c32d309280fed851588ef9
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"unicode-canonical-property-names-ecmascript@npm:^2.0.0":
|
||||
version: 2.0.0
|
||||
resolution: "unicode-canonical-property-names-ecmascript@npm:2.0.0"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user