gm-printer 10.11.5-beta2 → 10.11.5

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.
Files changed (40) hide show
  1. package/.eslintcache +1 -1
  2. package/README.md +102 -7
  3. package/build/demo.js +54 -0
  4. package/locales/en.json +1 -0
  5. package/locales/th.json +1 -0
  6. package/locales/zh-HK.json +1 -0
  7. package/package.json +10 -8
  8. package/src/common/editor_edit_field.js +82 -16
  9. package/src/common/editor_store.js +58 -0
  10. package/src/components/index.js +3 -1
  11. package/src/components/index.less +1 -0
  12. package/src/components/tip/index.js +19 -35
  13. package/src/components/tooltip/index.js +26 -0
  14. package/src/components/tooltip/style.less +16 -0
  15. package/src/editor/context_menu.js +16 -16
  16. package/src/editor/editor.js +16 -9
  17. package/src/editor/store.js +97 -12
  18. package/src/{editor_cannibalize → editor_account}/context_menu.js +42 -16
  19. package/src/{editor_cannibalize → editor_account}/editor.js +24 -9
  20. package/src/editor_account/index.js +4 -0
  21. package/src/editor_account/store.js +263 -0
  22. package/src/editor_purchase/context_menu.js +0 -1
  23. package/src/editor_purchase/editor_special_table.js +5 -2
  24. package/src/editor_purchase/store.js +27 -5
  25. package/src/index.js +2 -2
  26. package/src/printer/block.js +18 -10
  27. package/src/printer/printer.js +2 -2
  28. package/src/printer/qrcode.js +5 -2
  29. package/src/printer/store.js +116 -30
  30. package/src/printer/style.lesss +13 -3
  31. package/src/printer/table.js +57 -16
  32. package/src/printer/table_special_tr.js +1 -0
  33. package/src/printer/table_subtotal_tr.js +47 -7
  34. package/src/svg/question-circle-o.svg +1 -0
  35. package/src/util.js +53 -2
  36. package/webpack.config.js +19 -1
  37. package/global.d.ts +0 -67
  38. package/src/editor_cannibalize/index.js +0 -4
  39. package/src/editor_cannibalize/store.js +0 -29
  40. package/yarn-error.log +0 -9770
package/.eslintcache CHANGED
@@ -1 +1 @@
1
- [{"/Users/yer/work/gm-printer/src/index.js":"1","/Users/yer/work/gm-printer/src/components/index.js":"2","/Users/yer/work/gm-printer/src/editor/editor.js":"3","/Users/yer/work/gm-printer/src/editor_purchase/editor.js":"4","/Users/yer/work/gm-printer/src/printer/store.js":"5","/Users/yer/work/gm-printer/src/printer/page_summary.js":"6","/Users/yer/work/gm-printer/src/editor_purchase/context_menu.js":"7","/Users/yer/work/gm-printer/src/editor_purchase/store.js":"8"},{"size":1075,"mtime":1622789490427,"results":"9","hashOfConfig":"10"},{"size":373,"mtime":1623031671270,"results":"11","hashOfConfig":"10"},{"size":3785,"mtime":1623031580743,"results":"12","hashOfConfig":"10"},{"size":2304,"mtime":1624446682289,"results":"13","hashOfConfig":"14"},{"size":8399,"mtime":1624871710378,"results":"15","hashOfConfig":"14"},{"size":1992,"mtime":1624870298395,"results":"16","hashOfConfig":"14"},{"size":2398,"mtime":1624870292478,"results":"17","hashOfConfig":"14"},{"size":2590,"mtime":1625105487523,"results":"18","hashOfConfig":"14"},{"filePath":"19","messages":"20","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"17rt15u",{"filePath":"21","messages":"22","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"23","messages":"24","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"25","messages":"26","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"y8fpip",{"filePath":"27","messages":"28","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"29","messages":"30","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"31","messages":"32","errorCount":14,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"33","messages":"34","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"/Users/yer/work/gm-printer/src/index.js",[],"/Users/yer/work/gm-printer/src/components/index.js",[],"/Users/yer/work/gm-printer/src/editor/editor.js",[],"/Users/yer/work/gm-printer/src/editor_purchase/editor.js",[],"/Users/yer/work/gm-printer/src/printer/store.js",[],"/Users/yer/work/gm-printer/src/printer/page_summary.js",[],"/Users/yer/work/gm-printer/src/editor_purchase/context_menu.js",["35","36","37","38","39","40","41","42","43","44","45","46","47","48"],"/Users/yer/work/gm-printer/src/editor_purchase/store.js",[],{"ruleId":"49","severity":2,"message":"50","line":25,"column":34,"nodeType":"51","endLine":25,"endColumn":43},{"ruleId":"49","severity":2,"message":"52","line":25,"column":44,"nodeType":"51","endLine":25,"endColumn":50},{"ruleId":"49","severity":2,"message":"53","line":25,"column":51,"nodeType":"51","endLine":25,"endColumn":59},{"ruleId":"49","severity":2,"message":"50","line":32,"column":13,"nodeType":"54","endLine":32,"endColumn":22},{"ruleId":"49","severity":2,"message":"55","line":34,"column":15,"nodeType":"51","endLine":34,"endColumn":33},{"ruleId":"49","severity":2,"message":"50","line":43,"column":36,"nodeType":"51","endLine":43,"endColumn":45},{"ruleId":"49","severity":2,"message":"52","line":43,"column":46,"nodeType":"51","endLine":43,"endColumn":52},{"ruleId":"49","severity":2,"message":"53","line":43,"column":53,"nodeType":"51","endLine":43,"endColumn":61},{"ruleId":"49","severity":2,"message":"50","line":68,"column":13,"nodeType":"54","endLine":68,"endColumn":22},{"ruleId":"49","severity":2,"message":"56","line":68,"column":24,"nodeType":"54","endLine":68,"endColumn":32},{"ruleId":"49","severity":2,"message":"57","line":76,"column":26,"nodeType":"51","endLine":76,"endColumn":44},{"ruleId":"49","severity":2,"message":"58","line":77,"column":31,"nodeType":"51","endLine":77,"endColumn":39},{"ruleId":"49","severity":2,"message":"59","line":78,"column":37,"nodeType":"51","endLine":78,"endColumn":51},{"ruleId":"49","severity":2,"message":"52","line":79,"column":29,"nodeType":"51","endLine":79,"endColumn":35},"react/prop-types","'editStore' is missing in props validation","Identifier","'editStore.config' is missing in props validation","'editStore.config.contents' is missing in props validation","Property","'editStore.changeTableDataKey' is missing in props validation","'mockData' is missing in props validation","'editStore.computedPrinterKey' is missing in props validation","'editStore.selected' is missing in props validation","'editStore.selectedRegion' is missing in props validation"]
1
+ [{"/Users/yancheng/gm/gm-open-source/gm-printer/src/printer/table.js":"1","/Users/yancheng/gm/gm-open-source/gm-printer/src/printer/store.js":"2","/Users/yancheng/gm/gm-open-source/gm-printer/src/editor/editor.js":"3","/Users/yancheng/gm/gm-open-source/gm-printer/src/editor/context_menu.js":"4","/Users/yancheng/gm/gm-open-source/gm-printer/src/components/tooltip/index.js":"5","/Users/yancheng/gm/gm-open-source/gm-printer/src/common/common_context_menu.js":"6","/Users/yancheng/gm/gm-open-source/gm-printer/src/util.js":"7","/Users/yancheng/gm/gm-open-source/gm-printer/src/printer/printer.js":"8"},{"size":8814,"mtime":1633276961204,"results":"9","hashOfConfig":"10"},{"size":11105,"mtime":1632648482981,"results":"11","hashOfConfig":"10"},{"size":4066,"mtime":1621236648877,"results":"12","hashOfConfig":"10"},{"size":3192,"mtime":1621238473815,"results":"13","hashOfConfig":"10"},{"size":616,"mtime":1621235314060,"results":"14","hashOfConfig":"10"},{"size":9693,"mtime":1621242097206,"results":"15","hashOfConfig":"10"},{"size":5968,"mtime":1632644668974,"results":"16","hashOfConfig":"10"},{"size":8724,"mtime":1631266134763,"results":"17","hashOfConfig":"10"},{"filePath":"18","messages":"19","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"175njjo",{"filePath":"20","messages":"21","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"22","messages":"23","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"24","messages":"25","errorCount":17,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"26","messages":"27","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"28","messages":"29","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"30","messages":"31","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"32","messages":"33","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"/Users/yancheng/gm/gm-open-source/gm-printer/src/printer/table.js",[],"/Users/yancheng/gm/gm-open-source/gm-printer/src/printer/store.js",[],"/Users/yancheng/gm/gm-open-source/gm-printer/src/editor/editor.js",[],"/Users/yancheng/gm/gm-open-source/gm-printer/src/editor/context_menu.js",["34","35","36","37","38","39","40","41","42","43","44","45","46","47","48","49","50"],"/Users/yancheng/gm/gm-open-source/gm-printer/src/components/tooltip/index.js",[],"/Users/yancheng/gm/gm-open-source/gm-printer/src/common/common_context_menu.js",[],"/Users/yancheng/gm/gm-open-source/gm-printer/src/util.js",[],"/Users/yancheng/gm/gm-open-source/gm-printer/src/printer/printer.js",[],{"ruleId":"51","severity":2,"message":"52","line":7,"column":10,"nodeType":"53","endLine":7,"endColumn":38},{"ruleId":"54","severity":2,"message":"55","line":38,"column":34,"nodeType":"53","endLine":38,"endColumn":43},{"ruleId":"54","severity":2,"message":"56","line":38,"column":44,"nodeType":"53","endLine":38,"endColumn":50},{"ruleId":"54","severity":2,"message":"57","line":38,"column":51,"nodeType":"53","endLine":38,"endColumn":59},{"ruleId":"54","severity":2,"message":"55","line":44,"column":13,"nodeType":"58","endLine":44,"endColumn":22},{"ruleId":"54","severity":2,"message":"59","line":46,"column":15,"nodeType":"53","endLine":46,"endColumn":33},{"ruleId":"54","severity":2,"message":"55","line":50,"column":13,"nodeType":"58","endLine":50,"endColumn":22},{"ruleId":"54","severity":2,"message":"60","line":52,"column":15,"nodeType":"53","endLine":52,"endColumn":30},{"ruleId":"54","severity":2,"message":"55","line":62,"column":46,"nodeType":"53","endLine":62,"endColumn":55},{"ruleId":"54","severity":2,"message":"56","line":62,"column":56,"nodeType":"53","endLine":62,"endColumn":62},{"ruleId":"54","severity":2,"message":"57","line":62,"column":63,"nodeType":"53","endLine":62,"endColumn":71},{"ruleId":"54","severity":2,"message":"55","line":94,"column":13,"nodeType":"58","endLine":94,"endColumn":22},{"ruleId":"54","severity":2,"message":"61","line":94,"column":24,"nodeType":"58","endLine":94,"endColumn":32},{"ruleId":"54","severity":2,"message":"62","line":101,"column":26,"nodeType":"53","endLine":101,"endColumn":44},{"ruleId":"54","severity":2,"message":"63","line":102,"column":31,"nodeType":"53","endLine":102,"endColumn":39},{"ruleId":"54","severity":2,"message":"64","line":103,"column":37,"nodeType":"53","endLine":103,"endColumn":51},{"ruleId":"54","severity":2,"message":"56","line":104,"column":29,"nodeType":"53","endLine":104,"endColumn":35},"no-unused-vars","'noSubtotalBtnTableDataKeySet' is defined but never used.","Identifier","react/prop-types","'editStore' is missing in props validation","'editStore.config' is missing in props validation","'editStore.config.contents' is missing in props validation","Property","'editStore.changeTableDataKey' is missing in props validation","'editStore.setSubtotalShow' is missing in props validation","'mockData' is missing in props validation","'editStore.computedPrinterKey' is missing in props validation","'editStore.selected' is missing in props validation","'editStore.selectedRegion' is missing in props validation"]
package/README.md CHANGED
@@ -1,20 +1,77 @@
1
1
  # gm-printer
2
+
3
+ gm-printer是一个实现开发者自定义网页打印的人类高质量开源库,你可以根据业务需要自定义打印字段配置(<a href='#template_config'>配置详情</a>),完成高质量网页打印功能。
4
+
2
5
 
3
- ## 目录简要
6
+ ## <div id='development'>开发指南</div>
7
+ 以下操作将帮助你在本地机器上安装和运行该项目,进行开发
8
+ ```bash
9
+ # 先安装依赖
10
+ yarn
11
+ # 项目启动
12
+ yarn start
13
+ # 项目构建(基本不怎么使用)
14
+ yarn build
15
+ ```
16
+ ## <div id='usage'>安装使用指南</div>
17
+ ```bash
18
+ # npm
19
+ npm i gm-printer
20
+ # 或使用 yarn
21
+ yarn add gm-printer
22
+ ```
23
+
24
+ ## <div id='simple_categroy'>配置目录简述</div>
4
25
  ```bash
5
26
  ├── src
6
- │   ├── config.js # 一些printer配置信息
7
- │   ├── data_to_key # 原始数据转换成打印数据
8
- │   ├── editor # 右侧打印编辑界面
9
27
  │   ├── index.js
28
+ │   ├── add_fields # 右侧对应的字段配置
29
+ │   ├── data_to_key # 原始数据转换成打印数据
10
30
  │   ├── mock_data # 模拟数据
11
31
  │   ├── printer # 打印区域
12
- │   ├── template_config # 打印模板配置文件
13
-    └── util.js
32
+ │   └── template_config # 打印模板配置文件
33
+ └── config.js # 一些printer配置信息
14
34
  ├── locales # 多语言文件
15
35
  ```
16
36
 
17
- ## 模板文件(template_config)
37
+ ## 版本管理
38
+ 所有的版本都有 3 个数字:x.y.z。
39
+ * 第一个数字是主版本。
40
+ * 第二个数字是次版本。
41
+ * 第三个数字是补丁版本。
42
+
43
+ 当发布新的版本时,不仅仅是随心所欲地增加数字,还要遵循以下规则:
44
+ * 当进行不兼容的 API 更改时,则升级主版本。
45
+ * 当以向后兼容的方式添加功能时,则升级次版本。
46
+ * 当进行向后兼容的缺陷修复时,则升级补丁版本。
47
+
48
+ 该约定在所有编程语言中均被采用,每个 npm 软件包都必须遵守该约定,这一点非常重要,因为整个系统都依赖于此。
49
+
50
+ ## 版本发布 [<font size=2.5>参考链接</font>](https://eminoda.github.io/2021/01/29/npm-semver-strategy/)
51
+ 一般版本发布分为如下几个版:
52
+ * 内测版本(alpha)
53
+ * 公测版本(beta)
54
+ * 正式版本的候选版本(rc: release candiate)
55
+ * 正式版本
56
+
57
+ 发布操作如下:
58
+
59
+ 前情提要:
60
+ * 发布重大版本或版本改动较大时,先发布alpha、beta、rc等先行版本。
61
+ * 将`pageage.json`中的`version`修改为`X.X.X-beta.0`,或者运行 `npm version X.X.X-beta.0`来更新`package.json`,同时创建一个 git 标签[参考](https://docs.npmjs.com/cli/version)。
62
+ ```bash
63
+ npm login # 输入用户名和密码
64
+
65
+ # 之后发布你要发布的测试版本
66
+ npm publish --tag (alpha | beta)
67
+
68
+ # 或发布正式版用
69
+ npm publish
70
+ ```
71
+
72
+ 上述操作在自己的分支上进行发布版本即可,发完后,将分支合并到 master 上!!!
73
+
74
+ ## <div id='template_config'>模板文件(template_config)</div>
18
75
  config主要是有下面6大部分组成
19
76
  ```js
20
77
  export default {
@@ -133,4 +190,42 @@ export default {
133
190
  }
134
191
  ```
135
192
 
193
+ ## addFields
194
+
195
+ 右侧的添加字段数据
196
+
197
+ ```js
198
+ ├── commonFields # 块区域的添加字段
199
+ ├── summaryFields # 合计汇总字段
200
+ ├── tableFields # 表格区域的添加字段
201
+ ```
202
+
203
+ ## data 数据
204
+ ```json
205
+ {
206
+ common: object, // 非表格数据
207
+ _origin: object, // 原始数据
208
+ _counter: object, //
209
+ _table: { // 表格数据(根据模板的不同,进行整理数据)
210
+ orders: kOrders, // 普通
211
+ orders_multi: kOrdersMulti, // 双栏
212
+ orders_multi_vertical: kOrdersMultiVertical, // 双栏(纵向)
213
+ orders_category: kCategory, // 分类
214
+ orders_category_multi: kCategoryMulti, // 分类 + 双栏
215
+ orders_category_multi_vertical: kCategoryMultiVertical, // 分类+双栏(纵向)
216
+ ...
217
+ },
218
+ }
219
+ ```
220
+
221
+ ## 区域表示
222
+
223
+ ```js
224
+ header
225
+ header.block.0
226
+ contents.panel.0 //区域块
227
+ contents.panel.0.block.0 //区域块的每一个块
228
+ contents.table.0 //区域表格
229
+ contents.table.0.column.0 // 区域表格的每一个表格
230
+ ```
136
231