wegue icon indicating copy to clipboard operation
wegue copied to clipboard

Purge AppTemplate to contain only minimal definitions

Open fschmenger opened this issue 3 years ago • 0 comments

Currently, the Wegue app template created on app-init is quite verbose and contains a lot of definitions that a common user will hardly ever touch. Also - as Wegue is a work in progress - app templates (within app-starter) are changed quite frequently at the moment. This results in exhaustive merge operations, to incorporate all the new changes from app-starter/WguAppTemplate.vue (and also all the referenced templates) into an app/WguAppTemplate.vue created with a previous Wegue version.

The goal: In an ideal world, the default app template should be probably as simple as that:

<template>
   <wgu-app/>
</template>

The following is just a rough outline of the involved tasks.

Step 1: Refactor Wegue, in order to move

  • AppFooter.vue
  • AppHeader.vue
  • AppSidebar.vue from app-starter to the code base. Additionally a new module WguApp.vue will be created in the code base which will wrap the code with all default Wegue-module includes from the current 'WguAppTemplate.vue'.

Step 2: We should come up with a sophisticated slot concept (it's already present but needs more work), so we do not lose any customizability options. This means <wgu-app> should contain slots that allow the user to e.g. replace the AppFooter or AppHeader implementations. Hence the core should provide meaningful base classes for those, so a derived customized AppHeader can be implemented by a user with minimal effort.

fschmenger avatar Jan 11 '22 13:01 fschmenger