Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 1x | import {model} from '@feasibleone/blong';
/**
* API bundle management model (browser).
*
* The bundle name is the `core_resource.resourceName` (also the wrapped
* `access.role` resource name); the columns below (rate/credit metadata) drive
* the auto-generated pages for `gateway.bundle`.
*/
export default model(
() =>
async function gatewayBundleModel() {
return {
subject: 'gateway',
object: 'bundle',
objectTitle: 'Bundle',
public: true,
schema: {
properties: {
bundle: {
properties: {
baseMonthlyCredits: {title: 'Monthly Credits'},
rateLimit: {title: 'Rate Limit'},
rateWindowSec: {title: 'Rate Window (s)'},
description: {title: 'Description'},
isActive: {title: 'Active'},
},
widget: {
columns: [
'baseMonthlyCredits',
'rateLimit',
'rateWindowSec',
'isActive',
],
},
},
},
},
cards: {
browse: {
label: 'Bundles',
widgets: ['bundle'],
},
edit: {
label: 'Bundle Details',
widgets: [
'bundle.baseMonthlyCredits',
'bundle.rateLimit',
'bundle.rateWindowSec',
'bundle.description',
'bundle.isActive',
],
},
detail: {
label: '',
readOnly: true,
watch: '$.selected.bundle',
widgets: [
'$.edit.bundle.baseMonthlyCredits',
'$.edit.bundle.rateLimit',
'$.edit.bundle.rateWindowSec',
],
},
},
};
},
);
|