@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,130 @@
1
+ export default {
2
+ panel: {
3
+ class:
4
+ 'p-1 overflow-hidden mb-3 border border-surface-200 dark:border-surface-700 rounded-md',
5
+ },
6
+ header: {
7
+ class: ['rounded-[4px]', 'outline-none'],
8
+ },
9
+ headercontent: ({ context, instance }) => ({
10
+ class: [
11
+ // Shape
12
+ 'rounded-[4px]',
13
+
14
+ // Color
15
+ 'bg-surface-0 dark:bg-surface-900',
16
+ 'text-surface-600 dark:text-surface-0/80',
17
+ { 'text-surface-900': context.active },
18
+
19
+ // States
20
+ 'hover:bg-surface-100 dark:hover:bg-[rgba(255,255,255,0.03)]',
21
+ 'hover:text-surface-900',
22
+
23
+ // Transition
24
+ 'transition duration-200 ease-in-out',
25
+ 'transition-shadow duration-200',
26
+ ],
27
+ }),
28
+ headeraction: {
29
+ class: [
30
+ 'relative',
31
+
32
+ // Font
33
+ 'font-semibold',
34
+ 'leading-none',
35
+
36
+ // Flex & Alignments
37
+ 'flex items-center',
38
+
39
+ // Spacing
40
+ 'py-2 px-3',
41
+
42
+ // Misc
43
+ 'select-none cursor-pointer no-underline',
44
+ ],
45
+ },
46
+ headerlabel: {
47
+ class: 'leading-none',
48
+ },
49
+ headerIcon: {
50
+ class: 'mr-2',
51
+ },
52
+ submenuicon: {
53
+ class: 'mr-2',
54
+ },
55
+ menucontent: {
56
+ class: [
57
+ // Spacing
58
+ 'pl-4',
59
+
60
+ // Color
61
+ 'text-surface-700 dark:text-white/80',
62
+ 'bg-surface-0 dark:bg-surface-900',
63
+ ],
64
+ },
65
+ menu: {
66
+ class: ['outline-none', 'm-0 p-0 list-none'],
67
+ },
68
+ menuitem: {
69
+ class: 'relative my-[2px]',
70
+ },
71
+ content: {
72
+ class: [
73
+ // Shape
74
+ 'border-none rounded-[4px]',
75
+
76
+ // Color
77
+ 'text-surface-700 dark:text-white/80',
78
+
79
+ // Transition
80
+ 'transition-shadow duration-200',
81
+ ],
82
+ },
83
+ action: ({ context }) => ({
84
+ class: [
85
+ 'relative',
86
+
87
+ // Font
88
+ 'leading-none',
89
+
90
+ // Flex & Alignments
91
+ 'flex items-center',
92
+
93
+ // Spacing
94
+ 'py-2 px-3',
95
+
96
+ // Shape
97
+ 'rounded-[4px]',
98
+
99
+ // Color
100
+ 'text-surface-700 dark:text-white/80',
101
+
102
+ // States
103
+ 'hover:bg-surface-100 dark:hover:bg-[rgba(255,255,255,0.03)] hover:text-surface-700 dark:hover:text-white/80',
104
+ {
105
+ 'bg-surface-200 text-surface-700 dark:text-white/80 dark:bg-surface-0/10':
106
+ context.focused,
107
+ },
108
+
109
+ // Misc
110
+ 'cursor-pointer no-underline',
111
+ 'select-none overflow-hidden',
112
+ ],
113
+ }),
114
+ icon: {
115
+ class: 'mr-2',
116
+ },
117
+ submenu: {
118
+ class: 'p-0 pl-4 m-0 list-none',
119
+ },
120
+ transition: {
121
+ enterFromClass: 'max-h-0',
122
+ enterActiveClass:
123
+ 'overflow-hidden transition-[max-height] duration-1000 ease-[cubic-bezier(0.42,0,0.58,1)]',
124
+ enterToClass: 'max-h-[1000px]',
125
+ leaveFromClass: 'max-h-[1000px]',
126
+ leaveActiveClass:
127
+ 'overflow-hidden transition-[max-height] duration-[450ms] ease-[cubic-bezier(0,1,0,1)]',
128
+ leaveToClass: 'max-h-0',
129
+ },
130
+ }
@@ -0,0 +1,143 @@
1
+ export default {
2
+ root: ({ props }) => ({
3
+ class: ['inline-flex relative', { '[&>input]:pr-10': props.toggleMask }],
4
+ }),
5
+ panel: {
6
+ class: [
7
+ // Spacing
8
+ 'p-3',
9
+
10
+ // Shape
11
+ 'border',
12
+ 'shadow-md rounded-md',
13
+
14
+ // Colors
15
+ 'bg-surface-0 dark:bg-surface-900',
16
+ 'text-surface-700 dark:text-white/80',
17
+ 'border-surface-200 dark:border-surface-700',
18
+ ],
19
+ },
20
+ meter: {
21
+ class: [
22
+ // Position and Overflow
23
+ 'overflow-hidden',
24
+ 'relative',
25
+
26
+ // Shape and Size
27
+ 'border-0',
28
+ 'h-[10px]',
29
+ 'rounded-md',
30
+
31
+ // Spacing
32
+ 'mb-3',
33
+
34
+ // Colors
35
+ 'bg-surface-100 dark:bg-surface-700',
36
+ ],
37
+ },
38
+ meterlabel: ({ instance }) => ({
39
+ class: [
40
+ // Size
41
+ 'h-full',
42
+
43
+ // Colors
44
+ {
45
+ 'bg-red-500 dark:bg-red-400/50': instance?.meter?.strength == 'weak',
46
+ 'bg-orange-500 dark:bg-orange-400/50':
47
+ instance?.meter?.strength == 'medium',
48
+ 'bg-green-500 dark:bg-green-400/50':
49
+ instance?.meter?.strength == 'strong',
50
+ },
51
+
52
+ // Transitions
53
+ 'transition-all duration-1000 ease-in-out',
54
+ ],
55
+ }),
56
+ showicon: {
57
+ class: [
58
+ 'absolute top-1/2 right-3 -mt-2 z-10',
59
+ 'text-surface-600 dark:text-white/70',
60
+ ],
61
+ },
62
+ hideicon: {
63
+ class: [
64
+ 'absolute top-1/2 right-3 -mt-2 z-10',
65
+ 'text-surface-600 dark:text-white/70',
66
+ ],
67
+ },
68
+ input: {
69
+ root: ({ props, context, parent }) => ({
70
+ class: [
71
+ // Font
72
+ 'leading-none',
73
+
74
+ // Flex
75
+ { 'flex-1 w-[1%]': parent.instance.$name == 'InputGroup' },
76
+
77
+ // Spacing
78
+ 'm-0',
79
+ {
80
+ 'py-3 px-3.5': props.size == 'large',
81
+ 'py-1.5 px-2': props.size == 'small',
82
+ 'py-2 px-3': props.size == null,
83
+ },
84
+
85
+ // Shape
86
+ { 'rounded-md': parent.instance.$name !== 'InputGroup' },
87
+ {
88
+ 'first:rounded-l-md rounded-none last:rounded-r-md':
89
+ parent.instance.$name == 'InputGroup',
90
+ },
91
+ {
92
+ 'border-0 border-y border-l last:border-r':
93
+ parent.instance.$name == 'InputGroup',
94
+ },
95
+ {
96
+ 'first:ml-0 -ml-px':
97
+ parent.instance.$name == 'InputGroup' && !props.showButtons,
98
+ },
99
+
100
+ // Colors
101
+ 'text-surface-800 dark:text-white/80',
102
+ 'placeholder:text-surface-400 dark:placeholder:text-surface-500',
103
+ { 'bg-surface-0 dark:bg-surface-950': !context.disabled },
104
+ 'border',
105
+ { 'border-surface-300 dark:border-surface-700': !props.invalid },
106
+
107
+ // Invalid State
108
+ 'invalid:focus:ring-red-200',
109
+ 'invalid:hover:border-red-500',
110
+ { 'border-red-500 dark:border-red-400': props.invalid },
111
+
112
+ // States
113
+ {
114
+ 'hover:border-surface-400 dark:hover:border-surface-600':
115
+ !context.disabled && !props.invalid,
116
+ 'focus:outline-none focus:outline-offset-0 focus:ring-1 focus:ring-primary-500 dark:focus:ring-primary-400 focus:z-10':
117
+ !context.disabled,
118
+ 'bg-surface-200 dark:bg-surface-700 select-none pointer-events-none cursor-default':
119
+ context.disabled,
120
+ },
121
+
122
+ // Filled State *for FloatLabel
123
+ {
124
+ filled:
125
+ parent.instance?.$parentInstance?.$name == 'FloatLabel' &&
126
+ parent.props.modelValue !== null &&
127
+ parent.props.modelValue?.length !== 0,
128
+ },
129
+
130
+ // Misc
131
+ 'appearance-none',
132
+ 'transition-colors duration-200',
133
+ ],
134
+ }),
135
+ },
136
+ transition: {
137
+ enterFromClass: 'opacity-0 scale-y-[0.8]',
138
+ enterActiveClass:
139
+ 'transition-[transform,opacity] duration-[120ms] ease-[cubic-bezier(0,0,0.2,1)]',
140
+ leaveActiveClass: 'transition-opacity duration-100 ease-linear',
141
+ leaveToClass: 'opacity-0',
142
+ },
143
+ }