added additional plugins
This commit is contained in:
parent
c85895d306
commit
00e60ec1b7
132 changed files with 27514 additions and 0 deletions
292
native/wordpress/maple-code-blocks/assets/css/block-editor.css
Normal file
292
native/wordpress/maple-code-blocks/assets/css/block-editor.css
Normal file
|
|
@ -0,0 +1,292 @@
|
|||
/**
|
||||
* GitHub Code Viewer Block Editor Styles
|
||||
*/
|
||||
|
||||
/* Block Editor Wrapper */
|
||||
.mcb-block-editor {
|
||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;
|
||||
}
|
||||
|
||||
/* Block Preview */
|
||||
.mcb-block-preview {
|
||||
min-height: 200px;
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
|
||||
.mcb-block-preview:hover {
|
||||
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
/* Preview Header */
|
||||
.mcb-preview-header {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
padding-bottom: 10px;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
.mcb-preview-header svg {
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
/* Preview Info Grid */
|
||||
.mcb-preview-info {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 15px;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
.mcb-preview-info > div {
|
||||
padding: 5px 10px;
|
||||
background: rgba(0, 0, 0, 0.05);
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
.editor-styles-wrapper .mcb-block-preview.theme-dark .mcb-preview-info > div {
|
||||
background: rgba(255, 255, 255, 0.1);
|
||||
}
|
||||
|
||||
/* Inspector Controls Customization */
|
||||
.mcb-height-control {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.mcb-height-control label {
|
||||
display: block;
|
||||
margin-bottom: 5px;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
/* Popular Repos Buttons */
|
||||
.mcb-popular-repos {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 5px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
/* Validation States */
|
||||
.mcb-validation-success {
|
||||
color: #00a32a;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 5px;
|
||||
margin-top: 8px;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
.mcb-validation-error {
|
||||
color: #cc1818;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 5px;
|
||||
margin-top: 8px;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
/* Loading State */
|
||||
.mcb-loading {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: 20px;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.mcb-loading .components-spinner {
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
/* Placeholder Styles */
|
||||
.wp-block-maple-code-blocks-code-viewer .components-placeholder {
|
||||
min-height: 200px;
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
}
|
||||
|
||||
.wp-block-maple-code-blocks-code-viewer .components-placeholder .components-placeholder__label {
|
||||
font-size: 18px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.wp-block-maple-code-blocks-code-viewer .components-placeholder .components-placeholder__instructions {
|
||||
font-size: 14px;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
/* Quick Start Section */
|
||||
.mcb-quick-start {
|
||||
margin-top: 15px;
|
||||
padding-top: 15px;
|
||||
border-top: 1px solid rgba(255, 255, 255, 0.2);
|
||||
}
|
||||
|
||||
.mcb-quick-start strong {
|
||||
display: block;
|
||||
margin-bottom: 10px;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.mcb-quick-start .components-button {
|
||||
margin: 2px;
|
||||
}
|
||||
|
||||
/* Block Alignment Support */
|
||||
.wp-block-maple-code-blocks-code-viewer.alignwide {
|
||||
max-width: 1280px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
.wp-block-maple-code-blocks-code-viewer.alignfull {
|
||||
max-width: none;
|
||||
margin-left: calc(50% - 50vw);
|
||||
margin-right: calc(50% - 50vw);
|
||||
width: 100vw;
|
||||
}
|
||||
|
||||
/* Panel Body Customization */
|
||||
.components-panel__body .mcb-repo-input {
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
.components-panel__body .mcb-theme-preview {
|
||||
padding: 10px;
|
||||
border-radius: 4px;
|
||||
margin-top: 10px;
|
||||
font-family: 'Monaco', 'Menlo', monospace;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.components-panel__body .mcb-theme-preview.dark {
|
||||
background: #1e1e1e;
|
||||
color: #d4d4d4;
|
||||
}
|
||||
|
||||
.components-panel__body .mcb-theme-preview.light {
|
||||
background: #ffffff;
|
||||
color: #333333;
|
||||
border: 1px solid #e0e0e0;
|
||||
}
|
||||
|
||||
/* External Link Style */
|
||||
.components-external-link {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
margin-top: 10px;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
/* Toolbar Buttons */
|
||||
.block-editor-block-toolbar .mcb-toolbar-group {
|
||||
border-right: 1px solid #e0e0e0;
|
||||
padding-right: 6px;
|
||||
margin-right: 6px;
|
||||
}
|
||||
|
||||
/* Notice Improvements */
|
||||
.components-notice.mcb-notice {
|
||||
margin: 10px 0;
|
||||
}
|
||||
|
||||
.components-notice.mcb-notice .components-notice__content {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
/* Selected State */
|
||||
.wp-block-maple-code-blocks-code-viewer.is-selected .mcb-block-preview {
|
||||
box-shadow: 0 0 0 1px #007cba;
|
||||
}
|
||||
|
||||
/* Help Text */
|
||||
.components-base-control__help {
|
||||
font-size: 12px;
|
||||
font-style: italic;
|
||||
color: #757575;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
/* File Selector */
|
||||
.mcb-file-selector {
|
||||
max-height: 200px;
|
||||
overflow-y: auto;
|
||||
border: 1px solid #e0e0e0;
|
||||
border-radius: 4px;
|
||||
padding: 5px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.mcb-file-selector .mcb-file-option {
|
||||
padding: 5px 10px;
|
||||
cursor: pointer;
|
||||
font-size: 13px;
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
.mcb-file-selector .mcb-file-option:hover {
|
||||
background: #f0f0f0;
|
||||
}
|
||||
|
||||
.mcb-file-selector .mcb-file-option.selected {
|
||||
background: #007cba;
|
||||
color: white;
|
||||
}
|
||||
|
||||
/* Responsive Design */
|
||||
@media (max-width: 782px) {
|
||||
.mcb-preview-info {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.mcb-quick-start .components-button {
|
||||
font-size: 12px;
|
||||
padding: 4px 8px;
|
||||
}
|
||||
}
|
||||
|
||||
/* Dark Theme Support for Editor */
|
||||
.editor-styles-wrapper .mcb-block-preview[data-theme="dark"] {
|
||||
background: #1e1e1e;
|
||||
color: #d4d4d4;
|
||||
}
|
||||
|
||||
.editor-styles-wrapper .mcb-block-preview[data-theme="light"] {
|
||||
background: #ffffff;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
/* Animation for validation */
|
||||
@keyframes pulse {
|
||||
0% {
|
||||
opacity: 1;
|
||||
}
|
||||
50% {
|
||||
opacity: 0.5;
|
||||
}
|
||||
100% {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.mcb-validating {
|
||||
animation: pulse 1.5s infinite;
|
||||
}
|
||||
|
||||
/* Custom scrollbar for file list */
|
||||
.mcb-file-selector::-webkit-scrollbar {
|
||||
width: 6px;
|
||||
}
|
||||
|
||||
.mcb-file-selector::-webkit-scrollbar-track {
|
||||
background: #f1f1f1;
|
||||
}
|
||||
|
||||
.mcb-file-selector::-webkit-scrollbar-thumb {
|
||||
background: #888;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
.mcb-file-selector::-webkit-scrollbar-thumb:hover {
|
||||
background: #555;
|
||||
}
|
||||
202
native/wordpress/maple-code-blocks/assets/css/block-style.css
Normal file
202
native/wordpress/maple-code-blocks/assets/css/block-style.css
Normal file
|
|
@ -0,0 +1,202 @@
|
|||
/**
|
||||
* GitHub Code Viewer Block Frontend Styles
|
||||
*/
|
||||
|
||||
/* Block Wrapper */
|
||||
.mcb-block-wrapper {
|
||||
margin: 30px auto;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
/* Alignment Support */
|
||||
.mcb-block-wrapper.alignleft {
|
||||
float: left;
|
||||
margin-right: 20px;
|
||||
max-width: 50%;
|
||||
}
|
||||
|
||||
.mcb-block-wrapper.alignright {
|
||||
float: right;
|
||||
margin-left: 20px;
|
||||
max-width: 50%;
|
||||
}
|
||||
|
||||
.mcb-block-wrapper.aligncenter {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.mcb-block-wrapper.aligncenter .maple-code-blocks {
|
||||
display: inline-block;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.mcb-block-wrapper.alignwide {
|
||||
max-width: 1280px;
|
||||
width: 100%;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
.mcb-block-wrapper.alignfull {
|
||||
max-width: none;
|
||||
width: 100vw;
|
||||
position: relative;
|
||||
left: 50%;
|
||||
right: 50%;
|
||||
margin-left: -50vw;
|
||||
margin-right: -50vw;
|
||||
}
|
||||
|
||||
/* Ensure the viewer respects container width */
|
||||
.mcb-block-wrapper .maple-code-blocks {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
/* Custom Classes Support */
|
||||
.mcb-block-wrapper.is-style-minimal {
|
||||
box-shadow: none;
|
||||
border: 1px solid #e0e0e0;
|
||||
}
|
||||
|
||||
.mcb-block-wrapper.is-style-rounded .maple-code-blocks {
|
||||
border-radius: 12px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.mcb-block-wrapper.is-style-shadowed .maple-code-blocks {
|
||||
box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
|
||||
/* Responsive Adjustments */
|
||||
@media (max-width: 768px) {
|
||||
.mcb-block-wrapper.alignleft,
|
||||
.mcb-block-wrapper.alignright {
|
||||
float: none;
|
||||
max-width: 100%;
|
||||
margin-left: 0;
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
.mcb-block-wrapper.alignfull {
|
||||
margin-left: 0;
|
||||
margin-right: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
/* Loading State for Frontend */
|
||||
.mcb-block-wrapper.is-loading {
|
||||
min-height: 400px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
background: #f5f5f5;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.mcb-block-wrapper.is-loading::after {
|
||||
content: 'Loading repository...';
|
||||
color: #666;
|
||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
||||
}
|
||||
|
||||
/* Error State */
|
||||
.mcb-block-wrapper .mcb-error {
|
||||
padding: 20px;
|
||||
background: #fee;
|
||||
border: 1px solid #fcc;
|
||||
border-radius: 4px;
|
||||
color: #c00;
|
||||
text-align: center;
|
||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
||||
}
|
||||
|
||||
/* Integration with theme styles */
|
||||
.entry-content .mcb-block-wrapper {
|
||||
margin-top: 2em;
|
||||
margin-bottom: 2em;
|
||||
}
|
||||
|
||||
.entry-content .mcb-block-wrapper:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.entry-content .mcb-block-wrapper:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
/* Print Styles */
|
||||
@media print {
|
||||
.mcb-block-wrapper .mcb-controls,
|
||||
.mcb-block-wrapper .mcb-status-bar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.mcb-block-wrapper .maple-code-blocks {
|
||||
box-shadow: none;
|
||||
border: 1px solid #ccc;
|
||||
}
|
||||
}
|
||||
|
||||
/* Accessibility Improvements */
|
||||
.mcb-block-wrapper .maple-code-blocks:focus-within {
|
||||
outline: 2px solid #007cba;
|
||||
outline-offset: 2px;
|
||||
}
|
||||
|
||||
/* High Contrast Mode Support */
|
||||
@media (prefers-contrast: high) {
|
||||
.mcb-block-wrapper .maple-code-blocks {
|
||||
border: 2px solid currentColor;
|
||||
}
|
||||
}
|
||||
|
||||
/* Reduced Motion Support */
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
.mcb-block-wrapper .maple-code-blocks * {
|
||||
animation-duration: 0.01ms !important;
|
||||
animation-iteration-count: 1 !important;
|
||||
transition-duration: 0.01ms !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* Dark Mode Support */
|
||||
@media (prefers-color-scheme: dark) {
|
||||
.mcb-block-wrapper.is-loading {
|
||||
background: #2a2a2a;
|
||||
color: #e0e0e0;
|
||||
}
|
||||
|
||||
.mcb-block-wrapper.is-loading::after {
|
||||
color: #ccc;
|
||||
}
|
||||
}
|
||||
|
||||
/* Nested Block Support */
|
||||
.wp-block-group .mcb-block-wrapper,
|
||||
.wp-block-column .mcb-block-wrapper {
|
||||
margin-top: 1.5em;
|
||||
margin-bottom: 1.5em;
|
||||
}
|
||||
|
||||
/* Pattern Library Support */
|
||||
.mcb-block-wrapper[data-pattern="documentation"] .maple-code-blocks {
|
||||
height: 400px !important;
|
||||
}
|
||||
|
||||
.mcb-block-wrapper[data-pattern="showcase"] .maple-code-blocks {
|
||||
height: 600px !important;
|
||||
box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
|
||||
.mcb-block-wrapper[data-pattern="inline"] .maple-code-blocks {
|
||||
height: 300px !important;
|
||||
display: inline-block;
|
||||
width: auto;
|
||||
min-width: 500px;
|
||||
}
|
||||
2
native/wordpress/maple-code-blocks/assets/css/index.php
Normal file
2
native/wordpress/maple-code-blocks/assets/css/index.php
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
<?php
|
||||
// Silence is golden.
|
||||
529
native/wordpress/maple-code-blocks/assets/css/mcb-styles.css
Normal file
529
native/wordpress/maple-code-blocks/assets/css/mcb-styles.css
Normal file
|
|
@ -0,0 +1,529 @@
|
|||
/* GitHub Code Viewer - Main Styles */
|
||||
|
||||
.maple-code-blocks {
|
||||
font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'source-code-pro', monospace;
|
||||
border-radius: 8px;
|
||||
overflow: hidden;
|
||||
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.08);
|
||||
background: #1e1e1e;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
/* Dark Theme (Default) */
|
||||
.maple-code-blocks[data-theme="dark"],
|
||||
.maple-code-blocks.mcb-theme-dark {
|
||||
background: #1e1e1e;
|
||||
color: #d4d4d4;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="dark"] .mcb-header,
|
||||
.maple-code-blocks.mcb-theme-dark .mcb-header {
|
||||
background: linear-gradient(180deg, #2d2d30 0%, #252526 100%);
|
||||
border-bottom: 1px solid #3e3e42;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="dark"] .mcb-sidebar,
|
||||
.maple-code-blocks.mcb-theme-dark .mcb-sidebar {
|
||||
background: #252526;
|
||||
border-right: 1px solid #3e3e42;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="dark"] .mcb-editor,
|
||||
.maple-code-blocks.mcb-theme-dark .mcb-editor {
|
||||
background: #1e1e1e;
|
||||
}
|
||||
|
||||
/* Light Theme */
|
||||
.maple-code-blocks[data-theme="light"],
|
||||
.maple-code-blocks.mcb-theme-light {
|
||||
background: #ffffff;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="light"] .mcb-header,
|
||||
.maple-code-blocks.mcb-theme-light .mcb-header {
|
||||
background: linear-gradient(180deg, #f3f3f3 0%, #e8e8e8 100%);
|
||||
border-bottom: 1px solid #d4d4d4;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="light"] .mcb-sidebar,
|
||||
.maple-code-blocks.mcb-theme-light .mcb-sidebar {
|
||||
background: #f3f3f3;
|
||||
border-right: 1px solid #e8e8e8;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="light"] .mcb-editor,
|
||||
.maple-code-blocks.mcb-theme-light .mcb-editor {
|
||||
background: #ffffff;
|
||||
}
|
||||
|
||||
/* Header */
|
||||
.mcb-header {
|
||||
padding: 12px 16px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.mcb-title {
|
||||
margin: 0;
|
||||
font-size: 14px;
|
||||
font-weight: 500;
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.mcb-repo-info {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
flex: 1;
|
||||
margin-left: 16px;
|
||||
}
|
||||
|
||||
.mcb-github-icon,
|
||||
.mcb-platform-icon {
|
||||
fill: currentColor;
|
||||
opacity: 0.7;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
margin-right: 6px;
|
||||
}
|
||||
|
||||
.mcb-repo-name {
|
||||
font-size: 13px;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.mcb-controls {
|
||||
display: flex;
|
||||
gap: 8px;
|
||||
}
|
||||
|
||||
.mcb-controls button {
|
||||
background: none;
|
||||
border: none;
|
||||
padding: 4px;
|
||||
cursor: pointer;
|
||||
border-radius: 4px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
transition: background-color 0.2s;
|
||||
}
|
||||
|
||||
.mcb-controls button:hover {
|
||||
background: rgba(255, 255, 255, 0.1);
|
||||
}
|
||||
|
||||
.mcb-controls button svg {
|
||||
fill: currentColor;
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
||||
/* Content Area */
|
||||
.mcb-content {
|
||||
display: flex;
|
||||
flex: 1;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
/* Sidebar */
|
||||
.mcb-sidebar {
|
||||
width: 240px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.mcb-search-box {
|
||||
padding: 8px;
|
||||
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
|
||||
}
|
||||
|
||||
.mcb-search-input {
|
||||
width: 100%;
|
||||
padding: 6px 8px;
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
border: 1px solid rgba(255, 255, 255, 0.1);
|
||||
border-radius: 4px;
|
||||
color: inherit;
|
||||
font-size: 12px;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.mcb-search-input:focus {
|
||||
border-color: #007acc;
|
||||
background: rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
|
||||
/* File List */
|
||||
.mcb-file-list {
|
||||
flex: 1;
|
||||
overflow-y: auto;
|
||||
padding: 4px 0;
|
||||
}
|
||||
|
||||
.mcb-file-item {
|
||||
padding: 6px 12px;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
font-size: 13px;
|
||||
transition: background-color 0.1s;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.mcb-file-item:hover {
|
||||
background: rgba(255, 255, 255, 0.05);
|
||||
}
|
||||
|
||||
.mcb-file-item.active {
|
||||
background: rgba(0, 122, 204, 0.3);
|
||||
}
|
||||
|
||||
.mcb-file-icon {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.mcb-file-name {
|
||||
flex: 1;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.mcb-file-size {
|
||||
font-size: 11px;
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
/* Folder styles */
|
||||
.mcb-folder .mcb-file-icon,
|
||||
.mcb-parent-folder .mcb-file-icon {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.mcb-folder {
|
||||
cursor: pointer;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.mcb-folder:hover,
|
||||
.mcb-parent-folder:hover {
|
||||
background: rgba(255, 255, 255, 0.1);
|
||||
}
|
||||
|
||||
.mcb-parent-folder {
|
||||
cursor: pointer;
|
||||
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
|
||||
padding-bottom: 8px;
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
|
||||
.mcb-breadcrumb {
|
||||
padding: 8px 12px;
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
|
||||
font-size: 12px;
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
|
||||
.mcb-path-label {
|
||||
opacity: 0.6;
|
||||
margin-right: 4px;
|
||||
}
|
||||
|
||||
.mcb-current-path {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
/* Editor Area */
|
||||
.mcb-editor {
|
||||
flex: 1;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* Tabs */
|
||||
.mcb-tabs {
|
||||
display: flex;
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
|
||||
overflow-x: auto;
|
||||
min-height: 35px;
|
||||
}
|
||||
|
||||
.mcb-tab {
|
||||
padding: 8px 12px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
cursor: pointer;
|
||||
border-right: 1px solid rgba(255, 255, 255, 0.05);
|
||||
font-size: 13px;
|
||||
white-space: nowrap;
|
||||
user-select: none;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.mcb-tab:hover {
|
||||
background: rgba(255, 255, 255, 0.05);
|
||||
}
|
||||
|
||||
.mcb-tab.active {
|
||||
background: var(--editor-bg, #1e1e1e);
|
||||
border-bottom: 2px solid #007acc;
|
||||
}
|
||||
|
||||
.mcb-tab-close {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
border-radius: 2px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
cursor: pointer;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
.mcb-tab-close:hover {
|
||||
background: rgba(255, 255, 255, 0.1);
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
/* Code Area */
|
||||
.mcb-code-area {
|
||||
flex: 1;
|
||||
overflow: auto;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.mcb-welcome {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
height: 100%;
|
||||
opacity: 0.3;
|
||||
}
|
||||
|
||||
.mcb-welcome svg {
|
||||
fill: currentColor;
|
||||
margin-bottom: 16px;
|
||||
}
|
||||
|
||||
.mcb-welcome h4 {
|
||||
margin: 0 0 8px 0;
|
||||
font-size: 18px;
|
||||
font-weight: 300;
|
||||
}
|
||||
|
||||
.mcb-welcome p {
|
||||
margin: 0;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
/* Code Container */
|
||||
.mcb-code-container {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.mcb-code-header {
|
||||
padding: 8px 16px;
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
|
||||
}
|
||||
|
||||
.mcb-filename {
|
||||
font-size: 13px;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.mcb-copy-btn {
|
||||
padding: 4px 12px;
|
||||
background: rgba(0, 122, 204, 0.2);
|
||||
border: 1px solid #007acc;
|
||||
border-radius: 4px;
|
||||
color: #007acc;
|
||||
cursor: pointer;
|
||||
font-size: 12px;
|
||||
transition: all 0.2s;
|
||||
}
|
||||
|
||||
.mcb-copy-btn:hover {
|
||||
background: rgba(0, 122, 204, 0.3);
|
||||
}
|
||||
|
||||
.mcb-copy-btn.copied {
|
||||
background: rgba(0, 255, 0, 0.2);
|
||||
border-color: #00ff00;
|
||||
color: #00ff00;
|
||||
}
|
||||
|
||||
/* Code Wrapper */
|
||||
.mcb-code-wrapper {
|
||||
flex: 1;
|
||||
overflow: auto;
|
||||
padding: 16px;
|
||||
}
|
||||
|
||||
.mcb-code-wrapper pre {
|
||||
margin: 0;
|
||||
font-size: 13px;
|
||||
line-height: 1.6;
|
||||
tab-size: 4;
|
||||
}
|
||||
|
||||
.mcb-code-wrapper code {
|
||||
display: block;
|
||||
font-family: inherit;
|
||||
white-space: pre;
|
||||
}
|
||||
|
||||
/* Line Numbers */
|
||||
.line-numbers .line-number {
|
||||
display: inline-block;
|
||||
width: 40px;
|
||||
text-align: right;
|
||||
padding-right: 12px;
|
||||
color: #858585;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.line-numbers .line-content {
|
||||
white-space: pre;
|
||||
}
|
||||
|
||||
/* Status Bar */
|
||||
.mcb-status-bar {
|
||||
padding: 4px 16px;
|
||||
background: rgba(0, 122, 204, 0.15);
|
||||
border-top: 1px solid rgba(255, 255, 255, 0.1);
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
.mcb-status-text {
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.mcb-file-info {
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
/* Loading Spinner */
|
||||
.mcb-loading {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: 32px;
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
.mcb-spinner {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
border: 2px solid rgba(255, 255, 255, 0.2);
|
||||
border-top-color: #007acc;
|
||||
border-radius: 50%;
|
||||
animation: spin 0.8s linear infinite;
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
|
||||
@keyframes spin {
|
||||
to { transform: rotate(360deg); }
|
||||
}
|
||||
|
||||
.mcb-loading span {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
/* Error State */
|
||||
.mcb-error {
|
||||
padding: 16px;
|
||||
background: #ff5252;
|
||||
color: white;
|
||||
border-radius: 4px;
|
||||
margin: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* Scrollbars */
|
||||
.mcb-file-list::-webkit-scrollbar,
|
||||
.mcb-code-wrapper::-webkit-scrollbar {
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
}
|
||||
|
||||
.mcb-file-list::-webkit-scrollbar-track,
|
||||
.mcb-code-wrapper::-webkit-scrollbar-track {
|
||||
background: rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
.mcb-file-list::-webkit-scrollbar-thumb,
|
||||
.mcb-code-wrapper::-webkit-scrollbar-thumb {
|
||||
background: rgba(255, 255, 255, 0.2);
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.mcb-file-list::-webkit-scrollbar-thumb:hover,
|
||||
.mcb-code-wrapper::-webkit-scrollbar-thumb:hover {
|
||||
background: rgba(255, 255, 255, 0.3);
|
||||
}
|
||||
|
||||
/* Fullscreen Mode */
|
||||
.maple-code-blocks.fullscreen {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
z-index: 999999;
|
||||
height: 100vh !important;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
/* Responsive Design */
|
||||
@media (max-width: 768px) {
|
||||
.mcb-sidebar {
|
||||
width: 200px;
|
||||
}
|
||||
|
||||
.mcb-code-wrapper {
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
.line-numbers .line-number {
|
||||
width: 30px;
|
||||
padding-right: 8px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 480px) {
|
||||
.mcb-sidebar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.mcb-header {
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
.mcb-repo-info {
|
||||
margin-left: 8px;
|
||||
}
|
||||
}
|
||||
187
native/wordpress/maple-code-blocks/assets/css/prism.css
Normal file
187
native/wordpress/maple-code-blocks/assets/css/prism.css
Normal file
|
|
@ -0,0 +1,187 @@
|
|||
/* PrismJS - Minimal syntax highlighting styles */
|
||||
/* Optimized for GitHub Code Viewer Plugin */
|
||||
|
||||
/* Base styles */
|
||||
code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
color: #d4d4d4;
|
||||
background: none;
|
||||
font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'source-code-pro', monospace;
|
||||
font-size: 13px;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
word-spacing: normal;
|
||||
word-break: normal;
|
||||
word-wrap: normal;
|
||||
line-height: 1.6;
|
||||
tab-size: 4;
|
||||
hyphens: none;
|
||||
}
|
||||
|
||||
/* Token colors - Dark theme default */
|
||||
.token.comment,
|
||||
.token.prolog,
|
||||
.token.doctype,
|
||||
.token.cdata {
|
||||
color: #6a9955;
|
||||
}
|
||||
|
||||
.token.punctuation {
|
||||
color: #d4d4d4;
|
||||
}
|
||||
|
||||
.token.namespace {
|
||||
opacity: .7;
|
||||
}
|
||||
|
||||
.token.property,
|
||||
.token.tag,
|
||||
.token.boolean,
|
||||
.token.number,
|
||||
.token.constant,
|
||||
.token.symbol,
|
||||
.token.deleted {
|
||||
color: #b5cea8;
|
||||
}
|
||||
|
||||
.token.selector,
|
||||
.token.attr-name,
|
||||
.token.string,
|
||||
.token.char,
|
||||
.token.builtin,
|
||||
.token.inserted {
|
||||
color: #ce9178;
|
||||
}
|
||||
|
||||
.token.operator,
|
||||
.token.entity,
|
||||
.token.url,
|
||||
.language-css .token.string,
|
||||
.style .token.string {
|
||||
color: #d4d4d4;
|
||||
}
|
||||
|
||||
.token.atrule,
|
||||
.token.attr-value,
|
||||
.token.keyword {
|
||||
color: #569cd6;
|
||||
}
|
||||
|
||||
.token.function,
|
||||
.token.class-name {
|
||||
color: #dcdcaa;
|
||||
}
|
||||
|
||||
.token.regex,
|
||||
.token.important,
|
||||
.token.variable {
|
||||
color: #d16969;
|
||||
}
|
||||
|
||||
.token.important,
|
||||
.token.bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.token.italic {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.token.entity {
|
||||
cursor: help;
|
||||
}
|
||||
|
||||
/* Light theme overrides */
|
||||
.maple-code-blocks[data-theme="light"] .token.comment,
|
||||
.maple-code-blocks[data-theme="light"] .token.prolog,
|
||||
.maple-code-blocks[data-theme="light"] .token.doctype,
|
||||
.maple-code-blocks[data-theme="light"] .token.cdata {
|
||||
color: #008000;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="light"] .token.punctuation {
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="light"] .token.property,
|
||||
.maple-code-blocks[data-theme="light"] .token.tag,
|
||||
.maple-code-blocks[data-theme="light"] .token.boolean,
|
||||
.maple-code-blocks[data-theme="light"] .token.number,
|
||||
.maple-code-blocks[data-theme="light"] .token.constant,
|
||||
.maple-code-blocks[data-theme="light"] .token.symbol {
|
||||
color: #098658;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="light"] .token.selector,
|
||||
.maple-code-blocks[data-theme="light"] .token.attr-name,
|
||||
.maple-code-blocks[data-theme="light"] .token.string,
|
||||
.maple-code-blocks[data-theme="light"] .token.char,
|
||||
.maple-code-blocks[data-theme="light"] .token.builtin,
|
||||
.maple-code-blocks[data-theme="light"] .token.inserted {
|
||||
color: #a31515;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="light"] .token.operator,
|
||||
.maple-code-blocks[data-theme="light"] .token.entity,
|
||||
.maple-code-blocks[data-theme="light"] .token.url,
|
||||
.maple-code-blocks[data-theme="light"] .language-css .token.string,
|
||||
.maple-code-blocks[data-theme="light"] .style .token.string {
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="light"] .token.atrule,
|
||||
.maple-code-blocks[data-theme="light"] .token.attr-value,
|
||||
.maple-code-blocks[data-theme="light"] .token.keyword {
|
||||
color: #0000ff;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="light"] .token.function {
|
||||
color: #795e26;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="light"] .token.class-name {
|
||||
color: #267f99;
|
||||
}
|
||||
|
||||
.maple-code-blocks[data-theme="light"] .token.regex,
|
||||
.maple-code-blocks[data-theme="light"] .token.important,
|
||||
.maple-code-blocks[data-theme="light"] .token.variable {
|
||||
color: #e90;
|
||||
}
|
||||
|
||||
/* Line highlighting */
|
||||
.line-highlight {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0;
|
||||
margin-top: 1em;
|
||||
background: linear-gradient(to right, rgba(255, 255, 255, .1) 70%, rgba(255, 255, 255, 0));
|
||||
pointer-events: none;
|
||||
line-height: inherit;
|
||||
white-space: pre;
|
||||
}
|
||||
|
||||
/* Selection styling */
|
||||
pre[class*="language-"]::-moz-selection,
|
||||
pre[class*="language-"] ::-moz-selection,
|
||||
code[class*="language-"]::-moz-selection,
|
||||
code[class*="language-"] ::-moz-selection {
|
||||
text-shadow: none;
|
||||
background: #264f78;
|
||||
}
|
||||
|
||||
pre[class*="language-"]::selection,
|
||||
pre[class*="language-"] ::selection,
|
||||
code[class*="language-"]::selection,
|
||||
code[class*="language-"] ::selection {
|
||||
text-shadow: none;
|
||||
background: #264f78;
|
||||
}
|
||||
|
||||
/* Light theme selection */
|
||||
.maple-code-blocks[data-theme="light"] pre[class*="language-"]::selection,
|
||||
.maple-code-blocks[data-theme="light"] pre[class*="language-"] ::selection,
|
||||
.maple-code-blocks[data-theme="light"] code[class*="language-"]::selection,
|
||||
.maple-code-blocks[data-theme="light"] code[class*="language-"] ::selection {
|
||||
background: #add6ff;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue