@namelivia/vue-components 4.4.5 → 4.6.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.
Files changed (54) hide show
  1. package/dist/index.esm.js +1083 -939
  2. package/dist/index.esm.js.map +1 -1
  3. package/dist/index.js +1111 -962
  4. package/dist/index.js.map +1 -1
  5. package/package.json +1 -1
  6. package/src/Badge/Badge.vue +3 -7
  7. package/src/Buttons/DangerButton/DangerButton.vue +5 -13
  8. package/src/Buttons/RegularButton/RegularButton.vue +24 -28
  9. package/src/Buttons/ResetButton/ResetButton.vue +3 -7
  10. package/src/Buttons/SecondaryButton/SecondaryButton.vue +5 -13
  11. package/src/Buttons/SubmitButton/SubmitButton.vue +4 -12
  12. package/src/Card/Card.vue +13 -19
  13. package/src/Card/CardBody.vue +4 -9
  14. package/src/Card/CardImage.vue +17 -24
  15. package/src/CardGrid/CardGrid.vue +2 -5
  16. package/src/Container/Container.vue +2 -5
  17. package/src/Icons/CalendarIcon/CalendarIcon.cy.js +10 -0
  18. package/src/Icons/CalendarIcon/CalendarIcon.stories.js +24 -0
  19. package/src/Icons/CalendarIcon/CalendarIcon.vue +16 -0
  20. package/src/Icons/CreateIcon/CreateIcon.cy.js +10 -0
  21. package/src/Icons/CreateIcon/CreateIcon.stories.js +24 -0
  22. package/src/Icons/CreateIcon/CreateIcon.vue +16 -0
  23. package/src/Icons/DropIcon/DropIcon.cy.js +33 -0
  24. package/src/Icons/DropIcon/DropIcon.stories.js +24 -0
  25. package/src/Icons/DropIcon/DropIcon.vue +30 -0
  26. package/src/Icons/SaveIcon/SaveIcon.cy.js +10 -0
  27. package/src/Icons/SaveIcon/SaveIcon.stories.js +24 -0
  28. package/src/Icons/SaveIcon/SaveIcon.vue +16 -0
  29. package/src/Icons/SkullIcon/SkullIcon.cy.js +10 -0
  30. package/src/Icons/SkullIcon/SkullIcon.stories.js +24 -0
  31. package/src/Icons/SkullIcon/SkullIcon.vue +16 -0
  32. package/src/Inputs/CheckBoxInput/CheckBoxInput.vue +9 -27
  33. package/src/Inputs/ImageInput/ImageInput.vue +10 -30
  34. package/src/Inputs/NumberInput/NumberInput.vue +12 -37
  35. package/src/Inputs/ResizeImageUpload/ResizeImageUpload.vue +28 -50
  36. package/src/Inputs/Selector/Selector.vue +27 -52
  37. package/src/Inputs/TextInput/TextInput.vue +10 -31
  38. package/src/Loading/Loading.vue +3 -7
  39. package/src/Modal/Modal.vue +9 -16
  40. package/src/Navbar/MobileMenuButton.vue +5 -17
  41. package/src/Navbar/MobileNavigationLink.vue +9 -27
  42. package/src/Navbar/MobileNavigationLinks.vue +6 -19
  43. package/src/Navbar/Navbar.vue +22 -53
  44. package/src/Navbar/NavbarTitle.vue +7 -19
  45. package/src/Navbar/NavigationLink.vue +9 -27
  46. package/src/Navbar/NavigationLinks.vue +5 -15
  47. package/src/Navbar/RightContent.vue +9 -24
  48. package/src/Pagination/Pagination.vue +8 -14
  49. package/src/RangeView/RangeView.vue +3 -7
  50. package/src/SectionTitle/SectionTitle.vue +5 -9
  51. package/src/Spinner/Spinner.vue +2 -5
  52. package/src/StyledTable/StyledTable.vue +2 -5
  53. package/src/Temperature/Temperature.vue +11 -22
  54. package/src/index.js +5 -0
package/dist/index.js CHANGED
@@ -2,22 +2,28 @@
2
2
 
3
3
  var vue = require('vue');
4
4
 
5
- var script$w = vue.defineComponent({
6
- name: 'SectionTitle',
5
+ const _hoisted_1$x = { class: "section-title" };
6
+
7
+
8
+ var script$B = {
9
+ __name: 'SectionTitle',
7
10
  props: {
8
- text: {
9
- type: String,
10
- default: ''
11
- }
11
+ text: {
12
+ type: String,
13
+ default: ''
12
14
  }
13
- });
15
+ },
16
+ setup(__props) {
14
17
 
15
- const _hoisted_1$s = { class: "section-title" };
16
18
 
17
- function render$w(_ctx, _cache, $props, $setup, $data, $options) {
18
- return (vue.openBlock(), vue.createElementBlock("h1", _hoisted_1$s, vue.toDisplayString(_ctx.text), 1 /* TEXT */))
19
+
20
+ return (_ctx, _cache) => {
21
+ return (vue.openBlock(), vue.createElementBlock("h1", _hoisted_1$x, vue.toDisplayString(__props.text), 1 /* TEXT */))
22
+ }
19
23
  }
20
24
 
25
+ };
26
+
21
27
  function styleInject(css, ref) {
22
28
  if ( ref === void 0 ) ref = {};
23
29
  var insertAt = ref.insertAt;
@@ -48,132 +54,140 @@ function styleInject(css, ref) {
48
54
  var css_248z$w = "\n.section-title[data-v-0375af86] {\n text-align: center;\n font-size: var(--font-size-xlarge);\n line-height: 1.5;\n}\n";
49
55
  styleInject(css_248z$w);
50
56
 
51
- script$w.render = render$w;
52
- script$w.__scopeId = "data-v-0375af86";
53
- script$w.__file = "src/SectionTitle/SectionTitle.vue";
57
+ script$B.__scopeId = "data-v-0375af86";
58
+ script$B.__file = "src/SectionTitle/SectionTitle.vue";
54
59
 
55
- var script$v = vue.defineComponent({
56
- name: "Loading",
60
+ var script$A = {
61
+ __name: 'Loading',
57
62
  props: {
58
- text: String,
59
- },
60
- });
63
+ text: String,
64
+ },
65
+ setup(__props) {
66
+
67
+
61
68
 
62
- function render$v(_ctx, _cache, $props, $setup, $data, $options) {
69
+ return (_ctx, _cache) => {
63
70
  return (vue.openBlock(), vue.createElementBlock("div", null, _cache[0] || (_cache[0] = [
64
71
  vue.createStaticVNode("<h1 class=\"loading-text\" data-v-7a9a3040>Loading...</h1><div class=\"loading-balls-container\" data-v-7a9a3040><div class=\"loading-ball blue\" data-v-7a9a3040></div><div class=\"loading-ball green\" data-v-7a9a3040></div><div class=\"loading-ball red\" data-v-7a9a3040></div></div>", 2)
65
72
  ])))
66
73
  }
74
+ }
75
+
76
+ };
67
77
 
68
78
  var css_248z$v = "\n.loading-text[data-v-7a9a3040] {\n text-align: center;\n font-size: var(--font-size-large);\n line-height: 1.75rem;\n}\n.loading-balls-container[data-v-7a9a3040] {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n animation: bounce-7a9a3040 1.5s infinite ease-in-out;\n}\n.loading-ball[data-v-7a9a3040] {\n width: 2rem;\n height: 2rem;\n border-radius: var(--border-radius-round);\n}\n.loading-ball.blue[data-v-7a9a3040] {\n background-color: var(--color-loading-ball-blue);\n}\n.loading-ball.green[data-v-7a9a3040] {\n background-color: var(--color-loading-ball-green);\n}\n.loading-ball.red[data-v-7a9a3040] {\n background-color: var(--color-loading-ball-red);\n}\n@keyframes bounce-7a9a3040 {\n0%, 100% {\n transform: translateY(0);\n}\n50% {\n transform: translateY(-1rem);\n}\n}\n";
69
79
  styleInject(css_248z$v);
70
80
 
71
- script$v.render = render$v;
72
- script$v.__scopeId = "data-v-7a9a3040";
73
- script$v.__file = "src/Loading/Loading.vue";
81
+ script$A.__scopeId = "data-v-7a9a3040";
82
+ script$A.__file = "src/Loading/Loading.vue";
74
83
 
75
- var script$u = vue.defineComponent({
76
- name: "CardImage",
84
+ const _hoisted_1$w = ["src", "alt"];
85
+
86
+
87
+ var script$z = {
88
+ __name: 'CardImage',
77
89
  props: {
78
- src: String,
79
- alt: String,
80
- },
81
- data: function () {
82
- return {
83
- imageWidth: 0,
84
- }
85
- },
86
- methods: {
87
- calculateWidth() {
88
- return this.$refs.image.clientWidth
89
- },
90
- },
90
+ src: String,
91
+ alt: String,
92
+ },
91
93
  emits: ['width'],
92
- mounted: function () {
93
- this.$emit('width', this.calculateWidth());
94
- },
95
- });
94
+ setup(__props, { emit: __emit }) {
95
+
96
+
97
+
98
+ const emit = __emit;
99
+ const image = vue.ref(null);
96
100
 
97
- const _hoisted_1$r = ["src", "alt"];
101
+ const calculateWidth = () => image.value.clientWidth;
98
102
 
99
- function render$u(_ctx, _cache, $props, $setup, $data, $options) {
103
+ vue.onMounted(() => {
104
+ emit('width', calculateWidth());
105
+ });
106
+
107
+ return (_ctx, _cache) => {
100
108
  return (vue.openBlock(), vue.createElementBlock("img", {
101
- src: _ctx.src,
102
- alt: _ctx.alt,
103
- ref: "image"
104
- }, null, 8 /* PROPS */, _hoisted_1$r))
109
+ src: __props.src,
110
+ alt: __props.alt,
111
+ ref_key: "image",
112
+ ref: image
113
+ }, null, 8 /* PROPS */, _hoisted_1$w))
114
+ }
105
115
  }
106
116
 
117
+ };
118
+
107
119
  var css_248z$u = "\nimg[data-v-5fa6a3f6] {\n width: 100%;\n}\n";
108
120
  styleInject(css_248z$u);
109
121
 
110
- script$u.render = render$u;
111
- script$u.__scopeId = "data-v-5fa6a3f6";
112
- script$u.__file = "src/Card/CardImage.vue";
113
-
114
- var script$t = vue.defineComponent({
115
- name: "CardBody",
116
- props: {
117
- title: String,
118
- },
119
- });
122
+ script$z.__scopeId = "data-v-5fa6a3f6";
123
+ script$z.__file = "src/Card/CardImage.vue";
120
124
 
121
- const _hoisted_1$q = { class: "card-body" };
125
+ const _hoisted_1$v = { class: "card-body" };
122
126
  const _hoisted_2$g = { class: "card-title" };
123
127
  const _hoisted_3$a = { class: "card-text" };
124
128
 
125
- function render$t(_ctx, _cache, $props, $setup, $data, $options) {
126
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$q, [
127
- vue.createElementVNode("div", _hoisted_2$g, vue.toDisplayString(_ctx.title), 1 /* TEXT */),
129
+
130
+ var script$y = {
131
+ __name: 'CardBody',
132
+ props: {
133
+ title: String,
134
+ },
135
+ setup(__props) {
136
+
137
+
138
+
139
+ return (_ctx, _cache) => {
140
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$v, [
141
+ vue.createElementVNode("div", _hoisted_2$g, vue.toDisplayString(__props.title), 1 /* TEXT */),
128
142
  vue.createElementVNode("p", _hoisted_3$a, [
129
143
  vue.renderSlot(_ctx.$slots, "default")
130
144
  ])
131
145
  ]))
132
146
  }
147
+ }
148
+
149
+ };
133
150
 
134
151
  var css_248z$t = "\n.card-body[data-v-c140cd30] {\n padding: var(--card-body-padding);\n}\n.card-title[data-v-c140cd30] {\n font-weight: var(--font-weight-bold);\n font-size: var(--font-size-large);\n margin-bottom: var(--card-title-margin-bottom);\n}\n.card-text[data-v-c140cd30] {\n color: var(--color-card-text);\n font-size: var(--font-size-base);\n}\n";
135
152
  styleInject(css_248z$t);
136
153
 
137
- script$t.render = render$t;
138
- script$t.__scopeId = "data-v-c140cd30";
139
- script$t.__file = "src/Card/CardBody.vue";
154
+ script$y.__scopeId = "data-v-c140cd30";
155
+ script$y.__file = "src/Card/CardBody.vue";
140
156
 
141
- var script$s = vue.defineComponent({
142
- name: "Card",
143
- props: {
144
- image: String,
145
- title: String,
146
- dismissed: {
147
- type: Boolean,
148
- default: false,
149
- },
150
- },
151
- components: {
152
- CardImage: script$u,
153
- CardBody: script$t,
154
- },
155
- emits: ['width']
156
- });
157
-
158
- const _hoisted_1$p = {
157
+ const _hoisted_1$u = {
159
158
  key: 0,
160
159
  class: "card-container"
161
160
  };
162
161
  const _hoisted_2$f = { class: "card" };
163
162
 
164
- function render$s(_ctx, _cache, $props, $setup, $data, $options) {
165
- const _component_card_image = vue.resolveComponent("card-image");
166
- const _component_card_body = vue.resolveComponent("card-body");
167
163
 
168
- return (!_ctx.dismissed)
169
- ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$p, [
164
+ var script$x = {
165
+ __name: 'Card',
166
+ props: {
167
+ image: String,
168
+ title: String,
169
+ dismissed: {
170
+ type: Boolean,
171
+ default: false,
172
+ },
173
+ },
174
+ emits: ['width'],
175
+ setup(__props) {
176
+
177
+
178
+
179
+
180
+
181
+ return (_ctx, _cache) => {
182
+ return (!__props.dismissed)
183
+ ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$u, [
170
184
  vue.createElementVNode("div", _hoisted_2$f, [
171
- vue.createVNode(_component_card_image, {
172
- src: _ctx.image,
173
- alt: _ctx.title,
185
+ vue.createVNode(script$z, {
186
+ src: __props.image,
187
+ alt: __props.title,
174
188
  onWidth: _cache[0] || (_cache[0] = $event => (_ctx.$emit('width', $event)))
175
189
  }, null, 8 /* PROPS */, ["src", "alt"]),
176
- vue.createVNode(_component_card_body, { title: _ctx.title }, {
190
+ vue.createVNode(script$y, { title: __props.title }, {
177
191
  default: vue.withCtx(() => [
178
192
  vue.renderSlot(_ctx.$slots, "default")
179
193
  ]),
@@ -183,120 +197,113 @@ function render$s(_ctx, _cache, $props, $setup, $data, $options) {
183
197
  ]))
184
198
  : vue.createCommentVNode("v-if", true)
185
199
  }
200
+ }
201
+
202
+ };
186
203
 
187
204
  var css_248z$s = "\n.card-container[data-v-da3858b4] {\n margin: var(--card-margin);\n}\n.card[data-v-da3858b4] {\n max-width: var(--card-max-width);\n border-radius: var(--border-radius-big);\n overflow: hidden;\n box-shadow: var(--card-shadow);\n}\n";
188
205
  styleInject(css_248z$s);
189
206
 
190
- script$s.render = render$s;
191
- script$s.__scopeId = "data-v-da3858b4";
192
- script$s.__file = "src/Card/Card.vue";
207
+ script$x.__scopeId = "data-v-da3858b4";
208
+ script$x.__file = "src/Card/Card.vue";
193
209
 
194
- var script$r = vue.defineComponent({
195
- name: "CardGrid"
196
- });
210
+ const _hoisted_1$t = { class: "card-grid" };
197
211
 
198
- const _hoisted_1$o = { class: "card-grid" };
199
212
 
200
- function render$r(_ctx, _cache, $props, $setup, $data, $options) {
201
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$o, [
213
+ var script$w = {
214
+ __name: 'CardGrid',
215
+ setup(__props) {
216
+
217
+ // No logic needed
218
+
219
+ return (_ctx, _cache) => {
220
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$t, [
202
221
  vue.renderSlot(_ctx.$slots, "default")
203
222
  ]))
204
223
  }
224
+ }
225
+
226
+ };
205
227
 
206
228
  var css_248z$r = "\n.card-grid[data-v-ad060034] {\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n align-content: center;\n}\n@media (min-width: 1024px) {\n.card-grid[data-v-ad060034] {\n justify-content: space-between;\n}\n}\n";
207
229
  styleInject(css_248z$r);
208
230
 
209
- script$r.render = render$r;
210
- script$r.__scopeId = "data-v-ad060034";
211
- script$r.__file = "src/CardGrid/CardGrid.vue";
231
+ script$w.__scopeId = "data-v-ad060034";
232
+ script$w.__file = "src/CardGrid/CardGrid.vue";
233
+
234
+ const _hoisted_1$s = { class: "container" };
212
235
 
213
- var script$q = vue.defineComponent({
214
- name: "Container"
215
- });
216
236
 
217
- const _hoisted_1$n = { class: "container" };
237
+ var script$v = {
238
+ __name: 'Container',
239
+ setup(__props) {
218
240
 
219
- function render$q(_ctx, _cache, $props, $setup, $data, $options) {
220
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$n, [
241
+ // No logic needed
242
+
243
+ return (_ctx, _cache) => {
244
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$s, [
221
245
  vue.renderSlot(_ctx.$slots, "default")
222
246
  ]))
223
247
  }
248
+ }
249
+
250
+ };
224
251
 
225
252
  var css_248z$q = "\n.container[data-v-7cccf06a] {\n max-width: var(--container-max-width);\n margin: var(--container-margin);\n}\n";
226
253
  styleInject(css_248z$q);
227
254
 
228
- script$q.render = render$q;
229
- script$q.__scopeId = "data-v-7cccf06a";
230
- script$q.__file = "src/Container/Container.vue";
255
+ script$v.__scopeId = "data-v-7cccf06a";
256
+ script$v.__file = "src/Container/Container.vue";
257
+
258
+ const _hoisted_1$r = ["href"];
231
259
 
232
- var script$p = vue.defineComponent({
233
- name: "MobileNavigationLink",
260
+ var script$u = {
261
+ __name: 'MobileNavigationLink',
234
262
  props: {
235
- text: {
236
- type: String,
237
- },
238
- href: {
239
- type: String,
240
- },
241
- current: {
242
- type: Boolean,
243
- },
244
- },
245
- computed: {
246
- linkClass: function () {
247
- if (this.current) {
248
- return 'current-link'
249
- }
250
- return 'regular-link'
251
- },
252
- linkDestination: function () {
253
- return this.current ? '#' : this.href
254
- },
255
- },
256
- });
263
+ text: String,
264
+ href: String,
265
+ current: Boolean,
266
+ },
267
+ setup(__props) {
257
268
 
258
- const _hoisted_1$m = ["href"];
269
+ const props = __props;
270
+ const linkClass = vue.computed(() => props.current ? 'current-link' : 'regular-link');
271
+ const linkDestination = vue.computed(() => props.current ? '#' : props.href);
259
272
 
260
- function render$p(_ctx, _cache, $props, $setup, $data, $options) {
273
+ return (_ctx, _cache) => {
261
274
  return (vue.openBlock(), vue.createElementBlock("a", {
262
- href: _ctx.linkDestination,
263
- class: vue.normalizeClass(_ctx.linkClass),
275
+ href: linkDestination.value,
276
+ class: vue.normalizeClass(linkClass.value),
264
277
  "aria-current": "page"
265
- }, vue.toDisplayString(_ctx.text), 11 /* TEXT, CLASS, PROPS */, _hoisted_1$m))
278
+ }, vue.toDisplayString(__props.text), 11 /* TEXT, CLASS, PROPS */, _hoisted_1$r))
266
279
  }
280
+ }
281
+
282
+ };
267
283
 
268
284
  var css_248z$p = "\n.current-link[data-v-3e279546] {\n background-color: var(--color-navbar-current-background);\n color: var(--color-navbar-text);\n display: block;\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n border-radius: 0.375rem;\n font-size: var(--font-size-navbar);\n text-decoration: none;\n cursor: default;\n}\n.regular-link[data-v-3e279546] {\n color: var(--color-navbar-text);\n display: block;\n padding: 0.5rem 0.75rem;\n border-radius: 0.375rem;\n font-size: var(--font-size-navbar);\n transition: background-color 0.2s ease, color 0.2s ease;\n text-decoration: none;\n}\n.regular-link[data-v-3e279546]:hover {\n background-color: var(--color-navbar-link-background);\n}\n";
269
285
  styleInject(css_248z$p);
270
286
 
271
- script$p.render = render$p;
272
- script$p.__scopeId = "data-v-3e279546";
273
- script$p.__file = "src/Navbar/MobileNavigationLink.vue";
287
+ script$u.__scopeId = "data-v-3e279546";
288
+ script$u.__file = "src/Navbar/MobileNavigationLink.vue";
274
289
 
275
- var script$o = vue.defineComponent({
276
- name: "MobileNavigationLinks",
277
- components: {
278
- MobileNavigationLink: script$p,
279
- },
280
- props: {
281
- links: {
282
- type: Array,
283
- },
284
- open: {
285
- type: Boolean,
286
- default: false,
287
- },
288
- },
289
- });
290
-
291
- const _hoisted_1$l = {
290
+ const _hoisted_1$q = {
292
291
  key: 0,
293
292
  id: "mobile-menu"
294
293
  };
295
294
  const _hoisted_2$e = { class: "menu-panel" };
296
295
 
297
- function render$o(_ctx, _cache, $props, $setup, $data, $options) {
298
- const _component_mobile_navigation_link = vue.resolveComponent("mobile-navigation-link");
296
+ var script$t = {
297
+ __name: 'MobileNavigationLinks',
298
+ props: {
299
+ links: Array,
300
+ open: { type: Boolean, default: false },
301
+ },
302
+ setup(__props) {
303
+
299
304
 
305
+
306
+ return (_ctx, _cache) => {
300
307
  return (vue.openBlock(), vue.createBlock(vue.Transition, {
301
308
  "enter-active-class": "fade-scale-enter-active",
302
309
  "leave-active-class": "fade-scale-leave-active",
@@ -306,11 +313,11 @@ function render$o(_ctx, _cache, $props, $setup, $data, $options) {
306
313
  "leave-to-class": "fade-scale-leave-to"
307
314
  }, {
308
315
  default: vue.withCtx(() => [
309
- (_ctx.open)
310
- ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$l, [
316
+ (__props.open)
317
+ ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$q, [
311
318
  vue.createElementVNode("div", _hoisted_2$e, [
312
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.links, (link) => {
313
- return (vue.openBlock(), vue.createBlock(_component_mobile_navigation_link, {
319
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.links, (link) => {
320
+ return (vue.openBlock(), vue.createBlock(script$u, {
314
321
  key: link.id,
315
322
  href: link.href,
316
323
  text: link.text,
@@ -324,79 +331,65 @@ function render$o(_ctx, _cache, $props, $setup, $data, $options) {
324
331
  _: 1 /* STABLE */
325
332
  }))
326
333
  }
334
+ }
335
+
336
+ };
327
337
 
328
338
  var css_248z$o = "\n.fade-scale-enter-active[data-v-eb1296c6],\n.fade-scale-leave-active[data-v-eb1296c6] {\n transition: all 200ms ease;\n}\n.fade-scale-enter-from[data-v-eb1296c6],\n.fade-scale-leave-to[data-v-eb1296c6] {\n transform: scaleY(0);\n transform-origin: top;\n}\n.fade-scale-enter-to[data-v-eb1296c6],\n.fade-scale-leave-from[data-v-eb1296c6] {\n transform: scaleY(1);\n transform-origin: top;\n}\n#mobile-menu[data-v-eb1296c6] {\n display: block;\n}\n.menu-panel[data-v-eb1296c6] {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n padding-top: 0.5rem;\n padding-bottom: 0.75rem;\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n background-color: var(--color-navbar-background);\n}\n@media (min-width: 640px) {\n#mobile-menu[data-v-eb1296c6] {\n display: none;\n}\n}\n";
329
339
  styleInject(css_248z$o);
330
340
 
331
- script$o.render = render$o;
332
- script$o.__scopeId = "data-v-eb1296c6";
333
- script$o.__file = "src/Navbar/MobileNavigationLinks.vue";
341
+ script$t.__scopeId = "data-v-eb1296c6";
342
+ script$t.__file = "src/Navbar/MobileNavigationLinks.vue";
334
343
 
335
- var script$n = vue.defineComponent({
336
- name: "NavigationLink",
344
+ const _hoisted_1$p = ["href"];
345
+
346
+ var script$s = {
347
+ __name: 'NavigationLink',
337
348
  props: {
338
- text: {
339
- type: String,
340
- },
341
- href: {
342
- type: String,
343
- },
344
- current: {
345
- type: Boolean,
346
- },
347
- },
348
- computed: {
349
- linkClass: function () {
350
- if (this.current) {
351
- return 'current-link'
352
- }
353
- return 'regular-link'
354
- },
355
- linkDestination: function () {
356
- return this.current ? '#' : this.href
357
- },
358
- },
359
- });
349
+ text: String,
350
+ href: String,
351
+ current: Boolean,
352
+ },
353
+ setup(__props) {
360
354
 
361
- const _hoisted_1$k = ["href"];
355
+ const props = __props;
356
+ const linkClass = vue.computed(() => props.current ? 'current-link' : 'regular-link');
357
+ const linkDestination = vue.computed(() => props.current ? '#' : props.href);
362
358
 
363
- function render$n(_ctx, _cache, $props, $setup, $data, $options) {
359
+ return (_ctx, _cache) => {
364
360
  return (vue.openBlock(), vue.createElementBlock("a", {
365
- href: _ctx.linkDestination,
366
- class: vue.normalizeClass(_ctx.linkClass),
361
+ href: linkDestination.value,
362
+ class: vue.normalizeClass(linkClass.value),
367
363
  "aria-current": "page"
368
- }, vue.toDisplayString(_ctx.text), 11 /* TEXT, CLASS, PROPS */, _hoisted_1$k))
364
+ }, vue.toDisplayString(__props.text), 11 /* TEXT, CLASS, PROPS */, _hoisted_1$p))
365
+ }
369
366
  }
370
367
 
368
+ };
369
+
371
370
  var css_248z$n = "\n.current-link[data-v-4989b384] {\n background-color: var(--color-navbar-current-background);\n color: var(--color-navbar-text);\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n border-radius: 0.375rem;\n font-size: var(--font-size-navbar);\n text-decoration: none;\n cursor: default;\n}\n.regular-link[data-v-4989b384] {\n color: var(--color-navbar-text);\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n border-radius: 0.375rem;\n font-size: var(--font-size-navbar);\n transition: background-color 0.2s ease, color 0.2s ease;\n text-decoration: none;\n}\n.regular-link[data-v-4989b384]:hover {\n background-color: var(--color-navbar-link-background);\n}\n";
372
371
  styleInject(css_248z$n);
373
372
 
374
- script$n.render = render$n;
375
- script$n.__scopeId = "data-v-4989b384";
376
- script$n.__file = "src/Navbar/NavigationLink.vue";
373
+ script$s.__scopeId = "data-v-4989b384";
374
+ script$s.__file = "src/Navbar/NavigationLink.vue";
377
375
 
378
- var script$m = vue.defineComponent({
379
- name: "NavigationLinks",
380
- components: {
381
- NavigationLink: script$n,
382
- },
376
+ const _hoisted_1$o = { class: "links-container" };
377
+ const _hoisted_2$d = { class: "links-wrapper" };
378
+
379
+ var script$r = {
380
+ __name: 'NavigationLinks',
383
381
  props: {
384
- links: {
385
- type: Array,
386
- },
387
- },
388
- });
382
+ links: Array,
383
+ },
384
+ setup(__props) {
389
385
 
390
- const _hoisted_1$j = { class: "links-container" };
391
- const _hoisted_2$d = { class: "links-wrapper" };
392
386
 
393
- function render$m(_ctx, _cache, $props, $setup, $data, $options) {
394
- const _component_navigation_link = vue.resolveComponent("navigation-link");
395
387
 
396
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$j, [
388
+ return (_ctx, _cache) => {
389
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$o, [
397
390
  vue.createElementVNode("div", _hoisted_2$d, [
398
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.links, (link) => {
399
- return (vue.openBlock(), vue.createBlock(_component_navigation_link, {
391
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.links, (link) => {
392
+ return (vue.openBlock(), vue.createBlock(script$s, {
400
393
  key: link.id,
401
394
  href: link.href,
402
395
  text: link.text,
@@ -406,126 +399,113 @@ function render$m(_ctx, _cache, $props, $setup, $data, $options) {
406
399
  ])
407
400
  ]))
408
401
  }
402
+ }
403
+
404
+ };
409
405
 
410
406
  var css_248z$m = "\n.links-container[data-v-294f43c2] {\n display: none;\n}\n.links-wrapper[data-v-294f43c2] {\n display: flex;\n gap: 1rem;\n}\n@media (min-width: 640px) {\n.links-container[data-v-294f43c2] {\n display: block;\n margin-left: 1.5rem;\n}\n}\n";
411
407
  styleInject(css_248z$m);
412
408
 
413
- script$m.render = render$m;
414
- script$m.__scopeId = "data-v-294f43c2";
415
- script$m.__file = "src/Navbar/NavigationLinks.vue";
409
+ script$r.__scopeId = "data-v-294f43c2";
410
+ script$r.__file = "src/Navbar/NavigationLinks.vue";
416
411
 
417
- var script$l = vue.defineComponent({
418
- name: "NavbarTitle",
419
- props: {
420
- href: {
421
- type: String,
422
- },
423
- title: {
424
- type: String,
425
- },
426
- imageBig: {
427
- type: String,
428
- },
429
- imageSmall: {
430
- type: String,
431
- },
432
- }
433
- });
434
-
435
- const _hoisted_1$i = ["href"];
412
+ const _hoisted_1$n = ["href"];
436
413
  const _hoisted_2$c = ["src", "alt"];
437
414
  const _hoisted_3$9 = ["src", "alt"];
438
415
 
439
- function render$l(_ctx, _cache, $props, $setup, $data, $options) {
416
+
417
+ var script$q = {
418
+ __name: 'NavbarTitle',
419
+ props: {
420
+ href: String,
421
+ title: String,
422
+ imageBig: String,
423
+ imageSmall: String,
424
+ },
425
+ setup(__props) {
426
+
427
+
428
+
429
+ return (_ctx, _cache) => {
440
430
  return (vue.openBlock(), vue.createElementBlock("a", {
441
431
  class: "title-container",
442
- href: _ctx.href
432
+ href: __props.href
443
433
  }, [
444
434
  vue.createElementVNode("img", {
445
435
  class: "logo-small",
446
- src: _ctx.imageSmall,
447
- alt: _ctx.title
436
+ src: __props.imageSmall,
437
+ alt: __props.title
448
438
  }, null, 8 /* PROPS */, _hoisted_2$c),
449
439
  vue.createElementVNode("img", {
450
440
  class: "logo-big",
451
- src: _ctx.imageBig,
452
- alt: _ctx.title
441
+ src: __props.imageBig,
442
+ alt: __props.title
453
443
  }, null, 8 /* PROPS */, _hoisted_3$9)
454
- ], 8 /* PROPS */, _hoisted_1$i))
444
+ ], 8 /* PROPS */, _hoisted_1$n))
445
+ }
455
446
  }
456
447
 
448
+ };
449
+
457
450
  var css_248z$l = "\n.title-container[data-v-661ef87c] {\n flex-shrink: 0;\n display: flex;\n align-items: center;\n}\n.logo-small[data-v-661ef87c] {\n display: block;\n height: 2rem;\n width: auto;\n}\n.logo-big[data-v-661ef87c] {\n display: none;\n height: 2rem;\n width: auto;\n}\n@media (min-width: 1024px) {\n.logo-small[data-v-661ef87c] {\n display: none;\n}\n.logo-big[data-v-661ef87c] {\n display: block;\n}\n}\n\n\n";
458
451
  styleInject(css_248z$l);
459
452
 
460
- script$l.render = render$l;
461
- script$l.__scopeId = "data-v-661ef87c";
462
- script$l.__file = "src/Navbar/NavbarTitle.vue";
453
+ script$q.__scopeId = "data-v-661ef87c";
454
+ script$q.__file = "src/Navbar/NavbarTitle.vue";
463
455
 
464
- var script$k = vue.defineComponent({
465
- name: "RightContent",
466
- props: {
467
- locale: {
468
- type: String,
469
- },
470
- currentUserEmail: {
471
- type: String,
472
- },
473
- currentUserName: {
474
- type: String,
475
- },
476
- currentUserPicture: {
477
- type: String,
478
- },
479
- },
480
- computed: {
481
- avatarAlt: function () {
482
- return this.currentUserName + ` (${this.currentUserEmail})`
483
- },
484
- },
485
- });
486
-
487
- const _hoisted_1$h = { class: "action-container" };
456
+ const _hoisted_1$m = { class: "action-container" };
488
457
  const _hoisted_2$b = ["src", "alt"];
489
458
 
490
- function render$k(_ctx, _cache, $props, $setup, $data, $options) {
491
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$h, [
459
+ var script$p = {
460
+ __name: 'RightContent',
461
+ props: {
462
+ locale: String,
463
+ currentUserEmail: String,
464
+ currentUserName: String,
465
+ currentUserPicture: String,
466
+ },
467
+ setup(__props) {
468
+
469
+ const props = __props;
470
+ const avatarAlt = vue.computed(() => `${props.currentUserName} (${props.currentUserEmail})`);
471
+
472
+ return (_ctx, _cache) => {
473
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$m, [
492
474
  vue.createElementVNode("img", {
493
475
  class: "circle-image",
494
- src: _ctx.currentUserPicture,
495
- alt: _ctx.avatarAlt
476
+ src: __props.currentUserPicture,
477
+ alt: avatarAlt.value
496
478
  }, null, 8 /* PROPS */, _hoisted_2$b)
497
479
  ]))
498
480
  }
481
+ }
482
+
483
+ };
499
484
 
500
485
  var css_248z$k = "\n.action-container[data-v-07675a13] {\n position: absolute;\n top: 0;\n bottom: 0;\n right: 0;\n display: flex;\n align-items: center;\n padding-right: 0.5rem;\n color: var(--color-navbar-text);\n font-size: var(--font-size-navbar);\n}\n.circle-image[data-v-07675a13] {\n border-radius: 9999px;\n padding: 0.25rem;\n height: 50px;\n width: 50px;\n}\n@media (min-width: 640px) {\n.action-container[data-v-07675a13] {\n position: static;\n top: auto;\n bottom: auto;\n right: auto;\n margin-left: 1.5rem;\n padding-right: 0;\n}\n}\n\n";
501
486
  styleInject(css_248z$k);
502
487
 
503
- script$k.render = render$k;
504
- script$k.__scopeId = "data-v-07675a13";
505
- script$k.__file = "src/Navbar/RightContent.vue";
488
+ script$p.__scopeId = "data-v-07675a13";
489
+ script$p.__file = "src/Navbar/RightContent.vue";
506
490
 
507
- var script$j = vue.defineComponent({
508
- name: "MobileMenuButton",
491
+ var script$o = {
492
+ __name: 'MobileMenuButton',
509
493
  props: {
510
- open: {
511
- type: Boolean,
512
- default: false,
513
- },
514
- },
494
+ open: { type: Boolean, default: false },
495
+ },
515
496
  emits: ['click'],
516
- methods: {
517
- onClick(evt) {
518
- this.$emit('click', evt);
519
- },
520
- },
521
- });
497
+ setup(__props, { emit: __emit }) {
498
+
522
499
 
523
- function render$j(_ctx, _cache, $props, $setup, $data, $options) {
500
+ const emit = __emit;
501
+ const onClick = (evt) => emit('click', evt);
502
+
503
+ return (_ctx, _cache) => {
524
504
  return (vue.openBlock(), vue.createElementBlock("button", {
525
505
  class: "menu-button",
526
506
  type: "button",
527
- onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.onClick && _ctx.onClick(...args)))
528
- }, _cache[1] || (_cache[1] = [
507
+ onClick: onClick
508
+ }, _cache[0] || (_cache[0] = [
529
509
  vue.createElementVNode("svg", {
530
510
  class: "menu-icon",
531
511
  xmlns: "http://www.w3.org/2000/svg",
@@ -542,383 +522,428 @@ function render$j(_ctx, _cache, $props, $setup, $data, $options) {
542
522
  ], -1 /* HOISTED */)
543
523
  ])))
544
524
  }
525
+ }
526
+
527
+ };
545
528
 
546
529
  var css_248z$j = "\n.menu-button[data-v-397545ee] {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n padding: 0.5rem;\n border-radius: var(--border-radius-big);\n color: var(--color-navbar-text);\n background-color: transparent;\n transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;\n border: none;\n cursor: pointer;\n}\n.menu-icon[data-v-397545ee] {\n display: block;\n height: 1.5rem;\n width: 1.5rem;\n}\n";
547
530
  styleInject(css_248z$j);
548
531
 
549
- script$j.render = render$j;
550
- script$j.__scopeId = "data-v-397545ee";
551
- script$j.__file = "src/Navbar/MobileMenuButton.vue";
552
-
553
- var script$i = vue.defineComponent({
554
- name: "Navbar",
555
- components: {
556
- NavbarTitle: script$l,
557
- NavigationLinks: script$m,
558
- MobileNavigationLinks: script$o,
559
- RightContent: script$k,
560
- MobileMenuButton: script$j,
561
- },
562
- data() {
563
- return {
564
- mobileMenuOpen: false,
565
- }
566
- },
567
- props: {
568
- links: {
569
- type: Array,
570
- },
571
- locale: {
572
- type: String,
573
- },
574
- currentUserEmail: {
575
- type: String,
576
- },
577
- currentUserName: {
578
- type: String,
579
- },
580
- currentUserPicture: {
581
- type: String,
582
- },
583
- title: {
584
- type: String,
585
- },
586
- imageBig: {
587
- type: String,
588
- },
589
- imageSmall: {
590
- type: String,
591
- },
592
- },
593
- methods: {
594
- onMobileMenuClick() {
595
- this.mobileMenuOpen = !this.mobileMenuOpen;
596
- },
597
- }
598
- });
532
+ script$o.__scopeId = "data-v-397545ee";
533
+ script$o.__file = "src/Navbar/MobileMenuButton.vue";
599
534
 
600
- const _hoisted_1$g = { class: "navbar" };
535
+ const _hoisted_1$l = { class: "navbar" };
601
536
  const _hoisted_2$a = { class: "navbar-container" };
602
537
  const _hoisted_3$8 = { class: "flex-header" };
603
538
  const _hoisted_4$3 = { class: "menu-toggle" };
604
539
  const _hoisted_5$2 = { class: "title-container" };
605
540
 
606
- function render$i(_ctx, _cache, $props, $setup, $data, $options) {
607
- const _component_mobile_menu_button = vue.resolveComponent("mobile-menu-button");
608
- const _component_navbar_title = vue.resolveComponent("navbar-title");
609
- const _component_navigation_links = vue.resolveComponent("navigation-links");
610
- const _component_right_content = vue.resolveComponent("right-content");
611
- const _component_mobile_navigation_links = vue.resolveComponent("mobile-navigation-links");
612
541
 
613
- return (vue.openBlock(), vue.createElementBlock("nav", _hoisted_1$g, [
542
+ var script$n = {
543
+ __name: 'Navbar',
544
+ props: {
545
+ links: Array,
546
+ locale: String,
547
+ currentUserEmail: String,
548
+ currentUserName: String,
549
+ currentUserPicture: String,
550
+ title: String,
551
+ imageBig: String,
552
+ imageSmall: String,
553
+ },
554
+ setup(__props) {
555
+
556
+
557
+
558
+ const mobileMenuOpen = vue.ref(false);
559
+ const onMobileMenuClick = () => {
560
+ mobileMenuOpen.value = !mobileMenuOpen.value;
561
+ };
562
+
563
+ return (_ctx, _cache) => {
564
+ return (vue.openBlock(), vue.createElementBlock("nav", _hoisted_1$l, [
614
565
  vue.createElementVNode("div", _hoisted_2$a, [
615
566
  vue.createElementVNode("div", _hoisted_3$8, [
616
567
  vue.createElementVNode("div", _hoisted_4$3, [
617
- vue.createVNode(_component_mobile_menu_button, {
618
- onClick: _ctx.onMobileMenuClick,
619
- open: _ctx.mobileMenuOpen
620
- }, null, 8 /* PROPS */, ["onClick", "open"])
568
+ vue.createVNode(script$o, {
569
+ onClick: onMobileMenuClick,
570
+ open: mobileMenuOpen.value
571
+ }, null, 8 /* PROPS */, ["open"])
621
572
  ]),
622
573
  vue.createElementVNode("div", _hoisted_5$2, [
623
- vue.createVNode(_component_navbar_title, {
574
+ vue.createVNode(script$q, {
624
575
  href: "/",
625
- title: _ctx.title,
626
- imageBig: _ctx.imageBig,
627
- imageSmall: _ctx.imageSmall
576
+ title: __props.title,
577
+ imageBig: __props.imageBig,
578
+ imageSmall: __props.imageSmall
628
579
  }, null, 8 /* PROPS */, ["title", "imageBig", "imageSmall"]),
629
- vue.createVNode(_component_navigation_links, { links: _ctx.links }, null, 8 /* PROPS */, ["links"])
580
+ vue.createVNode(script$r, { links: __props.links }, null, 8 /* PROPS */, ["links"])
630
581
  ]),
631
- vue.createVNode(_component_right_content, {
632
- locale: _ctx.locale,
633
- "current-user-email": _ctx.currentUserEmail,
634
- "current-user-name": _ctx.currentUserName,
635
- "current-user-picture": _ctx.currentUserPicture
582
+ vue.createVNode(script$p, {
583
+ locale: __props.locale,
584
+ "current-user-email": __props.currentUserEmail,
585
+ "current-user-name": __props.currentUserName,
586
+ "current-user-picture": __props.currentUserPicture
636
587
  }, null, 8 /* PROPS */, ["locale", "current-user-email", "current-user-name", "current-user-picture"])
637
588
  ])
638
589
  ]),
639
- vue.createVNode(_component_mobile_navigation_links, {
640
- links: _ctx.links,
641
- open: _ctx.mobileMenuOpen
590
+ vue.createVNode(script$t, {
591
+ links: __props.links,
592
+ open: mobileMenuOpen.value
642
593
  }, null, 8 /* PROPS */, ["links", "open"])
643
594
  ]))
644
595
  }
596
+ }
597
+
598
+ };
645
599
 
646
600
  var css_248z$i = "\n.navbar[data-v-1b5caf34] {\n background-color: var(--color-navbar-background);\n}\n.navbar-container[data-v-1b5caf34] {\n max-width: 80rem;\n margin-left: auto;\n margin-right: auto;\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n.flex-header[data-v-1b5caf34] {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: space-between;\n height: 4rem;\n}\n.menu-toggle[data-v-1b5caf34] {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n display: flex;\n align-items: center;\n}\n.title-container[data-v-1b5caf34] {\n flex: 1 1 0%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n@media (min-width: 640px) {\n.navbar-container[data-v-1b5caf34] {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n.menu-toggle[data-v-1b5caf34] {\n display: none;\n}\n.title-container[data-v-1b5caf34] {\n align-items: stretch;\n justify-content: flex-start;\n}\n}\n@media (min-width: 1024px) {\n.navbar-container[data-v-1b5caf34] {\n padding-left: 2rem;\n padding-right: 2rem;\n}\n}\n";
647
601
  styleInject(css_248z$i);
648
602
 
649
- script$i.render = render$i;
650
- script$i.__scopeId = "data-v-1b5caf34";
651
- script$i.__file = "src/Navbar/Navbar.vue";
603
+ script$n.__scopeId = "data-v-1b5caf34";
604
+ script$n.__file = "src/Navbar/Navbar.vue";
605
+
606
+ const _hoisted_1$k = { class: "styled-table" };
652
607
 
653
- var script$h = vue.defineComponent({
654
- name: "StyledTable",
655
- });
656
608
 
657
- const _hoisted_1$f = { class: "styled-table" };
609
+ var script$m = {
610
+ __name: 'StyledTable',
611
+ setup(__props) {
658
612
 
659
- function render$h(_ctx, _cache, $props, $setup, $data, $options) {
660
- return (vue.openBlock(), vue.createElementBlock("table", _hoisted_1$f, [
613
+ // No logic needed
614
+
615
+ return (_ctx, _cache) => {
616
+ return (vue.openBlock(), vue.createElementBlock("table", _hoisted_1$k, [
661
617
  vue.renderSlot(_ctx.$slots, "default")
662
618
  ]))
663
619
  }
620
+ }
621
+
622
+ };
664
623
 
665
624
  var css_248z$h = "\n.styled-table[data-v-8e6b2044] {\n width: 100%;\n border-collapse: collapse;\n}\n";
666
625
  styleInject(css_248z$h);
667
626
 
668
- script$h.render = render$h;
669
- script$h.__scopeId = "data-v-8e6b2044";
670
- script$h.__file = "src/StyledTable/StyledTable.vue";
627
+ script$m.__scopeId = "data-v-8e6b2044";
628
+ script$m.__file = "src/StyledTable/StyledTable.vue";
629
+
630
+ const _hoisted_1$j = ["disabled"];
671
631
 
672
- var script$g = vue.defineComponent({
673
- name: "RegularButton",
632
+
633
+ var script$l = {
634
+ __name: 'RegularButton',
674
635
  props: {
675
- text: String,
676
- loading: {
677
- type: Boolean,
678
- default: false,
679
- },
680
- textWhileLoading: {
681
- type: String,
682
- default: '...',
683
- },
684
- },
685
- emits: ['click'],
686
- computed: {
687
- cssClass: function () {
688
- if (this.loading) {
689
- return 'regular-button loading';
690
- }
691
- return 'regular-button'
692
- },
636
+ text: String,
637
+ loading: {
638
+ type: Boolean,
639
+ default: false,
693
640
  },
694
- methods: {
695
- onClick(evt) {
696
- this.$emit('click', evt);
697
- },
641
+ textWhileLoading: {
642
+ type: String,
643
+ default: '...',
698
644
  },
645
+ },
646
+ emits: ['click'],
647
+ setup(__props, { emit: __emit }) {
648
+
649
+ const props = __props;
650
+
651
+ const emit = __emit;
652
+
653
+ const cssClass = vue.computed(() => {
654
+ if (props.loading) {
655
+ return 'regular-button loading';
656
+ }
657
+ return 'regular-button';
699
658
  });
700
659
 
701
- const _hoisted_1$e = ["disabled"];
660
+ const onClick = (evt) => {
661
+ emit('click', evt);
662
+ };
702
663
 
703
- function render$g(_ctx, _cache, $props, $setup, $data, $options) {
664
+ return (_ctx, _cache) => {
704
665
  return (vue.openBlock(), vue.createElementBlock("button", {
705
- onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.onClick && _ctx.onClick(...args))),
706
- class: vue.normalizeClass(_ctx.cssClass),
707
- disabled: _ctx.loading
708
- }, vue.toDisplayString(_ctx.loading ? _ctx.textWhileLoading : _ctx.text), 11 /* TEXT, CLASS, PROPS */, _hoisted_1$e))
666
+ onClick: onClick,
667
+ class: vue.normalizeClass(cssClass.value),
668
+ disabled: __props.loading
669
+ }, vue.toDisplayString(__props.loading ? __props.textWhileLoading : __props.text), 11 /* TEXT, CLASS, PROPS */, _hoisted_1$j))
670
+ }
709
671
  }
710
672
 
673
+ };
674
+
711
675
  var css_248z$g = "\n.regular-button[data-v-7c962c54] {\n background-color: var(--color-regular);\n color: var(--color-regular-text);\n font-weight: var(--font-weight-bold);\n padding: var(--button-padding);\n border-radius: var(--border-radius-base);\n border: var(--button-border);\n cursor: pointer;\n transition: var(--button-transition);\n}\n.regular-button[data-v-7c962c54]:hover {\n background-color: var(--color-regular-hover);\n}\n\n/* Loading state */\n.loading[data-v-7c962c54] {\n background-color: var(--color-regular-disabled);\n cursor: wait;\n}\n.loading[data-v-7c962c54]:hover {\n background-color: var(--color-regular-disabled);\n}\n";
712
676
  styleInject(css_248z$g);
713
677
 
714
- script$g.render = render$g;
715
- script$g.__scopeId = "data-v-7c962c54";
716
- script$g.__file = "src/Buttons/RegularButton/RegularButton.vue";
717
-
718
- var script$f = vue.defineComponent({
719
- name: "Pagination",
720
- props: {
721
- previousLabel: String,
722
- nextLabel: String,
723
- showPrevious: Boolean,
724
- previousLink: String,
725
- nextLink: String,
726
- },
727
- components: {
728
- RegularButton: script$g,
729
- },
730
- });
678
+ script$l.__scopeId = "data-v-7c962c54";
679
+ script$l.__file = "src/Buttons/RegularButton/RegularButton.vue";
731
680
 
732
- const _hoisted_1$d = { class: "pagination-container" };
681
+ const _hoisted_1$i = { class: "pagination-container" };
733
682
  const _hoisted_2$9 = ["href"];
734
683
  const _hoisted_3$7 = ["href"];
735
684
 
736
- function render$f(_ctx, _cache, $props, $setup, $data, $options) {
737
- const _component_regular_button = vue.resolveComponent("regular-button");
738
685
 
739
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$d, [
740
- (_ctx.showPrevious)
686
+ var script$k = {
687
+ __name: 'Pagination',
688
+ props: {
689
+ previousLabel: String,
690
+ nextLabel: String,
691
+ showPrevious: Boolean,
692
+ previousLink: String,
693
+ nextLink: String,
694
+ },
695
+ setup(__props) {
696
+
697
+
698
+
699
+ return (_ctx, _cache) => {
700
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$i, [
701
+ (__props.showPrevious)
741
702
  ? (vue.openBlock(), vue.createElementBlock("a", {
742
703
  key: 0,
743
- href: _ctx.previousLink
704
+ href: __props.previousLink
744
705
  }, [
745
- vue.createVNode(_component_regular_button, { text: _ctx.previousLabel }, null, 8 /* PROPS */, ["text"])
706
+ vue.createVNode(script$l, { text: __props.previousLabel }, null, 8 /* PROPS */, ["text"])
746
707
  ], 8 /* PROPS */, _hoisted_2$9))
747
708
  : vue.createCommentVNode("v-if", true),
748
- vue.createElementVNode("a", { href: _ctx.nextLink }, [
749
- vue.createVNode(_component_regular_button, { text: _ctx.nextLabel }, null, 8 /* PROPS */, ["text"])
709
+ vue.createElementVNode("a", { href: __props.nextLink }, [
710
+ vue.createVNode(script$l, { text: __props.nextLabel }, null, 8 /* PROPS */, ["text"])
750
711
  ], 8 /* PROPS */, _hoisted_3$7)
751
712
  ]))
752
713
  }
714
+ }
715
+
716
+ };
753
717
 
754
718
  var css_248z$f = "\n.pagination-container[data-v-265c87a6] {\n display: flex;\n justify-content: space-between;\n margin-top: 1rem;\n}\na[data-v-265c87a6] {\n text-decoration: none;\n}\n";
755
719
  styleInject(css_248z$f);
756
720
 
757
- script$f.render = render$f;
758
- script$f.__scopeId = "data-v-265c87a6";
759
- script$f.__file = "src/Pagination/Pagination.vue";
721
+ script$k.__scopeId = "data-v-265c87a6";
722
+ script$k.__file = "src/Pagination/Pagination.vue";
760
723
 
761
- var script$e = vue.defineComponent({
762
- name: "Badge",
724
+ const _hoisted_1$h = { class: "badge" };
725
+
726
+
727
+ var script$j = {
728
+ __name: 'Badge',
763
729
  props: {
764
- text: String,
765
- },
766
- });
730
+ text: String,
731
+ },
732
+ setup(__props) {
733
+
767
734
 
768
- const _hoisted_1$c = { class: "badge" };
769
735
 
770
- function render$e(_ctx, _cache, $props, $setup, $data, $options) {
771
- return (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$c, vue.toDisplayString(_ctx.text), 1 /* TEXT */))
736
+ return (_ctx, _cache) => {
737
+ return (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$h, vue.toDisplayString(__props.text), 1 /* TEXT */))
738
+ }
772
739
  }
773
740
 
741
+ };
742
+
774
743
  var css_248z$e = "\n.badge[data-v-187659a4] {\n background-color: var(--color-badge);\n color: var(--color-badge-text);\n font-size: var(--font-size-small);\n font-weight: var(--font-weight-bold);\n margin-right: var(--badge-margin-right);\n padding: var(--badge-padding);\n border-radius: var(--badge-border-radius);\n display: inline-block;\n}\n.dark .badge[data-v-187659a4] {\n background-color: var(--color-badge-dark);\n color: var(--color-badge-dark-text);\n}\n";
775
744
  styleInject(css_248z$e);
776
745
 
777
- script$e.render = render$e;
778
- script$e.__scopeId = "data-v-187659a4";
779
- script$e.__file = "src/Badge/Badge.vue";
780
-
781
- var script$d = vue.defineComponent({
782
- name: "Temperature",
783
- props: {
784
- title: String,
785
- min: Number,
786
- max: Number,
787
- avg: Number
788
- },
789
- computed: {
790
- minFormatted() {
791
- return this.min.toFixed(2);
792
- },
793
- avgFormatted() {
794
- return this.avg.toFixed(2);
795
- },
796
- maxFormatted() {
797
- return this.max.toFixed(2);
798
- },
799
- },
800
- });
746
+ script$j.__scopeId = "data-v-187659a4";
747
+ script$j.__file = "src/Badge/Badge.vue";
801
748
 
802
- const _hoisted_1$b = { class: "wrapper" };
749
+ const _hoisted_1$g = { class: "wrapper" };
803
750
  const _hoisted_2$8 = { class: "title" };
804
751
  const _hoisted_3$6 = { class: "avg" };
805
752
  const _hoisted_4$2 = { class: "minmax" };
806
753
  const _hoisted_5$1 = { class: "min" };
807
754
  const _hoisted_6 = { class: "max" };
808
755
 
809
- function render$d(_ctx, _cache, $props, $setup, $data, $options) {
810
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$b, [
811
- vue.createElementVNode("div", _hoisted_2$8, vue.toDisplayString(_ctx.title), 1 /* TEXT */),
812
- vue.createElementVNode("div", _hoisted_3$6, vue.toDisplayString(_ctx.avgFormatted) + " ℃", 1 /* TEXT */),
756
+ var script$i = {
757
+ __name: 'Temperature',
758
+ props: {
759
+ title: String,
760
+ min: Number,
761
+ max: Number,
762
+ avg: Number
763
+ },
764
+ setup(__props) {
765
+
766
+ const props = __props;
767
+ const minFormatted = vue.computed(() => props.min.toFixed(2));
768
+ const avgFormatted = vue.computed(() => props.avg.toFixed(2));
769
+ const maxFormatted = vue.computed(() => props.max.toFixed(2));
770
+
771
+ return (_ctx, _cache) => {
772
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$g, [
773
+ vue.createElementVNode("div", _hoisted_2$8, vue.toDisplayString(__props.title), 1 /* TEXT */),
774
+ vue.createElementVNode("div", _hoisted_3$6, vue.toDisplayString(avgFormatted.value) + " ℃", 1 /* TEXT */),
813
775
  vue.createElementVNode("div", _hoisted_4$2, [
814
- vue.createElementVNode("div", _hoisted_5$1, vue.toDisplayString(_ctx.minFormatted) + " ℃", 1 /* TEXT */),
776
+ vue.createElementVNode("div", _hoisted_5$1, vue.toDisplayString(minFormatted.value) + " ℃", 1 /* TEXT */),
815
777
  _cache[0] || (_cache[0] = vue.createElementVNode("div", { class: "separator" }, "—", -1 /* HOISTED */)),
816
- vue.createElementVNode("div", _hoisted_6, vue.toDisplayString(_ctx.maxFormatted) + " ℃", 1 /* TEXT */)
778
+ vue.createElementVNode("div", _hoisted_6, vue.toDisplayString(maxFormatted.value) + " ℃", 1 /* TEXT */)
817
779
  ])
818
780
  ]))
819
781
  }
782
+ }
783
+
784
+ };
820
785
 
821
786
  var css_248z$d = "\n.wrapper[data-v-4250e6d0] {\n flex-direction: column;\n display: inline-flex;\n}\n.avg[data-v-4250e6d0] {\n display: flex;\n font-size: var(--font-size-xlarge);\n justify-content: center;\n}\n.title[data-v-4250e6d0] {\n display: flex;\n font-size: var(--font-size-base);\n justify-content: center;\n}\n.minmax[data-v-4250e6d0] {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n font-size: var(--font-size-base);\n}\n";
822
787
  styleInject(css_248z$d);
823
788
 
824
- script$d.render = render$d;
825
- script$d.__scopeId = "data-v-4250e6d0";
826
- script$d.__file = "src/Temperature/Temperature.vue";
789
+ script$i.__scopeId = "data-v-4250e6d0";
790
+ script$i.__file = "src/Temperature/Temperature.vue";
827
791
 
828
- var script$c = vue.defineComponent({
829
- name: "Modal",
830
- emits: ['cancel', 'confirm'],
792
+ var script$h = {
793
+ __name: 'SecondaryButton',
831
794
  props: {
832
- open: Boolean,
833
- },
834
- methods: {
835
- onCancel(evt) {
836
- this.$emit('cancel', evt);
837
- },
838
- onConfirm(evt) {
839
- this.$emit('confirm', evt);
840
- },
841
- },
842
- });
795
+ text: String,
796
+ },
797
+ emits: ['click'],
798
+ setup(__props, { emit: __emit }) {
799
+
800
+
801
+ const emit = __emit;
802
+ const onClick = (evt) => emit('click', evt);
803
+
804
+ return (_ctx, _cache) => {
805
+ return (vue.openBlock(), vue.createElementBlock("button", {
806
+ class: "secondary-button",
807
+ onClick: onClick
808
+ }, vue.toDisplayString(__props.text), 1 /* TEXT */))
809
+ }
810
+ }
811
+
812
+ };
813
+
814
+ var css_248z$c = "\n.secondary-button[data-v-5bb3ed46] {\n background-color: var(--color-secondary);\n color: var(--color-secondary-text);\n font-weight: var(--font-weight-bold);\n padding: var(--button-padding);\n border-radius: var(--border-radius-base);\n border: var(--button-border);\n cursor: pointer;\n transition: var(--button-transition);\n}\n.secondary-button[data-v-5bb3ed46]:hover {\n background-color: var(--color-secondary-hover);\n}\n";
815
+ styleInject(css_248z$c);
816
+
817
+ script$h.__scopeId = "data-v-5bb3ed46";
818
+ script$h.__file = "src/Buttons/SecondaryButton/SecondaryButton.vue";
819
+
820
+ var script$g = {
821
+ __name: 'DangerButton',
822
+ props: {
823
+ text: String,
824
+ },
825
+ emits: ['click'],
826
+ setup(__props, { emit: __emit }) {
827
+
828
+
829
+ const emit = __emit;
830
+ const onClick = (evt) => emit('click', evt);
831
+
832
+ return (_ctx, _cache) => {
833
+ return (vue.openBlock(), vue.createElementBlock("button", {
834
+ class: "danger-button",
835
+ onClick: onClick
836
+ }, vue.toDisplayString(__props.text), 1 /* TEXT */))
837
+ }
838
+ }
839
+
840
+ };
841
+
842
+ var css_248z$b = "\n.danger-button[data-v-5e080598] {\n background-color: var(--color-danger);\n color: var(--color-danger-text);\n font-weight: var(--font-weight-bold);\n padding: var(--button-padding);\n border-radius: var(--border-radius-base);\n border: var(--button-border);\n cursor: pointer;\n transition: var(--button-transition);\n}\n.danger-button[data-v-5e080598]:hover {\n background-color: var(--color-danger-hover);\n}\n";
843
+ styleInject(css_248z$b);
844
+
845
+ script$g.__scopeId = "data-v-5e080598";
846
+ script$g.__file = "src/Buttons/DangerButton/DangerButton.vue";
843
847
 
844
- const _hoisted_1$a = {
848
+ const _hoisted_1$f = {
845
849
  key: 0,
846
850
  class: "modal-overlay"
847
851
  };
848
852
  const _hoisted_2$7 = { class: "modal-container" };
849
853
 
850
- function render$c(_ctx, _cache, $props, $setup, $data, $options) {
851
- const _component_secondary_button = vue.resolveComponent("secondary-button");
852
- const _component_danger_button = vue.resolveComponent("danger-button");
853
854
 
854
- return (_ctx.open)
855
- ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$a, [
855
+ var script$f = {
856
+ __name: 'Modal',
857
+ props: {
858
+ open: Boolean,
859
+ },
860
+ emits: ['cancel', 'confirm'],
861
+ setup(__props, { emit: __emit }) {
862
+
863
+
864
+ const emit = __emit;
865
+ const onCancel = (evt) => emit('cancel', evt);
866
+ const onConfirm = (evt) => emit('confirm', evt);
867
+
868
+ return (_ctx, _cache) => {
869
+ return (__props.open)
870
+ ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$f, [
856
871
  vue.createElementVNode("div", _hoisted_2$7, [
857
872
  _cache[0] || (_cache[0] = vue.createElementVNode("h1", { class: "modal-title" }, "Are you sure?", -1 /* HOISTED */)),
858
- vue.createVNode(_component_secondary_button, {
859
- onClick: _ctx.onCancel,
873
+ vue.createVNode(script$h, {
874
+ onClick: onCancel,
860
875
  text: "No"
861
- }, null, 8 /* PROPS */, ["onClick"]),
862
- vue.createVNode(_component_danger_button, {
876
+ }),
877
+ vue.createVNode(script$g, {
863
878
  class: "ml-2",
864
- onClick: _ctx.onConfirm,
879
+ onClick: onConfirm,
865
880
  text: "Yes"
866
- }, null, 8 /* PROPS */, ["onClick"])
881
+ })
867
882
  ])
868
883
  ]))
869
884
  : vue.createCommentVNode("v-if", true)
870
885
  }
886
+ }
871
887
 
872
- var css_248z$c = "\n.modal-overlay[data-v-11d137c2] {\n background-color: var(--color-modal-overlay);\n display: flex;\n justify-content: center;\n align-items: center;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n}\n.modal-container[data-v-11d137c2] {\n background-color: var(--color-modal-background);\n padding: 3.5rem 4rem;\n border-radius: var(--border-radius-big);\n text-align: center;\n}\n.modal-title[data-v-11d137c2] {\n font-size: var(--font-size-large);\n margin-bottom: 1rem;\n font-weight: var(--font-weight-bold);\n color: var(--color-modal-title);\n}\n";
873
- styleInject(css_248z$c);
888
+ };
874
889
 
875
- script$c.render = render$c;
876
- script$c.__scopeId = "data-v-11d137c2";
877
- script$c.__file = "src/Modal/Modal.vue";
890
+ var css_248z$a = "\n.modal-overlay[data-v-11d137c2] {\n background-color: var(--color-modal-overlay);\n display: flex;\n justify-content: center;\n align-items: center;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n}\n.modal-container[data-v-11d137c2] {\n background-color: var(--color-modal-background);\n padding: 3.5rem 4rem;\n border-radius: var(--border-radius-big);\n text-align: center;\n}\n.modal-title[data-v-11d137c2] {\n font-size: var(--font-size-large);\n margin-bottom: 1rem;\n font-weight: var(--font-weight-bold);\n color: var(--color-modal-title);\n}\n";
891
+ styleInject(css_248z$a);
878
892
 
879
- var script$b = vue.defineComponent({
880
- name: "Spinner",
881
- });
893
+ script$f.__scopeId = "data-v-11d137c2";
894
+ script$f.__file = "src/Modal/Modal.vue";
882
895
 
883
- const _hoisted_1$9 = {
896
+ const _hoisted_1$e = {
884
897
  class: "spinner",
885
898
  role: "status"
886
899
  };
887
900
 
888
- function render$b(_ctx, _cache, $props, $setup, $data, $options) {
889
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$9, _cache[0] || (_cache[0] = [
901
+
902
+ var script$e = {
903
+ __name: 'Spinner',
904
+ setup(__props) {
905
+
906
+ // No logic needed
907
+
908
+ return (_ctx, _cache) => {
909
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$e, _cache[0] || (_cache[0] = [
890
910
  vue.createElementVNode("span", { class: "sr-only-text" }, "Please wait...", -1 /* HOISTED */)
891
911
  ])))
892
912
  }
913
+ }
893
914
 
894
- var css_248z$b = "\n.spinner[data-v-3d456f9a] {\n display: inline-block;\n height: 2rem;\n width: 2rem;\n border: 4px solid currentColor;\n border-right-color: transparent;\n border-radius: var(--border-radius-round);\n animation: spin-3d456f9a 1.5s linear infinite;\n}\n.sr-only-text[data-v-3d456f9a] {\n position: absolute;\n margin: -1px;\n height: 1px;\n width: 1px;\n overflow: hidden;\n white-space: nowrap;\n border: 0;\n padding: 0;\n clip: rect(0, 0, 0, 0);\n}\n@keyframes spin-3d456f9a {\nfrom {\n transform: rotate(0deg);\n}\nto {\n transform: rotate(360deg);\n}\n}\n";
895
- styleInject(css_248z$b);
915
+ };
896
916
 
897
- script$b.render = render$b;
898
- script$b.__scopeId = "data-v-3d456f9a";
899
- script$b.__file = "src/Spinner/Spinner.vue";
917
+ var css_248z$9 = "\n.spinner[data-v-3d456f9a] {\n display: inline-block;\n height: 2rem;\n width: 2rem;\n border: 4px solid currentColor;\n border-right-color: transparent;\n border-radius: var(--border-radius-round);\n animation: spin-3d456f9a 1.5s linear infinite;\n}\n.sr-only-text[data-v-3d456f9a] {\n position: absolute;\n margin: -1px;\n height: 1px;\n width: 1px;\n overflow: hidden;\n white-space: nowrap;\n border: 0;\n padding: 0;\n clip: rect(0, 0, 0, 0);\n}\n@keyframes spin-3d456f9a {\nfrom {\n transform: rotate(0deg);\n}\nto {\n transform: rotate(360deg);\n}\n}\n";
918
+ styleInject(css_248z$9);
900
919
 
901
- var script$a = vue.defineComponent({
902
- name: "RangeView",
903
- props: {
904
- ranges: Array,
905
- },
906
- });
920
+ script$e.__scopeId = "data-v-3d456f9a";
921
+ script$e.__file = "src/Spinner/Spinner.vue";
907
922
 
908
- const _hoisted_1$8 = { class: "ranges-editor" };
923
+ const _hoisted_1$d = { class: "ranges-editor" };
909
924
  const _hoisted_2$6 = { class: "labels" };
910
925
  const _hoisted_3$5 = { class: "label" };
911
926
  const _hoisted_4$1 = { class: "label" };
912
927
 
913
- function render$a(_ctx, _cache, $props, $setup, $data, $options) {
914
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$8, [
915
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.ranges, (range, index) => {
928
+
929
+ var script$d = {
930
+ __name: 'RangeView',
931
+ props: {
932
+ ranges: Array,
933
+ },
934
+ setup(__props) {
935
+
936
+
937
+
938
+ return (_ctx, _cache) => {
939
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$d, [
940
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.ranges, (range, index) => {
916
941
  return (vue.openBlock(), vue.createElementBlock("div", {
917
942
  class: "range",
918
943
  key: range.id
919
944
  }, [
920
945
  vue.createElementVNode("div", _hoisted_2$6, [
921
- vue.createElementVNode("span", _hoisted_3$5, vue.toDisplayString(index < _ctx.ranges.length - 1 ? range.max : ' '), 1 /* TEXT */)
946
+ vue.createElementVNode("span", _hoisted_3$5, vue.toDisplayString(index < __props.ranges.length - 1 ? range.max : ' '), 1 /* TEXT */)
922
947
  ]),
923
948
  _cache[0] || (_cache[0] = vue.createElementVNode("div", { class: "gap" }, null, -1 /* HOISTED */)),
924
949
  vue.createElementVNode("span", _hoisted_4$1, vue.toDisplayString(range.label), 1 /* TEXT */)
@@ -926,367 +951,279 @@ function render$a(_ctx, _cache, $props, $setup, $data, $options) {
926
951
  }), 128 /* KEYED_FRAGMENT */))
927
952
  ]))
928
953
  }
954
+ }
929
955
 
930
- var css_248z$a = "\n.ranges-editor[data-v-3e589c2c] {\n display: flex;\n flex-direction: row;\n cursor: pointer;\n}\n.range[data-v-3e589c2c] {\n min-width: 50px;\n text-align: center;\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n}\n.labels[data-v-3e589c2c] {\n display: flex;\n flex-direction: row;\n justify-content: flex-end;\n}\n.gap[data-v-3e589c2c] {\n height: 10px;\n width: auto;\n background-color: red;\n border: 1px solid black;\n}\n.label[data-v-3e589c2c] {\n margin-top: 5px;\n}\n";
931
- styleInject(css_248z$a);
956
+ };
932
957
 
933
- script$a.render = render$a;
934
- script$a.__scopeId = "data-v-3e589c2c";
935
- script$a.__file = "src/RangeView/RangeView.vue";
958
+ var css_248z$8 = "\n.ranges-editor[data-v-3e589c2c] {\n display: flex;\n flex-direction: row;\n cursor: pointer;\n}\n.range[data-v-3e589c2c] {\n min-width: 50px;\n text-align: center;\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n}\n.labels[data-v-3e589c2c] {\n display: flex;\n flex-direction: row;\n justify-content: flex-end;\n}\n.gap[data-v-3e589c2c] {\n height: 10px;\n width: auto;\n background-color: red;\n border: 1px solid black;\n}\n.label[data-v-3e589c2c] {\n margin-top: 5px;\n}\n";
959
+ styleInject(css_248z$8);
936
960
 
937
- var script$9 = vue.defineComponent({
938
- name: "ResetButton",
939
- props: {
940
- text: String,
941
- },
942
- });
961
+ script$d.__scopeId = "data-v-3e589c2c";
962
+ script$d.__file = "src/RangeView/RangeView.vue";
943
963
 
944
- const _hoisted_1$7 = {
964
+ const _hoisted_1$c = {
945
965
  class: "reset-button",
946
966
  type: "reset"
947
967
  };
948
968
 
949
- function render$9(_ctx, _cache, $props, $setup, $data, $options) {
950
- return (vue.openBlock(), vue.createElementBlock("button", _hoisted_1$7, vue.toDisplayString(_ctx.text), 1 /* TEXT */))
951
- }
952
-
953
- var css_248z$9 = "\n.reset-button[data-v-70384d7c] {\n background-color: var(--color-reset);\n color: var(--color-reset-text);\n font-weight: var(--font-weight-bold);\n padding: var(--button-padding);\n border-radius: var(--border-radius-base);\n border: var(--button-border);\n cursor: pointer;\n transition: var(--button-transition);\n}\n.reset-button[data-v-70384d7c]:hover {\n background-color: var(--color-reset-hover);\n}\n";
954
- styleInject(css_248z$9);
955
969
 
956
- script$9.render = render$9;
957
- script$9.__scopeId = "data-v-70384d7c";
958
- script$9.__file = "src/Buttons/ResetButton/ResetButton.vue";
959
-
960
- var script$8 = vue.defineComponent({
961
- name: "SubmitButton",
970
+ var script$c = {
971
+ __name: 'ResetButton',
962
972
  props: {
963
- text: {
964
- type: String,
965
- },
966
- disabled: {
967
- type: Boolean,
968
- },
969
- },
970
- });
973
+ text: String,
974
+ },
975
+ setup(__props) {
971
976
 
972
- const _hoisted_1$6 = ["disabled"];
973
977
 
974
- function render$8(_ctx, _cache, $props, $setup, $data, $options) {
975
- return (vue.openBlock(), vue.createElementBlock("button", {
976
- class: "submit-button",
977
- type: "submit",
978
- disabled: _ctx.disabled
979
- }, vue.toDisplayString(_ctx.text), 9 /* TEXT, PROPS */, _hoisted_1$6))
978
+
979
+ return (_ctx, _cache) => {
980
+ return (vue.openBlock(), vue.createElementBlock("button", _hoisted_1$c, vue.toDisplayString(__props.text), 1 /* TEXT */))
981
+ }
980
982
  }
981
983
 
982
- var css_248z$8 = "\n.submit-button[data-v-f7f11890] {\n background-color: var(--color-submit);\n color: var(--color-submit-text);\n font-weight: var(--font-weight-bold);\n padding: var(--button-padding);\n border-radius: var(--border-radius-base);\n border: var(--button-border);\n cursor: pointer;\n transition: var(--button-transition);\n}\n.submit-button[data-v-f7f11890]:hover {\n background-color: var(--color-submit-hover);\n}\n.submit-button[data-v-f7f11890]:disabled {\n background-color: var(--color-submit-disabled);\n cursor: not-allowed;\n}\n";
983
- styleInject(css_248z$8);
984
+ };
984
985
 
985
- script$8.render = render$8;
986
- script$8.__scopeId = "data-v-f7f11890";
987
- script$8.__file = "src/Buttons/SubmitButton/SubmitButton.vue";
986
+ var css_248z$7 = "\n.reset-button[data-v-70384d7c] {\n background-color: var(--color-reset);\n color: var(--color-reset-text);\n font-weight: var(--font-weight-bold);\n padding: var(--button-padding);\n border-radius: var(--border-radius-base);\n border: var(--button-border);\n cursor: pointer;\n transition: var(--button-transition);\n}\n.reset-button[data-v-70384d7c]:hover {\n background-color: var(--color-reset-hover);\n}\n";
987
+ styleInject(css_248z$7);
988
988
 
989
- var script$7 = vue.defineComponent({
990
- name: "SecondaryButton",
991
- props: {
992
- text: String,
993
- },
994
- emits: ['click'],
995
- methods: {
996
- onClick(evt) {
997
- this.$emit('click', evt);
998
- },
999
- },
1000
- });
989
+ script$c.__scopeId = "data-v-70384d7c";
990
+ script$c.__file = "src/Buttons/ResetButton/ResetButton.vue";
1001
991
 
1002
- function render$7(_ctx, _cache, $props, $setup, $data, $options) {
1003
- return (vue.openBlock(), vue.createElementBlock("button", {
1004
- class: "secondary-button",
1005
- onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.onClick && _ctx.onClick(...args)))
1006
- }, vue.toDisplayString(_ctx.text), 1 /* TEXT */))
1007
- }
1008
-
1009
- var css_248z$7 = "\n.secondary-button[data-v-5bb3ed46] {\n background-color: var(--color-secondary);\n color: var(--color-secondary-text);\n font-weight: var(--font-weight-bold);\n padding: var(--button-padding);\n border-radius: var(--border-radius-base);\n border: var(--button-border);\n cursor: pointer;\n transition: var(--button-transition);\n}\n.secondary-button[data-v-5bb3ed46]:hover {\n background-color: var(--color-secondary-hover);\n}\n";
1010
- styleInject(css_248z$7);
992
+ const _hoisted_1$b = ["disabled"];
1011
993
 
1012
- script$7.render = render$7;
1013
- script$7.__scopeId = "data-v-5bb3ed46";
1014
- script$7.__file = "src/Buttons/SecondaryButton/SecondaryButton.vue";
1015
994
 
1016
- var script$6 = vue.defineComponent({
1017
- name: "DangerButton",
995
+ var script$b = {
996
+ __name: 'SubmitButton',
1018
997
  props: {
1019
- text: String,
1020
- },
1021
- emits: ['click'],
1022
- methods: {
1023
- onClick(evt) {
1024
- this.$emit('click', evt);
1025
- },
1026
- },
1027
- });
998
+ text: String,
999
+ disabled: Boolean,
1000
+ },
1001
+ setup(__props) {
1028
1002
 
1029
- function render$6(_ctx, _cache, $props, $setup, $data, $options) {
1003
+
1004
+
1005
+ return (_ctx, _cache) => {
1030
1006
  return (vue.openBlock(), vue.createElementBlock("button", {
1031
- class: "danger-button",
1032
- onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.onClick && _ctx.onClick(...args)))
1033
- }, vue.toDisplayString(_ctx.text), 1 /* TEXT */))
1007
+ class: "submit-button",
1008
+ type: "submit",
1009
+ disabled: __props.disabled
1010
+ }, vue.toDisplayString(__props.text), 9 /* TEXT, PROPS */, _hoisted_1$b))
1011
+ }
1034
1012
  }
1035
1013
 
1036
- var css_248z$6 = "\n.danger-button[data-v-5e080598] {\n background-color: var(--color-danger);\n color: var(--color-danger-text);\n font-weight: var(--font-weight-bold);\n padding: var(--button-padding);\n border-radius: var(--border-radius-base);\n border: var(--button-border);\n cursor: pointer;\n transition: var(--button-transition);\n}\n.danger-button[data-v-5e080598]:hover {\n background-color: var(--color-danger-hover);\n}\n";
1014
+ };
1015
+
1016
+ var css_248z$6 = "\n.submit-button[data-v-f7f11890] {\n background-color: var(--color-submit);\n color: var(--color-submit-text);\n font-weight: var(--font-weight-bold);\n padding: var(--button-padding);\n border-radius: var(--border-radius-base);\n border: var(--button-border);\n cursor: pointer;\n transition: var(--button-transition);\n}\n.submit-button[data-v-f7f11890]:hover {\n background-color: var(--color-submit-hover);\n}\n.submit-button[data-v-f7f11890]:disabled {\n background-color: var(--color-submit-disabled);\n cursor: not-allowed;\n}\n";
1037
1017
  styleInject(css_248z$6);
1038
1018
 
1039
- script$6.render = render$6;
1040
- script$6.__scopeId = "data-v-5e080598";
1041
- script$6.__file = "src/Buttons/DangerButton/DangerButton.vue";
1019
+ script$b.__scopeId = "data-v-f7f11890";
1020
+ script$b.__file = "src/Buttons/SubmitButton/SubmitButton.vue";
1021
+
1022
+ const _hoisted_1$a = { class: "text-input-container" };
1023
+ const _hoisted_2$5 = ["for"];
1024
+ const _hoisted_3$4 = ["id", "name", "required", "disabled", "placeholder", "value"];
1042
1025
 
1043
- var script$5 = vue.defineComponent({
1044
- name: "TextInput",
1026
+
1027
+ var script$a = {
1028
+ __name: 'TextInput',
1045
1029
  props: {
1046
- id: {
1047
- type: String,
1048
- },
1049
- required: {
1050
- type: Boolean,
1051
- },
1052
- disabled: {
1053
- type: Boolean,
1054
- },
1055
- placeholder: {
1056
- type: String,
1057
- },
1058
- label: {
1059
- type: String,
1060
- },
1061
- text: {
1062
- type: String,
1063
- },
1064
- },
1030
+ id: String,
1031
+ required: Boolean,
1032
+ disabled: Boolean,
1033
+ placeholder: String,
1034
+ label: String,
1035
+ text: String,
1036
+ },
1065
1037
  emits: ['update'],
1066
- methods: {
1067
- onInput(event) {
1068
- this.$emit('update', event.target.value);
1069
- },
1070
- },
1071
- });
1038
+ setup(__props, { emit: __emit }) {
1072
1039
 
1073
- const _hoisted_1$5 = { class: "text-input-container" };
1074
- const _hoisted_2$5 = ["for"];
1075
- const _hoisted_3$4 = ["id", "name", "required", "disabled", "placeholder", "value"];
1076
1040
 
1077
- function render$5(_ctx, _cache, $props, $setup, $data, $options) {
1078
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$5, [
1041
+ const emit = __emit;
1042
+ const onInput = (event) => emit('update', event.target.value);
1043
+
1044
+ return (_ctx, _cache) => {
1045
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$a, [
1079
1046
  vue.createElementVNode("label", {
1080
1047
  class: "text-input-label",
1081
- for: _ctx.id
1082
- }, vue.toDisplayString(_ctx.label), 9 /* TEXT, PROPS */, _hoisted_2$5),
1048
+ for: __props.id
1049
+ }, vue.toDisplayString(__props.label), 9 /* TEXT, PROPS */, _hoisted_2$5),
1083
1050
  vue.createElementVNode("input", {
1084
1051
  class: "text-input-field",
1085
- id: _ctx.id,
1086
- name: _ctx.id,
1087
- required: _ctx.required,
1088
- disabled: _ctx.disabled,
1089
- placeholder: _ctx.placeholder,
1090
- value: _ctx.text,
1091
- onInput: _cache[0] || (_cache[0] = (...args) => (_ctx.onInput && _ctx.onInput(...args))),
1052
+ id: __props.id,
1053
+ name: __props.id,
1054
+ required: __props.required,
1055
+ disabled: __props.disabled,
1056
+ placeholder: __props.placeholder,
1057
+ value: __props.text,
1058
+ onInput: onInput,
1092
1059
  type: "text"
1093
1060
  }, null, 40 /* PROPS, NEED_HYDRATION */, _hoisted_3$4)
1094
1061
  ]))
1095
1062
  }
1063
+ }
1064
+
1065
+ };
1096
1066
 
1097
1067
  var css_248z$5 = "\n.text-input-container[data-v-6df3547e] {\n margin-bottom: 1rem;\n}\n.text-input-label[data-v-6df3547e] {\n display: block;\n color: var(--color-text-input-label);\n font-size: var(--font-size-small);\n font-weight: var(--font-weight-bold);\n margin-bottom: 0.5rem;\n}\n.text-input-field[data-v-6df3547e] {\n box-shadow: 0 1px 3px var(--color-text-input-shadow);\n appearance: none;\n border: 1px solid var(--color-text-input-border);\n border-radius: var(--border-radius--base);\n width: 100%;\n padding: 0.5rem 0.75rem;\n color: var(--color-text-input);\n line-height: 1.25;\n transition: box-shadow 0.2s ease-in-out, border-color 0.2s ease-in-out;\n}\n.text-input-field[data-v-6df3547e]:focus {\n outline: none;\n box-shadow: 0 0 0 3px var(--color-text-input-shadow);\n border-color: var(--color-text-input-border-focus);\n}\n.text-input-field[data-v-6df3547e]:disabled {\n background-color: var(--color-input-disabled);\n cursor: not-allowed;\n}\n";
1098
1068
  styleInject(css_248z$5);
1099
1069
 
1100
- script$5.render = render$5;
1101
- script$5.__scopeId = "data-v-6df3547e";
1102
- script$5.__file = "src/Inputs/TextInput/TextInput.vue";
1070
+ script$a.__scopeId = "data-v-6df3547e";
1071
+ script$a.__file = "src/Inputs/TextInput/TextInput.vue";
1072
+
1073
+ const _hoisted_1$9 = { class: "checkbox-container" };
1074
+ const _hoisted_2$4 = ["id", "name", "required", "value"];
1075
+ const _hoisted_3$3 = ["for"];
1103
1076
 
1104
- var script$4 = vue.defineComponent({
1105
- name: "CheckBoxInput",
1077
+
1078
+ var script$9 = {
1079
+ __name: 'CheckBoxInput',
1106
1080
  props: {
1107
- id: {
1108
- type: String,
1109
- },
1110
- required: {
1111
- type: Boolean,
1112
- },
1113
- placeholder: {
1114
- type: String,
1115
- },
1116
- label: {
1117
- type: String,
1118
- },
1119
- checked: {
1120
- type: Boolean,
1121
- },
1122
- },
1081
+ id: String,
1082
+ required: Boolean,
1083
+ placeholder: String,
1084
+ label: String,
1085
+ checked: Boolean,
1086
+ },
1123
1087
  emits: ['update'],
1124
- methods: {
1125
- onInput(event) {
1126
- this.$emit('update', event.target.value);
1127
- },
1128
- },
1129
- });
1088
+ setup(__props, { emit: __emit }) {
1130
1089
 
1131
- const _hoisted_1$4 = { class: "checkbox-container" };
1132
- const _hoisted_2$4 = ["id", "name", "required", "value"];
1133
- const _hoisted_3$3 = ["for"];
1134
1090
 
1135
- function render$4(_ctx, _cache, $props, $setup, $data, $options) {
1136
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$4, [
1091
+ const emit = __emit;
1092
+ const onInput = (event) => emit('update', event.target.value);
1093
+
1094
+ return (_ctx, _cache) => {
1095
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$9, [
1137
1096
  vue.createElementVNode("input", {
1138
- id: _ctx.id,
1139
- name: _ctx.id,
1140
- required: _ctx.required,
1141
- value: _ctx.checked,
1142
- onInput: _cache[0] || (_cache[0] = (...args) => (_ctx.onInput && _ctx.onInput(...args))),
1097
+ id: __props.id,
1098
+ name: __props.id,
1099
+ required: __props.required,
1100
+ value: __props.checked,
1101
+ onInput: onInput,
1143
1102
  type: "checkbox",
1144
1103
  "unchecked-value": "false"
1145
1104
  }, null, 40 /* PROPS, NEED_HYDRATION */, _hoisted_2$4),
1146
1105
  vue.createElementVNode("label", {
1147
1106
  class: "checkbox-label",
1148
- for: _ctx.id
1149
- }, vue.toDisplayString(_ctx.label), 9 /* TEXT, PROPS */, _hoisted_3$3)
1107
+ for: __props.id
1108
+ }, vue.toDisplayString(__props.label), 9 /* TEXT, PROPS */, _hoisted_3$3)
1150
1109
  ]))
1151
1110
  }
1111
+ }
1112
+
1113
+ };
1152
1114
 
1153
1115
  var css_248z$4 = "\n.checkbox-container[data-v-4612e592] {\n margin-bottom: 1rem;\n}\ninput[type=\"checkbox\"][data-v-4612e592] {\n margin-right: 0.5rem;\n}\n.checkbox-label[data-v-4612e592] {\n display: block;\n color: var(--color-checkbox-label);\n font-size: var(--font-size-small);\n font-weight: var(--font-weight-bold);\n}\n";
1154
1116
  styleInject(css_248z$4);
1155
1117
 
1156
- script$4.render = render$4;
1157
- script$4.__scopeId = "data-v-4612e592";
1158
- script$4.__file = "src/Inputs/CheckBoxInput/CheckBoxInput.vue";
1118
+ script$9.__scopeId = "data-v-4612e592";
1119
+ script$9.__file = "src/Inputs/CheckBoxInput/CheckBoxInput.vue";
1159
1120
 
1160
- var script$3 = vue.defineComponent({
1161
- name: "NumberInput",
1121
+ const _hoisted_1$8 = { class: "number-input-container" };
1122
+ const _hoisted_2$3 = ["for"];
1123
+ const _hoisted_3$2 = ["id", "name", "required", "placeholder", "disabled", "value", "min", "step"];
1124
+
1125
+
1126
+ var script$8 = {
1127
+ __name: 'NumberInput',
1162
1128
  props: {
1163
- id: {
1164
- type: String,
1165
- },
1166
- required: {
1167
- type: Boolean,
1168
- },
1169
- disabled: {
1170
- type: Boolean,
1171
- },
1172
- placeholder: {
1173
- type: String,
1174
- },
1175
- label: {
1176
- type: String,
1177
- },
1178
- amount: {
1179
- type: Number,
1180
- },
1181
- min: {
1182
- type: String,
1183
- },
1184
- step: {
1185
- type: String,
1186
- },
1187
- },
1129
+ id: String,
1130
+ required: Boolean,
1131
+ disabled: Boolean,
1132
+ placeholder: String,
1133
+ label: String,
1134
+ amount: Number,
1135
+ min: String,
1136
+ step: String,
1137
+ },
1188
1138
  emits: ['update'],
1189
- methods: {
1190
- onInput(event) {
1191
- this.$emit('update', event.target.value);
1192
- },
1193
- },
1194
- });
1139
+ setup(__props, { emit: __emit }) {
1195
1140
 
1196
- const _hoisted_1$3 = { class: "number-input-container" };
1197
- const _hoisted_2$3 = ["for"];
1198
- const _hoisted_3$2 = ["id", "name", "required", "placeholder", "disabled", "value", "min", "step"];
1199
1141
 
1200
- function render$3(_ctx, _cache, $props, $setup, $data, $options) {
1201
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$3, [
1142
+ const emit = __emit;
1143
+ const onInput = (event) => emit('update', event.target.value);
1144
+
1145
+ return (_ctx, _cache) => {
1146
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$8, [
1202
1147
  vue.createElementVNode("label", {
1203
1148
  class: "number-input-label",
1204
- for: _ctx.id
1205
- }, vue.toDisplayString(_ctx.label), 9 /* TEXT, PROPS */, _hoisted_2$3),
1149
+ for: __props.id
1150
+ }, vue.toDisplayString(__props.label), 9 /* TEXT, PROPS */, _hoisted_2$3),
1206
1151
  vue.createElementVNode("input", {
1207
1152
  class: "number-input-field",
1208
- id: _ctx.id,
1209
- name: _ctx.id,
1210
- required: _ctx.required,
1211
- placeholder: _ctx.placeholder,
1212
- disabled: _ctx.disabled,
1213
- value: _ctx.amount,
1214
- min: _ctx.min,
1215
- step: _ctx.step,
1216
- onInput: _cache[0] || (_cache[0] = (...args) => (_ctx.onInput && _ctx.onInput(...args))),
1153
+ id: __props.id,
1154
+ name: __props.id,
1155
+ required: __props.required,
1156
+ placeholder: __props.placeholder,
1157
+ disabled: __props.disabled,
1158
+ value: __props.amount,
1159
+ min: __props.min,
1160
+ step: __props.step,
1161
+ onInput: onInput,
1217
1162
  type: "number"
1218
1163
  }, null, 40 /* PROPS, NEED_HYDRATION */, _hoisted_3$2)
1219
1164
  ]))
1220
1165
  }
1166
+ }
1167
+
1168
+ };
1221
1169
 
1222
1170
  var css_248z$3 = "\n.number-input-container[data-v-26abc846] {\n margin-bottom: 1rem;\n}\n.number-input-label[data-v-26abc846] {\n display: block;\n color: var(--color-number-input-label);\n font-size: var(--font-size-small);\n font-weight: var(--font-weight-bold);\n margin-bottom: 0.5rem;\n}\n.number-input-field[data-v-26abc846] {\n box-shadow: 0 1px 3px var(--color-input-shadow);\n appearance: none;\n border: 1px solid var(--color-number-input-border);\n border-radius: var(--border-radius--base);\n width: 100%;\n padding: 0.5rem 0.75rem;\n color: var(--color-number-input);\n line-height: 1.25;\n transition: box-shadow 0.2s ease-in-out, border-color 0.2s ease-in-out;\n}\n.number-input-field[data-v-26abc846]:focus {\n outline: none;\n box-shadow: 0 0 0 3px var(--color-input-shadow-focus);\n border-color: var(--color-number-input-border-focus);\n}\n.number-input-field[data-v-26abc846]:disabled {\n background-color: var(--color-input-disabled);\n cursor: not-allowed;\n}\n";
1223
1171
  styleInject(css_248z$3);
1224
1172
 
1225
- script$3.render = render$3;
1226
- script$3.__scopeId = "data-v-26abc846";
1227
- script$3.__file = "src/Inputs/NumberInput/NumberInput.vue";
1173
+ script$8.__scopeId = "data-v-26abc846";
1174
+ script$8.__file = "src/Inputs/NumberInput/NumberInput.vue";
1228
1175
 
1229
- var script$2 = vue.defineComponent({
1230
- name: "ImageInput",
1176
+ const _hoisted_1$7 = { class: "image-input-container" };
1177
+ const _hoisted_2$2 = ["for"];
1178
+ const _hoisted_3$1 = ["id", "name", "required", "placeholder", "value", "drop-placeholder"];
1179
+
1180
+
1181
+ var script$7 = {
1182
+ __name: 'ImageInput',
1231
1183
  props: {
1232
- id: {
1233
- type: String,
1234
- },
1235
- required: {
1236
- type: Boolean,
1237
- },
1238
- placeholder: {
1239
- type: String,
1240
- },
1241
- dropPlaceholder: {
1242
- type: String,
1243
- },
1244
- label: {
1245
- type: String,
1246
- },
1247
- file: {
1248
- type: Object,
1249
- },
1250
- },
1184
+ id: String,
1185
+ required: Boolean,
1186
+ placeholder: String,
1187
+ dropPlaceholder: String,
1188
+ label: String,
1189
+ file: Object,
1190
+ },
1251
1191
  emits: ['update'],
1252
- methods: {
1253
- onInput(event) {
1254
- this.$emit('update', event.target.files[0]);
1255
- },
1256
- },
1257
- });
1192
+ setup(__props, { emit: __emit }) {
1258
1193
 
1259
- const _hoisted_1$2 = { class: "image-input-container" };
1260
- const _hoisted_2$2 = ["for"];
1261
- const _hoisted_3$1 = ["id", "name", "required", "placeholder", "value", "drop-placeholder"];
1262
1194
 
1263
- function render$2(_ctx, _cache, $props, $setup, $data, $options) {
1264
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$2, [
1195
+ const emit = __emit;
1196
+ const onInput = (event) => emit('update', event.target.files[0]);
1197
+
1198
+ return (_ctx, _cache) => {
1199
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$7, [
1265
1200
  vue.createElementVNode("label", {
1266
1201
  class: "image-input-label",
1267
- for: _ctx.id
1268
- }, vue.toDisplayString(_ctx.label), 9 /* TEXT, PROPS */, _hoisted_2$2),
1202
+ for: __props.id
1203
+ }, vue.toDisplayString(__props.label), 9 /* TEXT, PROPS */, _hoisted_2$2),
1269
1204
  vue.createElementVNode("input", {
1270
1205
  class: "image-input-field",
1271
- id: _ctx.id,
1272
- name: _ctx.id,
1273
- required: _ctx.required,
1274
- placeholder: _ctx.placeholder,
1275
- value: _ctx.file,
1276
- "drop-placeholder": _ctx.dropPlaceholder,
1277
- onInput: _cache[0] || (_cache[0] = (...args) => (_ctx.onInput && _ctx.onInput(...args))),
1206
+ id: __props.id,
1207
+ name: __props.id,
1208
+ required: __props.required,
1209
+ placeholder: __props.placeholder,
1210
+ value: __props.file,
1211
+ "drop-placeholder": __props.dropPlaceholder,
1212
+ onInput: onInput,
1278
1213
  type: "file",
1279
1214
  accept: "image/*"
1280
1215
  }, null, 40 /* PROPS, NEED_HYDRATION */, _hoisted_3$1)
1281
1216
  ]))
1282
1217
  }
1218
+ }
1219
+
1220
+ };
1283
1221
 
1284
1222
  var css_248z$2 = "\n.image-input-container[data-v-d90b5f3c] {\n margin-bottom: 1rem;\n}\n.image-input-label[data-v-d90b5f3c] {\n display: block;\n color: var(--color-image-input);\n font-size: var(--font-size-small);\n font-weight: var(--font-weight-bold);\n margin-bottom: 0.5rem;\n}\n.image-input-field[data-v-d90b5f3c] {\n box-shadow: 0 1px 3px var(--color-input-shadow);\n appearance: none;\n border: 1px solid var(--color-image-input-border);\n border-radius: var(--border-radius--base);\n width: 100%;\n padding: 0.5rem 0.75rem;\n color: var(--color-image-input);\n line-height: 1.25;\n transition: box-shadow 0.2s ease-in-out, border-color 0.2s ease-in-out;\n}\n.image-input-field[data-v-d90b5f3c]:focus {\n outline: none;\n box-shadow: 0 0 0 3px var(--color-image-input-shadow);\n border-color: var(--color-image-input-border-focus);\n}\n";
1285
1223
  styleInject(css_248z$2);
1286
1224
 
1287
- script$2.render = render$2;
1288
- script$2.__scopeId = "data-v-d90b5f3c";
1289
- script$2.__file = "src/Inputs/ImageInput/ImageInput.vue";
1225
+ script$7.__scopeId = "data-v-d90b5f3c";
1226
+ script$7.__file = "src/Inputs/ImageInput/ImageInput.vue";
1290
1227
 
1291
1228
  /*! image-blob-reduce 4.1.0 https://github.com/nodeca/image-blob-reduce @license MIT */
1292
1229
  function commonjsRequire (path) {
@@ -4883,157 +4820,122 @@ ImageBlobReduce.pica = pica;
4883
4820
 
4884
4821
  var imageBlobReduce = ImageBlobReduce;
4885
4822
 
4886
- var script$1 = vue.defineComponent({
4887
- name: "ResizeImageUpload",
4888
- components: {
4889
- ImageInput: script$2,
4890
- },
4823
+ const _hoisted_1$6 = { class: "image-input-container" };
4824
+ const _hoisted_2$1 = { key: 0 };
4825
+
4826
+
4827
+ var script$6 = {
4828
+ __name: 'ResizeImageUpload',
4891
4829
  props: {
4892
- id: {
4893
- type: String,
4894
- },
4895
- required: {
4896
- type: Boolean,
4897
- },
4898
- placeholder: {
4899
- type: String,
4900
- },
4901
- dropPlaceholder: {
4902
- type: String,
4903
- },
4904
- label: {
4905
- type: String,
4906
- },
4907
- file: {
4908
- type: Object,
4909
- },
4910
- },
4911
- data() {
4912
- return {
4913
- rawImage: null,
4914
- resizing: false,
4915
- };
4916
- },
4830
+ id: String,
4831
+ required: Boolean,
4832
+ placeholder: String,
4833
+ dropPlaceholder: String,
4834
+ label: String,
4835
+ file: Object,
4836
+ },
4917
4837
  emits: ['loaded', 'error'],
4918
- methods: {
4919
- async onInput(file) {
4920
- try {
4921
- this.resizing = true;
4922
- const reduce = new imageBlobReduce();
4923
- const blob = await reduce.toBlob(file, { max: 1024 });
4924
- const newFile = new File([blob], file.name, { type: file.type });
4925
- this.$emit('loaded', newFile);
4926
- } catch (err) {
4927
- this.$emit('error');
4928
- } finally {
4929
- this.resizing = false;
4930
- }
4931
- },
4932
- },
4933
- });
4838
+ setup(__props, { emit: __emit }) {
4839
+
4934
4840
 
4935
- const _hoisted_1$1 = { class: "image-input-container" };
4936
- const _hoisted_2$1 = { key: 0 };
4937
4841
 
4938
- function render$1(_ctx, _cache, $props, $setup, $data, $options) {
4939
- const _component_image_input = vue.resolveComponent("image-input");
4940
-
4941
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$1, [
4942
- vue.createVNode(_component_image_input, {
4943
- id: _ctx.id,
4944
- name: _ctx.id,
4945
- required: _ctx.required,
4946
- placeholder: _ctx.placeholder,
4947
- "drop-placeholder": _ctx.dropPlaceholder,
4948
- label: _ctx.label,
4949
- onUpdate: _ctx.onInput
4950
- }, null, 8 /* PROPS */, ["id", "name", "required", "placeholder", "drop-placeholder", "label", "onUpdate"]),
4951
- (_ctx.resizing)
4842
+ const emit = __emit;
4843
+ const resizing = vue.ref(false);
4844
+
4845
+ const onInput = async (file) => {
4846
+ try {
4847
+ resizing.value = true;
4848
+ const reduce = new imageBlobReduce();
4849
+ const blob = await reduce.toBlob(file, { max: 1024 });
4850
+ const newFile = new File([blob], file.name, { type: file.type });
4851
+ emit('loaded', newFile);
4852
+ } catch (err) {
4853
+ emit('error');
4854
+ } finally {
4855
+ resizing.value = false;
4856
+ }
4857
+ };
4858
+
4859
+ return (_ctx, _cache) => {
4860
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$6, [
4861
+ vue.createVNode(script$7, {
4862
+ id: __props.id,
4863
+ name: __props.id,
4864
+ required: __props.required,
4865
+ placeholder: __props.placeholder,
4866
+ "drop-placeholder": __props.dropPlaceholder,
4867
+ label: __props.label,
4868
+ onUpdate: onInput
4869
+ }, null, 8 /* PROPS */, ["id", "name", "required", "placeholder", "drop-placeholder", "label"]),
4870
+ (resizing.value)
4952
4871
  ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_2$1, "Resizing..."))
4953
4872
  : vue.createCommentVNode("v-if", true)
4954
4873
  ]))
4955
4874
  }
4875
+ }
4876
+
4877
+ };
4956
4878
 
4957
4879
  var css_248z$1 = "\nimage-input[data-v-3fb95754] {\n display: block;\n margin-bottom: 1rem;\n}\nimage-input label[data-v-3fb95754] {\n display: block;\n margin-bottom: 0.5rem;\n font-weight: var(--font-weight-bold);\n font-size: var(--font-size-small);\n color: var(--color-image-input);\n}\nimage-input input[type=\"file\"][data-v-3fb95754] {\n display: block;\n width: 100%;\n padding: 0.5rem;\n border: 1px solid var(--color-image-input-border);\n border-radius: var(--border-radius--base);\n color: var(--color-image-input);\n background-color: var(--color-image-input-background);\n cursor: pointer;\n}\nimage-input input[type=\"file\"][data-v-3fb95754]:focus {\n outline: none;\n border-color: var(--color-image-input-border-focus);\n box-shadow: 0 0 0 3px var(--color-image-input-shadow);\n}\nimage-input input[type=\"file\"][data-v-3fb95754]:disabled {\n background-color: var(--color-input-disabled);\n cursor: not-allowed;\n}\n";
4958
4880
  styleInject(css_248z$1);
4959
4881
 
4960
- script$1.render = render$1;
4961
- script$1.__scopeId = "data-v-3fb95754";
4962
- script$1.__file = "src/Inputs/ResizeImageUpload/ResizeImageUpload.vue";
4963
-
4964
- var script = vue.defineComponent({
4965
- name: "Selector",
4966
- props: {
4967
- id: {
4968
- type: String,
4969
- },
4970
- disabled: {
4971
- type: Boolean,
4972
- },
4973
- label: {
4974
- type: String,
4975
- },
4976
- initialValue: {
4977
- type: String,
4978
- },
4979
- options: {
4980
- type: Array,
4981
- },
4982
- },
4983
- data() {
4984
- return {
4985
- selected: '',
4986
- };
4987
- },
4988
- watch: {
4989
- initialValue: {
4990
- immediate: true,
4991
- handler: function (newSelectedValue) {
4992
- if (newSelectedValue !== "" && newSelectedValue !== undefined) {
4993
- this.selected = newSelectedValue;
4994
- }
4995
- },
4996
- },
4997
- options: {
4998
- immediate: true,
4999
- handler: function (newOptions) {
5000
- const enabledOptions = newOptions.filter((option) => !option.disabled);
5001
- if (enabledOptions.length === 1) {
5002
- this.selected = enabledOptions[0].value;
5003
- this.$emit('selected', this.selected);
5004
- }
5005
- },
5006
- },
5007
- },
5008
- emits: ['selected'],
5009
- methods: {
5010
- onChange() {
5011
- this.$emit('selected', this.selected);
5012
- },
5013
- },
5014
- });
4882
+ script$6.__scopeId = "data-v-3fb95754";
4883
+ script$6.__file = "src/Inputs/ResizeImageUpload/ResizeImageUpload.vue";
5015
4884
 
5016
- const _hoisted_1 = { class: "selector-container" };
4885
+ const _hoisted_1$5 = { class: "selector-container" };
5017
4886
  const _hoisted_2 = ["for"];
5018
4887
  const _hoisted_3 = { class: "selector-relative-container" };
5019
4888
  const _hoisted_4 = ["id", "disabled"];
5020
4889
  const _hoisted_5 = ["value", "disabled"];
5021
4890
 
5022
- function render(_ctx, _cache, $props, $setup, $data, $options) {
5023
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
4891
+
4892
+ var script$5 = {
4893
+ __name: 'Selector',
4894
+ props: {
4895
+ id: String,
4896
+ disabled: Boolean,
4897
+ label: String,
4898
+ initialValue: String,
4899
+ options: Array,
4900
+ },
4901
+ emits: ['selected'],
4902
+ setup(__props, { emit: __emit }) {
4903
+
4904
+ const props = __props;
4905
+
4906
+ const emit = __emit;
4907
+ const selected = vue.ref('');
4908
+
4909
+ vue.watch(() => props.initialValue, (newVal) => {
4910
+ if (newVal !== "" && newVal !== undefined) selected.value = newVal;
4911
+ }, { immediate: true });
4912
+
4913
+ vue.watch(() => props.options, (newOptions) => {
4914
+ if (!newOptions) return;
4915
+ const enabledOptions = newOptions.filter((o) => !o.disabled);
4916
+ if (enabledOptions.length === 1) {
4917
+ selected.value = enabledOptions[0].value;
4918
+ emit('selected', selected.value);
4919
+ }
4920
+ }, { immediate: true });
4921
+
4922
+ const onChange = () => emit('selected', selected.value);
4923
+
4924
+ return (_ctx, _cache) => {
4925
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$5, [
5024
4926
  vue.createElementVNode("label", {
5025
4927
  class: "selector-label",
5026
- for: _ctx.id
5027
- }, vue.toDisplayString(_ctx.label), 9 /* TEXT, PROPS */, _hoisted_2),
4928
+ for: __props.id
4929
+ }, vue.toDisplayString(__props.label), 9 /* TEXT, PROPS */, _hoisted_2),
5028
4930
  vue.createElementVNode("div", _hoisted_3, [
5029
4931
  vue.withDirectives(vue.createElementVNode("select", {
5030
4932
  class: "selector-field",
5031
- id: _ctx.id,
5032
- disabled: _ctx.disabled,
5033
- "onUpdate:modelValue": _cache[0] || (_cache[0] = $event => ((_ctx.selected) = $event)),
5034
- onChange: _cache[1] || (_cache[1] = (...args) => (_ctx.onChange && _ctx.onChange(...args)))
4933
+ id: __props.id,
4934
+ disabled: __props.disabled,
4935
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = $event => ((selected).value = $event)),
4936
+ onChange: onChange
5035
4937
  }, [
5036
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.options, (option) => {
4938
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.options, (option) => {
5037
4939
  return (vue.openBlock(), vue.createElementBlock("option", {
5038
4940
  key: option.value,
5039
4941
  value: option.value,
@@ -5041,9 +4943,9 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
5041
4943
  }, vue.toDisplayString(option.text), 9 /* TEXT, PROPS */, _hoisted_5))
5042
4944
  }), 128 /* KEYED_FRAGMENT */))
5043
4945
  ], 40 /* PROPS, NEED_HYDRATION */, _hoisted_4), [
5044
- [vue.vModelSelect, _ctx.selected]
4946
+ [vue.vModelSelect, selected.value]
5045
4947
  ]),
5046
- _cache[2] || (_cache[2] = vue.createElementVNode("div", { class: "selector-icon-container" }, [
4948
+ _cache[1] || (_cache[1] = vue.createElementVNode("div", { class: "selector-icon-container" }, [
5047
4949
  vue.createElementVNode("svg", {
5048
4950
  class: "selector-icon",
5049
4951
  xmlns: "http://www.w3.org/2000/svg",
@@ -5055,36 +4957,283 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
5055
4957
  ])
5056
4958
  ]))
5057
4959
  }
4960
+ }
4961
+
4962
+ };
5058
4963
 
5059
4964
  var css_248z = "\n.selector-container[data-v-008e1be2] {\n margin-bottom: 1rem;\n}\n.selector-label[data-v-008e1be2] {\n display: block;\n color: var(--color-selector-label);\n font-size: var(--font-size-small);\n font-weight: var(--font-weight-bold);\n margin-bottom: 0.5rem;\n}\n.selector-relative-container[data-v-008e1be2] {\n position: relative;\n}\n.selector-field[data-v-008e1be2] {\n appearance: none;\n width: 100%;\n background-color: var(--color-selector-background);\n border: 1px solid var(--color-selector-border);\n color: var(--color-selector-text);\n padding: 0.75rem 1rem 0.75rem 0.75rem;\n padding-right: 2rem;\n border-radius: var(--border-radius--base);\n line-height: 1.25;\n transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out;\n}\n.selector-field[data-v-008e1be2]:focus {\n outline: none;\n background-color: var(--color-selector-background-focused);\n border-color: var(--color-selector-border-focused);\n}\n.selector-icon-container[data-v-008e1be2] {\n pointer-events: none;\n position: absolute;\n inset: 0 auto;\n right: 0;\n display: flex;\n align-items: center;\n padding: 0 0.5rem;\n color: var(--color-selector-icon-container);\n}\n.selector-icon[data-v-008e1be2] {\n fill: currentColor;\n height: 1rem;\n width: 1rem;\n}\n";
5060
4965
  styleInject(css_248z);
5061
4966
 
5062
- script.render = render;
5063
- script.__scopeId = "data-v-008e1be2";
5064
- script.__file = "src/Inputs/Selector/Selector.vue";
5065
-
5066
- exports.Badge = script$e;
5067
- exports.Card = script$s;
5068
- exports.CardGrid = script$r;
5069
- exports.CheckBoxInput = script$4;
5070
- exports.Container = script$q;
5071
- exports.DangerButton = script$6;
5072
- exports.ImageInput = script$2;
5073
- exports.Loading = script$v;
5074
- exports.Modal = script$c;
5075
- exports.Navbar = script$i;
5076
- exports.NumberInput = script$3;
5077
- exports.Pagination = script$f;
5078
- exports.RangeView = script$a;
5079
- exports.RegularButton = script$g;
5080
- exports.ResetButton = script$9;
5081
- exports.ResizeImageUpload = script$1;
5082
- exports.SecondaryButton = script$7;
5083
- exports.SectionTitle = script$w;
5084
- exports.Selector = script;
5085
- exports.Spinner = script$b;
5086
- exports.StyledTable = script$h;
5087
- exports.SubmitButton = script$8;
5088
- exports.Temperature = script$d;
5089
- exports.TextInput = script$5;
4967
+ script$5.__scopeId = "data-v-008e1be2";
4968
+ script$5.__file = "src/Inputs/Selector/Selector.vue";
4969
+
4970
+ const _hoisted_1$4 = ["width", "height", "stroke"];
4971
+
4972
+
4973
+ var script$4 = {
4974
+ __name: 'DropIcon',
4975
+ props: {
4976
+ size: {
4977
+ type: [Number, String],
4978
+ default: 24
4979
+ },
4980
+ color: {
4981
+ type: String,
4982
+ default: 'currentColor'
4983
+ }
4984
+ },
4985
+ setup(__props) {
4986
+
4987
+
4988
+
4989
+ return (_ctx, _cache) => {
4990
+ return (vue.openBlock(), vue.createElementBlock("svg", {
4991
+ xmlns: "http://www.w3.org/2000/svg",
4992
+ width: __props.size,
4993
+ height: __props.size,
4994
+ viewBox: "0 0 24 24",
4995
+ fill: "none",
4996
+ stroke: __props.color,
4997
+ "stroke-width": "2",
4998
+ "stroke-linecap": "round",
4999
+ "stroke-linejoin": "round",
5000
+ class: "lucide lucide-droplets-icon lucide-droplets"
5001
+ }, _cache[0] || (_cache[0] = [
5002
+ vue.createElementVNode("path", { d: "M7 16.3c2.2 0 4-1.83 4-4.05 0-1.16-.57-2.26-1.71-3.19S7.29 6.75 7 5.3c-.29 1.45-1.14 2.84-2.29 3.76S3 11.1 3 12.25c0 2.22 1.8 4.05 4 4.05z" }, null, -1 /* HOISTED */),
5003
+ vue.createElementVNode("path", { d: "M12.56 6.6A10.97 10.97 0 0 0 14 3.02c.5 2.5 2 4.9 4 6.5s3 3.5 3 5.5a6.98 6.98 0 0 1-11.91 4.97" }, null, -1 /* HOISTED */)
5004
+ ]), 8 /* PROPS */, _hoisted_1$4))
5005
+ }
5006
+ }
5007
+
5008
+ };
5009
+
5010
+ script$4.__file = "src/Icons/DropIcon/DropIcon.vue";
5011
+
5012
+ const _hoisted_1$3 = ["width", "height", "stroke"];
5013
+
5014
+
5015
+ var script$3 = {
5016
+ __name: 'SkullIcon',
5017
+ props: {
5018
+ size: {
5019
+ type: [Number, String],
5020
+ default: 24
5021
+ },
5022
+ color: {
5023
+ type: String,
5024
+ default: 'currentColor'
5025
+ }
5026
+ },
5027
+ setup(__props) {
5028
+
5029
+
5030
+
5031
+ return (_ctx, _cache) => {
5032
+ return (vue.openBlock(), vue.createElementBlock("svg", {
5033
+ xmlns: "http://www.w3.org/2000/svg",
5034
+ width: __props.size,
5035
+ height: __props.size,
5036
+ viewBox: "0 0 24 24",
5037
+ fill: "none",
5038
+ stroke: __props.color,
5039
+ "stroke-width": "2",
5040
+ "stroke-linecap": "round",
5041
+ "stroke-linejoin": "round",
5042
+ class: "lucide lucide-skull-icon lucide-skull"
5043
+ }, _cache[0] || (_cache[0] = [
5044
+ vue.createElementVNode("path", { d: "m12.5 17-.5-1-.5 1h1z" }, null, -1 /* HOISTED */),
5045
+ vue.createElementVNode("path", { d: "M15 22a1 1 0 0 0 1-1v-1a2 2 0 0 0 1.56-3.25 8 8 0 1 0-11.12 0A2 2 0 0 0 8 20v1a1 1 0 0 0 1 1z" }, null, -1 /* HOISTED */),
5046
+ vue.createElementVNode("circle", {
5047
+ cx: "15",
5048
+ cy: "12",
5049
+ r: "1"
5050
+ }, null, -1 /* HOISTED */),
5051
+ vue.createElementVNode("circle", {
5052
+ cx: "9",
5053
+ cy: "12",
5054
+ r: "1"
5055
+ }, null, -1 /* HOISTED */)
5056
+ ]), 8 /* PROPS */, _hoisted_1$3))
5057
+ }
5058
+ }
5059
+
5060
+ };
5061
+
5062
+ script$3.__file = "src/Icons/SkullIcon/SkullIcon.vue";
5063
+
5064
+ const _hoisted_1$2 = ["width", "height", "stroke"];
5065
+
5066
+
5067
+ var script$2 = {
5068
+ __name: 'CalendarIcon',
5069
+ props: {
5070
+ size: {
5071
+ type: [Number, String],
5072
+ default: 24
5073
+ },
5074
+ color: {
5075
+ type: String,
5076
+ default: 'currentColor'
5077
+ }
5078
+ },
5079
+ setup(__props) {
5080
+
5081
+
5082
+
5083
+ return (_ctx, _cache) => {
5084
+ return (vue.openBlock(), vue.createElementBlock("svg", {
5085
+ xmlns: "http://www.w3.org/2000/svg",
5086
+ width: __props.size,
5087
+ height: __props.size,
5088
+ viewBox: "0 0 24 24",
5089
+ fill: "none",
5090
+ stroke: __props.color,
5091
+ "stroke-width": "2",
5092
+ "stroke-linecap": "round",
5093
+ "stroke-linejoin": "round",
5094
+ class: "lucide lucide-calendar-icon lucide-calendar"
5095
+ }, _cache[0] || (_cache[0] = [
5096
+ vue.createElementVNode("path", { d: "M8 2v4" }, null, -1 /* HOISTED */),
5097
+ vue.createElementVNode("path", { d: "M16 2v4" }, null, -1 /* HOISTED */),
5098
+ vue.createElementVNode("rect", {
5099
+ width: "18",
5100
+ height: "18",
5101
+ x: "3",
5102
+ y: "4",
5103
+ rx: "2"
5104
+ }, null, -1 /* HOISTED */),
5105
+ vue.createElementVNode("path", { d: "M3 10h18" }, null, -1 /* HOISTED */)
5106
+ ]), 8 /* PROPS */, _hoisted_1$2))
5107
+ }
5108
+ }
5109
+
5110
+ };
5111
+
5112
+ script$2.__file = "src/Icons/CalendarIcon/CalendarIcon.vue";
5113
+
5114
+ const _hoisted_1$1 = ["width", "height", "stroke"];
5115
+
5116
+
5117
+ var script$1 = {
5118
+ __name: 'SaveIcon',
5119
+ props: {
5120
+ size: {
5121
+ type: [Number, String],
5122
+ default: 24
5123
+ },
5124
+ color: {
5125
+ type: String,
5126
+ default: 'currentColor'
5127
+ }
5128
+ },
5129
+ setup(__props) {
5130
+
5131
+
5132
+
5133
+ return (_ctx, _cache) => {
5134
+ return (vue.openBlock(), vue.createElementBlock("svg", {
5135
+ xmlns: "http://www.w3.org/2000/svg",
5136
+ width: __props.size,
5137
+ height: __props.size,
5138
+ viewBox: "0 0 24 24",
5139
+ fill: "none",
5140
+ stroke: __props.color,
5141
+ "stroke-width": "2",
5142
+ "stroke-linecap": "round",
5143
+ "stroke-linejoin": "round",
5144
+ class: "lucide lucide-save-icon lucide-save"
5145
+ }, _cache[0] || (_cache[0] = [
5146
+ vue.createElementVNode("path", { d: "M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z" }, null, -1 /* HOISTED */),
5147
+ vue.createElementVNode("path", { d: "M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7" }, null, -1 /* HOISTED */),
5148
+ vue.createElementVNode("path", { d: "M7 3v4a1 1 0 0 0 1 1h7" }, null, -1 /* HOISTED */)
5149
+ ]), 8 /* PROPS */, _hoisted_1$1))
5150
+ }
5151
+ }
5152
+
5153
+ };
5154
+
5155
+ script$1.__file = "src/Icons/SaveIcon/SaveIcon.vue";
5156
+
5157
+ const _hoisted_1 = ["width", "height", "stroke"];
5158
+
5159
+
5160
+ var script = {
5161
+ __name: 'CreateIcon',
5162
+ props: {
5163
+ size: {
5164
+ type: [Number, String],
5165
+ default: 24
5166
+ },
5167
+ color: {
5168
+ type: String,
5169
+ default: 'currentColor'
5170
+ }
5171
+ },
5172
+ setup(__props) {
5173
+
5174
+
5175
+
5176
+ return (_ctx, _cache) => {
5177
+ return (vue.openBlock(), vue.createElementBlock("svg", {
5178
+ xmlns: "http://www.w3.org/2000/svg",
5179
+ width: __props.size,
5180
+ height: __props.size,
5181
+ viewBox: "0 0 24 24",
5182
+ fill: "none",
5183
+ stroke: __props.color,
5184
+ "stroke-width": "2",
5185
+ "stroke-linecap": "round",
5186
+ "stroke-linejoin": "round",
5187
+ class: "lucide lucide-badge-plus-icon lucide-badge-plus"
5188
+ }, _cache[0] || (_cache[0] = [
5189
+ vue.createElementVNode("path", { d: "M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z" }, null, -1 /* HOISTED */),
5190
+ vue.createElementVNode("line", {
5191
+ x1: "12",
5192
+ x2: "12",
5193
+ y1: "8",
5194
+ y2: "16"
5195
+ }, null, -1 /* HOISTED */),
5196
+ vue.createElementVNode("line", {
5197
+ x1: "8",
5198
+ x2: "16",
5199
+ y1: "12",
5200
+ y2: "12"
5201
+ }, null, -1 /* HOISTED */)
5202
+ ]), 8 /* PROPS */, _hoisted_1))
5203
+ }
5204
+ }
5205
+
5206
+ };
5207
+
5208
+ script.__file = "src/Icons/CreateIcon/CreateIcon.vue";
5209
+
5210
+ exports.Badge = script$j;
5211
+ exports.CalendarIcon = script$2;
5212
+ exports.Card = script$x;
5213
+ exports.CardGrid = script$w;
5214
+ exports.CheckBoxInput = script$9;
5215
+ exports.Container = script$v;
5216
+ exports.CreateIcon = script;
5217
+ exports.DangerButton = script$g;
5218
+ exports.DropIcon = script$4;
5219
+ exports.ImageInput = script$7;
5220
+ exports.Loading = script$A;
5221
+ exports.Modal = script$f;
5222
+ exports.Navbar = script$n;
5223
+ exports.NumberInput = script$8;
5224
+ exports.Pagination = script$k;
5225
+ exports.RangeView = script$d;
5226
+ exports.RegularButton = script$l;
5227
+ exports.ResetButton = script$c;
5228
+ exports.ResizeImageUpload = script$6;
5229
+ exports.SaveIcon = script$1;
5230
+ exports.SecondaryButton = script$h;
5231
+ exports.SectionTitle = script$B;
5232
+ exports.Selector = script$5;
5233
+ exports.SkullIcon = script$3;
5234
+ exports.Spinner = script$e;
5235
+ exports.StyledTable = script$m;
5236
+ exports.SubmitButton = script$b;
5237
+ exports.Temperature = script$i;
5238
+ exports.TextInput = script$a;
5090
5239
  //# sourceMappingURL=index.js.map