From dab6c1e9dc4b0b445ff4d676e22535845d55fd92 Mon Sep 17 00:00:00 2001 From: Eugen Ciur <eugen@papermerge.com> Date: Sat, 6 Nov 2021 07:22:22 +0100 Subject: [PATCH] now we have buggy, but correctly structured commander component --- app/components/breadcrumb/index.hbs | 17 ++++++++ .../breadcrumb/{base.js => index.js} | 2 +- app/components/commander/index.hbs | 22 +++++++++- app/templates/authenticated/nodes.hbs | 42 ++++--------------- 4 files changed, 47 insertions(+), 36 deletions(-) create mode 100644 app/components/breadcrumb/index.hbs rename app/components/breadcrumb/{base.js => index.js} (86%) diff --git a/app/components/breadcrumb/index.hbs b/app/components/breadcrumb/index.hbs new file mode 100644 index 0000000..3c589c1 --- /dev/null +++ b/app/components/breadcrumb/index.hbs @@ -0,0 +1,17 @@ +<nav aria-label="breadcrumb" class="m-2"> + <ol class="breadcrumb"> + {{#each this.nodes as |node|}} + <li class="breadcrumb-item"> + {{#if (is_equal @hint "left")}} + <Commander::LinkToLeft + @node={{node}} + @extranode={{@extranode}} /> + {{else}} + <Commander::LinkToRight + @node={{node}} + @extranode={{@node}} /> + {{/if}} + </li> + {{/each}} + </ol> +</nav> \ No newline at end of file diff --git a/app/components/breadcrumb/base.js b/app/components/breadcrumb/index.js similarity index 86% rename from app/components/breadcrumb/base.js rename to app/components/breadcrumb/index.js index 2a5b92c..8568edb 100644 --- a/app/components/breadcrumb/base.js +++ b/app/components/breadcrumb/index.js @@ -1,7 +1,7 @@ import Component from '@glimmer/component'; -export default class BaseBreadcrumbComponent extends Component { +export default class BreadcrumbComponent extends Component { get nodes() { let current, diff --git a/app/components/commander/index.hbs b/app/components/commander/index.hbs index 7d28fda..2ba13e0 100644 --- a/app/components/commander/index.hbs +++ b/app/components/commander/index.hbs @@ -14,5 +14,25 @@ @onClose={{this.closeNewFolderModal}} {{show-when this.show_new_folder_modal}} /> - {{yield}} + <Breadcrumb + @node={{@node}} + @extranode={{@extranode}} + @hint={{@hint}} /> + + {{#each @node.children as |node|}} + {{#let (component node.nodeType) as |NodeType|}} + {{! NodeType is either <Folder /> or <Document />}} + <NodeType @model={{node}}> + {{#if (is_equal @hint "left")}} + <Commander::LinkToLeft + @node={{node}} + @extranode={{@extranode}} /> + {{else}} + <Commander::LinkToRight + @node={{node}} + @extranode={{@node}} /> + {{/if}} + </NodeType> + {{/let}} + {{/each}} </div> diff --git a/app/templates/authenticated/nodes.hbs b/app/templates/authenticated/nodes.hbs index 4f1010b..87676fc 100644 --- a/app/templates/authenticated/nodes.hbs +++ b/app/templates/authenticated/nodes.hbs @@ -1,43 +1,17 @@ <div class="panels d-flex"> <Commander + @node={{this.mainnode}} + @extranode={{this.extranode}} @onPanelToggle={{this.onPanelToggle}} - @dualPanelMode={{this.dualpanel_mode}} > - - <Breadcrumb::Left - @node={{@node}} - @extranode={{@extranode}} /> - - {{#each this.mainnode.children as |node|}} - {{#let (component node.nodeType) as |NodeType|}} - {{! NodeType is either <Folder /> or <Document />}} - <NodeType @model={{node}}> - <Commander::LinkToLeft - @node={{node}} - @extranode={{this.extranode}} /> - </NodeType> - {{/let}} - {{/each}} - </Commander> + @dualPanelMode={{this.dualpanel_mode}} + @hint="left" /> {{#if this.dualpanel_mode}} <Commander + @node={{this.extranode}} + @extranode={{this.mainnode}} @onPanelToggle={{this.onPanelToggle}} - @dualPanelMode={{this.dualpanel_mode}} > - - <Breadcrumb::Right - @node={{@node}} - @extranode={{@extranode}} /> - - {{#each this.extranode.children as |node|}} - {{#let (component node.nodeType) as |NodeType|}} - {{! NodeType is either <Folder /> or <Document />}} - <NodeType @model={{node}}> - <Commander::LinkToRight - @node={{node}} - @extranode={{this.mainnode}} /> - </NodeType> - {{/let}} - {{/each}} - </Commander> + @dualPanelMode={{this.dualpanel_mode}} + @hint="right" /> {{/if}} </div> -- GitLab