mirror of
https://github.com/hashicorp/vault.git
synced 2025-08-23 07:31:09 +02:00
* replace all injects with import syntax * Delete ui/app/components/identity/_popup-base.js
53 lines
1.2 KiB
JavaScript
53 lines
1.2 KiB
JavaScript
/**
|
|
* Copyright (c) HashiCorp, Inc.
|
|
* SPDX-License-Identifier: BUSL-1.1
|
|
*/
|
|
|
|
import Route from '@ember/routing/route';
|
|
import { service } from '@ember/service';
|
|
|
|
export default class MessagesCreateRoute extends Route {
|
|
@service store;
|
|
|
|
queryParams = {
|
|
authenticated: {
|
|
refreshModel: true,
|
|
},
|
|
};
|
|
|
|
async getMessages(authenticated) {
|
|
try {
|
|
return await this.store.query('config-ui/message', {
|
|
authenticated,
|
|
});
|
|
} catch {
|
|
return [];
|
|
}
|
|
}
|
|
|
|
async model(params) {
|
|
const { authenticated } = params;
|
|
const message = this.store.createRecord('config-ui/message', {
|
|
authenticated,
|
|
});
|
|
const messages = await this.getMessages(authenticated);
|
|
|
|
return {
|
|
message,
|
|
messages,
|
|
authenticated,
|
|
hasSomeActiveModals:
|
|
messages.length && messages?.some((message) => message.type === 'modal' && message.active),
|
|
};
|
|
}
|
|
|
|
setupController(controller, resolvedModel) {
|
|
super.setupController(controller, resolvedModel);
|
|
|
|
controller.breadcrumbs = [
|
|
{ label: 'Messages', route: 'messages', query: { authenticated: !!resolvedModel.authenticated } },
|
|
{ label: 'Create Message' },
|
|
];
|
|
}
|
|
}
|