diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..723ef36 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.idea \ No newline at end of file diff --git a/frontend/assets/css/input.comp.css b/frontend/assets/css/input.comp.css index 391c5d0..5c82387 100644 --- a/frontend/assets/css/input.comp.css +++ b/frontend/assets/css/input.comp.css @@ -1,6 +1,6 @@ @utility input-outlined-error { @apply text-danger-600 border-danger-600; - svg[class~=iconify] path { + svg[class~=iconify]:not(.static-icon) path { @apply stroke-danger-600; } } @@ -11,7 +11,7 @@ @utility input-outlined-disabled { @apply text-slate-300 border-slate-200; - svg[class~=iconify] path { + svg[class~=iconify]:not(.static-icon) path { @apply stroke-slate-300; } } @@ -28,7 +28,7 @@ &:focus-within { @apply border-black text-black; - svg[class~=iconify] path { + svg[class~=iconify]:not(.static-icon) path { @apply stroke-black; } } @@ -37,7 +37,7 @@ @utility input-outlined { @apply text-slate-500 border-slate-200; - svg[class~=iconify] path { + svg[class~=iconify]:not(.static-icon) path { @apply stroke-slate-500; } } diff --git a/frontend/assets/css/tailwind.css b/frontend/assets/css/tailwind.css index ce44cf6..5143a81 100644 --- a/frontend/assets/css/tailwind.css +++ b/frontend/assets/css/tailwind.css @@ -10,6 +10,11 @@ @import "./fonts/yekan-bakh.css"; @theme { + + /* CONTAINER */ + + --app-container-padding: 20px; + /* COLORS */ --color-slate-50: hsl(210, 40%, 98%); --color-slate-100: hsl(210, 40%, 96%); @@ -128,6 +133,8 @@ /* ANIMATIONS */ --animate-marquee: marquee 20s linear infinite; --animate-marquee-reverse: marquee 20s linear infinite reverse; + --animate-fade-in: fadeIn 350ms ease-in-out; + --animate-slide-down: slideDown 300ms ease-out; --animate-slide-up: slideUp 300ms ease-out; --animate-overlay-show: overlayShow 150ms ease-in; @@ -148,6 +155,16 @@ } } + @keyframes fadeIn { + from { + opacity: 0; + } + + to { + opacity: 1; + } + } + @keyframes slideDown { from { height: 0; @@ -265,31 +282,7 @@ /* CONTAINER */ @utility container { - @apply mx-auto px-6; - - @screen 2xs { - @apply px-4; - } - - @screen xs { - @apply px-4; - } - - @screen sm { - @apply px-4; - } - - @screen md { - @apply px-8; - } - - @screen lg { - @apply px-12; - } - - @screen xl { - @apply px-20; - } + @apply mx-auto px-[var(--app-container-padding)]; } @layer { diff --git a/frontend/components/global/Input.vue b/frontend/components/global/Input.vue index f467f30..014c7a0 100644 --- a/frontend/components/global/Input.vue +++ b/frontend/components/global/Input.vue @@ -15,7 +15,7 @@ const props = withDefaults(defineProps(), { disabled: false, placeholder: "وارد نشده", }); -const { variant, message, error, disabled, modelValue } = toRefs(props); +const { variant, error, modelValue } = toRefs(props); // emits @@ -29,7 +29,7 @@ const inputRef = ref(null); const value = computed({ get: () => modelValue.value ?? "", - set: (value) => emit("update:modelValue", value), + set: (value) => emit("update:modelValue", value) }); const classes = computed(() => { @@ -41,8 +41,8 @@ const classes = computed(() => { "input-effects": !error.value, [variant.value === "solid" ? "input-solid-error" - : "input-outlined-error"]: error.value, - }, + : "input-outlined-error"]: error.value + } ]; }); diff --git a/frontend/components/global/ProductsGrid.vue b/frontend/components/global/ProductsGrid.vue new file mode 100644 index 0000000..0b57388 --- /dev/null +++ b/frontend/components/global/ProductsGrid.vue @@ -0,0 +1,42 @@ + + + \ No newline at end of file diff --git a/frontend/components/global/ServiceHighlights.vue b/frontend/components/global/ServiceHighlights.vue index 296387e..ea8e905 100644 --- a/frontend/components/global/ServiceHighlights.vue +++ b/frontend/components/global/ServiceHighlights.vue @@ -35,11 +35,11 @@ const highlights = ref([