@tekkare/auriga 0.1.16 → 0.1.18

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.16"
7
+ "version": "0.1.18"
8
8
  }
@@ -1,7 +1,6 @@
1
1
  <template>
2
- <client-only><arg-style /></client-only>
3
2
  <div>
4
- <div
3
+ <span
5
4
  v-if="onlyIcon === false"
6
5
  :class="
7
6
  `oip_${btnStyle}_button oip_btn ` +
@@ -26,8 +25,8 @@
26
25
  <div></div>
27
26
  </div>
28
27
  </span>
29
- </div>
30
- <div
28
+ </span>
29
+ <span
31
30
  v-if="becomeSmall === true || onlyIcon === true"
32
31
  :class="
33
32
  `oip_${btnStyle}_icon_button oip_btn ` +
@@ -48,7 +47,7 @@
48
47
  size="20px"
49
48
  :class="{ oip_button_is_loading: loading }"
50
49
  />
51
- </div>
50
+ </span>
52
51
  </div>
53
52
  </template>
54
53
 
@@ -6,10 +6,10 @@
6
6
  >
7
7
  <div class="oip_row v-center space-between full-width">
8
8
  <div class="oip_row v-center gap-8">
9
- <p class="filters_title">Filters</p>
9
+ <p class="filters_title">{{ lang === "fr" ? "Filtres" : "Filters" }}</p>
10
10
  <div class="filters_amount">{{ filters_amount }}</div>
11
11
  <p
12
- v-if="saveScope && filtersOpen"
12
+ v-if="haveSaveScope && filtersOpen"
13
13
  class="filters_save"
14
14
  @click.stop="save()"
15
15
  >
@@ -42,13 +42,22 @@ import {
42
42
  ref,
43
43
  defineComponent
44
44
  } from "vue";
45
+ import argIcon from "./argIcon.vue";
45
46
  export default defineComponent({
46
47
  name: "argFilterCard",
48
+ components: { argIcon },
47
49
  props: {
48
50
  filters_amount: { type: Number, default: 0 },
49
- saveScope: { type: Boolean, default: true },
51
+ haveSaveScope: { type: Boolean, default: false },
50
52
  clearMsg: { type: String, default: "Clear all" },
51
- saveScopeMsg: { type: String, default: "Save scope" }
53
+ saveScopeMsg: { type: String, default: "Save scope" },
54
+ lang: {
55
+ type: String,
56
+ default: "en",
57
+ validator: (value) => {
58
+ return ["en", "fr"].includes(value);
59
+ }
60
+ }
52
61
  },
53
62
  emits: ["clearFilters", "saveScope"],
54
63
  setup(props, { emit }) {
@@ -3,7 +3,7 @@ declare const _default: import("vue").DefineComponent<{
3
3
  type: NumberConstructor;
4
4
  default: number;
5
5
  };
6
- saveScope: {
6
+ haveSaveScope: {
7
7
  type: BooleanConstructor;
8
8
  default: boolean;
9
9
  };
@@ -15,6 +15,11 @@ declare const _default: import("vue").DefineComponent<{
15
15
  type: StringConstructor;
16
16
  default: string;
17
17
  };
18
+ lang: {
19
+ type: StringConstructor;
20
+ default: string;
21
+ validator: (value: string) => boolean;
22
+ };
18
23
  }, {
19
24
  filtersOpen: import("vue").Ref<boolean>;
20
25
  clear: () => void;
@@ -24,7 +29,7 @@ declare const _default: import("vue").DefineComponent<{
24
29
  type: NumberConstructor;
25
30
  default: number;
26
31
  };
27
- saveScope: {
32
+ haveSaveScope: {
28
33
  type: BooleanConstructor;
29
34
  default: boolean;
30
35
  };
@@ -36,12 +41,18 @@ declare const _default: import("vue").DefineComponent<{
36
41
  type: StringConstructor;
37
42
  default: string;
38
43
  };
44
+ lang: {
45
+ type: StringConstructor;
46
+ default: string;
47
+ validator: (value: string) => boolean;
48
+ };
39
49
  }>> & {
40
50
  onClearFilters?: ((...args: any[]) => any) | undefined;
41
51
  onSaveScope?: ((...args: any[]) => any) | undefined;
42
52
  }, {
43
- saveScope: boolean;
53
+ lang: string;
44
54
  filters_amount: number;
55
+ haveSaveScope: boolean;
45
56
  clearMsg: string;
46
57
  saveScopeMsg: string;
47
58
  }, {}>;
@@ -39,7 +39,7 @@ export default defineComponent({
39
39
  },
40
40
  sourceAmount: {
41
41
  type: Number,
42
- default: 0
42
+ required: true
43
43
  }
44
44
  },
45
45
  emits: ["openInfo"],
@@ -8,7 +8,7 @@ declare const _default: import("vue").DefineComponent<{
8
8
  };
9
9
  sourceAmount: {
10
10
  type: NumberConstructor;
11
- default: number;
11
+ required: true;
12
12
  };
13
13
  }, {
14
14
  infoOpen: import("vue").Ref<boolean>;
@@ -24,12 +24,11 @@ declare const _default: import("vue").DefineComponent<{
24
24
  };
25
25
  sourceAmount: {
26
26
  type: NumberConstructor;
27
- default: number;
27
+ required: true;
28
28
  };
29
29
  }>> & {
30
30
  onOpenInfo?: ((...args: any[]) => any) | undefined;
31
31
  }, {
32
32
  infoArray: unknown[];
33
- sourceAmount: number;
34
33
  }, {}>;
35
34
  export default _default;
@@ -81,7 +81,7 @@ export default defineComponent({
81
81
  },
82
82
  sourceAmount: {
83
83
  type: Number,
84
- default: 0
84
+ required: true
85
85
  }
86
86
  },
87
87
  emits: ["update:Open", "update:Menu"],
@@ -16,7 +16,7 @@ declare const _default: import("vue").DefineComponent<{
16
16
  };
17
17
  sourceAmount: {
18
18
  type: NumberConstructor;
19
- default: number;
19
+ required: true;
20
20
  };
21
21
  }, {
22
22
  infoOpen: import("vue").Ref<boolean>;
@@ -41,7 +41,7 @@ declare const _default: import("vue").DefineComponent<{
41
41
  };
42
42
  sourceAmount: {
43
43
  type: NumberConstructor;
44
- default: number;
44
+ required: true;
45
45
  };
46
46
  }>> & {
47
47
  "onUpdate:Menu"?: ((...args: any[]) => any) | undefined;
@@ -49,7 +49,6 @@ declare const _default: import("vue").DefineComponent<{
49
49
  }, {
50
50
  openInfo: boolean;
51
51
  infoArray: unknown[];
52
- sourceAmount: number;
53
52
  activeMenu: string;
54
53
  }, {}>;
55
54
  export default _default;
@@ -14,14 +14,14 @@
14
14
  </template>
15
15
  <script>
16
16
  import argIcon from "./argIcon.vue";
17
- import argStyle from "./argStyle.vue";
18
17
  import argFlag from "./argFlag.vue";
18
+ import argTooltip from "./argTooltip.vue";
19
19
  import {
20
20
  defineComponent
21
21
  } from "vue";
22
22
  export default defineComponent({
23
23
  name: "argMenuItem",
24
- components: { argIcon, argStyle, argFlag },
24
+ components: { argIcon, argFlag, argTooltip },
25
25
  props: {
26
26
  to: { type: String, required: true },
27
27
  //Require eiter an icon or a country flag
@@ -35,9 +35,10 @@ import {
35
35
  defineComponent
36
36
  } from "vue";
37
37
  import argIcon from "./argIcon.vue";
38
+ import argTooltip from "./argTooltip.vue";
38
39
  export default defineComponent({
39
40
  name: "argMenuLink",
40
- components: { argIcon },
41
+ components: { argIcon, argTooltip },
41
42
  props: {
42
43
  icon: { type: String, required: true },
43
44
  label: { type: String, required: true },
@@ -1,6 +1,5 @@
1
1
  <template>
2
2
  <div>
3
- <arg-style />
4
3
  <!-- Simple select -->
5
4
  <div class="oip_select_display">
6
5
  <p class="oip_filter_label">{{ multiple_label }}</p>
@@ -69,7 +68,7 @@
69
68
  ? 'CheckSquareFill'
70
69
  : 'Square'
71
70
  "
72
- ></arg-icon>
71
+ />
73
72
  <div
74
73
  :class="[
75
74
  'oip_select_complex_selection_loop_name',
@@ -85,9 +84,9 @@
85
84
  <div v-if="multiple_columns" class="oip_row v-start gap-16">
86
85
  <div v-for="(table, tabIndex) of filterName" :key="tabIndex">
87
86
  <div
88
- class="oip_select_complex_selection_loop multiple"
89
87
  v-for="(element, index) of table"
90
88
  :key="index"
89
+ class="oip_select_complex_selection_loop multiple"
91
90
  :class="
92
91
  options_disable.includes(index + tabIndex * 7)
93
92
  ? 'disabled'
@@ -120,7 +119,7 @@
120
119
  ? 'CheckSquareFill'
121
120
  : 'Square'
122
121
  "
123
- ></arg-icon>
122
+ />
124
123
  <div
125
124
  :class="[
126
125
  'oip_select_complex_selection_loop_name',
@@ -134,9 +133,9 @@
134
133
  </div>
135
134
  <div v-else>
136
135
  <div
137
- class="oip_select_complex_selection_loop multiple"
138
136
  v-for="(element, index) of filterName"
139
137
  :key="index"
138
+ class="oip_select_complex_selection_loop multiple"
140
139
  :class="options_disable.includes(index) ? 'disabled' : ''"
141
140
  @click="
142
141
  selected_items.includes(element)
@@ -161,7 +160,7 @@
161
160
  ? 'CheckSquareFill'
162
161
  : 'Square'
163
162
  "
164
- ></arg-icon>
163
+ />
165
164
  <div
166
165
  :class="[
167
166
  'oip_select_complex_selection_loop_name',
@@ -200,7 +199,7 @@
200
199
  ? 'CheckSquareFill'
201
200
  : 'Square'
202
201
  "
203
- ></arg-icon>
202
+ />
204
203
  <div
205
204
  :class="[
206
205
  'oip_select_complex_selection_loop_name',
@@ -242,7 +241,7 @@
242
241
  :name="
243
242
  selectedCats.includes(index) ? 'CheckSquareFill' : 'Square'
244
243
  "
245
- ></arg-icon>
244
+ />
246
245
  <div
247
246
  :class="[
248
247
  'oip_select_complex_selection_loop_name',
@@ -258,9 +257,9 @@
258
257
  </div>
259
258
  <div class="left_margin">
260
259
  <div
261
- class="oip_select_complex_selection_loop multiple"
262
260
  v-for="(option, optIndex) of element.values"
263
261
  :key="optIndex"
262
+ class="oip_select_complex_selection_loop multiple"
264
263
  @click="
265
264
  nestedIncludes(option, index)
266
265
  ? del_nested_element(index, option)
@@ -274,7 +273,7 @@
274
273
  :name="
275
274
  nestedIncludes(option, index) ? 'CheckSquareFill' : 'Square'
276
275
  "
277
- ></arg-icon>
276
+ />
278
277
  <div
279
278
  :class="[
280
279
  'oip_select_complex_selection_loop_name',
@@ -311,7 +310,7 @@ export default defineComponent({
311
310
  search: { type: Boolean, default: true },
312
311
  filter_placeholder: { type: String, required: false },
313
312
  show_all: { type: Boolean, default: false },
314
- default_select: { type: Array, required: false },
313
+ default_select: { type: Array, required: false, default: () => [] },
315
314
  preselection_all: { type: Boolean, default: false },
316
315
  disabled: { type: Boolean, default: false },
317
316
  multiple_columns: { type: Boolean, default: false },
@@ -325,7 +324,7 @@ export default defineComponent({
325
324
  const selected_items = ref([]);
326
325
  const selected_nested = ref([]);
327
326
  const isDisplay = ref(false);
328
- const searchName = ref(null);
327
+ const searchName = ref("");
329
328
  const selected_all = ref(false);
330
329
  const selectedCats = ref([]);
331
330
  const valueFrom = ref([]);
@@ -338,7 +337,17 @@ export default defineComponent({
338
337
  add_all();
339
338
  } else if (props.default_select && props.default_select.length > 0) {
340
339
  selected_items.value = props.default_select.map(
341
- (index) => element_table_copy.value[index]
340
+ (index) => element_table_copy.value[element_table_copy.value.indexOf(index)]
341
+ );
342
+ }
343
+ }
344
+ );
345
+ watch(
346
+ () => props.default_select,
347
+ (new_selected) => {
348
+ if (new_selected && new_selected.length > 0) {
349
+ selected_items.value = new_selected.map(
350
+ (index) => element_table_copy.value[element_table_copy.value.indexOf(index)]
342
351
  );
343
352
  }
344
353
  }
@@ -349,11 +358,9 @@ export default defineComponent({
349
358
  add_all();
350
359
  } else if (props.default_select && props.default_select.length > 0) {
351
360
  selected_items.value = props.default_select.map(
352
- (index) => element_table_copy.value[index]
361
+ (index) => element_table_copy.value[element_table_copy.value.indexOf(index)]
353
362
  );
354
363
  }
355
- emit("changeElement", selected_items.value);
356
- emit("update:Selection", selected_items.value);
357
364
  });
358
365
  const getAllSelect = computed(() => {
359
366
  const fullSelect = props.nested ? selected_nested.value : selected_items.value;
@@ -403,7 +410,7 @@ export default defineComponent({
403
410
  return props.element_table;
404
411
  } else {
405
412
  let selectTable = [];
406
- let finalTable = [];
413
+ const finalTable = [];
407
414
  if (searchName.value !== null) {
408
415
  selectTable = [
409
416
  ...new Set(
@@ -429,7 +436,7 @@ export default defineComponent({
429
436
  }
430
437
  });
431
438
  const filterNested = computed(() => {
432
- if (searchName.value !== null || searchName.value && searchName.value.length === 0) {
439
+ if (searchName.value !== null || searchName.value && searchName.value !== "") {
433
440
  return element_table_copy.value.filter(
434
441
  (element) => element.values.includes(
435
442
  searchName.value || searchName.value.toLowerCase()
@@ -439,7 +446,7 @@ export default defineComponent({
439
446
  return props.element_table;
440
447
  });
441
448
  const optionsWithoutDisabled = computed(() => {
442
- let optionsArray = [Number];
449
+ const optionsArray = [Number];
443
450
  for (let i = 0; i < element_table_copy.value.length; i++) {
444
451
  if (!props.options_disable.includes(i)) {
445
452
  optionsArray.push(element_table_copy.value[i]);
@@ -509,16 +516,28 @@ export default defineComponent({
509
516
  function add_element(element, index) {
510
517
  if (!props.options_disable.includes(index)) {
511
518
  selected_items.value.push(element);
512
- emit("changeElement", selected_items.value);
513
- emit("update:Selection", selected_items.value);
519
+ emit(
520
+ "changeElement",
521
+ selected_items.value.map((a) => a)
522
+ );
523
+ emit(
524
+ "update:Selection",
525
+ selected_items.value.map((a) => a)
526
+ );
514
527
  }
515
528
  }
516
529
  function del_element(element, index) {
517
530
  selected_all.value = false;
518
531
  if (!props.options_disable.includes(index)) {
519
532
  selected_items.value.splice(selected_items.value.indexOf(element), 1);
520
- emit("changeElement", selected_items.value);
521
- emit("update:Selection", selected_items.value);
533
+ emit(
534
+ "changeElement",
535
+ selected_items.value.map((a) => a)
536
+ );
537
+ emit(
538
+ "update:Selection",
539
+ selected_items.value.map((a) => a)
540
+ );
522
541
  }
523
542
  }
524
543
  function add_nested_element(index, elem) {
@@ -539,8 +558,14 @@ export default defineComponent({
539
558
  title: element_table_copy.value[index].title,
540
559
  elements: [elem]
541
560
  });
542
- emit("changeElement", selected_nested.value);
543
- emit("update:Selection", selected_nested.value);
561
+ emit(
562
+ "changeElement",
563
+ selected_nested.value.map((a) => a)
564
+ );
565
+ emit(
566
+ "update:Selection",
567
+ selected_nested.value.map((a) => a)
568
+ );
544
569
  }
545
570
  function del_nested_elements(index, elem) {
546
571
  selected_all.value = false;
@@ -570,8 +595,14 @@ export default defineComponent({
570
595
  );
571
596
  }
572
597
  }
573
- emit("changeElement", selected_nested.value);
574
- emit("update:Selection", selected_nested.value);
598
+ emit(
599
+ "changeElement",
600
+ selected_nested.value.map((a) => a)
601
+ );
602
+ emit(
603
+ "update:Selection",
604
+ selected_nested.value.map((a) => a)
605
+ );
575
606
  }
576
607
  function add_all() {
577
608
  selected_all.value = true;
@@ -600,11 +631,11 @@ export default defineComponent({
600
631
  }
601
632
  emit(
602
633
  "changeElement",
603
- props.nested ? selected_nested.value : selected_items.value
634
+ props.nested ? selected_nested.value.map((a) => a) : selected_items.value.map((a) => a)
604
635
  );
605
636
  emit(
606
637
  "update:Selection",
607
- props.nested ? selected_nested.value : selected_items.value
638
+ props.nested ? selected_nested.value.map((a) => a) : selected_items.value.map((a) => a)
608
639
  );
609
640
  }
610
641
  function add_all_cat(index) {
@@ -612,15 +643,21 @@ export default defineComponent({
612
643
  if (selected_nested.value.filter((f) => f.cat === index).length === 0) {
613
644
  selected_nested.value.push({
614
645
  cat: index,
615
- title: element_table.value[index].title,
646
+ title: element_table_copy.value[index].title,
616
647
  elements: element_table_copy.value[index].values
617
648
  });
618
649
  } else
619
650
  selected_nested.value[selected_nested.value.findIndex(
620
651
  (f) => f.cat === index
621
652
  )].elements = element_table_copy.value[index].values;
622
- emit("changeElement", selected_nested.value);
623
- emit("update:Selection", selected_nested.value);
653
+ emit(
654
+ "changeElement",
655
+ selected_nested.value.map((a) => a)
656
+ );
657
+ emit(
658
+ "update:Selection",
659
+ selected_nested.value.map((a) => a)
660
+ );
624
661
  }
625
662
  function del_all_cat(index) {
626
663
  selected_all.value = false;
@@ -635,16 +672,28 @@ export default defineComponent({
635
672
  1
636
673
  );
637
674
  }
638
- emit("changeElement", selected_nested.value);
639
- emit("update:Selection", selected_nested.value);
675
+ emit(
676
+ "changeElement",
677
+ selected_nested.value.map((a) => a)
678
+ );
679
+ emit(
680
+ "update:Selection",
681
+ selected_nested.value.map((a) => a)
682
+ );
640
683
  }
641
684
  function del_all() {
642
685
  selected_all.value = false;
643
686
  selected_items.value = [];
644
687
  selected_nested.value = [];
645
688
  selectedCats.value = [];
646
- emit("changeElement", selected_items.value);
647
- emit("update:Selection", selected_items.value);
689
+ emit(
690
+ "changeElement",
691
+ selected_items.value.map((a) => a)
692
+ );
693
+ emit(
694
+ "update:Selection",
695
+ selected_items.value.map((a) => a)
696
+ );
648
697
  }
649
698
  onUnmounted(() => {
650
699
  document.removeEventListener("click", close);
@@ -1,6 +1,19 @@
1
1
  declare const _default: import("vue").DefineComponent<{
2
2
  element_table: {
3
- type: ArrayConstructor;
3
+ type: {
4
+ (arrayLength: number): any[];
5
+ (...items: any[]): any[];
6
+ new (arrayLength: number): any[];
7
+ new (...items: any[]): any[];
8
+ isArray(arg: any): arg is any[];
9
+ readonly prototype: any[];
10
+ from<T>(arrayLike: ArrayLike<T>): T[];
11
+ from<T_1, U>(arrayLike: ArrayLike<T_1>, mapfn: (v: T_1, k: number) => U, thisArg?: any): U[];
12
+ from<T_2>(iterable: Iterable<T_2> | ArrayLike<T_2>): T_2[];
13
+ from<T_3, U_1>(iterable: Iterable<T_3> | ArrayLike<T_3>, mapfn: (v: T_3, k: number) => U_1, thisArg?: any): U_1[];
14
+ of<T_4>(...items: T_4[]): T_4[];
15
+ readonly [Symbol.species]: ArrayConstructor;
16
+ };
4
17
  required: true;
5
18
  };
6
19
  nested: {
@@ -20,8 +33,22 @@ declare const _default: import("vue").DefineComponent<{
20
33
  default: boolean;
21
34
  };
22
35
  default_select: {
23
- type: ArrayConstructor;
36
+ type: {
37
+ (arrayLength: number): any[];
38
+ (...items: any[]): any[];
39
+ new (arrayLength: number): any[];
40
+ new (...items: any[]): any[];
41
+ isArray(arg: any): arg is any[];
42
+ readonly prototype: any[];
43
+ from<T>(arrayLike: ArrayLike<T>): T[];
44
+ from<T_1, U>(arrayLike: ArrayLike<T_1>, mapfn: (v: T_1, k: number) => U, thisArg?: any): U[];
45
+ from<T_2>(iterable: Iterable<T_2> | ArrayLike<T_2>): T_2[];
46
+ from<T_3, U_1>(iterable: Iterable<T_3> | ArrayLike<T_3>, mapfn: (v: T_3, k: number) => U_1, thisArg?: any): U_1[];
47
+ of<T_4>(...items: T_4[]): T_4[];
48
+ readonly [Symbol.species]: ArrayConstructor;
49
+ };
24
50
  required: false;
51
+ default: () => never[];
25
52
  };
26
53
  preselection_all: {
27
54
  type: BooleanConstructor;
@@ -57,7 +84,7 @@ declare const _default: import("vue").DefineComponent<{
57
84
  add_all_cat: (index: number) => void;
58
85
  add_all: () => void;
59
86
  del_nested_elements: (index: number, elem: string) => void;
60
- add_nested_element: (index: number, elem: string) => void;
87
+ add_nested_element: (index: number, elem: any) => void;
61
88
  del_element: (element: string, index: number) => void;
62
89
  add_element: (element: string, index: number) => void;
63
90
  close: () => void;
@@ -68,20 +95,33 @@ declare const _default: import("vue").DefineComponent<{
68
95
  changeInput: () => void;
69
96
  nestedSelectedLength: import("vue").ComputedRef<number>;
70
97
  optionsWithoutDisabled: import("vue").ComputedRef<NumberConstructor[]>;
71
- filterNested: import("vue").ComputedRef<unknown[]>;
72
- filterName: import("vue").ComputedRef<unknown[]>;
73
- getOptions: import("vue").ComputedRef<NumberConstructor[]>;
98
+ filterNested: import("vue").ComputedRef<any[]>;
99
+ filterName: import("vue").ComputedRef<any[]>;
100
+ getOptions: import("vue").ComputedRef<any[]>;
74
101
  getAllSelect: import("vue").ComputedRef<string>;
75
102
  isDisplay: import("vue").Ref<boolean>;
76
- searchName: import("vue").Ref<null>;
77
- selected_items: import("vue").Ref<never[]>;
78
- selected_nested: import("vue").Ref<never[]>;
103
+ searchName: import("vue").Ref<string>;
104
+ selected_items: import("vue").Ref<any[]>;
105
+ selected_nested: import("vue").Ref<any[]>;
79
106
  selected_all: import("vue").Ref<boolean>;
80
- selectedCats: import("vue").Ref<never[]>;
107
+ selectedCats: import("vue").Ref<number[]>;
81
108
  valueFrom: import("vue").Ref<never[]>;
82
109
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("onClose" | "changeElement" | "update:Selection" | "changeInputValue")[], "onClose" | "changeElement" | "update:Selection" | "changeInputValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
83
110
  element_table: {
84
- type: ArrayConstructor;
111
+ type: {
112
+ (arrayLength: number): any[];
113
+ (...items: any[]): any[];
114
+ new (arrayLength: number): any[];
115
+ new (...items: any[]): any[];
116
+ isArray(arg: any): arg is any[];
117
+ readonly prototype: any[];
118
+ from<T>(arrayLike: ArrayLike<T>): T[];
119
+ from<T_1, U>(arrayLike: ArrayLike<T_1>, mapfn: (v: T_1, k: number) => U, thisArg?: any): U[];
120
+ from<T_2>(iterable: Iterable<T_2> | ArrayLike<T_2>): T_2[];
121
+ from<T_3, U_1>(iterable: Iterable<T_3> | ArrayLike<T_3>, mapfn: (v: T_3, k: number) => U_1, thisArg?: any): U_1[];
122
+ of<T_4>(...items: T_4[]): T_4[];
123
+ readonly [Symbol.species]: ArrayConstructor;
124
+ };
85
125
  required: true;
86
126
  };
87
127
  nested: {
@@ -101,8 +141,22 @@ declare const _default: import("vue").DefineComponent<{
101
141
  default: boolean;
102
142
  };
103
143
  default_select: {
104
- type: ArrayConstructor;
144
+ type: {
145
+ (arrayLength: number): any[];
146
+ (...items: any[]): any[];
147
+ new (arrayLength: number): any[];
148
+ new (...items: any[]): any[];
149
+ isArray(arg: any): arg is any[];
150
+ readonly prototype: any[];
151
+ from<T>(arrayLike: ArrayLike<T>): T[];
152
+ from<T_1, U>(arrayLike: ArrayLike<T_1>, mapfn: (v: T_1, k: number) => U, thisArg?: any): U[];
153
+ from<T_2>(iterable: Iterable<T_2> | ArrayLike<T_2>): T_2[];
154
+ from<T_3, U_1>(iterable: Iterable<T_3> | ArrayLike<T_3>, mapfn: (v: T_3, k: number) => U_1, thisArg?: any): U_1[];
155
+ of<T_4>(...items: T_4[]): T_4[];
156
+ readonly [Symbol.species]: ArrayConstructor;
157
+ };
105
158
  required: false;
159
+ default: () => never[];
106
160
  };
107
161
  preselection_all: {
108
162
  type: BooleanConstructor;
@@ -141,6 +195,7 @@ declare const _default: import("vue").DefineComponent<{
141
195
  disabled: boolean;
142
196
  show_amount: boolean;
143
197
  search: boolean;
198
+ default_select: any[];
144
199
  nested: boolean;
145
200
  show_all: boolean;
146
201
  preselection_all: boolean;
@@ -0,0 +1,303 @@
1
+ <template>
2
+ <div>
3
+ <div :class="'arg_scope_save arg_scope_save_open'">
4
+ <div class="arg_save_modal">
5
+ <div class="arg_save_header">
6
+ <h1>
7
+ {{ lang === "fr" ? "Enregistrer mon scope" : "Save my scope" }}
8
+ </h1>
9
+ <div class="cursor-pointer" @click="closeSaveScope()">
10
+ <arg-icon name="X" size="16" color="var(--cool-grey)" />
11
+ </div>
12
+ </div>
13
+ <div class="arg_save_body">
14
+ <div class="oip_filter_display scope_name_input">
15
+ <p class="oip_filter_label">
16
+ {{ lang === "fr" ? "Nom scope" : "Scope name" }}*
17
+ </p>
18
+ <input
19
+ v-model="scopeName"
20
+ class="oip_simple_input"
21
+ :class="saveFail ? 'oip_required_input' : ''"
22
+ :placeholder="
23
+ lang === 'fr'
24
+ ? 'Nom de votre scope e.g Benchmark 2023'
25
+ : 'Name of your scope e.g. Benchmark 2023'
26
+ "
27
+ type="text"
28
+ :required="true"
29
+ />
30
+ <p v-if="saveFail" class="oip_body oip_error">
31
+ {{
32
+ lang === "fr"
33
+ ? "Un nom est requis pour enregistrer votre scope!"
34
+ : "Name is required to save your scope!"
35
+ }}
36
+ </p>
37
+ </div>
38
+ <div class="oip_filter_display full_width">
39
+ <p class="oip_filter_label">
40
+ {{
41
+ lang === "fr"
42
+ ? "Décrivez votre scope (optionnel)"
43
+ : "Describe your scope (optional)"
44
+ }}
45
+ </p>
46
+ <textarea
47
+ name="ScopeDescr"
48
+ cols="40"
49
+ rows="5"
50
+ :placeholder="
51
+ lang === 'fr'
52
+ ? 'Votre description ici'
53
+ : 'Your description here'
54
+ "
55
+ />
56
+ </div>
57
+ <div class="oip_filter_display full_width">
58
+ <p class="oip_filter_label">
59
+ {{ lang === "fr" ? "Critères" : "Criteria" }}
60
+ </p>
61
+ <div class="scope_criteria">
62
+ <arg-tags
63
+ v-for="(criteria, index) in scopeCriteria"
64
+ :key="index"
65
+ set-style="light_grey"
66
+ >{{ criteria }}</arg-tags
67
+ >
68
+ </div>
69
+ </div>
70
+ </div>
71
+ <div class="arg_save_footer">
72
+ <div class="footer_action">
73
+ <arg-btn
74
+ class="footer_btn"
75
+ :become-small="false"
76
+ btn-style="skeleton"
77
+ @onClick="closeSaveScope"
78
+ >{{ lang === "fr" ? "Annuler" : "Cancel" }}</arg-btn
79
+ >
80
+ </div>
81
+ <div class="footer_action">
82
+ <arg-btn
83
+ class="footer_btn"
84
+ :become-small="false"
85
+ btn-style="primary"
86
+ @onClick="saveScope"
87
+ >{{
88
+ lang === "fr"
89
+ ? "Enregistrer le scope et continuer"
90
+ : "Save scope and continue"
91
+ }}</arg-btn
92
+ >
93
+ </div>
94
+ </div>
95
+ </div>
96
+ </div>
97
+ </div>
98
+ </template>
99
+
100
+ <script>
101
+ import { ref, defineComponent, watch } from "vue";
102
+ export default defineComponent({
103
+ name: "argScopeModal",
104
+ props: {
105
+ scopeCriteria: {
106
+ type: Array,
107
+ required: true
108
+ },
109
+ lang: {
110
+ type: String,
111
+ default: "en",
112
+ validator: (value) => {
113
+ return ["en", "fr"].includes(value);
114
+ }
115
+ }
116
+ },
117
+ emits: ["onClose", "onSave"],
118
+ setup(props, { emit }) {
119
+ const scopeName = ref("");
120
+ const scopeDescr = ref("");
121
+ const nameFilled = ref(false);
122
+ const saveFail = ref(false);
123
+ watch(
124
+ () => scopeName.value,
125
+ (new_scope_name) => {
126
+ if (new_scope_name.length > 0) {
127
+ saveFail.value = false;
128
+ nameFilled.value = true;
129
+ }
130
+ }
131
+ );
132
+ function closeSaveScope() {
133
+ emit("onClose");
134
+ }
135
+ function saveScope() {
136
+ if (nameFilled.value === true) {
137
+ saveFail.value = false;
138
+ emit("onSave", { name: scopeName.value, descr: scopeDescr.value });
139
+ closeSaveScope();
140
+ } else {
141
+ saveFail.value = true;
142
+ }
143
+ }
144
+ return {
145
+ closeSaveScope,
146
+ saveScope,
147
+ scopeName,
148
+ scopeDescr,
149
+ nameFilled,
150
+ saveFail
151
+ };
152
+ }
153
+ });
154
+ </script>
155
+
156
+ <style scoped>
157
+ .arg_scope_save {
158
+ background-color: transparent;
159
+ transition: all ease 0.5s;
160
+ position: fixed;
161
+ left: 0;
162
+ bottom: 0;
163
+ height: 0px;
164
+ width: 0px;
165
+ display: flex;
166
+ align-items: center;
167
+ justify-content: center;
168
+ }
169
+
170
+ .arg_scope_save_open {
171
+ z-index: 99;
172
+ background-color: rgba(0, 0, 0, 0.4);
173
+ width: 100%;
174
+ height: 100%;
175
+ }
176
+
177
+ .arg_save_modal {
178
+ display: flex;
179
+ width: calc(100% - 164px);
180
+ max-width: 640px;
181
+ max-height: 850px;
182
+ flex-direction: column;
183
+ align-items: flex-start;
184
+ flex-shrink: 0;
185
+ border-radius: var(--m, 8px);
186
+ background: var(--pure-white);
187
+ }
188
+
189
+ .arg_save_header {
190
+ display: flex;
191
+ padding: 24px;
192
+ justify-content: space-between;
193
+ align-items: center;
194
+ align-self: stretch;
195
+ border-bottom: 1px solid #e5e7eb;
196
+ }
197
+
198
+ .arg_save_footer {
199
+ display: flex;
200
+ padding: 24px;
201
+ gap: 32px;
202
+ align-items: center;
203
+ align-self: stretch;
204
+ border-top: 1px solid #e5e7eb;
205
+ }
206
+
207
+ .footer_action {
208
+ width: 50%;
209
+ flex: 1 1 0;
210
+ }
211
+
212
+ .arg_save_header > h1 {
213
+ font-size: 20px;
214
+ font-style: normal;
215
+ font-weight: 900;
216
+ line-height: normal;
217
+ }
218
+
219
+ .arg_save_body {
220
+ display: flex;
221
+ padding: 24px;
222
+ flex-direction: column;
223
+ align-items: flex-start;
224
+ gap: 24px;
225
+ align-self: stretch;
226
+ }
227
+
228
+ textarea,
229
+ .scope_criteria {
230
+ border-radius: 8px;
231
+ border: 1.5px solid var(--dividers);
232
+ padding: 12px;
233
+ margin: 5px 0px;
234
+ outline: none !important;
235
+ width: calc(100% - 25.5px);
236
+ font-family: "Figtree", sans-serif !important;
237
+ height: 110px;
238
+ }
239
+
240
+ .scope_criteria {
241
+ display: flex;
242
+ flex-direction: row;
243
+ align-items: flex-start;
244
+ gap: 8px;
245
+ }
246
+
247
+ textarea::placeholder {
248
+ font-family: "Figtree", sans-serif !important;
249
+ color: var(--wild-blue-yonder);
250
+ }
251
+
252
+ .scope_name_input {
253
+ width: 300px;
254
+ max-width: 100%;
255
+ }
256
+
257
+ .full_width {
258
+ width: 100%;
259
+ }
260
+
261
+ .footer_action .footer_btn {
262
+ width: calc(100% - 24px);
263
+ justify-content: center;
264
+ white-space: wrap;
265
+ text-align: center;
266
+ }
267
+
268
+ .cursor-pointer {
269
+ cursor: pointer !important;
270
+ }
271
+
272
+ .oip_simple_input {
273
+ border-radius: 8px;
274
+ border: 1.5px solid var(--dividers);
275
+ padding: 12px;
276
+ margin: 5px 0px;
277
+ width: calc(100% - 24px);
278
+ }
279
+ .oip_simple_input::placeholder {
280
+ color: var(--wild-blue-yonder);
281
+ }
282
+ .oip_simple_input,
283
+ .oip_simple_input:focus-visible {
284
+ outline: none !important;
285
+ }
286
+ .oip_simple_input:hover,
287
+ textarea:hover {
288
+ border: 1.5px solid rgba(33, 118, 255, 0.2) !important;
289
+ }
290
+ .oip_simple_input:focus-within,
291
+ textarea:focus-within {
292
+ border: 1.5px solid var(--primary) !important;
293
+ box-shadow: 0 0 0 4px rgba(33, 118, 255, 0.1) !important;
294
+ }
295
+ .oip_required_input,
296
+ .oip_required_input:hover {
297
+ border-color: var(--system-alert) !important;
298
+ }
299
+
300
+ .oip_error {
301
+ color: var(--system-alert);
302
+ }
303
+ </style>
@@ -0,0 +1,34 @@
1
+ declare const _default: import("vue").DefineComponent<{
2
+ scopeCriteria: {
3
+ type: ArrayConstructor;
4
+ required: true;
5
+ };
6
+ lang: {
7
+ type: StringConstructor;
8
+ default: string;
9
+ validator: (value: string) => boolean;
10
+ };
11
+ }, {
12
+ closeSaveScope: () => void;
13
+ saveScope: () => void;
14
+ scopeName: import("vue").Ref<string>;
15
+ scopeDescr: import("vue").Ref<string>;
16
+ nameFilled: import("vue").Ref<boolean>;
17
+ saveFail: import("vue").Ref<boolean>;
18
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("onClose" | "onSave")[], "onClose" | "onSave", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
19
+ scopeCriteria: {
20
+ type: ArrayConstructor;
21
+ required: true;
22
+ };
23
+ lang: {
24
+ type: StringConstructor;
25
+ default: string;
26
+ validator: (value: string) => boolean;
27
+ };
28
+ }>> & {
29
+ onOnClose?: ((...args: any[]) => any) | undefined;
30
+ onOnSave?: ((...args: any[]) => any) | undefined;
31
+ }, {
32
+ lang: string;
33
+ }, {}>;
34
+ export default _default;
@@ -10,7 +10,7 @@ declare const _default: import("vue").DefineComponent<{
10
10
  lang: {
11
11
  type: StringConstructor;
12
12
  default: string;
13
- validator: (value: unknown) => boolean;
13
+ validator: (value: string) => boolean;
14
14
  };
15
15
  homeLink: {
16
16
  type: StringConstructor;
@@ -31,7 +31,7 @@ declare const _default: import("vue").DefineComponent<{
31
31
  lang: {
32
32
  type: StringConstructor;
33
33
  default: string;
34
- validator: (value: unknown) => boolean;
34
+ validator: (value: string) => boolean;
35
35
  };
36
36
  homeLink: {
37
37
  type: StringConstructor;
@@ -82,10 +82,10 @@ export default defineComponent({
82
82
  .oip_simple_input:focus-visible {
83
83
  outline: none !important;
84
84
  }
85
- .oip_simple_input input:hover {
85
+ .oip_simple_input:hover {
86
86
  border: 1.5px solid rgba(33, 118, 255, 0.2) !important;
87
87
  }
88
- .oip_simple_input input:focus-within {
88
+ .oip_simple_input:focus-within {
89
89
  border: 1.5px solid var(--primary) !important;
90
90
  box-shadow: 0 0 0 4px rgba(33, 118, 255, 0.1) !important;
91
91
  }
@@ -297,6 +297,8 @@ button {
297
297
  max-height: 16px;
298
298
  white-space: nowrap;
299
299
  display: flex;
300
+ justify-content: center;
301
+ text-align: center;
300
302
  align-items: center;
301
303
  gap: 10px;
302
304
  position: relative;
@@ -1031,4 +1033,11 @@ button {
1031
1033
  gap: 24px;
1032
1034
  height: 100%;
1033
1035
  }
1036
+
1037
+ .oip_select_display {
1038
+ display: flex;
1039
+ flex-direction: column;
1040
+ align-items: flex-start;
1041
+ gap: 4px;
1042
+ }
1034
1043
  </style>
@@ -32,10 +32,10 @@ import {
32
32
  defineComponent
33
33
  } from "vue";
34
34
  import argIcon from "./argIcon.vue";
35
- import argStyle from "./argStyle.vue";
35
+ import argTooltip from "./argTooltip.vue";
36
36
  export default defineComponent({
37
37
  name: "argSubMenu",
38
- components: { argIcon, argStyle },
38
+ components: { argIcon, argTooltip },
39
39
  props: {
40
40
  label: { type: String, required: true },
41
41
  icon: { type: String },
@@ -43,7 +43,7 @@ export default defineComponent({
43
43
  sidebarOpen: { type: Boolean, default: true }
44
44
  },
45
45
  setup(props) {
46
- let openMenu = ref(props.defaultCollapseState);
46
+ const openMenu = ref(props.defaultCollapseState);
47
47
  return {
48
48
  openMenu
49
49
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tekkare/auriga",
3
- "version": "0.1.16",
3
+ "version": "0.1.18",
4
4
  "description": "Aurgia is a UI kit developped by Tekkare",
5
5
  "license": "MIT",
6
6
  "type": "module",