@onereach/ui-components 4.10.2-beta.2936.0 → 4.10.2

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.
Files changed (79) hide show
  1. package/dist/bundled/v2/{OrDateTimePickerMonthSelect-2c1b5116.js → OrDateTimePickerMonthSelect-9ca79b52.js} +1 -1
  2. package/dist/bundled/v2/components/OrDatePickerV3/OrDatePicker.js +1 -1
  3. package/dist/bundled/v2/components/OrDatePickerV3/index.js +1 -1
  4. package/dist/bundled/v2/components/OrDateTimePickerV3/OrDateTimePicker.js +1 -1
  5. package/dist/bundled/v2/components/OrDateTimePickerV3/index.js +1 -1
  6. package/dist/bundled/v2/components/index.d.ts +0 -1
  7. package/dist/bundled/v2/components/index.js +1 -3
  8. package/dist/bundled/v2/hooks/useTheme.js +2 -2
  9. package/dist/bundled/v2/index.js +2 -4
  10. package/dist/bundled/v3/{OrDatePicker.vue_vue_type_script_lang-0e648149.js → OrDatePicker.vue_vue_type_script_lang-ffc163f4.js} +1 -1
  11. package/dist/bundled/v3/{OrDateTimePicker.vue_vue_type_script_lang-69d65518.js → OrDateTimePicker.vue_vue_type_script_lang-265a8788.js} +1 -1
  12. package/dist/bundled/v3/{OrDateTimePickerMonthSelect-8857f024.js → OrDateTimePickerMonthSelect-9a9e89c5.js} +1 -1
  13. package/dist/bundled/v3/components/OrDatePickerV3/OrDatePicker.js +3 -3
  14. package/dist/bundled/v3/components/OrDatePickerV3/index.js +2 -2
  15. package/dist/bundled/v3/components/OrDateTimePickerV3/OrDateTimePicker.js +3 -3
  16. package/dist/bundled/v3/components/OrDateTimePickerV3/index.js +2 -2
  17. package/dist/bundled/v3/components/index.d.ts +0 -1
  18. package/dist/bundled/v3/components/index.js +3 -5
  19. package/dist/bundled/v3/hooks/useTheme.js +2 -2
  20. package/dist/bundled/v3/index.js +4 -7
  21. package/dist/esm/v2/{OrDatePicker-328189a2.js → OrDatePicker-6646573e.js} +1 -1
  22. package/dist/esm/v2/{OrDateTimePicker-8bcc71c3.js → OrDateTimePicker-908fbd9a.js} +1 -1
  23. package/dist/esm/v2/{OrDateTimePicker.vue_rollup-plugin-vue_script-399a44b5.js → OrDateTimePicker.vue_rollup-plugin-vue_script-c4431300.js} +1 -1
  24. package/dist/esm/v2/{OrDateTimePickerPopoverHeader-fa88e970.js → OrDateTimePickerPopoverHeader-fa799185.js} +1 -1
  25. package/dist/esm/v2/{OrTimePicker-a9c5547b.js → OrTimePicker-80817ae1.js} +2 -2
  26. package/dist/esm/v2/components/index.d.ts +0 -1
  27. package/dist/esm/v2/components/index.js +5 -6
  28. package/dist/esm/v2/components/or-date-picker-v3/index.js +2 -2
  29. package/dist/esm/v2/components/or-date-time-picker-v3/index.js +3 -3
  30. package/dist/esm/v2/components/or-time-picker-v3/index.js +3 -3
  31. package/dist/esm/v2/index.js +5 -6
  32. package/dist/esm/v3/{OrDatePicker-4c4fd5dc.js → OrDatePicker-276545bb.js} +1 -1
  33. package/dist/esm/v3/{OrDateTimePicker-0a4d194e.js → OrDateTimePicker-85a01f0d.js} +1 -1
  34. package/dist/esm/v3/{OrDateTimePickerPopoverHeader-bc8e0bcf.js → OrDateTimePickerPopoverHeader-43785ea5.js} +1 -1
  35. package/dist/esm/v3/{OrTimePicker-67f75e85.js → OrTimePicker-0d308a6a.js} +2 -2
  36. package/dist/esm/v3/components/index.d.ts +0 -1
  37. package/dist/esm/v3/components/index.js +4 -5
  38. package/dist/esm/v3/components/or-date-picker-v3/index.js +2 -2
  39. package/dist/esm/v3/components/or-date-time-picker-v3/index.js +2 -2
  40. package/dist/esm/v3/components/or-time-picker-v3/index.js +3 -3
  41. package/dist/esm/v3/index.js +4 -5
  42. package/package.json +4 -3
  43. package/src/components/index.ts +0 -1
  44. package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-date-select/styles.ts +1 -1
  45. package/dist/bundled/v2/components/OrTreeV3/OrTree.js +0 -431
  46. package/dist/bundled/v2/components/OrTreeV3/OrTree.vue.d.ts +0 -41
  47. package/dist/bundled/v2/components/OrTreeV3/index.d.ts +0 -2
  48. package/dist/bundled/v2/components/OrTreeV3/index.js +0 -15
  49. package/dist/bundled/v2/components/OrTreeV3/types.d.ts +0 -15
  50. package/dist/bundled/v2/components/OrTreeV3/types.js +0 -8
  51. package/dist/bundled/v3/OrTree.vue_vue_type_script_lang-ad14cc9d.js +0 -310
  52. package/dist/bundled/v3/components/OrTreeV3/OrTree.js +0 -47
  53. package/dist/bundled/v3/components/OrTreeV3/OrTree.vue.d.ts +0 -35
  54. package/dist/bundled/v3/components/OrTreeV3/index.d.ts +0 -2
  55. package/dist/bundled/v3/components/OrTreeV3/index.js +0 -18
  56. package/dist/bundled/v3/components/OrTreeV3/types.d.ts +0 -15
  57. package/dist/bundled/v3/components/OrTreeV3/types.js +0 -8
  58. package/dist/esm/v2/OrTree-9e9e5025.js +0 -428
  59. package/dist/esm/v2/components/or-tree-v3/OrTree.vue.d.ts +0 -41
  60. package/dist/esm/v2/components/or-tree-v3/index.d.ts +0 -2
  61. package/dist/esm/v2/components/or-tree-v3/index.js +0 -7
  62. package/dist/esm/v2/components/or-tree-v3/partials/or-tree-node/OrTreeNode.vue.d.ts +0 -120
  63. package/dist/esm/v2/components/or-tree-v3/partials/or-tree-node/styles.d.ts +0 -6
  64. package/dist/esm/v2/components/or-tree-v3/partials/or-tree-node/utils.d.ts +0 -3
  65. package/dist/esm/v2/components/or-tree-v3/types.d.ts +0 -15
  66. package/dist/esm/v3/OrTree-07b5540c.js +0 -342
  67. package/dist/esm/v3/components/or-tree-v3/OrTree.vue.d.ts +0 -35
  68. package/dist/esm/v3/components/or-tree-v3/index.d.ts +0 -2
  69. package/dist/esm/v3/components/or-tree-v3/index.js +0 -7
  70. package/dist/esm/v3/components/or-tree-v3/partials/or-tree-node/OrTreeNode.vue.d.ts +0 -88
  71. package/dist/esm/v3/components/or-tree-v3/partials/or-tree-node/styles.d.ts +0 -6
  72. package/dist/esm/v3/components/or-tree-v3/partials/or-tree-node/utils.d.ts +0 -3
  73. package/dist/esm/v3/components/or-tree-v3/types.d.ts +0 -15
  74. package/src/components/or-tree-v3/OrTree.vue +0 -65
  75. package/src/components/or-tree-v3/index.ts +0 -2
  76. package/src/components/or-tree-v3/partials/or-tree-node/OrTreeNode.vue +0 -235
  77. package/src/components/or-tree-v3/partials/or-tree-node/styles.ts +0 -60
  78. package/src/components/or-tree-v3/partials/or-tree-node/utils.ts +0 -26
  79. package/src/components/or-tree-v3/types.ts +0 -16
@@ -1,235 +0,0 @@
1
- <template>
2
- <div
3
- ref="root"
4
- :class="rootStyles"
5
- >
6
- <div
7
- ref="nodeRoot"
8
- :class="nodeStyles"
9
- :draggable="canDrag ? true : undefined"
10
- :selected="selected ? true : undefined"
11
- @dragend="isDrag = false"
12
- @dragstart.stop="handleDragStart"
13
- @dragover.prevent="handleDragOver"
14
- @dragenter.prevent="handleDragOver"
15
- @dragleave="handleDragLeave"
16
- @drop="handleDrop"
17
- @click="handleClick"
18
- @contextmenu="handleContextMenu"
19
- >
20
- <template
21
- v-if="hasCollapseTrigger"
22
- >
23
- <OrButton
24
- variant="link"
25
- @click.stop="handleCollapse"
26
- >
27
- <OrIcon
28
- :class="[isOpen ? 'rotate-90': 'rotate-0']"
29
- icon="arrow_right"
30
- size="l"
31
- />
32
- </OrButton>
33
- </template>
34
- <slot
35
- name="node"
36
- v-bind="{node, isOpen, isLeaf, isDrag, isDragOver, depth}"
37
- >
38
- {{ node.key }}
39
- </slot>
40
- <div
41
- v-if="isDragOver && !isDrag"
42
- :class="dragIndicatorStyles"
43
- />
44
- </div>
45
- <template
46
- v-if="!isLeaf && isOpen"
47
- >
48
- <OrTreeNode
49
- v-for="child in node.children"
50
- :key="child.key"
51
- :parent-selected="selected || undefined"
52
- :node="child"
53
- :depth="depth + 1"
54
- :selected="child.selected"
55
- :draggable="draggable"
56
- @drop="$emit('drop', $event)"
57
- @dragstart="$emit('dragstart', $event)"
58
- @click="$emit('click', $event)"
59
- @expand="$emit('expand', $event)"
60
- @collapse="$emit('collapse', $event)"
61
- @contextmenu="(e, key) => $emit('contextmenu', e, key)"
62
- >
63
- <template v-slot:node="props">
64
- <slot
65
- name="node"
66
- v-bind="props"
67
- />
68
- </template>
69
- </OrTreeNode>
70
- </template>
71
- </div>
72
- </template>
73
- <script lang="ts">
74
- import { defineComponent, PropType, ref, computed, watch, unref, onMounted } from 'vue-demi';
75
- import { useToggle } from '@vueuse/core';
76
- import { OrButtonV3 as OrButton } from '../../../or-button-v3';
77
- import { OrIconV3 as OrIcon } from '../../../or-icon-v3';
78
- import { getDropOffset, applyPadding } from './utils';
79
- import { TreeNode, TreeNodeDropPosition } from '../../types';
80
- import { TreeNodeRoot, TreeNodeItemRoot, TreeNodeDragIndicator, TreeNodeDragIndicatorPosition, TreeNodeItemRootParentSelected } from './styles';
81
-
82
- export default defineComponent({
83
- name: 'OrTreeNode',
84
- components: {
85
- OrButton,
86
- OrIcon,
87
- },
88
- props: {
89
- node: {
90
- type: Object as PropType<TreeNode>,
91
- required: true,
92
- },
93
- selected: {
94
- type: Boolean,
95
- default: undefined,
96
- },
97
- parentSelected: {
98
- type: Boolean,
99
- default: undefined,
100
- },
101
- expanded: {
102
- type: Boolean,
103
- default: true,
104
- },
105
- depth: {
106
- type: Number,
107
- default: 1,
108
- },
109
- draggable: {
110
- type: Boolean,
111
- default: false,
112
- },
113
- },
114
- emits: ['drop', 'dragstart', 'click', 'expand', 'collapse', 'contextmenu'],
115
- setup(props, { emit }) {
116
- // Refs
117
- const root = ref<HTMLElement>();
118
- const nodeRoot = ref<HTMLElement>();
119
-
120
- // State
121
- const isDragOver = ref(false);
122
- const isDrag = ref(false);
123
- const dragPosition = ref<`${TreeNodeDropPosition}`>('top');
124
- const hasChildren = computed(() => !!props.node.children && props.node.children.length > 0);
125
- const [isOpen, setIsOpen] = useToggle(props.expanded);
126
- const hasCollapseTrigger = computed(() => props.node.collapsible || hasChildren.value);
127
- const isLeaf = computed(() => !hasChildren.value);
128
- const canDrag = computed(() => props.draggable !== false && props.node.draggable !== false);
129
- // Effects
130
- watch(() => props.depth, (value) => {
131
- applyPadding(unref(nodeRoot)!, value, hasCollapseTrigger.value);
132
- });
133
-
134
- watch(() => props.expanded, (value) => {
135
- if (value !== undefined) {
136
- setIsOpen(value);
137
- }
138
- }, {
139
- immediate: true,
140
- });
141
-
142
- onMounted(() => {
143
- applyPadding(unref(nodeRoot)!, props.depth, hasCollapseTrigger.value);
144
- });
145
-
146
- // Methods
147
- const handleDrop = (e: DragEvent) => {
148
- const nodeKey = e?.dataTransfer?.getData('node-key');
149
- isDragOver.value = false;
150
- emit('drop', {
151
- dropKey: props.node.key,
152
- dragKey: nodeKey,
153
- dropPosition: dragPosition.value,
154
- });
155
- };
156
-
157
- const handleDragStart = (e: DragEvent) => {
158
- isDrag.value = true;
159
- setIsOpen(false);
160
- e?.dataTransfer?.setData('node-key', props.node.key);
161
- emit('dragstart', props.node.key);
162
- };
163
-
164
- const handleDragOver = (e: DragEvent) => {
165
- e.preventDefault();
166
- e.stopPropagation();
167
- dragPosition.value = getDropOffset(e, props.node.collapsible && props.node.canMiddleDrop !== false);
168
- isDragOver.value = true;
169
- };
170
-
171
- const handleDragLeave = (e: DragEvent) => {
172
- e.preventDefault();
173
- e.stopPropagation();
174
- isDragOver.value = false;
175
- };
176
-
177
- const handleContextMenu = (e: MouseEvent) => {
178
- emit('contextmenu', Object.assign(e, { nodeKey: props.node.key }));
179
- };
180
-
181
- const handleClick = (e: MouseEvent) => {
182
- e.preventDefault();
183
- emit('click', props.node.key);
184
- };
185
-
186
- const handleCollapse = () => {
187
- if (isOpen.value) {
188
- setIsOpen(false);
189
- emit('collapse', props.node.key);
190
- } else {
191
- setIsOpen(true);
192
- emit('expand', props.node.key);
193
- }
194
- };
195
- // Styles
196
- const rootStyles = computed(() => [
197
- 'or-tree-node-v3',
198
- ...TreeNodeRoot,
199
- ]);
200
-
201
- const nodeStyles = computed(() => [
202
- ...TreeNodeItemRoot,
203
- ...(props.parentSelected ? TreeNodeItemRootParentSelected : []),
204
- ]);
205
-
206
- const dragIndicatorStyles = computed(() => [
207
- ...TreeNodeDragIndicator,
208
- ...TreeNodeDragIndicatorPosition[dragPosition.value],
209
- ]);
210
-
211
- return {
212
- root,
213
- isOpen,
214
- isLeaf,
215
- rootStyles,
216
- nodeStyles,
217
- dragIndicatorStyles,
218
- setIsOpen,
219
- nodeRoot,
220
- isDrag,
221
- canDrag,
222
- dragPosition,
223
- handleDragStart,
224
- handleDrop,
225
- handleCollapse,
226
- handleContextMenu,
227
- handleClick,
228
- handleDragOver,
229
- handleDragLeave,
230
- hasCollapseTrigger,
231
- isDragOver,
232
- };
233
- },
234
- });
235
- </script>
@@ -1,60 +0,0 @@
1
- import { TreeNodeDropPosition } from '../../types';
2
- export const TreeNodeRoot = [];
3
- export const TreeNodeItemRoot = [
4
- // Layout
5
- 'layout-row',
6
- 'py-xs',
7
- '!items-start',
8
- 'relative',
9
-
10
- // Theme
11
- 'hover:bg-primary-opacity-0-08',
12
- 'dark:hover:bg-primary-opacity-0-08-dark',
13
-
14
- 'selected:bg-primary-opacity-0-16',
15
- 'dark:selected:bg-primary-opacity-0-16-dark',
16
-
17
- 'selected:hover:bg-primary-opacity-0-16',
18
- 'dark:selected:hover:bg-primary-opacity-0-16-dark',
19
- ];
20
-
21
- export const TreeNodeItemRootParentSelected = [
22
- // Theme
23
- 'bg-primary-opacity-0-08',
24
- 'bg-primary-opacity-0-08-dark',
25
-
26
- 'hover:bg-primary-opacity-0-16',
27
- 'dark:hover:bg-primary-opacity-0-16-dark',
28
- ];
29
- export const TreeNodeDragIndicator = [
30
- // Layout
31
- 'absolute h-[2px] w-full left-[0px]',
32
-
33
- // Theme
34
- 'bg-primary',
35
-
36
- // Interaction
37
- 'pointer-events-none',
38
- ];
39
-
40
- export const TreeNodeDragIndicatorPosition: Record<TreeNodeDropPosition, string[]> = {
41
- top: [
42
- 'top-[-1px]',
43
- ],
44
- middle: [
45
- 'top-[-1px]',
46
- 'left-[0px]',
47
- 'w-full',
48
- '!h-[calc(100%+2px)]',
49
-
50
- // Theme
51
- 'bg-transparent',
52
- 'border-x-0',
53
- 'border-y-2',
54
- 'border-primary',
55
- 'dark:border-primary-dark',
56
- ],
57
- bottom: [
58
- 'bottom-[-1px]',
59
- ],
60
- };
@@ -1,26 +0,0 @@
1
- import { TreeNodeDropPosition } from '../../types';
2
-
3
- function inRange(num: number, min: number, max: number): boolean {
4
- return num >= min && num <= max;
5
- }
6
-
7
- export function getDropOffset(e: DragEvent, canMiddleDrop = false): TreeNodeDropPosition {
8
- const { clientY } = e;
9
- const { top, height } = (e.target as HTMLElement).getBoundingClientRect();
10
- const offset = Math.max(((clientY - top) / height), 0); // sometimes offset is negative
11
-
12
- if (canMiddleDrop && inRange(offset, 0.4, 0.7)) {
13
- return TreeNodeDropPosition.Middle;
14
- } else if (inRange(offset, 0, 0.5)) {
15
- return TreeNodeDropPosition.Top;
16
- }
17
-
18
- return TreeNodeDropPosition.Bottom;
19
- }
20
-
21
- export function applyPadding(element: HTMLElement, level: number, hasCollapseTrigger: boolean): void {
22
- const padding = level * 20 - (hasCollapseTrigger ? 20 : 0);
23
- Object.assign(element.style, {
24
- paddingLeft: `${padding}px`,
25
- });
26
- }
@@ -1,16 +0,0 @@
1
- export type TreeNode = {
2
- key: string;
3
- children?: TreeNode[];
4
- collapsible?: boolean;
5
- expanded?: boolean;
6
- selected?: boolean;
7
- draggable?: boolean;
8
- [key: string]: any;
9
- canMiddleDrop?: boolean;
10
- };
11
-
12
- export enum TreeNodeDropPosition {
13
- Top = 'top',
14
- Bottom = 'bottom',
15
- Middle = 'middle',
16
- }