@things-factory/ai-assistant 10.1.108 → 10.1.109

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.
@@ -2019,6 +2019,42 @@ export class OxAssistantChat extends LitElement {
2019
2019
  color: inherit;
2020
2020
  }
2021
2021
 
2022
+ /* The entry card's way to the large review - a quiet action under its table, never a second run button. */
2023
+ .workspace-review {
2024
+ display: flex;
2025
+ align-items: center;
2026
+ gap: 5px;
2027
+ margin: 6px 0 0 auto;
2028
+ padding: 5px 11px 5px 9px;
2029
+ border: 1px solid transparent;
2030
+ border-radius: 999px;
2031
+ background: transparent;
2032
+ color: var(--md-sys-color-primary, #0f766e);
2033
+ font-family: inherit;
2034
+ font-size: 12px;
2035
+ font-weight: 600;
2036
+ letter-spacing: 0.01em;
2037
+ cursor: pointer;
2038
+ transition:
2039
+ background-color 0.14s ease-in-out,
2040
+ border-color 0.14s ease-in-out;
2041
+ }
2042
+ .workspace-review md-icon {
2043
+ --md-icon-size: 15px;
2044
+ color: inherit;
2045
+ }
2046
+ .workspace-review:hover {
2047
+ background: color-mix(in srgb, var(--md-sys-color-primary, #0f766e) 8%, transparent);
2048
+ border-color: color-mix(in srgb, var(--md-sys-color-primary, #0f766e) 24%, transparent);
2049
+ }
2050
+ .workspace-review:active {
2051
+ background: color-mix(in srgb, var(--md-sys-color-primary, #0f766e) 14%, transparent);
2052
+ }
2053
+ .workspace-review:focus-visible {
2054
+ outline: 2px solid var(--md-sys-color-primary, #0f766e);
2055
+ outline-offset: 1px;
2056
+ }
2057
+
2022
2058
  /* ── 접지 경고 — 근거에 없는 대상을 지목한 답 ───── */
2023
2059
  .grounding-warning {
2024
2060
  display: flex;
@@ -3305,6 +3341,11 @@ export class OxAssistantChat extends LitElement {
3305
3341
  }
3306
3342
 
3307
3343
  private onKeyDown(e: KeyboardEvent) {
3344
+ /*
3345
+ The Enter that ends a Korean (or Japanese, Chinese) syllable belongs to the input method - sending on it
3346
+ sends the line without its last syllable, which then lands in the emptied box.
3347
+ */
3348
+ if (e.isComposing || e.keyCode === 229) return
3308
3349
  // Mention popup 활성 시 — 화살표/Enter/Tab/Esc 가로채서 popup 네비게이션
3309
3350
  if (this.mentionOpen) {
3310
3351
  if (e.key === 'ArrowDown') {
@@ -4078,7 +4119,7 @@ export class OxAssistantChat extends LitElement {
4078
4119
  ${entry ? html`<ox-assistant-entry-review .proposal=${p}></ox-assistant-entry-review>` : nothing}
4079
4120
  ${entry && this.sessionId && offersWorkspaceReview(p)
4080
4121
  ? html`<button
4081
- class="choice-chip"
4122
+ class="workspace-review"
4082
4123
  @click=${() =>
4083
4124
  this.dispatchEvent(new CustomEvent('assistant-open-page', { detail: { href: entryReviewAddress(this.sessionId!, key) }, bubbles: true, composed: true }))}
4084
4125
  >
@@ -1671,6 +1671,42 @@ let OxAssistantChat = class OxAssistantChat extends LitElement {
1671
1671
  color: inherit;
1672
1672
  }
1673
1673
 
1674
+ /* The entry card's way to the large review - a quiet action under its table, never a second run button. */
1675
+ .workspace-review {
1676
+ display: flex;
1677
+ align-items: center;
1678
+ gap: 5px;
1679
+ margin: 6px 0 0 auto;
1680
+ padding: 5px 11px 5px 9px;
1681
+ border: 1px solid transparent;
1682
+ border-radius: 999px;
1683
+ background: transparent;
1684
+ color: var(--md-sys-color-primary, #0f766e);
1685
+ font-family: inherit;
1686
+ font-size: 12px;
1687
+ font-weight: 600;
1688
+ letter-spacing: 0.01em;
1689
+ cursor: pointer;
1690
+ transition:
1691
+ background-color 0.14s ease-in-out,
1692
+ border-color 0.14s ease-in-out;
1693
+ }
1694
+ .workspace-review md-icon {
1695
+ --md-icon-size: 15px;
1696
+ color: inherit;
1697
+ }
1698
+ .workspace-review:hover {
1699
+ background: color-mix(in srgb, var(--md-sys-color-primary, #0f766e) 8%, transparent);
1700
+ border-color: color-mix(in srgb, var(--md-sys-color-primary, #0f766e) 24%, transparent);
1701
+ }
1702
+ .workspace-review:active {
1703
+ background: color-mix(in srgb, var(--md-sys-color-primary, #0f766e) 14%, transparent);
1704
+ }
1705
+ .workspace-review:focus-visible {
1706
+ outline: 2px solid var(--md-sys-color-primary, #0f766e);
1707
+ outline-offset: 1px;
1708
+ }
1709
+
1674
1710
  /* ── 접지 경고 — 근거에 없는 대상을 지목한 답 ───── */
1675
1711
  .grounding-warning {
1676
1712
  display: flex;
@@ -2951,6 +2987,12 @@ let OxAssistantChat = class OxAssistantChat extends LitElement {
2951
2987
  `;
2952
2988
  }
2953
2989
  onKeyDown(e) {
2990
+ /*
2991
+ The Enter that ends a Korean (or Japanese, Chinese) syllable belongs to the input method - sending on it
2992
+ sends the line without its last syllable, which then lands in the emptied box.
2993
+ */
2994
+ if (e.isComposing || e.keyCode === 229)
2995
+ return;
2954
2996
  // Mention popup 활성 시 — 화살표/Enter/Tab/Esc 가로채서 popup 네비게이션
2955
2997
  if (this.mentionOpen) {
2956
2998
  if (e.key === 'ArrowDown') {
@@ -3630,7 +3672,7 @@ let OxAssistantChat = class OxAssistantChat extends LitElement {
3630
3672
  ${entry ? html `<ox-assistant-entry-review .proposal=${p}></ox-assistant-entry-review>` : nothing}
3631
3673
  ${entry && this.sessionId && offersWorkspaceReview(p)
3632
3674
  ? html `<button
3633
- class="choice-chip"
3675
+ class="workspace-review"
3634
3676
  @click=${() => this.dispatchEvent(new CustomEvent('assistant-open-page', { detail: { href: entryReviewAddress(this.sessionId, key) }, bubbles: true, composed: true }))}
3635
3677
  >
3636
3678
  <md-icon>open_in_full</md-icon>