@data-fair/app-calendar 1.0.0

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.
@@ -0,0 +1 @@
1
+ import{aS as w,r as O,q as v,B as c,F as K,aP as M,c as i,u as N,aY as ee,v as q,aZ as te,Z as ae,s as ne,a_ as se,aa as oe,e as le,Q as X,O as re,a0 as ie,X as ue,x as ce,Y as de,ai as fe,al as _,a2 as ve,aI as E,U as j,A as ge,aj as d,L as me,a$ as be,b0 as F,_ as I,W as he,ab as U,n as ye,a as Ce}from"./index-CAAiDM5V.js";const Y=["top","bottom"],ke=["start","end","left","right"];function Se(e,t){let[a,n]=e.split(" ");return n||(n=w(Y,a)?"start":w(ke,a)?"top":"center"),{side:A(a,t),align:A(n,t)}}function A(e,t){return e==="start"?t?"right":"left":e==="end"?t?"left":"right":e}function Te(e){return{side:{center:"center",top:"bottom",bottom:"top",left:"right",right:"left"}[e.side],align:e.align}}function $e(e){return{side:e.side,align:{center:"center",top:"bottom",bottom:"top",left:"right",right:"left"}[e.align]}}function Ne(e){return{side:e.align,align:e.side}}function Ee(e){return w(Y,e.side)?"y":"x"}const Fe=O(!1),Ie=O(""),pe=v({tag:{type:String,default:"div"}},"tag"),Pe=["elevated","flat","tonal","outlined","text","plain"];function Ae(e,t){return c(K,null,[e&&c("span",{key:"overlay",class:`${t}__overlay`},null),c("span",{key:"underlay",class:`${t}__underlay`},null)])}const De=v({color:String,variant:{type:String,default:"elevated",validator:e=>Pe.includes(e)}},"variant");function Me(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:M();const a=i(()=>{const{variant:s}=N(e);return`${t}--variant-${s}`}),{colorClasses:n,colorStyles:u}=ee(i(()=>{const{variant:s,color:l}=N(e);return{[["elevated","flat"].includes(s)?"background":"text"]:l}}));return{colorClasses:n,colorStyles:u,variantClasses:a}}const xe=v({defaults:Object,disabled:Boolean,reset:[Number,String],root:[Boolean,String],scoped:Boolean},"VDefaultsProvider"),qe=q(!1)({name:"VDefaultsProvider",props:xe(),setup(e,t){let{slots:a}=t;const{defaults:n,disabled:u,reset:s,root:l,scoped:r}=te(e);return ae(n,{reset:s,root:l,scoped:r,disabled:u}),()=>{var o;return(o=a.default)==null?void 0:o.call(a)}}});function Be(e,t){const a=O(),n=ne(!1);if(se){const u=new IntersectionObserver(s=>{n.value=!!s.find(l=>l.isIntersecting)},t);oe(()=>{u.disconnect()}),le(a,(s,l)=>{l&&(u.unobserve(l),n.value=!1),s&&u.observe(s)},{flush:"post"})}return{intersectionRef:a,isIntersecting:n}}const D={center:"center",top:"bottom",bottom:"top",left:"right",right:"left"},Re=v({location:String},"location");function _e(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a=arguments.length>2?arguments[2]:void 0;const{isRtl:n}=X();return{locationStyles:i(()=>{if(!e.location)return{};const{side:s,align:l}=Se(e.location.split(" ").length>1?e.location:`${e.location} center`,n.value);function r(g){return a?a(g):0}const o={};return s!=="center"&&(t?o[D[s]]=`calc(100% - ${r(s)}px)`:o[s]=0),l!=="center"?t?o[D[l]]=`calc(100% - ${r(l)}px)`:o[l]=0:(s==="center"?o.top=o.left="50%":o[{top:"left",bottom:"left",left:"top",right:"top"}[s]]="50%",o.transform={top:"translateX(-50%)",bottom:"translateX(-50%)",left:"translateY(-50%)",right:"translateY(-50%)",center:"translate(-50%, -50%)"}[s]),o})}}const Ve=v({absolute:Boolean,active:{type:Boolean,default:!0},bgColor:String,bgOpacity:[Number,String],bufferValue:{type:[Number,String],default:0},bufferColor:String,bufferOpacity:[Number,String],clickable:Boolean,color:String,height:{type:[Number,String],default:4},indeterminate:Boolean,max:{type:[Number,String],default:100},modelValue:{type:[Number,String],default:0},opacity:[Number,String],reverse:Boolean,stream:Boolean,striped:Boolean,roundedBar:Boolean,...re(),...Re({location:"top"}),...ie(),...pe(),...ue()},"VProgressLinear"),Xe=q()({name:"VProgressLinear",props:Ve(),emits:{"update:modelValue":e=>!0},setup(e,t){var $;let{slots:a}=t;const n=ce(e,"modelValue"),{isRtl:u,rtlClasses:s}=X(),{themeClasses:l}=de(e),{locationStyles:r}=_e(e),{textColorClasses:o,textColorStyles:g}=fe(e,"color"),{backgroundColorClasses:h,backgroundColorStyles:f}=_(i(()=>e.bgColor||e.color)),{backgroundColorClasses:y,backgroundColorStyles:C}=_(i(()=>e.bufferColor||e.bgColor||e.color)),{backgroundColorClasses:L,backgroundColorStyles:T}=_(e,"color"),{roundedClasses:z}=ve(e),{intersectionRef:p,isIntersecting:W}=Be(),P=i(()=>parseFloat(e.max)),m=i(()=>parseFloat(e.height)),x=i(()=>E(parseFloat(e.bufferValue)/P.value*100,0,100)),B=i(()=>E(parseFloat(n.value)/P.value*100,0,100)),k=i(()=>u.value!==e.reverse),Z=i(()=>e.indeterminate?"fade-transition":"slide-x-transition"),S=j&&(($=window.matchMedia)==null?void 0:$.call(window,"(forced-colors: active)").matches);function Q(b){if(!p.value)return;const{left:G,right:H,width:R}=p.value.getBoundingClientRect(),J=k.value?R-b.clientX+(H-R):b.clientX-G;n.value=Math.round(J/R*P.value)}return ge(()=>c(e.tag,{ref:p,class:["v-progress-linear",{"v-progress-linear--absolute":e.absolute,"v-progress-linear--active":e.active&&W.value,"v-progress-linear--reverse":k.value,"v-progress-linear--rounded":e.rounded,"v-progress-linear--rounded-bar":e.roundedBar,"v-progress-linear--striped":e.striped},z.value,l.value,s.value,e.class],style:[{bottom:e.location==="bottom"?0:void 0,top:e.location==="top"?0:void 0,height:e.active?d(m.value):0,"--v-progress-linear-height":d(m.value),...e.absolute?r.value:{}},e.style],role:"progressbar","aria-hidden":e.active?"false":"true","aria-valuemin":"0","aria-valuemax":e.max,"aria-valuenow":e.indeterminate?void 0:B.value,onClick:e.clickable&&Q},{default:()=>[e.stream&&c("div",{key:"stream",class:["v-progress-linear__stream",o.value],style:{...g.value,[k.value?"left":"right"]:d(-m.value),borderTop:`${d(m.value/2)} dotted`,opacity:parseFloat(e.bufferOpacity),top:`calc(50% - ${d(m.value/4)})`,width:d(100-x.value,"%"),"--v-progress-linear-stream-to":d(m.value*(k.value?1:-1))}},null),c("div",{class:["v-progress-linear__background",S?void 0:h.value],style:[f.value,{opacity:parseFloat(e.bgOpacity),width:e.stream?0:void 0}]},null),c("div",{class:["v-progress-linear__buffer",S?void 0:y.value],style:[C.value,{opacity:parseFloat(e.bufferOpacity),width:d(x.value,"%")}]},null),c(me,{name:Z.value},{default:()=>[e.indeterminate?c("div",{class:"v-progress-linear__indeterminate"},[["long","short"].map(b=>c("div",{key:b,class:["v-progress-linear__indeterminate",b,S?void 0:L.value],style:T.value},null))]):c("div",{class:["v-progress-linear__determinate",S?void 0:L.value],style:[T.value,{width:d(B.value,"%")}]},null)]}),a.default&&c("div",{class:"v-progress-linear__content"},[a.default({value:B.value,buffer:x.value})])]})),{}}}),we=["static","relative","fixed","absolute","sticky"],je=v({position:{type:String,validator:e=>we.includes(e)}},"position");function Ue(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:M();return{positionClasses:i(()=>e.position?`${t}--${e.position}`:void 0)}}function Oe(){const e=U("useRoute");return i(()=>{var t;return(t=e==null?void 0:e.proxy)==null?void 0:t.$route})}function Ye(){var e,t;return(t=(e=U("useRouter"))==null?void 0:e.proxy)==null?void 0:t.$router}function ze(e,t){var g,h;const a=be("RouterLink"),n=i(()=>!!(e.href||e.to)),u=i(()=>(n==null?void 0:n.value)||F(t,"click")||F(e,"click"));if(typeof a=="string"||!("useLink"in a))return{isLink:n,isClickable:u,href:I(e,"href")};const s=i(()=>({...e,to:I(()=>e.to||"")})),l=a.useLink(s.value),r=i(()=>e.to?l:void 0),o=Oe();return{isLink:n,isClickable:u,route:(g=r.value)==null?void 0:g.route,navigate:(h=r.value)==null?void 0:h.navigate,isActive:i(()=>{var f,y,C;return r.value?e.exact?o.value?((C=r.value.isExactActive)==null?void 0:C.value)&&he(r.value.route.value.query,o.value.query):((y=r.value.isExactActive)==null?void 0:y.value)??!1:((f=r.value.isActive)==null?void 0:f.value)??!1:!1}),href:i(()=>{var f;return e.to?(f=r.value)==null?void 0:f.route.value.href:e.href})}}const We=v({href:String,replace:Boolean,to:[String,Object],exact:Boolean},"router");let V=!1;function Ze(e,t){let a=!1,n,u;j&&(ye(()=>{window.addEventListener("popstate",s),n=e==null?void 0:e.beforeEach((l,r,o)=>{V?a?t(o):o():setTimeout(()=>a?t(o):o()),V=!0}),u=e==null?void 0:e.afterEach(()=>{V=!1})}),Ce(()=>{window.removeEventListener("popstate",s),n==null||n(),u==null||u()}));function s(l){var r;(r=l.state)!=null&&r.replaced||(a=!0,setTimeout(()=>a=!1))}}export{qe as V,De as a,We as b,ze as c,Fe as d,Ie as e,Re as f,Ae as g,je as h,Ue as i,Xe as j,Te as k,$e as l,pe as m,Ne as n,Ee as o,Se as p,Ye as q,Ze as r,Be as s,_e as t,Me as u};
@@ -0,0 +1,339 @@
1
+ {
2
+ "type": "object",
3
+ "required": ["datasets"],
4
+ "allOf": [
5
+ {
6
+ "title": "Source de données",
7
+ "properties": {
8
+ "datasets": {
9
+ "type": "array",
10
+ "items": [
11
+ {
12
+ "title": "Jeu de données",
13
+ "description": "Ce jeu doit contenir au moins un champ avec le concept de date",
14
+ "type": "object",
15
+ "x-fromUrl": "api/v1/datasets?status=finalized&q={q}&select=title,isRest,schema,timePeriod,attachmentsAsImage,userPermissions&{context.datasetFilter}&short-concept=date,startDate,endDate&size=100",
16
+ "x-itemsProp": "results",
17
+ "x-itemTitle": "title",
18
+ "x-itemKey": "href",
19
+ "additionalProperties": false,
20
+ "properties": {
21
+ "href": { "type": "string" },
22
+ "title": { "type": "string" },
23
+ "isRest": { "type": "boolean" },
24
+ "schema": { "type": "array" },
25
+ "timePeriod": { "type": "object" },
26
+ "attachmentsAsImage": { "type": "boolean" },
27
+ "userPermissions": { "type": "array" }
28
+ }
29
+ },
30
+ {
31
+ "$ref": "#/definitions/contribsDataset"
32
+ }
33
+ ]
34
+ }
35
+ }
36
+ },
37
+ {
38
+ "title": "Affichage",
39
+ "description": "Gérer l'affichage du calendrier",
40
+ "properties": {
41
+ "labelField": {
42
+ "type": "object",
43
+ "title": "Champ de libellé",
44
+ "description": "Choisissez le champ représentant le libellé d'un événement.",
45
+ "x-fromUrl": "{datasets.0.href}/schema?calculated=false",
46
+ "x-itemTitle": "label",
47
+ "x-itemKey": "key"
48
+ },
49
+ "color": {
50
+ "type": "object",
51
+ "title": "Réglage des couleurs",
52
+ "required": ["type"],
53
+ "oneOf": [
54
+ {
55
+ "title": "Calendrier multicolore",
56
+ "additionalProperties": false,
57
+ "required": ["field"],
58
+ "properties": {
59
+ "type": {
60
+ "const": "multicolor"
61
+ },
62
+ "field": {
63
+ "type": "string",
64
+ "title": "Champ de catégorie",
65
+ "description": "Choisissez le champ permettant de distinguer les catégories d'événements suivant des couleurs distinctes.",
66
+ "x-fromUrl": "{datasets.0.href}/schema?calculated=false",
67
+ "x-itemTitle": "category",
68
+ "x-itemKey": "key"
69
+ },
70
+ "colors": {
71
+ "type": "object",
72
+ "title": "Couleurs",
73
+ "oneOf": [
74
+ {
75
+ "title": "Palette précalculée",
76
+ "required": ["type", "name"],
77
+ "additionalProperties": false,
78
+ "properties": {
79
+ "type": {
80
+ "const": "palette"
81
+ },
82
+ "name": {
83
+ "title": "Palette",
84
+ "type": "string",
85
+ "oneOf": [
86
+ {
87
+ "const": "Accent",
88
+ "title": "Accent"
89
+ },
90
+ {
91
+ "const": "Dark2",
92
+ "title": "Foncé"
93
+ },
94
+ {
95
+ "const": "Paired",
96
+ "title": "Paires"
97
+ },
98
+ {
99
+ "const": "Set1",
100
+ "title": "Ensemble 1"
101
+ },
102
+ {
103
+ "const": "Set2",
104
+ "title": "Ensemble 2"
105
+ },
106
+ {
107
+ "const": "Set3",
108
+ "title": "Ensemble 3"
109
+ },
110
+ {
111
+ "const": "Pastel1",
112
+ "title": "Pastel 1"
113
+ },
114
+ {
115
+ "const": "Pastel2",
116
+ "title": "Pastel 2"
117
+ }
118
+ ],
119
+ "default": "Accent"
120
+ },
121
+ "offset": {
122
+ "type": "integer",
123
+ "title": "Décallage",
124
+ "default": 0
125
+ }
126
+ }
127
+ },
128
+ {
129
+ "title": "Palette personnalisée",
130
+ "required": ["type", "categories"],
131
+ "additionalProperties": false,
132
+ "properties": {
133
+ "type": {
134
+ "const": "manual"
135
+ },
136
+ "categories": {
137
+ "title": "Couleurs",
138
+ "type": "array",
139
+ "x-fromUrl": "{datasets.0.href}/values_agg?field={parent.parent.parent.value.field}&size=0&agg_size=15",
140
+ "x-display": "list",
141
+ "x-itemTitle": "value",
142
+ "x-itemKey": "value",
143
+ "x-itemsProp": "aggs",
144
+ "items": {
145
+ "type": "object",
146
+ "required": ["value"],
147
+ "additionalProperties": false,
148
+ "properties": {
149
+ "value": {
150
+ "type": "string",
151
+ "x-display": "hidden"
152
+ },
153
+ "color": {
154
+ "type": "string",
155
+ "title": "Couleur",
156
+ "format": "hexcolor",
157
+ "default": "#828282",
158
+ "x-display": "color-picker"
159
+ }
160
+ }
161
+ }
162
+ }
163
+ }
164
+ }
165
+ ],
166
+ "default": {
167
+ "type": "palette",
168
+ "name": "Accent",
169
+ "offset": 0
170
+ }
171
+ }
172
+ }
173
+ },
174
+ {
175
+ "title": "Calendrier monochrome",
176
+ "additionalProperties": false,
177
+ "properties": {
178
+ "type": {
179
+ "const": "monochrome"
180
+ },
181
+ "colors": {
182
+ "type": "object",
183
+ "title": "Couleur",
184
+ "required": ["type"],
185
+ "oneOf": [
186
+ {
187
+ "title": "Thème",
188
+ "additionalProperties": false,
189
+ "properties": {
190
+ "type": {
191
+ "const": "theme"
192
+ },
193
+ "strValue": {
194
+ "title": "Couleur",
195
+ "type": "string",
196
+ "oneOf": [
197
+ {
198
+ "const": "primary",
199
+ "title": "Primaire"
200
+ },
201
+ {
202
+ "const": "secondary",
203
+ "title": "Secondaire"
204
+ }
205
+ ]
206
+ }
207
+ }
208
+ },
209
+ {
210
+ "title": "Personnalisée",
211
+ "additionalProperties": false,
212
+ "properties": {
213
+ "type": {
214
+ "const": "custom"
215
+ },
216
+ "hexValue": {
217
+ "type": "string",
218
+ "title": "Couleur",
219
+ "format": "hexcolor",
220
+ "default": "#828282",
221
+ "x-display": "color-picker"
222
+ }
223
+ }
224
+ }
225
+ ],
226
+ "default": {
227
+ "type": "theme",
228
+ "strValue": "primary"
229
+ }
230
+ }
231
+ }
232
+ }
233
+ ],
234
+ "default": {
235
+ "type": "monochrome"
236
+ }
237
+ }
238
+ }
239
+ },
240
+ {
241
+ "title": "Détails d'un événement",
242
+ "description": "Gérer le contenu de l'affichage lors du clic sur un événement",
243
+ "properties": {
244
+ "descriptionField": {
245
+ "type": "object",
246
+ "title": "Champ de description",
247
+ "description": "Choisissez le champ permettant de fournir une description de l'événement, interprète le html et le markdown.",
248
+ "x-fromUrl": "{datasets.0.href}/schema?calculated=false",
249
+ "x-itemTitle": "title",
250
+ "x-itemKey": "key"
251
+ },
252
+ "additionalFields": {
253
+ "title": "Champs supplémentaires à afficher.",
254
+ "type": "array",
255
+ "x-fromUrl": "{datasets.0.href}/schema?calculated=false",
256
+ "x-itemTitle": "label",
257
+ "x-itemKey": "key",
258
+ "items": {
259
+ "type": "string"
260
+ }
261
+ }
262
+ }
263
+ },
264
+ {
265
+ "title": "Edition",
266
+ "x-if": "datasets.0.isRest",
267
+ "properties": {
268
+ "formDensity": {
269
+ "title": "Densité du formulaire",
270
+ "type": "string",
271
+ "oneOf": [
272
+ { "const": "default", "title": "Normale" },
273
+ { "const": "compact", "title": "Compacte" },
274
+ { "const": "comfortable", "title": "Aérée" }
275
+ ],
276
+ "default": "default"
277
+ },
278
+ "formVariant": {
279
+ "title": "Style du formulaire",
280
+ "type": "string",
281
+ "oneOf": [
282
+ { "const": "outlined", "title": "Bordure" },
283
+ { "const": "underlined", "title": "Souligné" },
284
+ { "const": "filled", "title": "Rempli" },
285
+ { "const": "solo", "title": "Solo" },
286
+ { "const": "solo-inverted", "title": "Solo inversé" },
287
+ { "const": "solo-filled", "title": "Solo rempli" }
288
+ ],
289
+ "default": "underlined"
290
+ },
291
+ "showHelpMessages": {
292
+ "type": "boolean",
293
+ "title": "Afficher les descriptions des champs en bulles d'aide",
294
+ "default": false
295
+ },
296
+ "crowdSourcing": {
297
+ "type": "boolean",
298
+ "title": "Activer le crowd sourcing"
299
+ },
300
+ "contribsDataset": {
301
+ "$ref": "#/definitions/contribsDataset"
302
+ },
303
+ "deleteModeratedContribs": {
304
+ "title": "Supprimer les contributions après validation ou refus",
305
+ "type": "boolean",
306
+ "default": false,
307
+ "x-if": "parent.value.crowdSourcing"
308
+ },
309
+ "colorContrib": {
310
+ "x-if": "parent.value.crowdSourcing",
311
+ "type": "string",
312
+ "title": "Couleur",
313
+ "format": "hexcolor",
314
+ "default": "#7AA95C",
315
+ "x-display": "color-picker"
316
+ }
317
+ }
318
+ }
319
+ ],
320
+ "definitions": {
321
+ "contribsDataset": {
322
+ "title": "Jeu de données des contributions externes",
323
+ "x-if": "crowdSourcing",
324
+ "type": "object",
325
+ "x-fromUrl": "api/v1/datasets?rest=true&q={q}&select=title,schema,timePeriod,userPermissions&{context.datasetFilter}&short-concept=startDate,endDate&size=100",
326
+ "x-itemsProp": "results",
327
+ "x-itemTitle": "title",
328
+ "x-itemKey": "href",
329
+ "additionalProperties": false,
330
+ "properties": {
331
+ "href": { "type": "string" },
332
+ "title": { "type": "string" },
333
+ "schema": { "type": "array" },
334
+ "timePeriod": { "type": "object" },
335
+ "userPermissions": { "type": "array" }
336
+ }
337
+ }
338
+ }
339
+ }
Binary file
@@ -0,0 +1,26 @@
1
+ <!DOCTYPE html>
2
+ <html lang="fr">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <meta name="x-capture" content="trigger" />
7
+ <meta name="df:sync-state" content="true">
8
+ <meta name="df:filter-concepts" content="false">
9
+ <meta name="df:overflow" content="true">
10
+ <meta name="thumbnail" content="thumbnail.png" />
11
+ <meta name="{VERSION}" content="trigger" />
12
+ <meta name="application-name" content="Application Calendrier">
13
+ <meta name="description" lang="fr" content="Une application de type calendrier">
14
+ <meta name="keywords" lang="fr" content="Calendrier">
15
+ <title lang="fr">Calendrier</title>
16
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Nunito:300,400,500,700,400italic" />
17
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@mdi/font@7.x/css/materialdesignicons.min.css" />
18
+ <!-- Capture a global variable defined by data-fair's reverse proxy. -->
19
+ <script type="text/javascript">window.APPLICATION=%APPLICATION%;</script>
20
+ <script type="module" crossorigin src="https://cdn.jsdelivr.net/npm/@data-fair/app-calendar@1.0.0/dist/assets/index-CAAiDM5V.js"></script>
21
+ <link rel="stylesheet" crossorigin href="https://cdn.jsdelivr.net/npm/@data-fair/app-calendar@1.0.0/dist/assets/index-CJongqRm.css">
22
+ </head>
23
+ <body>
24
+ <div id="app"></div>
25
+ </body>
26
+ </html>
Binary file
package/package.json ADDED
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "@data-fair/app-calendar",
3
+ "version": "1.0.0",
4
+ "type": "module",
5
+ "scripts": {
6
+ "dev": "APP_URL=http://localhost:3000/app/ df-dev-server",
7
+ "dev-src": "vite",
8
+ "build": "PUBLIC_URL=https://cdn.jsdelivr.net/npm/@data-fair/app-calendar@${npm_package_version}/dist vite build",
9
+ "build-test": "PUBLIC_URL=https://staging-koumoul.com/apps/calendar/master/ vite build",
10
+ "preview": "vite preview",
11
+ "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs --fix --ignore-path .gitignore"
12
+ },
13
+ "files": [
14
+ "dist"
15
+ ],
16
+ "browserslist": [
17
+ "> 1%",
18
+ "last 2 versions",
19
+ "not dead",
20
+ "not ie 11"
21
+ ],
22
+ "dependencies": {
23
+ "@data-fair/lib": "^0.37.0",
24
+ "@fullcalendar/core": "^6.1.10",
25
+ "@fullcalendar/daygrid": "^6.1.10",
26
+ "@fullcalendar/interaction": "^6.1.10",
27
+ "@fullcalendar/list": "^6.1.14",
28
+ "@fullcalendar/timegrid": "^6.1.10",
29
+ "@fullcalendar/vue3": "^6.1.10",
30
+ "@koumoul/vjsf": "^3.0.0-beta.8",
31
+ "@koumoul/vjsf-markdown": "^0.2.1",
32
+ "@vueuse/core": "^10.7.2",
33
+ "@vueuse/integrations": "^11.0.3",
34
+ "chroma-js": "^2.4.2",
35
+ "dayjs": "^1.11.13",
36
+ "fast-diff": "^1.3.0",
37
+ "jwt-decode": "^4.0.0",
38
+ "ofetch": "^1.3.4",
39
+ "universal-cookie": "^7.2.0",
40
+ "vue": "^3.4.29",
41
+ "vuetify": "^3.5.4"
42
+ },
43
+ "devDependencies": {
44
+ "@data-fair/dev-server": "^1.12.0",
45
+ "@vitejs/plugin-vue": "^5.0.5",
46
+ "eslint": "^8.57.0",
47
+ "eslint-config-standard": "^17.1.0",
48
+ "eslint-plugin-import": "^2.29.1",
49
+ "eslint-plugin-vue": "^9.26.0",
50
+ "sass": "^1.77.6",
51
+ "vite": "^5.3.1",
52
+ "vite-plugin-vuetify": "^2.0.1"
53
+ }
54
+ }