Skip to content

Commit a7bb474

Browse files
marie-jCyrille Bourgois
authored andcommitted
feat: add empty component
Co-authored-by: Cyrille Bourgois <cyrille.bourgois@corp.ovh.com>
1 parent 406c0b5 commit a7bb474

File tree

8 files changed

+88
-0
lines changed

8 files changed

+88
-0
lines changed
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import controller from './empty.controller';
2+
import template from './empty.html';
3+
4+
export default {
5+
controller,
6+
template,
7+
transclude: true,
8+
bindings: {
9+
imageAlt: '<',
10+
imageSource: '<',
11+
guides: '<?',
12+
},
13+
};
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import placeholder from './placeholder.svg';
2+
3+
export default class {
4+
constructor() {
5+
this.placeholder = placeholder;
6+
}
7+
}
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
<div class="container-fluid px-0 pci-project-empty">
2+
<div class="row">
3+
<div class="col-md-3">
4+
<div class="p-5" data-ng-class="{ 'placeholder' : !$ctrl.imageSource }">
5+
<img
6+
data-ng-src="{{:: $ctrl.imageSource || $ctrl.placeholder }}"
7+
data-ng-attr-alt="{{:: $ctrl.imageAlt }}"
8+
alt=""
9+
class="w-100">
10+
</div>
11+
</div>
12+
<div class="col-md-9" data-ng-transclude></div>
13+
</div>
14+
15+
<aside class="row pt-5">
16+
<div class="col-sm-6 col-md-4 mb-4" data-ng-repeat="guide in $ctrl.guides track by $index">
17+
<div class="py-2 oui-tile d-flex align-items-start">
18+
<span class="d-block oui-icon oui-icon-guides" aria-hidden="true"></span>
19+
<div class="ml-2">
20+
<h2 class="oui-tile__title oui-heading_4" data-ng-bind=":: guide.title"></h2>
21+
<div class="oui-tile__body mt-3">
22+
<p class="oui-tile__description" data-ng-bind=":: guide.description"></p>
23+
<a class="oui-link_icon"
24+
data-ng-href="{{:: guide.link }}"
25+
target="_blank"
26+
rel="noopener">
27+
<span data-translate="pci_project_empty_more"></span>
28+
<span class="oui-icon oui-icon-external_link" aria-hidden="true"></span>
29+
<span class="sr-only" data-translate="pci_project_empty_new_tab"></span>
30+
</a>
31+
</div>
32+
</div>
33+
</div>
34+
</div>
35+
</aside>
36+
</div>
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import angular from 'angular';
2+
import 'angular-translate';
3+
4+
import component from './empty.component';
5+
6+
import './index.less';
7+
8+
const moduleName = 'ovhManagerPciComponentsProjectEmpty';
9+
10+
angular
11+
.module(moduleName, [
12+
'pascalprecht.translate',
13+
])
14+
.component('pciProjectEmpty', component);
15+
16+
export default moduleName;
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
.pci-project-empty {
2+
@import '~ovh-ui-kit/packages/oui-color/_variables.less';
3+
4+
.placeholder {
5+
background-color: @oui-color-mischka;
6+
}
7+
}
Lines changed: 3 additions & 0 deletions
Loading
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"pci_project_empty_more": "En savoir plus",
3+
"pci_project_empty_new_tab": "Nouvel onglet"
4+
}

packages/manager/modules/pci/src/components/project/index.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import 'ovh-api-services';
55
import add from './add';
66
import billing from './billing';
77
import compute from './compute';
8+
import empty from './empty';
89
import rights from './rights';
910

1011
import factory from './factory';
@@ -17,6 +18,7 @@ angular
1718
add,
1819
billing,
1920
compute,
21+
empty,
2022
'ovh-api-services',
2123
rights,
2224
])

0 commit comments

Comments
 (0)