{"version":3,"file":"virtual_main.js","sources":["theme-8/virtual:init-settings","theme-8/virtual:theme","theme-8/discourse/initializers/gosh-header.js","theme-8/virtual:main"],"sourcesContent":["import { registerSettings } from \"discourse/lib/theme-settings-store\";\n\nregisterSettings(8, {\n  \"menu\": \"{ \\\"About Gosh\\\": { \\\"children\\\" : { \\\"Why Gosh?\\\": { \\\"link\\\": \\\"https://openhardware.science/about/why-gosh/\\\",\\\"target\\\":\\\"_blank\\\"}, \\\"GOSH – A history (⚙️ in the making…)\\\": { \\\"link\\\":\\\"https://openhardware.science/about/gosh-history/\\\",\\\"target\\\":\\\"_blank\\\"}, \\\"Governance Structure\\\": { \\\"link\\\":\\\"https://openhardware.science/governance-structure/\\\",\\\"target\\\":\\\"_blank\\\"},\\\"Projects\\\": { \\\"link\\\":\\\"https://projects.openhardware.science/\\\",\\\"target\\\":\\\"_blank\\\"},\\\"Communities\\\": { \\\"link\\\":\\\"https://openhardware.science/communities/\\\",\\\"target\\\":\\\"_blank\\\"},\\\"Newsletter\\\": { \\\"link\\\":\\\"https://openhardware.science/gosh-monthly-newsletter/\\\"}, \\\"Contact Us\\\": { \\\"link\\\":\\\"https://openhardware.science/about/contact-us/\\\", \\\"target\\\":\\\"_blank\\\" } }}, \\\"Events\\\" : {\\\"children\\\": {\\\"The Gatherings\\\": {\\\"link\\\":\\\"https://openhardware.science/gatherings/\\\", \\\"target\\\":\\\"_blank\\\"}, \\\"Open Hours\\\": {\\\"link\\\":\\\"https://openhardware.science/open-hours/\\\", \\\"target\\\":\\\"_blank\\\"}, \\\"Community Calls\\\": {\\\"link\\\":\\\"https://openhardware.science/about/community-calls/\\\", \\\"target\\\":\\\"_blank\\\"}, \\\"GOSH 2021-2022 Writing Workshops \\\": {\\\"link\\\":\\\"https://openhardware.science/gosh-writing-sprints-2021-2022/\\\", \\\"target\\\":\\\"_blank\\\"}, \\\"2022 GOSH Community Council Election\\\": {\\\"link\\\":\\\"https://openhardware.science/2022-gosh-community-council-election/\\\", \\\"target\\\":\\\"_blank\\\"} }} , \\\"Resources\\\": { \\\"children\\\": { \\\"Regional Events Funding\\\": {\\\"link\\\": \\\"https://openhardware.science/regional-events-funding/\\\",\\\"target\\\":\\\"_blank\\\"}, \\\"Collaborative Development Program\\\": {\\\"link\\\": \\\"https://openhardware.science/collaborative-development-program/\\\",\\\"target\\\":\\\"_blank\\\"}, \\\"Roadmap\\\": {\\\"link\\\": \\\"https://openhardware.science/global-open-science-hardware-roadmap/\\\",\\\"target\\\":\\\"_blank\\\"}, \\\"Policy Briefs\\\": {\\\"link\\\": \\\"https://openhardware.science/policy-briefs/\\\",\\\"target\\\":\\\"_blank\\\"}, \\\"GOSH Community Events Framework\\\": {\\\"link\\\": \\\"https://openhardware.science/gosh-community-events-framework/\\\",\\\"target\\\":\\\"_blank\\\"}}},  \\\"Manifesto\\\": {    \\\"link\\\": \\\"https://openhardware.science/gosh-manifesto/\\\",    \\\"target\\\": \\\"_blank\\\"},  \\\"News\\\": {    \\\"link\\\": \\\"https://openhardware.science/blog/\\\",    \\\"target\\\": \\\"_blank\\\"  },  \\\"Code Of Conduct\\\": {    \\\"link\\\": \\\"https://openhardware.science/gosh-2017/gosh-code-of-conduct/\\\",    \\\"target\\\": \\\"_blank\\\" },  \\\"Donate\\\": {    \\\"link\\\": \\\"https://www.paypal.com/donate/?hosted_button_id=EM6T4LSU6U3BC\\\",    \\\"target\\\": \\\"_blank\\\"  }}\"\n});\n","import { getObjectForTheme } from \"discourse/lib/theme-settings-store\";\n\nexport const settings = getObjectForTheme(8);\n\nexport function themePrefix(key) {\n  return `theme_translations.8.${key}`;\n}\n","import { withPluginApi } from \"discourse/lib/plugin-api\";\n\nlet cachedMenu;\nlet widget;\n\nfunction initTheme(api) {\n  try {\n    const menu = JSON.parse(settings.menu);\n\n    cachedMenu = Object.keys(menu).map(i => {\n      return createMenu(i, menu[i]);\n    });\n\n    if (widget) {\n      widget.scheduleRerender();\n    }\n  } catch (e) {\n    console.error(\"Error parsing menu JSON setting\");\n    console.error(e);\n  }\n\n  function createMenu(text, attrs) {\n    const attributes = {\n      href: attrs.link\n    };\n\n    if (attrs.target) {\n      attributes.target = attrs.target;\n    }\n\n    const link = api.h(\"a\", { attributes }, text);\n\n    if (attrs.children) {\n      const children = Object.keys(attrs.children).map(i => {\n        return createMenu(i, attrs.children[i]);\n      });\n\n      let classes = \"fl-has-submenu\";\n\n      if (attrs.right) {\n        classes += \".fl-menu-submenu-right\";\n      }\n\n      const subMenu = [\n        api.h(\"div.fl-has-submenu-container\", [\n          link,\n          api.h(\"span.fl-menu-toggle\")\n        ]),\n        api.h(\"ul.sub-menu\", children)\n      ];\n\n      return api.h(`li.${classes}`, subMenu);\n    } else {\n      return api.h(\"li\", link);\n    }\n  }\n\n  api.createWidget(\"gosh-nav-header\", {\n    tagName: \"div.fl-col.fl-node-5e5de0a372f2c\",\n    buildAttributes(attrs) {\n      return {\n        \"data-node\": \"5e5de0a372f2c\"\n      };\n    },\n    html(attrs) {\n      return api.h(\"div.fl-col-content.fl-node-content\", [\n        api.h(\n          \"div.fl-module.fl-module-menu.fl-node-5e5de0a372f2e\",\n          {\n            attributes: {\n              \"data-node\": \"5e5de0a372f2e\"\n            }\n          },\n          [\n            api.h(\"div.fl-module-content.fl-node-content\", [\n              api.h(\"div.fl-menu.fl-menu-responsive-toggle-medium-mobile\", [\n                api.h(\"nav\", [\n                  api.h(\n                    \"ul.menu.fl-menu-horizontal.fl-toggle-arrows#menu-main-menu\",\n                    attrs\n                  )\n                ])\n              ])\n            ])\n          ]\n        )\n      ]);\n    }\n  });\n\n  api.decorateWidget(\"header-buttons:before\", dec => {\n    widget = dec.widget;\n\n    if (!dec.widget.site.mobileView) {\n      return dec.attach(\"gosh-nav-header\", cachedMenu);\n    }\n  });\n\n  api.createWidget(\"gosh-login-icon\", {\n    tagName: \"li.gosh-login-icon\",\n\n    html(attrs) {\n      return api.h(\"a.icon\", attrs);\n    },\n\n    click(e) {\n      e.preventDefault();\n\n      this.sendWidgetAction(\"showLogin\");\n    }\n  });\n\n  api.reopenWidget(\"hamburger-menu\", {\n    panelContents() {\n      const result = this._super();\n\n      if (this.site.mobileView) {\n        result.push(this.attach(\"gosh-nav-header\", cachedMenu));\n      }\n\n      return result;\n    }\n  });\n}\n\nexport default {\n  name: \"gosh-header\",\n\n  initialize() {\n    withPluginApi(\"0.8\", initTheme);\n  }\n};\n","import \"virtual:init-settings\";\n\nconst themeCompatModules = {};\nimport * as Mod1 from \"./discourse/initializers/gosh-header\";\nthemeCompatModules[\"discourse/initializers/gosh-header\"] = Mod1;\n\nexport default themeCompatModules;\n"],"names":["registerSettings","menu","settings","getObjectForTheme","cachedMenu","widget","initTheme","api","JSON","parse","Object","keys","map","i","createMenu","scheduleRerender","e","console","error","text","attrs","attributes","href","link","target","h","children","classes","right","subMenu","createWidget","tagName","buildAttributes","html","decorateWidget","dec","site","mobileView","attach","click","preventDefault","this","sendWidgetAction","reopenWidget","panelContents","result","_super","push","goshHeader","name","initialize","withPluginApi","themeCompatModules","Mod1"],"mappings":";AAEAA,EAAiB,EAAG,CAClBC,KAAQ;ACDH,MAAMC,EAAWC,EAAkB;ACA1C,IAAIC,EACAC;AAEJ,SAASC,EAAUC,GACjB,IACE,MAAMN,EAAOO,KAAKC,MAAMP,EAASD;AAEjCG,EAAaM,OAAOC,KAAKV,GAAMW,IAAIC,GAC1BC,EAAWD,EAAGZ,EAAKY,KAGxBR,GACFA,EAAOU,kBAEX,CAAE,MAAOC,GACPC,QAAQC,MAAM,mCACdD,QAAQC,MAAMF,EAChB,CAEA,SAASF,EAAWK,EAAMC,GACxB,MAAMC,EAAa,CACjBC,KAAMF,EAAMG;AAGVH,EAAMI,SACRH,EAAWG,OAASJ,EAAMI;AAG5B,MAAMD,EAAOhB,EAAIkB,EAAE,IAAK,CAAEJ,cAAcF;AAExC,GAAIC,EAAMM,SAAU,CAClB,MAAMA,EAAWhB,OAAOC,KAAKS,EAAMM,UAAUd,IAAIC,GACxCC,EAAWD,EAAGO,EAAMM,SAASb;AAGtC,IAAIc,EAAU;AAEVP,EAAMQ,QACRD,GAAW;AAGb,MAAME,EAAU,CACdtB,EAAIkB,EAAE,+BAAgC,CACpCF,EACAhB,EAAIkB,EAAE,yBAERlB,EAAIkB,EAAE,cAAeC;AAGvB,OAAOnB,EAAIkB,EAAE,MAAME,IAAWE,EAChC,CACE,OAAOtB,EAAIkB,EAAE,KAAMF,EAEvB,CAEAhB,EAAIuB,aAAa,kBAAmB,CAClCC,QAAS,mCACTC,gBAAgBZ,IACP,CACL,YAAa,kBAGjBa,KAAKb,GACIb,EAAIkB,EAAE,qCAAsC,CACjDlB,EAAIkB,EACF,qDACA,CACEJ,WAAY,CACV,YAAa,kBAGjB,CACEd,EAAIkB,EAAE,wCAAyC,CAC7ClB,EAAIkB,EAAE,sDAAuD,CAC3DlB,EAAIkB,EAAE,MAAO,CACXlB,EAAIkB,EACF,6DACAL,eAWlBb,EAAI2B,eAAe,wBAAyBC,IAG1C,GAFA9B,EAAS8B,EAAI9B,QAER8B,EAAI9B,OAAO+B,KAAKC,WACnB,OAAOF,EAAIG,OAAO,kBAAmBlC,KAIzCG,EAAIuB,aAAa,kBAAmB,CAClCC,QAAS,qBAETE,KAAKb,GACIb,EAAIkB,EAAE,SAAUL,GAGzBmB,KAAAA,CAAMvB,GACJA,EAAEwB,iBAEFC,KAAKC,iBAAiB,YACxB,IAGFnC,EAAIoC,aAAa,iBAAkB,CACjCC,aAAAA,GACE,MAAMC,EAASJ,KAAKK;AAMpB,OAJIL,KAAKL,KAAKC,YACZQ,EAAOE,KAAKN,KAAKH,OAAO,kBAAmBlC,IAGtCyC,CACT,GAEJ,CAEA,IAAAG,EAAe,CACbC,KAAM,cAENC,UAAAA,GACEC,EAAc,MAAO7C,EACvB;AChIG,MAAC8C,EAAqB,CAAA;AAE3BA,EAAmB,sCAAwCC;"}