C++ / fmt (pull_request) Failing after 4s
C++ / build (pull_request) Failing after 9s
C++ / clang-tidy (pull_request) Failing after 9s
JS/TS / fmt (pull_request) Successful in 10s
JS/TS / lint (pull_request) Successful in 9s
Python / static (pull_request) Successful in 34s
Rust / build (pull_request) Successful in 1m10s
Python / verify (pull_request) Successful in 1m53s
Rust / fmt (pull_request) Successful in 34s
Rust / clippy (pull_request) Successful in 57s
48 lines
1018 B
QML
48 lines
1018 B
QML
import QtQuick
|
|
import ZShell.Config
|
|
import ZShell.Llm
|
|
import qs.Components
|
|
import qs.Services
|
|
|
|
Item {
|
|
id: root
|
|
|
|
required property string latex
|
|
property color mathColor: Colors.palette.m3onSurface
|
|
property real fontSize: Tokens.font.size.large
|
|
|
|
implicitHeight: Math.max(equationImage.height, fallbackText.contentHeight) + Tokens.padding.small * 2
|
|
|
|
LlmMathText {
|
|
id: math
|
|
|
|
latex: root.latex
|
|
color: root.mathColor
|
|
fontPointSize: root.fontSize
|
|
devicePixelRatio: Screen.devicePixelRatio
|
|
}
|
|
|
|
Image {
|
|
id: equationImage
|
|
|
|
anchors.centerIn: parent
|
|
source: math.imageId.length ? "image://llmmath/" + math.imageId : ""
|
|
visible: math.ok
|
|
fillMode: Image.PreserveAspectFit
|
|
smooth: true
|
|
width: Math.min(math.width, root.width)
|
|
height: math.width > 0 ? width * (math.height / math.width) : 0
|
|
}
|
|
|
|
CustomText {
|
|
id: fallbackText
|
|
|
|
anchors.centerIn: parent
|
|
color: root.mathColor
|
|
font: Tokens.font.mono.small
|
|
text: root.latex
|
|
wrapMode: Text.WrapAtWordBoundaryOrAnywhere
|
|
visible: !math.ok
|
|
}
|
|
}
|