@wix/himalaya-cli 0.985.0 → 0.986.0

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.
Files changed (2) hide show
  1. package/dist/cli.mjs +32 -5
  2. package/package.json +2 -2
package/dist/cli.mjs CHANGED
@@ -18857,6 +18857,7 @@ function shouldRevealError(args) {
18857
18857
  var EMAIL_RE, URL_HOST_RE, INTEGER_RE, NUMBER_RE;
18858
18858
  var init_validation = __esm({
18859
18859
  "../../core/ts/src/validation.ts"() {
18860
+ "use strict";
18860
18861
  EMAIL_RE = /^[A-Za-z0-9._%+-]+@[A-Za-z0-9-]+(\.[A-Za-z0-9-]+)*\.[A-Za-z]{2,}$/;
18861
18862
  URL_HOST_RE = /^[A-Za-z0-9-]+(\.[A-Za-z0-9-]+)*(:[0-9]+)?$/;
18862
18863
  INTEGER_RE = /^[+-]?[0-9]+$/;
@@ -22281,6 +22282,7 @@ function validateWorkerSubtree(raw, slotId, policy, actionCatalog) {
22281
22282
  var WORKER_SUBTREE_CEILINGS, ID_PART, ACTION_ID;
22282
22283
  var init_worker_subtree = __esm({
22283
22284
  "../../core/ts/src/worker-subtree.ts"() {
22285
+ "use strict";
22284
22286
  init_worker_subtree_safe_types_generated();
22285
22287
  WORKER_SUBTREE_CEILINGS = Object.freeze({
22286
22288
  maxEncodedBytes: 65536,
@@ -52591,7 +52593,7 @@ async function toPlaywrightCookies(setCookies, url) {
52591
52593
  }
52592
52594
  return out;
52593
52595
  }
52594
- async function createPlaywrightBrowser(load = () => import("playwright"), siteFetch = guardedSiteFetch) {
52596
+ async function createPlaywrightBrowser(load = () => import("playwright"), siteFetch = guardedSiteFetch, pin = realPin) {
52595
52597
  const screenshots = [];
52596
52598
  let pw;
52597
52599
  try {
@@ -52601,7 +52603,8 @@ async function createPlaywrightBrowser(load = () => import("playwright"), siteFe
52601
52603
  port: { crawl: async () => ({ unavailable: `playwright_not_installed: ${PLAYWRIGHT_HINT}`, pages: [], navLabels: [], theme: null }) },
52602
52604
  screenshots,
52603
52605
  unavailable: `playwright_not_installed: ${PLAYWRIGHT_HINT}`,
52604
- siteFetch
52606
+ siteFetch,
52607
+ pin
52605
52608
  };
52606
52609
  }
52607
52610
  const port = {
@@ -52615,10 +52618,32 @@ async function createPlaywrightBrowser(load = () => import("playwright"), siteFe
52615
52618
  }
52616
52619
  try {
52617
52620
  const page = await browser.newPage();
52621
+ const dialable = /* @__PURE__ */ new Map();
52622
+ const mayDial = (url) => {
52623
+ const cached3 = dialable.get(url.hostname);
52624
+ if (cached3) return cached3;
52625
+ const verdict = pin(url, AbortSignal.timeout(SUBRESOURCE_PIN_TIMEOUT_MS)).then(() => true, () => false);
52626
+ dialable.set(url.hostname, verdict);
52627
+ return verdict;
52628
+ };
52618
52629
  await page.route("**/*", async (route) => {
52619
52630
  const request = route.request();
52620
52631
  if (request.resourceType() !== "document") {
52621
- await route.continue();
52632
+ try {
52633
+ const url = new URL(request.url());
52634
+ if (NON_NETWORK_SCHEMES.has(url.protocol)) {
52635
+ await route.continue();
52636
+ return;
52637
+ }
52638
+ if (ASSET_HOP(url)) {
52639
+ await route.abort();
52640
+ return;
52641
+ }
52642
+ if (await mayDial(url)) await route.continue();
52643
+ else await route.abort();
52644
+ } catch {
52645
+ await route.abort();
52646
+ }
52622
52647
  return;
52623
52648
  }
52624
52649
  try {
@@ -52789,9 +52814,9 @@ async function createPlaywrightBrowser(load = () => import("playwright"), siteFe
52789
52814
  }
52790
52815
  }
52791
52816
  };
52792
- return { port, screenshots, siteFetch };
52817
+ return { port, screenshots, siteFetch, pin };
52793
52818
  }
52794
- var PLAYWRIGHT_HINT, PAGE_EVAL, CAP2, DOCUMENT_FETCH_TIMEOUT_MS, MAX_DOCUMENT_BYTES, FORWARDED_REQUEST_HEADERS;
52819
+ var PLAYWRIGHT_HINT, PAGE_EVAL, CAP2, DOCUMENT_FETCH_TIMEOUT_MS, MAX_DOCUMENT_BYTES, SUBRESOURCE_PIN_TIMEOUT_MS, NON_NETWORK_SCHEMES, FORWARDED_REQUEST_HEADERS;
52795
52820
  var init_crawl_look = __esm({
52796
52821
  "src/site-analyze/crawl-look.ts"() {
52797
52822
  init_dist();
@@ -53002,6 +53027,8 @@ var init_crawl_look = __esm({
53002
53027
  };
53003
53028
  DOCUMENT_FETCH_TIMEOUT_MS = 12e3;
53004
53029
  MAX_DOCUMENT_BYTES = 15e6;
53030
+ SUBRESOURCE_PIN_TIMEOUT_MS = 5e3;
53031
+ NON_NETWORK_SCHEMES = /* @__PURE__ */ new Set(["data:", "blob:", "about:"]);
53005
53032
  FORWARDED_REQUEST_HEADERS = ["user-agent", "accept-language", "accept", "cookie", "referer"];
53006
53033
  }
53007
53034
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wix/himalaya-cli",
3
- "version": "0.985.0",
3
+ "version": "0.986.0",
4
4
  "type": "module",
5
5
  "description": "himi — the Himalaya authoring CLI. Build a Tier-5 content package on your own machine, push it to the production serve as a draft, preview it on web + Himi Player, and read worker logs back — the remote dev loop. Wraps @himalaya/serve-cli for transport.",
6
6
  "keywords": [
@@ -65,5 +65,5 @@
65
65
  "artifactId": "himalaya-cli"
66
66
  }
67
67
  },
68
- "falconPackageHash": "277e41b04416b46fd7ccd42d09987c9e0478a67820885fef3debe4eb"
68
+ "falconPackageHash": "43bd0d15a28b9c677cc53272ebf2172c05f40aa9799b505d5fc9a304"
69
69
  }