Files
healthchat-web/res/css/views/elements/_Field.pcss
Michael Telatynski 2ccac7fe57 Merge branch 'develop' of github.com:element-hq/matrix-react-sdk into t3chguy/dedup-icons
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	playwright/snapshots/file-upload/image-upload.spec.ts/image-upload-preview-linux.png
#	playwright/snapshots/invite/invite-dialog.spec.ts/invite-dialog-dm-with-user-pill-linux.png
#	playwright/snapshots/invite/invite-dialog.spec.ts/invite-dialog-dm-without-user-linux.png
#	playwright/snapshots/permalinks/permalinks.spec.ts/permalink-rendering-linux.png
#	playwright/snapshots/polls/polls.spec.ts/Polls-Timeline-tile-no-votes-linux.png
#	playwright/snapshots/polls/polls.spec.ts/ThreadView-with-a-poll-on-bubble-layout-linux.png
#	playwright/snapshots/polls/polls.spec.ts/ThreadView-with-a-poll-on-group-layout-linux.png
#	playwright/snapshots/release-announcement/releaseAnnouncement.spec.ts/release-announcement-Threads-Activity-Centre-linux.png
#	playwright/snapshots/right-panel/file-panel.spec.ts/file-tiles-list-linux.png
#	playwright/snapshots/room-directory/room-directory.spec.ts/filtered-no-results-linux.png
#	playwright/snapshots/room-directory/room-directory.spec.ts/filtered-one-result-linux.png
#	playwright/snapshots/room/room-header.spec.ts/encrypted-room-header-linux.png
#	playwright/snapshots/room/room-header.spec.ts/room-header-highlighted-linux.png
#	playwright/snapshots/room/room-header.spec.ts/room-header-linux.png
#	playwright/snapshots/room/room-header.spec.ts/room-header-long-name-linux.png
#	playwright/snapshots/room/room-header.spec.ts/room-header-video-room-linux.png
#	playwright/snapshots/room/room-header.spec.ts/room-header-with-apps-button-highlighted-linux.png
#	playwright/snapshots/room/room-header.spec.ts/room-header-with-apps-button-not-highlighted-linux.png
#	playwright/snapshots/settings/appearance-user-settings-tab/appearance-user-settings-tab.spec.ts/appearance-tab-linux.png
#	playwright/snapshots/settings/appearance-user-settings-tab/appearance-user-settings-tab.spec.ts/window-12px-linux.png
#	playwright/snapshots/settings/general-room-settings-tab.spec.ts/General-room-settings-tab-should-be-rendered-properly-1-linux.png
#	playwright/snapshots/settings/general-user-settings-tab.spec.ts/general-linux.png
#	playwright/snapshots/settings/general-user-settings-tab.spec.ts/general-smallscreen-linux.png
#	playwright/snapshots/settings/preferences-user-settings-tab.spec.ts/Preferences-user-settings-tab-should-be-rendered-properly-1-linux.png
#	playwright/snapshots/settings/security-user-settings-tab.spec.ts/Security-user-settings-tab-with-posthog-enable-b5d89-csLearnMoreDialog-should-be-rendered-properly-1-linux.png
#	playwright/snapshots/spaces/spaces.spec.ts/space-panel-expanded-linux.png
#	playwright/snapshots/spaces/threads-activity-centre/threadsActivityCentre.spec.ts/tac-button-expanded-linux.png
#	playwright/snapshots/spaces/threads-activity-centre/threadsActivityCentre.spec.ts/tac-hovered-expanded-linux.png
#	playwright/snapshots/threads/threads.spec.ts/Reply-to-the-location-on-ThreadView-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/collapsed-gels-and-messages-irc-layout-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/collapsed-gels-bubble-layout-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/configured-room-irc-layout-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/event-line-inline-start-margin-irc-layout-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/event-tiles-bubble-layout-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/event-tiles-compact-modern-layout-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/event-tiles-irc-layout-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/event-tiles-modern-layout-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-and-messages-irc-layout-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-bubble-layout-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-emote-irc-layout-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-irc-layout-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-modern-layout-linux.png
#	playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-redaction-placeholder-linux.png
#	playwright/snapshots/user-onboarding/user-onboarding-new.spec.ts/User-Onboarding-new-user-page-is-shown-and-preference-exists-1-linux.png
#	playwright/snapshots/user-view/user-view.spec.ts/user-info-linux.png
#	res/css/_common.pcss
#	res/css/structures/_SearchBox.pcss
#	res/css/structures/_UserMenu.pcss
#	res/css/views/dialogs/_UserSettingsDialog.pcss
#	res/css/views/elements/_ImageView.pcss
#	res/css/views/right_panel/_RoomSummaryCard.pcss
#	res/css/views/rooms/_PinnedEventTile.pcss
#	src/components/structures/RoomStatusBar.tsx
#	src/components/views/beacon/DialogSidebar.tsx
#	src/components/views/beacon/RoomLiveShareWarning.tsx
#	src/components/views/messages/MessageActionBar.tsx
#	src/components/views/right_panel/PinnedMessagesCard.tsx
#	src/components/views/rooms/RoomKnocksBar.tsx
#	src/components/views/settings/tabs/room/PeopleRoomSettingsTab.tsx
#	src/voice-broadcast/components/atoms/VoiceBroadcastHeader.tsx
#	src/voice-broadcast/components/molecules/VoiceBroadcastSmallPlaybackBody.tsx
2024-10-04 10:48:28 +01:00

185 lines
4.4 KiB
Plaintext

/*
Copyright 2019-2024 New Vector Ltd.
SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only
Please see LICENSE files in the repository root for full details.
*/
/* TODO: Consider unifying with general input styles in _light.pcss */
.mx_Field {
display: flex;
flex: 1;
min-width: 0;
position: relative;
margin: 1em 0;
border-radius: 8px;
transition: border-color 0.25s;
border: 1px solid var(--cpd-color-border-interactive-secondary);
}
.mx_Field_prefix {
border-right: 1px solid var(--cpd-color-border-interactive-secondary);
}
.mx_Field_postfix {
border-left: 1px solid var(--cpd-color-border-interactive-secondary);
}
.mx_Field input,
.mx_Field select,
.mx_Field textarea {
font: var(--cpd-font-body-md-regular);
border: none;
/* Even without a border here, we still need this avoid overlapping the rounded */
/* corners on the field above. */
border-radius: 8px;
padding: 8px 9px;
color: $primary-content;
background-color: $background;
flex: 1;
min-width: 0;
}
.mx_Field select {
-moz-appearance: none;
-webkit-appearance: none;
text-overflow: ellipsis;
}
/* Can't add pseudo-elements to a select directly, so we use its parent. */
.mx_Field_select::before {
content: "";
position: absolute;
top: 15px;
right: 10px;
width: 10px;
height: 6px;
mask: url("@vector-im/compound-design-tokens/icons/chevron-down.svg");
mask-repeat: no-repeat;
background-color: $primary-content;
z-index: 1;
pointer-events: none;
}
.mx_Field:focus-within {
border-color: $accent-alt;
}
.mx_Field input:focus,
.mx_Field select:focus,
.mx_Field textarea:focus {
outline: 0;
}
.mx_Field input::placeholder,
.mx_Field textarea::placeholder {
transition: color 0.25s ease-in 0s;
color: transparent;
}
.mx_Field input:placeholder-shown:focus::placeholder,
.mx_Field textarea:placeholder-shown:focus::placeholder,
.mx_Field.mx_Field_placeholderIsHint input::placeholder {
transition: color 0.25s ease-in 0.1s;
color: $info-plinth-fg-color;
}
.mx_Field label {
transition:
font-size 0.25s ease-out 0.1s,
color 0.25s ease-out 0.1s,
transform 0.25s ease-out 0.1s,
background-color 0.25s ease-out 0.1s;
background-color: transparent;
font: var(--cpd-font-body-md-regular);
color: var(--cpd-color-text-secondary);
transform: translateY(0);
position: absolute;
left: 0px;
margin: 7px 8px;
padding: 2px;
pointer-events: none; /* Allow clicks to fall through to the input */
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
max-width: calc(100% - 20px); /* 100% of parent minus margin and padding */
}
.mx_Field_labelAlwaysTopLeft label,
.mx_Field select + label /* Always show a select's label on top to not collide with the value */,
.mx_Field input:focus + label,
.mx_Field input:not(:placeholder-shown) + label,
.mx_Field textarea:focus + label,
.mx_Field textarea:not(:placeholder-shown) + label {
transition:
font-size 0.25s ease-out 0s,
color 0.25s ease-out 0s,
transform 0.25s ease-out 0s,
background-color 0.25s ease-out 0s;
font-size: $font-10px;
transform: translateY(-13px);
padding: 0 2px;
background-color: $background;
pointer-events: initial;
}
.mx_Field input:focus + label,
.mx_Field select:focus + label,
.mx_Field textarea:focus + label {
color: $accent-alt;
}
.mx_Field select:disabled,
.mx_Field select:disabled + label,
.mx_Field input:disabled,
.mx_Field input:disabled + label,
.mx_Field textarea:disabled,
.mx_Field textarea:disabled + label {
background-color: $background;
color: $info-plinth-fg-color;
}
.mx_Field_valid {
&.mx_Field,
&.mx_Field:focus-within {
border-color: $accent;
}
&.mx_Field label,
&.mx_Field:focus-within label {
color: $accent;
}
}
.mx_Field_invalid {
&.mx_Field,
&.mx_Field:focus-within {
border-color: $alert;
}
&.mx_Field label,
&.mx_Field:focus-within label {
color: $alert;
}
}
.mx_Field_tooltip {
width: 200px;
}
.mx_Field_tooltip.mx_Field_valid {
animation: mx_fadeout 1s 2s forwards;
}
/* Customise other components when placed inside a Field */
.mx_Field .mx_Dropdown_input {
border: initial;
border-radius: initial;
}
.mx_Field .mx_CountryDropdown {
width: fit-content;
}