@operato/scene-restful 9.1.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/jsonp.js CHANGED
@@ -15,7 +15,6 @@ function noop() { }
15
15
  * @param {Function} optional callback
16
16
  */
17
17
  export default function jsonp(url, opts, fn) {
18
- var _a;
19
18
  if ('function' == typeof opts) {
20
19
  fn = opts;
21
20
  opts = {};
@@ -42,18 +41,16 @@ export default function jsonp(url, opts, fn) {
42
41
  function cleanup() {
43
42
  if (script.parentNode)
44
43
  script.parentNode.removeChild(script);
45
- //@ts-ignore
46
44
  window[id] = noop;
47
45
  if (timer)
48
46
  clearTimeout(timer);
49
47
  }
50
48
  function cancel() {
51
- // @ts-ignore
52
49
  if (window[id]) {
53
50
  cleanup();
54
51
  }
55
52
  }
56
- //@ts-ignore
53
+ ;
57
54
  window[id] = function (data) {
58
55
  debug('jsonp got', data);
59
56
  cleanup();
@@ -67,7 +64,7 @@ export default function jsonp(url, opts, fn) {
67
64
  // create script
68
65
  script = document.createElement('script');
69
66
  script.src = url;
70
- (_a = target.parentNode) === null || _a === void 0 ? void 0 : _a.insertBefore(script, target);
67
+ target.parentNode?.insertBefore(script, target);
71
68
  return cancel;
72
69
  }
73
70
  //# sourceMappingURL=jsonp.js.map
package/dist/jsonp.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"jsonp.js","sourceRoot":"","sources":["../src/jsonp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAE9C,IAAI,KAAK,GAAG,CAAC,CAAA;AAEb,SAAS,IAAI,KAAI,CAAC;AAElB;;;;;;;;;;;;GAYG;AAEH,MAAM,CAAC,OAAO,UAAU,KAAK,CAC3B,GAAW,EACX,IAA0E,EAC1E,EAAmC;;IAEnC,IAAI,UAAU,IAAI,OAAO,IAAI,EAAE,CAAC;QAC9B,EAAE,GAAG,IAAI,CAAA;QACT,IAAI,GAAG,EAAE,CAAA;IACX,CAAC;IACD,IAAI,CAAC,IAAI;QAAE,IAAI,GAAG,EAAE,CAAA;IAEpB,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,MAAM,CAAA;IAElC,6DAA6D;IAC7D,gEAAgE;IAChE,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,GAAG,KAAK,EAAE,CAAA;IAEtC,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,UAAU,CAAA;IACpC,IAAI,OAAO,GAAG,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;IACzD,IAAI,GAAG,GAAG,kBAAkB,CAAA;IAC5B,IAAI,MAAM,GAAG,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAA;IACxE,IAAI,MAAyB,CAAA;IAC7B,IAAI,KAAa,CAAA;IAEjB,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,GAAG,UAAU,CAAC;YACjB,OAAO,EAAE,CAAA;YACT,IAAI,EAAE;gBAAE,EAAE,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;QAClC,CAAC,EAAE,OAAO,CAAC,CAAA;IACb,CAAC;IAED,SAAS,OAAO;QACd,IAAI,MAAM,CAAC,UAAU;YAAE,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QAC5D,YAAY;QACZ,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,CAAA;QACjB,IAAI,KAAK;YAAE,YAAY,CAAC,KAAK,CAAC,CAAA;IAChC,CAAC;IAED,SAAS,MAAM;QACb,aAAa;QACb,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YACf,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;IAED,YAAY;IACZ,MAAM,CAAC,EAAE,CAAC,GAAG,UAAU,IAAI;QACzB,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;QACxB,OAAO,EAAE,CAAA;QACT,IAAI,EAAE;YAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACxB,CAAC,CAAA;IAED,mBAAmB;IACnB,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,CAAA;IAC9D,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAE5B,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAA;IAE5B,gBAAgB;IAChB,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;IACzC,MAAM,CAAC,GAAG,GAAG,GAAG,CAAA;IAChB,MAAA,MAAM,CAAC,UAAU,0CAAE,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE/C,OAAO,MAAM,CAAA;AACf,CAAC","sourcesContent":["import { debug } from '@hatiolab/things-scene'\n\nvar count = 0\n\nfunction noop() {}\n\n/**\n * JSONP handler\n *\n * Options:\n * - param {String} qs parameter (`callback`)\n * - prefix {String} qs parameter (`__jp`)\n * - name {String} qs parameter (`prefix` + incr)\n * - timeout {Number} how long after a timeout error is emitted (`60000`)\n *\n * @param {String} url\n * @param {Object|Function} optional options / callback\n * @param {Function} optional callback\n */\n\nexport default function jsonp(\n url: string,\n opts: { prefix?: string; name?: string; param?: string; timeout?: number },\n fn: (self: any, data?: any) => void\n) {\n if ('function' == typeof opts) {\n fn = opts\n opts = {}\n }\n if (!opts) opts = {}\n\n var prefix = opts.prefix || '__jp'\n\n // use the callback name that was passed if one was provided.\n // otherwise generate a unique name by incrementing our counter.\n var id = opts.name || prefix + count++\n\n var param = opts.param || 'callback'\n var timeout = null != opts.timeout ? opts.timeout : 60000\n var enc = encodeURIComponent\n var target = document.getElementsByTagName('script')[0] || document.head\n var script: HTMLScriptElement\n var timer: number\n\n if (timeout) {\n timer = setTimeout(function () {\n cleanup()\n if (fn) fn(new Error('Timeout'))\n }, timeout)\n }\n\n function cleanup() {\n if (script.parentNode) script.parentNode.removeChild(script)\n //@ts-ignore\n window[id] = noop\n if (timer) clearTimeout(timer)\n }\n\n function cancel() {\n // @ts-ignore\n if (window[id]) {\n cleanup()\n }\n }\n\n //@ts-ignore\n window[id] = function (data) {\n debug('jsonp got', data)\n cleanup()\n if (fn) fn(null, data)\n }\n\n // add qs component\n url += (~url.indexOf('?') ? '&' : '?') + param + '=' + enc(id)\n url = url.replace('?&', '?')\n\n debug('jsonp req \"%s\"', url)\n\n // create script\n script = document.createElement('script')\n script.src = url\n target.parentNode?.insertBefore(script, target)\n\n return cancel\n}\n"]}
1
+ {"version":3,"file":"jsonp.js","sourceRoot":"","sources":["../src/jsonp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAE9C,IAAI,KAAK,GAAG,CAAC,CAAA;AAEb,SAAS,IAAI,KAAI,CAAC;AAElB;;;;;;;;;;;;GAYG;AAEH,MAAM,CAAC,OAAO,UAAU,KAAK,CAC3B,GAAW,EACX,IAA0E,EAC1E,EAAmC;IAEnC,IAAI,UAAU,IAAI,OAAO,IAAI,EAAE,CAAC;QAC9B,EAAE,GAAG,IAAI,CAAA;QACT,IAAI,GAAG,EAAE,CAAA;IACX,CAAC;IACD,IAAI,CAAC,IAAI;QAAE,IAAI,GAAG,EAAE,CAAA;IAEpB,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,MAAM,CAAA;IAElC,6DAA6D;IAC7D,gEAAgE;IAChE,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,GAAG,KAAK,EAAE,CAAA;IAEtC,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,UAAU,CAAA;IACpC,IAAI,OAAO,GAAG,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;IACzD,IAAI,GAAG,GAAG,kBAAkB,CAAA;IAC5B,IAAI,MAAM,GAAG,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAA;IACxE,IAAI,MAAyB,CAAA;IAC7B,IAAI,KAAa,CAAA;IAEjB,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,GAAG,UAAU,CAAC;YACjB,OAAO,EAAE,CAAA;YACT,IAAI,EAAE;gBAAE,EAAE,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;QAClC,CAAC,EAAE,OAAO,CAAC,CAAA;IACb,CAAC;IAED,SAAS,OAAO;QACd,IAAI,MAAM,CAAC,UAAU;YAAE,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAC3D;QAAC,MAAc,CAAC,EAAE,CAAC,GAAG,IAAI,CAAA;QAC3B,IAAI,KAAK;YAAE,YAAY,CAAC,KAAK,CAAC,CAAA;IAChC,CAAC;IAED,SAAS,MAAM;QACb,IAAK,MAAc,CAAC,EAAE,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;IAED,CAAC;IAAC,MAAc,CAAC,EAAE,CAAC,GAAG,UAAU,IAAS;QACxC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;QACxB,OAAO,EAAE,CAAA;QACT,IAAI,EAAE;YAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACxB,CAAC,CAAA;IAED,mBAAmB;IACnB,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,CAAA;IAC9D,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAE5B,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAA;IAE5B,gBAAgB;IAChB,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;IACzC,MAAM,CAAC,GAAG,GAAG,GAAG,CAAA;IAChB,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE/C,OAAO,MAAM,CAAA;AACf,CAAC","sourcesContent":["import { debug } from '@hatiolab/things-scene'\n\nvar count = 0\n\nfunction noop() {}\n\n/**\n * JSONP handler\n *\n * Options:\n * - param {String} qs parameter (`callback`)\n * - prefix {String} qs parameter (`__jp`)\n * - name {String} qs parameter (`prefix` + incr)\n * - timeout {Number} how long after a timeout error is emitted (`60000`)\n *\n * @param {String} url\n * @param {Object|Function} optional options / callback\n * @param {Function} optional callback\n */\n\nexport default function jsonp(\n url: string,\n opts: { prefix?: string; name?: string; param?: string; timeout?: number },\n fn: (self: any, data?: any) => void\n) {\n if ('function' == typeof opts) {\n fn = opts\n opts = {}\n }\n if (!opts) opts = {}\n\n var prefix = opts.prefix || '__jp'\n\n // use the callback name that was passed if one was provided.\n // otherwise generate a unique name by incrementing our counter.\n var id = opts.name || prefix + count++\n\n var param = opts.param || 'callback'\n var timeout = null != opts.timeout ? opts.timeout : 60000\n var enc = encodeURIComponent\n var target = document.getElementsByTagName('script')[0] || document.head\n var script: HTMLScriptElement\n var timer: number\n\n if (timeout) {\n timer = setTimeout(function () {\n cleanup()\n if (fn) fn(new Error('Timeout'))\n }, timeout)\n }\n\n function cleanup() {\n if (script.parentNode) script.parentNode.removeChild(script)\n ;(window as any)[id] = noop\n if (timer) clearTimeout(timer)\n }\n\n function cancel() {\n if ((window as any)[id]) {\n cleanup()\n }\n }\n\n ;(window as any)[id] = function (data: any) {\n debug('jsonp got', data)\n cleanup()\n if (fn) fn(null, data)\n }\n\n // add qs component\n url += (~url.indexOf('?') ? '&' : '?') + param + '=' + enc(id)\n url = url.replace('?&', '?')\n\n debug('jsonp req \"%s\"', url)\n\n // create script\n script = document.createElement('script')\n script.src = url\n target.parentNode?.insertBefore(script, target)\n\n return cancel\n}\n"]}
package/dist/restful.d.ts CHANGED
@@ -1,7 +1,466 @@
1
- import { ComponentNature, Shape } from '@hatiolab/things-scene';
1
+ import { Component, ComponentNature, Shape } from '@hatiolab/things-scene';
2
2
  declare const Restful_base: (new (...args: any[]) => {
3
+ _convertDataFormat(data: any, format: any): any;
3
4
  isDataSource(): boolean;
4
- _convertDataFormat(data: any, format: "json" | "text" | "jsonp" | string): any;
5
+ _app: any;
6
+ _model: any;
7
+ _state: any;
8
+ _delta: any;
9
+ _animation: any;
10
+ _animate: any;
11
+ _parent: any;
12
+ _disposed: any;
13
+ _textHidden: any;
14
+ _text_substitutor: any;
15
+ _value_substitutor: any;
16
+ _mappings: any;
17
+ _realObject: import("@hatiolab/things-scene").IRealObject | undefined;
18
+ _cachedState: any;
19
+ updatedAt: any;
20
+ fontSize: any;
21
+ __cache__: any;
22
+ created(): void;
23
+ added(parent: any): void;
24
+ removed(parent: any): void;
25
+ ready(): Promise<void>;
26
+ touch(): void;
27
+ clearCache(...attrs: any[]): void;
28
+ removeSelf(completely: any): void;
29
+ resetAnimation(): void;
30
+ dispose(): void;
31
+ get nature(): import("@hatiolab/things-scene").ComponentNature;
32
+ get disposed(): boolean;
33
+ isLayer(): boolean;
34
+ isGroup(): boolean;
35
+ isContainer(): this is import("@hatiolab/things-scene/dist-types/types/component.js").Container;
36
+ isLine(): boolean;
37
+ isRoot(): boolean;
38
+ isRootModel(): boolean;
39
+ is3dish(): boolean;
40
+ get is3dMode(): boolean;
41
+ isIn3DSpace(): boolean;
42
+ isTemplate(): boolean;
43
+ isHTMLElement(): boolean;
44
+ isConnectable(): boolean;
45
+ isIdentifiable(): boolean;
46
+ isPositionable(): boolean;
47
+ replaceRefids(replaceMap: any): void;
48
+ get(property: any): any;
49
+ set(props: any, propval?: any): any;
50
+ getState(property: any): any;
51
+ setState(props: any, propval?: any): any;
52
+ get model(): any;
53
+ get state(): any;
54
+ get hierarchy(): any;
55
+ get volatile(): never[];
56
+ _applyProps(target: any, props: any, options: any): any;
57
+ contains(x: number, y: number): boolean;
58
+ move(offset: {
59
+ x: number;
60
+ y: number;
61
+ }, ...args: boolean[]): void;
62
+ symmetryX(x?: number): void;
63
+ symmetryY(y: number): void;
64
+ adjustResize(bounds: import("@hatiolab/things-scene").BOUNDS, origin_bounds: import("@hatiolab/things-scene").BOUNDS, diagonal: boolean): {
65
+ left: any;
66
+ top: any;
67
+ width: any;
68
+ height: any;
69
+ };
70
+ adjustRotation(rotation: number, step: boolean): number;
71
+ outline(progress: number): any;
72
+ get bounds(): import("@hatiolab/things-scene").BOUNDS;
73
+ set bounds(b: import("@hatiolab/things-scene").BOUNDS): any;
74
+ get center(): import("@hatiolab/things-scene").POINT;
75
+ set center(p: import("@hatiolab/things-scene").POINT): any;
76
+ get location(): import("@hatiolab/things-scene").POINT;
77
+ set location(l: import("@hatiolab/things-scene").POINT): any;
78
+ get rotate(): import("@hatiolab/things-scene").POINT;
79
+ set rotate(r: import("@hatiolab/things-scene").POINT): any;
80
+ get dimension(): import("@hatiolab/things-scene").DIMENSION;
81
+ set dimension(d: import("@hatiolab/things-scene").DIMENSION): any;
82
+ get path(): import("@hatiolab/things-scene").POINT[];
83
+ set path(p: import("@hatiolab/things-scene").POINT[]): any;
84
+ get drawPath(): import("@hatiolab/things-scene").POINT[];
85
+ get rotatePoint(): import("@hatiolab/things-scene").POINT;
86
+ get mutable(): boolean;
87
+ get resizable(): boolean;
88
+ get rotatable(): boolean;
89
+ buildRealObject(): import("@hatiolab/things-scene").IRealObject | undefined;
90
+ get realObject(): import("@hatiolab/things-scene").IRealObject | undefined;
91
+ draw(context?: import("@hatiolab/things-scene").SceneRenderContext): void;
92
+ prerender(context: import("@hatiolab/things-scene").SceneRenderContext): void;
93
+ render(context: import("@hatiolab/things-scene").SceneRenderContext): void;
94
+ postrender(context: import("@hatiolab/things-scene").SceneRenderContext): void;
95
+ prepare(resolve: (component: Component) => void, reject: (reason: any) => void): void;
96
+ prepareIf(condition: boolean): void;
97
+ drawText(context: import("@hatiolab/things-scene").SceneRenderContext): void;
98
+ drawStroke(context: import("@hatiolab/things-scene").SceneRenderContext, override?: Record<string, unknown>): void;
99
+ drawFill(context: import("@hatiolab/things-scene").SceneRenderContext, override?: Record<string, unknown>): void;
100
+ get strokeStyle(): any;
101
+ set strokeStyle(v: any): any;
102
+ get fillStyle(): any;
103
+ set fillStyle(v: any): any;
104
+ get fontColor(): string;
105
+ set fontColor(v: string): any;
106
+ get rotation(): number;
107
+ set rotation(v: number): any;
108
+ get decorators(): string[];
109
+ get decotag(): string;
110
+ get hidden(): boolean;
111
+ set hidden(v: boolean): any;
112
+ get tag(): string;
113
+ set tag(v: string): any;
114
+ get appendum(): any;
115
+ set appendum(v: any): any;
116
+ defaultTextSubstitutor(): string;
117
+ textLines(context?: import("@hatiolab/things-scene").SceneRenderContext): any[][];
118
+ get font(): string;
119
+ get lineHeight(): number;
120
+ get textSubstitutor(): () => string;
121
+ get text(): string;
122
+ set text(v: string): any;
123
+ get textBounds(): import("@hatiolab/things-scene").BOUNDS;
124
+ get textRotation(): number;
125
+ get textHidden(): boolean;
126
+ set textHidden(v: boolean): any;
127
+ get hasTextProperty(): boolean;
128
+ animate(opts: import("@hatiolab/things-scene").AnimationConfig): any;
129
+ effect(context: import("@hatiolab/things-scene").SceneRenderContext, model: any): void;
130
+ serialize(...others: any[]): string;
131
+ trim(): void;
132
+ closeScene(data: any): void;
133
+ delta(attr?: string | object, value?: any): any;
134
+ invalidate(): void;
135
+ get value(): any;
136
+ set value(v: any): any;
137
+ get data(): any;
138
+ set data(v: any): any;
139
+ set tap(v: any): any;
140
+ get mappings(): any[];
141
+ get retention(): number;
142
+ get animation(): import("@hatiolab/things-scene").AnimationController | undefined;
143
+ get started(): boolean;
144
+ set started(v: boolean): any;
145
+ get controls(): import("@hatiolab/things-scene").Control[] | undefined;
146
+ findFirst(finder: string | ((c: Component) => boolean), ...others: any[]): Component | undefined;
147
+ findAll(s: string | ((c: Component) => boolean), ...others: any[]): any[] | undefined;
148
+ capture(x: number, y: number, except?: (c: Component) => boolean): any;
149
+ findAnchor(name: string): any;
150
+ isDescendible(container: Component): boolean;
151
+ getContext(component?: unknown): any;
152
+ get root(): Component;
153
+ get rootModel(): Component;
154
+ get parent(): Component;
155
+ set parent(v: Component): any;
156
+ get anchors(): import("@hatiolab/things-scene").Anchor[];
157
+ get scalable(): boolean;
158
+ get stuck(): boolean;
159
+ get capturable(): boolean;
160
+ get position(): string;
161
+ get origin(): string;
162
+ get offset(): import("@hatiolab/things-scene").POINT;
163
+ get app(): import("@hatiolab/things-scene").ApplicationContext;
164
+ drawEffect(context: import("@hatiolab/things-scene").SceneRenderContext): void;
165
+ prepareFill(resolve: Function, reject: Function): void;
166
+ prepareFillIf(condition: boolean): void;
167
+ onchangeFill(after: Record<string, any>, before: Record<string, any>): void;
168
+ drawImage(context: import("@hatiolab/things-scene").SceneRenderContext, image: HTMLImageElement, left: number, top: number, width: number, height: number): void;
169
+ mutateBounds(logic: ((bounds: import("@hatiolab/things-scene").BOUNDS) => import("@hatiolab/things-scene").BOUNDS | void) | null, context?: any): void;
170
+ 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;
171
+ access(accessor: string): any;
172
+ substitute(template: string, data: any): string | undefined;
173
+ onchangeMappings(after: Record<string, any>, before: Record<string, any>): void;
174
+ onchangeData(after: Record<string, any>, before: Record<string, any>): void;
175
+ buildMappings(): void;
176
+ executeMappings(force?: boolean): void;
177
+ disposeMappings(): void;
178
+ ondropfile(transfered: FileList, files: string[]): void;
179
+ transcoordS2P(x: number, y: number, rp?: import("@hatiolab/things-scene").POINT): import("@hatiolab/things-scene").POINT;
180
+ transcoordP2S(x: number, y: number, rp?: import("@hatiolab/things-scene").POINT): import("@hatiolab/things-scene").POINT;
181
+ transcoordS2T(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
182
+ transcoordT2P(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
183
+ transcoordT2S(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
184
+ transcoordS2TR(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
185
+ transcoordS2O(x: number, y: number, target: Component): import("@hatiolab/things-scene").POINT;
186
+ transcoordC2S(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
187
+ transcoordS2C(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
188
+ toParent(x: number, y: number, rp?: import("@hatiolab/things-scene").POINT): import("@hatiolab/things-scene").POINT;
189
+ fromParent(x: number, y: number, rp?: import("@hatiolab/things-scene").POINT): import("@hatiolab/things-scene").POINT;
190
+ toScene(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
191
+ fromScene(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
192
+ toLocal(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
193
+ toGlobal(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
194
+ toOther(x: number, y: number, target: Component): import("@hatiolab/things-scene").POINT;
195
+ on(name: string | object, callback: Function, context?: any): any;
196
+ off(name?: string | object, callback?: Function, context?: any): any;
197
+ once(name: string | object, callback: Function, context?: any): any;
198
+ trigger(name: string, ...args: any[]): any;
199
+ delegate_on(delegator: any): any;
200
+ delegate_off(delegator: any): any;
201
+ onchange(after: Record<string, any>, before: Record<string, any>): void;
202
+ calculateBounds?(): void;
203
+ oncreate_element?(element: HTMLElement): void;
204
+ removeComponent(component: Component, ghost?: boolean): void;
205
+ addComponent(component: Component, ghost?: boolean): void;
206
+ insertComponentAt(component: Component, index: number, ghost?: boolean): void;
207
+ getOverlay(component: Component): HTMLElement | undefined;
208
+ findById(id: string): Component | undefined;
209
+ findByRefid(ref: string | number): Component | undefined;
210
+ findAllById(id: string): Component[];
211
+ resize(): void;
212
+ fit(type?: string): void;
213
+ get components(): Component[] | undefined;
214
+ get layout(): any;
215
+ get auxOverlay(): HTMLElement | undefined;
216
+ get isReady(): boolean;
217
+ get unitScale(): number;
218
+ get selected(): Component[];
219
+ set selected(_v: Component[]): any;
220
+ get focused(): Component | null;
221
+ set focused(_v: Component | null): any;
222
+ get hasSameParentForAllSelected(): boolean;
223
+ set hasSameParentForAllSelected(_v: boolean): any;
224
+ get fitMode(): string | undefined;
225
+ set fitMode(_v: string | undefined): any;
226
+ get element(): HTMLElement | null;
227
+ set element(_v: HTMLElement | null): any;
228
+ }) & (new (...args: any[]) => {
229
+ contains(x: number, y: number): boolean;
230
+ get path(): {
231
+ x: any;
232
+ y: any;
233
+ }[];
234
+ set path(path: {
235
+ x: any;
236
+ y: any;
237
+ }[]): any;
238
+ get anchors(): {
239
+ name: string;
240
+ position: {
241
+ x: any;
242
+ y: any;
243
+ };
244
+ }[];
245
+ get bounds(): any;
246
+ set bounds(bounds: any): any;
247
+ render(ctx: CanvasRenderingContext2D): void;
248
+ _app: any;
249
+ _model: any;
250
+ _state: any;
251
+ _delta: any;
252
+ _animation: any;
253
+ _animate: any;
254
+ _parent: any;
255
+ _disposed: any;
256
+ _textHidden: any;
257
+ _text_substitutor: any;
258
+ _value_substitutor: any;
259
+ _mappings: any;
260
+ _realObject: import("@hatiolab/things-scene").IRealObject | undefined;
261
+ _cachedState: any;
262
+ updatedAt: any;
263
+ fontSize: any;
264
+ __cache__: any;
265
+ created(): void;
266
+ added(parent: any): void;
267
+ removed(parent: any): void;
268
+ ready(): Promise<void>;
269
+ touch(): void;
270
+ clearCache(...attrs: any[]): void;
271
+ removeSelf(completely: any): void;
272
+ resetAnimation(): void;
273
+ dispose(): void;
274
+ get nature(): import("@hatiolab/things-scene").ComponentNature;
275
+ get disposed(): boolean;
276
+ isLayer(): boolean;
277
+ isGroup(): boolean;
278
+ isContainer(): this is import("@hatiolab/things-scene/dist-types/types/component.js").Container;
279
+ isLine(): boolean;
280
+ isRoot(): boolean;
281
+ isRootModel(): boolean;
282
+ is3dish(): boolean;
283
+ get is3dMode(): boolean;
284
+ isIn3DSpace(): boolean;
285
+ isTemplate(): boolean;
286
+ isHTMLElement(): boolean;
287
+ isConnectable(): boolean;
288
+ isIdentifiable(): boolean;
289
+ isPositionable(): boolean;
290
+ replaceRefids(replaceMap: any): void;
291
+ get(property: any): any;
292
+ set(props: any, propval?: any): any;
293
+ getState(property: any): any;
294
+ setState(props: any, propval?: any): any;
295
+ get model(): any;
296
+ get state(): any;
297
+ get hierarchy(): any;
298
+ get volatile(): never[];
299
+ _applyProps(target: any, props: any, options: any): any;
300
+ move(offset: {
301
+ x: number;
302
+ y: number;
303
+ }, ...args: boolean[]): void;
304
+ symmetryX(x?: number): void;
305
+ symmetryY(y: number): void;
306
+ adjustResize(bounds: import("@hatiolab/things-scene").BOUNDS, origin_bounds: import("@hatiolab/things-scene").BOUNDS, diagonal: boolean): {
307
+ left: any;
308
+ top: any;
309
+ width: any;
310
+ height: any;
311
+ };
312
+ adjustRotation(rotation: number, step: boolean): number;
313
+ outline(progress: number): any;
314
+ get center(): import("@hatiolab/things-scene").POINT;
315
+ set center(p: import("@hatiolab/things-scene").POINT): any;
316
+ get location(): import("@hatiolab/things-scene").POINT;
317
+ set location(l: import("@hatiolab/things-scene").POINT): any;
318
+ get rotate(): import("@hatiolab/things-scene").POINT;
319
+ set rotate(r: import("@hatiolab/things-scene").POINT): any;
320
+ get dimension(): import("@hatiolab/things-scene").DIMENSION;
321
+ set dimension(d: import("@hatiolab/things-scene").DIMENSION): any;
322
+ get drawPath(): import("@hatiolab/things-scene").POINT[];
323
+ get rotatePoint(): import("@hatiolab/things-scene").POINT;
324
+ get mutable(): boolean;
325
+ get resizable(): boolean;
326
+ get rotatable(): boolean;
327
+ buildRealObject(): import("@hatiolab/things-scene").IRealObject | undefined;
328
+ get realObject(): import("@hatiolab/things-scene").IRealObject | undefined;
329
+ draw(context?: import("@hatiolab/things-scene").SceneRenderContext): void;
330
+ prerender(context: import("@hatiolab/things-scene").SceneRenderContext): void;
331
+ postrender(context: import("@hatiolab/things-scene").SceneRenderContext): void;
332
+ prepare(resolve: (component: Component) => void, reject: (reason: any) => void): void;
333
+ prepareIf(condition: boolean): void;
334
+ drawText(context: import("@hatiolab/things-scene").SceneRenderContext): void;
335
+ drawStroke(context: import("@hatiolab/things-scene").SceneRenderContext, override?: Record<string, unknown>): void;
336
+ drawFill(context: import("@hatiolab/things-scene").SceneRenderContext, override?: Record<string, unknown>): void;
337
+ get strokeStyle(): any;
338
+ set strokeStyle(v: any): any;
339
+ get fillStyle(): any;
340
+ set fillStyle(v: any): any;
341
+ get fontColor(): string;
342
+ set fontColor(v: string): any;
343
+ get rotation(): number;
344
+ set rotation(v: number): any;
345
+ get decorators(): string[];
346
+ get decotag(): string;
347
+ get hidden(): boolean;
348
+ set hidden(v: boolean): any;
349
+ get tag(): string;
350
+ set tag(v: string): any;
351
+ get appendum(): any;
352
+ set appendum(v: any): any;
353
+ defaultTextSubstitutor(): string;
354
+ textLines(context?: import("@hatiolab/things-scene").SceneRenderContext): any[][];
355
+ get font(): string;
356
+ get lineHeight(): number;
357
+ get textSubstitutor(): () => string;
358
+ get text(): string;
359
+ set text(v: string): any;
360
+ get textBounds(): import("@hatiolab/things-scene").BOUNDS;
361
+ get textRotation(): number;
362
+ get textHidden(): boolean;
363
+ set textHidden(v: boolean): any;
364
+ get hasTextProperty(): boolean;
365
+ animate(opts: import("@hatiolab/things-scene").AnimationConfig): any;
366
+ effect(context: import("@hatiolab/things-scene").SceneRenderContext, model: any): void;
367
+ serialize(...others: any[]): string;
368
+ trim(): void;
369
+ closeScene(data: any): void;
370
+ delta(attr?: string | object, value?: any): any;
371
+ invalidate(): void;
372
+ get value(): any;
373
+ set value(v: any): any;
374
+ get data(): any;
375
+ set data(v: any): any;
376
+ set tap(v: any): any;
377
+ get mappings(): any[];
378
+ get retention(): number;
379
+ get animation(): import("@hatiolab/things-scene").AnimationController | undefined;
380
+ get started(): boolean;
381
+ set started(v: boolean): any;
382
+ get controls(): import("@hatiolab/things-scene").Control[] | undefined;
383
+ findFirst(finder: string | ((c: Component) => boolean), ...others: any[]): Component | undefined;
384
+ findAll(s: string | ((c: Component) => boolean), ...others: any[]): any[] | undefined;
385
+ capture(x: number, y: number, except?: (c: Component) => boolean): any;
386
+ findAnchor(name: string): any;
387
+ isDescendible(container: Component): boolean;
388
+ getContext(component?: unknown): any;
389
+ get root(): Component;
390
+ get rootModel(): Component;
391
+ get parent(): Component;
392
+ set parent(v: Component): any;
393
+ get scalable(): boolean;
394
+ get stuck(): boolean;
395
+ get capturable(): boolean;
396
+ get position(): string;
397
+ get origin(): string;
398
+ get offset(): import("@hatiolab/things-scene").POINT;
399
+ get app(): import("@hatiolab/things-scene").ApplicationContext;
400
+ drawEffect(context: import("@hatiolab/things-scene").SceneRenderContext): void;
401
+ prepareFill(resolve: Function, reject: Function): void;
402
+ prepareFillIf(condition: boolean): void;
403
+ onchangeFill(after: Record<string, any>, before: Record<string, any>): void;
404
+ drawImage(context: import("@hatiolab/things-scene").SceneRenderContext, image: HTMLImageElement, left: number, top: number, width: number, height: number): void;
405
+ mutateBounds(logic: ((bounds: import("@hatiolab/things-scene").BOUNDS) => import("@hatiolab/things-scene").BOUNDS | void) | null, context?: any): void;
406
+ 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;
407
+ access(accessor: string): any;
408
+ substitute(template: string, data: any): string | undefined;
409
+ onchangeMappings(after: Record<string, any>, before: Record<string, any>): void;
410
+ onchangeData(after: Record<string, any>, before: Record<string, any>): void;
411
+ buildMappings(): void;
412
+ executeMappings(force?: boolean): void;
413
+ disposeMappings(): void;
414
+ ondropfile(transfered: FileList, files: string[]): void;
415
+ transcoordS2P(x: number, y: number, rp?: import("@hatiolab/things-scene").POINT): import("@hatiolab/things-scene").POINT;
416
+ transcoordP2S(x: number, y: number, rp?: import("@hatiolab/things-scene").POINT): import("@hatiolab/things-scene").POINT;
417
+ transcoordS2T(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
418
+ transcoordT2P(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
419
+ transcoordT2S(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
420
+ transcoordS2TR(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
421
+ transcoordS2O(x: number, y: number, target: Component): import("@hatiolab/things-scene").POINT;
422
+ transcoordC2S(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
423
+ transcoordS2C(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
424
+ toParent(x: number, y: number, rp?: import("@hatiolab/things-scene").POINT): import("@hatiolab/things-scene").POINT;
425
+ fromParent(x: number, y: number, rp?: import("@hatiolab/things-scene").POINT): import("@hatiolab/things-scene").POINT;
426
+ toScene(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
427
+ fromScene(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
428
+ toLocal(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
429
+ toGlobal(x: number, y: number, top?: Component): import("@hatiolab/things-scene").POINT;
430
+ toOther(x: number, y: number, target: Component): import("@hatiolab/things-scene").POINT;
431
+ on(name: string | object, callback: Function, context?: any): any;
432
+ off(name?: string | object, callback?: Function, context?: any): any;
433
+ once(name: string | object, callback: Function, context?: any): any;
434
+ trigger(name: string, ...args: any[]): any;
435
+ delegate_on(delegator: any): any;
436
+ delegate_off(delegator: any): any;
437
+ onchange(after: Record<string, any>, before: Record<string, any>): void;
438
+ calculateBounds?(): void;
439
+ oncreate_element?(element: HTMLElement): void;
440
+ removeComponent(component: Component, ghost?: boolean): void;
441
+ addComponent(component: Component, ghost?: boolean): void;
442
+ insertComponentAt(component: Component, index: number, ghost?: boolean): void;
443
+ getOverlay(component: Component): HTMLElement | undefined;
444
+ findById(id: string): Component | undefined;
445
+ findByRefid(ref: string | number): Component | undefined;
446
+ findAllById(id: string): Component[];
447
+ resize(): void;
448
+ fit(type?: string): void;
449
+ get components(): Component[] | undefined;
450
+ get layout(): any;
451
+ get auxOverlay(): HTMLElement | undefined;
452
+ get isReady(): boolean;
453
+ get unitScale(): number;
454
+ get selected(): Component[];
455
+ set selected(_v: Component[]): any;
456
+ get focused(): Component | null;
457
+ set focused(_v: Component | null): any;
458
+ get hasSameParentForAllSelected(): boolean;
459
+ set hasSameParentForAllSelected(_v: boolean): any;
460
+ get fitMode(): string | undefined;
461
+ set fitMode(_v: string | undefined): any;
462
+ get element(): HTMLElement | null;
463
+ set element(_v: HTMLElement | null): any;
5
464
  }) & typeof Shape;
6
465
  export default class Restful extends Restful_base {
7
466
  static _image: HTMLImageElement;
@@ -18,7 +477,7 @@ export default class Restful extends Restful_base {
18
477
  set withCredentials(withCredentials: boolean);
19
478
  get repeatTimer(): number;
20
479
  set repeatTimer(repeatTimer: number);
21
- ready(): void;
480
+ ready(): Promise<void>;
22
481
  _initRestful(force?: boolean): void;
23
482
  dispose(): void;
24
483
  _startRepeater(): void;
package/dist/restful.js CHANGED
@@ -238,11 +238,9 @@ const NATURE = {
238
238
  };
239
239
  const REST_IMAGE = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKIAAACWCAMAAABqx6OSAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAB1WlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOkNvbXByZXNzaW9uPjE8L3RpZmY6Q29tcHJlc3Npb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlBob3RvbWV0cmljSW50ZXJwcmV0YXRpb24+MjwvdGlmZjpQaG90b21ldHJpY0ludGVycHJldGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KAtiABQAAASNQTFRFAAAA/4AA1VUrzE0zyEk3zkU7zEQzz0g40kQ10UE0z0U10UM2zkQ40UU40EU20UQ3z0Q20EQ3z0U30UM30EQ4z0U30EM30UQ3z0M20EM30EQ30EQ30EQ30EQ40EQ30EQ30EQ20EQ30EQ30EQ30EQ30EQ30EQ30EQ30EQ2zDIkzTcpzjoszjstzjwvzz4wzz8xz0Az0EI10EQ30Ec60Uo+0kxA009D1FNI1FZK1FhN1VZL1lxQ119U12NY2Ghe2m5k3HJo3Hdv3Xx04IV+4YqD45OM5JiS5Z6X56Od6aql666p67Ou7Lay7rq27r+78MTA8cfE8cvI8s3K89HO89TS9dfV9tvZ9uDf+Obl+eno+uzr+/Hx/PTz/fj4/vv7/v39////7rizQQAAACl0Uk5TAAIGCg4aHiAiJzA9RE5RU1pha3l8hoyVm6OstLi8wsjO2N3l6Ovv8/j35GbfAAAITUlEQVR42u2caVviPBSGHfV1BkfHbRhXRkQBbZs2DbIpO7jgAggKgqL+/1/xNmlBbAO02tL2uub5pC2kN0nOycnSMzX1T/+kW9OehZW19S2fP7AfDIWC+wG/b2t9bWXBM+0Eum+eX96dQAhRFQrseH95vtnJ931pwx9GYxT2byx9t4dvbnU7iHQquL06N2m+2eWtMDKk8Nby7AQB570B9AkFvPMTAvxptAIHqnLz5wQseNGHviTfosUWvrCDvqydBQsBPZvIFG16LAKcWQshkxRam7HESnaRido1325mvIfIVB16Ta7I+b/IdP011UuuhJAFCq2Y18jryCKtm9TYcz5kmXymRBfze8hC7ZnQIRf2kaXa//JYsxRGFiu89DXC5UNkuQ6XnU74NcaliRBKjJ9u64UQmpBCn7SZ+QM0MR18yvfMBdAEFfiED5/xoYnKZ3ws/IMmrD+GYxs0cRmMe+ZDk0cMGTKZ2V1kg3aNLFd4kS3yGphJHdqDeKh7zjW9i2zSrt410zVkm9b0Ef4I2ocY/KELcRPZqA0n24oBi9lGtmpbR5CIbNbY0PGbz25E3zjH8xPZrnG9cct+xK0xEc6h/YiH884KZA0Ht7MBJyAGRgVly5QvQMASAXM5eqVCyr1lY24bHBdv7+r1erUAzSSEhapU6N1t8RgYct8/tGtMIN18k/WUFMwjFJJPSrHNtJYxPDyYWNX+2MSjUtTbyylvHiJ/+tIr9zGhbZ7VoSOLtp25S7mcTqd1LormIYrieavTkcu+5LQtPWwT7j9NoAiPSTN3ColEDIhm9kURxBKJAoFsHmuqMfjfEMRFbTvHSZcpHfECNNu1QIE/KpFOHteWvTgEcUNbzElXKqObhNY4QJgkxZ9AvZHttJ+CiHv1c8wqxNgztkMKop8e7njCzkEM0/dafyHnIKIlvUsQ9iHSFyZ2nIS4Q7WWgB5EKAAAOI4D7+M/zw2If48+AAd48iHAqQTHIwZo9uIJ6UAUj5OpTDaXy2XSMU525jCVG1CKXBN5NpbO5jKpKCsN7OmcSj0nNgIx5NE59dMgcredrjy6dluVPMTXmcrbgG55MnSkyy3s8p5b1xkeNd5UOmfGIlIngrR1WSGlQmTvBx91g4cu5vbDJR4PwBfP/QtXLLpTI559REwJOtdsf+tCbJAKbDblWOoaihREcD5wIcdpEc91IP6mINL2xfnMKwWxHIlG40UcArzmgIxYOU3JSoiIT+M2frzIpQoXjab03RN846SIh+Mc+VxMHER8zdCivHWd01OQxz+6Hf2IeMlAKDCZJxJIiQTxmuFlQSWAe0wygAesmIxIJPjGURaHTHFG+ZCMGG3j8vNA51SVtgzBnuEi7iPiR0SOmARGqyIZ8WagItg6+RmyB+i3IZfDiB8jdzFCuvYZS1uUoCD6KUEdS6y1DCiIiLmQ/qxHKIgNUq3q4JiGCMq4/ApLCUX9FESN54YcU3hROhwFkb3G9gooiDe4/+YZfiwiAjnc118KDKfxOwEKovqAAR/JXnWJq4NIiygyp9he8qxsLtdHjCzY68DdcoobnIFSEREk7qB7lY2oTWafgqiaFQhpxQXeRdWIFxKPmMFThhpSnE67WpOV5pEoP/ftuZKPvHeRIYhRxSPdp1V3ghRE1fgnDxrdRiky+F2C+FC+uqrjLtBM8mrXLblBacbTu3Sf7zPSEZEQKTVIW1VUnTekA7FKEOtFBNWIvYl1OYZbR4uIICwps+/XSyiORISoWCeIVR2Iqobmsy35KbVjOASxSCxR09DEFURLjVfyqQtuZEMf1+TCWll+fEOrzQVECxXylFtBhXhfLt+2+w5NYy7ys1mYIdX7pKwQ0BEF8pnXSiEKdJgLxemwZBL5mgVqcwFsrEoGC0FBvNGOYSLHEcd/xo1wOllSCSVWn9OhuW5QG+a62QQe/87BcETcJRvvt0a47hrQ6bppJxSZ82EDoMhhB92g1mJ/ZWXw1ogB8JyhPPqv3jCiQA0jcNORTvAkxc9axAjkoGTIInvcUmp6CKISRhT0hhHDg7GnGAVRDiUL6tFFshdQuivEIyyDEvhONz28FmHsyVAwpj+kJYjyilQvGGtJ3pyofApZ6UK7cXNVJ2HvjSCOQDQW0q4YQxQBDiPulWBswHezsc7Av7VeJzGKuPLZ6RX7gC1cjnRwGP2WFj5OryTEeLU/c+lc9MMDgvhMRdQ9vdI1SQU3zWbzjHRvMVaX/i4C9rI5oIeMAOFp8br68FC7LiXY929mpLt3H9fpjE5S9U31hfe4XgTS36IS9/cl4lm0tBKAxQ3Wmajc1YdIneq7YMHEDctOLli8c8ESqAsWkl2wHD98U6N4JFixqSEcFYdtavwyujXUzsfjUbO3hqLxeL5tdGtoxAZb+7F5Zu4G21nzsW18g422TZnsb1N2zd2m7Pa3KZMGtimpm70ZZSKoDgG+utnbCzVaGUObvdQt82ip0pBUM3vLvIZLrZSixrbM3XDwwAXHN1xwCGZqPmw/4ZijRC44kOWGY23Tzj8caP8Ry8Xxr5Hv2Eu4o+MldBcc93XBoWk3HD13wQF+2jxrQtL9GoQLXiZxwys5bnixyQWvh7nhJTs3vKrohhc+p+b2Jkm496nUB85/+dgNr3BLS2UTmmyFF6c+LeenE3BDUgY3pLawPkHIgQnJqJyfZsXiZDUmJexzfsofNyROsij91K7JSfqcn8RrygWp0HBFrpm2BhC0JqEc3mvdMGlVxKq0fGSscXpywyk3pIgkNenwRJuyl3R6ulKyXOH0pK9ydOHw1LmycALisaN3yL4ExIqFOzyNc3/N9EMy7IOAs5Jh/5M79D8U6UTFcE/VFgAAAABJRU5ErkJggg==';
240
240
  const WARN_NO_URL = 'Valid URL property required';
241
- let Restful = Restful_1 = class Restful extends DataSource(RectPath(Shape)) {
242
- constructor() {
243
- super(...arguments);
244
- this._isStarted = false;
245
- }
241
+ let Restful = class Restful extends DataSource(RectPath(Shape)) {
242
+ static { Restful_1 = this; }
243
+ static _image;
246
244
  static get image() {
247
245
  if (!Restful_1._image) {
248
246
  Restful_1._image = new Image();
@@ -250,6 +248,8 @@ let Restful = Restful_1 = class Restful extends DataSource(RectPath(Shape)) {
250
248
  }
251
249
  return Restful_1._image;
252
250
  }
251
+ _repeatTimer;
252
+ _isStarted = false;
253
253
  get url() {
254
254
  return this.getState('url');
255
255
  }
@@ -285,7 +285,8 @@ let Restful = Restful_1 = class Restful extends DataSource(RectPath(Shape)) {
285
285
  this._stopRepeater();
286
286
  this._repeatTimer = repeatTimer;
287
287
  }
288
- ready() {
288
+ async ready() {
289
+ await super.ready();
289
290
  this._initRestful(this.state.fetchOnLoad);
290
291
  }
291
292
  _initRestful(force = false) {
@@ -1 +1 @@
1
- {"version":3,"file":"restful.js","sourceRoot":"","sources":["../src/restful.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, ComponentNature, DataSource, RectPath, sceneComponent, Shape, warn } from '@hatiolab/things-scene'\n\nimport jsonp from './jsonp.js'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'select',\n label: 'method',\n name: 'method',\n property: {\n options: [\n {\n display: 'GET',\n value: 'GET'\n },\n {\n display: 'POST',\n value: 'POST'\n },\n {\n display: 'PUT',\n value: 'PUT'\n },\n {\n display: 'DELETE',\n value: 'DELETE'\n }\n ]\n }\n },\n {\n type: 'string',\n label: 'url',\n name: 'url'\n },\n {\n type: 'string',\n label: 'authorization',\n name: 'authorization'\n },\n {\n type: 'select',\n label: 'data-format',\n name: 'dataFormat',\n property: {\n options: [\n {\n display: 'json',\n value: 'json'\n },\n {\n display: 'jsonp',\n value: 'jsonp'\n },\n {\n display: 'text',\n value: 'text'\n }\n ]\n }\n },\n {\n type: 'select',\n label: 'content-type',\n name: 'contentType',\n property: {\n options: [\n {\n display: 'application/json',\n value: 'application/json'\n },\n {\n display: 'application/x-www-form-urlencoded',\n value: 'application/x-www-form-urlencoded'\n },\n {\n display: 'text/plain',\n value: 'text/plain'\n }\n ]\n }\n },\n {\n type: 'select',\n label: 'mode',\n name: 'mode',\n property: {\n options: [\n {\n display: 'cors',\n value: 'cors'\n },\n {\n display: 'no-cors',\n value: 'no-cors'\n },\n {\n display: 'same-origin',\n value: 'same-origin'\n }\n ]\n }\n },\n {\n type: 'select',\n label: 'credentials',\n name: 'credentials',\n property: {\n options: [\n {\n display: 'same-origin',\n value: 'same-origin'\n },\n {\n display: 'include',\n value: 'include'\n },\n {\n display: 'omit',\n value: 'omit'\n }\n ]\n }\n },\n {\n type: 'select',\n label: 'cache',\n name: 'cache',\n property: {\n options: [\n {\n display: 'default',\n value: 'default'\n },\n {\n display: 'no-cache',\n value: 'no-cache'\n },\n {\n display: 'reload',\n value: 'reload'\n },\n {\n display: 'force-cache',\n value: 'force-cache'\n },\n {\n display: 'only-if-cached',\n value: 'only-if-cached'\n }\n ]\n }\n },\n {\n type: 'select',\n label: 'redirect',\n name: 'redirect',\n property: {\n options: [\n {\n display: 'follow',\n value: 'follow'\n },\n {\n display: 'manual',\n value: 'manual'\n },\n {\n display: 'error',\n value: 'error'\n }\n ]\n }\n },\n {\n type: 'select',\n label: 'referrer-policy',\n name: 'referrerPolicy',\n property: {\n options: [\n {\n display: 'no-referrer-when-downgrade',\n value: 'no-referrer-when-downgrade'\n },\n {\n display: 'no-referrer',\n value: 'no-referrer'\n },\n {\n display: 'origin',\n value: 'origin'\n },\n {\n display: 'origin-when-cross-origin',\n value: 'origin-when-cross-origin'\n },\n {\n display: 'same-origin',\n value: 'same-origin'\n },\n {\n display: 'strict-origin',\n value: 'strict-origin'\n },\n {\n display: 'strict-origin-when-cross-origin',\n value: 'strict-origin-when-cross-origin'\n },\n {\n display: 'unsafe-url',\n value: 'unsafe-url'\n }\n ]\n }\n },\n {\n type: 'key-values',\n label: 'headers',\n name: 'headers'\n },\n {\n type: 'number',\n label: 'period',\n name: 'period',\n placeholder: 'SECONDS'\n },\n {\n type: 'checkbox',\n label: 'fetch-on-load',\n name: 'fetchOnLoad'\n }\n ],\n help: 'scene/component/restful'\n}\n\nconst REST_IMAGE =\n 'data:image/png;base64,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'\n\nconst WARN_NO_URL = 'Valid URL property required'\n\n@sceneComponent('restful')\nexport default class Restful extends DataSource(RectPath(Shape)) {\n static _image: HTMLImageElement\n\n static get image() {\n if (!Restful._image) {\n Restful._image = new Image()\n Restful._image.src = REST_IMAGE\n }\n\n return Restful._image\n }\n\n private _repeatTimer!: number\n private _isStarted = false\n\n get url() {\n return this.getState('url')\n }\n\n set url(url) {\n this.setState('url', url)\n this._initRestful()\n }\n\n get period() {\n return Number(this.state.period) * 1000\n }\n\n set period(period) {\n this.setState('period', Number(period))\n this._initRestful()\n }\n\n get value() {\n return this.state.value\n }\n\n set value(value) {\n this.setState('value', value)\n this._initRestful(true)\n }\n\n get withCredentials() {\n return !!this.getState('withCredentials')\n }\n\n set withCredentials(withCredentials) {\n this.setState('withCredentials', withCredentials)\n this._initRestful()\n }\n\n get repeatTimer() {\n return this._repeatTimer\n }\n\n set repeatTimer(repeatTimer) {\n this._stopRepeater()\n this._repeatTimer = repeatTimer\n }\n\n ready() {\n this._initRestful(this.state.fetchOnLoad)\n }\n\n _initRestful(force: boolean = false) {\n if (!this.app.isViewMode) return\n\n if (!this.url) {\n warn(WARN_NO_URL)\n return\n }\n\n this._stopRepeater()\n if (this.period > 0) {\n this._startRepeater()\n } else {\n force && this.fetch()\n }\n }\n\n dispose() {\n super.dispose()\n this._stopRepeater()\n }\n\n _startRepeater() {\n this._isStarted = true\n\n var self = this\n\n function _() {\n if (!self._isStarted) {\n return\n }\n self.fetch()\n\n if (!self.period) {\n self._stopRepeater()\n return\n }\n\n self._repeatTimer = setTimeout(() => {\n requestAnimationFrame(_)\n }, self.period)\n }\n\n requestAnimationFrame(_)\n }\n\n _stopRepeater() {\n this._isStarted = false\n if (this.repeatTimer) {\n clearTimeout(this._repeatTimer)\n }\n }\n\n async fetch() {\n var {\n url,\n method = 'GET',\n mode = 'cors',\n cache = 'default',\n credentials = 'same-origin',\n redirect = 'follow',\n referrerPolicy = 'no-referrer-when-downgrade',\n contentType = 'application/json',\n dataFormat = 'json',\n headers = {},\n value\n } = this.state\n\n if (dataFormat == 'jsonp') {\n if (value && typeof value == 'string') {\n url = value\n }\n\n jsonp(url, {}, (self, data) => {\n if (this._isStarted && data) {\n this.data = data\n }\n })\n\n return\n }\n\n var options: any = {\n method,\n mode,\n cache,\n credentials,\n headers: {\n 'Content-Type': contentType,\n ...headers\n },\n redirect,\n referrerPolicy\n }\n\n if (method != 'GET' && method != 'HEAD') {\n if (contentType == 'application/json') {\n options.body = JSON.stringify(value)\n } else {\n options.body = value\n }\n } else {\n if (value && typeof value == 'string') {\n url = value\n }\n }\n\n const response = await fetch(url, options)\n\n if (!this._isStarted) {\n return\n }\n\n if (dataFormat === 'json') {\n this.data = await response.json()\n } else if (dataFormat === 'text') {\n this.data = await response.text()\n }\n }\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n\n context.beginPath()\n this.drawImage(context, Restful.image, left, top, width, height)\n }\n\n ondblclick(e: Event) {\n if (!this.url) {\n warn(WARN_NO_URL)\n return\n }\n\n this.fetch()\n }\n\n get controls() {\n return []\n }\n\n get nature() {\n return NATURE\n }\n}\n"]}
1
+ {"version":3,"file":"restful.js","sourceRoot":"","sources":["../src/restful.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, ComponentNature, DataSource, RectPath, sceneComponent, Shape, warn } from '@hatiolab/things-scene'\n\nimport jsonp from './jsonp.js'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'select',\n label: 'method',\n name: 'method',\n property: {\n options: [\n {\n display: 'GET',\n value: 'GET'\n },\n {\n display: 'POST',\n value: 'POST'\n },\n {\n display: 'PUT',\n value: 'PUT'\n },\n {\n display: 'DELETE',\n value: 'DELETE'\n }\n ]\n }\n },\n {\n type: 'string',\n label: 'url',\n name: 'url'\n },\n {\n type: 'string',\n label: 'authorization',\n name: 'authorization'\n },\n {\n type: 'select',\n label: 'data-format',\n name: 'dataFormat',\n property: {\n options: [\n {\n display: 'json',\n value: 'json'\n },\n {\n display: 'jsonp',\n value: 'jsonp'\n },\n {\n display: 'text',\n value: 'text'\n }\n ]\n }\n },\n {\n type: 'select',\n label: 'content-type',\n name: 'contentType',\n property: {\n options: [\n {\n display: 'application/json',\n value: 'application/json'\n },\n {\n display: 'application/x-www-form-urlencoded',\n value: 'application/x-www-form-urlencoded'\n },\n {\n display: 'text/plain',\n value: 'text/plain'\n }\n ]\n }\n },\n {\n type: 'select',\n label: 'mode',\n name: 'mode',\n property: {\n options: [\n {\n display: 'cors',\n value: 'cors'\n },\n {\n display: 'no-cors',\n value: 'no-cors'\n },\n {\n display: 'same-origin',\n value: 'same-origin'\n }\n ]\n }\n },\n {\n type: 'select',\n label: 'credentials',\n name: 'credentials',\n property: {\n options: [\n {\n display: 'same-origin',\n value: 'same-origin'\n },\n {\n display: 'include',\n value: 'include'\n },\n {\n display: 'omit',\n value: 'omit'\n }\n ]\n }\n },\n {\n type: 'select',\n label: 'cache',\n name: 'cache',\n property: {\n options: [\n {\n display: 'default',\n value: 'default'\n },\n {\n display: 'no-cache',\n value: 'no-cache'\n },\n {\n display: 'reload',\n value: 'reload'\n },\n {\n display: 'force-cache',\n value: 'force-cache'\n },\n {\n display: 'only-if-cached',\n value: 'only-if-cached'\n }\n ]\n }\n },\n {\n type: 'select',\n label: 'redirect',\n name: 'redirect',\n property: {\n options: [\n {\n display: 'follow',\n value: 'follow'\n },\n {\n display: 'manual',\n value: 'manual'\n },\n {\n display: 'error',\n value: 'error'\n }\n ]\n }\n },\n {\n type: 'select',\n label: 'referrer-policy',\n name: 'referrerPolicy',\n property: {\n options: [\n {\n display: 'no-referrer-when-downgrade',\n value: 'no-referrer-when-downgrade'\n },\n {\n display: 'no-referrer',\n value: 'no-referrer'\n },\n {\n display: 'origin',\n value: 'origin'\n },\n {\n display: 'origin-when-cross-origin',\n value: 'origin-when-cross-origin'\n },\n {\n display: 'same-origin',\n value: 'same-origin'\n },\n {\n display: 'strict-origin',\n value: 'strict-origin'\n },\n {\n display: 'strict-origin-when-cross-origin',\n value: 'strict-origin-when-cross-origin'\n },\n {\n display: 'unsafe-url',\n value: 'unsafe-url'\n }\n ]\n }\n },\n {\n type: 'key-values',\n label: 'headers',\n name: 'headers'\n },\n {\n type: 'number',\n label: 'period',\n name: 'period',\n placeholder: 'SECONDS'\n },\n {\n type: 'checkbox',\n label: 'fetch-on-load',\n name: 'fetchOnLoad'\n }\n ],\n help: 'scene/component/restful'\n}\n\nconst REST_IMAGE =\n 'data:image/png;base64,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'\n\nconst WARN_NO_URL = 'Valid URL property required'\n\n@sceneComponent('restful')\nexport default class Restful extends DataSource(RectPath(Shape)) {\n static _image: HTMLImageElement\n\n static get image() {\n if (!Restful._image) {\n Restful._image = new Image()\n Restful._image.src = REST_IMAGE\n }\n\n return Restful._image\n }\n\n private _repeatTimer!: number\n private _isStarted = false\n\n get url() {\n return this.getState('url')\n }\n\n set url(url) {\n this.setState('url', url)\n this._initRestful()\n }\n\n get period() {\n return Number(this.state.period) * 1000\n }\n\n set period(period) {\n this.setState('period', Number(period))\n this._initRestful()\n }\n\n get value() {\n return this.state.value\n }\n\n set value(value) {\n this.setState('value', value)\n this._initRestful(true)\n }\n\n get withCredentials() {\n return !!this.getState('withCredentials')\n }\n\n set withCredentials(withCredentials) {\n this.setState('withCredentials', withCredentials)\n this._initRestful()\n }\n\n get repeatTimer() {\n return this._repeatTimer\n }\n\n set repeatTimer(repeatTimer) {\n this._stopRepeater()\n this._repeatTimer = repeatTimer\n }\n\n async ready() {\n await super.ready()\n this._initRestful(this.state.fetchOnLoad)\n }\n\n _initRestful(force: boolean = false) {\n if (!this.app.isViewMode) return\n\n if (!this.url) {\n warn(WARN_NO_URL)\n return\n }\n\n this._stopRepeater()\n if (this.period > 0) {\n this._startRepeater()\n } else {\n force && this.fetch()\n }\n }\n\n dispose() {\n super.dispose()\n this._stopRepeater()\n }\n\n _startRepeater() {\n this._isStarted = true\n\n var self = this\n\n function _() {\n if (!self._isStarted) {\n return\n }\n self.fetch()\n\n if (!self.period) {\n self._stopRepeater()\n return\n }\n\n self._repeatTimer = setTimeout(() => {\n requestAnimationFrame(_)\n }, self.period)\n }\n\n requestAnimationFrame(_)\n }\n\n _stopRepeater() {\n this._isStarted = false\n if (this.repeatTimer) {\n clearTimeout(this._repeatTimer)\n }\n }\n\n async fetch() {\n var {\n url,\n method = 'GET',\n mode = 'cors',\n cache = 'default',\n credentials = 'same-origin',\n redirect = 'follow',\n referrerPolicy = 'no-referrer-when-downgrade',\n contentType = 'application/json',\n dataFormat = 'json',\n headers = {},\n value\n } = this.state\n\n if (dataFormat == 'jsonp') {\n if (value && typeof value == 'string') {\n url = value\n }\n\n jsonp(url, {}, (self, data) => {\n if (this._isStarted && data) {\n this.data = data\n }\n })\n\n return\n }\n\n var options: any = {\n method,\n mode,\n cache,\n credentials,\n headers: {\n 'Content-Type': contentType,\n ...headers\n },\n redirect,\n referrerPolicy\n }\n\n if (method != 'GET' && method != 'HEAD') {\n if (contentType == 'application/json') {\n options.body = JSON.stringify(value)\n } else {\n options.body = value\n }\n } else {\n if (value && typeof value == 'string') {\n url = value\n }\n }\n\n const response = await fetch(url, options)\n\n if (!this._isStarted) {\n return\n }\n\n if (dataFormat === 'json') {\n this.data = await response.json()\n } else if (dataFormat === 'text') {\n this.data = await response.text()\n }\n }\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n\n context.beginPath()\n this.drawImage(context, Restful.image, left, top, width, height)\n }\n\n ondblclick(e: Event) {\n if (!this.url) {\n warn(WARN_NO_URL)\n return\n }\n\n this.fetch()\n }\n\n get controls() {\n return []\n }\n\n get nature() {\n return NATURE\n }\n}\n"]}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@operato/scene-restful",
3
3
  "description": "Restful Client Component for Things Scene",
4
4
  "author": "heartyoh",
5
- "version": "9.1.1",
5
+ "version": "10.0.0-beta.1",
6
6
  "type": "module",
7
7
  "main": "dist/index.js",
8
8
  "module": "dist/index.js",
@@ -10,7 +10,7 @@
10
10
  "things-scene": true,
11
11
  "publishConfig": {
12
12
  "access": "public",
13
- "@oprato:registry": "https://registry.npmjs.org"
13
+ "@operato:registry": "https://registry.npmjs.org"
14
14
  },
15
15
  "repository": {
16
16
  "type": "git",
@@ -22,27 +22,27 @@
22
22
  "serve:dev": "npm run serve",
23
23
  "start": "tsc && concurrently -k -r \"tsc --watch --preserveWatchOutput\" \"wds\"",
24
24
  "build": "tsc",
25
- "prepublish": "tsc",
26
- "lint": "eslint --ext .ts,.html . --ignore-path .gitignore && prettier \"**/*.ts\" --check --ignore-path .gitignore",
27
- "format": "eslint --ext .ts,.html . --fix --ignore-path .gitignore && prettier \"**/*.ts\" --write --ignore-path .gitignore",
25
+ "prepublishOnly": "tsc",
26
+ "lint": "eslint src/ && prettier \"src/**/*.ts\" --check",
27
+ "format": "eslint src/ --fix && prettier \"src/**/*.ts\" --write",
28
28
  "migration": "things-factory-migration"
29
29
  },
30
30
  "dependencies": {
31
- "@hatiolab/things-scene": "^9.0.0"
31
+ "@hatiolab/things-scene": "^10.0.0-beta.1"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@hatiolab/prettier-config": "^1.0.0",
35
- "@things-factory/builder": "^9.0.0",
36
- "@things-factory/operato-board": "^9.0.0",
37
- "@typescript-eslint/eslint-plugin": "^4.33.0",
38
- "@typescript-eslint/parser": "^4.33.0",
35
+ "@things-factory/builder": "^10.0.0-beta.1",
36
+ "@things-factory/operato-board": "^10.0.0-beta.1",
37
+ "@typescript-eslint/eslint-plugin": "^8.0.0",
38
+ "@typescript-eslint/parser": "^8.0.0",
39
39
  "@web/dev-server": "^0.1.28",
40
40
  "concurrently": "^8.0.1",
41
41
  "eslint": "^9.18.0",
42
42
  "eslint-config-prettier": "^10.0.1",
43
43
  "husky": "^8.0.3",
44
- "lint-staged": "^13.2.2",
45
- "prettier": "^2.4.1",
44
+ "lint-staged": "^15.2.2",
45
+ "prettier": "^3.2.5",
46
46
  "tslib": "^2.3.1",
47
47
  "typescript": "^5.0.4"
48
48
  },
@@ -58,5 +58,5 @@
58
58
  "prettier --write"
59
59
  ]
60
60
  },
61
- "gitHead": "14946e6f709e9b427a43ac6c5751b4fdb58961dd"
61
+ "gitHead": "bb127dd516b9e962fb2d0a24bc2d8c5e108f06fb"
62
62
  }