yuyeon 0.3.6-beta.2 → 0.3.6-beta.3

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.
@@ -44,6 +44,7 @@ export const pressYTreeViewNodeProps = propsFactory({
44
44
  onMouseenterContainer: Function,
45
45
  onMouseleaveContainer: Function,
46
46
  onMousemoveContainer: Function,
47
+ onDblclickContainer: Function,
47
48
  itemSelectable: {
48
49
  type: [String, Array, Function]
49
50
  },
@@ -191,6 +192,13 @@ export const YTreeViewNode = defineComponent({
191
192
  item: props.item
192
193
  });
193
194
  }
195
+ function onDblclickContainer(e) {
196
+ props.onDblclickContainer?.(e, {
197
+ ...slotProps.value,
198
+ item: props.item,
199
+ toggleExpand: () => onClickExpand(e)
200
+ });
201
+ }
194
202
  useRender(() => {
195
203
  const indentSpacer = [];
196
204
  for (let i = 0; i < props.level; i += 1) {
@@ -209,7 +217,8 @@ export const YTreeViewNode = defineComponent({
209
217
  "onClick": e => props.enableActive ? onClick(e) : void 0,
210
218
  "onMouseenter": props.onMouseenterContainer && onMouseenterContainer,
211
219
  "onMouseleave": props.onMouseleaveContainer && onMouseleaveContainer,
212
- "onMousemove": props.onMousemoveContainer && onMousemoveContainer
220
+ "onMousemove": props.onMousemoveContainer && onMousemoveContainer,
221
+ "onDblclick": onDblclickContainer
213
222
  }, [_createVNode(YPlate, null, null), _createVNode("div", {
214
223
  "class": 'y-tree-view-node__indents'
215
224
  }, [indentSpacer]), !imLeaf.value && leaves.value.length > 0 ? _createVNode(YButton, {
@@ -1 +1 @@
1
- {"version":3,"file":"YTreeViewNode.js","names":["computed","mergeProps","onBeforeMount","ref","resolveComponent","watch","createVNode","_createVNode","_mergeProps","pressItemsPropsOptions","useTreeView","useRender","getObjectValueByPath","getPropertyFromItem","defineComponent","propsFactory","YButton","YIconCheckbox","YIconExpand","YPlate","YTextHighlighter","YExpandVTransition","pressYTreeViewNodeProps","search","String","disableTransition","Boolean","enableActive","activeStrategy","type","default","activeClass","Array","activeSingleModifier","requiredActive","activeColor","enableSelect","selectStrategy","onMouseenterContainer","Function","onMouseleaveContainer","onMousemoveContainer","itemSelectable","itemKey","YTreeViewNode","name","components","props","item","Object","level","Number","slots","setup","_ref","expose","YTreeNode","treeView","container$","expanded","active","selected","indeterminate","myKey","children","itemChildren","slice","imLeaf","value","length","searchLoading","leaves","filter","leaf","isExcluded","childrenSelection","selectedState","map","child","childrenAllChecked","all","childrenSomeChecked","some","isChecked","classes","styles","contentText","itemText","disabledSelect","selectable","isArray","includes","slotProps","toggleActive","e","to","updateActive","emitActive","onClick","onClickExpand","stopPropagation","updateExpanded","emitExpanded","onClickSelect","updateSelected","emitSelected","indentSpacer","i","push","leading","text","trailing","_len","arguments","args","_key","_len2","_key2","_len3","_key3","_len4","_key4","nodeState","register"],"sources":["../../../src/components/tree-view/YTreeViewNode.tsx"],"sourcesContent":["/** biome-ignore-all lint/a11y/noStaticElementInteractions: <explanation> */\r\n/** biome-ignore-all lint/a11y/useFocusableInteractive: <explanation> */\r\n/** biome-ignore-all lint/a11y/useKeyWithClickEvents: <explanation> */\r\nimport {\r\n computed,\r\n mergeProps,\r\n onBeforeMount,\r\n type PropType,\r\n ref,\r\n resolveComponent,\r\n type SlotsType,\r\n type VNodeArrayChildren,\r\n watch,\r\n} from 'vue';\r\n\r\nimport { pressItemsPropsOptions } from '@/abstract/items';\r\nimport { useTreeView } from '@/components/tree-view/tree-view';\r\nimport { useRender } from '@/composables/component';\r\nimport { getObjectValueByPath, getPropertyFromItem } from '@/util/common';\r\nimport { defineComponent, propsFactory } from '@/util/component';\r\n\r\nimport { YButton } from '../button';\r\nimport { YIconCheckbox, YIconExpand } from '../icons';\r\nimport { YPlate } from '../plate';\r\nimport { YTextHighlighter } from '../text-highlighter/YTextHighlighter';\r\nimport { YExpandVTransition } from '../transitions';\r\n\r\nexport const pressYTreeViewNodeProps = propsFactory(\r\n {\r\n search: String,\r\n disableTransition: Boolean,\r\n enableActive: Boolean,\r\n activeStrategy: {\r\n /**\r\n * cascade: only action descendent leaves\r\n * relative: cascade after check parent (ancestor)\r\n */\r\n type: String as PropType<'independent' | 'cascade' | 'relative'>,\r\n default: 'independent',\r\n },\r\n activeClass: [String, Array],\r\n activeSingleModifier: String,\r\n requiredActive: Boolean,\r\n activeColor: {\r\n type: String,\r\n default: 'primary',\r\n },\r\n enableSelect: Boolean,\r\n selectStrategy: {\r\n /**\r\n * cascade: only action descendent leaves\r\n * relative: cascade after check parent (ancestor)\r\n * leaves: relative after return values only leaf\r\n */\r\n type: String as PropType<'independent' | 'cascade' | 'relative' | 'leaf'>,\r\n default: 'relative',\r\n },\r\n onMouseenterContainer: Function,\r\n onMouseleaveContainer: Function,\r\n onMousemoveContainer: Function,\r\n itemSelectable: {\r\n type: [String, Array, Function] as PropType<any>,\r\n },\r\n ...pressItemsPropsOptions({\r\n itemKey: 'id',\r\n }),\r\n },\r\n 'YTreeViewNode',\r\n);\r\n\r\n/**\r\n * TODO: correct selected values what selectStrategy leaf or others\r\n */\r\nexport const YTreeViewNode = defineComponent({\r\n name: 'YTreeNode',\r\n components: {\r\n YButton,\r\n YIconExpand,\r\n YPlate,\r\n YIconCheckbox,\r\n },\r\n props: {\r\n item: {\r\n type: Object as PropType<any>,\r\n },\r\n level: {\r\n type: Number as PropType<number>,\r\n default: 0,\r\n },\r\n ...pressYTreeViewNodeProps(),\r\n },\r\n slots: Object as SlotsType<{\r\n default: any;\r\n 'expand-icon': any;\r\n leading: any;\r\n trailing: any;\r\n }>,\r\n setup(props, { slots, expose }) {\r\n const YTreeNode = resolveComponent('YTreeViewNode', true) as any;\r\n const treeView = useTreeView();\r\n const container$ = ref<HTMLElement>();\r\n\r\n const expanded = ref(false);\r\n const active = ref(false);\r\n const selected = ref(false);\r\n const indeterminate = ref(false);\r\n\r\n const myKey = computed(() =>\r\n getObjectValueByPath(props.item, props.itemKey),\r\n );\r\n\r\n const children = computed(() => {\r\n return (\r\n getObjectValueByPath(props.item, props.itemChildren as string) ?? []\r\n ).slice();\r\n });\r\n\r\n const imLeaf = computed(() => children.value.length < 1);\r\n\r\n const searchLoading = computed(() => {\r\n return treeView.searchLoading.value;\r\n });\r\n\r\n const leaves = computed(() => {\r\n return children.value.filter((leaf: any) => {\r\n return !treeView.isExcluded(getObjectValueByPath(leaf, props.itemKey));\r\n });\r\n });\r\n\r\n const childrenSelection = computed(() =>\r\n treeView.selectedState.value(\r\n myKey.value,\r\n children.value.map((child: any) =>\r\n getObjectValueByPath(child, props.itemKey),\r\n ),\r\n ),\r\n );\r\n\r\n const childrenAllChecked = computed(() => {\r\n return !!children.value?.length && childrenSelection.value.all;\r\n });\r\n\r\n const childrenSomeChecked = computed(() => {\r\n return (\r\n (props.selectStrategy === 'relative' ||\r\n props.selectStrategy === 'leaf') &&\r\n (children.value?.length ?? 0) > 0 &&\r\n !childrenAllChecked.value &&\r\n childrenSelection.value.some\r\n );\r\n });\r\n\r\n const isChecked = computed(() => {\r\n return (\r\n selected.value ||\r\n (props.selectStrategy === 'leaf' && childrenAllChecked.value)\r\n );\r\n });\r\n\r\n const classes = computed(() => {\r\n return {\r\n 'y-tree-view-node': true,\r\n 'y-tree-view-node--leaf': imLeaf.value,\r\n 'y-tree-view-node--expanded': expanded.value,\r\n 'y-tree-view-node--active': active.value,\r\n };\r\n });\r\n\r\n const styles = computed(() => {\r\n return {\r\n '--tree-view-node--level': props.level,\r\n };\r\n });\r\n\r\n const contentText = computed(() => {\r\n return getObjectValueByPath(props.item, props.itemText) ?? '';\r\n });\r\n\r\n const disabledSelect = computed(() => {\r\n if (props.itemSelectable != null) {\r\n let selectable = true;\r\n if (typeof props.itemSelectable === 'function') {\r\n selectable = !!props.itemSelectable(props.item);\r\n } else if (Array.isArray(props.itemSelectable)) {\r\n selectable = props.itemSelectable.includes(myKey.value);\r\n } else {\r\n selectable = getPropertyFromItem(\r\n props.item,\r\n props.itemSelectable,\r\n true,\r\n );\r\n }\r\n\r\n return !selectable;\r\n }\r\n return false;\r\n });\r\n\r\n const slotProps = computed(() => {\r\n return {\r\n level: props.level,\r\n imLeaf: imLeaf.value,\r\n toggleActive,\r\n };\r\n });\r\n\r\n watch(childrenSomeChecked, (value) => {\r\n indeterminate.value = value;\r\n });\r\n\r\n function toggleActive(e?: MouseEvent) {\r\n const to = !active.value;\r\n active.value = to;\r\n treeView.updateActive(myKey.value, to, e);\r\n treeView.emitActive();\r\n }\r\n\r\n function onClick(e: MouseEvent) {\r\n toggleActive(e);\r\n }\r\n\r\n function onClickExpand(e: MouseEvent) {\r\n e.stopPropagation();\r\n const to = !expanded.value;\r\n expanded.value = to;\r\n treeView.updateExpanded(myKey.value, to);\r\n treeView.emitExpanded();\r\n }\r\n\r\n function onClickSelect(e: MouseEvent) {\r\n e.stopPropagation();\r\n if (disabledSelect.value) return;\r\n const to = !isChecked.value;\r\n selected.value = to;\r\n treeView.updateSelected(myKey.value, to);\r\n treeView.emitSelected();\r\n }\r\n\r\n function onMouseenterContainer(e: MouseEvent) {\r\n props.onMouseenterContainer?.(e, {\r\n ...slotProps.value,\r\n item: props.item,\r\n });\r\n }\r\n\r\n function onMouseleaveContainer(e: MouseEvent) {\r\n props.onMouseleaveContainer?.(e, {\r\n ...slotProps.value,\r\n item: props.item,\r\n });\r\n }\r\n\r\n function onMousemoveContainer(e: MouseEvent) {\r\n props.onMousemoveContainer?.(e, { ...slotProps.value, item: props.item });\r\n }\r\n\r\n useRender(() => {\r\n const indentSpacer: VNodeArrayChildren = [];\r\n for (let i = 0; i < props.level; i += 1) {\r\n indentSpacer.push(\r\n <div class={'y-tree-view-node__indent-spacer'}></div>,\r\n );\r\n }\r\n\r\n return (\r\n <div\r\n class={classes.value}\r\n style={styles.value}\r\n role=\"treeitem\"\r\n data-level={props.level}\r\n >\r\n <div\r\n ref={container$}\r\n class={'y-tree-view-node__container'}\r\n onClick={(e: MouseEvent) =>\r\n props.enableActive ? onClick(e) : void 0\r\n }\r\n onMouseenter={props.onMouseenterContainer && onMouseenterContainer}\r\n onMouseleave={props.onMouseleaveContainer && onMouseleaveContainer}\r\n onMousemove={props.onMousemoveContainer && onMousemoveContainer}\r\n >\r\n <YPlate />\r\n <div class={'y-tree-view-node__indents'}>{indentSpacer}</div>\r\n {/* EXPAND */}\r\n {!imLeaf.value && leaves.value.length > 0 ? (\r\n <YButton\r\n class={'y-tree-view-node__expand-icon'}\r\n variation={'icon'}\r\n onClick={onClickExpand}\r\n >\r\n {slots['expand-icon'] ? (\r\n slots['expand-icon']()\r\n ) : (\r\n <YIconExpand></YIconExpand>\r\n )}\r\n </YButton>\r\n ) : (\r\n <i class={'y-tree-view-node__no-expand-icon'}></i>\r\n )}\r\n {/* SELECT */}\r\n {props.enableSelect && (\r\n // biome-ignore lint/a11y/useSemanticElements: passive\r\n <div\r\n class={[\r\n 'y-tree-view-node__select',\r\n {\r\n 'y-tree-view-node__select--disabled': disabledSelect.value,\r\n },\r\n ]}\r\n role=\"checkbox\"\r\n aria-checked={isChecked.value}\r\n onClick={onClickSelect}\r\n >\r\n <YIconCheckbox\r\n checked={isChecked.value}\r\n indeterminate={!selected.value && childrenSomeChecked.value}\r\n disabled={disabledSelect.value}\r\n ></YIconCheckbox>\r\n </div>\r\n )}\r\n {/* CONTENT */}\r\n <div class={'y-tree-view-node__content'}>\r\n {slots.leading && (\r\n <div class={'y-tree-view-node__leading'}>\r\n {slots.leading(slotProps.value)}\r\n </div>\r\n )}\r\n <div class={'y-tree-view-node__text'}>\r\n {slots.default ? (\r\n slots.default?.({\r\n text: contentText.value,\r\n item: props.item,\r\n ...slotProps.value,\r\n })\r\n ) : props.search && !searchLoading.value ? (\r\n <YTextHighlighter\r\n text={contentText.value}\r\n keyword={props.search}\r\n ></YTextHighlighter>\r\n ) : (\r\n contentText.value\r\n )}\r\n </div>\r\n {slots.trailing && (\r\n <div class={'y-tree-view-node__trailing'}>\r\n {slots.trailing(slotProps.value)}\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n {/* CHILDREN */}\r\n {children.value.length > 0 && (\r\n <YExpandVTransition disabled={props.disableTransition}>\r\n {expanded.value && (\r\n <div class={['y-tree-view-node__leaves']} role=\"tree\">\r\n {leaves.value.map((item: any) => {\r\n return (\r\n <YTreeNode\r\n {...mergeProps(props)}\r\n key={getObjectValueByPath(item, props.itemKey)}\r\n level={(props.level ?? 0) + 1}\r\n item={item}\r\n >\r\n {{\r\n default:\r\n slots.default &&\r\n ((...args: any[]) => slots.default?.(...args)),\r\n 'expand-icon':\r\n slots['expand-icon'] &&\r\n ((...args: any[]) =>\r\n slots['expand-icon']?.(...args)),\r\n leading:\r\n slots.leading &&\r\n ((...args: any[]) => slots.leading?.(...args)),\r\n trailing:\r\n slots.trailing &&\r\n ((...args: any[]) => slots.trailing?.(...args)),\r\n }}\r\n </YTreeNode>\r\n );\r\n })}\r\n </div>\r\n )}\r\n </YExpandVTransition>\r\n )}\r\n </div>\r\n );\r\n });\r\n\r\n const nodeState = {\r\n myKey,\r\n expanded,\r\n active,\r\n selected,\r\n indeterminate,\r\n };\r\n\r\n expose(nodeState);\r\n\r\n onBeforeMount(() => {\r\n treeView?.register?.(myKey.value, nodeState);\r\n });\r\n\r\n return {\r\n treeView,\r\n myKey,\r\n expanded,\r\n active,\r\n selected,\r\n indeterminate,\r\n childrenSelection,\r\n };\r\n },\r\n});\r\n\r\nexport type YTreeNode = InstanceType<typeof YTreeViewNode>;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"YTreeViewNode.js","names":["computed","mergeProps","onBeforeMount","ref","resolveComponent","watch","createVNode","_createVNode","_mergeProps","pressItemsPropsOptions","useTreeView","useRender","getObjectValueByPath","getPropertyFromItem","defineComponent","propsFactory","YButton","YIconCheckbox","YIconExpand","YPlate","YTextHighlighter","YExpandVTransition","pressYTreeViewNodeProps","search","String","disableTransition","Boolean","enableActive","activeStrategy","type","default","activeClass","Array","activeSingleModifier","requiredActive","activeColor","enableSelect","selectStrategy","onMouseenterContainer","Function","onMouseleaveContainer","onMousemoveContainer","onDblclickContainer","itemSelectable","itemKey","YTreeViewNode","name","components","props","item","Object","level","Number","slots","setup","_ref","expose","YTreeNode","treeView","container$","expanded","active","selected","indeterminate","myKey","children","itemChildren","slice","imLeaf","value","length","searchLoading","leaves","filter","leaf","isExcluded","childrenSelection","selectedState","map","child","childrenAllChecked","all","childrenSomeChecked","some","isChecked","classes","styles","contentText","itemText","disabledSelect","selectable","isArray","includes","slotProps","toggleActive","e","to","updateActive","emitActive","onClick","onClickExpand","stopPropagation","updateExpanded","emitExpanded","onClickSelect","updateSelected","emitSelected","toggleExpand","indentSpacer","i","push","leading","text","trailing","_len","arguments","args","_key","_len2","_key2","_len3","_key3","_len4","_key4","nodeState","register"],"sources":["../../../src/components/tree-view/YTreeViewNode.tsx"],"sourcesContent":["/** biome-ignore-all lint/a11y/noStaticElementInteractions: <explanation> */\r\n/** biome-ignore-all lint/a11y/useFocusableInteractive: <explanation> */\r\n/** biome-ignore-all lint/a11y/useKeyWithClickEvents: <explanation> */\r\nimport {\r\n computed,\r\n mergeProps,\r\n onBeforeMount,\r\n type PropType,\r\n ref,\r\n resolveComponent,\r\n type SlotsType,\r\n type VNodeArrayChildren,\r\n watch,\r\n} from 'vue';\r\n\r\nimport { pressItemsPropsOptions } from '@/abstract/items';\r\nimport { useTreeView } from '@/components/tree-view/tree-view';\r\nimport { useRender } from '@/composables/component';\r\nimport { getObjectValueByPath, getPropertyFromItem } from '@/util/common';\r\nimport { defineComponent, propsFactory } from '@/util/component';\r\n\r\nimport { YButton } from '../button';\r\nimport { YIconCheckbox, YIconExpand } from '../icons';\r\nimport { YPlate } from '../plate';\r\nimport { YTextHighlighter } from '../text-highlighter/YTextHighlighter';\r\nimport { YExpandVTransition } from '../transitions';\r\n\r\nexport const pressYTreeViewNodeProps = propsFactory(\r\n {\r\n search: String,\r\n disableTransition: Boolean,\r\n enableActive: Boolean,\r\n activeStrategy: {\r\n /**\r\n * cascade: only action descendent leaves\r\n * relative: cascade after check parent (ancestor)\r\n */\r\n type: String as PropType<'independent' | 'cascade' | 'relative'>,\r\n default: 'independent',\r\n },\r\n activeClass: [String, Array],\r\n activeSingleModifier: String,\r\n requiredActive: Boolean,\r\n activeColor: {\r\n type: String,\r\n default: 'primary',\r\n },\r\n enableSelect: Boolean,\r\n selectStrategy: {\r\n /**\r\n * cascade: only action descendent leaves\r\n * relative: cascade after check parent (ancestor)\r\n * leaves: relative after return values only leaf\r\n */\r\n type: String as PropType<'independent' | 'cascade' | 'relative' | 'leaf'>,\r\n default: 'relative',\r\n },\r\n onMouseenterContainer: Function,\r\n onMouseleaveContainer: Function,\r\n onMousemoveContainer: Function,\r\n onDblclickContainer: Function,\r\n itemSelectable: {\r\n type: [String, Array, Function] as PropType<any>,\r\n },\r\n ...pressItemsPropsOptions({\r\n itemKey: 'id',\r\n }),\r\n },\r\n 'YTreeViewNode',\r\n);\r\n\r\n/**\r\n * TODO: correct selected values what selectStrategy leaf or others\r\n */\r\nexport const YTreeViewNode = defineComponent({\r\n name: 'YTreeNode',\r\n components: {\r\n YButton,\r\n YIconExpand,\r\n YPlate,\r\n YIconCheckbox,\r\n },\r\n props: {\r\n item: {\r\n type: Object as PropType<any>,\r\n },\r\n level: {\r\n type: Number as PropType<number>,\r\n default: 0,\r\n },\r\n ...pressYTreeViewNodeProps(),\r\n },\r\n slots: Object as SlotsType<{\r\n default: any;\r\n 'expand-icon': any;\r\n leading: any;\r\n trailing: any;\r\n }>,\r\n setup(props, { slots, expose }) {\r\n const YTreeNode = resolveComponent('YTreeViewNode', true) as any;\r\n const treeView = useTreeView();\r\n const container$ = ref<HTMLElement>();\r\n\r\n const expanded = ref(false);\r\n const active = ref(false);\r\n const selected = ref(false);\r\n const indeterminate = ref(false);\r\n\r\n const myKey = computed(() =>\r\n getObjectValueByPath(props.item, props.itemKey),\r\n );\r\n\r\n const children = computed(() => {\r\n return (\r\n getObjectValueByPath(props.item, props.itemChildren as string) ?? []\r\n ).slice();\r\n });\r\n\r\n const imLeaf = computed(() => children.value.length < 1);\r\n\r\n const searchLoading = computed(() => {\r\n return treeView.searchLoading.value;\r\n });\r\n\r\n const leaves = computed(() => {\r\n return children.value.filter((leaf: any) => {\r\n return !treeView.isExcluded(getObjectValueByPath(leaf, props.itemKey));\r\n });\r\n });\r\n\r\n const childrenSelection = computed(() =>\r\n treeView.selectedState.value(\r\n myKey.value,\r\n children.value.map((child: any) =>\r\n getObjectValueByPath(child, props.itemKey),\r\n ),\r\n ),\r\n );\r\n\r\n const childrenAllChecked = computed(() => {\r\n return !!children.value?.length && childrenSelection.value.all;\r\n });\r\n\r\n const childrenSomeChecked = computed(() => {\r\n return (\r\n (props.selectStrategy === 'relative' ||\r\n props.selectStrategy === 'leaf') &&\r\n (children.value?.length ?? 0) > 0 &&\r\n !childrenAllChecked.value &&\r\n childrenSelection.value.some\r\n );\r\n });\r\n\r\n const isChecked = computed(() => {\r\n return (\r\n selected.value ||\r\n (props.selectStrategy === 'leaf' && childrenAllChecked.value)\r\n );\r\n });\r\n\r\n const classes = computed(() => {\r\n return {\r\n 'y-tree-view-node': true,\r\n 'y-tree-view-node--leaf': imLeaf.value,\r\n 'y-tree-view-node--expanded': expanded.value,\r\n 'y-tree-view-node--active': active.value,\r\n };\r\n });\r\n\r\n const styles = computed(() => {\r\n return {\r\n '--tree-view-node--level': props.level,\r\n };\r\n });\r\n\r\n const contentText = computed(() => {\r\n return getObjectValueByPath(props.item, props.itemText) ?? '';\r\n });\r\n\r\n const disabledSelect = computed(() => {\r\n if (props.itemSelectable != null) {\r\n let selectable = true;\r\n if (typeof props.itemSelectable === 'function') {\r\n selectable = !!props.itemSelectable(props.item);\r\n } else if (Array.isArray(props.itemSelectable)) {\r\n selectable = props.itemSelectable.includes(myKey.value);\r\n } else {\r\n selectable = getPropertyFromItem(\r\n props.item,\r\n props.itemSelectable,\r\n true,\r\n );\r\n }\r\n\r\n return !selectable;\r\n }\r\n return false;\r\n });\r\n\r\n const slotProps = computed(() => {\r\n return {\r\n level: props.level,\r\n imLeaf: imLeaf.value,\r\n toggleActive,\r\n };\r\n });\r\n\r\n watch(childrenSomeChecked, (value) => {\r\n indeterminate.value = value;\r\n });\r\n\r\n function toggleActive(e?: MouseEvent) {\r\n const to = !active.value;\r\n active.value = to;\r\n treeView.updateActive(myKey.value, to, e);\r\n treeView.emitActive();\r\n }\r\n\r\n function onClick(e: MouseEvent) {\r\n toggleActive(e);\r\n }\r\n\r\n function onClickExpand(e: MouseEvent) {\r\n e.stopPropagation();\r\n const to = !expanded.value;\r\n expanded.value = to;\r\n treeView.updateExpanded(myKey.value, to);\r\n treeView.emitExpanded();\r\n }\r\n\r\n function onClickSelect(e: MouseEvent) {\r\n e.stopPropagation();\r\n if (disabledSelect.value) return;\r\n const to = !isChecked.value;\r\n selected.value = to;\r\n treeView.updateSelected(myKey.value, to);\r\n treeView.emitSelected();\r\n }\r\n\r\n function onMouseenterContainer(e: MouseEvent) {\r\n props.onMouseenterContainer?.(e, {\r\n ...slotProps.value,\r\n item: props.item,\r\n });\r\n }\r\n\r\n function onMouseleaveContainer(e: MouseEvent) {\r\n props.onMouseleaveContainer?.(e, {\r\n ...slotProps.value,\r\n item: props.item,\r\n });\r\n }\r\n\r\n function onMousemoveContainer(e: MouseEvent) {\r\n props.onMousemoveContainer?.(e, { ...slotProps.value, item: props.item });\r\n }\r\n\r\n function onDblclickContainer(e: MouseEvent) {\r\n props.onDblclickContainer?.(e, { ...slotProps.value, item: props.item, toggleExpand: () => onClickExpand(e) });\r\n }\r\n\r\n useRender(() => {\r\n const indentSpacer: VNodeArrayChildren = [];\r\n for (let i = 0; i < props.level; i += 1) {\r\n indentSpacer.push(\r\n <div class={'y-tree-view-node__indent-spacer'}></div>,\r\n );\r\n }\r\n\r\n return (\r\n <div\r\n class={classes.value}\r\n style={styles.value}\r\n role=\"treeitem\"\r\n data-level={props.level}\r\n >\r\n <div\r\n ref={container$}\r\n class={'y-tree-view-node__container'}\r\n onClick={(e: MouseEvent) =>\r\n props.enableActive ? onClick(e) : void 0\r\n }\r\n onMouseenter={props.onMouseenterContainer && onMouseenterContainer}\r\n onMouseleave={props.onMouseleaveContainer && onMouseleaveContainer}\r\n onMousemove={props.onMousemoveContainer && onMousemoveContainer}\r\n onDblclick={onDblclickContainer}\r\n >\r\n <YPlate />\r\n <div class={'y-tree-view-node__indents'}>{indentSpacer}</div>\r\n {/* EXPAND */}\r\n {!imLeaf.value && leaves.value.length > 0 ? (\r\n <YButton\r\n class={'y-tree-view-node__expand-icon'}\r\n variation={'icon'}\r\n onClick={onClickExpand}\r\n >\r\n {slots['expand-icon'] ? (\r\n slots['expand-icon']()\r\n ) : (\r\n <YIconExpand></YIconExpand>\r\n )}\r\n </YButton>\r\n ) : (\r\n <i class={'y-tree-view-node__no-expand-icon'}></i>\r\n )}\r\n {/* SELECT */}\r\n {props.enableSelect && (\r\n // biome-ignore lint/a11y/useSemanticElements: passive\r\n <div\r\n class={[\r\n 'y-tree-view-node__select',\r\n {\r\n 'y-tree-view-node__select--disabled': disabledSelect.value,\r\n },\r\n ]}\r\n role=\"checkbox\"\r\n aria-checked={isChecked.value}\r\n onClick={onClickSelect}\r\n >\r\n <YIconCheckbox\r\n checked={isChecked.value}\r\n indeterminate={!selected.value && childrenSomeChecked.value}\r\n disabled={disabledSelect.value}\r\n ></YIconCheckbox>\r\n </div>\r\n )}\r\n {/* CONTENT */}\r\n <div class={'y-tree-view-node__content'}>\r\n {slots.leading && (\r\n <div class={'y-tree-view-node__leading'}>\r\n {slots.leading(slotProps.value)}\r\n </div>\r\n )}\r\n <div class={'y-tree-view-node__text'}>\r\n {slots.default ? (\r\n slots.default?.({\r\n text: contentText.value,\r\n item: props.item,\r\n ...slotProps.value,\r\n })\r\n ) : props.search && !searchLoading.value ? (\r\n <YTextHighlighter\r\n text={contentText.value}\r\n keyword={props.search}\r\n ></YTextHighlighter>\r\n ) : (\r\n contentText.value\r\n )}\r\n </div>\r\n {slots.trailing && (\r\n <div class={'y-tree-view-node__trailing'}>\r\n {slots.trailing(slotProps.value)}\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n {/* CHILDREN */}\r\n {children.value.length > 0 && (\r\n <YExpandVTransition disabled={props.disableTransition}>\r\n {expanded.value && (\r\n <div class={['y-tree-view-node__leaves']} role=\"tree\">\r\n {leaves.value.map((item: any) => {\r\n return (\r\n <YTreeNode\r\n {...mergeProps(props)}\r\n key={getObjectValueByPath(item, props.itemKey)}\r\n level={(props.level ?? 0) + 1}\r\n item={item}\r\n >\r\n {{\r\n default:\r\n slots.default &&\r\n ((...args: any[]) => slots.default?.(...args)),\r\n 'expand-icon':\r\n slots['expand-icon'] &&\r\n ((...args: any[]) =>\r\n slots['expand-icon']?.(...args)),\r\n leading:\r\n slots.leading &&\r\n ((...args: any[]) => slots.leading?.(...args)),\r\n trailing:\r\n slots.trailing &&\r\n ((...args: any[]) => slots.trailing?.(...args)),\r\n }}\r\n </YTreeNode>\r\n );\r\n })}\r\n </div>\r\n )}\r\n </YExpandVTransition>\r\n )}\r\n </div>\r\n );\r\n });\r\n\r\n const nodeState = {\r\n myKey,\r\n expanded,\r\n active,\r\n selected,\r\n indeterminate,\r\n };\r\n\r\n expose(nodeState);\r\n\r\n onBeforeMount(() => {\r\n treeView?.register?.(myKey.value, nodeState);\r\n });\r\n\r\n return {\r\n treeView,\r\n myKey,\r\n expanded,\r\n active,\r\n selected,\r\n indeterminate,\r\n childrenSelection,\r\n };\r\n },\r\n});\r\n\r\nexport type YTreeNode = InstanceType<typeof YTreeViewNode>;\r\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,132 +1,132 @@
1
- {
2
- "name": "yuyeon",
3
- "version": "0.3.6-beta.2",
4
- "keywords": [
5
- "UI Library",
6
- "Vue"
7
- ],
8
- "repository": {
9
- "type": "git",
10
- "url": "https://github.com/yuyeonUI/yuyeon",
11
- "directory": "packages/yuyeon"
12
- },
13
- "author": "yeonyew",
14
- "license": "Apache-2.0",
15
- "files": [
16
- "dist/",
17
- "lib/",
18
- "types/"
19
- ],
20
- "type": "module",
21
- "exports": {
22
- ".": {
23
- "types": "./types/index.d.ts",
24
- "default": "./lib/index.js"
25
- },
26
- "./styles/*": "./lib/styles/*",
27
- "./locales": {
28
- "types": "./types/locales/index.d.ts",
29
- "default": "./lib/locales/index.js"
30
- },
31
- "./lib": {
32
- "types": "./types/index.d.ts"
33
- },
34
- "./components": {
35
- "types": "./types/components/index.d.ts",
36
- "module": "./lib/components/index.js"
37
- },
38
- "./components/*": {
39
- "module": "./lib/components/*/*.js",
40
- "types": "./types/components/*/*.d.ts"
41
- },
42
- "./directives": {
43
- "types": "./types/directives/index.d.ts",
44
- "module": "./lib/directives/index.js"
45
- },
46
- "./directives/*": {
47
- "module": "./lib/directives/*/*.js",
48
- "types": "./types/directives/*/*.d.ts"
49
- },
50
- "./composables": {
51
- "types": "./types/composables/index.d.ts",
52
- "module": "./lib/composables/index.js",
53
- "default": "./lib/composables/index.js"
54
- },
55
- "./util": {
56
- "types": "./types/util/index.d.ts",
57
- "module": "./lib/util/index.js"
58
- },
59
- "./shims": "./types/shims.d.ts",
60
- "./types/*": "./types/*",
61
- "./*": "./*"
62
- },
63
- "main": "lib/index.js",
64
- "module": "lib/index.js",
65
- "types": "types/index.d.ts",
66
- "typesVersions": {
67
- "*": {
68
- "lib/index.mjs": [
69
- "types/index.d.ts"
70
- ],
71
- "*": [
72
- "*",
73
- "types/*",
74
- "types/*.d.ts",
75
- "types/*/index.d.ts"
76
- ]
77
- }
78
- },
79
- "scripts": {
80
- "build": "vue-tsc && vite build && pnpm run build:lib",
81
- "build:lib": "cross-env NODE_ENV=lib babel src --out-dir lib --source-maps --extensions \".ts\",\".tsx\" --copy-files --no-copy-ignored --out-file-extension .js"
82
- },
83
- "dependencies": {
84
- "motion": "^10.15.5"
85
- },
86
- "devDependencies": {
87
- "@babel/cli": "^7.21.0",
88
- "@babel/core": "^7.21.3",
89
- "@babel/preset-env": "^7.20.2",
90
- "@babel/preset-typescript": "^7.21.0",
91
- "@rollup/plugin-alias": "^4.0.3",
92
- "@rollup/plugin-babel": "^6.0.3",
93
- "@rollup/plugin-node-resolve": "^15.2.3",
94
- "@rollup/plugin-typescript": "^11.0.0",
95
- "@trivago/prettier-plugin-sort-imports": "^4.3.0",
96
- "@types/jest": "^28.1.8",
97
- "@types/node": "^18.19.1",
98
- "@types/resize-observer-browser": "^0.1.7",
99
- "@vitejs/plugin-vue": "^5.0.5",
100
- "@vitejs/plugin-vue-jsx": "^4.0.0",
101
- "@vue/babel-plugin-jsx": "^1.2.2",
102
- "@vue/test-utils": "2.4.6",
103
- "autoprefixer": "^10.4.14",
104
- "babel-plugin-add-import-extension": "1.5.1",
105
- "babel-plugin-module-resolver": "^5.0.0",
106
- "babel-plugin-transform-define": "^2.1.0",
107
- "concurrently": "^4.1.1",
108
- "core-js": "^3.41.0",
109
- "cross-env": "^7.0.3",
110
- "rollup": "^4.22.4",
111
- "rollup-plugin-dts": "^5.3.0",
112
- "rollup-plugin-sass": "^1.2.19",
113
- "rollup-plugin-sourcemaps": "^0.6.3",
114
- "rollup-plugin-terser": "^7.0.2",
115
- "sass": "^1.63.3",
116
- "vite": "^5.4.6",
117
- "vite-plugin-dts": "^3.9.1",
118
- "vitest": "^3.2.4",
119
- "vue-router": "^4.3.3",
120
- "vue-tsc": "^2.0.21"
121
- },
122
- "peerDependencies": {
123
- "motion": "^10.15.5",
124
- "vue": "^3.3.0",
125
- "vue-i18n": "^9.0.0 || ^10.0.0"
126
- },
127
- "peerDependenciesMeta": {
128
- "vue-i18n": {
129
- "optional": true
130
- }
131
- }
132
- }
1
+ {
2
+ "name": "yuyeon",
3
+ "version": "0.3.6-beta.3",
4
+ "keywords": [
5
+ "UI Library",
6
+ "Vue"
7
+ ],
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "https://github.com/yuyeonUI/yuyeon",
11
+ "directory": "packages/yuyeon"
12
+ },
13
+ "author": "yeonyew",
14
+ "license": "Apache-2.0",
15
+ "files": [
16
+ "dist/",
17
+ "lib/",
18
+ "types/"
19
+ ],
20
+ "type": "module",
21
+ "exports": {
22
+ ".": {
23
+ "types": "./types/index.d.ts",
24
+ "default": "./lib/index.js"
25
+ },
26
+ "./styles/*": "./lib/styles/*",
27
+ "./locales": {
28
+ "types": "./types/locales/index.d.ts",
29
+ "default": "./lib/locales/index.js"
30
+ },
31
+ "./lib": {
32
+ "types": "./types/index.d.ts"
33
+ },
34
+ "./components": {
35
+ "types": "./types/components/index.d.ts",
36
+ "module": "./lib/components/index.js"
37
+ },
38
+ "./components/*": {
39
+ "module": "./lib/components/*/*.js",
40
+ "types": "./types/components/*/*.d.ts"
41
+ },
42
+ "./directives": {
43
+ "types": "./types/directives/index.d.ts",
44
+ "module": "./lib/directives/index.js"
45
+ },
46
+ "./directives/*": {
47
+ "module": "./lib/directives/*/*.js",
48
+ "types": "./types/directives/*/*.d.ts"
49
+ },
50
+ "./composables": {
51
+ "types": "./types/composables/index.d.ts",
52
+ "module": "./lib/composables/index.js",
53
+ "default": "./lib/composables/index.js"
54
+ },
55
+ "./util": {
56
+ "types": "./types/util/index.d.ts",
57
+ "module": "./lib/util/index.js"
58
+ },
59
+ "./shims": "./types/shims.d.ts",
60
+ "./types/*": "./types/*",
61
+ "./*": "./*"
62
+ },
63
+ "main": "lib/index.js",
64
+ "module": "lib/index.js",
65
+ "types": "types/index.d.ts",
66
+ "typesVersions": {
67
+ "*": {
68
+ "lib/index.mjs": [
69
+ "types/index.d.ts"
70
+ ],
71
+ "*": [
72
+ "*",
73
+ "types/*",
74
+ "types/*.d.ts",
75
+ "types/*/index.d.ts"
76
+ ]
77
+ }
78
+ },
79
+ "dependencies": {
80
+ "motion": "^10.15.5"
81
+ },
82
+ "devDependencies": {
83
+ "@babel/cli": "^7.21.0",
84
+ "@babel/core": "^7.21.3",
85
+ "@babel/preset-env": "^7.20.2",
86
+ "@babel/preset-typescript": "^7.21.0",
87
+ "@rollup/plugin-alias": "^4.0.3",
88
+ "@rollup/plugin-babel": "^6.0.3",
89
+ "@rollup/plugin-node-resolve": "^15.2.3",
90
+ "@rollup/plugin-typescript": "^11.0.0",
91
+ "@trivago/prettier-plugin-sort-imports": "^4.3.0",
92
+ "@types/jest": "^28.1.8",
93
+ "@types/node": "^18.19.1",
94
+ "@types/resize-observer-browser": "^0.1.7",
95
+ "@vitejs/plugin-vue": "^5.0.5",
96
+ "@vitejs/plugin-vue-jsx": "^4.0.0",
97
+ "@vue/babel-plugin-jsx": "^1.2.2",
98
+ "@vue/test-utils": "2.4.6",
99
+ "autoprefixer": "^10.4.14",
100
+ "babel-plugin-add-import-extension": "1.5.1",
101
+ "babel-plugin-module-resolver": "^5.0.0",
102
+ "babel-plugin-transform-define": "^2.1.0",
103
+ "concurrently": "^4.1.1",
104
+ "core-js": "^3.41.0",
105
+ "cross-env": "^7.0.3",
106
+ "rollup": "^4.22.4",
107
+ "rollup-plugin-dts": "^5.3.0",
108
+ "rollup-plugin-sass": "^1.2.19",
109
+ "rollup-plugin-sourcemaps": "^0.6.3",
110
+ "rollup-plugin-terser": "^7.0.2",
111
+ "sass": "^1.63.3",
112
+ "vite": "^5.4.6",
113
+ "vite-plugin-dts": "^3.9.1",
114
+ "vitest": "^3.2.4",
115
+ "vue-router": "^4.3.3",
116
+ "vue-tsc": "^2.0.21"
117
+ },
118
+ "peerDependencies": {
119
+ "motion": "^10.15.5",
120
+ "vue": "^3.3.0",
121
+ "vue-i18n": "^9.0.0 || ^10.0.0"
122
+ },
123
+ "peerDependenciesMeta": {
124
+ "vue-i18n": {
125
+ "optional": true
126
+ }
127
+ },
128
+ "scripts": {
129
+ "build": "vue-tsc && vite build && pnpm run build:lib",
130
+ "build:lib": "cross-env NODE_ENV=lib babel src --out-dir lib --source-maps --extensions \".ts\",\".tsx\" --copy-files --no-copy-ignored --out-file-extension .js"
131
+ }
132
+ }
@@ -44,6 +44,7 @@ export declare const YTreeView: import('vue').DefineComponent<import('vue').Extr
44
44
  onMouseenterContainer: FunctionConstructor;
45
45
  onMouseleaveContainer: FunctionConstructor;
46
46
  onMousemoveContainer: FunctionConstructor;
47
+ onDblclickContainer: FunctionConstructor;
47
48
  itemSelectable: {
48
49
  type: PropType<any>;
49
50
  };
@@ -119,6 +120,7 @@ export declare const YTreeView: import('vue').DefineComponent<import('vue').Extr
119
120
  onMouseenterContainer: FunctionConstructor;
120
121
  onMouseleaveContainer: FunctionConstructor;
121
122
  onMousemoveContainer: FunctionConstructor;
123
+ onDblclickContainer: FunctionConstructor;
122
124
  itemSelectable: {
123
125
  type: PropType<any>;
124
126
  };
@@ -18,6 +18,7 @@ export declare const pressYTreeViewNodeProps: <Defaults extends {
18
18
  onMouseenterContainer?: unknown;
19
19
  onMouseleaveContainer?: unknown;
20
20
  onMousemoveContainer?: unknown;
21
+ onDblclickContainer?: unknown;
21
22
  itemSelectable?: unknown;
22
23
  } = {}>(defaults?: Defaults | undefined) => {
23
24
  items: unknown extends Defaults["items"] ? {
@@ -154,6 +155,10 @@ export declare const pressYTreeViewNodeProps: <Defaults extends {
154
155
  type: PropType<unknown extends Defaults["onMousemoveContainer"] ? Function : Function | Defaults["onMousemoveContainer"]>;
155
156
  default: unknown extends Defaults["onMousemoveContainer"] ? Function : Function | Defaults["onMousemoveContainer"];
156
157
  };
158
+ onDblclickContainer: unknown extends Defaults["onDblclickContainer"] ? FunctionConstructor : {
159
+ type: PropType<unknown extends Defaults["onDblclickContainer"] ? Function : Function | Defaults["onDblclickContainer"]>;
160
+ default: unknown extends Defaults["onDblclickContainer"] ? Function : Function | Defaults["onDblclickContainer"];
161
+ };
157
162
  itemSelectable: unknown extends Defaults["itemSelectable"] ? {
158
163
  type: PropType<any>;
159
164
  } : Omit<{
@@ -217,6 +222,7 @@ export declare const YTreeViewNode: import('vue').DefineComponent<{
217
222
  onMouseenterContainer: FunctionConstructor;
218
223
  onMouseleaveContainer: FunctionConstructor;
219
224
  onMousemoveContainer: FunctionConstructor;
225
+ onDblclickContainer: FunctionConstructor;
220
226
  itemSelectable: {
221
227
  type: PropType<any>;
222
228
  };