Initial Drupal 11 with DDEV setup

This commit is contained in:
gluebox
2025-10-08 11:39:17 -04:00
commit 89ef74b305
25344 changed files with 2599172 additions and 0 deletions

View File

@ -0,0 +1,45 @@
.ckeditor5-toolbar-button-alignment\:left {
background-image: url(../icons/align-left.svg);
}
.ckeditor5-toolbar-button-alignment\:right {
background-image: url(../icons/align-right.svg);
}
.ckeditor5-toolbar-button-alignment\:center {
background-image: url(../icons/align-center.svg);
}
.ckeditor5-toolbar-button-alignment\:justify {
background-image: url(../icons/align-justify.svg);
}
.ckeditor5-toolbar-button-alignment {
background-image: url(../icons/align-left.svg);
}
.ckeditor5-toolbar-button-alignment {
display: flex;
align-items: center;
justify-content: flex-end;
padding-right: 20px;
background-position-x: 10px;
}
[dir="rtl"] .ckeditor5-toolbar-button-alignment {
padding-right: 0;
padding-left: 20px;
background-position-x: 30px;
}
.ckeditor5-toolbar-button-alignment::after {
position: relative;
right: -10px;
display: inline-block;
width: 7px;
height: 7px;
content: "";
transform: rotate(135deg);
color: #000;
border-width: 2px 2px 0 0;
border-style: solid;
background-position-x: -10px;
}
[dir="rtl"] .ckeditor5-toolbar-button-alignment::after {
right: 10px;
background-position-x: 10px;
}

View File

@ -0,0 +1,27 @@
.ckeditor5-toolbar-button-bold {
background-image: url(../icons/bold.svg);
}
.ckeditor5-toolbar-button-italic {
background-image: url(../icons/italic.svg);
}
.ckeditor5-toolbar-button-underline {
background-image: url(../icons/underline.svg);
}
.ckeditor5-toolbar-button-code {
background-image: url(../icons/code.svg);
}
.ckeditor5-toolbar-button-strikethrough {
background-image: url(../icons/strikethrough.svg);
}
.ckeditor5-toolbar-button-subscript {
background-image: url(../icons/subscript.svg);
}
.ckeditor5-toolbar-button-superscript {
background-image: url(../icons/superscript.svg);
}

View File

@ -0,0 +1,3 @@
.ckeditor5-toolbar-button-blockQuote {
background-image: url(../icons/blockquote.svg);
}

View File

@ -0,0 +1,3 @@
.ui-dialog ~ .ck-body-wrapper {
--ck-z-panel: 1261;
}

View File

@ -0,0 +1,3 @@
.ckeditor5-toolbar-button-codeBlock {
background-image: url(../icons/code-block.svg);
}

View File

@ -0,0 +1,4 @@
/* cspell:ignore medialibrary */
.ckeditor5-toolbar-button-drupalMedia {
background-image: url(../icons/medialibrary.svg);
}

View File

@ -0,0 +1,104 @@
/**
* @file
* Styles for the Drupal Media in CKEditor 5.
*
* Most of these styles are written to match those in the CKEditor 5 image
* plugin to provide a consistent editing experience.
*/
.ck .drupal-media {
position: relative;
display: table;
clear: both;
min-width: 50px;
}
.ck .drupal-media [data-drupal-media-preview] {
pointer-events: none;
}
.ck-content .drupal-media img {
display: block;
min-width: 100%;
max-width: 100%;
margin: 0 auto;
}
.ck-content .drupal-media > figcaption {
display: table-caption;
padding: 0.6em;
caption-side: bottom;
overflow-wrap: break-word;
color: hsl(0, 0%, 20%);
outline-offset: -1px;
background-color: hsl(0, 0%, 97%);
font-size: 0.75em;
}
.ck.ck-editor__editable .drupal-media__caption_highlighted {
animation: drupal-media-caption-highlight 0.6s ease-out;
}
@keyframes drupal-media-caption-highlight {
0% {
background-color: hsl(52, 100%, 50%);
}
100% {
background-color: hsl(0, 0%, 97%);
}
}
.ck .drupal-media__metadata-error {
position: absolute;
top: 8px;
right: 8px;
width: 28px;
height: 28px;
border: 1px solid #e29700;
border-radius: 50%;
background: #fdf8ed;
}
.ck .drupal-media__metadata-error-icon {
display: block;
width: 28px;
height: 28px;
background: url("../../../misc/icons/e29700/warning.svg") no-repeat center 4px;
background-size: 18px;
}
.ck .drupal-media__metadata-error .ck-tooltip {
display: block;
overflow: visible;
}
.ck .drupal-media__metadata-error:hover .ck-tooltip {
visibility: visible;
opacity: 1;
}
.ck .drupal-media__metadata-error:hover .ck-tooltip__text {
display: block;
width: 240px;
}
.ck.ck-media-alternative-text-form {
min-width: 300px;
max-width: 600px;
padding: 0;
}
.ck.ck-media-alternative-text-form .ck-labeled-field-view,
.ck.ck-media-alternative-text-form .ck-media-alternative-text-form__default-alt-text {
margin: var(--ck-spacing-large) var(--ck-spacing-large) var(--ck-spacing-small);
}
.ck.ck-media-alternative-text-form .ck-labeled-field-view .ck-input-text {
width: 100%;
}
.ck.ck-media-alternative-text-form .ck-button-save,
.ck.ck-media-alternative-text-form .ck-button-cancel {
width: 50%;
margin: var(--ck-spacing-large) 0 0 0;
padding: var(--ck-spacing-standard);
border: 0;
border-top: 1px solid var(--ck-color-base-border);
border-radius: 0;
}

View File

@ -0,0 +1,31 @@
/**
* @file
* Styles for the CKEditor 5 editor.
*/
/* Convert low opacity icons to full opacity. */
.ck-button:not(.ck-disabled) .ck-icon * {
opacity: 1 !important;
fill-opacity: 1 !important;
}
.ck-editor__main > :is(.ck-editor__editable, .ck-source-editing-area) {
/* Set the min-height equal to configuration value for the number of rows.
* The `--ck-min-height` value is set on the parent `.ck-editor` element by
* JavaScript. We add that there because the `.ck-editor__editable` element's
* inline styles are cleared on focus. */
min-height: var(--ck-min-height);
/* Set the max-height to not grow beyond the height of the viewport (minus
* any toolbars. */
max-height: calc(100vh - var(--drupal-displace-offset-top, 0px) - var(--drupal-displace-offset-bottom, 0px) - 20px);
}
/* Show the scrollbar on the source editing area. */
.ck-editor__main > .ck-source-editing-area textarea {
overflow: auto;
}
/* Enhance visibility of selected/active buttons on the toolbar. */
.ck-toolbar__items .ck.ck-button.ck-on {
border: 1px solid var(--ck-color-button-on-color);
}

View File

@ -0,0 +1,52 @@
.ckeditor5-toolbar-button-divider {
background-image: url(../icons/divider.svg);
}
.ckeditor5-toolbar-button-wrapping {
background-image: url(../icons/separator.svg);
}
.ckeditor5-toolbar-button-undo {
background-image: url(../icons/undo.svg);
}
.ckeditor5-toolbar-button-redo {
background-image: url(../icons/redo.svg);
}
.ckeditor5-toolbar-button-heading {
display: flex;
align-items: center;
justify-content: space-between;
width: 100px;
color: #000;
}
.ckeditor5-toolbar-button-heading::before {
margin-left: 10px;
/* For browsers which don't support alt content, eg FireFox */
content: "Heading";
content: "Heading" / "";
font-size: 14px;
}
[dir="rtl"] .ckeditor5-toolbar-button-heading::before {
margin-right: 10px;
margin-left: 0;
}
.ckeditor5-toolbar-button-heading::after {
display: inline-block;
width: 7px;
height: 7px;
margin-right: 10px;
content: "";
transform: rotate(135deg);
border-width: 2px 2px 0 0;
border-style: solid;
}
[dir="rtl"] .ckeditor5-toolbar-button-heading::after {
margin-right: 0;
margin-left: 10px;
}

View File

@ -0,0 +1,23 @@
/**
* @file
* Styles for header options in the admin UI.
*
* These styles are copied from CKEditor 5's editor styles, which load when an
* editor is present, but are not guaranteed to load in the admin UI.
*/
.ck.ck-heading_heading1 {
font-size: 20px;
}
.ck.ck-heading_heading2 {
font-size: 17px;
}
.ck.ck-heading_heading3 {
font-size: 14px;
}
.ck[class*="ck-heading_heading"] {
font-weight: bold;
}

View File

@ -0,0 +1,4 @@
/* cspell:ignore horizontalline */
.ckeditor5-toolbar-button-horizontalLine {
background-image: url(../icons/horizontalline.svg);
}

View File

@ -0,0 +1,3 @@
.ckeditor5-toolbar-button-drupalInsertImage {
background-image: url(../icons/image.svg);
}

View File

@ -0,0 +1,77 @@
/* cspell:ignore switchbutton */
/* https://css-tricks.com/the-raven-technique-one-step-closer-to-container-queries */
.ck .image,
.ck .image-inline {
--base-size: 100%;
--breakpoint-wide: 400px;
--breakpoint-medium: 100px;
--is-wide: clamp(0px, var(--base-size) - var(--breakpoint-wide), 1px);
--is-medium: calc(clamp(0px, var(--base-size) - var(--breakpoint-medium), 1px) - var(--is-wide));
--is-small: calc(1px - (var(--is-medium) + var(--is-wide)));
}
.ck.ck-responsive-form.ck-text-alternative-form--with-decorative-toggle {
width: auto;
}
.ck.ck-responsive-form .ck.ck-text-alternative-form__decorative-toggle,
.ck.ck-responsive-form .ck.ck-text-alternative-form__decorative-toggle .ck-switchbutton {
width: 100%;
}
.ck .image,
.ck .image-inline {
position: relative;
}
.ck .image-alternative-text-missing-wrapper {
position: absolute;
right: 10px;
bottom: 10px;
overflow: hidden;
max-width: calc((var(--is-small) * 0) + (var(--is-medium) * 33) + (var(--is-wide) * 999999));
border-left: calc((var(--is-small) * 0) + (var(--is-medium) * 3) + (var(--is-wide) * 3)) solid #ffd23f;
border-radius: 2px;
background: #232429;
font-size: 14px;
}
.ck figcaption ~ .image-alternative-text-missing-wrapper {
top: 10px;
bottom: auto;
}
.ck .image-alternative-text-missing-wrapper .ck.ck-button {
padding: 12px 12px 12px 8px;
cursor: pointer;
color: #fff;
background: none !important; /* Override background for all states. */
}
.ck .image-alternative-text-missing-wrapper .ck.ck-button::before {
width: 16px;
height: 16px;
padding-right: 8px;
content: "";
background: url("../icons/warning.svg") left center no-repeat;
}
.ck .image-alternative-text-missing-wrapper .ck.ck-button::after {
display: inline-block;
width: 12px;
height: 12px;
padding-left: 2rem;
content: "";
background: url("../icons/caret.svg") right center no-repeat;
font-size: 18px;
font-weight: bold;
}
.ck .image-alternative-text-missing-wrapper .ck-tooltip {
display: block;
overflow: visible;
}
.ck .image-alternative-text-missing-wrapper:hover .ck-tooltip {
visibility: visible;
opacity: 1;
}
.ck .image-alternative-text-missing-wrapper:hover .ck-tooltip__text {
display: block;
width: 240px;
}

View File

@ -0,0 +1,7 @@
.ckeditor5-toolbar-button-indent {
background-image: url(../icons/indent.svg);
}
.ckeditor5-toolbar-button-outdent {
background-image: url(../icons/outdent.svg);
}

View File

@ -0,0 +1,36 @@
.ckeditor5-toolbar-button-textPartLanguage {
display: flex;
align-items: center;
justify-content: space-between;
width: 110px;
color: #000;
}
.ckeditor5-toolbar-button-textPartLanguage::before {
margin-left: 10px;
/* For browsers which don't support alt content, eg FireFox */
content: "Language";
content: "Language" / "";
font-size: 14px;
}
[dir="rtl"] .ckeditor5-toolbar-button-textPartLanguage::before {
margin-right: 10px;
margin-left: 0;
}
.ckeditor5-toolbar-button-textPartLanguage::after {
display: inline-block;
width: 7px;
height: 7px;
margin-right: 10px;
content: "";
transform: rotate(135deg);
border-width: 2px 2px 0 0;
border-style: solid;
}
[dir="rtl"] .ckeditor5-toolbar-button-textPartLanguage::after {
margin-right: 0;
margin-left: 10px;
}

View File

@ -0,0 +1,19 @@
/**
* @file
* Language: add styling for elements that have a language attribute.
*/
/**
* Show the user that a 'lang' tag has been applied by adding a thin dotted
* border. We also append the value of the tag between brackets, for example:
* '(en)'. Since the html element has a 'lang' attribute too we only target
* elements within the html scope.
*/
.ck-content [lang] {
outline: 1px dotted gray;
}
.ck-content [lang]::after {
content: " (" attr(lang) ")";
color: #666;
font-size: 10px;
}

View File

@ -0,0 +1,3 @@
.ckeditor5-toolbar-button-link {
background-image: url(../icons/link.svg);
}

View File

@ -0,0 +1,8 @@
/* cspell:ignore bulletedlist numberedlist */
.ckeditor5-toolbar-button-bulletedList {
background-image: url(../icons/bulletedlist.svg);
}
.ckeditor5-toolbar-button-numberedList {
background-image: url(../icons/numberedlist.svg);
}

View File

@ -0,0 +1,18 @@
.ck-content .drupal-media-style-align-right {
float: right;
margin-left: 1.5rem;
}
.ck-content .drupal-media-style-align-left {
float: left;
margin-right: 1.5rem;
}
.ck-content .drupal-media-style-align-left,
.ck-content .drupal-media-style-align-right {
clear: both;
max-width: 50%;
}
.ck-content .drupal-media-style-align-center {
max-width: 50%;
margin-right: auto;
margin-left: auto;
}

View File

@ -0,0 +1,3 @@
.ckeditor5-toolbar-button-removeFormat {
background-image: url(../icons/remove-format.svg);
}

View File

@ -0,0 +1,3 @@
.ckeditor5-toolbar-button-showBlocks {
background-image: url(../icons/show-blocks.svg);
}

View File

@ -0,0 +1,3 @@
.ckeditor5-toolbar-button-sourceEditing {
background-image: url(../icons/source-editing.svg);
}

View File

@ -0,0 +1,3 @@
.ckeditor5-toolbar-button-specialCharacters {
background-image: url(../icons/special-characters.svg);
}

View File

@ -0,0 +1,36 @@
.ckeditor5-toolbar-button-style {
display: flex;
align-items: center;
justify-content: space-between;
width: 110px;
color: #000;
}
.ckeditor5-toolbar-button-style::before {
margin-left: 10px;
/* For browsers which don't support alt content, eg FireFox */
content: "Style";
content: "Style" / "";
font-size: 14px;
}
[dir="rtl"] .ckeditor5-toolbar-button-style::before {
margin-right: 10px;
margin-left: 0;
}
.ckeditor5-toolbar-button-style::after {
display: inline-block;
width: 7px;
height: 7px;
margin-right: 10px;
content: "";
transform: rotate(135deg);
border-width: 2px 2px 0 0;
border-style: solid;
}
[dir="rtl"] .ckeditor5-toolbar-button-style::after {
margin-right: 0;
margin-left: 10px;
}

View File

@ -0,0 +1,3 @@
.ckeditor5-toolbar-button-insertTable {
background-image: url(../icons/table.svg);
}

View File

@ -0,0 +1,11 @@
/**
* Allow users to specify the background color in all themes.
*
* (Users can set this using CKEditor 5's optional TableProperties and
* TableCellProperties plugins.)
*/
.ck tr,
.ck th,
.ck td {
background-color: transparent;
}

View File

@ -0,0 +1,99 @@
.ckeditor5-toolbar-disabled {
display: flex;
justify-content: space-between;
}
.ckeditor5-toolbar-available {
flex: 1;
}
.ckeditor5-toolbar-tray {
display: flex;
flex-flow: row wrap;
align-items: center;
min-height: 40px;
margin: 0 0 0.5em 0;
padding: 0;
list-style: none;
/* Disallow any user selections in the drag-and-drop toolbar config UI. */
user-select: none;
}
.ckeditor5-toolbar-active__buttons {
margin: 5px 0;
padding: 0.1667em 0.1667em 0.08em;
border: 1px solid #c4c4c4;
border-radius: 2px;
background: #fafafa;
}
.ckeditor5-toolbar-item,
.ckeditor5-toolbar-button {
display: block;
min-width: 36px;
height: 36px;
cursor: move;
border-radius: 2px;
}
.ckeditor5-toolbar-item {
position: relative;
margin: 5px 8px 5px 0;
}
.ckeditor5-toolbar-disabled .ckeditor5-toolbar-item {
border: 1px solid #e6e6e6;
}
.ckeditor5-toolbar-button {
border: none;
background-color: #eee;
background-repeat: no-repeat;
background-position: center;
background-size: 20px;
}
.ckeditor5-toolbar-button:focus,
.ckeditor5-toolbar-button:hover {
color: #000;
background-color: #e6e6e6;
}
.ckeditor5-toolbar-button:focus,
.ckeditor5-toolbar-button:hover,
.ckeditor5-toolbar-button {
text-decoration: none;
}
.ckeditor5-toolbar-tooltip {
position: absolute;
z-index: 1;
left: 50%;
display: block;
padding: 6px 10px;
transform: translate(-50%, 2px);
text-transform: capitalize;
color: #fff;
border-radius: 3px;
background: #333;
font-size: 12px;
line-height: 1;
}
.ckeditor5-toolbar-tooltip::before {
position: absolute;
top: -10px;
left: 50%;
width: 0;
height: 5px;
content: "";
transform: translateX(-50%);
border-right: solid 5px transparent;
border-bottom: solid 5px #333;
border-left: solid 5px transparent;
}
.ckeditor5-toolbar-button + .ckeditor5-toolbar-tooltip {
visibility: hidden;
}
.ckeditor5-toolbar-button[data-expanded="true"] + .ckeditor5-toolbar-tooltip {
visibility: visible;
}