Ticket #1073 (accepted Task)

Opened 3 years ago

Last modified 3 years ago

Rewrite Webclient with Vue/Vuex/Element UI/Webpack

Reported by: jri Owned by: jri
Priority: Major Milestone: Release 5.0
Component: DeepaMehta Standard Distribution Version:
Keywords: Cc: dgf, Malte, JuergeN
Complexity: 21 Area:
Module:

Change History

comment:1 Changed 3 years ago by jri

  • Status changed from new to accepted

comment:2 Changed 3 years ago by jri

  • Milestone set to Release 5.0

comment:3 Changed 3 years ago by jri

  • Description modified (diff)
  • Summary changed from Rewrite Webclient with Vue/Vuex/Quasar/Webpack to Rewrite Webclient with Vue/Vuex/Element UI/Webpack

comment:4 Changed 3 years ago by Jörg Richter <jri@…>

In 0cf3a8ebcdfd19082b0765754ae3372689dfb1d7/deepamehta:

Declarative plugin asset registration (#1073)

The plugin init() life cycle method is gone.

Instead a plugin registers its assets declaratively.

Example (Topicmaps plugin's main.js):

export default {

  storeModule: {
    name: 'topicmaps',
    module: require('./topicmaps')
  },

  components: [
    {
      extensionPoint: 'dm5.webclient.toolbar',
      component: require('./components/TopicmapSelect')
    },
    {
      extensionPoint: 'dm5.webclient.content',
      component: require('./components/TopicmapPanel')
    }
  ]
}

See #1073

comment:5 Changed 3 years ago by Jörg Richter <jri@…>

In 50c593f979c52de4db711637a7c5991c0b76ba31/deepamehta:

Setup websocket for client sync (#1073)

See #1073

comment:6 Changed 3 years ago by Jörg Richter <jri@…>

In 3d6f38a544aab800b40d29763b6f96f7e2fc1d53/deepamehta:

Sync topic moves between clients (#1073)

See #1073

comment:7 Changed 3 years ago by Jörg Richter <jri@…>

In 06088f91adf558f68aa4f76b6a222b5a52eedaee/deepamehta:

Sync topic revelations between clients (#1073)

See #1073

comment:8 Changed 3 years ago by Jörg Richter <jri@…>

In 1fddd77e1c18ff6c37774d9a332b83df418841f7/deepamehta:

Use CSS variables for global settings (#1073)

See #1073

comment:9 Changed 3 years ago by Jörg Richter <jri@…>

In 51e214f1a00b7199e804506d714f777352ec7471/deepamehta:

JSON: rename data_type_uri to dataTypeUri

See #1073

comment:10 Changed 3 years ago by Jörg Richter <jri@…>

In 6d102bbe353e3b845f00c0819d7a31831085685a/deepamehta:

JSON: rename index_mode_uris, assoc_defs, ...

and view_config_topics to camel case.

See #1073

comment:11 Changed 3 years ago by Jörg Richter <jri@…>

In fb87a5618533110939fcafb3df107985b6721057/deepamehta:

JSON: rename child_type_uri, ...

child_cardinality_uri, parent_type_uri, parent_cardinality_uri, assoc_type_uri, custom_assoc_type_uri, and include_in_label to camel case.

See #1073

comment:12 Changed 3 years ago by Jörg Richter <jri@…>

In eaf0d0bfff3a7d779540986ebd740786479bcd0c/deepamehta:

JSON: rename role_1, role_2, topic_id, ...

topic_uri, assoc_id, role_type_uri to camel case.

See #1073

comment:13 Changed 3 years ago by Jörg Richter <jri@…>

In 9b0b2e03691c02c0923e433adcb50eb5755ffdba/deepamehta:

Topicmaps JSON: rename view_props to viewProps

See #1073

comment:14 Changed 3 years ago by Jörg Richter <jri@…>

comment:15 Changed 3 years ago by Jörg Richter <jri@…>

comment:16 Changed 3 years ago by Jörg Richter <jri@…>

comment:17 Changed 3 years ago by Jörg Richter <jri@…>

In 8510eab16564df9d8a4cea33a55ae965532e6ee7/deepamehta:

Add Element UI "Tabs" and "TabPane?" components.

See #1073

comment:18 Changed 3 years ago by Jörg Richter <jri@…>

comment:19 Changed 3 years ago by Jörg Richter <jri@…>

In 1b2334e3f9bfcde92521281ad91af03d9ca394a0/deepamehta:

Revealed topic/assoc client-sync (#1073)

See #1073

comment:20 Changed 3 years ago by Jörg Richter <jri@…>

In a58e71a68dab0fe40a1fe786a68cbbb509ce09e9/deepamehta:

Clear detail panel on unselect (#1073)

See #1073

comment:21 Changed 3 years ago by Jörg Richter <jri@…>

In 65c1df0ebbe1852c13e8aed04be0872bbfdd6f88/deepamehta:

Open search/create widget on right-click (#1073)

See #1073

comment:22 Changed 3 years ago by Jörg Richter <jri@…>

In bad6ed0b8b20ad5ad9f98abc88a604304fbf85e3/deepamehta:

Tweak Element UI table and dialog CSS (#1073)

See #1073

comment:23 Changed 3 years ago by Jörg Richter <jri@…>

In 0753c2f2307f0a6da06875ad2c766934ad23021d/deepamehta:

Add DM4 bitmap icon files again (#1073)

SVG icon rendering failed due to Cytoscape limitations:
https://github.com/cytoscape/cytoscape.js/issues/1867

See #1073

comment:24 Changed 3 years ago by Jörg Richter <jri@…>

comment:25 Changed 3 years ago by Jörg Richter <jri@…>

In a30287f49b79bc7582255eedb1819ac5aaa6f8b1/deepamehta:

Replace bitmap icons with SVG icons (#1073)

The Cytoscape SVG issue (https://github.com/cytoscape/cytoscape.js/issues/1867) is worked around by rendering raw Font Awesome SVG glyphs via <path> (instead of text rendering via <text font-family="...">).

See https://github.com/jri/dm5-topicmap-panel/blob/master/src/cytoscape-renderer.js

See #1073

comment:26 Changed 3 years ago by Jörg Richter <jri@…>

In dcea2ff2001f8af98fffab80e497ed413620896c/deepamehta:

Module file layout: js is in src/main/js/ (#1073)

See #1073

comment:27 Changed 3 years ago by Jörg Richter <jri@…>

In 741ff16bba008a2af54f33946f80219ff56d6302/deepamehta:

Fix SVG rendering in Firefox and Chrome (#1073)

See #1073

comment:28 Changed 3 years ago by Jörg Richter <jri@…>

In 7fc4d10eb17b55018e9e16389a2203114013f1b0/deepamehta:

Define onTopicDroppedOntoTopic action (#1073)

See #1073

comment:29 Changed 3 years ago by Jörg Richter <jri@…>

In 4d86d53bbb6424867434b45bcf65e9175dfb84bf/deepamehta:

Table CSS: don't break words, wrap instead (#1073)

See #1073

comment:30 Changed 3 years ago by Jörg Richter <jri@…>

In 09de9fae1ecdd3e0ad5b6f830ea54f9b0d70cf50/deepamehta:

Create associations (#1073)

To create an association drop a topic on another topic.

See #1073

comment:31 Changed 3 years ago by Jörg Richter <jri@…>

In 1f5aeac0902e686220cf1f3a35c12a786640f16e/deepamehta:

Dev-server: all requests are proxied by default

See #1073

comment:32 Changed 3 years ago by Jörg Richter <jri@…>

comment:33 Changed 3 years ago by Jörg Richter <jri@…>

In 5e37d788a3b0475d314402d089252a147010e77e/deepamehta:

Client sync for edit-association (#1073)

See #1073

comment:34 Changed 3 years ago by Jörg Richter <jri@…>

In 8314b32334942d4029607aaf57e72e3ff8c7a9c3/deepamehta:

Hide Topic, Hide Association (#1073)

See #1073

comment:35 Changed 3 years ago by Jörg Richter <jri@…>

In a2990e117302b49d1051752956002701dbf49d81/deepamehta:

Client sync for Hide Topic, Hide Assoc (#1073)

See #1073

comment:36 Changed 3 years ago by Jörg Richter <jri@…>

In 9acf193c1def61817353c1b2e03d2db6139c83b9/deepamehta:

Refactor Hide Topic (no deadlocks) (#1073)

See #1073

comment:37 Changed 3 years ago by Jörg Richter <jri@…>

comment:38 Changed 3 years ago by Jörg Richter <jri@…>

In 800ead666a7aca9389fa4947ab9c4cedcd66b8c9/deepamehta:

Delete Topic, Delete Association (#1073)

See #1073

comment:39 Changed 3 years ago by Jörg Richter <jri@…>

In b3999c334ddd14d24d62977d676717e2f6c32a57/deepamehta:

Fix client sync: reveal-related-topic (#1073)

See #1073

comment:40 Changed 3 years ago by Jörg Richter <jri@…>

comment:41 Changed 3 years ago by Jörg Richter <jri@…>

In 0354f6d28b88a227432ada09db20b0638542c9ce/deepamehta:

Fix: clear detail panel on hide topic/assoc (#1073)

See #1073

comment:42 Changed 3 years ago by Jörg Richter <jri@…>

In 77c0ce580663a9578afd04227e4d7c687602560b/deepamehta:

Refactor clear detail panel on hide (#1073)

See #1073

comment:43 Changed 3 years ago by Jörg Richter <jri@…>

In 0c4865eb07726ef63b20594e30096997468941ab/deepamehta:

Depend on released DM5 node modules (#1073)

See #1073

comment:44 Changed 3 years ago by Jörg Richter <jri@…>

In 23e1094526dc393899977f8a39490b7d54eb6c5b/deepamehta:

Tweak Elemenet UI input height and padding (#1073)

See #1073

comment:45 Changed 3 years ago by Jörg Richter <jri@…>

In 96a2e5cb9f4d7c165c1f6889cdffc9cd32fbda81/deepamehta:

Topicmaps: add revealTopicById action (#1073)

See #1073

comment:46 Changed 3 years ago by Jörg Richter <jri@…>

comment:47 Changed 3 years ago by Jörg Richter <jri@…>

In 67a5b4653057282b20ab4a4f99f24f194a7f0f89/deepamehta:

Adapt to changed search widget API (#1073)

See #1073

comment:48 Changed 3 years ago by Jörg Richter <jri@…>

In 81b453bdae05e357999a49367a30e133715a406e/deepamehta:

Router: use $route watcher instead guard (#1073)

See #1073

comment:49 Changed 3 years ago by Jörg Richter <jri@…>

In dc40f3f2e4ff2a6bcd6b0d2ca5cf0b1cb54a426a/deepamehta:

Router: pick initial topicmap from URL (#1073)

See #1073

comment:50 Changed 3 years ago by Jörg Richter <jri@…>

In 087c8e4184ad4f72a64d05c2df481c49a595fdd9/deepamehta:

Move plugin loading to main.js (#1073)

See #1073

comment:51 Changed 3 years ago by Jörg Richter <jri@…>

In 13c1eba6c55c1bb9469fcedbd0a3f71ba9fa87e0/deepamehta:

Sync renderer initialization and first rendering (#1073)

See #1073

comment:52 Changed 3 years ago by Jörg Richter <jri@…>

In 9740e1a9c5dbf08786df26d501cde0681964c8eb/deepamehta:

Topicmaps module does not manipulate root state (#1073)

See #1073

comment:53 Changed 3 years ago by Jörg Richter <jri@…>

In 2809314659cba5b6a7f3a6d33a4ce39bcd62c1dc/deepamehta:

Router: reflect selected topic in URL (#1073)

See #1073

comment:54 Changed 3 years ago by Jörg Richter <jri@…>

In 105297b7614772395ba6c200d05147da56292f7b/deepamehta:

Router: reflect topic deselection in URL (#1073)

See #1073

comment:55 Changed 3 years ago by Jörg Richter <jri@…>

In f0de91d762d91a1154d5619f2df890e4a8e7ae18/deepamehta:

Fix "dm5" library initialization (#1073)

See #1073

comment:56 Changed 3 years ago by Jörg Richter <jri@…>

comment:57 Changed 3 years ago by Jörg Richter <jri@…>

In fe091498c0fa8b13cf3872a0601cf9aec4e4728a/deepamehta:

Refactor routing (#1073)

The entire routing aspect is encapsulated in its own file (router.js)

See #1073

comment:58 Changed 3 years ago by Jörg Richter <jri@…>

In 1f60311e749133b13890c96f4f5dd41f9242c61d/deepamehta:

Add reveal-topicmap button (#1073)

See #1073

comment:59 Changed 3 years ago by Jörg Richter <jri@…>

comment:60 Changed 3 years ago by Jörg Richter <jri@…>

comment:61 Changed 3 years ago by Jörg Richter <jri@…>

In 3f3a91f847233e3b5397937bc01f1826ffef5f35/deepamehta:

Refactor Webclient startup (#1073)

The router initializes the app state completely before handing over to the view.
In particular a topicmap is loaded already.

See #1073

comment:62 Changed 3 years ago by Jörg Richter <jri@…>

In 4f886dedcc97ffc5beaa9e4cfbffb09fd9071e8f/deepamehta:

Refactor Webclient startup (#1073)

The Webclient does not synchronize the initial rendering with the Topicmap Renderer.
The Topicmap Renderer synchronizes the initial rendering itself.

See #1073

comment:63 Changed 3 years ago by Jörg Richter <jri@…>

In 748c3def2dd449130d0193c6fc1c152e749efbd1/deepamehta:

Topicmap selector reflects initial topicmap (#1073)

See #1073

comment:64 Changed 3 years ago by Jörg Richter <jri@…>

In 5bad688ce5b1520207bc4a6439ea6a3d8a6b6dff/deepamehta:

Router: pick initial topicmap from cookie (#1073)

See #1073

comment:65 Changed 3 years ago by Jörg Richter <jri@…>

In 08422e87f6d2130053e28d9f2723dfa9c55b6150/deepamehta:

Router: set initial workspace (#1073)

See #1073

comment:66 Changed 3 years ago by Jörg Richter <jri@…>

comment:67 Changed 3 years ago by Jörg Richter <jri@…>

In 4d199e63e0e49e20d849af1b05fa18d1d9dda819/deepamehta:

Startup without topicmap cookie (#1073)

See #1073

comment:68 Changed 3 years ago by Jörg Richter <jri@…>

In 98ed3caab37ceabb59793590b80026f752162a48/deepamehta:

Fix build system: node module snapshots (#1073)

See #1073

comment:69 Changed 3 years ago by Jörg Richter <jri@…>

In 3fe54165b31734fe431e63f92fee7fb2fe8dbed5/deepamehta:

Remove node_modules before building distro (#1073)

See #1073

comment:70 Changed 3 years ago by Jörg Richter <jri@…>

comment:71 Changed 3 years ago by Jörg Richter <jri@…>

In a1f4407e1be3c2d98fa3d74d6fa4751e3eec5f09/deepamehta:

Refactor: move root state to detail panel (#1073)

See #1073

comment:72 Changed 3 years ago by Jörg Richter <jri@…>

comment:73 Changed 3 years ago by Jörg Richter <jri@…>

In 874d304c07666d2a248e3c977b1fc576fbe2bd20/deepamehta:

Router: fix initial navigation (#1073)

See #1073

comment:74 Changed 3 years ago by Jörg Richter <jri@…>

In 41f49cd960c0da58749e7b0cdb09c6faa25db835/deepamehta:

Sync Webclient start with workspace loading (#1073)

See #1073

comment:75 Changed 3 years ago by Jörg Richter <jri@…>

In 94dab22a327c628cd30dc9813ff00bf4b01a40c5/deepamehta:

Refactor: move unselect to webclient.js (#1073)

See #1073

comment:76 Changed 3 years ago by Jörg Richter <jri@…>

comment:77 Changed 3 years ago by Jörg Richter <jri@…>

In c2ed99363291036936104d7d7d8835a1118e3c06/deepamehta:

Restore topic/assoc selection on map switch (#1073)

See #1073

comment:78 Changed 3 years ago by Jörg Richter <jri@…>

In bd6a30002a674c746a539d1ea1e8ac857521cbc8/deepamehta:

Fix: visualize selection on topicmap (#1073)

Dispatching "syncSelect" no longer triggers a route change.

See #1073

comment:79 Changed 3 years ago by Jörg Richter <jri@…>

In c01e712f726bc01d219dae46910bc698eeed983f/deepamehta:

Fix: remove visual selection on popstate (#1073)

See #1073

comment:80 Changed 3 years ago by Jörg Richter <jri@…>

In 8ea87bb8423af9bf849e8e55b4cb4834eb259fc5/deepamehta:

Fix: switch workspace on history navigation (#1073)

See #1073

comment:81 Changed 3 years ago by Jörg Richter <jri@…>

comment:82 Changed 3 years ago by Jörg Richter <jri@…>

In ea23d094093d7e310310d36259b18aa1a20d9ac2/deepamehta:

Restore selected topicmap on workspace switch (#1073)

See #1073

comment:83 Changed 3 years ago by Jörg Richter <jri@…>

In b2d3a01ab2a359695660f7fa4e465d445c62eba9/deepamehta:

Fix: restore selected map on workspace switch in conjunction with history navigation (#1073)

The displayTopicmap action has a new pre-condition:
the topicmap belongs to the selected workspace (workspaceId state is up-to-date alreaady).

See #1073

comment:84 Changed 3 years ago by Jörg Richter <jri@…>

In f52facbaddb3d7681a639e208ba0c7e65757b7c4/deepamehta:

Fix: restore topic/assoc selection on history navigation (#1073)

See #1073

comment:85 Changed 3 years ago by Jörg Richter <jri@…>

In c942af7c065055d59c087a095fb3298d8a5a1bf4/deepamehta:

Refactor: drop workspace arg from 2 topicmap actions (#1073)

See #1073

comment:86 Changed 3 years ago by Jörg Richter <jri@…>

In 7888b535511c566e5b5d1d0db49131a58871701c/deepamehta:

Client sync for "create topicmap" (#1073)

See #1073

comment:87 Changed 3 years ago by Jörg Richter <jri@…>

comment:88 Changed 3 years ago by Jörg Richter <jri@…>

In 6efcfe332b991a24a948056c302a9a91c6672d9c/deepamehta:

Client sync for "create workspace" (#1073)

See #1073

comment:89 Changed 3 years ago by Jörg Richter <jri@…>

comment:90 Changed 3 years ago by Jörg Richter <jri@…>

In 7bd90241ec182b3813d882e1821646dc44bda13a/deepamehta:

Refactor: workspaces "ready" promise is state (#1073)

The workspacesReady action is gone.

See #1073

comment:91 Changed 3 years ago by Jörg Richter <jri@…>

In db3e1bacb49d5e55d38bc01be025794ed543392f/deepamehta:

Refactor: fetching topicmap topics (#1073)

Topicmap topics are fetched in "setWorkspaceId" action.

The "selectTopicmapForWorkspace" expects the topicmap topics for the workspace are fetched already.

The "selectTopicmap" action no longer expects the topicmap being assigned to the selected workspace.

See #1073

comment:92 Changed 3 years ago by Jörg Richter <jri@…>

In c8807a8bb2670589af483bf9bf53d1aa30cd6bb6/deepamehta:

Double click a Topicmap topic to open the topicmap (#1073)

See #1073

comment:93 Changed 3 years ago by Jörg Richter <jri@…>

In 5f57cd1b6238553eddc78dc5a5741f545a0e6344/deepamehta:

New 'components' format in plugin main.js (#1073)

See #1073

comment:94 Changed 3 years ago by Jörg Richter <jri@…>

In 20c2b56a26525372a53b8ae9d664f9a2cc974d55/deepamehta:

Register detail panel custom renderers (#1073)

See #1073

comment:95 Changed 3 years ago by Jörg Richter <jri@…>

comment:96 Changed 3 years ago by Jörg Richter <jri@…>

In 180ea23d93655ccd57aa28de241bf943afc29204/deepamehta:

Typeeditor: strip DM4 frontend code (#1073)

See #1073

comment:97 Changed 3 years ago by Jörg Richter <jri@…>

In 279e23fe14eb084f9332b2e887e7b2a356517cad/deepamehta:

Plugin export can be object or function (#1073)

See #1073

comment:98 Changed 3 years ago by Jörg Richter <jri@…>

In 999b75f0a20735afaaa31de481a5276672fdf7d2/deepamehta:

Plugins can inject extra items to the search widget (#1073)

See #1073

comment:99 Changed 3 years ago by Jörg Richter <jri@…>

comment:100 Changed 3 years ago by Jörg Richter <jri@…>

In 6dabfb97f40994cf2183b28180aeb4147b9878cc/deepamehta:

Client sync: broadcast new topic types (#1073)

See #1073

comment:101 Changed 3 years ago by Jörg Richter <jri@…>

comment:102 Changed 3 years ago by Jörg Richter <jri@…>

comment:103 Changed 3 years ago by Jörg Richter <jri@…>

In 840046633b7923925d89198fbb7f816443131047/deepamehta:

Adapt to 'dm5' module init (#1073)

See #1073

comment:104 Changed 3 years ago by Jörg Richter <jri@…>

comment:105 Changed 3 years ago by Jörg Richter <jri@…>

comment:106 Changed 3 years ago by Jörg Richter <jri@…>

In aada49b36d13e1cecb994d78ff6dd6dd530fa949/deepamehta:

Type editor: change data type (#1073)

See #1073

comment:107 Changed 3 years ago by Jörg Richter <jri@…>

comment:108 Changed 3 years ago by Jörg Richter <jri@…>

comment:109 Changed 3 years ago by Jörg Richter <jri@…>

In f5ea6423f9fbeec3a6f6cf8897c0b4a455d1d09b/deepamehta:

package.json: add license: MIT (#1073)

See #1073

Note: See TracTickets for help on using tickets.