@onereach/ui-components 3.0.2-beta.2476.0 → 3.0.2-beta.2480.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundled/v2/{OrSelect-0b9b27e9.js → OrSelect-33f58941.js} +6 -5
- package/dist/bundled/v2/components/index.d.ts +0 -1
- package/dist/bundled/v2/components/index.js +1 -2
- package/dist/bundled/v2/components/or-select-v3/index.js +1 -1
- package/dist/bundled/v2/index.js +2 -3
- package/dist/bundled/v3/components/index.d.ts +0 -1
- package/dist/bundled/v3/components/index.js +0 -1
- package/dist/bundled/v3/index.js +116 -141
- package/dist/esm/v2/{OrSelect-8307ad20.js → OrSelect-4b901267.js} +6 -5
- package/dist/esm/v2/components/index.d.ts +0 -1
- package/dist/esm/v2/components/index.js +1 -2
- package/dist/esm/v2/components/or-select-v3/index.js +1 -1
- package/dist/esm/v2/index.js +1 -2
- package/dist/esm/v3/{OrSelect-c3a50846.js → OrSelect-6ccd02ea.js} +5 -4
- package/dist/esm/v3/components/index.d.ts +0 -1
- package/dist/esm/v3/components/index.js +1 -2
- package/dist/esm/v3/components/or-select-v3/index.js +1 -1
- package/dist/esm/v3/index.js +1 -2
- package/package.json +1 -1
- package/src/components/index.ts +0 -1
- package/src/components/or-select-v3/OrSelect.vue +65 -64
- package/dist/bundled/v2/OrTree-b8e47647.js +0 -236
- package/dist/bundled/v2/components/or-tree-v3/OrTree.vue.d.ts +0 -47
- package/dist/bundled/v2/components/or-tree-v3/TreeNode.vue.d.ts +0 -82
- package/dist/bundled/v2/components/or-tree-v3/index.d.ts +0 -2
- package/dist/bundled/v2/components/or-tree-v3/index.js +0 -17
- package/dist/bundled/v2/components/or-tree-v3/styles.d.ts +0 -1
- package/dist/bundled/v2/components/or-tree-v3/types.d.ts +0 -10
- package/dist/bundled/v2/components/or-tree-v3/utils.d.ts +0 -5
- package/dist/bundled/v3/OrTree.vue_vue_type_script_lang-9a31b9b4.js +0 -146
- package/dist/bundled/v3/components/or-tree-v3/OrTree.vue.d.ts +0 -47
- package/dist/bundled/v3/components/or-tree-v3/TreeNode.vue.d.ts +0 -82
- package/dist/bundled/v3/components/or-tree-v3/index.d.ts +0 -2
- package/dist/bundled/v3/components/or-tree-v3/index.js +0 -16
- package/dist/bundled/v3/components/or-tree-v3/styles.d.ts +0 -1
- package/dist/bundled/v3/components/or-tree-v3/types.d.ts +0 -10
- package/dist/bundled/v3/components/or-tree-v3/utils.d.ts +0 -5
- package/dist/esm/v2/OrTree-32b2fede.js +0 -233
- package/dist/esm/v2/components/or-tree-v3/OrTree.vue.d.ts +0 -47
- package/dist/esm/v2/components/or-tree-v3/TreeNode.vue.d.ts +0 -82
- package/dist/esm/v2/components/or-tree-v3/index.d.ts +0 -2
- package/dist/esm/v2/components/or-tree-v3/index.js +0 -15
- package/dist/esm/v2/components/or-tree-v3/styles.d.ts +0 -1
- package/dist/esm/v2/components/or-tree-v3/types.d.ts +0 -10
- package/dist/esm/v2/components/or-tree-v3/utils.d.ts +0 -5
- package/dist/esm/v3/OrTree-bf625e80.js +0 -170
- package/dist/esm/v3/components/or-tree-v3/OrTree.vue.d.ts +0 -47
- package/dist/esm/v3/components/or-tree-v3/TreeNode.vue.d.ts +0 -82
- package/dist/esm/v3/components/or-tree-v3/index.d.ts +0 -2
- package/dist/esm/v3/components/or-tree-v3/index.js +0 -14
- package/dist/esm/v3/components/or-tree-v3/styles.d.ts +0 -1
- package/dist/esm/v3/components/or-tree-v3/types.d.ts +0 -10
- package/dist/esm/v3/components/or-tree-v3/utils.d.ts +0 -5
- package/src/components/or-tree-v3/OrTree.stories3.ts +0 -105
- package/src/components/or-tree-v3/OrTree.vue +0 -85
- package/src/components/or-tree-v3/TreeNode.vue +0 -72
- package/src/components/or-tree-v3/index.ts +0 -2
- package/src/components/or-tree-v3/styles.ts +0 -13
- package/src/components/or-tree-v3/types.ts +0 -12
- package/src/components/or-tree-v3/utils.ts +0 -31
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div
|
|
3
|
-
class="or-tree"
|
|
4
|
-
@drop="onDrop"
|
|
5
|
-
>
|
|
6
|
-
<tree-node
|
|
7
|
-
v-for="node in visibleItems"
|
|
8
|
-
:key="node[identifierKey]"
|
|
9
|
-
:node="node"
|
|
10
|
-
:node-key="node[identifierKey]"
|
|
11
|
-
:is-expanded="nodeMetadataByKey[node.key].isExpanded"
|
|
12
|
-
:is-leaf="!!node.isLeaf"
|
|
13
|
-
:level="nodeMetadataByKey[node.key].level"
|
|
14
|
-
@trigger-expand="onTriggerExpand"
|
|
15
|
-
>
|
|
16
|
-
<template
|
|
17
|
-
v-slot:default="props"
|
|
18
|
-
>
|
|
19
|
-
<slot v-bind="props" />
|
|
20
|
-
</template>
|
|
21
|
-
</tree-node>
|
|
22
|
-
</div>
|
|
23
|
-
</template>
|
|
24
|
-
|
|
25
|
-
<script lang="ts">
|
|
26
|
-
import { defineComponent, PropType } from 'vue-demi';
|
|
27
|
-
import { ITreeNode, ITreeNodeMetadata } from './types';
|
|
28
|
-
import { getFlatTree } from './utils';
|
|
29
|
-
import TreeNode from './TreeNode.vue';
|
|
30
|
-
|
|
31
|
-
export default defineComponent({
|
|
32
|
-
components: {
|
|
33
|
-
TreeNode,
|
|
34
|
-
},
|
|
35
|
-
props: {
|
|
36
|
-
initialData: {
|
|
37
|
-
type: Array as PropType<ITreeNode[]>,
|
|
38
|
-
default: () => ([]),
|
|
39
|
-
},
|
|
40
|
-
identifierKey: {
|
|
41
|
-
type: String,
|
|
42
|
-
default: 'key',
|
|
43
|
-
},
|
|
44
|
-
},
|
|
45
|
-
|
|
46
|
-
data() {
|
|
47
|
-
return {
|
|
48
|
-
flatTree: [] as ITreeNode[],
|
|
49
|
-
nodeMetadataByKey: {} as Record<string, ITreeNodeMetadata>,
|
|
50
|
-
};
|
|
51
|
-
},
|
|
52
|
-
|
|
53
|
-
computed: {
|
|
54
|
-
visibleItems() {
|
|
55
|
-
return this.flatTree.filter(treeNode => {
|
|
56
|
-
return this.isNodeExpanded(treeNode.key);
|
|
57
|
-
});
|
|
58
|
-
},
|
|
59
|
-
},
|
|
60
|
-
|
|
61
|
-
mounted() {
|
|
62
|
-
const {
|
|
63
|
-
nodeMetadataByKey, flatTree,
|
|
64
|
-
} = getFlatTree(this.initialData);
|
|
65
|
-
this.flatTree = flatTree;
|
|
66
|
-
this.nodeMetadataByKey = nodeMetadataByKey;
|
|
67
|
-
},
|
|
68
|
-
|
|
69
|
-
methods: {
|
|
70
|
-
onTriggerExpand(key: string) {
|
|
71
|
-
this.nodeMetadataByKey[key].isExpanded = !this.nodeMetadataByKey[key].isExpanded;
|
|
72
|
-
},
|
|
73
|
-
|
|
74
|
-
isNodeExpanded(key: string): boolean {
|
|
75
|
-
const { parentNodeKey, level } = this.nodeMetadataByKey[key];
|
|
76
|
-
const parentMetadata = this.nodeMetadataByKey[parentNodeKey];
|
|
77
|
-
|
|
78
|
-
if (level === 0) return true;
|
|
79
|
-
if (!parentMetadata.isExpanded) return false;
|
|
80
|
-
|
|
81
|
-
return this.isNodeExpanded(parentNodeKey);
|
|
82
|
-
},
|
|
83
|
-
},
|
|
84
|
-
});
|
|
85
|
-
</script>
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div
|
|
3
|
-
class="tree-node"
|
|
4
|
-
:class="rootClasses"
|
|
5
|
-
:style="styleCSS"
|
|
6
|
-
>
|
|
7
|
-
<or-icon-button
|
|
8
|
-
v-if="!isLeaf"
|
|
9
|
-
:icon="expandIcon"
|
|
10
|
-
@click="$emit('trigger-expand', nodeKey)"
|
|
11
|
-
/>
|
|
12
|
-
|
|
13
|
-
<slot v-bind="$props">
|
|
14
|
-
{{ nodeKey }}
|
|
15
|
-
</slot>
|
|
16
|
-
</div>
|
|
17
|
-
</template>
|
|
18
|
-
|
|
19
|
-
<script lang="ts">
|
|
20
|
-
import { defineComponent, PropType } from 'vue-demi';
|
|
21
|
-
import { OrIconButtonV3 as OrIconButton } from '../or-icon-button-v3';
|
|
22
|
-
import { TreeNodeRoot } from './styles';
|
|
23
|
-
import { ITreeNode } from './types';
|
|
24
|
-
|
|
25
|
-
export default defineComponent({
|
|
26
|
-
components: {
|
|
27
|
-
OrIconButton,
|
|
28
|
-
},
|
|
29
|
-
props: {
|
|
30
|
-
node: {
|
|
31
|
-
type: Object as PropType<ITreeNode>,
|
|
32
|
-
default: undefined,
|
|
33
|
-
},
|
|
34
|
-
nodeKey: {
|
|
35
|
-
type: String,
|
|
36
|
-
default: '',
|
|
37
|
-
},
|
|
38
|
-
isExpanded: {
|
|
39
|
-
type: Boolean,
|
|
40
|
-
default: false,
|
|
41
|
-
},
|
|
42
|
-
isLeaf: {
|
|
43
|
-
type: Boolean,
|
|
44
|
-
default: false,
|
|
45
|
-
},
|
|
46
|
-
level: {
|
|
47
|
-
type: Number,
|
|
48
|
-
default: 0,
|
|
49
|
-
},
|
|
50
|
-
},
|
|
51
|
-
emits: ['trigger-expand'],
|
|
52
|
-
|
|
53
|
-
setup() {
|
|
54
|
-
return {
|
|
55
|
-
rootClasses: TreeNodeRoot,
|
|
56
|
-
};
|
|
57
|
-
},
|
|
58
|
-
|
|
59
|
-
computed: {
|
|
60
|
-
expandIcon() {
|
|
61
|
-
return this.isExpanded ? 'keyboard_arrow_down' : 'arrow_right';
|
|
62
|
-
},
|
|
63
|
-
|
|
64
|
-
styleCSS() {
|
|
65
|
-
return {
|
|
66
|
-
// 24px -- gap-sm + tooltip width
|
|
67
|
-
'padding-left': (this.isLeaf && this.level === 0) ? '24px' : `${(this.isLeaf ? 24 : 0) + (this.level * 10)}px`,
|
|
68
|
-
};
|
|
69
|
-
},
|
|
70
|
-
},
|
|
71
|
-
});
|
|
72
|
-
</script>
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export const TreeNodeRoot: string[] = [
|
|
2
|
-
'flex',
|
|
3
|
-
'items-center',
|
|
4
|
-
'gap-sm',
|
|
5
|
-
'pt-6',
|
|
6
|
-
'my-sm',
|
|
7
|
-
|
|
8
|
-
// Theme
|
|
9
|
-
'text-on-background',
|
|
10
|
-
'dark:text-on-background-dark',
|
|
11
|
-
'hover:bg-primary-opacity-0-08',
|
|
12
|
-
'dark:hover:bg-primary-opacity-0-08-dark',
|
|
13
|
-
];
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { ITreeNode, ITreeNodeMetadata } from './types';
|
|
2
|
-
|
|
3
|
-
export const getFlatTree = (tree: ITreeNode[]) => {
|
|
4
|
-
const flatTree: ITreeNode[] = [];
|
|
5
|
-
const nodeMetadataByKey: Record<string, ITreeNodeMetadata> = {};
|
|
6
|
-
|
|
7
|
-
const goDeeper = (treeNode: ITreeNode, level: number, parentNodeKey: string) => {
|
|
8
|
-
flatTree.push(treeNode);
|
|
9
|
-
nodeMetadataByKey[treeNode.key] = {
|
|
10
|
-
level,
|
|
11
|
-
isExpanded: false,
|
|
12
|
-
parentNodeKey,
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
if (treeNode.children) {
|
|
16
|
-
for (const child of treeNode.children) {
|
|
17
|
-
goDeeper(child, level + 1, treeNode.key);
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
}
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
for (const node of tree) {
|
|
24
|
-
goDeeper(node, 0, '');
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
return {
|
|
28
|
-
flatTree,
|
|
29
|
-
nodeMetadataByKey,
|
|
30
|
-
};
|
|
31
|
-
};
|