ngx-axis-appforge 0.0.45 → 0.0.46

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.
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-axis-appforge-axis-components-tree-selector.mjs","sources":["../../../axis-components/tree-selector/tree-selector.options.ts","../../../axis-components/tree-selector/tree-selector.ts","../../../axis-components/tree-selector/tree-selector.html","../../../axis-components/tree-selector/ngx-axis-appforge-axis-components-tree-selector.ts"],"sourcesContent":["import { signal } from \"@angular/core\";\nimport { ValueAccessOptions, TriggeEventsOptions } from \"ngx-axis-appforge/core\";\n\nexport class TreeSelectorOptions extends ValueAccessOptions {\n\n\n readonly labelField = signal(\"title\");\n readonly valueField = signal(\"key\");\n readonly selectableField = signal(\"selectable\");\n readonly iconField = signal(\"icon\");\n readonly fullValue = signal(false);\n readonly levelStart = signal(0);\n readonly levelEnd = signal<number | null>(null);\n readonly data = signal<any>(undefined);\n readonly nodeFn = signal<string | undefined>(undefined);\n\n readonly selectAbleLevel = signal<string>(\"\");\n readonly multiple = signal(false);\n readonly maxSelectCount = signal<number | null>(null);\n readonly defaultFirst = signal(false);\n readonly allowClear = signal(true);\n\n readonly type = signal<\"tree\" | \"input-tree\" | \"cascader\">(\"tree\");\n readonly showSearch = signal(true);\n readonly hideUnMatched = signal(true);\n readonly showLine = signal(false);\n\n readonly title = signal(\"\");\n readonly expandedLevel = signal<number | null>(null);\n\n readonly placeHolder = signal(\"\");\n readonly size = signal<'large' | 'small' | 'default'>(\"default\");\n readonly variant = signal<'outlined' | 'borderless' | 'filled' | 'underlined'>(\"outlined\");\n\n readonly expandTrigger = signal<'click' | 'hover'>(\"click\");\n\n readonly menus = signal<TreeNodeMenuOptions[]>([]);\n\n}\n\nexport class TreeNodeMenuOptions {\n readonly inuse = signal(true);\n readonly title = signal(\"未命名\");\n readonly icon = signal<any>(undefined);\n readonly danger = signal(false);\n readonly confirm = signal(false);\n readonly confirmText = signal(\"是否确认?\");\n readonly disabled = signal(false);\n readonly triggeEvents = signal<TriggeEventsOptions | undefined>(undefined);\n}","import { ChangeDetectionStrategy, Component, computed, effect, inject, model, signal, untracked, ViewChild } from '@angular/core';\nimport { TreeNodeMenuOptions, TreeSelectorOptions } from './tree-selector.options';\nimport { copy, DynamicDirective, recursionArray, ValueAccess } from 'ngx-axis-appforge/core';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzTreeModule, NzTreeNodeOptions } from 'ng-zorro-antd/tree';\nimport { NzContextMenuService, NzDropdownMenuComponent, NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { FormsModule } from '@angular/forms';\nimport { NzFormatEmitEvent, NzTreeNode, NzTreeNodeKey } from 'ng-zorro-antd/core/tree';\nimport { NzHighlightPipe } from 'ng-zorro-antd/core/highlight';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzFlexModule } from 'ng-zorro-antd/flex';\nimport { NzTreeSelectComponent, NzTreeSelectModule } from 'ng-zorro-antd/tree-select';\nimport { NzCascaderModule, NzCascaderOption } from 'ng-zorro-antd/cascader';\nimport { NzModalModule, NzModalService } from 'ng-zorro-antd/modal';\n\n@Component({\n selector: 'axis-tree-selector',\n imports: [NzInputModule, DynamicDirective, NzTreeModule, NzDropDownModule, FormsModule, NzHighlightPipe, NzIconModule, NzButtonModule, NzFlexModule, NzTreeSelectModule, NzCascaderModule, NzModalModule],\n templateUrl: './tree-selector.html',\n styleUrl: './tree-selector.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TreeSelector extends ValueAccess<TreeSelectorOptions> {\n\n constructor() {\n super();\n effect(() => {\n let treeData = this.treeData();\n untracked(() => {\n if (this.options.defaultFirst() && (this.options.multiple() && !this.value()?.length || !this.options.multiple() && !this.value())) {\n let fullArray: any[] = [];\n recursionArray(treeData, {\n before: n => {\n if (n.selectable) {\n fullArray.push(n.data);\n return false;\n }\n return undefined;\n }\n });\n const value = this.fullArrayToValue(fullArray);\n if (value !== undefined) {\n this.setInitValue(value);\n }\n }\n });\n });\n effect(() => {\n if (this.treeNodeMap()) {\n untracked(() => this.valueToComponentValue());\n }\n });\n }\n\n @ViewChild(NzTreeSelectComponent)\n private treeSelect?: NzTreeSelectComponent;\n\n @ViewChild(NzDropdownMenuComponent)\n private menu?: NzDropdownMenuComponent;\n private readonly menuService = inject(NzContextMenuService);\n private readonly modal = inject(NzModalService);\n private menuNodeDs?: any;\n\n override options: TreeSelectorOptions = new TreeSelectorOptions();\n readonly menus = computed(() => this.options.menus().map(_ => new TreeNodeMenuOptions()));\n readonly searchValue = model<string>();\n readonly treeData = computed(() => this.buildTreeData());\n readonly selectedKeys = signal<NzTreeNodeKey[]>([]);\n readonly selectValue = model<any>();\n readonly treeNodeMap = computed(() => {\n const map = new Map<NzTreeNodeKey, NzTreeNodeOptions>();\n recursionArray(this.treeData(), {\n before: n => {\n map.set(n.key, n);\n }\n });\n return map;\n });\n\n readonly changeOn = (option: NzCascaderOption, level: number): boolean => {\n return option['selectable'];\n }\n\n override setInitValue(value: any): void {\n super.setInitValue(value);\n this.valueToComponentValue();\n }\n\n override writeValue(value: any): void {\n super.writeValue(value);\n this.valueToComponentValue();\n }\n\n private buildTreeData(): NzTreeNodeOptions[] {\n if (!this.options.data()) {\n return [];\n }\n let data = copy(this.options.data(), true);\n if (this.options.levelStart() < 0) {\n data = [{\n [this.options.labelField()]: \"全部\",\n [this.options.valueField()]: \"\",\n children: data,\n }];\n }\n const selectableLevels = this.options.selectAbleLevel()?.split(\",\").filter(l => l).map(l => +l.trim());\n const treeData: NzTreeNodeOptions[] = [];\n recursionArray(data, {\n before: (n, l, parent) => {\n const nodeData: any = {};\n if (this.options.nodeFn()) {\n this.runFn(this.options.nodeFn()!, { node: n, level: l });\n }\n for (const key in n) {\n if (key !== \"children\") {\n nodeData[key] = n[key];\n delete n[key];\n }\n }\n if (l >= this.options.levelStart() || l <= (this.options.levelEnd() ?? Infinity)) {\n if (l == this.options.levelStart()) {\n treeData.push(n);\n }\n if (l == (this.options.levelEnd() ?? Infinity) || (this.options.type() == 'cascader' && selectableLevels?.length && selectableLevels[selectableLevels.length - 1] == l)) {\n n.isLeaf = true;\n n.expanded = false;\n delete n.children;\n } else {\n n.isLeaf = !n.children?.length;\n n.expanded = l < (this.options.expandedLevel() ?? Infinity);\n }\n n.selectable = nodeData[this.options.selectableField()] ?? true;\n if (n.selectable && this.options.selectAbleLevel()) {\n if (!selectableLevels.includes(l)) {\n n.selectable = false;\n }\n }\n n.key = nodeData[this.options.valueField()];\n n.title = nodeData[this.options.labelField()];\n n.icon = nodeData[this.options.iconField()];\n n.keys = (parent?.keys ?? []).concat([n.key]);\n n.data = nodeData;\n n.disableCheckbox = !n.selectable;\n }\n }\n }, this.options.levelStart() < 0 ? -1 : 0);\n return treeData;\n }\n\n private valueToComponentValue() {\n let value = this.value();\n if (value != null) {\n if (!this.options.multiple()) {\n value = [value];\n }\n if (this.options.fullValue()) {\n value = value.map((e: any) => e[this.options.valueField()]);\n }\n switch (this.options.type()) {\n case \"tree\":\n this.selectedKeys.set([...value]);\n break;\n case \"input-tree\":\n if (!this.options.multiple()) {\n value = value[0];\n }\n this.selectValue.set(value);\n break;\n case \"cascader\":\n value = value.map((e: any) => this.treeNodeMap().get(e)?.['keys']);\n if (!untracked(this.options.multiple)) {\n value = value[0];\n }\n this.selectValue.set(value);\n break;\n }\n } else {\n switch (this.options.type()) {\n case \"tree\":\n this.selectedKeys.set([]);\n break;\n case \"input-tree\":\n this.selectValue.set(null);\n break;\n case \"cascader\":\n this.selectValue.set(null);\n break;\n }\n }\n }\n\n nodeClick(e: NzFormatEmitEvent) {\n if (!e.node!.isSelectable) {\n if (e.node && !e.node.isLeaf) {\n e.node!.isExpanded = !e.node!.isExpanded;\n }\n return;\n } else if (!e.node!.isSelected && e.keys?.length == 0 && !this.options.allowClear()) {\n e.node!.isSelected = true;\n return;\n }\n if (this.options.readonly() || this.options.disabled()) {\n e.node!.isSelected = false;\n return;\n }\n const selectNodes = e.selectedKeys?.filter(e => e.isSelected) ?? [];\n this.selectedKeys.set(selectNodes.map(r => r.key));\n const value = this.treeNodeToValue(selectNodes);\n this.value.set(value);\n this.onChange?.(this.value());\n }\n\n private treeNodeToValue(nodes: NzTreeNode[]): any {\n return this.fullArrayToValue(nodes.map(n => n.origin['data']));\n }\n\n private fullArrayToValue(fullArray: any[]): any {\n let value: any = fullArray.map(n => {\n const res: any = {};\n for (const key in n) {\n if (key !== \"children\") {\n res[key] = n[key];\n }\n }\n return res;\n });\n if (!untracked(this.options.fullValue)) {\n value = fullArray.map(r => r[untracked(this.options.valueField)]);\n }\n if (!this.options.multiple()) {\n value = value?.[0];\n }\n return value ?? null;\n }\n\n hasExpanded(node: NzTreeNode): boolean {\n return node.isExpanded || node.children.some(c => this.hasExpanded(c));\n }\n\n expand(node: NzTreeNode, expanded: boolean) {\n node.isExpanded = expanded;\n node.children.forEach(c => this.expand(c, expanded));\n }\n\n onContextMenu(e: NzFormatEmitEvent) {\n if (this.menu) {\n this.menuNodeDs = { node: e.node?.origin[\"data\"], level: e.node?.level };\n this.menus().forEach((m, i) => {\n this.bindWithConfig(this.options.menus()[i], { options: m, snapshot: true, tempDataSource: this.menuNodeDs });\n });\n this.menuService.create(e.event as MouseEvent, this.menu);\n }\n }\n\n menuClick(options: TreeNodeMenuOptions) {\n if (options.confirm()) {\n this.modal.confirm({\n nzContent: options.confirmText(),\n nzOnOk: () => {\n this.triggeEvents(\"treeNodeMenuClick\", this.menuNodeDs, options.triggeEvents()).subscribe();\n }\n })\n } else {\n this.triggeEvents(\"treeNodeMenuClick\", this.menuNodeDs, options.triggeEvents()).subscribe();\n }\n }\n\n onInputTreeChange() {\n const value = this.treeNodeToValue((this.options.multiple() ? this.treeSelect?.getCheckedNodeList() : this.treeSelect?.getSelectedNodeList()) ?? []);\n this.value.set(value);\n this.onChange?.(this.value());\n }\n\n onCascaderChange(v: any[]) {\n const value = this.fullArrayToValue(this.options.multiple() ? v.map((e: any[]) => this.treeNodeMap().get(e[e.length - 1])!['data']) : v.length ? [this.treeNodeMap().get(v[v.length - 1])!['data']] : []);\n this.value.set(value);\n this.onChange?.(this.value());\n }\n\n}\n","@switch (options.type() ) {\n@case (\"tree\") {\n<div class=\"tree-box\">\n @if (options.title()) {\n <div class=\"title-container\">{{options.title()}}</div>\n }\n @if (options.showSearch()) {\n <div class=\"search-inp\">\n <input type=\"text\" nz-input placeholder=\"搜索\" [(ngModel)]=\"searchValue\" nzVariant=\"borderless\" nzSize=\"small\" />\n </div>\n }\n <div class=\"tree-body\">\n <nz-tree [nzSearchValue]=\"searchValue()??''\" [nzTreeTemplate]=\"optionItem\"\n [nzHideUnMatched]=\"options.hideUnMatched()\" [nzData]=\"treeData()\" nzBlockNode\n [nzSelectedKeys]=\"selectedKeys()\" [nzMultiple]=\"options.multiple()\" [nzShowLine]=\"options.showLine()\"\n (nzClick)=\"nodeClick($event)\" (nzContextMenu)=\"onContextMenu($event)\">\n </nz-tree>\n </div>\n</div>\n<nz-dropdown-menu>\n <ul nz-menu>\n @for (m of menus(); track $index) {\n @if (m.inuse()) {\n <li nz-menu-item [nzDisabled]=\"m.disabled()\" [nzDanger]=\"m.danger()\" (click)=\"menuClick(m)\">\n @if (m.icon()) {\n <ng-container [axisDynamic]=\"m.icon()\"></ng-container>\n }\n {{m.title()}}\n </li>\n }\n }\n </ul>\n</nz-dropdown-menu>\n}\n@case (\"input-tree\") {\n<nz-tree-select style=\"width: 100%;\" [nzNodes]=\"treeData()\" [nzAllowClear]=\"options.allowClear()\"\n [nzSize]=\"options.size()\" [nzVariant]=\"options.variant()\" [nzShowSearch]=\"options.showSearch()\"\n [nzShowLine]=\"options.showLine()\" [nzPlaceHolder]=\"options.placeHolder()\" [nzTreeTemplate]=\"optionItem\"\n [nzCheckable]=\"options.multiple()\" [nzMultiple]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()??9999999\" [nzHideUnMatched]=\"options.hideUnMatched()\"\n [nzDisabled]=\"options.disabled() || options.readonly()\" [(ngModel)]=\"selectValue\" (ngModelChange)=\"onInputTreeChange()\"></nz-tree-select>\n}\n@case (\"cascader\"){\n<nz-cascader style=\"width: 100%;\" [nzOptions]=\"treeData()\" [(ngModel)]=\"selectValue\"\n (ngModelChange)=\"onCascaderChange($event)\" [nzMultiple]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()??9999999\" [nzAllowClear]=\"options.allowClear()\" [nzChangeOn]=\"changeOn\"\n [nzDisabled]=\"options.disabled() || options.readonly()\" nzLabelProperty=\"title\" [nzPlaceHolder]=\"options.placeHolder()\"\n [nzShowSearch]=\"options.showSearch()\" [nzSize]=\"options.size()\" nzValueProperty=\"key\"\n [nzVariant]=\"options.variant()\" [nzExpandTrigger]=\"options.expandTrigger()\"\n [nzOptionRender]=\"optionItem\"></nz-cascader>\n}\n}\n<ng-template #optionItem let-option>\n <div class=\"node-item\" nz-flex nzGap=\"4px\">\n @if (option.icon) {\n <ng-container [axisDynamic]=\"option.icon\"></ng-container>\n }\n <span [innerHTML]=\"option.title | nzHighlight: searchValue()??'' : 'i' : 'highlight'\"></span>\n @if (options.type() != 'cascader' && option.children.length) {\n <a class=\"expand-button\" nz-button nzType=\"text\" nzSize=\"small\" nzShape=\"circle\"\n (click)=\"$event.stopPropagation(); expand(option,!hasExpanded(option))\">\n <nz-icon [nzType]=\"hasExpanded(option)?'shrink':'arrows-alt'\"></nz-icon>\n </a>\n }\n </div>\n</ng-template>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './tree-selector';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-axis-appforge-axis-components-tree-selector.mjs","sources":["../../../axis-components/tree-selector/tree-selector.options.ts","../../../axis-components/tree-selector/tree-selector.ts","../../../axis-components/tree-selector/tree-selector.html","../../../axis-components/tree-selector/ngx-axis-appforge-axis-components-tree-selector.ts"],"sourcesContent":["import { signal } from \"@angular/core\";\nimport { ValueAccessOptions, TriggeEventsOptions } from \"ngx-axis-appforge/core\";\n\nexport class TreeSelectorOptions extends ValueAccessOptions {\n\n\n readonly labelField = signal(\"title\");\n readonly valueField = signal(\"key\");\n readonly selectableField = signal(\"selectable\");\n readonly iconField = signal(\"icon\");\n readonly fullValue = signal(false);\n readonly levelStart = signal(0);\n readonly levelEnd = signal<number | null>(null);\n readonly data = signal<any>(undefined);\n readonly nodeFn = signal<string | undefined>(undefined);\n\n readonly selectAbleLevel = signal<string>(\"\");\n readonly multiple = signal(false);\n readonly maxSelectCount = signal<number | null>(null);\n readonly defaultFirst = signal(false);\n readonly allowClear = signal(true);\n\n readonly type = signal<\"tree\" | \"input-tree\" | \"cascader\">(\"tree\");\n readonly showSearch = signal(true);\n readonly hideUnMatched = signal(true);\n readonly showLine = signal(false);\n\n readonly title = signal(\"\");\n readonly expandedLevel = signal<number | null>(null);\n\n readonly placeHolder = signal(\"\");\n readonly size = signal<'large' | 'small' | 'default'>(\"default\");\n readonly variant = signal<'outlined' | 'borderless' | 'filled' | 'underlined'>(\"outlined\");\n\n readonly expandTrigger = signal<'click' | 'hover'>(\"click\");\n\n readonly menus = signal<TreeNodeMenuOptions[]>([]);\n\n}\n\nexport class TreeNodeMenuOptions {\n readonly inuse = signal(true);\n readonly title = signal(\"未命名\");\n readonly icon = signal<any>(undefined);\n readonly danger = signal(false);\n readonly confirm = signal(false);\n readonly confirmText = signal(\"是否确认?\");\n readonly disabled = signal(false);\n readonly triggeEvents = signal<TriggeEventsOptions | undefined>(undefined);\n}","import { ChangeDetectionStrategy, Component, computed, effect, inject, model, signal, untracked, ViewChild } from '@angular/core';\nimport { TreeNodeMenuOptions, TreeSelectorOptions } from './tree-selector.options';\nimport { copy, DynamicDirective, recursionArray, ValueAccess } from 'ngx-axis-appforge/core';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzTreeModule, NzTreeNodeOptions } from 'ng-zorro-antd/tree';\nimport { NzContextMenuService, NzDropdownMenuComponent, NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { FormsModule } from '@angular/forms';\nimport { NzFormatEmitEvent, NzTreeNode, NzTreeNodeKey } from 'ng-zorro-antd/core/tree';\nimport { NzHighlightPipe } from 'ng-zorro-antd/core/highlight';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzFlexModule } from 'ng-zorro-antd/flex';\nimport { NzTreeSelectComponent, NzTreeSelectModule } from 'ng-zorro-antd/tree-select';\nimport { NzCascaderModule, NzCascaderOption } from 'ng-zorro-antd/cascader';\nimport { NzModalModule, NzModalService } from 'ng-zorro-antd/modal';\n\n@Component({\n selector: 'axis-tree-selector',\n imports: [NzInputModule, DynamicDirective, NzTreeModule, NzDropDownModule, FormsModule, NzHighlightPipe, NzIconModule, NzButtonModule, NzFlexModule, NzTreeSelectModule, NzCascaderModule, NzModalModule],\n templateUrl: './tree-selector.html',\n styleUrl: './tree-selector.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TreeSelector extends ValueAccess<TreeSelectorOptions> {\n\n constructor() {\n super();\n effect(() => {\n let treeData = this.treeData();\n untracked(() => {\n if (this.options.defaultFirst() && (this.options.multiple() && !this.value()?.length || !this.options.multiple() && !this.value())) {\n let fullArray: any[] = [];\n recursionArray(treeData, {\n before: n => {\n if (n.selectable) {\n fullArray.push(n.data);\n return false;\n }\n return undefined;\n }\n });\n const value = this.fullArrayToValue(fullArray);\n if (value !== undefined) {\n this.setInitValue(value);\n }\n }\n });\n });\n effect(() => {\n if (this.treeNodeMap()) {\n untracked(() => this.valueToComponentValue());\n }\n });\n }\n\n @ViewChild(NzTreeSelectComponent)\n private treeSelect?: NzTreeSelectComponent;\n\n @ViewChild(NzDropdownMenuComponent)\n private menu?: NzDropdownMenuComponent;\n private readonly menuService = inject(NzContextMenuService);\n private readonly modal = inject(NzModalService);\n private menuNodeDs?: any;\n\n override options: TreeSelectorOptions = new TreeSelectorOptions();\n readonly menus = computed(() => this.options.menus().map(_ => new TreeNodeMenuOptions()));\n readonly searchValue = model<string>();\n readonly treeData = computed(() => this.buildTreeData());\n readonly selectedKeys = signal<NzTreeNodeKey[]>([]);\n readonly selectValue = model<any>();\n readonly treeNodeMap = computed(() => {\n const map = new Map<NzTreeNodeKey, NzTreeNodeOptions>();\n recursionArray(this.treeData(), {\n before: n => {\n map.set(n.key, n);\n }\n });\n return map;\n });\n @ViewChild(\"inputTree\")\n readonly inputTree?: NzTreeSelectComponent;\n\n readonly changeOn = (option: NzCascaderOption, level: number): boolean => {\n return option['selectable'];\n }\n\n override setInitValue(value: any): void {\n super.setInitValue(value);\n this.valueToComponentValue();\n }\n\n override writeValue(value: any): void {\n super.writeValue(value);\n this.valueToComponentValue();\n }\n\n private buildTreeData(): NzTreeNodeOptions[] {\n if (!this.options.data()) {\n return [];\n }\n let data = copy(this.options.data(), true);\n if (this.options.levelStart() < 0) {\n data = [{\n [this.options.labelField()]: \"全部\",\n [this.options.valueField()]: \"\",\n children: data,\n }];\n }\n const selectableLevels = this.options.selectAbleLevel()?.split(\",\").filter(l => l).map(l => +l.trim());\n const treeData: NzTreeNodeOptions[] = [];\n recursionArray(data, {\n before: (n, l, parent) => {\n const nodeData: any = {};\n if (this.options.nodeFn()) {\n this.runFn(this.options.nodeFn()!, { node: n, level: l });\n }\n for (const key in n) {\n if (key !== \"children\") {\n nodeData[key] = n[key];\n delete n[key];\n }\n }\n if (l >= this.options.levelStart() || l <= (this.options.levelEnd() ?? Infinity)) {\n if (l == this.options.levelStart()) {\n treeData.push(n);\n }\n if (l == (this.options.levelEnd() ?? Infinity) || (this.options.type() == 'cascader' && selectableLevels?.length && selectableLevels[selectableLevels.length - 1] == l)) {\n n.isLeaf = true;\n n.expanded = false;\n delete n.children;\n } else {\n n.isLeaf = !n.children?.length;\n n.expanded = l < (this.options.expandedLevel() ?? Infinity);\n }\n n.selectable = nodeData[this.options.selectableField()] ?? true;\n if (n.selectable && this.options.selectAbleLevel()) {\n if (!selectableLevels.includes(l)) {\n n.selectable = false;\n }\n }\n n.key = nodeData[this.options.valueField()];\n n.title = nodeData[this.options.labelField()];\n n.icon = nodeData[this.options.iconField()];\n n.keys = (parent?.keys ?? []).concat([n.key]);\n n.data = nodeData;\n n.disableCheckbox = !n.selectable;\n }\n }\n }, this.options.levelStart() < 0 ? -1 : 0);\n return treeData;\n }\n\n private valueToComponentValue() {\n let value = this.value();\n if (value != null) {\n if (!this.options.multiple()) {\n value = [value];\n }\n if (this.options.fullValue()) {\n value = value.map((e: any) => e[this.options.valueField()]);\n }\n switch (this.options.type()) {\n case \"tree\":\n this.selectedKeys.set([...value]);\n break;\n case \"input-tree\":\n if (!this.options.multiple()) {\n value = value[0];\n }\n this.selectValue.set(value);\n break;\n case \"cascader\":\n value = value.map((e: any) => this.treeNodeMap().get(e)?.['keys']);\n if (!untracked(this.options.multiple)) {\n value = value[0];\n }\n this.selectValue.set(value);\n break;\n }\n } else {\n switch (this.options.type()) {\n case \"tree\":\n this.selectedKeys.set([]);\n break;\n case \"input-tree\":\n this.selectValue.set(null);\n break;\n case \"cascader\":\n this.selectValue.set(null);\n break;\n }\n }\n }\n\n nodeClick(e: NzFormatEmitEvent) {\n if (!e.node!.isSelectable) {\n if (e.node && !e.node.isLeaf) {\n e.node!.isExpanded = !e.node!.isExpanded;\n }\n return;\n }\n if (this.options.readonly() || this.options.disabled()) {\n e.node!.isSelected = false;\n return;\n }\n const selectNodes = e.selectedKeys?.filter(r => {\n if (!this.options.multiple()) {\n r.isSelected = r.key == e.node?.key;\n }\n return r.isSelected;\n }) ?? [];\n this.selectedKeys.set(selectNodes.map(r => r.key));\n const value = this.treeNodeToValue(selectNodes);\n this.value.set(value);\n this.onChange?.(this.value());\n }\n\n internalTreeNode(node: NzTreeNode, e: Event) {\n if (!this.options.multiple() && node.isSelected && !this.options.allowClear()) {\n e.stopPropagation();\n if (this.options.type() == 'input-tree') {\n this.inputTree?.closeDropDown();\n }\n }\n }\n\n private treeNodeToValue(nodes: NzTreeNode[]): any {\n return this.fullArrayToValue(nodes.map(n => n.origin['data']));\n }\n\n private fullArrayToValue(fullArray: any[]): any {\n let value: any = fullArray.map(n => {\n const res: any = {};\n for (const key in n) {\n if (key !== \"children\") {\n res[key] = n[key];\n }\n }\n return res;\n });\n if (!untracked(this.options.fullValue)) {\n value = fullArray.map(r => r[untracked(this.options.valueField)]);\n }\n if (!this.options.multiple()) {\n value = value?.[0];\n }\n return value ?? null;\n }\n\n hasExpanded(node: NzTreeNode): boolean {\n return node.isExpanded || node.children.some(c => this.hasExpanded(c));\n }\n\n expand(node: NzTreeNode, expanded: boolean) {\n node.isExpanded = expanded;\n node.children.forEach(c => this.expand(c, expanded));\n }\n\n onContextMenu(e: NzFormatEmitEvent) {\n if (this.menu) {\n this.menuNodeDs = { node: e.node?.origin[\"data\"], level: e.node?.level };\n this.menus().forEach((m, i) => {\n this.bindWithConfig(this.options.menus()[i], { options: m, snapshot: true, tempDataSource: this.menuNodeDs });\n });\n this.menuService.create(e.event as MouseEvent, this.menu);\n }\n }\n\n menuClick(options: TreeNodeMenuOptions) {\n if (options.confirm()) {\n this.modal.confirm({\n nzContent: options.confirmText(),\n nzOnOk: () => {\n this.triggeEvents(\"treeNodeMenuClick\", this.menuNodeDs, options.triggeEvents()).subscribe();\n }\n })\n } else {\n this.triggeEvents(\"treeNodeMenuClick\", this.menuNodeDs, options.triggeEvents()).subscribe();\n }\n }\n\n onInputTreeChange() {\n const value = this.treeNodeToValue((this.options.multiple() ? this.treeSelect?.getCheckedNodeList() : this.treeSelect?.getSelectedNodeList()) ?? []);\n this.value.set(value);\n this.onChange?.(this.value());\n }\n\n onCascaderChange(v: any[]) {\n const value = this.fullArrayToValue(this.options.multiple() ? v.map((e: any[]) => this.treeNodeMap().get(e[e.length - 1])!['data']) : v.length ? [this.treeNodeMap().get(v[v.length - 1])!['data']] : []);\n this.value.set(value);\n this.onChange?.(this.value());\n }\n\n}\n","@switch (options.type() ) {\n@case (\"tree\") {\n<div class=\"tree-box\">\n @if (options.title()) {\n <div class=\"title-container\">{{options.title()}}</div>\n }\n @if (options.showSearch()) {\n <div class=\"search-inp\">\n <input type=\"text\" nz-input placeholder=\"搜索\" [(ngModel)]=\"searchValue\" nzVariant=\"borderless\" nzSize=\"small\" />\n </div>\n }\n <div class=\"tree-body\">\n <nz-tree [nzSearchValue]=\"searchValue()??''\" [nzTreeTemplate]=\"optionItem\"\n [nzHideUnMatched]=\"options.hideUnMatched()\" [nzData]=\"treeData()\" nzBlockNode\n [nzSelectedKeys]=\"selectedKeys()\" [nzMultiple]=\"options.multiple()\" [nzShowLine]=\"options.showLine()\"\n (nzClick)=\"nodeClick($event)\" (nzContextMenu)=\"onContextMenu($event)\">\n </nz-tree>\n </div>\n</div>\n<nz-dropdown-menu>\n <ul nz-menu>\n @for (m of menus(); track $index) {\n @if (m.inuse()) {\n <li nz-menu-item [nzDisabled]=\"m.disabled()\" [nzDanger]=\"m.danger()\" (click)=\"menuClick(m)\">\n @if (m.icon()) {\n <ng-container [axisDynamic]=\"m.icon()\"></ng-container>\n }\n {{m.title()}}\n </li>\n }\n }\n </ul>\n</nz-dropdown-menu>\n}\n@case (\"input-tree\") {\n<nz-tree-select #inputTree style=\"width: 100%;\" [nzNodes]=\"treeData()\" [nzAllowClear]=\"options.allowClear()\"\n [nzSize]=\"options.size()\" [nzVariant]=\"options.variant()\" [nzShowSearch]=\"options.showSearch()\"\n [nzShowLine]=\"options.showLine()\" [nzPlaceHolder]=\"options.placeHolder()\" [nzTreeTemplate]=\"optionItem\"\n [nzCheckable]=\"options.multiple()\" [nzMultiple]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()??9999999\" [nzHideUnMatched]=\"options.hideUnMatched()\"\n [nzDisabled]=\"options.disabled() || options.readonly()\" [(ngModel)]=\"selectValue\"\n (ngModelChange)=\"onInputTreeChange()\"></nz-tree-select>\n}\n@case (\"cascader\"){\n<nz-cascader style=\"width: 100%;\" [nzOptions]=\"treeData()\" [(ngModel)]=\"selectValue\"\n (ngModelChange)=\"onCascaderChange($event)\" [nzMultiple]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()??9999999\" [nzAllowClear]=\"options.allowClear()\" [nzChangeOn]=\"changeOn\"\n [nzDisabled]=\"options.disabled() || options.readonly()\" nzLabelProperty=\"title\"\n [nzPlaceHolder]=\"options.placeHolder()\" [nzShowSearch]=\"options.showSearch()\" [nzSize]=\"options.size()\"\n nzValueProperty=\"key\" [nzVariant]=\"options.variant()\" [nzExpandTrigger]=\"options.expandTrigger()\"\n [nzOptionRender]=\"optionItem\"></nz-cascader>\n}\n}\n<ng-template #optionItem let-option>\n <div class=\"node-item\" nz-flex nzGap=\"4px\" (click)=\"internalTreeNode(option, $event)\">\n @if (option.icon) {\n <ng-container [axisDynamic]=\"option.icon\"></ng-container>\n }\n <span [innerHTML]=\"option.title | nzHighlight: searchValue()??'' : 'i' : 'highlight'\"></span>\n @if (options.type() != 'cascader' && option.children.length) {\n <button class=\"expand-button\" nz-button nzType=\"text\" nzSize=\"small\" nzShape=\"circle\"\n (click)=\"$event.stopPropagation(); expand(option,!hasExpanded(option))\">\n <nz-icon [nzType]=\"hasExpanded(option)?'shrink':'arrows-alt'\"></nz-icon>\n </button>\n }\n </div>\n</ng-template>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './tree-selector';\n"],"names":[],"mappings":"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"}
@@ -1344,10 +1344,108 @@ const dropdownExampleDesc = {
1344
1344
  id: "axis-components/dropdown#1",
1345
1345
  inuse: true,
1346
1346
  child: {
1347
- component: "axis-components/button",
1348
- id: "axis-components/button#1",
1349
- inuse: true,
1350
- icon: {}
1347
+ "component": "axis-components/button",
1348
+ "id": "axis-components/button#1",
1349
+ "inuse": true,
1350
+ "requiredPermissions": null,
1351
+ "triggeEvents": null,
1352
+ "title": "更多",
1353
+ "icon": {
1354
+ "component": "axis-components/icon",
1355
+ "inuse": true,
1356
+ "lib": "antdesign",
1357
+ "theme": "outline",
1358
+ "icon": "down"
1359
+ },
1360
+ "iconPosition": "right",
1361
+ "confirm": false,
1362
+ "confirmText": "是否确认?",
1363
+ "confirmType": "modal",
1364
+ "disabledBtn": false,
1365
+ "styleType": "link",
1366
+ "block": false,
1367
+ "danger": false,
1368
+ "ghost": false,
1369
+ "size": "default",
1370
+ "shape": ""
1371
+ },
1372
+ menu: {
1373
+ "component": "axis-components/menu",
1374
+ "id": "axis-components/menu#1",
1375
+ "items": [
1376
+ {
1377
+ "type": "item",
1378
+ "triggeEvents": {
1379
+ "menuClick": []
1380
+ },
1381
+ "inuse": true,
1382
+ "disabled": false,
1383
+ "title": "菜单项1",
1384
+ "code": null,
1385
+ "danger": false,
1386
+ "placement": "bottomLeft",
1387
+ "triggerSubMenuAction": "hover"
1388
+ },
1389
+ {
1390
+ "type": "item",
1391
+ "inuse": true,
1392
+ "title": "菜单项2"
1393
+ },
1394
+ {
1395
+ "type": "submenu",
1396
+ "inuse": true,
1397
+ "title": "子菜单",
1398
+ "children": [
1399
+ {
1400
+ "type": "item",
1401
+ "triggeEvents": {
1402
+ "menuClick": []
1403
+ },
1404
+ "inuse": true,
1405
+ "disabled": false,
1406
+ "title": "子菜单项1",
1407
+ "code": null,
1408
+ "danger": false,
1409
+ "placement": "bottomLeft",
1410
+ "triggerSubMenuAction": "hover"
1411
+ },
1412
+ {
1413
+ "type": "item",
1414
+ "code": null,
1415
+ "triggeEvents": null,
1416
+ "inuse": true,
1417
+ "disabled": false,
1418
+ "title": "子菜单项2",
1419
+ "danger": true,
1420
+ "confirm": true,
1421
+ "confirmText": "是否确认?",
1422
+ "placement": "bottomLeft",
1423
+ "triggerSubMenuAction": "hover"
1424
+ }
1425
+ ]
1426
+ }
1427
+ ],
1428
+ "requiredPermissions": null,
1429
+ "triggeEvents": {
1430
+ "menuClick": [
1431
+ {
1432
+ "name": "closeDropdown",
1433
+ "disabled": false,
1434
+ "data": null,
1435
+ "id": "axis-components/dropdown#1",
1436
+ "target": "component"
1437
+ }
1438
+ ]
1439
+ },
1440
+ "inuse": true,
1441
+ "style": {
1442
+ "width": "fit-content"
1443
+ },
1444
+ "mode": "vertical",
1445
+ "theme": "light",
1446
+ "selectable": false,
1447
+ "inlineCollapsed": false,
1448
+ "inlineIndent": 24
1351
1449
  }
1352
1450
  },
1353
1451
  }