PageSourceSearch

https://www.chulabook.com/_next/static/chunks/f339fe6838ea8808dba3c1b4814d29c7c7f66d0a.a02db9e83ef6d028968f.js

js chulabook.com collected 2026-10-01 11:54:29 UTC 14,305 bytes, 1 lines download raw bytes

1(window.webpackJsonp_N_E=window.webpackJsonp_N_E||[]).push([[44],{"08ds":function(e,t,o){"use strict";var r=o("ODXe"),i=o("TSYQ"),a=o.n(i),n=o("nOHt"),s=o.n(n),l=o("q1tI"),c=o.n(l),u=o("gdJV"),p=o("yzAy"),d=o("I8qh"),m=o("4JyM"),h=o("s02U"),f=c.a.createElement;t.a=Object(m.withTranslation)("mobile_card")((function(e){var t=Object(l.useContext)(u.b),o=t.user,i=(t.handleCart,t.fetchUser),n=(t.onSocket,e.t),g=e.product,v=e._class,b=void 0===v?" mr-2":v,y=e.freespace,w=function(e){return(e=parseFloat(e)).toFixed(2).replace(",",".").replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")},k=Object(l.useState)("/mobile/image/product/book.png"),L=(k[0],k[1]),O=Object(l.useState)(0),_=O[0],N=O[1];Object(l.useEffect)((function(){if(g){var e=g.picture;if(e){var t=e.split("watch?v="),o=Object(r.a)(t,2),i=(o[0],o[1]);i&&N("https://www.youtube.com/embed/"+i),L(g.picture?g.picture:"/mobile/image/product/book.png")}}}),[]);var P,x=function(e,t){if(e.preventDefault(),d.a.isLoggin()){var o=d.a.getProfile().id;p.a.addOrdeleteFav(o,{product_id:t}).then((function(e){e.data;i()})).catch((function(e){console.log(e.response)}))}else{var r=window.location.pathname;s.a.push("/login?redirect=".concat(r))}},S=function(e){if(!e.preorder_start||!e.preorder_end)return 0;var t=new Date(e.preorder_start),o=new Date(e.preorder_end),r=new Date;return r<t?1:r>o?2:e.preorder_amount?4:3};encodeURIComponent(g&&g.name.trim().replace(/\//g,"-"));return y?f(c.a.Fragment,null,f("div",{className:"card-book nonecard"+b})," "):f(m.Link,h.a.getUrlProduct(g),f("a",{className:"card-book "+b},f("div",{className:"d-flex justify-content-between mb-2 align-items-center"},f("div",{className:"d-flex align-items-center"},f("img",{alt:"\u0e28\u0e39\u0e19\u0e22\u0e4c\u0e2b\u0e19\u0e31\u0e07\u0e2a\u0e37\u0e2d\u0e08\u0e38\u0e2c\u0e32\u0e2f",src:g?"cu"!=g.seller_id?g.seller_picture:"/mobile/image/icon/icon-cu.svg":"",className:"icon-card-seller"}),f("p",{className:"text-publisher m-0 ml-2"},g?"cu"!=g.seller_id?g.shop_name:"CHULABOOK":"")),f("div",{className:"d-flex"},g&&(function(){if(!o||!g)return!1;if(0==o.favorites.length)return!1;var e=!1;return o.favorites.forEach((function(t){t.product_id==g.id&&(e=!0)})),e}()?f("img",{src:"/mobile/image/icon/icon-fav.svg",alt:"\u0e28\u0e39\u0e19\u0e22\u0e4c\u0e2b\u0e19\u0e31\u0e07\u0e2a\u0e37\u0e2d\u0e08\u0e38\u0e2c\u0e32\u0e2f",className:"float-right img-fluid my-auto size-16",onClick:function(e){x(e,g.id)}}):f("img",{src:"/mobile/image/icon/icon-unfav.svg",alt:"\u0e28\u0e39\u0e19\u0e22\u0e4c\u0e2b\u0e19\u0e31\u0e07\u0e2a\u0e37\u0e2d\u0e08\u0e38\u0e2c\u0e32\u0e2f",className:"float-right img-fluid my-auto size-16",onClick:function(e){x(e,g.id)}})))),f("div",{className:a()("book-image-area mb-2 card-img-mobile",g.preorder?4!=S(g)?"set-stock":"":g.stock&&g.stock>g.reserve_stock||"ebook"==g.type||"course"==g.type?"":"set-stock")},f("div",{className:a()("area-book",{"p-0":g.picture&&"non_book"==g.type})},(0==g.video_type||null==g.video_type)&&f(c.a.Fragment,null,g.preorder?f(c.a.Fragment,null,f("img",{className:"shadow-book",src:g.picture?g.picture:"/mobile/image/product/book.png",alt:g.name,width:104,height:144,loading:"lazy",lazyLoad:"ondemand"}),f("img",{src:"/mobile/image/pre_order.svg",className:"img-stock",alt:g.name,loading:"lazy",lazyLoad:"ondemand"})):"non_book"==g.type?f("img",{src:g.picture?g.picture:"/mobile/image/product/book.png",className:"mh-100 mw-100",alt:g.name,width:104,height:144,loading:"lazy",lazyLoad:"ondemand"}):f(c.a.Fragment,null,f("img",{className:"shadow-book",src:g.picture?g.picture:"/mobile/image/product/book.png",alt:g.name,width:104,height:144,loading:"lazy",lazyLoad:"ondemand"}),"ebook"==g.type&&f("img",{src:"/mobile/image/ebook.svg",className:"img-stock",alt:g.name,width:106,height:88.5,loading:"lazy",lazyLoad:"ondemand"}),"course"==g.type&&f("img",{src:"/mobile/image/course.svg",className:"img-stock",alt:g.name,width:106,height:88.5,loading:"lazy",lazyLoad:"ondemand"}),"course_ecode"==g.type&&f("img",{src:"/mobile/image/badge-course-ecode-small.svg",className:"img-stock img-w-e-code",alt:g.name,width:106,height:88.5,loading:"lazy",lazyLoad:"ondemand"}))),1==g.video_type&&f(c.a.Fragment,null,f("video",{controls:!0,className:"w-100 video"},f("source",{src:g.picture?g.picture:"/mobile/image/product/book.png",type:"video/mp4"}),f("source",{src:g.picture?g.picture:"/mobile/image/product/book.png",type:"video/ogg"})),g.preorder&&f("img",{src:"/mobile/image/pre_order.svg",className:"img-stock",alt:"\u0e28\u0e39\u0e19\u0e22\u0e4c\u0e2b\u0e19\u0e31\u0e07\u0e2a\u0e37\u0e2d\u0e08\u0e38\u0e2c\u0e32\u0e2f",loading:"lazy"})),2==g.video_type&&f(c.a.Fragment,null,f("iframe",{className:"mh-100 w-100 video",src:_,frameborder:"0",allow:"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"}),g.preorder&&f("img",{src:"/mobile/image/pre_order.svg",className:"img-stock",alt:"\u0e28\u0e39\u0e19\u0e22\u0e4c\u0e2b\u0e19\u0e31\u0e07\u0e2a\u0e37\u0e2d\u0e08\u0e38\u0e2c\u0e32\u0e2f",loading:"lazy"})),"Y"===g.comming?f("div",{className:"text-stock"},n("comming")):g.preorder?f(c.a.Fragment,null,4!=S(g)?0==(P=S(g))?f("div",{className:"text-stock"},n("soon")):1==P?f("div",{className:"text-stock"},n("soon")):2==P?f("div",{className:"text-stock"},n("close")):3==P?f("div",{className:"text-stock"},n("out_stock")):void 0:""):f(c.a.Fragment,null,g.stock&&g.stock>g.reserve_stock||"ebook"==g.type||"course"==g.type?"":f("div",{className:"text-stock"},n("out_stock")))),g.promotion_active||g.promotion_product_active?f("div",{className:"badge-pro"},f("img",{src:"/mobile/icon/promotion.svg"})):null),f("h3",{className:"text-name-of-book h-40px text-h3"},g.name),f("p",{className:"text-author text-h6-p "},"book"==g.type||"ebook"==g.type?"".concat(n("author")," : ").concat(g.author):""),f("p",{className:a()("text-pink font-weight-bold text-h5-p",{"text-ebook":"ebook"==g.type,"text-stationery":"non_book"==g.type,"text-course":"course"==g.type})},g.price?"\u0e3f "+w(g.price):"Free"),g.cover_price>g.price?f("p",{className:"text-disable font-weight-bold mr-2 text-h5-p"},f("s",null,f("span",null,"\u0e3f")," ",w(g.cover_price))):f("p",{className:"text-disable font-weight-bold mr-2 text-h5-p"},f("span",null,"\u0e3f")," ",w(g.cover_price))))}))},"70Rw":function(e,t,o){"use strict";var r=o("KQm4"),i=o("rePB"),a=o("q1tI"),n=o.n(a),s=(o("YFqc"),o("nOHt")),l=o.n(s),c=o("yzAy"),u=o("gdJV"),p=o("08ds"),d=o("RotF"),m=o.n(d),h=o("/aNb"),f=o.n(h),g=n.a.createElement;function v(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,r)}return o}function b(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};
1t%2?v(Object(o),!0).forEach((function(t){Object(i.a)(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):v(Object(o)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))}))}return e}t.a=function(e){Object(a.useContext)(u.b).local;var t=Object(a.useState)(),o=(t[0],t[1],Object(a.useState)()),i=o[0],s=o[1],d=Object(a.useState)(!0),h=d[0],v=d[1],y=e.news_id,w=e.page_key;console.log("news_id",y);var k=!i||i.rows.length<i.count;Object(a.useEffect)((function(){L()}),[y]);console.log("page_key",w);var L=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;v(!0);var t="promotion"==w?c.a.getProductPromotion:c.a.getNewsByID;console.log("apiAction",t),t(y,{limit:12,page:e}).then((function(e){var t,o=e.data;if(i){var a=(t=b({},i)).rows;t.rows=[].concat(Object(r.a)(a),Object(r.a)(o.rows))}else t=o;s(t),v(!1)})).catch((function(e){console.log(e.response),v(!1)}))};return g(n.a.Fragment,null,g("div",{className:"cart-nav"},g("div",{className:" text-center cart-nav-title d-flex"},g("h4",{style:{whiteSpace:"nowrap",textOverflow:"ellipsis",width:"40%",overflow:"hidden",marginLeft:"23px",marginRight:"23px"}})),g("a",{className:"btn-back cart-nav-back",onClick:function(){return l.a.back()}},g("img",{className:"img-fluid",src:"/mobile/image/icon/icon-back.svg"}))),g("div",{className:"all-card-news mt-3"},g(m.a,{pageStart:1,loadMore:function(e){L(e)},hasMore:!h&&k,initialLoad:!1},g("div",{className:"container d-flex flex-wrap justify-content-between "},i&&i.rows.map((function(e,t){return g(p.a,{product:e,show:4,_class:"my-2",key:e.id})})))),g("div",{className:"text-center mt-3",key:"loader"},g(f.a,{color:"#EE5294",loading:h}))))}},LSTS:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e,t){for(var o=0;o<t.length;o++){var r=t[o];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,o,r){return o&&e(t.prototype,o),r&&e(t,r),t}}(),i=o("q1tI"),a=s(i),n=s(o("17x9"));function s(e){return e&&e.__esModule?e:{default:e}}var l=function(e){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);var o=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,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return o.scrollListener=o.scrollListener.bind(o),o.eventListenerOptions=o.eventListenerOptions.bind(o),o.mousewheelListener=o.mousewheelListener.bind(o),o}return 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)}(t,e),r(t,[{key:"componentDidMount",value:function(){this.pageLoaded=this.props.pageStart,this.options=this.eventListenerOptions(),this.attachScrollListener()}},{key:"componentDidUpdate",value:function(){if(this.props.isReverse&&this.loadMore){var e=this.getParentElement(this.scrollComponent);e.scrollTop=e.scrollHeight-this.beforeScrollHeight+this.beforeScrollTop,this.loadMore=!1}this.attachScrollListener()}},{key:"componentWillUnmount",value:function(){this.detachScrollListener(),this.detachMousewheelListener()}},{key:"isPassiveSupported",value:function(){var e=!1,t={get passive(){e=!0}};try{document.addEventListener("test",null,t),document.removeEventListener("test",null,t)}catch(o){}return e}},{key:"eventListenerOptions",value:function(){var e=this.props.useCapture;return this.isPassiveSupported()&&(e={useCapture:this.props.useCapture,passive:!0}),e}},{key:"setDefaultLoader",value:function(e){this.defaultLoader=e}},{key:"detachMousewheelListener",value:function(){var e=window;!1===this.props.useWindow&&(e=this.scrollComponent.parentNode),e.removeEventListener("mousewheel",this.mousewheelListener,this.options?this.options:this.props.useCapture)}},{key:"detachScrollListener",value:function(){var e=window;!1===this.props.useWindow&&(e=this.getParentElement(this.scrollComponent)),e.removeEventListener("scroll",this.scrollListener,this.options?this.options:this.props.useCapture),e.removeEventListener("resize",this.scrollListener,this.options?this.options:this.props.useCapture)}},{key:"getParentElement",value:function(e){var t=this.props.getScrollParent&&this.props.getScrollParent();return null!=t?t:e&&e.parentNode}},{key:"filterProps",value:function(e){return e}},{key:"attachScrollListener",value:function(){var e=this.getParentElement(this.scrollComponent);if(this.props.hasMore&&e){var t=window;!1===this.props.useWindow&&(t=e),t.addEventListener("mousewheel",this.mousewheelListener,this.options?this.options:this.props.useCapture),t.addEventListener("scroll",this.scrollListener,this.options?this.options:this.props.useCapture),t.addEventListener("resize",this.scrollListener,this.options?this.options:this.props.useCapture),this.props.initialLoad&&this.scrollListener()}}},{key:"mousewheelListener",value:function(e){1!==e.deltaY||this.isPassiveSupported()||e.preventDefault()}},{key:"scrollListener",value:function(){var e=this.scrollComponent,t=window,o=this.getParentElement(e),r=void 0;if(this.props.useWindow){var i=document.documentElement||document.body.parentNode||document.body,a=void 0!==t.pageYOffset?t.pageYOffset:i.scrollTop;r=this.props.isReverse?a:this.calculateOffset(e,a)}else r=this.props.isReverse?o.scrollTop:e.scrollHeight-o.scrollTop-o.clientHeight;r<Number(this.props.threshold)&&e&&null!==e.offsetParent&&(this.detachScrollListener(),this.beforeScrollHeight=o.scrollHeight,this.beforeScrollTop=o.scrollTop,"function"===typeof this.props.loadMore&&(this.props.loadMore(this.pageLoaded+=1),this.loadMore=!0))}},{key:"calculateOffset",value:function(e,t){return e?this.calculateTopPosition(e)+(e.offsetHeight-t-window.innerHeight):0}},{key:"calculateTopPosition",value:function(e){return e?e.offsetTop+this.calculateTopPosition(e.offsetParent):0}},{key:"render",value:function(){var e=this,t=this.filterProps(this.props),o=t.children,r=t.element,i=t.hasMore,n=(t.initialLoad,t.isReverse),s=t.loader,l=(t.loadMore,t.pageStart,t.ref),c=(t.threshold,t.useCapture,t.useWindow,t.getScrollParent,function(e,t){var o={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(o[r]=e[r]);return o}(t,["children","element","hasMore","initialLoad","isReverse","loader","loadMore","pageStart","ref","threshold","useCapture","useWindow","getScrollParent"]));
1c.ref=function(t){e.scrollComponent=t,l&&l(t)};var u=[o];return i&&(s?n?u.unshift(s):u.push(s):this.defaultLoader&&(n?u.unshift(this.defaultLoader):u.push(this.defaultLoader))),a.default.createElement(r,c,u)}}]),t}(i.Component);l.propTypes={children:n.default.node.isRequired,element:n.default.node,hasMore:n.default.bool,initialLoad:n.default.bool,isReverse:n.default.bool,loader:n.default.node,loadMore:n.default.func.isRequired,pageStart:n.default.number,ref:n.default.func,getScrollParent:n.default.func,threshold:n.default.number,useCapture:n.default.bool,useWindow:n.default.bool},l.defaultProps={element:"div",hasMore:!1,initialLoad:!0,pageStart:0,ref:null,threshold:250,useWindow:!0,isReverse:!1,useCapture:!1,loader:null,getScrollParent:null},t.default=l,e.exports=t.default},RotF:function(e,t,o){e.exports=o("LSTS")}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.