Compare commits

..

37 Commits

Author SHA1 Message Date
c392b27cac bump: 2.5.0
Signed-off-by: Florian BOUILLON <f.bouillon@aptatio.com>
2023-06-28 14:22:05 +02:00
dc5e41a638 feat: Full support for ESM modules
Signed-off-by: Florian BOUILLON <f.bouillon@aptatio.com>
2023-06-28 14:21:17 +02:00
09d8b28a66 docs: Include HTML base for browser people :D
Signed-off-by: Avior <github@avior.me>
2023-01-11 20:54:16 +01:00
4507bbd651 misc: Upgraded deps
Signed-off-by: Avior <github@avior.me>
2023-01-11 20:41:55 +01:00
8a89aefe73 2.4.9 2023-01-11 20:33:00 +01:00
8df969c1db fix: Issue regarding browser loading
Signed-off-by: Avior <github@avior.me>
2023-01-11 20:32:51 +01:00
2177e9c088 fix: Updated build versions 2022-12-11 01:38:54 +01:00
a32f42975a 2.4.8 2022-12-09 16:11:29 +01:00
0148979d7d misc: Updated deps
Signed-off-by: Avior <f.bouillon@aptatio.com>
2022-12-09 16:11:24 +01:00
ea357c9080 fix: Version number not being correctly exported
Signed-off-by: Avior <f.bouillon@aptatio.com>
2022-12-09 16:08:10 +01:00
5e998d3658 bump: version 2.4.7
Signed-off-by: Avior <github@avior.me>
2022-09-26 19:51:44 +02:00
ed883c06eb fix: Angular not liking JSON imports (#204) 2022-09-26 19:52:27 +02:00
1ecaa048eb Create FUNDING.yml 2022-08-25 10:15:40 +02:00
39cd15ead3 refactor: Upgrade actions (#129) 2022-05-05 14:12:24 +02:00
ca5ae0aa57 refactor: Upgrade dependencies (#128)
* refactor: removed babel

Signed-off-by: Avior <github@avior.me>

* refactor: Upgrade deps

Signed-off-by: Avior <github@avior.me>

* refactor: Removed ts-node

Signed-off-by: Avior <github@avior.me>

* revert: refactor: removed babel

Signed-off-by: Avior <github@avior.me>

* build: Support for other nodejs versions

Signed-off-by: Avior <github@avior.me>
2022-05-05 11:45:42 +02:00
cffae6cc28 build: bump @typescript-eslint/eslint-plugin from 5.12.0 to 5.12.1 (#86)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-23 15:29:09 +01:00
5e03f38476 build: bump @typescript-eslint/eslint-plugin from 5.11.0 to 5.12.0 (#80)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-16 10:21:03 +01:00
05134f5b12 build: bump @babel/core from 7.17.2 to 7.17.4 (#81)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-16 10:06:53 +01:00
8a0dec867e build: bump @typescript-eslint/parser from 5.10.2 to 5.11.0 (#72)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-14 09:55:13 +01:00
75636a9195 build: bump @typescript-eslint/eslint-plugin from 5.10.2 to 5.11.0 (#73)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-14 09:53:13 +01:00
bd33dafe8a build: bump eslint from 8.8.0 to 8.9.0 (#77)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-14 09:51:11 +01:00
39fb14070d build: bump @babel/core from 7.17.0 to 7.17.2 (#76)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-14 09:48:48 +01:00
6ae3b09dc9 build: bump ts-node from 10.4.0 to 10.5.0 (#70)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-14 09:46:45 +01:00
8d13d1dba4 build: bump jest from 27.5.0 to 27.5.1 (#75)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-14 09:44:36 +01:00
840c8c3106 build: bump esbuild from 0.14.19 to 0.14.21 (#74)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-11 15:13:39 +01:00
ee4f1be353 build: bump @babel/preset-env from 7.16.8 to 7.16.11 (#52)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-07 12:05:57 +01:00
7e4c0eae42 build: bump jest from 27.4.7 to 27.5.0 (#68)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-07 10:41:40 +01:00
3d08ab4bfa build: bump esbuild from 0.14.18 to 0.14.19 (#69)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-07 10:16:32 +01:00
3441cc2c60 build: bump @babel/core from 7.16.12 to 7.17.0 (#66)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-03 10:38:38 +01:00
9b2e09d766 build: bump esbuild from 0.14.17 to 0.14.18 (#67)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-03 10:27:09 +01:00
3ebde59a84 build: bump @typescript-eslint/parser from 5.10.0 to 5.10.2 (#64)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-02 10:33:11 +01:00
e18cbabf70 build: bump @typescript-eslint/eslint-plugin from 5.10.0 to 5.10.2 (#63)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-02 10:30:35 +01:00
1c6c7dacc4 build: bump esbuild from 0.14.14 to 0.14.17 (#65)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-02 10:06:54 +01:00
445b3a5ea6 build: bump eslint from 8.7.0 to 8.8.0 (#61)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-31 11:47:54 +01:00
7148fc7522 build: bump typescript from 4.5.4 to 4.5.5 (#54)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-28 17:04:04 +01:00
cde8b24230 build: bump @babel/core from 7.16.7 to 7.16.12 (#55)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-28 16:31:19 +01:00
1d21ff650e build: bump esbuild from 0.14.12 to 0.14.14 (#58)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-28 16:22:44 +01:00
13 changed files with 6123 additions and 4891 deletions

3
.github/FUNDING.yml vendored Normal file
View File

@ -0,0 +1,3 @@
# These are supported funding model platforms
github: [tcgdex]

View File

@ -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

View File

@ -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'

View File

@ -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
View File

@ -5,4 +5,4 @@ coverage
# Dist files
dist
src/version.json
src/version.js

View File

@ -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

File diff suppressed because it is too large Load Diff

View File

@ -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
}
}

View File

@ -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}'`)

View File

@ -1,5 +1,5 @@
import TCGdex from './tcgdex'
import { version } from './version.json'
import { version } from './version'
export default class Request {

View File

@ -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
}

View File

@ -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. */
}
}

View File

@ -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",
}
}