@agentlogin/issuer 0.0.0-stage → 0.2.0-beta.1
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/LICENSE +202 -0
- package/README.md +237 -2
- package/dist/agents.d.ts +40 -0
- package/dist/agents.js +257 -0
- package/dist/agents.js.map +1 -0
- package/dist/app.d.ts +3 -0
- package/dist/app.js +652 -0
- package/dist/app.js.map +1 -0
- package/dist/clients.d.ts +20 -0
- package/dist/clients.js +272 -0
- package/dist/clients.js.map +1 -0
- package/dist/constants.d.ts +30 -0
- package/dist/constants.js +32 -0
- package/dist/constants.js.map +1 -0
- package/dist/context.d.ts +37 -0
- package/dist/context.js +2 -0
- package/dist/context.js.map +1 -0
- package/dist/errors.d.ts +10 -0
- package/dist/errors.js +17 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +45 -0
- package/dist/index.js +107 -0
- package/dist/index.js.map +1 -0
- package/dist/owner-address.d.ts +2 -0
- package/dist/owner-address.js +24 -0
- package/dist/owner-address.js.map +1 -0
- package/dist/safefetch.d.ts +38 -0
- package/dist/safefetch.js +164 -0
- package/dist/safefetch.js.map +1 -0
- package/dist/server.d.ts +1 -0
- package/dist/server.js +89 -0
- package/dist/server.js.map +1 -0
- package/dist/signing-configuration.d.ts +14 -0
- package/dist/signing-configuration.js +35 -0
- package/dist/signing-configuration.js.map +1 -0
- package/dist/signing-state.d.ts +22 -0
- package/dist/signing-state.js +14 -0
- package/dist/signing-state.js.map +1 -0
- package/dist/sqlite-store.d.ts +24 -0
- package/dist/sqlite-store.js +81 -0
- package/dist/sqlite-store.js.map +1 -0
- package/dist/state.d.ts +30 -0
- package/dist/state.js +77 -0
- package/dist/state.js.map +1 -0
- package/dist/store.d.ts +693 -0
- package/dist/store.js +883 -0
- package/dist/store.js.map +1 -0
- package/dist/tokens.d.ts +37 -0
- package/dist/tokens.js +167 -0
- package/dist/tokens.js.map +1 -0
- package/dist/transactions.d.ts +90 -0
- package/dist/transactions.js +449 -0
- package/dist/transactions.js.map +1 -0
- package/dist/util.d.ts +29 -0
- package/dist/util.js +113 -0
- package/dist/util.js.map +1 -0
- package/package.json +37 -4
- package/static/wait.js +42 -0
package/package.json
CHANGED
|
@@ -1,6 +1,39 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentlogin/issuer",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
3
|
+
"version": "0.2.0-beta.1",
|
|
4
|
+
"description": "Reference Agent Login issuer: an OpenID Provider that signs software agents in with their own keys",
|
|
5
|
+
"license": "Apache-2.0",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "dist/index.js",
|
|
8
|
+
"types": "dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": "./dist/index.js"
|
|
11
|
+
},
|
|
12
|
+
"files": [
|
|
13
|
+
"dist",
|
|
14
|
+
"static",
|
|
15
|
+
"README.md",
|
|
16
|
+
"LICENSE"
|
|
17
|
+
],
|
|
18
|
+
"repository": {
|
|
19
|
+
"type": "git",
|
|
20
|
+
"url": "git+https://github.com/agentlogin/reference.git",
|
|
21
|
+
"directory": "packages/issuer"
|
|
22
|
+
},
|
|
23
|
+
"dependencies": {
|
|
24
|
+
"@hono/node-server": "^1.19.0",
|
|
25
|
+
"hono": "^4.9.0",
|
|
26
|
+
"jose": "^6.1.0"
|
|
27
|
+
},
|
|
28
|
+
"scripts": {
|
|
29
|
+
"prepack": "tsc -b"
|
|
30
|
+
},
|
|
31
|
+
"engines": {
|
|
32
|
+
"node": ">=22.13"
|
|
33
|
+
},
|
|
34
|
+
"publishConfig": {
|
|
35
|
+
"access": "public",
|
|
36
|
+
"tag": "beta",
|
|
37
|
+
"registry": "https://registry.npmjs.org/"
|
|
38
|
+
}
|
|
39
|
+
}
|
package/static/wait.js
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
// Wait page script (Section 5.3). Polls the Transaction Resource and follows the continue step when the
|
|
2
|
+
// Issuer releases a continue URL to this session. No inline script: the page's CSP permits only this file.
|
|
3
|
+
(function () {
|
|
4
|
+
var el = document.getElementById('agent-login-transaction');
|
|
5
|
+
if (!el) return;
|
|
6
|
+
var tx = JSON.parse(el.textContent);
|
|
7
|
+
var statusEl = document.getElementById('status');
|
|
8
|
+
var idEl = document.getElementById('txid');
|
|
9
|
+
if (idEl) idEl.textContent = tx.transaction_id;
|
|
10
|
+
function render(t) {
|
|
11
|
+
var text = {
|
|
12
|
+
awaiting_agent: 'Waiting for your agent to sign in.',
|
|
13
|
+
awaiting_owner: "Waiting for the agent's owner to approve.",
|
|
14
|
+
awaiting_consent: 'Waiting for your agent to review what this application receives.',
|
|
15
|
+
ready: 'Signed in. Returning you to the application.',
|
|
16
|
+
completed: 'Done.',
|
|
17
|
+
denied: 'Sign-in was not completed.',
|
|
18
|
+
expired: 'This sign-in expired. Start again from the application.'
|
|
19
|
+
}[t.status] || t.status;
|
|
20
|
+
if (statusEl) statusEl.textContent = text;
|
|
21
|
+
if (t.next && t.next.action === 'continue' && t.next.url) {
|
|
22
|
+
window.location.replace(t.next.url);
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
if (t.next && t.next.action === 'continue' && !t.next.url && statusEl) {
|
|
26
|
+
statusEl.textContent += ' Your agent holds the result; it will open it for you.';
|
|
27
|
+
}
|
|
28
|
+
return t.status === 'completed';
|
|
29
|
+
}
|
|
30
|
+
if (render(tx)) return;
|
|
31
|
+
var delay = 2000;
|
|
32
|
+
function poll() {
|
|
33
|
+
fetch(tx.url, { headers: { Accept: 'application/json' }, credentials: 'same-origin' })
|
|
34
|
+
.then(function (r) { return r.json(); })
|
|
35
|
+
.then(function (t) {
|
|
36
|
+
if (t.next && t.next.retry_after) delay = Math.max(1000, t.next.retry_after * 1000);
|
|
37
|
+
if (!render(t) && t.status !== 'denied' && t.status !== 'expired') setTimeout(poll, delay);
|
|
38
|
+
})
|
|
39
|
+
.catch(function () { setTimeout(poll, delay * 2); });
|
|
40
|
+
}
|
|
41
|
+
setTimeout(poll, delay);
|
|
42
|
+
})();
|