mirror of
https://github.com/MercuryWorkshop/scramjet.git
synced 2025-05-15 07:20:02 -04:00
site specific flags
This commit is contained in:
parent
0906dd78a9
commit
920bbd8d69
8 changed files with 34 additions and 11 deletions
|
@ -1,4 +1,4 @@
|
|||
import { ScramjetConfig } from "./types";
|
||||
import { ScramjetConfig, ScramjetFlags } from "./types";
|
||||
|
||||
if (!("$scramjet" in self)) {
|
||||
// @ts-expect-error ts stuff
|
||||
|
@ -24,3 +24,15 @@ export function loadCodecs() {
|
|||
$scramjet.config.codec.decode
|
||||
) as any;
|
||||
}
|
||||
|
||||
export function flagEnabled(flag: keyof ScramjetFlags, url: URL): boolean {
|
||||
let value = $scramjet.config.defaultFlags[flag];
|
||||
for (const regex in $scramjet.config.siteFlags) {
|
||||
const partialflags = $scramjet.config.siteFlags[regex];
|
||||
if (new RegExp(regex).test(url.href) && "flag" in partialflags) {
|
||||
return partialflags[flag];
|
||||
}
|
||||
}
|
||||
|
||||
return value;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue