Skip to content

Commit

Permalink
Fix click-outside type arguments
Browse files Browse the repository at this point in the history
Because the type argument wasn't exposed on the component/modifier, it was never being passed to the signatures, so they were always assuming the default value of `click` meaning that specifying any `eventType` other than `click` in a component/modifier invocation would cause a type error.
  • Loading branch information
bendemboski committed Jun 28, 2023
1 parent dd3014f commit 88e22db
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 4 deletions.
6 changes: 4 additions & 2 deletions types/ember-click-outside/component.d.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
declare module 'ember-click-outside/components/click-outside' {
import Component from '@ember/component';

interface OnClickOutsideSignature<K extends keyof DocumentEventMap = 'click'> {
interface OnClickOutsideSignature<K extends keyof DocumentEventMap> {
Args: {
onClickOutside: (event: DocumentEventMap[K]) => void;

Expand All @@ -13,5 +13,7 @@ declare module 'ember-click-outside/components/click-outside' {
};
}

export default class OnClickOutsideComponent extends Component<OnClickOutsideSignature> {}
export default class OnClickOutsideComponent<K extends keyof DocumentEventMap = 'click'> extends Component<
OnClickOutsideSignature<K>
> {}
}
6 changes: 4 additions & 2 deletions types/ember-click-outside/modifier.d.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
declare module 'ember-click-outside/modifiers/on-click-outside' {
import Modifier from 'ember-modifier';

interface OnClickOutsideSignature<K extends keyof DocumentEventMap = 'click'> {
interface OnClickOutsideSignature<K extends keyof DocumentEventMap> {
Args: {
Named: {
/** Undocumented */
Expand All @@ -17,5 +17,7 @@ declare module 'ember-click-outside/modifiers/on-click-outside' {
};
}

export default class OnClickOutsideModifier extends Modifier<OnClickOutsideSignature> {}
export default class OnClickOutsideModifier<K extends keyof DocumentEventMap = 'click'> extends Modifier<
OnClickOutsideSignature<K>
> {}
}

0 comments on commit 88e22db

Please sign in to comment.