@operato/scene-table 9.2.1 → 10.0.0-beta.1
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/data-list/data-cell.d.ts +237 -1
- package/dist/data-list/data-cell.js +1 -1
- package/dist/data-list/data-cell.js.map +1 -1
- package/dist/data-list/data-list-layout.js +0 -1
- package/dist/data-list/data-list-layout.js.map +1 -1
- package/dist/data-list/data-list.d.ts +1 -1
- package/dist/data-list/data-list.js +15 -16
- package/dist/data-list/data-list.js.map +1 -1
- package/dist/helper-functions.d.ts +2 -2
- package/dist/helper-functions.js.map +1 -1
- package/dist/table-cell.d.ts +237 -1
- package/dist/table-cell.js +2 -2
- package/dist/table-cell.js.map +1 -1
- package/dist/table.d.ts +1 -1
- package/dist/table.js +2 -5
- package/dist/table.js.map +1 -1
- package/package.json +12 -12
- package/schema.gql +0 -3711
|
@@ -1,5 +1,241 @@
|
|
|
1
1
|
import { Component, ComponentNature, Style } from '@hatiolab/things-scene';
|
|
2
|
-
declare const DataCell_base:
|
|
2
|
+
declare const DataCell_base: (new (...args: any[]) => {
|
|
3
|
+
contains(x: number, y: number): boolean;
|
|
4
|
+
get path(): {
|
|
5
|
+
x: any;
|
|
6
|
+
y: any;
|
|
7
|
+
}[];
|
|
8
|
+
set path(path: {
|
|
9
|
+
x: any;
|
|
10
|
+
y: any;
|
|
11
|
+
}[]): any;
|
|
12
|
+
get anchors(): {
|
|
13
|
+
name: string;
|
|
14
|
+
position: {
|
|
15
|
+
x: any;
|
|
16
|
+
y: any;
|
|
17
|
+
};
|
|
18
|
+
}[];
|
|
19
|
+
get bounds(): any;
|
|
20
|
+
set bounds(bounds: any): any;
|
|
21
|
+
render(ctx: CanvasRenderingContext2D): void;
|
|
22
|
+
_app: any;
|
|
23
|
+
_model: any;
|
|
24
|
+
_state: any;
|
|
25
|
+
_delta: any;
|
|
26
|
+
_animation: any;
|
|
27
|
+
_animate: any;
|
|
28
|
+
_parent: any;
|
|
29
|
+
_disposed: any;
|
|
30
|
+
_textHidden: any;
|
|
31
|
+
_text_substitutor: any;
|
|
32
|
+
_value_substitutor: any;
|
|
33
|
+
_mappings: any;
|
|
34
|
+
_realObject: import("@hatiolab/things-scene").IRealObject | undefined;
|
|
35
|
+
_cachedState: any;
|
|
36
|
+
updatedAt: any;
|
|
37
|
+
fontSize: any;
|
|
38
|
+
__cache__: any;
|
|
39
|
+
created(): void;
|
|
40
|
+
added(parent: any): void;
|
|
41
|
+
removed(parent: any): void;
|
|
42
|
+
ready(): Promise<void>;
|
|
43
|
+
touch(): void;
|
|
44
|
+
clearCache(...attrs: any[]): void;
|
|
45
|
+
removeSelf(completely: any): void;
|
|
46
|
+
resetAnimation(): void;
|
|
47
|
+
dispose(): void;
|
|
48
|
+
get nature(): import("@hatiolab/things-scene").ComponentNature;
|
|
49
|
+
get disposed(): boolean;
|
|
50
|
+
isLayer(): boolean;
|
|
51
|
+
isGroup(): boolean;
|
|
52
|
+
isContainer(): this is import("@hatiolab/things-scene/dist-types/types/component.js").Container;
|
|
53
|
+
isLine(): boolean;
|
|
54
|
+
isRoot(): boolean;
|
|
55
|
+
isRootModel(): boolean;
|
|
56
|
+
is3dish(): boolean;
|
|
57
|
+
get is3dMode(): boolean;
|
|
58
|
+
isIn3DSpace(): boolean;
|
|
59
|
+
isTemplate(): boolean;
|
|
60
|
+
isHTMLElement(): boolean;
|
|
61
|
+
isConnectable(): boolean;
|
|
62
|
+
isIdentifiable(): boolean;
|
|
63
|
+
isPositionable(): boolean;
|
|
64
|
+
replaceRefids(replaceMap: any): void;
|
|
65
|
+
get(property: any): any;
|
|
66
|
+
set(props: any, propval?: any): any;
|
|
67
|
+
getState(property: any): any;
|
|
68
|
+
setState(props: any, propval?: any): any;
|
|
69
|
+
get model(): any;
|
|
70
|
+
get state(): any;
|
|
71
|
+
get hierarchy(): any;
|
|
72
|
+
get volatile(): never[];
|
|
73
|
+
_applyProps(target: any, props: any, options: any): any;
|
|
74
|
+
move(offset: {
|
|
75
|
+
x: number;
|
|
76
|
+
y: number;
|
|
77
|
+
}, ...args: boolean[]): void;
|
|
78
|
+
symmetryX(x?: number): void;
|
|
79
|
+
symmetryY(y: number): void;
|
|
80
|
+
adjustResize(bounds: import("@hatiolab/things-scene").BOUNDS, origin_bounds: import("@hatiolab/things-scene").BOUNDS, diagonal: boolean): {
|
|
81
|
+
left: any;
|
|
82
|
+
top: any;
|
|
83
|
+
width: any;
|
|
84
|
+
height: any;
|
|
85
|
+
};
|
|
86
|
+
adjustRotation(rotation: number, step: boolean): number;
|
|
87
|
+
outline(progress: number): any;
|
|
88
|
+
get center(): import("@hatiolab/things-scene").POINT;
|
|
89
|
+
set center(p: import("@hatiolab/things-scene").POINT): any;
|
|
90
|
+
get location(): import("@hatiolab/things-scene").POINT;
|
|
91
|
+
set location(l: import("@hatiolab/things-scene").POINT): any;
|
|
92
|
+
get rotate(): import("@hatiolab/things-scene").POINT;
|
|
93
|
+
set rotate(r: import("@hatiolab/things-scene").POINT): any;
|
|
94
|
+
get dimension(): import("@hatiolab/things-scene").DIMENSION;
|
|
95
|
+
set dimension(d: import("@hatiolab/things-scene").DIMENSION): any;
|
|
96
|
+
get drawPath(): import("@hatiolab/things-scene").POINT[];
|
|
97
|
+
get rotatePoint(): import("@hatiolab/things-scene").POINT;
|
|
98
|
+
get mutable(): boolean;
|
|
99
|
+
get resizable(): boolean;
|
|
100
|
+
get rotatable(): boolean;
|
|
101
|
+
buildRealObject(): import("@hatiolab/things-scene").IRealObject | undefined;
|
|
102
|
+
get realObject(): import("@hatiolab/things-scene").IRealObject | undefined;
|
|
103
|
+
draw(context?: import("@hatiolab/things-scene").SceneRenderContext): void;
|
|
104
|
+
prerender(context: import("@hatiolab/things-scene").SceneRenderContext): void;
|
|
105
|
+
postrender(context: import("@hatiolab/things-scene").SceneRenderContext): void;
|
|
106
|
+
prepare(resolve: (component: Component) => void, reject: (reason: any) => void): void;
|
|
107
|
+
prepareIf(condition: boolean): void;
|
|
108
|
+
drawText(context: import("@hatiolab/things-scene").SceneRenderContext): void;
|
|
109
|
+
drawStroke(context: import("@hatiolab/things-scene").SceneRenderContext, override?: Record<string, unknown>): void;
|
|
110
|
+
drawFill(context: import("@hatiolab/things-scene").SceneRenderContext, override?: Record<string, unknown>): void;
|
|
111
|
+
get strokeStyle(): any;
|
|
112
|
+
set strokeStyle(v: any): any;
|
|
113
|
+
get fillStyle(): any;
|
|
114
|
+
set fillStyle(v: any): any;
|
|
115
|
+
get fontColor(): string;
|
|
116
|
+
set fontColor(v: string): any;
|
|
117
|
+
get rotation(): number;
|
|
118
|
+
set rotation(v: number): any;
|
|
119
|
+
get decorators(): string[];
|
|
120
|
+
get decotag(): string;
|
|
121
|
+
get hidden(): boolean;
|
|
122
|
+
set hidden(v: boolean): any;
|
|
123
|
+
get tag(): string;
|
|
124
|
+
set tag(v: string): any;
|
|
125
|
+
get appendum(): any;
|
|
126
|
+
set appendum(v: any): any;
|
|
127
|
+
defaultTextSubstitutor(): string;
|
|
128
|
+
textLines(context?: import("@hatiolab/things-scene").SceneRenderContext): any[][];
|
|
129
|
+
get font(): string;
|
|
130
|
+
get lineHeight(): number;
|
|
131
|
+
get textSubstitutor(): () => string;
|
|
132
|
+
get text(): string;
|
|
133
|
+
set text(v: string): any;
|
|
134
|
+
get textBounds(): import("@hatiolab/things-scene").BOUNDS;
|
|
135
|
+
get textRotation(): number;
|
|
136
|
+
get textHidden(): boolean;
|
|
137
|
+
set textHidden(v: boolean): any;
|
|
138
|
+
get hasTextProperty(): boolean;
|
|
139
|
+
animate(opts: import("@hatiolab/things-scene").AnimationConfig): any;
|
|
140
|
+
effect(context: import("@hatiolab/things-scene").SceneRenderContext, model: any): void;
|
|
141
|
+
serialize(...others: any[]): string;
|
|
142
|
+
trim(): void;
|
|
143
|
+
closeScene(data: any): void;
|
|
144
|
+
delta(attr?: string | object, value?: any): any;
|
|
145
|
+
invalidate(): void;
|
|
146
|
+
get value(): any;
|
|
147
|
+
set value(v: any): any;
|
|
148
|
+
get data(): any;
|
|
149
|
+
set data(v: any): any;
|
|
150
|
+
set tap(v: any): any;
|
|
151
|
+
get mappings(): any[];
|
|
152
|
+
get retention(): number;
|
|
153
|
+
get animation(): import("@hatiolab/things-scene").AnimationController | undefined;
|
|
154
|
+
get started(): boolean;
|
|
155
|
+
set started(v: boolean): any;
|
|
156
|
+
get controls(): import("@hatiolab/things-scene").Control[] | undefined;
|
|
157
|
+
findFirst(finder: string | ((c: Component) => boolean), ...others: any[]): Component | undefined;
|
|
158
|
+
findAll(s: string | ((c: Component) => boolean), ...others: any[]): any[] | undefined;
|
|
159
|
+
capture(x: number, y: number, except?: (c: Component) => boolean): any;
|
|
160
|
+
findAnchor(name: string): any;
|
|
161
|
+
isDescendible(container: Component): boolean;
|
|
162
|
+
getContext(component?: unknown): any;
|
|
163
|
+
get root(): Component;
|
|
164
|
+
get rootModel(): Component;
|
|
165
|
+
get parent(): Component;
|
|
166
|
+
set parent(v: Component): any;
|
|
167
|
+
get scalable(): boolean;
|
|
168
|
+
get stuck(): boolean;
|
|
169
|
+
get capturable(): boolean;
|
|
170
|
+
get position(): string;
|
|
171
|
+
get origin(): string;
|
|
172
|
+
get offset(): import("@hatiolab/things-scene").POINT;
|
|
173
|
+
get app(): import("@hatiolab/things-scene").ApplicationContext;
|
|
174
|
+
drawEffect(context: import("@hatiolab/things-scene").SceneRenderContext): void;
|
|
175
|
+
prepareFill(resolve: Function, reject: Function): void;
|
|
176
|
+
prepareFillIf(condition: boolean): void;
|
|
177
|
+
onchangeFill(after: Record<string, any>, before: Record<string, any>): void;
|
|
178
|
+
drawImage(context: import("@hatiolab/things-scene").SceneRenderContext, image: HTMLImageElement, left: number, top: number, width: number, height: number): void;
|
|
179
|
+
mutateBounds(logic: ((bounds: import("@hatiolab/things-scene").BOUNDS) => import("@hatiolab/things-scene").BOUNDS | void) | null, context?: any): void;
|
|
180
|
+
mutatePath(beforeLogic: ((path: import("@hatiolab/things-scene").POINT[]) => import("@hatiolab/things-scene").POINT[] | void) | null, afterLogic: ((path: import("@hatiolab/things-scene").POINT[]) => import("@hatiolab/things-scene").POINT[] | void) | null, context?: any): void;
|
|
181
|
+
access(accessor: string): any;
|
|
182
|
+
substitute(template: string, data: any): string | undefined;
|
|
183
|
+
onchangeMappings(after: Record<string, any>, before: Record<string, any>): void;
|
|
184
|
+
onchangeData(after: Record<string, any>, before: Record<string, any>): void;
|
|
185
|
+
buildMappings(): void;
|
|
186
|
+
executeMappings(force?: boolean): void;
|
|
187
|
+
disposeMappings(): void;
|
|
188
|
+
ondropfile(transfered: FileList, files: string[]): void;
|
|
189
|
+
transcoordS2P(x: number, y: number, rp?: import("@hatiolab/things-scene").POINT): import("@hatiolab/things-scene").POINT;
|
|
190
|
+
transcoordP2S(x: number, y: number, rp?: import("@hatiolab/things-scene").POINT): import("@hatiolab/things-scene").POINT;
|
|
191
|
+
transcoordS2T(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
|
|
192
|
+
transcoordT2P(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
|
|
193
|
+
transcoordT2S(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
|
|
194
|
+
transcoordS2TR(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
|
|
195
|
+
transcoordS2O(x: number, y: number, target: Component): import("@hatiolab/things-scene").POINT;
|
|
196
|
+
transcoordC2S(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
|
|
197
|
+
transcoordS2C(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
|
|
198
|
+
toParent(x: number, y: number, rp?: import("@hatiolab/things-scene").POINT): import("@hatiolab/things-scene").POINT;
|
|
199
|
+
fromParent(x: number, y: number, rp?: import("@hatiolab/things-scene").POINT): import("@hatiolab/things-scene").POINT;
|
|
200
|
+
toScene(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
|
|
201
|
+
fromScene(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
|
|
202
|
+
toLocal(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
|
|
203
|
+
toGlobal(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
|
|
204
|
+
toOther(x: number, y: number, target: Component): import("@hatiolab/things-scene").POINT;
|
|
205
|
+
on(name: string | object, callback: Function, context?: any): any;
|
|
206
|
+
off(name?: string | object, callback?: Function, context?: any): any;
|
|
207
|
+
once(name: string | object, callback: Function, context?: any): any;
|
|
208
|
+
trigger(name: string, ...args: any[]): any;
|
|
209
|
+
delegate_on(delegator: any): any;
|
|
210
|
+
delegate_off(delegator: any): any;
|
|
211
|
+
onchange(after: Record<string, any>, before: Record<string, any>): void;
|
|
212
|
+
calculateBounds?(): void;
|
|
213
|
+
oncreate_element?(element: HTMLElement): void;
|
|
214
|
+
removeComponent(component: Component, ghost?: boolean): void;
|
|
215
|
+
addComponent(component: Component, ghost?: boolean): void;
|
|
216
|
+
insertComponentAt(component: Component, index: number, ghost?: boolean): void;
|
|
217
|
+
getOverlay(component: Component): HTMLElement | undefined;
|
|
218
|
+
findById(id: string): Component | undefined;
|
|
219
|
+
findByRefid(ref: string | number): Component | undefined;
|
|
220
|
+
findAllById(id: string): Component[];
|
|
221
|
+
resize(): void;
|
|
222
|
+
fit(type?: string): void;
|
|
223
|
+
get components(): Component[] | undefined;
|
|
224
|
+
get layout(): any;
|
|
225
|
+
get auxOverlay(): HTMLElement | undefined;
|
|
226
|
+
get isReady(): boolean;
|
|
227
|
+
get unitScale(): number;
|
|
228
|
+
get selected(): Component[];
|
|
229
|
+
set selected(_v: Component[]): any;
|
|
230
|
+
get focused(): Component | null;
|
|
231
|
+
set focused(_v: Component | null): any;
|
|
232
|
+
get hasSameParentForAllSelected(): boolean;
|
|
233
|
+
set hasSameParentForAllSelected(_v: boolean): any;
|
|
234
|
+
get fitMode(): string | undefined;
|
|
235
|
+
set fitMode(_v: string | undefined): any;
|
|
236
|
+
get element(): HTMLElement | null;
|
|
237
|
+
set element(_v: HTMLElement | null): any;
|
|
238
|
+
}) & typeof Component;
|
|
3
239
|
export default class DataCell extends DataCell_base {
|
|
4
240
|
get nature(): ComponentNature;
|
|
5
241
|
get value(): any;
|
|
@@ -45,7 +45,7 @@ let DataCell = class DataCell extends RectPath(Component) {
|
|
|
45
45
|
render(context) {
|
|
46
46
|
var { left, top, width, height } = this.bounds;
|
|
47
47
|
var { border } = this.state;
|
|
48
|
-
border
|
|
48
|
+
border ||= {};
|
|
49
49
|
// Cell 채우기.
|
|
50
50
|
context.beginPath();
|
|
51
51
|
context.lineWidth = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-cell.js","sourceRoot":"","sources":["../../src/data-list/data-cell.ts"],"names":[],"mappings":";AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAmB,QAAQ,EAAS,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAIpG,MAAM,MAAM,GAAoB;IAC9B,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,UAAU,EAAE;QACV;YACE,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,EAAE;YACR,QAAQ,EAAE;gBACR,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,KAAK;aACb;SACF;KACF;IACD,gBAAgB,EAAE,OAAO;IACzB,IAAI,EAAE,2BAA2B;CAClC,CAAA;AAGc,IAAM,QAAQ,GAAd,MAAM,QAAS,SAAQ,QAAQ,CAAC,SAAS,CAAC;IACvD,IAAI,MAAM;QACR,OAAO,MAAM,CAAA;IACf,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;IACzB,CAAC;IAED,IAAI,KAAK,CAAC,KAAK;QACb,IAAI,CAAC,QAAQ,CAAC;YACZ,KAAK;YACL,IAAI,EAAE,KAAK;SACZ,CAAC,CAAA;IACJ,CAAC;IAED,YAAY,CAAC,OAAiC,EAAE,CAAS,EAAE,CAAS,EAAE,IAAY,EAAE,IAAY,EAAE,KAAY;QAC5G,IAAI,KAAK,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpE,OAAO,CAAC,SAAS,EAAE,CAAA;YACnB,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;YACpB,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC1B,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IAED,MAAM,CAAC,OAAiC;QACtC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAA;QAE9C,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC3B,MAAM,
|
|
1
|
+
{"version":3,"file":"data-cell.js","sourceRoot":"","sources":["../../src/data-list/data-cell.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\nimport { Component, ComponentNature, RectPath, Style, sceneComponent } from '@hatiolab/things-scene'\n\nimport { Table } from '../index.js'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'editor-table',\n label: '',\n name: '',\n property: {\n merge: false,\n split: false\n }\n }\n ],\n 'value-property': 'value',\n help: 'scene/component/data-cell'\n}\n\n@sceneComponent('data-cell')\nexport default class DataCell extends RectPath(Component) {\n get nature() {\n return NATURE\n }\n\n get value() {\n return this.state.value\n }\n\n set value(value) {\n this.setState({\n value,\n data: value\n })\n }\n\n renderBorder(context: CanvasRenderingContext2D, x: number, y: number, to_x: number, to_y: number, style: Style) {\n if (style && style.strokeStyle && style.lineWidth && style.lineDash) {\n context.beginPath()\n context.moveTo(x, y)\n context.lineTo(to_x, to_y)\n Component.drawStroke(context, style)\n }\n }\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n\n var { border } = this.state\n border ||= {}\n\n // Cell 채우기.\n context.beginPath()\n context.lineWidth = 0\n context.rect(left, top, width, height)\n this.drawFill(context)\n\n // Border 그리기\n var parent = this.parent as Table\n var idx = parent.components.indexOf(this)\n var columns = parent.columns || 1\n\n this.renderBorder(context, left, top, left + width, top, border.top)\n this.renderBorder(context, left, top + height, left, top, border.left)\n if ((idx + 1) % columns == 0) {\n /* if this filed is right most, draw right side border. */\n this.renderBorder(context, left + width, top, left + width, top + height, border.right)\n }\n this.renderBorder(context, left + width, top + height, left, top + height, border.bottom)\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-list-layout.js","sourceRoot":"","sources":["../../src/data-list/data-list-layout.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAwB,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAKrE,IAAI,cAAc,GAAG;IACnB,MAAM,EAAE,UAAU,SAAoB;QACpC,IAAI,YAAY,GAAG,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;QAErD,IAAI,OAAO,GAAG,CAAC,YAAY,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QACrF,IAAI,IAAI,GAAG,CAAC,YAAY,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC5E,IAAI,MAAM,GAAG,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAClF,IAAI,OAAO,GAAG,CAAC,YAAY,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QACrF,IAAI,EAAE,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,KAAK,CAAA;QAEjD,IAAI,UAAU,GAAG,MAAM;YACrB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAa,EAAE,CAAS,EAAE,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,KAAa,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,EAAE,CAAC,CAAC;YACjH,CAAC,CAAC,OAAO,CAAA;QACX,IAAI,WAAW,GAAG,OAAO;YACvB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAc,EAAE,CAAS,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,MAAc,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,EAAE,CAAC,CAAC;YAClH,CAAC,CAAC,IAAI,CAAA;QAER,IAAI,MAAM,GAAG,SAAS,CAAC,UAAU,CAAA;QACjC,IAAI,WAAW,GAAG,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;QACxD,IAAI,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QAEtD,IAAI,UAAU,GAAG,MAAM,CAAC,KAAK,GAAG,UAAU,CAAA;QAC1C,IAAI,WAAW,GAAG,MAAM,CAAC,MAAM,GAAG,WAAW,CAAA;QAE7C,mFAAmF;QACnF,IAAI,SAAS,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAA;QAExD,IAAI,UAAU,GAAG,SAAS,CAAC,UAAU,CAAA;QAErC,UAAU,CAAC,OAAO,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"data-list-layout.js","sourceRoot":"","sources":["../../src/data-list/data-list-layout.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport { Component, Container, Layout } from '@hatiolab/things-scene'\n\nimport DataCell from './data-cell.js'\nimport DataList from './data-list.js'\n\nvar DataListLayout = {\n reflow: function (container: Container) {\n var layoutConfig = container.getState('layoutConfig')\n\n var columns = (layoutConfig && layoutConfig.columns) || container.getState('columns')\n var rows = (layoutConfig && layoutConfig.rows) || container.getState('rows')\n var widths = (layoutConfig && layoutConfig.widths) || container.getState('widths')\n var heights = (layoutConfig && layoutConfig.heights) || container.getState('heights')\n var { offset = { x: 0, y: 0 } } = container.state\n\n var widths_sum = widths\n ? widths.filter((width: number, i: number) => i < columns).reduce((sum: number, width: number) => sum + width, 0)\n : columns\n var heights_sum = heights\n ? heights.filter((height: number, i: number) => i < rows).reduce((sum: number, height: number) => sum + height, 0)\n : rows\n\n var inside = container.textBounds\n var paddingLeft = container.getState('paddingLeft') || 0\n var paddingTop = container.getState('paddingTop') || 0\n\n var width_unit = inside.width / widths_sum\n var height_unit = inside.height / heights_sum\n\n // Calculate row height (assuming uniform height for now based on first row config)\n var rowHeight = (heights ? heights[0] : 1) * height_unit\n\n var components = container.components\n\n components.forEach((component: any, idx: any) => {\n if (component.hidden) {\n // Position hidden components far outside the viewport\n component.bounds = {\n left: -10000,\n top: -10000,\n width: 0,\n height: 0\n }\n return\n }\n\n var rowIndex = (component as any)._rowIndex\n\n // Fallback for non-virtualized or initial state\n if (rowIndex === undefined) {\n rowIndex = Math.floor(idx / columns)\n }\n\n var colIndex = idx % columns\n\n let w = widths ? widths[colIndex] : 1\n let h = heights ? heights[0] : 1\n\n // Calculate x position based on column widths\n let x = 0\n for (let i = 0; i < colIndex; i++) {\n x += (widths ? widths[i] : 1) * width_unit\n }\n\n // Calculate y position based on rowIndex and offset\n let y = rowIndex * rowHeight + offset.y\n\n let left = paddingLeft + x\n let top = paddingTop + y\n let width = width_unit * w\n let height = height_unit * h\n\n component.bounds = {\n left,\n top,\n width,\n height\n }\n component.set('rotation', 0)\n })\n },\n\n capturables: function (container: Container) {\n return container.components\n },\n\n drawables: function (container: Container) {\n return container.components\n },\n\n isStuck: function (component: Component) {\n return true\n },\n\n /*\n * 레이아웃별로, 키보드 방향키 등을 사용해서 네비게이션 할 수 있는 기능을 제공할 수 있다.\n * 하나의 컴포넌트만 선택되어있고, 키보드 이벤트가 발생했을 때 호출되게 된다.\n * keyNavigate 메쏘드가 정의되어 있지 않으면, 'Tab' 키에 대한 네비게이션만 작동한다.\n * 'Tab'키에 의한 네비게이션은 모든 레이아웃에 공통으로 적용된다.\n */\n keyNavigate: function (container: Container, component: Component, e: KeyboardEvent) {\n var layoutConfig = container.getState('layoutConfig')\n\n var columns = (layoutConfig && layoutConfig.columns) || container.getState('columns')\n var rows = (layoutConfig && layoutConfig.rows) || container.getState('rows')\n\n var { row, column } = (container as any).getRowColumn(component as any)\n\n switch (e.code) {\n case 'ArrowUp':\n if (row > 0) return container.getAt((row - 1) * columns + column)\n break\n case 'ArrowDown':\n if (row < rows - 1) return container.getAt((row + 1) * columns + column)\n break\n case 'ArrowRight':\n if (column < columns - 1) return container.getAt(row * columns + column + 1)\n break\n case 'ArrowLeft':\n if (column > 0) return container.getAt(row * columns + column - 1)\n break\n default:\n return component\n }\n },\n\n /*\n * 하위 컴포넌트를 영역으로 선택하는 경우에, 바운드에 join만 되어도 선택된 것으로 판단하도록 한다.\n * joinType이 false이거나, 정의되어있지 않으면, 바운드에 포함되어야 선택된 것으로 판단한다.\n */\n joinType: true\n}\n\nLayout.register('data-list', DataListLayout)\n\nexport default DataListLayout\n"]}
|
|
@@ -26,7 +26,7 @@ export default class DataList extends Container {
|
|
|
26
26
|
_ontouchstart(e: TouchEvent): void;
|
|
27
27
|
_ontouchmove(e: TouchEvent): void;
|
|
28
28
|
_ontouchend(e: TouchEvent): void;
|
|
29
|
-
get layout():
|
|
29
|
+
get layout(): any;
|
|
30
30
|
containable(component: Component): boolean;
|
|
31
31
|
get focusible(): boolean;
|
|
32
32
|
get widths_sum(): number;
|
|
@@ -22,18 +22,7 @@ const NATURE = {
|
|
|
22
22
|
help: 'scene/component/data-list'
|
|
23
23
|
};
|
|
24
24
|
let DataList = class DataList extends Container {
|
|
25
|
-
|
|
26
|
-
super(...arguments);
|
|
27
|
-
this.reflowing = false;
|
|
28
|
-
/*
|
|
29
|
-
* Virtualization State
|
|
30
|
-
*/
|
|
31
|
-
this._renderStart = 0;
|
|
32
|
-
this._renderEnd = 0;
|
|
33
|
-
this._isDraggingScrollbar = false;
|
|
34
|
-
this._dragStartY = 0;
|
|
35
|
-
this._startOffsetY = 0;
|
|
36
|
-
}
|
|
25
|
+
reflowing = false;
|
|
37
26
|
postrender(context) {
|
|
38
27
|
super.postrender(context);
|
|
39
28
|
// child component들을 다 그린 후에 scrollbar를 표현한다.
|
|
@@ -41,6 +30,11 @@ let DataList = class DataList extends Container {
|
|
|
41
30
|
this.renderScrollbar(context);
|
|
42
31
|
}
|
|
43
32
|
}
|
|
33
|
+
/*
|
|
34
|
+
* Virtualization State
|
|
35
|
+
*/
|
|
36
|
+
_renderStart = 0;
|
|
37
|
+
_renderEnd = 0;
|
|
44
38
|
renderScrollbar(context) {
|
|
45
39
|
var { left, top, width, height } = this.bounds;
|
|
46
40
|
var { offset = { x: 0, y: 0 }, data } = this.state;
|
|
@@ -150,8 +144,13 @@ let DataList = class DataList extends Container {
|
|
|
150
144
|
// Reset alpha
|
|
151
145
|
context.globalAlpha = 1.0;
|
|
152
146
|
}
|
|
147
|
+
_scrollbarBounds;
|
|
148
|
+
_scrollbarTopIconBounds;
|
|
149
|
+
_scrollbarBottomIconBounds;
|
|
150
|
+
_isDraggingScrollbar = false;
|
|
151
|
+
_dragStartY = 0;
|
|
152
|
+
_startOffsetY = 0;
|
|
153
153
|
ondragstart(e) {
|
|
154
|
-
var _a;
|
|
155
154
|
if (this._scrollbarBounds) {
|
|
156
155
|
const { x, y } = this.transcoordC2S(e.offsetX, e.offsetY);
|
|
157
156
|
const { left, top, width, height } = this._scrollbarBounds;
|
|
@@ -162,7 +161,7 @@ let DataList = class DataList extends Container {
|
|
|
162
161
|
if (y >= top && y <= top + height) {
|
|
163
162
|
this._isDraggingScrollbar = true;
|
|
164
163
|
this._dragStartY = y;
|
|
165
|
-
this._startOffsetY =
|
|
164
|
+
this._startOffsetY = this.state.offset?.y || 0;
|
|
166
165
|
e.stopPropagation();
|
|
167
166
|
return;
|
|
168
167
|
}
|
|
@@ -361,6 +360,8 @@ let DataList = class DataList extends Container {
|
|
|
361
360
|
e.preventDefault(); // 기본 동작 방지 (스크롤 막기)
|
|
362
361
|
}
|
|
363
362
|
}
|
|
363
|
+
__START_OFFSET;
|
|
364
|
+
__START_Y;
|
|
364
365
|
_ontouchstart(e) {
|
|
365
366
|
e.stopPropagation();
|
|
366
367
|
// e.preventDefault()
|
|
@@ -639,10 +640,8 @@ let DataList = class DataList extends Container {
|
|
|
639
640
|
const rowStartComponentIndex = this.columns + i * this.columns;
|
|
640
641
|
for (let j = 0; j < this.columns; j++) {
|
|
641
642
|
const cell = this.components[rowStartComponentIndex + j];
|
|
642
|
-
// @ts-ignore
|
|
643
643
|
cell.value = rowData;
|
|
644
644
|
// Store the data index on the component for layout
|
|
645
|
-
// @ts-ignore
|
|
646
645
|
cell._rowIndex = dataIndex;
|
|
647
646
|
}
|
|
648
647
|
}
|