Implmement the discovery layout for the Rocketlets

pull/9666/head
Bradley Hilton 9 years ago
parent b8553d7ac0
commit d74cc942fa
No known key found for this signature in database
GPG Key ID: 0666B2C24C43C358
  1. 52
      packages/rocketchat-google-vision/.npm/package/npm-shrinkwrap.json
  2. 48
      packages/rocketchat-rocketlets/client/admin/rocketlets.html
  3. 93
      packages/rocketchat-theme/client/imports/components/discovery.css
  4. 62
      packages/rocketchat-theme/client/imports/components/tab.css
  5. 7
      packages/rocketchat-theme/client/imports/general/variables.css
  6. 4
      packages/rocketchat-theme/client/main.css

@ -1,8 +1,8 @@
{
"dependencies": {
"ajv": {
"version": "5.2.3",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-5.2.3.tgz",
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-5.3.0.tgz",
"from": "ajv@>=5.1.0 <6.0.0"
},
"ansi-regex": {
@ -247,6 +247,11 @@
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz",
"from": "fast-deep-equal@>=1.0.0 <2.0.0"
},
"fast-json-stable-stringify": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
"from": "fast-json-stable-stringify@>=2.0.0 <3.0.0"
},
"forever-agent": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
@ -285,7 +290,14 @@
"globby": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
"from": "globby@>=6.1.0 <7.0.0"
"from": "globby@>=6.1.0 <7.0.0",
"dependencies": {
"pify": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"from": "pify@>=2.0.0 <3.0.0"
}
}
},
"google-auth-library": {
"version": "0.10.0",
@ -919,8 +931,8 @@
}
},
"gtoken": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/gtoken/-/gtoken-1.2.2.tgz",
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/gtoken/-/gtoken-1.2.3.tgz",
"from": "gtoken@>=1.2.1 <2.0.0"
},
"har-schema": {
@ -1023,21 +1035,11 @@
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz",
"from": "json-schema-traverse@>=0.3.0 <0.4.0"
},
"json-stable-stringify": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz",
"from": "json-stable-stringify@>=1.0.1 <2.0.0"
},
"json-stringify-safe": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
"from": "json-stringify-safe@>=5.0.1 <5.1.0"
},
"jsonify": {
"version": "0.0.0",
"resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
"from": "jsonify@>=0.0.0 <0.1.0"
},
"jsprim": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
@ -1079,8 +1081,8 @@
"from": "long@>=3.0.0 <4.0.0"
},
"make-dir": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.0.0.tgz",
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.1.0.tgz",
"from": "make-dir@>=1.0.0 <2.0.0"
},
"methmeth": {
@ -1091,7 +1093,7 @@
"mime": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz",
"from": "mime@>=1.2.11 <2.0.0"
"from": "mime@>=1.4.1 <2.0.0"
},
"mime-db": {
"version": "1.30.0",
@ -1164,9 +1166,9 @@
"from": "performance-now@>=2.1.0 <3.0.0"
},
"pify": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"from": "pify@>=2.3.0 <3.0.0"
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
"from": "pify@>=3.0.0 <4.0.0"
},
"pinkie": {
"version": "2.0.4",
@ -1229,8 +1231,8 @@
"from": "request@>=2.79.0 <3.0.0"
},
"retry-request": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/retry-request/-/retry-request-3.0.1.tgz",
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/retry-request/-/retry-request-3.1.0.tgz",
"from": "retry-request@>=3.0.0 <4.0.0"
},
"rgb-hex": {
@ -1249,8 +1251,8 @@
"from": "signal-exit@>=3.0.2 <4.0.0"
},
"sntp": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/sntp/-/sntp-2.0.2.tgz",
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz",
"from": "sntp@>=2.0.0 <3.0.0"
},
"split-array-stream": {

@ -9,16 +9,48 @@
</header>
<div class="content">
{{#requiresPermission 'manage-rocketlets'}}
{{#each rocketlets}}
<ul class="sound-info row-link">
<li>{{name}}&nbsp;<i class="icon-wrench manage"></i></li>
</ul>
{{/each}}
<div class="rc-discovery">
<div class="rc-discovery-wrap">
<div class="rc-discovery__item">
<div class="rc-discovery__item__image-wrap">
<div class="rc-discovery__item__image"></div>
</div>
<div class="rc-discovery__item__footer">
<div class="rc-discovery__container">
<div class="discovery__item__footer__title">Add New</div>
<div class="rc-discovery__item__footer__description">Install or import a new Rocketlet.</div>
</div>
<button class="rc-button rc-button--square rc-tooltip" aria-label="Install">
<svg class="rc-icon toolbar__icon toolbar__icon--plus toolbar__search-create-channel" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-plus"></use>
</svg>
</button>
</div>
</div>
</div>
{{#each rocketlets}}
<div class="rc-discovery-wrap">
<div class="rc-discovery__item">
<div class="rc-discovery__item__image-wrap">
<div class="rc-discovery__item__image"></div>
</div>
<div class="rc-discovery__item__footer">
<div class="rc-discovery__container">
<div class="discovery__item__footer__title">{{name}}</div>
<div class="rc-discovery__item__footer__description">{{description}}de</div>
</div>
<button class="rc-button rc-button--square rc-tooltip" aria-label="Install">
<svg class="rc-icon toolbar__icon toolbar__icon--plus toolbar__search-create-channel" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-plus"></use>
</svg>
</button>
</div>
</div>
</div>
{{/each}}
</div>
{{/requiresPermission}}
</div>
</section>
{{#with flexData}}
{{> flexTabBar}}
{{/with}}
</div>
</template>

@ -0,0 +1,93 @@
.rc-discovery {
justify-content: center;
&__empty {
padding: 40px;
text-align: center;
color: var(--color-gray);
}
&-wrap {
display: flex;
margin: 0 -12px;
flex-wrap: wrap;
justify-content: flex-start;
}
&__container {
flex: 1 1 100%;
}
&__item {
min-width: 304px;
margin: 12px;
padding: 10px;
border-radius: 2px;
background: #f7f8fa;
&:hover &__image {
transform: scale(1.1);
}
&__image-wrap {
overflow: hidden;
height: 128px;
}
&__image {
height: 128px;
transition: all 0.3s;
border-radius: 2px;
background: #cccccc;
background: url(http://www.clickgratis.com.br/fotos-imagens/gatinho/aHR0cDovL3d3dy5jb21vZmF6ZXIub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDEyLzA3L2dhdGluaG8tcGVyc2EuanBn.jpg);
background-repeat: no-repeat;
background-position: 50%;
background-size: cover;
}
&__footer {
display: flex;
padding: 10px 10px 0;
font-weight: 500;
line-height: 20px;
align-items: center;
&__title {
margin-bottom: 4px;
font-size: 18px;
}
&__description {
color: #9ea2a8;
font-size: 14px;
}
}
& .rc-button {
flex: 0;
width: 20px;
height: 20px;
color: #1d74f5;
border-color: #1d74f5;
border-radius: 4px;
& .rc-icon {
font-size: 1rem;
}
}
}
}

@ -0,0 +1,62 @@
.rc-tabs {
position: relative;
display: flex;
margin: 0 calc(var(--tabs-padding) / -2);
padding: calc(var(--tabs-padding) / 2);
list-style: none;
color: var(--color-gray);
font-size: 14px;
&::before {
position: absolute;
bottom: 0;
width: 100%;
height: 2px;
content: '';
background: var(--color-gray-light);
}
&__tab {
position: relative;
margin: calc(var(--tabs-padding) / 2);
padding: 0 5px;
cursor: pointer;
transition: all 0.3s;
&-link {
color: inherit !important;
}
&:hover {
opacity: 0.5;
}
&.active,
&:active {
color: #1d74f5;
&::before {
position: absolute;
bottom: calc(var(--tabs-padding) * -1);
left: 0;
width: 100%;
height: 2px;
content: '';
background: #1d74f5;
}
}
}
}

@ -4,7 +4,7 @@
*/
--color-darkest: #1f2329;
--color-dark: #2f343d;
--color-dark: #2f343d;
--color-dark-medium: #414852;
--color-dark-light: #6c727a;
--color-gray: #9ea2a8;
@ -273,4 +273,9 @@
--message-box-editing-color: #fff5df;
--message-box-popover-title-text-color: var(--color-gray);
--message-box-popover-title-text-size: 0.75rem;
/*
* Tabs
*/
--tabs-padding: 1rem;
}

@ -38,5 +38,9 @@
@import 'imports/components/modal/full-modal.css';
@import 'imports/components/modal/create-channel.css';
/* Tabs */
@import 'imports/components/tab.css';
@import 'imports/components/discovery.css';
/* RTL */
@import 'imports/general/rtl.css';

Loading…
Cancel
Save