@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,184 @@
1
+ export default {
2
+ root: {
3
+ class: [
4
+ 'relative',
5
+
6
+ // Flexbox
7
+ 'flex',
8
+ 'items-center',
9
+
10
+ // Spacing
11
+ 'p-2',
12
+
13
+ // Shape
14
+ 'rounded-md',
15
+
16
+ // Color
17
+ 'bg-surface-0 dark:bg-surface-900',
18
+ 'border border-surface-200 dark:border-surface-700',
19
+ ],
20
+ },
21
+ menu: ({ props }) => ({
22
+ class: [
23
+ // Flexbox
24
+ 'sm:flex',
25
+ 'items-center',
26
+ 'flex-wrap',
27
+ 'flex-col sm:flex-row',
28
+ { hidden: !props?.mobileActive, flex: props?.mobileActive },
29
+
30
+ // Position
31
+ 'absolute sm:relative',
32
+ 'top-full left-0',
33
+ 'sm:top-auto sm:left-auto',
34
+
35
+ // Size
36
+ 'w-full sm:w-auto',
37
+
38
+ // Spacing
39
+ 'm-0',
40
+ 'p-1 sm:py-0 sm:p-0',
41
+ 'list-none',
42
+
43
+ // Shape
44
+ 'shadow-md sm:shadow-none',
45
+ 'border-0',
46
+
47
+ // Color
48
+ 'bg-surface-0 dark:bg-surface-900 sm:bg-transparent',
49
+
50
+ // Misc
51
+ 'outline-none',
52
+ ],
53
+ }),
54
+ menuitem: {
55
+ class: 'sm:relative sm:w-auto w-full static my-[2px] [&:first-child]:mt-0',
56
+ },
57
+ content: ({ props, context }) => ({
58
+ class: [
59
+ // Shape
60
+ 'rounded-[4px]',
61
+
62
+ // Colors
63
+ 'text-surface-700 dark:text-white/80',
64
+ {
65
+ 'text-surface-500 dark:text-white/70':
66
+ !context.focused && !context.active,
67
+ 'text-surface-500 dark:text-white/70 bg-surface-200':
68
+ context.focused && !context.active,
69
+ 'text-primary-highlight-inverse bg-primary-highlight':
70
+ (context.focused && context.active) ||
71
+ context.active ||
72
+ (!context.focused && context.active),
73
+ },
74
+
75
+ // States
76
+ {
77
+ 'hover:bg-surface-100 dark:hover:bg-[rgba(255,255,255,0.03)]':
78
+ !context.active,
79
+ 'hover:bg-primary-highlight-hover text-primary-highlight-inverse':
80
+ context.active,
81
+ },
82
+
83
+ // Transitions
84
+ 'transition-all',
85
+ 'duration-200',
86
+ ],
87
+ }),
88
+ action: ({ context }) => ({
89
+ class: [
90
+ 'relative',
91
+
92
+ // Flexbox
93
+ 'flex',
94
+ 'items-center',
95
+
96
+ // Spacing
97
+ 'py-2',
98
+ 'px-3',
99
+
100
+ // Size
101
+ {
102
+ 'pl-9 sm:pl-5': context.level === 1,
103
+ 'pl-14 sm:pl-5': context.level === 2,
104
+ },
105
+ 'leading-none',
106
+
107
+ // Misc
108
+ 'select-none',
109
+ 'cursor-pointer',
110
+ 'no-underline ',
111
+ 'overflow-hidden',
112
+ ],
113
+ }),
114
+ icon: {
115
+ class: 'mr-2',
116
+ },
117
+ submenuicon: ({ props }) => ({
118
+ class: [
119
+ {
120
+ 'ml-auto sm:ml-2': props.root,
121
+ 'ml-auto': !props.root,
122
+ },
123
+ ],
124
+ }),
125
+ submenu: ({ props }) => ({
126
+ class: [
127
+ // Size
128
+ 'rounded-md',
129
+ 'min-w-[12.5rem]',
130
+
131
+ // Spacing
132
+ 'p-1',
133
+ 'm-0',
134
+ 'list-none',
135
+
136
+ // Shape
137
+ 'shadow-none sm:shadow-md',
138
+ 'border border-surface-200 dark:border-surface-700',
139
+
140
+ // Position
141
+ 'static sm:absolute',
142
+ 'z-10',
143
+ { 'sm:absolute sm:left-full sm:top-0': props.level > 1 },
144
+
145
+ // Color
146
+ 'bg-surface-0 dark:bg-surface-900',
147
+ ],
148
+ }),
149
+ separator: {
150
+ class: 'border-t border-surface-200 dark:border-surface-600 my-[2px]',
151
+ },
152
+ button: {
153
+ class: [
154
+ // Flexbox
155
+ 'flex sm:hidden',
156
+ 'items-center justify-center',
157
+
158
+ // Size
159
+ 'w-7',
160
+ 'h-7',
161
+
162
+ // Shape
163
+ 'rounded-full',
164
+ // Color
165
+ 'text-surface-500 dark:text-white/80',
166
+
167
+ // States
168
+ 'hover:text-surface-600 dark:hover:text-white/60',
169
+ 'hover:bg-surface-100 dark:hover:bg-[rgba(255,255,255,0.03)]',
170
+ 'focus:outline-none focus:outline-offset-0',
171
+ 'focus:ring-1 focus:ring-primary-500 dark:focus:ring-primary-400',
172
+
173
+ // Transitions
174
+ 'transition duration-200 ease-in-out',
175
+
176
+ // Misc
177
+ 'cursor-pointer',
178
+ 'no-underline',
179
+ ],
180
+ },
181
+ end: {
182
+ class: 'ml-auto self-center',
183
+ },
184
+ }
@@ -0,0 +1,112 @@
1
+ export default {
2
+ root: ({ props }) => ({
3
+ class: [
4
+ // Spacing and Shape
5
+ 'my-4 mx-0',
6
+ 'rounded-md',
7
+ 'border',
8
+
9
+ // Colors
10
+ {
11
+ 'bg-blue-100/70 dark:bg-blue-500/20': props.severity == 'info',
12
+ 'bg-green-100/70 dark:bg-green-500/20': props.severity == 'success',
13
+ 'bg-surface-100/70 dark:bg-surface-500/20':
14
+ props.severity == 'secondary',
15
+ 'bg-orange-100/70 dark:bg-orange-500/20': props.severity == 'warn',
16
+ 'bg-red-100/70 dark:bg-red-500/20': props.severity == 'error',
17
+ 'bg-surface-950 dark:bg-surface-0': props.severity == 'contrast',
18
+ },
19
+ {
20
+ 'border-blue-200 dark:border-blue-500/20': props.severity == 'info',
21
+ 'border-green-200 dark:border-green-500/20':
22
+ props.severity == 'success',
23
+ 'border-surface-200 dark:border-surface-500/20':
24
+ props.severity == 'secondary',
25
+ 'border-orange-200 dark:border-orange-500/20': props.severity == 'warn',
26
+ 'border-red-200 dark:border-red-500/20': props.severity == 'error',
27
+ 'border-surface-950 dark:border-surface-0':
28
+ props.severity == 'contrast',
29
+ },
30
+ {
31
+ 'text-blue-700 dark:text-blue-300': props.severity == 'info',
32
+ 'text-green-700 dark:text-green-300': props.severity == 'success',
33
+ 'text-surface-700 dark:text-surface-300': props.severity == 'secondary',
34
+ 'text-orange-700 dark:text-orange-300': props.severity == 'warn',
35
+ 'text-red-700 dark:text-red-300': props.severity == 'error',
36
+ 'text-surface-0 dark:text-surface-950': props.severity == 'contrast',
37
+ },
38
+ ],
39
+ }),
40
+ wrapper: {
41
+ class: [
42
+ // Flexbox
43
+ 'flex items-center',
44
+
45
+ // Spacing
46
+ 'py-2 px-3',
47
+ ],
48
+ },
49
+ icon: {
50
+ class: [
51
+ // Sizing and Spacing
52
+ 'w-4 h-4',
53
+ 'leading-[normal] mr-2 shrink-0',
54
+ ],
55
+ },
56
+ text: {
57
+ class: [
58
+ // Font and Text
59
+ 'text-base leading-[normal]',
60
+ 'font-medium',
61
+ ],
62
+ },
63
+ button: ({ props }) => ({
64
+ class: [
65
+ // Flexbox
66
+ 'flex items-center justify-center',
67
+
68
+ // Size
69
+ 'w-7 h-7',
70
+
71
+ // Spacing and Misc
72
+ 'ml-auto relative',
73
+
74
+ // Shape
75
+ 'rounded-full',
76
+
77
+ // Colors
78
+ 'bg-transparent',
79
+
80
+ // Transitions
81
+ 'transition duration-200 ease-in-out',
82
+
83
+ // States
84
+ 'hover:bg-surface-0/30 dark:hover:bg-[rgba(255,255,255,0.03)]',
85
+ 'focus:outline-none focus:outline-offset-0 focus:ring-1',
86
+ {
87
+ 'focus:ring-blue-500 dark:focus:ring-blue-400':
88
+ props.severity == 'info',
89
+ 'focus:ring-green-500 dark:focus:ring-green-400':
90
+ props.severity == 'success',
91
+ 'focus:ring-surface-500 dark:focus:ring-surface-400':
92
+ props.severity == 'secondary',
93
+ 'focus:ring-orange-500 dark:focus:ring-orange-400':
94
+ props.severity == 'warn',
95
+ 'focus:ring-red-500 dark:focus:ring-red-4000':
96
+ props.severity == 'error',
97
+ 'focus:ring-surface-0 dark:focus:ring-surface-950':
98
+ props.severity == 'contrast',
99
+ },
100
+
101
+ // Misc
102
+ 'overflow-hidden',
103
+ ],
104
+ }),
105
+ transition: {
106
+ enterFromClass: 'opacity-0',
107
+ enterActiveClass: 'transition-opacity duration-300',
108
+ leaveFromClass: 'max-h-40',
109
+ leaveActiveClass: 'overflow-hidden transition-all duration-300 ease-in',
110
+ leaveToClass: 'max-h-0 opacity-0 !m-0',
111
+ },
112
+ }
@@ -0,0 +1,110 @@
1
+ export default {
2
+ root: ({ props }) => ({
3
+ class: [
4
+ // Flexbox
5
+ 'flex gap-4',
6
+
7
+ {
8
+ 'flex-col': props.orientation == 'horizontal',
9
+ 'flex-row': props.orientation == 'vertical',
10
+ },
11
+ ],
12
+ }),
13
+ metercontainer: ({ props }) => ({
14
+ class: [
15
+ // Flexbox
16
+ 'flex',
17
+
18
+ { 'flex-col': props.orientation === 'vertical' },
19
+
20
+ // Sizing
21
+ { 'w-2 h-full': props.orientation === 'vertical' },
22
+ { 'h-2': props.orientation === 'horizontal' },
23
+
24
+ // Colors
25
+ 'bg-gray-200 dark:bg-gray-700',
26
+
27
+ // Border Radius
28
+ 'rounded-lg',
29
+ ],
30
+ }),
31
+ meter: ({ props }) => ({
32
+ class: [
33
+ // Shape
34
+ 'border-0',
35
+
36
+ // Rounded Corners - Horizontal
37
+ {
38
+ 'first:rounded-l-lg last:rounded-r-lg':
39
+ props.orientation === 'horizontal',
40
+ },
41
+
42
+ // Rounded Corners - Vertical
43
+ {
44
+ 'first:rounded-t-lg last:rounded-b-lg':
45
+ props.orientation === 'vertical',
46
+ },
47
+
48
+ // Colors
49
+ 'bg-primary',
50
+ ],
51
+ }),
52
+ labellist: ({ props }) => ({
53
+ class: [
54
+ // Display & Flexbox
55
+ 'flex flex-wrap',
56
+
57
+ { 'gap-4': props.labelOrientation === 'horizontal' },
58
+
59
+ { 'gap-2': props.labelOrientation === 'vertical' },
60
+
61
+ { 'flex-col': props.labelOrientation === 'vertical' },
62
+
63
+ // Conditional Alignment - Horizontal
64
+ {
65
+ 'align-end':
66
+ props.labelOrientation === 'horizontal' &&
67
+ props.labelPosition === 'end',
68
+ 'align-start':
69
+ props.labelOrientation === 'horizontal' &&
70
+ props.labelPosition === 'start',
71
+ },
72
+
73
+ // Conditional Alignment - Vertical
74
+ {
75
+ 'justify-end':
76
+ props.labelOrientation === 'vertical' &&
77
+ props.labelPosition === 'end',
78
+ 'justify-start':
79
+ props.labelOrientation === 'vertical' &&
80
+ props.labelPosition === 'start',
81
+ },
82
+
83
+ // List Styling
84
+ 'm-0 p-0 list-none',
85
+ ],
86
+ }),
87
+ labellistitem: {
88
+ class: [
89
+ // Flexbox
90
+ 'inline-flex',
91
+ 'items-center',
92
+ 'gap-2',
93
+ ],
94
+ },
95
+ labellisttype: {
96
+ class: [
97
+ // Display
98
+ 'inline-flex',
99
+
100
+ // Background Color
101
+ 'bg-primary',
102
+
103
+ // Size
104
+ 'w-2 h-2',
105
+
106
+ // Rounded Shape
107
+ 'rounded-full',
108
+ ],
109
+ },
110
+ }