From 103b774c5c83fa93b95f4be4dd03df904c377f83 Mon Sep 17 00:00:00 2001
From: Lauri Eskola <lauri.eskola@acquia.com>
Date: Tue, 11 Jul 2023 23:34:45 +0300
Subject: [PATCH] Issue #3365451 by amanire, Gauravvvv, smustgrave: Create new
 SDC component for Umami (disclaimer)

---
 core/profiles/demo_umami/demo_umami.info.yml  |  1 +
 .../disclaimer/disclaimer.component.yml       | 25 ++++++++++++
 .../components/disclaimer/disclaimer.css      | 38 +++++++++++++++++++
 .../components/disclaimer/disclaimer.twig     | 12 ++++++
 .../blocks/disclaimer/disclaimer.css          | 38 -------------------
 .../block--bundle--disclaimer-block.html.twig | 20 ++++++++++
 .../themes/umami/umami.libraries.yml          |  1 -
 7 files changed, 96 insertions(+), 39 deletions(-)
 create mode 100644 core/profiles/demo_umami/themes/umami/components/disclaimer/disclaimer.component.yml
 create mode 100644 core/profiles/demo_umami/themes/umami/components/disclaimer/disclaimer.css
 create mode 100644 core/profiles/demo_umami/themes/umami/components/disclaimer/disclaimer.twig
 delete mode 100644 core/profiles/demo_umami/themes/umami/css/components/blocks/disclaimer/disclaimer.css
 create mode 100644 core/profiles/demo_umami/themes/umami/templates/components/disclaimer/block--bundle--disclaimer-block.html.twig

diff --git a/core/profiles/demo_umami/demo_umami.info.yml b/core/profiles/demo_umami/demo_umami.info.yml
index c1ca1838a90f..8849ee6778e6 100644
--- a/core/profiles/demo_umami/demo_umami.info.yml
+++ b/core/profiles/demo_umami/demo_umami.info.yml
@@ -45,6 +45,7 @@ install:
   - locale
   - config_translation
   - content_translation
+  - sdc
 themes:
   - claro
   - umami
diff --git a/core/profiles/demo_umami/themes/umami/components/disclaimer/disclaimer.component.yml b/core/profiles/demo_umami/themes/umami/components/disclaimer/disclaimer.component.yml
new file mode 100644
index 000000000000..ea3ab4a1efdf
--- /dev/null
+++ b/core/profiles/demo_umami/themes/umami/components/disclaimer/disclaimer.component.yml
@@ -0,0 +1,25 @@
+# This is so your IDE knows about the syntax for fixes and autocomplete.
+$schema: https://git.drupalcode.org/project/sdc/-/raw/1.x/src/metadata.schema.json
+
+# The human readable name.
+name: Disclaimer
+
+# Status can be: "experimental", "stable", "deprecated", "obsolete".
+status: experimental
+
+# Schema for the props. We support www.json-schema.org. Learn more about the
+# syntax there.
+props:
+  # Props are always an object with keys. Each key is a variable in your
+  # component template.
+  type: object
+
+  properties:
+    disclaimer:
+      type: string
+      description: Disclaimer text
+    copyright:
+      type: string
+      description: Copyright text of Disclaimer
+      examples:
+        - Terms & Conditions
diff --git a/core/profiles/demo_umami/themes/umami/components/disclaimer/disclaimer.css b/core/profiles/demo_umami/themes/umami/components/disclaimer/disclaimer.css
new file mode 100644
index 000000000000..78254d954dc7
--- /dev/null
+++ b/core/profiles/demo_umami/themes/umami/components/disclaimer/disclaimer.css
@@ -0,0 +1,38 @@
+/**
+ * @file
+ * This file is used to style the disclaimer block.
+ */
+
+.disclaimer__disclaimer,
+.disclaimer__copyright {
+  display: block;
+  text-align: center;
+  font-size: 0.94rem;
+}
+
+@media screen and (min-width: 75rem) {
+  .disclaimer {
+    display: flex;
+    justify-content: space-between;
+  }
+
+  .disclaimer__disclaimer,
+  .disclaimer__copyright {
+    margin-bottom: 0;
+    text-align: start;
+  }
+
+  .disclaimer__disclaimer {
+    max-width: 40%;
+    margin-left: 0.5rem; /* LTR */
+  }
+
+  [dir="rtl"] .disclaimer__disclaimer {
+    margin-right: 0.5rem;
+    margin-left: 0;
+  }
+
+  .disclaimer__copyright {
+    width: 25%;
+  }
+}
diff --git a/core/profiles/demo_umami/themes/umami/components/disclaimer/disclaimer.twig b/core/profiles/demo_umami/themes/umami/components/disclaimer/disclaimer.twig
new file mode 100644
index 000000000000..61e91845d24e
--- /dev/null
+++ b/core/profiles/demo_umami/themes/umami/components/disclaimer/disclaimer.twig
@@ -0,0 +1,12 @@
+<div class="disclaimer">
+  {% if disclaimer %}
+    <div class="disclaimer__disclaimer">
+      {{ disclaimer }}
+    </div>
+  {% endif %}
+  {% if copyright %}
+    <div class="disclaimer__copyright">
+      {{ copyright }}
+    </div>
+  {% endif %}
+</div>
diff --git a/core/profiles/demo_umami/themes/umami/css/components/blocks/disclaimer/disclaimer.css b/core/profiles/demo_umami/themes/umami/css/components/blocks/disclaimer/disclaimer.css
deleted file mode 100644
index f1420da5ce23..000000000000
--- a/core/profiles/demo_umami/themes/umami/css/components/blocks/disclaimer/disclaimer.css
+++ /dev/null
@@ -1,38 +0,0 @@
-/**
- * @file
- * This file is used to style the disclaimer block.
- */
-
-.block-type-disclaimer-block .field--name-field-disclaimer,
-.block-type-disclaimer-block .field--name-field-copyright {
-  display: block;
-  text-align: center;
-  font-size: 0.94rem;
-}
-
-@media screen and (min-width: 75rem) {
-  .block-type-disclaimer-block {
-    display: flex;
-    justify-content: space-between;
-  }
-
-  .block-type-disclaimer-block .field--name-field-disclaimer,
-  .block-type-disclaimer-block .field--name-field-copyright {
-    margin-bottom: 0;
-    text-align: start;
-  }
-
-  .block-type-disclaimer-block .field--name-field-disclaimer {
-    max-width: 40%;
-    margin-left: 0.5rem; /* LTR */
-  }
-
-  [dir="rtl"] .block-type-disclaimer-block .field--name-field-disclaimer {
-    margin-right: 0.5rem;
-    margin-left: 0;
-  }
-
-  .block-type-disclaimer-block .field--name-field-copyright {
-    width: 25%;
-  }
-}
diff --git a/core/profiles/demo_umami/themes/umami/templates/components/disclaimer/block--bundle--disclaimer-block.html.twig b/core/profiles/demo_umami/themes/umami/templates/components/disclaimer/block--bundle--disclaimer-block.html.twig
new file mode 100644
index 000000000000..8c7b9621fde6
--- /dev/null
+++ b/core/profiles/demo_umami/themes/umami/templates/components/disclaimer/block--bundle--disclaimer-block.html.twig
@@ -0,0 +1,20 @@
+{% extends "block.html.twig" %}
+{#
+/**
+ * @file
+ * Theme override for a disclaimer block.
+ *
+ * Displays Umami Disclaimer and Copyright text.
+ *
+ * Available variables:
+ * - content.field_disclaimer: Content of Disclaimer formatted text field.
+ * - content.field_copyright: Content of Copyright formatted text field.
+ */
+#}
+{% block content %}
+  {% embed 'umami:disclaimer' with {
+    disclaimer: content.field_disclaimer,
+    copyright: content.field_copyright,
+  } only %}
+  {% endembed %}
+{% endblock %}
diff --git a/core/profiles/demo_umami/themes/umami/umami.libraries.yml b/core/profiles/demo_umami/themes/umami/umami.libraries.yml
index 802239312399..b52151317d41 100644
--- a/core/profiles/demo_umami/themes/umami/umami.libraries.yml
+++ b/core/profiles/demo_umami/themes/umami/umami.libraries.yml
@@ -6,7 +6,6 @@ global:
     component:
       css/components/blocks/banner/banner.css: {}
       css/components/blocks/branding/branding.css: {}
-      css/components/blocks/disclaimer/disclaimer.css: {}
       css/components/blocks/help/help.css: {}
       css/components/blocks/page-title/page-title.css: {}
       css/components/blocks/footer-promo/footer-promo.css: {}
-- 
GitLab