{"version":3,"names":["LivelyImport","Morph","initialize","lively","html","registerAttributeObservers","update","onSrcChanged","url","getAttribute","source","fetch","then","r","text","shadowRoot","querySelector","innerHTML","container","query","dir","replace","fixLinks","childNodes","path","followPath","components","loadUnresolved","clipboard","initializeElements","querySelectorAll","dispatchEvent","CustomEvent"],"sources":["lively-import.js"],"sourcesContent":["import Morph from 'src/components/widgets/lively-morph.js';\n\nexport default class LivelyImport extends Morph {\n  async initialize() {\n    lively.html.registerAttributeObservers(this)\n    this.update()\n  }\n      \n  async onSrcChanged() {\n    this.update()\n  }\n  \n  async update() {\n    let url = this.getAttribute(\"src\")\n    if (!url) return;\n    let source = await fetch(\"cached:\" + url).then(r => r.text())\n    \n    if (url !== this.getAttribute(\"src\")) return; // check if we are still on the same url...\n    \n    /*MD ## #TODO support markdown beside HTML    \nsee [appendMarkdown](edit://src/components/tools/lively-container.js#appendMarkdown)\n    MD*/\n    this.shadowRoot.querySelector(\"#container-root\").innerHTML = \"\" + source \n    let container = lively.query(this, \"lively-container\")\n    if (container) {\n      let dir = url.replace(/[^/]*$/,\"\")\n      lively.html.fixLinks(this.shadowRoot.childNodes, dir, \n        (path) => container.followPath(path))\n    }\n    await lively.components.loadUnresolved(this.shadowRoot, false, \"lively-import\", true);\n    \n    lively.clipboard.initializeElements(this.shadowRoot.querySelectorAll(\"*\"))\n    this.dispatchEvent(new CustomEvent(\"content-loaded\"));\n  }\n  \n  \n}\n"],"mappings":";;;aAEqBA,YAAY;EAAA;EAAA;IAAA;MAF1BC,KAAK;IAAA;IAAA;MAAA;MAAA;MAAA;QAAA;UAAA;QAAA;QAAA;UAALA,sCAAK;UAAA;QAAA;QAAA;QAAA;MAAA;MAAA,mBAESD,YAAY,GAAlB,MAAMA,YAAY,SAASC,KAAK,CAAC;QAC9C,MAAMC,UAAU,GAAG;UACjBC,MAAM,CAACC,IAAI,CAACC,0BAA0B,CAAC,IAAI,CAAC;UAC5C,IAAI,CAACC,MAAM,EAAE;QACf;QAEA,MAAMC,YAAY,GAAG;UACnB,IAAI,CAACD,MAAM,EAAE;QACf;QAEA,MAAMA,MAAM,GAAG;UACb,IAAIE,GAAG,GAAG,IAAI,CAACC,YAAY,CAAC,KAAK,CAAC;UAClC,IAAI,CAACD,GAAG,EAAE;UACV,IAAIE,MAAM,GAAG,MAAMC,KAAK,CAAC,SAAS,GAAGH,GAAG,CAAC,CAACI,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACC,IAAI,EAAE,CAAC;UAE7D,IAAIN,GAAG,KAAK,IAAI,CAACC,YAAY,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;;UAE9C;AACJ;AACA;UACI,IAAI,CAACM,UAAU,CAACC,aAAa,CAAC,iBAAiB,CAAC,CAACC,SAAS,GAAG,EAAE,GAAGP,MAAM;UACxE,IAAIQ,SAAS,GAAGf,MAAM,CAACgB,KAAK,CAAC,IAAI,EAAE,kBAAkB,CAAC;UACtD,IAAID,SAAS,EAAE;YACb,IAAIE,GAAG,GAAGZ,GAAG,CAACa,OAAO,CAAC,QAAQ,EAAC,EAAE,CAAC;YAClClB,MAAM,CAACC,IAAI,CAACkB,QAAQ,CAAC,IAAI,CAACP,UAAU,CAACQ,UAAU,EAAEH,GAAG,EACjDI,IAAI,IAAKN,SAAS,CAACO,UAAU,CAACD,IAAI,CAAC,CAAC;UACzC;UACA,MAAMrB,MAAM,CAACuB,UAAU,CAACC,cAAc,CAAC,IAAI,CAACZ,UAAU,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,CAAC;UAErFZ,MAAM,CAACyB,SAAS,CAACC,kBAAkB,CAAC,IAAI,CAACd,UAAU,CAACe,gBAAgB,CAAC,GAAG,CAAC,CAAC;UAC1E,IAAI,CAACC,aAAa,CAAC,IAAIC,WAAW,CAAC,gBAAgB,CAAC,CAAC;QACvD;MAGF,CAAC;MAAA;QAAA;UAAA;QAAA;QAAA;UAAA,mBAlCoBhC,6CAAY;UAAA;QAAA;QAAA;QAAA;MAAA;IAAA;EAAA;AAAA"}