orbcafe-ui 3.1.3 → 3.1.7

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/dist/orbis.css CHANGED
@@ -2577,28 +2577,164 @@ button.orb-app-header-locale:hover,
2577
2577
  font-size: 12px;
2578
2578
  }
2579
2579
 
2580
- .markdown-body .orb-html-demo-frame {
2580
+ /* ---------- markdown: HTML artifact card + inline demo ---------- */
2581
+ /* The html fence renders as a card or an expanded inline block; react-markdown's
2582
+ <pre> wrapper steps aside so neither sits in a second padded frame. */
2583
+ .markdown-body pre:has(.orb-html-demo-card),
2584
+ .markdown-body pre:has(.orb-html-demo) {
2585
+ margin: 0;
2586
+ padding: 0;
2587
+ overflow: visible;
2588
+ background: transparent;
2589
+ border: 0;
2590
+ }
2591
+
2592
+ .markdown-body .orb-html-demo-card {
2581
2593
  margin: 12px 0 4px;
2582
- overflow: hidden;
2594
+ }
2595
+
2596
+ .orb-html-demo-card {
2597
+ display: flex;
2598
+ align-items: center;
2599
+ gap: 12px;
2600
+ width: 100%;
2601
+ padding: 10px 12px;
2583
2602
  border: 1px solid var(--orb-border);
2584
2603
  border-radius: var(--orb-r);
2585
2604
  background: var(--orb-canvas);
2605
+ color: var(--orb-fg);
2606
+ font-family: var(--orb-font);
2607
+ text-align: left;
2608
+ cursor: pointer;
2609
+ transition: background var(--orb-t-fast), border-color var(--orb-t-fast);
2586
2610
  }
2587
2611
 
2588
- .markdown-body .orb-html-demo-caption {
2589
- padding: 8px 12px;
2612
+ .orb-html-demo-card:hover {
2613
+ background: var(--orb-hover);
2614
+ border-color: var(--orb-p200);
2615
+ }
2616
+
2617
+ .orb-html-demo-card:focus-visible {
2618
+ outline: 2px solid var(--orb-focus-solid);
2619
+ outline-offset: 1px;
2620
+ }
2621
+
2622
+ .orb-html-demo-glyph {
2623
+ flex: none;
2624
+ display: grid;
2625
+ place-items: center;
2626
+ width: 36px;
2627
+ height: 36px;
2628
+ border-radius: 8px;
2629
+ background: var(--orb-p100);
2630
+ color: var(--orb-primary);
2631
+ font: 600 13px/1 ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
2632
+ }
2633
+
2634
+ .orb-html-demo-info {
2635
+ flex: 1;
2636
+ min-width: 0;
2637
+ display: flex;
2638
+ flex-direction: column;
2639
+ gap: 2px;
2640
+ }
2641
+
2642
+ .orb-html-demo-title {
2643
+ overflow: hidden;
2644
+ text-overflow: ellipsis;
2645
+ white-space: nowrap;
2646
+ font: 600 14px/1.35 var(--orb-font);
2647
+ color: var(--orb-fg-strong);
2648
+ }
2649
+
2650
+ .orb-html-demo-meta {
2651
+ font: 500 12px/1.3 var(--orb-font);
2652
+ color: var(--orb-muted);
2653
+ }
2654
+
2655
+ .orb-html-demo-openpill {
2656
+ flex: none;
2657
+ padding: 7px 16px;
2658
+ border-radius: 999px;
2659
+ background: var(--orb-primary);
2660
+ color: var(--orb-on-primary);
2661
+ font: 600 13px/1.2 var(--orb-font);
2662
+ transition: background var(--orb-t-fast);
2663
+ }
2664
+
2665
+ .orb-html-demo-card:hover .orb-html-demo-openpill {
2666
+ background: var(--orb-p600);
2667
+ }
2668
+
2669
+ /* Expanded demo: lives in the reply flow, no overlay. Height comes from the
2670
+ iframe's content probe (clamped 200–560px in HtmlDemo). */
2671
+ .orb-html-demo {
2672
+ margin: 12px 0;
2673
+ overflow: hidden;
2674
+ background: var(--orb-canvas);
2675
+ border: 1px solid var(--orb-border);
2676
+ border-radius: var(--orb-r);
2677
+ }
2678
+
2679
+ .orb-html-demo-head {
2680
+ display: flex;
2681
+ align-items: center;
2682
+ gap: 12px;
2683
+ padding: 8px 10px 8px 14px;
2590
2684
  border-bottom: 1px solid var(--orb-border);
2591
2685
  background: var(--orb-surface);
2592
- color: var(--orb-fg-strong);
2686
+ }
2687
+
2688
+ .orb-html-demo-head .orb-html-demo-glyph {
2689
+ width: 28px;
2690
+ height: 28px;
2691
+ font-size: 11px;
2692
+ }
2693
+
2694
+ .orb-html-demo-head-title {
2695
+ flex: 1;
2696
+ min-width: 0;
2697
+ overflow: hidden;
2698
+ text-overflow: ellipsis;
2699
+ white-space: nowrap;
2593
2700
  font: 600 14px/1.3 var(--orb-font);
2701
+ color: var(--orb-fg-strong);
2702
+ }
2703
+
2704
+ .orb-html-demo-segment {
2705
+ flex: none;
2706
+ }
2707
+
2708
+ .orb-html-demo-actions {
2709
+ flex: none;
2710
+ display: flex;
2711
+ align-items: center;
2712
+ gap: 4px;
2594
2713
  }
2595
2714
 
2596
- .markdown-body .orb-html-demo {
2715
+ .orb-html-demo-frame {
2597
2716
  display: block;
2598
2717
  width: 100%;
2599
- margin: 0;
2600
2718
  border: 0;
2601
2719
  background: var(--orb-canvas);
2720
+ transition: height var(--orb-t-fast);
2721
+ }
2722
+
2723
+ .orb-html-demo-code {
2724
+ max-height: 480px;
2725
+ overflow: auto;
2726
+ }
2727
+
2728
+ /* Author display rules would beat the UA's [hidden], so hide explicitly. */
2729
+ .orb-html-demo-frame[hidden],
2730
+ .orb-html-demo-code[hidden] {
2731
+ display: none;
2732
+ }
2733
+
2734
+ @media (prefers-reduced-motion: reduce) {
2735
+ .orb-html-demo-frame {
2736
+ transition: none;
2737
+ }
2602
2738
  }
2603
2739
 
2604
2740
  .markdown-body blockquote {
@@ -2933,6 +3069,19 @@ button.orb-app-header-locale:hover,
2933
3069
  color: var(--orb-on-primary);
2934
3070
  font: 600 12px/1 var(--orb-font);
2935
3071
  }
3072
+ /* 传 <img> 时放开圆形底:宽高自适应、无底色,宿主用它放品牌标识(如 MIXER pill) */
3073
+ .orb-omph-avatar:has(img) {
3074
+ width: auto;
3075
+ height: auto;
3076
+ border-radius: 0;
3077
+ background: none;
3078
+ overflow: visible;
3079
+ }
3080
+ .orb-omph-avatar img {
3081
+ display: block;
3082
+ height: 28px;
3083
+ width: auto;
3084
+ }
2936
3085
 
2937
3086
  .orb-omph-title {
2938
3087
  font: 600 14px/1.2 var(--orb-font);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "orbcafe-ui",
3
- "version": "3.1.3",
3
+ "version": "3.1.7",
4
4
  "description": "ORBCAFE UI components — ORBIS brand system, MUI-free",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",