divhunt 2.0.5 → 2.0.9

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 (159) hide show
  1. package/addons/core/commands/back/functions/expose.js +14 -0
  2. package/addons/core/commands/back/functions/find.js +1 -1
  3. package/addons/core/commands/back/functions/grpc/client.js +1 -1
  4. package/addons/core/commands/back/functions/grpc/server.js +1 -1
  5. package/addons/core/commands/back/functions/hide.js +14 -0
  6. package/addons/core/commands/back/functions/http/server.js +1 -1
  7. package/addons/core/commands/back/items/{many.js → self/many.js} +2 -4
  8. package/addons/core/commands/back/items/{one.js → self/one.js} +2 -4
  9. package/addons/core/commands/back/items/{run.js → self/run.js} +3 -7
  10. package/addons/core/commands/core/functions/run.js +13 -0
  11. package/addons/core/commands/{back → core}/item/functions/run.js +1 -1
  12. package/addons/core/commands/core/load.js +25 -0
  13. package/addons/core/commands/front/directives/run.js +84 -0
  14. package/addons/core/commands/front/directives/submit.js +150 -0
  15. package/addons/core/commands/front/functions/api.js +30 -0
  16. package/addons/render/assets/back/functions/import.js +1 -1
  17. package/examples/basic-front/back/assets.js +11 -0
  18. package/examples/basic-front/back/index.js +13 -0
  19. package/examples/basic-front/back/items/commands/html.js +14 -0
  20. package/examples/basic-front/back/items/commands/test.js +19 -0
  21. package/examples/basic-front/back/items/html/fonts.js +12 -0
  22. package/examples/basic-front/front/pages/home.js +16 -0
  23. package/examples/basic-front/front/styles/main.css +31 -0
  24. package/examples/basic-front/front/test.js +7 -0
  25. package/examples/basic-front/package.json +7 -0
  26. package/lib/src/divhunt.js +2 -0
  27. package/lib/src/mixins/form.js +67 -0
  28. package/package.json +3 -3
  29. package/test/front/test.js +31 -0
  30. package/test.js +52 -0
  31. package/addons/core/commands/LICENSE.txt +0 -40
  32. package/addons/core/commands/README.md +0 -294
  33. package/addons/core/commands/back/load.js +0 -18
  34. package/addons/core/commands/front/#register/addon.js +0 -9
  35. package/addons/core/commands/front/functions/find.js +0 -22
  36. package/addons/core/commands/front/item/functions/run.js +0 -96
  37. package/addons/core/commands/front/items/elements/table/table.css +0 -18
  38. package/addons/core/commands/front/items/elements/table/table.js +0 -254
  39. package/addons/render/elements/front/items/self/base/menu/menu.js +0 -96
  40. package/addons/render/elements/front/items/self/base/menu/styles/base.css +0 -116
  41. package/addons/render/elements/front/items/self/base/menu/styles/sizes.css +0 -27
  42. package/addons/render/elements/front/items/self/base/menu/styles/variants.css +0 -99
  43. package/addons/render/elements/front/items/self/base/tag/tag.css +0 -199
  44. package/addons/render/elements/front/items/self/base/tag/tag.js +0 -37
  45. package/addons/render/elements/front/items/self/cards/basic/basic.js +0 -89
  46. package/addons/render/elements/front/items/self/cards/basic/styles/base.css +0 -66
  47. package/addons/render/elements/front/items/self/cards/basic/styles/sizes.css +0 -32
  48. package/addons/render/elements/front/items/self/cards/basic/styles/variants.css +0 -99
  49. package/addons/render/elements/front/items/self/cards/list/list.js +0 -108
  50. package/addons/render/elements/front/items/self/cards/list/styles/base.css +0 -96
  51. package/addons/render/elements/front/items/self/cards/list/styles/sizes.css +0 -32
  52. package/addons/render/elements/front/items/self/cards/list/styles/variants.css +0 -99
  53. package/addons/render/elements/front/items/self/cards/media/media.js +0 -116
  54. package/addons/render/elements/front/items/self/cards/media/styles/base.css +0 -126
  55. package/addons/render/elements/front/items/self/cards/media/styles/sizes.css +0 -49
  56. package/addons/render/elements/front/items/self/cards/media/styles/variants.css +0 -74
  57. package/addons/render/elements/front/items/self/cards/profile/profile.js +0 -95
  58. package/addons/render/elements/front/items/self/cards/profile/styles/base.css +0 -142
  59. package/addons/render/elements/front/items/self/cards/profile/styles/sizes.css +0 -43
  60. package/addons/render/elements/front/items/self/cards/profile/styles/variants.css +0 -131
  61. package/addons/render/elements/front/items/self/cards/stat/stat.js +0 -117
  62. package/addons/render/elements/front/items/self/cards/stat/styles/base.css +0 -97
  63. package/addons/render/elements/front/items/self/cards/stat/styles/sizes.css +0 -49
  64. package/addons/render/elements/front/items/self/cards/stat/styles/variants.css +0 -124
  65. package/addons/render/elements/front/items/self/content/html/html.css +0 -93
  66. package/addons/render/elements/front/items/self/content/html/html.js +0 -40
  67. package/addons/render/elements/front/items/self/content/markdown/markdown.css +0 -200
  68. package/addons/render/elements/front/items/self/content/markdown/markdown.js +0 -120
  69. package/addons/render/elements/front/items/self/data/comments/comments.css +0 -253
  70. package/addons/render/elements/front/items/self/data/comments/comments.js +0 -134
  71. package/addons/render/elements/front/items/self/data/files/files.css +0 -116
  72. package/addons/render/elements/front/items/self/data/files/files.js +0 -85
  73. package/addons/render/elements/front/items/self/data/folders/folders.css +0 -104
  74. package/addons/render/elements/front/items/self/data/folders/folders.js +0 -73
  75. package/addons/render/elements/front/items/self/data/inbox/inbox.css +0 -225
  76. package/addons/render/elements/front/items/self/data/inbox/inbox.js +0 -111
  77. package/addons/render/elements/front/items/self/data/logs/logs.css +0 -133
  78. package/addons/render/elements/front/items/self/data/logs/logs.js +0 -65
  79. package/addons/render/elements/front/items/self/data/plans/plans.css +0 -231
  80. package/addons/render/elements/front/items/self/data/plans/plans.js +0 -104
  81. package/addons/render/elements/front/items/self/data/properties/properties.css +0 -108
  82. package/addons/render/elements/front/items/self/data/properties/properties.js +0 -156
  83. package/addons/render/elements/front/items/self/data/table/table.css +0 -153
  84. package/addons/render/elements/front/items/self/data/table/table.js +0 -106
  85. package/addons/render/elements/front/items/self/data/timeline/timeline.css +0 -127
  86. package/addons/render/elements/front/items/self/data/timeline/timeline.js +0 -57
  87. package/addons/render/elements/front/items/self/feedback/alert/alert.css +0 -258
  88. package/addons/render/elements/front/items/self/feedback/alert/alert.js +0 -67
  89. package/addons/render/elements/front/items/self/feedback/confirm/confirm.css +0 -229
  90. package/addons/render/elements/front/items/self/feedback/confirm/confirm.js +0 -81
  91. package/addons/render/elements/front/items/self/feedback/loader/loader.css +0 -203
  92. package/addons/render/elements/front/items/self/feedback/loader/loader.js +0 -25
  93. package/addons/render/elements/front/items/self/feedback/progress/progress.css +0 -136
  94. package/addons/render/elements/front/items/self/feedback/progress/progress.js +0 -40
  95. package/addons/render/elements/front/items/self/form/button/button.js +0 -105
  96. package/addons/render/elements/front/items/self/form/button/styles/base.css +0 -176
  97. package/addons/render/elements/front/items/self/form/button/styles/sizes.css +0 -78
  98. package/addons/render/elements/front/items/self/form/button/styles/variants.css +0 -421
  99. package/addons/render/elements/front/items/self/form/checkbox/checkbox.js +0 -57
  100. package/addons/render/elements/front/items/self/form/checkbox/styles/base.css +0 -52
  101. package/addons/render/elements/front/items/self/form/checkbox/styles/sizes.css +0 -39
  102. package/addons/render/elements/front/items/self/form/checkbox/styles/variants.css +0 -121
  103. package/addons/render/elements/front/items/self/form/field/field.css +0 -96
  104. package/addons/render/elements/front/items/self/form/field/field.js +0 -39
  105. package/addons/render/elements/front/items/self/form/input/input.css +0 -111
  106. package/addons/render/elements/front/items/self/form/input/input.js +0 -78
  107. package/addons/render/elements/front/items/self/form/input/styles/base.css +0 -26
  108. package/addons/render/elements/front/items/self/form/input/styles/sizes.css +0 -15
  109. package/addons/render/elements/front/items/self/form/input/styles/variants.css +0 -98
  110. package/addons/render/elements/front/items/self/form/radio/radio.js +0 -57
  111. package/addons/render/elements/front/items/self/form/radio/styles/base.css +0 -48
  112. package/addons/render/elements/front/items/self/form/radio/styles/sizes.css +0 -36
  113. package/addons/render/elements/front/items/self/form/radio/styles/variants.css +0 -121
  114. package/addons/render/elements/front/items/self/form/rating/rating.css +0 -95
  115. package/addons/render/elements/front/items/self/form/rating/rating.js +0 -88
  116. package/addons/render/elements/front/items/self/form/section/section.css +0 -107
  117. package/addons/render/elements/front/items/self/form/section/section.js +0 -39
  118. package/addons/render/elements/front/items/self/form/slider/slider.css +0 -244
  119. package/addons/render/elements/front/items/self/form/slider/slider.js +0 -69
  120. package/addons/render/elements/front/items/self/form/textarea/textarea.css +0 -117
  121. package/addons/render/elements/front/items/self/form/textarea/textarea.js +0 -69
  122. package/addons/render/elements/front/items/self/layout/empty/empty.css +0 -154
  123. package/addons/render/elements/front/items/self/layout/empty/empty.js +0 -43
  124. package/addons/render/elements/front/items/self/layout/heading/heading.css +0 -117
  125. package/addons/render/elements/front/items/self/layout/heading/heading.js +0 -47
  126. package/addons/render/elements/front/items/self/layout/hero/hero.js +0 -88
  127. package/addons/render/elements/front/items/self/layout/hero/styles/base.css +0 -81
  128. package/addons/render/elements/front/items/self/layout/hero/styles/sizes.css +0 -24
  129. package/addons/render/elements/front/items/self/layout/hero/styles/variants.css +0 -98
  130. package/addons/render/elements/front/items/self/navigation/breadcrumb/addon/_class/addon.js +0 -9
  131. package/addons/render/elements/front/items/self/navigation/breadcrumb/addon/functions/get.js +0 -22
  132. package/addons/render/elements/front/items/self/navigation/breadcrumb/breadcrumb.css +0 -13
  133. package/addons/render/elements/front/items/self/navigation/breadcrumb/breadcrumb.js +0 -51
  134. package/addons/render/elements/front/items/self/navigation/footer/addon/_class/addon.js +0 -11
  135. package/addons/render/elements/front/items/self/navigation/footer/addon/functions/columns.js +0 -11
  136. package/addons/render/elements/front/items/self/navigation/footer/addon/functions/get.js +0 -34
  137. package/addons/render/elements/front/items/self/navigation/footer/footer.css +0 -283
  138. package/addons/render/elements/front/items/self/navigation/footer/footer.js +0 -139
  139. package/addons/render/elements/front/items/self/navigation/navbar/addon/_class/addon.js +0 -13
  140. package/addons/render/elements/front/items/self/navigation/navbar/addon/functions/active.js +0 -7
  141. package/addons/render/elements/front/items/self/navigation/navbar/addon/functions/get.js +0 -31
  142. package/addons/render/elements/front/items/self/navigation/navbar/navbar.css +0 -140
  143. package/addons/render/elements/front/items/self/navigation/navbar/navbar.js +0 -118
  144. package/addons/render/elements/front/items/self/navigation/pagination/pagination.css +0 -160
  145. package/addons/render/elements/front/items/self/navigation/pagination/pagination.js +0 -131
  146. package/addons/render/elements/front/items/self/navigation/sidebar/addon/_class/addon.js +0 -12
  147. package/addons/render/elements/front/items/self/navigation/sidebar/addon/functions/active.js +0 -7
  148. package/addons/render/elements/front/items/self/navigation/sidebar/addon/functions/get.js +0 -35
  149. package/addons/render/elements/front/items/self/navigation/sidebar/addon/functions/groups.js +0 -10
  150. package/addons/render/elements/front/items/self/navigation/sidebar/sidebar.css +0 -278
  151. package/addons/render/elements/front/items/self/navigation/sidebar/sidebar.js +0 -85
  152. package/addons/render/elements/front/items/self/navigation/stepper/stepper.css +0 -202
  153. package/addons/render/elements/front/items/self/navigation/stepper/stepper.js +0 -82
  154. package/addons/render/elements/front/items/self/navigation/tabs/addon.js +0 -32
  155. package/addons/render/elements/front/items/self/navigation/tabs/tabs.css +0 -239
  156. package/addons/render/elements/front/items/self/navigation/tabs/tabs.js +0 -76
  157. package/addons/render/elements/front/items/self/preview/html/html.css +0 -377
  158. package/addons/render/elements/front/items/self/preview/html/html.js +0 -107
  159. /package/addons/core/commands/{back → core}/addon.js +0 -0
@@ -1,254 +0,0 @@
1
- divhunt.AddonReady('elements', (elements) =>
2
- {
3
- elements.ItemAdd({
4
- id: 'command-table',
5
- icon: 'terminal',
6
- name: 'Command Table',
7
- description: 'Table that auto-generates columns and fetches data from a command.',
8
- category: 'Display',
9
- author: 'Divhunt',
10
- config: {
11
- command: {
12
- type: 'string',
13
- value: 'commands:get:many'
14
- },
15
- key: {
16
- type: 'string',
17
- value: 'commands'
18
- },
19
- params: {
20
- type: 'object',
21
- value: {}
22
- },
23
- variant: {
24
- type: 'array',
25
- value: ['border', 'hover', 'size-m'],
26
- options: ['border', 'bg-1', 'bg-2', 'bg-3', 'striped', 'compact', 'hover', 'size-s', 'size-m', 'size-l']
27
- },
28
- sortable: {
29
- type: 'boolean',
30
- value: false
31
- },
32
- onRowClick: {
33
- type: 'function'
34
- },
35
- onLoad: {
36
- type: 'function'
37
- },
38
- onError: {
39
- type: 'function'
40
- }
41
- },
42
- render: function()
43
- {
44
- this.columns = [];
45
- this.rows = [];
46
- this.loading = true;
47
- this.error = null;
48
-
49
- // Helpers
50
- this.label = (key) =>
51
- {
52
- return key.replace(/_/g, ' ').replace(/([A-Z])/g, ' $1').replace(/^./, s => s.toUpperCase()).trim();
53
- };
54
-
55
- // Schema parsing
56
- this.parse = (schema) =>
57
- {
58
- if (!schema)
59
- {
60
- return { valid: false, columns: [] };
61
- }
62
-
63
- const target = this.key
64
- ? schema[this.key]
65
- : Object.values(schema).find(f => f?.type === 'array');
66
-
67
- if (!target || target.type !== 'array')
68
- {
69
- return { valid: false, columns: [] };
70
- }
71
-
72
- const config = target.each?.config || target.config || {};
73
- const columns = [];
74
-
75
- for (const [id, field] of Object.entries(config))
76
- {
77
- const type = Array.isArray(field) ? field[0] : field?.type;
78
-
79
- if (type && type !== 'object' && type !== 'array')
80
- {
81
- columns.push({ id, label: this.label(id) });
82
- }
83
- }
84
-
85
- return { valid: true, columns };
86
- };
87
-
88
- // Data extraction
89
- this.extract = (data) =>
90
- {
91
- if (!data)
92
- {
93
- return [];
94
- }
95
-
96
- if (this.key)
97
- {
98
- return Array.isArray(data[this.key]) ? data[this.key] : [];
99
- }
100
-
101
- if (Array.isArray(data))
102
- {
103
- return data;
104
- }
105
-
106
- for (const value of Object.values(data))
107
- {
108
- if (Array.isArray(value))
109
- {
110
- return value;
111
- }
112
- }
113
-
114
- return [];
115
- };
116
-
117
- // API calls
118
- this.fetch = async (url, options = {}) =>
119
- {
120
- const response = await fetch(url, options);
121
- return response.json();
122
- };
123
-
124
- this.info = async () =>
125
- {
126
- const data = await this.fetch('/api/commands/' + encodeURIComponent(this.command));
127
-
128
- if (data.code !== 200)
129
- {
130
- throw new Error(data.message || 'Command not found');
131
- }
132
-
133
- if (!data.data.command.exposed)
134
- {
135
- throw new Error('Command is not exposed');
136
- }
137
-
138
- return data.data.command;
139
- };
140
-
141
- this.run = async () =>
142
- {
143
- const response = await this.fetch('/api/commands/run', {
144
- method: 'POST',
145
- headers: { 'Content-Type': 'application/json' },
146
- body: JSON.stringify({ id: this.command, in: this.params || {} })
147
- });
148
-
149
- if (response.code !== 200)
150
- {
151
- throw new Error(response.message || 'Command failed');
152
- }
153
-
154
- return response.data;
155
- };
156
-
157
- // Local command
158
- this.local = async () =>
159
- {
160
- const commands = divhunt.Addon('commands');
161
- const command = commands.ItemGet(this.command);
162
-
163
- if (!command)
164
- {
165
- return null;
166
- }
167
-
168
- const schema = command.Get('out');
169
- const parsed = this.parse(schema);
170
-
171
- if (!parsed.valid)
172
- {
173
- throw new Error('Command does not return array data');
174
- }
175
-
176
- this.columns = parsed.columns;
177
-
178
- const result = await command.Fn('run', this.params || {});
179
-
180
- return result;
181
- };
182
-
183
- // Remote command
184
- this.remote = async () =>
185
- {
186
- const command = await this.info();
187
- const schema = command.data.out;
188
- const parsed = this.parse(schema);
189
-
190
- if (!parsed.valid)
191
- {
192
- throw new Error('Command does not return array data');
193
- }
194
-
195
- this.columns = parsed.columns;
196
-
197
- const result = await this.run();
198
-
199
- return result;
200
- };
201
-
202
- // Main loader
203
- this.load = async () =>
204
- {
205
- if (!this.command)
206
- {
207
- this.error = 'No command specified';
208
- this.loading = false;
209
- return;
210
- }
211
-
212
- try
213
- {
214
- const result = await this.local() || await this.remote();
215
-
216
- this.rows = this.extract(result?.data);
217
- this.loading = false;
218
-
219
- if (this.onLoad)
220
- {
221
- this.onLoad({ columns: this.columns, rows: this.rows });
222
- }
223
- }
224
- catch (err)
225
- {
226
- this.error = err.message;
227
- this.loading = false;
228
-
229
- if (this.onError)
230
- {
231
- this.onError({ error: err.message });
232
- }
233
- }
234
- };
235
-
236
- this.load();
237
-
238
- return `
239
- <div class="holder">
240
- <e-loader dh-if="loading"></e-loader>
241
- <div dh-if="error" class="error">{{ error }}</div>
242
- <e-table
243
- dh-if="!loading && !error"
244
- :columns="columns"
245
- :rows="rows"
246
- :variant="variant"
247
- :sortable="sortable"
248
- :onRowClick="onRowClick"
249
- ></e-table>
250
- </div>
251
- `;
252
- }
253
- });
254
- })
@@ -1,96 +0,0 @@
1
- import elements from '#elements/load.js';
2
-
3
- elements.ItemAdd({
4
- id: 'menu',
5
- icon: 'list',
6
- name: 'Menu',
7
- description: 'Menu item with icon, label, badge, expandable children, and nested level support.',
8
- category: 'Navigation',
9
- author: 'Divhunt',
10
- config: {
11
- icon: {
12
- type: 'string',
13
- value: 'folder'
14
- },
15
- label: {
16
- type: 'string',
17
- value: 'Dashboard'
18
- },
19
- badge: {
20
- type: 'string',
21
- value: ''
22
- },
23
- href: {
24
- type: 'string',
25
- value: '#'
26
- },
27
- level: {
28
- type: 'number',
29
- value: 0
30
- },
31
- active: {
32
- type: 'boolean',
33
- value: false
34
- },
35
- expanded: {
36
- type: 'boolean',
37
- value: false
38
- },
39
- expandable: {
40
- type: 'boolean',
41
- value: false
42
- },
43
- disabled: {
44
- type: 'boolean',
45
- value: false
46
- },
47
- variant: {
48
- type: 'array',
49
- value: ['size-m'],
50
- options: ['bg-1', 'bg-2', 'bg-3', 'bg-4', 'border', 'brand', 'blue', 'red', 'orange', 'green', 'size-s', 'size-m', 'size-l']
51
- },
52
- onClick: {
53
- type: 'function'
54
- },
55
- onExpand: {
56
- type: 'function'
57
- }
58
- },
59
- render: function()
60
- {
61
- this.handleClick = () =>
62
- {
63
- if (this.disabled) return;
64
-
65
- if (this.onClick)
66
- {
67
- this.onClick();
68
- }
69
- };
70
-
71
- this.handleExpand = (e) =>
72
- {
73
- e.preventDefault();
74
- e.stopPropagation();
75
-
76
- if (this.disabled) return;
77
-
78
- this.expanded = !this.expanded;
79
-
80
- if (this.onExpand)
81
- {
82
- this.onExpand({ expanded: this.expanded });
83
- }
84
- };
85
-
86
- return `
87
- <a :href="href" class="holder" :variant="variant.join(' ')" :level="level" :active="active" :expanded="expanded" :disabled="disabled" dh-click="handleClick">
88
- <i dh-if="expandable" class="chevron" dh-click="handleExpand">chevron_right</i>
89
- <i dh-if="icon">{{ icon }}</i>
90
- <span>{{ label }}</span>
91
- <e-tag dh-if="badge" :text="badge" :variant="['bg-3', 'size-s']"></e-tag>
92
- <slot name="end"></slot>
93
- </a>
94
- `;
95
- }
96
- });
@@ -1,116 +0,0 @@
1
- .e-4de878b > .holder
2
- {
3
- display: flex;
4
- align-items: center;
5
- gap: var(--dh-spacing-s);
6
- width: 100%;
7
- padding: var(--dh-spacing-s) var(--dh-spacing-m);
8
- color: var(--dh-text-1);
9
- text-decoration: none;
10
- font-size: var(--dh-size-m);
11
- font-weight: 500;
12
- line-height: 1.5;
13
- border-radius: 0;
14
- border-bottom: 1px solid var(--dh-bg-3-border);
15
- cursor: pointer;
16
- user-select: none;
17
- transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
18
- }
19
-
20
- .e-4de878b > .holder:last-child
21
- {
22
- border-bottom: none;
23
- }
24
-
25
- .e-4de878b > .holder:focus-visible
26
- {
27
- outline: 2px inset var(--dh-brand);
28
- outline-offset: 1px;
29
- }
30
-
31
- .e-4de878b > .holder:hover
32
- {
33
- background: var(--dh-bg-3);
34
- }
35
-
36
- .e-4de878b > .holder[active]
37
- {
38
- background: var(--dh-bg-3);
39
- color: var(--dh-brand);
40
- font-weight: 600;
41
- border-left: 3px solid var(--dh-brand);
42
- padding-left: calc(var(--dh-spacing-m) - 3px);
43
- transform: scale(1.01);
44
- }
45
-
46
- .e-4de878b > .holder[active] > i
47
- {
48
- color: var(--dh-brand);
49
- }
50
-
51
- .e-4de878b > .holder[disabled]
52
- {
53
- opacity: 0.5;
54
- cursor: not-allowed;
55
- pointer-events: none;
56
- }
57
-
58
- .e-4de878b > .holder[level="1"]
59
- {
60
- padding-left: var(--dh-spacing-l);
61
- }
62
-
63
- .e-4de878b > .holder[level="2"]
64
- {
65
- padding-left: 50px;
66
- }
67
-
68
- .e-4de878b > .holder[level="3"]
69
- {
70
- padding-left: 66px;
71
- }
72
-
73
- .e-4de878b > .holder[level="4"]
74
- {
75
- padding-left: 82px;
76
- }
77
-
78
- .e-4de878b > .holder > .chevron
79
- {
80
- flex-shrink: 0;
81
- font-size: var(--dh-size-s);
82
- color: var(--dh-text-2);
83
- transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
84
- }
85
-
86
- .e-4de878b > .holder[expanded] > .chevron
87
- {
88
- transform: rotate(90deg);
89
- }
90
-
91
- .e-4de878b > .holder > i
92
- {
93
- flex-shrink: 0;
94
- width: 20px;
95
- height: 20px;
96
- font-size: 20px;
97
- color: var(--dh-text-2);
98
- transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
99
- display: flex;
100
- align-items: center;
101
- justify-content: center;
102
- }
103
-
104
- .e-4de878b > .holder:hover > i
105
- {
106
- color: var(--dh-text-1);
107
- }
108
-
109
- .e-4de878b > .holder > span
110
- {
111
- flex: 1;
112
- min-width: 0;
113
- white-space: nowrap;
114
- overflow: hidden;
115
- text-overflow: ellipsis;
116
- }
@@ -1,27 +0,0 @@
1
- .e-4de878b > .holder[variant*="size-s"]
2
- {
3
- min-height: 24px;
4
- padding: 2px var(--dh-spacing-x);
5
- font-size: var(--dh-size-s);
6
- }
7
-
8
- .e-4de878b > .holder[variant*="size-s"] > i
9
- {
10
- font-size: var(--dh-size-s);
11
- }
12
-
13
- .e-4de878b > .holder[variant*="size-m"]
14
- {
15
- min-height: 36px;
16
- }
17
-
18
- .e-4de878b > .holder[variant*="size-l"]
19
- {
20
- min-height: 38px;
21
- font-size: var(--dh-size-l);
22
- }
23
-
24
- .e-4de878b > .holder[variant*="size-l"] > i
25
- {
26
- font-size: var(--dh-size-l);
27
- }
@@ -1,99 +0,0 @@
1
- .e-4de878b > .holder[variant*="bg-1"]
2
- {
3
- background: var(--dh-bg-1);
4
- }
5
-
6
- .e-4de878b > .holder[variant*="bg-1"]:hover
7
- {
8
- background: var(--dh-bg-1-hover);
9
- }
10
-
11
- .e-4de878b > .holder[variant*="bg-2"]
12
- {
13
- background: var(--dh-bg-2);
14
- }
15
-
16
- .e-4de878b > .holder[variant*="bg-2"]:hover
17
- {
18
- background: var(--dh-bg-2-hover);
19
- }
20
-
21
- .e-4de878b > .holder[variant*="bg-3"]
22
- {
23
- background: var(--dh-bg-3);
24
- }
25
-
26
- .e-4de878b > .holder[variant*="bg-3"]:hover
27
- {
28
- background: var(--dh-bg-3-hover);
29
- }
30
-
31
- .e-4de878b > .holder[variant*="bg-4"]
32
- {
33
- background: var(--dh-bg-4);
34
- }
35
-
36
- .e-4de878b > .holder[variant*="bg-4"]:hover
37
- {
38
- background: var(--dh-bg-4-hover);
39
- }
40
-
41
- .e-4de878b > .holder[variant*="border"]
42
- {
43
- border: 1px solid var(--dh-bg-3-border);
44
- }
45
-
46
- .e-4de878b > .holder[variant*="brand"]
47
- {
48
- background: var(--dh-brand-opacity);
49
- color: var(--dh-brand);
50
- }
51
-
52
- .e-4de878b > .holder[variant*="brand"] > i
53
- {
54
- color: var(--dh-brand);
55
- }
56
-
57
- .e-4de878b > .holder[variant*="blue"]
58
- {
59
- background: var(--dh-blue-opacity);
60
- color: var(--dh-blue);
61
- }
62
-
63
- .e-4de878b > .holder[variant*="blue"] > i
64
- {
65
- color: var(--dh-blue);
66
- }
67
-
68
- .e-4de878b > .holder[variant*="red"]
69
- {
70
- background: var(--dh-red-opacity);
71
- color: var(--dh-red);
72
- }
73
-
74
- .e-4de878b > .holder[variant*="red"] > i
75
- {
76
- color: var(--dh-red);
77
- }
78
-
79
- .e-4de878b > .holder[variant*="orange"]
80
- {
81
- background: var(--dh-orange-opacity);
82
- color: var(--dh-orange);
83
- }
84
-
85
- .e-4de878b > .holder[variant*="orange"] > i
86
- {
87
- color: var(--dh-orange);
88
- }
89
-
90
- .e-4de878b > .holder[variant*="green"]
91
- {
92
- background: var(--dh-green-opacity);
93
- color: var(--dh-green);
94
- }
95
-
96
- .e-4de878b > .holder[variant*="green"] > i
97
- {
98
- color: var(--dh-green);
99
- }