@pieai/swimmer-ui-kit 2.13.0 → 2.14.0
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/CHANGELOG.md +22 -3
- package/README.md +1 -1
- package/dist/index.d.ts +59 -27
- package/dist/index.js +615 -586
- package/dist/liquid-presence.css +1 -1
- package/dist/liquid-presence.js +193 -175
- package/dist/{liquidGooeySpring-WwyGKGPL.js → liquidGooeySpring-r7c1S2ZB.js} +12 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,7 +5,26 @@ Format: [Keep a Changelog](https://keepachangelog.com); versioning: semver.
|
|
|
5
5
|
|
|
6
6
|
## Unreleased
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
## 2.14.0 — 2026-10-01
|
|
9
|
+
|
|
10
|
+
- Fix the stair-stepped top edge on every glossy liquid body: the gloss pass
|
|
11
|
+
added its light's alpha to the body's, so a half-covered edge pixel turned
|
|
12
|
+
opaque wherever the highlight was bright. The light is now clipped to the
|
|
13
|
+
body eroded by a pixel and feathered; the highlight itself is unchanged.
|
|
14
|
+
- Add `LiquidFill`: `LiquidGroup` and `LiquidSurface` take `fill={{ top,
|
|
15
|
+
bottom?, sheen? }}` for the coloured-liquid light (a narrow brighter band at
|
|
16
|
+
the top, a deeper foot). Colours may be tokens; bands are CSS `color-mix`.
|
|
17
|
+
- `LiquidSurface` takes `gloss` and `outline={{ amplitude, lobes? }}` to
|
|
18
|
+
override its form's light and rest lobing.
|
|
19
|
+
- 涟 (`LiquidPresence`, `LiquidReveal` material surface): the face carries its
|
|
20
|
+
light in the fill (top to foot) and casts a soft contact shadow along its
|
|
21
|
+
own outline through the new `--game-ui-liquid-presence-shadow` token; the
|
|
22
|
+
material panel drops its raised rim and stroke. The dark surface is unchanged.
|
|
23
|
+
- Compatibility: additive API; visual change to glossy edges and to 涟's
|
|
24
|
+
material face. Owner approved publication on 2026-10-01 (University
|
|
25
|
+
session, "品牌UI包要发布成新版"), with the repository kept to one main line.
|
|
26
|
+
|
|
27
|
+
## 2.13.0 — 2026-09-29
|
|
9
28
|
|
|
10
29
|
- Add opt-in `surface="plaque"` to `GameButton`, `GameIconButton` and
|
|
11
30
|
`GameAvatar`, with opaque light/night copper token pairs derived from
|
|
@@ -20,8 +39,8 @@ Format: [Keep a Changelog](https://keepachangelog.com); versioning: semver.
|
|
|
20
39
|
modal-test screenshots to `.devspace-visual/`, preserving retained scratch
|
|
21
40
|
evidence and all existing assertions.
|
|
22
41
|
- Compatibility: additive only; no new dependency or React peer change.
|
|
23
|
-
|
|
24
|
-
|
|
42
|
+
Published through the existing npm Trusted Publishing workflow after
|
|
43
|
+
Owner clarified public publication (AuthKit remains private).
|
|
25
44
|
|
|
26
45
|
## 2.12.0 — 2026-09-29
|
|
27
46
|
|
package/README.md
CHANGED
|
@@ -57,7 +57,7 @@ import '@pieai/swimmer-ui-kit/tailwind.css';
|
|
|
57
57
|
|
|
58
58
|
## What's inside
|
|
59
59
|
|
|
60
|
-
- **Account primitives (2.13.0
|
|
60
|
+
- **Account primitives (2.13.0)**:
|
|
61
61
|
opt-in copper `surface="plaque"`, `GameOtpInput`, vertical `GameTabs`,
|
|
62
62
|
and `GameListRow` with independent actions. See the
|
|
63
63
|
[account-controls contract](docs/reference/design-system-guide.md#账号界面原件)
|
package/dist/index.d.ts
CHANGED
|
@@ -2556,6 +2556,45 @@ export declare const LIQUID_FORMS: Readonly<Record<LiquidForm, LiquidFormSpec>>;
|
|
|
2556
2556
|
*/
|
|
2557
2557
|
export declare const LIQUID_GOOEY_WAVINESS_MAX_FRACTION = 0.3;
|
|
2558
2558
|
|
|
2559
|
+
/**
|
|
2560
|
+
* A shared liquid silhouette behind crisp item content.
|
|
2561
|
+
*
|
|
2562
|
+
* Put the visual treatment on the group: `fill`, `stroke`, and `shadow` are
|
|
2563
|
+
* rebuilt on the merged silhouette. Do NOT add border, outline, or box-shadow
|
|
2564
|
+
* to children directly; those styles live on the content layer and cannot
|
|
2565
|
+
* merge with the liquid shape.
|
|
2566
|
+
*
|
|
2567
|
+
* Its motion vocabulary is intentionally small and semantic:
|
|
2568
|
+
*
|
|
2569
|
+
* | gesture | meaning |
|
|
2570
|
+
* | --- | --- |
|
|
2571
|
+
* | **merge** (Morph) | two things become one: reward settling, collecting, confirming |
|
|
2572
|
+
* | **follow** (Move) | selection, progress, dragging |
|
|
2573
|
+
* | **shape** (Morph shape) | the liquid changes size and corners like jelly |
|
|
2574
|
+
* | **bend** | speed bows the surface while content stays glued to it |
|
|
2575
|
+
* | **dissolve** | replacement, transition |
|
|
2576
|
+
* | **still** | THE DEFAULT |
|
|
2577
|
+
*
|
|
2578
|
+
* Liquid appears only on a state change the user caused. There is no ambient,
|
|
2579
|
+
* idle, or decorative liquid; keep the filter-area budget visible when more
|
|
2580
|
+
* than one group is on a screen.
|
|
2581
|
+
*/
|
|
2582
|
+
/**
|
|
2583
|
+
* A liquid body's paint.
|
|
2584
|
+
*
|
|
2585
|
+
* A colour paints the body flat. `{ top, bottom }` is the light the coloured
|
|
2586
|
+
* liquid theme settled on (University, 2026-09-30): a narrow brighter band at
|
|
2587
|
+
* the top, the colour falling from `top` to `bottom`, and the foot a touch
|
|
2588
|
+
* deeper, so a body reads as having thickness without a white rim. `sheen` is
|
|
2589
|
+
* how far the top band leans to white (0–1, default 0.3). Colours may be tokens:
|
|
2590
|
+
* the bands are mixed with CSS `color-mix`, not computed here.
|
|
2591
|
+
*/
|
|
2592
|
+
export declare type LiquidFill = string | {
|
|
2593
|
+
readonly top: string;
|
|
2594
|
+
readonly bottom?: string;
|
|
2595
|
+
readonly sheen?: number;
|
|
2596
|
+
};
|
|
2597
|
+
|
|
2559
2598
|
/** Material is independent of a widget's meaning and a form's motion. */
|
|
2560
2599
|
export declare type LiquidFinish = 'matte' | 'glossy';
|
|
2561
2600
|
|
|
@@ -2703,29 +2742,6 @@ export declare const LiquidGroup: ForwardRefExoticComponent<LiquidGroupProps & R
|
|
|
2703
2742
|
Item: ForwardRefExoticComponent<LiquidItemProps & RefAttributes<HTMLDivElement>>;
|
|
2704
2743
|
};
|
|
2705
2744
|
|
|
2706
|
-
/**
|
|
2707
|
-
* A shared liquid silhouette behind crisp item content.
|
|
2708
|
-
*
|
|
2709
|
-
* Put the visual treatment on the group: `fill`, `stroke`, and `shadow` are
|
|
2710
|
-
* rebuilt on the merged silhouette. Do NOT add border, outline, or box-shadow
|
|
2711
|
-
* to children directly; those styles live on the content layer and cannot
|
|
2712
|
-
* merge with the liquid shape.
|
|
2713
|
-
*
|
|
2714
|
-
* Its motion vocabulary is intentionally small and semantic:
|
|
2715
|
-
*
|
|
2716
|
-
* | gesture | meaning |
|
|
2717
|
-
* | --- | --- |
|
|
2718
|
-
* | **merge** (Morph) | two things become one: reward settling, collecting, confirming |
|
|
2719
|
-
* | **follow** (Move) | selection, progress, dragging |
|
|
2720
|
-
* | **shape** (Morph shape) | the liquid changes size and corners like jelly |
|
|
2721
|
-
* | **bend** | speed bows the surface while content stays glued to it |
|
|
2722
|
-
* | **dissolve** | replacement, transition |
|
|
2723
|
-
* | **still** | THE DEFAULT |
|
|
2724
|
-
*
|
|
2725
|
-
* Liquid appears only on a state change the user caused. There is no ambient,
|
|
2726
|
-
* idle, or decorative liquid; keep the filter-area budget visible when more
|
|
2727
|
-
* than one group is on a screen.
|
|
2728
|
-
*/
|
|
2729
2745
|
export declare interface LiquidGroupProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'> {
|
|
2730
2746
|
children: ReactNode;
|
|
2731
2747
|
/** Goo blur sigma in px. Larger values bridge larger gaps. */
|
|
@@ -2739,8 +2755,11 @@ export declare interface LiquidGroupProps extends Omit<HTMLAttributes<HTMLDivEle
|
|
|
2739
2755
|
gloss?: number;
|
|
2740
2756
|
/** Optional named finish. An explicit raw gloss wins; omitted preserves the old rendering. */
|
|
2741
2757
|
liquidFinish?: LiquidFinish;
|
|
2742
|
-
/**
|
|
2743
|
-
|
|
2758
|
+
/**
|
|
2759
|
+
* Surface fill. Defaults to the kit's theme surface token. A colour paints
|
|
2760
|
+
* the body flat; `{ top, bottom }` gives it light (see `LiquidFill`).
|
|
2761
|
+
*/
|
|
2762
|
+
fill?: LiquidFill;
|
|
2744
2763
|
/** Extra filter-region slack in px for the silhouette's painted edges. */
|
|
2745
2764
|
filterPadding?: number;
|
|
2746
2765
|
/** Optional token-based box-shadow syntax rebuilt on the merged silhouette. */
|
|
@@ -2831,7 +2850,7 @@ export declare interface LiquidMetalButtonProps extends ButtonHTMLAttributes<HTM
|
|
|
2831
2850
|
|
|
2832
2851
|
export declare type LiquidMetalRendererMode = 'auto' | 'css' | 'webgl';
|
|
2833
2852
|
|
|
2834
|
-
export declare function LiquidSurface({ children, liquidFinish, form, active, fill, stroke, shadow: shadowOverride, radius, className, style, }: LiquidSurfaceProps): ReactNode;
|
|
2853
|
+
export declare function LiquidSurface({ children, liquidFinish, form, active, fill, stroke, shadow: shadowOverride, gloss: glossOverride, outline, radius, className, style, }: LiquidSurfaceProps): ReactNode;
|
|
2835
2854
|
|
|
2836
2855
|
export declare interface LiquidSurfaceProps {
|
|
2837
2856
|
children: ReactNode;
|
|
@@ -2845,7 +2864,20 @@ export declare interface LiquidSurfaceProps {
|
|
|
2845
2864
|
*/
|
|
2846
2865
|
active?: boolean;
|
|
2847
2866
|
/** Silhouette paint. Defaults to the kit's raised surface token. */
|
|
2848
|
-
fill?:
|
|
2867
|
+
fill?: LiquidFill;
|
|
2868
|
+
/**
|
|
2869
|
+
* The body's light, overriding the form's own. The coloured liquid theme
|
|
2870
|
+
* uses a low value; with `liquidFinish="matte"` omitted, 0 means flat.
|
|
2871
|
+
*/
|
|
2872
|
+
gloss?: number;
|
|
2873
|
+
/**
|
|
2874
|
+
* The rest outline's lobing, overriding the form's own: `amplitude` in px
|
|
2875
|
+
* swells outward, `lobes` is how many go round (2 lazy, 5 busy).
|
|
2876
|
+
*/
|
|
2877
|
+
outline?: {
|
|
2878
|
+
readonly amplitude: number;
|
|
2879
|
+
readonly lobes?: number;
|
|
2880
|
+
};
|
|
2849
2881
|
stroke?: string;
|
|
2850
2882
|
/** Overrides the form's own cast shadow. `none` removes it. */
|
|
2851
2883
|
shadow?: string;
|