mirror of
				https://github.com/optim-enterprises-bv/vault.git
				synced 2025-10-30 18:17:55 +00:00 
			
		
		
		
	 e61bd967e3
			
		
	
	e61bd967e3
	
	
	
		
			
			* move script to scripts folder * add docfy to router and scripts * add docfy to router and scripts * fix jsdoc syntax * add component markdown files to gitignore * improve error handling for scripts * tidy up remaining jsdoc syntax * add sample jsdoc components * add known issue info * make not using multi-line components clearer * make generating docs clearer * update copy * final how to docfy cleanup * fix ts file @module syntax * fix read more syntax * make docfy typescript compatible
		
			
				
	
	
		
			50 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /**
 | |
|  * Copyright (c) HashiCorp, Inc.
 | |
|  * SPDX-License-Identifier: BUSL-1.1
 | |
|  */
 | |
| 
 | |
| import Component from '@glimmer/component';
 | |
| /**
 | |
|  * @module ToolbarLink
 | |
|  * `ToolbarLink` components style links and buttons for the Toolbar
 | |
|  * It should only be used inside of `Toolbar`.
 | |
|  *
 | |
|  * @example
 | |
|  * <Toolbar>
 | |
|  *   <ToolbarActions>
 | |
|  *     <ToolbarLink @route="vault" @type="add" @disabled={{true}} @disabledTooltip="This link is disabled">
 | |
|  *       Create policy
 | |
|  *     </ToolbarLink>
 | |
|  *   </ToolbarActions>
 | |
|  * </Toolbar>
 | |
|  *
 | |
|  * @param {string} route - route to pass to LinkTo
 | |
|  * @param {Model} model - model to pass to LinkTo
 | |
|  * @param {Array} models - array of models to pass to LinkTo
 | |
|  * @param {Object} query - query params to pass to LinkTo
 | |
|  * @param {boolean} replace - replace arg to pass to LinkTo
 | |
|  * @param {string} type - Use "add" to change icon to plus sign, or pass in your own kind of icon.
 | |
|  * @param {boolean} disabled - pass true to disable link
 | |
|  * @param {string} disabledTooltip - tooltip to display on hover when disabled
 | |
|  */
 | |
| 
 | |
| export default class ToolbarLinkComponent extends Component {
 | |
|   get glyph() {
 | |
|     // not ideal logic. Without refactoring, this allows us to add in our own icon type outside of chevron-right or plus.
 | |
|     // For a later refactor we should remove the substitution for add to plus and just return type.
 | |
|     const { type } = this.args;
 | |
|     if (!type) return 'chevron-right';
 | |
|     return type === 'add' ? 'plus' : type;
 | |
|   }
 | |
|   get models() {
 | |
|     const { model, models } = this.args;
 | |
|     if (model) {
 | |
|       return [model];
 | |
|     }
 | |
|     return models || [];
 | |
|   }
 | |
|   get query() {
 | |
|     return this.args.query || {};
 | |
|   }
 | |
| }
 |