@gridsheet/react-core 1.4.0 → 2.0.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (415) hide show
  1. package/README.md +1 -1
  2. package/dist/components/Cell.d.ts +3 -3
  3. package/dist/components/Cell.d.ts.map +1 -1
  4. package/dist/components/ContextMenu.d.ts +19 -2
  5. package/dist/components/ContextMenu.d.ts.map +1 -1
  6. package/dist/components/Editor.d.ts +4 -4
  7. package/dist/components/Editor.d.ts.map +1 -1
  8. package/dist/components/Emitter.d.ts +2 -2
  9. package/dist/components/Emitter.d.ts.map +1 -1
  10. package/dist/components/Fixed.d.ts +3 -3
  11. package/dist/components/Fixed.d.ts.map +1 -1
  12. package/dist/components/FormulaBar.d.ts +1 -2
  13. package/dist/components/FormulaBar.d.ts.map +1 -1
  14. package/dist/components/GridSheet.d.ts +1 -2
  15. package/dist/components/GridSheet.d.ts.map +1 -1
  16. package/dist/components/HeaderCellLeft.d.ts +2 -2
  17. package/dist/components/HeaderCellLeft.d.ts.map +1 -1
  18. package/dist/components/HeaderCellTop.d.ts +2 -2
  19. package/dist/components/HeaderCellTop.d.ts.map +1 -1
  20. package/dist/components/PluginBase.d.ts +4 -4
  21. package/dist/components/PluginBase.d.ts.map +1 -1
  22. package/dist/components/Resizer.d.ts +1 -2
  23. package/dist/components/Resizer.d.ts.map +1 -1
  24. package/dist/components/ScrollHandle.d.ts +9 -0
  25. package/dist/components/ScrollHandle.d.ts.map +1 -0
  26. package/dist/components/SearchBar.d.ts +1 -2
  27. package/dist/components/SearchBar.d.ts.map +1 -1
  28. package/dist/components/StoreObserver.d.ts +11 -0
  29. package/dist/components/StoreObserver.d.ts.map +1 -0
  30. package/dist/components/Tabular.d.ts +3 -3
  31. package/dist/components/Tabular.d.ts.map +1 -1
  32. package/dist/components/hooks.d.ts +2 -0
  33. package/dist/components/hooks.d.ts.map +1 -1
  34. package/dist/components/svg/AddIcon.d.ts +1 -2
  35. package/dist/components/svg/AddIcon.d.ts.map +1 -1
  36. package/dist/components/svg/Base.d.ts +4 -4
  37. package/dist/components/svg/Base.d.ts.map +1 -1
  38. package/dist/components/svg/CloseIcon.d.ts +1 -2
  39. package/dist/components/svg/CloseIcon.d.ts.map +1 -1
  40. package/dist/components/svg/SearchIcon.d.ts +1 -2
  41. package/dist/components/svg/SearchIcon.d.ts.map +1 -1
  42. package/dist/constants.d.ts +3 -2
  43. package/dist/constants.d.ts.map +1 -1
  44. package/dist/formula/evaluator.d.ts +42 -18
  45. package/dist/formula/evaluator.d.ts.map +1 -1
  46. package/dist/formula/functions/__base.d.ts.map +1 -1
  47. package/dist/formula/functions/__utils.d.ts +5 -2
  48. package/dist/formula/functions/__utils.d.ts.map +1 -1
  49. package/dist/formula/functions/abs.d.ts.map +1 -1
  50. package/dist/formula/functions/acos.d.ts.map +1 -1
  51. package/dist/formula/functions/add.d.ts +1 -1
  52. package/dist/formula/functions/add.d.ts.map +1 -1
  53. package/dist/formula/functions/and.d.ts.map +1 -1
  54. package/dist/formula/functions/asin.d.ts.map +1 -1
  55. package/dist/formula/functions/atan.d.ts.map +1 -1
  56. package/dist/formula/functions/atan2.d.ts.map +1 -1
  57. package/dist/formula/functions/average.d.ts.map +1 -1
  58. package/dist/formula/functions/col.d.ts.map +1 -1
  59. package/dist/formula/functions/concat.d.ts.map +1 -1
  60. package/dist/formula/functions/concatenate.d.ts.map +1 -1
  61. package/dist/formula/functions/cos.d.ts.map +1 -1
  62. package/dist/formula/functions/count.d.ts.map +1 -1
  63. package/dist/formula/functions/counta.d.ts.map +1 -1
  64. package/dist/formula/functions/countif.d.ts.map +1 -1
  65. package/dist/formula/functions/divide.d.ts.map +1 -1
  66. package/dist/formula/functions/eq.d.ts.map +1 -1
  67. package/dist/formula/functions/exp.d.ts.map +1 -1
  68. package/dist/formula/functions/gt.d.ts.map +1 -1
  69. package/dist/formula/functions/gte.d.ts.map +1 -1
  70. package/dist/formula/functions/hlookup.d.ts.map +1 -1
  71. package/dist/formula/functions/if.d.ts.map +1 -1
  72. package/dist/formula/functions/iferror.d.ts.map +1 -1
  73. package/dist/formula/functions/index.d.ts +18 -0
  74. package/dist/formula/functions/index.d.ts.map +1 -0
  75. package/dist/formula/functions/len.d.ts.map +1 -1
  76. package/dist/formula/functions/lenb.d.ts.map +1 -1
  77. package/dist/formula/functions/ln.d.ts.map +1 -1
  78. package/dist/formula/functions/log.d.ts.map +1 -1
  79. package/dist/formula/functions/log10.d.ts.map +1 -1
  80. package/dist/formula/functions/lt.d.ts.map +1 -1
  81. package/dist/formula/functions/lte.d.ts.map +1 -1
  82. package/dist/formula/functions/match.d.ts +18 -0
  83. package/dist/formula/functions/match.d.ts.map +1 -0
  84. package/dist/formula/functions/match.test.d.ts +2 -0
  85. package/dist/formula/functions/match.test.d.ts.map +1 -0
  86. package/dist/formula/functions/max.d.ts.map +1 -1
  87. package/dist/formula/functions/min.d.ts.map +1 -1
  88. package/dist/formula/functions/minus.d.ts.map +1 -1
  89. package/dist/formula/functions/mod.d.ts.map +1 -1
  90. package/dist/formula/functions/multiply.d.ts.map +1 -1
  91. package/dist/formula/functions/ne.d.ts.map +1 -1
  92. package/dist/formula/functions/not.d.ts.map +1 -1
  93. package/dist/formula/functions/now.d.ts.map +1 -1
  94. package/dist/formula/functions/or.d.ts.map +1 -1
  95. package/dist/formula/functions/pi.d.ts.map +1 -1
  96. package/dist/formula/functions/power.d.ts.map +1 -1
  97. package/dist/formula/functions/product.d.ts.map +1 -1
  98. package/dist/formula/functions/radians.d.ts.map +1 -1
  99. package/dist/formula/functions/rand.d.ts.map +1 -1
  100. package/dist/formula/functions/round.d.ts.map +1 -1
  101. package/dist/formula/functions/rounddown.d.ts.map +1 -1
  102. package/dist/formula/functions/roundup.d.ts.map +1 -1
  103. package/dist/formula/functions/row.d.ts.map +1 -1
  104. package/dist/formula/functions/sin.d.ts.map +1 -1
  105. package/dist/formula/functions/sqrt.d.ts.map +1 -1
  106. package/dist/formula/functions/sum.d.ts.map +1 -1
  107. package/dist/formula/functions/sumif.d.ts.map +1 -1
  108. package/dist/formula/functions/tan.d.ts.map +1 -1
  109. package/dist/formula/functions/uminus.d.ts.map +1 -1
  110. package/dist/formula/functions/vlookup.d.ts.map +1 -1
  111. package/dist/formula/mapping.d.ts.map +1 -1
  112. package/dist/formula/solver.d.ts +10 -7
  113. package/dist/formula/solver.d.ts.map +1 -1
  114. package/dist/index.d.ts +15 -6
  115. package/dist/index.d.ts.map +1 -1
  116. package/dist/index.js +10330 -20
  117. package/dist/index.js.map +1 -1
  118. package/dist/lib/autofill.d.ts +2 -2
  119. package/dist/lib/autofill.d.ts.map +1 -1
  120. package/dist/lib/clipboard.d.ts.map +1 -1
  121. package/dist/lib/converters.d.ts +3 -4
  122. package/dist/lib/converters.d.ts.map +1 -1
  123. package/dist/lib/events.d.ts +6 -0
  124. package/dist/lib/events.d.ts.map +1 -0
  125. package/dist/lib/hub.d.ts +72 -0
  126. package/dist/lib/hub.d.ts.map +1 -0
  127. package/dist/lib/input.d.ts +12 -2
  128. package/dist/lib/input.d.ts.map +1 -1
  129. package/dist/lib/operation.d.ts +27 -0
  130. package/dist/lib/operation.d.ts.map +1 -0
  131. package/dist/lib/palette.d.ts +1 -1
  132. package/dist/lib/palette.d.ts.map +1 -1
  133. package/dist/lib/paste.d.ts +4 -0
  134. package/dist/lib/paste.d.ts.map +1 -0
  135. package/dist/lib/reference.d.ts +13 -0
  136. package/dist/lib/reference.d.ts.map +1 -0
  137. package/dist/lib/sheet.d.ts +3 -0
  138. package/dist/lib/sheet.d.ts.map +1 -0
  139. package/dist/lib/structs.d.ts +12 -3
  140. package/dist/lib/structs.d.ts.map +1 -1
  141. package/dist/lib/table.d.ts +152 -91
  142. package/dist/lib/table.d.ts.map +1 -1
  143. package/dist/lib/time.d.ts +1 -0
  144. package/dist/lib/time.d.ts.map +1 -1
  145. package/dist/lib/virtualization.d.ts +3 -2
  146. package/dist/lib/virtualization.d.ts.map +1 -1
  147. package/dist/parsers/core.d.ts +2 -0
  148. package/dist/parsers/core.d.ts.map +1 -1
  149. package/dist/policy/core.d.ts +47 -0
  150. package/dist/policy/core.d.ts.map +1 -0
  151. package/dist/renderers/checkbox.d.ts +2 -2
  152. package/dist/renderers/checkbox.d.ts.map +1 -1
  153. package/dist/renderers/core.d.ts +39 -25
  154. package/dist/renderers/core.d.ts.map +1 -1
  155. package/dist/renderers/thousand_separator.d.ts +2 -3
  156. package/dist/renderers/thousand_separator.d.ts.map +1 -1
  157. package/dist/store/actions.d.ts +141 -49
  158. package/dist/store/actions.d.ts.map +1 -1
  159. package/dist/store/dispatchers.d.ts +13 -0
  160. package/dist/store/dispatchers.d.ts.map +1 -0
  161. package/dist/store/helpers.d.ts +1 -0
  162. package/dist/store/helpers.d.ts.map +1 -1
  163. package/dist/store/index.d.ts +1 -2
  164. package/dist/store/index.d.ts.map +1 -1
  165. package/dist/styles/embedder.d.ts.map +1 -1
  166. package/dist/styles/minified.d.ts +2 -2
  167. package/dist/styles/minified.d.ts.map +1 -1
  168. package/dist/styles/utils.d.ts +52 -0
  169. package/dist/styles/utils.d.ts.map +1 -0
  170. package/dist/types.d.ts +112 -55
  171. package/dist/types.d.ts.map +1 -1
  172. package/dist/utils.d.ts.map +1 -1
  173. package/package.json +7 -10
  174. package/dist/_virtual/_commonjsHelpers.js +0 -7
  175. package/dist/_virtual/_commonjsHelpers.js.map +0 -1
  176. package/dist/_virtual/dayjs.min.js +0 -8
  177. package/dist/_virtual/dayjs.min.js.map +0 -1
  178. package/dist/_virtual/dayjs.min2.js +0 -5
  179. package/dist/_virtual/dayjs.min2.js.map +0 -1
  180. package/dist/_virtual/timezone.js +0 -8
  181. package/dist/_virtual/timezone.js.map +0 -1
  182. package/dist/_virtual/timezone2.js +0 -5
  183. package/dist/_virtual/timezone2.js.map +0 -1
  184. package/dist/_virtual/utc.js +0 -8
  185. package/dist/_virtual/utc.js.map +0 -1
  186. package/dist/_virtual/utc2.js +0 -5
  187. package/dist/_virtual/utc2.js.map +0 -1
  188. package/dist/components/Cell.js +0 -234
  189. package/dist/components/Cell.js.map +0 -1
  190. package/dist/components/ContextMenu.js +0 -297
  191. package/dist/components/ContextMenu.js.map +0 -1
  192. package/dist/components/Editor.js +0 -464
  193. package/dist/components/Editor.js.map +0 -1
  194. package/dist/components/Emitter.js +0 -26
  195. package/dist/components/Emitter.js.map +0 -1
  196. package/dist/components/Fixed.js +0 -17
  197. package/dist/components/Fixed.js.map +0 -1
  198. package/dist/components/FormulaBar.js +0 -150
  199. package/dist/components/FormulaBar.js.map +0 -1
  200. package/dist/components/GridSheet.js +0 -247
  201. package/dist/components/GridSheet.js.map +0 -1
  202. package/dist/components/HeaderCellLeft.js +0 -131
  203. package/dist/components/HeaderCellLeft.js.map +0 -1
  204. package/dist/components/HeaderCellTop.js +0 -132
  205. package/dist/components/HeaderCellTop.js.map +0 -1
  206. package/dist/components/PluginBase.js +0 -35
  207. package/dist/components/PluginBase.js.map +0 -1
  208. package/dist/components/Resizer.js +0 -98
  209. package/dist/components/Resizer.js.map +0 -1
  210. package/dist/components/SearchBar.js +0 -108
  211. package/dist/components/SearchBar.js.map +0 -1
  212. package/dist/components/SheetProvider.d.ts +0 -30
  213. package/dist/components/SheetProvider.d.ts.map +0 -1
  214. package/dist/components/SheetProvider.js +0 -59
  215. package/dist/components/SheetProvider.js.map +0 -1
  216. package/dist/components/StoreInitializer.d.ts +0 -4
  217. package/dist/components/StoreInitializer.d.ts.map +0 -1
  218. package/dist/components/StoreInitializer.js +0 -84
  219. package/dist/components/StoreInitializer.js.map +0 -1
  220. package/dist/components/Tabular.js +0 -317
  221. package/dist/components/Tabular.js.map +0 -1
  222. package/dist/components/Toggle.d.ts +0 -12
  223. package/dist/components/Toggle.d.ts.map +0 -1
  224. package/dist/components/hooks.js +0 -15
  225. package/dist/components/hooks.js.map +0 -1
  226. package/dist/components/svg/Base.js +0 -24
  227. package/dist/components/svg/Base.js.map +0 -1
  228. package/dist/components/svg/CloseIcon.js +0 -13
  229. package/dist/components/svg/CloseIcon.js.map +0 -1
  230. package/dist/components/svg/SearchIcon.js +0 -13
  231. package/dist/components/svg/SearchIcon.js.map +0 -1
  232. package/dist/constants.js +0 -43
  233. package/dist/constants.js.map +0 -1
  234. package/dist/formula/evaluator.js +0 -679
  235. package/dist/formula/evaluator.js.map +0 -1
  236. package/dist/formula/functions/__base.js +0 -20
  237. package/dist/formula/functions/__base.js.map +0 -1
  238. package/dist/formula/functions/__utils.js +0 -145
  239. package/dist/formula/functions/__utils.js.map +0 -1
  240. package/dist/formula/functions/abs.js +0 -24
  241. package/dist/formula/functions/abs.js.map +0 -1
  242. package/dist/formula/functions/abs.spec.d.ts +0 -2
  243. package/dist/formula/functions/abs.spec.d.ts.map +0 -1
  244. package/dist/formula/functions/acos.js +0 -32
  245. package/dist/formula/functions/acos.js.map +0 -1
  246. package/dist/formula/functions/add.js +0 -57
  247. package/dist/formula/functions/add.js.map +0 -1
  248. package/dist/formula/functions/and.js +0 -28
  249. package/dist/formula/functions/and.js.map +0 -1
  250. package/dist/formula/functions/asin.js +0 -32
  251. package/dist/formula/functions/asin.js.map +0 -1
  252. package/dist/formula/functions/atan.js +0 -29
  253. package/dist/formula/functions/atan.js.map +0 -1
  254. package/dist/formula/functions/atan2.js +0 -35
  255. package/dist/formula/functions/atan2.js.map +0 -1
  256. package/dist/formula/functions/average.js +0 -44
  257. package/dist/formula/functions/average.js.map +0 -1
  258. package/dist/formula/functions/col.js +0 -34
  259. package/dist/formula/functions/col.js.map +0 -1
  260. package/dist/formula/functions/col.spec.d.ts +0 -2
  261. package/dist/formula/functions/col.spec.d.ts.map +0 -1
  262. package/dist/formula/functions/concat.js +0 -27
  263. package/dist/formula/functions/concat.js.map +0 -1
  264. package/dist/formula/functions/concatenate.js +0 -28
  265. package/dist/formula/functions/concatenate.js.map +0 -1
  266. package/dist/formula/functions/cos.js +0 -29
  267. package/dist/formula/functions/cos.js.map +0 -1
  268. package/dist/formula/functions/count.js +0 -38
  269. package/dist/formula/functions/count.js.map +0 -1
  270. package/dist/formula/functions/counta.js +0 -38
  271. package/dist/formula/functions/counta.js.map +0 -1
  272. package/dist/formula/functions/countif.js +0 -32
  273. package/dist/formula/functions/countif.js.map +0 -1
  274. package/dist/formula/functions/countif.spec.d.ts +0 -2
  275. package/dist/formula/functions/countif.spec.d.ts.map +0 -1
  276. package/dist/formula/functions/divide.js +0 -33
  277. package/dist/formula/functions/divide.js.map +0 -1
  278. package/dist/formula/functions/eq.js +0 -29
  279. package/dist/formula/functions/eq.js.map +0 -1
  280. package/dist/formula/functions/eq.spec.d.ts +0 -2
  281. package/dist/formula/functions/eq.spec.d.ts.map +0 -1
  282. package/dist/formula/functions/exp.js +0 -29
  283. package/dist/formula/functions/exp.js.map +0 -1
  284. package/dist/formula/functions/gt.js +0 -29
  285. package/dist/formula/functions/gt.js.map +0 -1
  286. package/dist/formula/functions/gte.js +0 -29
  287. package/dist/formula/functions/gte.js.map +0 -1
  288. package/dist/formula/functions/hlookup.js +0 -75
  289. package/dist/formula/functions/hlookup.js.map +0 -1
  290. package/dist/formula/functions/if.js +0 -39
  291. package/dist/formula/functions/if.js.map +0 -1
  292. package/dist/formula/functions/iferror.js +0 -45
  293. package/dist/formula/functions/iferror.js.map +0 -1
  294. package/dist/formula/functions/iferror.spec.d.ts +0 -2
  295. package/dist/formula/functions/iferror.spec.d.ts.map +0 -1
  296. package/dist/formula/functions/len.js +0 -29
  297. package/dist/formula/functions/len.js.map +0 -1
  298. package/dist/formula/functions/lenb.js +0 -29
  299. package/dist/formula/functions/lenb.js.map +0 -1
  300. package/dist/formula/functions/ln.js +0 -32
  301. package/dist/formula/functions/ln.js.map +0 -1
  302. package/dist/formula/functions/log.js +0 -36
  303. package/dist/formula/functions/log.js.map +0 -1
  304. package/dist/formula/functions/log10.js +0 -32
  305. package/dist/formula/functions/log10.js.map +0 -1
  306. package/dist/formula/functions/lt.js +0 -29
  307. package/dist/formula/functions/lt.js.map +0 -1
  308. package/dist/formula/functions/lte.js +0 -29
  309. package/dist/formula/functions/lte.js.map +0 -1
  310. package/dist/formula/functions/max.js +0 -47
  311. package/dist/formula/functions/max.js.map +0 -1
  312. package/dist/formula/functions/min.js +0 -47
  313. package/dist/formula/functions/min.js.map +0 -1
  314. package/dist/formula/functions/minus.js +0 -57
  315. package/dist/formula/functions/minus.js.map +0 -1
  316. package/dist/formula/functions/mod.js +0 -33
  317. package/dist/formula/functions/mod.js.map +0 -1
  318. package/dist/formula/functions/mod.spec.d.ts +0 -2
  319. package/dist/formula/functions/mod.spec.d.ts.map +0 -1
  320. package/dist/formula/functions/multiply.js +0 -27
  321. package/dist/formula/functions/multiply.js.map +0 -1
  322. package/dist/formula/functions/ne.js +0 -29
  323. package/dist/formula/functions/ne.js.map +0 -1
  324. package/dist/formula/functions/not.js +0 -30
  325. package/dist/formula/functions/not.js.map +0 -1
  326. package/dist/formula/functions/now.js +0 -22
  327. package/dist/formula/functions/now.js.map +0 -1
  328. package/dist/formula/functions/or.js +0 -28
  329. package/dist/formula/functions/or.js.map +0 -1
  330. package/dist/formula/functions/pi.js +0 -22
  331. package/dist/formula/functions/pi.js.map +0 -1
  332. package/dist/formula/functions/power.js +0 -27
  333. package/dist/formula/functions/power.js.map +0 -1
  334. package/dist/formula/functions/product.js +0 -40
  335. package/dist/formula/functions/product.js.map +0 -1
  336. package/dist/formula/functions/radians.js +0 -29
  337. package/dist/formula/functions/radians.js.map +0 -1
  338. package/dist/formula/functions/rand.js +0 -22
  339. package/dist/formula/functions/rand.js.map +0 -1
  340. package/dist/formula/functions/round.js +0 -35
  341. package/dist/formula/functions/round.js.map +0 -1
  342. package/dist/formula/functions/rounddown.js +0 -35
  343. package/dist/formula/functions/rounddown.js.map +0 -1
  344. package/dist/formula/functions/roundup.js +0 -35
  345. package/dist/formula/functions/roundup.js.map +0 -1
  346. package/dist/formula/functions/row.js +0 -34
  347. package/dist/formula/functions/row.js.map +0 -1
  348. package/dist/formula/functions/row.spec.d.ts +0 -2
  349. package/dist/formula/functions/row.spec.d.ts.map +0 -1
  350. package/dist/formula/functions/sin.js +0 -29
  351. package/dist/formula/functions/sin.js.map +0 -1
  352. package/dist/formula/functions/sqrt.js +0 -32
  353. package/dist/formula/functions/sqrt.js.map +0 -1
  354. package/dist/formula/functions/sum.js +0 -47
  355. package/dist/formula/functions/sum.js.map +0 -1
  356. package/dist/formula/functions/sum.spec.d.ts +0 -2
  357. package/dist/formula/functions/sum.spec.d.ts.map +0 -1
  358. package/dist/formula/functions/sumif.js +0 -65
  359. package/dist/formula/functions/sumif.js.map +0 -1
  360. package/dist/formula/functions/tan.js +0 -29
  361. package/dist/formula/functions/tan.js.map +0 -1
  362. package/dist/formula/functions/uminus.js +0 -24
  363. package/dist/formula/functions/uminus.js.map +0 -1
  364. package/dist/formula/functions/vlookup.js +0 -75
  365. package/dist/formula/functions/vlookup.js.map +0 -1
  366. package/dist/formula/mapping.js +0 -119
  367. package/dist/formula/mapping.js.map +0 -1
  368. package/dist/formula/solver.js +0 -70
  369. package/dist/formula/solver.js.map +0 -1
  370. package/dist/lib/autofill.js +0 -391
  371. package/dist/lib/autofill.js.map +0 -1
  372. package/dist/lib/clipboard.js +0 -72
  373. package/dist/lib/clipboard.js.map +0 -1
  374. package/dist/lib/converters.js +0 -141
  375. package/dist/lib/converters.js.map +0 -1
  376. package/dist/lib/input.js +0 -52
  377. package/dist/lib/input.js.map +0 -1
  378. package/dist/lib/palette.js +0 -24
  379. package/dist/lib/palette.js.map +0 -1
  380. package/dist/lib/prevention.d.ts +0 -24
  381. package/dist/lib/prevention.d.ts.map +0 -1
  382. package/dist/lib/prevention.js +0 -82
  383. package/dist/lib/prevention.js.map +0 -1
  384. package/dist/lib/structs.js +0 -276
  385. package/dist/lib/structs.js.map +0 -1
  386. package/dist/lib/table.js +0 -1259
  387. package/dist/lib/table.js.map +0 -1
  388. package/dist/lib/time.js +0 -170
  389. package/dist/lib/time.js.map +0 -1
  390. package/dist/lib/virtualization.js +0 -129
  391. package/dist/lib/virtualization.js.map +0 -1
  392. package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/dayjs.min.js +0 -287
  393. package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/dayjs.min.js.map +0 -1
  394. package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/plugin/timezone.js +0 -72
  395. package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/plugin/timezone.js.map +0 -1
  396. package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/plugin/utc.js +0 -85
  397. package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/plugin/utc.js.map +0 -1
  398. package/dist/parsers/core.js +0 -111
  399. package/dist/parsers/core.js.map +0 -1
  400. package/dist/renderers/checkbox.js +0 -20
  401. package/dist/renderers/checkbox.js.map +0 -1
  402. package/dist/renderers/core.js +0 -135
  403. package/dist/renderers/core.js.map +0 -1
  404. package/dist/renderers/thousand_separator.js +0 -17
  405. package/dist/renderers/thousand_separator.js.map +0 -1
  406. package/dist/store/actions.js +0 -762
  407. package/dist/store/actions.js.map +0 -1
  408. package/dist/store/helpers.js +0 -88
  409. package/dist/store/helpers.js.map +0 -1
  410. package/dist/store/index.js +0 -8
  411. package/dist/store/index.js.map +0 -1
  412. package/dist/styles/embedder.js +0 -19
  413. package/dist/styles/embedder.js.map +0 -1
  414. package/dist/styles/minified.js +0 -7
  415. package/dist/styles/minified.js.map +0 -1
@@ -1,464 +0,0 @@
1
- import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
- import React__default from "react";
3
- import { x2c, y2r } from "../lib/converters.js";
4
- import { clip } from "../lib/clipboard.js";
5
- import { setEditingCell, setInputting, setLastEdited, setLastFocusedRef, redo, undo, cut, paste, setSearchQuery, setEntering, copy, select, arrow, escape, clear, walk, write } from "../store/actions.js";
6
- import { Context } from "../store/index.js";
7
- import { zoneToArea, areaToZone } from "../lib/structs.js";
8
- import { isPrevented, Write } from "../lib/prevention.js";
9
- import { expandInput, insertTextAtCursor } from "../lib/input.js";
10
- import { useSheetContext } from "./SheetProvider.js";
11
- import { Lexer } from "../formula/evaluator.js";
12
- import { REF_PALETTE } from "../lib/palette.js";
13
- import { Fixed } from "./Fixed.js";
14
- const Editor = ({ mode, handleKeyUp }) => {
15
- var _a, _b;
16
- const { store, dispatch } = React__default.useContext(Context);
17
- const {
18
- showAddress,
19
- editorRect,
20
- editingCell,
21
- choosing,
22
- inputting,
23
- selectingZone,
24
- searchQuery,
25
- editorRef,
26
- largeEditorRef,
27
- searchInputRef,
28
- editingOnEnter,
29
- onSave,
30
- table,
31
- sheetId
32
- } = store;
33
- const [, sheetContext] = useSheetContext();
34
- React__default.useEffect(() => {
35
- var _a2, _b2;
36
- (_b2 = (_a2 = editorRef == null ? void 0 : editorRef.current) == null ? void 0 : _a2.focus) == null ? void 0 : _b2.call(_a2, { preventScroll: true });
37
- }, [editorRef]);
38
- React__default.useEffect(() => {
39
- if (!(sheetContext == null ? void 0 : sheetContext.lastFocusedRef)) {
40
- return;
41
- }
42
- if (sheetContext.lastFocusedRef === editorRef) {
43
- return;
44
- }
45
- if (sheetContext.lastFocusedRef === largeEditorRef) {
46
- return;
47
- }
48
- dispatch(setEditingCell(""));
49
- }, [sheetContext == null ? void 0 : sheetContext.lastFocusedRef]);
50
- React__default.useEffect(() => {
51
- var _a2;
52
- (_a2 = sheetContext == null ? void 0 : sheetContext.setEditingCell) == null ? void 0 : _a2.call(sheetContext, editingCell);
53
- }, [editingCell]);
54
- const { y, x } = choosing;
55
- const rowId = `${y2r(y)}`;
56
- const colId = x2c(x);
57
- const address = `${colId}${rowId}`;
58
- const editing = editingCell === address;
59
- const cell = table.getByPoint({ y, x });
60
- const value = cell == null ? void 0 : cell.value;
61
- const valueString = table.stringify({ y, x }, value);
62
- const [before, setBefore] = React__default.useState(valueString);
63
- React__default.useEffect(() => {
64
- setBefore(valueString);
65
- }, [choosing]);
66
- const { y: top, x: left, height, width } = editorRect;
67
- const writeCell = (value2) => {
68
- if (before !== value2) {
69
- dispatch(write(value2));
70
- }
71
- setBefore(value2);
72
- };
73
- const numLines = valueString.split("\n").length;
74
- const [isKeyDown, setIsKeyDown] = React__default.useState(false);
75
- const handleKeyDown = (e) => {
76
- if (isKeyDown) {
77
- return;
78
- }
79
- if (!(e.key === "Meta" || e.key === "Control")) {
80
- setIsKeyDown(true);
81
- const timeout = window.setTimeout(() => {
82
- setIsKeyDown(false);
83
- window.clearTimeout(timeout);
84
- }, 10);
85
- }
86
- const input = e.currentTarget;
87
- const shiftKey = e.shiftKey;
88
- switch (e.key) {
89
- case "Tab":
90
- e.preventDefault();
91
- if (editing) {
92
- writeCell(input.value);
93
- dispatch(setEditingCell(""));
94
- dispatch(setInputting(""));
95
- }
96
- dispatch(
97
- walk({
98
- numRows: table.getNumRows(),
99
- numCols: table.getNumCols(),
100
- deltaY: 0,
101
- deltaX: shiftKey ? -1 : 1
102
- })
103
- );
104
- dispatch(setEditingCell(""));
105
- resetSize(e.currentTarget);
106
- return false;
107
- case "Enter":
108
- if (editing) {
109
- if (e.altKey) {
110
- insertTextAtCursor(input, "\n");
111
- dispatch(setInputting(input.value));
112
- e.preventDefault();
113
- return false;
114
- } else {
115
- if (e.nativeEvent.isComposing) {
116
- return false;
117
- }
118
- writeCell(input.value);
119
- dispatch(setEditingCell(""));
120
- }
121
- resetSize(e.currentTarget);
122
- } else if (editingOnEnter && selectingZone.endY === -1) {
123
- const dblclick = document.createEvent("MouseEvents");
124
- dblclick.initEvent("dblclick", true, true);
125
- input.dispatchEvent(dblclick);
126
- e.preventDefault();
127
- return false;
128
- }
129
- dispatch(
130
- walk({
131
- numRows: table.getNumRows(),
132
- numCols: table.getNumCols(),
133
- deltaY: shiftKey ? -1 : 1,
134
- deltaX: 0
135
- })
136
- );
137
- e.preventDefault();
138
- return false;
139
- case "Backspace":
140
- if (!editing) {
141
- dispatch(clear(null));
142
- return false;
143
- }
144
- break;
145
- case "Shift":
146
- return false;
147
- case "Control":
148
- return false;
149
- case "Alt":
150
- return false;
151
- case "Meta":
152
- return false;
153
- case "NumLock":
154
- return false;
155
- case "Escape":
156
- dispatch(escape(null));
157
- dispatch(setSearchQuery(void 0));
158
- return false;
159
- case "ArrowLeft":
160
- if (!editing) {
161
- dispatch(
162
- arrow({
163
- shiftKey,
164
- numRows: table.getNumRows(),
165
- numCols: table.getNumCols(),
166
- deltaY: 0,
167
- deltaX: -1
168
- })
169
- );
170
- return false;
171
- }
172
- break;
173
- case "ArrowUp":
174
- if (!editing) {
175
- dispatch(
176
- arrow({
177
- shiftKey,
178
- numRows: table.getNumRows(),
179
- numCols: table.getNumCols(),
180
- deltaY: -1,
181
- deltaX: 0
182
- })
183
- );
184
- return false;
185
- }
186
- break;
187
- case "ArrowRight":
188
- if (!editing) {
189
- dispatch(
190
- arrow({
191
- shiftKey,
192
- numRows: table.getNumRows(),
193
- numCols: table.getNumCols(),
194
- deltaY: 0,
195
- deltaX: 1
196
- })
197
- );
198
- return false;
199
- }
200
- break;
201
- case "ArrowDown":
202
- if (!editing) {
203
- dispatch(
204
- arrow({
205
- shiftKey,
206
- numRows: table.getNumRows(),
207
- numCols: table.getNumCols(),
208
- deltaY: 1,
209
- deltaX: 0
210
- })
211
- );
212
- return false;
213
- }
214
- break;
215
- case "a":
216
- if (e.ctrlKey || e.metaKey) {
217
- if (!editing) {
218
- e.preventDefault();
219
- dispatch(
220
- select({
221
- startY: 1,
222
- startX: 1,
223
- endY: table.getNumRows(),
224
- endX: table.getNumCols()
225
- })
226
- );
227
- return false;
228
- }
229
- }
230
- break;
231
- case "c":
232
- if (e.ctrlKey || e.metaKey) {
233
- if (!editing) {
234
- e.preventDefault();
235
- const area = clip(store);
236
- dispatch(copy(areaToZone(area)));
237
- input.focus();
238
- return false;
239
- }
240
- }
241
- break;
242
- case "f":
243
- if (e.ctrlKey || e.metaKey) {
244
- if (!editing) {
245
- e.preventDefault();
246
- if (typeof searchQuery === "undefined") {
247
- dispatch(setSearchQuery(""));
248
- }
249
- dispatch(setEntering(false));
250
- window.setTimeout(() => searchInputRef.current.focus(), 100);
251
- return false;
252
- }
253
- }
254
- break;
255
- case "r":
256
- if (e.ctrlKey || e.metaKey) {
257
- if (!editing) {
258
- e.preventDefault();
259
- dispatch(redo(null));
260
- window.setTimeout(() => dispatch(setInputting("")), 100);
261
- return false;
262
- }
263
- }
264
- break;
265
- case "s":
266
- if (e.ctrlKey || e.metaKey) {
267
- if (!editing) {
268
- e.preventDefault();
269
- onSave && onSave(table, {
270
- pointing: choosing,
271
- selectingFrom: {
272
- y: selectingZone.startY,
273
- x: selectingZone.startX
274
- },
275
- selectingTo: {
276
- y: selectingZone.endY,
277
- x: selectingZone.endX
278
- }
279
- });
280
- return false;
281
- }
282
- }
283
- break;
284
- case "v":
285
- if (e.ctrlKey || e.metaKey) {
286
- if (!editing) {
287
- window.setTimeout(() => {
288
- dispatch(paste({ text: input.value }));
289
- dispatch(setInputting(""));
290
- }, 50);
291
- return false;
292
- }
293
- }
294
- break;
295
- case "x":
296
- if (e.ctrlKey || e.metaKey) {
297
- if (!editing) {
298
- e.preventDefault();
299
- const area = clip(store);
300
- dispatch(cut(areaToZone(area)));
301
- input.focus();
302
- return false;
303
- }
304
- }
305
- break;
306
- case "z":
307
- if (e.ctrlKey || e.metaKey) {
308
- if (!editing) {
309
- e.preventDefault();
310
- if (e.shiftKey) {
311
- dispatch(redo(null));
312
- } else {
313
- dispatch(undo(null));
314
- }
315
- return false;
316
- }
317
- }
318
- break;
319
- case ";":
320
- if (e.ctrlKey || e.metaKey) {
321
- if (!editing) {
322
- e.preventDefault();
323
- writeCell((/* @__PURE__ */ new Date()).toDateString());
324
- }
325
- }
326
- break;
327
- }
328
- if (e.ctrlKey || e.metaKey) {
329
- return false;
330
- }
331
- if (isPrevented(cell == null ? void 0 : cell.prevention, Write)) {
332
- console.warn("This cell is protected from writing.");
333
- return false;
334
- }
335
- dispatch(setEditingCell(address));
336
- if (!editing) {
337
- dispatch(setInputting(""));
338
- }
339
- return false;
340
- };
341
- return /* @__PURE__ */ jsxs(
342
- Fixed,
343
- {
344
- className: `gs-editor ${editing ? "gs-editing" : ""}`,
345
- style: editing ? { top, left, height } : {},
346
- ...{
347
- "data-mode": mode,
348
- "data-sheet-id": sheetId
349
- },
350
- children: [
351
- showAddress && /* @__PURE__ */ jsx("div", { className: "gs-cell-label", children: address }),
352
- /* @__PURE__ */ jsxs("div", { className: "gs-editor-inner", style: { width }, children: [
353
- /* @__PURE__ */ jsx(
354
- "pre",
355
- {
356
- className: "gs-editor-hl",
357
- style: {
358
- //...cell?.style,
359
- height: (_a = editorRef.current) == null ? void 0 : _a.scrollHeight,
360
- width: (((_b = editorRef.current) == null ? void 0 : _b.scrollWidth) ?? 0) - 4
361
- },
362
- children: (cell == null ? void 0 : cell.disableFormula) ? inputting : editorStyle(inputting)
363
- }
364
- ),
365
- /* @__PURE__ */ jsx(
366
- "textarea",
367
- {
368
- autoFocus: true,
369
- spellCheck: false,
370
- draggable: false,
371
- ref: editorRef,
372
- rows: numLines,
373
- onFocus: () => {
374
- var _a2;
375
- dispatch(setLastFocusedRef(editorRef));
376
- (_a2 = sheetContext == null ? void 0 : sheetContext.setLastFocusedRef) == null ? void 0 : _a2.call(sheetContext, editorRef);
377
- },
378
- style: { minWidth: width, minHeight: height },
379
- onDoubleClick: (e) => {
380
- if (isPrevented(cell == null ? void 0 : cell.prevention, Write)) {
381
- console.warn("This cell is protected from writing.");
382
- return;
383
- }
384
- const input = e.currentTarget;
385
- resetSize(input);
386
- if (!editing) {
387
- dispatch(setInputting(valueString));
388
- dispatch(setEditingCell(address));
389
- window.setTimeout(() => {
390
- input.style.width = `${input.scrollWidth}px`;
391
- input.style.height = `${input.scrollHeight}px`;
392
- const length = new String(valueString).length;
393
- input.setSelectionRange(length, length);
394
- }, 20);
395
- }
396
- },
397
- onBlur: (e) => {
398
- dispatch(setLastEdited(before));
399
- if (e.target.value.startsWith("=")) {
400
- return true;
401
- } else {
402
- if (editing) {
403
- writeCell(e.target.value);
404
- }
405
- }
406
- resetSize(e.target);
407
- },
408
- value: inputting,
409
- onChange: (e) => {
410
- const input = e.currentTarget;
411
- expandInput(input);
412
- dispatch(setInputting(e.currentTarget.value));
413
- },
414
- onKeyDown: handleKeyDown,
415
- onKeyUp: (e) => {
416
- e.currentTarget;
417
- const selectingArea = zoneToArea(store.selectingZone);
418
- handleKeyUp == null ? void 0 : handleKeyUp(e, {
419
- pointing: choosing,
420
- selectingFrom: { y: selectingArea.top, x: selectingArea.left },
421
- selectingTo: { y: selectingArea.bottom, x: selectingArea.right }
422
- });
423
- }
424
- }
425
- )
426
- ] })
427
- ]
428
- }
429
- );
430
- };
431
- const editorStyle = (text) => {
432
- if (text[0] !== "=") {
433
- return /* @__PURE__ */ jsx(Fragment, { children: text });
434
- }
435
- const lexer = new Lexer(text.substring(1));
436
- lexer.tokenize();
437
- let palletIndex = 0;
438
- const exists = {};
439
- return /* @__PURE__ */ jsxs(Fragment, { children: [
440
- "=",
441
- lexer.tokens.map((token, i) => {
442
- if (token.type === "REF" || token.type === "RANGE") {
443
- const normalizedToken = token.stringify();
444
- const existsIndex = exists[normalizedToken];
445
- if (existsIndex !== void 0) {
446
- return /* @__PURE__ */ jsx("span", { style: { color: REF_PALETTE[existsIndex % REF_PALETTE.length] }, children: token.stringify() }, i);
447
- }
448
- const color = REF_PALETTE[palletIndex % REF_PALETTE.length];
449
- exists[normalizedToken] = palletIndex++;
450
- return /* @__PURE__ */ jsx("span", { style: { color }, className: `gs-token-type-${token.type}`, children: normalizedToken }, i);
451
- }
452
- return /* @__PURE__ */ jsx("span", { className: `gs-token-type-${token.type} gs-token-entity-type-${typeof token.entity}`, children: token.stringify() }, i);
453
- })
454
- ] });
455
- };
456
- const resetSize = (input) => {
457
- input.style.width = "0px";
458
- input.style.height = "0px";
459
- };
460
- export {
461
- Editor,
462
- editorStyle
463
- };
464
- //# sourceMappingURL=Editor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Editor.js","sources":["../../components/Editor.tsx"],"sourcesContent":["import React from 'react';\nimport { x2c, y2r } from '../lib/converters';\nimport { clip } from '../lib/clipboard';\nimport {\n clear,\n escape,\n select,\n setEditingCell,\n undo,\n redo,\n arrow,\n walk,\n write,\n copy,\n cut,\n paste,\n setSearchQuery,\n setEntering,\n setLastEdited,\n setLastFocusedRef,\n setInputting,\n} from '../store/actions';\n\nimport { Context } from '../store';\nimport { areaToZone, zoneToArea } from '../lib/structs';\nimport * as prevention from '../lib/prevention';\nimport { expandInput, insertTextAtCursor } from '../lib/input';\nimport { useSheetContext } from './SheetProvider';\nimport { Lexer } from '../formula/evaluator';\nimport { REF_PALETTE } from '../lib/palette';\nimport { CursorStateType, ModeType } from '../types';\nimport { Fixed } from './Fixed';\n\ntype Props = {\n mode: ModeType;\n handleKeyUp?: (e: React.KeyboardEvent<HTMLTextAreaElement>, points: CursorStateType) => void;\n};\n\nexport const Editor: React.FC<Props> = ({ mode, handleKeyUp }: Props) => {\n const { store, dispatch } = React.useContext(Context);\n const {\n showAddress,\n editorRect,\n editingCell,\n choosing,\n inputting,\n selectingZone,\n searchQuery,\n editorRef,\n largeEditorRef,\n searchInputRef,\n editingOnEnter,\n onSave,\n table,\n sheetId,\n } = store;\n\n const [, sheetContext] = useSheetContext();\n React.useEffect(() => {\n editorRef?.current?.focus?.({ preventScroll: true });\n }, [editorRef]);\n\n React.useEffect(() => {\n if (!sheetContext?.lastFocusedRef) {\n return;\n }\n if (sheetContext.lastFocusedRef === editorRef) {\n return;\n }\n if (sheetContext.lastFocusedRef === largeEditorRef) {\n return;\n }\n dispatch(setEditingCell(''));\n }, [sheetContext?.lastFocusedRef]);\n React.useEffect(() => {\n sheetContext?.setEditingCell?.(editingCell);\n }, [editingCell]);\n\n const { y, x } = choosing;\n const rowId = `${y2r(y)}`;\n const colId = x2c(x);\n const address = `${colId}${rowId}`;\n const editing = editingCell === address;\n\n const cell = table.getByPoint({ y, x });\n const value: any = cell?.value;\n const valueString = table.stringify({ y, x }, value);\n const [before, setBefore] = React.useState<string>(valueString);\n React.useEffect(() => {\n setBefore(valueString);\n }, [choosing]);\n\n const { y: top, x: left, height, width } = editorRect;\n\n const writeCell = (value: string) => {\n if (before !== value) {\n dispatch(write(value));\n }\n setBefore(value);\n };\n\n const numLines = valueString.split('\\n').length;\n const [isKeyDown, setIsKeyDown] = React.useState(false);\n const handleKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {\n if (isKeyDown) {\n return;\n }\n // do not debounce it if control key is down.\n if (!(e.key === 'Meta' || e.key === 'Control')) {\n setIsKeyDown(true);\n const timeout = window.setTimeout(() => {\n setIsKeyDown(false);\n window.clearTimeout(timeout);\n }, 10);\n }\n const input = e.currentTarget;\n\n const shiftKey = e.shiftKey;\n switch (e.key) {\n case 'Tab': // TAB\n e.preventDefault();\n if (editing) {\n writeCell(input.value);\n dispatch(setEditingCell(''));\n dispatch(setInputting(''));\n }\n dispatch(\n walk({\n numRows: table.getNumRows(),\n numCols: table.getNumCols(),\n deltaY: 0,\n deltaX: shiftKey ? -1 : 1,\n }),\n );\n dispatch(setEditingCell(''));\n resetSize(e.currentTarget);\n return false;\n\n case 'Enter': // ENTER\n if (editing) {\n if (e.altKey) {\n insertTextAtCursor(input, '\\n');\n dispatch(setInputting(input.value));\n e.preventDefault();\n return false;\n } else {\n if (e.nativeEvent.isComposing) {\n return false;\n }\n writeCell(input.value);\n dispatch(setEditingCell(''));\n }\n resetSize(e.currentTarget);\n } else if (editingOnEnter && selectingZone.endY === -1) {\n const dblclick = document.createEvent('MouseEvents');\n dblclick.initEvent('dblclick', true, true);\n input.dispatchEvent(dblclick);\n e.preventDefault();\n return false;\n }\n dispatch(\n walk({\n numRows: table.getNumRows(),\n numCols: table.getNumCols(),\n deltaY: shiftKey ? -1 : 1,\n deltaX: 0,\n }),\n );\n e.preventDefault();\n return false;\n\n case 'Backspace': // BACKSPACE\n if (!editing) {\n dispatch(clear(null));\n return false;\n }\n break;\n case 'Shift': // SHIFT\n return false;\n\n case 'Control': // CTRL\n return false;\n\n case 'Alt': // OPTION\n return false;\n\n case 'Meta': // COMMAND\n return false;\n\n case 'NumLock': // NUMLOCK\n return false;\n\n case 'Escape': // ESCAPE\n dispatch(escape(null));\n dispatch(setSearchQuery(undefined));\n // input.blur();\n return false;\n\n case 'ArrowLeft': // LEFT\n if (!editing) {\n dispatch(\n arrow({\n shiftKey,\n numRows: table.getNumRows(),\n numCols: table.getNumCols(),\n deltaY: 0,\n deltaX: -1,\n }),\n );\n return false;\n }\n break;\n case 'ArrowUp': // UP\n if (!editing) {\n dispatch(\n arrow({\n shiftKey,\n numRows: table.getNumRows(),\n numCols: table.getNumCols(),\n deltaY: -1,\n deltaX: 0,\n }),\n );\n return false;\n }\n break;\n case 'ArrowRight': // RIGHT\n if (!editing) {\n dispatch(\n arrow({\n shiftKey,\n numRows: table.getNumRows(),\n numCols: table.getNumCols(),\n deltaY: 0,\n deltaX: 1,\n }),\n );\n return false;\n }\n break;\n case 'ArrowDown': // DOWN\n if (!editing) {\n dispatch(\n arrow({\n shiftKey,\n numRows: table.getNumRows(),\n numCols: table.getNumCols(),\n deltaY: 1,\n deltaX: 0,\n }),\n );\n return false;\n }\n break;\n case 'a': // A\n if (e.ctrlKey || e.metaKey) {\n if (!editing) {\n e.preventDefault();\n dispatch(\n select({\n startY: 1,\n startX: 1,\n endY: table.getNumRows(),\n endX: table.getNumCols(),\n }),\n );\n return false;\n }\n }\n break;\n case 'c': // C\n if (e.ctrlKey || e.metaKey) {\n if (!editing) {\n e.preventDefault();\n const area = clip(store);\n dispatch(copy(areaToZone(area)));\n input.focus(); // refocus\n return false;\n }\n }\n break;\n case 'f': // F\n if (e.ctrlKey || e.metaKey) {\n if (!editing) {\n e.preventDefault();\n if (typeof searchQuery === 'undefined') {\n dispatch(setSearchQuery(''));\n }\n dispatch(setEntering(false));\n window.setTimeout(() => searchInputRef.current!.focus(), 100);\n return false;\n }\n }\n break;\n case 'r': // R\n if (e.ctrlKey || e.metaKey) {\n if (!editing) {\n e.preventDefault();\n dispatch(redo(null));\n window.setTimeout(() => dispatch(setInputting('')), 100); // resetting textarea\n return false;\n }\n }\n break;\n case 's': // S\n if (e.ctrlKey || e.metaKey) {\n if (!editing) {\n e.preventDefault();\n onSave &&\n onSave(table, {\n pointing: choosing,\n selectingFrom: {\n y: selectingZone.startY,\n x: selectingZone.startX,\n },\n selectingTo: {\n y: selectingZone.endY,\n x: selectingZone.endX,\n },\n });\n return false;\n }\n }\n break;\n case 'v': // V\n if (e.ctrlKey || e.metaKey) {\n if (!editing) {\n window.setTimeout(() => {\n dispatch(paste({ text: input.value }));\n dispatch(setInputting(''));\n }, 50);\n return false;\n }\n }\n break;\n case 'x': // X\n if (e.ctrlKey || e.metaKey) {\n if (!editing) {\n e.preventDefault();\n const area = clip(store);\n dispatch(cut(areaToZone(area)));\n input.focus(); // refocus\n\n return false;\n }\n }\n break;\n case 'z': // Z\n if (e.ctrlKey || e.metaKey) {\n if (!editing) {\n e.preventDefault();\n if (e.shiftKey) {\n dispatch(redo(null));\n //window.setTimeout(() => dispatch(setInputting('')), 100); // resetting textarea\n } else {\n dispatch(undo(null));\n }\n return false;\n }\n }\n break;\n case ';': // semicolon\n if (e.ctrlKey || e.metaKey) {\n if (!editing) {\n e.preventDefault();\n // MAYBE: need to aware timezone.\n writeCell(new Date().toDateString());\n }\n }\n break;\n }\n if (e.ctrlKey || e.metaKey) {\n return false;\n }\n if (prevention.isPrevented(cell?.prevention, prevention.Write)) {\n console.warn('This cell is protected from writing.');\n return false;\n }\n dispatch(setEditingCell(address));\n if (!editing) {\n dispatch(setInputting(''));\n }\n return false;\n };\n\n return (\n <Fixed\n className={`gs-editor ${editing ? 'gs-editing' : ''}`}\n style={editing ? { top, left, height } : {}}\n {...{\n 'data-mode': mode,\n 'data-sheet-id': sheetId,\n }}\n >\n {showAddress && <div className=\"gs-cell-label\">{address}</div>}\n <div className=\"gs-editor-inner\" style={{ width }}>\n <pre\n className=\"gs-editor-hl\"\n style={{\n //...cell?.style,\n height: editorRef.current?.scrollHeight,\n width: (editorRef.current?.scrollWidth ?? 0) - 4,\n }}\n >\n {cell?.disableFormula ? inputting : editorStyle(inputting)}\n </pre>\n <textarea\n autoFocus={true}\n spellCheck={false}\n draggable={false}\n ref={editorRef}\n rows={numLines}\n onFocus={() => {\n dispatch(setLastFocusedRef(editorRef));\n sheetContext?.setLastFocusedRef?.(editorRef);\n }}\n style={{ minWidth: width, minHeight: height }}\n onDoubleClick={(e) => {\n if (prevention.isPrevented(cell?.prevention, prevention.Write)) {\n console.warn('This cell is protected from writing.');\n return;\n }\n const input = e.currentTarget;\n resetSize(input);\n if (!editing) {\n dispatch(setInputting(valueString));\n dispatch(setEditingCell(address));\n window.setTimeout(() => {\n input.style.width = `${input.scrollWidth}px`;\n input.style.height = `${input.scrollHeight}px`;\n const length = new String(valueString).length;\n input.setSelectionRange(length, length);\n }, 20);\n }\n }}\n onBlur={(e) => {\n dispatch(setLastEdited(before));\n if (e.target.value.startsWith('=')) {\n return true;\n } else {\n if (editing) {\n writeCell(e.target.value);\n }\n }\n resetSize(e.target);\n }}\n value={inputting}\n onChange={(e) => {\n const input = e.currentTarget;\n expandInput(input);\n dispatch(setInputting(e.currentTarget.value));\n }}\n onKeyDown={handleKeyDown}\n onKeyUp={(e) => {\n const input = e.currentTarget;\n const selectingArea = zoneToArea(store.selectingZone);\n handleKeyUp?.(e, {\n pointing: choosing,\n selectingFrom: { y: selectingArea.top, x: selectingArea.left },\n selectingTo: { y: selectingArea.bottom, x: selectingArea.right },\n });\n }}\n />\n </div>\n </Fixed>\n );\n};\n\nexport const editorStyle = (text: string) => {\n if (text[0] !== '=') {\n return <>{text}</>;\n }\n const lexer = new Lexer(text.substring(1));\n lexer.tokenize();\n let palletIndex = 0;\n const exists: { [ref: string]: number } = {};\n return (\n <>\n =\n {lexer.tokens.map((token, i) => {\n if (token.type === 'REF' || token.type === 'RANGE') {\n const normalizedToken = token.stringify();\n const existsIndex = exists[normalizedToken];\n if (existsIndex !== undefined) {\n return (\n <span key={i} style={{ color: REF_PALETTE[existsIndex % REF_PALETTE.length] }}>\n {token.stringify()}\n </span>\n );\n }\n const color = REF_PALETTE[palletIndex % REF_PALETTE.length];\n exists[normalizedToken] = palletIndex++;\n return (\n <span key={i} style={{ color }} className={`gs-token-type-${token.type}`}>\n {normalizedToken}\n </span>\n );\n }\n\n return (\n <span key={i} className={`gs-token-type-${token.type} gs-token-entity-type-${typeof token.entity}`}>\n {token.stringify()}\n </span>\n );\n })}\n </>\n );\n};\n\nconst resetSize = (input: HTMLTextAreaElement) => {\n input.style.width = '0px';\n input.style.height = '0px';\n};\n"],"names":["React","_b","_a","value","prevention.isPrevented","prevention.Write"],"mappings":";;;;;;;;;;;;;AAsCO,MAAM,SAA0B,CAAC,EAAE,MAAM,kBAAyB;;AACvE,QAAM,EAAE,OAAO,SAAA,IAAaA,eAAM,WAAW,OAAO;AAC9C,QAAA;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,IACE;AAEJ,QAAM,CAAG,EAAA,YAAY,IAAI,gBAAgB;AACzCA,iBAAM,UAAU,MAAM;;AACpB,KAAAC,OAAAC,MAAA,uCAAW,YAAX,gBAAAA,IAAoB,UAApB,gBAAAD,IAAA,KAAAC,KAA4B,EAAE,eAAe;EAAM,GAClD,CAAC,SAAS,CAAC;AAEdF,iBAAM,UAAU,MAAM;AAChB,QAAA,EAAC,6CAAc,iBAAgB;AACjC;AAAA,IAAA;AAEE,QAAA,aAAa,mBAAmB,WAAW;AAC7C;AAAA,IAAA;AAEE,QAAA,aAAa,mBAAmB,gBAAgB;AAClD;AAAA,IAAA;AAEO,aAAA,eAAe,EAAE,CAAC;AAAA,EAAA,GAC1B,CAAC,6CAAc,cAAc,CAAC;AACjCA,iBAAM,UAAU,MAAM;;AACpB,KAAAE,MAAA,6CAAc,mBAAd,gBAAAA,IAAA,mBAA+B;AAAA,EAAW,GACzC,CAAC,WAAW,CAAC;AAEV,QAAA,EAAE,GAAG,EAAA,IAAM;AACjB,QAAM,QAAQ,GAAG,IAAI,CAAC,CAAC;AACjB,QAAA,QAAQ,IAAI,CAAC;AACnB,QAAM,UAAU,GAAG,KAAK,GAAG,KAAK;AAChC,QAAM,UAAU,gBAAgB;AAEhC,QAAM,OAAO,MAAM,WAAW,EAAE,GAAG,GAAG;AACtC,QAAM,QAAa,6BAAM;AACzB,QAAM,cAAc,MAAM,UAAU,EAAE,GAAG,KAAK,KAAK;AACnD,QAAM,CAAC,QAAQ,SAAS,IAAIF,eAAM,SAAiB,WAAW;AAC9DA,iBAAM,UAAU,MAAM;AACpB,cAAU,WAAW;AAAA,EAAA,GACpB,CAAC,QAAQ,CAAC;AAEb,QAAM,EAAE,GAAG,KAAK,GAAG,MAAM,QAAQ,UAAU;AAErC,QAAA,YAAY,CAACG,WAAkB;AACnC,QAAI,WAAWA,QAAO;AACX,eAAA,MAAMA,MAAK,CAAC;AAAA,IAAA;AAEvB,cAAUA,MAAK;AAAA,EACjB;AAEA,QAAM,WAAW,YAAY,MAAM,IAAI,EAAE;AACzC,QAAM,CAAC,WAAW,YAAY,IAAIH,eAAM,SAAS,KAAK;AAChD,QAAA,gBAAgB,CAAC,MAAgD;AACrE,QAAI,WAAW;AACb;AAAA,IAAA;AAGF,QAAI,EAAE,EAAE,QAAQ,UAAU,EAAE,QAAQ,YAAY;AAC9C,mBAAa,IAAI;AACX,YAAA,UAAU,OAAO,WAAW,MAAM;AACtC,qBAAa,KAAK;AAClB,eAAO,aAAa,OAAO;AAAA,SAC1B,EAAE;AAAA,IAAA;AAEP,UAAM,QAAQ,EAAE;AAEhB,UAAM,WAAW,EAAE;AACnB,YAAQ,EAAE,KAAK;AAAA,MACb,KAAK;AACH,UAAE,eAAe;AACjB,YAAI,SAAS;AACX,oBAAU,MAAM,KAAK;AACZ,mBAAA,eAAe,EAAE,CAAC;AAClB,mBAAA,aAAa,EAAE,CAAC;AAAA,QAAA;AAE3B;AAAA,UACE,KAAK;AAAA,YACH,SAAS,MAAM,WAAW;AAAA,YAC1B,SAAS,MAAM,WAAW;AAAA,YAC1B,QAAQ;AAAA,YACR,QAAQ,WAAW,KAAK;AAAA,UACzB,CAAA;AAAA,QACH;AACS,iBAAA,eAAe,EAAE,CAAC;AAC3B,kBAAU,EAAE,aAAa;AAClB,eAAA;AAAA,MAET,KAAK;AACH,YAAI,SAAS;AACX,cAAI,EAAE,QAAQ;AACZ,+BAAmB,OAAO,IAAI;AACrB,qBAAA,aAAa,MAAM,KAAK,CAAC;AAClC,cAAE,eAAe;AACV,mBAAA;AAAA,UAAA,OACF;AACD,gBAAA,EAAE,YAAY,aAAa;AACtB,qBAAA;AAAA,YAAA;AAET,sBAAU,MAAM,KAAK;AACZ,qBAAA,eAAe,EAAE,CAAC;AAAA,UAAA;AAE7B,oBAAU,EAAE,aAAa;AAAA,QAChB,WAAA,kBAAkB,cAAc,SAAS,IAAI;AAChD,gBAAA,WAAW,SAAS,YAAY,aAAa;AAC1C,mBAAA,UAAU,YAAY,MAAM,IAAI;AACzC,gBAAM,cAAc,QAAQ;AAC5B,YAAE,eAAe;AACV,iBAAA;AAAA,QAAA;AAET;AAAA,UACE,KAAK;AAAA,YACH,SAAS,MAAM,WAAW;AAAA,YAC1B,SAAS,MAAM,WAAW;AAAA,YAC1B,QAAQ,WAAW,KAAK;AAAA,YACxB,QAAQ;AAAA,UACT,CAAA;AAAA,QACH;AACA,UAAE,eAAe;AACV,eAAA;AAAA,MAET,KAAK;AACH,YAAI,CAAC,SAAS;AACH,mBAAA,MAAM,IAAI,CAAC;AACb,iBAAA;AAAA,QAAA;AAET;AAAA,MACF,KAAK;AACI,eAAA;AAAA,MAET,KAAK;AACI,eAAA;AAAA,MAET,KAAK;AACI,eAAA;AAAA,MAET,KAAK;AACI,eAAA;AAAA,MAET,KAAK;AACI,eAAA;AAAA,MAET,KAAK;AACM,iBAAA,OAAO,IAAI,CAAC;AACZ,iBAAA,eAAe,MAAS,CAAC;AAE3B,eAAA;AAAA,MAET,KAAK;AACH,YAAI,CAAC,SAAS;AACZ;AAAA,YACE,MAAM;AAAA,cACJ;AAAA,cACA,SAAS,MAAM,WAAW;AAAA,cAC1B,SAAS,MAAM,WAAW;AAAA,cAC1B,QAAQ;AAAA,cACR,QAAQ;AAAA,YACT,CAAA;AAAA,UACH;AACO,iBAAA;AAAA,QAAA;AAET;AAAA,MACF,KAAK;AACH,YAAI,CAAC,SAAS;AACZ;AAAA,YACE,MAAM;AAAA,cACJ;AAAA,cACA,SAAS,MAAM,WAAW;AAAA,cAC1B,SAAS,MAAM,WAAW;AAAA,cAC1B,QAAQ;AAAA,cACR,QAAQ;AAAA,YACT,CAAA;AAAA,UACH;AACO,iBAAA;AAAA,QAAA;AAET;AAAA,MACF,KAAK;AACH,YAAI,CAAC,SAAS;AACZ;AAAA,YACE,MAAM;AAAA,cACJ;AAAA,cACA,SAAS,MAAM,WAAW;AAAA,cAC1B,SAAS,MAAM,WAAW;AAAA,cAC1B,QAAQ;AAAA,cACR,QAAQ;AAAA,YACT,CAAA;AAAA,UACH;AACO,iBAAA;AAAA,QAAA;AAET;AAAA,MACF,KAAK;AACH,YAAI,CAAC,SAAS;AACZ;AAAA,YACE,MAAM;AAAA,cACJ;AAAA,cACA,SAAS,MAAM,WAAW;AAAA,cAC1B,SAAS,MAAM,WAAW;AAAA,cAC1B,QAAQ;AAAA,cACR,QAAQ;AAAA,YACT,CAAA;AAAA,UACH;AACO,iBAAA;AAAA,QAAA;AAET;AAAA,MACF,KAAK;AACC,YAAA,EAAE,WAAW,EAAE,SAAS;AAC1B,cAAI,CAAC,SAAS;AACZ,cAAE,eAAe;AACjB;AAAA,cACE,OAAO;AAAA,gBACL,QAAQ;AAAA,gBACR,QAAQ;AAAA,gBACR,MAAM,MAAM,WAAW;AAAA,gBACvB,MAAM,MAAM,WAAW;AAAA,cACxB,CAAA;AAAA,YACH;AACO,mBAAA;AAAA,UAAA;AAAA,QACT;AAEF;AAAA,MACF,KAAK;AACC,YAAA,EAAE,WAAW,EAAE,SAAS;AAC1B,cAAI,CAAC,SAAS;AACZ,cAAE,eAAe;AACX,kBAAA,OAAO,KAAK,KAAK;AACvB,qBAAS,KAAK,WAAW,IAAI,CAAC,CAAC;AAC/B,kBAAM,MAAM;AACL,mBAAA;AAAA,UAAA;AAAA,QACT;AAEF;AAAA,MACF,KAAK;AACC,YAAA,EAAE,WAAW,EAAE,SAAS;AAC1B,cAAI,CAAC,SAAS;AACZ,cAAE,eAAe;AACb,gBAAA,OAAO,gBAAgB,aAAa;AAC7B,uBAAA,eAAe,EAAE,CAAC;AAAA,YAAA;AAEpB,qBAAA,YAAY,KAAK,CAAC;AAC3B,mBAAO,WAAW,MAAM,eAAe,QAAS,SAAS,GAAG;AACrD,mBAAA;AAAA,UAAA;AAAA,QACT;AAEF;AAAA,MACF,KAAK;AACC,YAAA,EAAE,WAAW,EAAE,SAAS;AAC1B,cAAI,CAAC,SAAS;AACZ,cAAE,eAAe;AACR,qBAAA,KAAK,IAAI,CAAC;AACnB,mBAAO,WAAW,MAAM,SAAS,aAAa,EAAE,CAAC,GAAG,GAAG;AAChD,mBAAA;AAAA,UAAA;AAAA,QACT;AAEF;AAAA,MACF,KAAK;AACC,YAAA,EAAE,WAAW,EAAE,SAAS;AAC1B,cAAI,CAAC,SAAS;AACZ,cAAE,eAAe;AACjB,sBACE,OAAO,OAAO;AAAA,cACZ,UAAU;AAAA,cACV,eAAe;AAAA,gBACb,GAAG,cAAc;AAAA,gBACjB,GAAG,cAAc;AAAA,cACnB;AAAA,cACA,aAAa;AAAA,gBACX,GAAG,cAAc;AAAA,gBACjB,GAAG,cAAc;AAAA,cAAA;AAAA,YACnB,CACD;AACI,mBAAA;AAAA,UAAA;AAAA,QACT;AAEF;AAAA,MACF,KAAK;AACC,YAAA,EAAE,WAAW,EAAE,SAAS;AAC1B,cAAI,CAAC,SAAS;AACZ,mBAAO,WAAW,MAAM;AACtB,uBAAS,MAAM,EAAE,MAAM,MAAM,MAAO,CAAA,CAAC;AAC5B,uBAAA,aAAa,EAAE,CAAC;AAAA,eACxB,EAAE;AACE,mBAAA;AAAA,UAAA;AAAA,QACT;AAEF;AAAA,MACF,KAAK;AACC,YAAA,EAAE,WAAW,EAAE,SAAS;AAC1B,cAAI,CAAC,SAAS;AACZ,cAAE,eAAe;AACX,kBAAA,OAAO,KAAK,KAAK;AACvB,qBAAS,IAAI,WAAW,IAAI,CAAC,CAAC;AAC9B,kBAAM,MAAM;AAEL,mBAAA;AAAA,UAAA;AAAA,QACT;AAEF;AAAA,MACF,KAAK;AACC,YAAA,EAAE,WAAW,EAAE,SAAS;AAC1B,cAAI,CAAC,SAAS;AACZ,cAAE,eAAe;AACjB,gBAAI,EAAE,UAAU;AACL,uBAAA,KAAK,IAAI,CAAC;AAAA,YAAA,OAEd;AACI,uBAAA,KAAK,IAAI,CAAC;AAAA,YAAA;AAEd,mBAAA;AAAA,UAAA;AAAA,QACT;AAEF;AAAA,MACF,KAAK;AACC,YAAA,EAAE,WAAW,EAAE,SAAS;AAC1B,cAAI,CAAC,SAAS;AACZ,cAAE,eAAe;AAEjB,uBAAc,oBAAA,KAAO,GAAA,aAAA,CAAc;AAAA,UAAA;AAAA,QACrC;AAEF;AAAA,IAAA;AAEA,QAAA,EAAE,WAAW,EAAE,SAAS;AACnB,aAAA;AAAA,IAAA;AAET,QAAII,YAAuB,6BAAM,YAAYC,KAAgB,GAAG;AAC9D,cAAQ,KAAK,sCAAsC;AAC5C,aAAA;AAAA,IAAA;AAEA,aAAA,eAAe,OAAO,CAAC;AAChC,QAAI,CAAC,SAAS;AACH,eAAA,aAAa,EAAE,CAAC;AAAA,IAAA;AAEpB,WAAA;AAAA,EACT;AAGE,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW,aAAa,UAAU,eAAe,EAAE;AAAA,MACnD,OAAO,UAAU,EAAE,KAAK,MAAM,WAAW,CAAC;AAAA,MACzC,GAAG;AAAA,QACF,aAAa;AAAA,QACb,iBAAiB;AAAA,MACnB;AAAA,MAEC,UAAA;AAAA,QAAA,eAAgB,oBAAA,OAAA,EAAI,WAAU,iBAAiB,UAAQ,SAAA;AAAA,6BACvD,OAAI,EAAA,WAAU,mBAAkB,OAAO,EAAE,MACxC,GAAA,UAAA;AAAA,UAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAU;AAAA,cACV,OAAO;AAAA;AAAA,gBAEL,SAAQ,eAAU,YAAV,mBAAmB;AAAA,gBAC3B,UAAQ,eAAU,YAAV,mBAAmB,gBAAe,KAAK;AAAA,cACjD;AAAA,cAEC,WAAM,6BAAA,kBAAiB,YAAY,YAAY,SAAS;AAAA,YAAA;AAAA,UAC3D;AAAA,UACA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAW;AAAA,cACX,YAAY;AAAA,cACZ,WAAW;AAAA,cACX,KAAK;AAAA,cACL,MAAM;AAAA,cACN,SAAS,MAAM;;AACJ,yBAAA,kBAAkB,SAAS,CAAC;AACrC,iBAAAH,MAAA,6CAAc,sBAAd,gBAAAA,IAAA,mBAAkC;AAAA,cACpC;AAAA,cACA,OAAO,EAAE,UAAU,OAAO,WAAW,OAAO;AAAA,cAC5C,eAAe,CAAC,MAAM;AACpB,oBAAIE,YAAuB,6BAAM,YAAYC,KAAgB,GAAG;AAC9D,0BAAQ,KAAK,sCAAsC;AACnD;AAAA,gBAAA;AAEF,sBAAM,QAAQ,EAAE;AAChB,0BAAU,KAAK;AACf,oBAAI,CAAC,SAAS;AACH,2BAAA,aAAa,WAAW,CAAC;AACzB,2BAAA,eAAe,OAAO,CAAC;AAChC,yBAAO,WAAW,MAAM;AACtB,0BAAM,MAAM,QAAQ,GAAG,MAAM,WAAW;AACxC,0BAAM,MAAM,SAAS,GAAG,MAAM,YAAY;AAC1C,0BAAM,SAAS,IAAI,OAAO,WAAW,EAAE;AACjC,0BAAA,kBAAkB,QAAQ,MAAM;AAAA,qBACrC,EAAE;AAAA,gBAAA;AAAA,cAET;AAAA,cACA,QAAQ,CAAC,MAAM;AACJ,yBAAA,cAAc,MAAM,CAAC;AAC9B,oBAAI,EAAE,OAAO,MAAM,WAAW,GAAG,GAAG;AAC3B,yBAAA;AAAA,gBAAA,OACF;AACL,sBAAI,SAAS;AACD,8BAAA,EAAE,OAAO,KAAK;AAAA,kBAAA;AAAA,gBAC1B;AAEF,0BAAU,EAAE,MAAM;AAAA,cACpB;AAAA,cACA,OAAO;AAAA,cACP,UAAU,CAAC,MAAM;AACf,sBAAM,QAAQ,EAAE;AAChB,4BAAY,KAAK;AACjB,yBAAS,aAAa,EAAE,cAAc,KAAK,CAAC;AAAA,cAC9C;AAAA,cACA,WAAW;AAAA,cACX,SAAS,CAAC,MAAM;AACA,kBAAE;AACV,sBAAA,gBAAgB,WAAW,MAAM,aAAa;AACpD,2DAAc,GAAG;AAAA,kBACf,UAAU;AAAA,kBACV,eAAe,EAAE,GAAG,cAAc,KAAK,GAAG,cAAc,KAAK;AAAA,kBAC7D,aAAa,EAAE,GAAG,cAAc,QAAQ,GAAG,cAAc,MAAM;AAAA,gBAAA;AAAA,cAChE;AAAA,YACH;AAAA,UAAA;AAAA,QACF,EACF,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACF;AAEJ;AAEa,MAAA,cAAc,CAAC,SAAiB;AACvC,MAAA,KAAK,CAAC,MAAM,KAAK;AACnB,2CAAU,UAAK,KAAA,CAAA;AAAA,EAAA;AAEjB,QAAM,QAAQ,IAAI,MAAM,KAAK,UAAU,CAAC,CAAC;AACzC,QAAM,SAAS;AACf,MAAI,cAAc;AAClB,QAAM,SAAoC,CAAC;AAC3C,SACI,qBAAA,UAAA,EAAA,UAAA;AAAA,IAAA;AAAA,IAEC,MAAM,OAAO,IAAI,CAAC,OAAO,MAAM;AAC9B,UAAI,MAAM,SAAS,SAAS,MAAM,SAAS,SAAS;AAC5C,cAAA,kBAAkB,MAAM,UAAU;AAClC,cAAA,cAAc,OAAO,eAAe;AAC1C,YAAI,gBAAgB,QAAW;AAC7B,iBACG,oBAAA,QAAA,EAAa,OAAO,EAAE,OAAO,YAAY,cAAc,YAAY,MAAM,EAAE,GACzE,UAAM,MAAA,UAAA,KADE,CAEX;AAAA,QAAA;AAGJ,cAAM,QAAQ,YAAY,cAAc,YAAY,MAAM;AAC1D,eAAO,eAAe,IAAI;AAC1B,eACG,oBAAA,QAAA,EAAa,OAAO,EAAE,MAAM,GAAG,WAAW,iBAAiB,MAAM,IAAI,IACnE,UAAA,gBAAA,GADQ,CAEX;AAAA,MAAA;AAIJ,aACG,oBAAA,QAAA,EAAa,WAAW,iBAAiB,MAAM,IAAI,yBAAyB,OAAO,MAAM,MAAM,IAC7F,UAAM,MAAA,UAAA,KADE,CAEX;AAAA,IAEH,CAAA;AAAA,EAAA,GACH;AAEJ;AAEA,MAAM,YAAY,CAAC,UAA+B;AAChD,QAAM,MAAM,QAAQ;AACpB,QAAM,MAAM,SAAS;AACvB;"}
@@ -1,26 +0,0 @@
1
- import { jsx, Fragment } from "react/jsx-runtime";
2
- import React__default from "react";
3
- import { Context } from "../store/index.js";
4
- const Emitter = ({ onChange, onSelect }) => {
5
- const { store } = React__default.useContext(Context);
6
- const { choosing: pointing, selectingZone: zone, table, tableInitialized } = store;
7
- React__default.useEffect(() => {
8
- tableInitialized && table && onChange && onChange(table, {
9
- pointing,
10
- selectingFrom: { y: zone.startY, x: zone.startX },
11
- selectingTo: { y: zone.endY, x: zone.endX }
12
- });
13
- }, [table]);
14
- React__default.useEffect(() => {
15
- onSelect && onSelect(table, {
16
- pointing,
17
- selectingFrom: { y: zone.startY, x: zone.startX },
18
- selectingTo: { y: zone.endY, x: zone.endX }
19
- });
20
- }, [pointing, zone]);
21
- return /* @__PURE__ */ jsx(Fragment, {});
22
- };
23
- export {
24
- Emitter
25
- };
26
- //# sourceMappingURL=Emitter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Emitter.js","sources":["../../components/Emitter.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Context } from '../store';\nimport { FeedbackType } from '../types';\n\ntype Props = {\n onChange?: FeedbackType;\n onSelect?: FeedbackType;\n};\n\nexport const Emitter: React.FC<Props> = ({ onChange, onSelect }) => {\n const { store } = React.useContext(Context);\n const { choosing: pointing, selectingZone: zone, table, tableInitialized } = store;\n\n React.useEffect(() => {\n tableInitialized &&\n table &&\n onChange &&\n onChange(table, {\n pointing,\n selectingFrom: { y: zone.startY, x: zone.startX },\n selectingTo: { y: zone.endY, x: zone.endX },\n });\n }, [table]);\n\n React.useEffect(() => {\n onSelect &&\n onSelect(table, {\n pointing,\n selectingFrom: { y: zone.startY, x: zone.startX },\n selectingTo: { y: zone.endY, x: zone.endX },\n });\n }, [pointing, zone]);\n return <></>;\n};\n"],"names":["React"],"mappings":";;;AAUO,MAAM,UAA2B,CAAC,EAAE,UAAU,eAAe;AAClE,QAAM,EAAE,MAAU,IAAAA,eAAM,WAAW,OAAO;AAC1C,QAAM,EAAE,UAAU,UAAU,eAAe,MAAM,OAAO,qBAAqB;AAE7EA,iBAAM,UAAU,MAAM;AAElB,wBAAA,SACA,YACA,SAAS,OAAO;AAAA,MACd;AAAA,MACA,eAAe,EAAE,GAAG,KAAK,QAAQ,GAAG,KAAK,OAAO;AAAA,MAChD,aAAa,EAAE,GAAG,KAAK,MAAM,GAAG,KAAK,KAAK;AAAA,IAAA,CAC3C;AAAA,EAAA,GACF,CAAC,KAAK,CAAC;AAEVA,iBAAM,UAAU,MAAM;AACpB,gBACE,SAAS,OAAO;AAAA,MACd;AAAA,MACA,eAAe,EAAE,GAAG,KAAK,QAAQ,GAAG,KAAK,OAAO;AAAA,MAChD,aAAa,EAAE,GAAG,KAAK,MAAM,GAAG,KAAK,KAAK;AAAA,IAAA,CAC3C;AAAA,EAAA,GACF,CAAC,UAAU,IAAI,CAAC;AACnB,SAAS,oBAAA,UAAA,EAAA;AACX;"}
@@ -1,17 +0,0 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { createPortal } from "react-dom";
3
- import { useBrowser } from "./hooks.js";
4
- const Fixed = ({ children, style, className = "", ...attrs }) => {
5
- const { document } = useBrowser();
6
- if (document == null) {
7
- return null;
8
- }
9
- return createPortal(
10
- /* @__PURE__ */ jsx("div", { ...attrs, className: `gs-fixed ${className}`, style, children }),
11
- document.body
12
- );
13
- };
14
- export {
15
- Fixed
16
- };
17
- //# sourceMappingURL=Fixed.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Fixed.js","sources":["../../components/Fixed.tsx"],"sourcesContent":["import React, { CSSProperties } from 'react';\nimport { createPortal } from 'react-dom';\nimport { useBrowser } from './hooks';\n\ntype Props = {\n className?: string;\n style?: CSSProperties;\n children: React.ReactNode;\n [attr: string]: any;\n};\n\nexport const Fixed: React.FC<Props> = ({ children, style, className = '', ...attrs }) => {\n const { document } = useBrowser();\n if (document == null) {\n return null;\n }\n return createPortal(\n <div {...attrs} className={`gs-fixed ${className}`} style={style}>\n {children}\n </div>,\n document.body,\n );\n};\n"],"names":[],"mappings":";;;AAWa,MAAA,QAAyB,CAAC,EAAE,UAAU,OAAO,YAAY,IAAI,GAAG,YAAY;AACjF,QAAA,EAAE,SAAS,IAAI,WAAW;AAChC,MAAI,YAAY,MAAM;AACb,WAAA;AAAA,EAAA;AAEF,SAAA;AAAA,IACL,oBAAC,SAAK,GAAG,OAAO,WAAW,YAAY,SAAS,IAAI,OACjD,SACH,CAAA;AAAA,IACA,SAAS;AAAA,EACX;AACF;"}