TonyGermaneri / canvas-datagrid

Canvas based data grid web component. Capable of displaying millions of contiguous hierarchical rows and columns without paging or loading, on a single canvas element.
BSD 3-Clause "New" or "Revised" License
1.44k stars 186 forks source link

Typescript Migration #347

Open josh-hemphill opened 3 years ago

josh-hemphill commented 3 years ago

I finally have a little bit of time again. I'm creating this to track progress for general typescript related changes eventually culminating in a typescript migration. From what was discussed in #155 and now that we have some basic typescript type definition info to compare against, as mentioned in this comment on the thread, if we create a test or tests for the resulting tsd file, we can compare that to any changes to make sure the interface is the same.

So first I think I'll add the type test, but I'm a little concerned about how we approach the main interface. If we need to start adding typescript files one-by-one, then it'd be compiled with tsc, and as I found with trying to use tsc to generate type information, the main.js interface is mostly side-effects with little direct interface.

So as I see it, the only way to start using tsc is we create a side build and label it as alpha/beta that uses tsc and changes the main.js or has it's own new one that's a ts-style module with an interface that tsc can interpret, and add things like the global/window assignment after the build via an IIFE export bundle.

JacobMGEvans commented 3 years ago

Greetings, If you are interested we can "Raid" your repository, there would be one big PR from our Organization, for a large specific task/problem domain; in this case TS conversion.

We would need a maintainer as a point of contact, we prefer using Discord https://discord.gg/xkdkAJZsBR

Let me know if you are interested. You can read more about what we are doing here: https://github.com/OpenSourceRaidGuild/tutorial-quest This is also an example of how we work and the workflow: HospitalRun/hospitalrun-frontend#2516

cc: @nobrayner @mpeyper @Aprillion

josh-hemphill commented 3 years ago

@JacobMGEvans, I'm not sure this would be a good candidate, the repo owner and main contributors expressed objections to any kind of big-bang rewrite to migrate to Typescript, preferring some kind of long term staged migration.