@eva/plugin-ui 2.1.0-beta.1 → 2.1.0-beta.2
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/README.md +4 -4
- package/dist/EVA.plugin.ui.js +1470 -405
- package/dist/EVA.plugin.ui.min.js +1 -1
- package/dist/plugin-ui.cjs.js +1013 -128
- package/dist/plugin-ui.cjs.prod.js +1 -1
- package/dist/plugin-ui.d.ts +316 -66
- package/dist/plugin-ui.esm.js +1013 -130
- package/package.json +4 -4
package/dist/plugin-ui.d.ts
CHANGED
|
@@ -21,6 +21,15 @@ export declare interface CheckBoxParams {
|
|
|
21
21
|
checked?: ViewRef;
|
|
22
22
|
unchecked?: ViewRef;
|
|
23
23
|
};
|
|
24
|
+
textStyle?: {
|
|
25
|
+
fontFamily?: string;
|
|
26
|
+
fontSize?: number;
|
|
27
|
+
fill?: string | number;
|
|
28
|
+
};
|
|
29
|
+
textOffset?: {
|
|
30
|
+
x?: number;
|
|
31
|
+
y?: number;
|
|
32
|
+
};
|
|
24
33
|
disabledStyle?: CheckBoxStateStyle;
|
|
25
34
|
}
|
|
26
35
|
|
|
@@ -30,7 +39,7 @@ export declare interface CheckBoxStateStyle {
|
|
|
30
39
|
}
|
|
31
40
|
|
|
32
41
|
/** 圆形样式 */
|
|
33
|
-
export declare interface CircleStyle extends
|
|
42
|
+
export declare interface CircleStyle extends ShapeStyle {
|
|
34
43
|
x?: number;
|
|
35
44
|
y?: number;
|
|
36
45
|
radius: number;
|
|
@@ -48,7 +57,13 @@ export declare interface CircularProgressBarParams {
|
|
|
48
57
|
fillColor?: number | string;
|
|
49
58
|
backgroundAlpha?: number;
|
|
50
59
|
fillAlpha?: number;
|
|
60
|
+
cap?: 'round' | 'butt' | 'square';
|
|
51
61
|
bindToStore?: string;
|
|
62
|
+
rotation?: number;
|
|
63
|
+
offset?: {
|
|
64
|
+
x?: number;
|
|
65
|
+
y?: number;
|
|
66
|
+
};
|
|
52
67
|
}
|
|
53
68
|
|
|
54
69
|
export declare const COMPONENT_DEFINITIONS: Record<string, ComponentDefinition>;
|
|
@@ -74,6 +89,8 @@ export declare interface ComponentDefinition<TParams = any, TInstance = any> {
|
|
|
74
89
|
signalMap?: (component: TParams & Record<string, any>) => Record<string, true | ((...args: any[]) => Record<string, any>)>;
|
|
75
90
|
/** CHANGE 事件触发,把字段写回 PIXI 实例 */
|
|
76
91
|
syncOnChange?: (instance: TInstance, component: TParams & Record<string, any>) => void;
|
|
92
|
+
/** Transform.size -> @pixi/ui 实例尺寸同步。未提供时由 UISystem 使用通用 setSize/width/height 策略。 */
|
|
93
|
+
applySize?: (instance: TInstance, size: UiRenderSize, component: TParams & Record<string, any>, context: UiSizeSyncContext) => void;
|
|
77
94
|
/** ADD 完成后跑(Dialog 挂 content / MaskedFrame 挂 border)*/
|
|
78
95
|
onAttachedExtra?: (instance: TInstance, component: TParams & Record<string, any>, go: any, game: any) => void;
|
|
79
96
|
/** 实例方法 mixin(注入到 wrapper class.prototype) */
|
|
@@ -84,6 +101,51 @@ export declare function defineUiComponent<TParams = any, TInstance = any>(def: C
|
|
|
84
101
|
|
|
85
102
|
export declare const Dialog: UiComponentClass<DialogParams>;
|
|
86
103
|
|
|
104
|
+
declare interface DialogButtonParams {
|
|
105
|
+
kind?: 'button' | 'fancy';
|
|
106
|
+
text?: string;
|
|
107
|
+
value?: string | number;
|
|
108
|
+
closeOnPress?: boolean;
|
|
109
|
+
reopenDelay?: number;
|
|
110
|
+
width?: number;
|
|
111
|
+
height?: number;
|
|
112
|
+
radius?: number;
|
|
113
|
+
color?: number | string;
|
|
114
|
+
hoverColor?: number | string;
|
|
115
|
+
pressedColor?: number | string;
|
|
116
|
+
disabledColor?: number | string;
|
|
117
|
+
defaultView?: string;
|
|
118
|
+
hoverView?: string;
|
|
119
|
+
pressedView?: string;
|
|
120
|
+
disabledView?: string;
|
|
121
|
+
nineSliceSprite?: [number, number, number, number];
|
|
122
|
+
textStyle?: {
|
|
123
|
+
fontFamily?: string;
|
|
124
|
+
fontSize?: number;
|
|
125
|
+
fill?: string | number;
|
|
126
|
+
fontWeight?: string;
|
|
127
|
+
};
|
|
128
|
+
disabled?: boolean;
|
|
129
|
+
animations?: unknown;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
declare interface DialogCheckBoxParams {
|
|
133
|
+
text?: string;
|
|
134
|
+
size?: number;
|
|
135
|
+
radius?: number;
|
|
136
|
+
checked?: boolean;
|
|
137
|
+
uncheckedColor?: number | string;
|
|
138
|
+
checkedColor?: number | string;
|
|
139
|
+
strokeColor?: number | string;
|
|
140
|
+
strokeWidth?: number;
|
|
141
|
+
textStyle?: {
|
|
142
|
+
fontFamily?: string;
|
|
143
|
+
fontSize?: number;
|
|
144
|
+
fill?: string | number;
|
|
145
|
+
fontWeight?: string;
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
|
|
87
149
|
export declare interface DialogParams {
|
|
88
150
|
open?: boolean;
|
|
89
151
|
title?: string;
|
|
@@ -98,6 +160,50 @@ export declare interface DialogParams {
|
|
|
98
160
|
contentChildName?: string;
|
|
99
161
|
nineSliceSprite?: [number, number, number, number];
|
|
100
162
|
bindToStore?: string;
|
|
163
|
+
titleStyle?: {
|
|
164
|
+
fontFamily?: string;
|
|
165
|
+
fontSize?: number;
|
|
166
|
+
fill?: string | number;
|
|
167
|
+
fontWeight?: string;
|
|
168
|
+
lineHeight?: number;
|
|
169
|
+
dropShadow?: unknown;
|
|
170
|
+
};
|
|
171
|
+
content?: string;
|
|
172
|
+
contentStyle?: {
|
|
173
|
+
fontFamily?: string;
|
|
174
|
+
fontSize?: number;
|
|
175
|
+
fill?: string | number;
|
|
176
|
+
fontWeight?: string;
|
|
177
|
+
align?: 'left' | 'center' | 'right';
|
|
178
|
+
wordWrap?: boolean;
|
|
179
|
+
wordWrapWidth?: number;
|
|
180
|
+
lineHeight?: number;
|
|
181
|
+
dropShadow?: unknown;
|
|
182
|
+
};
|
|
183
|
+
contentButtons?: DialogButtonParams[];
|
|
184
|
+
contentCheckBoxes?: DialogCheckBoxParams[];
|
|
185
|
+
buttons?: DialogButtonParams[];
|
|
186
|
+
buttonList?: {
|
|
187
|
+
elementsMargin?: number;
|
|
188
|
+
type?: ListType;
|
|
189
|
+
padding?: number;
|
|
190
|
+
};
|
|
191
|
+
buttonListOffset?: {
|
|
192
|
+
x?: number;
|
|
193
|
+
y?: number;
|
|
194
|
+
};
|
|
195
|
+
scrollBox?: Partial<ScrollBoxParams> & {
|
|
196
|
+
type?: ListType;
|
|
197
|
+
offset?: {
|
|
198
|
+
x?: number;
|
|
199
|
+
y?: number;
|
|
200
|
+
};
|
|
201
|
+
size?: {
|
|
202
|
+
width?: number;
|
|
203
|
+
height?: number;
|
|
204
|
+
};
|
|
205
|
+
};
|
|
206
|
+
animations?: unknown;
|
|
101
207
|
}
|
|
102
208
|
|
|
103
209
|
export declare const DoubleSlider: UiComponentClass<DoubleSliderParams>;
|
|
@@ -116,12 +222,28 @@ export declare interface DoubleSliderParams {
|
|
|
116
222
|
slider1?: ViewRef;
|
|
117
223
|
slider2?: ViewRef;
|
|
118
224
|
};
|
|
225
|
+
nineSliceSprite?: {
|
|
226
|
+
bg?: [number, number, number, number];
|
|
227
|
+
fill?: [number, number, number, number];
|
|
228
|
+
};
|
|
229
|
+
fillPaddings?: ProgressBarFillPaddings;
|
|
230
|
+
valueTextStyle?: {
|
|
231
|
+
fontFamily?: string;
|
|
232
|
+
fontSize?: number;
|
|
233
|
+
fill?: string | number;
|
|
234
|
+
};
|
|
235
|
+
valueTextOffset?: {
|
|
236
|
+
x?: number;
|
|
237
|
+
y?: number;
|
|
238
|
+
};
|
|
239
|
+
width?: number;
|
|
240
|
+
height?: number;
|
|
119
241
|
bindToStore1?: string;
|
|
120
242
|
bindToStore2?: string;
|
|
121
243
|
}
|
|
122
244
|
|
|
123
245
|
/** 椭圆样式 */
|
|
124
|
-
export declare interface EllipseStyle extends
|
|
246
|
+
export declare interface EllipseStyle extends ShapeStyle {
|
|
125
247
|
x?: number;
|
|
126
248
|
y?: number;
|
|
127
249
|
width: number;
|
|
@@ -159,9 +281,44 @@ export declare interface FancyButtonParams {
|
|
|
159
281
|
views?: FancyButtonViewRefs;
|
|
160
282
|
offset?: FancyButtonOffset;
|
|
161
283
|
textOffset?: FancyButtonOffset;
|
|
284
|
+
iconOffset?: FancyButtonOffset;
|
|
162
285
|
padding?: number;
|
|
163
286
|
nineSliceSprite?: [number, number, number, number];
|
|
164
287
|
selectedTint?: string;
|
|
288
|
+
textStyle?: {
|
|
289
|
+
fontFamily?: string;
|
|
290
|
+
fontSize?: number;
|
|
291
|
+
fill?: string | number;
|
|
292
|
+
fontWeight?: string;
|
|
293
|
+
dropShadow?: unknown;
|
|
294
|
+
};
|
|
295
|
+
textClass?: 'text' | 'html' | 'bitmap';
|
|
296
|
+
bitmapFontName?: string;
|
|
297
|
+
defaultTextScale?: {
|
|
298
|
+
x?: number;
|
|
299
|
+
y?: number;
|
|
300
|
+
} | number;
|
|
301
|
+
defaultIconScale?: {
|
|
302
|
+
x?: number;
|
|
303
|
+
y?: number;
|
|
304
|
+
} | number;
|
|
305
|
+
defaultTextAnchor?: {
|
|
306
|
+
x?: number;
|
|
307
|
+
y?: number;
|
|
308
|
+
} | number;
|
|
309
|
+
defaultIconAnchor?: {
|
|
310
|
+
x?: number;
|
|
311
|
+
y?: number;
|
|
312
|
+
} | number;
|
|
313
|
+
anchor?: number;
|
|
314
|
+
anchorX?: number;
|
|
315
|
+
anchorY?: number;
|
|
316
|
+
scale?: number;
|
|
317
|
+
animations?: unknown;
|
|
318
|
+
contentFittingMode?: 'default' | 'fill' | 'none';
|
|
319
|
+
ignoreRefitting?: boolean;
|
|
320
|
+
width?: number;
|
|
321
|
+
height?: number;
|
|
165
322
|
}
|
|
166
323
|
|
|
167
324
|
export declare type FancyButtonState = 'default' | 'hover' | 'pressed' | 'disabled' | 'selected';
|
|
@@ -171,6 +328,7 @@ export declare interface FancyButtonViewRefs {
|
|
|
171
328
|
hover?: ViewRef;
|
|
172
329
|
pressed?: ViewRef;
|
|
173
330
|
disabled?: ViewRef;
|
|
331
|
+
icon?: ViewRef;
|
|
174
332
|
}
|
|
175
333
|
|
|
176
334
|
export declare type FieldKind = 'scalar' | 'shallowMerge' | 'arrayCopy' | 'tuple' | 'opaque';
|
|
@@ -214,6 +372,8 @@ export declare interface InputParams {
|
|
|
214
372
|
cleanOnFocus?: boolean;
|
|
215
373
|
addMask?: boolean;
|
|
216
374
|
bindToStore?: string;
|
|
375
|
+
width?: number;
|
|
376
|
+
height?: number;
|
|
217
377
|
}
|
|
218
378
|
|
|
219
379
|
export declare interface InputStyle {
|
|
@@ -276,6 +436,8 @@ export declare interface MaskedFrameParams {
|
|
|
276
436
|
targetView?: ViewRef;
|
|
277
437
|
maskView?: ViewRef;
|
|
278
438
|
borderView?: ViewRef;
|
|
439
|
+
borderWidth?: number;
|
|
440
|
+
borderColor?: number | string;
|
|
279
441
|
}
|
|
280
442
|
|
|
281
443
|
/**
|
|
@@ -287,12 +449,20 @@ export declare class PixiUiComponent<TParams = any> extends Component<TParams> {
|
|
|
287
449
|
/** runtime 计数,供 spec / debug 验证(toggleCount / pressCount / hoverCount / ...)*/
|
|
288
450
|
toggleCount: number;
|
|
289
451
|
pressCount: number;
|
|
452
|
+
downCount: number;
|
|
453
|
+
upCount: number;
|
|
290
454
|
hoverCount: number;
|
|
455
|
+
outCount: number;
|
|
456
|
+
upOutCount: number;
|
|
291
457
|
changeCount: number;
|
|
292
458
|
updateCount: number;
|
|
293
459
|
selectCount: number;
|
|
460
|
+
lastSignal: string;
|
|
461
|
+
visualState: string;
|
|
294
462
|
/** Input 私有 focused */
|
|
295
463
|
focused: boolean;
|
|
464
|
+
/** DSL/constructor 中显式传入过的字段,用于区分 metadata default 与用户配置。 */
|
|
465
|
+
__evaExplicitFields: Set<string>;
|
|
296
466
|
/** 由 factory 通过 metadata 注入的动态字段(views / value / checked / ...)*/
|
|
297
467
|
[key: string]: any;
|
|
298
468
|
init(p?: TParams): void;
|
|
@@ -321,6 +491,8 @@ export declare interface ProgressBarParams {
|
|
|
321
491
|
};
|
|
322
492
|
fillPaddings?: ProgressBarFillPaddings;
|
|
323
493
|
bindToStore?: string;
|
|
494
|
+
width?: number;
|
|
495
|
+
height?: number;
|
|
324
496
|
}
|
|
325
497
|
|
|
326
498
|
export declare class RadioGroup extends Component<RadioGroupParams> {
|
|
@@ -350,7 +522,7 @@ export declare interface RadioGroupParams {
|
|
|
350
522
|
}
|
|
351
523
|
|
|
352
524
|
/** 矩形样式 */
|
|
353
|
-
export declare interface RectStyle extends
|
|
525
|
+
export declare interface RectStyle extends ShapeStyle {
|
|
354
526
|
x?: number;
|
|
355
527
|
y?: number;
|
|
356
528
|
width: number;
|
|
@@ -367,7 +539,7 @@ export declare interface ResolvedViews {
|
|
|
367
539
|
}
|
|
368
540
|
|
|
369
541
|
/** 圆角矩形样式 */
|
|
370
|
-
export declare interface RoundedRectStyle extends
|
|
542
|
+
export declare interface RoundedRectStyle extends ShapeStyle {
|
|
371
543
|
x?: number;
|
|
372
544
|
y?: number;
|
|
373
545
|
width: number;
|
|
@@ -388,6 +560,16 @@ export declare interface ScrollBoxParams {
|
|
|
388
560
|
disableDynamicRendering?: boolean;
|
|
389
561
|
disableEasing?: boolean;
|
|
390
562
|
padding?: number;
|
|
563
|
+
vertPadding?: number;
|
|
564
|
+
horPadding?: number;
|
|
565
|
+
topPadding?: number;
|
|
566
|
+
bottomPadding?: number;
|
|
567
|
+
leftPadding?: number;
|
|
568
|
+
rightPadding?: number;
|
|
569
|
+
globalScroll?: boolean;
|
|
570
|
+
shiftScroll?: boolean;
|
|
571
|
+
proximityRange?: number;
|
|
572
|
+
proximityDebounce?: number;
|
|
391
573
|
inertia?: boolean;
|
|
392
574
|
inertiaDecay?: number;
|
|
393
575
|
bounceFactor?: number;
|
|
@@ -415,47 +597,36 @@ export declare interface SelectParams {
|
|
|
415
597
|
};
|
|
416
598
|
nineSliceSprite?: [number, number, number, number];
|
|
417
599
|
bindToStore?: string;
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
step?: number;
|
|
430
|
-
orientation?: SliderOrientation;
|
|
431
|
-
showValue?: boolean;
|
|
432
|
-
views?: {
|
|
433
|
-
bg?: ViewRef;
|
|
434
|
-
fill?: ViewRef;
|
|
435
|
-
thumb?: ViewRef;
|
|
600
|
+
width?: number;
|
|
601
|
+
height?: number;
|
|
602
|
+
radius?: number;
|
|
603
|
+
visibleItems?: number;
|
|
604
|
+
itemWidth?: number;
|
|
605
|
+
itemHeight?: number;
|
|
606
|
+
itemBackgroundColor?: number | string;
|
|
607
|
+
itemHoverColor?: number | string;
|
|
608
|
+
selectedTextOffset?: {
|
|
609
|
+
x?: number;
|
|
610
|
+
y?: number;
|
|
436
611
|
};
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
triggerEvent?: SwitcherTriggerEvent;
|
|
446
|
-
bindToStore?: string;
|
|
612
|
+
scrollBox?: Partial<ScrollBoxParams> & {
|
|
613
|
+
offset?: {
|
|
614
|
+
x?: number;
|
|
615
|
+
y?: number;
|
|
616
|
+
};
|
|
617
|
+
};
|
|
618
|
+
textClass?: 'text' | 'html';
|
|
619
|
+
open?: boolean;
|
|
447
620
|
}
|
|
448
621
|
|
|
449
|
-
export declare type SwitcherTriggerEvent = 'onPress' | 'onDown' | 'onUp' | 'onHover' | 'onOut';
|
|
450
|
-
|
|
451
622
|
/**
|
|
452
|
-
*
|
|
623
|
+
* Shape 组件
|
|
453
624
|
*
|
|
454
625
|
* 基于 `@eva/plugin-renderer-graphics` 实现 rect/circle/ellipse/roundedRect 的
|
|
455
626
|
* 矢量绘制,支持纯色 / linear-gradient 填充与描边。`shapes` 数组允许在同一个
|
|
456
627
|
* GameObject 上层叠多个形状。
|
|
457
628
|
*/
|
|
458
|
-
|
|
629
|
+
declare class Shape extends Component<ShapeParams> {
|
|
459
630
|
/** 组件名称 */
|
|
460
631
|
static componentName: string;
|
|
461
632
|
/** 实例侧 componentName,DSL 序列化时使用 */
|
|
@@ -463,7 +634,7 @@ export declare class UI extends Component<UIParams> {
|
|
|
463
634
|
private shapes;
|
|
464
635
|
/** 编辑器 Inspector 元数据,主仓 ComponentInspector 通过静态方法读取 */
|
|
465
636
|
static getInspectorMetadata(): InspectorFieldMetadata;
|
|
466
|
-
init(params?:
|
|
637
|
+
init(params?: ShapeParams): void;
|
|
467
638
|
awake(): void;
|
|
468
639
|
start(): void;
|
|
469
640
|
/**
|
|
@@ -493,17 +664,17 @@ export declare class UI extends Component<UIParams> {
|
|
|
493
664
|
private drawEllipse;
|
|
494
665
|
private drawRoundedRect;
|
|
495
666
|
/** 追加一个形状 */
|
|
496
|
-
addShape(type:
|
|
667
|
+
addShape(type: ShapeType, style: RectStyle | CircleStyle | EllipseStyle | RoundedRectStyle): void;
|
|
497
668
|
/** 清除所有形状 */
|
|
498
669
|
clearShapes(): void;
|
|
499
670
|
/** 更新指定索引的形状 */
|
|
500
|
-
updateShape(index: number, type:
|
|
671
|
+
updateShape(index: number, type: ShapeType, style: RectStyle | CircleStyle | EllipseStyle | RoundedRectStyle): void;
|
|
501
672
|
/** 移除指定索引的形状 */
|
|
502
673
|
removeShape(index: number): void;
|
|
503
674
|
/** 获取形状数量 */
|
|
504
675
|
getShapeCount(): number;
|
|
505
676
|
/** 获取指定索引的形状(只读视图) */
|
|
506
|
-
getShape(index: number):
|
|
677
|
+
getShape(index: number): ShapeDefinition | null;
|
|
507
678
|
/** 设置所有形状的透明度 */
|
|
508
679
|
setAlpha(alpha: number): void;
|
|
509
680
|
/** 设置所有形状的填充色 */
|
|
@@ -511,37 +682,26 @@ export declare class UI extends Component<UIParams> {
|
|
|
511
682
|
/** 设置所有形状的描边 */
|
|
512
683
|
setStroke(stroke: string, lineWidth?: number): void;
|
|
513
684
|
}
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
/** 兼容别名:历史代码中沿用的 UIComponentParams */
|
|
518
|
-
export declare type UIComponentParams = UIParams;
|
|
519
|
-
|
|
520
|
-
/** UI 组件参数接口 */
|
|
521
|
-
export declare interface UIParams {
|
|
522
|
-
componentName?: string;
|
|
523
|
-
shapes?: UIShape[];
|
|
524
|
-
/** 单形状简化用法:type + style */
|
|
525
|
-
type?: UIShapeType;
|
|
526
|
-
style?: RectStyle | CircleStyle | EllipseStyle | RoundedRectStyle;
|
|
527
|
-
}
|
|
685
|
+
export { Shape }
|
|
686
|
+
export { Shape as UI }
|
|
528
687
|
|
|
529
688
|
/** 单个 shape 描述 */
|
|
530
|
-
export declare interface
|
|
531
|
-
type:
|
|
689
|
+
export declare interface ShapeDefinition {
|
|
690
|
+
type: ShapeType;
|
|
532
691
|
style: RectStyle | CircleStyle | EllipseStyle | RoundedRectStyle;
|
|
533
692
|
}
|
|
534
693
|
|
|
535
|
-
/**
|
|
536
|
-
export declare
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
694
|
+
/** Shape component params */
|
|
695
|
+
export declare interface ShapeParams {
|
|
696
|
+
componentName?: string;
|
|
697
|
+
shapes?: ShapeDefinition[];
|
|
698
|
+
/** 单形状简化用法:type + style */
|
|
699
|
+
type?: ShapeType;
|
|
700
|
+
style?: RectStyle | CircleStyle | EllipseStyle | RoundedRectStyle;
|
|
541
701
|
}
|
|
542
702
|
|
|
543
|
-
/**
|
|
544
|
-
export declare interface
|
|
703
|
+
/** Shape base style */
|
|
704
|
+
export declare interface ShapeStyle {
|
|
545
705
|
/** 填充颜色,支持 #RRGGBB / rgb()/rgba() / linear-gradient(...) */
|
|
546
706
|
fill?: string;
|
|
547
707
|
/** 描边颜色 */
|
|
@@ -552,18 +712,102 @@ export declare interface UIStyle {
|
|
|
552
712
|
alpha?: number;
|
|
553
713
|
}
|
|
554
714
|
|
|
715
|
+
/** Shape primitive type enum */
|
|
716
|
+
export declare enum ShapeType {
|
|
717
|
+
RECT = "rect",
|
|
718
|
+
CIRCLE = "circle",
|
|
719
|
+
ELLIPSE = "ellipse",
|
|
720
|
+
ROUNDED_RECT = "roundedRect"
|
|
721
|
+
}
|
|
722
|
+
|
|
723
|
+
export declare const Slider: UiComponentClass<SliderParams>;
|
|
724
|
+
|
|
725
|
+
export declare type SliderOrientation = 'horizontal' | 'vertical';
|
|
726
|
+
|
|
727
|
+
export declare interface SliderParams {
|
|
728
|
+
enabled?: boolean;
|
|
729
|
+
value?: number;
|
|
730
|
+
min?: number;
|
|
731
|
+
max?: number;
|
|
732
|
+
step?: number;
|
|
733
|
+
orientation?: SliderOrientation;
|
|
734
|
+
showValue?: boolean;
|
|
735
|
+
views?: {
|
|
736
|
+
bg?: ViewRef;
|
|
737
|
+
fill?: ViewRef;
|
|
738
|
+
thumb?: ViewRef;
|
|
739
|
+
};
|
|
740
|
+
nineSliceSprite?: {
|
|
741
|
+
bg?: [number, number, number, number];
|
|
742
|
+
fill?: [number, number, number, number];
|
|
743
|
+
};
|
|
744
|
+
fillPaddings?: ProgressBarFillPaddings;
|
|
745
|
+
valueTextStyle?: {
|
|
746
|
+
fontFamily?: string;
|
|
747
|
+
fontSize?: number;
|
|
748
|
+
fill?: string | number;
|
|
749
|
+
};
|
|
750
|
+
valueTextOffset?: {
|
|
751
|
+
x?: number;
|
|
752
|
+
y?: number;
|
|
753
|
+
};
|
|
754
|
+
width?: number;
|
|
755
|
+
height?: number;
|
|
756
|
+
bindToStore?: string;
|
|
757
|
+
}
|
|
758
|
+
|
|
759
|
+
export declare const Switcher: UiComponentClass<SwitcherParams>;
|
|
760
|
+
|
|
761
|
+
export declare interface SwitcherParams {
|
|
762
|
+
active?: number;
|
|
763
|
+
views?: ViewRef[];
|
|
764
|
+
triggerEvent?: SwitcherTriggerEvent | SwitcherTriggerEvent[];
|
|
765
|
+
bindToStore?: string;
|
|
766
|
+
}
|
|
767
|
+
|
|
768
|
+
export declare type SwitcherTriggerEvent = 'onPress' | 'onDown' | 'onUp' | 'onHover' | 'onOut' | 'onUpOut';
|
|
769
|
+
|
|
770
|
+
declare type UiComponentClass<TParams = any> = new () => PixiUiComponent<TParams>;
|
|
771
|
+
|
|
772
|
+
export declare type UIComponentParams = ShapeParams;
|
|
773
|
+
|
|
774
|
+
/** Backward-compatible aliases kept for existing TS imports. */
|
|
775
|
+
export declare type UIParams = ShapeParams;
|
|
776
|
+
|
|
777
|
+
declare interface UiRenderSize {
|
|
778
|
+
width?: number;
|
|
779
|
+
height?: number;
|
|
780
|
+
}
|
|
781
|
+
|
|
782
|
+
export declare type UIShape = ShapeDefinition;
|
|
783
|
+
|
|
784
|
+
/** Backward-compatible enum value alias for existing TypeScript consumers. */
|
|
785
|
+
export declare const UIShapeType: typeof ShapeType;
|
|
786
|
+
|
|
787
|
+
export declare type UIShapeType = ShapeType;
|
|
788
|
+
|
|
789
|
+
declare interface UiSizeSyncContext {
|
|
790
|
+
componentName: string;
|
|
791
|
+
component?: Record<string, any>;
|
|
792
|
+
gameObject?: any;
|
|
793
|
+
source: 'initial-transform' | 'transform-change' | 'component-change';
|
|
794
|
+
}
|
|
795
|
+
|
|
796
|
+
export declare type UIStyle = ShapeStyle;
|
|
797
|
+
|
|
555
798
|
declare class UISystem extends System {
|
|
556
799
|
static systemName: string;
|
|
557
800
|
name: string;
|
|
558
801
|
/** componentName -> instance map(generic 共享一份) */
|
|
559
802
|
private instances;
|
|
560
803
|
private signalCleanups;
|
|
804
|
+
private transformSizeAuthorities;
|
|
561
805
|
/** 给 RadioGroup 反查 PixiCheckBox 实例用 */
|
|
562
806
|
private get checkBoxInstances();
|
|
563
807
|
private radioGroupInstances;
|
|
564
808
|
update(_e?: any): void;
|
|
565
809
|
componentChanged(changed: ComponentChanged): void;
|
|
566
|
-
private
|
|
810
|
+
private handleShape;
|
|
567
811
|
private handleGeneric;
|
|
568
812
|
private attachGeneric;
|
|
569
813
|
private detachGeneric;
|
|
@@ -571,6 +815,9 @@ declare class UISystem extends System {
|
|
|
571
815
|
private attachRadioGroup;
|
|
572
816
|
private getInstanceMap;
|
|
573
817
|
private gameRef;
|
|
818
|
+
private handleTransformSizeChanged;
|
|
819
|
+
private relayoutLayoutInstances;
|
|
820
|
+
private applyTransientTransformSize;
|
|
574
821
|
}
|
|
575
822
|
export { UISystem as PluginUiSystem }
|
|
576
823
|
export { UISystem }
|
|
@@ -581,7 +828,7 @@ export { UISystem }
|
|
|
581
828
|
* - { entityName: "background" } — 引用同 GameObject 的子 entity 的 PIXI.Container,
|
|
582
829
|
* 这个 child entity 必须先 ADD,然后我们把它的 Container "借走" 交给 @pixi/ui 实例。
|
|
583
830
|
* 原 child entity 仍然存在(Transform/逻辑组件还在),只是 PIXI 显示对象被重新 parent。
|
|
584
|
-
* - {
|
|
831
|
+
* - { shape: { type, style } } — 内联 shape,生成一个新的 PIXI.Graphics(临时,与 Shape 组件不同源)
|
|
585
832
|
* - { texture: "loading.png" } — 从已加载的 Eva 资源池查 texture,生成 PIXI.Sprite
|
|
586
833
|
* - { color: 0xRRGGBB, width, height } — 生成纯色矩形 Graphics
|
|
587
834
|
* - { fallback: <ViewRef> } — 当主 ref 解析失败时使用
|
|
@@ -589,6 +836,9 @@ export { UISystem }
|
|
|
589
836
|
export declare type ViewRef = {
|
|
590
837
|
entityName: string;
|
|
591
838
|
fallback?: ViewRef;
|
|
839
|
+
} | {
|
|
840
|
+
shape: InlineShape;
|
|
841
|
+
fallback?: ViewRef;
|
|
592
842
|
} | {
|
|
593
843
|
ui: InlineShape;
|
|
594
844
|
fallback?: ViewRef;
|