Comparing version
@@ -597,7 +597,7 @@ import { ArcjetRuleResult, ArcjetEmailReason, ArcjetBotType, ArcjetErrorReason, ArcjetBotReason, ArcjetErrorDecision, ArcjetReason, ArcjetDenyDecision } from '@arcjet/protocol'; | ||
// This is a separate function so it can be called recursively | ||
function withRule(rule) { | ||
const rules = [...rootRules, ...rule].sort((a, b) => a.priority - b.priority); | ||
function withRule(baseRules, rule) { | ||
const rules = [...baseRules, ...rule].sort((a, b) => a.priority - b.priority); | ||
return Object.freeze({ | ||
withRule(rule) { | ||
return withRule(rule); | ||
return withRule(rules, rule); | ||
}, | ||
@@ -611,3 +611,3 @@ async protect(ctx, request) { | ||
withRule(rule) { | ||
return withRule(rule); | ||
return withRule(rootRules, rule); | ||
}, | ||
@@ -614,0 +614,0 @@ async protect(ctx, request) { |
11
index.ts
@@ -1135,4 +1135,7 @@ import { | ||
// This is a separate function so it can be called recursively | ||
function withRule<Rule extends Primitive | Product>(rule: Rule) { | ||
const rules = [...rootRules, ...rule].sort( | ||
function withRule<Rule extends Primitive | Product>( | ||
baseRules: ArcjetRule[], | ||
rule: Rule, | ||
) { | ||
const rules = [...baseRules, ...rule].sort( | ||
(a, b) => a.priority - b.priority, | ||
@@ -1143,3 +1146,3 @@ ); | ||
withRule(rule: Primitive | Product) { | ||
return withRule(rule); | ||
return withRule(rules, rule); | ||
}, | ||
@@ -1157,3 +1160,3 @@ async protect( | ||
withRule(rule: Primitive | Product) { | ||
return withRule(rule); | ||
return withRule(rootRules, rule); | ||
}, | ||
@@ -1160,0 +1163,0 @@ async protect( |
{ | ||
"name": "arcjet", | ||
"version": "1.0.0-alpha.15", | ||
"version": "1.0.0-alpha.16", | ||
"description": "Arcjet TypeScript and JavaScript SDK core", | ||
@@ -43,12 +43,12 @@ "license": "Apache-2.0", | ||
"dependencies": { | ||
"@arcjet/analyze": "1.0.0-alpha.15", | ||
"@arcjet/duration": "1.0.0-alpha.15", | ||
"@arcjet/headers": "1.0.0-alpha.15", | ||
"@arcjet/protocol": "1.0.0-alpha.15", | ||
"@arcjet/runtime": "1.0.0-alpha.15" | ||
"@arcjet/analyze": "1.0.0-alpha.16", | ||
"@arcjet/duration": "1.0.0-alpha.16", | ||
"@arcjet/headers": "1.0.0-alpha.16", | ||
"@arcjet/protocol": "1.0.0-alpha.16", | ||
"@arcjet/runtime": "1.0.0-alpha.16" | ||
}, | ||
"devDependencies": { | ||
"@arcjet/eslint-config": "1.0.0-alpha.15", | ||
"@arcjet/rollup-config": "1.0.0-alpha.15", | ||
"@arcjet/tsconfig": "1.0.0-alpha.15", | ||
"@arcjet/eslint-config": "1.0.0-alpha.16", | ||
"@arcjet/rollup-config": "1.0.0-alpha.16", | ||
"@arcjet/tsconfig": "1.0.0-alpha.16", | ||
"@edge-runtime/jest-environment": "2.3.10", | ||
@@ -55,0 +55,0 @@ "@jest/globals": "29.7.0", |
81711
0.1%1863
0.16%+ Added
+ Added
+ Added
+ Added
+ Added
- Removed
- Removed
- Removed
- Removed
- Removed