Initial open-source release

Claude-Session: https://claude.ai/code/session_01B65qLEKnkeYTGdbwhLpjCu
Цей коміт міститься в:
l0ng-ai committed 2026-10-22 18:55:10 +08:00
коміт 9a2025b76e
2034 files changed
+243381

No files matched your search

+152
Переглянути файл
@@ -0,0 +1,152 @@
/*
* Line-number gutter element class; the marker is a pseudo-element that, like
* IDEA, replaces the number (centred on the element's content box).
*/
.bp {
position: relative;
color: transparent !important;
}
.bp::before {
content: "";
position: absolute;
left: calc(50% + 1px);
top: 50%;
width: 1em;
height: 1em;
transform: translate(-50%, -50%);
border-radius: 50%;
background: var(--danger);
box-sizing: border-box;
pointer-events: none;
}
.normal::before {
background: var(--danger);
}
/* Disabled / muted: hollow circle. */
.disabled::before {
background: transparent;
border: 1.5px solid var(--danger);
}
/* Not bound by the adapter. */
.unverified::before {
background: var(--fg-gutter);
}
/* Condition / hit count: dot with a small notch. */
.conditional::before {
background: radial-gradient(circle at 50% 50%, var(--bg-app) 0 0.16em, var(--danger) 0.18em);
}
/* Logpoint: diamond. */
.log::before {
border-radius: 1.5px;
width: 0.8em;
height: 0.8em;
transform: translate(-50%, -50%) rotate(45deg);
}
/* Bound by the debugger in a running session (expui breakpointValid). */
.verified::before {
border-radius: 0;
background: url("../../../ui/expui/breakpoints/breakpointValid.svg") center / contain no-repeat;
}
:global(:root[data-theme^="dark"]) .verified::before {
background-image: url("../../../ui/expui/breakpoints/breakpointValid_dark.svg");
}
/* Method breakpoints / field watchpoints (expui icons). */
.method::before {
border-radius: 0;
background: url("../../../ui/expui/breakpoints/breakpointMethod.svg") center / contain no-repeat;
}
:global(:root[data-theme^="dark"]) .method::before {
background-image: url("../../../ui/expui/breakpoints/breakpointMethod_dark.svg");
}
.methodDisabled::before {
border-radius: 0;
background: url("../../../ui/expui/breakpoints/breakpointMethodDisabled.svg") center / contain no-repeat;
}
:global(:root[data-theme^="dark"]) .methodDisabled::before {
background-image: url("../../../ui/expui/breakpoints/breakpointMethodDisabled_dark.svg");
}
.methodVerified::before {
border-radius: 0;
background: url("../../../ui/expui/breakpoints/breakpointMethodValid.svg") center / contain no-repeat;
}
:global(:root[data-theme^="dark"]) .methodVerified::before {
background-image: url("../../../ui/expui/breakpoints/breakpointMethodValid_dark.svg");
}
.field::before {
border-radius: 0;
background: url("../../../ui/expui/breakpoints/breakpointField.svg") center / contain no-repeat;
}
:global(:root[data-theme^="dark"]) .field::before {
background-image: url("../../../ui/expui/breakpoints/breakpointField_dark.svg");
}
.fieldDisabled::before {
border-radius: 0;
background: url("../../../ui/expui/breakpoints/breakpointFieldDisabled.svg") center / contain no-repeat;
}
:global(:root[data-theme^="dark"]) .fieldDisabled::before {
background-image: url("../../../ui/expui/breakpoints/breakpointFieldDisabled_dark.svg");
}
.fieldVerified::before {
border-radius: 0;
background: url("../../../ui/expui/breakpoints/breakpointFieldValid.svg") center / contain no-repeat;
}
:global(:root[data-theme^="dark"]) .fieldVerified::before {
background-image: url("../../../ui/expui/breakpoints/breakpointFieldValid_dark.svg");
}
/* Beat the caret row (`.cm-activeLine`), as IDEA does; the suspended line wins over a breakpoint. */
:global(.cm-editor) :global(.cm-line).bpLine {
background: var(--bg-breakpoint-line);
}
:global(.cm-editor) :global(.cm-line).execLine {
background: var(--bg-debug-line);
}
.inlineValue {
margin-left: 24px;
color: var(--syn-inline-value);
font-size: var(--fs-ui);
font-family: var(--font-mono);
white-space: pre;
pointer-events: none;
-webkit-user-select: none;
user-select: none;
}
/* Data Views › Show value tooltip on mouse hover. */
.valueTooltip {
max-width: 520px;
padding: 4px 8px;
font-family: var(--font-mono);
font-size: var(--fs-code);
white-space: pre-wrap;
word-break: break-word;
}
.valueName {
color: var(--fg-strong);
}
.valueType {
color: var(--fg-subtle);
}