public async getQuickPickItems()

in src/DependencyManager.ts [33:63]


    public async getQuickPickItems(serviceUrl: string, bootVersion: string, options?: { hasLastSelected: boolean }): Promise<Array<QuickPickItem & IDependenciesItem>> {
        if (this.dependencies.length === 0) {
            await this.initialize(await serviceManager.getAvailableDependencies(serviceUrl, bootVersion));
        }
        const ret: Array<QuickPickItem & IDependenciesItem> = [];
        if (this.selectedIds.length === 0) {
            if (options && options.hasLastSelected && this.lastselected) {
                const item = this.genLastSelectedItem(this.lastselected);
                if (item) {
                    ret.push(item);
                }
            }
        }
        ret.push({
            description: "",
            detail: HINT_CONFIRM,
            id: this.selectedIds.join(","),
            itemType: "selection",
            label: `$(checklist) Selected ${this.selectedIds.length} dependenc${this.selectedIds.length === 1 ? "y" : "ies"}`,
        });

        return ret.concat(this.getSelectedDependencies().concat(this.getUnselectedDependencies()).map((dep: IDependency) => {
            return {
                description: dep.group,
                detail: dep.description,
                id: dep.id,
                itemType: "dependency",
                label: `${this.selectedIds.indexOf(dep.id) >= 0 ? "$(check) " : PLACEHOLDER}${dep.name}`,
            };
        }));
    }