@cooperco/cooper-component-library 0.0.10

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 (139) hide show
  1. package/README.md +11 -0
  2. package/package.json +85 -0
  3. package/src/assets/main.css +155 -0
  4. package/src/assets/theme.css +67 -0
  5. package/src/assets/usercard.jpg +0 -0
  6. package/src/assets/vue.svg +1 -0
  7. package/src/components/Accordion.vue +33 -0
  8. package/src/components/AccordionItem.vue +53 -0
  9. package/src/components/CTA.vue +39 -0
  10. package/src/components/CarouselModule.vue +46 -0
  11. package/src/components/ContainerCollectionModule.vue +33 -0
  12. package/src/components/ContainerModule.vue +116 -0
  13. package/src/components/ContentAndImage.vue +34 -0
  14. package/src/components/ContentMediaModule.vue +50 -0
  15. package/src/components/ContentModule.vue +51 -0
  16. package/src/components/FooterNavigation.vue +57 -0
  17. package/src/components/IconChevron.vue +107 -0
  18. package/src/components/Image.vue +15 -0
  19. package/src/components/LogoCollectionModule.vue +30 -0
  20. package/src/components/LogoContainerModule.vue +30 -0
  21. package/src/components/NavigationElement.vue +92 -0
  22. package/src/components/PrimaryNavigation.vue +68 -0
  23. package/src/components/SplitModule.vue +42 -0
  24. package/src/components/Testimonial.vue +48 -0
  25. package/src/components/TestimonialModule.vue +48 -0
  26. package/src/components/TileCollection.vue +37 -0
  27. package/src/components/TileCollectionModule.vue +45 -0
  28. package/src/components/TileContent.vue +105 -0
  29. package/src/components/Video.vue +18 -0
  30. package/src/components/types/Accordion.ts +18 -0
  31. package/src/components/types/AccordionItem.ts +19 -0
  32. package/src/components/types/CTA.ts +13 -0
  33. package/src/components/types/CarouselModule.ts +21 -0
  34. package/src/components/types/ContainerCollectionModule.ts +12 -0
  35. package/src/components/types/ContainerModule.ts +35 -0
  36. package/src/components/types/ContentAndImage.ts +14 -0
  37. package/src/components/types/ContentMediaModule.ts +14 -0
  38. package/src/components/types/ContentModule.ts +21 -0
  39. package/src/components/types/FooterNavigation.ts +12 -0
  40. package/src/components/types/Image.ts +12 -0
  41. package/src/components/types/LogoCollectionModule.ts +12 -0
  42. package/src/components/types/LogoContainerModule.ts +12 -0
  43. package/src/components/types/NavigationElement.ts +19 -0
  44. package/src/components/types/PrimaryNavigation.ts +10 -0
  45. package/src/components/types/SplitModule.ts +16 -0
  46. package/src/components/types/Testimonial.ts +17 -0
  47. package/src/components/types/TileCollection.ts +14 -0
  48. package/src/components/types/TileContent.ts +34 -0
  49. package/src/components/types/Video.ts +8 -0
  50. package/src/components/types/index.ts +10 -0
  51. package/src/presets/aura/accordion/index.js +81 -0
  52. package/src/presets/aura/autocomplete/index.js +280 -0
  53. package/src/presets/aura/avatar/index.js +46 -0
  54. package/src/presets/aura/badge/index.js +43 -0
  55. package/src/presets/aura/badgedirective/index.js +49 -0
  56. package/src/presets/aura/blockui/index.js +8 -0
  57. package/src/presets/aura/breadcrumb/index.js +63 -0
  58. package/src/presets/aura/button/index.js +511 -0
  59. package/src/presets/aura/calendar/index.js +702 -0
  60. package/src/presets/aura/card/index.js +53 -0
  61. package/src/presets/aura/carousel/index.js +160 -0
  62. package/src/presets/aura/cascadeselect/index.js +220 -0
  63. package/src/presets/aura/checkbox/index.js +107 -0
  64. package/src/presets/aura/chip/index.js +45 -0
  65. package/src/presets/aura/chips/index.js +126 -0
  66. package/src/presets/aura/colorpicker/index.js +132 -0
  67. package/src/presets/aura/confirmpopup/index.js +111 -0
  68. package/src/presets/aura/contextmenu/index.js +132 -0
  69. package/src/presets/aura/datatable/index.js +1290 -0
  70. package/src/presets/aura/dataview/index.js +40 -0
  71. package/src/presets/aura/deferred/index.js +3 -0
  72. package/src/presets/aura/dialog/index.js +250 -0
  73. package/src/presets/aura/divider/index.js +72 -0
  74. package/src/presets/aura/dock/index.js +97 -0
  75. package/src/presets/aura/dropdown/index.js +297 -0
  76. package/src/presets/aura/fieldset/index.js +95 -0
  77. package/src/presets/aura/fileupload/index.js +175 -0
  78. package/src/presets/aura/floatlabel/index.js +26 -0
  79. package/src/presets/aura/galleria/index.js +353 -0
  80. package/src/presets/aura/global.js +90 -0
  81. package/src/presets/aura/iconfield/index.js +22 -0
  82. package/src/presets/aura/image/index.js +206 -0
  83. package/src/presets/aura/index.js +181 -0
  84. package/src/presets/aura/inlinemessage/index.js +46 -0
  85. package/src/presets/aura/inplace/index.js +27 -0
  86. package/src/presets/aura/inputgroup/index.js +5 -0
  87. package/src/presets/aura/inputgroupaddon/index.js +28 -0
  88. package/src/presets/aura/inputmask/index.js +47 -0
  89. package/src/presets/aura/inputnumber/index.js +293 -0
  90. package/src/presets/aura/inputotp/index.js +69 -0
  91. package/src/presets/aura/inputswitch/index.js +94 -0
  92. package/src/presets/aura/inputtext/index.js +63 -0
  93. package/src/presets/aura/knob/index.js +47 -0
  94. package/src/presets/aura/listbox/index.js +158 -0
  95. package/src/presets/aura/megamenu/index.js +206 -0
  96. package/src/presets/aura/menu/index.js +122 -0
  97. package/src/presets/aura/menubar/index.js +184 -0
  98. package/src/presets/aura/message/index.js +112 -0
  99. package/src/presets/aura/metergroup/index.js +110 -0
  100. package/src/presets/aura/multiselect/index.js +579 -0
  101. package/src/presets/aura/orderlist/index.js +281 -0
  102. package/src/presets/aura/organizationchart/index.js +142 -0
  103. package/src/presets/aura/overlaypanel/index.js +34 -0
  104. package/src/presets/aura/paginator/index.js +566 -0
  105. package/src/presets/aura/panel/index.js +102 -0
  106. package/src/presets/aura/panelmenu/index.js +130 -0
  107. package/src/presets/aura/password/index.js +143 -0
  108. package/src/presets/aura/picklist/index.js +718 -0
  109. package/src/presets/aura/progressbar/index.js +64 -0
  110. package/src/presets/aura/progressspinner/index.js +51 -0
  111. package/src/presets/aura/radiobutton/index.js +121 -0
  112. package/src/presets/aura/rating/index.js +95 -0
  113. package/src/presets/aura/ripple/index.js +6 -0
  114. package/src/presets/aura/scrollpanel/index.js +77 -0
  115. package/src/presets/aura/scrolltop/index.js +45 -0
  116. package/src/presets/aura/selectbutton/index.js +66 -0
  117. package/src/presets/aura/sidebar/index.js +160 -0
  118. package/src/presets/aura/skeleton/index.js +19 -0
  119. package/src/presets/aura/slider/index.js +144 -0
  120. package/src/presets/aura/speeddial/index.js +579 -0
  121. package/src/presets/aura/splitbutton/index.js +1185 -0
  122. package/src/presets/aura/splitter/index.js +71 -0
  123. package/src/presets/aura/stepper/index.js +183 -0
  124. package/src/presets/aura/steps/index.js +117 -0
  125. package/src/presets/aura/tabmenu/index.js +75 -0
  126. package/src/presets/aura/tabview/index.js +162 -0
  127. package/src/presets/aura/tag/index.js +44 -0
  128. package/src/presets/aura/terminal/index.js +60 -0
  129. package/src/presets/aura/textarea/index.js +49 -0
  130. package/src/presets/aura/tieredmenu/index.js +125 -0
  131. package/src/presets/aura/timeline/index.js +114 -0
  132. package/src/presets/aura/toast/index.js +151 -0
  133. package/src/presets/aura/togglebutton/index.js +98 -0
  134. package/src/presets/aura/toolbar/index.js +28 -0
  135. package/src/presets/aura/tooltip/index.js +73 -0
  136. package/src/presets/aura/tree/index.js +294 -0
  137. package/src/presets/aura/treeselect/index.js +404 -0
  138. package/src/presets/aura/treetable/index.js +513 -0
  139. package/src/presets/aura/tristatecheckbox/index.js +121 -0
@@ -0,0 +1,71 @@
1
+ export default {
2
+ root: ({ context }) => ({
3
+ class: [
4
+ // Colors
5
+ 'bg-surface-0',
6
+ 'dark:bg-surface-900',
7
+ 'text-surface-700',
8
+ 'dark:text-surface-0/80',
9
+
10
+ // Shape
11
+ 'rounded-md',
12
+
13
+ // Borders (Conditional)
14
+ {
15
+ 'border border-solid border-surface-200 dark:border-surface-700':
16
+ !context.nested,
17
+ },
18
+
19
+ // Nested
20
+ { 'flex grow border-0': context.nested },
21
+ ],
22
+ }),
23
+
24
+ gutter: ({ props }) => ({
25
+ class: [
26
+ // Flexbox
27
+ 'flex',
28
+ 'items-center',
29
+ 'justify-center',
30
+ 'shrink-0',
31
+
32
+ // Colors
33
+ 'bg-surface-100',
34
+ 'dark:bg-surface-700',
35
+
36
+ // Transitions
37
+ 'transition-all',
38
+ 'duration-200',
39
+
40
+ // Misc
41
+ {
42
+ 'cursor-col-resize': props.layout == 'horizontal',
43
+ 'cursor-row-resize': props.layout !== 'horizontal',
44
+ },
45
+ ],
46
+ }),
47
+ gutterhandler: ({ props }) => ({
48
+ class: [
49
+ 'z-20',
50
+ // Colors
51
+ 'bg-surface-100',
52
+ 'dark:bg-surface-700',
53
+
54
+ // Shape
55
+ 'rounded-md',
56
+
57
+ //States
58
+ 'focus:outline-none focus:outline-offset-0 focus-visible:ring-1 focus-visible:ring-primary-400 dark:focus-visible:ring-primary-300',
59
+
60
+ // Transitions
61
+ 'transition-all',
62
+ 'duration-200',
63
+
64
+ // Sizing (Conditional)
65
+ {
66
+ 'h-[1.70rem]': props.layout == 'horizontal',
67
+ 'w-[1.70rem] h-2': props.layout !== 'horizontal',
68
+ },
69
+ ],
70
+ }),
71
+ }
@@ -0,0 +1,183 @@
1
+ export default {
2
+ root: ({ props }) => ({
3
+ class: [
4
+ 'flex-1',
5
+ props.orientation === 'vertical' ? 'flex-col' : 'flex-row',
6
+ ],
7
+ }),
8
+ nav: {
9
+ class: [
10
+ // Flexbox
11
+ 'flex',
12
+ 'justify-between',
13
+ 'items-center',
14
+
15
+ // Spacing
16
+ 'm-0',
17
+ 'p-0',
18
+
19
+ // Positioning
20
+ 'relative',
21
+
22
+ // Lists
23
+ 'list-none',
24
+
25
+ // Overflow
26
+ 'overflow-x-auto',
27
+ ],
28
+ },
29
+ stepperpanel: {
30
+ panel: ({ context, parent }) => ({
31
+ class: [
32
+ context.active ? 'flex-1' : '',
33
+ parent.props.orientation === 'vertical'
34
+ ? 'flex flex-col flex-initial'
35
+ : '',
36
+ ],
37
+ }),
38
+ header: ({ parent, context }) => ({
39
+ class: [
40
+ // Position
41
+ 'relative',
42
+
43
+ // Flexbox
44
+ 'flex',
45
+ 'items-center',
46
+ context.last ? 'flex-initial' : 'flex-1',
47
+ parent.props.orientation === 'vertical' ? 'flex-initial' : '',
48
+
49
+ // Spacing
50
+ 'p-2',
51
+ ],
52
+ }),
53
+ action: {
54
+ class: [
55
+ // Borders
56
+ 'border-0',
57
+ 'border-none',
58
+
59
+ // Flexbox
60
+ 'inline-flex',
61
+ 'items-center',
62
+
63
+ // Text
64
+ 'text-decoration-none',
65
+
66
+ // Transitions
67
+ 'transition',
68
+ 'transition-shadow',
69
+ 'duration-200',
70
+
71
+ // Shape
72
+ 'rounded-md',
73
+
74
+ // Backgrounds
75
+ 'bg-transparent',
76
+
77
+ // Focus
78
+ 'outline-none',
79
+ ],
80
+ },
81
+ number: ({ context }) => ({
82
+ class: [
83
+ // Flexbox
84
+ 'flex',
85
+ 'items-center',
86
+ 'justify-center',
87
+
88
+ //Colors
89
+ 'border-solid border-2 border-surface-200 dark:border-surface-700',
90
+
91
+ // Colors (Conditional)
92
+ context.active
93
+ ? 'text-primary'
94
+ : 'text-surface-900 dark:text-surface-0', // Adjust colors as needed
95
+
96
+ // Size and Shape
97
+ 'min-w-[2rem]',
98
+ 'h-[2rem]',
99
+ 'line-height-[2rem]',
100
+ 'rounded-full',
101
+
102
+ // Text
103
+ 'text-lg',
104
+
105
+ // Transitions
106
+ 'transition',
107
+ 'transition-colors',
108
+ 'transition-shadow',
109
+ 'duration-200',
110
+ ],
111
+ }),
112
+ title: ({ context }) => ({
113
+ class: [
114
+ // Layout
115
+ 'block',
116
+ 'whitespace-nowrap',
117
+ 'overflow-hidden',
118
+ 'text-ellipsis',
119
+ 'max-w-full',
120
+
121
+ // Spacing
122
+ 'ml-2',
123
+
124
+ // Text
125
+ context.active
126
+ ? 'text-primary'
127
+ : 'text-surface-700 dark:text-surface-0/80',
128
+ 'font-medium',
129
+
130
+ // Transitions
131
+ 'transition',
132
+ 'transition-colors',
133
+ 'transition-shadow',
134
+ 'duration-200',
135
+ ],
136
+ }),
137
+ separator: ({ context, state, parent }) => ({
138
+ class: [
139
+ // Colors (Conditional for active step)
140
+ state.d_activeStep <= context.index
141
+ ? 'bg-surface-200 dark:bg-surface-700'
142
+ : 'bg-primary',
143
+
144
+ // Conditional for Vertical Orientation
145
+ parent.props.orientation === 'vertical'
146
+ ? ['flex-none', 'w-[2px]', 'h-auto', 'ml-[calc(1.29rem+2px)]']
147
+ : ['flex-1', 'w-full', 'h-[2px]', 'ml-4'],
148
+
149
+ // Transitions
150
+ 'transition-shadow',
151
+ 'duration-200',
152
+ ],
153
+ }),
154
+ transition: {
155
+ class: [
156
+ 'flex flex-1',
157
+ 'bg-surface-0 dark:bg-surface-900',
158
+ 'text-surface-900 dark:text-surface-0',
159
+ ],
160
+ enterFromClass: 'max-h-0',
161
+ enterActiveClass:
162
+ 'overflow-hidden transition-[max-height] duration-1000 ease-[cubic-bezier(0.42,0,0.58,1)]',
163
+ enterToClass: 'max-h-[1000px]',
164
+ leaveFromClass: 'max-h-[1000px]',
165
+ leaveActiveClass:
166
+ 'overflow-hidden transition-[max-height] duration-[450ms] ease-[cubic-bezier(0,1,0,1)]',
167
+ leaveToClass: 'max-h-0',
168
+ },
169
+ content: ({ parent }) => ({
170
+ class: [parent.props.orientation === 'vertical' ? 'w-full pl-4' : ''],
171
+ }),
172
+ },
173
+ panelcontainer: {
174
+ class: [
175
+ // Colors
176
+ 'bg-surface-0 dark:bg-surface-900',
177
+ 'text-surface-900 dark:text-surface-0',
178
+
179
+ // Spacing
180
+ 'p-4',
181
+ ],
182
+ },
183
+ }
@@ -0,0 +1,117 @@
1
+ export default {
2
+ root: {
3
+ class: 'relative',
4
+ },
5
+ menu: {
6
+ class: 'p-0 m-0 list-none flex',
7
+ },
8
+ menuitem: {
9
+ class: [
10
+ // Flexbox and Position
11
+ 'relative',
12
+ 'flex',
13
+ 'justify-center',
14
+ 'flex-1',
15
+ 'overflow-hidden',
16
+
17
+ // Before
18
+ 'before:border-t-2',
19
+ 'before:border-surface-200',
20
+ 'before:dark:border-surface-700',
21
+ 'before:w-full',
22
+ '[&:first-child]:before:w-[calc(50%+1rem)]',
23
+ '[&:last-child]:before:w-1/2',
24
+ 'before:absolute',
25
+ 'before:top-1/2',
26
+ 'before:left-0',
27
+ 'before:transform',
28
+ 'before:mt-[calc(-1rem+1px)]',
29
+ '[&:first-child]:before:translate-x-[100%]',
30
+ ],
31
+ },
32
+ action: ({ props }) => ({
33
+ class: [
34
+ // Flexbox
35
+ 'inline-flex items-center',
36
+ 'flex-col',
37
+
38
+ // Transitions and Shape
39
+ 'transition-shadow',
40
+ 'rounded-md',
41
+
42
+ // Colors
43
+ 'bg-surface-0',
44
+ 'dark:bg-transparent',
45
+
46
+ // States
47
+ 'focus:outline-none focus:outline-offset-0 focus:ring',
48
+ 'focus:ring-primary-500 dark:focus:ring-primary-400',
49
+
50
+ // Misc
51
+ 'overflow-hidden',
52
+ { 'cursor-pointer': !props.readonly },
53
+ ],
54
+ }),
55
+ step: ({ context, props }) => ({
56
+ class: [
57
+ // Flexbox
58
+ 'flex items-center justify-center',
59
+
60
+ // Position
61
+ 'z-20',
62
+
63
+ // Shape
64
+ 'rounded-full',
65
+ 'border-2',
66
+
67
+ // Size
68
+ 'w-8',
69
+ 'h-8',
70
+ 'text-sm',
71
+ 'leading-[2rem]',
72
+ 'font-medium',
73
+
74
+ // Colors
75
+ 'bg-surface-0 dark:bg-surface-800',
76
+ 'border-surface-100 dark:border-surface-700',
77
+ {
78
+ 'text-surface-400 dark:text-white/60': !context.active,
79
+ 'text-primary': context.active,
80
+ },
81
+
82
+ // States
83
+ {
84
+ 'hover:border-surface-300 dark:hover:border-surface-500':
85
+ !context.active && !props.readonly,
86
+ },
87
+
88
+ // Transition
89
+ 'transition-colors duration-200 ease-in-out',
90
+ ],
91
+ }),
92
+ label: ({ context }) => ({
93
+ class: [
94
+ // Font
95
+ 'leading-[normal]',
96
+ 'font-medium',
97
+
98
+ // Display
99
+ 'block',
100
+
101
+ // Spacing
102
+ 'mt-2',
103
+
104
+ // Colors
105
+ {
106
+ 'text-surface-700 dark:text-white/70': !context.active,
107
+ 'text-primary': context.active,
108
+ },
109
+
110
+ // Text and Overflow
111
+ 'whitespace-nowrap',
112
+ 'overflow-hidden',
113
+ 'overflow-ellipsis',
114
+ 'max-w-full',
115
+ ],
116
+ }),
117
+ }
@@ -0,0 +1,75 @@
1
+ export default {
2
+ root: {
3
+ class: 'overflow-x-auto',
4
+ },
5
+ menu: {
6
+ class: [
7
+ // Flexbox
8
+ 'flex flex-1',
9
+
10
+ // Spacing
11
+ 'list-none',
12
+ 'p-0 m-0',
13
+
14
+ // Colors
15
+ 'bg-surface-0 dark:bg-surface-900',
16
+ 'border-b-2 border-surface-200 dark:border-surface-700',
17
+ 'text-surface-900 dark:text-surface-0/80',
18
+ ],
19
+ },
20
+ menuitem: {
21
+ class: 'mr-0',
22
+ },
23
+ action: ({ context, state }) => ({
24
+ class: [
25
+ 'relative',
26
+
27
+ // Font
28
+ 'font-semibold leading-none',
29
+
30
+ // Flexbox and Alignment
31
+ 'flex items-center',
32
+
33
+ // Spacing
34
+ 'py-4 px-[1.125rem]',
35
+ '-mb-px',
36
+
37
+ // Shape
38
+ 'border-b',
39
+ 'rounded-t-md',
40
+
41
+ // Colors and Conditions
42
+ {
43
+ 'border-surface-200 dark:border-surface-700':
44
+ state.d_activeIndex !== context.index,
45
+ 'bg-surface-0 dark:bg-surface-900':
46
+ state.d_activeIndex !== context.index,
47
+ 'text-surface-700 dark:text-surface-0/80':
48
+ state.d_activeIndex !== context.index,
49
+
50
+ 'bg-surface-0 dark:bg-surface-900':
51
+ state.d_activeIndex === context.index,
52
+ 'border-primary': state.d_activeIndex === context.index,
53
+ 'text-primary': state.d_activeIndex === context.index,
54
+ },
55
+
56
+ // States
57
+ 'focus:outline-none focus:outline-offset-0 focus-visible:ring-1 ring-inset focus-visible:ring-primary-400 dark:focus-visible:ring-primary-300',
58
+ {
59
+ 'hover:text-surface-900 dark:hover:text-surface-0':
60
+ state.d_activeIndex !== context.index,
61
+ },
62
+
63
+ // Transitions
64
+ 'transition-all duration-200',
65
+
66
+ // Misc
67
+ 'cursor-pointer select-none text-decoration-none',
68
+ 'overflow-hidden',
69
+ 'user-select-none',
70
+ ],
71
+ }),
72
+ icon: {
73
+ class: 'mr-2',
74
+ },
75
+ }
@@ -0,0 +1,162 @@
1
+ export default {
2
+ navContainer: ({ props }) => ({
3
+ class: [
4
+ // Position
5
+ 'relative',
6
+
7
+ // Misc
8
+ { 'overflow-hidden': props.scrollable },
9
+ ],
10
+ }),
11
+ navContent: ({ instance }) => ({
12
+ class: [
13
+ // Overflow and Scrolling
14
+ 'overflow-y-hidden overscroll-contain',
15
+ 'overscroll-auto',
16
+ 'scroll-smooth',
17
+ '[&::-webkit-scrollbar]:hidden',
18
+ ],
19
+ }),
20
+ previousButton: {
21
+ class: [
22
+ // Flexbox and Alignment
23
+ 'flex items-center justify-center',
24
+
25
+ // Position
26
+ '!absolute',
27
+ 'top-0 left-0',
28
+ 'z-20',
29
+
30
+ // Size and Shape
31
+ 'h-full w-10',
32
+ 'rounded-none',
33
+
34
+ // Colors
35
+ 'bg-surface-0 dark:bg-surface-900',
36
+ 'text-surface-700 dark:text-surface-0/80',
37
+ 'shadow-sm',
38
+ ],
39
+ },
40
+ nextButton: {
41
+ class: [
42
+ // Flexbox and Alignment
43
+ 'flex items-center justify-center',
44
+
45
+ // Position
46
+ '!absolute',
47
+ 'top-0 right-0',
48
+ 'z-20',
49
+
50
+ // Size and Shape
51
+ 'h-full w-10',
52
+ 'rounded-none',
53
+
54
+ // Colors
55
+ 'text-surface-700 dark:text-surface-0/80',
56
+ 'bg-surface-0 dark:bg-surface-900',
57
+ 'shadow-sm',
58
+ ],
59
+ },
60
+ nav: {
61
+ class: [
62
+ // Flexbox
63
+ 'flex flex-1',
64
+
65
+ // Spacing
66
+ 'list-none',
67
+ 'p-0 m-0',
68
+
69
+ // Colors
70
+ 'bg-surface-0 dark:bg-surface-900',
71
+ 'border-b border-surface-200 dark:border-surface-700',
72
+ 'text-surface-900 dark:text-surface-0/80',
73
+ ],
74
+ },
75
+ tabpanel: {
76
+ header: ({ props }) => ({
77
+ class: [
78
+ // Spacing
79
+ 'mr-0',
80
+
81
+ // Misc
82
+ 'outline-none',
83
+ {
84
+ 'opacity-60 cursor-default user-select-none select-none pointer-events-none':
85
+ props?.disabled,
86
+ },
87
+ ],
88
+ }),
89
+ headerAction: ({ parent, context }) => ({
90
+ class: [
91
+ 'relative',
92
+
93
+ // Font
94
+ 'font-semibold',
95
+
96
+ // Flexbox and Alignment
97
+ 'flex items-center',
98
+
99
+ // Spacing
100
+ 'py-4 px-[1.125rem]',
101
+ '-mb-px',
102
+
103
+ // Shape
104
+ 'border-b-2',
105
+ 'rounded-t-md',
106
+
107
+ // Colors and Conditions
108
+ {
109
+ 'border-surface-200 dark:border-surface-700':
110
+ parent.state.d_activeIndex !== context.index,
111
+ 'bg-surface-0 dark:bg-surface-900':
112
+ parent.state.d_activeIndex !== context.index,
113
+ 'text-surface-700 dark:text-surface-0/80':
114
+ parent.state.d_activeIndex !== context.index,
115
+
116
+ 'bg-surface-0 dark:bg-surface-900':
117
+ parent.state.d_activeIndex === context.index,
118
+ 'border-primary': parent.state.d_activeIndex === context.index,
119
+ 'text-primary': parent.state.d_activeIndex === context.index,
120
+ },
121
+
122
+ // States
123
+ 'focus:outline-none focus:outline-offset-0 focus-visible:ring-1 ring-inset focus-visible:ring-primary-400 dark:focus-visible:ring-primary-300',
124
+ {
125
+ 'hover:bg-surface-0 dark:hover:bg-surface-800/80':
126
+ parent.state.d_activeIndex !== context.index,
127
+ 'hover:text-surface-900 dark:hover:text-surface-0':
128
+ parent.state.d_activeIndex !== context.index,
129
+ },
130
+
131
+ // Transitions
132
+ 'transition-all duration-200',
133
+
134
+ // Misc
135
+ 'cursor-pointer select-none text-decoration-none',
136
+ 'overflow-hidden',
137
+ 'user-select-none',
138
+ ],
139
+ }),
140
+ headerTitle: {
141
+ class: [
142
+ // Text
143
+ 'leading-none',
144
+ 'whitespace-nowrap',
145
+ ],
146
+ },
147
+ },
148
+ panelcontainer: {
149
+ class: [
150
+ // Spacing
151
+ 'p-[1.125rem] pt-[0.875rem]',
152
+
153
+ // Shape
154
+ 'border-0 rounded-none',
155
+ 'border-br-md border-bl-md',
156
+
157
+ // Colors
158
+ 'bg-surface-0 dark:bg-surface-900',
159
+ 'text-surface-900 dark:text-surface-0/80',
160
+ ],
161
+ },
162
+ }
@@ -0,0 +1,44 @@
1
+ export default {
2
+ root: ({ props }) => ({
3
+ class: [
4
+ //Font
5
+ 'text-xs font-bold',
6
+
7
+ //Alignments
8
+ 'inline-flex items-center justify-center',
9
+
10
+ //Spacing
11
+ 'px-[0.4rem] py-1',
12
+
13
+ //Shape
14
+ {
15
+ 'rounded-md': !props.rounded,
16
+ 'rounded-full': props.rounded,
17
+ },
18
+
19
+ //Colors
20
+ {
21
+ 'text-primary-highlight-inverse bg-primary-highlight':
22
+ props.severity == null || props.severity == 'primary',
23
+ 'text-green-700 dark:text-green-300 bg-green-100 dark:bg-green-500/20':
24
+ props.severity == 'success',
25
+ 'text-surface-700 dark:text-surface-300 bg-surface-100 dark:bg-surface-500/20':
26
+ props.severity == 'secondary',
27
+ 'text-blue-700 dark:text-blue-300 bg-blue-100 dark:bg-blue-500/20':
28
+ props.severity == 'info',
29
+ 'text-orange-700 dark:text-orange-300 bg-orange-100 dark:bg-orange-500/20':
30
+ props.severity == 'warning',
31
+ 'text-red-700 dark:text-red-300 bg-red-100 dark:bg-red-500/20':
32
+ props.severity == 'danger',
33
+ 'text-surface-0 dark:text-surface-900 bg-surface-900 dark:bg-surface-0':
34
+ props.severity == 'contrast',
35
+ },
36
+ ],
37
+ }),
38
+ value: {
39
+ class: 'leading-normal',
40
+ },
41
+ icon: {
42
+ class: 'mr-1 text-sm',
43
+ },
44
+ }
@@ -0,0 +1,60 @@
1
+ export default {
2
+ root: {
3
+ class: [
4
+ // Spacing
5
+ 'py-2 px-3',
6
+
7
+ // Shape
8
+ 'rounded-md',
9
+
10
+ // Color
11
+ 'bg-surface-0 dark:bg-surface-950 text-surface-700 dark:text-surface-0',
12
+ 'border border-surface-200 dark:border-surface-700',
13
+
14
+ // Sizing & Overflow
15
+ 'h-72 overflow-auto',
16
+ ],
17
+ },
18
+ container: {
19
+ class: [
20
+ // Flexbox
21
+ 'flex items-center',
22
+ ],
23
+ },
24
+ prompt: {
25
+ class: [
26
+ // Color
27
+ 'text-surface-700 dark:text-surface-0',
28
+ ],
29
+ },
30
+ response: {
31
+ class: [
32
+ // Color
33
+ 'text-surface-700 dark:text-surface-0',
34
+ ],
35
+ },
36
+ command: {
37
+ class: [
38
+ // Color
39
+ 'text-surface-700 dark:text-surface-0',
40
+ ],
41
+ },
42
+ commandtext: {
43
+ class: [
44
+ // Flexbox
45
+ 'flex-1 shrink grow-0',
46
+
47
+ // Shape
48
+ 'border-0',
49
+
50
+ // Spacing
51
+ 'p-0',
52
+
53
+ // Color
54
+ 'bg-transparent text-inherit',
55
+
56
+ // Outline
57
+ 'outline-none',
58
+ ],
59
+ },
60
+ }