@sockethub/platform-metadata 1.0.1-alpha.5 → 1.0.1-alpha.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -7
- package/dist/index.js +44 -12
- package/dist/index.js.map +4 -4
- package/package.json +6 -5
- package/src/index.ts +10 -3
- package/src/schema.ts +12 -0
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@ This platform fetches and extracts metadata from web pages, including Open Graph
|
|
|
8
8
|
site information, images, and other structured metadata. It uses the `open-graph-scraper`
|
|
9
9
|
library to analyze web pages and return structured data in ActivityStreams format.
|
|
10
10
|
|
|
11
|
-
## Implemented Verbs (
|
|
11
|
+
## Implemented Verbs (`type`)
|
|
12
12
|
|
|
13
13
|
* **fetch** - Extract metadata from a web page URL
|
|
14
14
|
|
|
@@ -21,10 +21,15 @@ to clients through the Sockethub service.
|
|
|
21
21
|
|
|
22
22
|
```json
|
|
23
23
|
{
|
|
24
|
-
"
|
|
25
|
-
"context":
|
|
24
|
+
"type": "fetch",
|
|
25
|
+
"@context": [
|
|
26
|
+
"https://www.w3.org/ns/activitystreams",
|
|
27
|
+
"https://sockethub.org/ns/context/v1.jsonld",
|
|
28
|
+
"https://sockethub.org/ns/context/platform/metadata/v1.jsonld"
|
|
29
|
+
],
|
|
26
30
|
"actor": {
|
|
27
|
-
"
|
|
31
|
+
"id": "https://example.com/page-to-analyze",
|
|
32
|
+
"type": "website"
|
|
28
33
|
}
|
|
29
34
|
}
|
|
30
35
|
```
|
|
@@ -35,10 +40,15 @@ The platform returns an ActivityStream object with extracted metadata:
|
|
|
35
40
|
|
|
36
41
|
```json
|
|
37
42
|
{
|
|
38
|
-
"
|
|
39
|
-
"context":
|
|
43
|
+
"type": "fetch",
|
|
44
|
+
"@context": [
|
|
45
|
+
"https://www.w3.org/ns/activitystreams",
|
|
46
|
+
"https://sockethub.org/ns/context/v1.jsonld",
|
|
47
|
+
"https://sockethub.org/ns/context/platform/metadata/v1.jsonld"
|
|
48
|
+
],
|
|
40
49
|
"actor": {
|
|
41
|
-
"
|
|
50
|
+
"id": "https://example.com/page-to-analyze",
|
|
51
|
+
"type": "website",
|
|
42
52
|
"name": "Example Site"
|
|
43
53
|
},
|
|
44
54
|
"object": {
|
package/dist/index.js
CHANGED
|
@@ -4,15 +4,29 @@ var __getProtoOf = Object.getPrototypeOf;
|
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
function __accessProp(key) {
|
|
8
|
+
return this[key];
|
|
9
|
+
}
|
|
10
|
+
var __toESMCache_node;
|
|
11
|
+
var __toESMCache_esm;
|
|
7
12
|
var __toESM = (mod, isNodeMode, target) => {
|
|
13
|
+
var canCache = mod != null && typeof mod === "object";
|
|
14
|
+
if (canCache) {
|
|
15
|
+
var cache = isNodeMode ? __toESMCache_node ??= new WeakMap : __toESMCache_esm ??= new WeakMap;
|
|
16
|
+
var cached = cache.get(mod);
|
|
17
|
+
if (cached)
|
|
18
|
+
return cached;
|
|
19
|
+
}
|
|
8
20
|
target = mod != null ? __create(__getProtoOf(mod)) : {};
|
|
9
21
|
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
|
10
22
|
for (let key of __getOwnPropNames(mod))
|
|
11
23
|
if (!__hasOwnProp.call(to, key))
|
|
12
24
|
__defProp(to, key, {
|
|
13
|
-
get: (
|
|
25
|
+
get: __accessProp.bind(mod, key),
|
|
14
26
|
enumerable: true
|
|
15
27
|
});
|
|
28
|
+
if (canCache)
|
|
29
|
+
cache.set(mod, to);
|
|
16
30
|
return to;
|
|
17
31
|
};
|
|
18
32
|
var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
|
|
@@ -57951,7 +57965,7 @@ var require_frame = __commonJS((exports, module) => {
|
|
|
57951
57965
|
var BUFFER_SIZE = 8 * 1024;
|
|
57952
57966
|
var buffer = null;
|
|
57953
57967
|
var bufIdx = BUFFER_SIZE;
|
|
57954
|
-
var randomFillSync = runtimeFeatures.has("crypto") ? __require("node:crypto").randomFillSync : function
|
|
57968
|
+
var randomFillSync = runtimeFeatures.has("crypto") ? __require("node:crypto").randomFillSync : function randomFillSync2(buffer2, _offset, _size) {
|
|
57955
57969
|
for (let i = 0;i < buffer2.length; ++i) {
|
|
57956
57970
|
buffer2[i] = Math.random() * 255 | 0;
|
|
57957
57971
|
}
|
|
@@ -71634,7 +71648,7 @@ var import_open_graph_scraper = __toESM(require_esm(), 1);
|
|
|
71634
71648
|
// package.json
|
|
71635
71649
|
var package_default = {
|
|
71636
71650
|
name: "@sockethub/platform-metadata",
|
|
71637
|
-
version: "1.0.1-alpha.
|
|
71651
|
+
version: "1.0.1-alpha.7",
|
|
71638
71652
|
description: "Fetch metadata from a given URL",
|
|
71639
71653
|
author: "Nick Jennings <nick@silverbucket.net>",
|
|
71640
71654
|
license: "LGPL-3.0+",
|
|
@@ -71650,7 +71664,10 @@ var package_default = {
|
|
|
71650
71664
|
default: "./dist/index.js"
|
|
71651
71665
|
}
|
|
71652
71666
|
},
|
|
71653
|
-
files: [
|
|
71667
|
+
files: [
|
|
71668
|
+
"src/",
|
|
71669
|
+
"dist/"
|
|
71670
|
+
],
|
|
71654
71671
|
engines: {
|
|
71655
71672
|
bun: ">=1.2"
|
|
71656
71673
|
},
|
|
@@ -71670,18 +71687,19 @@ var package_default = {
|
|
|
71670
71687
|
homepage: "https://github.com/sockethub/sockethub/tree/master/packages/platform-metadata",
|
|
71671
71688
|
scripts: {
|
|
71672
71689
|
build: "bun build src/index.ts --outdir dist --target node --format esm --sourcemap=external",
|
|
71673
|
-
clean: "rm -rf dist"
|
|
71690
|
+
clean: "rm -rf dist",
|
|
71691
|
+
"clean:deps": "rm -rf node_modules"
|
|
71674
71692
|
},
|
|
71675
71693
|
dependencies: {
|
|
71676
71694
|
"open-graph-scraper": "^6.11.0"
|
|
71677
71695
|
},
|
|
71678
71696
|
devDependencies: {
|
|
71679
|
-
"@sockethub/schemas": "^3.0.0-alpha.
|
|
71697
|
+
"@sockethub/schemas": "^3.0.0-alpha.12"
|
|
71680
71698
|
},
|
|
71681
71699
|
peerDependencies: {
|
|
71682
|
-
"@sockethub/server": "^5.0.0-alpha.
|
|
71700
|
+
"@sockethub/server": "^5.0.0-alpha.12"
|
|
71683
71701
|
},
|
|
71684
|
-
gitHead: "
|
|
71702
|
+
gitHead: "cc495a5fcf7ce19a8f328a34bbc8cd1439bb67ce"
|
|
71685
71703
|
};
|
|
71686
71704
|
|
|
71687
71705
|
// src/schema.ts
|
|
@@ -71689,6 +71707,9 @@ var version = package_default.version;
|
|
|
71689
71707
|
var PlatformMetadataSchema = {
|
|
71690
71708
|
name: "metadata",
|
|
71691
71709
|
version,
|
|
71710
|
+
contextUrl: "https://sockethub.org/ns/context/platform/metadata/v1.jsonld",
|
|
71711
|
+
contextVersion: "1",
|
|
71712
|
+
schemaVersion: "1",
|
|
71692
71713
|
messages: {
|
|
71693
71714
|
required: ["type"],
|
|
71694
71715
|
properties: {
|
|
@@ -71702,24 +71723,35 @@ var PlatformMetadataSchema = {
|
|
|
71702
71723
|
{ $ref: "#/definitions/objectTypes/feed-parameters-url" }
|
|
71703
71724
|
]
|
|
71704
71725
|
}
|
|
71726
|
+
},
|
|
71727
|
+
definitions: {
|
|
71728
|
+
objectTypes: {
|
|
71729
|
+
"feed-parameters-url": {
|
|
71730
|
+
type: "object",
|
|
71731
|
+
additionalProperties: true
|
|
71732
|
+
}
|
|
71733
|
+
}
|
|
71705
71734
|
}
|
|
71706
71735
|
}
|
|
71707
71736
|
};
|
|
71708
71737
|
|
|
71709
71738
|
// src/index.ts
|
|
71710
71739
|
class Metadata {
|
|
71711
|
-
|
|
71740
|
+
log;
|
|
71712
71741
|
config = {
|
|
71713
71742
|
persist: false
|
|
71714
71743
|
};
|
|
71715
71744
|
constructor(session) {
|
|
71716
|
-
this.
|
|
71745
|
+
this.log = session.log;
|
|
71717
71746
|
}
|
|
71718
71747
|
get schema() {
|
|
71719
71748
|
return PlatformMetadataSchema;
|
|
71720
71749
|
}
|
|
71750
|
+
isInitialized() {
|
|
71751
|
+
return true;
|
|
71752
|
+
}
|
|
71721
71753
|
fetch(job, cb) {
|
|
71722
|
-
this.debug(`fetching ${job.actor.id}`);
|
|
71754
|
+
this.log.debug(`fetching ${job.actor.id}`);
|
|
71723
71755
|
import_open_graph_scraper.default({
|
|
71724
71756
|
url: job.actor.id
|
|
71725
71757
|
}).then((data) => {
|
|
@@ -71751,4 +71783,4 @@ export {
|
|
|
71751
71783
|
Metadata as default
|
|
71752
71784
|
};
|
|
71753
71785
|
|
|
71754
|
-
//# debugId=
|
|
71786
|
+
//# debugId=036456F5F961839664756E2164756E21
|