-
Notifications
You must be signed in to change notification settings - Fork 350
/
api_entity.include
133 lines (131 loc) · 7.69 KB
/
api_entity.include
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
<div class="apiman-entity-summary" ng-controller="Apiman.ApiEntityController">
<div class="row apiman-entity-breadcrumb">
<div class="col-md-12">
<div class="title container-fluid">
<i class="breadcrumb-icon fa fa-puzzle-piece"></i>
<div class="entity emphasis">
<a data-field="apiName" href="{{ pluginName }}/orgs/{{ api.organization.id }}/apis/{{ api.id }}">{{ api.name }}</a>
</div>
<div class="versions">
<div class="btn-group apiman-entity-action" data-field="versions">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
Version: {{ version.version }}
<span class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu">
<li ng-repeat="apiVersion in versions"><a href="#" ng-click="setVersion( apiVersion )">{{ apiVersion.version }}</a></li>
</ul>
</div>
<a apiman-permission="apiEdit" href="{{ pluginName }}/orgs/{{ org.id }}/apis/{{ api.id}}/{{ version.version }}/new-version" class="btn btn-primary apiman-entity-action" apiman-i18n-key="new-version">New Version</a>
</div>
</div>
<hr />
</div>
</div>
<div class="row apiman-entity-metadata">
<div class="col-md-7" style="margin-bottom: 8px">
<!-- Api Summary -->
<apiman-editable-description description="api.description" callback="updateApiDescription"
default-value="no description"></apiman-editable-description>
<div style="padding: 8px">
<div class="entity-info-with-icon">
<i class="fa fa-clock-o fa-fw"></i>
<span class="apiman-label-faded" apiman-i18n-key="created-on">Created on</span>
<span data-field="createdOn" >{{ api.createdOn | date:'yyyy-MM-dd' }}</span>
</div>
<div class="entity-info-with-icon">
<i class="fa fa-user fa-fw"></i>
<span class="apiman-label-faded" apiman-i18n-key="created-by">Created by</span>
<span><a href="{{ pluginName }}/users/{{ api.createdBy }}" data-field="createdBy">{{ api.createdBy }}</a></span>
</div>
</div>
<div class="entity-info-with-icon">
<span apiman-i18n-key="status-label">Status:</span>
<span apiman-entity-status />
<span title="The API has been modified since it was last published!" apiman-i18n-key="api-modified" ng-show="version.status == 'Published' && isModified()" class="apiman-label apiman-label-default">Modified</span>
</div>
</div>
<div class="col-md-5" apiman-permission="apiAdmin">
<div>
<div apiman-status="Published">
<a apiman-i18n-key="ttdo-new-api-contract" data-field="ttd_toNewContract" href="{{ pluginName }}/new-contract?api={{ params.api }}&apiorg={{ params.org }}&apiv={{ params.version }}">Link my Client App to this API (New Contract)</a>
</div>
<div>
<a apiman-i18n-key="ttdo-new-api-version" data-field="ttd_toNewApiVersion" href="{{ pluginName }}/orgs/{{ org.id }}/apis/{{ api.id}}/{{ version.version }}/new-version">Create a new version of this API (New Version)</a>
</div>
</div>
<!-- The Publish Action -->
<div class="apiman-divider-40"></div>
<div class="">
<button ng-disabled="getEntityStatus() == 'Created'" apiman-action-btn="" apiman-status="Created,Ready" class="btn btn-primary" data-field="publishButton" apiman-i18n-key="publish" placeholder="Publishing..." data-icon="fa-cog" ng-click="publishApi()">Publish</button>
<button ng-show="version.publicAPI" ng-disabled="!isModified()" apiman-action-btn="" apiman-status="Published" class="btn btn-primary" data-field="republishButton" apiman-i18n-key="republish" placeholder="Publishing..." data-icon="fa-cog" ng-click="publishApi()">Re-Publish</button>
<button apiman-action-btn="" apiman-status="Published" class="btn btn-warning" data-field="retireButton" apiman-i18n-key="retire" placeholder="Retiring..." data-icon="fa-cog" ng-click="retireApi()">Retire</button>
</div>
<!-- Why Can't I Publish? Popover Checklist -->
<div ng-show="getEntityStatus() == 'Created'"
class="apiman-dropdown-checklist"
style="margin-top: 10px; color: #0099D3;">
<div style="font-size: 14px; margin: -5px 0 -4px 10px;">
<span class="fa fa-arrow-up"></span>
</div>
<div class="apiman-dropdown-checklist-popover">
<a type="button"
class="btn btn-default"
style="background-color: #FFFFFF; background-image: none; border-color: #0099D3; color: #0099D3;"
uib-popover-template="checklistPopover.templateUrl"
popover-title="{{ checklistPopover.title }}"
popover-is-open="isOpen"
popover-placement="right"
ng-click="getStatusDetails()">
<span class="fa fa-info"></span><span style="margin-left: 6px" apiman-i18n-key="why-cannot-publish">Why can't I publish?</span>
</a>
</div>
</div>
</div>
</div>
<!-- Checklist Template -->
<script type="text/ng-template"
id="checklistTemplate.html">
<span style="cursor: default; position: absolute; top: 9px; right: 10px; color: #777;"
ng-click="closePopover()"
class="fa fa-close"></span>
<uib-accordion close-others="oneAtATime">
<uib-accordion-group ng-repeat="item in checklist | checklist"
panel-class="checklist-panel"
is-disabled="item.done === true">
<uib-accordion-heading>
<div class="row {{ item.rowClass }}"
ng-class="{ 'optional': item.optional === true }"
style="margin-left: -10px; margin-right: -10px;">
<div class="col-xs-1"
style="padding: 0;">
<i class="{{ item.iconClass }}"></i>
</div>
<div class="col-xs-8 title"
style="padding: 0;">
{{item.name}}<span ng-show="item.optional === true"> *</span>
</div>
<div class="col-xs-3"
style="padding: 0;">
<a href="#"
ng-click="item.done ? return : isCollapsed = !isCollapsed"
ng-class="{'invisible-icon': item.done === true}"
title="What is this?">
<i class="fa fa-info-circle"></i>
</a>
<a ng-click="goTo($index, item, $event)"
title="Go There">
<i class="fa fa-chevron-circle-right"></i>
</a>
</div>
</div>
</uib-accordion-heading>
{{item.remediation}}
</uib-accordion-group>
</uib-accordion>
<div class="optional"
style="margin: -5px 0 10px 15px;">
* optional
</div>
</script>
</div>