directus

Форк
0
16 строк · 655.0 Байт
1
import type { ExtensionSandboxRequestedScopes } from '@directus/extensions';
2
import type { Reference } from 'isolated-vm';
3
import { setTimeout } from 'node:timers/promises';
4

5
export function sleepGenerator(
6
	requestedScopes: ExtensionSandboxRequestedScopes,
7
): (milliseconds: Reference<number>) => Promise<void> {
8
	return async (milliseconds) => {
9
		if (requestedScopes.sleep === undefined) throw new Error('No permission to access "sleep"');
10
		if (milliseconds.typeof !== 'number') throw new TypeError('Sleep milliseconds has to be of type number');
11

12
		const millisecondsCopied = await milliseconds.copy();
13

14
		await setTimeout(millisecondsCopied);
15
	};
16
}
17

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.