chore: change static logic to integrate with broader architecture
This commit is contained in:
parent
2937a37cdb
commit
76c6d18695
@ -23,3 +23,6 @@ packages/*/lib/app
|
||||
*.map
|
||||
*.png
|
||||
*.snap
|
||||
*.ttf
|
||||
*.sh
|
||||
*.txt
|
@ -49,9 +49,9 @@
|
||||
"regenerator-runtime": "0.11.1",
|
||||
"pify": "3.0.0",
|
||||
"parse-json": "3.0.0",
|
||||
"graphql": "0.13.0",
|
||||
"hoist-non-react-statics": "2.5.0",
|
||||
"styled-components": "3.2.1",
|
||||
"stylis-rule-sheet": "0.0.7",
|
||||
"stylis-rule-sheet": "0.0.10",
|
||||
"react": "16.2.0",
|
||||
"breeze-nexttick": "0.2.1",
|
||||
"isarray": "1.0.0"
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "joyent-icons",
|
||||
"version": "5.0.0",
|
||||
"version": "5.1.0",
|
||||
"private": true,
|
||||
"license": "MPL-2.0",
|
||||
"repository": "github:yldio/joyent-portal",
|
||||
@ -31,7 +31,7 @@
|
||||
"babel-preset-joyent-portal": "^7.0.1",
|
||||
"eslint": "^4.18.1",
|
||||
"eslint-config-joyent-portal": "^3.3.1",
|
||||
"joyent-react-scripts": "^7.4.0",
|
||||
"joyent-react-scripts": "^8.0.2",
|
||||
"react": "^16.2.0",
|
||||
"redrun": "^5.10.5"
|
||||
},
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "joyent-logo-assets",
|
||||
"version": "1.0.0",
|
||||
"version": "1.1.0",
|
||||
"private": true,
|
||||
"license": "MPL-2.0",
|
||||
"repository": "github:yldio/joyent-portal",
|
||||
@ -31,7 +31,7 @@
|
||||
"execa": "^0.9.0",
|
||||
"globby": "^8.0.1",
|
||||
"htmltojsx": "^0.3.0",
|
||||
"joyent-react-scripts": "^7.4.0",
|
||||
"joyent-react-scripts": "^8.0.2",
|
||||
"mz": "^2.7.0",
|
||||
"prettier": "^1.11.0",
|
||||
"react": "^16.2.0",
|
||||
|
@ -1,26 +1,30 @@
|
||||
const Inert = require('inert');
|
||||
const Path = require('path');
|
||||
const RenderReact = require('hapi-render-react');
|
||||
const Wreck = require('wreck');
|
||||
const Url = require('url');
|
||||
const Intercept = require('apr-intercept');
|
||||
const Fs = require('mz/fs');
|
||||
|
||||
const { NAMESPACE = 'images' } = process.env;
|
||||
|
||||
exports.register = async server => {
|
||||
const relativeTo = Path.join(__dirname, 'app');
|
||||
const buildRoot = Path.join(__dirname, `../build/${NAMESPACE}/static/`);
|
||||
const publicRoot = Path.join(__dirname, `../public/static/`);
|
||||
|
||||
await server.register([
|
||||
{
|
||||
plugin: Inert
|
||||
},
|
||||
{
|
||||
plugin: RenderReact,
|
||||
options: {
|
||||
relativeTo: Path.join(__dirname, 'app')
|
||||
}
|
||||
plugin: RenderReact
|
||||
}
|
||||
]);
|
||||
|
||||
server.route([
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/service-worker.js',
|
||||
path: `/${NAMESPACE}/service-worker.js`,
|
||||
config: {
|
||||
auth: false,
|
||||
handler: {
|
||||
@ -32,7 +36,7 @@ exports.register = async server => {
|
||||
},
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/favicon.ico',
|
||||
path: `/${NAMESPACE}/favicon.ico`,
|
||||
config: {
|
||||
auth: false,
|
||||
handler: {
|
||||
@ -44,92 +48,42 @@ exports.register = async server => {
|
||||
},
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/font/{pathname*}',
|
||||
path: `/${NAMESPACE}/static/{rest*}`,
|
||||
config: {
|
||||
auth: false,
|
||||
auth: false
|
||||
},
|
||||
handler: async (request, h) => {
|
||||
const { params } = request;
|
||||
const { pathname } = params;
|
||||
const { rest } = params;
|
||||
|
||||
const location = Url.format({
|
||||
protocol: 'https:',
|
||||
slashes: true,
|
||||
host: 'fonts.gstatic.com',
|
||||
pathname
|
||||
});
|
||||
const publicPathname = Path.join(publicRoot, rest);
|
||||
const buildPathname = Path.join(buildRoot, rest);
|
||||
|
||||
const res = await Wreck.request('GET', location);
|
||||
return h.response(res);
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/fonts/css',
|
||||
config: {
|
||||
auth: false,
|
||||
handler: async (request, h) => {
|
||||
const { query, headers } = request;
|
||||
const { family } = query;
|
||||
const { host } = headers;
|
||||
const url = Url.parse(`http://${host}`);
|
||||
|
||||
const location = Url.format({
|
||||
protocol: 'https:',
|
||||
slashes: true,
|
||||
host: 'fonts.googleapis.com',
|
||||
pathname: '/css',
|
||||
query: { family }
|
||||
});
|
||||
|
||||
const res = await Wreck.request('GET', location);
|
||||
const body = await Wreck.read(res);
|
||||
|
||||
const _body = body
|
||||
.toString()
|
||||
.replace(
|
||||
/https:\/\/fonts\.gstatic\.com/g,
|
||||
`http://${url.host}/font`
|
||||
const [err] = await Intercept(
|
||||
Fs.access(publicPathname, Fs.constants.R_OK)
|
||||
);
|
||||
|
||||
return h
|
||||
.response(_body)
|
||||
.header('content-type', res.headers['content-type'])
|
||||
.header('expires', res.headers.expires)
|
||||
.header('date', res.headers.date)
|
||||
.header('cache-control', res.headers['cache-control']);
|
||||
}
|
||||
const file = err ? buildPathname : publicPathname;
|
||||
return h.file(file, { confine: false });
|
||||
}
|
||||
},
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/static/{path*}',
|
||||
config: {
|
||||
auth: false,
|
||||
method: '*',
|
||||
path: `/${NAMESPACE}/~server-error`,
|
||||
handler: {
|
||||
directory: {
|
||||
path: Path.join(__dirname, '../build/static/'),
|
||||
redirectToSlash: true,
|
||||
index: false
|
||||
}
|
||||
view: {
|
||||
name: 'server-error',
|
||||
relativeTo
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
method: '*',
|
||||
path: '/~server-error',
|
||||
path: `/${NAMESPACE}/{path*}`,
|
||||
handler: {
|
||||
view: {
|
||||
name: 'server-error'
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
method: '*',
|
||||
path: '/{path*}',
|
||||
handler: {
|
||||
view: {
|
||||
name: 'app'
|
||||
name: 'app',
|
||||
relativeTo
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "my-joy-images",
|
||||
"version": "1.1.8",
|
||||
"version": "1.3.6",
|
||||
"private": true,
|
||||
"license": "MPL-2.0",
|
||||
"repository": "github:yldio/joyent-portal",
|
||||
"main": "lib/index.js",
|
||||
"scripts": {
|
||||
"dev": "NODE_ENV=development REACT_APP_GQL_PORT=4000 PORT=3070 joyent-react-scripts start",
|
||||
"dev": "NAMESPACE=images NODE_ENV=development REACT_APP_GQL_PORT=4000 PORT=3070 joyent-react-scripts start",
|
||||
"build:test": "echo 0",
|
||||
"build:lib": "echo 0",
|
||||
"build:bundle": "NAMESPACE=images NODE_ENV=production redrun -p build:frontend build:ssr",
|
||||
@ -25,22 +25,29 @@
|
||||
"apollo-client": "^2.2.5",
|
||||
"apollo-link-http": "^1.5.2",
|
||||
"apr-intercept": "^3.0.3",
|
||||
"apr-reduce": "^3.0.3",
|
||||
"cross-fetch": "^2.1.0",
|
||||
"date-fns": "^1.29.0",
|
||||
"declarative-redux-form": "^2.0.8",
|
||||
"exenv": "^1.2.2",
|
||||
"force-array": "^3.1.0",
|
||||
"fuse.js": "^3.2.0",
|
||||
"hapi-render-react": "^2.2.0",
|
||||
"hapi-render-react-joyent-document": "^5.0.0",
|
||||
"joyent-logo-assets": "^1.0.0",
|
||||
"inert": "^5.1.0",
|
||||
"joyent-logo-assets": "^1.1.0",
|
||||
"joyent-react-styled-flexboxgrid": "^2.2.3",
|
||||
"joyent-ui-toolkit": "^5.0.0",
|
||||
"joyent-ui-toolkit": "^6.0.0",
|
||||
"lodash.assign": "^4.2.0",
|
||||
"lodash.find": "^4.6.0",
|
||||
"lodash.get": "^4.4.2",
|
||||
"lodash.isfinite": "^3.3.2",
|
||||
"lodash.isfunction": "^3.0.9",
|
||||
"lodash.keys": "^4.2.0",
|
||||
"lodash.omit": "^4.5.0",
|
||||
"lodash.uniqby": "^4.7.0",
|
||||
"lunr": "^2.1.6",
|
||||
"mz": "^2.7.0",
|
||||
"param-case": "^2.1.1",
|
||||
"react": "^16.2.0",
|
||||
"react-apollo": "^2.0.4",
|
||||
@ -66,7 +73,7 @@
|
||||
"eslint-config-joyent-portal": "^3.3.1",
|
||||
"jest-image-snapshot": "^2.3.0",
|
||||
"jest-styled-components": "^5.0.0",
|
||||
"joyent-react-scripts": "^7.4.0",
|
||||
"joyent-react-scripts": "^8.0.2",
|
||||
"react-screenshot-renderer": "^1.1.2",
|
||||
"react-test-renderer": "^16.2.0",
|
||||
"redrun": "^5.10.5"
|
||||
|
31
packages/my-joy-images/public/static/css/libre-franklin.css
Normal file
31
packages/my-joy-images/public/static/css/libre-franklin.css
Normal file
@ -0,0 +1,31 @@
|
||||
@font-face {
|
||||
font-family: 'Libre Franklin';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Libre Franklin'), local('LibreFranklin-Regular'),
|
||||
url(../fonts/libre-franklin/libre-franklin-regular.ttf) format('truetype');
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Libre Franklin';
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
src: local('Libre Franklin Medium'), local('LibreFranklin-Medium'),
|
||||
url(../fonts/libre-franklin/libre-franklin-medium.ttf) format('truetype');
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Libre Franklin';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Libre Franklin SemiBold'), local('LibreFranklin-SemiBold'),
|
||||
url(../fonts/libre-franklin/libre-franklin-semibold.ttf) format('truetype');
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Libre Franklin';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('Libre Franklin Bold'), local('LibreFranklin-Bold'),
|
||||
url(../fonts/libre-franklin/libre-franklin-bold.ttf) format('truetype');
|
||||
}
|
15
packages/my-joy-images/public/static/css/roboto-mono.css
Normal file
15
packages/my-joy-images/public/static/css/roboto-mono.css
Normal file
@ -0,0 +1,15 @@
|
||||
@font-face {
|
||||
font-family: 'Roboto Mono';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Roboto Mono'), local('RobotoMono-Regular'),
|
||||
url(../fonts/roboto-mono/roboto-mono-regular.ttf) format('truetype');
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Roboto Mono';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('Roboto Mono Bold'), local('RobotoMono-Bold'),
|
||||
url(../fonts/roboto-mono/roboto-mono-bold.ttf) format('truetype');
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
93
packages/my-joy-images/public/static/fonts/libre-franklin/license.txt
Executable file
93
packages/my-joy-images/public/static/fonts/libre-franklin/license.txt
Executable file
@ -0,0 +1,93 @@
|
||||
Copyright (c) 2015, Impallari Type (www.impallari.com)
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
|
||||
-----------------------------------------------------------
|
||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||
-----------------------------------------------------------
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||
development of collaborative font projects, to support the font creation
|
||||
efforts of academic and linguistic communities, and to provide a free and
|
||||
open framework in which fonts may be shared and improved in partnership
|
||||
with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and
|
||||
redistributed freely as long as they are not sold by themselves. The
|
||||
fonts, including any derivative works, can be bundled, embedded,
|
||||
redistributed and/or sold with any software provided that any reserved
|
||||
names are not used by derivative works. The fonts and derivatives,
|
||||
however, cannot be released under any other type of license. The
|
||||
requirement for fonts to remain under this license does not apply
|
||||
to any document created using the fonts or their derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright
|
||||
Holder(s) under this license and clearly marked as such. This may
|
||||
include source files, build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the
|
||||
copyright statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as
|
||||
distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||
or substituting -- in part or in whole -- any of the components of the
|
||||
Original Version, by changing formats or by porting the Font Software to a
|
||||
new environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical
|
||||
writer or other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||
redistribute, and sell modified and unmodified copies of the Font
|
||||
Software, subject to the following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components,
|
||||
in Original or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled,
|
||||
redistributed and/or sold with any software, provided that each copy
|
||||
contains the above copyright notice and this license. These can be
|
||||
included either as stand-alone text files, human-readable headers or
|
||||
in the appropriate machine-readable metadata fields within text or
|
||||
binary files as long as those fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font
|
||||
Name(s) unless explicit written permission is granted by the corresponding
|
||||
Copyright Holder. This restriction only applies to the primary font name as
|
||||
presented to the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||
Software shall not be used to promote, endorse or advertise any
|
||||
Modified Version, except to acknowledge the contribution(s) of the
|
||||
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||
permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole,
|
||||
must be distributed entirely under this license, and must not be
|
||||
distributed under any other license. The requirement for fonts to
|
||||
remain under this license does not apply to any document created
|
||||
using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are
|
||||
not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||
OTHER DEALINGS IN THE FONT SOFTWARE.
|
202
packages/my-joy-images/public/static/fonts/roboto-mono/license.txt
Executable file
202
packages/my-joy-images/public/static/fonts/roboto-mono/license.txt
Executable file
@ -0,0 +1,202 @@
|
||||
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
BIN
packages/my-joy-images/public/static/fonts/roboto-mono/roboto-mono-bold.ttf
Executable file
BIN
packages/my-joy-images/public/static/fonts/roboto-mono/roboto-mono-bold.ttf
Executable file
Binary file not shown.
BIN
packages/my-joy-images/public/static/fonts/roboto-mono/roboto-mono-regular.ttf
Executable file
BIN
packages/my-joy-images/public/static/fonts/roboto-mono/roboto-mono-regular.ttf
Executable file
Binary file not shown.
@ -16,12 +16,23 @@ const getState = request => {
|
||||
const _font = get(theme, 'font.href', () => '');
|
||||
const _mono = get(theme, 'monoFont.href', () => '');
|
||||
const _addr = url.parse(`http://${req.headers.host}`);
|
||||
|
||||
const _theme = Object.assign({}, theme, {
|
||||
font: Object.assign({}, theme.font, {
|
||||
href: () => _font(_addr)
|
||||
href: () =>
|
||||
_font(
|
||||
Object.assign(_addr, {
|
||||
namespace: 'images'
|
||||
})
|
||||
)
|
||||
}),
|
||||
monoFont: Object.assign({}, theme.monoFont, {
|
||||
href: () => _mono(_addr)
|
||||
href: () =>
|
||||
_mono(
|
||||
Object.assign(_addr, {
|
||||
namespace: 'images'
|
||||
})
|
||||
)
|
||||
})
|
||||
});
|
||||
|
||||
|
@ -1,62 +0,0 @@
|
||||
import React, { Component } from 'react';
|
||||
import scrollToElement from 'scroll-to-element';
|
||||
|
||||
function slideDown(el) {
|
||||
const { style } = el;
|
||||
const INITIAL = 'initial';
|
||||
const HIDDEN = 'hidden';
|
||||
|
||||
// Get element height
|
||||
style.transition = INITIAL;
|
||||
style.visibility = HIDDEN;
|
||||
style.maxHeight = INITIAL;
|
||||
const offsetHeight = el.offsetHeight;
|
||||
const height = offsetHeight + 'px';
|
||||
style.removeProperty('visibility');
|
||||
style.maxHeight = '0';
|
||||
style.overflow = HIDDEN;
|
||||
|
||||
const timing = `${parseInt(height, 10) * 1.9}ms linear`;
|
||||
|
||||
// Begin transition
|
||||
style.transition = `max-height ${timing}, opacity ${timing}`;
|
||||
requestAnimationFrame(() => {
|
||||
style.maxHeight = height;
|
||||
style.opacity = '1';
|
||||
});
|
||||
|
||||
window.setTimeout(() => {
|
||||
style.removeProperty('overflow');
|
||||
style.removeProperty('max-height');
|
||||
}, 300);
|
||||
}
|
||||
|
||||
const Animated = WrappedComponent =>
|
||||
class Animated extends Component {
|
||||
componentDidUpdate() {
|
||||
const { match, step } = this.props;
|
||||
if (match.params.step === step) {
|
||||
slideDown(this.wrapper);
|
||||
scrollToElement(this.wrapper, {
|
||||
offset: -50
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
shouldComponentUpdate = nextProps =>
|
||||
this.props.match.params.step !== nextProps.match.params.step;
|
||||
|
||||
render() {
|
||||
return (
|
||||
<div
|
||||
ref={w => {
|
||||
this.wrapper = w;
|
||||
}}
|
||||
>
|
||||
<WrappedComponent {...this.props} />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
};
|
||||
|
||||
export default Animated;
|
@ -11,7 +11,6 @@ import intercept from 'apr-intercept';
|
||||
import get from 'lodash.get';
|
||||
import uniqBy from 'lodash.uniqby';
|
||||
import omit from 'lodash.omit';
|
||||
import find from 'lodash.find';
|
||||
|
||||
import {
|
||||
ViewContainer,
|
||||
|
@ -103,9 +103,9 @@ export default compose(
|
||||
ssr: false,
|
||||
pollInterval: 1000
|
||||
}),
|
||||
props: ({ data: { images, loading, error, refetch } }) => ({
|
||||
images,
|
||||
index: new Fuse(images, {
|
||||
props: ({ data: { images = [], loading, error, refetch } }) => ({
|
||||
images: images || [],
|
||||
index: new Fuse(images || [], {
|
||||
keys: ['name', 'os', 'version', 'state', 'type']
|
||||
}),
|
||||
loading,
|
||||
|
@ -1,12 +1,11 @@
|
||||
import React, { Fragment } from 'react';
|
||||
import { compose, graphql } from 'react-apollo';
|
||||
import { Margin } from 'styled-components-spacing';
|
||||
import find from 'lodash.find';
|
||||
import get from 'lodash.get';
|
||||
import remcalc from 'remcalc';
|
||||
import { connect } from 'react-redux';
|
||||
import intercept from 'apr-intercept';
|
||||
import { set } from 'react-redux-values';
|
||||
import get from 'lodash.get';
|
||||
import remcalc from 'remcalc';
|
||||
|
||||
import {
|
||||
ViewContainer,
|
||||
|
@ -6,7 +6,6 @@ import ReduxForm from 'declarative-redux-form';
|
||||
import { destroy } from 'redux-form';
|
||||
import { set } from 'react-redux-values';
|
||||
import intercept from 'apr-intercept';
|
||||
import find from 'lodash.find';
|
||||
import get from 'lodash.get';
|
||||
import remcalc from 'remcalc';
|
||||
import Fuse from 'fuse.js';
|
||||
@ -133,7 +132,7 @@ export default compose(
|
||||
}
|
||||
}),
|
||||
props: ({ data }) => {
|
||||
const { loading = false, error = null, image, refetch, ...rest } = data;
|
||||
const { loading = false, error = null, image, refetch } = data;
|
||||
|
||||
const tags = get(image || {}, 'tags', []);
|
||||
const index = new Fuse(tags, {
|
||||
|
@ -7,8 +7,7 @@ import { BrowserRouter } from 'react-router-dom';
|
||||
import isFunction from 'lodash.isfunction';
|
||||
import isFinite from 'lodash.isfinite';
|
||||
|
||||
import { theme } from 'joyent-ui-toolkit';
|
||||
|
||||
import theme from '@state/theme';
|
||||
import createStore from '@state/redux-store';
|
||||
import createClient from '@state/apollo-client';
|
||||
import App from './app';
|
||||
|
@ -68,6 +68,8 @@ export default () => (
|
||||
|
||||
<Route path="/images/~server-error" component={ServerError} />
|
||||
|
||||
<Route path="/" exact component={() => <Redirect to="/images" />} />
|
||||
|
||||
<noscript>
|
||||
<ViewContainer main>
|
||||
<Message warning>
|
||||
|
21
packages/my-joy-images/src/state/theme.js
Normal file
21
packages/my-joy-images/src/state/theme.js
Normal file
@ -0,0 +1,21 @@
|
||||
import { theme } from 'joyent-ui-toolkit';
|
||||
|
||||
const font = theme.font.href({
|
||||
namespace: 'images'
|
||||
});
|
||||
|
||||
const monoFont = theme.monoFont.href({
|
||||
namespace: 'images'
|
||||
});
|
||||
|
||||
export default {
|
||||
...theme,
|
||||
font: {
|
||||
...theme.font,
|
||||
href: () => font
|
||||
},
|
||||
monoFont: {
|
||||
...theme.monoFont,
|
||||
href: () => monoFont
|
||||
}
|
||||
};
|
@ -1,17 +1,17 @@
|
||||
const Inert = require('inert');
|
||||
const resolvePkg = require('resolve-pkg');
|
||||
const Path = require('path');
|
||||
const RenderReact = require('hapi-render-react');
|
||||
const Wreck = require('wreck');
|
||||
const Url = require('url');
|
||||
const Intercept = require('apr-intercept');
|
||||
const Fs = require('mz/fs');
|
||||
|
||||
const ImagesRoot = resolvePkg('my-joy-images', {
|
||||
cwd: __dirname
|
||||
});
|
||||
const { NAMESPACE = 'instances' } = process.env;
|
||||
|
||||
exports.register = async server => {
|
||||
const InstancesRelativeTo = Path.join(__dirname, 'app');
|
||||
const ImagesRelativeTo = Path.join(ImagesRoot, 'lib/app');
|
||||
const relativeTo = Path.join(__dirname, 'app');
|
||||
const buildRoot = Path.join(__dirname, `../build/${NAMESPACE}/static/`);
|
||||
const publicRoot = Path.join(__dirname, `../public/static/`);
|
||||
|
||||
await server.register([
|
||||
{
|
||||
@ -25,7 +25,7 @@ exports.register = async server => {
|
||||
server.route([
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/instances/service-worker.js',
|
||||
path: `/${NAMESPACE}/service-worker.js`,
|
||||
config: {
|
||||
auth: false,
|
||||
handler: {
|
||||
@ -37,19 +37,7 @@ exports.register = async server => {
|
||||
},
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/images/service-worker.js',
|
||||
config: {
|
||||
auth: false,
|
||||
handler: {
|
||||
file: {
|
||||
path: Path.join(ImagesRoot, 'build/service-worker.js')
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/instances/favicon.ico',
|
||||
path: `/${NAMESPACE}/favicon.ico`,
|
||||
config: {
|
||||
auth: false,
|
||||
handler: {
|
||||
@ -61,140 +49,42 @@ exports.register = async server => {
|
||||
},
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/images/favicon.ico',
|
||||
path: `/${NAMESPACE}/static/{rest*}`,
|
||||
config: {
|
||||
auth: false,
|
||||
handler: {
|
||||
file: {
|
||||
path: Path.join(ImagesRoot, 'build/favicon.ico')
|
||||
}
|
||||
}
|
||||
}
|
||||
auth: false
|
||||
},
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/font/{pathname*}',
|
||||
config: {
|
||||
auth: false,
|
||||
handler: async (request, h) => {
|
||||
const { params } = request;
|
||||
const { pathname } = params;
|
||||
const { rest } = params;
|
||||
|
||||
const location = Url.format({
|
||||
protocol: 'https:',
|
||||
slashes: true,
|
||||
host: 'fonts.gstatic.com',
|
||||
pathname
|
||||
});
|
||||
const publicPathname = Path.join(publicRoot, rest);
|
||||
const buildPathname = Path.join(buildRoot, rest);
|
||||
|
||||
const res = await Wreck.request('GET', location);
|
||||
return h.response(res);
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/fonts/css',
|
||||
config: {
|
||||
auth: false,
|
||||
handler: async (request, h) => {
|
||||
const { query, headers } = request;
|
||||
const { family } = query;
|
||||
const { host } = headers;
|
||||
const url = Url.parse(`http://${host}`);
|
||||
|
||||
const location = Url.format({
|
||||
protocol: 'https:',
|
||||
slashes: true,
|
||||
host: 'fonts.googleapis.com',
|
||||
pathname: '/css',
|
||||
query: { family }
|
||||
});
|
||||
|
||||
const res = await Wreck.request('GET', location);
|
||||
const body = await Wreck.read(res);
|
||||
|
||||
const _body = body
|
||||
.toString()
|
||||
.replace(
|
||||
/https:\/\/fonts\.gstatic\.com/g,
|
||||
`http://${url.host}/font`
|
||||
const [err] = await Intercept(
|
||||
Fs.access(publicPathname, Fs.constants.R_OK)
|
||||
);
|
||||
|
||||
return h
|
||||
.response(_body)
|
||||
.header('content-type', res.headers['content-type'])
|
||||
.header('expires', res.headers.expires)
|
||||
.header('date', res.headers.date)
|
||||
.header('cache-control', res.headers['cache-control']);
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/instances/static/{path*}',
|
||||
config: {
|
||||
auth: false,
|
||||
handler: {
|
||||
directory: {
|
||||
path: Path.join(__dirname, '../build/instances/static/'),
|
||||
redirectToSlash: true,
|
||||
index: false
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/images/static/{path*}',
|
||||
config: {
|
||||
auth: false,
|
||||
handler: {
|
||||
directory: {
|
||||
path: Path.join(ImagesRoot, 'build/images/static/'),
|
||||
redirectToSlash: true,
|
||||
index: false
|
||||
}
|
||||
}
|
||||
const file = err ? buildPathname : publicPathname;
|
||||
return h.file(file, { confine: false });
|
||||
}
|
||||
},
|
||||
{
|
||||
method: '*',
|
||||
path: '/instances/~server-error',
|
||||
path: `/${NAMESPACE}/~server-error`,
|
||||
handler: {
|
||||
view: {
|
||||
name: 'server-error',
|
||||
relativeTo: InstancesRelativeTo
|
||||
relativeTo
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
method: '*',
|
||||
path: '/images/~server-error',
|
||||
handler: {
|
||||
view: {
|
||||
name: 'server-error',
|
||||
relativeTo: ImagesRelativeTo
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
method: '*',
|
||||
path: '/images/{path*}',
|
||||
path: `/${NAMESPACE}/{path*}`,
|
||||
handler: {
|
||||
view: {
|
||||
name: 'app',
|
||||
relativeTo: ImagesRelativeTo
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
method: '*',
|
||||
path: '/{path*}',
|
||||
handler: {
|
||||
view: {
|
||||
name: 'app',
|
||||
relativeTo: InstancesRelativeTo
|
||||
relativeTo
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "my-joy-instances",
|
||||
"version": "2.1.9",
|
||||
"version": "2.2.6",
|
||||
"private": true,
|
||||
"license": "MPL-2.0",
|
||||
"repository": "github:yldio/joyent-portal",
|
||||
"main": "lib/index.js",
|
||||
"scripts": {
|
||||
"dev": "NODE_ENV=development REACT_APP_GQL_PORT=4000 PORT=3069 joyent-react-scripts start",
|
||||
"dev": "NAMESPACE=instances NODE_ENV=development REACT_APP_GQL_PORT=4000 PORT=3069 joyent-react-scripts start",
|
||||
"build:test": "echo 0",
|
||||
"build:lib": "echo 0",
|
||||
"build:bundle": "NAMESPACE=instances NODE_ENV=production redrun -p build:frontend build:ssr",
|
||||
@ -34,10 +34,10 @@
|
||||
"hapi-render-react": "^2.2.0",
|
||||
"hapi-render-react-joyent-document": "^5.0.0",
|
||||
"inert": "^5.1.0",
|
||||
"joyent-logo-assets": "^1.0.0",
|
||||
"joyent-logo-assets": "^1.1.0",
|
||||
"joyent-manifest-editor": "^1.4.0",
|
||||
"joyent-react-styled-flexboxgrid": "^2.2.3",
|
||||
"joyent-ui-toolkit": "^5.0.0",
|
||||
"joyent-ui-toolkit": "^6.0.0",
|
||||
"lodash.find": "^4.6.0",
|
||||
"lodash.findindex": "^4.6.0",
|
||||
"lodash.flatten": "^4.4.0",
|
||||
@ -70,7 +70,6 @@
|
||||
"redux": "^3.7.2",
|
||||
"redux-form": "^7.2.3",
|
||||
"remcalc": "^1.0.10",
|
||||
"resolve-pkg": "^1.0.0",
|
||||
"styled-components": "^3.2.1",
|
||||
"styled-components-spacing": "^2.1.3",
|
||||
"styled-flex-component": "^2.2.1",
|
||||
@ -84,7 +83,7 @@
|
||||
"eslint-config-joyent-portal": "^3.3.1",
|
||||
"jest-image-snapshot": "^2.3.0",
|
||||
"jest-styled-components": "^5.0.0",
|
||||
"joyent-react-scripts": "^7.4.0",
|
||||
"joyent-react-scripts": "^8.0.2",
|
||||
"react-screenshot-renderer": "^1.1.2",
|
||||
"react-test-renderer": "^16.2.0",
|
||||
"redrun": "^5.10.5"
|
||||
|
@ -0,0 +1,31 @@
|
||||
@font-face {
|
||||
font-family: 'Libre Franklin';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Libre Franklin'), local('LibreFranklin-Regular'),
|
||||
url(../fonts/libre-franklin/libre-franklin-regular.ttf) format('truetype');
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Libre Franklin';
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
src: local('Libre Franklin Medium'), local('LibreFranklin-Medium'),
|
||||
url(../fonts/libre-franklin/libre-franklin-medium.ttf) format('truetype');
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Libre Franklin';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Libre Franklin SemiBold'), local('LibreFranklin-SemiBold'),
|
||||
url(../fonts/libre-franklin/libre-franklin-semibold.ttf) format('truetype');
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Libre Franklin';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('Libre Franklin Bold'), local('LibreFranklin-Bold'),
|
||||
url(../fonts/libre-franklin/libre-franklin-bold.ttf) format('truetype');
|
||||
}
|
15
packages/my-joy-instances/public/static/css/roboto-mono.css
Normal file
15
packages/my-joy-instances/public/static/css/roboto-mono.css
Normal file
@ -0,0 +1,15 @@
|
||||
@font-face {
|
||||
font-family: 'Roboto Mono';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Roboto Mono'), local('RobotoMono-Regular'),
|
||||
url(../fonts/roboto-mono/roboto-mono-regular.ttf) format('truetype');
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Roboto Mono';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('Roboto Mono Bold'), local('RobotoMono-Bold'),
|
||||
url(../fonts/roboto-mono/roboto-mono-bold.ttf) format('truetype');
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
93
packages/my-joy-instances/public/static/fonts/libre-franklin/license.txt
Executable file
93
packages/my-joy-instances/public/static/fonts/libre-franklin/license.txt
Executable file
@ -0,0 +1,93 @@
|
||||
Copyright (c) 2015, Impallari Type (www.impallari.com)
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
|
||||
-----------------------------------------------------------
|
||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||
-----------------------------------------------------------
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||
development of collaborative font projects, to support the font creation
|
||||
efforts of academic and linguistic communities, and to provide a free and
|
||||
open framework in which fonts may be shared and improved in partnership
|
||||
with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and
|
||||
redistributed freely as long as they are not sold by themselves. The
|
||||
fonts, including any derivative works, can be bundled, embedded,
|
||||
redistributed and/or sold with any software provided that any reserved
|
||||
names are not used by derivative works. The fonts and derivatives,
|
||||
however, cannot be released under any other type of license. The
|
||||
requirement for fonts to remain under this license does not apply
|
||||
to any document created using the fonts or their derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright
|
||||
Holder(s) under this license and clearly marked as such. This may
|
||||
include source files, build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the
|
||||
copyright statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as
|
||||
distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||
or substituting -- in part or in whole -- any of the components of the
|
||||
Original Version, by changing formats or by porting the Font Software to a
|
||||
new environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical
|
||||
writer or other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||
redistribute, and sell modified and unmodified copies of the Font
|
||||
Software, subject to the following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components,
|
||||
in Original or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled,
|
||||
redistributed and/or sold with any software, provided that each copy
|
||||
contains the above copyright notice and this license. These can be
|
||||
included either as stand-alone text files, human-readable headers or
|
||||
in the appropriate machine-readable metadata fields within text or
|
||||
binary files as long as those fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font
|
||||
Name(s) unless explicit written permission is granted by the corresponding
|
||||
Copyright Holder. This restriction only applies to the primary font name as
|
||||
presented to the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||
Software shall not be used to promote, endorse or advertise any
|
||||
Modified Version, except to acknowledge the contribution(s) of the
|
||||
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||
permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole,
|
||||
must be distributed entirely under this license, and must not be
|
||||
distributed under any other license. The requirement for fonts to
|
||||
remain under this license does not apply to any document created
|
||||
using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are
|
||||
not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||
OTHER DEALINGS IN THE FONT SOFTWARE.
|
202
packages/my-joy-instances/public/static/fonts/roboto-mono/license.txt
Executable file
202
packages/my-joy-instances/public/static/fonts/roboto-mono/license.txt
Executable file
@ -0,0 +1,202 @@
|
||||
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
BIN
packages/my-joy-instances/public/static/fonts/roboto-mono/roboto-mono-bold.ttf
Executable file
BIN
packages/my-joy-instances/public/static/fonts/roboto-mono/roboto-mono-bold.ttf
Executable file
Binary file not shown.
Binary file not shown.
@ -16,12 +16,23 @@ const getState = request => {
|
||||
const _font = get(theme, 'font.href', () => '');
|
||||
const _mono = get(theme, 'monoFont.href', () => '');
|
||||
const _addr = url.parse(`http://${req.headers.host}`);
|
||||
|
||||
const _theme = Object.assign({}, theme, {
|
||||
font: Object.assign({}, theme.font, {
|
||||
href: () => _font(_addr)
|
||||
href: () =>
|
||||
_font(
|
||||
Object.assign(_addr, {
|
||||
namespace: 'instances'
|
||||
})
|
||||
)
|
||||
}),
|
||||
monoFont: Object.assign({}, theme.monoFont, {
|
||||
href: () => _mono(_addr)
|
||||
href: () =>
|
||||
_mono(
|
||||
Object.assign(_addr, {
|
||||
namespace: 'instances'
|
||||
})
|
||||
)
|
||||
})
|
||||
});
|
||||
|
||||
|
@ -333,73 +333,17 @@ exports[`renders <Summary loading /> without throwing 1`] = `
|
||||
`;
|
||||
|
||||
exports[`renders <Summary loadingError /> without throwing 1`] = `
|
||||
.c2 {
|
||||
fill: rgb(59,70,204);
|
||||
stroke: rgb(59,70,204);
|
||||
-webkit-animation: iCqDak 1.5s ease-out 0s infinite;
|
||||
animation: iCqDak 1.5s ease-out 0s infinite;
|
||||
.c1 {
|
||||
margin-bottom: 1.5rem;
|
||||
}
|
||||
|
||||
.c3 {
|
||||
fill: rgb(59,70,204);
|
||||
stroke: rgb(59,70,204);
|
||||
-webkit-animation: iCqDak 1.5s ease-out 0s infinite;
|
||||
animation: iCqDak 1.5s ease-out 0s infinite;
|
||||
-webkit-animation-delay: 0.5s;
|
||||
animation-delay: 0.5s;
|
||||
}
|
||||
|
||||
.c4 {
|
||||
fill: rgb(59,70,204);
|
||||
stroke: rgb(59,70,204);
|
||||
-webkit-animation: iCqDak 1.5s ease-out 0s infinite;
|
||||
animation: iCqDak 1.5s ease-out 0s infinite;
|
||||
-webkit-animation-delay: 1s;
|
||||
animation-delay: 1s;
|
||||
}
|
||||
|
||||
.c5 {
|
||||
.c6 {
|
||||
color: rgb(73,73,73);
|
||||
line-height: 1.5rem;
|
||||
font-size: 0.9375rem;
|
||||
margin: 0;
|
||||
-webkit-flex: 0 0 auto;
|
||||
-ms-flex: 0 0 auto;
|
||||
flex: 0 0 auto;
|
||||
-webkit-align-self: stretch;
|
||||
-ms-flex-item-align: stretch;
|
||||
align-self: stretch;
|
||||
text-align: center;
|
||||
margin-bottom: 0;
|
||||
margin-left: 0.375rem;
|
||||
}
|
||||
|
||||
.c1 {
|
||||
display: -webkit-box;
|
||||
display: -webkit-flex;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
-webkit-flex-direction: column;
|
||||
-ms-flex-direction: column;
|
||||
flex-direction: column;
|
||||
-webkit-flex-wrap: nowrap;
|
||||
-ms-flex-wrap: nowrap;
|
||||
flex-wrap: nowrap;
|
||||
-webkit-box-pack: center;
|
||||
-webkit-justify-content: center;
|
||||
-ms-flex-pack: center;
|
||||
justify-content: center;
|
||||
-webkit-align-content: center;
|
||||
-ms-flex-line-pack: center;
|
||||
align-content: center;
|
||||
-webkit-align-items: center;
|
||||
-webkit-box-align: center;
|
||||
-ms-flex-align: center;
|
||||
align-items: center;
|
||||
min-height: 1.25rem;
|
||||
-webkit-flex: 1 0 auto;
|
||||
-ms-flex: 1 0 auto;
|
||||
flex: 1 0 auto;
|
||||
line-height: 0.875rem;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
.c0 {
|
||||
@ -409,27 +353,40 @@ exports[`renders <Summary loadingError /> without throwing 1`] = `
|
||||
width: 100%;
|
||||
max-width: 62.5rem;
|
||||
padding-bottom: 1.125rem;
|
||||
}
|
||||
|
||||
.c5 {
|
||||
color: rgb(73,73,73);
|
||||
font-weight: 600;
|
||||
line-height: 1.5rem;
|
||||
font-size: 0.9375rem;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.c2 {
|
||||
display: -webkit-box;
|
||||
display: -webkit-flex;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
-webkit-flex-direction: column;
|
||||
-ms-flex-direction: column;
|
||||
flex-direction: column;
|
||||
-webkit-flex-wrap: nowrap;
|
||||
-ms-flex-wrap: nowrap;
|
||||
flex-wrap: nowrap;
|
||||
-webkit-box-pack: center;
|
||||
-webkit-justify-content: center;
|
||||
-ms-flex-pack: center;
|
||||
justify-content: center;
|
||||
-webkit-align-content: center;
|
||||
-ms-flex-line-pack: center;
|
||||
align-content: center;
|
||||
-webkit-align-items: center;
|
||||
-webkit-box-align: center;
|
||||
-ms-flex-align: center;
|
||||
align-items: center;
|
||||
position: relative;
|
||||
background-color: rgb(255,255,255);
|
||||
box-shadow: 0 0.125rem 0 0 rgba(0,0,0,0.05);
|
||||
border: 0.0625rem solid rgb(216,216,216);
|
||||
border-radius: 0.1875rem;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.c3 {
|
||||
border-radius: 0.1875rem 0 0 0.1875rem;
|
||||
margin: -0.0625rem 0 -0.0625rem -0.0625rem;
|
||||
min-width: 0.75rem;
|
||||
min-height: 100%;
|
||||
background-color: rgb(0,152,88);
|
||||
background-color: rgb(210,67,58);
|
||||
}
|
||||
|
||||
.c4 {
|
||||
padding: 1.125rem 1.125rem;
|
||||
}
|
||||
|
||||
@media only screen and (min-width:48em) {
|
||||
@ -463,38 +420,28 @@ exports[`renders <Summary loadingError /> without throwing 1`] = `
|
||||
<div
|
||||
className="c1"
|
||||
>
|
||||
<svg
|
||||
height="10"
|
||||
width="28"
|
||||
>
|
||||
<rect
|
||||
<div
|
||||
className="c2"
|
||||
height="6"
|
||||
width="6"
|
||||
x="2"
|
||||
y="2"
|
||||
/>
|
||||
<rect
|
||||
>
|
||||
<div
|
||||
className="c3"
|
||||
height="6"
|
||||
width="6"
|
||||
x="11"
|
||||
y="2"
|
||||
/>
|
||||
<rect
|
||||
<div
|
||||
className="c4"
|
||||
height="6"
|
||||
width="6"
|
||||
x="20"
|
||||
y="2"
|
||||
/>
|
||||
</svg>
|
||||
<p
|
||||
>
|
||||
<h4
|
||||
className="c5"
|
||||
>
|
||||
Loading...
|
||||
Ooops!
|
||||
</h4>
|
||||
<p
|
||||
className="c6"
|
||||
>
|
||||
An error occurred while loading your instance summary
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
`;
|
||||
|
||||
|
@ -10,6 +10,7 @@ import queryString from 'query-string';
|
||||
import intercept from 'apr-intercept';
|
||||
import get from 'lodash.get';
|
||||
import find from 'lodash.find';
|
||||
import isInteger from 'lodash.isinteger';
|
||||
import isNaN from 'lodash.isnan';
|
||||
import reverse from 'lodash.reverse';
|
||||
import sort from 'lodash.sortby';
|
||||
@ -200,12 +201,16 @@ export default compose(
|
||||
}
|
||||
}),
|
||||
props: ({ data: { loading, error, refetch, variables, ...rest } }) => {
|
||||
const result = get(rest, 'machines', {});
|
||||
const result = get(rest, 'machines', {}) || {};
|
||||
const machines = get(result, 'results', []);
|
||||
const offset = Number(variables.offset);
|
||||
const limit = Number(variables.limit);
|
||||
|
||||
const fetching = !(limit === result.limit && offset === result.offset);
|
||||
const fetching =
|
||||
!error &&
|
||||
isInteger(result.limit) &&
|
||||
isInteger(result.offset) &&
|
||||
!(limit === result.limit && offset === result.offset);
|
||||
|
||||
const instances = forceArray(machines).map(({ state, ...machine }) => ({
|
||||
...machine,
|
||||
|
@ -37,7 +37,9 @@ export const Summary = ({
|
||||
rebooting,
|
||||
removing
|
||||
}) => {
|
||||
const _loading = loading || !instance ? <StatusLoader /> : null;
|
||||
const _loading =
|
||||
loading || (!instance && !loadingError) ? <StatusLoader /> : null;
|
||||
|
||||
const _summary = !_loading &&
|
||||
instance && (
|
||||
<SummaryScreen
|
||||
|
21
packages/my-joy-instances/src/state/theme.js
Normal file
21
packages/my-joy-instances/src/state/theme.js
Normal file
@ -0,0 +1,21 @@
|
||||
import { theme } from 'joyent-ui-toolkit';
|
||||
|
||||
const font = theme.font.href({
|
||||
namespace: 'instances'
|
||||
});
|
||||
|
||||
const monoFont = theme.monoFont.href({
|
||||
namespace: 'instances'
|
||||
});
|
||||
|
||||
export default {
|
||||
...theme,
|
||||
font: {
|
||||
...theme.font,
|
||||
href: () => font
|
||||
},
|
||||
monoFont: {
|
||||
...theme.monoFont,
|
||||
href: () => monoFont
|
||||
}
|
||||
};
|
@ -26,8 +26,8 @@
|
||||
"emotion-theming": "^8.0.12",
|
||||
"graphql-tag": "^2.8.0",
|
||||
"inert": "^5.1.0",
|
||||
"joyent-icons": "^5.0.0",
|
||||
"joyent-ui-toolkit": "^5.0.0",
|
||||
"joyent-icons": "^5.1.0",
|
||||
"joyent-ui-toolkit": "^6.0.0",
|
||||
"lodash.chunk": "^4.2.0",
|
||||
"lodash.keys": "^4.2.0",
|
||||
"outy": "^0.1.2",
|
||||
@ -46,7 +46,7 @@
|
||||
"babel-preset-joyent-portal": "^7.0.1",
|
||||
"eslint": "^4.18.1",
|
||||
"eslint-config-joyent-portal": "^3.3.1",
|
||||
"joyent-react-scripts": "^7.4.0",
|
||||
"joyent-react-scripts": "^8.0.2",
|
||||
"redrun": "^5.10.5"
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "joyent-ui-toolkit",
|
||||
"version": "5.0.0",
|
||||
"version": "6.0.0",
|
||||
"private": true,
|
||||
"license": "MPL-2.0",
|
||||
"repository": "github:yldio/joyent-portal",
|
||||
@ -28,7 +28,7 @@
|
||||
"clipboard-copy": "^1.4.2",
|
||||
"exenv": "^1.2.2",
|
||||
"joy-react-broadcast": "^0.6.9",
|
||||
"joyent-icons": "^5.0.0",
|
||||
"joyent-icons": "^5.1.0",
|
||||
"joyent-react-styled-flexboxgrid": "^2.2.3",
|
||||
"lodash.assign": "^4.2.0",
|
||||
"lodash.isboolean": "^3.0.3",
|
||||
@ -57,7 +57,7 @@
|
||||
"eslint": "^4.18.1",
|
||||
"eslint-config-joyent-portal": "^3.3.1",
|
||||
"jest-styled-components": "^5.0.0",
|
||||
"joyent-react-scripts": "^7.4.0",
|
||||
"joyent-react-scripts": "^8.0.2",
|
||||
"react": "^16.2.0",
|
||||
"react-docgen": "^3.0.0-beta8",
|
||||
"react-docgen-displayname-handler": "^1.0.1",
|
||||
|
@ -150,11 +150,11 @@ export const font = {
|
||||
family: '"Libre Franklin"',
|
||||
families:
|
||||
'"Libre Franklin", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica, sans-serif',
|
||||
href: ({ protocol, host } = {}) => {
|
||||
href: ({ protocol, host, namespace } = {}) => {
|
||||
const _protocol = protocol || globals.protocol;
|
||||
const _host = host || globals.host;
|
||||
|
||||
return `${_protocol}//${_host}/fonts/css?family=Libre+Franklin:400,500,600,700`;
|
||||
return `${_protocol}//${_host}/${namespace}/static/css/libre-franklin.css`;
|
||||
},
|
||||
weight: {
|
||||
bold: 700,
|
||||
@ -171,11 +171,11 @@ export const monoFont = {
|
||||
textMuted: base.secondary,
|
||||
family: '"Roboto Mono"',
|
||||
families: '"Roboto Mono", monospace',
|
||||
href: ({ protocol, host } = {}) => {
|
||||
href: ({ protocol, host, namespace } = {}) => {
|
||||
const _protocol = protocol || globals.protocol;
|
||||
const _host = host || globals.host;
|
||||
|
||||
return `${_protocol}//${_host}/fonts/css?family=Roboto+Mono:700,400`;
|
||||
return `${_protocol}//${_host}/${namespace}/static/css/roboto-mono.css`;
|
||||
},
|
||||
weight: {
|
||||
bold: 700,
|
||||
|
@ -32,7 +32,7 @@
|
||||
"babel-preset-joyent-portal": "^7.0.0",
|
||||
"eslint": "^4.11.0",
|
||||
"eslint-config-joyent-portal": "^3.2.0",
|
||||
"joyent-react-scripts": "^7.4.0",
|
||||
"joyent-react-scripts": "^8.0.2",
|
||||
"prettier": "^1.8.2",
|
||||
"stylelint": "^8.4.0",
|
||||
"stylelint-config-joyent-portal": "^2.0.1"
|
||||
|
350
yarn.lock
350
yarn.lock
@ -224,8 +224,8 @@
|
||||
resolved "https://registry.yarnpkg.com/@types/async/-/async-2.0.47.tgz#f49ba1dd1f189486beb6e1d070a850f6ab4bd521"
|
||||
|
||||
"@types/node@^9.4.6":
|
||||
version "9.4.7"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-9.4.7.tgz#57d81cd98719df2c9de118f2d5f3b1120dcd7275"
|
||||
version "9.6.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-9.6.0.tgz#d3480ee666df9784b1001a1872a2f6ccefb6c2d7"
|
||||
|
||||
"@types/zen-observable@^0.5.3":
|
||||
version "0.5.3"
|
||||
@ -1093,7 +1093,7 @@ babel-messages@^6.23.0:
|
||||
dependencies:
|
||||
babel-runtime "^6.22.0"
|
||||
|
||||
babel-minify-webpack-plugin@^0.3.0:
|
||||
babel-minify-webpack-plugin@^0.3.1:
|
||||
version "0.3.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-minify-webpack-plugin/-/babel-minify-webpack-plugin-0.3.1.tgz#292aa240af190e2dcadf4f684d6d84d179b6d5a4"
|
||||
dependencies:
|
||||
@ -2274,8 +2274,8 @@ caniuse-db@^1.0.30000529, caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639:
|
||||
resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000819.tgz#c3b7dd559e5e6d63d5dcaa62bac6bd04c7619709"
|
||||
|
||||
caniuse-lite@^1.0.30000748, caniuse-lite@^1.0.30000792:
|
||||
version "1.0.30000817"
|
||||
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000817.tgz#e993c380eb4bfe76a2aed4223f841c02d6e0d832"
|
||||
version "1.0.30000819"
|
||||
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000819.tgz#aabee5fd15a080febab6ae5d30c9ea15f4c6d4e2"
|
||||
|
||||
capture-stack-trace@^1.0.0:
|
||||
version "1.0.0"
|
||||
@ -2382,7 +2382,7 @@ chokidar@^1.6.0, chokidar@^1.6.1:
|
||||
optionalDependencies:
|
||||
fsevents "^1.0.0"
|
||||
|
||||
chokidar@^2.0.0:
|
||||
chokidar@^2.0.0, chokidar@^2.0.2:
|
||||
version "2.0.3"
|
||||
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.0.3.tgz#dcbd4f6cbb2a55b4799ba8a840ac527e5f4b1176"
|
||||
dependencies:
|
||||
@ -2400,24 +2400,6 @@ chokidar@^2.0.0:
|
||||
optionalDependencies:
|
||||
fsevents "^1.1.2"
|
||||
|
||||
chokidar@^2.0.2:
|
||||
version "2.0.2"
|
||||
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.0.2.tgz#4dc65139eeb2714977735b6a35d06e97b494dfd7"
|
||||
dependencies:
|
||||
anymatch "^2.0.0"
|
||||
async-each "^1.0.0"
|
||||
braces "^2.3.0"
|
||||
glob-parent "^3.1.0"
|
||||
inherits "^2.0.1"
|
||||
is-binary-path "^1.0.0"
|
||||
is-glob "^4.0.0"
|
||||
normalize-path "^2.1.1"
|
||||
path-is-absolute "^1.0.0"
|
||||
readdirp "^2.0.0"
|
||||
upath "^1.0.0"
|
||||
optionalDependencies:
|
||||
fsevents "^1.0.0"
|
||||
|
||||
chownr@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181"
|
||||
@ -2540,8 +2522,8 @@ clone@^1.0.2:
|
||||
resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e"
|
||||
|
||||
cloudapi-gql@^7.1.3:
|
||||
version "7.1.3"
|
||||
resolved "https://registry.yarnpkg.com/cloudapi-gql/-/cloudapi-gql-7.1.3.tgz#bb963454dd68f6e36e2a44302456faecf97831aa"
|
||||
version "7.1.4"
|
||||
resolved "https://registry.yarnpkg.com/cloudapi-gql/-/cloudapi-gql-7.1.4.tgz#4baed087d980d86b44e6bf1c8fac2a486901e3fa"
|
||||
dependencies:
|
||||
apr-map "3.x.x"
|
||||
boom "7.x.x"
|
||||
@ -2804,39 +2786,39 @@ conventional-changelog-angular@^1.3.3, conventional-changelog-angular@^1.6.6:
|
||||
compare-func "^1.3.1"
|
||||
q "^1.5.1"
|
||||
|
||||
conventional-changelog-atom@^0.2.4:
|
||||
version "0.2.4"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-atom/-/conventional-changelog-atom-0.2.4.tgz#4917759947f4db86073f9d3838a2d54302d5843d"
|
||||
conventional-changelog-atom@^0.2.5:
|
||||
version "0.2.5"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-atom/-/conventional-changelog-atom-0.2.5.tgz#456fb0245965cb41b38dbc558829aaeadf678ed2"
|
||||
dependencies:
|
||||
q "^1.5.1"
|
||||
|
||||
conventional-changelog-cli@^1.3.13:
|
||||
version "1.3.16"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-cli/-/conventional-changelog-cli-1.3.16.tgz#69acdcc4b68b4d123c5945868dffe394960cea9d"
|
||||
version "1.3.17"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-cli/-/conventional-changelog-cli-1.3.17.tgz#6455c22dbd439e2ad8054167f37ec7562c8c4e84"
|
||||
dependencies:
|
||||
add-stream "^1.0.0"
|
||||
conventional-changelog "^1.1.18"
|
||||
conventional-changelog "^1.1.19"
|
||||
lodash "^4.2.1"
|
||||
meow "^4.0.0"
|
||||
tempfile "^1.1.1"
|
||||
|
||||
conventional-changelog-codemirror@^0.3.4:
|
||||
version "0.3.4"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-codemirror/-/conventional-changelog-codemirror-0.3.4.tgz#debc43991d487d7964e65087fbbe034044bd51fb"
|
||||
conventional-changelog-codemirror@^0.3.5:
|
||||
version "0.3.5"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-codemirror/-/conventional-changelog-codemirror-0.3.5.tgz#3e82f128912c86c1e1e0f1dab5ce745d0c2a78a8"
|
||||
dependencies:
|
||||
q "^1.5.1"
|
||||
|
||||
conventional-changelog-core@^2.0.5:
|
||||
version "2.0.5"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-2.0.5.tgz#45b6347c4c6512e1f163f7ff55c9f5bcb88fd990"
|
||||
conventional-changelog-core@^2.0.6:
|
||||
version "2.0.6"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-2.0.6.tgz#a750621cfb943c9c990c95d5ae8f18fc35be38fa"
|
||||
dependencies:
|
||||
conventional-changelog-writer "^3.0.4"
|
||||
conventional-commits-parser "^2.1.5"
|
||||
conventional-changelog-writer "^3.0.5"
|
||||
conventional-commits-parser "^2.1.6"
|
||||
dateformat "^3.0.0"
|
||||
get-pkg-repo "^1.0.0"
|
||||
git-raw-commits "^1.3.4"
|
||||
git-raw-commits "^1.3.5"
|
||||
git-remote-origin-url "^2.0.0"
|
||||
git-semver-tags "^1.3.4"
|
||||
git-semver-tags "^1.3.5"
|
||||
lodash "^4.2.1"
|
||||
normalize-package-data "^2.3.5"
|
||||
q "^1.5.1"
|
||||
@ -2844,21 +2826,21 @@ conventional-changelog-core@^2.0.5:
|
||||
read-pkg-up "^1.0.1"
|
||||
through2 "^2.0.0"
|
||||
|
||||
conventional-changelog-ember@^0.3.6:
|
||||
version "0.3.6"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-ember/-/conventional-changelog-ember-0.3.6.tgz#f3825d7434168f3d9211b5532dc1d5769532b668"
|
||||
conventional-changelog-ember@^0.3.7:
|
||||
version "0.3.7"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-ember/-/conventional-changelog-ember-0.3.7.tgz#096a14794e054fc08dde055364e98aaee8b1a8c4"
|
||||
dependencies:
|
||||
q "^1.5.1"
|
||||
|
||||
conventional-changelog-eslint@^1.0.5:
|
||||
version "1.0.5"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-eslint/-/conventional-changelog-eslint-1.0.5.tgz#8bae05ebbf574e6506caf7b37dc51ca21b74d220"
|
||||
conventional-changelog-eslint@^1.0.6:
|
||||
version "1.0.6"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-eslint/-/conventional-changelog-eslint-1.0.6.tgz#e9060f450ec8d63c671e54bd471e0502ee19183f"
|
||||
dependencies:
|
||||
q "^1.5.1"
|
||||
|
||||
conventional-changelog-express@^0.3.4:
|
||||
version "0.3.4"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-express/-/conventional-changelog-express-0.3.4.tgz#812a9cf778677e12f978ac9c40d85297c0bfcca9"
|
||||
conventional-changelog-express@^0.3.5:
|
||||
version "0.3.5"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-express/-/conventional-changelog-express-0.3.5.tgz#b01b9f9a8f2d4e37bbafec7cc7d9c0b0570f6b26"
|
||||
dependencies:
|
||||
q "^1.5.1"
|
||||
|
||||
@ -2874,23 +2856,23 @@ conventional-changelog-jscs@^0.1.0:
|
||||
dependencies:
|
||||
q "^1.4.1"
|
||||
|
||||
conventional-changelog-jshint@^0.3.4:
|
||||
version "0.3.4"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-jshint/-/conventional-changelog-jshint-0.3.4.tgz#b2de33cd0870d9af804ac6a4fded0ee25b69c9bb"
|
||||
conventional-changelog-jshint@^0.3.5:
|
||||
version "0.3.5"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-jshint/-/conventional-changelog-jshint-0.3.5.tgz#ae9fadbeb9b05cd305e665efd0df54dfb19a00f9"
|
||||
dependencies:
|
||||
compare-func "^1.3.1"
|
||||
q "^1.5.1"
|
||||
|
||||
conventional-changelog-preset-loader@^1.1.6:
|
||||
version "1.1.6"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-1.1.6.tgz#b29af6332f9313857be36427623c9016bfeeaf33"
|
||||
conventional-changelog-preset-loader@^1.1.7:
|
||||
version "1.1.7"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-1.1.7.tgz#58a7ef85f980ca17f1373dc222ff449606222fb6"
|
||||
|
||||
conventional-changelog-writer@^3.0.4:
|
||||
version "3.0.4"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-3.0.4.tgz#705b46a8b8277bd7fd79cad8032095b5d803864c"
|
||||
conventional-changelog-writer@^3.0.5:
|
||||
version "3.0.5"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-3.0.5.tgz#d7ce157209c55057a2487e645193a2e6b9027943"
|
||||
dependencies:
|
||||
compare-func "^1.3.1"
|
||||
conventional-commits-filter "^1.1.5"
|
||||
conventional-commits-filter "^1.1.6"
|
||||
dateformat "^3.0.0"
|
||||
handlebars "^4.0.2"
|
||||
json-stringify-safe "^5.0.1"
|
||||
@ -2900,32 +2882,32 @@ conventional-changelog-writer@^3.0.4:
|
||||
split "^1.0.0"
|
||||
through2 "^2.0.0"
|
||||
|
||||
conventional-changelog@^1.1.18:
|
||||
version "1.1.18"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-1.1.18.tgz#ffe28798e4ddef5f6e2f74398e8248bcb233360b"
|
||||
conventional-changelog@^1.1.19:
|
||||
version "1.1.19"
|
||||
resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-1.1.19.tgz#a2b2335839e16122cc4ccec6ef57312c749d67c5"
|
||||
dependencies:
|
||||
conventional-changelog-angular "^1.6.6"
|
||||
conventional-changelog-atom "^0.2.4"
|
||||
conventional-changelog-codemirror "^0.3.4"
|
||||
conventional-changelog-core "^2.0.5"
|
||||
conventional-changelog-ember "^0.3.6"
|
||||
conventional-changelog-eslint "^1.0.5"
|
||||
conventional-changelog-express "^0.3.4"
|
||||
conventional-changelog-atom "^0.2.5"
|
||||
conventional-changelog-codemirror "^0.3.5"
|
||||
conventional-changelog-core "^2.0.6"
|
||||
conventional-changelog-ember "^0.3.7"
|
||||
conventional-changelog-eslint "^1.0.6"
|
||||
conventional-changelog-express "^0.3.5"
|
||||
conventional-changelog-jquery "^0.1.0"
|
||||
conventional-changelog-jscs "^0.1.0"
|
||||
conventional-changelog-jshint "^0.3.4"
|
||||
conventional-changelog-preset-loader "^1.1.6"
|
||||
conventional-changelog-jshint "^0.3.5"
|
||||
conventional-changelog-preset-loader "^1.1.7"
|
||||
|
||||
conventional-commits-filter@^1.1.1, conventional-commits-filter@^1.1.5:
|
||||
version "1.1.5"
|
||||
resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-1.1.5.tgz#77aac065e3de9c1a74b801e8e25c9affb3184f65"
|
||||
conventional-commits-filter@^1.1.1, conventional-commits-filter@^1.1.6:
|
||||
version "1.1.6"
|
||||
resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-1.1.6.tgz#4389cd8e58fe89750c0b5fb58f1d7f0cc8ad3831"
|
||||
dependencies:
|
||||
is-subset "^0.1.1"
|
||||
modify-values "^1.0.0"
|
||||
|
||||
conventional-commits-parser@^2.1.1, conventional-commits-parser@^2.1.5:
|
||||
version "2.1.5"
|
||||
resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-2.1.5.tgz#9ac3a4ab221c0c3c9e9dd2c09ae01e6d1e1dabe0"
|
||||
conventional-commits-parser@^2.1.1, conventional-commits-parser@^2.1.6:
|
||||
version "2.1.6"
|
||||
resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-2.1.6.tgz#e594bbd8342d3e6758aa0344ca074719d69a7dc0"
|
||||
dependencies:
|
||||
JSONStream "^1.0.4"
|
||||
is-text-path "^1.0.0"
|
||||
@ -3064,6 +3046,13 @@ cross-fetch@^1.1.1:
|
||||
node-fetch "1.7.3"
|
||||
whatwg-fetch "2.0.3"
|
||||
|
||||
cross-fetch@^2.1.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-2.1.0.tgz#7d4ea7e10a4f3bb73d5c2f0a3791ec3752d39b50"
|
||||
dependencies:
|
||||
node-fetch "2.1.1"
|
||||
whatwg-fetch "2.0.3"
|
||||
|
||||
cross-spawn@5.1.0, cross-spawn@^5.0.1, cross-spawn@^5.1.0:
|
||||
version "5.1.0"
|
||||
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449"
|
||||
@ -3072,6 +3061,16 @@ cross-spawn@5.1.0, cross-spawn@^5.0.1, cross-spawn@^5.1.0:
|
||||
shebang-command "^1.2.0"
|
||||
which "^1.2.9"
|
||||
|
||||
cross-spawn@^6.0.0:
|
||||
version "6.0.5"
|
||||
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4"
|
||||
dependencies:
|
||||
nice-try "^1.0.4"
|
||||
path-key "^2.0.1"
|
||||
semver "^5.5.0"
|
||||
shebang-command "^1.2.0"
|
||||
which "^1.2.9"
|
||||
|
||||
cryptiles@2.x.x:
|
||||
version "2.0.5"
|
||||
resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8"
|
||||
@ -4079,8 +4078,8 @@ eslint@4.10.0:
|
||||
text-table "~0.2.0"
|
||||
|
||||
eslint@^4.18.1:
|
||||
version "4.19.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.19.0.tgz#9e900efb5506812ac374557034ef6f5c3642fc4c"
|
||||
version "4.19.1"
|
||||
resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.19.1.tgz#32d1d653e1d90408854bfb296f076ec7e186a300"
|
||||
dependencies:
|
||||
ajv "^5.3.0"
|
||||
babel-code-frame "^6.22.0"
|
||||
@ -4198,6 +4197,18 @@ exec-sh@^0.2.0:
|
||||
dependencies:
|
||||
merge "^1.1.3"
|
||||
|
||||
execa@^0.10.0:
|
||||
version "0.10.0"
|
||||
resolved "https://registry.yarnpkg.com/execa/-/execa-0.10.0.tgz#ff456a8f53f90f8eccc71a96d11bdfc7f082cb50"
|
||||
dependencies:
|
||||
cross-spawn "^6.0.0"
|
||||
get-stream "^3.0.0"
|
||||
is-stream "^1.1.0"
|
||||
npm-run-path "^2.0.0"
|
||||
p-finally "^1.0.0"
|
||||
signal-exit "^3.0.0"
|
||||
strip-eof "^1.0.0"
|
||||
|
||||
execa@^0.7.0:
|
||||
version "0.7.0"
|
||||
resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777"
|
||||
@ -4849,9 +4860,9 @@ getpass@^0.1.1:
|
||||
dependencies:
|
||||
assert-plus "^1.0.0"
|
||||
|
||||
git-raw-commits@^1.3.0, git-raw-commits@^1.3.4:
|
||||
version "1.3.4"
|
||||
resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-1.3.4.tgz#442c3df5985b4f5689e9e43597f5194736aac001"
|
||||
git-raw-commits@^1.3.0, git-raw-commits@^1.3.5:
|
||||
version "1.3.5"
|
||||
resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-1.3.5.tgz#0951ae8dc80e5cee8ef54934db4ef65a6d161c60"
|
||||
dependencies:
|
||||
dargs "^4.0.1"
|
||||
lodash.template "^4.0.2"
|
||||
@ -4866,9 +4877,9 @@ git-remote-origin-url@^2.0.0:
|
||||
gitconfiglocal "^1.0.0"
|
||||
pify "^2.3.0"
|
||||
|
||||
git-semver-tags@^1.3.0, git-semver-tags@^1.3.4:
|
||||
version "1.3.4"
|
||||
resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-1.3.4.tgz#2ceb2a355c6d7514c123c35e297067d08caf3a92"
|
||||
git-semver-tags@^1.3.0, git-semver-tags@^1.3.5:
|
||||
version "1.3.5"
|
||||
resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-1.3.5.tgz#b803e8ee36c09e8cec3e9441f5bac292fd163c18"
|
||||
dependencies:
|
||||
meow "^4.0.0"
|
||||
semver "^5.5.0"
|
||||
@ -5053,11 +5064,11 @@ graphql-tag@^2.8.0:
|
||||
version "2.8.0"
|
||||
resolved "https://registry.yarnpkg.com/graphql-tag/-/graphql-tag-2.8.0.tgz#52cdea07a842154ec11a2e840c11b977f9b835ce"
|
||||
|
||||
graphql@0.13.x, graphql@^0.13.1:
|
||||
version "0.13.2"
|
||||
resolved "https://registry.yarnpkg.com/graphql/-/graphql-0.13.2.tgz#4c740ae3c222823e7004096f832e7b93b2108270"
|
||||
graphql@0.13.0, graphql@0.13.x, graphql@^0.13.1:
|
||||
version "0.13.0"
|
||||
resolved "https://registry.yarnpkg.com/graphql/-/graphql-0.13.0.tgz#d1b44a282279a9ce0a6ec1037329332f4c1079b6"
|
||||
dependencies:
|
||||
iterall "^1.2.1"
|
||||
iterall "1.1.x"
|
||||
|
||||
growly@^1.3.0:
|
||||
version "1.3.0"
|
||||
@ -5312,7 +5323,7 @@ hoek@5.0.x, hoek@5.x.x:
|
||||
version "5.0.3"
|
||||
resolved "https://registry.yarnpkg.com/hoek/-/hoek-5.0.3.tgz#b71d40d943d0a95da01956b547f83c4a5b4a34ac"
|
||||
|
||||
hoist-non-react-statics@2.5.0, hoist-non-react-statics@^1.2.0, hoist-non-react-statics@^2.2.0, hoist-non-react-statics@^2.3.0, hoist-non-react-statics@^2.3.1, hoist-non-react-statics@^2.5.0:
|
||||
hoist-non-react-statics@2.5.0, hoist-non-react-statics@^1.2.0, hoist-non-react-statics@^2.3.0, hoist-non-react-statics@^2.3.1, hoist-non-react-statics@^2.5.0:
|
||||
version "2.5.0"
|
||||
resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.0.tgz#d2ca2dfc19c5a91c5a6615ce8e564ef0347e2a40"
|
||||
|
||||
@ -6147,9 +6158,9 @@ istanbul-reports@^1.3.0:
|
||||
dependencies:
|
||||
handlebars "^4.0.3"
|
||||
|
||||
iterall@^1.2.1:
|
||||
version "1.2.2"
|
||||
resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.2.2.tgz#92d70deb8028e0c39ff3164fdbf4d8b088130cd7"
|
||||
iterall@1.1.x:
|
||||
version "1.1.4"
|
||||
resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.1.4.tgz#0db40d38fdcf53ae14dc8ec674e62ab190d52cfc"
|
||||
|
||||
javascript-stringify@^1.6.0:
|
||||
version "1.6.0"
|
||||
@ -6419,15 +6430,15 @@ joyent-manifest-editor@^1.4.0:
|
||||
prop-types "^15.6.0"
|
||||
react-codemirror "^1.0.0"
|
||||
|
||||
joyent-react-scripts@^7.4.0:
|
||||
version "7.4.0"
|
||||
resolved "https://registry.yarnpkg.com/joyent-react-scripts/-/joyent-react-scripts-7.4.0.tgz#1b6d55d94251b4db6cb1ab4e8cda697c8bdcdbc8"
|
||||
joyent-react-scripts@^8.0.2:
|
||||
version "8.0.3"
|
||||
resolved "https://registry.yarnpkg.com/joyent-react-scripts/-/joyent-react-scripts-8.0.3.tgz#0fa8684c924dbc582711c948167234278d925c5f"
|
||||
dependencies:
|
||||
apr-for-each "^3.0.3"
|
||||
apr-main "^4.0.3"
|
||||
babel-minify-webpack-plugin "^0.3.0"
|
||||
babel-minify-webpack-plugin "^0.3.1"
|
||||
duplicate-package-checker-webpack-plugin "^2.1.0"
|
||||
execa "^0.9.0"
|
||||
execa "^0.10.0"
|
||||
graphql "^0.13.1"
|
||||
graphql-tag "^2.8.0"
|
||||
jest-transform-graphql "^2.1.0"
|
||||
@ -6435,9 +6446,9 @@ joyent-react-scripts@^7.4.0:
|
||||
lodash.isstring "^4.0.1"
|
||||
mz "^2.7.0"
|
||||
react-scripts "^1.1.1"
|
||||
request "^2.83.0"
|
||||
sw-precache-webpack-plugin "^0.11.4"
|
||||
uglifyjs-webpack-plugin "^1.2.2"
|
||||
send "^0.16.2"
|
||||
sw-precache-webpack-plugin "^0.11.5"
|
||||
uglifyjs-webpack-plugin "^1.2.4"
|
||||
webpack-common-shake "^1.5.3"
|
||||
webpack-visualizer-plugin "^0.1.11"
|
||||
|
||||
@ -6448,6 +6459,36 @@ joyent-react-styled-flexboxgrid@^2.2.3:
|
||||
lodash.isinteger "^4.0.4"
|
||||
prop-types "^15.6.0"
|
||||
|
||||
joyent-ui-toolkit@^5.0.0:
|
||||
version "5.2.0"
|
||||
resolved "https://registry.yarnpkg.com/joyent-ui-toolkit/-/joyent-ui-toolkit-5.2.0.tgz#f8668483c73b16442e34e6960416db5a59e868e1"
|
||||
dependencies:
|
||||
camel-case "^3.0.0"
|
||||
clipboard-copy "^1.4.2"
|
||||
exenv "^1.2.2"
|
||||
joy-react-broadcast "^0.6.9"
|
||||
joyent-icons "^5.1.0"
|
||||
joyent-react-styled-flexboxgrid "^2.2.3"
|
||||
lodash.assign "^4.2.0"
|
||||
lodash.isboolean "^3.0.3"
|
||||
lodash.isnan "^3.0.2"
|
||||
lodash.isundefined "^3.0.1"
|
||||
lodash.values "^4.3.0"
|
||||
normalized-styled-components "^1.0.18"
|
||||
outy "^0.1.2"
|
||||
pascal-case "^2.0.1"
|
||||
prop-types "^15.6.1"
|
||||
react-bundle "^1.1.0"
|
||||
react-popper "^0.8.2"
|
||||
react-responsive "^4.0.4"
|
||||
remcalc "^1.0.10"
|
||||
rnd-id "^2.0.2"
|
||||
styled-components "^3.2.1"
|
||||
styled-components-spacing "^2.1.3"
|
||||
styled-flex-component "^2.2.1"
|
||||
styled-is "^1.1.2"
|
||||
unitcalc "^1.2.3"
|
||||
|
||||
js-base64@^2.1.9:
|
||||
version "2.4.3"
|
||||
resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.4.3.tgz#2e545ec2b0f2957f41356510205214e98fad6582"
|
||||
@ -6861,10 +6902,6 @@ lodash.flatten@^4.4.0:
|
||||
version "4.4.0"
|
||||
resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f"
|
||||
|
||||
lodash.flowright@^3.5.0:
|
||||
version "3.5.0"
|
||||
resolved "https://registry.yarnpkg.com/lodash.flowright/-/lodash.flowright-3.5.0.tgz#2b5fff399716d7e7dc5724fe9349f67065184d67"
|
||||
|
||||
lodash.get@^4.4.2:
|
||||
version "4.4.2"
|
||||
resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99"
|
||||
@ -6937,10 +6974,6 @@ lodash.omit@^4.5.0:
|
||||
version "4.5.0"
|
||||
resolved "https://registry.yarnpkg.com/lodash.omit/-/lodash.omit-4.5.0.tgz#6eb19ae5a1ee1dd9df0b969e66ce0b7fa30b5e60"
|
||||
|
||||
lodash.pick@^4.4.0:
|
||||
version "4.4.0"
|
||||
resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3"
|
||||
|
||||
lodash.reduce@^4.6.0:
|
||||
version "4.6.0"
|
||||
resolved "https://registry.yarnpkg.com/lodash.reduce/-/lodash.reduce-4.6.0.tgz#f1ab6b839299ad48f784abbf476596f03b914d3b"
|
||||
@ -6982,7 +7015,7 @@ lodash.values@^4.3.0:
|
||||
version "4.3.0"
|
||||
resolved "https://registry.yarnpkg.com/lodash.values/-/lodash.values-4.3.0.tgz#a3a6c2b0ebecc5c2cba1c17e6e620fe81b53d347"
|
||||
|
||||
"lodash@>=3.5 <5", lodash@^4.13.1, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.5.1:
|
||||
lodash@4.17.5, "lodash@>=3.5 <5", lodash@^4.13.1, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.5.1:
|
||||
version "4.17.5"
|
||||
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511"
|
||||
|
||||
@ -7227,7 +7260,7 @@ micromatch@^2.1.5, micromatch@^2.3.11:
|
||||
parse-glob "^3.0.4"
|
||||
regex-cache "^0.4.2"
|
||||
|
||||
micromatch@^3.1.4:
|
||||
micromatch@^3.1.4, micromatch@^3.1.8:
|
||||
version "3.1.10"
|
||||
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23"
|
||||
dependencies:
|
||||
@ -7245,24 +7278,6 @@ micromatch@^3.1.4:
|
||||
snapdragon "^0.8.1"
|
||||
to-regex "^3.0.2"
|
||||
|
||||
micromatch@^3.1.8:
|
||||
version "3.1.9"
|
||||
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.9.tgz#15dc93175ae39e52e93087847096effc73efcf89"
|
||||
dependencies:
|
||||
arr-diff "^4.0.0"
|
||||
array-unique "^0.3.2"
|
||||
braces "^2.3.1"
|
||||
define-property "^2.0.2"
|
||||
extend-shallow "^3.0.2"
|
||||
extglob "^2.0.4"
|
||||
fragment-cache "^0.2.1"
|
||||
kind-of "^6.0.2"
|
||||
nanomatch "^1.2.9"
|
||||
object.pick "^1.3.0"
|
||||
regex-not "^1.0.0"
|
||||
snapdragon "^0.8.1"
|
||||
to-regex "^3.0.1"
|
||||
|
||||
miller-rabin@^4.0.0:
|
||||
version "4.0.1"
|
||||
resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d"
|
||||
@ -7377,8 +7392,8 @@ mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.1, mkdirp@~0.5.0, mkdi
|
||||
minimist "0.0.8"
|
||||
|
||||
modify-values@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.0.tgz#e2b6cdeb9ce19f99317a53722f3dbf5df5eaaab2"
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022"
|
||||
|
||||
moment@^2.6.0:
|
||||
version "2.21.0"
|
||||
@ -7517,6 +7532,10 @@ next-tick@1:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c"
|
||||
|
||||
nice-try@^1.0.4:
|
||||
version "1.0.4"
|
||||
resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.4.tgz#d93962f6c52f2c1558c0fbda6d512819f1efe1c4"
|
||||
|
||||
nigel@3.x.x:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/nigel/-/nigel-3.0.0.tgz#a6e3378a8a34281e75ba1641e886a415d4be93ad"
|
||||
@ -7550,6 +7569,10 @@ node-fetch@1.7.3, node-fetch@^1.0.1:
|
||||
encoding "^0.1.11"
|
||||
is-stream "^1.0.1"
|
||||
|
||||
node-fetch@2.1.1:
|
||||
version "2.1.1"
|
||||
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.1.1.tgz#369ca70b82f50c86496104a6c776d274f4e4a2d4"
|
||||
|
||||
node-forge@0.7.1:
|
||||
version "0.7.1"
|
||||
resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.1.tgz#9da611ea08982f4b94206b3beb4cc9665f20c300"
|
||||
@ -8026,7 +8049,7 @@ path-is-inside@^1.0.1, path-is-inside@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
|
||||
|
||||
path-key@^2.0.0:
|
||||
path-key@^2.0.0, path-key@^2.0.1:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40"
|
||||
|
||||
@ -8456,15 +8479,7 @@ postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0
|
||||
source-map "^0.5.6"
|
||||
supports-color "^3.2.3"
|
||||
|
||||
postcss@^6.0.0, postcss@^6.0.13:
|
||||
version "6.0.20"
|
||||
resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.20.tgz#686107e743a12d5530cb68438c590d5b2bf72c3c"
|
||||
dependencies:
|
||||
chalk "^2.3.2"
|
||||
source-map "^0.6.1"
|
||||
supports-color "^5.3.0"
|
||||
|
||||
postcss@^6.0.1:
|
||||
postcss@^6.0.0, postcss@^6.0.1, postcss@^6.0.13:
|
||||
version "6.0.21"
|
||||
resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.21.tgz#8265662694eddf9e9a5960db6da33c39e4cd069d"
|
||||
dependencies:
|
||||
@ -8801,15 +8816,14 @@ rc@^1.0.1, rc@^1.1.6, rc@^1.1.7:
|
||||
strip-json-comments "~2.0.1"
|
||||
|
||||
react-apollo@^2.0.4:
|
||||
version "2.0.4"
|
||||
resolved "https://registry.yarnpkg.com/react-apollo/-/react-apollo-2.0.4.tgz#01dd32a8e388672f5d7385b21cdd0b94009ee9ee"
|
||||
version "2.1.0"
|
||||
resolved "https://registry.yarnpkg.com/react-apollo/-/react-apollo-2.1.0.tgz#b94c4aca513776d90c368f20a65f99e98fdfea17"
|
||||
dependencies:
|
||||
apollo-link "^1.0.0"
|
||||
hoist-non-react-statics "^2.2.0"
|
||||
invariant "^2.2.1"
|
||||
lodash.flowright "^3.5.0"
|
||||
lodash.pick "^4.4.0"
|
||||
prop-types "^15.5.8"
|
||||
fbjs "^0.8.16"
|
||||
hoist-non-react-statics "^2.3.1"
|
||||
invariant "^2.2.2"
|
||||
lodash "4.17.5"
|
||||
prop-types "^15.6.0"
|
||||
|
||||
react-bundle@^1.1.0:
|
||||
version "1.1.0"
|
||||
@ -9530,7 +9544,7 @@ request@2.81.0:
|
||||
tunnel-agent "^0.6.0"
|
||||
uuid "^3.0.0"
|
||||
|
||||
"request@>= 2.44.0 < 3.0.0", request@^2.79.0, request@^2.83.0:
|
||||
"request@>= 2.44.0 < 3.0.0", request@^2.79.0:
|
||||
version "2.85.0"
|
||||
resolved "https://registry.yarnpkg.com/request/-/request-2.85.0.tgz#5a03615a47c61420b3eb99b7dba204f83603e1fa"
|
||||
dependencies:
|
||||
@ -9609,10 +9623,6 @@ resolve-from@^1.0.0:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226"
|
||||
|
||||
resolve-from@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57"
|
||||
|
||||
resolve-from@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748"
|
||||
@ -9621,12 +9631,6 @@ resolve-pathname@^2.2.0:
|
||||
version "2.2.0"
|
||||
resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-2.2.0.tgz#7e9ae21ed815fd63ab189adeee64dc831eefa879"
|
||||
|
||||
resolve-pkg@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/resolve-pkg/-/resolve-pkg-1.0.0.tgz#e19a15e78aca2e124461dc92b2e3943ef93494d9"
|
||||
dependencies:
|
||||
resolve-from "^2.0.0"
|
||||
|
||||
resolve-url@^0.2.1, resolve-url@~0.2.1:
|
||||
version "0.2.1"
|
||||
resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
|
||||
@ -9805,7 +9809,7 @@ semver-utils@^1.1.1:
|
||||
version "5.5.0"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab"
|
||||
|
||||
send@0.16.2:
|
||||
send@0.16.2, send@^0.16.2:
|
||||
version "0.16.2"
|
||||
resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1"
|
||||
dependencies:
|
||||
@ -10395,9 +10399,9 @@ styled-components-spacing@^2.1.3:
|
||||
react-create-component-from-tag-prop "^1.2.1"
|
||||
styled-components-breakpoint "^1.0.0-preview.3"
|
||||
|
||||
styled-components@3.2.1, styled-components@^3.1.6, styled-components@^3.2.1:
|
||||
version "3.2.1"
|
||||
resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-3.2.1.tgz#4f780c588829eb06624b686f9b793a10d04db139"
|
||||
styled-components@^3.1.6, styled-components@^3.2.1:
|
||||
version "3.2.3"
|
||||
resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-3.2.3.tgz#50f71207320eeb1ef539dec4637f21f5e3c936b4"
|
||||
dependencies:
|
||||
buffer "^5.0.3"
|
||||
css-to-react-native "^2.0.3"
|
||||
@ -10406,8 +10410,8 @@ styled-components@3.2.1, styled-components@^3.1.6, styled-components@^3.2.1:
|
||||
is-plain-object "^2.0.1"
|
||||
opencollective "^1.0.3"
|
||||
prop-types "^15.5.4"
|
||||
stylis "^3.4.10"
|
||||
stylis-rule-sheet "^0.0.8"
|
||||
stylis "^3.5.0"
|
||||
stylis-rule-sheet "^0.0.10"
|
||||
supports-color "^3.2.3"
|
||||
|
||||
styled-flex-component@^2.2.1:
|
||||
@ -10420,11 +10424,11 @@ styled-is@1.1.2, styled-is@^1.1.2:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/styled-is/-/styled-is-1.1.2.tgz#f23a43249ba52ac9136c166aac1da30a5711593e"
|
||||
|
||||
stylis-rule-sheet@0.0.7, stylis-rule-sheet@^0.0.5, stylis-rule-sheet@^0.0.8:
|
||||
version "0.0.7"
|
||||
resolved "https://registry.yarnpkg.com/stylis-rule-sheet/-/stylis-rule-sheet-0.0.7.tgz#5c51dc879141a61821c2094ba91d2cbcf2469c6c"
|
||||
stylis-rule-sheet@0.0.10, stylis-rule-sheet@^0.0.10, stylis-rule-sheet@^0.0.5:
|
||||
version "0.0.10"
|
||||
resolved "https://registry.yarnpkg.com/stylis-rule-sheet/-/stylis-rule-sheet-0.0.10.tgz#44e64a2b076643f4b52e5ff71efc04d8c3c4a430"
|
||||
|
||||
stylis@^3.0.0, stylis@^3.3.2, stylis@^3.4.10:
|
||||
stylis@^3.0.0, stylis@^3.3.2, stylis@^3.5.0:
|
||||
version "3.5.0"
|
||||
resolved "https://registry.yarnpkg.com/stylis/-/stylis-3.5.0.tgz#016fa239663d77f868fef5b67cf201c4b7c701e1"
|
||||
|
||||
@ -10480,7 +10484,7 @@ sw-precache-webpack-plugin@0.11.4:
|
||||
sw-precache "^5.1.1"
|
||||
uglify-js "^3.0.13"
|
||||
|
||||
sw-precache-webpack-plugin@^0.11.4:
|
||||
sw-precache-webpack-plugin@^0.11.5:
|
||||
version "0.11.5"
|
||||
resolved "https://registry.yarnpkg.com/sw-precache-webpack-plugin/-/sw-precache-webpack-plugin-0.11.5.tgz#9b53f65a4966e3adc298e256b3cef7a55c73fdfd"
|
||||
dependencies:
|
||||
@ -10899,7 +10903,7 @@ uglify-to-browserify@~1.0.0:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7"
|
||||
|
||||
uglifyjs-webpack-plugin@1.2.4, uglifyjs-webpack-plugin@^1.2.2:
|
||||
uglifyjs-webpack-plugin@1.2.4, uglifyjs-webpack-plugin@^1.2.4:
|
||||
version "1.2.4"
|
||||
resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.4.tgz#5eec941b2e9b8538be0a20fc6eda25b14c7c1043"
|
||||
dependencies:
|
||||
|
Loading…
Reference in New Issue
Block a user