@appscode/design-system 1.1.0-beta.10 → 1.1.0-beta.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@appscode/design-system",
3
- "version": "1.1.0-beta.10",
3
+ "version": "1.1.0-beta.13",
4
4
  "description": "A design system for Appscode websites and dashboards made using Bulma",
5
5
  "main": "main.scss",
6
6
  "scripts": {
@@ -65,7 +65,7 @@ const OptionDots = defineAsyncComponent(
65
65
  transition: 0.3s ease-in-out;
66
66
  position: relative;
67
67
  z-index: 1;
68
- width: calc(33% - 3px);
68
+ width: calc(33% - 7px);
69
69
  min-width: 430px;
70
70
  max-width: 530px;
71
71
 
@@ -1,20 +1,22 @@
1
1
  <script lang="ts" setup>
2
- import { ref, defineAsyncComponent } from "vue";
2
+ import { defineAsyncComponent } from "vue";
3
3
 
4
4
  const FooterItems = defineAsyncComponent(() => import("./FooterItems.vue"));
5
5
  const FooterItem = defineAsyncComponent(() => import("./FooterItem.vue"));
6
6
 
7
- const dataObj = ref([
8
- { key: "VERSION:", value: "10.5.8" },
9
- { key: "NAMESPACE:", value: "demo" },
10
- { key: "MODE:", value: "Standalone" },
11
- ]);
7
+ interface Props {
8
+ infoData?: Array<Record<string, string>>;
9
+ }
10
+
11
+ withDefaults(defineProps<Props>(), {
12
+ infoData: () => [],
13
+ });
12
14
  </script>
13
15
 
14
16
  <template>
15
17
  <footer-items>
16
- <footer-item v-for="(data, idx) in dataObj" :key="idx">
17
- <span class="">{{ data.key }}</span>
18
+ <footer-item v-for="(data, idx) in infoData" :key="idx + data.key">
19
+ <span class="">{{ data.key }}:</span>
18
20
  <span>{{ data.value }}</span>
19
21
  </footer-item>
20
22
  </footer-items>
@@ -5,36 +5,40 @@ const FooterItem = defineAsyncComponent(() => import("./FooterItem.vue"));
5
5
  const HeroiconsCheckBadge = defineAsyncComponent(
6
6
  () => import("~icons/heroicons/check-badge")
7
7
  );
8
+ const HeroiconsCrossBadge = defineAsyncComponent(
9
+ () => import("~icons/heroicons/x-circle")
10
+ );
11
+ const HeroiconsLoadingBadge = defineAsyncComponent(
12
+ () => import("~icons/heroicons/arrow-path")
13
+ );
14
+ interface Props {
15
+ statusInfo?: Array<Record<string, string>>;
16
+ }
8
17
 
9
- const status = ref([
10
- {
11
- icon: "HeroiconsCheckCircle",
12
- label: "Not Exposed",
13
- classType: "has-text-warning",
14
- },
15
- { icon: "HeroiconsXCircle", label: "TLS", classType: "has-text-danger" },
16
- {
17
- icon: "HeroiconsCheckBadge",
18
- label: "Backup",
19
- classType: "has-text-success",
20
- },
21
- {
22
- icon: "HeroiconsXCircle",
23
- label: "Monitoring",
24
- classType: "has-text-danger",
25
- },
26
- ]);
18
+ withDefaults(defineProps<Props>(), {
19
+ statusInfo: () => [],
20
+ });
27
21
  </script>
28
22
 
29
23
  <template>
30
24
  <footer-items>
31
25
  <footer-item
32
- v-for="(item, idx) in status"
33
- :key="idx"
34
- :modifier-classes="item.classType"
26
+ v-for="(item, idx) in statusInfo"
27
+ :key="idx + item.label"
28
+ :modifier-classes="item.color"
35
29
  >
36
- <span class="icon"><HeroiconsCheckBadge :size="20" /></span
37
- ><span>{{ item.label }}</span>
30
+ <span class="icon">
31
+ <HeroiconsCheckBadge
32
+ v-if="item.color === `has-text-success`"
33
+ :size="20"
34
+ />
35
+ <HeroiconsLoadingBadge
36
+ v-else-if="item.color === `has-text-warning`"
37
+ :size="20"
38
+ />
39
+ <HeroiconsCrossBadge v-else :size="20" />
40
+ </span>
41
+ <span>{{ item.label }}</span>
38
42
  </footer-item>
39
43
  </footer-items>
40
44
  </template>
@@ -1,42 +1,32 @@
1
1
  <script lang="ts" setup>
2
- import { defineAsyncComponent, ref } from "vue";
2
+ import { defineAsyncComponent } from "vue";
3
3
  const FooterItems = defineAsyncComponent(() => import("./FooterItems.vue"));
4
4
  const FooterItem = defineAsyncComponent(() => import("./FooterItem.vue"));
5
5
 
6
- const HeroiconsCpuChip = defineAsyncComponent(
7
- () => import("~icons/heroicons/cpu-chip")
8
- );
6
+ interface Props {
7
+ usages?: Array<{
8
+ icon?: string;
9
+ useData?: {
10
+ limit?: string;
11
+ request?: string;
12
+ };
13
+ }>;
14
+ }
9
15
 
10
- const usages = ref([
11
- {
12
- icon: "HeroiconsCpuChip",
13
- useData: {
14
- limit: "500m",
15
- usage: "500m",
16
- },
17
- },
18
- {
19
- icon: "HeroiconsCpuChip",
20
- useData: {
21
- limit: "1G",
22
- usage: "1G",
23
- },
24
- },
25
- {
26
- icon: "HeroiconsCpuChip",
27
- useData: {
28
- limit: "10Gi",
29
- usage: "10Gi",
30
- },
31
- },
32
- ]);
16
+ withDefaults(defineProps<Props>(), {
17
+ usages: () => [],
18
+ });
33
19
  </script>
34
20
 
35
21
  <template>
36
22
  <footer-items>
37
- <footer-item v-for="(type, idx) in usages" :key="idx">
38
- <span class="icon"><HeroiconsCpuChip :size="20" /></span
39
- ><span>{{ type.useData.limit }}/{{ type.useData.usage }}</span>
23
+ <footer-item v-for="(info, idx) in usages" :key="idx">
24
+ <span class="icon"><img :src="info.icon" /></span
25
+ ><span
26
+ >{{ info.useData?.limit || "N" }}/{{
27
+ info.useData?.request || "A"
28
+ }}</span
29
+ >
40
30
  </footer-item>
41
31
  </footer-items>
42
32
  </template>
@@ -12,7 +12,7 @@ withDefaults(defineProps<Props>(), {
12
12
 
13
13
  <template>
14
14
  <div
15
- class="is-flex is-justify-content-center is-align-items-center is-flex-direction-column ac-preloader"
15
+ class="is-flex is-justify-content-center is-align-items-center is-flex-direction-column ac-preloader page-loader"
16
16
  style="height: calc(100vh - 200px)"
17
17
  >
18
18
  <span v-if="showSpinner" class="spinner"></span>