UNPKG

@v4fire/client

Version:

V4Fire client core library

42 lines (32 loc) 1.11 kB
/* eslint-disable prefer-spread, prefer-rest-params */ /*! * V4Fire Client Core * https://github.com/V4Fire/Client * * Released under the MIT license * https://github.com/V4Fire/Client/blob/master/LICENSE */ /** * [[include:core/component/directives/hook/README.md]] * @packageDocumentation */ import { ComponentEngine } from 'core/component/engines'; import type { DirectiveOptions } from 'core/component/directives/hook/interface'; export * from 'core/component/directives/hook/interface'; ComponentEngine.directive('hook', { bind(el: Element, opts: DirectiveOptions): void { opts.value?.bind?.apply(opts.value, arguments); }, inserted(el: Element, opts: DirectiveOptions): void { opts.value?.inserted?.apply(opts.value, arguments); }, update(el: Element, opts: DirectiveOptions): void { opts.value?.update?.apply(opts.value, arguments); }, componentUpdated(el: Element, opts: DirectiveOptions): void { opts.value?.componentUpdated?.apply(opts.value, arguments); }, unbind(el: Element, opts: DirectiveOptions): void { opts.value?.unbind?.apply(opts.value, arguments); } });