From b674239af2bc6f5150c5b64963cef5e0bf795622 Mon Sep 17 00:00:00 2001
From: "fanky.eu" <jakub.webisti@gmail.com>
Date: Fri, 16 Apr 2021 12:56:26 +0200
Subject: [PATCH] accordeon molecule

---
 .../03-buttons/03-button-sizes.mustache       | 17 +++++++++
 .../18-collapsibles/accordeon-row.mustache    |  9 +++++
 .../22-accordeon/accordeon.mustache           |  4 ++
 .../candidate-card-list.mustache              |  4 +-
 .../homepage-pirati-stan.mustache             | 38 +++++++++++++++++++
 source/css/atoms/collapsibles.pcss            | 34 +++++++++++++++++
 6 files changed, 104 insertions(+), 2 deletions(-)
 create mode 100644 source/_patterns/00-atoms/18-collapsibles/accordeon-row.mustache
 create mode 100644 source/_patterns/01-molecules/22-accordeon/accordeon.mustache
 create mode 100644 source/_patterns/03-templates/homepage-pirati-stan.mustache
 create mode 100644 source/css/atoms/collapsibles.pcss

diff --git a/source/_patterns/00-atoms/03-buttons/03-button-sizes.mustache b/source/_patterns/00-atoms/03-buttons/03-button-sizes.mustache
index 74aa5b6..20a370e 100644
--- a/source/_patterns/00-atoms/03-buttons/03-button-sizes.mustache
+++ b/source/_patterns/00-atoms/03-buttons/03-button-sizes.mustache
@@ -23,5 +23,22 @@
     <div>
       {{> atoms-basic-button(classes: "text-lg btn--condensed" )}}
     </div>
+    <div>
+      {{> atoms-basic-button(classes: "text-xl btn--condensed", bodyClasses: "py-4 leading-5" )}}
+    </div>
+  </div>
+  <div class="space-y-2">
+    <div>
+      {{> atoms-icon-button(classes: "text-sm btn--condensed" )}}
+    </div>
+    <div>
+      {{> atoms-icon-button(classes: "text-base btn--condensed" )}}
+    </div>
+    <div>
+      {{> atoms-icon-button(classes: "text-lg btn--condensed" )}}
+    </div>
+    <div>
+      {{> atoms-icon-button(icon: "ico--chevron-right", classes: "text-lg", bodyClasses: "py-8 leading-4", iconClasses: "px-8 bg-grey-800 border-grey-500" )}}
+    </div>
   </div>
 </div>
diff --git a/source/_patterns/00-atoms/18-collapsibles/accordeon-row.mustache b/source/_patterns/00-atoms/18-collapsibles/accordeon-row.mustache
new file mode 100644
index 0000000..2b020ce
--- /dev/null
+++ b/source/_patterns/00-atoms/18-collapsibles/accordeon-row.mustache
@@ -0,0 +1,9 @@
+<div class="accordeon-row">
+	<div class="accordeon-row-head" onclick="if(this.parentElement.classList.contains('accordeon-row--open')) this.parentElement.classList.remove('accordeon-row--open'); else this.parentElement.classList.add('accordeon-row--open');">
+		<h3 class="accordeon-row-heading head-alt-xs">{{ headline.short }}</h3>
+		<i class="ico--chevron-down"></i>
+	</div>
+	<div class="accordeon-row-body">
+		<p>{{ description }}</p>
+	</div>
+</div>
\ No newline at end of file
diff --git a/source/_patterns/01-molecules/22-accordeon/accordeon.mustache b/source/_patterns/01-molecules/22-accordeon/accordeon.mustache
new file mode 100644
index 0000000..a502599
--- /dev/null
+++ b/source/_patterns/01-molecules/22-accordeon/accordeon.mustache
@@ -0,0 +1,4 @@
+<div class="space-y-1">
+	{{> atoms-accordeon-row }}
+	{{> atoms-accordeon-row }}
+</div>
\ No newline at end of file
diff --git a/source/_patterns/02-organisms/01-candidates/candidate-card-list.mustache b/source/_patterns/02-organisms/01-candidates/candidate-card-list.mustache
index f22e702..d464460 100644
--- a/source/_patterns/02-organisms/01-candidates/candidate-card-list.mustache
+++ b/source/_patterns/02-organisms/01-candidates/candidate-card-list.mustache
@@ -3,10 +3,10 @@
   {{> molecules-candidate-card(wrapperClasses: "candidate-card-list__item-wrapper") }}
   {{> molecules-candidate-card(wrapperClasses: "candidate-card-list__item-wrapper") }}
   {{> molecules-candidate-card(wrapperClasses: "candidate-card-list__item-wrapper") }}
-  {{> molecules-candidate-card(wrapperClasses: "candidate-card-list__item-wrapper candidate-card-list__item-wrapper--last") }}
   {{> molecules-candidate-card(wrapperClasses: "candidate-card-list__item-wrapper") }}
   {{> molecules-candidate-card(wrapperClasses: "candidate-card-list__item-wrapper") }}
   {{> molecules-candidate-card(wrapperClasses: "candidate-card-list__item-wrapper") }}
   {{> molecules-candidate-card(wrapperClasses: "candidate-card-list__item-wrapper") }}
-  {{> molecules-candidate-card(wrapperClasses: "candidate-card-list__item-wrapper  candidate-card-list__item-wrapper--last") }}
+  {{> molecules-candidate-card(wrapperClasses: "candidate-card-list__item-wrapper") }}
+  {{> molecules-candidate-card(wrapperClasses: "candidate-card-list__item-wrapper") }}
 </div>
diff --git a/source/_patterns/03-templates/homepage-pirati-stan.mustache b/source/_patterns/03-templates/homepage-pirati-stan.mustache
new file mode 100644
index 0000000..f13bda4
--- /dev/null
+++ b/source/_patterns/03-templates/homepage-pirati-stan.mustache
@@ -0,0 +1,38 @@
+{{> organisms-header }}
+{{> organisms-hero-pirati-stan }}
+
+<div class="container container--default lg:pb-24">
+  <section>
+    <h1 class="head-alt-md md:head-alt-lg pb-4 lg:pb-8 mt-10 md:mt-24">Aktuality</h1>
+    {{> organisms-article-card-list-pirati-stan(onlyThree: true) }}
+
+    <nav class="text-center">
+      {{> atoms-icon-button(cta: "Další články", icon: "ico--chevron-right", classes: "text-xl pt-8") }}
+    </nav>
+  </section>
+
+  <section class="my-8 lg:my-16 container-padding--zero lg:container-padding--auto">
+    {{> molecules-banner }}
+  </section>
+
+  <section>
+    <h1 class="head-alt-md md:head-alt-lg pb-4 lg:pb-8 mt-10 md:mt-24">Výpis kandidátů</h1>
+    {{> organisms-candidate-card-list-pirati-stan(onlyEight: true) }}
+
+    <nav class="text-center">
+      {{> atoms-icon-button(cta: "Zobrazit výpis", icon: "ico--chevron-right", classes: "text-lg my-8 mx-4", bodyClasses: "py-8 leading-4", iconClasses: "px-8 bg-grey-800 border-grey-500" )}}
+      {{> atoms-icon-button(cta: "Filtrovat pomocí mapy", icon: "ico--chevron-right", classes: "text-lg my-8 mx-4", bodyClasses: "sm:whitespace-nowrap py-8 leading-4", iconClasses: "px-8 bg-grey-800 border-grey-500" )}}
+    </nav>
+  </section>
+
+  <section class="my-8 lg:my-16 container-padding--zero lg:container-padding--auto">
+    {{> organisms-countdown }}
+  </section>
+
+  <div class="flex flex-col lg:flex-row lg:space-x-8">
+    {{> atoms-super-button(cta: "Sledujte nás na Facebooku", icon: "ico--facebook", classes: "bg-brands-facebook text-white container-padding--zero lg:container-padding--auto lg:w-full") }}
+    {{> atoms-super-button(cta: "Sledujte naše fórum", icon: "ico--bubbles", classes: "bg-black text-white container-padding--zero lg:container-padding--auto lg:w-full") }}
+  </div>
+</div>
+
+{{> organisms-footer }}
diff --git a/source/css/atoms/collapsibles.pcss b/source/css/atoms/collapsibles.pcss
new file mode 100644
index 0000000..2b6ff34
--- /dev/null
+++ b/source/css/atoms/collapsibles.pcss
@@ -0,0 +1,34 @@
+.accordeon-row{
+	@apply bg-grey-125;
+}
+.accordeon-row-head{
+	@apply relative p-8 cursor-pointer;
+
+	.accordeon-row-heading{
+		padding-top: 1px; /*font vertical center fix*/
+	}
+	i{
+		@apply absolute top-1/2 right-8 transform -translate-y-2/4 transition transition-transform duration-500;
+	}
+}
+.accordeon-row-body{
+	@apply leading-loose overflow-hidden max-h-0;
+	
+	-moz-transition: max-height 0.5s ease;
+	-webkit-transition: max-height 0.5s ease;
+	-o-transition: max-height 0.5s ease;
+	transition: max-height 0.5s ease;
+	p{
+	  	@apply px-8 pt-8 pb-14;
+	}
+}
+
+.accordeon-row--open{
+	@apply bg-black text-white;
+	i{
+		@apply absolute top-1/2 right-8 transform -translate-y-2/4 rotate-90;
+	}
+	.accordeon-row-body{
+		max-height: 1000px;
+	}
+}
\ No newline at end of file
-- 
GitLab