fl-web-component 1.0.11 → 1.0.12

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.
package/README.md CHANGED
@@ -43,4 +43,15 @@ Vue.use(FlWebComponent)
43
43
  详细业务API文档、公共组件开发流程请联系前端开发人员
44
44
 
45
45
  ## 贡献
46
- 欢迎贡献代码和问题反馈。
46
+ 欢迎贡献代码和问题反馈。
47
+
48
+ ## 更新日志
49
+ - 2025-05-15 1.0.12
50
+ 1. flcanvas组件更新
51
+ - 2025-05-15 1.0.11
52
+ 1. 去除依赖方解析包,现在业务使用方无需配置解析器
53
+ 2. 去除umd产物,提高打包速度
54
+ 3. 优化打包产物,大幅减少产物体积
55
+ 4. 优化打包产物为兼容语法
56
+ - 2025-05-12 1.0.0
57
+ 1. 初始版本发布
@@ -20805,6 +20805,13 @@ Factory_1.Factory.backCompat(Wedge, {
20805
20805
 
20806
20806
  /***/ }),
20807
20807
 
20808
+ /***/ "9ab3":
20809
+ /***/ (function(module, exports, __webpack_require__) {
20810
+
20811
+ // extracted by mini-css-extract-plugin
20812
+
20813
+ /***/ }),
20814
+
20808
20815
  /***/ "9cb8":
20809
20816
  /***/ (function(module, exports, __webpack_require__) {
20810
20817
 
@@ -23065,6 +23072,17 @@ try {
23065
23072
 
23066
23073
  module.exports = g;
23067
23074
 
23075
+ /***/ }),
23076
+
23077
+ /***/ "cc63":
23078
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
23079
+
23080
+ "use strict";
23081
+ /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_300b3063_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("9ab3");
23082
+ /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_300b3063_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_300b3063_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__);
23083
+ /* unused harmony reexport * */
23084
+
23085
+
23068
23086
  /***/ }),
23069
23087
 
23070
23088
  /***/ "cf29":
@@ -24151,17 +24169,6 @@ Factory_1.Factory.backCompat(Transformer, {
24151
24169
  enabledHandlers: 'enabledAnchors'
24152
24170
  });
24153
24171
 
24154
- /***/ }),
24155
-
24156
- /***/ "d698":
24157
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
24158
-
24159
- "use strict";
24160
- /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_83d38700_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("f32a");
24161
- /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_83d38700_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_83d38700_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__);
24162
- /* unused harmony reexport * */
24163
-
24164
-
24165
24172
  /***/ }),
24166
24173
 
24167
24174
  /***/ "d777":
@@ -26370,13 +26377,6 @@ exports.Factory = {
26370
26377
 
26371
26378
  /***/ }),
26372
26379
 
26373
- /***/ "f32a":
26374
- /***/ (function(module, exports, __webpack_require__) {
26375
-
26376
- // extracted by mini-css-extract-plugin
26377
-
26378
- /***/ }),
26379
-
26380
26380
  /***/ "f35c":
26381
26381
  /***/ (function(module, exports, __webpack_require__) {
26382
26382
 
@@ -54895,8 +54895,8 @@ var component = normalizeComponent(
54895
54895
  )
54896
54896
 
54897
54897
  /* harmony default export */ var com_graphics = (component.exports);
54898
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"4e57a194-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/components/com-flcanvas/index.vue?vue&type=template&id=83d38700&scoped=true
54899
- var com_flcanvasvue_type_template_id_83d38700_scoped_true_render = function render() {
54898
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"4e57a194-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/components/com-flcanvas/index.vue?vue&type=template&id=300b3063&scoped=true
54899
+ var com_flcanvasvue_type_template_id_300b3063_scoped_true_render = function render() {
54900
54900
  var _vm = this,
54901
54901
  _c = _vm._self._c;
54902
54902
  return _c('div', {
@@ -54909,9 +54909,9 @@ var com_flcanvasvue_type_template_id_83d38700_scoped_true_render = function rend
54909
54909
  }
54910
54910
  });
54911
54911
  };
54912
- var com_flcanvasvue_type_template_id_83d38700_scoped_true_staticRenderFns = [];
54912
+ var com_flcanvasvue_type_template_id_300b3063_scoped_true_staticRenderFns = [];
54913
54913
 
54914
- // CONCATENATED MODULE: ./packages/components/com-flcanvas/index.vue?vue&type=template&id=83d38700&scoped=true
54914
+ // CONCATENATED MODULE: ./packages/components/com-flcanvas/index.vue?vue&type=template&id=300b3063&scoped=true
54915
54915
 
54916
54916
  // EXTERNAL MODULE: ./node_modules/konva/lib/index.js
54917
54917
  var lib = __webpack_require__("362d");
@@ -57694,6 +57694,25 @@ function drawInsert(recordDxf, entities, group, key, configParams, konvaLayer) {
57694
57694
  }
57695
57695
  }
57696
57696
  // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/components/com-flcanvas/index.vue?vue&type=script&lang=js
57697
+ function base64ToBlob(base64) {
57698
+ var byteCharacters = atob(base64);
57699
+ var byteArrays = [];
57700
+ for (var offset = 0; offset < byteCharacters.length; offset += 512) {
57701
+ var slice = byteCharacters.slice(offset, offset + 512);
57702
+ var byteNumbers = new Array(slice.length);
57703
+ for (var i = 0; i < slice.length; i++) {
57704
+ byteNumbers[i] = slice.charCodeAt(i);
57705
+ }
57706
+ var byteArray = new Uint8Array(byteNumbers);
57707
+ byteArrays.push(byteArray);
57708
+ }
57709
+ return new Blob(byteArrays, {
57710
+ type: 'application/pdf'
57711
+ });
57712
+ }
57713
+ function createObjectURL(blob) {
57714
+ return URL.createObjectURL(blob);
57715
+ }
57697
57716
  function downloadPDF(base64, fileName) {
57698
57717
  var blob = base64ToBlob(base64);
57699
57718
  var url = createObjectURL(blob);
@@ -57788,11 +57807,16 @@ var recordLayerConfig = {};
57788
57807
 
57789
57808
  methods: {
57790
57809
  loadDxf: function loadDxf(data) {
57810
+ console.log("ok");
57791
57811
  var parser = new dxf_parser_dist();
57792
57812
  var dxf = parser.parse(data);
57793
57813
  var entities = formatEntity(dxf.entities);
57814
+ console.log(entities);
57794
57815
  var layers = dxf.tables.layer.layers;
57795
57816
  //加载图纸
57817
+
57818
+ console.log("layers");
57819
+ console.log(layers);
57796
57820
  var _loop = function _loop() {
57797
57821
  if (entities[key]) {
57798
57822
  var group = [];
@@ -57830,10 +57854,13 @@ var recordLayerConfig = {};
57830
57854
  var y1 = _entity.y1;
57831
57855
  var x2 = _entity.x2;
57832
57856
  var y2 = _entity.y2;
57833
- context.moveTo(x1, -parseFloat(y1));
57834
- context.lineTo(x2, -parseFloat(y2));
57857
+ if (x1 != undefined && y1 != undefined && x2 != undefined && y2 != undefined) {
57858
+ context.moveTo(x1, -parseFloat(y1));
57859
+ context.lineTo(x2, -parseFloat(y2));
57860
+ }
57835
57861
  }
57836
57862
  if (_entity.type === "polyline") {
57863
+ var flag = false;
57837
57864
  var points = _entity.points;
57838
57865
  var closed = _entity.closed;
57839
57866
  for (var j = 0; j < points.length; j++) {
@@ -57875,18 +57902,23 @@ var recordLayerConfig = {};
57875
57902
  scale = Number((boundingRect.width / boundingRect.height).toFixed(1));
57876
57903
  scale = scale < 2 ? 2 : scale;
57877
57904
  }
57878
- konvaStage.scale({
57879
- x: scale,
57880
- y: scale
57881
- });
57905
+ /*
57906
+ konvaStage.scale({
57907
+ x: scale,
57908
+ y: scale,
57909
+ })*/
57882
57910
  var boundingScale = konvaLayer.getClientRect();
57883
57911
  //平移视口
57884
57912
  var x = this.$refs.svgDraw.clientWidth / 2 - (Math.ceil(boundingScale.width) / 2 + boundingScale.x / 2);
57885
57913
  var y = this.$refs.svgDraw.clientHeight / 2 - (Math.ceil(boundingScale.height) / 2 + boundingScale.y);
57886
- konvaStage.setX(x);
57887
- konvaStage.setY(y);
57914
+ konvaStage.scale({
57915
+ x: 2,
57916
+ y: 2
57917
+ });
57918
+ // konvaStage.setX(x);
57919
+ konvaStage.setY(750);
57888
57920
  },
57889
- toPdf: function toPdf() {
57921
+ toPdf: function toPdf(name) {
57890
57922
  // get data URL with default settings
57891
57923
 
57892
57924
  // open in new window
@@ -57903,7 +57935,7 @@ var recordLayerConfig = {};
57903
57935
  pdf.addImage(konvaStage.toDataURL({
57904
57936
  pixelRatio: 2
57905
57937
  }), 0, 0, konvaStage.width(), konvaStage.height());
57906
- pdf.save('canvas.pdf');
57938
+ pdf.save(name + ".pdf");
57907
57939
  // var imgData = canvas.toDataURL('image/png');
57908
57940
  //doc.text("Hello world!", 10, 10);
57909
57941
  //doc.save("a4.pdf");
@@ -57924,8 +57956,8 @@ var recordLayerConfig = {};
57924
57956
  });
57925
57957
  // CONCATENATED MODULE: ./packages/components/com-flcanvas/index.vue?vue&type=script&lang=js
57926
57958
  /* harmony default export */ var components_com_flcanvasvue_type_script_lang_js = (com_flcanvasvue_type_script_lang_js);
57927
- // EXTERNAL MODULE: ./packages/components/com-flcanvas/index.vue?vue&type=style&index=0&id=83d38700&prod&lang=scss&scoped=true
57928
- var com_flcanvasvue_type_style_index_0_id_83d38700_prod_lang_scss_scoped_true = __webpack_require__("d698");
57959
+ // EXTERNAL MODULE: ./packages/components/com-flcanvas/index.vue?vue&type=style&index=0&id=300b3063&prod&lang=scss&scoped=true
57960
+ var com_flcanvasvue_type_style_index_0_id_300b3063_prod_lang_scss_scoped_true = __webpack_require__("cc63");
57929
57961
 
57930
57962
  // CONCATENATED MODULE: ./packages/components/com-flcanvas/index.vue
57931
57963
 
@@ -57938,11 +57970,11 @@ var com_flcanvasvue_type_style_index_0_id_83d38700_prod_lang_scss_scoped_true =
57938
57970
 
57939
57971
  var com_flcanvas_component = normalizeComponent(
57940
57972
  components_com_flcanvasvue_type_script_lang_js,
57941
- com_flcanvasvue_type_template_id_83d38700_scoped_true_render,
57942
- com_flcanvasvue_type_template_id_83d38700_scoped_true_staticRenderFns,
57973
+ com_flcanvasvue_type_template_id_300b3063_scoped_true_render,
57974
+ com_flcanvasvue_type_template_id_300b3063_scoped_true_staticRenderFns,
57943
57975
  false,
57944
57976
  null,
57945
- "83d38700",
57977
+ "300b3063",
57946
57978
  null
57947
57979
 
57948
57980
  )
@@ -1 +1 @@
1
- @charset "UTF-8";#fl-model[data-v-6e37e043],#konva-container[data-v-83d38700]{width:100%;height:100%;cursor:pointer}#konva-container[data-v-83d38700]{z-index:3;overflow:hidden}span[data-v-f547d5c6]{font-weight:bolder}.text[data-v-f547d5c6]{margin-top:20px}.line[data-v-f547d5c6]{border-bottom:1px solid #dcdfe6;margin:20px 0}.center[data-v-f547d5c6]{display:flex;flex-direction:column;align-items:center}.center .cen span[data-v-f547d5c6],.center .top span[data-v-f547d5c6]{color:"#53a8ff";display:inline-block;width:30px;height:30px;text-align:center;line-height:30px;border:1px solid;padding:5px;margin-bottom:10px;background-color:#e9f3ff}.center .cen span[data-v-f547d5c6]{margin:10px}.button[data-v-f547d5c6]{display:flex;justify-content:end;margin-top:20px}@font-face{font-family:iconfont;src:url(//at.alicdn.com/t/font_3226805_qqvo3ag3r8.woff2?t=1646635700216) format("woff2"),url(//at.alicdn.com/t/font_3226805_qqvo3ag3r8.woff?t=1646635700216) format("woff"),url(//at.alicdn.com/t/font_3226805_qqvo3ag3r8.ttf?t=1646635700216) format("truetype")}.iconfont[data-v-f547d5c6]{font-family:iconfont!important;font-size:50px;font-style:normal;color:"#53a8ff";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-shubiao[data-v-f547d5c6]:before{content:""}
1
+ @charset "UTF-8";#fl-model[data-v-6e37e043],#konva-container[data-v-300b3063]{width:100%;height:100%;cursor:pointer}#konva-container[data-v-300b3063]{z-index:3;overflow:hidden}span[data-v-f547d5c6]{font-weight:bolder}.text[data-v-f547d5c6]{margin-top:20px}.line[data-v-f547d5c6]{border-bottom:1px solid #dcdfe6;margin:20px 0}.center[data-v-f547d5c6]{display:flex;flex-direction:column;align-items:center}.center .cen span[data-v-f547d5c6],.center .top span[data-v-f547d5c6]{color:"#53a8ff";display:inline-block;width:30px;height:30px;text-align:center;line-height:30px;border:1px solid;padding:5px;margin-bottom:10px;background-color:#e9f3ff}.center .cen span[data-v-f547d5c6]{margin:10px}.button[data-v-f547d5c6]{display:flex;justify-content:end;margin-top:20px}@font-face{font-family:iconfont;src:url(//at.alicdn.com/t/font_3226805_qqvo3ag3r8.woff2?t=1646635700216) format("woff2"),url(//at.alicdn.com/t/font_3226805_qqvo3ag3r8.woff?t=1646635700216) format("woff"),url(//at.alicdn.com/t/font_3226805_qqvo3ag3r8.ttf?t=1646635700216) format("truetype")}.iconfont[data-v-f547d5c6]{font-family:iconfont!important;font-size:50px;font-style:normal;color:"#53a8ff";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-shubiao[data-v-f547d5c6]:before{content:""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fl-web-component",
3
- "version": "1.0.11",
3
+ "version": "1.0.12",
4
4
  "scripts": {
5
5
  "dev": "vue-cli-service serve",
6
6
  "lint": "eslint \"{src,packages}/**/*.{vue,js}\" --fix",
@@ -4,6 +4,26 @@
4
4
  </template>
5
5
 
6
6
  <script>
7
+ function base64ToBlob(base64) {
8
+ const byteCharacters = atob(base64);
9
+ const byteArrays = [];
10
+
11
+ for (let offset = 0; offset < byteCharacters.length; offset += 512) {
12
+ const slice = byteCharacters.slice(offset, offset + 512);
13
+ const byteNumbers = new Array(slice.length);
14
+ for (let i = 0; i < slice.length; i++) {
15
+ byteNumbers[i] = slice.charCodeAt(i);
16
+ }
17
+ const byteArray = new Uint8Array(byteNumbers);
18
+ byteArrays.push(byteArray);
19
+ }
20
+ return new Blob(byteArrays, { type: 'application/pdf' });
21
+ }
22
+
23
+
24
+ function createObjectURL(blob) {
25
+ return URL.createObjectURL(blob);
26
+ }
7
27
 
8
28
 
9
29
 
@@ -100,11 +120,21 @@
100
120
 
101
121
  methods: {
102
122
  loadDxf(data){
123
+
124
+ console.log("ok");
125
+
103
126
  const parser = new DxfParser();
104
127
  let dxf = parser.parse(data);
105
128
  let entities = formatEntity(dxf.entities);
129
+
130
+ console.log(entities);
131
+
106
132
  let layers = dxf.tables.layer.layers;
107
133
  //加载图纸
134
+
135
+ console.log("layers");
136
+ console.log(layers);
137
+
108
138
  for (let key in layers) {
109
139
  if (entities[key]) {
110
140
  let group = [];
@@ -142,12 +172,25 @@
142
172
  let y1=entity.y1;
143
173
  let x2=entity.x2;
144
174
  let y2=entity.y2;
145
- context.moveTo(x1, -parseFloat(y1));
146
- context.lineTo(x2, -parseFloat(y2));
175
+
176
+
177
+ if(x1!=undefined&&y1!=undefined&&x2!=undefined&&y2!=undefined) {
178
+
179
+
180
+ context.moveTo(x1, -parseFloat(y1));
181
+ context.lineTo(x2, -parseFloat(y2));
182
+ }
147
183
  }
148
184
  if(entity.type === "polyline"){
185
+ let flag=false;
186
+
187
+
188
+
149
189
  let points=entity.points;
150
190
  let closed = entity.closed;
191
+
192
+
193
+
151
194
  for(let j = 0; j < points.length; j++){
152
195
  let index = j % 2;
153
196
  if(index === 0){
@@ -183,10 +226,11 @@
183
226
  scale = Number((boundingRect.width / boundingRect.height).toFixed(1));
184
227
  scale = scale < 2 ? 2 : scale
185
228
  }
229
+ /*
186
230
  konvaStage.scale({
187
- x: scale,
188
- y: scale,
189
- })
231
+ x: scale,
232
+ y: scale,
233
+ })*/
190
234
  const boundingScale = konvaLayer.getClientRect();
191
235
  //平移视口
192
236
  const x =
@@ -195,14 +239,19 @@
195
239
  const y =
196
240
  this.$refs.svgDraw.clientHeight / 2 -
197
241
  (Math.ceil(boundingScale.height) / 2 + boundingScale.y);
198
- konvaStage.setX(x);
199
- konvaStage.setY(y);
242
+
243
+ konvaStage.scale({
244
+ x:2,
245
+ y:2
246
+ })
247
+ // konvaStage.setX(x);
248
+ konvaStage.setY(750);
200
249
 
201
250
 
202
251
 
203
252
 
204
253
  },
205
- toPdf(){
254
+ toPdf(name){
206
255
  // get data URL with default settings
207
256
 
208
257
  // open in new window
@@ -228,7 +277,7 @@
228
277
  konvaStage.height()
229
278
  );
230
279
 
231
- pdf.save('canvas.pdf');
280
+ pdf.save(name+".pdf");
232
281
  // var imgData = canvas.toDataURL('image/png');
233
282
  //doc.text("Hello world!", 10, 10);
234
283
  //doc.save("a4.pdf");