@canonry/canonry 7.78.0 → 7.78.2
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/dist/{ads-MIR5MCHL.js → ads-MNMND5VH.js} +2 -2
- package/dist/{agent-IXRL5RBI.js → agent-4KNDL3D3.js} +5 -5
- package/dist/{agent-ask-K42H6H2T.js → agent-ask-32RTOL2M.js} +2 -2
- package/dist/{agent-conversations-2T3W4DHO.js → agent-conversations-BXVWHUZC.js} +2 -2
- package/dist/{agent-memory-LJBNSTSP.js → agent-memory-7R7UVFS5.js} +2 -2
- package/dist/{agent-providers-QR4LY3AP.js → agent-providers-QGVLCCH4.js} +2 -2
- package/dist/{agent-transcript-JIHJWHV6.js → agent-transcript-7Y6BJCIT.js} +2 -2
- package/dist/{analytics-JRV7DBBU.js → analytics-YOGEHW6J.js} +2 -2
- package/dist/{apply-ZFWDSAV4.js → apply-TB3MF3PH.js} +2 -2
- package/dist/{backfill-LU2AQIPY.js → backfill-IRVLT6VT.js} +5 -5
- package/dist/{backlinks-NAC2373F.js → backlinks-6GTL324T.js} +2 -2
- package/dist/{bing-L3LDBJOC.js → bing-OMQACSDY.js} +2 -2
- package/dist/{bootstrap-I6DA4KWB.js → bootstrap-WZ6YDQIG.js} +6 -6
- package/dist/{cdp-4F74XLTH.js → cdp-3WBLAWOL.js} +5 -5
- package/dist/{chunk-SAHH2FXO.js → chunk-2EWZ3DJ4.js} +1 -1
- package/dist/{chunk-VLOCDWCS.js → chunk-3QJWOF2B.js} +3 -2
- package/dist/{chunk-6PRFVLIK.js → chunk-4GEEYY3N.js} +1 -1
- package/dist/{chunk-UH44UCRM.js → chunk-5NBXPO4G.js} +1 -1
- package/dist/{chunk-L2KMR7CM.js → chunk-72YPSNCG.js} +1 -1
- package/dist/{chunk-L6F2HOQH.js → chunk-7HE4LAJY.js} +5 -5
- package/dist/{chunk-C5WSQXP5.js → chunk-7OAXEMOF.js} +1 -1
- package/dist/{chunk-RSVANBNW.js → chunk-BKOG3GEI.js} +1 -1
- package/dist/{chunk-EHXNYXAS.js → chunk-BLZCNL3B.js} +1 -1
- package/dist/{chunk-ZUC7CJVD.js → chunk-BTMLE3EN.js} +2 -2
- package/dist/{chunk-EFMZSYRD.js → chunk-COUM462G.js} +16 -13
- package/dist/{chunk-JEUL5QZP.js → chunk-GEHRGKQT.js} +3 -3
- package/dist/{chunk-WXIL2EFM.js → chunk-IYMTQHPD.js} +2 -2
- package/dist/{chunk-367K6XVX.js → chunk-KF7I7FBI.js} +2 -2
- package/dist/{chunk-SOQVI7EZ.js → chunk-LBNUTWPK.js} +1 -1
- package/dist/{chunk-6P6YBNKN.js → chunk-OES6PSQK.js} +3 -3
- package/dist/{chunk-6VBLPCCX.js → chunk-PH4AESRE.js} +2 -0
- package/dist/{chunk-UQOC5ZQE.js → chunk-PLLDJUG2.js} +2 -2
- package/dist/{chunk-M3BUP6XD.js → chunk-PRCBHOVR.js} +43 -7
- package/dist/{chunk-QXSOXDUR.js → chunk-R26CF4WT.js} +1 -1
- package/dist/{chunk-WCFANFR2.js → chunk-UHCOJCT3.js} +308 -308
- package/dist/{citations-2XELMCCV.js → citations-PGG7JEIN.js} +2 -2
- package/dist/{cli-commands-WCOAB6XU.js → cli-commands-NGXSLPIA.js} +4 -4
- package/dist/cli.js +7 -7
- package/dist/{competitor-IK4GYTZO.js → competitor-B3CZOKZU.js} +2 -2
- package/dist/{content-SMQPJXPC.js → content-Z4XJMZB4.js} +2 -2
- package/dist/{dashboard-EE24ROVG.js → dashboard-6MMYA2GG.js} +3 -3
- package/dist/{demo-7XH2N65A.js → demo-3R2SHQPO.js} +1 -1
- package/dist/{demo-server-CVB65UYW.js → demo-server-ISJOEJN5.js} +4 -4
- package/dist/{discover-3KHUCVE7.js → discover-OT3K7KQK.js} +2 -2
- package/dist/{discover-eval-DOEP4ZQ7.js → discover-eval-DN4J4KD5.js} +2 -2
- package/dist/{doctor-3T6RKSE7.js → doctor-UDF6OCSR.js} +2 -2
- package/dist/{evidence-4NFL5KM3.js → evidence-Z364UFOD.js} +2 -2
- package/dist/{export-cmd-BQC6XLJ7.js → export-cmd-K27XN4G5.js} +2 -2
- package/dist/{ga-HBRA4UUK.js → ga-Q2CELDLG.js} +2 -2
- package/dist/{gbp-2WMBTDJV.js → gbp-V2APGSIQ.js} +2 -2
- package/dist/{google-JFUE4BNJ.js → google-WFHYA3QT.js} +2 -2
- package/dist/{health-cmd-7BMVCCG2.js → health-cmd-RGFAJ4YP.js} +2 -2
- package/dist/{history-QA4ZXCVH.js → history-RUSU66BZ.js} +2 -2
- package/dist/index.d.ts +10 -7
- package/dist/index.js +13 -13
- package/dist/{init-O4G2MDMC.js → init-SMBVJSP6.js} +8 -8
- package/dist/{insights-K4UX2PSI.js → insights-4IFQLPS3.js} +2 -2
- package/dist/{intelligence-service-D7DS4UKT.js → intelligence-service-MPNONLCW.js} +3 -3
- package/dist/{journeys-UWEWJXGT.js → journeys-PTC2QY57.js} +2 -2
- package/dist/{keys-CL5YYE7Q.js → keys-JASXI2SR.js} +2 -2
- package/dist/{keyword-IFCC5IZT.js → keyword-SK2HJXCJ.js} +2 -2
- package/dist/{logs-2A3HBUBK.js → logs-AS5I5V2A.js} +2 -2
- package/dist/{mcp-B6L7PKZ4.js → mcp-BQSOYHEX.js} +3 -3
- package/dist/mcp.js +4 -4
- package/dist/{measurement-plan-GYSO6CXX.js → measurement-plan-LZYYH3OD.js} +3 -3
- package/dist/{notify-XM23I2B3.js → notify-JM6252F6.js} +2 -2
- package/dist/{organic-evidence-U7HZMXKP.js → organic-evidence-L3Y6RZIH.js} +2 -2
- package/dist/{overview-TSAK5DQP.js → overview-VIF2GXYW.js} +3 -3
- package/dist/{project-L7DLDEPI.js → project-FQEPFPRD.js} +2 -2
- package/dist/{query-FM5HDHO4.js → query-VKRESS6B.js} +2 -2
- package/dist/{research-7G5JU44N.js → research-6A6QWKN3.js} +2 -2
- package/dist/{results-export-JJDGG6ZP.js → results-export-VUB2ZD5B.js} +2 -2
- package/dist/{run-ZVIQVG23.js → run-PG5GYZT7.js} +3 -3
- package/dist/{schedule-TV7LWSYI.js → schedule-EBGOLCQZ.js} +2 -2
- package/dist/{search-7KRZLZ6S.js → search-NS4XPZRL.js} +2 -2
- package/dist/{serve-WSOG525W.js → serve-J7WR3J6I.js} +14 -14
- package/dist/{session-OUGQSGVV.js → session-FBHHWILQ.js} +6 -6
- package/dist/{settings-AOXQJOHN.js → settings-LNCAYCDF.js} +2 -2
- package/dist/{snapshot-B44CXKFU.js → snapshot-LX7OR7SO.js} +2 -2
- package/dist/{src-IBGSUYEG.js → src-AQ5MHQGQ.js} +1 -1
- package/dist/{status-RNBSFZ6Q.js → status-DQ6FNWUT.js} +3 -3
- package/dist/{technical-aeo-UAOKK5QH.js → technical-aeo-5GU2IY6W.js} +2 -2
- package/dist/{telemetry-55PUOMA7.js → telemetry-QK2GPII3.js} +3 -3
- package/dist/{tools-HRGP4FXN.js → tools-3ACR2D2V.js} +5 -5
- package/dist/{traffic-M4OHG5JW.js → traffic-2JFQKVAX.js} +2 -2
- package/dist/{users-GU7MULRM.js → users-7OJ2RGV3.js} +2 -2
- package/dist/{visibility-stats-4IDTDXDC.js → visibility-stats-VR25XMMY.js} +2 -2
- package/dist/{wordpress-CYXB4R5Y.js → wordpress-JYXTF4PL.js} +2 -2
- package/package.json +1 -1
|
@@ -157,7 +157,7 @@ import {
|
|
|
157
157
|
userSessions,
|
|
158
158
|
users,
|
|
159
159
|
writeNegativeReviewMaxStars
|
|
160
|
-
} from "./chunk-
|
|
160
|
+
} from "./chunk-PH4AESRE.js";
|
|
161
161
|
import {
|
|
162
162
|
ADS_ACTIVATE_SCOPE,
|
|
163
163
|
ADS_ACTIVATION_ABSOLUTE_MAX_ENTITIES,
|
|
@@ -7957,6 +7957,8 @@ h1 { margin: 0; font-size: 24px; line-height: 32px; font-weight: 600; letter-spa
|
|
|
7957
7957
|
p { margin: 0; overflow-wrap: anywhere; }
|
|
7958
7958
|
.intro { color: var(--secondary); margin-top: 8px; }
|
|
7959
7959
|
strong { color: var(--text); font-weight: 550; }
|
|
7960
|
+
a { color: var(--text); text-decoration: underline; text-decoration-color: var(--border-strong); text-underline-offset: 3px; }
|
|
7961
|
+
a:hover { text-decoration-color: var(--text); }
|
|
7960
7962
|
.err { margin-top: 16px; color: var(--negative); }
|
|
7961
7963
|
.warn { margin-top: 16px; padding: 12px; border: 1px solid var(--caution-border); border-radius: 6px; background: var(--caution-surface); color: var(--caution); font-size: 13px; line-height: 20px; }
|
|
7962
7964
|
.grant { margin: 24px 0 0; padding: 16px 0 20px; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); font-size: 13px; line-height: 20px; }
|
|
@@ -7979,7 +7981,7 @@ button { min-height: 36px; border: 1px solid transparent; border-radius: 6px; pa
|
|
|
7979
7981
|
.secondary { border-color: var(--border); background: var(--surface); color: var(--text); }
|
|
7980
7982
|
.secondary:hover { background: var(--hover); border-color: var(--border-strong); }
|
|
7981
7983
|
.secondary:active { background: var(--border); }
|
|
7982
|
-
:where(input, button):focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; }
|
|
7984
|
+
:where(input, button, a):focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; }
|
|
7983
7985
|
@media (max-width: 480px) {
|
|
7984
7986
|
main { padding: 32px 16px; align-items: flex-start; }
|
|
7985
7987
|
.panel { padding: 24px; }
|
|
@@ -8004,11 +8006,11 @@ function fontFace(fontUrl) {
|
|
|
8004
8006
|
src: url('${fontUrl}') format('woff2');
|
|
8005
8007
|
}`;
|
|
8006
8008
|
}
|
|
8007
|
-
function gatePage(title, body, fontUrl) {
|
|
8009
|
+
function gatePage(title, body, fontUrl, head = "") {
|
|
8008
8010
|
return `<!doctype html>
|
|
8009
8011
|
<html lang="en"><head>
|
|
8010
8012
|
<meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1">
|
|
8011
|
-
<meta name="color-scheme" content="dark"><meta name="theme-color" content="#0a0a0a"
|
|
8013
|
+
<meta name="color-scheme" content="dark"><meta name="theme-color" content="#0a0a0a">${head}
|
|
8012
8014
|
<title>${title} \xB7 Canonry</title>
|
|
8013
8015
|
<style>${fontFace(fontUrl)}${styles}</style>
|
|
8014
8016
|
</head><body><main><div class="gate">
|
|
@@ -8043,6 +8045,18 @@ ${o.scope.split(/\s+/).includes(RESEARCH_RUN_SCOPE) ? `<p class="warn">Run resea
|
|
|
8043
8045
|
<div class="actions"><button class="primary" type="submit" name="approve" value="yes">Allow</button><button class="secondary" type="submit" name="approve" value="no">Deny</button></div>
|
|
8044
8046
|
</form>`, o.fontUrl);
|
|
8045
8047
|
}
|
|
8048
|
+
function renderAuthorizationHandoff(o) {
|
|
8049
|
+
const target = escapeHtml(o.target);
|
|
8050
|
+
const title = o.approved ? "Access allowed" : "Access denied";
|
|
8051
|
+
return gatePage(
|
|
8052
|
+
title,
|
|
8053
|
+
`<h1 id="gate-title">${title}</h1>
|
|
8054
|
+
<p class="intro">Returning you to <strong>${escapeHtml(o.clientName)}</strong>. If nothing happens, <a href="${target}" rel="noreferrer">continue</a>.</p>`,
|
|
8055
|
+
o.fontUrl,
|
|
8056
|
+
`
|
|
8057
|
+
<meta http-equiv="refresh" content="0;url=${target}">`
|
|
8058
|
+
);
|
|
8059
|
+
}
|
|
8046
8060
|
|
|
8047
8061
|
// ../api-routes/src/oauth.ts
|
|
8048
8062
|
var CODE_TTL_MS = 6e4;
|
|
@@ -8100,6 +8114,12 @@ function sendGatePage(reply, html) {
|
|
|
8100
8114
|
"frame-ancestors 'none'; default-src 'none'; style-src 'unsafe-inline'; font-src 'self'; form-action 'self'"
|
|
8101
8115
|
).header("x-frame-options", "DENY").header("referrer-policy", "same-origin").header("cache-control", "no-store").type("text/html").send(html);
|
|
8102
8116
|
}
|
|
8117
|
+
function sendHandoffPage(reply, html) {
|
|
8118
|
+
return reply.header(
|
|
8119
|
+
"content-security-policy",
|
|
8120
|
+
"frame-ancestors 'none'; default-src 'none'; style-src 'unsafe-inline'; font-src 'self'; form-action 'none'; base-uri 'none'"
|
|
8121
|
+
).header("x-frame-options", "DENY").header("referrer-policy", "no-referrer").header("cache-control", "no-store").type("text/html").send(html);
|
|
8122
|
+
}
|
|
8103
8123
|
var CONSENT_SECRET = crypto10.randomBytes(32);
|
|
8104
8124
|
function registerOAuthRoutes(app, opts) {
|
|
8105
8125
|
void app.register(async (scope) => {
|
|
@@ -8126,6 +8146,12 @@ function registerOAuthRoutesIn(app, opts) {
|
|
|
8126
8146
|
function consentToken(userId, clientId, redirectUri, scope) {
|
|
8127
8147
|
return crypto10.createHmac("sha256", CONSENT_SECRET).update([userId, clientId, redirectUri, scope].join("\0")).digest("base64url");
|
|
8128
8148
|
}
|
|
8149
|
+
function selfRegistered(client) {
|
|
8150
|
+
if (client.registration !== "dynamic") return false;
|
|
8151
|
+
const gateway = opts.gatewayClient;
|
|
8152
|
+
const vouched = gateway !== void 0 && client.id === gateway.id && client.redirectUris.length > 0 && client.redirectUris.every((uri) => URL.canParse(uri) && new URL(uri).origin === gateway.origin);
|
|
8153
|
+
return !vouched;
|
|
8154
|
+
}
|
|
8129
8155
|
function authorizationServerMetadata() {
|
|
8130
8156
|
return {
|
|
8131
8157
|
issuer,
|
|
@@ -8201,7 +8227,7 @@ function registerOAuthRoutesIn(app, opts) {
|
|
|
8201
8227
|
return sendGatePage(reply, renderConsentPage({
|
|
8202
8228
|
action: request.url,
|
|
8203
8229
|
clientName: client.name,
|
|
8204
|
-
selfRegistered: client
|
|
8230
|
+
selfRegistered: selfRegistered(client),
|
|
8205
8231
|
redirectUri,
|
|
8206
8232
|
scope: grantedScope,
|
|
8207
8233
|
userName: user.name,
|
|
@@ -8239,7 +8265,12 @@ function registerOAuthRoutesIn(app, opts) {
|
|
|
8239
8265
|
const denied = new URL(redirectUri);
|
|
8240
8266
|
denied.searchParams.set("error", "access_denied");
|
|
8241
8267
|
if (q.state) denied.searchParams.set("state", q.state);
|
|
8242
|
-
return reply
|
|
8268
|
+
return sendHandoffPage(reply, renderAuthorizationHandoff({
|
|
8269
|
+
target: denied.toString(),
|
|
8270
|
+
approved: false,
|
|
8271
|
+
clientName: client.name,
|
|
8272
|
+
fontUrl: opts.fontUrl
|
|
8273
|
+
}));
|
|
8243
8274
|
}
|
|
8244
8275
|
const code = newToken();
|
|
8245
8276
|
const now = /* @__PURE__ */ new Date();
|
|
@@ -8258,7 +8289,12 @@ function registerOAuthRoutesIn(app, opts) {
|
|
|
8258
8289
|
target.searchParams.set("code", code);
|
|
8259
8290
|
if (q.state) target.searchParams.set("state", q.state);
|
|
8260
8291
|
target.searchParams.set("iss", issuer);
|
|
8261
|
-
return reply
|
|
8292
|
+
return sendHandoffPage(reply, renderAuthorizationHandoff({
|
|
8293
|
+
target: target.toString(),
|
|
8294
|
+
approved: true,
|
|
8295
|
+
clientName: client.name,
|
|
8296
|
+
fontUrl: opts.fontUrl
|
|
8297
|
+
}));
|
|
8262
8298
|
});
|
|
8263
8299
|
const registrations = /* @__PURE__ */ new Map();
|
|
8264
8300
|
let registrationsThisWindow = [];
|