Skip to content

Commit c653121

Browse files
Connor ClarkDevtools-frontend LUCI CQ
authored andcommitted
Update third-party-web to 0.26.2
Bug: None Change-Id: Idd491df20d8692c0943e336052e27c826d9401e1 Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6221254 Reviewed-by: Adriana Ixba <[email protected]> Commit-Queue: Adriana Ixba <[email protected]> Auto-Submit: Connor Clark <[email protected]>
1 parent 8e11a7d commit c653121

25 files changed

+884
-602
lines changed

front_end/third_party/third-party-web/README.chromium

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
Name: third-party-web
22
Short Name: third-party-web
33
URL: https://github.com/patrickhulce/third-party-web
4-
Version: 0.24.5
5-
Revision: 82f19004382b7b41b2cb41d8a81cb982a6ffe622
4+
Version: 0.26.2
5+
Revision: d60863a2ea913ed26ae0446296a0cb1cc6c71291
66
License: MIT
77
License File: LICENSE
88
Security Critical: no

front_end/third_party/third-party-web/lib/nostats-subset.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

front_end/third_party/third-party-web/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
"description": "Package list used when building/upgrading third-party-web",
44
"private": true,
55
"dependencies": {
6-
"esbuild": "0.23.1"
6+
"esbuild": "0.23.1",
7+
"third-party-web": "0.26.2"
78
}
89
}

front_end/third_party/third-party-web/package/.prettierrc

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

front_end/third_party/third-party-web/package/README.md

Lines changed: 586 additions & 573 deletions
Large diffs are not rendered by default.

front_end/third_party/third-party-web/package/dist/entities-httparchive-nostats.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

front_end/third_party/third-party-web/package/dist/entities-httparchive.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

front_end/third_party/third-party-web/package/dist/entities-nostats.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

front_end/third_party/third-party-web/package/dist/entities.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Facade data in third-party-web
2+
3+
In addition to identifying entities, third-party-web also includes data on entities' _products_, and available alternative libraries for products known as _facades_. A **third-party product** is a third-party resource that is included on a page associated with a specific integration/SDK/API, for example: a YouTube embed iframe. A **facade** is a frontend element which looks similar to the actual product and lazily loads it upon user interaction. It's expected to be significantly more lightweight/faster. For example: [lite-youtube-embed](https://github.com/paulirish/lite-youtube-embed).
4+
5+
[Lighthouse](https://github.com/GoogleChrome/lighthouse) 7.0 has a new audit that [identifies third-party embeds](https://web.dev/third-party-facades/) that can be lazy loaded with a facade. The Lighthouse audit is powered by the facade data in third-party-web.
6+
7+
## Criteria for adding a new facade
8+
9+
### Basic functionality
10+
11+
* Loads a frontend "component" which looks like the actual third-party embed.
12+
* After some user interaction (click, mouseover, etc), component replaces itself with the actual third-party embed.
13+
14+
### Well Maintained
15+
16+
* The projects issues and contributions are managed responsibly. Bugs are
17+
handled swiftly (e.g within 60 days of filing).
18+
* Is already used in production, ideally by users other than the creator.
19+
20+
### Orthogonal
21+
22+
* The facade handles a use case not covered by existing facades. For example: a
23+
lite-youtube clone isn't differentiated, but a react port of lite-youtube
24+
would work.
25+
26+
### Small Payload
27+
28+
* Should be significantly smaller in comparison to the deferred third-party
29+
product.
30+
* The JS/CSS/image/etc payload should be the minimum size necessary to mimic
31+
the product. (A rough rule of thumb is a facade should be &lt; 10% of the
32+
product it's mimicking)
33+
* We'd expect the facade to score 99+ in Lighthouse if it's tested on an
34+
otherwise-blank page.
35+
* Any required images should be as small as is reasonable. Using blurred, low-res,
36+
or [SQIP](https://calendar.perfplanet.com/2017/sqip-vague-vectors-for-performant-previews/)
37+
techniques may be advantageous.
38+
39+
## Submission Process
40+
41+
Anyone can propose changes, by making a pull request to this repo. Proposals
42+
don't necessarily need to be submitted by the creator.
43+
44+
Read
45+
[contributing](https://github.com/patrickhulce/third-party-web#contributing) for
46+
basics; look in `data/entities.js` for `products` to see how the data is structured.

0 commit comments

Comments
 (0)