@tekkare/auriga 0.1.61 → 0.1.63

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.61"
7
+ "version": "0.1.63"
8
8
  }
@@ -45,7 +45,7 @@
45
45
  }}</span>
46
46
  </div>
47
47
  </div>
48
- <div class="filters_section">
48
+ <div id="arg_filters_section" class="filters_section">
49
49
  <slot name="Search" />
50
50
  <div class="filters_row oip_row v-center gap-16 full-width wrap">
51
51
  <slot name="Filters" />
@@ -60,7 +60,6 @@ import {
60
60
  ref,
61
61
  watch,
62
62
  defineComponent,
63
- onUnmounted,
64
63
  onUpdated
65
64
  } from "vue";
66
65
  import argIcon from "./argIcon.vue";
@@ -69,7 +68,6 @@ export default defineComponent({
69
68
  components: { argIcon },
70
69
  props: {
71
70
  filters_amount: { type: Number, default: 0 },
72
- isOpen: { type: Boolean, default: true },
73
71
  haveSaveScope: { type: Boolean, default: false },
74
72
  clearMsg: { type: String, default: null },
75
73
  saveScopeMsg: { type: String, default: null },
@@ -83,32 +81,38 @@ export default defineComponent({
83
81
  },
84
82
  emits: ["clearFilters", "saveScope"],
85
83
  setup(props, { emit }) {
86
- const filtersOpen = ref(true);
87
- function closeOnScroll() {
88
- if (window.scrollY > 150) {
89
- filtersOpen.value = false;
90
- window.removeEventListener("scroll", closeOnScroll);
84
+ const filtersOpen = ref(null);
85
+ const scrollPosition = ref(0);
86
+ function openFromScroll() {
87
+ if (window.scrollY === 0) {
88
+ filtersOpen.value = true;
89
+ scrollPosition.value = scrollY;
90
+ } else {
91
+ const filters = document.getElementById("arg_filters_section");
92
+ if (filters) {
93
+ if (window.scrollY > scrollPosition.value + filters.offsetHeight) {
94
+ filtersOpen.value = false;
95
+ scrollPosition.value = window.scrollY;
96
+ document.removeEventListener("scroll", openFromScroll);
97
+ }
98
+ }
91
99
  }
92
100
  }
93
101
  onMounted(() => {
94
102
  adjustFilterPosition();
95
103
  listenToHeaderChange();
96
- filtersOpen.value = props.isOpen;
97
- window.addEventListener("scroll", closeOnScroll);
104
+ openFromScroll();
98
105
  });
99
106
  onUpdated(() => {
100
107
  adjustFilterPosition();
101
108
  });
102
- onUnmounted(() => {
103
- window.removeEventListener("scroll", closeOnScroll);
104
- });
105
109
  watch(
106
110
  () => filtersOpen.value,
107
- () => {
108
- if (filtersOpen.value === true) {
111
+ (new_filters_open) => {
112
+ if (new_filters_open) {
109
113
  setTimeout(() => {
110
- window.addEventListener("scroll", closeOnScroll);
111
- }, 700);
114
+ document.addEventListener("scroll", openFromScroll);
115
+ }, 500);
112
116
  }
113
117
  }
114
118
  );
@@ -133,12 +137,6 @@ export default defineComponent({
133
137
  }
134
138
  });
135
139
  }
136
- watch(
137
- () => props.isOpen,
138
- (new_is_open) => {
139
- filtersOpen.value = new_is_open;
140
- }
141
- );
142
140
  function clear() {
143
141
  emit("clearFilters");
144
142
  }
@@ -163,7 +161,7 @@ export default defineComponent({
163
161
  gap: 16px;
164
162
  border: 1px solid var(--dividers);
165
163
  backdrop-filter: blur(12px);
166
- transition: all ease 0.7s;
164
+ transition: all ease 0.4s;
167
165
  z-index: 91;
168
166
  align-self: stretch;
169
167
  position: sticky;
@@ -191,7 +189,7 @@ export default defineComponent({
191
189
  }
192
190
 
193
191
  .filter-icon {
194
- transition: transform 0.5s;
192
+ transition: transform 0.3s;
195
193
  }
196
194
 
197
195
  .icon-rotate {
@@ -3,10 +3,6 @@ declare const _default: import("vue").DefineComponent<{
3
3
  type: NumberConstructor;
4
4
  default: number;
5
5
  };
6
- isOpen: {
7
- type: BooleanConstructor;
8
- default: boolean;
9
- };
10
6
  haveSaveScope: {
11
7
  type: BooleanConstructor;
12
8
  default: boolean;
@@ -25,7 +21,7 @@ declare const _default: import("vue").DefineComponent<{
25
21
  validator: (value: string) => boolean;
26
22
  };
27
23
  }, {
28
- filtersOpen: import("vue").Ref<boolean>;
24
+ filtersOpen: any;
29
25
  clear: () => void;
30
26
  save: () => void;
31
27
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("clearFilters" | "saveScope")[], "clearFilters" | "saveScope", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -33,10 +29,6 @@ declare const _default: import("vue").DefineComponent<{
33
29
  type: NumberConstructor;
34
30
  default: number;
35
31
  };
36
- isOpen: {
37
- type: BooleanConstructor;
38
- default: boolean;
39
- };
40
32
  haveSaveScope: {
41
33
  type: BooleanConstructor;
42
34
  default: boolean;
@@ -60,7 +52,6 @@ declare const _default: import("vue").DefineComponent<{
60
52
  }, {
61
53
  lang: string;
62
54
  filters_amount: number;
63
- isOpen: boolean;
64
55
  haveSaveScope: boolean;
65
56
  clearMsg: string;
66
57
  saveScopeMsg: string;
@@ -116,7 +116,7 @@ export default defineComponent({
116
116
  <style scoped>
117
117
  .arg_sidebar {
118
118
  display: flex;
119
- width: 52px;
119
+ width: 54px;
120
120
  padding: 16px 8px;
121
121
  flex-direction: column;
122
122
  align-items: flex-start;
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div :class="sidebarOpen ? 'arg_sub_menu' : 'arg_sub_small'">
3
3
  <button class="arg_sub_menu_button" @click="openMenu = !openMenu">
4
- <div class="oip_row v-center gap-4">
4
+ <div v-if="sidebarOpen" class="oip_row v-center gap-4">
5
5
  <arg-icon
6
6
  v-if="icon !== null"
7
7
  :name="icon"
@@ -11,7 +11,7 @@
11
11
  :class="[openMenu ? 'active_icon' : '']"
12
12
  />
13
13
  <arg-flag v-else-if="flagIso !== null" :iso="flagIso" emoji />
14
- <span v-show="sidebarOpen">{{ label }}</span>
14
+ <span>{{ label }}</span>
15
15
  </div>
16
16
  <arg-tooltip
17
17
  :tooltip-text="label"
@@ -38,9 +38,8 @@ export default defineComponent({
38
38
 
39
39
  .prmt_tooltip_text {
40
40
  visibility: hidden;
41
- width: fit-content;
42
- max-width: 250px;
43
- text-align: center;
41
+ width: max-content;
42
+ max-width: 120px;
44
43
  background-color: var(--independence);
45
44
  color: var(--pure-white);
46
45
  border-radius: 4px;
@@ -51,7 +50,12 @@ export default defineComponent({
51
50
  font-weight: 400;
52
51
  font-size: 14px;
53
52
  line-height: 160%;
54
- white-space: nowrap;
53
+ white-space: wrap;
54
+ display: -webkit-box;
55
+ -webkit-line-clamp: 4;
56
+ -webkit-box-orient: vertical;
57
+ overflow: hidden;
58
+ text-align: left;
55
59
  }
56
60
 
57
61
  .prmt_tooltip .prmt_tooltip_text-top {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tekkare/auriga",
3
- "version": "0.1.61",
3
+ "version": "0.1.63",
4
4
  "description": "Aurgia is a UI kit developped by Tekkare",
5
5
  "license": "MIT",
6
6
  "type": "module",