Skip to content

Commit

Permalink
feat(client): enhance action typings
Browse files Browse the repository at this point in the history
  • Loading branch information
shigma committed May 25, 2024
1 parent 7d34483 commit ac0598d
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 6 deletions.
6 changes: 3 additions & 3 deletions packages/client/app/layout/layout.vue
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<template>
<div class="layout-container" :class="[container, styles]">
<aside class="layout-aside layout-left" :class="left" v-if="$slots.left">
<div class="k-layout layout-container" :class="[container, styles]">
<aside class="layout-aside layout-left flex flex-col" :class="left" v-if="$slots.left">
<slot name="left"></slot>
</aside>

Expand All @@ -9,7 +9,7 @@
<layout-header
v-model:isLeftAsideOpen="isLeftAsideOpen"
v-model:isRightAsideOpen="isRightAsideOpen"
:menu-key="typeof menu === 'string' ? menu : null"
:menu-key="typeof menu === 'string' ? menu : undefined"
:menu-data="menuData">
<template #left>
<slot name="header">{{ route.meta.activity?.name }}</slot>
Expand Down
7 changes: 4 additions & 3 deletions packages/client/client/plugins/action.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ import { ActionContext } from '..'
declare module '../context' {
interface Context {
$action: ActionService
action(id: string, options: ActionOptions): () => void
action(id: string, options: ActionOptions | ActionOptions['action']): () => void
menu(id: string, items: MenuItem[]): () => void
define<K extends keyof ActionContext>(key: K, value: MaybeRefOrGetter<ActionContext[K]>): () => void
define<K extends keyof ActionContext>(key: K, value: MaybeRefOrGetter<ActionContext[K] | undefined>): () => void
}

interface Internal {
Expand Down Expand Up @@ -116,7 +116,8 @@ export default class ActionService extends Service {
})
}

action(id: string, options: ActionOptions) {
action(id: string, options: ActionOptions | ActionOptions['action']) {
if (typeof options === 'function') options = { action: options }
markRaw(options)
return this[Context.current].effect(() => {
this.ctx.internal.actions[id] = options
Expand Down

0 comments on commit ac0598d

Please sign in to comment.