anentrypoint-design 0.0.324 → 0.0.326
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app-shell.css +3 -3
- package/dist/247420.css +55 -46
- package/dist/247420.js +82 -19
- package/package.json +7 -1
- package/scripts/lint-glyphs.mjs +105 -0
- package/scripts/lint-null-children.mjs +129 -0
- package/src/community-app.js +3 -3
- package/src/components/chat-message-parts.js +4 -3
- package/src/components/chat.js +5 -4
- package/src/components/content.js +9 -5
- package/src/components/editor-primitives.js +2 -2
- package/src/components/files-modals.js +5 -4
- package/src/components/freddie/helpers.js +1 -1
- package/src/components/freddie.js +1 -9
- package/src/components/interaction-primitives.js +6 -6
- package/src/components/sessions.js +15 -0
- package/src/components/shell.js +8 -8
- package/src/components/theme-toggle.js +2 -2
- package/src/components.js +1 -1
- package/src/css/app-shell/catalog-theme.css +4 -8
- package/src/css/app-shell/data-density.css +4 -7
- package/src/css/app-shell/hero-content.css +4 -6
- package/src/css/app-shell/states-interactions.css +25 -0
- package/src/i18n.js +58 -0
- package/src/index.js +7 -2
- package/src/kits/os/freddie/pages-chat.js +4 -4
- package/src/kits/os/freddie/pages-tools.js +1 -1
- package/src/kits/os/terminal-app.js +1 -1
- package/src/kits/slides/deck-stage-state.js +3 -3
- package/src/lint.js +10 -0
- package/src/page-html.js +121 -4
- package/src/theme.js +7 -7
- package/src/uid.js +16 -0
package/app-shell.css
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/* app-shell.css -- re-exports the split source sheets in src/css/app-shell/
|
|
2
2
|
in their original order. This file is a published package export consumed
|
|
3
|
-
directly via <link rel="stylesheet" href="app-shell.css"> by preview
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
directly via <link rel="stylesheet" href="app-shell.css"> by preview and
|
|
4
|
+
ui_kits index pages (never through the build step, which reads the split
|
|
5
|
+
files directly for byte-identical dist output -- see scripts/build.mjs).
|
|
6
6
|
Splitting only: no rule was added, removed, or reordered versus the
|
|
7
7
|
original monolithic app-shell.css. */
|
|
8
8
|
@import url('./src/css/app-shell/base.css');
|
package/dist/247420.css
CHANGED
|
@@ -1842,12 +1842,10 @@
|
|
|
1842
1842
|
.ds-247420 .row-form input:focus-visible,
|
|
1843
1843
|
.ds-247420 .row-form textarea:focus-visible { box-shadow: var(--focus-ring-inset); }
|
|
1844
1844
|
|
|
1845
|
-
/* Field char counter (TextField maxLength)
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
text-align: right;
|
|
1850
|
-
}
|
|
1845
|
+
/* Field char counter (TextField maxLength) — canonical definition is with
|
|
1846
|
+
the rest of the .ds-field family below (states-interactions.css); this
|
|
1847
|
+
duplicate was removed to stop the two bodies fighting on stylesheet load
|
|
1848
|
+
order. */
|
|
1851
1849
|
|
|
1852
1850
|
/* Multi-column form layout (Form columns prop) */
|
|
1853
1851
|
.ds-247420 .row-form[data-columns="2"] { grid-template-columns: repeat(2, 1fr); }
|
|
@@ -2946,14 +2944,10 @@
|
|
|
2946
2944
|
.ds-247420 .ds-shortcuts-hint .ds-kbd { white-space: normal; max-width: 100%; }
|
|
2947
2945
|
.ds-247420 .ds-kbd-caps { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px; }
|
|
2948
2946
|
.ds-247420 .ds-kbd-sep { color: var(--fg-3); font-size: var(--fs-micro); padding: 0 2px; }
|
|
2949
|
-
|
|
2950
|
-
|
|
2951
|
-
|
|
2952
|
-
|
|
2953
|
-
border-bottom-width: 2px;
|
|
2954
|
-
font-family: var(--ff-mono); font-size: var(--fs-micro); color: var(--fg-2);
|
|
2955
|
-
white-space: nowrap;
|
|
2956
|
-
}
|
|
2947
|
+
/* .ds-kbd base definition lives in editor-primitives.css (canonical home —
|
|
2948
|
+
it owns the fuller ds-kbd-group/ds-kbd-row family this key chip belongs
|
|
2949
|
+
to); this file only carries the .ds-shortcuts-hint contextual overrides
|
|
2950
|
+
above. */
|
|
2957
2951
|
|
|
2958
2952
|
/* ============================================================
|
|
2959
2953
|
Theme toggle (segmented + compact) — bound to src/theme.js
|
|
@@ -3530,6 +3524,20 @@
|
|
|
3530
3524
|
Comprehensive improvements for perfect UX across all surfaces
|
|
3531
3525
|
============================================================ */
|
|
3532
3526
|
|
|
3527
|
+
/* ------------------------------------------------------------
|
|
3528
|
+
Table — clickable row focus ring
|
|
3529
|
+
Table()'s onRowClick path (content.js) sets class="clickable"
|
|
3530
|
+
role="button" tabindex="0" on the <tr>; the browser's native
|
|
3531
|
+
:focus-visible outline on a <tr> renders inconsistently across
|
|
3532
|
+
engines (often clipped by table border-collapse), so it needs
|
|
3533
|
+
the same explicit outline treatment every other interactive
|
|
3534
|
+
primitive in this file gets, via the shared --focus-* tokens.
|
|
3535
|
+
-------------------------------------------------------------- */
|
|
3536
|
+
.ds-247420 tr.clickable:focus-visible {
|
|
3537
|
+
outline: var(--focus-w) solid var(--focus-color);
|
|
3538
|
+
outline-offset: calc(-1 * var(--focus-offset));
|
|
3539
|
+
}
|
|
3540
|
+
|
|
3533
3541
|
/* ------------------------------------------------------------
|
|
3534
3542
|
Component States — Disabled, Loading, Error, Success
|
|
3535
3543
|
-------------------------------------------------------------- */
|
|
@@ -3910,14 +3918,25 @@
|
|
|
3910
3918
|
}
|
|
3911
3919
|
.ds-247420 .ds-field-label {
|
|
3912
3920
|
font-size: var(--fs-sm, 14px);
|
|
3921
|
+
font-weight: 500;
|
|
3913
3922
|
color: var(--fg-2);
|
|
3914
3923
|
line-height: 1.3;
|
|
3915
3924
|
}
|
|
3925
|
+
.ds-247420 .ds-field-required {
|
|
3926
|
+
color: var(--danger);
|
|
3927
|
+
font-weight: 700;
|
|
3928
|
+
margin-left: 2px;
|
|
3929
|
+
}
|
|
3916
3930
|
.ds-247420 .ds-field-hint {
|
|
3917
3931
|
font-size: var(--fs-tiny, 13px);
|
|
3918
3932
|
color: var(--fg-3);
|
|
3919
3933
|
line-height: 1.35;
|
|
3920
3934
|
}
|
|
3935
|
+
.ds-247420 .ds-field-error {
|
|
3936
|
+
color: var(--danger);
|
|
3937
|
+
font-size: var(--fs-tiny, 13px);
|
|
3938
|
+
font-weight: 500;
|
|
3939
|
+
}
|
|
3921
3940
|
.ds-247420 .ds-field-count {
|
|
3922
3941
|
font-size: var(--fs-tiny, 13px);
|
|
3923
3942
|
color: var(--fg-3);
|
|
@@ -4963,13 +4982,10 @@
|
|
|
4963
4982
|
.ds-247420 .ds-sub-btn:hover { border-color: var(--accent); color: var(--accent-ink); }
|
|
4964
4983
|
.ds-247420 .ds-sub-btn span { display: block; font-size: 18px; font-weight: 700; color: var(--accent-ink); }
|
|
4965
4984
|
|
|
4966
|
-
/* SessionRow
|
|
4967
|
-
|
|
4968
|
-
|
|
4969
|
-
|
|
4970
|
-
border-bottom: var(--bw-hair) solid var(--bg-3); cursor: pointer;
|
|
4971
|
-
}
|
|
4972
|
-
.ds-247420 .ds-session-row:hover { background: var(--bg-3); }
|
|
4985
|
+
/* SessionRow — base .ds-session-row (layout, hover/focus/active states,
|
|
4986
|
+
rail-tone indicators) is canonically defined in chat.css alongside the
|
|
4987
|
+
rest of the chat session-list component; this file only carries the
|
|
4988
|
+
dev/admin-row sub-parts (id/counts/devcnt/span) that decorate it. */
|
|
4973
4989
|
.ds-247420 .ds-session-row-id {
|
|
4974
4990
|
font-family: var(--ff-mono); font-size: var(--fs-micro); color: var(--accent-ink);
|
|
4975
4991
|
flex: 0 1 160px; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
|
|
@@ -9094,25 +9110,10 @@
|
|
|
9094
9110
|
display: flex; flex-direction: column; gap: var(--space-1, 4px);
|
|
9095
9111
|
margin-bottom: var(--space-2, 8px);
|
|
9096
9112
|
}
|
|
9097
|
-
.ds-
|
|
9098
|
-
|
|
9099
|
-
|
|
9100
|
-
|
|
9101
|
-
}
|
|
9102
|
-
.ds-247420 .ds-field-required {
|
|
9103
|
-
color: var(--danger);
|
|
9104
|
-
font-weight: 700;
|
|
9105
|
-
margin-left: 2px;
|
|
9106
|
-
}
|
|
9107
|
-
.ds-247420 .ds-field-hint {
|
|
9108
|
-
color: var(--fg-3, var(--fg-2));
|
|
9109
|
-
font-size: var(--fs-tiny, 12px);
|
|
9110
|
-
}
|
|
9111
|
-
.ds-247420 .ds-field-error {
|
|
9112
|
-
color: var(--danger);
|
|
9113
|
-
font-size: var(--fs-tiny, 12px);
|
|
9114
|
-
font-weight: 500;
|
|
9115
|
-
}
|
|
9113
|
+
/* .ds-field-label / .ds-field-required / .ds-field-hint / .ds-field-error
|
|
9114
|
+
canonical definitions now live in app-shell.css alongside the rest of the
|
|
9115
|
+
.ds-field family (this file's .ds-field-wrap consumes them by class name).
|
|
9116
|
+
Removed here to stop the two bodies fighting on stylesheet load order. */
|
|
9116
9117
|
.ds-247420 .ds-field-wrap [aria-invalid="true"] {
|
|
9117
9118
|
border-color: var(--danger) !important;
|
|
9118
9119
|
}
|
|
@@ -10200,7 +10201,15 @@ html.ds-247420 .ca-app {
|
|
|
10200
10201
|
}
|
|
10201
10202
|
}
|
|
10202
10203
|
|
|
10203
|
-
.ds-
|
|
10204
|
+
/* .ds-cli-block — the multi-row article/transcript container (CliBlock()'s
|
|
10205
|
+
outer wrapper holding stacked .ds-cli-row / .ds-cli-comment children).
|
|
10206
|
+
Distinct from the bare `.cli` single prompt+cmd row primitive owned by
|
|
10207
|
+
app-shell.css (Install(), HeroFromPageData(), terminal/site quickstart
|
|
10208
|
+
lines) — the two used to share the `.cli` selector with incompatible
|
|
10209
|
+
display models (flex row vs block transcript), so whichever stylesheet
|
|
10210
|
+
loaded last silently won for both consumers. Renamed here to remove the
|
|
10211
|
+
collision; see content.js CliBlock(). */
|
|
10212
|
+
.ds-247420 .ds-cli-block {
|
|
10204
10213
|
display: block;
|
|
10205
10214
|
background: var(--panel-1);
|
|
10206
10215
|
border-radius: var(--r-0);
|
|
@@ -10215,7 +10224,7 @@ html.ds-247420 .ca-app {
|
|
|
10215
10224
|
white-space: pre-wrap;
|
|
10216
10225
|
word-break: break-word;
|
|
10217
10226
|
}
|
|
10218
|
-
.ds-247420 .cli .ds-cli-comment {
|
|
10227
|
+
.ds-247420 .ds-cli-block .ds-cli-comment {
|
|
10219
10228
|
color: var(--panel-text-3);
|
|
10220
10229
|
white-space: pre-wrap;
|
|
10221
10230
|
word-break: break-word;
|
|
@@ -10223,20 +10232,20 @@ html.ds-247420 .ca-app {
|
|
|
10223
10232
|
padding: 3px 0;
|
|
10224
10233
|
line-height: 1.6;
|
|
10225
10234
|
}
|
|
10226
|
-
.ds-247420 .cli .ds-cli-comment:empty::before { content: '\00a0'; }
|
|
10227
|
-
.ds-247420 .cli .ds-cli-row {
|
|
10235
|
+
.ds-247420 .ds-cli-block .ds-cli-comment:empty::before { content: '\00a0'; }
|
|
10236
|
+
.ds-247420 .ds-cli-block .ds-cli-row {
|
|
10228
10237
|
display: flex;
|
|
10229
10238
|
gap: 10px;
|
|
10230
10239
|
padding: 3px 0;
|
|
10231
10240
|
white-space: pre-wrap;
|
|
10232
10241
|
word-break: break-word;
|
|
10233
10242
|
}
|
|
10234
|
-
.ds-247420 .cli .ds-cli-row .prompt {
|
|
10243
|
+
.ds-247420 .ds-cli-block .ds-cli-row .prompt {
|
|
10235
10244
|
color: var(--panel-accent);
|
|
10236
10245
|
flex: 0 0 auto;
|
|
10237
10246
|
user-select: none;
|
|
10238
10247
|
}
|
|
10239
|
-
.ds-247420 .cli .ds-cli-row .cmd {
|
|
10248
|
+
.ds-247420 .ds-cli-block .ds-cli-row .cmd {
|
|
10240
10249
|
color: var(--panel-text);
|
|
10241
10250
|
flex: 1 1 auto;
|
|
10242
10251
|
white-space: pre-wrap;
|