@operato/scene-compass 9.0.0-beta.1 → 9.0.0-beta.15

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/compass.js CHANGED
@@ -1,7 +1,8 @@
1
1
  /*
2
2
  * Copyright © HatioLab Inc. All rights reserved.
3
3
  */
4
- import { Component, Ellipse } from '@hatiolab/things-scene';
4
+ import { __decorate } from "tslib";
5
+ import { Ellipse, sceneComponent } from '@hatiolab/things-scene';
5
6
  const NATURE = {
6
7
  mutable: false,
7
8
  resizable: true,
@@ -16,7 +17,7 @@ const NATURE = {
16
17
  ],
17
18
  help: 'scene/component/compass'
18
19
  };
19
- export default class Compass extends Ellipse {
20
+ let Compass = class Compass extends Ellipse {
20
21
  constructor() {
21
22
  super(...arguments);
22
23
  this._anim_alpha = 0;
@@ -113,6 +114,9 @@ export default class Compass extends Ellipse {
113
114
  get nature() {
114
115
  return NATURE;
115
116
  }
116
- }
117
- Component.register('compass', Compass);
117
+ };
118
+ Compass = __decorate([
119
+ sceneComponent('compass')
120
+ ], Compass);
121
+ export default Compass;
118
122
  //# sourceMappingURL=compass.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"compass.js","sourceRoot":"","sources":["../src/compass.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAmB,OAAO,EAAc,MAAM,wBAAwB,CAAA;AAExF,MAAM,MAAM,GAAoB;IAC9B,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,UAAU,EAAE;QACV;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,IAAI,EAAE,yBAAyB;CAChC,CAAA;AAED,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,OAAO;IAA5C;;QACU,gBAAW,GAAW,CAAC,CAAA;IAkHjC,CAAC;IAhHC,OAAO;QACL,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,CAAC,OAAiC;QACtC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAEzD,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;QAEzB,oBAAoB;QACpB,OAAO,CAAC,SAAS,EAAE,CAAA;QACnB,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;QACpE,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA,CAAC,iBAAiB;QAE1G,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QACxB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QACtB,OAAO,CAAC,SAAS,EAAE,CAAA;QAEnB,kBAAkB;QAClB,OAAO,CAAC,SAAS,EAAE,CAAA;QACnB,OAAO,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;QAC5B,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAA;QAC5B,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;QAC7B,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAA;QAE7B,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAA;QAC5B,OAAO,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;QAC5B,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAA;QAC7B,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;QAE7B,OAAO,CAAC,SAAS,GAAG,SAAS,CAAA;QAC7B,OAAO,CAAC,IAAI,EAAE,CAAA;QACd,OAAO,CAAC,SAAS,EAAE,CAAA;QAEnB,mBAAmB;QACnB,OAAO,CAAC,SAAS,EAAE,CAAA;QACnB,OAAO,CAAC,SAAS,GAAG,OAAO,CAAA;QAC3B,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,UAAU,CAAA;QAC1C,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAA;QAC/B,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAA;QAC5B,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,CAAA;QAC1C,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,CAAA;QACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,CAAA;QAC1C,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,CAAA;QAEzC,kBAAkB;QAClB,OAAO,CAAC,SAAS,EAAE,CAAA;QACnB,IAAI,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAA;QAC5D,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAEnB,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAA;QAC7B,OAAO,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;QAC5B,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;QAC7B,OAAO,CAAC,SAAS,GAAG,SAAS,CAAA;QAC7B,OAAO,CAAC,IAAI,EAAE,CAAA;QAEd,OAAO,CAAC,SAAS,EAAE,CAAA;QACnB,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAA;QAC5B,OAAO,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;QAC5B,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;QAC7B,OAAO,CAAC,SAAS,GAAG,SAAS,CAAA;QAC7B,OAAO,CAAC,IAAI,EAAE,CAAA;QAEd,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAA;QAEpB,oBAAoB;QACpB,OAAO,CAAC,SAAS,EAAE,CAAA;QACnB,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;QAClF,OAAO,CAAC,SAAS,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,KAAK,CAAA;QACrC,OAAO,CAAC,WAAW,GAAG,SAAS,CAAA;QAC/B,OAAO,CAAC,SAAS,GAAG,SAAS,CAAA;QAC7B,OAAO,CAAC,IAAI,EAAE,CAAA;QACd,OAAO,CAAC,MAAM,EAAE,CAAA;QAChB,OAAO,CAAC,SAAS,EAAE,CAAA;QAEnB,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;QAClF,OAAO,CAAC,SAAS,GAAG,SAAS,CAAA;QAC7B,OAAO,CAAC,IAAI,EAAE,CAAA;QACd,OAAO,CAAC,SAAS,EAAE,CAAA;QAEnB,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;IAC7B,CAAC;IAED,UAAU,CAAC,OAAiC;QAC1C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IACxB,CAAC;IAED,QAAQ,CAAC,KAAiB,EAAE,MAAkB;QAC5C,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC;YAAE,OAAM;QAE1C,IAAI,IAAI,GAAG,IAAI,CAAA;QACf,IAAI,IAAI,GAAG,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;QAErC,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAA;QAExB,IAAI,CAAC,OAAO,CAAC;YACX,IAAI,EAAE,UAAU,KAAa;gBAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;gBACrC,IAAI,CAAC,UAAU,EAAE,CAAA;YACnB,CAAC;YACD,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE;gBACP,CAAC,EAAE,CAAC;aACL;YACD,IAAI,EAAE,KAAK;SACZ,CAAC,CAAC,KAAK,EAAE,CAAA;IACZ,CAAC;IAED,IAAI,MAAM;QACR,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAED,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport { Component, ComponentNature, Ellipse, Properties } from '@hatiolab/things-scene'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'number',\n label: 'value',\n name: 'value',\n property: 'value'\n }\n ],\n help: 'scene/component/compass'\n}\n\nexport default class Compass extends Ellipse {\n private _anim_alpha: number = 0\n\n is3dish() {\n return false\n }\n\n render(context: CanvasRenderingContext2D) {\n var { value = 0, fillStyle, cx, cy, rx, ry } = this.state\n\n context.translate(cx, cy)\n\n //// 메인 원 그리기 ////\n context.beginPath()\n context.ellipse(0, 0, Math.abs(rx), Math.abs(ry), 0, 0, 2 * Math.PI)\n context.ellipse(0, 0, Math.abs(rx * 0.75), Math.abs(ry * 0.75), 0, 2 * Math.PI, 0, true) // 반대로 그리며 원을 지움.\n\n this.drawStroke(context)\n this.drawFill(context)\n context.closePath()\n\n //// 무늬 그리기 ////\n context.beginPath()\n context.moveTo(rx * 0.65, 0)\n context.lineTo(0, ry * 0.09)\n context.lineTo(-rx * 0.65, 0)\n context.lineTo(0, -ry * 0.09)\n\n context.moveTo(0, ry * 0.65)\n context.lineTo(rx * 0.09, 0)\n context.lineTo(0, -ry * 0.65)\n context.lineTo(-rx * 0.09, 0)\n\n context.fillStyle = fillStyle\n context.fill()\n context.closePath()\n\n //// 텍스트 그리기 ////\n context.beginPath()\n context.fillStyle = 'black'\n context.font = (rx + ry) / 13 + 'px arial'\n context.textBaseline = 'middle'\n context.textAlign = 'center'\n context.fillText('N', 0, -ry + ry * 0.125)\n context.fillText('S', 0, ry - ry * 0.125)\n context.fillText('W', -rx + rx * 0.125, 0)\n context.fillText('E', rx - rx * 0.125, 0)\n\n //// 바늘 그리기 ////\n context.beginPath()\n var ang = ((value + (this._anim_alpha || 0)) / 50) * Math.PI\n context.rotate(ang)\n\n context.moveTo(0, -ry * 0.65)\n context.lineTo(rx * 0.13, 0)\n context.lineTo(-rx * 0.13, 0)\n context.fillStyle = '#F53B3B'\n context.fill()\n\n context.beginPath()\n context.moveTo(0, ry * 0.65)\n context.lineTo(rx * 0.13, 0)\n context.lineTo(-rx * 0.13, 0)\n context.fillStyle = '#3DC0E8'\n context.fill()\n\n context.rotate(-ang)\n\n //// 중앙 원 그리기 ////\n context.beginPath()\n context.ellipse(0, 0, Math.abs(rx * 0.15), Math.abs(ry * 0.15), 0, 0, 2 * Math.PI)\n context.lineWidth = (rx + ry) * 0.013\n context.strokeStyle = '#FFFFFF'\n context.fillStyle = '#3DC0E8'\n context.fill()\n context.stroke()\n context.beginPath()\n\n context.ellipse(0, 0, Math.abs(rx * 0.06), Math.abs(ry * 0.06), 0, 0, 2 * Math.PI)\n context.fillStyle = '#FFFFFF'\n context.fill()\n context.closePath()\n\n context.translate(-cx, -cy)\n }\n\n postrender(context: CanvasRenderingContext2D) {\n this.drawText(context)\n }\n\n onchange(after: Properties, before: Properties) {\n if (!after.hasOwnProperty('value')) return\n\n var self = this\n var diff = after.value - before.value\n\n this._anim_alpha = -diff\n\n this.animate({\n step: function (delta: number) {\n self._anim_alpha = diff * (delta - 1)\n self.invalidate()\n },\n duration: 1000,\n delta: 'elastic',\n options: {\n x: 2\n },\n ease: 'out'\n }).start()\n }\n\n get nature() {\n return NATURE\n }\n}\n\nComponent.register('compass', Compass)\n"]}
1
+ {"version":3,"file":"compass.js","sourceRoot":"","sources":["../src/compass.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport { Component, ComponentNature, Ellipse, Properties, sceneComponent } from '@hatiolab/things-scene'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'number',\n label: 'value',\n name: 'value',\n property: 'value'\n }\n ],\n help: 'scene/component/compass'\n}\n\n@sceneComponent('compass')\nexport default class Compass extends Ellipse {\n private _anim_alpha: number = 0\n\n is3dish() {\n return false\n }\n\n render(context: CanvasRenderingContext2D) {\n var { value = 0, fillStyle, cx, cy, rx, ry } = this.state\n\n context.translate(cx, cy)\n\n //// 메인 원 그리기 ////\n context.beginPath()\n context.ellipse(0, 0, Math.abs(rx), Math.abs(ry), 0, 0, 2 * Math.PI)\n context.ellipse(0, 0, Math.abs(rx * 0.75), Math.abs(ry * 0.75), 0, 2 * Math.PI, 0, true) // 반대로 그리며 원을 지움.\n\n this.drawStroke(context)\n this.drawFill(context)\n context.closePath()\n\n //// 무늬 그리기 ////\n context.beginPath()\n context.moveTo(rx * 0.65, 0)\n context.lineTo(0, ry * 0.09)\n context.lineTo(-rx * 0.65, 0)\n context.lineTo(0, -ry * 0.09)\n\n context.moveTo(0, ry * 0.65)\n context.lineTo(rx * 0.09, 0)\n context.lineTo(0, -ry * 0.65)\n context.lineTo(-rx * 0.09, 0)\n\n context.fillStyle = fillStyle\n context.fill()\n context.closePath()\n\n //// 텍스트 그리기 ////\n context.beginPath()\n context.fillStyle = 'black'\n context.font = (rx + ry) / 13 + 'px arial'\n context.textBaseline = 'middle'\n context.textAlign = 'center'\n context.fillText('N', 0, -ry + ry * 0.125)\n context.fillText('S', 0, ry - ry * 0.125)\n context.fillText('W', -rx + rx * 0.125, 0)\n context.fillText('E', rx - rx * 0.125, 0)\n\n //// 바늘 그리기 ////\n context.beginPath()\n var ang = ((value + (this._anim_alpha || 0)) / 50) * Math.PI\n context.rotate(ang)\n\n context.moveTo(0, -ry * 0.65)\n context.lineTo(rx * 0.13, 0)\n context.lineTo(-rx * 0.13, 0)\n context.fillStyle = '#F53B3B'\n context.fill()\n\n context.beginPath()\n context.moveTo(0, ry * 0.65)\n context.lineTo(rx * 0.13, 0)\n context.lineTo(-rx * 0.13, 0)\n context.fillStyle = '#3DC0E8'\n context.fill()\n\n context.rotate(-ang)\n\n //// 중앙 원 그리기 ////\n context.beginPath()\n context.ellipse(0, 0, Math.abs(rx * 0.15), Math.abs(ry * 0.15), 0, 0, 2 * Math.PI)\n context.lineWidth = (rx + ry) * 0.013\n context.strokeStyle = '#FFFFFF'\n context.fillStyle = '#3DC0E8'\n context.fill()\n context.stroke()\n context.beginPath()\n\n context.ellipse(0, 0, Math.abs(rx * 0.06), Math.abs(ry * 0.06), 0, 0, 2 * Math.PI)\n context.fillStyle = '#FFFFFF'\n context.fill()\n context.closePath()\n\n context.translate(-cx, -cy)\n }\n\n postrender(context: CanvasRenderingContext2D) {\n this.drawText(context)\n }\n\n onchange(after: Properties, before: Properties) {\n if (!after.hasOwnProperty('value')) return\n\n var self = this\n var diff = after.value - before.value\n\n this._anim_alpha = -diff\n\n this.animate({\n step: function (delta: number) {\n self._anim_alpha = diff * (delta - 1)\n self.invalidate()\n },\n duration: 1000,\n delta: 'elastic',\n options: {\n x: 2\n },\n ease: 'out'\n }).start()\n }\n\n get nature() {\n return NATURE\n }\n}\n"]}
package/dist/index.d.ts CHANGED
@@ -1 +1 @@
1
- export { default as Compass } from './compass';
1
+ export { default as Compass } from './compass.js';
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
2
  * Copyright © HatioLab Inc. All rights reserved.
3
3
  */
4
- export { default as Compass } from './compass';
4
+ export { default as Compass } from './compass.js';
5
5
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACF,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAA","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n export { default as Compass } from './compass'\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAA","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\nexport { default as Compass } from './compass.js'\n"]}
package/package.json CHANGED
@@ -2,7 +2,8 @@
2
2
  "name": "@operato/scene-compass",
3
3
  "description": "Compass Component for things-scene.",
4
4
  "author": "heartyoh",
5
- "version": "9.0.0-beta.1",
5
+ "version": "9.0.0-beta.15",
6
+ "type": "module",
6
7
  "main": "dist/index.js",
7
8
  "module": "dist/index.js",
8
9
  "license": "MIT",
@@ -37,8 +38,8 @@
37
38
  "@typescript-eslint/parser": "^4.33.0",
38
39
  "@web/dev-server": "^0.1.28",
39
40
  "concurrently": "^8.0.1",
40
- "eslint": "^8.39.0",
41
- "eslint-config-prettier": "^8.3.0",
41
+ "eslint": "^9.18.0",
42
+ "eslint-config-prettier": "^10.0.1",
42
43
  "husky": "^8.0.3",
43
44
  "lint-staged": "^13.2.2",
44
45
  "prettier": "^2.4.1",
@@ -57,5 +58,5 @@
57
58
  "prettier --write"
58
59
  ]
59
60
  },
60
- "gitHead": "6c745ed97d64cb720df566cba0f809f2041b09e8"
61
+ "gitHead": "3a94a8a9ee8cb8de82ad331cb08b9e48d6625d31"
61
62
  }