@exakt/ui 0.0.35 → 0.0.37

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
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "exakt-ui",
3
3
  "configKey": "exakt",
4
- "version": "0.0.35"
4
+ "version": "0.0.37"
5
5
  }
package/dist/module.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { defineNuxtModule, createResolver, addPlugin, extendViteConfig, addComponentsDir } from '@nuxt/kit';
1
+ import { defineNuxtModule, createResolver, addPlugin, extendViteConfig, addImportsSources, addComponentsDir } from '@nuxt/kit';
2
2
  import fs from 'fs';
3
3
 
4
4
  const defaults = {
@@ -69,6 +69,10 @@ const module = defineNuxtModule({
69
69
  }
70
70
  });
71
71
  });
72
+ addImportsSources({
73
+ from: "material-symbols",
74
+ imports: ["material-symbols"]
75
+ });
72
76
  nuxt.options.css.push(resolver.resolve("./runtime/css/main.scss"));
73
77
  nuxt.options.css.push(resolver.resolve("./runtime/css/util.scss"));
74
78
  nuxt.options.css.push(
@@ -1,12 +1,13 @@
1
1
  <template>
2
2
  <div class="flex-center color-red">
3
3
  <e-icon
4
- :icon="mdiAlert"
4
+
5
5
  size="19"
6
6
  class="mr-2"
7
- /><small><slot /></small>
7
+ >
8
+ warning
9
+ </e-icon><small><slot /></small>
8
10
  </div>
9
11
  </template>
10
12
  <script setup lang="ts">
11
- import { mdiAlert } from "@mdi/js";
12
13
  </script>
@@ -14,13 +14,13 @@
14
14
  <div v-else>
15
15
  <e-icon
16
16
  :size="props.size"
17
- :icon="mdiAccountCircle"
18
- />
17
+ >
18
+ person_circle
19
+ </e-icon>
19
20
  </div>
20
21
  </div>
21
22
  </template>
22
23
  <script setup lang="ts">
23
- import { mdiAccountCircle } from "@mdi/js";
24
24
 
25
25
  const props = withDefaults(defineProps<{
26
26
  src?: string;
@@ -14,33 +14,25 @@
14
14
  'my-2': solid,
15
15
  loading,
16
16
  fab,
17
- loadingGradient,
18
17
  colored: background !== 'transparent' || color || solid,
19
18
  }"
20
19
  >
21
- <e-progress-gradient
22
- v-if="loading && loadingGradient"
23
- class="prog-grad"
24
- color="primary"
25
- />
26
-
27
20
  <div
28
21
  ref="content"
29
22
  class="e-btn-content"
30
- :style="contentStyles"
31
23
  >
32
24
  <div
33
- v-if="loading && !loadingGradient"
25
+ v-if="loading"
34
26
  class="load-overlay"
35
27
  >
36
28
  <e-loading-spinner />
37
29
  </div>
38
30
  <span
39
- class="actual-content d-flex"
40
- :class="{ fullwidth: props.justify == 'space-between' }"
31
+ class="actual-content d-flex fullwidth"
41
32
  :style="{
42
- justifyContent:
43
- justify, alignContent: props.align, alignItems: props.align
33
+ justifyContent: justify,
34
+ alignContent: props.align,
35
+ alignItems: props.align,
44
36
  }"
45
37
  >
46
38
  <slot />
@@ -49,7 +41,7 @@
49
41
  </button>
50
42
  </template>
51
43
  <script lang="ts" setup>
52
- import { computed, useNuxtApp } from "#imports";
44
+ import { computed, useNuxtApp, } from "#imports";
53
45
  //import { IonSpinner } from "@ionic/vue";
54
46
  const { $exakt } = useNuxtApp();
55
47
  const props = withDefaults(
@@ -63,7 +55,6 @@ const props = withDefaults(
63
55
  background?: string;
64
56
  block?: boolean;
65
57
  loading?: boolean;
66
- loadingGradient?: boolean;
67
58
  fab?: boolean;
68
59
  disabled?: boolean;
69
60
  align?: string;
@@ -80,15 +71,6 @@ const props = withDefaults(
80
71
  }
81
72
  );
82
73
 
83
-
84
- const contentStyles = computed(() => {
85
- if (props.justify === "space-between") {
86
- return "justify-content:stretch; flex-grow: 1";
87
- }
88
-
89
- return "";
90
- });
91
-
92
74
  function parseColor(input: string) {
93
75
  const div = document.createElement("div");
94
76
  document.body.appendChild(div);
@@ -115,8 +97,8 @@ const textColor = computed(() => {
115
97
  if (props.color) {
116
98
  return props.color;
117
99
  }
118
- if (props.background == 'transparent') {
119
- return 'var(--e-color-dark)'
100
+ if (props.background == "transparent") {
101
+ return "var(--e-color-dark)";
120
102
  }
121
103
  const rgb = backgroundColorRgb.value;
122
104
 
@@ -140,12 +122,6 @@ const hoverColor = computed(() => {
140
122
  });
141
123
  </script>
142
124
  <style lang="scss" scoped>
143
- .prog-grad {
144
- position: absolute;
145
- top: 0;
146
- left: 0;
147
- }
148
-
149
125
  .e-btn-content {
150
126
  transition: transform 0.1s ease-in-out;
151
127
  flex-direction: row;
@@ -153,7 +129,8 @@ const hoverColor = computed(() => {
153
129
  position: relative;
154
130
  align-content: center;
155
131
  align-items: center;
156
- justify-content: center;
132
+ justify-content: stretch;
133
+ flex-grow: 1;
157
134
  }
158
135
 
159
136
  .e-btn {
@@ -162,7 +139,7 @@ const hoverColor = computed(() => {
162
139
  display: flex;
163
140
  font-size: 1rem;
164
141
 
165
- justify-content: center;
142
+ justify-content: stretch;
166
143
  align-content: center;
167
144
  align-items: center;
168
145
  padding: 0.3rem var(--e-core-padding-x);
@@ -190,17 +167,6 @@ const hoverColor = computed(() => {
190
167
  &.loading {
191
168
  pointer-events: none;
192
169
 
193
- &.loadingGradient {
194
- background: rgba(0, 0, 0, 0) !important;
195
- color: var(--e-color-dark) !important;
196
- transition: background 0.8s, color 0.5s, opacity 0.4s;
197
-
198
- .actual-content {
199
- opacity: 0.8;
200
- transition: opacity 0.5s;
201
- }
202
- }
203
-
204
170
  .actual-content {
205
171
  opacity: 0;
206
172
  }
@@ -19,11 +19,10 @@
19
19
  </div>
20
20
  </template>
21
21
  <script setup lang="ts">
22
- import { mdiDelete, mdiFlag, mdiMinusCircle } from "@mdi/js";
23
22
  import { reactive, computed } from "#imports";
24
23
 
25
24
  const status = reactive({ dropdown: { visible: false, x: 0, y: 0 } });
26
- const items = [{ icon: mdiDelete, name: "Delete" }, { icon: mdiMinusCircle, name: "Delete just for me" }, { icon: mdiFlag, name: "Dox" }];
25
+ const items = [{ icon: 'delete', name: "Delete" }, { icon: 'remove', name: "Delete just for me" }, { icon: 'flag', name: "Dox" }];
27
26
 
28
27
  const openDropdown = ({ clientX, clientY }: MouseEvent) => {
29
28
  status.dropdown.visible = true;
@@ -69,7 +69,7 @@ const emit = defineEmits(["update:modelValue"]);
69
69
  .button-bar {
70
70
  display: flex;
71
71
  align-items: stretch;
72
- justify-content: space-between;
72
+ justify-content: flex-end;
73
73
  width: 100%;
74
74
  }
75
75
  </style>
@@ -38,9 +38,10 @@
38
38
  <e-icon
39
39
  v-if="item.icon"
40
40
  :size="20"
41
- :icon="item.icon"
42
41
  class="mr-2"
43
- />
42
+ >
43
+ {{ item.icon }}
44
+ </e-icon>
44
45
  {{ item.name }}
45
46
  </e-btn>
46
47
  </component>
@@ -1,30 +1,61 @@
1
1
  <template>
2
- <svg
3
- :viewBox="'0 0 ' + 24 + ' ' + 24"
4
- :height="size"
5
- :width="size"
6
- :fill="color"
2
+ <div
3
+ class="material-symbol"
4
+ :icon-style="iconStyle"
7
5
  >
8
- <path :d="icon" />
9
- </svg>
6
+ person
7
+ </div>
10
8
  </template>
11
9
  <script setup lang="ts">
12
- withDefaults(
10
+ import { computed } from "#imports";
11
+
12
+ const props = withDefaults(
13
13
  defineProps<{
14
- icon: string;
15
- color?: string;
16
- size?: number | string;
14
+ iconStyle?: 'outlined' | 'rounded' | 'sharp', size?: number|`${number}`, fill?:boolean|"0"|"1"|`${boolean}`, grade?:number|`${number}`, weight?: number|`${number}`
17
15
  }>(),
18
- {
19
- icon: "",
20
- color: "",
21
- size: "21",
22
- }
16
+ { iconStyle: 'rounded', size: 24, fill:false, weight: 400, grade:0}
23
17
  );
24
18
 
19
+ const sizePx = computed(() => props.size + "px")
20
+ const fillNum = computed(()=> {
21
+ if([true, "true", "1"].includes(props.fill)){
22
+ return 1;
23
+ }
24
+ return 0;
25
+ })
26
+
25
27
  </script>
26
- <style scoped lang="css">
27
- svg {
28
- fill: currentColor;
28
+ <style lang="scss">
29
+ .material-symbol {
30
+ font-weight: normal;
31
+ font-style: normal;
32
+ /* Preferred icon size */
33
+ display: inline-block;
34
+ line-height: 1;
35
+ text-transform: none;
36
+ letter-spacing: normal;
37
+ word-wrap: normal;
38
+ white-space: nowrap;
39
+ direction: ltr;
40
+ }
41
+
42
+ .material-symbol[icon-style="outlined"] {
43
+ font-family: 'Material Symbols Outlined';
44
+ }
45
+
46
+ .material-symbol[icon-style="rounded"] {
47
+ font-family: 'Material Symbols Rounded';
48
+ }
49
+
50
+ .material-symbol[icon-style="sharp"] {
51
+ font-family: 'Material Symbols Sharp';
29
52
  }
30
53
  </style>
54
+ <style scoped lang="scss">
55
+ .material-symbol {
56
+ font-size: v-bind('sizePx');
57
+ width: v-bind('sizePx');
58
+ height: v-bind('sizePx');
59
+ font-variation-settings: 'FILL' v-bind('fillNum'), 'wght' v-bind('props.weight'), 'GRAD' v-bind('props.grade'), 'opsz' v-bind('props.size');
60
+ }
61
+ </style>
@@ -8,9 +8,11 @@
8
8
  >
9
9
  <e-icon
10
10
  v-if="icon"
11
- :icon="icon"
11
+
12
12
  :size="size"
13
- />
13
+ >
14
+ {{ icon }}
15
+ </e-icon>
14
16
  <slot />
15
17
  </e-btn>
16
18
  </template>
@@ -8,10 +8,12 @@
8
8
  >
9
9
  <e-icon
10
10
  v-if="icon"
11
- :icon="icon"
12
11
  class="mr-2"
13
- size="21"
14
- />
12
+ size="24"
13
+ :fill="inputState.focused"
14
+ >
15
+ {{ icon }}
16
+ </e-icon>
15
17
  <textarea
16
18
  v-if="type === 'textarea'"
17
19
  ref="input"
@@ -19,10 +19,12 @@
19
19
  :class="{ 'mr-2': label, 'mx-4': !label }"
20
20
  >
21
21
  <e-icon
22
- :icon="icon"
22
+
23
23
  class="icon"
24
24
  :size="size"
25
- />
25
+ >
26
+ {{ icon }}
27
+ </e-icon>
26
28
  <transition name="fade">
27
29
  <div
28
30
  v-if="alert"
@@ -2,8 +2,8 @@
2
2
  <nuxt-link :to="to">
3
3
  <e-btn
4
4
  :solid="false"
5
- justify="stretch"
6
- block
5
+ justify="start"
6
+ :block="true"
7
7
  background="transparent"
8
8
  class="pa-0 ma-0 e-sidebar-btn"
9
9
  >
@@ -12,9 +12,11 @@
12
12
  class="e-sidebar-btn-icon"
13
13
  >
14
14
  <e-icon
15
- :icon="icon"
15
+
16
16
  size="22"
17
- />
17
+ >
18
+ {{ icon }}
19
+ </e-icon>
18
20
  </div>
19
21
  <div class="ml-4 d-flex flex-column e-sidebar-btn-text">
20
22
  <div class="mb-1">
@@ -49,9 +51,6 @@ defineProps<{
49
51
  position: relative;
50
52
  }
51
53
  .e-sidebar-btn {
52
- width: 100%;
53
- flex-grow: 0;
54
- flex-shrink: 0;
55
54
  min-height: 5rem;
56
55
  }
57
56
 
@@ -0,0 +1,30 @@
1
+ <template>
2
+ <nuxt-link to="/sidebar">
3
+ <e-btn
4
+ :solid="false"
5
+ justify="center"
6
+ :block="true"
7
+ background="transparent"
8
+ class="pa-0 ma-0 e-sidebar-icon"
9
+ >
10
+ <e-icon
11
+
12
+ size="22"
13
+ >
14
+ home
15
+ </e-icon>
16
+ </e-btn>
17
+ </nuxt-link>
18
+ </template>
19
+ <script lang="ts" setup>
20
+ </script>
21
+ <style lang="scss">
22
+
23
+ .router-link-active .e-sidebar-icon, .router-link-exact-active .e-sidebar-icon {
24
+ background-color: rgba(var(--e-color-primary-rgb), 0.25);
25
+ }
26
+
27
+ .e-sidebar-icon {
28
+ min-height: 5rem;
29
+ }
30
+ </style>
@@ -1,76 +1,200 @@
1
1
  <template>
2
- <div
3
- class="e-sidebar d-flex flex-column justify-start"
4
- @mouseenter="state.hover = true"
5
- @mouseleave="state.hover = false"
6
- >
7
- <slot />
8
- </div>
9
- <div class="e-sidebar-app-content">
10
- <slot name="app" />
2
+ <div>
3
+ <div class="e-sidebar collapsed d-flex flex-column justify-start">
4
+ <slot name="collapsed" />
5
+
6
+ <nuxt-link
7
+ v-for="(item, i) in props.items"
8
+ :key="i"
9
+ :to="item.to"
10
+ >
11
+ <e-btn
12
+ :solid="false"
13
+ justify="center"
14
+ :block="true"
15
+ background="transparent"
16
+ class="pa-0 ma-0 e-sidebar-btn"
17
+ >
18
+ <e-icon size="22">
19
+ {{ item.icon }}
20
+ </e-icon>
21
+ </e-btn>
22
+ </nuxt-link>
23
+ </div>
24
+ <div class="extended e-sidebar">
25
+ <slot name="extension" />
26
+
27
+ <nuxt-link
28
+ v-for="(item, i) in props.items"
29
+ :key="i"
30
+ :to="item.to"
31
+ >
32
+ <e-btn
33
+ :solid="false"
34
+ justify="start"
35
+ :block="true"
36
+ background="transparent"
37
+ class="pa-0 ma-0 e-sidebar-btn"
38
+ >
39
+ <div
40
+ v-if="item.icon"
41
+ class="icon"
42
+ >
43
+ <e-icon size="22">
44
+ {{ item.icon }}
45
+ </e-icon>
46
+ </div>
47
+ <div class="ml-4 d-flex flex-column text">
48
+ <div :class="{ 'mb-1': item.subtitle }">
49
+ {{ item.title }}
50
+ </div>
51
+ <div
52
+ v-if="item.subtitle"
53
+ class="text-secondary"
54
+ >
55
+ {{ item.subtitle }}
56
+ </div>
57
+ </div>
58
+ </e-btn>
59
+ </nuxt-link>
60
+ </div>
61
+
62
+ <div class="app-content">
63
+ <slot name="app" />
64
+ </div>
11
65
  </div>
12
66
  </template>
13
67
  <script setup lang="ts">
14
- import { reactive } from "#imports";
68
+ import { computed, reactive } from "#imports";
15
69
  const props = withDefaults(
16
70
  defineProps<{
17
71
  collapsedWidth?: number | string;
18
- width?: number | string;
72
+ expandedWidth?: number | string;
73
+ buttonHeight: string;
74
+ items: {
75
+ title: string;
76
+ icon: string;
77
+ subtitle?: string;
78
+ to: string;
79
+ position?: "top" | "bottom";
80
+ }[];
81
+ elev: 1 | 2 | 3 | "1" | "2" | "3";
82
+ moveContent: number;
83
+ nestingLevel: number;
19
84
  }>(),
20
- { width: "3.5rem" }
85
+ {
86
+ collapsedWidth: "3.5rem",
87
+ expandedWidth: "20rem",
88
+ buttonHeight: "3.5rem",
89
+ elev: 2,
90
+ moveContent: 0.5,
91
+ nestingLevel: 0,
92
+ }
21
93
  );
22
94
  const state = reactive({
23
95
  hover: false,
24
96
  });
97
+
98
+ const background = computed(() =>
99
+ Number(props.elev) == 1
100
+ ? "var(--e-color-elev)"
101
+ : `var(--e-color-elev-${props.elev})`
102
+ );
25
103
  </script>
26
104
  <style lang="scss" scoped>
27
105
  .e-sidebar,
28
- .e-sidebar-app-content {
106
+ .app-content {
29
107
  --collapsed-sidebar-width: v-bind(collapsedWidth);
30
- --expanded-sidebar-width: 20rem; //v-bind(width);
31
- --expansion-amount: calc(
32
- var(--expanded-sidebar-width) - var(--collapsed-sidebar-width)
33
- );
34
-
108
+ --expanded-sidebar-width: v-bind(expandedWidth);
109
+ --btn-height: v-bind(buttonHeight);
35
110
 
111
+ --expansion-amount: calc(
112
+ var(--expanded-sidebar-width) - var(--collapsed-sidebar-width)
113
+ );
114
+ --reveal-duration: 0.25s;
36
115
  }
37
116
  .e-sidebar {
38
-
39
- height: 100vh;
40
- width: var(--collapsed-sidebar-width);
41
- z-index: 5;
117
+ height: 100%;
42
118
  position: fixed;
43
119
  left: 0;
44
- top: 0;
45
- background-color: var(--e-color-elev-2);
46
- overflow-x: hidden;
47
- transition: width 0.25s ease-in-out;
120
+
121
+ background-color: v-bind("background");
122
+ overflow: clip;
123
+ top: calc(var(--btn-height) * v-bind("props.nestingLevel"));
48
124
 
125
+ &:hover ~ .app-content {
126
+ transform: translateX(
127
+ calc(var(--expansion-amount) * v-bind("props.moveContent"))
128
+ );
129
+ }
49
130
 
50
- &:hover ~ .e-sidebar-app-content {
131
+ &.collapsed {
132
+ width: var(--collapsed-sidebar-width);
133
+ z-index: 6;
134
+ padding-left: calc(
135
+ var(--collapsed-sidebar-width) * v-bind("props.nestingLevel")
136
+ );
51
137
 
52
- // transform: translateX(var(--expansion-amount));
138
+ &:hover ~ .extended {
139
+ transform: translateX(
140
+ calc(var(--collapsed-sidebar-width) * v-bind("props.nestingLevel"))
141
+ );
142
+ }
53
143
  }
54
- &:hover {
144
+
145
+ &.extended {
146
+ z-index: 5;
55
147
  width: var(--expanded-sidebar-width);
148
+ position: fixed;
149
+ // transform: translateX(calc(-1 * var(--expanded-sidebar-width)));
150
+ transform: translateX(-100%);
151
+ transition: transform var(--reveal-duration) ease-in-out;
56
152
 
153
+ &:hover {
154
+ transform: translateX(
155
+ calc(var(--collapsed-sidebar-width) * v-bind("props.nestingLevel"))
156
+ );
157
+ }
57
158
  }
58
-
59
-
60
159
  }
61
160
 
62
- .e-sidebar-app-content {
63
- transition: transform 0.25s ease-in-out;
161
+ .app-content {
162
+ transition: transform var(--reveal-duration) ease-in-out;
64
163
  background-color: var(--e-color-light);
65
164
  width: 100%;
66
- width: -moz-available; /* WebKit-based browsers will ignore this. */
67
- width: -webkit-fill-available; /* Mozilla-based browsers will ignore this. */
68
- width: fill-available;
165
+ width: fill-available;
69
166
  height: 100%;
70
- left: 3.5rem;
167
+ left: 0;
168
+ padding-left: var(--collapsed-sidebar-width);
71
169
  top: 0rem;
72
- position: absolute;
170
+ position: absolute;
171
+ transform: translateX(0);
73
172
  }
74
173
 
174
+ .e-sidebar-btn {
175
+ min-height: var(--btn-height);
176
+
177
+ .icon {
178
+ min-width: calc(
179
+ var(--collapsed-sidebar-width) - 0.1rem * 2
180
+ ); // Compensate the btn's accessibility border
75
181
 
182
+ display: block;
183
+ }
184
+
185
+ .text {
186
+ text-align: left;
187
+ max-width: calc(var(--expansion-amount) - 0.1rem * 2);
188
+
189
+ display: block;
190
+ flex-grow: 0;
191
+ flex-shrink: 0;
192
+ position: relative;
193
+ }
194
+ }
195
+
196
+ .router-link-active .e-sidebar-btn,
197
+ .router-link-exact-active .e-sidebar-btn {
198
+ background-color: rgba(var(--e-color-primary-rgb), 0.25);
199
+ }
76
200
  </style>
@@ -0,0 +1,17 @@
1
+
2
+
3
+ <template>
4
+ <div class="titlebar d-flex flex-align-center">
5
+ <h4>Title</h4>
6
+ </div>
7
+ </template>
8
+ <style lang="scss" scoped>
9
+ .titlebar{
10
+ position: sticky;
11
+ top:0;
12
+ left:0;
13
+ height:3.5rem;
14
+ padding-left: 3.5rem;
15
+ background-color: var(--e-color-elev-2);
16
+ }
17
+ </style>
@@ -2,12 +2,11 @@
2
2
  <e-icon-button
3
3
  class="rounded pa-1"
4
4
  size="20"
5
- :icon="modelValue ? mdiEye : mdiEyeOff"
5
+ :icon="modelValue ? 'visibility' : 'visibility_off'"
6
6
  @click.stop="emit('update:modelValue', !modelValue)"
7
7
  />
8
8
  </template>
9
9
  <script setup lang="ts">
10
- import { mdiEye, mdiEyeOff } from "@mdi/js";
11
10
  const emit = defineEmits(["update:modelValue"]);
12
11
 
13
12
  withDefaults(
@@ -8,7 +8,6 @@ $root-red-rgb: red($root-red), green($root-red), blue($root-red);
8
8
  $root-blue-rgb: red($root-blue), green($root-blue), blue($root-blue);
9
9
  $root-yellow-rgb: red($root-yellow), green($root-yellow), blue($root-yellow);
10
10
 
11
-
12
11
  .rounded {
13
12
  border-radius: var(--e-rounded-border-radius);
14
13
  }
@@ -66,17 +65,20 @@ a,
66
65
 
67
66
  @mixin elev($source, $lightness) {
68
67
  $root-elev: color.scale($source, $lightness: $lightness);
69
- $root-elev-2: color.scale($source, $lightness: $lightness * 2);
68
+ $root-elev-2: color.scale($source, $lightness: $lightness * 1.5);
69
+ $root-elev-3: color.scale($source, $lightness: $lightness * 2);
70
+
70
71
 
71
72
  --e-color-elev: #{$root-elev};
72
73
  --e-color-elev-rgb: #{red($root-elev), green($root-elev), blue($root-elev)};
73
74
 
74
75
  --e-color-elev-2: #{$root-elev-2};
75
76
  --e-color-elev-2-rgb: #{red($root-elev-2), green($root-elev-2),
76
- blue($root-elev-2)
77
- }
77
+ blue($root-elev-2)};
78
78
 
79
- ;
79
+ --e-color-elev-3: #{$root-elev-3};
80
+ --e-color-elev-3-rgb: #{red($root-elev-3), green($root-elev-3),
81
+ blue($root-elev-3)};
80
82
  }
81
83
 
82
84
  :root {
@@ -101,4 +103,4 @@ a,
101
103
  color-scheme: dark;
102
104
  @include elev($root-dark, 5%);
103
105
  }
104
- }
106
+ }
@@ -1,2 +1,3 @@
1
+ import 'material-symbols';
1
2
  declare const _default: any;
2
3
  export default _default;
@@ -1,4 +1,5 @@
1
1
  import { defineNuxtPlugin } from "#app";
2
+ import "material-symbols";
2
3
  export default defineNuxtPlugin(() => {
3
4
  return {
4
5
  provide: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exakt/ui",
3
- "version": "0.0.35",
3
+ "version": "0.0.37",
4
4
  "description": "A UI library for Nuxt.js",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -18,7 +18,7 @@
18
18
  ],
19
19
  "scripts": {
20
20
  "prepack": "nuxt-module-build",
21
- "dev": "nuxi dev playground",
21
+ "dev": "nuxi dev playground --host 0.0.0.0",
22
22
  "dev:build": "nuxi build playground",
23
23
  "dev:prepare": "nuxt-module-build --stub && nuxi prepare playground",
24
24
  "release": "npm run lint && npm run test && npm run prepack && changelogen --release && npm publish && git push --follow-tags",
@@ -27,10 +27,10 @@
27
27
  "test:watch": "vitest watch"
28
28
  },
29
29
  "dependencies": {
30
- "@mdi/js": "^7.1.96",
31
30
  "@nuxt/kit": "^3.2.3",
32
31
  "blurhash": "^2.0.5",
33
32
  "lodash-es": "^4.17.21",
33
+ "material-symbols": "latest",
34
34
  "sass": "^1.62.1"
35
35
  },
36
36
  "devDependencies": {
@@ -45,7 +45,7 @@
45
45
  "eslint": "^8.35.0",
46
46
  "eslint-plugin-unused-imports": "^3.0.0",
47
47
  "mkdist": "^1.2.0",
48
- "nuxt": "^3.7.1",
48
+ "nuxt": "^3.12.4",
49
49
  "vitest": "^0.29.2"
50
50
  },
51
51
  "directories": {
@@ -68,4 +68,4 @@
68
68
  },
69
69
  "homepage": "https://github.com/wd-4000/exakt#readme",
70
70
  "packageManager": "yarn@3.5.1"
71
- }
71
+ }