ep-lib-ts 0.1.42 → 0.1.43

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 (122) hide show
  1. package/dist/{BgAudio-12a94111.js → BgAudio-9074bf47.js} +1 -1
  2. package/dist/{DisplayBox-458ccfee.js → DisplayBox-e2f9c14b.js} +1 -1
  3. package/dist/{EpAlert-869e9a5a.js → EpAlert-98a8913b.js} +1 -1
  4. package/dist/{EpAudio-7b06fb87.js → EpAudio-8bca3f8b.js} +1 -1
  5. package/dist/EpBadge-aa69b61f.js +6 -0
  6. package/dist/{EpBarChart-2756826c.js → EpBarChart-89719705.js} +1 -1
  7. package/dist/EpBtn-94de00aa.js +6 -0
  8. package/dist/EpCard-d31b9544.js +6 -0
  9. package/dist/EpCheckbox-b4696548.js +41 -0
  10. package/dist/EpChip-b1c3761b.js +6 -0
  11. package/dist/EpCodeblock-f5d4bbd7.js +1467 -0
  12. package/dist/EpContentSlider-8b95883d.js +6 -0
  13. package/dist/EpDivider-717cb204.js +6 -0
  14. package/dist/{EpEdu-75241c80.js → EpEdu-1d62ac0f.js} +1 -1
  15. package/dist/EpFlex-4931d64b.js +6 -0
  16. package/dist/EpHeader-bf8e2580.js +6 -0
  17. package/dist/EpHotsPot-f4deb558.js +56 -0
  18. package/dist/EpHover-073dc31c.js +32 -0
  19. package/dist/{EpIcon-c83cee4a.js → EpIcon-e311fbad.js} +1 -1
  20. package/dist/EpIframe-d9f071a1.js +6 -0
  21. package/dist/EpImg-69c0feaf.js +6 -0
  22. package/dist/{EpInput-bfe1f0a8.js → EpInput-867e4d4d.js} +1 -1
  23. package/dist/EpLineChart-0954dd9c.js +6 -0
  24. package/dist/EpLink-d3b39f02.js +6 -0
  25. package/dist/EpLinkVersion-b760bbd8.js +6 -0
  26. package/dist/{EpList-ca9a647d.js → EpList-8a3621c1.js} +1 -1
  27. package/dist/EpModal-5f7b55e3.js +6 -0
  28. package/dist/{EpNothing-27aa18ae.js → EpNothing-ad160acf.js} +1 -1
  29. package/dist/EpPieChart-b4ace5f7.js +6 -0
  30. package/dist/EpQuestion-15d6c264.js +6 -0
  31. package/dist/EpQuote-2f8b0fd5.js +6 -0
  32. package/dist/EpRadio-53ea7ddf.js +6 -0
  33. package/dist/EpRadioSummative-e834a5da.js +6 -0
  34. package/dist/EpReading-6d3adc21.js +6 -0
  35. package/dist/EpResource-730effb3.js +6 -0
  36. package/dist/EpScope-9fa20a62.js +6 -0
  37. package/dist/EpSection-7a940784.js +6 -0
  38. package/dist/{EpSelect-f2ec0108.js → EpSelect-2b3b90bf.js} +1 -1
  39. package/dist/EpSkeleton-579dd745.js +6 -0
  40. package/dist/EpSoftware-705be204.js +6 -0
  41. package/dist/EpSpinner-34dd8e0e.js +6 -0
  42. package/dist/EpSummativeTable-4765167a.js +6 -0
  43. package/dist/EpSvg-c3fcd0c2.js +6 -0
  44. package/dist/{EpSwitch-9feee893.js → EpSwitch-778610f4.js} +20 -20
  45. package/dist/EpTable-5c9216b8.js +6 -0
  46. package/dist/EpTerm-507bdfb9.js +6 -0
  47. package/dist/EpText-1915cfeb.js +6 -0
  48. package/dist/EpTimeLine-73c0ce36.js +6 -0
  49. package/dist/{EpToggle-9755056a.js → EpToggle-79231e19.js} +2 -2
  50. package/dist/EpVideo-1d6e8d50.js +6 -0
  51. package/dist/EpVideoPanopto-4cb0d51e.js +6 -0
  52. package/dist/EpWordDef-6bc37d76.js +6 -0
  53. package/dist/components/basics/EpHover.vue.d.ts +49 -0
  54. package/dist/components/basics/EpImg.vue.d.ts +5 -0
  55. package/dist/components/educationals/EpCodeblock.vue.d.ts +42 -0
  56. package/dist/components/forms/EpCheckbox.vue.d.ts +10 -14
  57. package/dist/components/forms/EpInput.vue.d.ts +1 -1
  58. package/dist/components/forms/EpRadioSummative.vue.d.ts +56 -0
  59. package/dist/components/forms/EpSelect.vue.d.ts +1 -1
  60. package/dist/components/forms/EpTextarea.vue.d.ts +1 -1
  61. package/dist/components/forms/EpToggle.vue.d.ts +1 -1
  62. package/dist/components/interactions/EpHotsPot.vue.d.ts +32 -0
  63. package/dist/components/interactions/EpSummativeTable.vue.d.ts +24 -0
  64. package/dist/components/medias/EpCarousel.vue.d.ts +5 -0
  65. package/dist/components/signages/EpQuote.vue.d.ts +4 -0
  66. package/dist/ep-lib-ts.js +28 -27
  67. package/dist/ep-lib-ts.umd.cjs +98 -42
  68. package/dist/index-96f36524.js +47690 -0
  69. package/dist/{index-c3629e3f.js → index-a3ad71e0.js} +2428 -2333
  70. package/dist/index.d.ts +2 -1
  71. package/dist/prism-04608307.js +1182 -0
  72. package/dist/style.css +1 -1
  73. package/dist/types/Codeblock.d.ts +223 -0
  74. package/dist/types/Image.d.ts +6 -0
  75. package/dist/types/SummativeTable.d.ts +10 -0
  76. package/package.json +7 -2
  77. package/src/components/basics/EpHover.vue +57 -0
  78. package/src/components/basics/EpImg.vue +27 -20
  79. package/src/components/educationals/EpCodeblock.vue +48 -0
  80. package/src/components/forms/EpCheckbox.vue +26 -28
  81. package/src/components/forms/EpRadioSummative.vue +53 -0
  82. package/src/components/forms/EpToggle.vue +3 -12
  83. package/src/components/interactions/EpHotsPot.vue +77 -0
  84. package/src/components/interactions/EpSummativeTable.vue +56 -0
  85. package/src/components/medias/EpCarousel.vue +5 -2
  86. package/src/components/medias/EpKatex.vue +1 -1
  87. package/src/components/medias/EpSvg.vue +4 -2
  88. package/src/components/signages/EpQuote.vue +19 -16
  89. package/dist/EpBadge-13bd272a.js +0 -6
  90. package/dist/EpBtn-bf4e1bb8.js +0 -6
  91. package/dist/EpCard-138f7849.js +0 -6
  92. package/dist/EpCheckbox-fe632df9.js +0 -36
  93. package/dist/EpChip-ce9ab539.js +0 -6
  94. package/dist/EpContentSlider-9f860b5e.js +0 -6
  95. package/dist/EpDivider-5161e1a3.js +0 -6
  96. package/dist/EpFlex-56c39d33.js +0 -6
  97. package/dist/EpHeader-b573621c.js +0 -6
  98. package/dist/EpIframe-1d774546.js +0 -6
  99. package/dist/EpImg-b8c89895.js +0 -6
  100. package/dist/EpLineChart-09eeadf9.js +0 -6
  101. package/dist/EpLink-f0451bc0.js +0 -6
  102. package/dist/EpLinkVersion-2974758a.js +0 -6
  103. package/dist/EpModal-7538ea52.js +0 -6
  104. package/dist/EpPieChart-d4e42024.js +0 -6
  105. package/dist/EpQuestion-ce045112.js +0 -6
  106. package/dist/EpQuote-f25965fb.js +0 -6
  107. package/dist/EpRadio-d7d089ac.js +0 -6
  108. package/dist/EpReading-cd6d9d42.js +0 -6
  109. package/dist/EpResource-e7b8e1d6.js +0 -6
  110. package/dist/EpScope-f857c493.js +0 -6
  111. package/dist/EpSection-a4260ae8.js +0 -6
  112. package/dist/EpSkeleton-07341c6f.js +0 -6
  113. package/dist/EpSoftware-8ff5b189.js +0 -6
  114. package/dist/EpSpinner-bca72b93.js +0 -6
  115. package/dist/EpSvg-c3ef1c16.js +0 -6
  116. package/dist/EpTable-6d34cf99.js +0 -6
  117. package/dist/EpTerm-5893b315.js +0 -6
  118. package/dist/EpText-bef0cd7e.js +0 -6
  119. package/dist/EpTimeLine-77889a4d.js +0 -6
  120. package/dist/EpVideo-3c188b92.js +0 -6
  121. package/dist/EpVideoPanopto-7bdb0a19.js +0 -6
  122. package/dist/EpWordDef-e6ebb0d2.js +0 -6
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .content[data-v-7dc117b1]{max-height:0;overflow:hidden}.modal-mask{position:fixed;z-index:9998;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;transition:opacity .3s ease}.modal-container{margin:auto;max-height:95%;transition:all .3s ease;z-index:9999}.modal-header h3{margin-top:0;color:#42b983}.modal-body{margin:20px 0}.modal-default-button{float:right}.modal-enter-from,.modal-leave-to{opacity:0}.modal-enter-from .modal-container,.modal-leave-to .modal-container{transform:scale(1.1)}.custom_index{z-index:9999;position:absolute;right:12rem}.h-custom{height:30rem}.p-custom p{margin-bottom:1em}.v-enter-active[data-v-63d168f1],.v-leave-active[data-v-63d168f1]{transition:opacity .5s ease}.v-enter-from[data-v-63d168f1],.v-leave-to[data-v-63d168f1]{opacity:0}.katex[data-v-24ff8b28]{font-size:1.3em}.content[data-v-89d118fb]{max-height:0;overflow:hidden}.list-enter-active,.list-leave-active{transition:all .5s ease}.list-enter-from,.list-leave-to{opacity:0;transform:translate(30px)}.shape{height:var(--5ad0279f);width:var(--6f1de84e)}.arrow-light-top:before{content:" ";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:rgba(0,0,0,.2) transparent transparent transparent}.arrow-dark-top:before{content:" ";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:black transparent transparent transparent}.arrow-light-bottom:before{content:"";position:absolute;display:inline-block;left:50%;bottom:100%;border-right:7px solid transparent;border-bottom:7px solid #eee;border-left:7px solid transparent;border-bottom-color:#0003}.arrow-dark-bottom:before{content:"";position:absolute;display:inline-block;left:50%;bottom:100%;border-right:7px solid transparent;border-bottom:7px solid black;border-left:7px solid transparent;border-bottom-color:black transparent transparent transparent}.arrow-light-left:before{position:absolute;display:inline-block;left:100%;top:50%;content:"";margin-right:0;border-top:5px solid transparent;border-left:5px solid #eee;border-bottom:5px solid transparent;border-left-color:#0003}.arrow-dark-left:before{position:absolute;display:inline-block;left:100%;top:50%;content:"";margin-right:0;border-top:5px solid transparent;border-left:5px solid black;border-bottom:5px solid transparent;border-left-color:black transparent transparent transparent}.arrow-light-right:before{position:absolute;display:inline-block;right:100%;top:50%;content:"";margin-right:0;border-top:5px solid transparent;border-right:5px solid #eee;border-bottom:5px solid transparent;border-right-color:#0003}.arrow-dark-right:before{position:absolute;display:inline-block;right:100%;top:50%;content:"";margin-right:0;border-top:5px solid transparent;border-right:5px solid black;border-bottom:5px solid transparent;border-right-color:black transparent transparent transparent}
1
+ .content[data-v-7dc117b1]{max-height:0;overflow:hidden}.modal-mask{position:fixed;z-index:9998;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;transition:opacity .3s ease}.modal-container{margin:auto;max-height:95%;transition:all .3s ease;z-index:9999}.modal-header h3{margin-top:0;color:#42b983}.modal-body{margin:20px 0}.modal-default-button{float:right}.modal-enter-from,.modal-leave-to{opacity:0}.modal-enter-from .modal-container,.modal-leave-to .modal-container{transform:scale(1.1)}.custom_index{z-index:9999;position:absolute;right:12rem}.h-custom{height:30rem}.p-custom p{margin-bottom:1em}.v-enter-active[data-v-8769146d],.v-leave-active[data-v-8769146d]{transition:opacity .5s ease}.v-enter-from[data-v-8769146d],.v-leave-to[data-v-8769146d]{opacity:0}.katex[data-v-31453b22]{font-size:1.6em}.content[data-v-89d118fb]{max-height:0;overflow:hidden}.list-enter-active,.list-leave-active{transition:all .5s ease}.list-enter-from,.list-leave-to{opacity:0;transform:translate(30px)}.shape{height:var(--5ad0279f);width:var(--6f1de84e)}.arrow-light-top:before{content:" ";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:rgba(0,0,0,.2) transparent transparent transparent}.arrow-dark-top:before{content:" ";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:black transparent transparent transparent}.arrow-light-bottom:before{content:"";position:absolute;display:inline-block;left:50%;bottom:100%;border-right:7px solid transparent;border-bottom:7px solid #eee;border-left:7px solid transparent;border-bottom-color:#0003}.arrow-dark-bottom:before{content:"";position:absolute;display:inline-block;left:50%;bottom:100%;border-right:7px solid transparent;border-bottom:7px solid black;border-left:7px solid transparent;border-bottom-color:black transparent transparent transparent}.arrow-light-left:before{position:absolute;display:inline-block;left:100%;top:50%;content:"";margin-right:0;border-top:5px solid transparent;border-left:5px solid #eee;border-bottom:5px solid transparent;border-left-color:#0003}.arrow-dark-left:before{position:absolute;display:inline-block;left:100%;top:50%;content:"";margin-right:0;border-top:5px solid transparent;border-left:5px solid black;border-bottom:5px solid transparent;border-left-color:black transparent transparent transparent}.arrow-light-right:before{position:absolute;display:inline-block;right:100%;top:50%;content:"";margin-right:0;border-top:5px solid transparent;border-right:5px solid #eee;border-bottom:5px solid transparent;border-right-color:#0003}.arrow-dark-right:before{position:absolute;display:inline-block;right:100%;top:50%;content:"";margin-right:0;border-top:5px solid transparent;border-right:5px solid black;border-bottom:5px solid transparent;border-right-color:black transparent transparent transparent}
@@ -0,0 +1,223 @@
1
+ type Theme = "neon-bunny" | "neon-bunny-carrot" | "a11y-dark" | "a11y-light" | "agate" | "an-old-hope" | "androidstudio" | "arduino-light" | "arta" | "ascetic" | "atom-one-dark-reasonable" | "atom-one-dark" | "atom-one-light" | "brown-paper" | "codepen-embed" | "color-brewer" | "dark" | "default" | "devibeans" | "docco" | "far" | "felipec" | "foundation" | "github-dark-dimmed" | "github-dark" | "github" | "gml" | "googlecode" | "gradient-dark" | "gradient-light" | "grayscale" | "hybrid" | "idea" | "intellij-light" | "ir-black" | "isbl-editor-dark" | "isbl-editor-light" | "kimbie-dark" | "kimbie-light" | "lightfair" | "lioshi" | "magula" | "mono-blue" | "monokai-sublime" | "monokai" | "night-owl" | "nnfx-dark" | "nnfx-light" | "nord" | "obsidian" | "panda-syntax-dark" | "panda-syntax-light" | "paraiso-light" | "pojoaque" | "purebasic" | "qtcreator-dark" | "qtcreator-light" | "rainbow" | "routeros" | "school-book" | "shades-of-purple" | "srcery" | "stackoverflow-dark" | "stackoverflow-light" | "sunburst" | "tokyo-night-dark" | "tokyo-night-light" | "tomorrow-night-blue" | "tomorrow-night-bright" | "vs" | "vs2015" | "xcode" | "xt256";
2
+ export default Theme;
3
+ export declare const ThemeOptions: readonly [{
4
+ readonly text: "neon bunny";
5
+ readonly value: "neon-bunny";
6
+ }, {
7
+ readonly text: "neon bunny carrot";
8
+ readonly value: "neon-bunny-carrot";
9
+ }, {
10
+ readonly text: "a11y dark";
11
+ readonly value: "a11y-dark";
12
+ }, {
13
+ readonly text: "a11y light";
14
+ readonly value: "a11y-light";
15
+ }, {
16
+ readonly text: "agate";
17
+ readonly value: "agate";
18
+ }, {
19
+ readonly text: "an old hope";
20
+ readonly value: "an-old-hope";
21
+ }, {
22
+ readonly text: "androidstudio";
23
+ readonly value: "androidstudio";
24
+ }, {
25
+ readonly text: "arduino light";
26
+ readonly value: "arduino-light";
27
+ }, {
28
+ readonly text: "arta";
29
+ readonly value: "arta";
30
+ }, {
31
+ readonly text: "ascetic";
32
+ readonly value: "ascetic";
33
+ }, {
34
+ readonly text: "atom one dark reasonable";
35
+ readonly value: "atom-one-dark-reasonable";
36
+ }, {
37
+ readonly text: "atom one dark";
38
+ readonly value: "atom-one-dark";
39
+ }, {
40
+ readonly text: "atom one light";
41
+ readonly value: "atom-one-light";
42
+ }, {
43
+ readonly text: "brown paper";
44
+ readonly value: "brown-paper";
45
+ }, {
46
+ readonly text: "codepen embed";
47
+ readonly value: "codepen-embed";
48
+ }, {
49
+ readonly text: "color brewer";
50
+ readonly value: "color-brewer";
51
+ }, {
52
+ readonly text: "dark";
53
+ readonly value: "dark";
54
+ }, {
55
+ readonly text: "default";
56
+ readonly value: "default";
57
+ }, {
58
+ readonly text: "devibeans";
59
+ readonly value: "devibeans";
60
+ }, {
61
+ readonly text: "docco";
62
+ readonly value: "docco";
63
+ }, {
64
+ readonly text: "far";
65
+ readonly value: "far";
66
+ }, {
67
+ readonly text: "felipec";
68
+ readonly value: "felipec";
69
+ }, {
70
+ readonly text: "foundation";
71
+ readonly value: "foundation";
72
+ }, {
73
+ readonly text: "github dark dimmed";
74
+ readonly value: "github-dark-dimmed";
75
+ }, {
76
+ readonly text: "github dark";
77
+ readonly value: "github-dark";
78
+ }, {
79
+ readonly text: "github";
80
+ readonly value: "github";
81
+ }, {
82
+ readonly text: "gml";
83
+ readonly value: "gml";
84
+ }, {
85
+ readonly text: "google code";
86
+ readonly value: "googlecode";
87
+ }, {
88
+ readonly text: "gradient dark";
89
+ readonly value: "gradient-dark";
90
+ }, {
91
+ readonly text: "gradient light";
92
+ readonly value: "gradient-light";
93
+ }, {
94
+ readonly text: "grayscale";
95
+ readonly value: "grayscale";
96
+ }, {
97
+ readonly text: "hybrid";
98
+ readonly value: "hybrid";
99
+ }, {
100
+ readonly text: "idea";
101
+ readonly value: "idea";
102
+ }, {
103
+ readonly text: "intellij light";
104
+ readonly value: "intellij-light";
105
+ }, {
106
+ readonly text: "ir black";
107
+ readonly value: "ir-black";
108
+ }, {
109
+ readonly text: "isbl editor dark";
110
+ readonly value: "isbl-editor-dark";
111
+ }, {
112
+ readonly text: "isbl editor light";
113
+ readonly value: "isbl-editor-light";
114
+ }, {
115
+ readonly text: "kimbie dark";
116
+ readonly value: "kimbie-dark";
117
+ }, {
118
+ readonly text: "kimbie light";
119
+ readonly value: "kimbie-light";
120
+ }, {
121
+ readonly text: "lightfair";
122
+ readonly value: "lightfair";
123
+ }, {
124
+ readonly text: "lioshi";
125
+ readonly value: "lioshi";
126
+ }, {
127
+ readonly text: "magula";
128
+ readonly value: "magula";
129
+ }, {
130
+ readonly text: "mono blue";
131
+ readonly value: "mono-blue";
132
+ }, {
133
+ readonly text: "monokai sublime";
134
+ readonly value: "monokai-sublime";
135
+ }, {
136
+ readonly text: "monokai";
137
+ readonly value: "monokai";
138
+ }, {
139
+ readonly text: "night owl";
140
+ readonly value: "night-owl";
141
+ }, {
142
+ readonly text: "nnfx dark";
143
+ readonly value: "nnfx-dark";
144
+ }, {
145
+ readonly text: "nnfx light";
146
+ readonly value: "nnfx-light";
147
+ }, {
148
+ readonly text: "nord";
149
+ readonly value: "nord";
150
+ }, {
151
+ readonly text: "obsidian";
152
+ readonly value: "obsidian";
153
+ }, {
154
+ readonly text: "panda syntax dark";
155
+ readonly value: "panda-syntax-dark";
156
+ }, {
157
+ readonly text: "panda syntax light";
158
+ readonly value: "panda-syntax-light";
159
+ }, {
160
+ readonly text: "paraiso dark";
161
+ readonly value: "paraiso-light";
162
+ }, {
163
+ readonly text: "pojoaque";
164
+ readonly value: "pojoaque";
165
+ }, {
166
+ readonly text: "purebasic";
167
+ readonly value: "purebasic";
168
+ }, {
169
+ readonly text: "qtcreator dark";
170
+ readonly value: "qtcreator-dark";
171
+ }, {
172
+ readonly text: "qtcreator light";
173
+ readonly value: "qtcreator-light";
174
+ }, {
175
+ readonly text: "rainbow";
176
+ readonly value: "rainbow";
177
+ }, {
178
+ readonly text: "routeros";
179
+ readonly value: "routeros";
180
+ }, {
181
+ readonly text: "school book";
182
+ readonly value: "school-book";
183
+ }, {
184
+ readonly text: "shades of purple";
185
+ readonly value: "shades-of-purple";
186
+ }, {
187
+ readonly text: "srcery";
188
+ readonly value: "srcery";
189
+ }, {
190
+ readonly text: "stackoverflow dark";
191
+ readonly value: "stackoverflow-dark";
192
+ }, {
193
+ readonly text: "stackoverflow light";
194
+ readonly value: "stackoverflow-light";
195
+ }, {
196
+ readonly text: "sunburst";
197
+ readonly value: "sunburst";
198
+ }, {
199
+ readonly text: "tokyo night dark";
200
+ readonly value: "tokyo-night-dark";
201
+ }, {
202
+ readonly text: "tokyo night light";
203
+ readonly value: "tokyo-night-light";
204
+ }, {
205
+ readonly text: "tomorrow night blue";
206
+ readonly value: "tomorrow-night-blue";
207
+ }, {
208
+ readonly text: "tomorrow night bright";
209
+ readonly value: "tomorrow-night-bright";
210
+ }, {
211
+ readonly text: "vs";
212
+ readonly value: "vs";
213
+ }, {
214
+ readonly text: "vs2015";
215
+ readonly value: "vs2015";
216
+ }, {
217
+ readonly text: "xcode";
218
+ readonly value: "xcode";
219
+ }, {
220
+ readonly text: "xt256";
221
+ readonly value: "xt256";
222
+ }];
223
+ export declare const defaultOption: "neon-bunny";
@@ -0,0 +1,6 @@
1
+ export declare const sizeThumbnailStyle: {
2
+ small: string;
3
+ medium: string;
4
+ large: string;
5
+ };
6
+ export type SizeThumbnail = keyof typeof sizeThumbnailStyle;
@@ -0,0 +1,10 @@
1
+ interface Option {
2
+ uid: string;
3
+ label: string;
4
+ value: number | string;
5
+ }
6
+ export interface QuestionSummative {
7
+ question: string;
8
+ options: Option[];
9
+ }
10
+ export {};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ep-lib-ts",
3
3
  "private": false,
4
- "version": "0.1.42",
4
+ "version": "0.1.43",
5
5
  "files": [
6
6
  "dist",
7
7
  "src/components/"
@@ -26,16 +26,20 @@
26
26
  "preview": "vite preview"
27
27
  },
28
28
  "dependencies": {
29
+ "@highlightjs/vue-plugin": "^2.1.0",
29
30
  "@mdi/js": "^7.1.96",
30
31
  "@vueuse/core": "^10.1.2",
32
+ "@wdns/vue-code-block": "^2.3.1",
31
33
  "apexcharts": "^3.41.1",
34
+ "highlight.js": "^11.9.0",
32
35
  "katex": "^0.16.8",
33
36
  "markdown-it": "^13.0.1",
34
37
  "postcss-cli": "^10.1.0",
35
38
  "vee-validate": "^4.8.6",
36
39
  "vue": "^3.2.45",
37
40
  "vue-router": "^4.1.6",
38
- "vue3-apexcharts": "^1.4.4"
41
+ "vue3-apexcharts": "^1.4.4",
42
+ "vue3-highlightjs": "^1.0.5"
39
43
  },
40
44
  "devDependencies": {
41
45
  "@tailwindcss/forms": "^0.5.3",
@@ -46,6 +50,7 @@
46
50
  "autoprefixer": "^10.4.14",
47
51
  "path": "^0.12.7",
48
52
  "postcss": "^8.4.27",
53
+ "shikiji": "^0.9.11",
49
54
  "tailwindcss": "^3.3.3",
50
55
  "typescript": "^5.2.0-dev.20230801",
51
56
  "vite": "^4.1.0",
@@ -0,0 +1,57 @@
1
+ <script setup lang="ts">
2
+ import { toRefs, computed, ref } from "vue";
3
+ import useColors from '../../composables/useColors'
4
+
5
+ type Animation=""|"scale"
6
+ type Color = ""|"white"|"black"|"primary"|"secondary"|"accent"|"error"|"warning"|"success"|"info"|"question"|"tip"
7
+ |"primarydark"|"secondarydark"|"accentdark"|"errordark"|"warningdark"|"successdark"|"infodark"|"questiondark"|"tipdark"
8
+ |"primarylight"|"secondarylight"|"accentlight"|"errorlight"|"warninglight"|"successlight"|"infolight"|"questionlight"|"tiplight";
9
+
10
+ interface Props {
11
+ bg_color?: Color;
12
+ text_color?:Color;
13
+ text?: string;
14
+ animation?:Animation
15
+ }
16
+
17
+ const props = withDefaults(defineProps<Props>(), {
18
+ bg_color: "black",
19
+ text_color:"white",
20
+ text: "",
21
+ animation:""
22
+ });
23
+
24
+
25
+ const bgcolor = computed(()=>{
26
+ if(props.bg_color ){
27
+ return `${useColors('bg', props.bg_color)}`
28
+ }
29
+ })
30
+
31
+ const textcolor = computed(()=>{
32
+ if(props.text_color ){
33
+ return `${useColors('text', props.text_color)}`
34
+ }
35
+ })
36
+
37
+ const hoverstyle = computed(()=>{
38
+ if (props.animation=="scale")
39
+ return `hover:scale-110 hover:opacity-100 `
40
+ else
41
+ return `hover:opacity-100`
42
+ })
43
+
44
+
45
+ </script>
46
+
47
+ <template>
48
+ <div class="relative max-w-xs overflow-hidden bg-cover bg-no-repeat">
49
+ <slot ></slot>
50
+ <div :class="`absolute bottom-0 left-0 right-0 top-0 h-full w-full overflow-hidden ${bgcolor}
51
+ font-bold flex justify-center items-center bg-fixed opacity-0 transition duration-300 ease-in-out
52
+ text-4xl ${hoverstyle} ${textcolor}`">
53
+ {{ props.text }}
54
+ </div>
55
+ </div>
56
+ </template>
57
+
@@ -1,5 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import { toRefs, ref, computed } from 'vue'
3
+ import { SizeThumbnail, sizeThumbnailStyle } from '../../types/Image'
3
4
  import { useImage } from '@vueuse/core'
4
5
  import EpModal from '../interactions/EpModal.vue'
5
6
  import EpIcon from '../basics/EpIcon.vue'
@@ -9,28 +10,13 @@ import { mdiImage } from '@mdi/js';
9
10
  import { mdiImageRemove } from '@mdi/js';
10
11
  import { useRenderText } from "../../composables/useRenderText";
11
12
 
12
- const Cols = [
13
- 'basis-6/12',
14
- 'basis-1/12',
15
- 'basis-2/12',
16
- 'basis-3/12',
17
- 'basis-4/12',
18
- 'basis-5/12',
19
- 'basis-6/12',
20
- 'basis-7/12',
21
- 'basis-8/12',
22
- 'basis-9/12',
23
- 'basis-10/12',
24
- 'basis-11/12',
25
- 'basis-12/12',
26
- ]
27
-
28
13
  interface Props {
29
14
  src: string;
30
15
  alt?: string;
31
16
  height?: string | number;
32
17
  width?: string | number;
33
18
  thumbnail?: boolean;
19
+ sizeThumbnail?: SizeThumbnail;
34
20
  caption?: string;
35
21
  bib?: string;
36
22
  title?: string;
@@ -42,9 +28,26 @@ const props = withDefaults(defineProps<Props>(), {
42
28
  alt: "Image snfas",
43
29
  cols: "6",
44
30
  thumbnail: false,
45
- noModal:false
31
+ noModal:false,
32
+ sizeThumbnail:"medium"
46
33
  })
47
34
 
35
+ const Cols = [
36
+ 'basis-6/12',
37
+ 'basis-1/12',
38
+ 'basis-2/12',
39
+ 'basis-3/12',
40
+ 'basis-4/12',
41
+ 'basis-5/12',
42
+ 'basis-6/12',
43
+ 'basis-7/12',
44
+ 'basis-8/12',
45
+ 'basis-9/12',
46
+ 'basis-10/12',
47
+ 'basis-11/12',
48
+ 'basis-full',
49
+ ]
50
+
48
51
  const renderCols = computed(() => {
49
52
  return Cols[+props.cols]
50
53
  })
@@ -71,8 +74,12 @@ const toggleBib = ():void => {
71
74
  showBib.value = !showBib.value
72
75
  }
73
76
 
77
+ const styleSizeThumbnail = computed(()=> {
78
+ return sizeThumbnailStyle[props.sizeThumbnail]
79
+ })
80
+
74
81
  const { isLoading, error } = useImage({ src: props.src })
75
- const { src, alt, title, caption, thumbnail, bib, noModal } = toRefs(props)
82
+ const { src, alt, title, caption, thumbnail, bib, sizeThumbnail } = toRefs(props)
76
83
 
77
84
  </script>
78
85
 
@@ -97,9 +104,9 @@ const { src, alt, title, caption, thumbnail, bib, noModal } = toRefs(props)
97
104
  </div>
98
105
  </div>
99
106
  <div v-if="thumbnail" class="relative group inline-block m-2">
100
- <img class="w-36 h-36 object-cover object-center group-hover:opacity-30 " :src="src" :alt="alt">
107
+ <img :class="`${styleSizeThumbnail} object-cover object-center group-hover:opacity-30 `" :src="src" :alt="alt">
101
108
  <div
102
- class="absolute top-0 left-0 w-36 h-36 bg-black opacity-0 transition-opacity duration-300 group-hover:opacity-30 cursor-pointer"
109
+ :class="`absolute top-0 left-0 ${styleSizeThumbnail} bg-black opacity-0 transition-opacity duration-300 group-hover:opacity-30 cursor-pointer`"
103
110
  @click="toggleModal">
104
111
  <div class="absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 text-white text-center">
105
112
  <EpIcon :icon-path="mdiArrowExpandAll"></EpIcon>
@@ -0,0 +1,48 @@
1
+ <script setup lang="ts">
2
+ import VCodeBlock from '@wdns/vue-code-block';
3
+ import {defaultOption} from "../../types/Codeblock";
4
+ import Theme from "../../types/Codeblock";
5
+ import { computed} from "vue";
6
+ import { ref } from "vue";
7
+
8
+ type Langue = "javascript"|"css"|"html"|"php"|"json"|"typescript";
9
+
10
+ interface Props {
11
+ code?: string;
12
+ label?:string;
13
+ lang?:Langue;
14
+ theme?:Theme;
15
+ }
16
+ const props = withDefaults(defineProps<Props>(), {
17
+ code:"",
18
+ label:"",
19
+ lang:"javascript",
20
+ theme: defaultOption,
21
+ })
22
+
23
+
24
+ const code = computed(()=>{
25
+ return ref(props.code);
26
+ })
27
+ const label = computed(()=>{
28
+ return props.label;
29
+ })
30
+ const lang = computed(()=>{
31
+ return props.lang;
32
+ })
33
+ const theme = computed(()=>{
34
+ return props.theme;
35
+ })
36
+ </script>
37
+
38
+ <template>
39
+
40
+ <VCodeBlock
41
+ :code=code
42
+ highlightjs
43
+ :label=label
44
+ :lang=lang
45
+ :theme=theme
46
+ />
47
+
48
+ </template>
@@ -1,49 +1,47 @@
1
1
  <script setup lang="ts">
2
- import {toRefs } from "vue";
3
- const name: string = "checkbox";
2
+ import { toRefs, computed } from "vue";
3
+
4
4
  interface Props {
5
5
  id?: string;
6
6
  label?: string;
7
- modelValue?: string;
8
- type?: "checkbox" | "radio";
7
+ modelValue?: string | string[] | boolean;
9
8
  disabled?: boolean;
10
9
  readonly?: boolean;
11
- checked?: boolean;
10
+ value?: string;
12
11
  }
13
12
 
14
13
  const props = withDefaults(defineProps<Props>(), {
15
14
  id: "0",
16
15
  label: "check",
17
- modelValue: "",
18
- type: "checkbox",
19
16
  disabled: false,
20
17
  readonly: false,
21
- checked: false,
18
+ value:undefined,
19
+ modelValue:""
22
20
  });
23
21
 
22
+
24
23
  const emit = defineEmits<{
25
- (e: "update:modelValue", modelValue: string): void;
24
+ (e: "update:modelValue", modelValue:string|string[]|boolean): void;
26
25
  }>();
27
26
 
28
- const { id, label, type, modelValue, disabled, readonly, checked } =
29
- toRefs(props);
27
+ const model = computed({
28
+ get() {
29
+ return props.modelValue;
30
+ },
31
+ set(value) {
32
+ emit("update:modelValue", value);
33
+ },
34
+ });
35
+
36
+
37
+ const { id, label, disabled, readonly, value } = toRefs(props);
30
38
  </script>
31
39
  <template>
32
- <div>
33
- <input
34
- :id="id"
35
- :type="type"
36
- :value="modelValue"
37
- class="form-checkbox rounded border-neutral-300 text-blue-600 h-[1.125rem] w-[1.125rem] mr-2 disabled:opacity-40 disabled:cursor-not-allowed"
38
- :disabled="disabled"
39
- :readonly="readonly"
40
- :checked="checked"
41
- />
42
- <label
43
- :for="id"
44
- class="disabled:opacity-40 hover:pointer-events-none"
45
- :disabled="disabled"
46
- >{{ label }}</label
47
- >
48
- </div>
40
+ <label
41
+ class="cursor-pointer flex items-center rounded-md py-3 px-3 text-xs font-semibold uppercase sm:flex-1 hover:bg-gray-200 ">
42
+ <input type="checkbox" :id="id" v-model="model" :value="value" :disabled="disabled" :readonly="readonly"
43
+ name="notification-method"
44
+ class="rounded bg-gray-200 border-gray-300 focus:border-transparent focus:bg-gray-200 text-primary focus:ring-1 focus:ring-offset-2 focus:ring-primary" />
45
+ <span class="ml-2">{{ label }}</span> <!-- sm:w-24 md:w-48 -->
46
+ </label>
49
47
  </template>
@@ -0,0 +1,53 @@
1
+ <script setup lang="ts">
2
+ import { toRefs, computed } from "vue";
3
+ import { RadioVariants, radioVariants } from "../../types/Radio";
4
+
5
+ interface Props {
6
+ id?: string;
7
+ label?: string;
8
+ disabled?: boolean;
9
+ readonly?: boolean;
10
+ type?: RadioVariants;
11
+ value?: number;
12
+ modelValue?: number|null;
13
+ }
14
+
15
+ const props = withDefaults(defineProps<Props>(), {
16
+ id: "01",
17
+ disabled: false,
18
+ readonly: false,
19
+ checked: false,
20
+ type: "base",
21
+ value: undefined,
22
+ modelValue: null
23
+ });
24
+
25
+
26
+ const isChecked = computed(() => {
27
+ return props.modelValue === props.value;
28
+ });
29
+
30
+
31
+ const { label, disabled, readonly, value, id, } = toRefs(props);
32
+
33
+ const emit = defineEmits<{
34
+ (e: "update:modelValue", modelValue: number): void
35
+ }>()
36
+
37
+ const onChange = (event: Event) => {
38
+ const target = event.target as HTMLInputElement
39
+ const value = +target.value || 0
40
+ emit('update:modelValue', value)
41
+ }
42
+
43
+ </script>
44
+
45
+ <template>
46
+ <label
47
+ class="cursor-pointer flex items-center rounded-md py-3 px-3 text-xs font-semibold uppercase sm:flex-1 hover:bg-gray-200 ">
48
+ <input type="radio" :id="id" :name="id" :disabled="disabled"
49
+ :readonly="readonly" :value="value" :checked="isChecked" @change="onChange"
50
+ class="rounded bg-gray-200 border-gray-300 focus:border-transparent focus:bg-gray-200 text-primary focus:ring-1 focus:ring-offset-2 focus:ring-primary" />
51
+ <span class="ml-2">{{label}}</span>
52
+ </label>
53
+ </template>
@@ -70,10 +70,7 @@ const {
70
70
  </label>
71
71
  </div> -->
72
72
  <div>
73
- <input
74
- :id="id"
75
- :type="type"
76
- :checked="checked"
73
+ <input :id="id" :type="type" :checked="checked"
77
74
  class="form-checkbox mr-2 mt-[0rem] h-4 w-8 appearance-none rounded-full bg-neutral-200 border-neutral-300 before:pointer-events-none before:absolute before:h-3.5 before:w-3.5 before:rounded-full before:bg-transparent before:content-[''] after:absolute after:z-[2] after:-mt-[0rem] after:h-3.5 after:w-3.5 after:rounded-full after:border-none after:bg-neutral-50 after:shadow-[0_0px_3px_0_rgb(0_0_0_/_7%),_0_2px_2px_0_rgb(0_0_0_/_4%)] after:transition-[background-color_0.2s,transform_0.2s] after:content-['']
78
75
 
79
76
  checked:bg-none checked:bg-blue-600 checked:after:absolute checked:after:z-[2] checked:after:-mt-[0px] checked:after:ml-[1.0625rem] checked:after:h-3.5 checked:after:w-3.5 checked:after:rounded-full checked:after:border-none checked:after:bg-neutral-100 checked:after:shadow-[0_3px_1px_-2px_rgba(0,0,0,0.2),_0_2px_2px_0_rgba(0,0,0,0.14),_0_1px_5px_0_rgba(0,0,0,0.12)] checked:after:transition-[background-color_0.2s,transform_0.2s] checked:after:content-['']
@@ -85,13 +82,7 @@ const {
85
82
  checked:focus:border-neutral-200 checked:focus:bg-blue-600 checked:focus:before:ml-[1rem] checked:focus:before:mt-[0.1rem] checked:focus:before:scale-75 checked:focus:before:shadow-[3px_-1px_0px_13px_#3b71ca] checked:focus:before:transition-[box-shadow_0.2s,transform_0.2s]
86
83
 
87
84
  dark:bg-neutral-600 dark:after:bg-neutral-400 dark:checked:bg-blue-600 dark:checked:after:bg-blue-600 dark:focus:before:shadow-[3px_-1px_0px_13px_rgba(255,255,255,0.4)] dark:checked:focus:before:shadow-[3px_-1px_0px_13px_#3b71ca] disabled:opacity-40 disabled:cursor-not-allowed"
88
- role="switch"
89
- :disabled="disabled"
90
- />
91
- <label class="inline-block pl-[0.15rem] hover:cursor-pointer" :for="id"
92
- >Default switch checkbox input</label
93
- >
85
+ role="switch" :disabled="disabled" />
86
+ <label class="inline-block pl-[0.15rem] hover:cursor-pointer" :for="id">Default switch checkbox input</label>
94
87
  </div>
95
88
  </template>
96
-
97
-