mirror of
https://github.com/tcgdex/javascript-sdk.git
synced 2025-07-13 10:35:11 +00:00
Compare commits
37 Commits
Author | SHA1 | Date | |
---|---|---|---|
c392b27cac | |||
dc5e41a638 | |||
09d8b28a66
|
|||
4507bbd651
|
|||
8a89aefe73 | |||
8df969c1db
|
|||
2177e9c088 | |||
a32f42975a | |||
0148979d7d
|
|||
ea357c9080
|
|||
5e998d3658
|
|||
ed883c06eb | |||
1ecaa048eb | |||
39cd15ead3 | |||
ca5ae0aa57 | |||
cffae6cc28 | |||
5e03f38476 | |||
05134f5b12 | |||
8a0dec867e | |||
75636a9195 | |||
bd33dafe8a | |||
39fb14070d | |||
6ae3b09dc9 | |||
8d13d1dba4 | |||
840c8c3106 | |||
ee4f1be353 | |||
7e4c0eae42 | |||
3d08ab4bfa | |||
3441cc2c60 | |||
9b2e09d766 | |||
3ebde59a84 | |||
e18cbabf70 | |||
1c6c7dacc4 | |||
445b3a5ea6 | |||
7148fc7522 | |||
cde8b24230 | |||
1d21ff650e |
3
.github/FUNDING.yml
vendored
Normal file
3
.github/FUNDING.yml
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
# These are supported funding model platforms
|
||||
|
||||
github: [tcgdex]
|
8
.github/workflows/build.yml
vendored
8
.github/workflows/build.yml
vendored
@ -16,14 +16,14 @@ jobs:
|
||||
strategy:
|
||||
matrix:
|
||||
# Follow current releases https://nodejs.org/en/about/releases/
|
||||
node-version: [12.x, 14.x, 16.x]
|
||||
node-version: [14.x, 16.x, 18.x, 19.x]
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v2.5.1
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
|
||||
@ -38,7 +38,7 @@ jobs:
|
||||
|
||||
- name: Upload Coverage
|
||||
if: matrix.node-version == '16.x'
|
||||
uses: codecov/codecov-action@v2.1.0
|
||||
uses: codecov/codecov-action@v3
|
||||
with:
|
||||
# Comma-separated list of files to upload
|
||||
files: ./coverage/coverage-final.json
|
||||
|
4
.github/workflows/code-quality.yml
vendored
4
.github/workflows/code-quality.yml
vendored
@ -12,10 +12,10 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Setup NodeJS
|
||||
uses: actions/setup-node@v2.5.1
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: '16.x'
|
||||
|
||||
|
6
.github/workflows/publish.yml
vendored
6
.github/workflows/publish.yml
vendored
@ -8,12 +8,12 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Setup NodeJS
|
||||
uses: actions/setup-node@v2.5.1
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: '16.x'
|
||||
node-version: '18.x'
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
|
||||
- name: Install dependencies
|
||||
|
2
.gitignore
vendored
2
.gitignore
vendored
@ -5,4 +5,4 @@ coverage
|
||||
|
||||
# Dist files
|
||||
dist
|
||||
src/version.json
|
||||
src/version.js
|
||||
|
31
README.md
31
README.md
@ -63,19 +63,40 @@ _Note: a complete documentation is available at [TCGdex.dev](https://www.tcgdex.
|
||||
|
||||
**Example: Fetch a Card**
|
||||
|
||||
_in Browser_
|
||||
|
||||
```html
|
||||
<script src="https://cdn.jsdelivr.net/npm/@tcgdex/sdk@2.4.9/dist/tcgdex.browser.js"></script>
|
||||
<script>
|
||||
// Instantiate the SDK
|
||||
const tcgdex = new TCGdex('en');
|
||||
|
||||
// go into an async context
|
||||
;(async () => {
|
||||
// Card will be Furret from the Darkness Ablaze Set
|
||||
const card = await tcgdex.fetch('cards', 'swsh3-136');
|
||||
})();
|
||||
</script>
|
||||
```
|
||||
|
||||
_in NodeJS (in an async context)_
|
||||
|
||||
```typescript
|
||||
// Import the SDK in Typescript
|
||||
import TCGdex from '@tcgdex/sdk';
|
||||
|
||||
// Instantiate the SDK
|
||||
// note: you can use one of the following lanugages
|
||||
const tcgdex = new TCGdex('en');
|
||||
|
||||
// Card will be Furret from the Darkness Ablaze Set
|
||||
const card = await tcgdex.fetch('cards', 'swsh3-136');
|
||||
// go into an async context
|
||||
(async () => {
|
||||
// Card will be Furret from the Darkness Ablaze Set
|
||||
const card = await tcgdex.fetch('cards', 'swsh3-136');
|
||||
|
||||
// You can also get the same result using
|
||||
const card = await tcgdex.fetch('sets', 'Darkness Ablaze', 136);
|
||||
})();
|
||||
|
||||
// You can also get the same result using
|
||||
const card = await tcgdex.fetch('sets', 'Darkness Ablaze', 136);
|
||||
```
|
||||
|
||||
**Other Examples**
|
||||
|
10874
package-lock.json
generated
10874
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
57
package.json
57
package.json
@ -1,9 +1,21 @@
|
||||
{
|
||||
"name": "@tcgdex/sdk",
|
||||
"version": "2.4.6",
|
||||
"main": "./dist/cjs/tcgdex.node.js",
|
||||
"module": "./dist/modules/tcgdex.node.js",
|
||||
"types": "./dist/types/tcgdex.d.ts",
|
||||
"version": "2.5.0",
|
||||
"main": "./dist/tcgdex.node.js",
|
||||
"module": "./dist/tcgdex.node.mjs",
|
||||
"types": "./dist/tcgdex.node.d.ts",
|
||||
"exports": {
|
||||
".": {
|
||||
"require": {
|
||||
"types": "./dist/tcgdex.node.d.ts",
|
||||
"default": "./dist/tcgdex.node.js"
|
||||
},
|
||||
"import": {
|
||||
"default": "./dist/tcgdex.node.mjs",
|
||||
"types": "./dist/tcgdex.node.d.mts"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Communicate with the Open Source TCGdex API in Javascript/Typescript using the SDK",
|
||||
"repository": "https://github.com/tcgdex/javascript-sdk.git",
|
||||
"homepage": "https://github.com/tcgdex/javascript-sdk",
|
||||
@ -22,32 +34,28 @@
|
||||
],
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.14.6",
|
||||
"@babel/preset-env": "^7.14.7",
|
||||
"@babel/preset-typescript": "^7.14.5",
|
||||
"@dzeio/config": "^1.0.0",
|
||||
"@types/node-fetch": "^2.5.10",
|
||||
"@typescript-eslint/eslint-plugin": "^5.7.0",
|
||||
"@typescript-eslint/parser": "^5.7.0",
|
||||
"esbuild": "^0.14.5",
|
||||
"eslint": "^8.4.1",
|
||||
"jest": "^27.0.5",
|
||||
"ts-node": "^10.0.0",
|
||||
"typescript": "^4.1.3"
|
||||
"@babel/core": "^7",
|
||||
"@babel/preset-env": "^7",
|
||||
"@babel/preset-typescript": "^7",
|
||||
"@dzeio/config": "^1",
|
||||
"@types/node-fetch": "^2",
|
||||
"@typescript-eslint/eslint-plugin": "^5",
|
||||
"@typescript-eslint/parser": "^5",
|
||||
"eslint": "^8",
|
||||
"jest": "^29",
|
||||
"tsup": "^7",
|
||||
"typescript": "^5"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
},
|
||||
"dependencies": {
|
||||
"isomorphic-unfetch": "^3.1.0",
|
||||
"unfetch": "^4.2.0"
|
||||
"isomorphic-unfetch": "^3",
|
||||
"unfetch": "^4"
|
||||
},
|
||||
"scripts": {
|
||||
"prebuild": "node scripts/export-version-number.js",
|
||||
"build": "npm run prebuild && npm run build:cjs && npm run build:browser && npm run build:es2015",
|
||||
"build:cjs": "tsc --project tsconfig.json",
|
||||
"build:es2015": "tsc --project tsconfig.es2015.json",
|
||||
"build:browser": "esbuild ./src/tcgdex.browser.ts --bundle --minify --sourcemap --target=es2016,chrome90,firefox78,safari14,ios13,edge90 --outfile=dist/tcgdex.browser.js",
|
||||
"build": "tsup ./src/tcgdex.node.ts --format cjs,esm --dts --clean && tsup ./src/tcgdex.browser.ts --format iife --minify --sourcemap",
|
||||
"prepublishOnly": "npm run build",
|
||||
"lint": "eslint",
|
||||
"test": "jest --coverage"
|
||||
@ -55,5 +63,8 @@
|
||||
"files": [
|
||||
"dist"
|
||||
],
|
||||
"sideEffects": false
|
||||
"sideEffects": false,
|
||||
"jest": {
|
||||
"testTimeout": 30000
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
const { version } = require('../package.json')
|
||||
const fs = require('fs')
|
||||
|
||||
fs.writeFileSync('./src/version.json', JSON.stringify({version}))
|
||||
fs.writeFileSync('./src/version.js', `export const version = '${version}'`)
|
||||
|
@ -1,5 +1,5 @@
|
||||
import TCGdex from './tcgdex'
|
||||
import { version } from './version.json'
|
||||
import { version } from './version'
|
||||
|
||||
export default class Request {
|
||||
|
||||
|
@ -3,4 +3,9 @@ import unfetch from 'unfetch'
|
||||
|
||||
TCGdex.fetch = window.fetch ?? unfetch as any
|
||||
|
||||
(global ?? window).TCGdex = TCGdex
|
||||
if (typeof global !== 'undefined') {
|
||||
global.TCGdex = TCGdex
|
||||
}
|
||||
if (typeof window !== 'undefined') {
|
||||
(window as any).TCGdex = TCGdex
|
||||
}
|
||||
|
@ -1,11 +0,0 @@
|
||||
{
|
||||
"extends": "./tsconfig.json",
|
||||
"include": ["./src/tcgdex.node.ts"],
|
||||
"compilerOptions": {
|
||||
"target": "ES2015", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */
|
||||
"module": "ES2015", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
|
||||
"declaration": false, /* Generates corresponding '.d.ts' file. */
|
||||
"declarationDir": null,
|
||||
"outDir": "./dist/modules", /* Redirect output structure to the directory. */
|
||||
}
|
||||
}
|
@ -2,14 +2,7 @@
|
||||
"extends": "./node_modules/@dzeio/config/tsconfig.base",
|
||||
"include": ["./src/tcgdex.node.ts"],
|
||||
"compilerOptions": {
|
||||
|
||||
"target": "ES2015",
|
||||
|
||||
"declaration": true,
|
||||
"declarationDir": "./dist/types",
|
||||
|
||||
"outDir": "./dist/cjs",
|
||||
"rootDir": "./src",
|
||||
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user