vue-devui 1.5.9 → 1.5.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/alert/index.es.js +4 -3
  2. package/alert/index.umd.js +3 -3
  3. package/alert/style.css +1 -1
  4. package/avatar/index.es.js +9 -6
  5. package/avatar/index.umd.js +3 -3
  6. package/avatar/style.css +1 -1
  7. package/badge/index.es.js +1 -0
  8. package/badge/index.umd.js +1 -1
  9. package/carousel/index.es.js +46 -9
  10. package/carousel/index.umd.js +1 -1
  11. package/carousel/style.css +1 -1
  12. package/code-review/index.es.js +478 -151
  13. package/code-review/index.umd.js +49 -24
  14. package/code-review/style.css +1 -1
  15. package/collapse/index.es.js +1 -1
  16. package/collapse/index.umd.js +2 -2
  17. package/collapse/style.css +1 -1
  18. package/editor-md/index.es.js +913 -91
  19. package/editor-md/index.umd.js +47 -47
  20. package/global.d.ts +0 -1
  21. package/package.json +1 -1
  22. package/style.css +1 -1
  23. package/table/index.es.js +3 -3
  24. package/table/index.umd.js +2 -2
  25. package/types/avatar/src/avatar.d.ts +4 -2
  26. package/types/code-review/src/code-review-types.d.ts +14 -2
  27. package/types/code-review/src/code-review.d.ts +32 -5
  28. package/types/code-review/src/composables/use-code-review-comment.d.ts +10 -6
  29. package/types/code-review/src/const.d.ts +20 -0
  30. package/types/code-review/src/utils.d.ts +8 -3
  31. package/types/editor-md/src/editor-md.d.ts +2 -2
  32. package/types/fullscreen/index.d.ts +0 -1
  33. package/types/fullscreen/src/fullscreen-types.d.ts +2 -3
  34. package/types/fullscreen/src/fullscreen.d.ts +3 -3
  35. package/types/shared/utils/index.d.ts +2 -0
  36. package/types/shared/utils/use-namespace.d.ts +13 -0
  37. package/vue-devui.es.js +1665 -533
  38. package/vue-devui.umd.js +110 -85
  39. package/fullscreen/index.es.js +0 -166
  40. package/fullscreen/index.umd.js +0 -1
  41. package/fullscreen/package.json +0 -8
  42. package/fullscreen/style.css +0 -1
  43. package/nuxt/components/Fullscreen.js +0 -3
  44. package/nuxt/components/fullscreenProps.js +0 -3
@@ -1,166 +0,0 @@
1
- import { toRefs, onMounted, onUnmounted, watch, defineComponent, ref, renderSlot, useSlots, createVNode } from "vue";
2
- const fullscreenProps = {
3
- modelValue: {
4
- type: Boolean,
5
- default: false
6
- },
7
- mode: {
8
- type: String,
9
- default: "normal"
10
- },
11
- zIndex: {
12
- type: Number,
13
- default: 10
14
- }
15
- };
16
- const ESC_KEY_CODE = 27;
17
- function useKeydown(props, ctx) {
18
- const { modelValue } = toRefs(props);
19
- const handleKeydown = (event) => {
20
- if (event.keyCode === ESC_KEY_CODE && modelValue) {
21
- ctx.emit("update:modelValue", false);
22
- }
23
- };
24
- onMounted(() => {
25
- document.addEventListener("keydown", handleKeydown);
26
- });
27
- onUnmounted(() => {
28
- document.removeEventListener("keydown", handleKeydown);
29
- });
30
- }
31
- function createBem(namespace, element, modifier) {
32
- let cls = namespace;
33
- if (element) {
34
- cls += `__${element}`;
35
- }
36
- if (modifier) {
37
- cls += `--${modifier}`;
38
- }
39
- return cls;
40
- }
41
- function useNamespace(block, needDot = false) {
42
- const namespace = needDot ? `.devui-${block}` : `devui-${block}`;
43
- const b = () => createBem(namespace);
44
- const e = (element) => element ? createBem(namespace, element) : "";
45
- const m = (modifier) => modifier ? createBem(namespace, "", modifier) : "";
46
- const em = (element, modifier) => element && modifier ? createBem(namespace, element, modifier) : "";
47
- return {
48
- b,
49
- e,
50
- m,
51
- em
52
- };
53
- }
54
- const ns = useNamespace("fullscreen");
55
- const launchNormalFullscreen = (targetElement, props) => {
56
- targetElement.classList.add(ns.b());
57
- if (props.zIndex) {
58
- targetElement.setAttribute("style", `z-index: ${props.zIndex}`);
59
- }
60
- };
61
- const exitNormalFullscreen = (targetElement) => {
62
- targetElement.classList.remove(ns.b());
63
- targetElement.style.zIndex = "";
64
- };
65
- const launchImmersiveFullScreen = async (docElement) => {
66
- let fullscreenLaunch = null;
67
- if (docElement.requestFullscreen) {
68
- fullscreenLaunch = docElement.requestFullscreen();
69
- } else if (docElement.mozRequestFullScreen) {
70
- fullscreenLaunch = docElement.mozRequestFullScreen();
71
- } else if (docElement.webkitRequestFullScreen) {
72
- fullscreenLaunch = Promise.resolve(docElement.webkitRequestFullScreen());
73
- } else if (docElement.msRequestFullscreen) {
74
- fullscreenLaunch = Promise.resolve(docElement.msRequestFullscreen());
75
- }
76
- return await (fullscreenLaunch == null ? void 0 : fullscreenLaunch.then(() => !!document.fullscreenElement));
77
- };
78
- const exitImmersiveFullScreen = async (doc) => {
79
- let fullscreenExit = null;
80
- if (doc.exitFullscreen) {
81
- fullscreenExit = doc.exitFullscreen();
82
- } else if (doc.mozCancelFullScreen) {
83
- fullscreenExit = doc.mozCancelFullScreen();
84
- } else if (doc.webkitCancelFullScreen) {
85
- fullscreenExit = Promise.resolve(doc.webkitCancelFullScreen());
86
- } else if (doc.msExitFullscreen) {
87
- fullscreenExit = Promise.resolve(doc.msExitFullscreen());
88
- }
89
- return await (fullscreenExit == null ? void 0 : fullscreenExit.then(() => !!document.fullscreenElement));
90
- };
91
- const addFullScreenStyle = () => {
92
- document.getElementsByTagName("html")[0].classList.add(ns.e("html"));
93
- };
94
- const removeFullScreenStyle = () => {
95
- document.getElementsByTagName("html")[0].classList.remove(ns.e("html"));
96
- };
97
- function useFullscreen(props, slotElement, ctx) {
98
- const { modelValue, mode } = toRefs(props);
99
- let exitByKeydown = false;
100
- const handleNormalFullscreen = (isOpen) => {
101
- if (isOpen) {
102
- launchNormalFullscreen(slotElement.value, props);
103
- addFullScreenStyle();
104
- } else {
105
- exitNormalFullscreen(slotElement.value);
106
- removeFullScreenStyle();
107
- }
108
- };
109
- const handleImmersiveFullscreen = (isOpen) => {
110
- if (isOpen) {
111
- launchImmersiveFullScreen(slotElement.value);
112
- } else {
113
- if (!exitByKeydown) {
114
- exitImmersiveFullScreen(document);
115
- }
116
- }
117
- };
118
- watch(modelValue, (newVal) => {
119
- if (mode.value === "normal") {
120
- handleNormalFullscreen(newVal);
121
- }
122
- if (mode.value === "immersive") {
123
- handleImmersiveFullscreen(newVal);
124
- }
125
- });
126
- const handleFullscreenChange = () => {
127
- if (!document.fullscreenElement) {
128
- ctx.emit("update:modelValue");
129
- exitByKeydown = true;
130
- } else {
131
- exitByKeydown = false;
132
- }
133
- };
134
- onMounted(() => {
135
- document.addEventListener("fullscreenchange", handleFullscreenChange);
136
- });
137
- onUnmounted(() => {
138
- document.removeEventListener("fullscreenchange", handleFullscreenChange);
139
- });
140
- }
141
- var fullscreen = "";
142
- var Fullscreen = defineComponent({
143
- name: "DFullscreen",
144
- props: fullscreenProps,
145
- emits: ["update:modelValue"],
146
- setup(props, ctx) {
147
- const slotElement = ref();
148
- useFullscreen(props, slotElement, ctx);
149
- useKeydown(props, ctx);
150
- return () => {
151
- const defaultSlot = renderSlot(useSlots(), "default");
152
- return createVNode("div", {
153
- "ref": slotElement
154
- }, [defaultSlot]);
155
- };
156
- }
157
- });
158
- var index = {
159
- title: "Fullscreen \u5168\u5C4F",
160
- category: "\u901A\u7528",
161
- status: "100%",
162
- install(app) {
163
- app.component(Fullscreen.name, Fullscreen);
164
- }
165
- };
166
- export { Fullscreen, index as default, fullscreenProps };
@@ -1 +0,0 @@
1
- (function(u,l){typeof exports=="object"&&typeof module!="undefined"?l(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],l):(u=typeof globalThis!="undefined"?globalThis:u||self,l(u.index={},u.Vue))})(this,function(u,l){"use strict";const F={modelValue:{type:Boolean,default:!1},mode:{type:String,default:"normal"},zIndex:{type:Number,default:10}},S=27;function v(e,n){const{modelValue:t}=l.toRefs(e),s=c=>{c.keyCode===S&&t&&n.emit("update:modelValue",!1)};l.onMounted(()=>{document.addEventListener("keydown",s)}),l.onUnmounted(()=>{document.removeEventListener("keydown",s)})}function i(e,n,t){let s=e;return n&&(s+=`__${n}`),t&&(s+=`--${t}`),s}function h(e,n=!1){const t=n?`.devui-${e}`:`devui-${e}`;return{b:()=>i(t),e:r=>r?i(t,r):"",m:r=>r?i(t,"",r):"",em:(r,a)=>r&&a?i(t,r,a):""}}const m=h("fullscreen"),p=(e,n)=>{e.classList.add(m.b()),n.zIndex&&e.setAttribute("style",`z-index: ${n.zIndex}`)},b=e=>{e.classList.remove(m.b()),e.style.zIndex=""},w=async e=>{let n=null;return e.requestFullscreen?n=e.requestFullscreen():e.mozRequestFullScreen?n=e.mozRequestFullScreen():e.webkitRequestFullScreen?n=Promise.resolve(e.webkitRequestFullScreen()):e.msRequestFullscreen&&(n=Promise.resolve(e.msRequestFullscreen())),await(n==null?void 0:n.then(()=>!!document.fullscreenElement))},x=async e=>{let n=null;return e.exitFullscreen?n=e.exitFullscreen():e.mozCancelFullScreen?n=e.mozCancelFullScreen():e.webkitCancelFullScreen?n=Promise.resolve(e.webkitCancelFullScreen()):e.msExitFullscreen&&(n=Promise.resolve(e.msExitFullscreen())),await(n==null?void 0:n.then(()=>!!document.fullscreenElement))},C=()=>{document.getElementsByTagName("html")[0].classList.add(m.e("html"))},q=()=>{document.getElementsByTagName("html")[0].classList.remove(m.e("html"))};function z(e,n,t){const{modelValue:s,mode:c}=l.toRefs(e);let d=!1;const y=o=>{o?(p(n.value,e),C()):(b(n.value),q())},r=o=>{o?w(n.value):d||x(document)};l.watch(s,o=>{c.value==="normal"&&y(o),c.value==="immersive"&&r(o)});const a=()=>{document.fullscreenElement?d=!1:(t.emit("update:modelValue"),d=!0)};l.onMounted(()=>{document.addEventListener("fullscreenchange",a)}),l.onUnmounted(()=>{document.removeEventListener("fullscreenchange",a)})}var N="",f=l.defineComponent({name:"DFullscreen",props:F,emits:["update:modelValue"],setup(e,n){const t=l.ref();return z(e,t,n),v(e,n),()=>{const s=l.renderSlot(l.useSlots(),"default");return l.createVNode("div",{ref:t},[s])}}}),g={title:"Fullscreen \u5168\u5C4F",category:"\u901A\u7528",status:"100%",install(e){e.component(f.name,f)}};u.Fullscreen=f,u.default=g,u.fullscreenProps=F,Object.defineProperty(u,"__esModule",{value:!0}),u[Symbol.toStringTag]="Module"});
@@ -1,8 +0,0 @@
1
- {
2
- "name": "fullscreen",
3
- "version": "0.0.0",
4
- "main": "index.umd.js",
5
- "module": "index.es.js",
6
- "style": "style.css",
7
- "types": "../types/fullscreen/index.d.ts"
8
- }
@@ -1 +0,0 @@
1
- .devui-fullscreen{position:fixed;top:0;left:0;width:100%;height:100%;z-index:10;overflow:auto;background-color:var(--devui-base-bg, #ffffff)}.devui-fullscreen__html{overflow:hidden}:not(:root):fullscreen::backdrop{background:var(--devui-base-bg, #ffffff)}
@@ -1,3 +0,0 @@
1
- import '../../fullscreen/style.css'
2
-
3
- export { Fullscreen as default } from '../../fullscreen/index.es.js'
@@ -1,3 +0,0 @@
1
- import '../../fullscreen/style.css'
2
-
3
- export { fullscreenProps as default } from '../../fullscreen/index.es.js'