Skip to content

Commit 0edfc1f

Browse files
authored
Merge pull request #185 from extractus/4.0.5
v4.0.5
2 parents cd08c33 + de94e3e commit 0edfc1f

File tree

21 files changed

+295
-44
lines changed

21 files changed

+295
-44
lines changed

README.md

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ yarn add @extractus/oembed-extractor
2929
```
3030

3131
```ts
32-
// es6 module
3332
import { extract } from '@extractus/oembed-extractor'
3433

3534
const result = await extract('https://www.youtube.com/watch?v=x2bqscVkGxk')
@@ -39,10 +38,6 @@ console.log(result)
3938
### Deno
4039

4140
```ts
42-
// deno < 1.28
43-
import { extract } from 'https://esm.sh/@extractus/oembed-extractor'
44-
45-
// deno > 1.28
4641
import { extract } from 'npm:@extractus/oembed-extractor'
4742
```
4843

deno.json

Lines changed: 0 additions & 5 deletions
This file was deleted.

examples/browser-oembed-parser/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"start": "node server"
77
},
88
"dependencies": {
9-
"express": "^4.18.2",
10-
"got": "^13.0.0"
9+
"express": "latest",
10+
"got": "latest"
1111
}
1212
}

examples/bun-oembed-parser/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55
"start": "bun run index.ts"
66
},
77
"devDependencies": {
8-
"bun-types": "^0.6.13"
8+
"bun-types": "latest"
99
},
1010
"dependencies": {
11-
"hono": "^3.2.7",
11+
"hono": "latest",
1212
"@extractus/oembed-extractor": "latest"
1313
}
1414
}

examples/deno-oembed-parser/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { serve } from 'https://deno.land/std/http/server.ts'
22

3-
import { Hono } from 'https://deno.land/x/hono@v3.2.7/mod.ts'
3+
import { Hono } from 'https://deno.land/x/hono/mod.ts'
44

55
import { extract } from 'npm:@extractus/oembed-extractor'
66

examples/node-oembed-parser/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"start": "node index.js"
88
},
99
"dependencies": {
10-
"express": "^4.18.2",
10+
"express": "latest",
1111
"@extractus/oembed-extractor": "latest"
1212
}
1313
}

examples/tsnode-oembed-parser/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@
77
"start": "node dist/index.js"
88
},
99
"devDependencies": {
10-
"typescript": "^5.1.6"
10+
"typescript": "latest"
1111
},
1212
"dependencies": {
13-
"express": "^4.18.2",
13+
"express": "latest",
1414
"@extractus/oembed-extractor": "latest"
1515
}
1616
}

package.json

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"version": "4.0.4",
2+
"version": "4.0.5",
33
"name": "@extractus/oembed-extractor",
44
"description": "Get oEmbed data from given URL.",
55
"homepage": "https://github.com/extractus/oembed-extractor",
@@ -11,10 +11,12 @@
1111
"main": "./src/main.js",
1212
"type": "module",
1313
"imports": {
14-
"cross-fetch": "./src/deno/cross-fetch.js"
14+
"cross-fetch": "./src/deno/cross-fetch.js",
15+
"linkedom": "https://deno.land/x/[email protected]/deno-dom-wasm.ts"
1516
},
1617
"browser": {
17-
"cross-fetch": "./src/deno/cross-fetch.js"
18+
"cross-fetch": "./src/deno/cross-fetch.js",
19+
"linkedom": "./src/browser/linkedom.js"
1820
},
1921
"types": "./index.d.ts",
2022
"engines": {
@@ -30,11 +32,12 @@
3032
"reset": "node reset"
3133
},
3234
"dependencies": {
33-
"cross-fetch": "^4.0.0"
35+
"cross-fetch": "^4.0.0",
36+
"linkedom": "^0.16.11"
3437
},
3538
"devDependencies": {
36-
"eslint": "^9.1.1",
37-
"globals": "^15.0.0",
39+
"eslint": "^9.2.0",
40+
"globals": "^15.1.0",
3841
"https-proxy-agent": "^7.0.4",
3942
"jest": "^29.7.0",
4043
"nock": "^13.5.4"

src/browser/linkedom.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export const DOMParser = window.DOMParser

src/main.js

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
// main.js
22

33
import { isValid as isValidURL } from './utils/linker.js'
4+
import extractWithDiscovery from './utils/autoDiscovery.js'
45
import fetchEmbed from './utils/fetchEmbed.js'
56

67
import { getEndpoint } from './utils/provider.js'
@@ -10,12 +11,10 @@ export const extract = async (url, params = {}, options = {}) => {
1011
throw new Error('Invalid input URL')
1112
}
1213
const endpoint = getEndpoint(url)
13-
if (!endpoint) {
14-
throw new Error(`No provider found with given url "${url}"`)
15-
}
1614

17-
const data = await fetchEmbed(url, params, endpoint, options)
18-
return data
15+
return endpoint
16+
? fetchEmbed(url, params, endpoint, options)
17+
: extractWithDiscovery(url, params, options)
1918
}
2019

2120
export {

0 commit comments

Comments
 (0)