{"version":3,"file":"main.Bneqqt.js","sources":["theme-49/virtual:theme","theme-49/discourse/components/short-share-link.gjs","theme-49/discourse/connectors/share-topic-sources/short-share-link-connector.gjs","theme-49/virtual:entrypoint:main"],"sourcesContent":["import { getObjectForTheme } from \"discourse/lib/theme-settings-store\";\n\nexport const settings = getObjectForTheme(49);\n\nexport function themePrefix(key) {\n  return `theme_translations.49.${key}`;\n}\n","import Component from \"@glimmer/component\";\nimport { tracked } from \"@glimmer/tracking\";\nimport { on } from \"@ember/modifier\";\nimport { action } from \"@ember/object\";\nimport { service } from \"@ember/service\";\nimport DToggleSwitch from \"discourse/components/d-toggle-switch\";\nimport { getAbsoluteURL } from \"discourse/lib/get-url\";\nimport { i18n } from \"discourse-i18n\";\n\nexport default class ShortShareLink extends Component {\n  @service site;\n  @service currentUser;\n\n  @tracked isShortened = false;\n\n  constructor() {\n    super(...arguments);\n\n    if (settings.remember_preference && this.prefersShort) {\n      this.shortenLink();\n    }\n  }\n\n  get prefersShort() {\n    if (settings.remember_preference) {\n      return localStorage.getItem(\"short-share-link\");\n    }\n  }\n\n  get absoluteDomain() {\n    return getAbsoluteURL(\"/\");\n  }\n\n  get topicId() {\n    return this.args.topic.id;\n  }\n\n  get topicSlug() {\n    return this.args.topic.slug;\n  }\n\n  get userSegment() {\n    return this.currentUser ? `?u=${this.currentUser.username}` : \"\";\n  }\n\n  get postSegment() {\n    return this.args.post?.post_number > 1\n      ? `/${this.args.post.post_number}`\n      : \"\";\n  }\n\n  get shareInput() {\n    return document.getElementById(\"invite-link\");\n  }\n\n  #changeValueandFocus(value) {\n    this.shareInput.value = value;\n    this.shareInput.focus();\n\n    if (!this.site.mobileView) {\n      this.shareInput.select();\n    }\n  }\n\n  @action\n  shortenLink() {\n    const shortenedLink = `${this.absoluteDomain}t/${this.topicId}${this.postSegment}`;\n    this.#changeValueandFocus(shortenedLink);\n\n    this.isShortened = true;\n\n    if (settings.remember_preference) {\n      localStorage.setItem(\"short-share-link\", true);\n    }\n  }\n\n  @action\n  lengthenLink() {\n    const lengthenedLink = `${this.absoluteDomain}t/${this.topicSlug}/${this.topicId}${this.postSegment}${this.userSegment}`;\n    this.#changeValueandFocus(lengthenedLink);\n\n    this.isShortened = false;\n\n    if (settings.remember_preference) {\n      localStorage.removeItem(\"short-share-link\");\n    }\n  }\n\n  <template>\n    <DToggleSwitch\n      class=\"btn-link-length\"\n      @state={{this.isShortened}}\n      @translatedLabel={{i18n (themePrefix \"short_link_label\")}}\n      {{on \"click\" (if this.isShortened this.lengthenLink this.shortenLink)}}\n    />\n  </template>\n}\n","/* eslint-disable ember/no-classic-components */\nimport Component from \"@ember/component\";\nimport { tagName } from \"@ember-decorators/component\";\nimport ShortShareLink from \"../../components/short-share-link\";\n\n@tagName(\"\")\nexport default class ShortShareLinkConnector extends Component {\n  <template>\n    <ShortShareLink @topic={{@outletArgs.topic}} @post={{@outletArgs.post}} />\n  </template>\n}\n","import * as Mod1 from \"./discourse/components/short-share-link\";\nimport * as Mod2 from \"./discourse/connectors/share-topic-sources/short-share-link-connector.gjs\";\nconst compatModules = {\n  \"discourse/components/short-share-link\": Mod1,\n  \"discourse/connectors/share-topic-sources/short-share-link-connector\": Mod2,\n};\nexport { compatModules };\nexport default compatModules;\n"],"names":["settings","getObjectForTheme","themePrefix","key","ShortShareLink","Component","dt7948","g","this","prototype","service","site","i","currentUser","tracked","isShortened","constructor","super","arguments","remember_preference","prefersShort","shortenLink","localStorage","getItem","absoluteDomain","getAbsoluteURL","topicId","args","topic","id","topicSlug","slug","userSegment","username","postSegment","post","post_number","shareInput","document","getElementById","changeValueandFocus","value","focus","mobileView","select","shortenedLink","setItem","n","action","lengthenLink","lengthenedLink","removeItem","setComponentTemplate","createTemplateFactory","block","moduleName","scope","DToggleSwitch","i18n","on","isStrictMode","ShortShareLinkConnector","c","tagName","compatModules","Mod1"],"mappings":"w5BAEaA,EAAWC,EAAkB;AAEnC,SAASC,EAAYC,GAC1B,MAAO,yBAAyBA,GAClC,CCGe,MAAMC,UAAuBC,SAAAC,OAAAC,EAAAC,KAAAC,kBACzCC,GAAA,CAAAC,QAAAL,OAAAM,EAAAJ,KAAA;OAAAF,OAAAC,EAAAC,KAAAC,yBACAC,GAAA,CAAAG,QAAAP,OAAAM,EAAAJ,KAAA;OAAAF,OAAAC,EAAAC,KAAAC,yBAEAK,GAAA,WAAA,OAAsB,CAAA,EAAA,CAAAC,QAAAT,OAAAM,EAAAJ,KAAA;AAEvBQ,WAAAA,GACEC,SAASC,WAELlB,EAASmB,qBAAuBX,KAAKY,cACvCZ,KAAKa,aAET,CAEA,gBAAID,GACF,GAAIpB,EAASmB,oBACX,OAAOG,aAAaC,QAAQ,mBAEhC,CAEA,kBAAIC,GACF,OAAOC,EAAe,IACxB,CAEA,WAAIC,GACF,OAAOlB,KAAKmB,KAAKC,MAAMC,EACzB,CAEA,aAAIC,GACF,OAAOtB,KAAKmB,KAAKC,MAAMG,IACzB,CAEA,eAAIC,GACF,OAAOxB,KAAKK,YAAc,MAAML,KAAKK,YAAYoB,WAAa,EAChE,CAEA,eAAIC,GACF,OAAO1B,KAAKmB,KAAKQ,MAAMC,YAAc,EACjC,IAAI5B,KAAKmB,KAAKQ,KAAKC,cACnB,EACN,CAEA,cAAIC,GACF,OAAOC,SAASC,eAAe,cACjC,CAEA,EAAAC,CAAqBC,GACnBjC,KAAK6B,WAAWI,MAAQA,EACxBjC,KAAK6B,WAAWK,QAEXlC,KAAKG,KAAKgC,YACbnC,KAAK6B,WAAWO,QAEpB,CAGAvB,WAAAA,GACE,MAAMwB,EAAgB,GAAGrC,KAAKgB,mBAAmBhB,KAAKkB,UAAUlB,KAAK0B;AACrE1B,MAAKgC,EAAqBK,GAE1BrC,KAAKO,aAAc,EAEff,EAASmB,qBACXG,aAAawB,QAAQ,oBAAoB,EAE7C,QAAAxC,OAAAyC,EAAAvC,KAAAC,yBAVCuC,GAAA,CAaDC,YAAAA,GACE,MAAMC,EAAiB,GAAG1C,KAAKgB,mBAAmBhB,KAAKsB,aAAatB,KAAKkB,UAAUlB,KAAK0B,cAAc1B,KAAKwB;AAC3GxB,MAAKgC,EAAqBU,GAE1B1C,KAAKO,aAAc,EAEff,EAASmB,qBACXG,aAAa6B,WAAW,mBAE5B,QAAA7C,OAAAyC,EAAAvC,KAAAC,0BAVCuC,GAAA,QAYDI,EAAAC,EAAA,CAAAxB,GAAA,KAAAyB,MAAA,kRAAAC,WAAA,4BAAAC,MAAAA,KAAAA,CAAAC,gBAAAC,OAAAxD,cAAAyD,OAAAC,cAAA,IAOApD,KAAU;;AC5FmD,MAG1CqD,EAAAvD,OAAAwD,EAAA,cAAgCzD,SACnD+C,EAAAC,EAAA,CAAAxB,GAAA,KAAAyB,MAAA,sGAAAC,WAAA,4BAAAC,MAAAA,KAAAA,CAAApD,mBAAAwD,cAAA,IAEApD,KAAU,GACZ,CALCuD,EAAQ;ACHJ,MAACC,EAAgB,CACpB,wCAAyCC,EACzC;"}