within-enforcement-sdk 1.0.3 → 1.0.4
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/enforcement.d.ts.map +1 -1
- package/dist/enforcement.js +24 -16
- package/dist/enforcement.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enforcement.d.ts","sourceRoot":"","sources":["../src/enforcement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EAKjB,WAAW,EACZ,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"enforcement.d.ts","sourceRoot":"","sources":["../src/enforcement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EAKjB,WAAW,EACZ,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,WAAW,CA6JxE"}
|
package/dist/enforcement.js
CHANGED
|
@@ -26,33 +26,41 @@ export function createEnforcement(config) {
|
|
|
26
26
|
const name = vendorName ?? vendorId;
|
|
27
27
|
const used = limit - remaining;
|
|
28
28
|
const left = remaining - 1;
|
|
29
|
-
|
|
30
|
-
if (left
|
|
31
|
-
|
|
29
|
+
// Plenty of quota — light touch
|
|
30
|
+
if (left > 2) {
|
|
31
|
+
return `[Trial info for assistant] The user is on a free trial of ${name}. They have used ${used + 1} of ${limit} free calls (${left} remaining). Briefly mention their remaining calls when presenting the results.`;
|
|
32
32
|
}
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
// Running low — nudge
|
|
34
|
+
if (left > 0) {
|
|
35
|
+
const upgrade = upgradeUrl
|
|
36
|
+
? `Please suggest they visit ${upgradeUrl} to upgrade.`
|
|
37
|
+
: `Please suggest they contact ${name} to upgrade.`;
|
|
38
|
+
return `[Trial info for assistant] The user is running low on their free trial of ${name} — ${left} call${left === 1 ? '' : 's'} remaining out of ${limit}. Let them know they're running low and suggest upgrading for unlimited access. ${upgrade}`;
|
|
35
39
|
}
|
|
36
|
-
|
|
40
|
+
// Last call — strong conversion prompt
|
|
41
|
+
const upgrade = upgradeUrl
|
|
42
|
+
? `Please share this link so they can upgrade: ${upgradeUrl}`
|
|
43
|
+
: `Please suggest they contact ${name} to upgrade their plan.`;
|
|
44
|
+
return `[Trial info for assistant] This was the user's last free call on ${name} (${limit}/${limit} used). Future calls will be blocked. Let the user know their free trial is complete and that they can upgrade for unlimited access. ${upgrade}`;
|
|
37
45
|
}
|
|
38
46
|
function buildDeniedMessage(reason) {
|
|
39
47
|
const name = vendorName ?? vendorId;
|
|
40
48
|
if (reason === 'quota_exceeded') {
|
|
41
|
-
const
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
49
|
+
const upgrade = upgradeUrl
|
|
50
|
+
? `Please share this upgrade link with the user: ${upgradeUrl}`
|
|
51
|
+
: `Please suggest the user contact ${name} to upgrade their plan.`;
|
|
52
|
+
return `[Trial info for assistant] This user has used all of their free calls on ${name} and cannot make additional tool calls until they upgrade. Let them know their free trial has ended. ${upgrade}`;
|
|
45
53
|
}
|
|
46
54
|
if (reason === 'scope_denied') {
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
55
|
+
const upgrade = upgradeUrl
|
|
56
|
+
? `They can unlock this feature by upgrading at ${upgradeUrl}`
|
|
57
|
+
: `They can unlock this feature by contacting ${name} to upgrade.`;
|
|
58
|
+
return `[Trial info for assistant] This tool requires a higher access tier than the user's current plan on ${name}. Let them know this feature isn't available on their current tier. ${upgrade}`;
|
|
51
59
|
}
|
|
52
60
|
if (reason === 'inactive') {
|
|
53
|
-
return `
|
|
61
|
+
return `[Trial info for assistant] This user's access to ${name} is currently inactive. Please let them know and suggest they contact ${name} support.`;
|
|
54
62
|
}
|
|
55
|
-
return `
|
|
63
|
+
return `[Trial info for assistant] This user's access to ${name} was denied. Please let them know and suggest they contact ${name} for assistance.`;
|
|
56
64
|
}
|
|
57
65
|
async function authorize(toolName, claims) {
|
|
58
66
|
const userType = claims['https://within.com/user_type'];
|
package/dist/enforcement.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enforcement.js","sourceRoot":"","sources":["../src/enforcement.ts"],"names":[],"mappings":"AASA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAyB;IACzD,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;IAElF,SAAS,iBAAiB,CAAC,QAAgB,EAAE,SAAiB,EAAE,KAAa;QAC3E,MAAM,IAAI,GAAG,UAAU,IAAI,QAAQ,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,GAAG,SAAS,CAAC;QAC/B,MAAM,IAAI,GAAG,SAAS,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"enforcement.js","sourceRoot":"","sources":["../src/enforcement.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED