{"version":3,"names":["HalloNameItem","HaloItem","initialize","lively","html","registerKeys","get","draggable","addEventListener","evt","onCustomDragStart","onCustomDrag","target","that","url","files","tempfile","name","id","mimetype","saveFile","outerHTML","dataTransfer","setData","textContent","stopPropagation","onEnterDown","preventDefault","focusWithoutScroll","document","body","onLeftDown","onRightDown","updateTarget","tagName","toLowerCase","classList","length","Array","from","join"],"sources":["lively-halo-name-item.js"],"sourcesContent":["import HaloItem from 'src/components/halo/lively-halo-item.js';\n\nexport default class HalloNameItem extends HaloItem {\n  \n  initialize() {\n    lively.html.registerKeys(this.get(\"#name\"), \"Halo\", this)\n    this.draggable = true\n    this.addEventListener(\"dragstart\", evt => this.onCustomDragStart(evt))\n    this.addEventListener(\"drag\", evt => this.onCustomDrag(evt))\n\n  }\n  \n  async onCustomDragStart(evt) {\n    // lively.notify(\"drag2\")\n    var target = that\n    let url = lively.files.tempfile(),\n      name = (target.id || \"unnamed\") + \".html\",\n      mimetype = \"text/html\"\n    lively.files.saveFile(url, target.outerHTML)\n    // there can be a race condition, when the url is faster requested \n    // than it is actually loaded #Hack \n    // This is a #Problem, but we cannot wait after until after we told the server, because the dataTransfer have to be intialized syncronously \n    // so we hope fore the best!\n    evt.dataTransfer.setData(\"DownloadURL\", `${mimetype}:${name}:${url}`);    \n    \n    evt.dataTransfer.setData(\"text/html\", target.outerHTML);    \n    evt.dataTransfer.setData(\"text/plain\", target.textContent);    \n  }\n    \n  onCustomDrag(evt) {\n    evt.stopPropagation()\n  }\n\n  onEnterDown(evt) {\n    evt.stopPropagation()\n    evt.preventDefault()\n    this.target.id = this.get(\"#name\").textContent \n    lively.focusWithoutScroll(document.body)\n  }\n  \n  onLeftDown(evt) {\n    evt.stopPropagation(); // don't move halo, but text cursor\n  }\n  \n  onRightDown(evt) {\n    evt.stopPropagation(); // don't move halo, but text cursor\n  }\n\n\n  updateTarget(target) {\n    this.target = target\n    if (target.id) {\n      this.get(\"#name\").textContent = target.id\n    } else {\n      this.get(\"#name\").textContent = \"\"\n    }\n\n    this.get(\"#classname\").textContent = this.target.tagName.toLowerCase() +\n      ((this.target.classList.length > 0) ? (\".\" + Array.from(this.target.classList).join(\".\")) : \"\")\n      \n  \n\n  }\n}"],"mappings":"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"}