@tekkare/auriga 0.1.130 → 0.1.132

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.
package/dist/module.json CHANGED
@@ -4,5 +4,5 @@
4
4
  "compatibility": {
5
5
  "nuxt": "^3.0.0"
6
6
  },
7
- "version": "0.1.130"
7
+ "version": "0.1.132"
8
8
  }
@@ -112,18 +112,25 @@ export default defineComponent({
112
112
  const rect = element.getBoundingClientRect();
113
113
  return rect.top <= getElementPosition("chapter_menu") + headerHeight.value;
114
114
  }
115
- function selectChapter(index, anchorId) {
116
- document.removeEventListener("scroll", scrollChapters);
117
- activeChapter.value = index;
118
- setBarPosition();
119
- const targetElement = document.getElementById(anchorId);
120
- if (targetElement) {
121
- const targetPosition = targetElement.offsetTop - headerHeight.value;
122
- window.scrollTo({ top: targetPosition, behavior: "smooth" });
123
- }
124
- setTimeout(() => {
125
- document.addEventListener("scroll", scrollChapters);
126
- }, 2e3);
115
+ function removeEvent(index, anchor, callback) {
116
+ return new Promise((resolve) => {
117
+ document.removeEventListener("scroll", scrollChapters);
118
+ activeChapter.value = index;
119
+ setBarPosition();
120
+ const targetElement = document.getElementById(anchor);
121
+ if (targetElement) {
122
+ const targetPosition = targetElement.offsetTop - headerHeight.value;
123
+ window.scrollTo({ top: targetPosition, behavior: "smooth" });
124
+ }
125
+ resolve();
126
+ });
127
+ }
128
+ async function selectChapter(index, anchorId) {
129
+ await removeEvent(index, anchorId).then(() => {
130
+ setTimeout(() => {
131
+ document.addEventListener("scroll", scrollChapters);
132
+ }, 1e3);
133
+ });
127
134
  }
128
135
  function setBarPosition() {
129
136
  const selector = document?.getElementById(`chapters_nav_bar`);
@@ -17,7 +17,7 @@ declare const _default: import("vue").DefineComponent<{
17
17
  value: null;
18
18
  };
19
19
  }, {
20
- selectChapter: (index: number, anchorId: string) => void;
20
+ selectChapter: (index: number, anchorId: string) => Promise<void>;
21
21
  activeChapter: import("vue").Ref<any>;
22
22
  headerHeight: import("vue").Ref<number>;
23
23
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "onClose"[], "onClose", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -0,0 +1,479 @@
1
+ <!-- eslint-disable vue/attribute-hyphenation -->
2
+ <!-- eslint-disable vue/max-attributes-per-line -->
3
+ <template>
4
+ <div>
5
+ <argBtn
6
+ prefixIcon="FileXls"
7
+ :btn-style="style"
8
+ :loading="isLoading"
9
+ @click="launchDownload"
10
+ >
11
+ {{ name }}
12
+ </argBtn>
13
+ </div>
14
+ </template>
15
+
16
+ <script>
17
+ import argBtn from "./argBtn.vue";
18
+ import XLSX from "xlsx-js-style";
19
+ import { ref, defineComponent } from "vue";
20
+ export default defineComponent({
21
+ name: "ArgExportXLSX",
22
+ components: { argBtn },
23
+ props: {
24
+ name: {
25
+ type: String,
26
+ default: "Export"
27
+ },
28
+ title: {
29
+ type: String,
30
+ require: true,
31
+ default: "export-tekkare"
32
+ },
33
+ kpi: {
34
+ type: Array,
35
+ default: null
36
+ },
37
+ subtitle: {
38
+ type: String,
39
+ require: false,
40
+ default: null
41
+ },
42
+ sources: {
43
+ type: Array,
44
+ require: true,
45
+ default: () => ["Source"]
46
+ },
47
+ worksheets: {
48
+ type: Array,
49
+ require: true,
50
+ default: null
51
+ },
52
+ isCustom: {
53
+ type: Boolean,
54
+ default: false
55
+ },
56
+ beforeExport: {
57
+ type: Function,
58
+ default: () => null
59
+ },
60
+ style: {
61
+ type: String,
62
+ default: "primary-fill"
63
+ },
64
+ lang: {
65
+ type: String,
66
+ default: "en",
67
+ validator: (value) => {
68
+ return ["en", "fr"].includes(value);
69
+ }
70
+ }
71
+ },
72
+ setup(props) {
73
+ const isLoading = ref(false);
74
+ const launchDownload = async () => {
75
+ isLoading.value = true;
76
+ if (props.beforeExport !== null) {
77
+ await props.beforeExport();
78
+ }
79
+ const workbook = XLSX.utils.book_new();
80
+ setUpCoverPage(workbook);
81
+ let formattedWorksheets = null;
82
+ if (!props.isCustom) {
83
+ formattedWorksheets = (props.worksheets || []).map((worksheet) => {
84
+ return {
85
+ name: worksheet.name,
86
+ value: XLSX.utils.json_to_sheet(worksheet.value),
87
+ sizes: worksheet.sizes,
88
+ formatToNumber: worksheet.formatToNumber,
89
+ formatToPourcent: worksheet.formatToPourcent
90
+ };
91
+ });
92
+ } else {
93
+ formattedWorksheets = props.worksheets;
94
+ }
95
+ if (formattedWorksheets) {
96
+ formattedWorksheets.forEach((worksheet) => {
97
+ XLSX.utils.book_append_sheet(
98
+ workbook,
99
+ worksheet.value,
100
+ worksheet.name
101
+ );
102
+ if (worksheet.sizes && worksheet.sizes.length > 0) {
103
+ const columnSizes = worksheet.sizes.map((column) => ({
104
+ wch: column
105
+ }));
106
+ worksheet.value["!cols"] = columnSizes;
107
+ }
108
+ applyColumnHeaderStyle(worksheet);
109
+ formatCells(worksheet);
110
+ });
111
+ }
112
+ XLSX.writeFile(
113
+ workbook,
114
+ `${props.title}-from_${(/* @__PURE__ */ new Date()).toLocaleString([], {
115
+ dateStyle: "short"
116
+ })}.xlsx`
117
+ );
118
+ isLoading.value = false;
119
+ };
120
+ const applyColumnHeaderStyle = (worksheet) => {
121
+ for (let lettre = 65; lettre <= 90; lettre++) {
122
+ const cellule = String.fromCharCode(lettre) + 1;
123
+ if (worksheet.value[cellule]) {
124
+ worksheet.value[cellule].s = { font: { bold: true, sz: 12 } };
125
+ }
126
+ }
127
+ };
128
+ const formatCells = (worksheet) => {
129
+ if (worksheet.formatToNumber && worksheet.formatToNumber.length > 0) {
130
+ worksheet.formatToNumber.forEach((column) => {
131
+ for (let chiffre = 1; chiffre < Object.keys(worksheet.value).length; chiffre++) {
132
+ const cellule = `${column}${chiffre}`;
133
+ if (worksheet.value[cellule]) {
134
+ worksheet.value[cellule].z = worksheet.value[cellule].v > 1e3 ? "#,##0" : "#,##0.00";
135
+ }
136
+ }
137
+ });
138
+ }
139
+ if (worksheet.formatToPourcent && worksheet.formatToPourcent.length > 0) {
140
+ worksheet.formatToPourcent.forEach((column) => {
141
+ for (let chiffre = 1; chiffre < Object.keys(worksheet.value).length; chiffre++) {
142
+ const cellule = `${column}${chiffre}`;
143
+ if (worksheet.value[cellule]) {
144
+ worksheet.value[cellule].z = "0.00%";
145
+ }
146
+ }
147
+ });
148
+ }
149
+ };
150
+ const setUpCoverPage = (workbook) => {
151
+ const pageData = [];
152
+ const emptyObject = {};
153
+ const style = {
154
+ border: {
155
+ top: { style: "dotted", color: { rgb: "FFFFFF" } },
156
+ left: { style: "dotted", color: { rgb: "FFFFFF" } },
157
+ right: { style: "dotted", color: { rgb: "FFFFFF" } },
158
+ bottom: { style: "dotted", color: { rgb: "FFFFFF" } }
159
+ }
160
+ };
161
+ const firstRowStyle = {
162
+ font: {
163
+ bold: true,
164
+ sz: 14
165
+ },
166
+ border: {
167
+ top: { style: "dotted", color: { rgb: "FFFFFF" } },
168
+ left: { style: "dotted", color: { rgb: "FFFFFF" } },
169
+ right: { style: "dotted", color: { rgb: "FFFFFF" } },
170
+ bottom: { style: "dotted", color: { rgb: "FFFFFF" } }
171
+ }
172
+ };
173
+ const kpiStyle = {
174
+ font: {
175
+ color: { rgb: "525670" },
176
+ name: "Figtree",
177
+ sz: 16,
178
+ italic: true
179
+ },
180
+ border: {
181
+ top: { color: { rgb: "FFFFFF" } },
182
+ left: { color: { rgb: "FFFFFF" } },
183
+ right: { color: { rgb: "FFFFFF" } },
184
+ bottom: { color: { rgb: "FFFFFF" } }
185
+ },
186
+ alignment: {
187
+ vertical: "center",
188
+ horizontal: "center"
189
+ }
190
+ };
191
+ const kpiBoldStyle = {
192
+ font: {
193
+ name: "Figtree",
194
+ sz: 18,
195
+ bold: true
196
+ },
197
+ border: {
198
+ top: { color: { rgb: "FFFFFF" } },
199
+ left: { color: { rgb: "FFFFFF" } },
200
+ right: { color: { rgb: "FFFFFF" } },
201
+ bottom: { color: { rgb: "FFFFFF" } }
202
+ },
203
+ alignment: {
204
+ vertical: "center",
205
+ horizontal: "center"
206
+ }
207
+ };
208
+ for (let i = 0; i < 26; i++) {
209
+ emptyObject[i] = " ";
210
+ }
211
+ for (let i = 0; i < 60; i++) {
212
+ pageData.push({ ...emptyObject });
213
+ }
214
+ const pageDeGarde = XLSX.utils.json_to_sheet(pageData);
215
+ XLSX.utils.book_append_sheet(workbook, pageDeGarde, `Tekkare`);
216
+ pageDeGarde["!cols"] = [
217
+ { wch: 10 },
218
+ { wch: 10 },
219
+ { wch: 10 },
220
+ { wch: 10 },
221
+ { wch: 50 },
222
+ { wch: 50 }
223
+ ];
224
+ XLSX.utils.sheet_add_aoa(
225
+ pageDeGarde,
226
+ [
227
+ [
228
+ `This document was generated on ${(/* @__PURE__ */ new Date()).toLocaleString([], {
229
+ dateStyle: "short"
230
+ })} by`
231
+ ]
232
+ ],
233
+ {
234
+ origin: "E5"
235
+ }
236
+ );
237
+ XLSX.utils.sheet_add_aoa(pageDeGarde, [["Tekkare \u{1F49C}"]], {
238
+ origin: "E7"
239
+ });
240
+ XLSX.utils.sheet_add_aoa(
241
+ pageDeGarde,
242
+ [[`Your export currently contains :`]],
243
+ {
244
+ origin: "E11"
245
+ }
246
+ );
247
+ let currentRow = 26;
248
+ props.sources.forEach((source) => {
249
+ XLSX.utils.sheet_add_aoa(pageDeGarde, [[`${source}`]], {
250
+ origin: `E${currentRow}`
251
+ });
252
+ pageDeGarde[`E${currentRow}`].s = {
253
+ font: {
254
+ name: "Figtree",
255
+ sz: 18
256
+ },
257
+ border: {
258
+ top: { style: "dotted", color: { rgb: "FFFFFF" } },
259
+ left: { style: "dotted", color: { rgb: "FFFFFF" } },
260
+ right: { style: "dotted", color: { rgb: "FFFFFF" } },
261
+ bottom: { style: "dotted", color: { rgb: "FFFFFF" } }
262
+ },
263
+ alignment: {
264
+ vertical: "center",
265
+ horizontal: "center"
266
+ }
267
+ };
268
+ currentRow++;
269
+ });
270
+ XLSX.utils.sheet_add_aoa(
271
+ pageDeGarde,
272
+ [
273
+ [
274
+ "",
275
+ "",
276
+ "",
277
+ "",
278
+ "",
279
+ "",
280
+ "",
281
+ "",
282
+ "",
283
+ "",
284
+ "",
285
+ "",
286
+ "",
287
+ "",
288
+ "",
289
+ "",
290
+ "",
291
+ "",
292
+ "",
293
+ "",
294
+ "",
295
+ "",
296
+ "",
297
+ "",
298
+ "",
299
+ "",
300
+ "",
301
+ "",
302
+ "",
303
+ ""
304
+ ]
305
+ ],
306
+ {
307
+ origin: "A1"
308
+ }
309
+ );
310
+ if (props.kpi !== null && props.kpi !== void 0) {
311
+ XLSX.utils.sheet_add_aoa(
312
+ pageDeGarde,
313
+ [
314
+ props.kpi[1] !== null && props.kpi[1] !== void 0 ? [`${props.kpi[0].value}`, `${props.kpi[1].value}`] : [`${props.kpi[0].value}`]
315
+ ],
316
+ {
317
+ origin: "E14"
318
+ }
319
+ );
320
+ XLSX.utils.sheet_add_aoa(
321
+ pageDeGarde,
322
+ [
323
+ props.kpi[1] !== null && props.kpi[1] !== void 0 ? [`${props.kpi[0].label}`, `${props.kpi[1].label}`] : [`${props.kpi[0].label}`]
324
+ ],
325
+ {
326
+ origin: "E15"
327
+ }
328
+ );
329
+ }
330
+ if (props.kpi !== null && props.kpi !== void 0 && props.kpi.length > 2) {
331
+ XLSX.utils.sheet_add_aoa(
332
+ pageDeGarde,
333
+ [
334
+ props.kpi[3] !== null && props.kpi[3] !== void 0 ? [`${props.kpi[2].value}`, `${props.kpi[3].value}`] : [`${props.kpi[2].value}`]
335
+ ],
336
+ {
337
+ origin: "E18"
338
+ }
339
+ );
340
+ XLSX.utils.sheet_add_aoa(
341
+ pageDeGarde,
342
+ [
343
+ props.kpi[3] !== null && props.kpi[3] !== void 0 ? [`${props.kpi[2].label}`, `${props.kpi[3].label}`] : [`${props.kpi[2].label}`]
344
+ ],
345
+ {
346
+ origin: "E19"
347
+ }
348
+ );
349
+ }
350
+ if (props.subtitle !== null && props.subtitle !== void 0) {
351
+ XLSX.utils.sheet_add_aoa(pageDeGarde, [[props.subtitle]], {
352
+ origin: "E23"
353
+ });
354
+ }
355
+ for (let lettre = 65; lettre <= 90; lettre++) {
356
+ for (let chiffre = 1; chiffre < 60; chiffre++) {
357
+ const cellule = String.fromCharCode(lettre) + chiffre;
358
+ if (String.fromCharCode(lettre) === "1") {
359
+ pageDeGarde[cellule].s = firstRowStyle;
360
+ } else {
361
+ pageDeGarde[cellule].s = style;
362
+ }
363
+ }
364
+ }
365
+ pageDeGarde["E7"].s = {
366
+ font: {
367
+ name: "Figtree",
368
+ sz: 72,
369
+ bold: true
370
+ },
371
+ alignment: {
372
+ vertical: "center",
373
+ horizontal: "center"
374
+ },
375
+ border: {
376
+ top: { color: { rgb: "FFFFFF" } },
377
+ left: { color: { rgb: "FFFFFF" } },
378
+ right: { color: { rgb: "FFFFFF" } },
379
+ bottom: { color: { rgb: "FFFFFF" } }
380
+ }
381
+ };
382
+ const smallStyle = {
383
+ font: {
384
+ name: "Figtree",
385
+ sz: 18
386
+ },
387
+ border: {
388
+ top: { color: { rgb: "FFFFFF" } },
389
+ left: { color: { rgb: "FFFFFF" } },
390
+ right: { color: { rgb: "FFFFFF" } },
391
+ bottom: { color: { rgb: "FFFFFF" } }
392
+ }
393
+ };
394
+ pageDeGarde["E5"].s = {
395
+ font: {
396
+ name: "Figtree",
397
+ sz: 14
398
+ },
399
+ border: {
400
+ top: { color: { rgb: "FFFFFF" } },
401
+ left: { color: { rgb: "FFFFFF" } },
402
+ right: { color: { rgb: "FFFFFF" } },
403
+ bottom: { color: { rgb: "FFFFFF" } }
404
+ },
405
+ alignment: {
406
+ vertical: "center",
407
+ horizontal: "center"
408
+ }
409
+ };
410
+ pageDeGarde["E11"].s = {
411
+ ...smallStyle,
412
+ alignment: {
413
+ horizontal: "center"
414
+ }
415
+ };
416
+ pageDeGarde["E23"].s = {
417
+ font: {
418
+ name: "Figtree",
419
+ sz: 16
420
+ },
421
+ border: {
422
+ top: { style: "dotted", color: { rgb: "FFFFFF" } },
423
+ left: { style: "dotted", color: { rgb: "FFFFFF" } },
424
+ right: { style: "dotted", color: { rgb: "FFFFFF" } },
425
+ bottom: { style: "dotted", color: { rgb: "FFFFFF" } }
426
+ },
427
+ alignment: {
428
+ vertical: "center",
429
+ horizontal: "center"
430
+ }
431
+ };
432
+ pageDeGarde["E14"].s = kpiBoldStyle;
433
+ pageDeGarde["E15"].s = kpiStyle;
434
+ pageDeGarde["F14"].s = kpiBoldStyle;
435
+ pageDeGarde["F15"].s = kpiStyle;
436
+ pageDeGarde["E18"].s = kpiBoldStyle;
437
+ pageDeGarde["E19"].s = kpiStyle;
438
+ pageDeGarde["F18"].s = kpiBoldStyle;
439
+ pageDeGarde["F19"].s = kpiStyle;
440
+ for (let row = 26; row <= 40; row++) {
441
+ pageDeGarde[`E${row}`].s = {
442
+ font: {
443
+ name: "Figtree",
444
+ sz: 16
445
+ },
446
+ border: {
447
+ top: { style: "dotted", color: { rgb: "FFFFFF" } },
448
+ left: { style: "dotted", color: { rgb: "FFFFFF" } },
449
+ right: { style: "dotted", color: { rgb: "FFFFFF" } },
450
+ bottom: { style: "dotted", color: { rgb: "FFFFFF" } }
451
+ },
452
+ alignment: {
453
+ vertical: "center",
454
+ horizontal: "center"
455
+ }
456
+ };
457
+ }
458
+ pageDeGarde["!merges"] = [
459
+ { s: { r: 6, c: 4 }, e: { r: 6, c: 5 } },
460
+ { s: { r: 10, c: 4 }, e: { r: 10, c: 5 } },
461
+ { s: { r: 22, c: 4 }, e: { r: 22, c: 5 } },
462
+ { s: { r: 4, c: 4 }, e: { r: 4, c: 5 } }
463
+ ];
464
+ props.sources.forEach((source, index) => {
465
+ pageDeGarde["!merges"].push({
466
+ s: { r: 25 + index, c: 4 },
467
+ e: { r: 25 + index, c: 5 }
468
+ });
469
+ });
470
+ };
471
+ return {
472
+ launchDownload,
473
+ isLoading
474
+ };
475
+ }
476
+ });
477
+ </script>
478
+
479
+ <style scoped></style>
@@ -0,0 +1,120 @@
1
+ import type { PropType } from "vue";
2
+ interface KPIContent {
3
+ label: string;
4
+ value: any;
5
+ }
6
+ interface WorksheetContent {
7
+ name: string;
8
+ value: any;
9
+ sizes?: number[];
10
+ formatToNumber?: string[];
11
+ formatToPourcent?: string[];
12
+ }
13
+ declare const _default: import("vue").DefineComponent<{
14
+ name: {
15
+ type: StringConstructor;
16
+ default: string;
17
+ };
18
+ title: {
19
+ type: StringConstructor;
20
+ require: boolean;
21
+ default: string;
22
+ };
23
+ kpi: {
24
+ type: PropType<KPIContent[]>;
25
+ default: null;
26
+ };
27
+ subtitle: {
28
+ type: StringConstructor;
29
+ require: boolean;
30
+ default: null;
31
+ };
32
+ sources: {
33
+ type: PropType<String[]>;
34
+ require: boolean;
35
+ default: () => string[];
36
+ };
37
+ worksheets: {
38
+ type: PropType<WorksheetContent[] | null>;
39
+ require: boolean;
40
+ default: null;
41
+ };
42
+ isCustom: {
43
+ type: BooleanConstructor;
44
+ default: boolean;
45
+ };
46
+ beforeExport: {
47
+ type: FunctionConstructor;
48
+ default: () => null;
49
+ };
50
+ style: {
51
+ type: StringConstructor;
52
+ default: string;
53
+ };
54
+ lang: {
55
+ type: StringConstructor;
56
+ default: string;
57
+ validator: (value: string) => boolean;
58
+ };
59
+ }, {
60
+ launchDownload: () => Promise<void>;
61
+ isLoading: import("vue").Ref<boolean>;
62
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
63
+ name: {
64
+ type: StringConstructor;
65
+ default: string;
66
+ };
67
+ title: {
68
+ type: StringConstructor;
69
+ require: boolean;
70
+ default: string;
71
+ };
72
+ kpi: {
73
+ type: PropType<KPIContent[]>;
74
+ default: null;
75
+ };
76
+ subtitle: {
77
+ type: StringConstructor;
78
+ require: boolean;
79
+ default: null;
80
+ };
81
+ sources: {
82
+ type: PropType<String[]>;
83
+ require: boolean;
84
+ default: () => string[];
85
+ };
86
+ worksheets: {
87
+ type: PropType<WorksheetContent[] | null>;
88
+ require: boolean;
89
+ default: null;
90
+ };
91
+ isCustom: {
92
+ type: BooleanConstructor;
93
+ default: boolean;
94
+ };
95
+ beforeExport: {
96
+ type: FunctionConstructor;
97
+ default: () => null;
98
+ };
99
+ style: {
100
+ type: StringConstructor;
101
+ default: string;
102
+ };
103
+ lang: {
104
+ type: StringConstructor;
105
+ default: string;
106
+ validator: (value: string) => boolean;
107
+ };
108
+ }>>, {
109
+ name: string;
110
+ lang: string;
111
+ title: string;
112
+ subtitle: string;
113
+ kpi: KPIContent[];
114
+ sources: String[];
115
+ worksheets: WorksheetContent[] | null;
116
+ isCustom: boolean;
117
+ beforeExport: Function;
118
+ style: string;
119
+ }, {}>;
120
+ export default _default;
@@ -121,5 +121,5 @@ export default defineComponent({
121
121
  </script>
122
122
 
123
123
  <style scoped>
124
- .justify-between{justify-content:space-between}.width-100{width:100%}.language_container{border:none;border-radius:4px;cursor:pointer;display:flex;flex-direction:column;padding:8px;position:relative;transition:background-color .3s linear,overflow .3s linear;z-index:99}.language_container.in-sidebar.open{border-bottom-right-radius:0!important;border-top-right-radius:0!important}.language_container.close{background-color:transparent;max-height:42px;overflow:hidden}.language_container.open{overflow:visible}.language_container.open,.language_container.open.in-sidebar:hover,.language_container:not(.in-sidebar):hover{background:#fdfdff}.language_container.open{box-shadow:5px 5px 5px rgba(62,63,94,.06)}.language_container.in-sidebar:hover{background:var(--light)}.language_container:hover svg{color:var(--primary)!important}.lang_choice_container{background-color:#fdfdff;border-top:none!important;border:none;border-radius:4px;box-shadow:5px 5px 5px rgba(62,63,94,.06);display:flex;flex-direction:column;gap:4px;padding:8px 16px;position:absolute;transition:max-height .3s linear,max-width .3s linear,opacity .3s ease}.lang_choice_container.is_one{border-bottom-left-radius:0!important}.lang_choice_container.in-sidebar{left:100%;top:50%;transform:translateY(-49%)}.lang_choice_container:not(.in-sidebar){border-top-left-radius:0!important;border-top-right-radius:0!important;left:0;right:0;top:32px}.lang_choice_container.in-sidebar.open{max-width:1000px;opacity:1}.lang_choice_container.in-sidebar.close{max-width:0;opacity:0}.lang_choice_container.open:not(.in-sidebar){max-height:100px;opacity:1}.lang_choice_container.close:not(.in-sidebar){max-height:0;opacity:0}.active_lang .lang_choice_container{border-top:none!important}.lang_choice:hover{color:var(--primary)!important}.lang_choice_icon{flex-shrink:0;transition:transform .3s}.icon-rotate{transform:rotate(-180deg)}p{font-size:14px;font-style:normal;font-weight:400;line-height:160%;white-space:nowrap}.lang-choice:hover p{color:var(--primary)!important}
124
+ .justify-between{justify-content:space-between}.width-100{width:100%}.language_container{border:none;border-radius:4px;cursor:pointer;display:flex;flex-direction:column;padding:8px;position:relative;transition:background-color .3s linear,overflow .3s linear;z-index:99}.language_container.in-sidebar.open{border-bottom-right-radius:0!important;border-top-right-radius:0!important}.language_container.close{background-color:transparent;max-height:42px;overflow:hidden}.language_container.open{overflow:visible}.language_container.open,.language_container.open.in-sidebar:hover,.language_container:not(.in-sidebar):hover{background:#fdfdff}.language_container.open{box-shadow:5px 5px 5px rgba(62,63,94,.06)}.language_container.in-sidebar:hover{background:var(--light)}.language_container:hover svg{color:var(--primary)!important}.lang_choice_container{background-color:#fdfdff;border-top:none!important;border:none;border-radius:4px;box-shadow:5px 5px 5px rgba(62,63,94,.06);display:flex;flex-direction:column;gap:4px;padding:8px 16px;position:absolute;transition:max-height .3s linear,max-width .3s linear,opacity .3s ease}.lang_choice_container.is_one{border-bottom-left-radius:0!important;border-top-left-radius:0!important}.lang_choice_container.in-sidebar{left:100%;top:50%;transform:translateY(-49%)}.lang_choice_container:not(.in-sidebar){border-top-left-radius:0!important;border-top-right-radius:0!important;left:0;right:0;top:32px}.lang_choice_container.in-sidebar.open{max-width:1000px;opacity:1}.lang_choice_container.in-sidebar.close{max-width:0;opacity:0}.lang_choice_container.open:not(.in-sidebar){max-height:100px;opacity:1}.lang_choice_container.close:not(.in-sidebar){max-height:0;opacity:0}.active_lang .lang_choice_container{border-top:none!important}.lang_choice:hover{color:var(--primary)!important}.lang_choice_icon{flex-shrink:0;transition:transform .3s}.icon-rotate{transform:rotate(-180deg)}p{font-size:14px;font-style:normal;font-weight:400;line-height:160%;white-space:nowrap}.lang-choice:hover p{color:var(--primary)!important}
125
125
  </style>
@@ -1,5 +1,6 @@
1
- declare module '@svg-maps/usa'
2
- declare module '@svg-maps/usa.counties'
3
- declare module '@svg-maps/france.regions'
4
- declare module '@svg-maps/france.departments'
5
- declare module '@svg-maps/world'
1
+ declare module "@svg-maps/usa";
2
+ declare module "@svg-maps/usa.counties";
3
+ declare module "@svg-maps/france.regions";
4
+ declare module "@svg-maps/france.departments";
5
+ declare module "@svg-maps/world";
6
+ declare module "xlsx-js-style";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tekkare/auriga",
3
- "version": "0.1.130",
3
+ "version": "0.1.132",
4
4
  "description": "Aurgia is a UI kit developped by Tekkare",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -40,7 +40,8 @@
40
40
  "save": "^2.9.0",
41
41
  "vue-apexcharts": "^1.6.2",
42
42
  "vue-svg-map": "^1.2.0",
43
- "vue3-apexcharts": "^1.4.4"
43
+ "vue3-apexcharts": "^1.4.4",
44
+ "xlsx-js-style": "^1.2.0"
44
45
  },
45
46
  "devDependencies": {
46
47
  "@nuxt/devtools": "latest",