@oruga-ui/theme-oruga 0.0.1

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 (116) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +115 -0
  3. package/dist/oruga-full.css +3778 -0
  4. package/dist/oruga-full.min.css +1 -0
  5. package/dist/oruga.css +2209 -0
  6. package/dist/oruga.min.css +1 -0
  7. package/dist/scss/components/_autocomplete.scss +130 -0
  8. package/dist/scss/components/_button.scss +242 -0
  9. package/dist/scss/components/_carousel.scss +256 -0
  10. package/dist/scss/components/_checkbox.scss +183 -0
  11. package/dist/scss/components/_collapse.scss +12 -0
  12. package/dist/scss/components/_datepicker.scss +592 -0
  13. package/dist/scss/components/_datetimepicker.scss +10 -0
  14. package/dist/scss/components/_dropdown.scss +241 -0
  15. package/dist/scss/components/_field.scss +154 -0
  16. package/dist/scss/components/_icon.scss +53 -0
  17. package/dist/scss/components/_input.scss +153 -0
  18. package/dist/scss/components/_inputitems.scss +175 -0
  19. package/dist/scss/components/_loading.scss +45 -0
  20. package/dist/scss/components/_menu.scss +124 -0
  21. package/dist/scss/components/_modal.scss +103 -0
  22. package/dist/scss/components/_notification.scss +212 -0
  23. package/dist/scss/components/_pagination.scss +256 -0
  24. package/dist/scss/components/_radio.scss +121 -0
  25. package/dist/scss/components/_select.scss +168 -0
  26. package/dist/scss/components/_sidebar.scss +112 -0
  27. package/dist/scss/components/_skeleton.scss +93 -0
  28. package/dist/scss/components/_slider.scss +241 -0
  29. package/dist/scss/components/_steps.scss +599 -0
  30. package/dist/scss/components/_switch.scss +171 -0
  31. package/dist/scss/components/_table.scss +481 -0
  32. package/dist/scss/components/_tabs.scss +385 -0
  33. package/dist/scss/components/_timepicker.scss +116 -0
  34. package/dist/scss/components/_tooltip.scss +345 -0
  35. package/dist/scss/components/_upload.scss +74 -0
  36. package/dist/scss/oruga-common.scss +37 -0
  37. package/dist/scss/oruga-full.scss +9 -0
  38. package/dist/scss/oruga.scss +197 -0
  39. package/dist/scss/utils/_animations.scss +231 -0
  40. package/dist/scss/utils/_base.scss +31 -0
  41. package/dist/scss/utils/_helpers.scss +211 -0
  42. package/dist/scss/utils/_root.scss +28 -0
  43. package/dist/scss/utils/_variables.scss +105 -0
  44. package/dist/theme.js +8 -0
  45. package/package.json +72 -0
  46. package/src/App.vue +104 -0
  47. package/src/assets/scss/components/_autocomplete.scss +130 -0
  48. package/src/assets/scss/components/_button.scss +242 -0
  49. package/src/assets/scss/components/_carousel.scss +256 -0
  50. package/src/assets/scss/components/_checkbox.scss +183 -0
  51. package/src/assets/scss/components/_collapse.scss +12 -0
  52. package/src/assets/scss/components/_datepicker.scss +592 -0
  53. package/src/assets/scss/components/_datetimepicker.scss +10 -0
  54. package/src/assets/scss/components/_dropdown.scss +241 -0
  55. package/src/assets/scss/components/_field.scss +154 -0
  56. package/src/assets/scss/components/_icon.scss +53 -0
  57. package/src/assets/scss/components/_input.scss +153 -0
  58. package/src/assets/scss/components/_inputitems.scss +175 -0
  59. package/src/assets/scss/components/_loading.scss +45 -0
  60. package/src/assets/scss/components/_menu.scss +124 -0
  61. package/src/assets/scss/components/_modal.scss +103 -0
  62. package/src/assets/scss/components/_notification.scss +212 -0
  63. package/src/assets/scss/components/_pagination.scss +256 -0
  64. package/src/assets/scss/components/_radio.scss +121 -0
  65. package/src/assets/scss/components/_select.scss +168 -0
  66. package/src/assets/scss/components/_sidebar.scss +112 -0
  67. package/src/assets/scss/components/_skeleton.scss +93 -0
  68. package/src/assets/scss/components/_slider.scss +241 -0
  69. package/src/assets/scss/components/_steps.scss +599 -0
  70. package/src/assets/scss/components/_switch.scss +171 -0
  71. package/src/assets/scss/components/_table.scss +481 -0
  72. package/src/assets/scss/components/_tabs.scss +385 -0
  73. package/src/assets/scss/components/_timepicker.scss +116 -0
  74. package/src/assets/scss/components/_tooltip.scss +345 -0
  75. package/src/assets/scss/components/_upload.scss +74 -0
  76. package/src/assets/scss/oruga-common.scss +37 -0
  77. package/src/assets/scss/oruga-full.scss +9 -0
  78. package/src/assets/scss/oruga.scss +197 -0
  79. package/src/assets/scss/utils/_animations.scss +231 -0
  80. package/src/assets/scss/utils/_base.scss +31 -0
  81. package/src/assets/scss/utils/_helpers.scss +211 -0
  82. package/src/assets/scss/utils/_root.scss +28 -0
  83. package/src/assets/scss/utils/_variables.scss +105 -0
  84. package/src/components/Autocomplete.vue +606 -0
  85. package/src/components/Button.vue +80 -0
  86. package/src/components/Carousel.vue +296 -0
  87. package/src/components/Checkbox.vue +134 -0
  88. package/src/components/Collapse.vue +132 -0
  89. package/src/components/Datepicker.vue +285 -0
  90. package/src/components/Datetimepicker.vue +127 -0
  91. package/src/components/Dropdown.vue +284 -0
  92. package/src/components/Field.vue +243 -0
  93. package/src/components/Icon.vue +66 -0
  94. package/src/components/Input.vue +121 -0
  95. package/src/components/Loading.vue +71 -0
  96. package/src/components/Modal.vue +171 -0
  97. package/src/components/Notification.vue +136 -0
  98. package/src/components/Pagination.vue +97 -0
  99. package/src/components/Radio.vue +95 -0
  100. package/src/components/Select.vue +155 -0
  101. package/src/components/Sidebar.vue +56 -0
  102. package/src/components/Skeleton.vue +57 -0
  103. package/src/components/Slider.vue +226 -0
  104. package/src/components/Steps.vue +234 -0
  105. package/src/components/Switch.vue +134 -0
  106. package/src/components/Table.vue +285 -0
  107. package/src/components/Tabs.vue +208 -0
  108. package/src/components/Taginput.vue +507 -0
  109. package/src/components/Timepicker.vue +124 -0
  110. package/src/components/Tooltip.vue +149 -0
  111. package/src/components/Upload.vue +66 -0
  112. package/src/main.ts +29 -0
  113. package/src/plugins/theme.ts +1 -0
  114. package/src/router/index.ts +39 -0
  115. package/src/views/Home.vue +24 -0
  116. package/types/index.d.ts +1 -0
@@ -0,0 +1,136 @@
1
+ <script setup lang="ts">
2
+ import { useProgrammatic } from "@oruga-ui/oruga-next";
3
+
4
+ function simple() {
5
+ const { oruga } = useProgrammatic();
6
+ oruga.notification.open("Something happened");
7
+ }
8
+ function success() {
9
+ const { oruga } = useProgrammatic();
10
+ oruga.notification.open({
11
+ message: "Something happened correctly!",
12
+ variant: "success",
13
+ closable: true,
14
+ });
15
+ }
16
+ function toast() {
17
+ const { oruga } = useProgrammatic();
18
+ oruga.notification.open({
19
+ message: "Something happened correctly!",
20
+ rootClass: "toast",
21
+ position: "top",
22
+ });
23
+ }
24
+ function danger() {
25
+ const { oruga } = useProgrammatic();
26
+
27
+ oruga.notification.open({
28
+ message: `Something's not good, also I'm on <b>bottom</b>`,
29
+ position: "bottom-right",
30
+ variant: "danger",
31
+ closable: true,
32
+ indefinite: true,
33
+ ariaLive: "assertive",
34
+ ariaAtomic: true,
35
+ ariaCloseLabel: "Close",
36
+ onClose: () => {
37
+ const { oruga } = useProgrammatic();
38
+ oruga.notification.open("Custom notification closed!");
39
+ },
40
+ });
41
+ }
42
+ </script>
43
+
44
+ <template>
45
+ <section>
46
+ <h2>Notification Demo</h2>
47
+ <hr />
48
+ </section>
49
+
50
+ <section>
51
+ <h3>Base</h3>
52
+
53
+ <o-notification
54
+ closable
55
+ variant="primary"
56
+ aria-close-label="Close notification">
57
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id
58
+ fermentum quam. Proin sagittis, nibh id hendrerit imperdiet, elit sapien
59
+ laoreet elit
60
+ </o-notification>
61
+ <o-notification
62
+ closable
63
+ variant="secondary"
64
+ aria-close-label="Close notification">
65
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id
66
+ fermentum quam. Proin sagittis, nibh id hendrerit imperdiet, elit sapien
67
+ laoreet elit
68
+ </o-notification>
69
+ <o-notification
70
+ closable
71
+ variant="info"
72
+ aria-close-label="Close notification">
73
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id
74
+ fermentum quam. Proin sagittis, nibh id hendrerit imperdiet, elit sapien
75
+ laoreet elit
76
+ </o-notification>
77
+ <o-notification
78
+ closable
79
+ variant="success"
80
+ aria-close-label="Close notification">
81
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id
82
+ fermentum quam. Proin sagittis, nibh id hendrerit imperdiet, elit sapien
83
+ laoreet elit
84
+ </o-notification>
85
+ <o-notification
86
+ closable
87
+ variant="warning"
88
+ aria-close-label="Close notification"
89
+ role="alert">
90
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id
91
+ fermentum quam. Proin sagittis, nibh id hendrerit imperdiet, elit sapien
92
+ laoreet elit
93
+ </o-notification>
94
+ <o-notification
95
+ closable
96
+ variant="danger"
97
+ aria-close-label="Close notification"
98
+ role="alert">
99
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id
100
+ fermentum quam. Proin sagittis, nibh id hendrerit imperdiet, elit sapien
101
+ laoreet elit
102
+ </o-notification>
103
+
104
+ <o-notification
105
+ closable
106
+ type="info"
107
+ variant="info"
108
+ aria-close-label="Close notification">
109
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id
110
+ fermentum quam. Proin sagittis, nibh id hendrerit imperdiet, elit sapien
111
+ laoreet elit
112
+ </o-notification>
113
+ </section>
114
+
115
+ <section>
116
+ <h3>Programmatically opening</h3>
117
+
118
+ <div class="buttons">
119
+ <o-button
120
+ label="Launch notification (default)"
121
+ size="medium"
122
+ @click="simple" />
123
+ <o-button
124
+ label="Launch notification (custom)"
125
+ variant="success"
126
+ size="medium"
127
+ @click="success" />
128
+ <o-button label="Launch toast" size="medium" @click="toast" />
129
+ <o-button
130
+ label="Launch notification (custom)"
131
+ variant="danger"
132
+ size="medium"
133
+ @click="danger" />
134
+ </div>
135
+ </section>
136
+ </template>
@@ -0,0 +1,97 @@
1
+ <script setup lang="ts">
2
+ import { ref } from "vue";
3
+
4
+ const total = ref(200);
5
+ const current = ref(10);
6
+ const perPage = ref(10);
7
+ const rangeBefore = ref(3);
8
+ const rangeAfter = ref(1);
9
+ const order = ref("");
10
+ const size = ref("");
11
+ const isSimple = ref(false);
12
+ const isRounded = ref(false);
13
+ const prevIcon = ref("chevron-left");
14
+ const nextIcon = ref("chevron-right");
15
+ </script>
16
+
17
+ <template>
18
+ <section>
19
+ <h2>Pagination Demo</h2>
20
+ <hr />
21
+ </section>
22
+
23
+ <section>
24
+ <h3>Base</h3>
25
+
26
+ <o-field grouped group-multiline>
27
+ <o-field label="Total">
28
+ <o-input v-model="total" type="number"></o-input>
29
+ </o-field>
30
+ <o-field label="Items per page">
31
+ <o-input v-model="perPage" type="number"></o-input>
32
+ </o-field>
33
+ </o-field>
34
+
35
+ <o-field grouped group-multiline>
36
+ <o-field label="Show buttons before current">
37
+ <o-input v-model="rangeBefore" type="number" min="0"></o-input>
38
+ </o-field>
39
+ <o-field label="Show buttons after current">
40
+ <o-input v-model="rangeAfter" type="number" min="0"></o-input>
41
+ </o-field>
42
+ </o-field>
43
+
44
+ <o-field grouped group-multiline>
45
+ <o-field label="Order">
46
+ <o-select v-model="order">
47
+ <option value="">default</option>
48
+ <option value="left">left</option>
49
+ <option value="centered">centered</option>
50
+ <option value="right">right</option>
51
+ </o-select>
52
+ </o-field>
53
+ <o-field label="Size">
54
+ <o-select v-model="size">
55
+ <option value="">default</option>
56
+ <option value="small">small</option>
57
+ <option value="medium">medium</option>
58
+ <option value="large">large</option>
59
+ </o-select>
60
+ </o-field>
61
+ <o-field label="Previous icon">
62
+ <o-select v-model="prevIcon">
63
+ <option value="chevron-left">Chevron</option>
64
+ <option value="arrow-left">Arrow</option>
65
+ </o-select>
66
+ </o-field>
67
+ <o-field label="Next icon">
68
+ <o-select v-model="nextIcon">
69
+ <option value="chevron-right">Chevron</option>
70
+ <option value="arrow-right">Arrow</option>
71
+ </o-select>
72
+ </o-field>
73
+ </o-field>
74
+ <o-field grouped group-multiline>
75
+ <o-switch v-model="isSimple">Simple</o-switch>
76
+ <o-switch v-model="isRounded">Rounded</o-switch>
77
+ </o-field>
78
+ <br />
79
+ <o-pagination
80
+ v-model:current="current"
81
+ :total="total"
82
+ :range-before="rangeBefore"
83
+ :range-after="rangeAfter"
84
+ :order="order"
85
+ :size="size"
86
+ :simple="isSimple"
87
+ :rounded="isRounded"
88
+ :per-page="perPage"
89
+ :icon-prev="prevIcon"
90
+ :icon-next="nextIcon"
91
+ aria-next-label="Next page"
92
+ aria-previous-label="Previous page"
93
+ aria-page-label="Page"
94
+ aria-current-label="Current page">
95
+ </o-pagination>
96
+ </section>
97
+ </template>
@@ -0,0 +1,95 @@
1
+ <script setup lang="ts">
2
+ import { ref } from "vue";
3
+
4
+ const radio = ref("Jack");
5
+ const variant = ref("success");
6
+ const size = ref("small");
7
+ </script>
8
+
9
+ <template>
10
+ <section>
11
+ <h2>Radio Demo</h2>
12
+ <hr />
13
+ </section>
14
+
15
+ <section>
16
+ <h3>Base</h3>
17
+
18
+ <o-field>
19
+ <o-radio v-model="radio" name="name" native-value="Flint">
20
+ Flint
21
+ </o-radio>
22
+ <o-radio v-model="radio" name="name" native-value="Silver">
23
+ Silver
24
+ </o-radio>
25
+ <o-radio v-model="radio" name="name" native-value="Jack"> Jack </o-radio>
26
+ <o-radio v-model="radio" name="name" native-value="Vane" disabled>
27
+ Vane
28
+ </o-radio>
29
+ </o-field>
30
+ <p><b>Selection:</b> {{ radio }}</p>
31
+ </section>
32
+
33
+ <section>
34
+ <h3>Variant</h3>
35
+
36
+ <o-field>
37
+ <o-radio v-model="variant" native-value="default"> Default </o-radio>
38
+ </o-field>
39
+ <o-field>
40
+ <o-radio v-model="variant" native-value="primary" variant="primary">
41
+ Primary
42
+ </o-radio>
43
+ </o-field>
44
+ <o-field>
45
+ <o-radio v-model="variant" native-value="secondary" variant="secondary">
46
+ Secondary
47
+ </o-radio>
48
+ </o-field>
49
+ <o-field>
50
+ <o-radio v-model="variant" native-value="info" variant="info">
51
+ Info
52
+ </o-radio>
53
+ </o-field>
54
+ <o-field>
55
+ <o-radio v-model="variant" native-value="success" variant="success">
56
+ Success
57
+ </o-radio>
58
+ </o-field>
59
+ <o-field>
60
+ <o-radio v-model="variant" native-value="warning" variant="warning">
61
+ Warning
62
+ </o-radio>
63
+ </o-field>
64
+ <o-field>
65
+ <o-radio v-model="variant" native-value="danger" variant="danger">
66
+ Danger
67
+ </o-radio>
68
+ </o-field>
69
+ <p><b>Selection:</b> {{ variant }}</p>
70
+ </section>
71
+
72
+ <section>
73
+ <h3>Size</h3>
74
+
75
+ <o-field>
76
+ <o-radio v-model="size" native-value="small" size="small">
77
+ Small
78
+ </o-radio>
79
+ </o-field>
80
+ <o-field>
81
+ <o-radio v-model="size" native-value="default"> Default </o-radio>
82
+ </o-field>
83
+ <o-field>
84
+ <o-radio v-model="size" native-value="medium" size="medium">
85
+ Medium
86
+ </o-radio>
87
+ </o-field>
88
+ <o-field>
89
+ <o-radio v-model="size" native-value="large" size="large">
90
+ Large
91
+ </o-radio>
92
+ </o-field>
93
+ <p><b>Selection:</b> {{ size }}</p>
94
+ </section>
95
+ </template>
@@ -0,0 +1,155 @@
1
+ <script setup lang="ts">
2
+ import { ref } from "vue";
3
+
4
+ const selectedOptions = ref([]);
5
+ </script>
6
+
7
+ <template>
8
+ <section>
9
+ <h2>Select Demo</h2>
10
+ <hr />
11
+ </section>
12
+
13
+ <section>
14
+ <h3>Base</h3>
15
+
16
+ <o-field label="Simple">
17
+ <o-select placeholder="Select a name">
18
+ <option value="flint">Flint</option>
19
+ <option value="silver">Silver</option>
20
+ </o-select>
21
+ </o-field>
22
+
23
+ <o-field label="Grouped">
24
+ <o-select placeholder="Select a character" icon="user">
25
+ <optgroup label="Black Sails">
26
+ <option value="flint">Flint</option>
27
+ <option value="silver">Silver</option>
28
+ <option value="vane">Vane</option>
29
+ <option value="billy">Billy</option>
30
+ <option value="jack">Jack</option>
31
+ </optgroup>
32
+
33
+ <optgroup label="Breaking Bad">
34
+ <option value="heisenberg">Heisenberg</option>
35
+ <option value="jesse">Jesse</option>
36
+ <option value="saul">Saul</option>
37
+ <option value="mike">Mike</option>
38
+ </optgroup>
39
+
40
+ <optgroup label="Game of Thrones">
41
+ <option value="tyrion-lannister">Tyrion Lannister</option>
42
+ <option value="jamie-lannister">Jamie Lannister</option>
43
+ <option value="daenerys-targaryen">Daenerys Targaryen</option>
44
+ <option value="jon-snow">Jon Snow</option>
45
+ </optgroup>
46
+ </o-select>
47
+ </o-field>
48
+
49
+ <o-field
50
+ label="Error"
51
+ variant="danger"
52
+ message="Something went wrong with this field">
53
+ <o-select placeholder="Select a character">
54
+ <option value="flint">Flint</option>
55
+ <option value="silver">Silver</option>
56
+ </o-select>
57
+ </o-field>
58
+
59
+ <o-field label="Rounded">
60
+ <o-select placeholder="Select a character" rounded>
61
+ <option value="flint">Flint</option>
62
+ <option value="silver">Silver</option>
63
+ </o-select>
64
+ </o-field>
65
+
66
+ <o-field label="Disabled">
67
+ <o-select placeholder="Select a character" disabled>
68
+ <option value="flint">Flint</option>
69
+ <option value="silver">Silver</option>
70
+ </o-select>
71
+ </o-field>
72
+
73
+ <o-field label="Disabled option">
74
+ <o-select placeholder="Select a character">
75
+ <option value="flint">Flint</option>
76
+ <option value="silver" disabled>Silver</option>
77
+ </o-select>
78
+ </o-field>
79
+
80
+ <o-field label="Expanded">
81
+ <o-select placeholder="Select a character" expanded>
82
+ <option value="flint">Flint</option>
83
+ <option value="silver">Silver</option>
84
+ </o-select>
85
+ </o-field>
86
+
87
+ <o-field label="Multiple">
88
+ <o-select v-model="selectedOptions" multiple native-size="8">
89
+ <option value="flint">Flint</option>
90
+ <option value="silver">Silver</option>
91
+ <option value="vane">Vane</option>
92
+ <option value="billy">Billy</option>
93
+ <option value="jack">Jack</option>
94
+ <option value="heisenberg">Heisenberg</option>
95
+ <option value="jesse">Jesse</option>
96
+ <option value="saul">Saul</option>
97
+ <option value="mike">Mike</option>
98
+ </o-select>
99
+ </o-field>
100
+ </section>
101
+
102
+ <section class="my-4">
103
+ <h3>Sizes</h3>
104
+
105
+ <o-field label="Size 'small'">
106
+ <o-select placeholder="Select a name" size="small">
107
+ <option value="flint">Flint</option>
108
+ <option value="silver">Silver</option>
109
+ </o-select>
110
+ </o-field>
111
+
112
+ <o-field label="Size 'default'">
113
+ <o-select placeholder="Select a name">
114
+ <option value="flint">Flint</option>
115
+ <option value="silver">Silver</option>
116
+ </o-select>
117
+ </o-field>
118
+
119
+ <o-field label="Size 'medium'">
120
+ <o-select placeholder="Select a name" size="medium">
121
+ <option value="flint">Flint</option>
122
+ <option value="silver">Silver</option>
123
+ </o-select>
124
+ </o-field>
125
+
126
+ <o-field label="Size 'large'">
127
+ <o-select placeholder="Select a name" size="large">
128
+ <option value="flint">Flint</option>
129
+ <option value="silver">Silver</option>
130
+ </o-select>
131
+ </o-field>
132
+ </section>
133
+
134
+ <section class="my-4">
135
+ <h3>With Icons</h3>
136
+
137
+ <o-field>
138
+ <o-select placeholder="Select a name" icon="search" icon-clickable>
139
+ <option value="flint">Flint</option>
140
+ <option value="silver">Silver</option>
141
+ </o-select>
142
+ </o-field>
143
+
144
+ <o-field>
145
+ <o-select
146
+ placeholder="Select a name"
147
+ icon="envelope"
148
+ icon-right="times-circle"
149
+ icon-right-clickable>
150
+ <option value="flint">Flint</option>
151
+ <option value="silver">Silver</option>
152
+ </o-select>
153
+ </o-field>
154
+ </section>
155
+ </template>
@@ -0,0 +1,56 @@
1
+ <script setup lang="ts">
2
+ import { ref } from "vue";
3
+
4
+ const isOpen = ref(false);
5
+ const isOverlay = ref(true);
6
+ const isFullheight = ref(true);
7
+ const isFullwidth = ref(false);
8
+ const isReduced = ref(false);
9
+ const right = ref(false);
10
+ const expandOnHover = ref(false);
11
+
12
+ const toggleSidebar = () => {
13
+ isOpen.value = !isOpen.value;
14
+ };
15
+ </script>
16
+
17
+ <template>
18
+ <section>
19
+ <h2>Sidebar Demoo</h2>
20
+ <hr />
21
+ </section>
22
+
23
+ <section>
24
+ <h3>Base</h3>
25
+
26
+ <o-sidebar
27
+ v-model:open="isOpen"
28
+ variant="primary"
29
+ :fullheight="isFullheight"
30
+ :fullwidth="isFullwidth"
31
+ :overlay="isOverlay"
32
+ :right="right"
33
+ :reduce="isReduced"
34
+ :expand-on-hover="expandOnHover"
35
+ mobile="fullwidth"
36
+ @close="toggleSidebar()">
37
+ <a class="btn-close" aria-label="Close" @click="toggleSidebar()" />
38
+ <img
39
+ width="80"
40
+ src="https://avatars2.githubusercontent.com/u/66300512?s=200&v=4"
41
+ alt="Lightweight UI components for Vue.js" />
42
+ <h3>Example</h3>
43
+ </o-sidebar>
44
+
45
+ <o-field grouped>
46
+ <o-switch v-model="isOverlay">Overlay</o-switch>
47
+ <o-switch v-model="isFullheight">Fullheight</o-switch>
48
+ <o-switch v-model="isFullwidth">Fullwidth</o-switch>
49
+ <o-switch v-model="isReduced">Reduce</o-switch>
50
+ <o-switch v-model="expandOnHover">Expand on hover</o-switch>
51
+ <o-switch v-model="right">right</o-switch>
52
+ </o-field>
53
+
54
+ <o-button @click="toggleSidebar()">Show</o-button>
55
+ </section>
56
+ </template>
@@ -0,0 +1,57 @@
1
+ <script setup lang="ts">
2
+ import { ref } from "vue";
3
+
4
+ const animated = ref(true);
5
+ </script>
6
+
7
+ <template>
8
+ <section>
9
+ <h2>Skeleton Demo</h2>
10
+ <hr />
11
+ </section>
12
+
13
+ <section>
14
+ <h3>Base</h3>
15
+
16
+ <o-field grouped group-multiline>
17
+ <o-switch v-model="animated">Animated</o-switch>
18
+ </o-field>
19
+ 20%
20
+ <o-skeleton width="20%" :animated="animated" />
21
+ 40%
22
+ <o-skeleton width="40%" :animated="animated" />
23
+ 80%
24
+ <o-skeleton width="80%" :animated="animated" />
25
+ Count 2
26
+ <o-skeleton :animated="animated" :count="2" />
27
+ </section>
28
+
29
+ <section>
30
+ <h3>Circle</h3>
31
+
32
+ <o-skeleton :animated="animated" circle width="64px" height="64px" />
33
+ </section>
34
+
35
+ <section>
36
+ <h3>Sizes</h3>
37
+ Small
38
+ <o-skeleton :animated="animated" size="small" />
39
+ Default
40
+ <o-skeleton :animated="animated" />
41
+ Medium
42
+ <o-skeleton :animated="animated" size="medium" />
43
+ Large
44
+ <o-skeleton :animated="animated" size="large" />
45
+ </section>
46
+
47
+ <section>
48
+ <h3>Position</h3>
49
+
50
+ Left
51
+ <o-skeleton width="30%" position="left" :animated="animated" />
52
+ Center
53
+ <o-skeleton width="30%" position="centered" :animated="animated" />
54
+ Right
55
+ <o-skeleton width="30%" position="right" :animated="animated" />
56
+ </section>
57
+ </template>