| 1234567891011121314151617181920212223242526 |
- import type { InjectionKey, Ref } from 'vue'
- export type SlideScale = Ref<number>
- export type SlideId = Ref<string>
- export type RadioGroupValue = {
- value: Ref<string>
- updateValue: (value: string) => void
- }
- export const injectKeySlideScale: InjectionKey<SlideScale> = Symbol()
- export const injectKeySlideId: InjectionKey<SlideId> = Symbol()
- export const injectKeyRadioGroupValue: InjectionKey<RadioGroupValue> = Symbol()
- /**
- * 单页模式。EditorEn(英语展示页)专用:整个编辑器只允许存在一页,
- * 插入口语工具时用「替换当前全部页面」代替「新增一页」。
- *
- * provide:views/Editor/indexEn.vue
- * inject :EnglishSpeaking/layers/Layer2Speaking.vue —— 建页分支
- * hooks/useAddSlidesOrElements.ts —— 挡住 Ctrl+V 贴页 / AIPPT 批量加页
- *
- * 其余编辑器(index / index2 / index3)不 provide,inject 一律拿到 default false,
- * 行为与今天完全一致。因为是 provide 而不是全局 store,值随 EditorEn 一起消失,
- * 不存在「切走之后旗标还留着」的问题。
- */
- export const injectKeySingleSlideMode: InjectionKey<boolean> = Symbol()
|