mirror of
https://gitlab.com/soapbox-pub/ditto.git
synced 2025-12-06 11:29:46 +00:00
CustomPolicy: switch to NoOpPolicy if the policy isn't found
This commit is contained in:
parent
9d50a76c0c
commit
5ca1e2fd26
1 changed files with 10 additions and 3 deletions
|
|
@ -1,6 +1,6 @@
|
||||||
import 'deno-safe-fetch/load';
|
import 'deno-safe-fetch/load';
|
||||||
import { NostrEvent, NostrRelayOK, NPolicy } from '@nostrify/nostrify';
|
import { NostrEvent, NostrRelayOK, NPolicy } from '@nostrify/nostrify';
|
||||||
import { ReadOnlyPolicy } from '@nostrify/nostrify/policies';
|
import { NoOpPolicy, ReadOnlyPolicy } from '@nostrify/nostrify/policies';
|
||||||
import * as Comlink from 'comlink';
|
import * as Comlink from 'comlink';
|
||||||
|
|
||||||
export class CustomPolicy implements NPolicy {
|
export class CustomPolicy implements NPolicy {
|
||||||
|
|
@ -12,8 +12,15 @@ export class CustomPolicy implements NPolicy {
|
||||||
}
|
}
|
||||||
|
|
||||||
async import(path: string): Promise<void> {
|
async import(path: string): Promise<void> {
|
||||||
const Policy = (await import(path)).default;
|
try {
|
||||||
this.policy = new Policy();
|
const Policy = (await import(path)).default;
|
||||||
|
this.policy = new Policy();
|
||||||
|
} catch (e) {
|
||||||
|
if (e.message.includes('Module not found')) {
|
||||||
|
this.policy = new NoOpPolicy();
|
||||||
|
}
|
||||||
|
throw e;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue