{"version":3,"names":["LivelyBall","__SystemJSRewritingHack","_export","setters","_reactiveJsx","_addSourceLocation","addSourceLocation","_srcComponentsWidgetsLivelyMorphJs","Morph","default","_srcClientGraphicsJs","pt","execute","_recorder_","_src_components_demo_lively_ball_js","Object","defineProperty","get","set","thisIsVererySecretVariableName","enumerable","configurable","initialize","a","v","b","s","step","path","simulate","t","render","p","lively","getExtent","parentElement","y","setPosition","x","lastTime","startTime","push","isInBody","time","Date","now","window","requestAnimationFrame","livelyExample","parent","container","document","createElement","file","end","column","line","start","style","position","backgroundColor","setExtent","ball","create","components","openIn","appendChild","div","id","livelyMigrate","other"],"sources":["lively-ball.js"],"sourcesContent":["import Morph from 'src/components/widgets/lively-morph.js';\nimport {pt}  from 'src/client/graphics.js'\n\n\nexport default class LivelyBall extends Morph {\n  \n  async initialize() {\n    this.a = this.a || -1\n    this.v = this.b || 0\n    this.s = this.s || 300\n    this.step()\n    this.path = this.path || []\n  }\n  \n  simulate(t) {\n    this.v = this.v + this.a * t\n    this.s = this.s + this.v * t\n    if (this.s < 0) {\n      this.s = 0\n      this.v = this.v * -0.9;\n    }   \n  }\n \n\n  render(t) {\n    // console.log(\"A\")\n    var p = pt(20, lively.getExtent(this.parentElement).y - this.s - lively.getExtent(this).y)\n    lively.setPosition(this, p)  \n    p.x  = (this.lastTime - this.startTime) * 0.01    \n    this.path.push(p)\n  }\n  \n  step() {\n    if (!lively.isInBody(this)) return;\n    // console.log(\"B\")\n    var time = Date.now()\n    if (this.lastTime) {\n      var t = (time - this.lastTime) * 0.01\n      this.simulate(t)\n      this.render()\n    } else {\n      this.startTime = time \n    }\n    window.requestAnimationFrame(() => this.step()); \n    this.lastTime = time\n  }\n  \n  \n  // LivelyBall.livelyExample(document.body)\n  static async livelyExample(parent) {\n    var container = document.createElement(\"div\");\n    container.style.position = \"absolute\"\n    container.style.backgroundColor = \"lightgray\"\n    // container.innerHTML = \"<button id='reset'>reset</button>\"\n    lively.setExtent(container, pt(150,400))\n    var ball = this.create()\n    await lively.components.openIn(container, ball)\n    ball.livelyExample()\n    // container.querySelector(\"#reset\").addEventListener(\"click\", () => { \n    //   ball.s = 200;\n    //   ball.v = 0;\n    //   ball.path = [];\n    //   ball.livelyExample()\n    // })\n    if (parent) parent.appendChild(container)\n    return container\n  }\n  \n  static create(){\n    return document.createElement(\"lively-ball\")\n  }\n  \n  livelyExample() {\n    lively.setExtent(this, pt(30,30)) \n    \n    var div = document.createElement(\"div\")\n    div.id = \"log\"\n    this.parentElement.appendChild(div)\n  }\n  \n  livelyMigrate(other) {\n    this.a = other.a\n    this.s = other.s\n    this.v = other.v\n    \n  }\n  \n}"],"mappings":"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"}