mirror of
https://github.com/nextcloud/app_api.git
synced 2026-01-13 20:19:21 +00:00
Before this, we didn’t have a `healthcheck` at all, but instead there was simply a check to see if the container was running. Checking whether the container is running has been moved to Deploy stage and now occurs at the end of the deployment process. And between deployment and “init” there is now a correct health check. Applications are not required to support healthcheck at all, so it is only checked if `['State']['Health']['Status']` is present. Without a timeout, the timeout must be set by the application itself, as it is usually done for Docker containers healthcheck. During a healthcheck, an application, for example, can now install some of its own packages or do something other with its docker container. It should not communicate with the Nextcloud itself at this stage(healthcheck), because application is not considered enabled. --------- Signed-off-by: Alexander Piskun <bigcat88@icloud.com> Signed-off-by: Andrey Borysenko <andrey18106x@gmail.com> Co-authored-by: Andrey Borysenko <andrey18106x@gmail.com>
432 lines
7.0 KiB
CSS
432 lines
7.0 KiB
CSS
.app-version {
|
|
color: var(--color-text-maxcontrast);
|
|
}
|
|
|
|
.app-level span {
|
|
color: var(--color-text-maxcontrast);
|
|
background-color: rgba(0, 0, 0, 0);
|
|
border: 1px solid var(--color-text-maxcontrast);
|
|
border-radius: var(--border-radius);
|
|
padding: 3px 6px
|
|
}
|
|
|
|
.app-level a {
|
|
padding: 10px;
|
|
margin: -6px;
|
|
white-space: nowrap
|
|
}
|
|
|
|
.app-level .official {
|
|
background-position: left center;
|
|
background-position: 5px center;
|
|
padding-left: 25px
|
|
}
|
|
|
|
.app-level .supported {
|
|
border-color: var(--color-success);
|
|
background-position: left center;
|
|
background-position: 5px center;
|
|
padding-left: 25px;
|
|
color: var(--color-success)
|
|
}
|
|
|
|
.app-score {
|
|
position: relative;
|
|
top: 4px;
|
|
opacity: .5
|
|
}
|
|
|
|
.app-settings-content #searchresults {
|
|
display: none
|
|
}
|
|
|
|
#apps-list.store .section {
|
|
border: 0
|
|
}
|
|
|
|
#apps-list.store .app-name {
|
|
display: block;
|
|
margin: 5px 0
|
|
}
|
|
|
|
#apps-list.store .app-name, #apps-list.store .app-image * {
|
|
cursor: pointer
|
|
}
|
|
|
|
#apps-list.store .app-summary {
|
|
opacity: .7
|
|
}
|
|
|
|
#apps-list.store .app-image-icon .icon-settings-dark {
|
|
width: 100%;
|
|
height: 150px;
|
|
background-size: 45px;
|
|
opacity: .5
|
|
}
|
|
|
|
#apps-list.store .app-score-image {
|
|
height: 14px
|
|
}
|
|
|
|
#apps-list.store .actions {
|
|
margin-top: 10px
|
|
}
|
|
|
|
#app-sidebar #app-details-view h2 .icon-settings-dark, #app-sidebar #app-details-view h2 svg {
|
|
display: inline-block;
|
|
width: 16px;
|
|
height: 16px;
|
|
margin-right: 10px;
|
|
opacity: .7
|
|
}
|
|
|
|
#app-sidebar #app-details-view .app-level {
|
|
clear: right;
|
|
width: 100%
|
|
}
|
|
|
|
#app-sidebar #app-details-view .app-level .supported, #app-sidebar #app-details-view .app-level .official {
|
|
vertical-align: top
|
|
}
|
|
|
|
#app-sidebar #app-details-view .app-level .app-score-image {
|
|
float: right
|
|
}
|
|
|
|
#app-sidebar #app-details-view .app-author, #app-sidebar #app-details-view .app-licence {
|
|
color: var(--color-text-maxcontrast)
|
|
}
|
|
|
|
#app-sidebar #app-details-view .app-dependencies {
|
|
margin: 10px 0
|
|
}
|
|
|
|
#app-sidebar #app-details-view .app-description p {
|
|
margin: 10px 0
|
|
}
|
|
|
|
#app-sidebar #app-details-view .close {
|
|
position: absolute;
|
|
top: 0;
|
|
right: 0;
|
|
padding: 14px;
|
|
opacity: .5;
|
|
z-index: 1;
|
|
width: 44px;
|
|
height: 44px
|
|
}
|
|
|
|
#app-sidebar #app-details-view .actions {
|
|
display: flex;
|
|
align-items: center
|
|
}
|
|
|
|
#app-sidebar #app-details-view .actions .app-groups {
|
|
padding: 5px
|
|
}
|
|
|
|
#app-sidebar #app-details-view .appslink {
|
|
text-decoration: underline;
|
|
margin-right: 5px
|
|
}
|
|
|
|
#app-sidebar #app-details-view .app-level, #app-sidebar #app-details-view .actions, #app-sidebar #app-details-view .documentation, #app-sidebar #app-details-view .app-dependencies, #app-sidebar #app-details-view .app-description {
|
|
margin: 20px 0
|
|
}
|
|
|
|
@media only screen and (min-width: 1601px) {
|
|
.store .section {
|
|
width: 25%
|
|
}
|
|
|
|
.with-app-sidebar .store .section {
|
|
width: 33%
|
|
}
|
|
}
|
|
|
|
@media only screen and (max-width: 1600px) {
|
|
.store .section {
|
|
width: 25%
|
|
}
|
|
|
|
.with-app-sidebar .store .section {
|
|
width: 33%
|
|
}
|
|
}
|
|
|
|
@media only screen and (max-width: 1400px) {
|
|
.store .section {
|
|
width: 33%
|
|
}
|
|
|
|
.with-app-sidebar .store .section {
|
|
width: 50%
|
|
}
|
|
}
|
|
|
|
@media only screen and (max-width: 900px) {
|
|
.store .section {
|
|
width: 50%
|
|
}
|
|
|
|
.with-app-sidebar .store .section {
|
|
width: 100%
|
|
}
|
|
}
|
|
|
|
@media only screen and (max-width: 1024px) {
|
|
.store .section {
|
|
width: 50%
|
|
}
|
|
}
|
|
|
|
@media only screen and (max-width: 480px) {
|
|
.store .section {
|
|
width: 100%
|
|
}
|
|
}
|
|
|
|
@media only screen and (max-width: 900px) {
|
|
.apps-list.installed .app-version, .apps-list.installed .app-level {
|
|
display: none !important
|
|
}
|
|
}
|
|
|
|
@media only screen and (max-width: 500px) {
|
|
.apps-list.installed .app-groups {
|
|
display: none !important
|
|
}
|
|
}
|
|
|
|
.section {
|
|
margin-bottom: 0
|
|
}
|
|
|
|
.section:not(:last-child) {
|
|
border-bottom: 1px solid var(--color-border)
|
|
}
|
|
|
|
.section h2 {
|
|
margin-bottom: 22px
|
|
}
|
|
|
|
.section h2 .icon-info {
|
|
padding: 6px 20px;
|
|
vertical-align: text-bottom;
|
|
display: inline-block
|
|
}
|
|
|
|
.app-image {
|
|
position: relative;
|
|
height: 150px;
|
|
opacity: 1;
|
|
overflow: hidden
|
|
}
|
|
|
|
.app-description-toggle-show, .app-description-toggle-hide {
|
|
clear: both;
|
|
padding: 7px 0;
|
|
cursor: pointer;
|
|
opacity: .5
|
|
}
|
|
|
|
.app-description-container {
|
|
clear: both;
|
|
position: relative;
|
|
top: 7px
|
|
}
|
|
|
|
.app-description {
|
|
clear: both
|
|
}
|
|
|
|
#app-category-1 {
|
|
margin-bottom: 18px
|
|
}
|
|
|
|
#app-category-925 {
|
|
text-transform: capitalize
|
|
}
|
|
|
|
.app-dependencies {
|
|
color: #ce3702
|
|
}
|
|
|
|
.missing-dependencies {
|
|
list-style: initial;
|
|
list-style-type: initial;
|
|
list-style-position: inside
|
|
}
|
|
|
|
.apps-list {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
align-content: flex-start
|
|
}
|
|
|
|
.apps-list .section {
|
|
cursor: pointer
|
|
}
|
|
|
|
.apps-list .app-list-move {
|
|
transition: transform 1s
|
|
}
|
|
|
|
.apps-list #app-list-update-all {
|
|
margin-left: 10px
|
|
}
|
|
|
|
.apps-list .toolbar {
|
|
height: 60px;
|
|
padding: 38px;
|
|
padding-left: 70px;
|
|
width: 100%;
|
|
background-color: var(--color-main-background);
|
|
position: sticky;
|
|
top: 0;
|
|
z-index: 1;
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
|
|
.apps-list.installed {
|
|
margin-bottom: 100px
|
|
}
|
|
|
|
.apps-list.installed .apps-list-container {
|
|
display: table;
|
|
width: 100%;
|
|
height: auto
|
|
}
|
|
|
|
.apps-list.installed .section {
|
|
display: table-row;
|
|
padding: 0;
|
|
margin: 0
|
|
}
|
|
|
|
.apps-list.installed .section > * {
|
|
display: table-cell;
|
|
height: initial;
|
|
vertical-align: middle;
|
|
float: none;
|
|
border-bottom: 1px solid var(--color-border);
|
|
padding: 6px;
|
|
box-sizing: border-box
|
|
}
|
|
|
|
.apps-list.installed .section.selected {
|
|
background-color: var(--color-background-dark)
|
|
}
|
|
|
|
.apps-list.installed .groups-enable {
|
|
margin-top: 0
|
|
}
|
|
|
|
.apps-list.installed .groups-enable label {
|
|
margin-right: 3px
|
|
}
|
|
|
|
.apps-list.installed .app-image {
|
|
width: 44px;
|
|
height: auto;
|
|
text-align: right
|
|
}
|
|
|
|
.apps-list.installed .app-image-icon svg, .apps-list.installed .app-image-icon .icon-settings-dark {
|
|
margin-top: 5px;
|
|
width: 20px;
|
|
height: 20px;
|
|
opacity: .5;
|
|
background-size: cover;
|
|
display: inline-block
|
|
}
|
|
|
|
.apps-list.installed .actions {
|
|
text-align: right
|
|
}
|
|
|
|
.apps-list.installed .actions .icon-loading-small {
|
|
display: inline-block;
|
|
margin-right: 10px
|
|
}
|
|
|
|
.apps-list:not(.installed) .app-image-icon svg {
|
|
position: absolute;
|
|
bottom: 43px;
|
|
width: 64px;
|
|
height: 64px;
|
|
opacity: .1
|
|
}
|
|
|
|
.apps-list.hidden {
|
|
display: none
|
|
}
|
|
|
|
.apps-list .section {
|
|
position: relative;
|
|
flex: 0 0 auto
|
|
}
|
|
|
|
.apps-list .section h2.app-name {
|
|
display: block;
|
|
margin: 8px 0
|
|
}
|
|
|
|
.apps-list .section:hover {
|
|
background-color: var(--color-background-dark)
|
|
}
|
|
|
|
.apps-list .app-description p {
|
|
margin: 10px 0
|
|
}
|
|
|
|
.apps-list .app-description ul {
|
|
list-style: disc
|
|
}
|
|
|
|
.apps-list .app-description ol {
|
|
list-style: decimal
|
|
}
|
|
|
|
.apps-list .app-description ol ol, .apps-list .app-description ol ul {
|
|
padding-left: 15px
|
|
}
|
|
|
|
.apps-list .app-description > ul, .apps-list .app-description > ol {
|
|
margin-left: 19px
|
|
}
|
|
|
|
.apps-list .app-description ul ol, .apps-list .app-description ul ul {
|
|
padding-left: 15px
|
|
}
|
|
|
|
.apps-list .apps-header {
|
|
position: relative
|
|
}
|
|
|
|
.apps-list .apps-header div {
|
|
display: table-cell;
|
|
height: 70px
|
|
}
|
|
|
|
.apps-list .apps-header h2 {
|
|
padding-left: 6px;
|
|
padding-top: 15px;
|
|
margin-bottom: 12px
|
|
}
|
|
|
|
.apps-list .apps-header h2 .enable {
|
|
position: relative;
|
|
top: -1px;
|
|
margin-left: 12px
|
|
}
|
|
|
|
.apps-list .apps-header h2 + .section {
|
|
margin-top: 50px
|
|
}
|
|
|
|
#apps-list-search .section h2 {
|
|
margin-bottom: 0
|
|
}
|