АРХ - МЕЖПРОЕКТНАЯ КОММУНИКАЦИЯ: фундамент редизайна и фиксация UI-техдолга

This commit is contained in:
DCCONSTRUCTIONS
2026-04-22 14:30:51 +03:00
parent ecb31a78f9
commit 3f6219fc50
21 changed files with 385 additions and 61 deletions
@@ -73,7 +73,7 @@ export const FilterDisplayProperties = observer(function FilterDisplayProperties
type="button"
className={`rounded-full border-0 px-3 py-1.5 text-12 transition-all ${
displayProperties?.[displayProperty.key]
? "bg-[rgb(var(--nodedc-accent-rgb))] text-[#0b1117]"
? "bg-[rgb(var(--nodedc-accent-rgb))] text-[rgb(var(--nodedc-on-accent-rgb))]"
: "bg-white/5 text-secondary hover:bg-white/8"
}`}
onClick={() =>
@@ -29,7 +29,7 @@ export function FilterOption(props: Props) {
<div
className={`grid h-4 w-4 flex-shrink-0 place-items-center border-0 ${
isChecked
? "bg-[rgb(var(--nodedc-accent-rgb))] text-[#0b1117]"
? "bg-[rgb(var(--nodedc-accent-rgb))] text-[rgb(var(--nodedc-on-accent-rgb))]"
: "bg-white/6 text-transparent"
} rounded-full`}
>
@@ -48,7 +48,9 @@ export function LayoutSelection(props: Props) {
layout={layout.key}
size={14}
strokeWidth={2}
className={`size-3.5 ${selectedLayout == layout.key ? "text-[#0b1117]" : "text-secondary"}`}
className={`size-3.5 ${
selectedLayout == layout.key ? "text-[rgb(var(--nodedc-on-accent-rgb))]" : "text-secondary"
}`}
/>
</span>
</button>
@@ -27,7 +27,7 @@ export function MobileLayoutSelection({
<SelectionDropdown
menuButton={
<div className="nodedc-toolbar-pill relative flex items-center gap-2 px-3">
<span className="nodedc-toolbar-icon-active-dot bg-[rgb(var(--nodedc-accent-rgb))] text-[#0b1117]">
<span className="nodedc-toolbar-icon-active-dot bg-[rgb(var(--nodedc-accent-rgb))] text-[rgb(var(--nodedc-on-accent-rgb))]">
{activeLayout && (
<IssueLayoutIcon layout={activeLayout} size={14} strokeWidth={2} className="h-3.5 w-3.5" />
)}
@@ -75,7 +75,8 @@ export const InternalContourKanbanCard = observer(function InternalContourKanban
const selectedState = getStateById(issue.state_id);
const projectStateIds = issue.project_id ? getProjectStateIds(issue.project_id) : [];
const { pillBackgroundClasses, iconBubbleClasses } = getNodedcWorkItemCardAppearance(isActive);
const statusIconColor = selectedState?.color ?? (isActive ? "#111111" : "var(--text-color-primary)");
const statusIconColor =
selectedState?.color ?? (isActive ? "rgb(var(--nodedc-on-card-active-rgb))" : "var(--text-color-primary)");
const creatorName = creatorDetails?.display_name ?? t("common.none");
const dueDateLabel = issue.target_date ? renderFormattedDate(issue.target_date, "d MMM, yyyy") : t("common.none");
@@ -23,11 +23,13 @@ type TNodedcWorkItemCardProps = {
export const getNodedcWorkItemCardAppearance = (isActive: boolean) => ({
surfaceClassName: isActive
? "bg-[rgb(var(--nodedc-card-active-rgb))] text-[#111111]"
? "bg-[rgb(var(--nodedc-card-active-rgb))] text-[rgb(var(--nodedc-on-card-active-rgb))]"
: "bg-[rgb(var(--nodedc-card-passive-rgb))] text-white",
foregroundClasses: isActive ? "text-[#111111]" : "text-white",
foregroundClasses: isActive ? "text-[rgb(var(--nodedc-on-card-active-rgb))]" : "text-[rgb(var(--nodedc-on-card-passive-rgb))]",
subtleTextClasses: isActive ? "text-[#2F4721]" : "text-[#B3B3B8]",
pillBackgroundClasses: isActive ? "bg-black/10 text-[#111111]" : "bg-[rgb(var(--nodedc-card-passive-rgb))] text-white",
pillBackgroundClasses: isActive
? "bg-black/10 text-[rgb(var(--nodedc-on-card-active-rgb))]"
: "bg-[rgb(var(--nodedc-card-passive-rgb))] text-[rgb(var(--nodedc-on-card-passive-rgb))]",
iconBubbleClasses: isActive ? "bg-black text-[rgb(var(--nodedc-card-active-rgb))]" : "bg-[#111214] text-white",
});
@@ -435,7 +435,7 @@ export function ProjectDetailsForm(props: IProjectDetailsForm) {
type="submit"
loading={isLoading}
disabled={!isAdmin}
className="nodedc-settings-save-button min-w-[11.5rem] !text-[#0b1117] hover:!text-[#0b1117]"
className="nodedc-settings-save-button min-w-[11.5rem]"
>
{isLoading ? t("updating") : t("common.update_project")}
</Button>
@@ -57,7 +57,7 @@ export const ProjectFeatureUpdate = observer(function ProjectFeatureUpdate(props
<Link
href={`/${workspaceSlug}/projects/${projectId}/issues`}
onClick={onClose}
className="nodedc-modal-primary-button inline-flex min-w-[10.5rem] items-center justify-center !text-[#0b1117] hover:!text-[#0b1117]"
className="nodedc-modal-primary-button inline-flex min-w-[10.5rem] items-center justify-center"
tabIndex={2}
>
{t("open_project")}