@odoo/o-spreadsheet 14.0.1 → 14.0.3

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 (204) hide show
  1. package/dist/o-spreadsheet.cjs.js +17880 -0
  2. package/dist/o-spreadsheet.d.ts +4119 -0
  3. package/dist/o-spreadsheet.esm.js +17845 -0
  4. package/dist/o-spreadsheet.iife.js +17882 -0
  5. package/dist/o-spreadsheet.iife.min.js +1446 -0
  6. package/package.json +32 -9
  7. package/readme.md +10 -0
  8. package/.eslintrc.json +0 -20
  9. package/.husky/post-checkout +0 -9
  10. package/.husky/pre-commit +0 -39
  11. package/.prettierignore +0 -1
  12. package/astToFormula.patch +0 -0
  13. package/demo/data.js +0 -255
  14. package/demo/index.html +0 -9
  15. package/demo/libs/Chart.bundle.js +0 -20755
  16. package/demo/main.js +0 -101
  17. package/doc/readme.md +0 -46
  18. package/rollup.config.js +0 -23
  19. package/src/base_plugin.ts +0 -102
  20. package/src/components/autofill.ts +0 -146
  21. package/src/components/bottom_bar.ts +0 -199
  22. package/src/components/color_picker.ts +0 -150
  23. package/src/components/composer/autocomplete_dropdown.ts +0 -135
  24. package/src/components/composer/composer.ts +0 -487
  25. package/src/components/composer/content_editable_helper.ts +0 -146
  26. package/src/components/figures/chart.ts +0 -70
  27. package/src/components/figures/container.ts +0 -268
  28. package/src/components/figures/text_figure.ts +0 -36
  29. package/src/components/grid.ts +0 -635
  30. package/src/components/helpers/dom_helpers.ts +0 -7
  31. package/src/components/helpers/drag_and_drop.ts +0 -17
  32. package/src/components/icons.ts +0 -36
  33. package/src/components/index.ts +0 -1
  34. package/src/components/menu.ts +0 -288
  35. package/src/components/overlay.ts +0 -457
  36. package/src/components/scrollbar.ts +0 -22
  37. package/src/components/selection_input.ts +0 -168
  38. package/src/components/side_panel/cell_is_rule_editor.ts +0 -169
  39. package/src/components/side_panel/chart_panel.ts +0 -104
  40. package/src/components/side_panel/color_scale_rule_editor.ts +0 -145
  41. package/src/components/side_panel/conditional_formatting.ts +0 -396
  42. package/src/components/side_panel/side_panel.ts +0 -127
  43. package/src/components/side_panel/translations_terms.ts +0 -45
  44. package/src/components/spreadsheet.ts +0 -198
  45. package/src/components/top_bar.ts +0 -535
  46. package/src/constants.ts +0 -26
  47. package/src/data.ts +0 -149
  48. package/src/fonts.ts +0 -41
  49. package/src/formulas/compiler.ts +0 -258
  50. package/src/formulas/composer_tokenizer.ts +0 -70
  51. package/src/formulas/index.ts +0 -15
  52. package/src/formulas/normalize.ts +0 -52
  53. package/src/formulas/parser.ts +0 -280
  54. package/src/formulas/range_tokenizer.ts +0 -97
  55. package/src/formulas/tokenizer.ts +0 -242
  56. package/src/functions/arguments.ts +0 -114
  57. package/src/functions/dates.ts +0 -302
  58. package/src/functions/helpers.ts +0 -592
  59. package/src/functions/index.ts +0 -52
  60. package/src/functions/module_database.ts +0 -282
  61. package/src/functions/module_date.ts +0 -743
  62. package/src/functions/module_info.ts +0 -69
  63. package/src/functions/module_logical.ts +0 -208
  64. package/src/functions/module_lookup.ts +0 -185
  65. package/src/functions/module_math.ts +0 -1252
  66. package/src/functions/module_operators.ts +0 -291
  67. package/src/functions/module_statistical.ts +0 -882
  68. package/src/functions/module_text.ts +0 -370
  69. package/src/helpers/color.ts +0 -30
  70. package/src/helpers/coordinates.ts +0 -71
  71. package/src/helpers/grid_manipulation.ts +0 -68
  72. package/src/helpers/index.ts +0 -7
  73. package/src/helpers/misc.ts +0 -76
  74. package/src/helpers/numbers.ts +0 -117
  75. package/src/helpers/uuid.ts +0 -19
  76. package/src/helpers/zones.ts +0 -263
  77. package/src/history.ts +0 -186
  78. package/src/index.ts +0 -84
  79. package/src/model.ts +0 -261
  80. package/src/plugins/autofill.ts +0 -412
  81. package/src/plugins/chart.ts +0 -404
  82. package/src/plugins/clipboard.ts +0 -461
  83. package/src/plugins/conditional_format.ts +0 -445
  84. package/src/plugins/core.ts +0 -1502
  85. package/src/plugins/edition.ts +0 -157
  86. package/src/plugins/evaluation.ts +0 -428
  87. package/src/plugins/figures.ts +0 -123
  88. package/src/plugins/formatting.ts +0 -630
  89. package/src/plugins/highlight.ts +0 -187
  90. package/src/plugins/index.ts +0 -32
  91. package/src/plugins/merge.ts +0 -524
  92. package/src/plugins/renderer.ts +0 -571
  93. package/src/plugins/selection.ts +0 -562
  94. package/src/plugins/selection_inputs.ts +0 -326
  95. package/src/registries/autofill_modifiers.ts +0 -76
  96. package/src/registries/autofill_rules.ts +0 -98
  97. package/src/registries/figure_registry.ts +0 -30
  98. package/src/registries/index.ts +0 -7
  99. package/src/registries/menu_items_registry.ts +0 -110
  100. package/src/registries/menus/cell_menu_registry.ts +0 -79
  101. package/src/registries/menus/col_menu_registry.ts +0 -63
  102. package/src/registries/menus/index.ts +0 -6
  103. package/src/registries/menus/menu_items_actions.ts +0 -425
  104. package/src/registries/menus/row_menu_registry.ts +0 -63
  105. package/src/registries/menus/sheet_menu_registry.ts +0 -75
  106. package/src/registries/menus/topbar_menu_registry.ts +0 -204
  107. package/src/registries/side_panel_registry.ts +0 -26
  108. package/src/registries/topbar_component_registry.ts +0 -12
  109. package/src/registry.ts +0 -51
  110. package/src/translation.ts +0 -44
  111. package/src/types/autofill.ts +0 -48
  112. package/src/types/chart.ts +0 -26
  113. package/src/types/commands.ts +0 -716
  114. package/src/types/conditional_formatting.ts +0 -124
  115. package/src/types/env.ts +0 -13
  116. package/src/types/functions.ts +0 -35
  117. package/src/types/getters.ts +0 -103
  118. package/src/types/index.ts +0 -20
  119. package/src/types/misc.ts +0 -143
  120. package/src/types/rendering.ts +0 -41
  121. package/src/types/workbook_data.ts +0 -62
  122. package/tests/__mocks__/uuid.ts +0 -7
  123. package/tests/canvas.mock.ts +0 -34
  124. package/tests/components/__mocks__/content_editable_helper.ts +0 -79
  125. package/tests/components/__mocks__/scrollbar.ts +0 -18
  126. package/tests/components/__snapshots__/autocomplete_dropdown_test.ts.snap +0 -29
  127. package/tests/components/__snapshots__/bottom_bar_test.ts.snap +0 -75
  128. package/tests/components/__snapshots__/context_menu_test.ts.snap +0 -88
  129. package/tests/components/__snapshots__/grid_test.ts.snap +0 -60
  130. package/tests/components/__snapshots__/spreadsheet_test.ts.snap +0 -455
  131. package/tests/components/__snapshots__/top_bar_test.ts.snap +0 -705
  132. package/tests/components/autocomplete_dropdown_test.ts +0 -315
  133. package/tests/components/autofill_test.ts +0 -167
  134. package/tests/components/bottom_bar_test.ts +0 -262
  135. package/tests/components/chart_side_panel_test.ts +0 -123
  136. package/tests/components/composer_test.ts +0 -400
  137. package/tests/components/context_menu_test.ts +0 -825
  138. package/tests/components/grid_manipulation_test.ts +0 -163
  139. package/tests/components/grid_test.ts +0 -581
  140. package/tests/components/overlay_test.ts +0 -541
  141. package/tests/components/selection_input_test.ts +0 -259
  142. package/tests/components/side_panel_test.ts +0 -148
  143. package/tests/components/spreadsheet_test.ts +0 -194
  144. package/tests/components/top_bar_test.ts +0 -427
  145. package/tests/data_test.ts +0 -175
  146. package/tests/dom_helper.ts +0 -42
  147. package/tests/formulas/__snapshots__/compiler_test.ts.snap +0 -302
  148. package/tests/formulas/compiler_test.ts +0 -266
  149. package/tests/formulas/composer_tokenizer_test.ts +0 -137
  150. package/tests/formulas/expressions_test.ts +0 -57
  151. package/tests/formulas/formulas_test.ts +0 -80
  152. package/tests/formulas/normalize_test.ts +0 -82
  153. package/tests/formulas/parser_test.ts +0 -224
  154. package/tests/formulas/range_tokenizer_test.ts +0 -187
  155. package/tests/formulas/tokenizer_test.ts +0 -164
  156. package/tests/functions/arguments_test.ts +0 -141
  157. package/tests/functions/dates_test.ts +0 -1081
  158. package/tests/functions/functions_test.ts +0 -53
  159. package/tests/functions/helper_test.ts +0 -98
  160. package/tests/functions/module_database_test.ts +0 -311
  161. package/tests/functions/module_date_test.ts +0 -941
  162. package/tests/functions/module_info_test.ts +0 -139
  163. package/tests/functions/module_logical_test.ts +0 -369
  164. package/tests/functions/module_lookup_test.ts +0 -541
  165. package/tests/functions/module_math_test.ts +0 -2482
  166. package/tests/functions/module_operators_test.ts +0 -955
  167. package/tests/functions/module_statistical_test.ts +0 -2014
  168. package/tests/functions/module_text_test.ts +0 -667
  169. package/tests/helpers/coordinates_test.ts +0 -25
  170. package/tests/helpers/misc_test.ts +0 -95
  171. package/tests/helpers/numbers_test.ts +0 -196
  172. package/tests/helpers/zones_test.ts +0 -97
  173. package/tests/helpers.ts +0 -384
  174. package/tests/menu_items_registry_test.ts +0 -540
  175. package/tests/model/plugins/__snapshots__/chart_test.ts.snap +0 -90
  176. package/tests/model/plugins/chart_test.ts +0 -562
  177. package/tests/model_test.ts +0 -82
  178. package/tests/plugins/__snapshots__/conditional_formatting_test.ts.snap +0 -131
  179. package/tests/plugins/__snapshots__/renderer_test.ts.snap +0 -371
  180. package/tests/plugins/autofill_test.ts +0 -457
  181. package/tests/plugins/borders_test.ts +0 -295
  182. package/tests/plugins/clipboard_test.ts +0 -1180
  183. package/tests/plugins/conditional_formatting_test.ts +0 -1253
  184. package/tests/plugins/core_test.ts +0 -614
  185. package/tests/plugins/edition_test.ts +0 -100
  186. package/tests/plugins/evaluation_async_test.ts +0 -332
  187. package/tests/plugins/evaluation_dates_test.ts +0 -79
  188. package/tests/plugins/evaluation_test.ts +0 -901
  189. package/tests/plugins/figures_test.ts +0 -327
  190. package/tests/plugins/formatting_test.ts +0 -391
  191. package/tests/plugins/grid_manipulation_test.ts +0 -1366
  192. package/tests/plugins/highlight_test.ts +0 -413
  193. package/tests/plugins/history_test.ts +0 -142
  194. package/tests/plugins/import_export_test.ts +0 -276
  195. package/tests/plugins/merges_test.ts +0 -490
  196. package/tests/plugins/navigation_test.ts +0 -181
  197. package/tests/plugins/plugins/evaluation_test.ts +0 -111
  198. package/tests/plugins/renderer_test.ts +0 -598
  199. package/tests/plugins/resizing_test.ts +0 -152
  200. package/tests/plugins/selection_input_test.ts +0 -409
  201. package/tests/plugins/selection_test.ts +0 -442
  202. package/tests/plugins/sheets_test.ts +0 -643
  203. package/tests/plugins/style_test.ts +0 -90
  204. package/tsconfig.json +0 -22
@@ -1,131 +0,0 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`UI of conditional formats simple snapshot 1`] = `
4
- <div
5
- class="o-sidePanel"
6
- >
7
- <div
8
- class="o-sidePanelHeader"
9
- >
10
- <div
11
- class="o-sidePanelTitle"
12
- >
13
- Conditional formatting
14
- </div>
15
- <div
16
- class="o-sidePanelClose"
17
- >
18
- ×
19
- </div>
20
- </div>
21
- <div
22
- class="o-sidePanelBody"
23
- >
24
- <div
25
- class="o-cf"
26
- >
27
- <div
28
- class="o-cf-preview-list"
29
- >
30
- <div>
31
- <div
32
- class="o-cf-preview"
33
- >
34
- <div
35
- class="o-cf-preview-image"
36
- style="font-weight:normal;
37
- text-decoration:none;
38
- font-style:normal;
39
- color:none;
40
- background-color:#FF0000;"
41
- >
42
- 123
43
- </div>
44
- <div
45
- class="o-cf-preview-description"
46
- >
47
- <div
48
- class="o-cf-preview-ruletype"
49
- >
50
- <div
51
- class="o-cf-preview-description-rule"
52
- >
53
- Is equal to
54
- </div>
55
- <div
56
- class="o-cf-preview-description-values"
57
- >
58
- 2
59
- </div>
60
- </div>
61
- <div
62
- class="o-cf-preview-range"
63
- >
64
- A1:A2
65
- </div>
66
- </div>
67
- <div
68
- class="o-cf-delete"
69
- >
70
- <div
71
- aria-label="Remove rule"
72
- class="o-cf-delete-button"
73
- >
74
- x
75
- </div>
76
- </div>
77
- </div>
78
- </div>
79
- <div>
80
- <div
81
- class="o-cf-preview"
82
- >
83
- <div
84
- class="o-cf-preview-image"
85
- style="background-image: linear-gradient(to right, #ff00ff, #123456)"
86
- >
87
- 123
88
- </div>
89
- <div
90
- class="o-cf-preview-description"
91
- >
92
- <div
93
- class="o-cf-preview-ruletype"
94
- >
95
- <div
96
- class="o-cf-preview-description-rule"
97
- >
98
- Color scale
99
- </div>
100
- <div
101
- class="o-cf-preview-description-values"
102
- />
103
- </div>
104
- <div
105
- class="o-cf-preview-range"
106
- >
107
- B1:B5
108
- </div>
109
- </div>
110
- <div
111
- class="o-cf-delete"
112
- >
113
- <div
114
- aria-label="Remove rule"
115
- class="o-cf-delete-button"
116
- >
117
- x
118
- </div>
119
- </div>
120
- </div>
121
- </div>
122
- </div>
123
- <div
124
- class="o-cf-add"
125
- >
126
- + Add another rule
127
- </div>
128
- </div>
129
- </div>
130
- </div>
131
- `;
@@ -1,371 +0,0 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`renderer snapshot for a simple grid rendering 1`] = `
4
- Array [
5
- "context.fillStyle=\\"white\\";",
6
- "context.fillRect(0, 0, 1000, 1000)",
7
- "context.lineWidth=0.8;",
8
- "context.strokeStyle=\\"#E2E3E3\\";",
9
- "context.beginPath()",
10
- "context.moveTo(144, 0)",
11
- "context.lineTo(144, 1000)",
12
- "context.moveTo(240, 0)",
13
- "context.lineTo(240, 1000)",
14
- "context.moveTo(336, 0)",
15
- "context.lineTo(336, 1000)",
16
- "context.moveTo(432, 0)",
17
- "context.lineTo(432, 1000)",
18
- "context.moveTo(528, 0)",
19
- "context.lineTo(528, 1000)",
20
- "context.moveTo(624, 0)",
21
- "context.lineTo(624, 1000)",
22
- "context.moveTo(720, 0)",
23
- "context.lineTo(720, 1000)",
24
- "context.moveTo(816, 0)",
25
- "context.lineTo(816, 1000)",
26
- "context.moveTo(912, 0)",
27
- "context.lineTo(912, 1000)",
28
- "context.moveTo(1008, 0)",
29
- "context.lineTo(1008, 1000)",
30
- "context.moveTo(0, 49)",
31
- "context.lineTo(1000, 49)",
32
- "context.moveTo(0, 72)",
33
- "context.lineTo(1000, 72)",
34
- "context.moveTo(0, 95)",
35
- "context.lineTo(1000, 95)",
36
- "context.moveTo(0, 118)",
37
- "context.lineTo(1000, 118)",
38
- "context.moveTo(0, 141)",
39
- "context.lineTo(1000, 141)",
40
- "context.moveTo(0, 164)",
41
- "context.lineTo(1000, 164)",
42
- "context.moveTo(0, 187)",
43
- "context.lineTo(1000, 187)",
44
- "context.moveTo(0, 210)",
45
- "context.lineTo(1000, 210)",
46
- "context.moveTo(0, 233)",
47
- "context.lineTo(1000, 233)",
48
- "context.moveTo(0, 256)",
49
- "context.lineTo(1000, 256)",
50
- "context.moveTo(0, 279)",
51
- "context.lineTo(1000, 279)",
52
- "context.moveTo(0, 302)",
53
- "context.lineTo(1000, 302)",
54
- "context.moveTo(0, 325)",
55
- "context.lineTo(1000, 325)",
56
- "context.moveTo(0, 348)",
57
- "context.lineTo(1000, 348)",
58
- "context.moveTo(0, 371)",
59
- "context.lineTo(1000, 371)",
60
- "context.moveTo(0, 394)",
61
- "context.lineTo(1000, 394)",
62
- "context.moveTo(0, 417)",
63
- "context.lineTo(1000, 417)",
64
- "context.moveTo(0, 440)",
65
- "context.lineTo(1000, 440)",
66
- "context.moveTo(0, 463)",
67
- "context.lineTo(1000, 463)",
68
- "context.moveTo(0, 486)",
69
- "context.lineTo(1000, 486)",
70
- "context.moveTo(0, 509)",
71
- "context.lineTo(1000, 509)",
72
- "context.moveTo(0, 532)",
73
- "context.lineTo(1000, 532)",
74
- "context.moveTo(0, 555)",
75
- "context.lineTo(1000, 555)",
76
- "context.moveTo(0, 578)",
77
- "context.lineTo(1000, 578)",
78
- "context.moveTo(0, 601)",
79
- "context.lineTo(1000, 601)",
80
- "context.moveTo(0, 624)",
81
- "context.lineTo(1000, 624)",
82
- "context.moveTo(0, 647)",
83
- "context.lineTo(1000, 647)",
84
- "context.moveTo(0, 670)",
85
- "context.lineTo(1000, 670)",
86
- "context.moveTo(0, 693)",
87
- "context.lineTo(1000, 693)",
88
- "context.moveTo(0, 716)",
89
- "context.lineTo(1000, 716)",
90
- "context.moveTo(0, 739)",
91
- "context.lineTo(1000, 739)",
92
- "context.moveTo(0, 762)",
93
- "context.lineTo(1000, 762)",
94
- "context.moveTo(0, 785)",
95
- "context.lineTo(1000, 785)",
96
- "context.moveTo(0, 808)",
97
- "context.lineTo(1000, 808)",
98
- "context.moveTo(0, 831)",
99
- "context.lineTo(1000, 831)",
100
- "context.moveTo(0, 854)",
101
- "context.lineTo(1000, 854)",
102
- "context.moveTo(0, 877)",
103
- "context.lineTo(1000, 877)",
104
- "context.moveTo(0, 900)",
105
- "context.lineTo(1000, 900)",
106
- "context.moveTo(0, 923)",
107
- "context.lineTo(1000, 923)",
108
- "context.moveTo(0, 946)",
109
- "context.lineTo(1000, 946)",
110
- "context.moveTo(0, 969)",
111
- "context.lineTo(1000, 969)",
112
- "context.moveTo(0, 992)",
113
- "context.lineTo(1000, 992)",
114
- "context.moveTo(0, 1015)",
115
- "context.lineTo(1000, 1015)",
116
- "context.stroke()",
117
- "context.lineWidth=0.12;",
118
- "context.strokeStyle=\\"#111\\";",
119
- "context.textBaseline=\\"middle\\";",
120
- "context.font=\\"400 13px 'Roboto', arial\\";",
121
- "context.fillStyle=\\"#000\\";",
122
- "context.textAlign=\\"right\\";",
123
- "context.fillText(\\"1\\", 141, 39)",
124
- "context.lineWidth=1.2000000000000002;",
125
- "context.fillStyle=\\"#f3f7fe\\";",
126
- "context.fillStyle=\\"#f3f7fe\\";",
127
- "context.strokeStyle=\\"#3266ca\\";",
128
- "context.lineWidth=0.6000000000000001;",
129
- "context.globalCompositeOperation=\\"multiply\\";",
130
- "context.fillRect(48, 26, 96, 23)",
131
- "context.strokeRect(48, 26, 96, 23)",
132
- "context.globalCompositeOperation=\\"source-over\\";",
133
- "context.strokeStyle=\\"#3266ca\\";",
134
- "context.lineWidth=1.2000000000000002;",
135
- "context.strokeRect(48, 26, 96, 23)",
136
- "context.fillStyle=\\"#F8F9FA\\";",
137
- "context.font=\\"400 11px 'Roboto', arial\\";",
138
- "context.textAlign=\\"center\\";",
139
- "context.textBaseline=\\"middle\\";",
140
- "context.lineWidth=0.4;",
141
- "context.strokeStyle=\\"#333\\";",
142
- "context.fillRect(0, 0, 1000, 26)",
143
- "context.fillRect(0, 0, 48, 1000)",
144
- "context.fillStyle=\\"#E8EAED\\";",
145
- "context.fillStyle=\\"#E8EAED\\";",
146
- "context.fillRect(48, 0, 96, 26)",
147
- "context.fillStyle=\\"#E8EAED\\";",
148
- "context.fillRect(0, 26, 48, 23)",
149
- "context.beginPath()",
150
- "context.moveTo(48, 0)",
151
- "context.lineTo(48, 1000)",
152
- "context.moveTo(0, 26)",
153
- "context.lineTo(1000, 26)",
154
- "context.strokeStyle=\\"#C0C0C0\\";",
155
- "context.stroke()",
156
- "context.beginPath()",
157
- "context.fillStyle=\\"#666666\\";",
158
- "context.fillText(\\"A\\", 96, 13)",
159
- "context.moveTo(144, 0)",
160
- "context.lineTo(144, 26)",
161
- "context.fillStyle=\\"#666666\\";",
162
- "context.fillText(\\"B\\", 192, 13)",
163
- "context.moveTo(240, 0)",
164
- "context.lineTo(240, 26)",
165
- "context.fillStyle=\\"#666666\\";",
166
- "context.fillText(\\"C\\", 288, 13)",
167
- "context.moveTo(336, 0)",
168
- "context.lineTo(336, 26)",
169
- "context.fillStyle=\\"#666666\\";",
170
- "context.fillText(\\"D\\", 384, 13)",
171
- "context.moveTo(432, 0)",
172
- "context.lineTo(432, 26)",
173
- "context.fillStyle=\\"#666666\\";",
174
- "context.fillText(\\"E\\", 480, 13)",
175
- "context.moveTo(528, 0)",
176
- "context.lineTo(528, 26)",
177
- "context.fillStyle=\\"#666666\\";",
178
- "context.fillText(\\"F\\", 576, 13)",
179
- "context.moveTo(624, 0)",
180
- "context.lineTo(624, 26)",
181
- "context.fillStyle=\\"#666666\\";",
182
- "context.fillText(\\"G\\", 672, 13)",
183
- "context.moveTo(720, 0)",
184
- "context.lineTo(720, 26)",
185
- "context.fillStyle=\\"#666666\\";",
186
- "context.fillText(\\"H\\", 768, 13)",
187
- "context.moveTo(816, 0)",
188
- "context.lineTo(816, 26)",
189
- "context.fillStyle=\\"#666666\\";",
190
- "context.fillText(\\"I\\", 864, 13)",
191
- "context.moveTo(912, 0)",
192
- "context.lineTo(912, 26)",
193
- "context.fillStyle=\\"#666666\\";",
194
- "context.fillText(\\"J\\", 960, 13)",
195
- "context.moveTo(1008, 0)",
196
- "context.lineTo(1008, 26)",
197
- "context.fillStyle=\\"#666666\\";",
198
- "context.fillText(\\"1\\", 24, 37.5)",
199
- "context.moveTo(0, 49)",
200
- "context.lineTo(48, 49)",
201
- "context.fillStyle=\\"#666666\\";",
202
- "context.fillText(\\"2\\", 24, 60.5)",
203
- "context.moveTo(0, 72)",
204
- "context.lineTo(48, 72)",
205
- "context.fillStyle=\\"#666666\\";",
206
- "context.fillText(\\"3\\", 24, 83.5)",
207
- "context.moveTo(0, 95)",
208
- "context.lineTo(48, 95)",
209
- "context.fillStyle=\\"#666666\\";",
210
- "context.fillText(\\"4\\", 24, 106.5)",
211
- "context.moveTo(0, 118)",
212
- "context.lineTo(48, 118)",
213
- "context.fillStyle=\\"#666666\\";",
214
- "context.fillText(\\"5\\", 24, 129.5)",
215
- "context.moveTo(0, 141)",
216
- "context.lineTo(48, 141)",
217
- "context.fillStyle=\\"#666666\\";",
218
- "context.fillText(\\"6\\", 24, 152.5)",
219
- "context.moveTo(0, 164)",
220
- "context.lineTo(48, 164)",
221
- "context.fillStyle=\\"#666666\\";",
222
- "context.fillText(\\"7\\", 24, 175.5)",
223
- "context.moveTo(0, 187)",
224
- "context.lineTo(48, 187)",
225
- "context.fillStyle=\\"#666666\\";",
226
- "context.fillText(\\"8\\", 24, 198.5)",
227
- "context.moveTo(0, 210)",
228
- "context.lineTo(48, 210)",
229
- "context.fillStyle=\\"#666666\\";",
230
- "context.fillText(\\"9\\", 24, 221.5)",
231
- "context.moveTo(0, 233)",
232
- "context.lineTo(48, 233)",
233
- "context.fillStyle=\\"#666666\\";",
234
- "context.fillText(\\"10\\", 24, 244.5)",
235
- "context.moveTo(0, 256)",
236
- "context.lineTo(48, 256)",
237
- "context.fillStyle=\\"#666666\\";",
238
- "context.fillText(\\"11\\", 24, 267.5)",
239
- "context.moveTo(0, 279)",
240
- "context.lineTo(48, 279)",
241
- "context.fillStyle=\\"#666666\\";",
242
- "context.fillText(\\"12\\", 24, 290.5)",
243
- "context.moveTo(0, 302)",
244
- "context.lineTo(48, 302)",
245
- "context.fillStyle=\\"#666666\\";",
246
- "context.fillText(\\"13\\", 24, 313.5)",
247
- "context.moveTo(0, 325)",
248
- "context.lineTo(48, 325)",
249
- "context.fillStyle=\\"#666666\\";",
250
- "context.fillText(\\"14\\", 24, 336.5)",
251
- "context.moveTo(0, 348)",
252
- "context.lineTo(48, 348)",
253
- "context.fillStyle=\\"#666666\\";",
254
- "context.fillText(\\"15\\", 24, 359.5)",
255
- "context.moveTo(0, 371)",
256
- "context.lineTo(48, 371)",
257
- "context.fillStyle=\\"#666666\\";",
258
- "context.fillText(\\"16\\", 24, 382.5)",
259
- "context.moveTo(0, 394)",
260
- "context.lineTo(48, 394)",
261
- "context.fillStyle=\\"#666666\\";",
262
- "context.fillText(\\"17\\", 24, 405.5)",
263
- "context.moveTo(0, 417)",
264
- "context.lineTo(48, 417)",
265
- "context.fillStyle=\\"#666666\\";",
266
- "context.fillText(\\"18\\", 24, 428.5)",
267
- "context.moveTo(0, 440)",
268
- "context.lineTo(48, 440)",
269
- "context.fillStyle=\\"#666666\\";",
270
- "context.fillText(\\"19\\", 24, 451.5)",
271
- "context.moveTo(0, 463)",
272
- "context.lineTo(48, 463)",
273
- "context.fillStyle=\\"#666666\\";",
274
- "context.fillText(\\"20\\", 24, 474.5)",
275
- "context.moveTo(0, 486)",
276
- "context.lineTo(48, 486)",
277
- "context.fillStyle=\\"#666666\\";",
278
- "context.fillText(\\"21\\", 24, 497.5)",
279
- "context.moveTo(0, 509)",
280
- "context.lineTo(48, 509)",
281
- "context.fillStyle=\\"#666666\\";",
282
- "context.fillText(\\"22\\", 24, 520.5)",
283
- "context.moveTo(0, 532)",
284
- "context.lineTo(48, 532)",
285
- "context.fillStyle=\\"#666666\\";",
286
- "context.fillText(\\"23\\", 24, 543.5)",
287
- "context.moveTo(0, 555)",
288
- "context.lineTo(48, 555)",
289
- "context.fillStyle=\\"#666666\\";",
290
- "context.fillText(\\"24\\", 24, 566.5)",
291
- "context.moveTo(0, 578)",
292
- "context.lineTo(48, 578)",
293
- "context.fillStyle=\\"#666666\\";",
294
- "context.fillText(\\"25\\", 24, 589.5)",
295
- "context.moveTo(0, 601)",
296
- "context.lineTo(48, 601)",
297
- "context.fillStyle=\\"#666666\\";",
298
- "context.fillText(\\"26\\", 24, 612.5)",
299
- "context.moveTo(0, 624)",
300
- "context.lineTo(48, 624)",
301
- "context.fillStyle=\\"#666666\\";",
302
- "context.fillText(\\"27\\", 24, 635.5)",
303
- "context.moveTo(0, 647)",
304
- "context.lineTo(48, 647)",
305
- "context.fillStyle=\\"#666666\\";",
306
- "context.fillText(\\"28\\", 24, 658.5)",
307
- "context.moveTo(0, 670)",
308
- "context.lineTo(48, 670)",
309
- "context.fillStyle=\\"#666666\\";",
310
- "context.fillText(\\"29\\", 24, 681.5)",
311
- "context.moveTo(0, 693)",
312
- "context.lineTo(48, 693)",
313
- "context.fillStyle=\\"#666666\\";",
314
- "context.fillText(\\"30\\", 24, 704.5)",
315
- "context.moveTo(0, 716)",
316
- "context.lineTo(48, 716)",
317
- "context.fillStyle=\\"#666666\\";",
318
- "context.fillText(\\"31\\", 24, 727.5)",
319
- "context.moveTo(0, 739)",
320
- "context.lineTo(48, 739)",
321
- "context.fillStyle=\\"#666666\\";",
322
- "context.fillText(\\"32\\", 24, 750.5)",
323
- "context.moveTo(0, 762)",
324
- "context.lineTo(48, 762)",
325
- "context.fillStyle=\\"#666666\\";",
326
- "context.fillText(\\"33\\", 24, 773.5)",
327
- "context.moveTo(0, 785)",
328
- "context.lineTo(48, 785)",
329
- "context.fillStyle=\\"#666666\\";",
330
- "context.fillText(\\"34\\", 24, 796.5)",
331
- "context.moveTo(0, 808)",
332
- "context.lineTo(48, 808)",
333
- "context.fillStyle=\\"#666666\\";",
334
- "context.fillText(\\"35\\", 24, 819.5)",
335
- "context.moveTo(0, 831)",
336
- "context.lineTo(48, 831)",
337
- "context.fillStyle=\\"#666666\\";",
338
- "context.fillText(\\"36\\", 24, 842.5)",
339
- "context.moveTo(0, 854)",
340
- "context.lineTo(48, 854)",
341
- "context.fillStyle=\\"#666666\\";",
342
- "context.fillText(\\"37\\", 24, 865.5)",
343
- "context.moveTo(0, 877)",
344
- "context.lineTo(48, 877)",
345
- "context.fillStyle=\\"#666666\\";",
346
- "context.fillText(\\"38\\", 24, 888.5)",
347
- "context.moveTo(0, 900)",
348
- "context.lineTo(48, 900)",
349
- "context.fillStyle=\\"#666666\\";",
350
- "context.fillText(\\"39\\", 24, 911.5)",
351
- "context.moveTo(0, 923)",
352
- "context.lineTo(48, 923)",
353
- "context.fillStyle=\\"#666666\\";",
354
- "context.fillText(\\"40\\", 24, 934.5)",
355
- "context.moveTo(0, 946)",
356
- "context.lineTo(48, 946)",
357
- "context.fillStyle=\\"#666666\\";",
358
- "context.fillText(\\"41\\", 24, 957.5)",
359
- "context.moveTo(0, 969)",
360
- "context.lineTo(48, 969)",
361
- "context.fillStyle=\\"#666666\\";",
362
- "context.fillText(\\"42\\", 24, 980.5)",
363
- "context.moveTo(0, 992)",
364
- "context.lineTo(48, 992)",
365
- "context.fillStyle=\\"#666666\\";",
366
- "context.fillText(\\"43\\", 24, 1003.5)",
367
- "context.moveTo(0, 1015)",
368
- "context.lineTo(48, 1015)",
369
- "context.stroke()",
370
- ]
371
- `;