@1sat/permission-module 0.0.49 → 0.0.51

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 (54) hide show
  1. package/dist/apply.d.ts +1 -1
  2. package/dist/apply.d.ts.map +1 -1
  3. package/dist/apply.js +3 -3
  4. package/dist/apply.js.map +1 -1
  5. package/dist/apply.test.js +29 -29
  6. package/dist/apply.test.js.map +1 -1
  7. package/dist/basketAccess.d.ts +38 -0
  8. package/dist/basketAccess.d.ts.map +1 -0
  9. package/dist/basketAccess.js +237 -0
  10. package/dist/basketAccess.js.map +1 -0
  11. package/dist/buildPromptIntent.d.ts +15 -0
  12. package/dist/buildPromptIntent.d.ts.map +1 -0
  13. package/dist/buildPromptIntent.js +575 -0
  14. package/dist/buildPromptIntent.js.map +1 -0
  15. package/dist/createOneSatPermissionModule.d.ts +10 -5
  16. package/dist/createOneSatPermissionModule.d.ts.map +1 -1
  17. package/dist/createOneSatPermissionModule.js +28 -6
  18. package/dist/createOneSatPermissionModule.js.map +1 -1
  19. package/dist/enrichIntent.d.ts +121 -5
  20. package/dist/enrichIntent.d.ts.map +1 -1
  21. package/dist/enrichIntent.js +576 -137
  22. package/dist/enrichIntent.js.map +1 -1
  23. package/dist/handlers.d.ts +12 -32
  24. package/dist/handlers.d.ts.map +1 -1
  25. package/dist/handlers.js +120 -155
  26. package/dist/handlers.js.map +1 -1
  27. package/dist/index.d.ts +5 -2
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +4 -1
  30. package/dist/index.js.map +1 -1
  31. package/dist/listOutputsScope.test.d.ts +2 -0
  32. package/dist/listOutputsScope.test.d.ts.map +1 -0
  33. package/dist/listOutputsScope.test.js +116 -0
  34. package/dist/listOutputsScope.test.js.map +1 -0
  35. package/dist/promptModel.d.ts +115 -0
  36. package/dist/promptModel.d.ts.map +1 -0
  37. package/dist/promptModel.js +7 -0
  38. package/dist/promptModel.js.map +1 -0
  39. package/dist/types.d.ts +36 -10
  40. package/dist/types.d.ts.map +1 -1
  41. package/dist/types.js.map +1 -1
  42. package/dist/verifyIntent.d.ts +4 -4
  43. package/dist/verifyIntent.d.ts.map +1 -1
  44. package/dist/verifyIntent.js +120 -40
  45. package/dist/verifyIntent.js.map +1 -1
  46. package/dist/viewScope.d.ts +51 -0
  47. package/dist/viewScope.d.ts.map +1 -0
  48. package/dist/viewScope.js +113 -0
  49. package/dist/viewScope.js.map +1 -0
  50. package/dist/viewScope.test.d.ts +2 -0
  51. package/dist/viewScope.test.d.ts.map +1 -0
  52. package/dist/viewScope.test.js +60 -0
  53. package/dist/viewScope.test.js.map +1 -0
  54. package/package.json +42 -42
@@ -1 +1 @@
1
- {"version":3,"file":"verifyIntent.js","sourceRoot":"","sources":["../src/verifyIntent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verifyIntent.js","sourceRoot":"","sources":["../src/verifyIntent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ import type { PermissionSchemeId } from '@1sat/types';
2
+ /** Parsed view scope from a `p <scheme> …` basket name (BRC-165 for `1sat`). */
3
+ export type ViewScope = {
4
+ kind: 'all';
5
+ } | {
6
+ kind: 'collection';
7
+ } | {
8
+ kind: 'app';
9
+ } | {
10
+ kind: 'creator';
11
+ } | {
12
+ kind: 'id';
13
+ };
14
+ export type ParseViewBasketResult = {
15
+ ok: true;
16
+ schemeId: PermissionSchemeId;
17
+ storageBasket: string;
18
+ /** Canonical permission basket name used as grant key (axis only). */
19
+ grantBasket: string;
20
+ scope: ViewScope;
21
+ /** Tag prefix required on the request for non-all scopes. */
22
+ axisPrefix?: 'collection:' | 'app:' | 'creator:' | 'id:';
23
+ /** When true, skip standing view-grant prompts (single-row id lookup). */
24
+ autoAllowView?: boolean;
25
+ } | {
26
+ ok: false;
27
+ error: string;
28
+ };
29
+ /**
30
+ * Parse a listOutputs basket for a permission scheme.
31
+ *
32
+ * BRC-165 (`1sat`): scope required — axis only in the basket name.
33
+ * Filter values come from tags (`collection:…`, `app:…`, `creator:…`).
34
+ *
35
+ * Other schemes: `p <scheme> all` or bare `p <scheme>` → all.
36
+ */
37
+ export declare function parseViewBasket(schemeId: PermissionSchemeId, basket: string): ParseViewBasketResult;
38
+ /** Axis tag values on the request for a given prefix (e.g. `collection:`). */
39
+ export declare function axisTagValues(tags: string[] | undefined, prefix: string): string[];
40
+ /**
41
+ * Permission-store key for a view grant.
42
+ * - `p 1sat all` — full inventory
43
+ * - `p 1sat collection` — legacy whole-axis (any collection value)
44
+ * - `p 1sat collection <value>` — one allowed tag value
45
+ */
46
+ export declare function viewGrantKey(axisBasket: string, value?: string): string;
47
+ /** True if a stored grant key covers this axis (+ optional value). */
48
+ export declare function grantCoversView(grantedKey: string, axisBasket: string, value?: string): boolean;
49
+ /** @deprecated Prefer {@link grantCoversView}. */
50
+ export declare function grantCoversScope(grantedBasket: string, requestedGrantBasket: string): boolean;
51
+ //# sourceMappingURL=viewScope.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewScope.d.ts","sourceRoot":"","sources":["../src/viewScope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAGrD,gFAAgF;AAChF,MAAM,MAAM,SAAS,GAClB;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,GACf;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,GACf;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,CAAA;AAEjB,MAAM,MAAM,qBAAqB,GAC9B;IACA,EAAE,EAAE,IAAI,CAAA;IACR,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,aAAa,EAAE,MAAM,CAAA;IACrB,sEAAsE;IACtE,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,SAAS,CAAA;IAChB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,KAAK,CAAA;IACxD,0EAA0E;IAC1E,aAAa,CAAC,EAAE,OAAO,CAAA;CACtB,GACD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAI/B;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC9B,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,MAAM,GACZ,qBAAqB,CA+DvB;AAED,8EAA8E;AAC9E,wBAAgB,aAAa,CAC5B,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,EAC1B,MAAM,EAAE,MAAM,GACZ,MAAM,EAAE,CAWV;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAIvE;AAED,sEAAsE;AACtE,wBAAgB,eAAe,CAC9B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,MAAM,GACZ,OAAO,CAWT;AAED,kDAAkD;AAClD,wBAAgB,gBAAgB,CAC/B,aAAa,EAAE,MAAM,EACrB,oBAAoB,EAAE,MAAM,GAC1B,OAAO,CAET"}
@@ -0,0 +1,113 @@
1
+ import { basketForScheme } from '@1sat/types';
2
+ const SCOPES = new Set(['all', 'collection', 'app', 'creator', 'id']);
3
+ /**
4
+ * Parse a listOutputs basket for a permission scheme.
5
+ *
6
+ * BRC-165 (`1sat`): scope required — axis only in the basket name.
7
+ * Filter values come from tags (`collection:…`, `app:…`, `creator:…`).
8
+ *
9
+ * Other schemes: `p <scheme> all` or bare `p <scheme>` → all.
10
+ */
11
+ export function parseViewBasket(schemeId, basket) {
12
+ const raw = basket.trim().toLowerCase();
13
+ const prefix = `p ${schemeId}`;
14
+ if (raw !== prefix && !raw.startsWith(`${prefix} `)) {
15
+ return { ok: false, error: `not a p ${schemeId} basket` };
16
+ }
17
+ const rest = raw === prefix ? '' : raw.slice(prefix.length).trim();
18
+ const storageBasket = basketForScheme(schemeId);
19
+ if (schemeId !== '1sat') {
20
+ if (rest === '' || rest === 'all') {
21
+ return {
22
+ ok: true,
23
+ schemeId,
24
+ storageBasket,
25
+ grantBasket: `${prefix} all`,
26
+ scope: { kind: 'all' },
27
+ };
28
+ }
29
+ return {
30
+ ok: false,
31
+ error: `Unknown p ${schemeId} scope "${rest}" (only "all" is supported)`,
32
+ };
33
+ }
34
+ if (rest === '') {
35
+ return {
36
+ ok: false,
37
+ error: 'p 1sat requires a scope (use "p 1sat all|collection|app|creator|id")',
38
+ };
39
+ }
40
+ // Exactly one scope token — no values in the basket name
41
+ if (/\s/.test(rest) || !SCOPES.has(rest)) {
42
+ return {
43
+ ok: false,
44
+ error: `Invalid p 1sat scope "${rest}" (expected all|collection|app|creator|id; values go in tags)`,
45
+ };
46
+ }
47
+ const kind = rest;
48
+ const grantBasket = `p 1sat ${kind}`;
49
+ if (kind === 'all') {
50
+ return {
51
+ ok: true,
52
+ schemeId,
53
+ storageBasket,
54
+ grantBasket,
55
+ scope: { kind: 'all' },
56
+ };
57
+ }
58
+ return {
59
+ ok: true,
60
+ schemeId,
61
+ storageBasket,
62
+ grantBasket,
63
+ scope: { kind },
64
+ axisPrefix: `${kind}:`,
65
+ ...(kind === 'id' ? { autoAllowView: true } : {}),
66
+ };
67
+ }
68
+ /** Axis tag values on the request for a given prefix (e.g. `collection:`). */
69
+ export function axisTagValues(tags, prefix) {
70
+ if (!tags?.length)
71
+ return [];
72
+ const out = [];
73
+ const p = prefix.toLowerCase();
74
+ for (const t of tags) {
75
+ const n = t.trim().toLowerCase();
76
+ if (n.startsWith(p) && n.length > p.length) {
77
+ out.push(n.slice(p.length));
78
+ }
79
+ }
80
+ return out;
81
+ }
82
+ /**
83
+ * Permission-store key for a view grant.
84
+ * - `p 1sat all` — full inventory
85
+ * - `p 1sat collection` — legacy whole-axis (any collection value)
86
+ * - `p 1sat collection <value>` — one allowed tag value
87
+ */
88
+ export function viewGrantKey(axisBasket, value) {
89
+ const axis = axisBasket.trim().toLowerCase();
90
+ if (!value)
91
+ return axis;
92
+ return `${axis} ${value.trim().toLowerCase()}`;
93
+ }
94
+ /** True if a stored grant key covers this axis (+ optional value). */
95
+ export function grantCoversView(grantedKey, axisBasket, value) {
96
+ const g = grantedKey.trim().toLowerCase();
97
+ const axis = axisBasket.trim().toLowerCase();
98
+ const allMatch = /^p ([a-z0-9]+) all$/.exec(g);
99
+ if (allMatch) {
100
+ const scheme = allMatch[1];
101
+ return axis === `p ${scheme} all` || axis.startsWith(`p ${scheme} `);
102
+ }
103
+ if (g === axis)
104
+ return true;
105
+ if (value !== undefined && g === viewGrantKey(axis, value))
106
+ return true;
107
+ return false;
108
+ }
109
+ /** @deprecated Prefer {@link grantCoversView}. */
110
+ export function grantCoversScope(grantedBasket, requestedGrantBasket) {
111
+ return grantCoversView(grantedBasket, requestedGrantBasket);
112
+ }
113
+ //# sourceMappingURL=viewScope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewScope.js","sourceRoot":"","sources":["../src/viewScope.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=viewScope.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewScope.test.d.ts","sourceRoot":"","sources":["../src/viewScope.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,60 @@
1
+ import { describe, expect, test } from 'bun:test';
2
+ import { axisTagValues, grantCoversScope, grantCoversView, parseViewBasket, viewGrantKey, } from './viewScope';
3
+ describe('parseViewBasket 1sat (BRC-165)', () => {
4
+ test('rejects bare p 1sat', () => {
5
+ expect(parseViewBasket('1sat', 'p 1sat').ok).toBe(false);
6
+ });
7
+ test('p 1sat all', () => {
8
+ expect(parseViewBasket('1sat', 'p 1sat all')).toEqual({
9
+ ok: true,
10
+ schemeId: '1sat',
11
+ storageBasket: '1sat',
12
+ grantBasket: 'p 1sat all',
13
+ scope: { kind: 'all' },
14
+ });
15
+ });
16
+ test('axis-only scopes (values not in basket)', () => {
17
+ expect(parseViewBasket('1sat', 'p 1sat collection')).toMatchObject({
18
+ ok: true,
19
+ grantBasket: 'p 1sat collection',
20
+ scope: { kind: 'collection' },
21
+ axisPrefix: 'collection:',
22
+ });
23
+ expect(parseViewBasket('1sat', 'p 1sat app')).toMatchObject({
24
+ axisPrefix: 'app:',
25
+ });
26
+ expect(parseViewBasket('1sat', 'p 1sat creator')).toMatchObject({
27
+ axisPrefix: 'creator:',
28
+ });
29
+ expect(parseViewBasket('1sat', 'p 1sat id')).toMatchObject({
30
+ ok: true,
31
+ grantBasket: 'p 1sat id',
32
+ scope: { kind: 'id' },
33
+ axisPrefix: 'id:',
34
+ autoAllowView: true,
35
+ });
36
+ });
37
+ test('rejects values embedded in basket name', () => {
38
+ expect(parseViewBasket('1sat', 'p 1sat collection foxes').ok).toBe(false);
39
+ expect(parseViewBasket('1sat', 'p 1sat collection a1b2c3d4e5f6070890abcdef1234567890abcdef1234567890abcdef12345678 0').ok).toBe(false);
40
+ });
41
+ });
42
+ describe('axisTagValues', () => {
43
+ test('extracts values including outpoint punctuation', () => {
44
+ const id = 'a1b2c3d4e5f6070890abcdef1234567890abcdef1234567890abcdef12345678_0';
45
+ expect(axisTagValues([`collection:${id}`, 'type:image/png', 'collection:other'], 'collection:')).toEqual([id, 'other']);
46
+ });
47
+ });
48
+ describe('viewGrantKey / grantCoversView', () => {
49
+ test('value key', () => {
50
+ expect(viewGrantKey('p 1sat collection', 'abc_0')).toBe('p 1sat collection abc_0');
51
+ });
52
+ test('all and whole-axis and value', () => {
53
+ expect(grantCoversView('p 1sat all', 'p 1sat collection', 'x')).toBe(true);
54
+ expect(grantCoversView('p 1sat collection', 'p 1sat collection', 'x')).toBe(true);
55
+ expect(grantCoversView('p 1sat collection x', 'p 1sat collection', 'x')).toBe(true);
56
+ expect(grantCoversView('p 1sat collection y', 'p 1sat collection', 'x')).toBe(false);
57
+ expect(grantCoversScope('p 1sat all', 'p 1sat collection')).toBe(true);
58
+ });
59
+ });
60
+ //# sourceMappingURL=viewScope.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewScope.test.js","sourceRoot":"","sources":["../src/viewScope.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,44 +1,44 @@
1
1
  {
2
- "name": "@1sat/permission-module",
3
- "version": "0.0.49",
4
- "description": "1Sat permission module for WalletPermissionsManager — gates createSignature with hashOutputs commitments captured at createAction time",
5
- "type": "module",
6
- "main": "./dist/index.js",
7
- "types": "./dist/index.d.ts",
8
- "exports": {
9
- ".": {
10
- "types": "./dist/index.d.ts",
11
- "import": "./dist/index.js"
12
- }
13
- },
14
- "files": [
15
- "dist"
16
- ],
17
- "scripts": {
18
- "build": "tsc",
19
- "dev": "tsc --watch",
20
- "clean": "rm -rf dist",
21
- "test": "bun test"
22
- },
23
- "keywords": [
24
- "1sat",
25
- "bsv",
26
- "wallet",
27
- "permissions",
28
- "brc-0098"
29
- ],
30
- "license": "MIT",
31
- "dependencies": {
32
- "@1sat/actions": "0.0.196",
33
- "@1sat/templates": "0.0.30",
34
- "@1sat/types": "0.0.39",
35
- "@1sat/wallet": "0.0.102"
36
- },
37
- "peerDependencies": {
38
- "@bsv/sdk": "^2.1.9"
39
- },
40
- "devDependencies": {
41
- "@bsv/sdk": "^2.1.9",
42
- "typescript": "^5.9.3"
43
- }
2
+ "name": "@1sat/permission-module",
3
+ "version": "0.0.51",
4
+ "description": "1Sat permission module for WalletPermissionsManager — gates createSignature with hashOutputs commitments captured at createAction time",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js"
12
+ }
13
+ },
14
+ "files": [
15
+ "dist"
16
+ ],
17
+ "scripts": {
18
+ "build": "tsc",
19
+ "dev": "tsc --watch",
20
+ "clean": "rm -rf dist",
21
+ "test": "bun test"
22
+ },
23
+ "keywords": [
24
+ "1sat",
25
+ "bsv",
26
+ "wallet",
27
+ "permissions",
28
+ "brc-0098"
29
+ ],
30
+ "license": "MIT",
31
+ "dependencies": {
32
+ "@1sat/actions": "0.0.198",
33
+ "@1sat/templates": "0.0.31",
34
+ "@1sat/types": "0.0.40",
35
+ "@1sat/wallet": "0.0.104"
36
+ },
37
+ "peerDependencies": {
38
+ "@bsv/sdk": "^2.1.9"
39
+ },
40
+ "devDependencies": {
41
+ "@bsv/sdk": "^2.1.9",
42
+ "typescript": "^5.9.3"
43
+ }
44
44
  }