@airhang/vue-book-reader 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -67,8 +67,8 @@ if (typeof window !== 'undefined') {
67
67
  // Indicate to webpack that this file can be concatenated
68
68
  /* harmony default export */ var setPublicPath = (null);
69
69
 
70
- ;// ./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/BookReader.vue?vue&type=template&id=eaca7004&scoped=true
71
- var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:"photo-album-container",style:({ transform: `scale(${_vm.zoomScale}) translate(${_vm.translateX}px, ${_vm.translateY}px)` }),on:{"touchstart":_vm.onContainerTouchStart,"touchmove":_vm.onContainerTouchMove,"touchend":_vm.onContainerTouchEnd,"dblclick":_vm.onContainerDoubleClick,"click":_vm.onContentClick}},[( false)?0:_vm._e(),(_vm.contentReady)?_c('div',{staticClass:"flipbook-wrapper",on:{"dblclick":_vm.onFlipbookDoubleClick,"!touchstart":function($event){return _vm.onFlipbookTouchStart.apply(null, arguments)},"!touchend":function($event){return _vm.onFlipbookTouchEnd.apply(null, arguments)}}},[(_vm.flipMode === 'flip' && _vm.flag)?_c('flipbook',{ref:"flipbook",class:['flipbook', _vm.isMobile ? 'mobile-mode mobile-optimized' : 'desktop-mode desktop-optimized'],attrs:{"pages":_vm.pages,"pagesHiRes":_vm.pagesHiRes,"startPage":_vm.startPage,"zooms":null,"ambient-light":0.6,"gloss":0.4,"single-page":_vm.isMobile,"click-to-flip":false,"wheel-to-flip":!_vm.isMobile,"swipe-to-flip":true,"center-pages":true},on:{"flip-left-end":_vm.onFlipLeftEnd,"flip-right-end":_vm.onFlipRightEnd},scopedSlots:_vm._u([{key:"default",fn:function({ page, canFlipLeft, canFlipRight }){return undefined}}],null,false,2449366912)}):(_vm.flipMode === 'slide')?_c('div',{ref:"slideViewer",class:['slide-viewer', _vm.isMobile ? 'mobile-mode mobile-optimized' : 'desktop-mode desktop-optimized'],on:{"touchstart":_vm.onSlideViewerTouchStart,"touchmove":_vm.onSlideViewerTouchMove,"touchend":_vm.onSlideViewerTouchEnd}},[_c('div',{staticClass:"slide-container",style:(_vm.slideContainerStyle)},_vm._l((_vm.pages),function(page,index){return _c('div',{key:index,staticClass:"slide-page",class:{ 'slide-page-active': index + 1 === _vm.currentPage }},[(page)?_c('img',{staticClass:"slide-page-image",attrs:{"src":page,"alt":""}}):_c('div',{staticClass:"slide-page-placeholder"},[_vm._v("封面/封底")])])}),0)]):(_vm.flipMode === 'fade')?_c('div',{ref:"fadeViewer",class:['fade-viewer', _vm.isMobile ? 'mobile-mode mobile-optimized' : 'desktop-mode desktop-optimized']},[_c('transition',{attrs:{"name":"fade-page","mode":"out-in"}},[_c('div',{key:_vm.currentPage,staticClass:"fade-page-container"},[(_vm.pages[_vm.currentPage - 1])?_c('img',{staticClass:"fade-page-image",attrs:{"src":_vm.pages[_vm.currentPage - 1],"alt":""}}):_c('div',{staticClass:"fade-page-placeholder"},[_vm._v("封面/封底")])])])],1):(_vm.flipMode === 'scroll')?_c('div',{ref:"scrollViewer",class:['scroll-viewer', _vm.isMobile ? 'mobile-mode mobile-optimized' : 'desktop-mode desktop-optimized'],on:{"scroll":_vm.onScrollViewerScroll}},[_c('div',{staticClass:"scroll-container"},_vm._l((_vm.pages),function(page,index){return _c('div',{key:index,ref:'scrollPage' + index,refInFor:true,staticClass:"scroll-page"},[(page)?_c('img',{staticClass:"scroll-page-image",attrs:{"src":page,"alt":""}}):_c('div',{staticClass:"scroll-page-placeholder"},[_vm._v("封面/封底")])])}),0)]):(_vm.flipMode === 'clip')?_c('div',{ref:"clipViewer",class:['clip-viewer', _vm.isMobile ? 'mobile-mode mobile-optimized' : 'desktop-mode desktop-optimized']},[_c('div',{staticClass:"clip-pages-wrapper"},[_c('transition',{attrs:{"name":"clip-current"}},[_c('div',{key:'current-' + _vm.currentPage,staticClass:"clip-page clip-page-current"},[(_vm.pages[_vm.currentPage - 1])?_c('img',{staticClass:"clip-page-image",attrs:{"src":_vm.pages[_vm.currentPage - 1],"alt":""}}):_c('div',{staticClass:"clip-page-placeholder"},[_vm._v("封面/封底")])])]),(_vm.currentPage < _vm.totalPages)?_c('div',{staticClass:"clip-page clip-page-next"},[(_vm.pages[_vm.currentPage])?_c('img',{staticClass:"clip-page-image",attrs:{"src":_vm.pages[_vm.currentPage],"alt":""}}):_c('div',{staticClass:"clip-page-placeholder"},[_vm._v("封面/封底")])]):_vm._e()],1)]):(_vm.flipMode === 'card')?_c('div',{ref:"cardViewer",class:['card-viewer', _vm.isMobile ? 'mobile-mode mobile-optimized' : 'desktop-mode desktop-optimized']},[_c('div',{staticClass:"card-stack"},[_c('transition-group',{staticClass:"card-transition-group",attrs:{"name":"card-flip","tag":"div"}},_vm._l((_vm.visibleCards),function(page,index){return _c('div',{key:'card-' + page.originalIndex,staticClass:"card-item",class:{
70
+ ;// ./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/BookReader.vue?vue&type=template&id=4702ca70&scoped=true
71
+ var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:"photo-album-container",on:{"touchstart":_vm.onContainerTouchStart,"touchmove":_vm.onContainerTouchMove,"touchend":_vm.onContainerTouchEnd,"dblclick":_vm.onContainerDoubleClick,"click":_vm.onContentClick}},[( false)?0:_vm._e(),(_vm.contentReady)?_c('div',{staticClass:"flipbook-wrapper",style:({ transform: `scale(${_vm.zoomScale}) translate(${_vm.translateX}px, ${_vm.translateY}px)` }),on:{"dblclick":_vm.onFlipbookDoubleClick,"!touchstart":function($event){return _vm.onFlipbookTouchStart.apply(null, arguments)},"!touchend":function($event){return _vm.onFlipbookTouchEnd.apply(null, arguments)}}},[(_vm.flipMode === 'flip' && _vm.flag)?_c('flipbook',{ref:"flipbook",class:['flipbook', _vm.isMobile ? 'mobile-mode mobile-optimized' : 'desktop-mode desktop-optimized'],attrs:{"pages":_vm.pages,"pagesHiRes":_vm.pagesHiRes,"startPage":_vm.startPage,"zooms":null,"ambient-light":0.6,"gloss":0.4,"single-page":_vm.isMobile,"click-to-flip":false,"wheel-to-flip":!_vm.isMobile,"swipe-to-flip":true,"center-pages":true},on:{"flip-left-end":_vm.onFlipLeftEnd,"flip-right-end":_vm.onFlipRightEnd},scopedSlots:_vm._u([{key:"default",fn:function({ page, canFlipLeft, canFlipRight }){return undefined}}],null,false,2449366912)}):(_vm.flipMode === 'slide')?_c('div',{ref:"slideViewer",class:['slide-viewer', _vm.isMobile ? 'mobile-mode mobile-optimized' : 'desktop-mode desktop-optimized'],on:{"touchstart":_vm.onSlideViewerTouchStart,"touchmove":_vm.onSlideViewerTouchMove,"touchend":_vm.onSlideViewerTouchEnd}},[_c('div',{staticClass:"slide-container",style:(_vm.slideContainerStyle)},_vm._l((_vm.pages),function(page,index){return _c('div',{key:index,staticClass:"slide-page",class:{ 'slide-page-active': index + 1 === _vm.currentPage }},[(page)?_c('img',{staticClass:"slide-page-image",attrs:{"src":page,"alt":""}}):_c('div',{staticClass:"slide-page-placeholder"},[_vm._v("封面/封底")])])}),0)]):(_vm.flipMode === 'fade')?_c('div',{ref:"fadeViewer",class:['fade-viewer', _vm.isMobile ? 'mobile-mode mobile-optimized' : 'desktop-mode desktop-optimized']},[_c('transition',{attrs:{"name":"fade-page","mode":"out-in"}},[_c('div',{key:_vm.currentPage,staticClass:"fade-page-container"},[(_vm.pages[_vm.currentPage - 1])?_c('img',{staticClass:"fade-page-image",attrs:{"src":_vm.pages[_vm.currentPage - 1],"alt":""}}):_c('div',{staticClass:"fade-page-placeholder"},[_vm._v("封面/封底")])])])],1):(_vm.flipMode === 'scroll')?_c('div',{ref:"scrollViewer",class:['scroll-viewer', _vm.isMobile ? 'mobile-mode mobile-optimized' : 'desktop-mode desktop-optimized'],on:{"scroll":_vm.onScrollViewerScroll}},[_c('div',{staticClass:"scroll-container"},_vm._l((_vm.pages),function(page,index){return _c('div',{key:index,ref:'scrollPage' + index,refInFor:true,staticClass:"scroll-page"},[(page)?_c('img',{staticClass:"scroll-page-image",attrs:{"src":page,"alt":""}}):_c('div',{staticClass:"scroll-page-placeholder"},[_vm._v("封面/封底")])])}),0)]):(_vm.flipMode === 'clip')?_c('div',{ref:"clipViewer",class:['clip-viewer', _vm.isMobile ? 'mobile-mode mobile-optimized' : 'desktop-mode desktop-optimized']},[_c('div',{staticClass:"clip-pages-wrapper"},[_c('transition',{attrs:{"name":"clip-current"}},[_c('div',{key:'current-' + _vm.currentPage,staticClass:"clip-page clip-page-current"},[(_vm.pages[_vm.currentPage - 1])?_c('img',{staticClass:"clip-page-image",attrs:{"src":_vm.pages[_vm.currentPage - 1],"alt":""}}):_c('div',{staticClass:"clip-page-placeholder"},[_vm._v("封面/封底")])])]),(_vm.currentPage < _vm.totalPages)?_c('div',{staticClass:"clip-page clip-page-next"},[(_vm.pages[_vm.currentPage])?_c('img',{staticClass:"clip-page-image",attrs:{"src":_vm.pages[_vm.currentPage],"alt":""}}):_c('div',{staticClass:"clip-page-placeholder"},[_vm._v("封面/封底")])]):_vm._e()],1)]):(_vm.flipMode === 'card')?_c('div',{ref:"cardViewer",class:['card-viewer', _vm.isMobile ? 'mobile-mode mobile-optimized' : 'desktop-mode desktop-optimized']},[_c('div',{staticClass:"card-stack"},[_c('transition-group',{staticClass:"card-transition-group",attrs:{"name":"card-flip","tag":"div"}},_vm._l((_vm.visibleCards),function(page,index){return _c('div',{key:'card-' + page.originalIndex,staticClass:"card-item",class:{
72
72
  'card-item-prev': page.position === 'prev',
73
73
  'card-item-current': page.position === 'current',
74
74
  'card-item-next': page.position === 'next'
@@ -79,13 +79,13 @@ var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{sta
79
79
  },style:({
80
80
  left: _vm.catalogueButtonPosition.x + 'px',
81
81
  top: _vm.catalogueButtonPosition.y + 'px'
82
- }),on:{"mousedown":_vm.onCatalogueMouseDown,"touchstart":_vm.onCatalogueTouchStart,"touchmove":_vm.onCatalogueTouchMove,"touchend":_vm.onCatalogueTouchEnd,"click":function($event){$event.stopPropagation();}}},[_c('button',{staticClass:"btn btn-catalogue",on:{"click":_vm.openCatalogue}},[_c('span',{staticClass:"catalogue-text"},[_vm._v("目录")])])]),_c('div',{staticClass:"zoom-hint",class:{ 'show': _vm.zoomScale !== 1 }},[_c('div',{staticClass:"zoom-info"},[_c('span',[_vm._v("缩放: "+_vm._s(Math.round(_vm.zoomScale * 100))+"%")]),_c('button',{staticClass:"btn-reset-zoom",on:{"click":_vm.resetZoom}},[_vm._v("重置")])])]),(_vm.loading)?_c('div',{staticClass:"loading-overlay"},[_vm._m(0)]):_vm._e(),(_vm.error && !_vm.loading)?_c('div',{staticClass:"error-container"},[_c('div',{staticClass:"error-content"},[_c('div',{staticClass:"error-icon"},[_vm._v("⚠️")]),_c('h3',[_vm._v("加载失败")]),_c('p',[_vm._v(_vm._s(_vm.error.message || '网络连接异常,请检查网络后重试'))]),_c('button',{staticClass:"retry-btn",on:{"click":_vm.fetchBooksData}},[_c('span',{staticClass:"retry-icon"},[_vm._v("🔄")]),_vm._v(" 重新加载 ")])])]):_vm._e(),(_vm.booksData && !_vm.loading && !_vm.error)?_c('div',{staticClass:"success-toast",class:{ 'show': _vm.showSuccessToast }},[_vm._v(" 书籍加载完成 ")]):_vm._e(),_c('book-catalogue-drawer',{attrs:{"book-id":_vm.bookId,"catalogue":_vm.catalogue,"loading":_vm.catalogueLoading},on:{"catalogue-click":_vm.onCatalogueClick,"page-jump":_vm.onPageJump,"Focus":_vm.onFocus,"fetch-catalogue":_vm.onFetchCatalogue},model:{value:(_vm.showCatalogueDrawer),callback:function ($$v) {_vm.showCatalogueDrawer=$$v},expression:"showCatalogueDrawer"}})],1)
82
+ }),on:{"mousedown":_vm.onCatalogueMouseDown,"touchstart":_vm.onCatalogueTouchStart,"touchmove":_vm.onCatalogueTouchMove,"touchend":_vm.onCatalogueTouchEnd,"click":function($event){$event.stopPropagation();}}},[_c('button',{staticClass:"btn btn-catalogue",on:{"click":_vm.openCatalogue}},[_c('span',{staticClass:"catalogue-text"},[_vm._v("目录")])])]),_c('div',{staticClass:"zoom-hint",class:{ 'show': _vm.zoomScale !== 1 }},[_c('div',{staticClass:"zoom-info"},[_c('span',[_vm._v("缩放: "+_vm._s(Math.round(_vm.zoomScale * 100))+"%")]),_c('button',{staticClass:"btn-reset-zoom",on:{"click":_vm.resetZoom}},[_vm._v("重置")])])]),_c('div',{staticClass:"zoom-toolbar"},[_c('button',{staticClass:"btn-zoom",attrs:{"disabled":_vm.zoomScale <= 0.5},on:{"click":_vm.zoomOut}},[_vm._v("-")]),_c('button',{staticClass:"btn-zoom",attrs:{"disabled":_vm.zoomScale >= 3},on:{"click":_vm.zoomIn}},[_vm._v("+")])]),(_vm.loading)?_c('div',{staticClass:"loading-overlay"},[_vm._m(0)]):_vm._e(),(_vm.error && !_vm.loading)?_c('div',{staticClass:"error-container"},[_c('div',{staticClass:"error-content"},[_c('div',{staticClass:"error-icon"},[_vm._v("⚠️")]),_c('h3',[_vm._v("加载失败")]),_c('p',[_vm._v(_vm._s(_vm.error.message || '网络连接异常,请检查网络后重试'))]),_c('button',{staticClass:"retry-btn",on:{"click":_vm.fetchBooksData}},[_c('span',{staticClass:"retry-icon"},[_vm._v("🔄")]),_vm._v(" 重新加载 ")])])]):_vm._e(),(_vm.booksData && !_vm.loading && !_vm.error)?_c('div',{staticClass:"success-toast",class:{ 'show': _vm.showSuccessToast }},[_vm._v(" 书籍加载完成 ")]):_vm._e(),_c('book-catalogue-drawer',{attrs:{"book-id":_vm.bookId,"catalogue":_vm.catalogue,"loading":_vm.catalogueLoading},on:{"catalogue-click":_vm.onCatalogueClick,"page-jump":_vm.onPageJump,"Focus":_vm.onFocus,"fetch-catalogue":_vm.onFetchCatalogue},model:{value:(_vm.showCatalogueDrawer),callback:function ($$v) {_vm.showCatalogueDrawer=$$v},expression:"showCatalogueDrawer"}})],1)
83
83
  }
84
84
  var staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:"loading-container"},[_c('div',{staticClass:"loading-spinner"},[_c('div',{staticClass:"spinner-ring"}),_c('div',{staticClass:"spinner-ring"}),_c('div',{staticClass:"spinner-ring"})]),_c('div',{staticClass:"loading-text"},[_c('h3',[_vm._v("正在加载书籍")]),_c('p',[_vm._v("请稍候,正在获取精彩内容...")]),_c('div',{staticClass:"loading-progress"},[_c('div',{staticClass:"progress-bar"})])])])
85
85
  }]
86
86
 
87
87
 
88
- ;// ./src/components/BookReader.vue?vue&type=template&id=eaca7004&scoped=true
88
+ ;// ./src/components/BookReader.vue?vue&type=template&id=4702ca70&scoped=true
89
89
 
90
90
  ;// ./node_modules/rematrix/dist/rematrix.es.js
91
91
  /*! @license Rematrix v0.7.2
@@ -2661,6 +2661,20 @@ var component = componentNormalizer_normalizeComponent(
2661
2661
  this.translateX = 0
2662
2662
  this.translateY = 0
2663
2663
  },
2664
+
2665
+ /**
2666
+ * 放大
2667
+ */
2668
+ zoomIn() {
2669
+ this.zoomScale = Math.min(3, this.zoomScale + 0.2)
2670
+ },
2671
+
2672
+ /**
2673
+ * 缩小
2674
+ */
2675
+ zoomOut() {
2676
+ this.zoomScale = Math.max(0.5, this.zoomScale - 0.2)
2677
+ },
2664
2678
 
2665
2679
  /**
2666
2680
  * PC端双击事件处理
@@ -3311,10 +3325,10 @@ var component = componentNormalizer_normalizeComponent(
3311
3325
 
3312
3326
  ;// ./src/components/BookReader.vue?vue&type=script&lang=js
3313
3327
  /* harmony default export */ var components_BookReadervue_type_script_lang_js = (BookReadervue_type_script_lang_js);
3314
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-12.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/BookReader.vue?vue&type=style&index=0&id=eaca7004&prod&scoped=true&lang=css
3328
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-12.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/BookReader.vue?vue&type=style&index=0&id=4702ca70&prod&scoped=true&lang=css
3315
3329
  // extracted by mini-css-extract-plugin
3316
3330
 
3317
- ;// ./src/components/BookReader.vue?vue&type=style&index=0&id=eaca7004&prod&scoped=true&lang=css
3331
+ ;// ./src/components/BookReader.vue?vue&type=style&index=0&id=4702ca70&prod&scoped=true&lang=css
3318
3332
 
3319
3333
  ;// ./src/components/BookReader.vue
3320
3334
 
@@ -3331,7 +3345,7 @@ var BookReader_component = componentNormalizer_normalizeComponent(
3331
3345
  staticRenderFns,
3332
3346
  false,
3333
3347
  null,
3334
- "eaca7004",
3348
+ "4702ca70",
3335
3349
  null
3336
3350
 
3337
3351
  )