@pixelated-tech/components 3.1.6 → 3.2.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.
- package/dist/components/callout/callout.js +10 -9
- package/dist/components/callout/callout.scss +43 -43
- package/dist/components/carousel/carousel.css +24 -22
- package/dist/components/carousel/carousel.drag.js +1 -1
- package/dist/components/carousel/carousel.js +10 -10
- package/dist/components/{tiles → carousel}/tiles.css +10 -10
- package/dist/components/{tiles → carousel}/tiles.js +3 -3
- package/dist/components/cms/contentful.items.components.js +12 -12
- package/dist/components/cms/contentful.items.css +24 -24
- package/dist/components/cms/gravatar.components.js +87 -5
- package/dist/components/cms/instagram.components.js +1 -1
- package/dist/components/cms/wordpress.components.js +3 -3
- package/dist/components/cms/wordpress.css +3 -3
- package/dist/components/general/microinteractions.css +7 -7
- package/dist/components/general/modal.css +5 -5
- package/dist/components/general/modal.js +1 -1
- package/dist/components/general/semantic.js +282 -0
- package/dist/components/general/semantic.scss +359 -0
- package/dist/components/menu/menu-accordion.css +27 -21
- package/dist/components/menu/menu-accordion.js +1 -1
- package/dist/components/menu/menu-simple.css +8 -8
- package/dist/components/menu/menu-simple.js +3 -3
- package/dist/components/nerdjoke/nerdjoke.js +85 -77
- package/dist/components/pagebuilder/components/PageBuilderUI.js +1 -1
- package/dist/components/pagebuilder/components/PageEngine.js +21 -14
- package/dist/components/pagebuilder/lib/componentMap.js +5 -5
- package/dist/components/pagebuilder/lib/componentMetadata.js +1 -1
- package/dist/components/seo/404.css +5 -5
- package/dist/components/seo/404.js +2 -2
- package/dist/components/seo/googlemap.js +2 -1
- package/dist/components/seo/googlesearch.css +11 -0
- package/dist/components/shoppingcart/ebay.css +5 -5
- package/dist/components/shoppingcart/shoppingcart.css +1 -1
- package/dist/components/{resume → structured}/resume.css +4 -0
- package/dist/components/{resume → structured}/resume.js +3 -3
- package/dist/components/{timeline → structured}/timeline.css +14 -14
- package/dist/components/{timeline → structured}/timeline.js +3 -3
- package/dist/css/pixelated.global.css +25 -164
- package/dist/index.js +11 -12
- package/dist/types/components/callout/callout.d.ts.map +1 -1
- package/dist/types/components/carousel/carousel.d.ts.map +1 -1
- package/dist/types/components/{tiles → carousel}/tiles.d.ts +1 -1
- package/dist/types/components/carousel/tiles.d.ts.map +1 -0
- package/dist/types/components/cms/contentful.items.components.d.ts.map +1 -1
- package/dist/types/components/cms/gravatar.components.d.ts +53 -24
- package/dist/types/components/cms/gravatar.components.d.ts.map +1 -1
- package/dist/types/components/cms/pixelated.linkedin.d.ts.map +1 -0
- package/dist/types/components/cms/pixelated.linkedin1.d.ts.map +1 -0
- package/dist/types/components/cms/pixelated.linkedin2.d.ts.map +1 -0
- package/dist/types/components/cms/yelp.d.ts.map +1 -0
- package/dist/types/components/general/semantic.d.ts +153 -0
- package/dist/types/components/general/semantic.d.ts.map +1 -0
- package/dist/types/components/general/sidepanel.d.ts.map +1 -0
- package/dist/types/components/nerdjoke/nerdjoke.d.ts +15 -20
- package/dist/types/components/nerdjoke/nerdjoke.d.ts.map +1 -1
- package/dist/types/components/pagebuilder/components/PageEngine.d.ts.map +1 -1
- package/dist/types/components/pagebuilder/lib/componentMap.d.ts +6 -6
- package/dist/types/components/pagebuilder/lib/componentMap.d.ts.map +1 -1
- package/dist/types/components/seo/404.d.ts.map +1 -1
- package/dist/types/components/seo/googlemap.d.ts +1 -0
- package/dist/types/components/seo/googlemap.d.ts.map +1 -1
- package/dist/types/components/{buzzwordbingo → structured}/buzzwordbingo.d.ts +1 -1
- package/dist/types/components/structured/buzzwordbingo.d.ts.map +1 -0
- package/dist/types/components/structured/markdown.d.ts.map +1 -0
- package/dist/types/components/structured/recipe.d.ts.map +1 -0
- package/dist/types/components/{resume → structured}/resume.d.ts +1 -1
- package/dist/types/components/structured/resume.d.ts.map +1 -0
- package/dist/types/components/{socialcard → structured}/socialcard.d.ts +1 -1
- package/dist/types/components/{socialcard → structured}/socialcard.d.ts.map +1 -1
- package/dist/types/components/{timeline → structured}/timeline.d.ts +1 -1
- package/dist/types/components/structured/timeline.d.ts.map +1 -0
- package/dist/types/index.d.ts +9 -10
- package/dist/types/stories/callout/callout.many.stories.d.ts.map +1 -0
- package/dist/types/stories/{callout.stories.d.ts → callout/callout.stories.d.ts} +1 -1
- package/dist/types/stories/callout/callout.stories.d.ts.map +1 -0
- package/dist/types/stories/{carousel-hero.stories.d.ts → carousel/carousel-hero.stories.d.ts} +1 -1
- package/dist/types/stories/carousel/carousel-hero.stories.d.ts.map +1 -0
- package/dist/types/stories/{carousel-reviews.stories.d.ts → carousel/carousel-reviews.stories.d.ts} +1 -1
- package/dist/types/stories/carousel/carousel-reviews.stories.d.ts.map +1 -0
- package/dist/types/stories/{carousel-workportfolio.stories.d.ts → carousel/carousel-workportfolio.stories.d.ts} +1 -1
- package/dist/types/stories/carousel/carousel-workportfolio.stories.d.ts.map +1 -0
- package/dist/types/stories/{carousel.stories.d.ts → carousel/carousel.stories.d.ts} +1 -1
- package/dist/types/stories/carousel/carousel.stories.d.ts.map +1 -0
- package/dist/types/stories/{tiles.stories.d.ts → carousel/tiles.stories.d.ts} +1 -1
- package/dist/types/stories/carousel/tiles.stories.d.ts.map +1 -0
- package/dist/types/stories/{cms.contentful.item.stories.d.ts → cms/contentful.item.stories.d.ts} +2 -2
- package/dist/types/stories/cms/contentful.item.stories.d.ts.map +1 -0
- package/dist/types/stories/{cms.contentful.items.stories.d.ts → cms/contentful.items.stories.d.ts} +2 -2
- package/dist/types/stories/cms/contentful.items.stories.d.ts.map +1 -0
- package/dist/types/stories/{cms.contentful.stories.d.ts → cms/contentful.stories.d.ts} +2 -2
- package/dist/types/stories/cms/contentful.stories.d.ts.map +1 -0
- package/dist/types/stories/{cms.google.reviews.stories.d.ts → cms/google.reviews.stories.d.ts} +2 -2
- package/dist/types/stories/cms/google.reviews.stories.d.ts.map +1 -0
- package/dist/types/stories/{cms.gravatar.stories.d.ts → cms/gravatar.stories.d.ts} +2 -2
- package/dist/types/stories/cms/gravatar.stories.d.ts.map +1 -0
- package/dist/types/stories/{cms.instagram.stories.d.ts → cms/instagram.stories.d.ts} +2 -2
- package/dist/types/stories/cms/instagram.stories.d.ts.map +1 -0
- package/dist/types/stories/cms/wordpress.stories.d.ts +9 -0
- package/dist/types/stories/cms/wordpress.stories.d.ts.map +1 -0
- package/dist/types/stories/{general.headers.stories.d.ts → general/headers.stories.d.ts} +5 -5
- package/dist/types/stories/general/headers.stories.d.ts.map +1 -0
- package/dist/types/stories/{layout.stories.d.ts → general/layout.stories.d.ts} +1 -1
- package/dist/types/stories/general/layout.stories.d.ts.map +1 -0
- package/dist/types/stories/{general.loading.stories.d.ts → general/loading.stories.d.ts} +2 -2
- package/dist/types/stories/general/loading.stories.d.ts.map +1 -0
- package/dist/types/stories/{general.microinteractions.stories.d.ts → general/microinteractions.stories.d.ts} +2 -2
- package/dist/types/stories/general/microinteractions.stories.d.ts.map +1 -0
- package/dist/types/stories/{general.modal.stories.d.ts → general/modal.stories.d.ts} +2 -2
- package/dist/types/stories/general/modal.stories.d.ts.map +1 -0
- package/dist/types/stories/{sidepanel.stories.d.ts → general/sidepanel.stories.d.ts} +1 -1
- package/dist/types/stories/general/sidepanel.stories.d.ts.map +1 -0
- package/dist/types/stories/{general.table.stories.d.ts → general/table.stories.d.ts} +3 -3
- package/dist/types/stories/general/table.stories.d.ts.map +1 -0
- package/dist/types/stories/{menu-accordion.stories.d.ts → menu/menu-accordion.stories.d.ts} +1 -1
- package/dist/types/stories/menu/menu-accordion.stories.d.ts.map +1 -0
- package/dist/types/stories/{menu-simple.stories.d.ts → menu/menu-simple.stories.d.ts} +1 -1
- package/dist/types/stories/menu/menu-simple.stories.d.ts.map +1 -0
- package/dist/types/stories/nerdjoke.stories.d.ts +1 -1
- package/dist/types/stories/nerdjoke.stories.d.ts.map +1 -1
- package/dist/types/stories/{pagebuilder.form-builder.stories.d.ts → pagebuilder/form-builder.stories.d.ts} +2 -2
- package/dist/types/stories/pagebuilder/form-builder.stories.d.ts.map +1 -0
- package/dist/types/stories/{pagebuilder.form-engine.stories.d.ts → pagebuilder/form-engine.stories.d.ts} +3 -3
- package/dist/types/stories/pagebuilder/form-engine.stories.d.ts.map +1 -0
- package/dist/types/stories/{pagebuilder.form-extractor.stories.d.ts → pagebuilder/form-extractor.stories.d.ts} +2 -2
- package/dist/types/stories/pagebuilder/form-extractor.stories.d.ts.map +1 -0
- package/dist/types/stories/{pagebuilder.stories.d.ts → pagebuilder/pagebuilder.stories.d.ts} +1 -1
- package/dist/types/stories/pagebuilder/pagebuilder.stories.d.ts.map +1 -0
- package/dist/types/stories/{pagebuilder.usageguide.stories.d.ts → pagebuilder/pagebuilder.usageguide.stories.d.ts} +1 -1
- package/dist/types/stories/pagebuilder/pagebuilder.usageguide.stories.d.ts.map +1 -0
- package/dist/types/stories/{pageengine.stories.d.ts → pagebuilder/pageengine.stories.d.ts} +1 -1
- package/dist/types/stories/pagebuilder/pageengine.stories.d.ts.map +1 -0
- package/dist/types/stories/{seo.404.stories.d.ts → seo/seo.404.stories.d.ts} +1 -1
- package/dist/types/stories/seo/seo.404.stories.d.ts.map +1 -0
- package/dist/types/stories/{seo.googleanalytics.stories.d.ts → seo/seo.googleanalytics.stories.d.ts} +1 -1
- package/dist/types/stories/seo/seo.googleanalytics.stories.d.ts.map +1 -0
- package/dist/types/stories/{seo.googlesearch.stories.d.ts → seo/seo.googlesearch.stories.d.ts} +1 -1
- package/dist/types/stories/seo/seo.googlesearch.stories.d.ts.map +1 -0
- package/dist/types/stories/{seo.metadata.stories.d.ts → seo/seo.metadata.stories.d.ts} +2 -2
- package/dist/types/stories/seo/seo.metadata.stories.d.ts.map +1 -0
- package/dist/types/stories/{seo.sitemap.stories.d.ts → seo/seo.sitemap.stories.d.ts} +1 -1
- package/dist/types/stories/seo/seo.sitemap.stories.d.ts.map +1 -0
- package/dist/types/stories/{shoppingcart.ebay.item.stories.d.ts → shoppingcart/shoppingcart.ebay.item.stories.d.ts} +1 -1
- package/dist/types/stories/shoppingcart/shoppingcart.ebay.item.stories.d.ts.map +1 -0
- package/dist/types/stories/{shoppingcart.ebay.items.stories.d.ts → shoppingcart/shoppingcart.ebay.items.stories.d.ts} +1 -1
- package/dist/types/stories/shoppingcart/shoppingcart.ebay.items.stories.d.ts.map +1 -0
- package/dist/types/stories/shoppingcart/shoppingcart.stories.d.ts.map +1 -0
- package/dist/types/stories/{buzzword-bingo.stories.d.ts → structured/buzzword-bingo.stories.d.ts} +2 -2
- package/dist/types/stories/structured/buzzword-bingo.stories.d.ts.map +1 -0
- package/dist/types/stories/{markdown.stories.d.ts → structured/markdown.stories.d.ts} +1 -1
- package/dist/types/stories/structured/markdown.stories.d.ts.map +1 -0
- package/dist/types/stories/{recipe.stories.d.ts → structured/recipe.stories.d.ts} +2 -2
- package/dist/types/stories/structured/recipe.stories.d.ts.map +1 -0
- package/dist/types/stories/{resume.stories.d.ts → structured/resume.stories.d.ts} +1 -1
- package/dist/types/stories/{resume.stories.d.ts.map → structured/resume.stories.d.ts.map} +1 -1
- package/dist/types/stories/{socialcard.stories.d.ts → structured/socialcard.stories.d.ts} +1 -1
- package/dist/types/stories/structured/socialcard.stories.d.ts.map +1 -0
- package/dist/types/stories/{timeline.stories.d.ts → structured/timeline.stories.d.ts} +1 -1
- package/dist/types/stories/structured/timeline.stories.d.ts.map +1 -0
- package/package.json +9 -6
- package/dist/components/general/headers.css +0 -16
- package/dist/components/general/headers.js +0 -27
- package/dist/components/general/layout.js +0 -147
- package/dist/components/general/layout.scss +0 -47
- package/dist/types/components/buzzwordbingo/buzzwordbingo.d.ts.map +0 -1
- package/dist/types/components/general/headers.d.ts +0 -19
- package/dist/types/components/general/headers.d.ts.map +0 -1
- package/dist/types/components/general/layout.d.ts +0 -73
- package/dist/types/components/general/layout.d.ts.map +0 -1
- package/dist/types/components/linkedin/pixelated.linkedin.d.ts.map +0 -1
- package/dist/types/components/linkedin/pixelated.linkedin1.d.ts.map +0 -1
- package/dist/types/components/linkedin/pixelated.linkedin2.d.ts.map +0 -1
- package/dist/types/components/markdown/markdown.d.ts.map +0 -1
- package/dist/types/components/recipe/recipe.d.ts.map +0 -1
- package/dist/types/components/resume/resume.d.ts.map +0 -1
- package/dist/types/components/sidepanel/sidepanel.d.ts.map +0 -1
- package/dist/types/components/tiles/tiles.d.ts.map +0 -1
- package/dist/types/components/timeline/timeline.d.ts.map +0 -1
- package/dist/types/components/yelp/yelp.d.ts.map +0 -1
- package/dist/types/stories/buzzword-bingo.stories.d.ts.map +0 -1
- package/dist/types/stories/callout.many.stories.d.ts.map +0 -1
- package/dist/types/stories/callout.stories.d.ts.map +0 -1
- package/dist/types/stories/carousel-hero.stories.d.ts.map +0 -1
- package/dist/types/stories/carousel-reviews.stories.d.ts.map +0 -1
- package/dist/types/stories/carousel-workportfolio.stories.d.ts.map +0 -1
- package/dist/types/stories/carousel.stories.d.ts.map +0 -1
- package/dist/types/stories/cms.contentful.item.stories.d.ts.map +0 -1
- package/dist/types/stories/cms.contentful.items.stories.d.ts.map +0 -1
- package/dist/types/stories/cms.contentful.stories.d.ts.map +0 -1
- package/dist/types/stories/cms.google.reviews.stories.d.ts.map +0 -1
- package/dist/types/stories/cms.gravatar.stories.d.ts.map +0 -1
- package/dist/types/stories/cms.instagram.stories.d.ts.map +0 -1
- package/dist/types/stories/cms.wordpress.stories.d.ts +0 -26
- package/dist/types/stories/cms.wordpress.stories.d.ts.map +0 -1
- package/dist/types/stories/general.headers.stories.d.ts.map +0 -1
- package/dist/types/stories/general.loading.stories.d.ts.map +0 -1
- package/dist/types/stories/general.microinteractions.stories.d.ts.map +0 -1
- package/dist/types/stories/general.modal.stories.d.ts.map +0 -1
- package/dist/types/stories/general.table.stories.d.ts.map +0 -1
- package/dist/types/stories/layout.stories.d.ts.map +0 -1
- package/dist/types/stories/markdown.stories.d.ts.map +0 -1
- package/dist/types/stories/menu-accordion.stories.d.ts.map +0 -1
- package/dist/types/stories/menu-simple.stories.d.ts.map +0 -1
- package/dist/types/stories/pagebuilder.form-builder.stories.d.ts.map +0 -1
- package/dist/types/stories/pagebuilder.form-engine.stories.d.ts.map +0 -1
- package/dist/types/stories/pagebuilder.form-extractor.stories.d.ts.map +0 -1
- package/dist/types/stories/pagebuilder.stories.d.ts.map +0 -1
- package/dist/types/stories/pagebuilder.usageguide.stories.d.ts.map +0 -1
- package/dist/types/stories/pageengine.stories.d.ts.map +0 -1
- package/dist/types/stories/recipe.stories.d.ts.map +0 -1
- package/dist/types/stories/seo.404.stories.d.ts.map +0 -1
- package/dist/types/stories/seo.googleanalytics.stories.d.ts.map +0 -1
- package/dist/types/stories/seo.googlesearch.stories.d.ts.map +0 -1
- package/dist/types/stories/seo.metadata.stories.d.ts.map +0 -1
- package/dist/types/stories/seo.sitemap.stories.d.ts.map +0 -1
- package/dist/types/stories/shoppingcart.ebay.item.stories.d.ts.map +0 -1
- package/dist/types/stories/shoppingcart.ebay.items.stories.d.ts.map +0 -1
- package/dist/types/stories/shoppingcart.stories.d.ts.map +0 -1
- package/dist/types/stories/sidepanel.stories.d.ts.map +0 -1
- package/dist/types/stories/socialcard.stories.d.ts.map +0 -1
- package/dist/types/stories/tiles.stories.d.ts.map +0 -1
- package/dist/types/stories/timeline.stories.d.ts.map +0 -1
- package/dist/components/{linkedin → cms}/pixelated.linkedin.js +0 -0
- package/dist/components/{linkedin → cms}/pixelated.linkedin1.js +0 -0
- package/dist/components/{linkedin → cms}/pixelated.linkedin2.js +0 -0
- package/dist/components/{yelp → cms}/yelp.js +0 -0
- package/dist/components/{sidepanel → general}/sidepanel.css +0 -0
- package/dist/components/{sidepanel → general}/sidepanel.js +0 -0
- package/dist/components/{buzzwordbingo → structured}/buzzwordbingo.css +0 -0
- package/dist/components/{buzzwordbingo → structured}/buzzwordbingo.js +1 -1
- package/dist/components/{markdown → structured}/markdown.css +0 -0
- package/dist/components/{markdown → structured}/markdown.js +0 -0
- package/dist/components/{recipe → structured}/recipe.css +0 -0
- package/dist/components/{recipe → structured}/recipe.js +0 -0
- package/dist/components/{socialcard → structured}/socialcard.css +0 -0
- package/dist/components/{socialcard → structured}/socialcard.js +1 -1
- /package/dist/types/components/{linkedin → cms}/pixelated.linkedin.d.ts +0 -0
- /package/dist/types/components/{linkedin → cms}/pixelated.linkedin1.d.ts +0 -0
- /package/dist/types/components/{linkedin → cms}/pixelated.linkedin2.d.ts +0 -0
- /package/dist/types/components/{yelp → cms}/yelp.d.ts +0 -0
- /package/dist/types/components/{sidepanel → general}/sidepanel.d.ts +0 -0
- /package/dist/types/components/{markdown → structured}/markdown.d.ts +0 -0
- /package/dist/types/components/{recipe → structured}/recipe.d.ts +0 -0
- /package/dist/types/stories/{callout.many.stories.d.ts → callout/callout.many.stories.d.ts} +0 -0
- /package/dist/types/stories/{shoppingcart.stories.d.ts → shoppingcart/shoppingcart.stories.d.ts} +0 -0
|
@@ -179,5 +179,5 @@ export function MenuAccordionButton() {
|
|
|
179
179
|
function slideMobilePanel() {
|
|
180
180
|
window.moveMenu();
|
|
181
181
|
}
|
|
182
|
-
return (_jsx("
|
|
182
|
+
return (_jsx("button", { className: "panelMenuButton", id: "panelMenuButton", onClick: slideMobilePanel, children: _jsx("span", { className: "hamburger text-outline", children: "|||" }) }));
|
|
183
183
|
}
|
|
@@ -10,11 +10,11 @@
|
|
|
10
10
|
--accent2-color: #EEE;
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
-
.
|
|
13
|
+
.menu-wrapper {
|
|
14
14
|
height: 100%;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
.
|
|
17
|
+
.menu-wrapper, .menu-wrapper * {
|
|
18
18
|
display: flex;
|
|
19
19
|
flex-direction: row;
|
|
20
20
|
flex-basis: 100%;
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
text-decoration: none;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
.
|
|
42
|
+
.menu-item {
|
|
43
43
|
border: 1px solid white;
|
|
44
44
|
background: none;
|
|
45
45
|
width: auto;
|
|
@@ -50,15 +50,15 @@
|
|
|
50
50
|
flex-basis: content; /* each item is its own size instead of auto */
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
.
|
|
53
|
+
.menu-item:hover {
|
|
54
54
|
background-color: var(--accent1-color);
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
.
|
|
57
|
+
.menu-item:not(:first-child) {
|
|
58
58
|
border-left: 2px solid var(--primary-color);
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
-
.
|
|
61
|
+
.menu-item a {
|
|
62
62
|
/* this is the button */
|
|
63
63
|
background-color: var(--accent1-color);
|
|
64
64
|
font-weight: bold;
|
|
@@ -67,10 +67,10 @@
|
|
|
67
67
|
text-align: center;
|
|
68
68
|
}
|
|
69
69
|
|
|
70
|
-
.
|
|
70
|
+
.menu-item a.selected {
|
|
71
71
|
background-color: var(--secondary-color);
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
-
.
|
|
74
|
+
.menu-item a:hover {
|
|
75
75
|
background-color: var(--accent2-color);
|
|
76
76
|
}
|
|
@@ -26,7 +26,7 @@ export function MenuSimple(props) {
|
|
|
26
26
|
return myItems;
|
|
27
27
|
}
|
|
28
28
|
function styleSelectedMenuItem() {
|
|
29
|
-
const menuitems = document.querySelectorAll('.
|
|
29
|
+
const menuitems = document.querySelectorAll('.menu-item a');
|
|
30
30
|
const currentURL = window.location.href;
|
|
31
31
|
menuitems.forEach((menuitem) => {
|
|
32
32
|
if (menuitem.href === currentURL) {
|
|
@@ -37,7 +37,7 @@ export function MenuSimple(props) {
|
|
|
37
37
|
useEffect(() => {
|
|
38
38
|
styleSelectedMenuItem();
|
|
39
39
|
}, []);
|
|
40
|
-
return (_jsx("div", { className: "
|
|
40
|
+
return (_jsx("div", { className: "menu-wrapper", children: _jsx("div", { className: "menu", id: "menu", children: _jsx("ul", { children: generateMenuItems() }) }) }));
|
|
41
41
|
}
|
|
42
42
|
/* ========== MENU ITEM ========== */
|
|
43
43
|
MenuSimpleItem.propTypes = {
|
|
@@ -50,7 +50,7 @@ MenuSimpleItem.propTypes = {
|
|
|
50
50
|
export function MenuSimpleItem(props) {
|
|
51
51
|
if (props.hidden)
|
|
52
52
|
return null;
|
|
53
|
-
return (_jsx("li", { className: '
|
|
53
|
+
return (_jsx("li", { className: 'menu-item', children: props.target
|
|
54
54
|
? _jsx("a", { href: props.path || undefined, target: props.target, children: props.name })
|
|
55
55
|
: _jsx("a", { href: props.path || undefined, children: props.name }) }));
|
|
56
56
|
}
|
|
@@ -1,95 +1,103 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
3
|
-
import PropTypes from
|
|
4
|
-
import { getXHRData, generateURL } from
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
/*
|
|
8
|
-
TODO: #21 NerdJoke Component - Convert to TypeScript
|
|
9
|
-
*/
|
|
3
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
4
|
+
import PropTypes from "prop-types";
|
|
5
|
+
import { getXHRData, generateURL } from "../utilities/api";
|
|
6
|
+
import "../../css/pixelated.grid.scss";
|
|
7
|
+
import "./nerdjoke.css";
|
|
10
8
|
const debug = false;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
|
|
9
|
+
const TIME_LIMIT = 15;
|
|
10
|
+
NerdJoke.propTypes = {};
|
|
11
|
+
export function NerdJoke( /* props: NerdJokeType */) {
|
|
12
|
+
const [joke, setJoke] = useState({ question: "", answer: "" });
|
|
13
|
+
const timerIntervalRef = useRef(null);
|
|
14
|
+
const jokeIntervalRef = useRef(null);
|
|
15
|
+
const timePassedRef = useRef(0);
|
|
16
|
+
const timePausedRef = useRef(false);
|
|
17
|
+
const timeLeftRef = useRef(TIME_LIMIT);
|
|
18
|
+
const formatTimeLeft = useCallback((time) => {
|
|
19
|
+
if (debug)
|
|
20
|
+
console.log("Formatting Time Left");
|
|
21
|
+
const minutes = Math.floor(time / 60);
|
|
22
|
+
const seconds = time % 60;
|
|
23
|
+
const formattedSeconds = seconds < 10 ? `0${seconds}` : `${seconds}`;
|
|
24
|
+
return `${minutes}:${formattedSeconds}`;
|
|
25
|
+
}, []);
|
|
26
|
+
const updateTimerDisplay = useCallback(() => {
|
|
27
|
+
if (debug)
|
|
28
|
+
console.log("Updating Timer Display");
|
|
29
|
+
const label = document.getElementById("jokeTimerLabel");
|
|
30
|
+
if (label) {
|
|
31
|
+
label.innerHTML = formatTimeLeft(timeLeftRef.current);
|
|
32
|
+
}
|
|
33
|
+
const elapsedPath = document.getElementById("jokeTimerPathElapsed");
|
|
34
|
+
if (elapsedPath) {
|
|
35
|
+
const myWidth = (((1 / TIME_LIMIT) * timeLeftRef.current) * 100) + "%";
|
|
36
|
+
elapsedPath.style.width = myWidth;
|
|
37
|
+
}
|
|
38
|
+
}, [formatTimeLeft]);
|
|
39
|
+
const loadJoke = useCallback(() => {
|
|
28
40
|
if (debug)
|
|
29
41
|
console.log("Loading Joke");
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
42
|
+
timePassedRef.current = 0;
|
|
43
|
+
timeLeftRef.current = TIME_LIMIT;
|
|
44
|
+
timerIntervalRef.current = null;
|
|
45
|
+
if (jokeIntervalRef.current) {
|
|
46
|
+
clearInterval(jokeIntervalRef.current);
|
|
47
|
+
}
|
|
48
|
+
jokeIntervalRef.current = setInterval(() => {
|
|
49
|
+
if (!timePausedRef.current) {
|
|
50
|
+
loadJoke();
|
|
37
51
|
}
|
|
38
|
-
},
|
|
39
|
-
const myURL =
|
|
40
|
-
const myURLProps = { command:
|
|
41
|
-
const myMethod =
|
|
52
|
+
}, TIME_LIMIT * 1000);
|
|
53
|
+
const myURL = "https://vvqyc1xpw6.execute-api.us-east-2.amazonaws.com/prod/nerdjokes?";
|
|
54
|
+
const myURLProps = { command: "%2Fnerdjokes", text: "getjokejson" };
|
|
55
|
+
const myMethod = "GET";
|
|
42
56
|
getXHRData(generateURL(myURL, myURLProps), myMethod, (jokeData) => {
|
|
43
57
|
const myJokeData = jokeData;
|
|
44
|
-
|
|
58
|
+
setJoke(myJokeData);
|
|
45
59
|
});
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
if (debug)
|
|
49
|
-
console.log("Formatting Time Left");
|
|
50
|
-
const minutes = Math.floor(time / 60);
|
|
51
|
-
let seconds = time % 60;
|
|
52
|
-
if (seconds < 10) {
|
|
53
|
-
seconds = `0${seconds}`;
|
|
54
|
-
}
|
|
55
|
-
return `${minutes}:${seconds}`;
|
|
56
|
-
}
|
|
57
|
-
;
|
|
58
|
-
startTimer() {
|
|
60
|
+
}, []);
|
|
61
|
+
const startTimer = useCallback(() => {
|
|
59
62
|
if (debug)
|
|
60
63
|
console.log("Starting Timer");
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
64
|
+
if (timerIntervalRef.current) {
|
|
65
|
+
clearInterval(timerIntervalRef.current);
|
|
66
|
+
}
|
|
67
|
+
timerIntervalRef.current = setInterval(() => {
|
|
68
|
+
if (!timePausedRef.current) {
|
|
69
|
+
timePassedRef.current += 1;
|
|
70
|
+
timeLeftRef.current = TIME_LIMIT - timePassedRef.current + 1;
|
|
71
|
+
updateTimerDisplay();
|
|
68
72
|
}
|
|
69
73
|
}, 1000);
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
pauseTimer() {
|
|
74
|
+
}, [updateTimerDisplay]);
|
|
75
|
+
const pauseTimer = () => {
|
|
73
76
|
if (debug)
|
|
74
77
|
console.log("Pausing Timer");
|
|
75
|
-
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
return (_jsx("div", { className: 'jokeButton', onClick: props.clickFunction, children: props.buttonText }));
|
|
78
|
+
timePausedRef.current = !timePausedRef.current;
|
|
79
|
+
};
|
|
80
|
+
useEffect(() => {
|
|
81
|
+
loadJoke();
|
|
82
|
+
startTimer();
|
|
83
|
+
return () => {
|
|
84
|
+
if (timerIntervalRef.current) {
|
|
85
|
+
clearInterval(timerIntervalRef.current);
|
|
86
|
+
}
|
|
87
|
+
if (jokeIntervalRef.current) {
|
|
88
|
+
clearInterval(jokeIntervalRef.current);
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
}, [loadJoke, startTimer]);
|
|
92
|
+
return (_jsx("div", { className: "nerdJoke", children: _jsxs("div", { className: "row-12col", children: [_jsx("div", { className: "grid-s1-e5", children: _jsx("div", { className: "left", children: _jsx(JokeButton, { clickFunction: pauseTimer, buttonText: "Pause || / Play >" }) }) }), _jsx("div", { className: "grid-s9-e13", children: _jsx("div", { className: "right", children: _jsx(JokeButton, { clickFunction: loadJoke, buttonText: "Next Joke ->" }) }) }), _jsx("div", { className: "jokeTimer grid-s1-e13", children: _jsxs("div", { className: "row-12col", children: [_jsx("div", { className: "grid-s1-e11", children: _jsx("svg", { className: "jokeTimerSvg", xmlns: "http://www.w3.org/2000/svg", children: _jsx("rect", { id: "jokeTimerPathElapsed" }) }) }), _jsx("div", { className: "grid-s11-e13 center", id: "jokeTimerLabel", children: formatTimeLeft(timeLeftRef.current) })] }) }), _jsxs("div", { className: "jokeText grid-s1-e13", children: [_jsxs("div", { children: [_jsx("span", { className: "label", children: "Q: " }), _jsxs("span", { className: "question", children: [" ", joke.question, " "] })] }), _jsxs("div", { children: [_jsx("span", { className: "label", children: "A: " }), _jsxs("span", { className: "answer", children: [" ", joke.answer, " "] })] })] })] }) }));
|
|
91
93
|
}
|
|
92
94
|
JokeButton.propTypes = {
|
|
93
95
|
clickFunction: PropTypes.func.isRequired,
|
|
94
|
-
buttonText: PropTypes.string.isRequired
|
|
96
|
+
buttonText: PropTypes.string.isRequired,
|
|
95
97
|
};
|
|
98
|
+
function JokeButton(props) {
|
|
99
|
+
/* <div className="jokeButton" onClick={props.clickFunction}>
|
|
100
|
+
{props.buttonText}
|
|
101
|
+
</div> */
|
|
102
|
+
return (_jsx("button", { className: "jokeButton", onClick: props.clickFunction, children: props.buttonText }));
|
|
103
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import React from 'react';
|
|
4
|
-
import { PageSectionHeader } from '../../general/
|
|
4
|
+
import { PageSectionHeader } from '../../general/semantic';
|
|
5
5
|
import { usePageBuilder } from '../lib/usePageBuilder';
|
|
6
6
|
import { ComponentSelector } from '../components/ComponentSelector';
|
|
7
7
|
import { ComponentPropertiesForm } from '../components/ComponentPropertiesForm';
|
|
@@ -53,22 +53,29 @@ export function PageEngine(props) {
|
|
|
53
53
|
}
|
|
54
54
|
// Edit mode: Wrap with hover effect and action buttons
|
|
55
55
|
const isSelected = selectedPath === currentPath;
|
|
56
|
+
const handleMouseEnter = (currentTarget, event) => {
|
|
57
|
+
if (event.target === event.currentTarget || !currentTarget.querySelector('.pagebuilder-component-wrapper:hover')) {
|
|
58
|
+
document.querySelectorAll('.pagebuilder-component-wrapper.hover-active').forEach(el => {
|
|
59
|
+
el.classList.remove('hover-active');
|
|
60
|
+
});
|
|
61
|
+
currentTarget.classList.add('hover-active');
|
|
62
|
+
}
|
|
63
|
+
event.stopPropagation();
|
|
64
|
+
};
|
|
65
|
+
const handleMouseLeave = (currentTarget, event) => {
|
|
66
|
+
const relatedTarget = (event.relatedTarget || event.relatedTarget);
|
|
67
|
+
if (!relatedTarget || !currentTarget.contains(relatedTarget)) {
|
|
68
|
+
currentTarget.classList.remove('hover-active');
|
|
69
|
+
}
|
|
70
|
+
};
|
|
56
71
|
return (_jsxs("div", { className: `pagebuilder-component-wrapper ${isSelected ? 'selected' : ''}`, onMouseOver: (e) => {
|
|
57
|
-
|
|
58
|
-
// Remove hover-active from all wrappers
|
|
59
|
-
document.querySelectorAll('.pagebuilder-component-wrapper.hover-active').forEach(el => {
|
|
60
|
-
el.classList.remove('hover-active');
|
|
61
|
-
});
|
|
62
|
-
// Add to current
|
|
63
|
-
e.currentTarget.classList.add('hover-active');
|
|
64
|
-
}
|
|
65
|
-
e.stopPropagation();
|
|
72
|
+
handleMouseEnter(e.currentTarget, e);
|
|
66
73
|
}, onMouseOut: (e) => {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
74
|
+
handleMouseLeave(e.currentTarget, e);
|
|
75
|
+
}, onFocus: (e) => {
|
|
76
|
+
handleMouseEnter(e.currentTarget, e);
|
|
77
|
+
}, onBlur: (e) => {
|
|
78
|
+
handleMouseLeave(e.currentTarget, e);
|
|
72
79
|
}, children: [element, _jsxs("div", { className: "pagebuilder-actions", children: [_jsxs("div", { className: "move-buttons", children: [_jsx("button", { className: "move-btn move-up", onClick: (e) => {
|
|
73
80
|
e.stopPropagation();
|
|
74
81
|
onMoveUp?.(currentPath);
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PageTitleHeader, PageSectionHeader } from "../../general/semantic";
|
|
2
2
|
import { Callout } from "../../callout/callout";
|
|
3
|
-
import { PageSection,
|
|
3
|
+
import { PageSection, PageGridItem, PageFlexItem } from "../../general/semantic";
|
|
4
4
|
/**
|
|
5
5
|
* Component registry and constants
|
|
6
6
|
*/
|
|
7
7
|
export const componentMap = {
|
|
8
|
-
"Page Header":
|
|
8
|
+
"Page Title Header": PageTitleHeader,
|
|
9
9
|
"Page Section Header": PageSectionHeader,
|
|
10
10
|
"Callout": Callout,
|
|
11
11
|
"Page Section": PageSection,
|
|
12
|
-
"Grid Item":
|
|
13
|
-
"Flex Item":
|
|
12
|
+
"Grid Item": PageGridItem,
|
|
13
|
+
"Flex Item": PageFlexItem,
|
|
14
14
|
};
|
|
15
15
|
export const layoutComponents = [
|
|
16
16
|
'Page Section',
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* runtime values for form generation.
|
|
8
8
|
*/
|
|
9
9
|
import { variants, shapes, layouts, directions } from "../../callout/callout";
|
|
10
|
-
import { layoutTypes, autoFlowValues, flexDirections, flexWraps, justifyContentValues, alignItemsValues } from "../../general/
|
|
10
|
+
import { layoutTypes, autoFlowValues, flexDirections, flexWraps, justifyContentValues, alignItemsValues } from "../../general/semantic";
|
|
11
11
|
export const componentMetadata = {
|
|
12
12
|
'Callout': {
|
|
13
13
|
variant: {
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
|
|
2
|
-
.
|
|
2
|
+
.fof-body-container {
|
|
3
3
|
width: 100%;
|
|
4
4
|
margin: 0 auto;
|
|
5
5
|
}
|
|
6
6
|
|
|
7
|
-
.
|
|
7
|
+
.fof-body-container h1 {
|
|
8
8
|
font-size: 2em;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
-
.
|
|
11
|
+
.fof-image-container {
|
|
12
12
|
width: 80%;
|
|
13
13
|
margin: 0 auto;
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
.
|
|
16
|
+
.fof-image-container .fof-image-wrapper {
|
|
17
17
|
width: 100%;
|
|
18
18
|
margin: 0 auto;
|
|
19
19
|
overflow: hidden;
|
|
20
20
|
text-align: center;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
.
|
|
23
|
+
.fof-image-container .fof-image-wrapper img {
|
|
24
24
|
margin: 0 auto;
|
|
25
25
|
}
|
|
@@ -2,9 +2,9 @@ import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-run
|
|
|
2
2
|
import { useState, useEffect } from "react";
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
// import { getCloudinaryRemoteFetchURL } from "../cms/cloudinary";
|
|
5
|
-
import "./404.css";
|
|
6
5
|
import { SmartImage } from "../cms/cloudinary.image";
|
|
7
6
|
import { usePixelatedConfig } from "../config/config.client";
|
|
7
|
+
import "./404.css";
|
|
8
8
|
FourOhFour.propTypes = {
|
|
9
9
|
images: PropTypes.array.isRequired,
|
|
10
10
|
};
|
|
@@ -22,7 +22,7 @@ export function FourOhFour(props) {
|
|
|
22
22
|
}, []);
|
|
23
23
|
const config = usePixelatedConfig();
|
|
24
24
|
if (randomIndex !== null && imageURL /* cloudinaryURL */ !== '') {
|
|
25
|
-
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "
|
|
25
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "fof-body-container", children: [_jsxs("h1", { className: "centered text-outline", children: ["404 - ", images[randomIndex].text] }), _jsx("div", { className: "centered-button", children: _jsx("a", { href: "/", target: "_self", rel: "noopener noreferrer", children: "Go Home" }) })] }), _jsx("div", { className: "fof-image-container", children: _jsx("div", { className: "fof-image-wrapper", children: _jsx(SmartImage, { src: imageURL,
|
|
26
26
|
// src={cloudinaryURL}
|
|
27
27
|
title: "Page Not Found - " + images[randomIndex].description, alt: "Page Not Found - " + images[randomIndex].description, cloudinaryEnv: config?.cloudinary?.product_env ?? undefined, cloudinaryDomain: config?.cloudinary?.baseUrl ?? undefined, cloudinaryTransforms: config?.cloudinary?.transforms ?? undefined }) }) })] }));
|
|
28
28
|
}
|
|
@@ -2,6 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import PropTypes from "prop-types";
|
|
3
3
|
// https://developers.google.com/maps/documentation/embed/embedding-map
|
|
4
4
|
GoogleMaps.propTypes = {
|
|
5
|
+
title: PropTypes.string,
|
|
5
6
|
width: PropTypes.string,
|
|
6
7
|
height: PropTypes.string,
|
|
7
8
|
frameBorder: PropTypes.string,
|
|
@@ -11,5 +12,5 @@ GoogleMaps.propTypes = {
|
|
|
11
12
|
parameters: PropTypes.string,
|
|
12
13
|
};
|
|
13
14
|
export function GoogleMaps(props) {
|
|
14
|
-
return (_jsx("div", { className: "gmap", suppressHydrationWarning: true, children: _jsx("iframe", { width: props.width || "600", height: props.height || "400", frameBorder: props.frameBorder || "0", style: props.style || { border: 0 }, referrerPolicy: "no-referrer-when-downgrade", src: `https://www.google.com/maps/embed/v1/${props.map_mode}?key=${props.api_key}&${props.parameters}`, allowFullScreen: true }) }));
|
|
15
|
+
return (_jsx("div", { className: "gmap", suppressHydrationWarning: true, children: _jsx("iframe", { title: props.title || "Google Map", width: props.width || "600", height: props.height || "400", frameBorder: props.frameBorder || "0", style: props.style || { border: 0 }, referrerPolicy: "no-referrer-when-downgrade", src: `https://www.google.com/maps/embed/v1/${props.map_mode}?key=${props.api_key}&${props.parameters}`, allowFullScreen: true }) }));
|
|
15
16
|
}
|
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
|
|
2
|
+
/* ========================================
|
|
3
|
+
=========== GENERAL SEARCH ============
|
|
4
|
+
======================================== */
|
|
5
|
+
|
|
6
|
+
#page-search {
|
|
7
|
+
min-height: 50px;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
2
12
|
/* ========================================
|
|
3
13
|
============ GOOGLE SEARCH ============
|
|
4
14
|
======================================== */
|
|
@@ -21,6 +31,7 @@ input.gsc-search-button, input.gsc-search-button:hover, input.gsc-search-button:
|
|
|
21
31
|
|
|
22
32
|
input.gsc-input {
|
|
23
33
|
font-size: 1.0em !important;
|
|
34
|
+
background: none !important;
|
|
24
35
|
}
|
|
25
36
|
|
|
26
37
|
.gsc-control-cse {
|
|
@@ -66,18 +66,18 @@
|
|
|
66
66
|
|
|
67
67
|
.ebayItemPhotoCarousel {
|
|
68
68
|
|
|
69
|
-
.
|
|
69
|
+
.carousel-container {
|
|
70
70
|
background: none;
|
|
71
71
|
border: none;
|
|
72
72
|
height: 400px;
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
-
.
|
|
75
|
+
.carousel-cards-container {
|
|
76
76
|
height: 100%;
|
|
77
77
|
}
|
|
78
78
|
|
|
79
|
-
.
|
|
80
|
-
.
|
|
79
|
+
.carousel-buttons,
|
|
80
|
+
.carousel-button {
|
|
81
81
|
display: inline-block;
|
|
82
82
|
}
|
|
83
83
|
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
.ebayItemPhotoCarousel {
|
|
88
88
|
height: 350px;
|
|
89
89
|
}
|
|
90
|
-
.ebayItemPhotoCarousel .
|
|
90
|
+
.ebayItemPhotoCarousel .carousel-container {
|
|
91
91
|
height: 300px;
|
|
92
92
|
}
|
|
93
93
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import PropTypes from "prop-types";
|
|
3
3
|
import { format } from "date-fns";
|
|
4
|
-
import "./resume.css";
|
|
5
|
-
import "../../css/pixelated.grid.scss";
|
|
6
4
|
import { usePixelatedConfig } from "../config/config.client";
|
|
7
5
|
import { SmartImage } from "../cms/cloudinary.image";
|
|
6
|
+
import "../../css/pixelated.grid.scss";
|
|
7
|
+
import "./resume.css";
|
|
8
8
|
/*
|
|
9
9
|
Resume Microformat - https://microformats.org/wiki/h-resume
|
|
10
10
|
Details Summary Expand Collapse - https://www.w3schools.com/tags/tag_details.asp
|
|
@@ -33,7 +33,7 @@ Resume.propTypes = {
|
|
|
33
33
|
data: PropTypes.any.isRequired,
|
|
34
34
|
};
|
|
35
35
|
export function Resume(props) {
|
|
36
|
-
return (_jsx("section", { className: "p-resume", id: "resume-section", children: _jsx("div", { className: "section-container", children: _jsxs("div", { className: "row-12col", children: [_jsx("div", { className: "p-name grid-s1-e13", children: _jsx(ResumeName, { data: props.data.items[0].properties.name }) }), _jsxs("div", { className: "
|
|
36
|
+
return (_jsx("section", { className: "p-resume", id: "resume-section", children: _jsx("div", { className: "section-container", children: _jsxs("div", { className: "row-12col", children: [_jsx("div", { className: "p-name grid-s1-e13", children: _jsx(ResumeName, { data: props.data.items[0].properties.name }) }), _jsxs("div", { className: "divider grid-s1-e4", children: [_jsx("div", { className: "p-contact", children: _jsx(ResumeContact, { title: "Contact Information", data: props.data.items[0].properties.contact }) }), _jsx("div", { className: "p-education", children: _jsx(ResumeEvents, { title: "Education", data: props.data.items[0].properties.education, dateFormat: "MM/yyyy", collapsible: false }) }), _jsx("div", { className: "p-skills", children: _jsx(ResumeSkills, { title: "Skills", data: props.data.items[0].properties.skills }) })] }), _jsxs("div", { className: "grid-s4-e13", children: [_jsx("div", { className: "p-summary", children: _jsx(ResumeSummary, { title: "Professional Summary", data: props.data.items[0].properties.summary }) }), _jsx("div", { className: "p-qualifications", children: _jsx(ResumeQualifications, { title: "Professional Qualifications", data: props.data.items[0].properties.qualifications }) }), _jsx("div", { className: "p-experience", children: _jsx(ResumeEvents, { title: "Work History", data: props.data.items[0].properties.experience, dateFormat: "MM/yyyy", collapsible: false }) }), _jsx("div", { className: "p-projects", children: _jsx(ResumeProjects, { title: "Projects", data: props.data.items[0].properties.experience, collapsible: true }) }), _jsx("div", { className: "p-volunteer", children: _jsx(ResumeEvents, { title: "Volunteer Work", data: props.data.items[0].properties.volunteer, dateFormat: "MM/yyyy", collapsible: true }) }), _jsx("div", { className: "p-certifications", children: _jsx(ResumeEvents, { title: "Certifications", data: props.data.items[0].properties.certifications, dateFormat: "MM/yyyy", collapsible: true }) }), _jsx("div", { className: "p-awards", children: _jsx(ResumeEvents, { title: "Honors & Awards", data: props.data.items[0].properties.awards, dateFormat: "MM/yyyy", collapsible: true }) }), _jsx("div", { className: "p-training", children: _jsx(ResumeEvents, { title: "Training & Conferences", data: props.data.items[0].properties.training, dateFormat: "MM/dd/yyyy", collapsible: true }) }), _jsx("div", { className: "p-references", children: _jsx(ResumeReferences, { title: "References", data: props.data.items[0].properties.references, collapsible: true }) })] })] }) }) }));
|
|
37
37
|
}
|
|
38
38
|
ResumeName.propTypes = {
|
|
39
39
|
data: PropTypes.any.isRequired,
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
/* Container around content */
|
|
28
|
-
.
|
|
28
|
+
.timeline-container {
|
|
29
29
|
padding: 10px 40px;
|
|
30
30
|
position: relative;
|
|
31
31
|
background-color: inherit;
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
/* The circles on the timeline */
|
|
36
|
-
.
|
|
36
|
+
.timeline-container::after {
|
|
37
37
|
content: '';
|
|
38
38
|
position: absolute;
|
|
39
39
|
width: 25px;
|
|
@@ -47,25 +47,25 @@
|
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
@media screen and (max-width: 768px) {
|
|
50
|
-
.
|
|
50
|
+
.timeline-container div[class*='grid-'] {
|
|
51
51
|
grid-column: 1 / -1;
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
/* Place the container to the left */
|
|
56
|
-
.
|
|
56
|
+
.timeline-left {
|
|
57
57
|
left: 0;
|
|
58
58
|
padding-left: 10px;
|
|
59
59
|
}
|
|
60
60
|
|
|
61
61
|
/* Place the container to the right */
|
|
62
|
-
.
|
|
62
|
+
.timeline-right {
|
|
63
63
|
left: 50%;
|
|
64
64
|
padding-right: 10px;
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
/* Add arrows to the left container (pointing right) */
|
|
68
|
-
.
|
|
68
|
+
.timeline-left::before {
|
|
69
69
|
content: " ";
|
|
70
70
|
height: 0;
|
|
71
71
|
position: absolute;
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
}
|
|
80
80
|
|
|
81
81
|
/* Add arrows to the right container (pointing left) */
|
|
82
|
-
.
|
|
82
|
+
.timeline-right::before {
|
|
83
83
|
content: " ";
|
|
84
84
|
height: 0;
|
|
85
85
|
position: absolute;
|
|
@@ -93,12 +93,12 @@
|
|
|
93
93
|
}
|
|
94
94
|
|
|
95
95
|
/* Fix the circle for containers on the right side */
|
|
96
|
-
.
|
|
96
|
+
.timeline-right::after {
|
|
97
97
|
left: -16px;
|
|
98
98
|
}
|
|
99
99
|
|
|
100
100
|
/* The actual content */
|
|
101
|
-
.
|
|
101
|
+
.timeline-content {
|
|
102
102
|
padding: 10px;
|
|
103
103
|
background-color: #EEE;
|
|
104
104
|
position: relative;
|
|
@@ -113,14 +113,14 @@
|
|
|
113
113
|
}
|
|
114
114
|
|
|
115
115
|
/* Full-width containers */
|
|
116
|
-
.
|
|
116
|
+
.timeline-container {
|
|
117
117
|
width: 100%;
|
|
118
118
|
padding-left: 70px;
|
|
119
119
|
padding-right: 25px;
|
|
120
120
|
}
|
|
121
121
|
|
|
122
122
|
/* Make sure that all arrows are pointing leftwards */
|
|
123
|
-
.
|
|
123
|
+
.timeline-container::before {
|
|
124
124
|
left: 60px;
|
|
125
125
|
border: medium solid white;
|
|
126
126
|
border-width: 10px 10px 10px 0;
|
|
@@ -128,12 +128,12 @@
|
|
|
128
128
|
}
|
|
129
129
|
|
|
130
130
|
/* Make sure all circles are at the same spot */
|
|
131
|
-
.
|
|
131
|
+
.timeline-left::after, .timeline-right::after {
|
|
132
132
|
left: 15px;
|
|
133
133
|
}
|
|
134
134
|
|
|
135
135
|
/* Make all right containers behave like the left ones */
|
|
136
|
-
.
|
|
136
|
+
.timeline-right {
|
|
137
137
|
left: 0%;
|
|
138
138
|
}
|
|
139
|
-
}
|
|
139
|
+
}
|