diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/CNAME b/CNAME new file mode 100644 index 00000000..e63f17f7 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +examples.aedt.docs.pyansys.com diff --git a/index.html b/index.html new file mode 100644 index 00000000..50c27e1d --- /dev/null +++ b/index.html @@ -0,0 +1,10 @@ + + +
+ +Short
+ */ + .o-tooltip--left { + position: relative; + } + + .o-tooltip--left:after { + opacity: 0; + visibility: hidden; + position: absolute; + content: attr(data-tooltip); + padding: .2em; + font-size: .8em; + left: -.2em; + background: grey; + color: white; + white-space: nowrap; + z-index: 2; + border-radius: 2px; + transform: translateX(-102%) translateY(0); + transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1); +} + +.o-tooltip--left:hover:after { + display: block; + opacity: 1; + visibility: visible; + transform: translateX(-100%) translateY(0); + transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1); + transition-delay: .5s; +} + +/* By default the copy button shouldn't show up when printing a page */ +@media print { + button.copybtn { + display: none; + } +} diff --git a/version/dev/_static/copybutton.js b/version/dev/_static/copybutton.js new file mode 100644 index 00000000..32f83eab --- /dev/null +++ b/version/dev/_static/copybutton.js @@ -0,0 +1,248 @@ +// Localization support +const messages = { + 'en': { + 'copy': 'Copy', + 'copy_to_clipboard': 'Copy to clipboard', + 'copy_success': 'Copied!', + 'copy_failure': 'Failed to copy', + }, + 'es' : { + 'copy': 'Copiar', + 'copy_to_clipboard': 'Copiar al portapapeles', + 'copy_success': '¡Copiado!', + 'copy_failure': 'Error al copiar', + }, + 'de' : { + 'copy': 'Kopieren', + 'copy_to_clipboard': 'In die Zwischenablage kopieren', + 'copy_success': 'Kopiert!', + 'copy_failure': 'Fehler beim Kopieren', + }, + 'fr' : { + 'copy': 'Copier', + 'copy_to_clipboard': 'Copier dans le presse-papier', + 'copy_success': 'Copié !', + 'copy_failure': 'Échec de la copie', + }, + 'ru': { + 'copy': 'Скопировать', + 'copy_to_clipboard': 'Скопировать в буфер', + 'copy_success': 'Скопировано!', + 'copy_failure': 'Не удалось скопировать', + }, + 'zh-CN': { + 'copy': '复制', + 'copy_to_clipboard': '复制到剪贴板', + 'copy_success': '复制成功!', + 'copy_failure': '复制失败', + }, + 'it' : { + 'copy': 'Copiare', + 'copy_to_clipboard': 'Copiato negli appunti', + 'copy_success': 'Copiato!', + 'copy_failure': 'Errore durante la copia', + } +} + +let locale = 'en' +if( document.documentElement.lang !== undefined + && messages[document.documentElement.lang] !== undefined ) { + locale = document.documentElement.lang +} + +let doc_url_root = DOCUMENTATION_OPTIONS.URL_ROOT; +if (doc_url_root == '#') { + doc_url_root = ''; +} + +/** + * SVG files for our copy buttons + */ +let iconCheck = `` + +// If the user specified their own SVG use that, otherwise use the default +let iconCopy = ``; +if (!iconCopy) { + iconCopy = `` +} + +/** + * Set up copy/paste for code blocks + */ + +const runWhenDOMLoaded = cb => { + if (document.readyState != 'loading') { + cb() + } else if (document.addEventListener) { + document.addEventListener('DOMContentLoaded', cb) + } else { + document.attachEvent('onreadystatechange', function() { + if (document.readyState == 'complete') cb() + }) + } +} + +const codeCellId = index => `codecell${index}` + +// Clears selected text since ClipboardJS will select the text when copying +const clearSelection = () => { + if (window.getSelection) { + window.getSelection().removeAllRanges() + } else if (document.selection) { + document.selection.empty() + } +} + +// Changes tooltip text for a moment, then changes it back +// We want the timeout of our `success` class to be a bit shorter than the +// tooltip and icon change, so that we can hide the icon before changing back. +var timeoutIcon = 2000; +var timeoutSuccessClass = 1500; + +const temporarilyChangeTooltip = (el, oldText, newText) => { + el.setAttribute('data-tooltip', newText) + el.classList.add('success') + // Remove success a little bit sooner than we change the tooltip + // So that we can use CSS to hide the copybutton first + setTimeout(() => el.classList.remove('success'), timeoutSuccessClass) + setTimeout(() => el.setAttribute('data-tooltip', oldText), timeoutIcon) +} + +// Changes the copy button icon for two seconds, then changes it back +const temporarilyChangeIcon = (el) => { + el.innerHTML = iconCheck; + setTimeout(() => {el.innerHTML = iconCopy}, timeoutIcon) +} + +const addCopyButtonToCodeCells = () => { + // If ClipboardJS hasn't loaded, wait a bit and try again. This + // happens because we load ClipboardJS asynchronously. + if (window.ClipboardJS === undefined) { + setTimeout(addCopyButtonToCodeCells, 250) + return + } + + // Add copybuttons to all of our code cells + const COPYBUTTON_SELECTOR = 'div.highlight pre'; + const codeCells = document.querySelectorAll(COPYBUTTON_SELECTOR) + codeCells.forEach((codeCell, index) => { + const id = codeCellId(index) + codeCell.setAttribute('id', id) + + const clipboardButton = id => + `` + codeCell.insertAdjacentHTML('afterend', clipboardButton(id)) + }) + +function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string +} + +/** + * Removes excluded text from a Node. + * + * @param {Node} target Node to filter. + * @param {string} exclude CSS selector of nodes to exclude. + * @returns {DOMString} Text from `target` with text removed. + */ +function filterText(target, exclude) { + const clone = target.cloneNode(true); // clone as to not modify the live DOM + if (exclude) { + // remove excluded nodes + clone.querySelectorAll(exclude).forEach(node => node.remove()); + } + return clone.innerText; +} + +// Callback when a copy button is clicked. Will be passed the node that was clicked +// should then grab the text and replace pieces of text that shouldn't be used in output +function formatCopyText(textContent, copybuttonPromptText, isRegexp = false, onlyCopyPromptLines = true, removePrompts = true, copyEmptyLines = true, lineContinuationChar = "", hereDocDelim = "") { + var regexp; + var match; + + // Do we check for line continuation characters and "HERE-documents"? + var useLineCont = !!lineContinuationChar + var useHereDoc = !!hereDocDelim + + // create regexp to capture prompt and remaining line + if (isRegexp) { + regexp = new RegExp('^(' + copybuttonPromptText + ')(.*)') + } else { + regexp = new RegExp('^(' + escapeRegExp(copybuttonPromptText) + ')(.*)') + } + + const outputLines = []; + var promptFound = false; + var gotLineCont = false; + var gotHereDoc = false; + const lineGotPrompt = []; + for (const line of textContent.split('\n')) { + match = line.match(regexp) + if (match || gotLineCont || gotHereDoc) { + promptFound = regexp.test(line) + lineGotPrompt.push(promptFound) + if (removePrompts && promptFound) { + outputLines.push(match[2]) + } else { + outputLines.push(line) + } + gotLineCont = line.endsWith(lineContinuationChar) & useLineCont + if (line.includes(hereDocDelim) & useHereDoc) + gotHereDoc = !gotHereDoc + } else if (!onlyCopyPromptLines) { + outputLines.push(line) + } else if (copyEmptyLines && line.trim() === '') { + outputLines.push(line) + } + } + + // If no lines with the prompt were found then just use original lines + if (lineGotPrompt.some(v => v === true)) { + textContent = outputLines.join('\n'); + } + + // Remove a trailing newline to avoid auto-running when pasting + if (textContent.endsWith("\n")) { + textContent = textContent.slice(0, -1) + } + return textContent +} + + +var copyTargetText = (trigger) => { + var target = document.querySelector(trigger.attributes['data-clipboard-target'].value); + + // get filtered text + let exclude = '.linenos'; + + let text = filterText(target, exclude); + return formatCopyText(text, '>>> ?|\\.\\.\\. ', true, true, true, true, '', '') +} + + // Initialize with a callback so we can modify the text before copy + const clipboard = new ClipboardJS('.copybtn', {text: copyTargetText}) + + // Update UI with error/success messages + clipboard.on('success', event => { + clearSelection() + temporarilyChangeTooltip(event.trigger, messages[locale]['copy'], messages[locale]['copy_success']) + temporarilyChangeIcon(event.trigger) + }) + + clipboard.on('error', event => { + temporarilyChangeTooltip(event.trigger, messages[locale]['copy'], messages[locale]['copy_failure']) + }) +} + +runWhenDOMLoaded(addCopyButtonToCodeCells) \ No newline at end of file diff --git a/version/dev/_static/copybutton_funcs.js b/version/dev/_static/copybutton_funcs.js new file mode 100644 index 00000000..dbe1aaad --- /dev/null +++ b/version/dev/_static/copybutton_funcs.js @@ -0,0 +1,73 @@ +function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string +} + +/** + * Removes excluded text from a Node. + * + * @param {Node} target Node to filter. + * @param {string} exclude CSS selector of nodes to exclude. + * @returns {DOMString} Text from `target` with text removed. + */ +export function filterText(target, exclude) { + const clone = target.cloneNode(true); // clone as to not modify the live DOM + if (exclude) { + // remove excluded nodes + clone.querySelectorAll(exclude).forEach(node => node.remove()); + } + return clone.innerText; +} + +// Callback when a copy button is clicked. Will be passed the node that was clicked +// should then grab the text and replace pieces of text that shouldn't be used in output +export function formatCopyText(textContent, copybuttonPromptText, isRegexp = false, onlyCopyPromptLines = true, removePrompts = true, copyEmptyLines = true, lineContinuationChar = "", hereDocDelim = "") { + var regexp; + var match; + + // Do we check for line continuation characters and "HERE-documents"? + var useLineCont = !!lineContinuationChar + var useHereDoc = !!hereDocDelim + + // create regexp to capture prompt and remaining line + if (isRegexp) { + regexp = new RegExp('^(' + copybuttonPromptText + ')(.*)') + } else { + regexp = new RegExp('^(' + escapeRegExp(copybuttonPromptText) + ')(.*)') + } + + const outputLines = []; + var promptFound = false; + var gotLineCont = false; + var gotHereDoc = false; + const lineGotPrompt = []; + for (const line of textContent.split('\n')) { + match = line.match(regexp) + if (match || gotLineCont || gotHereDoc) { + promptFound = regexp.test(line) + lineGotPrompt.push(promptFound) + if (removePrompts && promptFound) { + outputLines.push(match[2]) + } else { + outputLines.push(line) + } + gotLineCont = line.endsWith(lineContinuationChar) & useLineCont + if (line.includes(hereDocDelim) & useHereDoc) + gotHereDoc = !gotHereDoc + } else if (!onlyCopyPromptLines) { + outputLines.push(line) + } else if (copyEmptyLines && line.trim() === '') { + outputLines.push(line) + } + } + + // If no lines with the prompt were found then just use original lines + if (lineGotPrompt.some(v => v === true)) { + textContent = outputLines.join('\n'); + } + + // Remove a trailing newline to avoid auto-running when pasting + if (textContent.endsWith("\n")) { + textContent = textContent.slice(0, -1) + } + return textContent +} diff --git a/version/dev/_static/css/ansys-sphinx-theme-variable.css b/version/dev/_static/css/ansys-sphinx-theme-variable.css new file mode 100644 index 00000000..71f301bc --- /dev/null +++ b/version/dev/_static/css/ansys-sphinx-theme-variable.css @@ -0,0 +1,400 @@ +/*Contains variables for colors and fonts used in the theme*/ +@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0,700;0,900;1,400;1,700;1,900&family=Open+Sans:ital,wght@0,400;0,600;1,400;1,600&display=swap"); + +@font-face { + font-family: "Source Sans Pro Light"; + src: url(../fonts/SourceSansPro-Light.ttf); +} + +@font-face { + font-family: "Source Sans Pro"; + src: url(../fonts/SourceSansPro-Regular.ttf); +} + +:root { + /** Ansys specific changes to the theme */ + + /** + * Ansys Font family + * + * These are adapted from https://systemfontstack.com/ + */ + --pst-font-family-base-system: -apple-system, BlinkMacSystemFont, Segoe UI, + "Helvetica Neue", Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, + Segoe UI Symbol; + --pst-font-family-monospace-system: "SFMono-Regular", Menlo, Consolas, Monaco, + Liberation Mono, Lucida Console, monospace; + + --pst-font-family-base: "Source Sans Pro", sans-serif, + var(--pst-font-family-base-system); + --pst-font-family-heading: "Source Sans Pro", sans-serif, + var(--pst-font-family-base-system); + --pst-font-family-monospace: monospace, Courier, + var(--pst-font-family-monospace-system); + + /** + * Ansys compatible colors + * + * Colors are defined in rgb string way, "red, green, blue" + */ + --ansysGold: rgb(255, 183, 27); /* #FFB71B */ + --ansysBronze: rgb(200, 146, 17); /* #C89211 */ + --pythonBlue: rgb(57, 114, 161); /* #3972a1 */ + --pst-font-size-h1: 36px; + --pst-font-size-h2: 32px; + --pst-font-size-h3: 28px; + --pst-font-size-h4: 20px; + --pst-font-size-h5: 14px; + --pst-font-size-h6: 11px; + --ast-global-line-height: 24px; + --bs-nav-link-font-size: 14px; + --bs-navbar-color: var(--bs-ast-navbar-color); + --ast-font-sidebar-header: var(--pst-font-size-h5); + /** + * table font sizes + */ + --pst-table-font-size: 14px; + --pst-table-header-font-size: 12px; + + /** + * sphinx design font sizes + */ + + --ast-sphinx-design-font-size: 14px; + --ast-sphinx-design-font-family: "Open Sans", sans-serif; + --ast-sphinx-design-border-radius: 4px; + + /** +* admonitions +*/ + --ast-admonitions-font-size: 14px; + --ast-admonitions-padding: 8px 16px; + --ast-admonitions-border-radius: 8px; + --ast-admonitions-icon-size: 15px; + --ast-admonition-icon-height: 24px; + --ast-admonition-icon-width: 24px; + --ast-admonition-icon-margin-left: 8px; +} + +html[data-theme="light"] { + /** + * main colors + */ + --ast-color-text: #353535; + --ast-color-active-text: #353535; + --ast-color-hover-text: #353535; + --pst-color-background: #f7f7f7; + --pst-color-primary: #353535; + --pst-color-secondary: #f2f2f2; + --pst-color-success: rgb(40, 167, 69); + --pst-color-text-base: rgb(0, 0, 0); + --pst-color-text-muted: #353535; + --pst-color-border: #686868; + --pst-color-shadow: rgb(216, 216, 216); + --pst-color-info: var(--pst-color-link); + --pst-color-link-hover: #686868; + + /** + * Navigation colors + */ + --pst-color-on-background: var( + --pst-color-background + ); /* important tag from pydata-sphinx-theme */ + --ast-navbar-color: #686868; + --ast-navbar-hover-color: var(--ast-color-hover-text); + --ast-navbar-active-color: var(--ast-color-active-text); + --ast-navbar-active-border-color: #000000; + --ast-ring-shadow-focused: 0px 0px 0px 2px #ffffff, 0px 0px 0px 4px #1a78c2; + + /** + * sidebar colors + */ + --ast-sidebar-primary-text: var(--ast-color-text); + --ast-sidebar-hover-background: #ececec; + --ast-sidebar-active-background: #d9d9d9; + + /** + * depth colors + */ + /* --pst-color-on-background: rgb(0, 0, 0); */ + --pst-color-on-surface: #f2f2f2; + + /** + * table + */ + --ast-color-table-background: #ffffff; + --ast-color-enabled-table-text: var(--ast-color-text); + --ast-color-table-row-hover-bg: #ececec; + --ast-color-table-active-bg: #e9f4fe; + --ast-color-table-header-text: #686868; + --ast-color-table-cell-text: var(--ast-color-text); + --ast-table-outer-border: #ececec; + --ast-color-table-inner-border: #ececec; + + --pst-color-panel-background: var(--pst-color-on-background); + + /** + * layout + */ + + --ast-color-link: #1e6ddc; + --ast-color-link-hover: #1856af; + --ast-color-link-active: #104188; + --ast-color-link-visited: #9a33cb; + --ast-color-link-visited-hover: #7f29a2; + --ast-color-inline-code: var( + --pst-color-text-muted + ); /* inline code color for docutils (_base.scss)*/ + --pst-color-target: rgb(255, 255, 255); + + /** + * color for sphinx-gallery-code output + */ + --pst-color-codecell: #fafae2; + --pst-color-codeout: var(--pst-color-inline-code); + --pst-color-sig: #0965c8; + --pst-color-code-s1: #b35000; + --pst-color-code-c1: #095d0a; + + --ast-sphinx-gallery-download-background: #1a1a1a; + --ast-sphinx-gallery-download-background-hover: #353535; + --ast-sphinx-gallery-download-text: #fdfdfd; + + /** + * sphinx design + */ + --sd-color-primary: var(--pst-color-text-base); + --ast-color-enable-card-background: #ffffff; + --ast-color-enable-border: #d9d9d9; + --ast-color-hover-card-background: #ececec; + --ast-dropdown-border-color: #d9d9d9; + --ast-dropdown-border-color-hover: #8e8e8e; + + --ast-color-sphinx-design-primary: #353535; + --ast-color-sphinx-design-background: #ffffff; + --sd-color-primary: #141414; + --sd-color-primary-highlight: var(--ast-color-sphinx-design-primary); + --sd-color-primary-text: var(--ast-color-sphinx-design-background); + --sd-color-secondary: var(--ast-color-sphinx-design-background); + --sd-color-secondary-text: #141414; + --sd-color-secondary-highlight: var(--ast-color-hover-card-background); + --sd-color-secondary-bg: var(--ast-color-sphinx-design-background); + --ast-sd-bg-secondary-hover: var(--ast-color-hover-card-background); + --ast-background-tab-focus: #d9d9d9; + --ast-background-tab-hover: #ececec; + --ast-tab-border-color: #d9d9d9; + --ast-tab-border-color-hover: #8e8e8e; + --ast-tab-border-color-active: #000000; + --ast-dropdown-text-color: #686868; + --ast-box-shadow-active: 0px 1px 2px 0px rgba(0, 0, 0, 0.08), + 0px 2px 4px 0px rgba(0, 0, 0, 0.12); + --ast-box-shadow-hover: 0px 1px 2px 0px rgba(0, 0, 0, 0.08), + 0px 4px 8px 2px rgba(0, 0, 0, 0.12); + /** + * search hide match + */ + --pst-color-search-match: #91969b; + + /** + * admonitions + */ + --ast-admonition-neutral-icon: #353535; + --ast-admonition-neutral-border: #686868; + --ast-admonition-info-icon: #1a78c2; + --ast-admonition-info-border: #1a78c2; + --ast-admonition-success-icon: #006600; + --ast-admonition-success-border: #008000; + --ast-admonition-warning-icon: #caad2a; + --ast-admonition-warning-border: #fdd835; + --ast-admonition-danger-icon: #b72e2a; + --ast-admonition-danger-border: #e53935; + --ast-admonitions-color: var(--ast-color-text); + + /** + * search bars + */ + --ast-search-bar-enable-background: #ffffff; + --ast-search-bar-enable-border: #d9d9d9; + --ast-search-bar-enable-text: #686868; + --ast-suggestion-header-background: #d9d9d9; + --ast-catagory-header-text: #353535; + --ast-catagory-suggestion-text: #8e8e8e; + --ast-suggestion-text-color: #000000; + + /** + * dropdown header + */ + --ast-dropdown-header-border: #d9d9d9; +} + +html[data-theme="dark"] { + /** + * main colors + */ + --ast-color-text: #ececec; + --ast-color-active-text: #d5d5d5; + --ast-color-hover-text: #d5d5d5; + --pst-color-primary: #ececec; + --pst-color-secondary: #353535; + --pst-color-success: rgb(72, 135, 87); + --pst-color-text-base: rgb(201, 209, 217); + --pst-color-text-muted: rgb(192, 192, 192); + --pst-color-border: rgb(192, 192, 192); + --pst-color-shadow: rgb(104, 102, 102); + --pst-color-background: #1a1a1a; + --pst-color-surface: rgb(41, 41, 41); + --pst-color-on-surface: rgb(55, 55, 55); + --pst-color-info: var(--pst-color-secondary); + --pst-color-link-hover: #b3b3b3; + + /** + * extensions + */ + + --pst-color-panel-background: var(--pst-color-on-background); + + /** + * Navigation colors + */ + + --pst-color-on-background: var( + --pst-color-background + ); /* important tag from pydata-sphinx-theme */ + --ast-navbar-color: #8e8e8e; + --ast-navbar-hover-color: var(--ast-color-hover-text); + --ast-navbar-active-color: var(--ast-color-active-text); + --ast-navbar-active-border-color: #ffffff; + --ast-nav-link-color: var(--ast-navbar-color); + --ast-ring-shadow-focused: 0px 0px 0px 2px #282828, 0px 0px 0px 4px #4dabf5; + + /** + * sidebar colors + */ + --ast-sidebar-primary-text: var(--ast-color-text); + --ast-sidebar-hover-background: #3d3d3d; + --ast-sidebar-active-background: #2d2d2d; + --ast-color-inline-code: var( + --pst-color-text-muted + ); /* inline code color for docutils (_base.scss)*/ + + /** + * layout + */ + + --ast-color-link: #1e6ddc; + --ast-color-link-hover: #1856af; + --ast-color-link-active: #579ce5; + --ast-color-link-visited: #c58ac5; + --ast-color-link-visited-hover: #a96ba9; + --pst-color-target: rgb(71, 39, 0); + + /** + * color for sphinx-gallery-code output + */ + --pst-color-codecell: #353535; + --pst-color-codeout: #f2f4f6; + --pst-color-sig: #d6ab1e; + --pst-color-code-s1: #d79a60; + --pst-color-code-c1: #8fb842; + + --ast-sphinx-gallery-download-background: #ffffff; + --ast-sphinx-gallery-download-background-hover: #ececec; + --ast-sphinx-gallery-download-text: #1a1a1a; + + /** + * table hovering + */ + --ast-color-table-background: #353535; + --ast-color-enabled-table-text: #ececec; + --ast-color-table-row-hover-bg: #3d3d3d; + --ast-color-table-header-text: #d3d3d3; + --ast-color-table-cell-text: #ececec; + --ast-color-table-active-bg: #3d3d3d; + --ast-table-outer-border: #d3d3d3; + --ast-color-table-inner-border: #d3d3d3; + + /** + * search hide match + */ + --pst-color-search-match: var(--pst-color-primary); + + /** + * sphinx design + */ + + --sd-color-primary: var(--pst-color-text-base); + --ast-color-enable-card-background: #282828; + --ast-color-enable-border: #e5e5e5; + --ast-color-hover-card-background: #3d3d3d; + --ast-dropdown-border-color: #3d3d3d; + --ast-dropdown-border-color-hover: #8e8e8e; + + --ast-color-sphinx-design-primary: #ececec; + --ast-color-sphinx-design-background: #282828; + --sd-color-primary: #d5d5d5; + --sd-color-primary-highlight: var(--ast-color-sphinx-design-primary); + --sd-color-primary-text: var(--ast-color-sphinx-design-background); + --sd-color-secondary: var(--ast-color-sphinx-design-background); + --sd-color-secondary-text: #d5d5d5; + --sd-color-secondary-highlight: var(--ast-color-hover-card-background); + --sd-color-secondary-bg: var(--ast-color-sphinx-design-background); + --ast-sd-bg-secondary-hover: var(--ast-color-hover-card-background); + --ast-background-tab-focus: #2d2d2d; + --ast-background-tab-hover: #3d3d3d; + --ast-tab-border-color: #e5e5e5; + --ast-tab-border-color-hover: #8e8e8e; + --ast-tab-border-color-active: #ffffff; + --ast-dropdown-text-color: #e5e5e5; + --ast-box-shadow-active: 0px 1px 2px 0px rgba(0, 0, 0, 0.4), + 0px 2px 4px 0px rgba(0, 0, 0, 0.48); + --ast-box-shadow-hover: 0px 1px 2px 0px rgba(0, 0, 0, 0.4), + 0px 4px 8px 2px rgba(0, 0, 0, 0.48); + + /** +* admonitions +*/ + --ast-admonition-neutral-icon: #ececec; + --ast-admonition-neutral-border: #8e8e8e; + --ast-admonition-info-icon: #1a78c2; + --ast-admonition-info-border: #1856af; + --ast-admonition-success-icon: #006600; + --ast-admonition-success-border: #147914; + --ast-admonition-warning-icon: #caad2a; + --ast-admonition-warning-border: #bba12e; + --ast-admonition-danger-icon: #b72e2a; + --ast-admonition-danger-border: #b12422; + --ast-admonitions-color: var(--ast-color-text); + + /** + * search bars + */ + --ast-search-bar-enable-background: #2d2d2d; + --ast-search-bar-enable-border: #3d3d3d; + --ast-search-bar-enable-text: #d3d3d3; + --ast-suggestion-header-background: #3d3d3d; + --ast-catagory-header-text: #ececec; + --ast-catagory-suggestion-text: #686868; + --ast-suggestion-text-color: #ffffff; + + /** + * dropdown header + */ + --ast-dropdown-header-border: #3d3d3d; +} + +/** +* font sizes +* body and content +*/ + +body { + font-family: "Open Sans", sans-serif; + line-height: var(--ast-global-line-height); + font-size: 14px; + color: var(--ast-color-text); +} + +h1, +h2 { + color: var(--pst-color-text-base); +} diff --git a/version/dev/_static/css/ansys_sphinx_theme.css b/version/dev/_static/css/ansys_sphinx_theme.css new file mode 100644 index 00000000..54acbf81 --- /dev/null +++ b/version/dev/_static/css/ansys_sphinx_theme.css @@ -0,0 +1,45 @@ +/* Provided by the Sphinx base theme template at build time */ + +@import "../basic.css"; +@import "../sg_gallery.css"; +@import "ansys-sphinx-theme-variables.css"; +@import "pydata-sphinx-theme-custom.css"; +@import "breadcrumbs.css"; +@import "meilisearch.css"; +@import "sphinx-design.css"; +@import "table-custom.css"; +@import "sphinx-gallery.css"; + +/* +* Code cell +*/ +.xref.std.std-ref { + color: var(--pst-color-inline-code); + font-family: "Inconsolata"; + font-weight: normal; + font-style: italic; + padding: 0.1rem 0.25rem; + padding-top: 0.1rem; + padding-right: 0.25rem; + padding-bottom: 0.1rem; + padding-left: 0.25rem; + font-size: 90%; + background-color: var(--pst-color-on-surface); + border: 1px solid var(--pst-color-border); + border-radius: 0.25rem; +} + +/* Reduce empty-space around Notes and Examples headings */ +p.rubric { + margin-top: 0.75em; + margin-bottom: 0.75em; +} + +/* +* Autosummary +*/ + +.autosummary tr:nth-child(odd), +.autosummary tr:nth-child(even) { + background-color: var(--pst-color-background); +} diff --git a/version/dev/_static/css/breadcrumbs.css b/version/dev/_static/css/breadcrumbs.css new file mode 100644 index 00000000..19c3eab0 --- /dev/null +++ b/version/dev/_static/css/breadcrumbs.css @@ -0,0 +1,110 @@ +/* Provided by the Sphinx base theme template at build time, +styles exclusively for the ansys-sphinx-theme classes. */ + +@import "ansys-sphinx-theme-variable.css"; + +/** +* Breadcrumbs +*/ + +ul.bd-breadcrumbs li.breadcrumb-item { + padding: 0px; + font-size: 12px; + display: flex; +} + +ul.bd-breadcrumbs li.breadcrumb-item:hover { + text-decoration: underline; + font-size: 12px; +} + +ul.bd-breadcrumbs li.breadcrumb-item a { + color: var(--ast-navbar-color); + font-size: 12px; +} + +ul.bd-breadcrumbs li.breadcrumb-item a:hover { + text-decoration: underline; +} + +ul.bd-breadcrumbs li.breadcrumb-item a:active { + color: var(--ast-color-text); +} + +.breadcrumb-item.active { + color: var(--ast-color-text); +} + +/** +* Version warning announcement +*/ + +#announcement_msg { + display: flex; + justify-content: center; + position: relative; + width: 100%; + padding: 0.5rem 12.5%; + text-align: center; +} + +#announcement_msg :after { + position: absolute; + width: 100%; + height: 100%; + left: 0; + top: 0; + background-color: rgb(223, 95, 114); + opacity: 0.2; + content: ""; + z-index: -1; +} + +#announcement_msg :empty { + display: none; +} + +#announcement_msg p { + font-weight: bold; + margin: auto; + color: black; +} + +html[data-theme="dark"] #announcement_msg :after { + background-color: lightpink; + opacity: 0.5; +} + +#announcement_msg a { + color: #1e6ddc; +} + +.sidebar-cheatsheets { + text-align: center; +} + +.sidebar-cheatsheets h4 { + font-weight: var(--pst-sidebar-header-font-weight) !important; + font-size: var(--pst-sidebar-header-font-size) !important; + margin-bottom: 0.5rem; +} + +.sidebar-cheatsheets a { + display: inline-flex; + border: 0.5px solid var(--pst-color-border); + padding: 0.25rem; + max-width: 80%; +} + +.sidebar-cheatsheets a:hover { + background-color: var(--pst-color-border); + color: var(--pst-color-text-base); +} + +.sidebar-cheatsheets img { + padding: 0rem; +} + +.bd-sidebar-primary { + padding: 0.5rem; +} diff --git a/version/dev/_static/css/custom.css b/version/dev/_static/css/custom.css new file mode 100644 index 00000000..9ce55e58 --- /dev/null +++ b/version/dev/_static/css/custom.css @@ -0,0 +1,41 @@ +@import "../ansys-sphinx-theme.css"; + +.col-md-3 { + flex: 0 0 30%; + max-width: 30%; +} +.col-xl-7 { + flex: 0 0 53.33333%; + max-width: 53.33333%; + } + +.bd-toc { + padding-top: 5em; +} + + +nav.bd-links ul li.toctree-l1 > a { + font-size: .90rem; +} + +nav.bd-links ul li.toctree-l2 > a { + font-size: .85rem; + text-indent: 1px; +} +nav.bd-links ul li.toctree-l3 > a { + font-size: .85rem; + text-indent: 2px; +} + +nav.bd-links ul li.toctree-l4 > a { + font-size: .8rem; + text-indent: 3px; +} + +div.cell_output { + text-align: left !important; +} + +div.nbinput.container div.input_area, div.nboutput.container div.output_area { + display: block; +} diff --git a/version/dev/_static/css/highlight.css b/version/dev/_static/css/highlight.css new file mode 100644 index 00000000..6d41658d --- /dev/null +++ b/version/dev/_static/css/highlight.css @@ -0,0 +1,83 @@ +/* + * The 'friendly' style from Pygments CSS style. Directly taken from: + * https://github.com/richleland/pygments-css + * License is 'UNLICENSE.txt'. + */ + +@import "../../ansys-sphinx-theme.css"; + +/* Do not show number cells */ +.nbinput .prompt, +.nboutput .prompt { + display: none; +} + +.highlight .hll { background-color: #ffffcc !important; } +.highlight { font-size: 1rem; background: #f0f0f0 !important; } +.highlight .c { color: #60a0b0 !important; font-style: italic !important; } /* Comment */ +.highlight .err { border: 1px solid #FF0000 !important; } /* Error */ +.highlight .k { color: #007020 !important; font-weight: bold !important; } /* Keyword */ +.highlight .o { color: #666666 !important; } /* Operator */ +.highlight .ch { color: #60a0b0 !important; font-style: italic !important; } /* Comment.Hashbang */ +.highlight .cm { color: #60a0b0 !important; font-style: italic !important; } /* Comment.Multiline */ +.highlight .cp { color: #007020 !important; } /* Comment.Preproc */ +.highlight .cpf { color: #60a0b0 !important; font-style: italic !important; } /* Comment.PreprocFile */ +.highlight .c1 { color: #60a0b0 !important; font-style: italic !important; } /* Comment.Single */ +.highlight .cs { color: #60a0b0 !important; background-color: #fff0f0 !important; } /* Comment.Special */ +.highlight .gd { color: #A00000 !important; } /* Generic.Deleted */ +.highlight .ge { font-style: italic !important; } /* Generic.Emph */ +.highlight .gr { color: #FF0000 !important; } /* Generic.Error */ +.highlight .gh { color: #000080 !important; font-weight: bold !important; } /* Generic.Heading */ +.highlight .gi { color: #00A000 !important; } /* Generic.Inserted */ +.highlight .go { color: #888888 !important; } /* Generic.Output */ +.highlight .gp { color: #c65d09 !important; font-weight: bold !important; } /* Generic.Prompt */ +.highlight .gs { font-weight: bold !important; } /* Generic.Strong */ +.highlight .gu { color: #800080 !important; font-weight: bold !important; } /* Generic.Subheading */ +.highlight .gt { color: #0044DD !important; } /* Generic.Traceback */ +.highlight .kc { color: #007020 !important; font-weight: bold !important; } /* Keyword.Constant */ +.highlight .kd { color: #007020 !important; font-weight: bold !important; } /* Keyword.Declaration */ +.highlight .kn { color: #007020 !important; font-weight: bold !important; } /* Keyword.Namespace */ +.highlight .kp { color: #007020 !important; } /* Keyword.Pseudo */ +.highlight .kr { color: #007020 !important; font-weight: bold !important; } /* Keyword.Reserved */ +.highlight .kt { color: #902000 !important; } /* Keyword.Type */ +.highlight .m { color: #40a070 !important; } /* Literal.Number */ +.highlight .s { color: #4070a0 !important; } /* Literal.String */ +.highlight .na { color: #4070a0 !important; } /* Name.Attribute */ +.highlight .nb { color: #007020 !important; } /* Name.Builtin */ +.highlight .nc { color: #0e84b5 !important; font-weight: bold !important; } /* Name.Class */ +.highlight .no { color: #60add5 !important; } /* Name.Constant */ +.highlight .nd { color: #555555 !important; font-weight: bold !important; } /* Name.Decorator */ +.highlight .ni { color: #d55537 !important; font-weight: bold !important; } /* Name.Entity */ +.highlight .ne { color: #007020 !important; } /* Name.Exception */ +.highlight .nf { color: #06287e !important; } /* Name.Function */ +.highlight .nl { color: #002070 !important; font-weight: bold !important; } /* Name.Label */ +.highlight .nn { color: #0e84b5 !important; font-weight: bold !important; } /* Name.Namespace */ +.highlight .nt { color: #062873 !important; font-weight: bold !important; } /* Name.Tag */ +.highlight .nv { color: #bb60d5 !important; } /* Name.Variable */ +.highlight .ow { color: #007020 !important; font-weight: bold !important; } /* Operator.Word */ +.highlight .w { color: #bbbbbb !important; } /* Text.Whitespace */ +.highlight .mb { color: #40a070 !important; } /* Literal.Number.Bin */ +.highlight .mf { color: #40a070 !important; } /* Literal.Number.Float */ +.highlight .mh { color: #40a070 !important; } /* Literal.Number.Hex */ +.highlight .mi { color: #40a070 !important; } /* Literal.Number.Integer */ +.highlight .mo { color: #40a070 !important; } /* Literal.Number.Oct */ +.highlight .sa { color: #4070a0 !important; } /* Literal.String.Affix */ +.highlight .sb { color: #4070a0 !important; } /* Literal.String.Backtick */ +.highlight .sc { color: #4070a0 !important; } /* Literal.String.Char */ +.highlight .dl { color: #4070a0 !important; } /* Literal.String.Delimiter */ +.highlight .sd { color: #4070a0 !important; font-style: italic !important; } /* Literal.String.Doc */ +.highlight .s2 { color: #4070a0 !important; } /* Literal.String.Double */ +.highlight .se { color: #4070a0 !important; font-weight: bold !important; } /* Literal.String.Escape */ +.highlight .sh { color: #4070a0 !important; } /* Literal.String.Heredoc */ +.highlight .si { color: #70a0d0 !important; font-style: italic !important; } /* Literal.String.Interpol */ +.highlight .sx { color: #c65d09 !important; } /* Literal.String.Other */ +.highlight .sr { color: #235388 !important; } /* Literal.String.Regex */ +.highlight .s1 { color: #4070a0 !important; } /* Literal.String.Single */ +.highlight .ss { color: #517918 !important; } /* Literal.String.Symbol */ +.highlight .bp { color: #007020 !important; } /* Name.Builtin.Pseudo */ +.highlight .fm { color: #06287e !important; } /* Name.Function.Magic */ +.highlight .vc { color: #bb60d5 !important; } /* Name.Variable.Class */ +.highlight .vg { color: #bb60d5 !important; } /* Name.Variable.Global */ +.highlight .vi { color: #bb60d5 !important; } /* Name.Variable.Instance */ +.highlight .vm { color: #bb60d5 !important; } /* Name.Variable.Magic */ +.highlight .il { color: #40a070 !important; } /* Literal.Number.Integer.Long */ diff --git a/version/dev/_static/css/meilisearch.css b/version/dev/_static/css/meilisearch.css new file mode 100644 index 00000000..fdb6b118 --- /dev/null +++ b/version/dev/_static/css/meilisearch.css @@ -0,0 +1,205 @@ +@import "https://cdn.jsdelivr.net/npm/docs-searchbar.js@latest/dist/cdn/docs-searchbar.min.css"; +@import "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css"; + +div[data-ds-theme] .searchbox { + overflow-y: scroll; + margin: auto; +} + +.docs-searchbar-suggestion--category-header { + background-color: var(--ast-suggestion-header-background); + border-radius: 4px; + text-align: left; + color: var(--ast-catagory-header-text) !important; + width: 680px; + padding: 4px; +} + +.dsb-suggestions { + width: 100%; + max-width: 140%; +} + +div[data-ds-theme] .meilisearch-autocomplete .dsb-dropdown-menu { + max-width: 1200px; + min-width: 800px; + width: 800px; +} +div[data-ds-theme] .meilisearch-autocomplete .docs-searchbar-suggestion { + width: 100%; +} + +div[data-ds-theme] .searchbox input { + height: 32px; + border-radius: 8px; + font-size: 18px; + font-family: "Open Sans", sans-serif; + box-shadow: 0px 0px 8px darkgrey; +} + +.docs-searchbar-footer { + display: none; +} + +.docs-searchbar-footer { + display: none; +} + +[class*="docs-searchbar-suggestion"] { + text-decoration: none; +} + +.docs-searchbar-suggestion--highlight { + box-shadow: none !important; +} + +div[data-ds-theme] .meilisearch-autocomplete { + text-align: center; + color: var(--pst-color-text-base); +} + +.form-control:focus, +.form-control:focus-visible, +.form-control { + background-color: var(--ast-search-bar-enable-background); + color: var(--ast-search-bar-enable-text); + font-size: 14px; + outline-color: var(--ast-search-bar-enable-border); + border: 0.5px solid var(--ast-search-bar-enable-border); + width: 670px; + max-width: 200%; + height: 40px; + margin-left: 5px; +} + +.search-button__wrapper.show input, +.search-button__wrapper.show svg { + font-size: 14px; +} + +.bd-search .search-button__kbd-shortcut { + background-color: var(--ast-search-bar-enable-background) !important; + box-shadow: none !important; + height: 40px; + display: flex; + flex-wrap: wrap; + align-content: center; +} + +.index-select { + color: var(--ast-search-bar-enable-text); + background: var(--ast-search-bar-enable-background); + height: 40px; + font-size: 14px; + font-family: "Open Sans", sans-serif; + border: 0.5px solid var(--ast-search-bar-enable-border); + border-radius: 4px; + box-shadow: none; + padding: 0px 8px; + margin-left: 2px; +} +:focus-visible { + outline: none; +} + +div[data-ds-theme] + .meilisearch-autocomplete + .dsb-dropdown-menu + [class^="dsb-dataset-"] { + position: relative; + border: 1px solid #d9d9d9; + background: var(--ast-search-bar-enable-background); + border-radius: 4px; + padding: 0 8px 8px; +} +div[data-ds-theme] .meilisearch-autocomplete .dsb-dropdown-menu { + max-height: 500px !important; + border: 1px solid #ccc; + left: -30px; + overflow-y: auto; +} + +div[data-ds-theme] .meilisearch-autocomplete .docs-searchbar-suggestion { + background: var(--ast-search-bar-enable-background); +} + +div[data-ds-theme] + .meilisearch-autocomplete + .docs-searchbar-suggestion--highlight { + color: var(--ast-suggestion-text-color) !important; + font-weight: 900; + background: transparent; + padding: 0 0.05em; +} + +.meilisearch-autocomplete .docs-searchbar-suggestion--text { + color: var(--ast-catagory-suggestion-text); + font-size: 12px; + line-height: var(--ast-global-line-height); +} + +div[data-ds-theme] + .meilisearch-autocomplete + .docs-searchbar-suggestion--subcategory-column { + width: None; + text-align: left; +} + +.meilisearch-autocomplete .docs-searchbar-suggestion--category-header { + width: 100%; + padding: 4px 8px; +} + +div[data-ds-theme] + .meilisearch-autocomplete + .docs-searchbar-suggestion--content { + display: block; +} + +div[data-ds-theme] .meilisearch-autocomplete .docs-searchbar-suggestion--title { + margin-bottom: 4px; + color: var(--ast-search-bar-enable-text); + font-size: 0.9em; + font-weight: 700; + width: 100%; +} + +/** +* Styling the scrollbar +*/ +div[data-ds-theme] + .meilisearch-autocomplete + .dsb-dropdown-menu::-webkit-scrollbar { + width: 0.5rem; + height: 0.5rem; +} + +div[data-ds-theme] + .meilisearch-autocomplete + .dsb-dropdown-menu::-webkit-scrollbar-thumb { + background: var(--ast-search-bar-enable-background); + border-radius: inherit; +} + +div[data-ds-theme] + .meilisearch-autocomplete + .dsb-dropdown-menu::-webkit-scrollbar-track { + background: var(--ast-search-bar-enable-background); +} + +.bd-search { + gap: 8px; + background-color: var(--ast-search-bar-enable-background); + border: 0px solid var(--ast-search-bar-enable-border); + margin-bottom: 300px; +} +#search-icon { + font-size: 24px; + width: 24px; + height: 24px; + color: var(--ast-search-bar-enable-text); +} + +.form-control:focus { + box-shadow: none; +} diff --git a/version/dev/_static/css/pydata-sphinx-theme-custom.css b/version/dev/_static/css/pydata-sphinx-theme-custom.css new file mode 100644 index 00000000..f966e2ab --- /dev/null +++ b/version/dev/_static/css/pydata-sphinx-theme-custom.css @@ -0,0 +1,722 @@ +/* Changes associated with the Ansys Sphinx Theme */ +/* for pydata-sphinx-theme */ +@import "../styles/pydata-sphinx-theme.css"; +@import "ansys-sphinx-theme-variable.css"; + +/* +* +* _secondary sidebar and primary sidebars +* _sidebar-primary.scss +* +*/ +.bd-sidebar-primary, +.bd-sidebar-secondary { + max-height: calc(100vh - var(--pst-header-height) - 1vh); + line-height: var(--ast-global-line-height); + border: none; + overflow: hidden; +} + +.sidebar-secondary-item { + border: none; +} + +nav.bd-links p.bd-links__title, +nav.bd-links p.caption { + font-size: var(--ast-font-sidebar-header); + color: var(--ast-sidebar-primary-text); +} + +nav.bd-links li > a { + font-size: var(--ast-font-sidebar-header); + color: var(--ast-sidebar-primary-text); + text-decoration: none; + line-height: var(--ast-global-line-height); + padding: 4px 24px; +} + +nav.bd-links li > a:hover { + color: var(--ast-sidebar-primary-text); + background: var(--ast-sidebar-hover-background); + box-shadow: 1px 1px 2px 0px var(--ast-sidebar-active-background); + border-radius: 4px; + text-decoration: none; +} + +nav.bd-links li > a.active, +nav.bd-links li > a.current { + color: var(--ast-color-text); + background: var(--ast-sidebar-active-background); + text-decoration: none; + box-shadow: 1px 1px 2px 0px var(--ast-sidebar-active-background); + border-radius: 4px; + font-weight: bold; +} + +/** +* sidebar primary with children +*/ + +.bd-sidebar-primary li.has-children .caption, +.bd-sidebar-primary li.has-children > .reference { + padding: 4px 32px; +} + +nav.bd-links .current > a { + color: var(--ast-color-text); + background: var(--ast-sidebar-active-background); + text-decoration: none; + box-shadow: 1px 1px 2px 0px var(--ast-sidebar-active-background); + border-radius: 4px; + font-weight: bold; +} +/** +* secondary sidebar +* _toc-inpage.scss +*/ +.toc-entry a.nav-link { + color: var(--ast-sidebar-primary-text); + line-height: var(--ast-global-line-height); +} + +.toc-entry a.nav-link.active, +.toc-entry a.nav-link.current { + color: var(--ast-color-link); + text-decoration: none; + box-shadow: none; +} + +.toc-entry a.nav-link.active:hover, +.toc-entry a.nav-link.current:hover { + color: var(--ast-color-link-hover); + text-decoration: none; + box-shadow: none; + font-weight: bold; +} + +.toc-h2 { + font-size: 14px; + padding: 0.05em; +} + +.toc-h3 { + font-size: 14px; +} + +.toc-h4 { + font-size: 14px; +} + +.toc-entry a.nav-link:hover { + color: var(--ast-color-link-hover); + text-decoration: none; +} + +/** +* _base.scss related changes +*/ + +.editthispage a { + color: var(--pst-color-text-base); +} + +/** +* +* Dropdown button +* _header.scss +* +*/ + +.bd-header ul.navbar-nav > li.nav-item > .nav-link { + color: var(--ast-navbar-color); + font-weight: 600; +} + +.bd-header ul.navbar-nav > li.nav-item > .nav-link:hover::before { + color: var(--ast-navbar-hover-color); + border-bottom: none; + filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.08)); +} + +.bd-header ul.navbar-nav > li.nav-item > .nav-link:hover { + color: var(--ast-navbar-hover-color); + border-color: var(--ast-navbar-hover-color); + filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.08)); +} + +.bd-header ul.navbar-nav > li.nav-item > .nav-link:active { + color: var(--ast-navbar-active-color); + border-color: var(--ast-navbar-active-border-color); + border-width: 2px; + filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.12)); +} + +.bd-header ul.navbar-nav > li.nav-item.current > .nav-link::before, +.bd-header ul.navbar-nav > li.nav-item.current > .nav-link::after { + color: var(--ast-navbar-active-color); + border-bottom: 2px solid var(--ast-navbar-active-border-color); +} + +.bd-header ul.navbar-nav > li.nav-item > .nav-link:focus-visible { + color: var(--ast-navbar-color); + box-shadow: var(--ast-ring-shadow-focused); + outline: none; + outline-offset: 0px; +} + +html .pst-navbar-icon { + color: var(--ast-navbar-color); +} + +html .pst-navbar-icon:hover { + color: var(--ast-navbar-hover-color); + border-color: var(--ast-navbar-hover-color); + filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.08)); +} + +a.nav-link.pst-navbar-icon { + color: var(--ast-navbar-color); + font-weight: bold; +} + +a.nav-link.pst-navbar-icon:hover { + color: var(--ast-navbar-hover-color); + border-color: var(--ast-navbar-hover-color); + filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.08)); + font-weight: bold; +} + +a.nav-link.pst-navbar-icon:active { + color: var(--ast-navbar-active-color); + border-color: var(--ast-navbar-active-border-color); + font-weight: bold; +} + +ul.navbar-icon-links { + column-gap: 10px; +} + +.bd-header .navbar-header-items__center, +.bd-header .navbar-header-items__end { + column-gap: 10px; +} + +/* +* dropdown button after 5 sections +*/ + +.dropdown-item:hover { + font-weight: bold; + background-color: transparent; +} + +/** +* _search.scss +* Search bar +*/ + +.search-button-field { + border-color: var(--ast-navbar-active-border-color); + font-size: var(--ast-nav-link-font-size); + background-color: transparent; + color: var(--ast-navbar-color); +} + +.search-button-field:hover { + border-color: var(--ast-navbar-active-border-color); + color: var(--ast-navbar-hover-color); + font-weight: bold; + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08); +} + +/** +* +* Side column size (first and second column from left) +* +*/ + +.col-md-3 { + flex: 0 0 20%; + max-width: 20%; +} + +a.headerlink { + color: #222; +} + +@media (min-width: 1200px) { + .container, + .container-lg, + .container-md, + .container-sm, + .container-xl { + max-width: 1200px; + } +} + +@media (min-width: 1600px) { + .container, + .container-lg, + .container-md, + .container-sm, + .container-xl { + max-width: 1600px; + } +} + +/** +* +* Navigation column (according to side column) +* _header.scss +* +*/ +.bd-header .navbar-header-items__start { + width: fit-content; + padding-right: 3rem; +} +/** +* header logo +*/ + +.bd-main .bd-content { + display: flex; + height: 100%; + justify-content: end; +} + +.bd-main .bd-content .bd-article-container .bd-article { + padding-left: 1rem; + padding-top: 1rem; + padding-right: 1rem; +} + +/** +* Bold font weight for **code** +*/ + +b, +strong { + font-weight: 900; +} + +/** +* _code.scss related changes +*/ +.docutils { + font-family: var(--pst-font-family-monospace); + font-weight: 500; +} + +#pst-back-to-top { + background: var(--ast-color-link); + color: var(--ast-color-text); +} + +/** +* _api.scss related changes +*/ + +.sig-prename.descclassname { + display: none; +} /* hide the class 'descclassname' for autoapi */ + +.sig { + font-family: "Consolas", "Menlo", "DejaVu Sans Mono", + "Bitstream Vera Sans Mono", monospace; +} + +.sig-name.descname { + color: var(--pst-color-inline-code); +} + +.sig-name { + color: var(--pst-color-sig); +} + +/** +* highlighted objects inside the api reference +*/ +dt:target, +span.highlighted { + background-color: var(--pst-color-codecell) !important; +} + +/** +* Increase empty-space around classes, methods, properties, etc. that are descendants +* of other items +*/ +dl.class dl.py { + margin-top: 2.5em; + margin-bottom: 2.5em; +} + +/** +* image padding before and after +*/ + +img { + padding-top: 1em; + padding-bottom: 1em; +} + +html[data-theme="dark"] .bd-content img:not(.only-dark):not(.dark-light) { + background: transparent; +} + +img.logo__image { + padding-top: 0rem; + padding-bottom: 0rem; +} + +/** +*Nav-bar entity right side. +*/ + +.list-group-item.active { + z-index: 2; + color: var(--pst-color-text-base) !important; +} + +/** +* admontions +*/ + +div.deprecated { + border-color: var(--pst-color-danger); + background-color: #dc354514; +} + +div.deprecated, +div.versionadded, +div.versionchanged { + background-color: transparent; +} + +.admonition, +div.admonition { + background-color: var(--pst-color-on-surface); +} + +/** +* Select only divisions that contain a dataframe, with enough specificity to override pydata css +*/ +div.nboutput + div.output_area.rendered_html.docutils.container:has(table.dataframe) { + background-color: transparent; +} + +aside.topic > p { + color: var(--pst-color-text-base) !important; +} + +/** +* search hide match +*/ + +div#searchbox p.highlight-link a { + background-color: var(--pst-color-search-match); +} + +.header-article__inner { + padding: 0 1rem; +} + +/** +* +* _links.scss +*/ + +/** +* links on paragraphs +*/ +a { + color: var(--ast-color-link); + text-decoration: none; +} + +a:active { + color: var(--ast-color-link-active); +} + +a:hover, +a:active:hover { + color: var(--ast-color-link-hover); + text-decoration: underline; +} + +a:visited:hover { + color: var(--ast-color-link-visited-hover); +} + +a:visited { + color: var(--ast-color-link-visited); +} + +a:focus-visible { + color: var(--ast-color-link); + box-shadow: var(--ast-ring-shadow-focused); +} + +a > code { + color: var(--ast-color-inline-code); +} + +code.literal { + color: var(--ast-color-inline-code); + font-family: "open sans", sans-serif; +} + +nav.bd-links li > a:focus-visible, +.nav-link:focus-visible, +a.nav-link.pst-navbar-icon:focus-visible, +.toc-entry a.nav-link:focus-visible, +nav.bd-links .current > a:focus-visible { + box-shadow: var(--ast-ring-shadow-focused); + outline: none; +} + +/** +* Admonitions +*/ + +.admonition > .admonition-title, +div.admonition > .admonition-title { + color: var(--ast-admonitions-color); + font-size: var(--ast-admonitions-font-size); + background-color: transparent !important; /* important tag because the admonition has a background color */ + margin-left: 8px; +} + +/** +* Admonitions icons +*/ +.admonition > .admonition-title:after, +div.admonition > .admonition-title:after, +span.versionmodified:before { + font-size: var(--ast-admonitions-icon-size); + height: var(--ast-admonition-icon-height); + width: var(--ast-admonition-icon-width); + left: 0px; +} + +span.versionmodified:before { + margin-right: 16px; /* separate component, to alligh with title, 8px padding + 8px padding from icon */ +} + +/** +* Admonitions title +*/ + +.admonition p.admonition-title ~ *, +div.admonition p.admonition-title ~ * { + margin-left: 40px; /* separate component, to alligh with title, 8px padding + 24px icon + 8px padding from icon */ + margin-right: 8px; + margin-top: 0px; +} + +.admonition, +div.admonition { + border: 2px solid; + padding: var(--ast-admonitions-padding); + box-shadow: none !important; /* important tag because the admonition has a box-shadow from pydata sphinx theme*/ + border-radius: var(--ast-admonitions-border-radius); +} + +/* warning attention caution important, warning */ + +.admonition.attention > .admonition-title:after, +div.admonition.attention > .admonition-title:after, +.admonition.caution > .admonition-title:after, +div.admonition.caution > .admonition-title:after, +.admonition.important > .admonition-title:after, +div.admonition.important > .admonition-title:after, +.admonition.warning > .admonition-title:after, +div.admonition.warning > .admonition-title:after { + color: var(--ast-admonition-warning-icon); +} + +.admonition.caution, +div.admonition.caution, +.admonition.attention, +div.admonition.attention, +.admonition.important, +div.admonition.important, +.admonition.warning, +div.admonition.warning { + border-color: var(--ast-admonition-warning-border); +} + +/* danger are error, danger, depreciated */ + +.admonition.danger > .admonition-title:after, +div.admonition.danger > .admonition-title:after, +.admonition.error > .admonition-title:after, +div.admonition.error > .admonition-title:after, +span.depreciated.changed:before { + color: var(--ast-admonition-danger-icon); +} + +.admonition.danger, +div.admonition.danger, +.admonition.error, +div.admonition.error, +div.deprecated { + border-color: var(--ast-admonition-danger-border); +} + +/*info are hint, note, see also, tip */ + +.admonition.info > .admonition-title:after, +div.admonition.info > .admonition-title:after, +.admonition.hint > .admonition-title:after, +div.admonition.hint > .admonition-title:after, +.admonition.note > .admonition-title:after, +div.admonition.note > .admonition-title:after, +.admonition.seealso > .admonition-title:after, +div.admonition.seealso > .admonition-title:after, +.admonition.tip > .admonition-title:after, +div.admonition.tip > .admonition-title:after { + color: var(--ast-admonition-info-icon); +} + +.admonition.info, +div.admonition.info, +.admonition.hint, +div.admonition.hint, +.admonition.note, +div.admonition.note, +.admonition.seealso, +div.admonition.seealso, +.admonition.tip, +div.admonition.tip { + border-color: var(--ast-admonition-info-border); +} + +/* success is version-added */ + +span.versionadded.changed:before { + color: var(--ast-admonition-success-icon); +} + +div.versionadded { + border-color: var(--ast-admonition-success-border); +} + +/* neutral is todo, version-change, topic */ + +div.deprecated, +div.versionadded, +div.versionchanged { + border-width: 2px; + border-style: solid; + padding: var(--ast-admonitions-padding); + border-radius: var(--ast-admonitions-border-radius); + box-shadow: none !important; /* important tag because the admonition has a box-shadow from pydata sphinx theme*/ +} + +div.deprecated > p, +div.versionadded > p, +div.versionchanged > p { + margin-left: 8px; +} + +span.versionmodified.changed:before, +.admonition.admonition-todo > .admonition-title:after, +div.admonition.admonition-todo > .admonition-title:after { + color: var(--ast-admonition-neutral-icon); +} + +.admonition.admonition-todo, +div.admonition.admonition-todo, +aside.topic, +div.versionchanged { + border-color: var(--ast-admonition-neutral-border); +} + +/** +* Dropdown _header.scss +*/ +.bd-header ul.navbar-nav > li.nav-item.dropdown > .dropdown-toggle { + color: var(--ast-navbar-color); + font-weight: 600; + font-size: var(--bs-nav-link-font-size); + border-radius: 4px; + border-color: var(--ast-dropdown-header-border); +} + +.bd-header ul.navbar-nav > li.nav-item.dropdown > .dropdown-toggle:hover { + color: var(--ast-navbar-hover-color); + border-bottom: none; + box-shadow: var(--ast-box-shadow-hover); +} + +.bd-header ul.navbar-nav .dropdown .dropdown-menu .dropdown-item { + color: var(--ast-navbar-color); + font-size: var(--bs-nav-link-font-size); + font-weight: 600; + border-radius: 4px; + border-color: var(--ast-dropdown-header-border); +} + +/** +* Dropdown _header.scss +*/ + +.version-switcher__menu a.list-group-item { + background-color: var(--ast-color-enable-card-background); + width: 200px; + border: none; + filter: drop-shadow(var(--ast-box-shadow-active)); + color: var(--ast-navbar-hover-color); + font-size: var(--ast-nav-link-font-size); + height: 40px; + padding: 0px 16px; + text-decoration: none; + border-radius: 4px; +} + +button.btn.version-switcher__button { + background-color: transparent; + border-color: var(--ast-navbar-active-border-color); + color: var(--ast-navbar-color); + font-size: var(--ast-nav-link-font-size); +} + +button.btn.version-switcher__button:hover { + border-color: var(--ast-navbar-active-border-color); + color: var(--ast-navbar-hover-color); +} + +.version-switcher__menu a.list-group-item:hover { + background-color: var(--ast-color-hover-card-background); + border: none; + color: var(--ast-navbar-hover-color); + font-size: var(--ast-nav-link-font-size); + text-decoration: none; +} + +.version-switcher__menu a.list-group-item:not(:last-child) { + border-bottom: none; +} + +.version-switcher__menu a.list-group-item.active { + box-shadow: none; +} + +.version-switcher__menu { + filter: box-shadow(var(--ast-box-shadow-active)); + border: none; +} + +/** +* Article content (_article.scss) +*/ + +.bd-main .bd-content .bd-article-container { + padding: 8px; + width: 1000px; +} + +.bd-sidebar-primary { + width: 20%; +} diff --git a/version/dev/_static/css/sphinx-design.css b/version/dev/_static/css/sphinx-design.css new file mode 100644 index 00000000..9f918dac --- /dev/null +++ b/version/dev/_static/css/sphinx-design.css @@ -0,0 +1,246 @@ +@import "../design-style.4045f2051d55cab465a707391d5b2007.min.css"; + +/** +* sphinx design button +*/ + +.sd-btn { + font-size: var(--ast-sphinx-design-font-size); + font-weight: 400; + font-family: var(--ast-sphinx-design-font-family); + padding: 8px 16px; + border-radius: var(--ast-sphinx-design-border-radius); +} + +.sd-btn-secondary { + font-size: var(--ast-sphinx-design-font-size); + font-weight: 400; + font-family: var(--ast-sphinx-design-font-family); + padding: 8px 16px; + border-radius: var(--ast-sphinx-design-border-radius); + color: var(--sd-color-secondary-text); + background-color: var(--sd-color-secondary); + border-color: var(--sd-color-secondary); +} + +blockquote { + background-color: var(--pst-color-background); +} + +/* Media query for medium-sized screens */ +@media screen and (max-width: 768px) { + .sd-card .sd-card-header { + font-size: var(--pst-font-size-h6); + } +} + +/* Media query for small-sized screens */ +@media screen and (max-width: 576px) { + .sd-card .sd-card-header { + font-size: var(--pst-font-size-h5); + } + .sd-card { + padding: 4px; + } +} +/** +* Sphinx-design dropdown +*/ + +.bd-content details.sd-dropdown:not([open]) > .sd-card-header { + border-radius: var(--ast-sphinx-design-border-radius); +} + +.bd-content details.sd-dropdown { + color: var(--ast-dropdown-text-color); + width: fit-content; + min-width: 400px; +} + +.bd-content details.sd-dropdown summary.sd-summary-title { + font-family: var(--ast-sphinx-design-font-family); + font-size: var(--ast-sphinx-design-font-size); + background: var(--ast-color-sphinx-design-background) !important; + border: 1px solid var(--ast-dropdown-border-color) !important; + border-radius: var(--ast-sphinx-design-border-radius); + padding: 8px 12px; + text-align: left; +} + +.bd-content details.sd-dropdown summary.sd-summary-title:hover { + background-color: var(--ast-color-hover-card-background) !important; + border: 1px solid var(--ast-dropdown-border-color-hover) !important; + border-radius: var(--ast-sphinx-design-border-radius); +} + +.bd-content + details.sd-dropdown + summary.sd-card-header + + div.sd-summary-content { + background-color: var(--ast-color-sphinx-design-background); + border-left: none !important; +} + +.bd-content + details.sd-dropdown + .sd-summary-title:active + + div.sd-summary-content:active { + background-color: var(--ast-color-enable-card-background); + border-color: var(--ast-color-enable-border); +} + +.bd-content + details.sd-dropdown + .sd-summary-title:hover + + div.sd-summary-content:hover { + background-color: var(--ast-color-hover-card-background); + border-color: var(--ast-color-hover-border); + border-left: none; +} + +.bd-content + details.sd-dropdown + summary.sd-summary-title:focus + + div.sd-summary-content:focus { + background-color: var(--ast-color-sphinx-design-background); + border-radius: var(--ast-sphinx-design-border-radius); + border-color: var(--pst-color-border); + border-left: none; +} + +details.sd-dropdown summary.sd-card-header + div.sd-summary-content { + color: var(--ast-color-sphinx-design-primary); + font-family: var(--ast-sphinx-design-font-family); + font-size: var(--ast-sphinx-design-font-size); +} + +/** +* Sphinx-design tab +*/ + +.bd-content .sd-tab-set > label { + font-family: var(--ast-sphinx-design-font-family); + padding: 12px 0px; + border-style: none none solid none; + color: var(--ast-color-sphinx-design-primary); + font-size: var(--ast-sphinx-design-font-size); + margin-inline-end: 16px; + transform: none; + margin-bottom: 1px; +} + +.bd-content .sd-tab-set > input:checked + label:hover, +.bd-content .sd-tab-set > input:not(:checked, :focus-visible) + label:hover { + color: var(--ast-color-sphinx-design-primary); + font-family: var(--ast-sphinx-design-font-family); +} + +.bd-content .sd-tab-set > input + label:focus-visible, +.bd-content + .sd-tab-set + > input:not(:checked, :focus-visible) + + label:focus-visible { + background-color: var(--ast-background-tab-focus); + border-color: transparent transparent var(--ast-tab-border-color-hover) + transparent; + border-width: 0px 0px 2px 0px; + text-decoration-line: none; +} + +.bd-content .sd-tab-set > input:checked + label { + background-color: transparent; + border-color: transparent transparent var(--ast-tab-border-color-active) + transparent; + border-width: 0px 0px 2px 0px; + border-style: none none solid none; + transform: none; +} + +.bd-content .sd-tab-set > input:checked + label:hover { + background-color: var(--ast-background-tab-hover); + border-color: transparent transparent var(--ast-tab-border-color-hover) + transparent; + border-width: 0px 0px 2px 0px; +} + +.bd-content .sd-tab-set > input:not(:checked, :focus-visible) + label { + background-color: transparent; + border-color: transparent transparent var(--ast-tab-border-color) transparent; + border-width: 0px 0px 1px 0px; + text-decoration-line: none; + font-weight: normal; +} + +.bd-content .sd-tab-set > input:not(:checked, :focus-visible) + label:hover { + background-color: var(--ast-background-tab-hover); + border-color: transparent transparent var(--ast-tab-border-color-hover) + transparent; + border-width: 0px 0px 2px 0px; + border-style: none none solid none; + text-decoration: none; +} + +.bd-content .sd-tab-set .sd-tab-content { + border: none; + font-family: var(--ast-sphinx-design-font-family); + font-size: var(--ast-sphinx-design-font-size); + color: var(--ast-color-sphinx-design-primary); +} + +/* Media query for medium-sized screens */ +@media screen and (max-width: 768px) { + .sd-tab-set > input:not(.focus-visible) + label { + font-size: 14px; + } +} + +/* Media query for small-sized screens */ +@media screen and (max-width: 576px) { + .sd-tab-set > input:not(.focus-visible) + label { + font-size: 12px; + } +} + +/** +* Sphinx-design card +*/ + +.bd-content .sd-card .sd-card-body, +.bd-content .sd-card .sd-card-footer { + font-size: var(--ast-sphinx-design-font-size); + border: none; + background-color: var(--ast-color-sphinx-design-background); + font-family: var(--ast-sphinx-design-font-family); + color: var(--ast-color-sphinx-design-primary); + border-radius: 8px; +} + +.bd-content .sd-card .sd-card-title, +.bd-content .sd-card .sd-card-header { + font-size: 16px; + border: none; + background-color: var(--ast-color-sphinx-design-background); + font-family: var(--ast-sphinx-design-font-family); +} + +.bd-content .sd-card { + border: none; + border-radius: 8px; + box-shadow: var(--ast-box-shadow-hover) !important; + color: var(--ast-color-sphinx-design-primary); + background-color: var(--ast-color-sphinx-design-background); +} + +.bd-content .sd-card:hover { + box-shadow: var(--ast-box-shadow-hover) !important; +} + +.sd-hide-link-text:focus { + outline: none; + box-shadow: none; +} + +.bd-content .sd-card .sd-stretched-link:focus-visible:after { + outline: none; + box-shadow: var(--ast-ring-shadow-focused); +} diff --git a/version/dev/_static/css/sphinx-gallery.css b/version/dev/_static/css/sphinx-gallery.css new file mode 100644 index 00000000..dbd25dc2 --- /dev/null +++ b/version/dev/_static/css/sphinx-gallery.css @@ -0,0 +1,56 @@ +@import "ansys-sphinx-theme-variable.css"; + +/** +* Sphinx gallery output cell +*/ + +.highlight pre { + font-size: 0.9em; +} + +/** +* Sphinx gallery download button text +*/ + +a > code.download { + font-family: var(--pst-font-family-base); + color: var(--pst-color-link); + text-decoration: none; + font-weight: normal; +} + +div.sphx-glr-download a, +div.sphx-glr-download a:hover { + background-image: none; + color: var(--ast-sphinx-gallery-download-text); + text-decoration: none; + border-radius: 4px; + height: 36px; + padding: 0px 16px; + display: flex; + align-items: flex-start; + justify-content: center; + flex-wrap: wrap; + flex-direction: column; +} +div.sphx-glr-download code.download, +a.reference.download:before { + color: var(--ast-sphinx-gallery-download-text); +} +div.sphx-glr-download a:hover { + background-color: var(--ast-sphinx-gallery-download-background-hover); +} + +div.sphx-glr-download a { + background-color: var(--ast-sphinx-gallery-download-background); +} + +.docutils.container { + display: flex; + flex-direction: row; + flex-wrap: wrap; + align-content: center; + justify-content: flex-start; + gap: 10px; + margin: initial; +} diff --git a/version/dev/_static/css/table-custom.css b/version/dev/_static/css/table-custom.css new file mode 100644 index 00000000..5411d1b7 --- /dev/null +++ b/version/dev/_static/css/table-custom.css @@ -0,0 +1,116 @@ +/** +* Table +* +* the table variables. +*/ + +.table { + --bs-table-bg: var(--ast-color-table-background); + border-spacing: 0; + border-collapse: separate; + overflow: hidden; + vertical-align: middle; + overflow-y: scroll; + scrollbar-width: none; + -ms-overflow-style: none; + border-color: var(--ast-table-outer-border); + background-color: var(--ast-color-table-background); +} + +tbody, +td, +tfoot, +th, +thead, +tr { + border-bottom: 1px solid var(--ast-color-table-inner-border); + background-color: var(--ast-color-table-background); + font-family: var(--ast-font-family-base); + font-size: var(--ast-table-font-size); +} + +.table > :not(caption) > * > * { + padding: 0px 16px; +} + +/** +* Table header +*/ +th { + line-height: 40px; + color: var(--ast-color-table-header-text) !important; + font-size: var(--ast-table-header-font-size) !important; +} + +/** +* Table body +*/ + +tr { + line-height: var(--ast-global-line-height); + height: 56px; + color: var(--ast-color-table-cell-text); +} + +/** +* Table hover +*/ + +tbody :hover, +td :hover, +tfoot :hover, +th :hover, +thead :hover, +tr :hover { + background-color: var(--ast-color-table-row-hover-bg); + font-family: var(--ast-font-family-base); +} + +.table :hover { + background-color: var(--ast-color-table-row-hover-bg); +} + +/** +* Table active +*/ + +.table :active { + background-color: var(--ast-color-table-active-bg); +} +/** +* Table dataframes +*/ + +table.dataframe tr { + font-size: var(--ast-table-font-size); + line-height: 56px; + color: var(--ast-color-table-cell-text); +} + +table.dataframe th { + font-size: var(--ast-table-font-size); + line-height: 40px; + color: var(--ast-color-table-header-text) !important; +} + +table.dataframe :hover { + background-color: var(--ast-color-table-row-hover-bg); + font-family: var(--ast-font-family-base); +} + +table.dataframe :active { + background-color: var(--ast-color-table-active-bg); + font-family: var(--ast-font-family-base); +} + +table.dataframe { + background-color: var(--ast-color-table-background); +} + +.table td ~ td, +.table td ~ th, +.table th ~ td, +.table th ~ th, +.bd-content .nboutput .output_area.rendered_html table.dataframe th ~ td { + border-left: 1px solid var(--ast-color-table-inner-border); +} diff --git a/version/dev/_static/design-tabs.js b/version/dev/_static/design-tabs.js new file mode 100644 index 00000000..2952d2e2 --- /dev/null +++ b/version/dev/_static/design-tabs.js @@ -0,0 +1,101 @@ +// @ts-check + +// Extra JS capability for selected tabs to be synced +// The selection is stored in local storage so that it persists across page loads. + +/** + * @type {Record