hds-web 1.18.5 → 1.18.7
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.
- package/dist/index.css +2 -2
- package/dist/index.es.css +2 -2
- package/dist/index.es.js +5 -5
- package/dist/index.js +3 -3
- package/package.json +1 -1
- package/src/HDS/components/Cards/Misc/iconCard.js +67 -52
- package/src/HDS/components/Headers/v3Header.js +0 -1
- package/src/HDS/helpers/MarketoForm/index.js +1 -0
- package/src/HDS/helpers/MarketoForm/marketo-form.js +25 -0
- package/src/HDS/helpers/MarketoForm/useMarketo.js +67 -0
- package/src/HDS/helpers/index.js +2 -1
- package/src/index.css +53 -1
- package/src/styles/tailwind.css +49 -1
package/package.json
CHANGED
@@ -40,9 +40,9 @@ export default function IconCard(props) {
|
|
40
40
|
return (
|
41
41
|
<>
|
42
42
|
{
|
43
|
-
((props.readMoreBtn && props.button) || (!props.readMoreBtn && !props.button) || (props.button && props.button.length > 1)) ? (
|
43
|
+
((props.readMoreBtn && props.button) || (!props.readMoreBtn && !props.button) || (props.button && props.button.length > 1) || !props.linkHover) ? (
|
44
44
|
<div
|
45
|
-
className={`bg-neutral-0 grid h-full transition-all ease-in-out rounded-3xl ${cardVariant[props.cardType]['cardStyle']} ` + ((props.cardBorder) ? props.cardBorder : 'tb:shadow')
|
45
|
+
className={`bg-neutral-0 grid h-full transition-all ease-in-out rounded-3xl ${cardVariant[props.cardType]['cardStyle']} ` + ((props.cardBorder) ? props.cardBorder : 'tb:shadow')}
|
46
46
|
>
|
47
47
|
<div className=" self-start">
|
48
48
|
<div
|
@@ -75,33 +75,55 @@ export default function IconCard(props) {
|
|
75
75
|
{props.description}
|
76
76
|
</ReactMarkdown>
|
77
77
|
</Typography>
|
78
|
-
{props.readMoreBtn && (
|
79
|
-
<a href={props.readMoreBtn.cta_link} className='flex'>
|
80
|
-
<div className="flex">
|
81
|
-
<HDSButton
|
82
|
-
label={props.readMoreBtn.cta_text}
|
83
|
-
type='secondaryLink'
|
84
|
-
leftIconVariant='none'
|
85
|
-
rightIconVariant='none'
|
86
|
-
state='default'
|
87
|
-
size='sm'
|
88
|
-
rightAnimatedArrow={true}
|
89
|
-
rightAnimatedArrowColor='#3970FD'
|
90
|
-
animatedHoverStroke='#3970FD'
|
91
|
-
btnTextColorClass='text-blue-500'
|
92
|
-
btnTextHoverClass=''
|
93
|
-
className=' mt-4'
|
94
|
-
/>
|
95
|
-
</div>
|
96
|
-
</a>
|
97
|
-
)
|
98
|
-
|
99
|
-
}
|
100
78
|
</>
|
101
79
|
)
|
102
80
|
}
|
103
81
|
</div>
|
104
82
|
</div>
|
83
|
+
{props.readMoreBtn && (
|
84
|
+
<>
|
85
|
+
{
|
86
|
+
props.linkHover ? (
|
87
|
+
<a href={props.readMoreBtn.cta_link} className='flex self-end'>
|
88
|
+
<div className="flex">
|
89
|
+
<HDSButton
|
90
|
+
label={props.readMoreBtn.cta_text}
|
91
|
+
type='secondaryLink'
|
92
|
+
leftIconVariant='none'
|
93
|
+
rightIconVariant='none'
|
94
|
+
state='default'
|
95
|
+
size='sm'
|
96
|
+
rightAnimatedArrow={true}
|
97
|
+
rightAnimatedArrowColor='#3970FD'
|
98
|
+
animatedHoverStroke='#3970FD'
|
99
|
+
btnTextColorClass='text-blue-500'
|
100
|
+
btnTextHoverClass=''
|
101
|
+
className=' mt-4'
|
102
|
+
/>
|
103
|
+
</div>
|
104
|
+
</a>
|
105
|
+
) : (
|
106
|
+
<div className="flex self-end">
|
107
|
+
<HDSButton
|
108
|
+
label={props.readMoreBtn.cta_text}
|
109
|
+
type='secondaryLink'
|
110
|
+
leftIconVariant='none'
|
111
|
+
rightIconVariant='none'
|
112
|
+
state='default'
|
113
|
+
size='sm'
|
114
|
+
rightAnimatedArrow={false}
|
115
|
+
rightAnimatedArrowColor='#3970FD'
|
116
|
+
animatedHoverStroke='#3970FD'
|
117
|
+
btnTextColorClass='text-neutral-800'
|
118
|
+
btnTextHoverClass=''
|
119
|
+
className=' mt-4 hover:cursor-default'
|
120
|
+
/>
|
121
|
+
</div>
|
122
|
+
)
|
123
|
+
}
|
124
|
+
</>
|
125
|
+
)
|
126
|
+
}
|
105
127
|
{props.button &&
|
106
128
|
<div className="flex gap-2 ">
|
107
129
|
{props.button.map((btn, index) => (
|
@@ -128,15 +150,12 @@ export default function IconCard(props) {
|
|
128
150
|
}
|
129
151
|
</div>
|
130
152
|
}
|
131
|
-
|
132
|
-
|
133
|
-
|
134
153
|
</div>
|
135
154
|
) :
|
136
155
|
|
137
156
|
(
|
138
157
|
<a href={((props.readMoreBtn && !props.button) ? props.readMoreBtn['cta_link'] : props.button[0]['cta_link'])}
|
139
|
-
className={`bg-neutral-0 group grid h-full duration-300 transition-all ease-in-out rounded-3xl ${cardVariant[props.cardType]['cardStyle']} ` + ((props.cardBorder) ? props.cardBorder : 'tb:shadow') + ((props.readMoreBtn || props.button) ? ' hover:shadow-lg hover:translate-y-0.5 ' : '')}
|
158
|
+
className={`bg-neutral-0 group grid h-full duration-300 transition-all ease-in-out rounded-3xl ${cardVariant[props.cardType]['cardStyle']} ` + ((props.cardBorder) ? props.cardBorder : 'tb:shadow') + ((props.readMoreBtn || props.button || props.linkHover) ? ' hover:shadow-lg hover:translate-y-0.5 ' : '')}
|
140
159
|
>
|
141
160
|
<div className=" self-start">
|
142
161
|
<div
|
@@ -169,33 +188,33 @@ export default function IconCard(props) {
|
|
169
188
|
{props.description}
|
170
189
|
</ReactMarkdown>
|
171
190
|
</Typography>
|
172
|
-
{props.readMoreBtn && (
|
173
|
-
<div className="flex">
|
174
|
-
<HDSButton
|
175
|
-
label={props.readMoreBtn.cta_text}
|
176
|
-
type='secondaryLink'
|
177
|
-
leftIconVariant='none'
|
178
|
-
rightIconVariant='none'
|
179
|
-
state='default'
|
180
|
-
size='sm'
|
181
|
-
rightAnimatedArrow={true}
|
182
|
-
rightAnimatedArrowColor='#3970FD'
|
183
|
-
animatedHoverStroke='#3970FD'
|
184
|
-
btnTextColorClass='text-blue-500'
|
185
|
-
btnTextHoverClass=''
|
186
|
-
className=' mt-4'
|
187
|
-
/>
|
188
|
-
</div>
|
189
|
-
)
|
190
191
|
|
191
|
-
}
|
192
192
|
</>
|
193
193
|
)
|
194
194
|
}
|
195
195
|
</div>
|
196
196
|
</div>
|
197
|
+
{props.readMoreBtn && (
|
198
|
+
<div className="flex self-end">
|
199
|
+
<HDSButton
|
200
|
+
label={props.readMoreBtn.cta_text}
|
201
|
+
type='secondaryLink'
|
202
|
+
leftIconVariant='none'
|
203
|
+
rightIconVariant='none'
|
204
|
+
state='default'
|
205
|
+
size='sm'
|
206
|
+
rightAnimatedArrow={true}
|
207
|
+
rightAnimatedArrowColor='#3970FD'
|
208
|
+
animatedHoverStroke='#3970FD'
|
209
|
+
btnTextColorClass='text-blue-500'
|
210
|
+
btnTextHoverClass=''
|
211
|
+
className=' mt-4'
|
212
|
+
/>
|
213
|
+
</div>
|
214
|
+
)
|
215
|
+
}
|
197
216
|
{props.button &&
|
198
|
-
<div className="flex pt-4 gap-2">
|
217
|
+
<div className="flex pt-4 gap-2 self-end">
|
199
218
|
{props.button.map((btn, index) => (
|
200
219
|
<div className="flex">
|
201
220
|
<HDSButton
|
@@ -217,9 +236,6 @@ export default function IconCard(props) {
|
|
217
236
|
}
|
218
237
|
</div>
|
219
238
|
}
|
220
|
-
|
221
|
-
|
222
|
-
|
223
239
|
</a>
|
224
240
|
)
|
225
241
|
|
@@ -235,4 +251,3 @@ IconCard.defaultProps = {
|
|
235
251
|
Icon.propTypes = {
|
236
252
|
cardType: PropTypes.oneOf(['withoutButton', 'withButton', 'sm']),
|
237
253
|
}
|
238
|
-
|
@@ -47,7 +47,6 @@ export default function V3Header(props) {
|
|
47
47
|
|
48
48
|
//testing
|
49
49
|
const [dropdownVisibility, setDropdownVisibility] = useState(Array(props.HEADER_LIST.length).fill(false));
|
50
|
-
console.log(mobileNavOpen, isProduct, dropdownVisibility, currentTab)
|
51
50
|
const handleDropdownEnter = (index) => {
|
52
51
|
setDropdownVisibility((prevVisibility) => {
|
53
52
|
const updatedVisibility = [...prevVisibility];
|
@@ -0,0 +1 @@
|
|
1
|
+
export {default as MarketoForm } from './marketo-form';
|
@@ -0,0 +1,25 @@
|
|
1
|
+
// Referance from here: https://github.com/PaulieScanlon/cockroachdb-custom-marketo-forms-with-react
|
2
|
+
import { memo } from 'react'
|
3
|
+
import PropTypes from 'prop-types'
|
4
|
+
|
5
|
+
import useMarketo from './useMarketo'
|
6
|
+
|
7
|
+
// eslint-disable-next-line react/display-name
|
8
|
+
const MarketoForm = memo(({ formId, styleClass }) => {
|
9
|
+
useMarketo({
|
10
|
+
formId: formId,
|
11
|
+
callback: () => { }
|
12
|
+
})
|
13
|
+
|
14
|
+
return <form
|
15
|
+
id={`mktoForm_${formId}`}
|
16
|
+
className='mktoForm marketoFormWrapper eventDetailsFormWrapper'
|
17
|
+
></form>
|
18
|
+
})
|
19
|
+
|
20
|
+
MarketoForm.propTypes = {
|
21
|
+
/** The Marketo Form Id */
|
22
|
+
formId: PropTypes.string.isRequired
|
23
|
+
}
|
24
|
+
|
25
|
+
export default MarketoForm;
|
@@ -0,0 +1,67 @@
|
|
1
|
+
// Referance from here: https://github.com/PaulieScanlon/cockroachdb-custom-marketo-forms-with-react
|
2
|
+
|
3
|
+
import { useState, useEffect } from 'react'
|
4
|
+
|
5
|
+
const useMarketo = ({ formId, callback }) => {
|
6
|
+
const [scriptAdded, setScriptAdded] = useState(false)
|
7
|
+
const [formLoaded, setFormLoaded] = useState(false)
|
8
|
+
|
9
|
+
useEffect(() => {
|
10
|
+
if (scriptAdded) {
|
11
|
+
if (!formLoaded) {
|
12
|
+
// eslint-disable-next-line no-undef
|
13
|
+
MktoForms2.loadForm(
|
14
|
+
"//page.hasura.io",
|
15
|
+
"631-HMN-492",
|
16
|
+
formId,
|
17
|
+
callback
|
18
|
+
)
|
19
|
+
// console.log(formId);
|
20
|
+
// MktoForms2.whenRendered((form) => {
|
21
|
+
// const formElement = form.getFormElem()[0]
|
22
|
+
// const formElementId = form.getFormElem()[0].id.split('_')[1]
|
23
|
+
|
24
|
+
// /** Remove the style attribute and make for, and id attributes unique */
|
25
|
+
// Array.from(formElement.querySelectorAll('[style]'))
|
26
|
+
// .concat(formElement)
|
27
|
+
// .forEach((element) => {
|
28
|
+
// element.removeAttribute('style')
|
29
|
+
// if (element.hasAttribute('id') && element.tagName !== 'FORM') {
|
30
|
+
// element.setAttribute('id', `${element.getAttribute('id')}_${formElementId}`)
|
31
|
+
// }
|
32
|
+
|
33
|
+
// if (element.tagName === 'LABEL') {
|
34
|
+
// element.setAttribute('for', `${element.getAttribute('for')}_${formElementId}`)
|
35
|
+
// }
|
36
|
+
// })
|
37
|
+
|
38
|
+
// /** Remove <span /> from DOM */
|
39
|
+
// Array.from(formElement.querySelectorAll('.mktoInstruction')).forEach((element) => {
|
40
|
+
// element.remove()
|
41
|
+
// })
|
42
|
+
|
43
|
+
// /** Remove <style /> from DOM */
|
44
|
+
// Array.from(formElement.children).forEach((element) => {
|
45
|
+
// if (element.type && element.type === 'text/css') {
|
46
|
+
// element.remove()
|
47
|
+
// }
|
48
|
+
// })
|
49
|
+
// })
|
50
|
+
setFormLoaded(true)
|
51
|
+
}
|
52
|
+
} else {
|
53
|
+
if (false) {
|
54
|
+
setScriptAdded(true)
|
55
|
+
} else {
|
56
|
+
const script = document.createElement('script')
|
57
|
+
script.defer = true
|
58
|
+
script.onload = () => (window?.MktoForms2 ? setScriptAdded(true) : null)
|
59
|
+
script.src = `//page.hasura.io/js/forms2/js/forms2.min.js`
|
60
|
+
document.head.appendChild(script)
|
61
|
+
}
|
62
|
+
}
|
63
|
+
}, [scriptAdded])
|
64
|
+
}
|
65
|
+
|
66
|
+
export default useMarketo;
|
67
|
+
|
package/src/HDS/helpers/index.js
CHANGED
package/src/index.css
CHANGED
@@ -1,9 +1,61 @@
|
|
1
|
-
@import url('https://fonts.googleapis.com/css2?family=Petrona:ital,wght@1,
|
1
|
+
@import url('https://fonts.googleapis.com/css2?family=Petrona:ital,wght@1,200&display=swap');
|
2
2
|
@tailwind base;
|
3
3
|
@tailwind components;
|
4
4
|
@tailwind utilities;
|
5
5
|
/* Typography classes */
|
6
6
|
|
7
|
+
.marketoFormWrapper {
|
8
|
+
width: 100%;
|
9
|
+
}
|
10
|
+
|
11
|
+
.marketoFormWrapper .mktoFormRow {
|
12
|
+
width: 100%;
|
13
|
+
}
|
14
|
+
|
15
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor {
|
16
|
+
width: 100%;
|
17
|
+
}
|
18
|
+
|
19
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor .mktoOffset {
|
20
|
+
display: none;
|
21
|
+
}
|
22
|
+
|
23
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor .mktoRequiredField,
|
24
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor .mktoFieldWrap {
|
25
|
+
width: 100%;
|
26
|
+
}
|
27
|
+
|
28
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor .mktoRequiredField .mktoLabel {
|
29
|
+
display: none;
|
30
|
+
}
|
31
|
+
|
32
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor .mktoRequiredField .mktoTextField,
|
33
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor .mktoRequiredField .mktoField {
|
34
|
+
width: 100%;
|
35
|
+
height: 48px;
|
36
|
+
border-radius: 8px;
|
37
|
+
text-indent: 16px;
|
38
|
+
padding: 0;
|
39
|
+
}
|
40
|
+
|
41
|
+
.marketoFormWrapper .mktoButtonRow {
|
42
|
+
width: 100%;
|
43
|
+
padding-top: 12px;
|
44
|
+
}
|
45
|
+
|
46
|
+
.marketoFormWrapper .mktoButtonRow .mktoButtonWrap {
|
47
|
+
margin-left: 0;
|
48
|
+
}
|
49
|
+
|
50
|
+
.marketoFormWrapper .mktoButtonRow .mktoButtonWrap .mktoButton {
|
51
|
+
|
52
|
+
height: 48px;
|
53
|
+
color: #35C4F0;
|
54
|
+
|
55
|
+
|
56
|
+
}
|
57
|
+
|
58
|
+
|
7
59
|
.hds-hidden{
|
8
60
|
display: none;
|
9
61
|
|
package/src/styles/tailwind.css
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
@import url('https://fonts.googleapis.com/css2?family=Petrona:ital,wght@1,
|
1
|
+
@import url('https://fonts.googleapis.com/css2?family=Petrona:ital,wght@1,200&display=swap');
|
2
2
|
|
3
3
|
/*
|
4
4
|
! tailwindcss v3.3.1 | MIT License | https://tailwindcss.com
|
@@ -7544,6 +7544,54 @@ select{
|
|
7544
7544
|
|
7545
7545
|
/* Typography classes */
|
7546
7546
|
|
7547
|
+
.marketoFormWrapper {
|
7548
|
+
width: 100%;
|
7549
|
+
}
|
7550
|
+
|
7551
|
+
.marketoFormWrapper .mktoFormRow {
|
7552
|
+
width: 100%;
|
7553
|
+
}
|
7554
|
+
|
7555
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor {
|
7556
|
+
width: 100%;
|
7557
|
+
}
|
7558
|
+
|
7559
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor .mktoOffset {
|
7560
|
+
display: none;
|
7561
|
+
}
|
7562
|
+
|
7563
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor .mktoRequiredField,
|
7564
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor .mktoFieldWrap {
|
7565
|
+
width: 100%;
|
7566
|
+
}
|
7567
|
+
|
7568
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor .mktoRequiredField .mktoLabel {
|
7569
|
+
display: none;
|
7570
|
+
}
|
7571
|
+
|
7572
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor .mktoRequiredField .mktoTextField,
|
7573
|
+
.marketoFormWrapper .mktoFormRow .mktoFieldDescriptor .mktoRequiredField .mktoField {
|
7574
|
+
width: 100%;
|
7575
|
+
height: 48px;
|
7576
|
+
border-radius: 8px;
|
7577
|
+
text-indent: 16px;
|
7578
|
+
padding: 0;
|
7579
|
+
}
|
7580
|
+
|
7581
|
+
.marketoFormWrapper .mktoButtonRow {
|
7582
|
+
width: 100%;
|
7583
|
+
padding-top: 12px;
|
7584
|
+
}
|
7585
|
+
|
7586
|
+
.marketoFormWrapper .mktoButtonRow .mktoButtonWrap {
|
7587
|
+
margin-left: 0;
|
7588
|
+
}
|
7589
|
+
|
7590
|
+
.marketoFormWrapper .mktoButtonRow .mktoButtonWrap .mktoButton {
|
7591
|
+
height: 48px;
|
7592
|
+
color: #35C4F0;
|
7593
|
+
}
|
7594
|
+
|
7547
7595
|
.hds-hidden{
|
7548
7596
|
display: none;
|
7549
7597
|
}
|