diff --git a/.github/workflows/node.js.yml b/.github/workflows/node.js.yml index bc75db2..294ba6c 100644 --- a/.github/workflows/node.js.yml +++ b/.github/workflows/node.js.yml @@ -20,7 +20,7 @@ jobs: - name: Set up Node.js uses: actions/setup-node@v3 with: - node-version: '14' + node-version: '16' - name: Install dependencies run: npm install diff --git a/README.md b/README.md index e21fb5c..b646135 100644 --- a/README.md +++ b/README.md @@ -91,6 +91,7 @@ export interface TreeViewItem { selected?: boolean; expanded?: boolean; disableDragAndDrop?: boolean; // Disable drag and drop for a specific node. + collapsible?: boolean; // When set to false, item can not be collapsed (children always visible) disabled?: boolean;// When disabled, an item can neither be selected nor checked styles?: string[]; // Add the .css styles for a given item meta?: any;// provides meta-data of any type per node. diff --git a/dev/tree.json b/dev/tree.json index 613ed66..fa09997 100644 --- a/dev/tree.json +++ b/dev/tree.json @@ -34,9 +34,11 @@ "type": ".playlist" }, { - "name": "Decoding hieroglyphs", + "name": "Decoding hieroglyphs (Not collapsible)", "id": 8, "type": ".playlist", + "collapsible": false, + "expanded": true, "children": [ { "name": "List of Rejection Emails", diff --git a/src/style.css b/src/style.css index 25a3383..3285e6d 100644 --- a/src/style.css +++ b/src/style.css @@ -147,7 +147,16 @@ align-items: center; } -.vue3-tree-vue .nested { +/** + * children of checkable tree items need 47px left margin. + * Otherwise, only 27px left margin is needed. + */ + +.vue3-tree-vue .nested{ + margin-left: 27px !important; +} + +.tree-item-node-checkable > .nested { margin-left: 47px !important; } diff --git a/src/tree-component.vue b/src/tree-component.vue index 7ee4ac4..3616953 100644 --- a/src/tree-component.vue +++ b/src/tree-component.vue @@ -11,7 +11,11 @@
  • + class="tree-item-node" + :class="{ + 'tree-item-node-checkable': isCheckable, + }" + >
    -
    +
    diff --git a/src/types.ts b/src/types.ts index a91473a..d026ed6 100644 --- a/src/types.ts +++ b/src/types.ts @@ -7,6 +7,7 @@ export interface TreeViewItem { expanded?: boolean; disabled?: boolean; disableDragAndDrop?: boolean; + collapsible?: boolean; styles?: string[]; meta?: any; }