@globalbrain/sefirot 2.49.0 → 3.1.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 (34) hide show
  1. package/lib/components/SActionList.vue +23 -0
  2. package/lib/components/SActionListItem.vue +64 -0
  3. package/lib/components/SAvatar.vue +1 -1
  4. package/lib/components/SButton.vue +378 -392
  5. package/lib/components/SCard.vue +5 -5
  6. package/lib/components/SCardHeader.vue +1 -1
  7. package/lib/components/SCardHeaderTitle.vue +4 -4
  8. package/lib/components/SContent.vue +2 -2
  9. package/lib/components/SDescItem.vue +1 -1
  10. package/lib/components/SDescLink.vue +2 -2
  11. package/lib/components/SDescText.vue +2 -2
  12. package/lib/components/SDropdown.vue +1 -1
  13. package/lib/components/SDropdownSectionFilter.vue +8 -9
  14. package/lib/components/SDropdownSectionMenu.vue +1 -1
  15. package/lib/components/SHeadLead.vue +2 -2
  16. package/lib/components/SHeadTitle.vue +4 -4
  17. package/lib/components/SInputBase.vue +5 -5
  18. package/lib/components/SInputCheckbox.vue +5 -5
  19. package/lib/components/SInputImage.vue +239 -0
  20. package/lib/components/SInputRadio.vue +4 -4
  21. package/lib/components/SSheet.vue +1 -1
  22. package/lib/components/SState.vue +7 -7
  23. package/lib/components/STableCell.vue +1 -1
  24. package/lib/components/STableColumn.vue +1 -1
  25. package/lib/components/STableHeader.vue +1 -1
  26. package/lib/components/STableHeaderActionItem.vue +1 -1
  27. package/lib/composables/Image.ts +46 -0
  28. package/lib/composables/Table.ts +6 -5
  29. package/lib/styles/base.css +1 -1
  30. package/lib/styles/bootstrap.css +1 -0
  31. package/lib/styles/variables-deprecated.css +336 -0
  32. package/lib/styles/variables.css +582 -578
  33. package/lib/support/Utils.ts +4 -0
  34. package/package.json +1 -1
@@ -0,0 +1,23 @@
1
+ <script setup lang="ts">
2
+ import SActionListItem, { type ActionListItem } from './SActionListItem.vue'
3
+
4
+ export type ActionList = ActionListItem[]
5
+ export type { ActionListItem }
6
+
7
+ defineProps<{
8
+ list: ActionList
9
+ }>()
10
+ </script>
11
+
12
+ <template>
13
+ <div class="SActionList">
14
+ <SActionListItem
15
+ v-for="item, index in list"
16
+ :key="index"
17
+ :lead-icon="item.leadIcon"
18
+ :text="item.text"
19
+ :link="item.link"
20
+ :on-click="item.onClick"
21
+ />
22
+ </div>
23
+ </template>
@@ -0,0 +1,64 @@
1
+ <script setup lang="ts">
2
+ import { type IconifyIcon } from '@iconify/vue/dist/offline'
3
+ import SIcon from './SIcon.vue'
4
+ import SLink from './SLink.vue'
5
+
6
+ export interface ActionListItem {
7
+ leadIcon?: IconifyIcon
8
+ text: string
9
+ link?: string
10
+ onClick?(): void
11
+ }
12
+
13
+ defineProps<ActionListItem>()
14
+ </script>
15
+
16
+ <template>
17
+ <component
18
+ :is="link ? SLink : 'button'"
19
+ class="SActionList"
20
+ :href="link"
21
+ @click="() => onClick?.()"
22
+ >
23
+ <span v-if="leadIcon" class="lead-icon">
24
+ <SIcon class="lead-icon-svg" :icon="leadIcon" />
25
+ </span>
26
+ <span class="text">{{ text }}</span>
27
+ </component>
28
+ </template>
29
+
30
+ <style scoped lang="postcss">
31
+ .SActionList {
32
+ display: flex;
33
+ gap: 8px;
34
+ border-radius: 6px;
35
+ padding: 4px 8px;
36
+ width: 100%;
37
+ text-align: left;
38
+ line-height: 24px;
39
+ font-size: 14px;
40
+ transition: background-color 0.25s;
41
+
42
+ &:hover {
43
+ background-color: var(--c-bg-mute-1);
44
+ }
45
+
46
+ &:active {
47
+ background-color: var(--c-bg-mute-2);
48
+ transition: background-color 0.1s;
49
+ }
50
+ }
51
+
52
+ .lead-icon {
53
+ display: flex;
54
+ align-items: center;
55
+ height: 24px;
56
+ flex-shrink: 0;
57
+ color: var(--c-text-2);
58
+ }
59
+
60
+ .lead-icon-svg {
61
+ width: 16px;
62
+ height: 16px;
63
+ }
64
+ </style>
@@ -65,7 +65,7 @@ const initial = computed(() => props.name?.charAt(0).toUpperCase())
65
65
  }
66
66
 
67
67
  .SAvatar.no-image {
68
- border: 1px solid var(--c-divider-2);
68
+ border: 1px solid var(--c-border-mute-1);
69
69
  }
70
70
 
71
71
  .img {