{"version":3,"sources":["webpack:///./src/components/Spinner.vue","webpack:///./src/components/Spinner.vue?575d","webpack:///./src/composables/meta.ts","webpack:///./src/services/article.service.ts","webpack:///./src/components/Breadcrumbs.vue","webpack:///./src/components/Breadcrumbs.vue?4658","webpack:///./src/composables/canonical.ts","webpack:///./src/services/order.service.ts","webpack:///./src/views/Order.vue","webpack:///./src/views/Order.vue?bfa8","webpack:///./src/components/ArticleCard.vue","webpack:///./src/components/ArticleCard.vue?fae9","webpack:///./src/components/Breadcrumbs.vue?d5da"],"names":["_hoisted_1","key","class","style","_hoisted_3","_createElementVNode","role","_defineComponent","__name","props","spinn","type","Boolean","setup","__props","_ctx","_cache","_openBlock","_createElementBlock","_createCommentVNode","__exports__","setMeta","title","description","document","length","metaDescription","querySelector","setAttribute","newMetaDescription","createElement","head","appendChild","useMeta","titleRef","ref","descriptionRef","onMounted","value","watchEffect","ArticleService","Api","constructor","apiConfig","super","this","getAllActive","bind","getAll","fetch","add","fetchById","get","then","result","data","articleSlug","id","dto","post","headers","articleApi","_hoisted_2","items","_component_router_link","_resolveComponent","_createVNode","to","default","_withCtx","_createTextVNode","_","_Fragment","_renderList","filter","x","active","item","path","startsWith","_toDisplayString","name","setCanonical","href","address","canonical","metaCanonicalValue","useCanonical","hrefRef","dontUseCanonical","remove","removeCanonical","OrderService","orderApi","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","for","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","src","alt","_hoisted_25","_hoisted_26","rootStore","useRootStore","router","useRouter","route","useRoute","vm","article","isLoading","createLinkToArticle","_selectedCategory$val","_article$value","resolve","selectedCategory","urlSlug","params","fullPath","breadcrumbs","computed","_selectedCategory$val2","_selectedCategory$val3","modelName","categories","find","categoryId","async","onSubmit","window","confirm","articleId","push","e","alert","slug","toString","res","isSold","substring","Breadcrumbs","_unref","_withModifiers","_withDirectives","$event","fullName","_vModelText","zipCode","city","email","swishNumber","price","ArticleCard","Spinner","heightClass","getClass","_unref2","_createBlock","custom","navigate","_normalizeClass","onClick","files","srcset","priceDisplay"],"mappings":"iHAGA,MAAMA,EAAa,CACjBC,IAAK,EACLC,MAAO,mDACPC,MAAO,CAAC,OAAS,oBAQbC,EAAa,CANaC,6BAAoB,MAAO,CACzDH,MAAO,iBACPI,KAAM,UACL,CACYD,6BAAoB,OAAQ,CAAEH,MAAO,mBAAqB,eACrE,IAOwBK,gCAAiB,CAC3CC,OAAQ,UACRC,MAAO,CACLC,MAAO,CAAEC,KAAMC,UAEjBC,MAAMC,GAMD,CAACC,EAAUC,IACRF,EAAQJ,OACXO,sBAAcC,6BAAoB,MAAOlB,EAAYI,IACtDe,6BAAoB,IAAG,KC/B7B,MAAMC,EAAc,EAEL,O,oCCLf,kDAEM,SAAUC,EAAQC,EAAeC,GACnCC,SAASF,MAAQ,GAAGA,IAASA,EAAMG,OAAS,MAAQ,uFACpD,MAAMC,EAAkBF,SAASG,cAAc,4BAC/C,GAAID,EACAA,EAAgBE,aAAa,UAAWL,OACrC,CACH,MAAMM,EAAqBL,SAASM,cAAc,QAClDD,EAAmBD,aAAa,OAAQ,eACxCC,EAAmBD,aAAa,UAAWL,GAC3CC,SAASO,KAAKC,YAAYH,IAI5B,SAAUI,EAAQX,EAAeC,GACnC,MAAMW,EAAWC,cAAIb,GACfc,EAAiBD,cAAIZ,GAU3B,OARAc,qBAAU,KACNhB,EAAQa,EAASI,MAAOF,EAAeE,MAAKA,IAGhDC,uBAAY,KACRlB,EAAQa,EAASI,MAAOF,EAAeE,MAAKA,IAGzC,CACHhB,MAAOY,EACPX,YAAaa,K,oCCzBrB,8DAGA,MAAMI,UAAuBC,IACzBC,YAAmBC,GACfC,MAAMD,GAENE,KAAKC,aAAeD,KAAKC,aAAaC,KAAKF,MAC3CA,KAAKG,OAASH,KAAKG,OAAOD,KAAKF,MAC/BA,KAAKI,MAAQJ,KAAKI,MAAMF,KAAKF,MAC7BA,KAAKK,IAAML,KAAKK,IAAIH,KAAKF,MACzBA,KAAKM,UAAYN,KAAKM,UAAUJ,KAAKF,KAAKA,CAGvCC,eACH,OAAOD,KAAKO,IAA6B,eACpCC,MAAMC,GACIA,EAAOC,OAInBP,SACH,OAAOH,KAAKO,IAA6B,qBACpCC,MAAMC,GACIA,EAAOC,OAInBN,MAAMO,GACT,OAAOX,KAAKO,IAAsB,eAAeI,GAC5CH,MAAMC,GACIA,EAAOC,OAInBJ,UAAUM,GACb,OAAOZ,KAAKO,IAAiB,qBAAqBK,GAC7CJ,MAAMC,GACIA,EAAOC,OAInBL,IAAIQ,GACP,OAAOb,KAAKc,KAAK,gBAAiBD,EAAK,CACnCE,QAAS,CACL,eAAgB,yBAErBP,MAAMC,GACEA,EAAOC,QAKnB,MAAMM,EAAa,IAAIrB,EAAeG,M,kDCtD7C,MACM3C,EAAa,CACjBC,IAAK,EACL,aAAc,cAEV6D,EAAa,CAAE5D,MAAO,cACtBE,EAAa,CAAEF,MAAO,mBAMAK,gCAAiB,CAC3CC,OAAQ,cACRC,MAAO,CACLsD,MAAO,MAETlD,MAAMC,GAER,MAAML,EAAQK,EAMJiD,EAAQ5B,cAAI1B,EAAMsD,OAAS,IAErC,MAAO,CAAChD,EAAUC,KAChB,MAAMgD,EAAyBC,2BAAkB,eAEjD,OAAQF,EAAMzB,MAAMb,QACfR,sBAAcC,6BAAoB,MAAOlB,EAAY,CACpDK,6BAAoB,KAAMyD,EAAY,CACpCzD,6BAAoB,KAAMD,EAAY,CACpC8D,sBAAaF,EAAwB,CACnCG,GAAI,IACJjE,MAAO,gDACN,CACDkE,QAASC,mBAAS,IAAM,CACtBC,0BAAiB,YAEnBC,EAAG,OAGNtD,wBAAkBC,6BAAoBsD,WAAW,KAAMC,qBAAYV,EAAMzB,MAAMoC,QAAOC,IAAMA,EAAEC,UAAUC,IAC/F5D,sBAAcC,6BAAoB,KAAM,CAC9ChB,MAAO,kBACPD,IAAK4E,EAAKC,MACT,CACDZ,sBAAaF,EAAwB,CACnCG,GAAI,CAAEW,KAAMD,EAAKC,KAAKC,WAAW,KAAOF,EAAKC,KAAO,IAAMD,EAAKC,MAC/D5E,MAAO,gDACN,CACDkE,QAASC,mBAAS,IAAM,CACtBC,0BAAiBU,0BAAiBH,EAAKI,MAAO,MAEhDV,EAAG,GACF,KAAM,CAAC,YAEV,OACHtD,wBAAkBC,6BAAoBsD,WAAW,KAAMC,qBAAYhE,EAAMsD,MAAMW,QAAOC,GAAKA,EAAEC,UAAUC,IAC9F5D,sBAAcC,6BAAoB,KAAM,CAC9ChB,MAAO,yBACP,eAAgB,OAChBD,IAAK4E,EAAKC,MACTE,0BAAiBH,EAAKI,MAAO,MAC9B,WAGR9D,6BAAoB,IAAG,EAAC,K,wBClE9B,MAAMC,E,MAA2B,GAAgB,EAAQ,CAAC,CAAC,YAAY,qBAExD,O,yDCRf,oFAEM,SAAU8D,EAAaC,GACzB,MAAMC,EAAU,6BAA+BD,EAAK1D,OAAS,EAAI,IAAI0D,EAASA,GACxEE,EAAY7D,SAASG,cAAc,yBAEzC,GAAI0D,EACAA,EAAUzD,aAAa,OAAQwD,OAC5B,CACH,MAAME,EAAqB9D,SAASM,cAAc,QAClDwD,EAAmB1D,aAAa,MAAO,aACvC0D,EAAmB1D,aAAa,OAAQwD,GACxC5D,SAASO,KAAKC,YAAYsD,IAU5B,SAAUC,EAAaJ,GACzB,MAAMK,EAAUrD,cAAIgD,GAUpB,OARA9C,qBAAU,KACN6C,EAAaM,EAAQlD,MAAKA,IAG9BC,uBAAY,KACR2C,EAAaM,EAAQlD,MAAKA,IAGvB,CACH6C,KAAMK,GAIR,SAAUC,KAtBV,WACF,MAAMJ,EAAY7D,SAASG,cAAc,yBACrC0D,GACAA,EAAUK,QAAQA,CAoBtBC,K,uGClCJ,MAAMC,UAAqBnD,IACvBC,YAAmBC,GACfC,MAAMD,GACNE,KAAKK,IAAML,KAAKK,IAAIH,KAAKF,KAAKA,CAG3BK,IAAIQ,GACP,OAAOb,KAAKc,KAAK,QAASD,GACrBL,MAAMC,GACIA,EAAOC,QAKvB,MAAMsC,EAAW,IAAID,EAAajD,K,wFChBzC,MAAM3C,EAAa,CACjBC,IAAK,EACLC,MAAO,oBAEH4D,EAAa,CAAE5D,MAAO,OACtBE,EAAa,CAAEF,MAAO,YACtB4F,EAA0BzF,6BAAoB,MAAO,CAAEH,MAAO,eAAiB,CACtEG,6BAAoB,KAAM,KAAM,aAC3C,GACE0F,EAAa,CAAE7F,MAAO,yBACtB8F,EAA0B3F,6BAAoB,KAAM,KAAM,aAAc,GACxE4F,EAAa,CAAC,YACdC,EAAa,CAAEhG,MAAO,QACtBiG,EAA0B9F,6BAAoB,QAAS,CAC3D+F,IAAK,YACLlG,MAAO,cACN,QAAS,GACNmG,EAAc,CAAEnG,MAAO,QACvBoG,EAA2BjG,6BAAoB,QAAS,CAC5D+F,IAAK,UACLlG,MAAO,cACN,UAAW,GACRqG,EAAc,CAAErG,MAAO,QACvBsG,EAA2BnG,6BAAoB,QAAS,CAC5D+F,IAAK,WACLlG,MAAO,cACN,cAAe,GACZuG,EAAc,CAAEvG,MAAO,QACvBwG,EAA2BrG,6BAAoB,QAAS,CAC5D+F,IAAK,OACLlG,MAAO,cACN,OAAQ,GACLyG,EAAc,CAAEzG,MAAO,QACvB0G,EAA2BvG,6BAAoB,QAAS,CAC5D+F,IAAK,QACLlG,MAAO,cACN,eAAgB,GACb2G,EAAc,CAAE3G,MAAO,QACvB4G,EAA2BzG,6BAAoB,QAAS,CAC5D+F,IAAK,eACLlG,MAAO,cACN,iBAAkB,GACf6G,EAA2B1G,6BAAoB,MAAO,CAC1DoD,GAAI,YACJvD,MAAO,aACN,uDAAwD,GACrD8G,EAAc,CAAE9G,MAAO,oBACvB+G,EAAc,CAAE/G,MAAO,mCACvBgH,EAAc,CAAEhH,MAAO,mCACvBiH,EAA2B9G,6BAAoB,MAAO,CAC1D+G,IAAK,6BACLC,IAAK,eACLlH,MAAO,CAAC,aAAa,UACpB,MAAO,GACJmH,EAA2BjH,6BAAoB,SAAU,CAC7DM,KAAM,SACNT,MAAO,mDACN,mBAAoB,GACjBqH,EAAc,CAAErH,MAAO,YAiBDK,gCAAiB,CAC3CC,OAAQ,QACRK,MAAMC,GAEJ,MAAM0G,EAAYC,cAEZC,EAASC,cACTC,EAAQC,cAERC,EAAK3F,cAAc,CAAC,GACpB4F,EAAU5F,cAAsB,CAAC,GACjC6F,EAAY7F,kBAElB,SAAS8F,IAAmB,IAAAC,EAAAC,EACxB,OAAOT,EAAOU,QAAQ,CAAEnD,KAAM,YAAiC,QAAjCiD,EAAWG,EAAiB/F,iBAAK4F,SAAtBA,EAAwBI,SAAWC,OAAQ,CAAE9E,GAAiB,QAAf0E,EAAEJ,EAAQzF,iBAAK6F,SAAbA,EAAeG,WAAaE,QAAQA,CAGlI,MAAMC,EAAcC,oBAAS,KAAK,IAAAC,EAAAC,EAC9B,MAAO,CACH,CACI3D,KAA4B,QAAxB0D,EAAEN,EAAiB/F,iBAAKqG,SAAtBA,EAAwB1D,KAC9BH,KAA4B,QAAxB8D,EAAEP,EAAiB/F,iBAAKsG,SAAtBA,EAAwBN,QAC9B1D,QAAOA,GAEX,CACIK,KAAM8C,EAAQzF,MAAMuG,UAAY,IAAMd,EAAQzF,MAAM2C,KACpDH,KAAMmD,IACNrD,QAAOA,GAEX,CACIK,KAAM,UACNH,KAAM,GACNF,QAAOA,GAAC,IAKdyD,EAAmBK,oBAAS,IACvBlB,EAAUsB,WAAWrH,OACtB+F,EAAUsB,WAAWC,MAAKpE,GAAKA,EAAElB,KAAOsE,EAAQzF,MAAM0G,aACtD,CAAC,IAGXC,eAAeC,IACX,GAAIC,OAAOC,QAAQ,mBACf,IAGI,SAFkBvD,EAAS3C,IAAI,IAAK4E,EAAGxF,MAAO+G,UAAWtB,EAAQzF,MAAMmB,KAGnE,OAAOiE,EAAO4B,KAAK,CAAErE,KAAM,iBAE3B,KAAM,sEACZ,MAAOsE,GACLC,MAAM,wEA8BtB,OAzBInH,qBAAU4G,UACNzH,SAASF,MAAQ,YAEjB,MAAMgH,EAAUV,EAAMW,OAAOkB,KAAKC,WAClC,IACI,MAAMC,QAAY9F,IAAWZ,MAAMqF,GAE/BqB,EAAIC,SACJJ,MAAM,6BACN9B,EAAO4B,KAAK,MAGhBvB,EAAQzF,MAAQqH,EAEhB1H,YAAQ,WAAW0H,EAAId,aAAac,EAAI1E,OAAQ,uBAAuB0E,EAAId,aAAac,EAAI1E,QAC5FM,YAAaqC,EAAM9C,KAAK+E,UAAU,IAElC7B,EAAU1F,QAAQ,CAEpB,MAAOiH,GACLC,MAAM,+CACN9B,EAAO4B,KAAK,SAIjB,CAACvI,EAAUC,KACRC,sBAAcC,6BAAoBsD,WAAW,KAAM,CACvDwD,EAAU1F,MAkGRnB,6BAAoB,IAAG,IAjGtBF,sBAAcC,6BAAoB,UAAWlB,EAAY,CACxDK,6BAAoB,MAAOyD,EAAY,CACrCzD,6BAAoB,MAAOD,EAAY,CACrC8D,sBAAa4F,IAAa,CAAE/F,MAAOgG,gBAAOtB,IAAgB,KAAM,EAAG,CAAC,cAGxE3C,EACAzF,6BAAoB,MAAO0F,EAAY,CACrCC,EACA3F,6BAAoB,OAAQ,CAC1B6I,SAAUc,wBAAed,EAAU,CAAC,aACnC,CACD7I,6BAAoB,MAAO6F,EAAY,CACrCC,EACA8D,yBAAgB5J,6BAAoB,QAAS,CAC3CM,KAAM,OACNT,MAAO,eACPuD,GAAI,YACJ,sBAAuBzC,EAAO,KAAOA,EAAO,GAAMkJ,GAAkBpC,EAAGxF,MAAM6H,SAAYD,IACxF,KAAM,KAAM,CACb,CAACE,aAAatC,EAAGxF,MAAM6H,cAG3B9J,6BAAoB,MAAOgG,EAAa,CACtCC,EACA2D,yBAAgB5J,6BAAoB,QAAS,CAC3CM,KAAM,OACNT,MAAO,eACPuD,GAAI,UACJ,sBAAuBzC,EAAO,KAAOA,EAAO,GAAMkJ,GAAkBpC,EAAGxF,MAAM8C,QAAW8E,IACvF,KAAM,KAAM,CACb,CAACE,aAAatC,EAAGxF,MAAM8C,aAG3B/E,6BAAoB,MAAOkG,EAAa,CACtCC,EACAyD,yBAAgB5J,6BAAoB,QAAS,CAC3CM,KAAM,OACNT,MAAO,eACPuD,GAAI,WACJ,sBAAuBzC,EAAO,KAAOA,EAAO,GAAMkJ,GAAkBpC,EAAGxF,MAAM+H,QAAWH,IACvF,KAAM,KAAM,CACb,CAACE,aAAatC,EAAGxF,MAAM+H,aAG3BhK,6BAAoB,MAAOoG,EAAa,CACtCC,EACAuD,yBAAgB5J,6BAAoB,QAAS,CAC3CM,KAAM,OACNT,MAAO,eACPuD,GAAI,OACJ,sBAAuBzC,EAAO,KAAOA,EAAO,GAAMkJ,GAAkBpC,EAAGxF,MAAMgI,KAAQJ,IACpF,KAAM,KAAM,CACb,CAACE,aAAatC,EAAGxF,MAAMgI,UAG3BjK,6BAAoB,MAAOsG,EAAa,CACtCC,EACAqD,yBAAgB5J,6BAAoB,QAAS,CAC3CM,KAAM,QACNT,MAAO,eACPuD,GAAI,QACJ,sBAAuBzC,EAAO,KAAOA,EAAO,GAAMkJ,GAAkBpC,EAAGxF,MAAMiI,MAASL,IACrF,KAAM,KAAM,CACb,CAACE,aAAatC,EAAGxF,MAAMiI,WAG3BlK,6BAAoB,MAAOwG,EAAa,CACtCC,EACAmD,yBAAgB5J,6BAAoB,QAAS,CAC3CM,KAAM,OACNT,MAAO,eACPuD,GAAI,eACJ,mBAAoB,oBACpB,sBAAuBzC,EAAO,KAAOA,EAAO,GAAMkJ,GAAkBpC,EAAGxF,MAAMkI,YAAeN,IAC3F,KAAM,KAAM,CACb,CAACE,aAAatC,EAAGxF,MAAMkI,eAEzBzD,IAEF1G,6BAAoB,MAAO2G,EAAa,CACtC3G,6BAAoB,KAAM,KAAM,CAC9BiE,0BAAiB,iCACjBjE,6BAAoB,OAAQ4G,EAAajC,0BAAiB+C,EAAQzF,MAAMmI,OAAS,KAAM,GACvFnG,0BAAiB,6CACjBjE,6BAAoB,OAAQ6G,EAAa,UAAYlC,0BAAiB+C,EAAQzF,MAAMmB,IAAM,kBAAmB,GAC7Ga,0BAAiB,4EAEnB6C,IAEFG,GACC,GAAIrB,KAET5F,6BAAoB,MAAOkH,EAAa,CACtCrD,sBAAawG,IAAa,CAAE3C,QAASA,EAAQzF,OAAS,KAAM,EAAG,CAAC,iBAIxE4B,sBAAayG,IAAS,CAAEjK,MAAOsH,EAAU1F,OAAS,KAAM,EAAG,CAAC,WAC3D,IAAI,ICpQT,MAAMlB,EAAc,EAEL,a,8DCFf,MAAMpB,EAAa,CAAC,WACd8D,EAAa,CAAE5D,MAAO,qBACtBE,EAAa,CAAEH,IAAK,GACpB6F,EAAa,CAAC,UACdC,EAAa,CAAC,MAAO,OACrBC,EAAa,CAAC,OACdC,EAAa,CACjBhG,IAAK,EACLC,MAAO,uCAEHgG,EAAa,CACjBjG,IAAK,EACLC,MAAO,kBACPC,MAAO,CAAC,YAAY,WAEhBgG,EAAa,CAAEjG,MAAO,iBACtBmG,EAAc,CAAEnG,MAAO,eACvBoG,EAAc,CAAEpG,MAAO,aACvBqG,EAAc,CAAEtG,IAAK,GACrBuG,EAAc,CAAEvG,IAAK,GAQCM,gCAAiB,CAC3CC,OAAQ,cACRC,MAAO,CACLsH,QAAS,KACT6C,YAAa,MAEf/J,MAAMC,GAER,MAAML,EAAQK,EAEJ0G,EAAYC,cAGZM,EAAU5F,cAAsB1B,EAAMsH,SAEtCM,EAAmBK,oBAAS,IACvBlB,EAAUsB,WAAWrH,OACtB+F,EAAUsB,WAAWC,MAAKpE,GAAKA,EAAElB,KAAOsE,EAAQzF,MAAM0G,aACtD,CAAC,IAGX,SAAS6B,IACL,OAAOpK,EAAMmK,WAAWA,CAGhC,MAAO,CAAC7J,EAAUC,KAAe,IAAA8J,EAC/B,MAAM9G,EAAyBC,2BAAkB,eAEjD,OAAQhD,sBAAc8J,sBAAa/G,EAAwB,CACzDG,GAAI,CAAEc,KAAK,YAAmC,QAAnC6F,EAAWf,gBAAO1B,cAAiByC,SAAxBA,EAA0BxC,SAAWC,OAAQ,CAAEkB,KAAM1B,EAAQzF,MAAMgG,UACzF0C,OAAQ,IACP,CACD5G,QAASC,mBAAS,EAAG4G,cAAe,CAClC5K,6BAAoB,MAAO,CACzBH,MAAOgL,yBAAgB,CAAC,cAAeL,MACvCM,QAASF,GACR,CACD5K,6BAAoB,MAAOyD,EAAY,CACpCiE,EAAQzF,MAAM8I,MAAM3J,QAChBR,sBAAcC,6BAAoB,UAAWd,EAAY,CACxDC,6BAAoB,SAAU,CAC5BgL,OAAQ,WAAWtD,EAAQzF,MAAM8I,MAAM,GAAGnG,sBAC1CtE,KAAM,cACL,KAAM,EAAGmF,GACZzF,6BAAoB,MAAO,CACzBH,MAAO,eACPkH,IAAK,WAAWW,EAAQzF,MAAM8I,MAAM,GAAGnG,qBACvCoC,IAAK,YAAYU,EAAQzF,MAAMuG,aAAad,EAAQzF,MAAM2C,QACzD,KAAM,EAAGc,OAEb9E,sBAAcC,6BAAoB,MAAO,CACxCjB,IAAK,EACLC,MAAO,eACPkH,IAAK,mDACLC,IAAQU,EAAQzF,MAAM2C,KAAjB,WACJ,KAAM,EAAGe,IACf+B,EAAQzF,MAAMsH,QAAsC,GAA5B7B,EAAQzF,MAAM0G,YAClC/H,sBAAcC,6BAAoB,MAAO+E,EAAY,CACnD8B,EAAQzF,MAAMsH,QACV3I,sBAAcC,6BAAoB,OAAQgF,EAAY,SACvD/E,6BAAoB,IAAG,MAE7BA,6BAAoB,IAAG,KAE7Bd,6BAAoB,MAAO8F,EAAY,CACrC9F,6BAAoB,MAAOgG,EAAa,CACtChG,6BAAoB,KAAMiG,EAAa,CACJ,IAAhCyD,gBAAO1B,GAAkB5E,IACrBxC,sBAAcC,6BAAoB,OAAQqF,EAAavB,0BAAiB+C,EAAQzF,MAAMuG,WAAa,IAAK,IACzG1H,6BAAoB,IAAG,GAC3BmD,0BAAiBU,0BAAiB+C,EAAQzF,MAAM2C,MAAO,KAExB,IAAhC8E,gBAAO1B,GAAkB5E,IACrBxC,sBAAcC,6BAAoB,OAAQsF,EAAaxB,0BAAiB+C,EAAQzF,MAAMgJ,cAAe,IACtGnK,6BAAoB,IAAG,QAG9B,GAAInB,MAETuE,EAAG,GACF,EAAG,CAAC,MAAK,CAAL,IC3GT,MAAMnD,EAAc,EAEL,O,kCCLf","file":"js/Order.ba171797.js","sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"d-flex justify-content-center align-items-center\",\n style: {\"height\":\"70vh !important\"}\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"spinner-border\",\n role: \"status\"\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"visually-hidden\" }, \"Laddar...\")\n], -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\n\r\n \nexport default /*#__PURE__*/_defineComponent({\n __name: 'Spinner',\n props: {\n spinn: { type: Boolean }\n },\n setup(__props: any) {\n\nconst props = __props as { spinn: boolean }\n\r\n \r\n\nreturn (_ctx: any,_cache: any) => {\n return (__props.spinn)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, _hoisted_3))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./Spinner.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Spinner.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { ref, onMounted, watchEffect } from 'vue';\r\n\r\nexport function setMeta(title: string, description: string) {\r\n document.title = `${title}${(title.length ? ' - ' : '')}NG Hantverk - Upplev äventyret med våra handgjorda och exklusiva knivar och fodral`;\r\n const metaDescription = document.querySelector('meta[name=\"description\"]');\r\n if (metaDescription) {\r\n metaDescription.setAttribute('content', description);\r\n } else {\r\n const newMetaDescription = document.createElement('meta');\r\n newMetaDescription.setAttribute('name', 'description');\r\n newMetaDescription.setAttribute('content', description);\r\n document.head.appendChild(newMetaDescription);\r\n }\r\n}\r\n\r\nexport function useMeta(title: string, description: string) {\r\n const titleRef = ref(title);\r\n const descriptionRef = ref(description);\r\n\r\n onMounted(() => {\r\n setMeta(titleRef.value, descriptionRef.value);\r\n });\r\n\r\n watchEffect(() => {\r\n setMeta(titleRef.value, descriptionRef.value);\r\n });\r\n\r\n return {\r\n title: titleRef,\r\n description: descriptionRef,\r\n };\r\n}","import { AxiosRequestConfig, AxiosResponse } from 'axios';\r\nimport { ArticleViewModel } from '../types/ArticleViewModel';\r\nimport { SaveArticle } from '@/types/SaveArticle';\r\n\r\nimport { Api } from '../utils/api/api';\r\nimport { apiConfig } from '../utils/constants';\r\n\r\nclass ArticleService extends Api {\r\n public constructor(apiConfig: AxiosRequestConfig) {\r\n super(apiConfig);\r\n\r\n this.getAllActive = this.getAllActive.bind(this);\r\n this.getAll = this.getAll.bind(this);\r\n this.fetch = this.fetch.bind(this);\r\n this.add = this.add.bind(this);\r\n this.fetchById = this.fetchById.bind(this);\r\n }\r\n\r\n public getAllActive(): Promise> {\r\n return this.get>(`article/get`)\r\n .then((result: AxiosResponse>) => {\r\n return result.data\r\n });\r\n }\r\n\r\n public getAll(): Promise> {\r\n return this.get>(`admin/article/get`)\r\n .then((result: AxiosResponse>) => {\r\n return result.data\r\n });\r\n }\r\n\r\n public fetch(articleSlug: string): Promise {\r\n return this.get(`article/get/${articleSlug}`)\r\n .then((result: AxiosResponse) => {\r\n return result.data;\r\n })\r\n }\r\n\r\n public fetchById(id: number): Promise {\r\n return this.get(`admin/article/get/${id}`)\r\n .then((result: AxiosResponse) => {\r\n return result.data;\r\n })\r\n }\r\n\r\n public add(dto: FormData): Promise {\r\n return this.post(`admin/article`, dto, {\r\n headers: {\r\n 'Content-Type': 'multipart/form-data'\r\n }\r\n }).then((result: AxiosResponse) => {\r\n return result.data\r\n });\r\n }\r\n}\r\n\r\nexport const articleApi = new ArticleService(apiConfig);","import { defineComponent as _defineComponent } from 'vue'\nimport { createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-04d21c6a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n \"aria-label\": \"breadcrumb\"\n}\nconst _hoisted_2 = { class: \"breadcrumb\" }\nconst _hoisted_3 = { class: \"breadcrumb-item\" }\n\nimport { ref } from 'vue';\r\n import { BreadcrumbItem } from '@/types/BreadcrumbItem';\r\n\r\n \nexport default /*#__PURE__*/_defineComponent({\n __name: 'Breadcrumbs',\n props: {\n items: null\n },\n setup(__props: any) {\n\nconst props = __props as {\r\n items: BreadcrumbItem[]\r\n }\n\r\n \r\n\r\n const items = ref(props.items || []);\r\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (items.value.length)\n ? (_openBlock(), _createElementBlock(\"nav\", _hoisted_1, [\n _createElementVNode(\"ol\", _hoisted_2, [\n _createElementVNode(\"li\", _hoisted_3, [\n _createVNode(_component_router_link, {\n to: \"/\",\n class: \"accent-3--link accent-3 text-decoration-none\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\"Start\")\n ]),\n _: 1\n })\n ]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(items.value.filter(x => !x.active), (item) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n class: \"breadcrumb-item\",\n key: item.path\n }, [\n _createVNode(_component_router_link, {\n to: { path: item.path.startsWith('/') ? item.path : '/' + item.path },\n class: \"accent-3--link accent-3 text-decoration-none\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(item.name), 1)\n ]),\n _: 2\n }, 1032, [\"to\"])\n ]))\n }), 128)),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(props.items.filter(x => x.active), (item) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n class: \"breadcrumb-item active\",\n \"aria-current\": \"page\",\n key: item.path\n }, _toDisplayString(item.name), 1))\n }), 128))\n ])\n ]))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./Breadcrumbs.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Breadcrumbs.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Breadcrumbs.vue?vue&type=style&index=0&id=04d21c6a&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\dev\\\\priv\\\\NGHantverk.Store\\\\NGHantverk.Store.App\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-04d21c6a\"]])\n\nexport default __exports__","import { ref, onMounted, watchEffect } from 'vue';\r\n\r\nexport function setCanonical(href: string) {\r\n const address = 'https://www.nghantverk.se' + (href.length > 0 ? `/${href}` : href);\r\n const canonical = document.querySelector('link[rel=\"canonical\"]');\r\n\r\n if (canonical) {\r\n canonical.setAttribute('href', address);\r\n } else {\r\n const metaCanonicalValue = document.createElement('link');\r\n metaCanonicalValue.setAttribute('rel', 'canonical');\r\n metaCanonicalValue.setAttribute('href', address);\r\n document.head.appendChild(metaCanonicalValue);\r\n }\r\n}\r\n\r\nexport function removeCanonical() {\r\n const canonical = document.querySelector('link[rel=\"canonical\"]');\r\n if (canonical)\r\n canonical.remove();\r\n}\r\n\r\nexport function useCanonical(href: string) {\r\n const hrefRef = ref(href);\r\n\r\n onMounted(() => {\r\n setCanonical(hrefRef.value);\r\n });\r\n\r\n watchEffect(() => {\r\n setCanonical(hrefRef.value);\r\n });\r\n\r\n return {\r\n href: hrefRef\r\n };\r\n}\r\n\r\nexport function dontUseCanonical() {\r\n removeCanonical();\r\n}","import { AxiosRequestConfig, AxiosResponse } from 'axios';\r\nimport { Api } from '../utils/api/api';\r\nimport { apiConfig } from '../utils/constants';\r\nimport { OrderDTO } from '@/types/OrderDTO';\r\n\r\nclass OrderService extends Api {\r\n public constructor(apiConfig: AxiosRequestConfig) {\r\n super(apiConfig);\r\n this.add = this.add.bind(this);\r\n }\r\n\r\n public add(dto: OrderDTO): Promise {\r\n return this.post(`Order`, dto)\r\n .then((result: AxiosResponse) => {\r\n return result.data\r\n });\r\n }\r\n}\r\n\r\nexport const orderApi = new OrderService(apiConfig);","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, createElementVNode as _createElementVNode, vModelText as _vModelText, withDirectives as _withDirectives, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withModifiers as _withModifiers, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, Fragment as _Fragment } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"row gx-4 gx-lg-5\"\n}\nconst _hoisted_2 = { class: \"row\" }\nconst _hoisted_3 = { class: \"col px-4\" }\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"div\", { class: \"col-12 mb-4\" }, [\n /*#__PURE__*/_createElementVNode(\"h1\", null, \"Beställ\")\n], -1)\nconst _hoisted_5 = { class: \"col-md-6 mt-4 mt-md-0\" }\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"h4\", null, \"Uppgifter\", -1)\nconst _hoisted_7 = [\"onSubmit\"]\nconst _hoisted_8 = { class: \"mb-3\" }\nconst _hoisted_9 = /*#__PURE__*/_createElementVNode(\"label\", {\n for: \"full-name\",\n class: \"form-label\"\n}, \"Namn\", -1)\nconst _hoisted_10 = { class: \"mb-3\" }\nconst _hoisted_11 = /*#__PURE__*/_createElementVNode(\"label\", {\n for: \"address\",\n class: \"form-label\"\n}, \"Adress\", -1)\nconst _hoisted_12 = { class: \"mb-3\" }\nconst _hoisted_13 = /*#__PURE__*/_createElementVNode(\"label\", {\n for: \"zip-code\",\n class: \"form-label\"\n}, \"Postnummer\", -1)\nconst _hoisted_14 = { class: \"mb-3\" }\nconst _hoisted_15 = /*#__PURE__*/_createElementVNode(\"label\", {\n for: \"city\",\n class: \"form-label\"\n}, \"Ort\", -1)\nconst _hoisted_16 = { class: \"mb-3\" }\nconst _hoisted_17 = /*#__PURE__*/_createElementVNode(\"label\", {\n for: \"email\",\n class: \"form-label\"\n}, \"Emailddress\", -1)\nconst _hoisted_18 = { class: \"mb-3\" }\nconst _hoisted_19 = /*#__PURE__*/_createElementVNode(\"label\", {\n for: \"swish-number\",\n class: \"form-label\"\n}, \"Telefonnummer\", -1)\nconst _hoisted_20 = /*#__PURE__*/_createElementVNode(\"div\", {\n id: \"emailHelp\",\n class: \"form-text\"\n}, \"Detta måste vara samma nummer som du Swishar ifrån.\", -1)\nconst _hoisted_21 = { class: \"mb-3 text-center\" }\nconst _hoisted_22 = { class: \"text-danger fw-bolder fw-bolder\" }\nconst _hoisted_23 = { class: \"text-danger fw-bolder fw-bolder\" }\nconst _hoisted_24 = /*#__PURE__*/_createElementVNode(\"img\", {\n src: \"/images/swish-QR-small.png\",\n alt: \"Swish QR-kod\",\n style: {\"max-height\":\"500px\"}\n}, null, -1)\nconst _hoisted_25 = /*#__PURE__*/_createElementVNode(\"button\", {\n type: \"submit\",\n class: \"btn btn-primary d-block mx-auto btn-custom-size\"\n}, \"JAG HAR SWISHAT\", -1)\nconst _hoisted_26 = { class: \"col-md-6\" }\n\nimport { useRoute, useRouter } from 'vue-router';\r\n import { onMounted, ref, computed } from 'vue';\r\n import { OrderDTO } from '@/types/OrderDTO';\r\n import { ArticleViewModel } from '@/types/ArticleViewModel';\r\n import { CategoryViewModel } from '@/types/CategoryViewModel';\r\n import { orderApi } from '@/services/order.service';\r\n import { articleApi } from '@/services/article.service';\r\n import ArticleCard from '@/components/ArticleCard.vue';\r\n import Breadcrumbs from '@/components/Breadcrumbs.vue';\r\n import Spinner from '@/components/Spinner.vue';\r\n import { useMeta } from '@/composables/meta';\r\n import { useCanonical } from '@/composables/canonical';\r\n\r\n import { useRootStore } from '@/store/root.store';\r\n \nexport default /*#__PURE__*/_defineComponent({\n __name: 'Order',\n setup(__props) {\n\r\n const rootStore = useRootStore();\r\n\r\n const router = useRouter();\r\n const route = useRoute();\r\n\r\n const vm = ref({} as OrderDTO);\r\n const article = ref({} as ArticleViewModel);\r\n const isLoading = ref(true);\r\n\r\n function createLinkToArticle() {\r\n return router.resolve({ name: `Article-${selectedCategory.value?.urlSlug}`, params: { id: article.value?.urlSlug } }).fullPath;\r\n }\r\n\r\n const breadcrumbs = computed(() => {\r\n return [\r\n {\r\n name: selectedCategory.value?.name,\r\n path: selectedCategory.value?.urlSlug,\r\n active: false\r\n },\r\n {\r\n name: article.value.modelName + ' ' + article.value.name,\r\n path: createLinkToArticle(),\r\n active: false\r\n },\r\n {\r\n name: 'Beställ',\r\n path: '',\r\n active: true\r\n }\r\n ]\r\n });\r\n\r\n const selectedCategory = computed(() => {\r\n return rootStore.categories.length\r\n ? rootStore.categories.find(x => x.id === article.value.categoryId)\r\n : {} as CategoryViewModel;\r\n });\r\n\r\n async function onSubmit() {\r\n if (window.confirm('Har du swishat?')) {\r\n try {\r\n const res = await orderApi.add({ ...vm.value, articleId: article.value.id });\r\n\r\n if (res)\r\n return router.push({ name: 'OrderConfirm' });\r\n else\r\n throw 'Något gick snett. Försök igen. Om inte det fungerar så kontakta oss';\r\n } catch (e) {\r\n alert('Något gick snett. Försök igen. Om inte det fungerar så kontakta oss');\r\n }\r\n }\r\n }\r\n\r\n onMounted(async () => {\r\n document.title = 'Laddar...';\r\n\r\n const urlSlug = route.params.slug.toString();\r\n try {\r\n const res = await articleApi.fetch(urlSlug);\r\n\r\n if (res.isSold) {\r\n alert('Tyvärr, artikeln är såld.');\r\n router.push('/');\r\n }\r\n\r\n article.value = res;\r\n\r\n useMeta(`Beställ ${res.modelName} ${res.name}`, `Här kan du beställa ${res.modelName} ${res.name}`);\r\n useCanonical(route.path.substring(1));\r\n\r\n isLoading.value = false;\r\n\r\n } catch (e) {\r\n alert('Du måste välja en artikel för att beställa.');\r\n router.push('/');\r\n }\r\n });\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n (!isLoading.value)\n ? (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createVNode(Breadcrumbs, { items: _unref(breadcrumbs) }, null, 8, [\"items\"])\n ])\n ]),\n _hoisted_4,\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(onSubmit, [\"prevent\"])\n }, [\n _createElementVNode(\"div\", _hoisted_8, [\n _hoisted_9,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n class: \"form-control\",\n id: \"full-name\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((vm.value.fullName) = $event))\n }, null, 512), [\n [_vModelText, vm.value.fullName]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _hoisted_11,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n class: \"form-control\",\n id: \"address\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((vm.value.address) = $event))\n }, null, 512), [\n [_vModelText, vm.value.address]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_12, [\n _hoisted_13,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n class: \"form-control\",\n id: \"zip-code\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((vm.value.zipCode) = $event))\n }, null, 512), [\n [_vModelText, vm.value.zipCode]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _hoisted_15,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n class: \"form-control\",\n id: \"city\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((vm.value.city) = $event))\n }, null, 512), [\n [_vModelText, vm.value.city]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_16, [\n _hoisted_17,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"email\",\n class: \"form-control\",\n id: \"email\",\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((vm.value.email) = $event))\n }, null, 512), [\n [_vModelText, vm.value.email]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_18, [\n _hoisted_19,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n class: \"form-control\",\n id: \"swish-number\",\n \"aria-describedby\": \"swish-number-help\",\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((vm.value.swishNumber) = $event))\n }, null, 512), [\n [_vModelText, vm.value.swishNumber]\n ]),\n _hoisted_20\n ]),\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"h4\", null, [\n _createTextVNode(\"Använd QR-koden eller swisha \"),\n _createElementVNode(\"span\", _hoisted_22, _toDisplayString(article.value.price) + \":-\", 1),\n _createTextVNode(\" till 070-755 47 76 (Mikael Nilsson) och \"),\n _createElementVNode(\"span\", _hoisted_23, \"skriv '\" + _toDisplayString(article.value.id) + \"' i beskrivning\", 1),\n _createTextVNode(\". När du har swishat så gå ned på sidan och tryck på 'JAG HAR SWISHAT'\")\n ]),\n _hoisted_24\n ]),\n _hoisted_25\n ], 40, _hoisted_7)\n ]),\n _createElementVNode(\"div\", _hoisted_26, [\n _createVNode(ArticleCard, { article: article.value }, null, 8, [\"article\"])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createVNode(Spinner, { spinn: isLoading.value }, null, 8, [\"spinn\"])\n ], 64))\n}\n}\n\n})","import script from \"./Order.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Order.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, resolveComponent as _resolveComponent, withCtx as _withCtx, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = [\"onClick\"]\nconst _hoisted_2 = { class: \"position-relative\" }\nconst _hoisted_3 = { key: 0 }\nconst _hoisted_4 = [\"srcset\"]\nconst _hoisted_5 = [\"src\", \"alt\"]\nconst _hoisted_6 = [\"alt\"]\nconst _hoisted_7 = {\n key: 2,\n class: \"position-absolute top-0 start-0 m-3\"\n}\nconst _hoisted_8 = {\n key: 0,\n class: \"badge bg-danger\",\n style: {\"font-size\":\"1.5rem\"}\n}\nconst _hoisted_9 = { class: \"card-body p-4\" }\nconst _hoisted_10 = { class: \"text-center\" }\nconst _hoisted_11 = { class: \"fw-bolder\" }\nconst _hoisted_12 = { key: 0 }\nconst _hoisted_13 = { key: 0 }\n\nimport { ref, computed } from 'vue';\r\n import { ArticleViewModel } from '@/types/ArticleViewModel';\r\n import { CategoryViewModel } from '@/types/CategoryViewModel';\r\n import { useRootStore } from '@/store/root.store';\r\n\r\n \nexport default /*#__PURE__*/_defineComponent({\n __name: 'ArticleCard',\n props: {\n article: null,\n heightClass: null\n },\n setup(__props: any) {\n\nconst props = __props as { article: ArticleViewModel, heightClass: string }\n\r\n const rootStore = useRootStore();\r\n\r\n \r\n const article = ref(props.article);\r\n\r\n const selectedCategory = computed(() => {\r\n return rootStore.categories.length\r\n ? rootStore.categories.find(x => x.id === article.value.categoryId)\r\n : {} as CategoryViewModel;\r\n });\r\n\r\n function getClass() {\r\n return props.heightClass;\r\n }\r\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createBlock(_component_router_link, {\n to: { name:`Article-${_unref(selectedCategory)?.urlSlug}`, params: { slug: article.value.urlSlug } },\n custom: \"\"\n }, {\n default: _withCtx(({ navigate }) => [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"card shadow\", getClass()]),\n onClick: navigate\n }, [\n _createElementVNode(\"div\", _hoisted_2, [\n (article.value.files.length)\n ? (_openBlock(), _createElementBlock(\"picture\", _hoisted_3, [\n _createElementVNode(\"source\", {\n srcset: `/images/${article.value.files[0].name}-thumbnail.webp`,\n type: \"image/webp\"\n }, null, 8, _hoisted_4),\n _createElementVNode(\"img\", {\n class: \"card-img-top\",\n src: `/images/${article.value.files[0].name}-thumbnail.jpg`,\n alt: `Bild för ${article.value.modelName} ${article.value.name}`\n }, null, 8, _hoisted_5)\n ]))\n : (_openBlock(), _createElementBlock(\"img\", {\n key: 1,\n class: \"card-img-top\",\n src: \"https://dummyimage.com/465x390/dee2e6/6c757d.jpg\",\n alt: `${article.value.name} - bild`\n }, null, 8, _hoisted_6)),\n (article.value.isSold && article.value.categoryId == 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n (article.value.isSold)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_8, \"SÅLD\"))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"h4\", _hoisted_11, [\n (_unref(selectedCategory).id === 2)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_12, _toDisplayString(article.value.modelName) + \" \", 1))\n : _createCommentVNode(\"\", true),\n _createTextVNode(_toDisplayString(article.value.name), 1)\n ]),\n (_unref(selectedCategory).id === 2)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_13, _toDisplayString(article.value.priceDisplay), 1))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ], 10, _hoisted_1)\n ]),\n _: 1\n }, 8, [\"to\"]))\n}\n}\n\n})","import script from \"./ArticleCard.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./ArticleCard.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Breadcrumbs.vue?vue&type=style&index=0&id=04d21c6a&scoped=true&lang=css\""],"sourceRoot":""}