dockview icon indicating copy to clipboard operation
dockview copied to clipboard

chore: create new packages for supported frameworks

Open mathuo opened this issue 2 years ago • 8 comments

mathuo avatar Nov 08 '23 20:11 mathuo

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Latest deployment of this branch, based on commit be79745f061deaffdd05a0e8bf8829a10e36b2b3:

Sandbox Source
customheader-dockview Configuration
dockview-app Configuration
editor-gridview Configuration
events-dockview Configuration
externaldnd-dockview Configuration
fullwidthtab-dockview Configuration
iframe-dockview Configuration
keyboard-dockview Configuration
lockedgroup-dockview Configuration
nativeapp-dockview Configuration
nested-dockview Configuration
rendering-dockview Configuration

codesandbox-ci[bot] avatar Nov 08 '23 20:11 codesandbox-ci[bot]

Thank you so much for creating this pull request and responding to my "issue"! I'm really excited about the project and it would be wonderful if I could replace my GoldenLayout project and switch to this.

The new structure will definitely make it easier for me and other developers to work on a Vue version (or versions for other frameworks). As soon as I get deep enough into the project, I would definitely try to participate and contribute source code.

Having a layout manager of the quality of dockview for our Vue project would be very important at the moment. It would be great if you could contact me at [email protected] so that we can discuss how we can drive the development forward (and perhaps also provide a little financial support).

Thanks! Thomas

eclipse313 avatar Nov 09 '23 20:11 eclipse313

I would love to see a version for Solid-js! Edit: looks like someone is working on this: https://github.com/lyonbot/solid-dockview

jcuenod avatar Nov 13 '23 19:11 jcuenod

@eclipse313 This probably has your interest.

Got a basic vue version working. Theres a bunch of stuff that does not work yet.

I did not use portals, just straight up rendered the components which seems to work.

There are some kinks that i havent figured out. It seems that the props for panel, header and watermark components cannot access the api title and so on without updating, update another ref, basically the props are not reactive and i have no idea how to make them reactive..

I will not be actively maintaining a vue port, but i can help get it up and running. At the moment i just did everything inside of a vue project, ill extract and publish it tomorrow.

image

BlueBazze avatar Feb 12 '24 00:02 BlueBazze

That sounds very interesting, thank you for your work! Once you've pushed it, I'll have a look to see if I can find the cause of the missing reactive. By "props for panel" do you mean that when I assign props to the component, they don't update?

eclipse313 avatar Feb 13 '24 10:02 eclipse313

It is very cluttered. But there is a half working version up https://github.com/BlueBazze/dockview/tree/master/packages/dockview-vue

I used the default vue templates to create the package. There is probably some configuration needed for vite to build the actual package. So at the moment im guessing only the playground works.

ESlint also throws a bunch of errors. I didnt include vue eslinting.

BlueBazze avatar Feb 15 '24 17:02 BlueBazze

@mathuo Now that i think of it.. Would you rather have us make a pr based on master or this pr branch?

BlueBazze avatar Feb 15 '24 17:02 BlueBazze

@mathuo Now that i think of it.. Would you rather have us make a pr based on master or this pr branch?

This branch is a little experimental. If you have a working example for Vue then I'm happy to accept that as a PR from your own branch.

I'm currently in the process of preparing v1.10.0 which has a few large features but after that is released I'm hoping to have some time to look into multiple framework support, specifically getting both a Vue and an Angular package created.

Awesome work though getting a working Vue example!

mathuo avatar Feb 17 '24 11:02 mathuo

@techbech @husayt @kyDenZ @artaommahe @eclipse313 @jcuenod @BlueBazze

As of version 1.14.0 dockview-vue is offically supported. I am in the process of updating the docs @ dockview.dev where there are also some examples and the framework can be toggled to show examples in Vue.

image

Also find the raw list of examples @ dockview.dev/templates.

I will be closing this PR and any further discussions can be added here.

mathuo avatar May 30 '24 20:05 mathuo

This is great @mathuo. thank you.

husayt avatar May 31 '24 07:05 husayt

Great work!

BlueBazze avatar May 31 '24 10:05 BlueBazze