1
0
Fork 0
mirror of https://github.com/portainer/portainer.git synced 2025-07-25 08:19:40 +02:00

refactor(ui): replace ng selectors with react-select [EE-3608] (#7203)

Co-authored-by: LP B <xAt0mZ@users.noreply.github.com>
This commit is contained in:
Chaim Lev-Ari 2022-09-21 10:10:58 +03:00 committed by GitHub
parent 1e21961e6a
commit ceaee4e175
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
66 changed files with 1188 additions and 625 deletions

View file

@ -2,8 +2,9 @@ import KubernetesNamespaceHelper from 'Kubernetes/helpers/namespaceHelper';
export default class KubernetesRegistryAccessController {
/* @ngInject */
constructor($async, $state, ModalService, EndpointService, Notifications, RegistryService, KubernetesResourcePoolService) {
constructor($async, $scope, $state, ModalService, EndpointService, Notifications, RegistryService, KubernetesResourcePoolService) {
this.$async = $async;
this.$scope = $scope;
this.$state = $state;
this.ModalService = ModalService;
this.Notifications = Notifications;
@ -20,10 +21,11 @@ export default class KubernetesRegistryAccessController {
this.savedResourcePools = [];
this.handleRemove = this.handleRemove.bind(this);
this.onChangeResourcePools = this.onChangeResourcePools.bind(this);
}
async submit() {
return this.updateNamespaces([...this.savedResourcePools.map(({ value }) => value), ...this.selectedResourcePools.map((pool) => pool.name)]);
return this.updateNamespaces([...this.savedResourcePools.map(({ value }) => value), ...this.selectedResourcePools]);
}
handleRemove(namespaces) {
@ -52,6 +54,12 @@ export default class KubernetesRegistryAccessController {
});
}
onChangeResourcePools(resourcePools) {
return this.$scope.$evalAsync(() => {
this.selectedResourcePools = resourcePools;
});
}
$onInit() {
return this.$async(async () => {
try {

View file

@ -12,19 +12,14 @@
<label class="col-sm-3 col-lg-2 control-label text-left" style="padding-top: 0"> Select namespaces </label>
<div class="col-sm-9 col-lg-4" style="margin-bottom: 15px">
<span class="small text-muted" ng-if="!$ctrl.resourcePools.length"> No namespaces available. </span>
<span
isteven-multi-select
<namespaces-selector
ng-if="$ctrl.resourcePools.length"
input-model="$ctrl.resourcePools"
output-model="$ctrl.selectedResourcePools"
button-label="name"
item-label="name"
tick-property="ticked"
helper-elements="filter"
search-property="name"
translation="{nothingSelected: 'Select one or more namespaces', search: 'Search...'}"
>
</span>
value="$ctrl.selectedResourcePools"
namespaces="$ctrl.resourcePools"
placeholder="'Select one or more namespaces'"
on-change="($ctrl.onChangeResourcePools)"
></namespaces-selector>
</div>
<div class="col-sm-12 small text-muted vertical-center">
<pr-icon icon="'alert-triangle'" mode="'warning'" feather="true"></pr-icon>