edgepress 2026.10.12 → 2026.10.13
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 +12 -2
- package/config.yml +171 -171
- package/content/assets/edgepress/brand/sources/export-manifest.json +181 -181
- package/content/assets/edgepress-markdown-guide.svg +21 -21
- package/content/guides/markdown-media.md +38 -0
- package/content/guides/product-demos.md +30 -30
- package/content/pages/deployment/en.json +1 -1
- package/content/posts/2026-09-24-edgepress-release-2026-9-1/en.md +1 -1
- package/content/posts/2026-09-24-edgepress-release-2026-9-1/zh-cn.md +1 -1
- package/languages/base/en.json +98 -98
- package/languages/packs/zh-CN.json +98 -98
- package/package.json +90 -90
- package/src/assets.js +187 -186
- package/src/browser-audit.js +158 -158
- package/src/build.js +293 -291
- package/src/cli.js +364 -364
- package/src/content.js +233 -233
- package/src/data-saver.js +3 -3
- package/src/generators.js +414 -420
- package/src/i18n.js +86 -86
- package/src/markdown.js +195 -160
- package/src/page-check.js +1 -1
- package/src/plugin-api.js +77 -77
- package/src/report-visuals.js +642 -642
- package/src/revision-cards.js +30 -30
- package/src/rss.js +100 -0
- package/src/theme.js +4 -4
- package/src/video-metadata.js +36 -0
- package/static/edgepress/fonts/faces.css +2217 -2217
- package/static/edgepress/media-viewer.js +67 -10
- package/static/edgepress/project-demo.js +83 -83
- package/static/edgepress/search.js +84 -84
- package/tests/assets-runtime.test.mjs +26 -26
- package/tests/audit.test.mjs +142 -142
- package/tests/brand-regression.test.mjs +110 -110
- package/tests/document-package.test.mjs +2 -2
- package/tests/embed-syntax.test.mjs +68 -68
- package/tests/image-viewer.test.mjs +36 -36
- package/tests/markdown-media.test.mjs +119 -0
- package/tests/oembed-layout.test.mjs +6 -1
- package/tests/project-demo.test.mjs +73 -73
- package/tests/release-version.test.mjs +28 -0
- package/tests/rss.test.mjs +54 -0
- package/tests/video-metadata.test.mjs +28 -0
- package/tests/writing.test.mjs +83 -83
- package/themes/atelier/assets/style.css +340 -340
- package/themes/default/assets/style.css +371 -371
- package/themes/default/layouts/partials/head.html +1 -1
- package/themes/folio/assets/style.css +515 -515
- package/themes/folio/theme.json +5 -5
- package/themes/signal/assets/style.css +332 -332
- package/tools/README.md +10 -10
- package/tools/assets/generate-brand-assets.py +160 -160
- package/tools/assets/video-preview.mjs +15 -0
- package/tools/recordings/demo-workbench.mjs +53 -53
- package/tools/recordings/desktop-recording.mjs +70 -70
- package/tools/recordings/vm-desktop.mjs +59 -59
package/README.md
CHANGED
|
@@ -49,6 +49,16 @@ Use Node.js 22.12 or newer. Set the real site URL and operator contact in config
|
|
|
49
49
|
|
|
50
50
|
Run `edgepress init` in a new project directory to scaffold a site pinned to the installed EdgePress release. The initializer keeps the existing package name and scripts.
|
|
51
51
|
|
|
52
|
+
## Maintainer npm and GitHub releases
|
|
53
|
+
|
|
54
|
+
Releases use **year.month.number of updates in that month**, not the calendar day. For example, `2026.10.12` is the twelfth update in October 2026; `2026.10.13` follows it, and November starts at `2026.11.1`. The release workflow uses **UTC** for the month boundary and checks `package.json`, existing `vYYYY.M.N` tags and published npm versions to avoid reusing a version.
|
|
55
|
+
|
|
56
|
+
Once the npm package owner has configured **Trusted Publishing** at [npmjs.com](https://www.npmjs.com/package/edgepress/access), choose GitHub Actions with owner `jsw-teams`, repository `edgepress`, workflow filename **`publish.yml`**, and allow **`npm publish`** (not only staging). No environment name is used. This is a one-time npm-side setup; no long-lived `NPM_TOKEN` is required. Restrict traditional publish tokens after confirming the first successful trusted publish.
|
|
57
|
+
|
|
58
|
+
To publish new source, a repository maintainer opens **Actions → Publish npm and GitHub Release → Run workflow** on `main`. The manual-only job installs Node 22 and npm 11, determines the next monthly update number, updates both package manifests, audits dependencies, runs the full browser test suite, builds the project and packs the source. Only after all checks pass does it push a non-force release commit and tag, publish that exact archive to npm with provenance, and create a GitHub Release containing the same `.tgz` and SHA-256 checksum. Ordinary pushes and PRs cannot trigger a publish.
|
|
59
|
+
|
|
60
|
+
**Recovery:** If a run fails *after* pushing its version tag, do not launch a new release blindly: check whether the tag, npm version or GitHub Release already exists and reconcile the incomplete publish first. npm versions cannot be overwritten. Protected branches must explicitly permit the GitHub Actions bot to create the release commit/tag or use a maintainer-approved release branch process.
|
|
61
|
+
|
|
52
62
|
## External link prompts
|
|
53
63
|
|
|
54
64
|
The optional local prompt shows the complete destination URL (including path, query and fragment) once, with no duplicate hostname, and lets the visitor return or continue. It makes no request to the destination before confirmation. Configure exact origins, not wildcard domains:
|
|
@@ -173,7 +183,7 @@ Project guides are published from content/pages/: project introduction, quick st
|
|
|
173
183
|
|
|
174
184
|
Version 2026.10.1 starts the October 2026 release series. Read the [October release notes](content/posts/2026-10-01-edgepress-release-2026-10-1/). The September updates are recorded in the [request 1 notes](content/posts/2026-09-24-edgepress-release-2026-9-1/), [request 2 notes](content/posts/2026-09-25-edgepress-release-2026-9-2/), [request 3 notes](content/posts/2026-09-25-edgepress-release-2026-9-3/), [request 4 notes](content/posts/2026-09-25-edgepress-release-2026-9-4/), [request 5 notes](content/posts/2026-09-25-edgepress-release-2026-9-5/), [request 6 notes](content/posts/2026-09-25-edgepress-release-2026-9-6/), [request 7 notes](content/posts/2026-09-26-edgepress-release-2026-9-7/), [request 8 notes](content/posts/2026-09-26-edgepress-release-2026-9-8/), [request 9 notes](content/posts/2026-09-26-edgepress-release-2026-9-9/), and [request 10 notes](content/posts/2026-09-27-edgepress-release-2026-9-10/).
|
|
175
185
|
|
|
176
|
-
This release publishes page media from content/assets
|
|
186
|
+
This release publishes page media from content/assets/ and updates Wrangler to 4.144.0. GitHub Actions retains only scheduled and lockfile-change dependency security audits. Optional services remain disabled until a visitor makes an explicit choice.
|
|
177
187
|
|
|
178
188
|
## Journal categories, navigation, and author profiles
|
|
179
189
|
|
|
@@ -227,7 +237,7 @@ Multiple post lists on the same page share a displayed-article set: an article a
|
|
|
227
237
|
|
|
228
238
|
## Static platform deployment
|
|
229
239
|
|
|
230
|
-
Run npm run deploy:cloudflare, npm run deploy:vercel, npm run deploy:netlify, npm run deploy:edgeone -- -n my-site, or npm run deploy:esa -- --name my-site. Platform authentication is required.
|
|
240
|
+
Run npm run deploy:cloudflare, npm run deploy:vercel, npm run deploy:netlify, npm run deploy:edgeone -- -n my-site, or npm run deploy:esa -- --name my-site. Platform authentication is required. Deployments run locally; GitHub Actions is limited to dependency security audits.
|
|
231
241
|
|
|
232
242
|
|
|
233
243
|
All platforms build dist/. CSS and JS are fingerprinted, with one-year immutable cache policies for Cloudflare, Vercel, Netlify and EdgeOne. ESA uses the same assets; set its browser and edge cache rules for hashed CSS/JS while leaving HTML short-lived. See the [deployment guide](content/pages/deployment/en.json) and [ESA build configuration](https://help.aliyun.com/en/edge-security-acceleration/esa/user-guide/build-pages).
|
package/config.yml
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# Site configuration (site, theme, privacy, optional consent services).
|
|
2
2
|
# Build paths and enabled locales belong to edgepress.config.mjs.
|
|
3
|
-
site:
|
|
4
|
-
timeZone: Asia/Taipei
|
|
5
|
-
title: EdgePress
|
|
6
|
-
description: A static website builder for Cloudflare Workers with editable pages, Markdown posts, themes, and plugins.
|
|
7
|
-
url: https://example.org
|
|
3
|
+
site:
|
|
4
|
+
timeZone: Asia/Taipei
|
|
5
|
+
title: EdgePress
|
|
6
|
+
description: A static website builder for Cloudflare Workers with editable pages, Markdown posts, themes, and plugins.
|
|
7
|
+
url: https://example.org
|
|
8
8
|
language: en
|
|
9
9
|
dataSaver: # site (optional text view; requires the theme dataSaver assets)
|
|
10
10
|
enabled: false
|
|
@@ -13,169 +13,169 @@ site:
|
|
|
13
13
|
detectSlowConnection: false
|
|
14
14
|
respectBrowserPreference: false
|
|
15
15
|
promptAfterMs: 5000
|
|
16
|
-
head:
|
|
17
|
-
titleSuffix: ""
|
|
18
|
-
titleSeparator: " · "
|
|
19
|
-
header:
|
|
20
|
-
showBrand: true
|
|
21
|
-
brandLabel: ""
|
|
22
|
-
components:
|
|
23
|
-
header: true
|
|
24
|
-
primaryNavigation: true
|
|
25
|
-
languageNavigation: true
|
|
26
|
-
footer: true
|
|
27
|
-
footerNavigation: true
|
|
28
|
-
navigation:
|
|
29
|
-
- key: home
|
|
30
|
-
url: "@home"
|
|
31
|
-
labels:
|
|
32
|
-
en: Home
|
|
33
|
-
zh-CN: 首页
|
|
34
|
-
- key: guides
|
|
35
|
-
url: /project-introduction/
|
|
36
|
-
labels:
|
|
37
|
-
en: Guides
|
|
38
|
-
zh-CN: 项目指南
|
|
39
|
-
- key: quick-start
|
|
40
|
-
url: /quick-start/
|
|
41
|
-
labels:
|
|
42
|
-
en: Quick start
|
|
43
|
-
zh-CN: 快速入门
|
|
44
|
-
- key: posts
|
|
45
|
-
url: "@archives"
|
|
46
|
-
labels:
|
|
47
|
-
en: Posts
|
|
48
|
-
zh-CN: 文章
|
|
49
|
-
- key: search
|
|
50
|
-
url: "@search"
|
|
51
|
-
labels:
|
|
52
|
-
en: Search
|
|
53
|
-
zh-CN: 搜索
|
|
54
|
-
footerNavigation:
|
|
55
|
-
- key: privacy
|
|
56
|
-
url: /privacy-policy/
|
|
57
|
-
labels:
|
|
58
|
-
en: Privacy policy
|
|
59
|
-
zh-CN: 隐私政策
|
|
60
|
-
- key: feed
|
|
61
|
-
url: "@feed"
|
|
62
|
-
labels:
|
|
63
|
-
en: Atom feed
|
|
64
|
-
zh-CN: Atom 订阅
|
|
65
|
-
footer: ""
|
|
66
|
-
author:
|
|
67
|
-
name: toewpq
|
|
68
|
-
avatar: /edgepress/brand/avatar.png
|
|
69
|
-
seo:
|
|
70
|
-
author: toewpq
|
|
71
|
-
keywords:
|
|
72
|
-
- Markdown website builder
|
|
73
|
-
- Cloudflare Workers
|
|
74
|
-
- static site generator
|
|
75
|
-
image: https://example.org/edgepress/brand/og-image.png
|
|
76
|
-
robots: index,follow
|
|
77
|
-
agentSeo:
|
|
78
|
-
enabled: true
|
|
79
|
-
summary: A static website builder for Cloudflare Workers, with row-based editable pages, Markdown posts,
|
|
80
|
-
themes, plugins, and consent-gated integrations.
|
|
81
|
-
topics:
|
|
82
|
-
- Markdown website builder
|
|
83
|
-
- Cloudflare Workers
|
|
84
|
-
- composable page blocks
|
|
85
|
-
- plugin development
|
|
86
|
-
llmsTxt: true
|
|
87
|
-
agentCrawlers:
|
|
88
|
-
- GPTBot
|
|
89
|
-
- ClaudeBot
|
|
90
|
-
- PerplexityBot
|
|
91
|
-
privacy:
|
|
92
|
-
controller:
|
|
93
|
-
name: toewpq
|
|
94
|
-
contact: toewpq@gmail.com
|
|
95
|
-
policyUrl: /privacy-policy/
|
|
96
|
-
plugins:
|
|
97
|
-
consent:
|
|
98
|
-
enabled: true
|
|
99
|
-
proposedDate: 2026-09-26
|
|
100
|
-
effectiveDate: 2026-09-26
|
|
101
|
-
expiresDays: 180
|
|
102
|
-
services:
|
|
103
|
-
- id: cloudflare-web-analytics
|
|
104
|
-
provider: cloudflare-web-analytics
|
|
105
|
-
name:
|
|
106
|
-
en: Cloudflare Web Analytics
|
|
107
|
-
zh-CN: Cloudflare 网站分析
|
|
108
|
-
purpose:
|
|
109
|
-
en: Measure visits and page performance to improve this site, only after you opt in.
|
|
110
|
-
zh-CN: 在你同意后统计访问与页面性能,用于改进本站。
|
|
111
|
-
dataCategories:
|
|
112
|
-
en: Performance timing and page-view metrics; dimensions can include path, referrer, device, browser,
|
|
113
|
-
operating system, and country. Cloudflare receives the beacon request's source IP and says it
|
|
114
|
-
discards it at the nearest data center without storing it in core databases or logs.
|
|
115
|
-
zh-CN: 性能计时和页面浏览指标,维度可能包括页面路径、来源页、设备、浏览器、操作系统和国家或地区。Cloudflare 会在信标请求中接收来源 IP,并表示会在最近的数据中心将其丢弃,不保存到核心数据库或日志中。
|
|
116
|
-
recipient:
|
|
117
|
-
en: Cloudflare, Inc.
|
|
118
|
-
zh-CN: Cloudflare, Inc.
|
|
119
|
-
retention:
|
|
120
|
-
en: Unsampled beacon data is kept for 7 days, then aggregated to about 10% for long-term storage. Dashboard
|
|
121
|
-
history is available for 6 months.
|
|
122
|
-
zh-CN: 未采样的信标数据保留 7 天,之后会汇总为约 10% 的长期数据。仪表板可查看最近 6 个月的历史记录。
|
|
123
|
-
privacyUrl: https://developers.cloudflare.com/speed/observatory/rum-beacon/
|
|
124
|
-
token: 8347d72ba9f84e6783bf441e7832a80e
|
|
125
|
-
- id: youtube
|
|
126
|
-
provider: oembed
|
|
127
|
-
enabled: true
|
|
128
|
-
name: YouTube
|
|
129
|
-
purpose:
|
|
130
|
-
en: With your permission, load YouTube media and its player on request.
|
|
131
|
-
zh-CN: 在你同意后,按你的请求加载 YouTube 分享内容及播放器。
|
|
132
|
-
dataCategories:
|
|
133
|
-
en: Requested content URL, IP address, browser information; provider cookies may be used after loading.
|
|
134
|
-
zh-CN: 请求的内容链接、IP 地址、浏览器信息;加载后平台可能使用其 Cookie。
|
|
135
|
-
recipient: YouTube
|
|
136
|
-
retention:
|
|
137
|
-
en: The site keeps the consent choice for 180 days; provider retention follows its linked privacy policy.
|
|
138
|
-
zh-CN: 本站保存授权选择 180 天;平台处理与保留规则见所链接的隐私政策。
|
|
139
|
-
privacyUrl: https://policies.google.com/privacy
|
|
140
|
-
backendUrl: https://www.youtube.com
|
|
141
|
-
oembedEndpoint: https://www.youtube.com/oembed
|
|
142
|
-
sourceOrigins:
|
|
143
|
-
- https://www.youtube.com
|
|
144
|
-
- https://youtu.be
|
|
145
|
-
- https://youtube.com
|
|
146
|
-
- https://m.youtube.com
|
|
147
|
-
embedOrigins:
|
|
148
|
-
- https://www.youtube.com
|
|
149
|
-
- https://www.youtube-nocookie.com
|
|
150
|
-
- id: x-posts
|
|
151
|
-
provider: oembed
|
|
152
|
-
enabled: true
|
|
153
|
-
name: X
|
|
154
|
-
purpose:
|
|
155
|
-
en: With your permission, load X media and its player on request.
|
|
156
|
-
zh-CN: 在你同意后,按你的请求加载 X 分享内容及播放器。
|
|
157
|
-
dataCategories:
|
|
158
|
-
en: Requested content URL, IP address, browser information; provider cookies may be used after loading.
|
|
159
|
-
zh-CN: 请求的内容链接、IP 地址、浏览器信息;加载后平台可能使用其 Cookie。
|
|
160
|
-
recipient: X
|
|
161
|
-
retention:
|
|
162
|
-
en: The site keeps the consent choice for 180 days; provider retention follows its linked privacy policy.
|
|
163
|
-
zh-CN: 本站保存授权选择 180 天;平台处理与保留规则见所链接的隐私政策。
|
|
164
|
-
privacyUrl: https://x.com/en/privacy
|
|
165
|
-
backendUrl: https://x.com
|
|
166
|
-
oembedEndpoint: https://publish.x.com/oembed
|
|
167
|
-
sourceOrigins:
|
|
168
|
-
- https://x.com
|
|
169
|
-
- https://twitter.com
|
|
170
|
-
- https://www.x.com
|
|
171
|
-
- https://www.twitter.com
|
|
172
|
-
embedOrigins:
|
|
173
|
-
- https://platform.x.com
|
|
174
|
-
- https://platform.twitter.com
|
|
175
|
-
- https://syndication.twitter.com
|
|
176
|
-
- https://cdn.syndication.twimg.com
|
|
177
|
-
- https://pbs.twimg.com
|
|
178
|
-
- https://abs.twimg.com
|
|
179
|
-
- https://video.twimg.com
|
|
180
|
-
embedScripts:
|
|
181
|
-
- https://platform.x.com/widgets.js
|
|
16
|
+
head:
|
|
17
|
+
titleSuffix: ""
|
|
18
|
+
titleSeparator: " · "
|
|
19
|
+
header:
|
|
20
|
+
showBrand: true
|
|
21
|
+
brandLabel: ""
|
|
22
|
+
components:
|
|
23
|
+
header: true
|
|
24
|
+
primaryNavigation: true
|
|
25
|
+
languageNavigation: true
|
|
26
|
+
footer: true
|
|
27
|
+
footerNavigation: true
|
|
28
|
+
navigation:
|
|
29
|
+
- key: home
|
|
30
|
+
url: "@home"
|
|
31
|
+
labels:
|
|
32
|
+
en: Home
|
|
33
|
+
zh-CN: 首页
|
|
34
|
+
- key: guides
|
|
35
|
+
url: /project-introduction/
|
|
36
|
+
labels:
|
|
37
|
+
en: Guides
|
|
38
|
+
zh-CN: 项目指南
|
|
39
|
+
- key: quick-start
|
|
40
|
+
url: /quick-start/
|
|
41
|
+
labels:
|
|
42
|
+
en: Quick start
|
|
43
|
+
zh-CN: 快速入门
|
|
44
|
+
- key: posts
|
|
45
|
+
url: "@archives"
|
|
46
|
+
labels:
|
|
47
|
+
en: Posts
|
|
48
|
+
zh-CN: 文章
|
|
49
|
+
- key: search
|
|
50
|
+
url: "@search"
|
|
51
|
+
labels:
|
|
52
|
+
en: Search
|
|
53
|
+
zh-CN: 搜索
|
|
54
|
+
footerNavigation:
|
|
55
|
+
- key: privacy
|
|
56
|
+
url: /privacy-policy/
|
|
57
|
+
labels:
|
|
58
|
+
en: Privacy policy
|
|
59
|
+
zh-CN: 隐私政策
|
|
60
|
+
- key: feed
|
|
61
|
+
url: "@feed"
|
|
62
|
+
labels:
|
|
63
|
+
en: Atom feed
|
|
64
|
+
zh-CN: Atom 订阅
|
|
65
|
+
footer: ""
|
|
66
|
+
author:
|
|
67
|
+
name: toewpq
|
|
68
|
+
avatar: /edgepress/brand/avatar.png
|
|
69
|
+
seo:
|
|
70
|
+
author: toewpq
|
|
71
|
+
keywords:
|
|
72
|
+
- Markdown website builder
|
|
73
|
+
- Cloudflare Workers
|
|
74
|
+
- static site generator
|
|
75
|
+
image: https://example.org/edgepress/brand/og-image.png
|
|
76
|
+
robots: index,follow
|
|
77
|
+
agentSeo:
|
|
78
|
+
enabled: true
|
|
79
|
+
summary: A static website builder for Cloudflare Workers, with row-based editable pages, Markdown posts,
|
|
80
|
+
themes, plugins, and consent-gated integrations.
|
|
81
|
+
topics:
|
|
82
|
+
- Markdown website builder
|
|
83
|
+
- Cloudflare Workers
|
|
84
|
+
- composable page blocks
|
|
85
|
+
- plugin development
|
|
86
|
+
llmsTxt: true
|
|
87
|
+
agentCrawlers:
|
|
88
|
+
- GPTBot
|
|
89
|
+
- ClaudeBot
|
|
90
|
+
- PerplexityBot
|
|
91
|
+
privacy:
|
|
92
|
+
controller:
|
|
93
|
+
name: toewpq
|
|
94
|
+
contact: toewpq@gmail.com
|
|
95
|
+
policyUrl: /privacy-policy/
|
|
96
|
+
plugins:
|
|
97
|
+
consent:
|
|
98
|
+
enabled: true
|
|
99
|
+
proposedDate: 2026-09-26
|
|
100
|
+
effectiveDate: 2026-09-26
|
|
101
|
+
expiresDays: 180
|
|
102
|
+
services:
|
|
103
|
+
- id: cloudflare-web-analytics
|
|
104
|
+
provider: cloudflare-web-analytics
|
|
105
|
+
name:
|
|
106
|
+
en: Cloudflare Web Analytics
|
|
107
|
+
zh-CN: Cloudflare 网站分析
|
|
108
|
+
purpose:
|
|
109
|
+
en: Measure visits and page performance to improve this site, only after you opt in.
|
|
110
|
+
zh-CN: 在你同意后统计访问与页面性能,用于改进本站。
|
|
111
|
+
dataCategories:
|
|
112
|
+
en: Performance timing and page-view metrics; dimensions can include path, referrer, device, browser,
|
|
113
|
+
operating system, and country. Cloudflare receives the beacon request's source IP and says it
|
|
114
|
+
discards it at the nearest data center without storing it in core databases or logs.
|
|
115
|
+
zh-CN: 性能计时和页面浏览指标,维度可能包括页面路径、来源页、设备、浏览器、操作系统和国家或地区。Cloudflare 会在信标请求中接收来源 IP,并表示会在最近的数据中心将其丢弃,不保存到核心数据库或日志中。
|
|
116
|
+
recipient:
|
|
117
|
+
en: Cloudflare, Inc.
|
|
118
|
+
zh-CN: Cloudflare, Inc.
|
|
119
|
+
retention:
|
|
120
|
+
en: Unsampled beacon data is kept for 7 days, then aggregated to about 10% for long-term storage. Dashboard
|
|
121
|
+
history is available for 6 months.
|
|
122
|
+
zh-CN: 未采样的信标数据保留 7 天,之后会汇总为约 10% 的长期数据。仪表板可查看最近 6 个月的历史记录。
|
|
123
|
+
privacyUrl: https://developers.cloudflare.com/speed/observatory/rum-beacon/
|
|
124
|
+
token: 8347d72ba9f84e6783bf441e7832a80e
|
|
125
|
+
- id: youtube
|
|
126
|
+
provider: oembed
|
|
127
|
+
enabled: true
|
|
128
|
+
name: YouTube
|
|
129
|
+
purpose:
|
|
130
|
+
en: With your permission, load YouTube media and its player on request.
|
|
131
|
+
zh-CN: 在你同意后,按你的请求加载 YouTube 分享内容及播放器。
|
|
132
|
+
dataCategories:
|
|
133
|
+
en: Requested content URL, IP address, browser information; provider cookies may be used after loading.
|
|
134
|
+
zh-CN: 请求的内容链接、IP 地址、浏览器信息;加载后平台可能使用其 Cookie。
|
|
135
|
+
recipient: YouTube
|
|
136
|
+
retention:
|
|
137
|
+
en: The site keeps the consent choice for 180 days; provider retention follows its linked privacy policy.
|
|
138
|
+
zh-CN: 本站保存授权选择 180 天;平台处理与保留规则见所链接的隐私政策。
|
|
139
|
+
privacyUrl: https://policies.google.com/privacy
|
|
140
|
+
backendUrl: https://www.youtube.com
|
|
141
|
+
oembedEndpoint: https://www.youtube.com/oembed
|
|
142
|
+
sourceOrigins:
|
|
143
|
+
- https://www.youtube.com
|
|
144
|
+
- https://youtu.be
|
|
145
|
+
- https://youtube.com
|
|
146
|
+
- https://m.youtube.com
|
|
147
|
+
embedOrigins:
|
|
148
|
+
- https://www.youtube.com
|
|
149
|
+
- https://www.youtube-nocookie.com
|
|
150
|
+
- id: x-posts
|
|
151
|
+
provider: oembed
|
|
152
|
+
enabled: true
|
|
153
|
+
name: X
|
|
154
|
+
purpose:
|
|
155
|
+
en: With your permission, load X media and its player on request.
|
|
156
|
+
zh-CN: 在你同意后,按你的请求加载 X 分享内容及播放器。
|
|
157
|
+
dataCategories:
|
|
158
|
+
en: Requested content URL, IP address, browser information; provider cookies may be used after loading.
|
|
159
|
+
zh-CN: 请求的内容链接、IP 地址、浏览器信息;加载后平台可能使用其 Cookie。
|
|
160
|
+
recipient: X
|
|
161
|
+
retention:
|
|
162
|
+
en: The site keeps the consent choice for 180 days; provider retention follows its linked privacy policy.
|
|
163
|
+
zh-CN: 本站保存授权选择 180 天;平台处理与保留规则见所链接的隐私政策。
|
|
164
|
+
privacyUrl: https://x.com/en/privacy
|
|
165
|
+
backendUrl: https://x.com
|
|
166
|
+
oembedEndpoint: https://publish.x.com/oembed
|
|
167
|
+
sourceOrigins:
|
|
168
|
+
- https://x.com
|
|
169
|
+
- https://twitter.com
|
|
170
|
+
- https://www.x.com
|
|
171
|
+
- https://www.twitter.com
|
|
172
|
+
embedOrigins:
|
|
173
|
+
- https://platform.x.com
|
|
174
|
+
- https://platform.twitter.com
|
|
175
|
+
- https://syndication.twitter.com
|
|
176
|
+
- https://cdn.syndication.twimg.com
|
|
177
|
+
- https://pbs.twimg.com
|
|
178
|
+
- https://abs.twimg.com
|
|
179
|
+
- https://video.twimg.com
|
|
180
|
+
embedScripts:
|
|
181
|
+
- https://platform.x.com/widgets.js
|