From 5ced66195790643f0451607acdb4d7e73f1d9f70 Mon Sep 17 00:00:00 2001 From: Ivan Mitev Date: Tue, 21 Jul 2026 14:25:29 +0300 Subject: [PATCH 1/2] FEAT: Contact us support type --- .../contact-us/contact-us-form.component.css | 52 +++++++++++++++++++ .../contact-us/contact-us-form.component.html | 28 ++++++++++ .../contact-us-form.component.spec.ts | 3 ++ .../contact-us/contact-us-form.component.ts | 9 +++- src/assets/i18n/en.json | 10 ++++ src/assets/i18n/es.json | 10 ++++ 6 files changed, 111 insertions(+), 1 deletion(-) diff --git a/src/app/pages/contact-us/contact-us-form.component.css b/src/app/pages/contact-us/contact-us-form.component.css index eefb9e36..e2c8d182 100644 --- a/src/app/pages/contact-us/contact-us-form.component.css +++ b/src/app/pages/contact-us/contact-us-form.component.css @@ -121,6 +121,58 @@ color: #858b99; } +.contact-select-wrap { + position: relative; + width: 100%; +} + +.contact-select { + width: 100%; + height: 40px; + border: 1px solid #bcbfc7; + border-radius: 6px; + background: #ffffff; + color: #131b25; + padding: 8px 40px 8px 12px; + font-size: clamp(0.95rem, 0.92rem + 0.1vw, 1rem); + line-height: 24px; + outline: none; + cursor: pointer; + appearance: none; + -webkit-appearance: none; + -moz-appearance: none; + transition: + border-color 0.2s ease, + box-shadow 0.2s ease, + background-color 0.2s ease; +} + +.contact-select-placeholder { + color: #858b99; +} + +.contact-select:hover { + border-color: #9da6b2; +} + +.contact-select:focus { + border-color: #3d71cc; + box-shadow: 0 0 0 3px rgba(61, 113, 204, 0.14); +} + +.contact-select-wrap::after { + content: ""; + position: absolute; + top: 50%; + right: 14px; + width: 10px; + height: 10px; + transform: translateY(-70%) rotate(45deg); + border-right: 2px solid #4c5a6b; + border-bottom: 2px solid #4c5a6b; + pointer-events: none; +} + .contact-input:hover, .contact-textarea:hover { border-color: #9da6b2; diff --git a/src/app/pages/contact-us/contact-us-form.component.html b/src/app/pages/contact-us/contact-us-form.component.html index dbec228e..1277aacb 100644 --- a/src/app/pages/contact-us/contact-us-form.component.html +++ b/src/app/pages/contact-us/contact-us-form.component.html @@ -33,6 +33,34 @@

+
+ + +
+ +
+ + @if (hasError('supportType')) { + + {{ "ContactUs.validation.required" | translate }} + + } +
+
+ +
diff --git a/src/app/pages/landing-pages/customers/landing-customers-procure-steps/landing-customers-procure-steps.component.ts b/src/app/pages/landing-pages/customers/landing-customers-procure-steps/landing-customers-procure-steps.component.ts index 8f894883..add0b1dc 100644 --- a/src/app/pages/landing-pages/customers/landing-customers-procure-steps/landing-customers-procure-steps.component.ts +++ b/src/app/pages/landing-pages/customers/landing-customers-procure-steps/landing-customers-procure-steps.component.ts @@ -1,4 +1,4 @@ -import { Component } from "@angular/core"; +import { Component, input } from "@angular/core"; import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; import { faBagShopping, faHandshake, faMagnifyingGlass, faUser } from '@fortawesome/pro-solid-svg-icons'; import { TranslateModule } from '@ngx-translate/core'; @@ -17,6 +17,8 @@ type ProcureStep = { styleUrl: "./landing-customers-procure-steps.component.css" }) export class LandingCustomersProcureStepsComponent { + url = input.required(); + steps: ProcureStep[] = [ { key: 'step1', icon: faUser }, { key: 'step2', icon: faMagnifyingGlass }, diff --git a/src/app/pages/landing-pages/customers/landing-page-customers.component.html b/src/app/pages/landing-pages/customers/landing-page-customers.component.html index 65c60249..4643be9c 100644 --- a/src/app/pages/landing-pages/customers/landing-page-customers.component.html +++ b/src/app/pages/landing-pages/customers/landing-page-customers.component.html @@ -3,6 +3,6 @@ - + diff --git a/src/assets/i18n/en.json b/src/assets/i18n/en.json index 7370816a..a6a3ca09 100644 --- a/src/assets/i18n/en.json +++ b/src/assets/i18n/en.json @@ -531,7 +531,8 @@ "step4": { "_title": "Engage providers and complete procurement" } - } + }, + "_ctaButton": "Start your onboarding journey" }, "buyOptions": { "_title": "Choose how you buy", diff --git a/src/assets/i18n/es.json b/src/assets/i18n/es.json index 7370816a..a6a3ca09 100644 --- a/src/assets/i18n/es.json +++ b/src/assets/i18n/es.json @@ -531,7 +531,8 @@ "step4": { "_title": "Engage providers and complete procurement" } - } + }, + "_ctaButton": "Start your onboarding journey" }, "buyOptions": { "_title": "Choose how you buy",