@trebco/treb 37.0.0 → 37.0.1

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 (528) hide show
  1. package/build/package.json +119 -0
  2. package/build/treb-base-types/src/api_types.d.ts +11 -0
  3. package/build/treb-base-types/src/api_types.js +22 -0
  4. package/build/treb-base-types/src/api_types.js.map +1 -0
  5. package/build/treb-base-types/src/area-utils.d.ts +9 -0
  6. package/build/treb-base-types/src/area-utils.js +50 -0
  7. package/build/treb-base-types/src/area-utils.js.map +1 -0
  8. package/build/treb-base-types/src/area.d.ts +182 -0
  9. package/build/treb-base-types/src/area.js +715 -0
  10. package/build/treb-base-types/src/area.js.map +1 -0
  11. package/build/treb-base-types/src/basic_types.d.ts +20 -0
  12. package/build/treb-base-types/src/basic_types.js +22 -0
  13. package/build/treb-base-types/src/basic_types.js.map +1 -0
  14. package/build/treb-base-types/src/cell.d.ts +167 -0
  15. package/build/treb-base-types/src/cell.js +432 -0
  16. package/build/treb-base-types/src/cell.js.map +1 -0
  17. package/build/treb-base-types/src/cells.d.ts +251 -0
  18. package/build/treb-base-types/src/cells.js +1136 -0
  19. package/build/treb-base-types/src/cells.js.map +1 -0
  20. package/build/treb-base-types/src/color.d.ts +35 -0
  21. package/build/treb-base-types/src/color.js +162 -0
  22. package/build/treb-base-types/src/color.js.map +1 -0
  23. package/build/treb-base-types/src/dom-utilities.d.ts +70 -0
  24. package/build/treb-base-types/src/dom-utilities.js +144 -0
  25. package/build/treb-base-types/src/dom-utilities.js.map +1 -0
  26. package/build/treb-base-types/src/evaluate-options.d.ts +35 -0
  27. package/build/treb-base-types/src/evaluate-options.js +22 -0
  28. package/build/treb-base-types/src/evaluate-options.js.map +1 -0
  29. package/build/treb-base-types/src/font-stack.d.ts +37 -0
  30. package/build/treb-base-types/src/font-stack.js +93 -0
  31. package/build/treb-base-types/src/font-stack.js.map +1 -0
  32. package/build/treb-base-types/src/gradient.d.ts +18 -0
  33. package/build/treb-base-types/src/gradient.js +86 -0
  34. package/build/treb-base-types/src/gradient.js.map +1 -0
  35. package/build/treb-base-types/src/import.d.ts +48 -0
  36. package/build/treb-base-types/src/import.js +22 -0
  37. package/build/treb-base-types/src/import.js.map +1 -0
  38. package/build/treb-base-types/src/index-standalone.d.ts +6 -0
  39. package/build/treb-base-types/src/index-standalone.js +27 -0
  40. package/build/treb-base-types/src/index-standalone.js.map +1 -0
  41. package/build/treb-base-types/src/index.d.ts +22 -0
  42. package/build/treb-base-types/src/index.js +45 -0
  43. package/build/treb-base-types/src/index.js.map +1 -0
  44. package/build/treb-base-types/src/layout.d.ts +22 -0
  45. package/build/treb-base-types/src/layout.js +22 -0
  46. package/build/treb-base-types/src/layout.js.map +1 -0
  47. package/build/treb-base-types/src/localization.d.ts +37 -0
  48. package/build/treb-base-types/src/localization.js +157 -0
  49. package/build/treb-base-types/src/localization.js.map +1 -0
  50. package/build/treb-base-types/src/rectangle.d.ts +51 -0
  51. package/build/treb-base-types/src/rectangle.js +123 -0
  52. package/build/treb-base-types/src/rectangle.js.map +1 -0
  53. package/build/treb-base-types/src/render_text.d.ts +34 -0
  54. package/build/treb-base-types/src/render_text.js +22 -0
  55. package/build/treb-base-types/src/render_text.js.map +1 -0
  56. package/build/treb-base-types/src/style.d.ts +214 -0
  57. package/build/treb-base-types/src/style.js +373 -0
  58. package/build/treb-base-types/src/style.js.map +1 -0
  59. package/build/treb-base-types/src/table.d.ts +58 -0
  60. package/build/treb-base-types/src/table.js +27 -0
  61. package/build/treb-base-types/src/table.js.map +1 -0
  62. package/build/treb-base-types/src/text_part.d.ts +26 -0
  63. package/build/treb-base-types/src/text_part.js +47 -0
  64. package/build/treb-base-types/src/text_part.js.map +1 -0
  65. package/build/treb-base-types/src/theme.d.ts +120 -0
  66. package/build/treb-base-types/src/theme.js +460 -0
  67. package/build/treb-base-types/src/theme.js.map +1 -0
  68. package/build/treb-base-types/src/union.d.ts +73 -0
  69. package/build/treb-base-types/src/union.js +61 -0
  70. package/build/treb-base-types/src/union.js.map +1 -0
  71. package/build/treb-base-types/src/value-type.d.ts +86 -0
  72. package/build/treb-base-types/src/value-type.js +168 -0
  73. package/build/treb-base-types/src/value-type.js.map +1 -0
  74. package/build/treb-base-types/src/worker-proxy.d.ts +95 -0
  75. package/build/treb-base-types/src/worker-proxy.js +221 -0
  76. package/build/treb-base-types/src/worker-proxy.js.map +1 -0
  77. package/build/treb-calculator/src/calculator.d.ts +249 -0
  78. package/build/treb-calculator/src/calculator.js +2755 -0
  79. package/build/treb-calculator/src/calculator.js.map +1 -0
  80. package/build/treb-calculator/src/complex-math.d.ts +75 -0
  81. package/build/treb-calculator/src/complex-math.js +559 -0
  82. package/build/treb-calculator/src/complex-math.js.map +1 -0
  83. package/build/treb-calculator/src/dag/array-vertex.d.ts +71 -0
  84. package/build/treb-calculator/src/dag/array-vertex.js +156 -0
  85. package/build/treb-calculator/src/dag/array-vertex.js.map +1 -0
  86. package/build/treb-calculator/src/dag/calculation_leaf_vertex.d.ts +48 -0
  87. package/build/treb-calculator/src/dag/calculation_leaf_vertex.js +84 -0
  88. package/build/treb-calculator/src/dag/calculation_leaf_vertex.js.map +1 -0
  89. package/build/treb-calculator/src/dag/graph.d.ts +134 -0
  90. package/build/treb-calculator/src/dag/graph.js +842 -0
  91. package/build/treb-calculator/src/dag/graph.js.map +1 -0
  92. package/build/treb-calculator/src/dag/spreadsheet_vertex.d.ts +58 -0
  93. package/build/treb-calculator/src/dag/spreadsheet_vertex.js +232 -0
  94. package/build/treb-calculator/src/dag/spreadsheet_vertex.js.map +1 -0
  95. package/build/treb-calculator/src/dag/spreadsheet_vertex_base.d.ts +20 -0
  96. package/build/treb-calculator/src/dag/spreadsheet_vertex_base.js +25 -0
  97. package/build/treb-calculator/src/dag/spreadsheet_vertex_base.js.map +1 -0
  98. package/build/treb-calculator/src/dag/state_leaf_vertex.d.ts +43 -0
  99. package/build/treb-calculator/src/dag/state_leaf_vertex.js +81 -0
  100. package/build/treb-calculator/src/dag/state_leaf_vertex.js.map +1 -0
  101. package/build/treb-calculator/src/dag/vertex.d.ts +71 -0
  102. package/build/treb-calculator/src/dag/vertex.js +274 -0
  103. package/build/treb-calculator/src/dag/vertex.js.map +1 -0
  104. package/build/treb-calculator/src/descriptors.d.ts +189 -0
  105. package/build/treb-calculator/src/descriptors.js +22 -0
  106. package/build/treb-calculator/src/descriptors.js.map +1 -0
  107. package/build/treb-calculator/src/expression-calculator.d.ts +127 -0
  108. package/build/treb-calculator/src/expression-calculator.js +1033 -0
  109. package/build/treb-calculator/src/expression-calculator.js.map +1 -0
  110. package/build/treb-calculator/src/function-error.d.ts +35 -0
  111. package/build/treb-calculator/src/function-error.js +85 -0
  112. package/build/treb-calculator/src/function-error.js.map +1 -0
  113. package/build/treb-calculator/src/function-library.d.ts +22 -0
  114. package/build/treb-calculator/src/function-library.js +96 -0
  115. package/build/treb-calculator/src/function-library.js.map +1 -0
  116. package/build/treb-calculator/src/functions/base-functions.d.ts +7 -0
  117. package/build/treb-calculator/src/functions/base-functions.js +2611 -0
  118. package/build/treb-calculator/src/functions/base-functions.js.map +1 -0
  119. package/build/treb-calculator/src/functions/beta.d.ts +17 -0
  120. package/build/treb-calculator/src/functions/beta.js +201 -0
  121. package/build/treb-calculator/src/functions/beta.js.map +1 -0
  122. package/build/treb-calculator/src/functions/checkbox.d.ts +3 -0
  123. package/build/treb-calculator/src/functions/checkbox.js +128 -0
  124. package/build/treb-calculator/src/functions/checkbox.js.map +1 -0
  125. package/build/treb-calculator/src/functions/complex-functions.d.ts +2 -0
  126. package/build/treb-calculator/src/functions/complex-functions.js +217 -0
  127. package/build/treb-calculator/src/functions/complex-functions.js.map +1 -0
  128. package/build/treb-calculator/src/functions/date-utils.d.ts +3 -0
  129. package/build/treb-calculator/src/functions/date-utils.js +59 -0
  130. package/build/treb-calculator/src/functions/date-utils.js.map +1 -0
  131. package/build/treb-calculator/src/functions/finance-functions.d.ts +2 -0
  132. package/build/treb-calculator/src/functions/finance-functions.js +547 -0
  133. package/build/treb-calculator/src/functions/finance-functions.js.map +1 -0
  134. package/build/treb-calculator/src/functions/fp.d.ts +2 -0
  135. package/build/treb-calculator/src/functions/fp.js +463 -0
  136. package/build/treb-calculator/src/functions/fp.js.map +1 -0
  137. package/build/treb-calculator/src/functions/function-utilities.d.ts +2 -0
  138. package/build/treb-calculator/src/functions/function-utilities.js +36 -0
  139. package/build/treb-calculator/src/functions/function-utilities.js.map +1 -0
  140. package/build/treb-calculator/src/functions/gamma.d.ts +20 -0
  141. package/build/treb-calculator/src/functions/gamma.js +142 -0
  142. package/build/treb-calculator/src/functions/gamma.js.map +1 -0
  143. package/build/treb-calculator/src/functions/information-functions.d.ts +2 -0
  144. package/build/treb-calculator/src/functions/information-functions.js +71 -0
  145. package/build/treb-calculator/src/functions/information-functions.js.map +1 -0
  146. package/build/treb-calculator/src/functions/lambda-functions.d.ts +2 -0
  147. package/build/treb-calculator/src/functions/lambda-functions.js +85 -0
  148. package/build/treb-calculator/src/functions/lambda-functions.js.map +1 -0
  149. package/build/treb-calculator/src/functions/matrix-functions.d.ts +2 -0
  150. package/build/treb-calculator/src/functions/matrix-functions.js +144 -0
  151. package/build/treb-calculator/src/functions/matrix-functions.js.map +1 -0
  152. package/build/treb-calculator/src/functions/normal.d.ts +2 -0
  153. package/build/treb-calculator/src/functions/normal.js +32 -0
  154. package/build/treb-calculator/src/functions/normal.js.map +1 -0
  155. package/build/treb-calculator/src/functions/regex-functions.d.ts +2 -0
  156. package/build/treb-calculator/src/functions/regex-functions.js +188 -0
  157. package/build/treb-calculator/src/functions/regex-functions.js.map +1 -0
  158. package/build/treb-calculator/src/functions/sparkline.d.ts +37 -0
  159. package/build/treb-calculator/src/functions/sparkline.js +264 -0
  160. package/build/treb-calculator/src/functions/sparkline.js.map +1 -0
  161. package/build/treb-calculator/src/functions/statistics-functions.d.ts +6 -0
  162. package/build/treb-calculator/src/functions/statistics-functions.js +989 -0
  163. package/build/treb-calculator/src/functions/statistics-functions.js.map +1 -0
  164. package/build/treb-calculator/src/functions/students-t.d.ts +3 -0
  165. package/build/treb-calculator/src/functions/students-t.js +64 -0
  166. package/build/treb-calculator/src/functions/students-t.js.map +1 -0
  167. package/build/treb-calculator/src/functions/text-functions.d.ts +3 -0
  168. package/build/treb-calculator/src/functions/text-functions.js +320 -0
  169. package/build/treb-calculator/src/functions/text-functions.js.map +1 -0
  170. package/build/treb-calculator/src/index.d.ts +2 -0
  171. package/build/treb-calculator/src/index.js +22 -0
  172. package/build/treb-calculator/src/index.js.map +1 -0
  173. package/build/treb-calculator/src/notifier-types.d.ts +26 -0
  174. package/build/treb-calculator/src/notifier-types.js +22 -0
  175. package/build/treb-calculator/src/notifier-types.js.map +1 -0
  176. package/build/treb-calculator/src/primitives.d.ts +15 -0
  177. package/build/treb-calculator/src/primitives.js +398 -0
  178. package/build/treb-calculator/src/primitives.js.map +1 -0
  179. package/build/treb-calculator/src/utilities.d.ts +68 -0
  180. package/build/treb-calculator/src/utilities.js +324 -0
  181. package/build/treb-calculator/src/utilities.js.map +1 -0
  182. package/build/treb-charts/src/chart-functions.d.ts +8 -0
  183. package/build/treb-charts/src/chart-functions.js +209 -0
  184. package/build/treb-charts/src/chart-functions.js.map +1 -0
  185. package/build/treb-charts/src/chart-types.d.ts +233 -0
  186. package/build/treb-charts/src/chart-types.js +57 -0
  187. package/build/treb-charts/src/chart-types.js.map +1 -0
  188. package/build/treb-charts/src/chart-utils.d.ts +106 -0
  189. package/build/treb-charts/src/chart-utils.js +1060 -0
  190. package/build/treb-charts/src/chart-utils.js.map +1 -0
  191. package/build/treb-charts/src/chart.d.ts +23 -0
  192. package/build/treb-charts/src/chart.js +94 -0
  193. package/build/treb-charts/src/chart.js.map +1 -0
  194. package/build/treb-charts/src/default-chart-renderer.d.ts +16 -0
  195. package/build/treb-charts/src/default-chart-renderer.js +533 -0
  196. package/build/treb-charts/src/default-chart-renderer.js.map +1 -0
  197. package/build/treb-charts/src/index.d.ts +5 -0
  198. package/build/treb-charts/src/index.js +24 -0
  199. package/build/treb-charts/src/index.js.map +1 -0
  200. package/build/treb-charts/src/main.d.ts +1 -0
  201. package/build/treb-charts/src/main.js +34 -0
  202. package/build/treb-charts/src/main.js.map +1 -0
  203. package/build/treb-charts/src/quicksort.d.ts +1 -0
  204. package/build/treb-charts/src/quicksort.js +49 -0
  205. package/build/treb-charts/src/quicksort.js.map +1 -0
  206. package/build/treb-charts/src/rectangle.d.ts +18 -0
  207. package/build/treb-charts/src/rectangle.js +41 -0
  208. package/build/treb-charts/src/rectangle.js.map +1 -0
  209. package/build/treb-charts/src/renderer-type.d.ts +24 -0
  210. package/build/treb-charts/src/renderer-type.js +22 -0
  211. package/build/treb-charts/src/renderer-type.js.map +1 -0
  212. package/build/treb-charts/src/renderer.d.ts +127 -0
  213. package/build/treb-charts/src/renderer.js +1518 -0
  214. package/build/treb-charts/src/renderer.js.map +1 -0
  215. package/build/treb-charts/src/util.d.ts +18 -0
  216. package/build/treb-charts/src/util.js +71 -0
  217. package/build/treb-charts/src/util.js.map +1 -0
  218. package/build/treb-data-model/src/annotation.d.ts +167 -0
  219. package/build/treb-data-model/src/annotation.js +120 -0
  220. package/build/treb-data-model/src/annotation.js.map +1 -0
  221. package/build/treb-data-model/src/conditional_format.d.ts +155 -0
  222. package/build/treb-data-model/src/conditional_format.js +62 -0
  223. package/build/treb-data-model/src/conditional_format.js.map +1 -0
  224. package/build/treb-data-model/src/data-validation.d.ts +28 -0
  225. package/build/treb-data-model/src/data-validation.js +22 -0
  226. package/build/treb-data-model/src/data-validation.js.map +1 -0
  227. package/build/treb-data-model/src/data_model.d.ts +173 -0
  228. package/build/treb-data-model/src/data_model.js +637 -0
  229. package/build/treb-data-model/src/data_model.js.map +1 -0
  230. package/build/treb-data-model/src/index.d.ts +13 -0
  231. package/build/treb-data-model/src/index.js +28 -0
  232. package/build/treb-data-model/src/index.js.map +1 -0
  233. package/build/treb-data-model/src/language-model.d.ts +22 -0
  234. package/build/treb-data-model/src/language-model.js +22 -0
  235. package/build/treb-data-model/src/language-model.js.map +1 -0
  236. package/build/treb-data-model/src/named.d.ts +124 -0
  237. package/build/treb-data-model/src/named.js +372 -0
  238. package/build/treb-data-model/src/named.js.map +1 -0
  239. package/build/treb-data-model/src/serialize_options.d.ts +49 -0
  240. package/build/treb-data-model/src/serialize_options.js +22 -0
  241. package/build/treb-data-model/src/serialize_options.js.map +1 -0
  242. package/build/treb-data-model/src/sheet.d.ts +499 -0
  243. package/build/treb-data-model/src/sheet.js +2904 -0
  244. package/build/treb-data-model/src/sheet.js.map +1 -0
  245. package/build/treb-data-model/src/sheet_collection.d.ts +58 -0
  246. package/build/treb-data-model/src/sheet_collection.js +112 -0
  247. package/build/treb-data-model/src/sheet_collection.js.map +1 -0
  248. package/build/treb-data-model/src/sheet_selection.d.ts +42 -0
  249. package/build/treb-data-model/src/sheet_selection.js +39 -0
  250. package/build/treb-data-model/src/sheet_selection.js.map +1 -0
  251. package/build/treb-data-model/src/sheet_types.d.ts +104 -0
  252. package/build/treb-data-model/src/sheet_types.js +22 -0
  253. package/build/treb-data-model/src/sheet_types.js.map +1 -0
  254. package/build/treb-data-model/src/types.d.ts +59 -0
  255. package/build/treb-data-model/src/types.js +22 -0
  256. package/build/treb-data-model/src/types.js.map +1 -0
  257. package/build/treb-embed/src/custom-element/spreadsheet-constructor.d.ts +75 -0
  258. package/build/treb-embed/src/custom-element/spreadsheet-constructor.js +1144 -0
  259. package/build/treb-embed/src/custom-element/spreadsheet-constructor.js.map +1 -0
  260. package/build/treb-embed/src/custom-element/treb-global.d.ts +36 -0
  261. package/build/treb-embed/src/custom-element/treb-global.js +64 -0
  262. package/build/treb-embed/src/custom-element/treb-global.js.map +1 -0
  263. package/build/treb-embed/src/custom-element/treb-spreadsheet-element.d.ts +1 -0
  264. package/build/treb-embed/src/custom-element/treb-spreadsheet-element.js +61 -0
  265. package/build/treb-embed/src/custom-element/treb-spreadsheet-element.js.map +1 -0
  266. package/build/treb-embed/src/embedded-spreadsheet.d.ts +1358 -0
  267. package/build/treb-embed/src/embedded-spreadsheet.js +5205 -0
  268. package/build/treb-embed/src/embedded-spreadsheet.js.map +1 -0
  269. package/build/treb-embed/src/index.d.ts +12 -0
  270. package/build/treb-embed/src/index.js +34 -0
  271. package/build/treb-embed/src/index.js.map +1 -0
  272. package/build/treb-embed/src/options.d.ts +266 -0
  273. package/build/treb-embed/src/options.js +56 -0
  274. package/build/treb-embed/src/options.js.map +1 -0
  275. package/build/treb-embed/src/plugin.d.ts +9 -0
  276. package/build/treb-embed/src/plugin.js +22 -0
  277. package/build/treb-embed/src/plugin.js.map +1 -0
  278. package/build/treb-embed/src/progress-dialog.d.ts +49 -0
  279. package/build/treb-embed/src/progress-dialog.js +178 -0
  280. package/build/treb-embed/src/progress-dialog.js.map +1 -0
  281. package/build/treb-embed/src/selection-state.d.ts +15 -0
  282. package/build/treb-embed/src/selection-state.js +22 -0
  283. package/build/treb-embed/src/selection-state.js.map +1 -0
  284. package/build/treb-embed/src/spinner.d.ts +8 -0
  285. package/build/treb-embed/src/spinner.js +40 -0
  286. package/build/treb-embed/src/spinner.js.map +1 -0
  287. package/build/treb-embed/src/toolbar-message.d.ts +72 -0
  288. package/build/treb-embed/src/toolbar-message.js +22 -0
  289. package/build/treb-embed/src/toolbar-message.js.map +1 -0
  290. package/build/treb-embed/src/types.d.ts +185 -0
  291. package/build/treb-embed/src/types.js +45 -0
  292. package/build/treb-embed/src/types.js.map +1 -0
  293. package/build/treb-embed/tsconfig.tsbuildinfo +1 -0
  294. package/build/treb-export/src/address-type.d.ts +34 -0
  295. package/build/treb-export/src/address-type.js +53 -0
  296. package/build/treb-export/src/address-type.js.map +1 -0
  297. package/build/treb-export/src/base-template.d.ts +1 -0
  298. package/build/treb-export/src/base-template.js +22 -0
  299. package/build/treb-export/src/base-template.js.map +1 -0
  300. package/build/treb-export/src/column-width.d.ts +2 -0
  301. package/build/treb-export/src/column-width.js +80 -0
  302. package/build/treb-export/src/column-width.js.map +1 -0
  303. package/build/treb-export/src/drawing/bubble-chart-template.d.ts +514 -0
  304. package/build/treb-export/src/drawing/bubble-chart-template.js +544 -0
  305. package/build/treb-export/src/drawing/bubble-chart-template.js.map +1 -0
  306. package/build/treb-export/src/drawing/chart-template-components2.d.ts +365 -0
  307. package/build/treb-export/src/drawing/chart-template-components2.js +386 -0
  308. package/build/treb-export/src/drawing/chart-template-components2.js.map +1 -0
  309. package/build/treb-export/src/drawing/chart.d.ts +26 -0
  310. package/build/treb-export/src/drawing/chart.js +247 -0
  311. package/build/treb-export/src/drawing/chart.js.map +1 -0
  312. package/build/treb-export/src/drawing/column-chart-template2.d.ts +490 -0
  313. package/build/treb-export/src/drawing/column-chart-template2.js +518 -0
  314. package/build/treb-export/src/drawing/column-chart-template2.js.map +1 -0
  315. package/build/treb-export/src/drawing/donut-chart-template2.d.ts +272 -0
  316. package/build/treb-export/src/drawing/donut-chart-template2.js +293 -0
  317. package/build/treb-export/src/drawing/donut-chart-template2.js.map +1 -0
  318. package/build/treb-export/src/drawing/drawing.d.ts +49 -0
  319. package/build/treb-export/src/drawing/drawing.js +193 -0
  320. package/build/treb-export/src/drawing/drawing.js.map +1 -0
  321. package/build/treb-export/src/drawing/embedded-image.d.ts +12 -0
  322. package/build/treb-export/src/drawing/embedded-image.js +54 -0
  323. package/build/treb-export/src/drawing/embedded-image.js.map +1 -0
  324. package/build/treb-export/src/drawing/scatter-chart-template2.d.ts +520 -0
  325. package/build/treb-export/src/drawing/scatter-chart-template2.js +551 -0
  326. package/build/treb-export/src/drawing/scatter-chart-template2.js.map +1 -0
  327. package/build/treb-export/src/export.d.ts +72 -0
  328. package/build/treb-export/src/export.js +2039 -0
  329. package/build/treb-export/src/export.js.map +1 -0
  330. package/build/treb-export/src/import-export-messages.d.ts +31 -0
  331. package/build/treb-export/src/import-export-messages.js +22 -0
  332. package/build/treb-export/src/import-export-messages.js.map +1 -0
  333. package/build/treb-export/src/import.d.ts +33 -0
  334. package/build/treb-export/src/import.js +1258 -0
  335. package/build/treb-export/src/import.js.map +1 -0
  336. package/build/treb-export/src/index.worker.d.ts +1 -0
  337. package/build/treb-export/src/index.worker.js +93 -0
  338. package/build/treb-export/src/index.worker.js.map +1 -0
  339. package/build/treb-export/src/metadata.d.ts +51 -0
  340. package/build/treb-export/src/metadata.js +153 -0
  341. package/build/treb-export/src/metadata.js.map +1 -0
  342. package/build/treb-export/src/ooxml.d.ts +7 -0
  343. package/build/treb-export/src/ooxml.js +41 -0
  344. package/build/treb-export/src/ooxml.js.map +1 -0
  345. package/build/treb-export/src/relationship.d.ts +8 -0
  346. package/build/treb-export/src/relationship.js +27 -0
  347. package/build/treb-export/src/relationship.js.map +1 -0
  348. package/build/treb-export/src/shared-strings.d.ts +11 -0
  349. package/build/treb-export/src/shared-strings.js +105 -0
  350. package/build/treb-export/src/shared-strings.js.map +1 -0
  351. package/build/treb-export/src/template-2.d.ts +1 -0
  352. package/build/treb-export/src/template-2.js +22 -0
  353. package/build/treb-export/src/template-2.js.map +1 -0
  354. package/build/treb-export/src/unescape_xml.d.ts +1 -0
  355. package/build/treb-export/src/unescape_xml.js +61 -0
  356. package/build/treb-export/src/unescape_xml.js.map +1 -0
  357. package/build/treb-export/src/workbook-sheet.d.ts +75 -0
  358. package/build/treb-export/src/workbook-sheet.js +128 -0
  359. package/build/treb-export/src/workbook-sheet.js.map +1 -0
  360. package/build/treb-export/src/workbook-style.d.ts +110 -0
  361. package/build/treb-export/src/workbook-style.js +1134 -0
  362. package/build/treb-export/src/workbook-style.js.map +1 -0
  363. package/build/treb-export/src/workbook-theme.d.ts +13 -0
  364. package/build/treb-export/src/workbook-theme.js +85 -0
  365. package/build/treb-export/src/workbook-theme.js.map +1 -0
  366. package/build/treb-export/src/workbook.d.ts +123 -0
  367. package/build/treb-export/src/workbook.js +644 -0
  368. package/build/treb-export/src/workbook.js.map +1 -0
  369. package/build/treb-export/src/xml-test.d.ts +9 -0
  370. package/build/treb-export/src/xml-test.js +52 -0
  371. package/build/treb-export/src/xml-test.js.map +1 -0
  372. package/build/treb-export/src/xml-utils.d.ts +76 -0
  373. package/build/treb-export/src/xml-utils.js +223 -0
  374. package/build/treb-export/src/xml-utils.js.map +1 -0
  375. package/build/treb-export/src/zip-wrapper.d.ts +22 -0
  376. package/build/treb-export/src/zip-wrapper.js +93 -0
  377. package/build/treb-export/src/zip-wrapper.js.map +1 -0
  378. package/build/treb-format/src/format.d.ts +130 -0
  379. package/build/treb-format/src/format.js +805 -0
  380. package/build/treb-format/src/format.js.map +1 -0
  381. package/build/treb-format/src/format_cache.d.ts +55 -0
  382. package/build/treb-format/src/format_cache.js +166 -0
  383. package/build/treb-format/src/format_cache.js.map +1 -0
  384. package/build/treb-format/src/format_parser.d.ts +70 -0
  385. package/build/treb-format/src/format_parser.js +618 -0
  386. package/build/treb-format/src/format_parser.js.map +1 -0
  387. package/build/treb-format/src/index.d.ts +4 -0
  388. package/build/treb-format/src/index.js +25 -0
  389. package/build/treb-format/src/index.js.map +1 -0
  390. package/build/treb-format/src/number_format_section.d.ts +58 -0
  391. package/build/treb-format/src/number_format_section.js +78 -0
  392. package/build/treb-format/src/number_format_section.js.map +1 -0
  393. package/build/treb-format/src/value_parser.d.ts +48 -0
  394. package/build/treb-format/src/value_parser.js +244 -0
  395. package/build/treb-format/src/value_parser.js.map +1 -0
  396. package/build/treb-grid/src/editors/autocomplete.d.ts +39 -0
  397. package/build/treb-grid/src/editors/autocomplete.js +316 -0
  398. package/build/treb-grid/src/editors/autocomplete.js.map +1 -0
  399. package/build/treb-grid/src/editors/autocomplete_matcher.d.ts +74 -0
  400. package/build/treb-grid/src/editors/autocomplete_matcher.js +212 -0
  401. package/build/treb-grid/src/editors/autocomplete_matcher.js.map +1 -0
  402. package/build/treb-grid/src/editors/editor.d.ts +214 -0
  403. package/build/treb-grid/src/editors/editor.js +879 -0
  404. package/build/treb-grid/src/editors/editor.js.map +1 -0
  405. package/build/treb-grid/src/editors/external_editor.d.ts +11 -0
  406. package/build/treb-grid/src/editors/external_editor.js +118 -0
  407. package/build/treb-grid/src/editors/external_editor.js.map +1 -0
  408. package/build/treb-grid/src/editors/formula_bar.d.ts +85 -0
  409. package/build/treb-grid/src/editors/formula_bar.js +444 -0
  410. package/build/treb-grid/src/editors/formula_bar.js.map +1 -0
  411. package/build/treb-grid/src/editors/overlay_editor.d.ts +85 -0
  412. package/build/treb-grid/src/editors/overlay_editor.js +353 -0
  413. package/build/treb-grid/src/editors/overlay_editor.js.map +1 -0
  414. package/build/treb-grid/src/index.d.ts +12 -0
  415. package/build/treb-grid/src/index.js +28 -0
  416. package/build/treb-grid/src/index.js.map +1 -0
  417. package/build/treb-grid/src/layout/base_layout.d.ts +346 -0
  418. package/build/treb-grid/src/layout/base_layout.js +2050 -0
  419. package/build/treb-grid/src/layout/base_layout.js.map +1 -0
  420. package/build/treb-grid/src/layout/grid_layout.d.ts +19 -0
  421. package/build/treb-grid/src/layout/grid_layout.js +235 -0
  422. package/build/treb-grid/src/layout/grid_layout.js.map +1 -0
  423. package/build/treb-grid/src/layout/mock-layout.d.ts +10 -0
  424. package/build/treb-grid/src/layout/mock-layout.js +37 -0
  425. package/build/treb-grid/src/layout/mock-layout.js.map +1 -0
  426. package/build/treb-grid/src/render/selection-renderer.d.ts +97 -0
  427. package/build/treb-grid/src/render/selection-renderer.js +315 -0
  428. package/build/treb-grid/src/render/selection-renderer.js.map +1 -0
  429. package/build/treb-grid/src/render/svg_header_overlay.d.ts +20 -0
  430. package/build/treb-grid/src/render/svg_header_overlay.js +76 -0
  431. package/build/treb-grid/src/render/svg_header_overlay.js.map +1 -0
  432. package/build/treb-grid/src/render/svg_selection_block.d.ts +27 -0
  433. package/build/treb-grid/src/render/svg_selection_block.js +106 -0
  434. package/build/treb-grid/src/render/svg_selection_block.js.map +1 -0
  435. package/build/treb-grid/src/render/tile_renderer.d.ts +121 -0
  436. package/build/treb-grid/src/render/tile_renderer.js +1609 -0
  437. package/build/treb-grid/src/render/tile_renderer.js.map +1 -0
  438. package/build/treb-grid/src/types/border_constants.d.ts +9 -0
  439. package/build/treb-grid/src/types/border_constants.js +34 -0
  440. package/build/treb-grid/src/types/border_constants.js.map +1 -0
  441. package/build/treb-grid/src/types/clipboard_data.d.ts +11 -0
  442. package/build/treb-grid/src/types/clipboard_data.js +22 -0
  443. package/build/treb-grid/src/types/clipboard_data.js.map +1 -0
  444. package/build/treb-grid/src/types/clipboard_data2.d.ts +46 -0
  445. package/build/treb-grid/src/types/clipboard_data2.js +22 -0
  446. package/build/treb-grid/src/types/clipboard_data2.js.map +1 -0
  447. package/build/treb-grid/src/types/drag_mask.d.ts +10 -0
  448. package/build/treb-grid/src/types/drag_mask.js +78 -0
  449. package/build/treb-grid/src/types/drag_mask.js.map +1 -0
  450. package/build/treb-grid/src/types/external_editor_config.d.ts +33 -0
  451. package/build/treb-grid/src/types/external_editor_config.js +22 -0
  452. package/build/treb-grid/src/types/external_editor_config.js.map +1 -0
  453. package/build/treb-grid/src/types/grid.d.ts +806 -0
  454. package/build/treb-grid/src/types/grid.js +6410 -0
  455. package/build/treb-grid/src/types/grid.js.map +1 -0
  456. package/build/treb-grid/src/types/grid_base.d.ts +442 -0
  457. package/build/treb-grid/src/types/grid_base.js +3523 -0
  458. package/build/treb-grid/src/types/grid_base.js.map +1 -0
  459. package/build/treb-grid/src/types/grid_command.d.ts +408 -0
  460. package/build/treb-grid/src/types/grid_command.js +75 -0
  461. package/build/treb-grid/src/types/grid_command.js.map +1 -0
  462. package/build/treb-grid/src/types/grid_events.d.ts +93 -0
  463. package/build/treb-grid/src/types/grid_events.js +36 -0
  464. package/build/treb-grid/src/types/grid_events.js.map +1 -0
  465. package/build/treb-grid/src/types/grid_options.d.ts +50 -0
  466. package/build/treb-grid/src/types/grid_options.js +34 -0
  467. package/build/treb-grid/src/types/grid_options.js.map +1 -0
  468. package/build/treb-grid/src/types/scale-control.d.ts +21 -0
  469. package/build/treb-grid/src/types/scale-control.js +148 -0
  470. package/build/treb-grid/src/types/scale-control.js.map +1 -0
  471. package/build/treb-grid/src/types/set_range_options.d.ts +24 -0
  472. package/build/treb-grid/src/types/set_range_options.js +22 -0
  473. package/build/treb-grid/src/types/set_range_options.js.map +1 -0
  474. package/build/treb-grid/src/types/tab_bar.d.ts +84 -0
  475. package/build/treb-grid/src/types/tab_bar.js +426 -0
  476. package/build/treb-grid/src/types/tab_bar.js.map +1 -0
  477. package/build/treb-grid/src/types/tile.d.ts +29 -0
  478. package/build/treb-grid/src/types/tile.js +22 -0
  479. package/build/treb-grid/src/types/tile.js.map +1 -0
  480. package/build/treb-grid/src/types/update_flags.d.ts +48 -0
  481. package/build/treb-grid/src/types/update_flags.js +22 -0
  482. package/build/treb-grid/src/types/update_flags.js.map +1 -0
  483. package/build/treb-grid/src/util/fontmetrics.d.ts +21 -0
  484. package/build/treb-grid/src/util/fontmetrics.js +82 -0
  485. package/build/treb-grid/src/util/fontmetrics.js.map +1 -0
  486. package/build/treb-grid/src/util/ua.d.ts +33 -0
  487. package/build/treb-grid/src/util/ua.js +86 -0
  488. package/build/treb-grid/src/util/ua.js.map +1 -0
  489. package/build/treb-parser/src/csv-parser.d.ts +13 -0
  490. package/build/treb-parser/src/csv-parser.js +107 -0
  491. package/build/treb-parser/src/csv-parser.js.map +1 -0
  492. package/build/treb-parser/src/index.d.ts +4 -0
  493. package/build/treb-parser/src/index.js +25 -0
  494. package/build/treb-parser/src/index.js.map +1 -0
  495. package/build/treb-parser/src/md-parser.d.ts +97 -0
  496. package/build/treb-parser/src/md-parser.js +403 -0
  497. package/build/treb-parser/src/md-parser.js.map +1 -0
  498. package/build/treb-parser/src/parser-types.d.ts +345 -0
  499. package/build/treb-parser/src/parser-types.js +53 -0
  500. package/build/treb-parser/src/parser-types.js.map +1 -0
  501. package/build/treb-parser/src/parser.d.ts +422 -0
  502. package/build/treb-parser/src/parser.js +2418 -0
  503. package/build/treb-parser/src/parser.js.map +1 -0
  504. package/build/treb-utils/src/event_source.d.ts +34 -0
  505. package/build/treb-utils/src/event_source.js +110 -0
  506. package/build/treb-utils/src/event_source.js.map +1 -0
  507. package/build/treb-utils/src/ievent_source.d.ts +9 -0
  508. package/build/treb-utils/src/ievent_source.js +22 -0
  509. package/build/treb-utils/src/ievent_source.js.map +1 -0
  510. package/build/treb-utils/src/index.d.ts +6 -0
  511. package/build/treb-utils/src/index.js +30 -0
  512. package/build/treb-utils/src/index.js.map +1 -0
  513. package/build/treb-utils/src/measurement.d.ts +42 -0
  514. package/build/treb-utils/src/measurement.js +145 -0
  515. package/build/treb-utils/src/measurement.js.map +1 -0
  516. package/build/treb-utils/src/scale.d.ts +16 -0
  517. package/build/treb-utils/src/scale.js +106 -0
  518. package/build/treb-utils/src/scale.js.map +1 -0
  519. package/build/treb-utils/src/serialize_html.d.ts +5 -0
  520. package/build/treb-utils/src/serialize_html.js +128 -0
  521. package/build/treb-utils/src/serialize_html.js.map +1 -0
  522. package/build/treb-utils/src/validate_uri.d.ts +20 -0
  523. package/build/treb-utils/src/validate_uri.js +55 -0
  524. package/build/treb-utils/src/validate_uri.js.map +1 -0
  525. package/dist/{chunk-XD5PEZBZ.mjs → chunk-E35ONJUS.mjs} +1 -1
  526. package/dist/treb-export-worker.mjs +2 -2
  527. package/dist/treb-spreadsheet.mjs +4 -4
  528. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"area.js","sourceRoot":"","sources":["../../../treb-base-types/src/area.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * utility types collected from various other files,
3
+ * attempting to consolidate
4
+ */
5
+ export interface Size {
6
+ width: number;
7
+ height: number;
8
+ }
9
+ export interface Point {
10
+ x: number;
11
+ y: number;
12
+ }
13
+ export interface Position {
14
+ row: number;
15
+ column: number;
16
+ }
17
+ export interface Extent {
18
+ rows: number;
19
+ columns: number;
20
+ }
@@ -0,0 +1,22 @@
1
+ /*
2
+ * This file is part of TREB.
3
+ *
4
+ * TREB is free software: you can redistribute it and/or modify it under the
5
+ * terms of the GNU General Public License as published by the Free Software
6
+ * Foundation, either version 3 of the License, or (at your option) any
7
+ * later version.
8
+ *
9
+ * TREB is distributed in the hope that it will be useful, but WITHOUT ANY
10
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
12
+ * details.
13
+ *
14
+ * You should have received a copy of the GNU General Public License along
15
+ * with TREB. If not, see <https://www.gnu.org/licenses/>.
16
+ *
17
+ * Copyright 2022-2026 trebco, llc.
18
+ * info@treb.app
19
+ *
20
+ */
21
+ export {};
22
+ //# sourceMappingURL=basic_types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"basic_types.js","sourceRoot":"","sources":["../../../treb-base-types/src/basic_types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG"}
@@ -0,0 +1,167 @@
1
+ import type { Area } from './area';
2
+ import type { CellStyle } from './style';
3
+ import type { TextPart } from './text_part';
4
+ import type { Complex } from './value-type';
5
+ import { ValueType } from './value-type';
6
+ import type { CellValue, UnionValue } from './union';
7
+ import type { PreparedText } from './render_text';
8
+ import type { Table } from './table';
9
+ export interface RenderFunctionOptions {
10
+ height: number;
11
+ width: number;
12
+ context: CanvasRenderingContext2D;
13
+ cell: Cell;
14
+ style: CellStyle;
15
+ scale?: number;
16
+ }
17
+ export interface RenderFunctionResult {
18
+ handled: boolean;
19
+ }
20
+ export type RenderFunction = (options: RenderFunctionOptions) => RenderFunctionResult;
21
+ export interface ClickFunctionOptions {
22
+ cell: Cell;
23
+ x?: number;
24
+ y?: number;
25
+ width?: number;
26
+ height?: number;
27
+ scale?: number;
28
+ }
29
+ export interface ClickFunctionResult {
30
+ /**
31
+ * change the cell value, to the value passed here
32
+ *
33
+ * NOTE: this must be in canonical form (english), not translated.
34
+ */
35
+ value?: CellValue;
36
+ /**
37
+ * set to true to block normal click handling semantics
38
+ * (selecting the cell, generally)
39
+ */
40
+ block_selection?: boolean;
41
+ }
42
+ export type ClickFunction = (options: ClickFunctionOptions) => ClickFunctionResult;
43
+ export declare class Cell {
44
+ static StringToColumn(s: string): number;
45
+ value?: CellValue;
46
+ type: ValueType;
47
+ calculated?: CellValue;
48
+ calculated_type?: ValueType;
49
+ formatted?: string | TextPart[];
50
+ /**
51
+ * rendered type may be different than value type: could be a function
52
+ * returns a number, or an error. rendering an empty value should result
53
+ * in a string, so you can test on this type -- it should never be 0
54
+ * (or undefined) if the cell has been rendered.
55
+ *
56
+ * NOTE: no one really uses this. it's only read in two places -- one in
57
+ * grid to check if it's a number and we want to format as % (which seems
58
+ * wrong anyway, because what if it's a function?) -- and in sheet, as a
59
+ * flag indicating we have already rendered it (it gets flushed on change).
60
+ *
61
+ * so we could maybe remove it or switch to a boolean or something... is
62
+ * boolean any smaller than number?
63
+ */
64
+ rendered_type?: ValueType;
65
+ style?: CellStyle;
66
+ /** if this cell is part of an array, pointer to the area. */
67
+ area?: Area;
68
+ /** testing spill */
69
+ spill?: Area;
70
+ /**
71
+ * if this cell is merged, pointer to the area
72
+ */
73
+ merge_area?: Area;
74
+ /** this cell is part of a table */
75
+ table?: Table;
76
+ /**
77
+ * opaque data for cell rendering, we can cache some data
78
+ * that's reused frequently (is that wasting space?)
79
+ *
80
+ * render data will be flushed any time there is any change to
81
+ * the cell data or style.
82
+ *
83
+ * UPDATE: renderer data is no longer flushed. we set a dirty flag.
84
+ */
85
+ renderer_data?: {
86
+ text_data?: PreparedText;
87
+ overflowed?: boolean;
88
+ width?: number;
89
+ height?: number;
90
+ };
91
+ /**
92
+ * step 1: invert flag (dirty -> clean)
93
+ */
94
+ render_clean: boolean[];
95
+ note?: string;
96
+ /**
97
+ * moving hyperlink in here, as a cell property. hyperlink will not be
98
+ * removed on value change, but will be removed on clear/delete.
99
+ */
100
+ hyperlink?: string;
101
+ editing?: boolean;
102
+ /**
103
+ * TODO: add a return value which affects control flow. default/falsy should
104
+ * behave as now, for backwards compatibility; but it should be possible to
105
+ * return a value that says "don't exit the standard rendering process"
106
+ *
107
+ * UPDATE: return value now means "I have handled this", so if you paint you
108
+ * should return true. that's a breaking change but we should get help from
109
+ * tooling.
110
+ */
111
+ render_function?: RenderFunction;
112
+ click_function?: ClickFunction;
113
+ /**
114
+ * moving locked property to style. not because it's properly a style,
115
+ * or not properly a property of cell, but rather because that will allow
116
+ * us to cascade the property over areas.
117
+ */
118
+ /** not editable */
119
+ constructor(value?: CellValue, value_type?: ValueType);
120
+ /** type guard */
121
+ ValueIsNumber(): this is {
122
+ value: number;
123
+ };
124
+ /** type guard */
125
+ ValueIsFormula(): this is {
126
+ value: string;
127
+ };
128
+ /** type guard */
129
+ ValueIsBoolean(): this is {
130
+ value: boolean;
131
+ };
132
+ /** type guard */
133
+ ValueIsComplex(): this is {
134
+ value: Complex;
135
+ };
136
+ /** flush style information and things that rely on it (formatted value) */
137
+ FlushStyle(): void;
138
+ /** flush array information */
139
+ FlushArray(): void;
140
+ /** flush cached data: formatted and calculated */
141
+ FlushCache(): void;
142
+ Reset(): void;
143
+ Set(value: CellValue, type?: ValueType): void;
144
+ /**
145
+ * sets calculated value and flushes cached value
146
+ */
147
+ SetCalculatedValue(value: CellValue, type?: ValueType): void;
148
+ /**
149
+ * get value -- calculation result (not formatted) or literal. for
150
+ * literal strings, we strip leading apostrophes (these are used to
151
+ * prevent parsing of literal strings that look like other things).
152
+ */
153
+ GetValue(): CellValue;
154
+ /**
155
+ * this function follows the rule of GetValue3, which is: if the type
156
+ * is a function but there is no calculated value, then return 0.
157
+ */
158
+ GetValue4(): UnionValue;
159
+ /**
160
+ * set note. set undefined to clear.
161
+ */
162
+ SetNote(note?: string): void;
163
+ /** sets error (FIXME: error type) */
164
+ SetCalculationError(err?: string): void;
165
+ SetArray(area: Area): void;
166
+ SetArrayHead(area: Area, value: CellValue): void;
167
+ }
@@ -0,0 +1,432 @@
1
+ /*
2
+ * This file is part of TREB.
3
+ *
4
+ * TREB is free software: you can redistribute it and/or modify it under the
5
+ * terms of the GNU General Public License as published by the Free Software
6
+ * Foundation, either version 3 of the License, or (at your option) any
7
+ * later version.
8
+ *
9
+ * TREB is distributed in the hope that it will be useful, but WITHOUT ANY
10
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
12
+ * details.
13
+ *
14
+ * You should have received a copy of the GNU General Public License along
15
+ * with TREB. If not, see <https://www.gnu.org/licenses/>.
16
+ *
17
+ * Copyright 2022-2026 trebco, llc.
18
+ * info@treb.app
19
+ *
20
+ */
21
+ import { ValueType, GetValueType } from './value-type';
22
+ /*
23
+ * restructuring from the old system, which had lots of separate arrays for
24
+ * things. for the most part I think having a single array (or object) with
25
+ * objects will be more useful (if not necessarily more efficient). the
26
+ * standout case where this will be inefficient is in passing data to a
27
+ * calculation service, where style information is not useful.
28
+ *
29
+ * things that are in the cell class:
30
+ * - raw data (formula or value)
31
+ * - formatted representation
32
+ * - type (data type including formula or value, implicitly)
33
+ * - array pointer -- if this cell is part of an array, the array object
34
+ *
35
+ * things that are NOT in the cell class:
36
+ * - raw per-cell style information. this is in a separate array (object).
37
+ */
38
+ export class Cell {
39
+ // --- static methods -------------------------------------------------------
40
+ static StringToColumn(s) {
41
+ let index = 0;
42
+ s = s.toUpperCase();
43
+ for (let i = 0; i < s.length; i++) {
44
+ index *= 26;
45
+ index += (s.charCodeAt(i) - 64);
46
+ }
47
+ return index - 1;
48
+ }
49
+ /*
50
+ public static FormulaDependencies(formula: string): Area[] {
51
+
52
+ const dependencies = [];
53
+
54
+ if (!formula) return []; // also matches ""
55
+ if (formula.trim()[0] !== '=') return [];
56
+
57
+ const results = parser.Parse(formula);
58
+
59
+ for (const key of Object.keys(results.dependencies.addresses)){
60
+ const address = results.dependencies.addresses[key];
61
+ dependencies.push(new Area(address));
62
+ }
63
+
64
+ for (const key of Object.keys(results.dependencies.ranges)){
65
+ const range = results.dependencies.ranges[key];
66
+ dependencies.push(new Area(range.start, range.end, true));
67
+ }
68
+
69
+ // dedupe (...)
70
+
71
+ return dependencies;
72
+
73
+ }
74
+ */
75
+ /*
76
+ public static GetValueType(value: unknown): ValueType {
77
+
78
+ switch (typeof value){
79
+
80
+ case 'undefined':
81
+ return ValueType.undefined;
82
+
83
+ case 'number':
84
+ return ValueType.number;
85
+
86
+ case 'boolean':
87
+ return ValueType.boolean;
88
+
89
+ case 'object':
90
+ if (value === null) {
91
+ return ValueType.undefined;
92
+ }
93
+ return ValueType.object;
94
+
95
+ case 'string':
96
+ if (value[0] === '=') {
97
+ return ValueType.formula;
98
+ }
99
+ return ValueType.string;
100
+
101
+ default: // function or symbol
102
+ return ValueType.error;
103
+
104
+ }
105
+ }
106
+ */
107
+ // --- class fields ---------------------------------------------------------
108
+ // the basic value, which can be omitted (in the case of an array cell)
109
+ value; // any;
110
+ // the value type, js intrinics plus a special type for formula
111
+ type = ValueType.undefined;
112
+ // the calculated value, returned from calculation service
113
+ calculated; // |FunctionError; // any;
114
+ // the calculated type. we're separating calculation from rendering, since
115
+ // we may calculate values that we don't need to render.
116
+ calculated_type;
117
+ // the value formatted as a string, for display. this is separate from the
118
+ // calculated value, because the renderer might still need to check the
119
+ // value in the case of negative color or value-based styling.
120
+ formatted;
121
+ /**
122
+ * rendered type may be different than value type: could be a function
123
+ * returns a number, or an error. rendering an empty value should result
124
+ * in a string, so you can test on this type -- it should never be 0
125
+ * (or undefined) if the cell has been rendered.
126
+ *
127
+ * NOTE: no one really uses this. it's only read in two places -- one in
128
+ * grid to check if it's a number and we want to format as % (which seems
129
+ * wrong anyway, because what if it's a function?) -- and in sheet, as a
130
+ * flag indicating we have already rendered it (it gets flushed on change).
131
+ *
132
+ * so we could maybe remove it or switch to a boolean or something... is
133
+ * boolean any smaller than number?
134
+ */
135
+ rendered_type;
136
+ // style is an index into the style dictionary, not the actual style
137
+ // data (FIXME: if style is an object, this would just be a pointer, so
138
+ // why not just use a reference?)
139
+ // style:number = 0;
140
+ style;
141
+ /** if this cell is part of an array, pointer to the area. */
142
+ area;
143
+ /** testing spill */
144
+ spill;
145
+ /**
146
+ * if this cell is merged, pointer to the area
147
+ */
148
+ merge_area;
149
+ /** this cell is part of a table */
150
+ table;
151
+ /**
152
+ * opaque data for cell rendering, we can cache some data
153
+ * that's reused frequently (is that wasting space?)
154
+ *
155
+ * render data will be flushed any time there is any change to
156
+ * the cell data or style.
157
+ *
158
+ * UPDATE: renderer data is no longer flushed. we set a dirty flag.
159
+ */
160
+ renderer_data;
161
+ /**
162
+ * step 1: invert flag (dirty -> clean)
163
+ */
164
+ render_clean = [];
165
+ note;
166
+ /**
167
+ * moving hyperlink in here, as a cell property. hyperlink will not be
168
+ * removed on value change, but will be removed on clear/delete.
169
+ */
170
+ hyperlink;
171
+ /* flag indicates do not paint */
172
+ editing;
173
+ /**
174
+ * TODO: add a return value which affects control flow. default/falsy should
175
+ * behave as now, for backwards compatibility; but it should be possible to
176
+ * return a value that says "don't exit the standard rendering process"
177
+ *
178
+ * UPDATE: return value now means "I have handled this", so if you paint you
179
+ * should return true. that's a breaking change but we should get help from
180
+ * tooling.
181
+ */
182
+ render_function; // (options: RenderFunctionOptions) => RenderFunctionResult;
183
+ click_function; // (options: ClickFunctionOptions) => ClickFunctionResult;
184
+ /**
185
+ * moving locked property to style. not because it's properly a style,
186
+ * or not properly a property of cell, but rather because that will allow
187
+ * us to cascade the property over areas.
188
+ */
189
+ /** not editable */
190
+ // public locked?: boolean;
191
+ // public validation?: DataValidation;
192
+ // --- class methods --------------------------------------------------------
193
+ constructor(value, value_type) {
194
+ if (typeof value !== 'undefined')
195
+ this.Set(value, value_type);
196
+ }
197
+ /** type guard */
198
+ ValueIsNumber() {
199
+ return this.type === ValueType.number;
200
+ }
201
+ /** type guard */
202
+ ValueIsFormula() {
203
+ return this.type === ValueType.formula;
204
+ }
205
+ /** type guard */
206
+ ValueIsBoolean() {
207
+ return this.type === ValueType.boolean;
208
+ }
209
+ /** type guard */
210
+ ValueIsComplex() {
211
+ return this.type === ValueType.complex;
212
+ }
213
+ ///
214
+ /** flush style information and things that rely on it (formatted value) */
215
+ FlushStyle() {
216
+ this.formatted = this.rendered_type = this.style = undefined;
217
+ this.render_clean = [];
218
+ }
219
+ /** flush array information */
220
+ FlushArray() {
221
+ this.area = undefined;
222
+ }
223
+ /** flush cached data: formatted and calculated */
224
+ FlushCache() {
225
+ this.calculated
226
+ = this.calculated_type
227
+ = this.formatted
228
+ = this.rendered_type
229
+ = this.render_function
230
+ = this.click_function
231
+ = undefined;
232
+ this.render_clean = [];
233
+ }
234
+ Reset() {
235
+ this.type = ValueType.undefined;
236
+ this.value
237
+ = this.spill
238
+ = this.note
239
+ = this.hyperlink
240
+ = this.formatted
241
+ = this.rendered_type
242
+ = this.style
243
+ = this.calculated
244
+ = this.calculated_type
245
+ = this.area
246
+ = this.renderer_data // keep here?
247
+ = this.render_function
248
+ = this.click_function
249
+ = undefined;
250
+ this.render_clean = [];
251
+ }
252
+ Set(value, type = GetValueType(value)) {
253
+ this.value = value;
254
+ this.type = type;
255
+ this.spill = // added
256
+ this.formatted =
257
+ this.rendered_type =
258
+ this.style =
259
+ this.calculated =
260
+ this.calculated_type =
261
+ this.render_function =
262
+ this.click_function =
263
+ this.area = undefined;
264
+ this.render_clean = [];
265
+ }
266
+ /**
267
+ * sets calculated value and flushes cached value
268
+ */
269
+ SetCalculatedValue(value, type = GetValueType(value)) {
270
+ // is it possible to explicitly set a calculated value of undefined?
271
+ // that should be different from clearing. if the calculated value is
272
+ // undefined, we want to set it to 0.
273
+ if (value === undefined) {
274
+ value = 0;
275
+ type = ValueType.number;
276
+ }
277
+ if (this.calculated === value) {
278
+ return;
279
+ }
280
+ this.calculated = value;
281
+ this.calculated_type = type;
282
+ this.formatted = this.rendered_type = undefined;
283
+ this.render_clean = [];
284
+ }
285
+ /* *
286
+ * composite method for setting value or error, based on value
287
+ * not used? (...)
288
+ * /
289
+ public SetCalculatedValueOrError(value: any, type?: ValueType): void {
290
+
291
+ console.info("SCVE", value, type);
292
+
293
+ if (typeof type === 'undefined') {
294
+ if (typeof value === 'object' && value.error) {
295
+ type = ValueType.error;
296
+ value = value.error;
297
+ }
298
+ else {
299
+ type = GetValueType(value);
300
+ }
301
+ }
302
+ if (this.calculated === value) return;
303
+ this.calculated = value;
304
+ this.calculated_type = type;
305
+ this.formatted = this.rendered_type = undefined;
306
+ this.render_clean = [];
307
+ }
308
+ */
309
+ /**
310
+ * get value -- calculation result (not formatted) or literal. for
311
+ * literal strings, we strip leading apostrophes (these are used to
312
+ * prevent parsing of literal strings that look like other things).
313
+ */
314
+ GetValue() {
315
+ if (this.calculated_type)
316
+ return this.calculated;
317
+ // if (this.type === ValueType.string &&
318
+ // this.value && this.value[0] === '\'') return this.value.slice(1);
319
+ // we maintain a type, but typescript won't associate the two so
320
+ // this test needs to use the actual type
321
+ if (typeof this.value === 'string' && this.value[0] === '\'') {
322
+ return this.value.slice(1);
323
+ }
324
+ return this.value;
325
+ }
326
+ /* *
327
+ * new version of GetValue that preserves errors. for non-errors this
328
+ * behaves identically to the original GetValue. for errors, returns
329
+ * an error object {error: string};
330
+ * /
331
+ public GetValue2(): CellValue | {error: CellValue} {
332
+ if (this.calculated_type) {
333
+ return (this.calculated_type === ValueType.error) ?
334
+ { error: this.calculated } : this.calculated;
335
+ }
336
+ // if (this.type === ValueType.string &&
337
+ // this.value && this.value[0] === '\'') return this.value.slice(1);
338
+ if (typeof this.value === 'string' && this.value[0] === '\'') { return this.value.slice(1); } // @see GetValue
339
+
340
+ return this.value;
341
+ }
342
+ */
343
+ /* *
344
+ * we have an issue where a reference to an empty cell winds up returning
345
+ * a string, goes into a numerical calculation, and slows everything down.
346
+ *
347
+ * this is kind of a corner case. it's not that there's a reference to an
348
+ * empty cell -- that works OK. there's a reference to a cell, which is
349
+ * itself a reference to an empty cell. that's why it's a function, which
350
+ * is being returned as a string.
351
+ *
352
+ * in this case because it's the function value, I think returning 0 is ok.
353
+ * BUT, it still might make sense to return undefined.
354
+ * /
355
+ public GetValue3(): CellValue|{error: string} { // |FunctionError {
356
+
357
+ // so... what is this? shouldn't this be an object? (...)
358
+
359
+ if (this.calculated_type) {
360
+ return (this.calculated_type === ValueType.error) ?
361
+ { error: this.calculated as string } : this.calculated;
362
+ }
363
+
364
+ if (this.type === ValueType.formula) {
365
+ // formula, but no calc type... undefined or zero? (...)
366
+ return 0; // undefined;
367
+ }
368
+ // if (this.type === ValueType.string &&
369
+ // this.value && this.value[0] === '\'') return this.value.slice(1);
370
+ if (typeof this.value === 'string' && this.value[0] === '\'') { return this.value.slice(1); } // @see GetValue
371
+
372
+ return this.value;
373
+ }
374
+ */
375
+ /**
376
+ * this function follows the rule of GetValue3, which is: if the type
377
+ * is a function but there is no calculated value, then return 0.
378
+ */
379
+ GetValue4() {
380
+ if (this.calculated_type) {
381
+ return {
382
+ type: this.calculated_type,
383
+ value: this.calculated,
384
+ };
385
+ }
386
+ if (this.type === ValueType.formula) {
387
+ return {
388
+ type: ValueType.number,
389
+ value: 0,
390
+ };
391
+ }
392
+ return {
393
+ type: this.type,
394
+ value: (typeof this.value === 'string' && this.value[0] === '\'') ? this.value.slice(1) : this.value, // @see GetValue
395
+ };
396
+ }
397
+ /**
398
+ * set note. set undefined to clear.
399
+ */
400
+ SetNote(note) {
401
+ this.note = note;
402
+ this.render_clean = [];
403
+ }
404
+ /** sets error (FIXME: error type) */
405
+ SetCalculationError(err = 'ERR') {
406
+ this.SetCalculatedValue(err, ValueType.error);
407
+ }
408
+ SetArray(area) {
409
+ this.type = ValueType.undefined;
410
+ this.value =
411
+ this.formatted =
412
+ this.rendered_type =
413
+ this.style =
414
+ this.hyperlink = // note?
415
+ this.calculated =
416
+ this.calculated_type = undefined;
417
+ this.area = area;
418
+ this.render_clean = [];
419
+ }
420
+ SetArrayHead(area, value) {
421
+ this.type = GetValueType(value);
422
+ this.value = value;
423
+ this.formatted =
424
+ this.rendered_type =
425
+ this.style =
426
+ this.calculated =
427
+ this.calculated_type = undefined;
428
+ this.area = area;
429
+ this.render_clean = [];
430
+ }
431
+ }
432
+ //# sourceMappingURL=cell.js.map