{"version":3,"file":"chunks/24f39814a4fec4.js","mappings":"6xBAEA,IAMMA,EAAiB,CACrB,EAAG,OACH,EAAG,OACH,EAAG,OACH,EAAG,QAGgBC,EAAgB,WAOnC,SAAAA,EAAYC,EAA4BC,I,4FAAaC,CAAA,KAAAH,GACnDI,KAAKH,cAAgBI,EAAEJ,GACvBG,KAAKF,OAASA,EAEdE,KAAKE,aAAeD,EAAE,iBAAkBD,KAAKH,eAC7CG,KAAKG,WAAaF,EAAE,eAAgBD,KAAKH,eACzCG,KAAKI,MACP,C,QAsBC,O,EAtBAR,G,EAAA,EAAAS,IAAA,OAAAC,MAED,WACEN,KAAKO,QAAUN,EAAEO,QACjBR,KAAKS,kBAELT,KAAKE,aAAaQ,GAAG,QAASV,KAAKS,iBACnCT,KAAKG,WAAWO,GAAG,SAAUV,KAAKS,gBACpC,GAAC,CAAAJ,IAAA,kBAAAC,MAED,WACE,IAAMK,EAAa,gBAAgBC,KAAKC,UAAUC,WAtC3B,GACC,GAuCxBb,EAAE,mCAAmCc,MAAK,SAACC,EAAGC,GAC5C,IAAMC,EAAejB,EAAE,mCAAoCgB,GACrDE,EAAqBlB,EAAE,yCAA0CgB,GAEjEG,EAzCW,EAwCCF,EAAaG,SAAWV,EAzCjC,EA2CHW,EAAe3B,EAAeyB,GACpCD,EAAmBI,IAAI,qBAAsBH,EAAUI,YACvDN,EAAaK,IAAI,gBAAiBD,EACpC,GACF,M,oEAAC1B,CAAA,CApCkC,E","sources":["webpack:///./resources/js/components/showroom/dynamic-line-clamp.ts"],"sourcesContent":["import * as $ from \"jquery\";\n\nconst MOBILE_LINE_HEIGHT = 24;\nconst DESKTOP_LINE_HEIGHT = 28;\nconst OFFSET = 1;\nconst MAX_LINE_CLAMP = 4;\n\n// line-clamp to margin-bottom pair\nconst MARGIN_BOTTOMS = {\n 4: '34px',\n 3: '26px',\n 2: '18px',\n 1: '10px'\n};\n\nexport default class DynamicLineClamp {\n componentRoot: JQuery;\n params: any;\n submitSearch: JQuery;\n searchForm: JQuery;\n $window?: JQuery;\n\n constructor(componentRoot: HTMLElement, params: any) {\n this.componentRoot = $(componentRoot);\n this.params = params;\n\n this.submitSearch = $('#search-submit', this.componentRoot);\n this.searchForm = $('#search-form', this.componentRoot);\n this.init();\n }\n\n init() {\n this.$window = $(window);\n this.modifyLineClamp();\n\n this.submitSearch.on('click', this.modifyLineClamp);\n this.searchForm.on('submit', this.modifyLineClamp);\n }\n\n modifyLineClamp() {\n const lineHeight = /Mobi|Android/i.test(navigator.userAgent) ? MOBILE_LINE_HEIGHT : DESKTOP_LINE_HEIGHT;\n\n $(\".component--template-card__info\").each((_, infoElement) => {\n const titleElement = $(\".component--template-card__title\", infoElement);\n const descriptionElement = $(\".component--template-card__description\", infoElement);\n const lineCount = titleElement.height() / lineHeight;\n const lineClamp = MAX_LINE_CLAMP - lineCount + OFFSET;\n const marginBottom = MARGIN_BOTTOMS[lineClamp];\n descriptionElement.css(\"-webkit-line-clamp\", lineClamp.toString());\n titleElement.css(\"margin-bottom\", marginBottom);\n });\n }\n}\n"],"names":["MARGIN_BOTTOMS","DynamicLineClamp","componentRoot","params","_classCallCheck","this","$","submitSearch","searchForm","init","key","value","$window","window","modifyLineClamp","on","lineHeight","test","navigator","userAgent","each","_","infoElement","titleElement","descriptionElement","lineClamp","height","marginBottom","css","toString"],"sourceRoot":""}