plcc-table
Version:
Plcc table element for PatternFly Elements
3 lines (2 loc) • 22.4 kB
JavaScript
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("../../@patternfly/pfelement/dist/pfelement.umd"),require("../../@patternfly/pfe-progress-indicator/dist/pfe-progress-indicator.umd"),require("../../@patternfly/pfe-datetime/dist/pfe-datetime.umd")):"function"==typeof define&&define.amd?define(["../../@patternfly/pfelement/dist/pfelement.umd","../../@patternfly/pfe-progress-indicator/dist/pfe-progress-indicator.umd","../../@patternfly/pfe-datetime/dist/pfe-datetime.umd"],t):e.PlccTable=t(e.PFElement)}(this,function(e){"use strict";e=e&&e.hasOwnProperty("default")?e.default:e;var t=function(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),e};function i(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var n=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(a,e),t(a,[{key:"html",get:function(){return'<style>.product-lifecycle-info__table thead,.sr-only{position:absolute;overflow:hidden;clip:rect(0,0,0,0);height:1px;width:1px;margin:-1px;padding:0;border:0}:host{display:block}:host([hidden]){display:none}:host([loading]) article{display:none}article{display:block;font-size:16px;line-height:1.5;color:#151515}#loading{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;min-height:100px}#loading.loading{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.u-no-break{white-space:nowrap}*{-webkit-box-sizing:border-box;box-sizing:border-box}.icon-close{position:relative;width:1.5em;height:1.5em;margin:0;padding:0;border:0;font-size:2rem;background:0 0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.icon-close__inner1{position:absolute;top:50%;left:50%;width:0;height:0;font-size:4rem;-webkit-transform:translate(-50%,-50%) scale(.125);transform:translate(-50%,-50%) scale(.125)}.icon-close__inner1:after,.icon-close__inner1:before{content:"";position:absolute;top:0;left:0;display:block;width:.3em;height:2em;background:#000}.icon-close:focus .icon-close__inner1:after,.icon-close:focus .icon-close__inner1:before,.icon-close:hover .icon-close__inner1:after,.icon-close:hover .icon-close__inner1:before{background:#06c}.icon-close__inner1:before{-webkit-transform:translate(-50%,-50%) rotate(-45deg);transform:translate(-50%,-50%) rotate(-45deg)}.icon-close__inner1:after{-webkit-transform:translate(-50%,-50%) rotate(45deg);transform:translate(-50%,-50%) rotate(45deg)}article{font-size:1rem;line-height:1.5;color:#151515}.product-lifecycle__wrapper{position:relative}.product-lifecycle__wrapper--listing{border:1px solid #d2d2d2}.product-lifecycle__header{padding:1.125rem}@media (min-width:650px){.product-lifecycle__header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-webkit-align-items:baseline;-ms-flex-align:baseline;align-items:baseline;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:1rem}}.product-lifecycle__header--more-info{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media (min-width:1080px){.product-lifecycle__header--more-info{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.product-lifecycle__header--more-info>*{margin-bottom:.5em}@media (min-width:1080px){.product-lifecycle__header--more-info>*{margin-right:1.5rem}}.product-lifecycle__header--more-info>:last-child{margin-right:0}.product-lifecycle-info__product-name{font-size:1.25em;font-weight:400;width:100%}.product-lifecycle__header--less-info .product-lifecycle-info__product-name{margin-right:auto;width:auto}.product-lifecycle-info__detailed-info{margin-right:auto}.product-lifecycle__header--more-info .product-lifecycle-info__detailed-info{margin-bottom:1em}[type=checkbox]{margin-right:.25em}.product-lifecycle__close{position:absolute;top:0;right:0;cursor:pointer}table{min-width:100%;border:0}@media (min-width:650px){table{position:relative;margin-left:0;margin-right:0}}.product-lifecycle-info__table-headers{position:-webkit-sticky;position:sticky;top:0;z-index:999;display:none;background:#fff}@media (min-width:1000px){.product-lifecycle-info__table-headers{display:table}}.product-lifecycle-info__table{border-top:0}caption,td,th{padding:1.125rem;border:0;text-align:left}caption *,td *,th *{margin:0;padding:0}th{font-weight:700;vertical-align:bottom}@media (min-width:1000px){td:nth-last-child(2):first-child~td,td:nth-last-child(2):first-child~th,th:nth-last-child(2):first-child~td,th:nth-last-child(2):first-child~th{width:50%}}@media (min-width:1000px){td:nth-last-child(3):first-child~td,td:nth-last-child(3):first-child~th,th:nth-last-child(3):first-child~td,th:nth-last-child(3):first-child~th{width:33.33333%}}@media (min-width:1000px){td:nth-last-child(4):first-child~td,td:nth-last-child(4):first-child~th,th:nth-last-child(4):first-child~td,th:nth-last-child(4):first-child~th{width:25%}}@media (min-width:1000px){td:nth-last-child(5):first-child~td,td:nth-last-child(5):first-child~th,th:nth-last-child(5):first-child~td,th:nth-last-child(5):first-child~th{width:20%}}@media (min-width:1000px){td:nth-last-child(6):first-child~td,td:nth-last-child(6):first-child~th,th:nth-last-child(6):first-child~td,th:nth-last-child(6):first-child~th{width:16.66667%}}@media (min-width:1000px){td:nth-last-child(7):first-child~td,td:nth-last-child(7):first-child~th,th:nth-last-child(7):first-child~td,th:nth-last-child(7):first-child~th{width:14.28571%}}@media (min-width:1000px){td:nth-last-child(8):first-child~td,td:nth-last-child(8):first-child~th,th:nth-last-child(8):first-child~td,th:nth-last-child(8):first-child~th{width:12.5%}}@media (min-width:1000px){td:nth-last-child(9):first-child~td,td:nth-last-child(9):first-child~th,th:nth-last-child(9):first-child~td,th:nth-last-child(9):first-child~th{width:11.11111%}}th{margin-top:1rem;border-top:4px solid #d2d2d2;border-bottom:1px solid #d2d2d2}tbody tr:first-child th{border-top:0;margin-top:0}@media (min-width:1000px){th{margin-top:0;border-top:0}}th[scope=row]{font-weight:inherit}td{padding:.5rem 1.125rem;border:0}@media (min-width:1000px){td{border-bottom:1px solid #d2d2d2}}@media (min-width:1000px){td,th{padding:1rem}}caption{padding:16px 24px;border-bottom:3px solid #d2d2d2}.responsive-table--row-strategy thead{display:none}@media (min-width:1000px){.responsive-table--row-strategy thead{display:table-header-group}}.responsive-table--row-strategy td,.responsive-table--row-strategy th{display:block}@media (min-width:1000px){.responsive-table--row-strategy td,.responsive-table--row-strategy th{display:table-cell}}.responsive-table--row-strategy td:before,.responsive-table--row-strategy th:before{content:attr(data-label) ": ";font-weight:700}@media (min-width:1000px){.responsive-table--row-strategy td:before,.responsive-table--row-strategy th:before{content:none}}.responsive-table--column-strategy{display:none}@media (min-width:1000px){.responsive-table--column-strategy{display:table}}@media (min-width:1000px){.responsive-table__wrapper--column-strategy .responsive-table__mobile-alternative{display:none}}.responsive-table__wrapper--scroll-strategy{overflow-x:auto}@media (min-width:1000px){.responsive-table__wrapper--scroll-strategy{overflow:hidden}}:host([pfe-c-style=compact]) .lifecycle-table__product-name,:host([pfe-c-style=compact]) table{font-size:.875rem;line-height:1.5}:host([pfe-c-style=compact]) .product-lifecycle-info__table-headers{border:0}:host([pfe-c-style=compact]) caption,:host([pfe-c-style=compact]) td,:host([pfe-c-style=compact]) th{padding:.57143em}:host([pfe-c-style=compact]) caption:first-child,:host([pfe-c-style=compact]) td:first-child,:host([pfe-c-style=compact]) th:first-child{padding-left:1.14286em}:host([pfe-c-style=compact]) caption:last-child,:host([pfe-c-style=compact]) td:last-child,:host([pfe-c-style=compact]) th:last-child{padding-right:1.14286em}:host([pfe-c-style=compact]) th{border-top-width:2px;padding-top:.85714em}:host([pfe-c-style=compact]) caption{padding-top:1.14286em;border-bottom-width:1px}\n/*# sourceMappingURL=plcc-table.min.css.map */\n</style><div id="loading" hidden>\n <pfe-progress-indicator></pfe-progress-indicator>\n</div>\n<article class="product-lifecycle__wrapper" id="product-lifecycle__wrapper--listing">\n <button class="product-lifecycle__close icon-close application" id="close-btn" aria-label="Closes Red Hat OpenStack Platform Table" hidden>\n <div class="icon-close__inner1"></div>\n </button>\n <h2 class="product-lifecycle-info__product-name sr-only"></h2>\n\n <table border="0" cellspacing="0" cellpadding="0" class="product-lifecycle-info__table-headers" aria-hidden>\n <thead>\n <tr class="product-phases"></tr>\n </thead>\n </table>\n\n <table id="product-lifecycle-full-support" border="0" cellspacing="0" cellpadding="0" class="product-lifecycle-info__table product-lifecycle-info__table--supported responsive-table responsive-table--row-strategy">\n <caption>\n <h3 class="lifecycle-table__product-name">\n Full support <span class="sr-only"></span>\n </h3>\n </caption>\n <thead>\n <tr class="product-phases"></tr>\n </thead>\n <tbody></tbody>\n </table>\n\n <table id="product-lifecycle-maintenance-support" border="0" cellspacing="0" cellpadding="0" class="product-lifecycle-info__table product-lifecycle-info__table--purgatory responsive-table responsive-table--row-strategy">\n <caption>\n <h3 class="lifecycle-table__product-name">\n Maintenance support <span class="sr-only"></span>\n </h3>\n </caption>\n <thead>\n <tr class="product-phases"></tr>\n </thead>\n <tbody></tbody>\n </table>\n\n <table id="product-lifecycle-extended-support" border="0" cellspacing="0" cellpadding="0" class="product-lifecycle-info__table product-lifecycle-info__table--purgatory responsive-table responsive-table--row-strategy">\n <caption>\n <h3 class="lifecycle-table__product-name">\n Extended support <span class="sr-only"></span>\n </h3>\n </caption>\n <thead>\n <tr class="product-phases"></tr>\n </thead>\n <tbody></tbody>\n </table>\n <table id="product-lifecycle-end-of-maintenance" border="0" cellspacing="0" cellpadding="0" class="product-lifecycle-info__table product-lifecycle-info__table--unsupported responsive-table responsive-table--row-strategy ">\n <caption>\n <h3 class="lifecycle-table__product-name">\n End of maintenance <span class="sr-only"></span>\n </h3>\n </caption>\n <thead>\n <tr class="product-phases"></tr>\n </thead>\n <tbody></tbody>\n </table>\n\n <table id="product-lifecycle-end-of-life" border="0" cellspacing="0" cellpadding="0" class="product-lifecycle-info__table product-lifecycle-info__table--unsupported responsive-table responsive-table--row-strategy ">\n <caption>\n <h3 class="lifecycle-table__product-name">\n End of life <span class="sr-only"></span>\n </h3>\n </caption>\n <thead>\n <tr class="product-phases"></tr>\n </thead>\n <tbody></tbody>\n </table>\n <table id="product-lifecycle-uncategorized" border="0" cellspacing="0" cellpadding="0" class="product-lifecycle-info__table product-lifecycle-info__table--uncatagorized responsive-table responsive-table--row-strategy ">\n <caption>\n <h3 class="lifecycle-table__product-name">\n Uncategorized <span class="sr-only"></span>\n </h3>\n </caption>\n <thead>\n <tr class="product-phases"></tr>\n </thead>\n <tbody></tbody>\n </table>\n</article>'}},{key:"schemaUrl",get:function(){return"plcc-table.json"}},{key:"templateUrl",get:function(){return"plcc-table.html"}},{key:"styleUrl",get:function(){return"plcc-table.scss"}},{key:"productName",get:function(){return this.getAttribute("product-name")}},{key:"hideEOL",get:function(){return this.getAttribute("hide-eol")}},{key:"loading",get:function(){return this.hasAttribute("loading")},set:function(e){e?(this._loadingIndicator.removeAttribute("hidden"),this._loadingIndicator.classList.add("loading"),this.setAttribute("loading",!0)):(this._loadingIndicator.setAttribute("hidden",!0),this._loadingIndicator.classList.remove("loading"),this.removeAttribute("loading"))}},{key:"tableData",get:function(){return this._data},set:function(e){if(e){this.loading=!0,this._data=e;var t=this._getDisplayHeaders(this._data),n=this._getHeaders(this._data);this._construct(this._data,t,n),this.loading=!1}}}],[{key:"version",get:function(){return"0.0.14"}},{key:"properties",get:function(){return{}}},{key:"slots",get:function(){return{default:{title:"Default slot",type:"array",namedSlot:!1,items:{oneOf:[{$ref:"raw"}]}}}}},{key:"tag",get:function(){return"plcc-table"}},{key:"events",get:function(){return{close:this.tag+":close"}}},{key:"observedAttributes",get:function(){return["product-name","hide-eol"]}},{key:"PfeType",get:function(){return e.PfeTypes.Component}}]),t(a,[{key:"disconnectedCallback",value:function(){this._closeBtn.removeEventListener("click",this._handleBtnClick)}},{key:"attributeChangedCallback",value:function(e,t,n){var i=this;(function e(t,n,i){null===t&&(t=Function.prototype);var a=Object.getOwnPropertyDescriptor(t,n);if(void 0===a){var o=Object.getPrototypeOf(t);return null===o?void 0:e(o,n,i)}if("value"in a)return a.value;var l=a.get;return void 0!==l?l.call(i):void 0})(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"attributeChangedCallback",this).call(this,e,t,n),"product-name"===e&&this._requestProduct(n).then(function(e){i.tableData=e}).catch(function(e){console.error(e)}),"hide-eol"===e&&this._handleHideEOL(this.hasAttribute("hide-eol"))}},{key:"_requestProduct",value:function(i){var a=this;return this.loading=!0,new Promise(function(e,t){var n=new XMLHttpRequest;n.open("GET","https://access.redhat.com/product-life-cycles/api/v1/products?name="+i),n.responseType="json",n.onload=function(){(400<=n.status?t:e)(n.response),a.loading=!1},n.onerror=function(e){t(e,"Something went wrong."),a.loading=!1},n.send()})}},{key:"_getDisplayHeaders",value:function(e){var t=[];return e.data[0].all_phases.forEach(function(e){t.push(e.display_name)}),t}},{key:"_getHeaders",value:function(e){var t=[];return e.data[0].all_phases.forEach(function(e){t.push(e.name)}),t}},{key:"_construct",value:function(t,e,d){var c=this,s="",p="",h="",f="",u="",b="",n='<th scope="col">Version</th>',i=t.data[0].versions,m=t.data[0].show_last_minor_release;this.shadowRoot.querySelector(".product-lifecycle-info__product-name").innerText=t.data[0].name,this.shadowRoot.querySelectorAll(".sr-only").forEach(function(e){return e.innerText=""+t.data[0].name}),e.forEach(function(e){n+='<th scope="col">'+e+"</th>"}),m&&(n+='<th scope="col">Last minor release</th>'),i.forEach(function(e,t){var n="",i="",a="",o="",l="",r="";"Full Support"===e.type&&(c._fullSupport=!0,n='\n <tr>\n <th scope="row" data-label="Version">'+e.name+"</th>\n "+e.phases.map(function(e){return d.includes(e.name)?'<td data-label="'+e.name+'">'+c._parseDate(e.date,e.date_format)+"</td>":'<td data-label="'+e.name+'">N/A</td>'}).join("")+"\n "+(m?null!==e.last_minor_release?'<td data-label="Last minor release">'+e.last_minor_release+"</td>":'<td data-label="Last minor release">N/A</td>':"")+"\n </tr>\n "),"Maintenance Support"===e.type&&(c._maintenanceSupport=!0,i='\n <tr>\n <th scope="row" data-label="Version">'+e.name+"</th>\n "+e.phases.map(function(e){return d.includes(e.name)?'<td data-label="'+e.name+'">'+c._parseDate(e.date,e.date_format)+"</td>":'<td data-label="'+e.name+'">N/A</td>'}).join("")+"\n "+(m?null!==e.last_minor_release?'<td data-label="Last minor release">'+e.last_minor_release+"</td>":'<td data-label="Last minor release">N/A</td>':"")+"\n </tr>\n "),"Extended Support"===e.type&&(c._extendedSupport=!0,a='\n <tr>\n <th scope="row" data-label="Version">'+e.name+"</th>\n "+e.phases.map(function(e){return d.includes(e.name)?'<td data-label="'+e.name+'">'+c._parseDate(e.date,e.date_format)+"</td>":'<td data-label="'+e.name+'">N/A</td>'}).join("")+"\n "+(m?null!==e.last_minor_release?'<td data-label="Last minor release">'+e.last_minor_release+"</td>":'<td data-label="Last minor release">N/A</td>':"")+"\n </tr>\n "),"End of Maintenance"===e.type&&(c._endOfMaintenance=!0,l='\n <tr>\n <th scope="row" data-label="Version">'+e.name+"</th>\n "+e.phases.map(function(e){return d.includes(e.name)?'<td data-label="'+e.name+'">'+c._parseDate(e.date,e.date_format)+"</td>":'<td data-label="'+e.name+'">N/A</td>'}).join("")+"\n "+(m?null!==e.last_minor_release?'<td data-label="Last minor release">'+e.last_minor_release+"</td>":'<td data-label="Last minor release">N/A</td>':"")+"\n </tr>\n "),"End of life"===e.type&&(c._endOfLife=!0,o='\n <tr>\n <th scope="row" data-label="Version">'+e.name+"</th>\n "+e.phases.map(function(e){return d.includes(e.name)?'<td data-label="'+e.name+'">'+c._parseDate(e.date,e.date_format)+"</td>":'<td data-label="'+e.name+'">N/A</td>'}).join("")+"\n "+(m?null!==e.last_minor_release?'<td data-label="Last minor release">'+e.last_minor_release+"</td>":'<td data-label="Last minor release">N/A</td>':"")+"\n </tr>\n "),""!==e.type&&null!==e.type||(c._uncategorized=!0,r='\n <tr>\n <th scope="row" data-label="Version">'+e.name+"</th>\n "+e.phases.map(function(e){return d.includes(e.name)?'<td data-label="'+e.name+'">'+c._parseDate(e.date,e.date_format)+"</td>":'<td data-label="'+e.name+'">N/A</td>'}).join("")+"\n "+(m?null!==e.last_minor_release?'<td data-label="Last minor release">'+e.last_minor_release+"</td>":'<td data-label="Last minor release">N/A</td>':"")+"\n </tr>\n "),s+=n,p+=i,h+=a,f+=o,u+=l,b+=r}),this._fullSupport?this._fullSupportTable.removeAttribute("hidden"):this._fullSupportTable.setAttribute("hidden",!0),this._maintenanceSupport?this._maintenanceSupportTable.removeAttribute("hidden"):this._maintenanceSupportTable.setAttribute("hidden",!0),this._extendedSupport?this._extendedSupportTable.removeAttribute("hidden"):this._extendedSupportTable.setAttribute("hidden",!0),this._endOfMaintenance?this._endOfMaintenanceTable.removeAttribute("hidden"):this._endOfMaintenanceTable.setAttribute("hidden",!0),(!this._endOfLife||this._endOfLife&&this._plccApplication)&&this._endOfLifeTable.setAttribute("hidden",!0),this._uncategorized?this._uncategorizedTable.removeAttribute("hidden"):this._uncategorizedTable.setAttribute("hidden",!0),this._phaseRow.forEach(function(e){e.innerHTML=n}),this._fullSupportBody.innerHTML=s,this._maintenanceSupportBody.innerHTML=p,this._extendedSupportBody.innerHTML=h,this._endOfLifeBody.innerHTML=f,this._endOfMaintenanceBody.innerHTML=u,this._uncategorizedBody.innerHTML=b}},{key:"_parseDate",value:function(e,t){return"string"===t?e:"<pfe-datetime datetime="+e+' day="numeric" month="long" year="numeric" time-zone="UTC"></pfe-datetime>'}},{key:"_handleHideEOL",value:function(e){e?this._endOfLifeTable.setAttribute("hidden",!0):this._endOfLifeTable.removeAttribute("hidden")}},{key:"_handleBtnClick",value:function(){this.emitEvent(a.events.close)}}]),a);function a(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a);var e=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(a.__proto__||Object.getPrototypeOf(a)).call(this,a,{type:a.PfeType}));return e._handleBtnClick=e._handleBtnClick.bind(e),e._data=null,e._fullSupport=!1,e._maintenanceSupport=!1,e._extendedSupport=!1,e._uncategorized=!1,e._endOfMaintenance=!1,e._endOfLife=!1,e._plccApplication=!1,e._article=e.shadowRoot.querySelector("article"),e._header=e.shadowRoot.querySelector("header"),e._links=e.shadowRoot.querySelectorAll("a"),e._appMarkup=e.shadowRoot.querySelectorAll(".application"),e._fullSupportTable=e.shadowRoot.querySelector("#product-lifecycle-full-support"),e._maintenanceSupportTable=e.shadowRoot.querySelector("#product-lifecycle-maintenance-support"),e._extendedSupportTable=e.shadowRoot.querySelector("#product-lifecycle-extended-support"),e._endOfMaintenanceTable=e.shadowRoot.querySelector("#product-lifecycle-end-of-maintenance"),e._endOfLifeTable=e.shadowRoot.querySelector("#product-lifecycle-end-of-life"),e._uncategorizedTable=e.shadowRoot.querySelector("#product-lifecycle-uncategorized"),e._fullSupportBody=e.shadowRoot.querySelector("#product-lifecycle-full-support tbody"),e._maintenanceSupportBody=e.shadowRoot.querySelector("#product-lifecycle-maintenance-support tbody"),e._extendedSupportBody=e.shadowRoot.querySelector("#product-lifecycle-extended-support tbody"),e._endOfMaintenanceBody=e.shadowRoot.querySelector("#product-lifecycle-end-of-maintenance tbody"),e._endOfLifeBody=e.shadowRoot.querySelector("#product-lifecycle-end-of-life tbody"),e._uncategorizedBody=e.shadowRoot.querySelector("#product-lifecycle-uncategorized tbody"),e._caption=e.shadowRoot.querySelector("caption"),e._phaseRow=e.shadowRoot.querySelectorAll(".product-phases"),e._versionToggleRow=e.shadowRoot.querySelectorAll("version-toggle-row"),e._versionToggle=e.shadowRoot.querySelector("#unsupported-versions"),e._closeBtn=e.shadowRoot.querySelector("#close-btn"),e._loadingIndicator=e.shadowRoot.querySelector("#loading"),e.loading=!1,e}return e.create(n),n});
//# sourceMappingURL=plcc-table.umd.min.js.map