12345678910111213141516171819202122232425262728293031 |
- import { isDefined } from './isDefined.js';
- export async function invokeDidStartHook(targets, hook) {
- const didEndHooks = (await Promise.all(targets.map((target) => hook(target)))).filter(isDefined);
- didEndHooks.reverse();
- return async (...args) => {
- for (const didEndHook of didEndHooks) {
- didEndHook(...args);
- }
- };
- }
- export function invokeSyncDidStartHook(targets, hook) {
- const didEndHooks = targets
- .map((target) => hook(target))
- .filter(isDefined);
- didEndHooks.reverse();
- return (...args) => {
- for (const didEndHook of didEndHooks) {
- didEndHook(...args);
- }
- };
- }
- export async function invokeHooksUntilDefinedAndNonNull(targets, hook) {
- for (const target of targets) {
- const value = await hook(target);
- if (value != null) {
- return value;
- }
- }
- return null;
- }
- //# sourceMappingURL=invokeHooks.js.map
|