mirror of
https://github.com/skooner-k8s/skooner.git
synced 2026-08-28 19:27:15 +00:00
Added gh-pages branch
This commit is contained in:
@@ -1,2 +0,0 @@
|
||||
.DS_Store
|
||||
**/node_modules
|
||||
@@ -1,76 +0,0 @@
|
||||
# Contributor Covenant Code of Conduct
|
||||
|
||||
## Our Pledge
|
||||
|
||||
In the interest of fostering an open and welcoming environment, we as
|
||||
contributors and maintainers pledge to making participation in our project and
|
||||
our community a harassment-free experience for everyone, regardless of age, body
|
||||
size, disability, ethnicity, sex characteristics, gender identity and expression,
|
||||
level of experience, education, socio-economic status, nationality, personal
|
||||
appearance, race, religion, or sexual identity and orientation.
|
||||
|
||||
## Our Standards
|
||||
|
||||
Examples of behavior that contributes to creating a positive environment
|
||||
include:
|
||||
|
||||
* Using welcoming and inclusive language
|
||||
* Being respectful of differing viewpoints and experiences
|
||||
* Gracefully accepting constructive criticism
|
||||
* Focusing on what is best for the community
|
||||
* Showing empathy towards other community members
|
||||
|
||||
Examples of unacceptable behavior by participants include:
|
||||
|
||||
* The use of sexualized language or imagery and unwelcome sexual attention or
|
||||
advances
|
||||
* Trolling, insulting/derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or electronic
|
||||
address, without explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a
|
||||
professional setting
|
||||
|
||||
## Our Responsibilities
|
||||
|
||||
Project maintainers are responsible for clarifying the standards of acceptable
|
||||
behavior and are expected to take appropriate and fair corrective action in
|
||||
response to any instances of unacceptable behavior.
|
||||
|
||||
Project maintainers have the right and responsibility to remove, edit, or
|
||||
reject comments, commits, code, wiki edits, issues, and other contributions
|
||||
that are not aligned to this Code of Conduct, or to ban temporarily or
|
||||
permanently any contributor for other behaviors that they deem inappropriate,
|
||||
threatening, offensive, or harmful.
|
||||
|
||||
## Scope
|
||||
|
||||
This Code of Conduct applies both within project spaces and in public spaces
|
||||
when an individual is representing the project or its community. Examples of
|
||||
representing a project or community include using an official project e-mail
|
||||
address, posting via an official social media account, or acting as an appointed
|
||||
representative at an online or offline event. Representation of a project may be
|
||||
further defined and clarified by project maintainers.
|
||||
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported by contacting the project team at [opensource@indeed.com](mailto:opensource@indeed.com). All
|
||||
complaints will be reviewed and investigated and will result in a response that
|
||||
is deemed necessary and appropriate to the circumstances. The project team is
|
||||
obligated to maintain confidentiality with regard to the reporter of an incident.
|
||||
Further details of specific enforcement policies may be posted separately.
|
||||
|
||||
Project maintainers who do not follow or enforce the Code of Conduct in good
|
||||
faith may face temporary or permanent repercussions as determined by other
|
||||
members of the project's leadership.
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
|
||||
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
|
||||
|
||||
[homepage]: https://www.contributor-covenant.org
|
||||
|
||||
For answers to common questions about this code of conduct, see
|
||||
https://www.contributor-covenant.org/faq
|
||||
-30
@@ -1,30 +0,0 @@
|
||||
# Stage 1 - the build react app
|
||||
FROM node:12.4.0-alpine as build-deps
|
||||
WORKDIR /usr/src/app
|
||||
COPY client/package.json client/package-lock.json ./
|
||||
RUN npm i
|
||||
|
||||
COPY client/ ./
|
||||
RUN npm run build
|
||||
|
||||
# Stage 2 - the production environment
|
||||
FROM node:12.4.0-alpine
|
||||
|
||||
RUN apk add --no-cache tini
|
||||
ENV NODE_ENV production
|
||||
WORKDIR /usr/src/app
|
||||
RUN chown -R node:node /usr/src/app/
|
||||
EXPOSE 4654
|
||||
|
||||
COPY server/package.json server/package-lock.json ./
|
||||
RUN npm i --production
|
||||
|
||||
COPY --from=build-deps /usr/src/app/build /usr/src/app/public
|
||||
COPY /server ./
|
||||
|
||||
# USER 1000 is the "node" user
|
||||
# This is to avoid the "container has runAsNonRoot and image has non-numeric user (node), cannot verify user is non-root"
|
||||
# in clusters with PSP enabled
|
||||
USER 1000
|
||||
|
||||
ENTRYPOINT ["/sbin/tini", "--", "node", "."]
|
||||
+258
@@ -0,0 +1,258 @@
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
activesupport (6.0.3.2)
|
||||
concurrent-ruby (~> 1.0, >= 1.0.2)
|
||||
i18n (>= 0.7, < 2)
|
||||
minitest (~> 5.1)
|
||||
tzinfo (~> 1.1)
|
||||
zeitwerk (~> 2.2, >= 2.2.2)
|
||||
addressable (2.7.0)
|
||||
public_suffix (>= 2.0.2, < 5.0)
|
||||
coffee-script (2.4.1)
|
||||
coffee-script-source
|
||||
execjs
|
||||
coffee-script-source (1.11.1)
|
||||
colorator (1.1.0)
|
||||
commonmarker (0.17.13)
|
||||
ruby-enum (~> 0.5)
|
||||
concurrent-ruby (1.1.7)
|
||||
dnsruby (1.61.4)
|
||||
simpleidn (~> 0.1)
|
||||
em-websocket (0.5.1)
|
||||
eventmachine (>= 0.12.9)
|
||||
http_parser.rb (~> 0.6.0)
|
||||
ethon (0.12.0)
|
||||
ffi (>= 1.3.0)
|
||||
eventmachine (1.2.7)
|
||||
execjs (2.7.0)
|
||||
faraday (1.0.1)
|
||||
multipart-post (>= 1.2, < 3)
|
||||
ffi (1.13.1)
|
||||
forwardable-extended (2.6.0)
|
||||
gemoji (3.0.1)
|
||||
github-pages (207)
|
||||
github-pages-health-check (= 1.16.1)
|
||||
jekyll (= 3.9.0)
|
||||
jekyll-avatar (= 0.7.0)
|
||||
jekyll-coffeescript (= 1.1.1)
|
||||
jekyll-commonmark-ghpages (= 0.1.6)
|
||||
jekyll-default-layout (= 0.1.4)
|
||||
jekyll-feed (= 0.13.0)
|
||||
jekyll-gist (= 1.5.0)
|
||||
jekyll-github-metadata (= 2.13.0)
|
||||
jekyll-mentions (= 1.5.1)
|
||||
jekyll-optional-front-matter (= 0.3.2)
|
||||
jekyll-paginate (= 1.1.0)
|
||||
jekyll-readme-index (= 0.3.0)
|
||||
jekyll-redirect-from (= 0.15.0)
|
||||
jekyll-relative-links (= 0.6.1)
|
||||
jekyll-remote-theme (= 0.4.1)
|
||||
jekyll-sass-converter (= 1.5.2)
|
||||
jekyll-seo-tag (= 2.6.1)
|
||||
jekyll-sitemap (= 1.4.0)
|
||||
jekyll-swiss (= 1.0.0)
|
||||
jekyll-theme-architect (= 0.1.1)
|
||||
jekyll-theme-cayman (= 0.1.1)
|
||||
jekyll-theme-dinky (= 0.1.1)
|
||||
jekyll-theme-hacker (= 0.1.1)
|
||||
jekyll-theme-leap-day (= 0.1.1)
|
||||
jekyll-theme-merlot (= 0.1.1)
|
||||
jekyll-theme-midnight (= 0.1.1)
|
||||
jekyll-theme-minimal (= 0.1.1)
|
||||
jekyll-theme-modernist (= 0.1.1)
|
||||
jekyll-theme-primer (= 0.5.4)
|
||||
jekyll-theme-slate (= 0.1.1)
|
||||
jekyll-theme-tactile (= 0.1.1)
|
||||
jekyll-theme-time-machine (= 0.1.1)
|
||||
jekyll-titles-from-headings (= 0.5.3)
|
||||
jemoji (= 0.11.1)
|
||||
kramdown (= 2.3.0)
|
||||
kramdown-parser-gfm (= 1.1.0)
|
||||
liquid (= 4.0.3)
|
||||
mercenary (~> 0.3)
|
||||
minima (= 2.5.1)
|
||||
nokogiri (>= 1.10.4, < 2.0)
|
||||
rouge (= 3.19.0)
|
||||
terminal-table (~> 1.4)
|
||||
github-pages-health-check (1.16.1)
|
||||
addressable (~> 2.3)
|
||||
dnsruby (~> 1.60)
|
||||
octokit (~> 4.0)
|
||||
public_suffix (~> 3.0)
|
||||
typhoeus (~> 1.3)
|
||||
html-pipeline (2.14.0)
|
||||
activesupport (>= 2)
|
||||
nokogiri (>= 1.4)
|
||||
http_parser.rb (0.6.0)
|
||||
i18n (0.9.5)
|
||||
concurrent-ruby (~> 1.0)
|
||||
jekyll (3.9.0)
|
||||
addressable (~> 2.4)
|
||||
colorator (~> 1.0)
|
||||
em-websocket (~> 0.5)
|
||||
i18n (~> 0.7)
|
||||
jekyll-sass-converter (~> 1.0)
|
||||
jekyll-watch (~> 2.0)
|
||||
kramdown (>= 1.17, < 3)
|
||||
liquid (~> 4.0)
|
||||
mercenary (~> 0.3.3)
|
||||
pathutil (~> 0.9)
|
||||
rouge (>= 1.7, < 4)
|
||||
safe_yaml (~> 1.0)
|
||||
jekyll-avatar (0.7.0)
|
||||
jekyll (>= 3.0, < 5.0)
|
||||
jekyll-coffeescript (1.1.1)
|
||||
coffee-script (~> 2.2)
|
||||
coffee-script-source (~> 1.11.1)
|
||||
jekyll-commonmark (1.3.1)
|
||||
commonmarker (~> 0.14)
|
||||
jekyll (>= 3.7, < 5.0)
|
||||
jekyll-commonmark-ghpages (0.1.6)
|
||||
commonmarker (~> 0.17.6)
|
||||
jekyll-commonmark (~> 1.2)
|
||||
rouge (>= 2.0, < 4.0)
|
||||
jekyll-default-layout (0.1.4)
|
||||
jekyll (~> 3.0)
|
||||
jekyll-feed (0.13.0)
|
||||
jekyll (>= 3.7, < 5.0)
|
||||
jekyll-gist (1.5.0)
|
||||
octokit (~> 4.2)
|
||||
jekyll-github-metadata (2.13.0)
|
||||
jekyll (>= 3.4, < 5.0)
|
||||
octokit (~> 4.0, != 4.4.0)
|
||||
jekyll-mentions (1.5.1)
|
||||
html-pipeline (~> 2.3)
|
||||
jekyll (>= 3.7, < 5.0)
|
||||
jekyll-optional-front-matter (0.3.2)
|
||||
jekyll (>= 3.0, < 5.0)
|
||||
jekyll-paginate (1.1.0)
|
||||
jekyll-readme-index (0.3.0)
|
||||
jekyll (>= 3.0, < 5.0)
|
||||
jekyll-redirect-from (0.15.0)
|
||||
jekyll (>= 3.3, < 5.0)
|
||||
jekyll-relative-links (0.6.1)
|
||||
jekyll (>= 3.3, < 5.0)
|
||||
jekyll-remote-theme (0.4.1)
|
||||
addressable (~> 2.0)
|
||||
jekyll (>= 3.5, < 5.0)
|
||||
rubyzip (>= 1.3.0)
|
||||
jekyll-sass-converter (1.5.2)
|
||||
sass (~> 3.4)
|
||||
jekyll-seo-tag (2.6.1)
|
||||
jekyll (>= 3.3, < 5.0)
|
||||
jekyll-sitemap (1.4.0)
|
||||
jekyll (>= 3.7, < 5.0)
|
||||
jekyll-swiss (1.0.0)
|
||||
jekyll-theme-architect (0.1.1)
|
||||
jekyll (~> 3.5)
|
||||
jekyll-seo-tag (~> 2.0)
|
||||
jekyll-theme-cayman (0.1.1)
|
||||
jekyll (~> 3.5)
|
||||
jekyll-seo-tag (~> 2.0)
|
||||
jekyll-theme-dinky (0.1.1)
|
||||
jekyll (~> 3.5)
|
||||
jekyll-seo-tag (~> 2.0)
|
||||
jekyll-theme-hacker (0.1.1)
|
||||
jekyll (~> 3.5)
|
||||
jekyll-seo-tag (~> 2.0)
|
||||
jekyll-theme-leap-day (0.1.1)
|
||||
jekyll (~> 3.5)
|
||||
jekyll-seo-tag (~> 2.0)
|
||||
jekyll-theme-merlot (0.1.1)
|
||||
jekyll (~> 3.5)
|
||||
jekyll-seo-tag (~> 2.0)
|
||||
jekyll-theme-midnight (0.1.1)
|
||||
jekyll (~> 3.5)
|
||||
jekyll-seo-tag (~> 2.0)
|
||||
jekyll-theme-minimal (0.1.1)
|
||||
jekyll (~> 3.5)
|
||||
jekyll-seo-tag (~> 2.0)
|
||||
jekyll-theme-modernist (0.1.1)
|
||||
jekyll (~> 3.5)
|
||||
jekyll-seo-tag (~> 2.0)
|
||||
jekyll-theme-primer (0.5.4)
|
||||
jekyll (> 3.5, < 5.0)
|
||||
jekyll-github-metadata (~> 2.9)
|
||||
jekyll-seo-tag (~> 2.0)
|
||||
jekyll-theme-slate (0.1.1)
|
||||
jekyll (~> 3.5)
|
||||
jekyll-seo-tag (~> 2.0)
|
||||
jekyll-theme-tactile (0.1.1)
|
||||
jekyll (~> 3.5)
|
||||
jekyll-seo-tag (~> 2.0)
|
||||
jekyll-theme-time-machine (0.1.1)
|
||||
jekyll (~> 3.5)
|
||||
jekyll-seo-tag (~> 2.0)
|
||||
jekyll-titles-from-headings (0.5.3)
|
||||
jekyll (>= 3.3, < 5.0)
|
||||
jekyll-watch (2.2.1)
|
||||
listen (~> 3.0)
|
||||
jemoji (0.11.1)
|
||||
gemoji (~> 3.0)
|
||||
html-pipeline (~> 2.2)
|
||||
jekyll (>= 3.0, < 5.0)
|
||||
kramdown (2.3.0)
|
||||
rexml
|
||||
kramdown-parser-gfm (1.1.0)
|
||||
kramdown (~> 2.0)
|
||||
liquid (4.0.3)
|
||||
listen (3.2.1)
|
||||
rb-fsevent (~> 0.10, >= 0.10.3)
|
||||
rb-inotify (~> 0.9, >= 0.9.10)
|
||||
mercenary (0.3.6)
|
||||
mini_portile2 (2.4.0)
|
||||
minima (2.5.1)
|
||||
jekyll (>= 3.5, < 5.0)
|
||||
jekyll-feed (~> 0.9)
|
||||
jekyll-seo-tag (~> 2.1)
|
||||
minitest (5.14.1)
|
||||
multipart-post (2.1.1)
|
||||
nokogiri (1.10.10)
|
||||
mini_portile2 (~> 2.4.0)
|
||||
octokit (4.18.0)
|
||||
faraday (>= 0.9)
|
||||
sawyer (~> 0.8.0, >= 0.5.3)
|
||||
pathutil (0.16.2)
|
||||
forwardable-extended (~> 2.6)
|
||||
public_suffix (3.1.1)
|
||||
rb-fsevent (0.10.4)
|
||||
rb-inotify (0.10.1)
|
||||
ffi (~> 1.0)
|
||||
rexml (3.2.4)
|
||||
rouge (3.19.0)
|
||||
ruby-enum (0.8.0)
|
||||
i18n
|
||||
rubyzip (2.3.0)
|
||||
safe_yaml (1.0.5)
|
||||
sass (3.7.4)
|
||||
sass-listen (~> 4.0.0)
|
||||
sass-listen (4.0.0)
|
||||
rb-fsevent (~> 0.9, >= 0.9.4)
|
||||
rb-inotify (~> 0.9, >= 0.9.7)
|
||||
sawyer (0.8.2)
|
||||
addressable (>= 2.3.5)
|
||||
faraday (> 0.8, < 2.0)
|
||||
simpleidn (0.1.1)
|
||||
unf (~> 0.1.4)
|
||||
terminal-table (1.8.0)
|
||||
unicode-display_width (~> 1.1, >= 1.1.1)
|
||||
thread_safe (0.3.6)
|
||||
typhoeus (1.4.0)
|
||||
ethon (>= 0.9.0)
|
||||
tzinfo (1.2.7)
|
||||
thread_safe (~> 0.1)
|
||||
unf (0.1.4)
|
||||
unf_ext
|
||||
unf_ext (0.0.7.7)
|
||||
unicode-display_width (1.7.0)
|
||||
zeitwerk (2.4.0)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
github-pages
|
||||
|
||||
BUNDLED WITH
|
||||
1.17.3
|
||||
@@ -1,201 +0,0 @@
|
||||
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.
|
||||
@@ -1 +0,0 @@
|
||||
osslifecycle=active
|
||||
@@ -1,144 +0,0 @@
|
||||
# K8Dash - Kubernetes Dashboard
|
||||
|
||||
K8Dash is the easiest way to manage your Kubernetes cluster. Why?
|
||||
* Full cluster management: Namespaces, Nodes, Pods, Replica Sets, Deployments, Storage, RBAC and more
|
||||
* Blazing fast and Always Live: no need to refresh pages to see the latest
|
||||
* Quickly visualize cluster health at a glance: Real time charts help quickly track down poorly performing resources
|
||||
* Easy CRUD and scaling: plus inline API docs to easily understand what each field does
|
||||
* Simple OpenID integration: no special proxies required
|
||||
* Simple installation: use the provided yaml resources to have K8Dash up and running in under 1 minute (no, seriously)
|
||||
|
||||
|
||||
## Click the video below to see K8Dash in action
|
||||
[](http://www.youtube.com/watch?v=u-1jGAhAHAM "K8Dash - Kubernetes Dashboard")
|
||||
|
||||
|
||||
## Prerequisites
|
||||
+ A running Kubernetes cluster
|
||||
+ [metrics server](https://github.com/kubernetes-incubator/metrics-server) installed (optional, but strongly recommended)
|
||||
+ A Kubernetes cluster configured for [OpenId Connect](https://kubernetes.io/docs/reference/access-authn-authz/authentication/#openid-connect-tokens) authentication (optional)
|
||||
|
||||
## Getting Started
|
||||
Deploy k8dash with something like the following...
|
||||
|
||||
NOTE: never trust a file downloaded from the internet. Make sure to review the contents of [kubernetes-k8dash.yaml](https://raw.githubusercontent.com/herbrandson/k8dash/master/kubernetes-k8dash.yaml) before running the script below.
|
||||
|
||||
``` bash
|
||||
kubectl apply -f https://raw.githubusercontent.com/herbrandson/k8dash/master/kubernetes-k8dash.yaml
|
||||
```
|
||||
|
||||
To access k8dash, you must make it publicly visible. If you have an ingress server setup, you can accomplish by adding a route like the following
|
||||
|
||||
|
||||
``` yaml
|
||||
kind: Ingress
|
||||
apiVersion: extensions/v1beta1
|
||||
metadata:
|
||||
name: k8dash
|
||||
namespace: kube-system
|
||||
spec:
|
||||
rules:
|
||||
-
|
||||
host: k8dash.example.com
|
||||
http:
|
||||
paths:
|
||||
-
|
||||
path: /
|
||||
backend:
|
||||
serviceName: k8dash
|
||||
servicePort: 80
|
||||
```
|
||||
|
||||
# kubectl proxy
|
||||
Unfortunately, `kubectl proxy` can not be used to access k8dash. According to the information at [https://github.com/kubernetes/kubernetes/issues/38775#issuecomment-277915961](https://github.com/kubernetes/kubernetes/issues/38775#issuecomment-277915961), it seems that `kubectl proxy` strips the Authorization header when it proxies requests. From that link:
|
||||
|
||||
> this is working as expected. "proxying" through the apiserver will not get you standard proxy behavior (preserving Authorization headers end-to-end), because the API is not being used as a standard proxy
|
||||
|
||||
|
||||
|
||||
# Logging in
|
||||
There are multiple options logging into the dashboard.
|
||||
|
||||
## Service Account Token
|
||||
The first (and easiest) option is to create a dedicated service account. The can be accomplished using the following script.
|
||||
|
||||
``` bash
|
||||
# Create the service account in the current namespace (we assume default)
|
||||
kubectl create serviceaccount k8dash-sa
|
||||
|
||||
# Give that service account root on the cluster
|
||||
kubectl create clusterrolebinding k8dash-sa --clusterrole=cluster-admin --serviceaccount=default:k8dash-sa
|
||||
|
||||
# Find the secret that was created to hold the token for the SA
|
||||
kubectl get secrets
|
||||
|
||||
# Show the contents of the secret to extract the token
|
||||
kubectl describe secret k8dash-sa-token-xxxxx
|
||||
|
||||
```
|
||||
|
||||
Retrieve the `token` value from the secret and enter it into the login screen to access the dashboard.
|
||||
|
||||
## Running k8dash with OpenId Connect (oidc)
|
||||
K8dash makes using OpenId Connect for authentication easy. Assuming your cluster is configured to use OIDC, all you need to do is create a secret containing your credentials and run the [kubernetes-k8dash-oidc.yaml](https://raw.githubusercontent.com/herbrandson/k8dash/master/kubernetes-k8dash-oidc.yaml) config.
|
||||
|
||||
To learn more about configuring a cluster for OIDC, check out these great links
|
||||
+ [https://kubernetes.io/docs/reference/access-authn-authz/authentication/](https://kubernetes.io/docs/reference/access-authn-authz/authentication/#openid-connect-tokens)
|
||||
+ [https://medium.com/@mrbobbytables/kubernetes-day-2-operations-authn-authz-with-oidc-and-a-little-help-from-keycloak-de4ea1bdbbe](https://medium.com/@mrbobbytables/kubernetes-day-2-operations-authn-authz-with-oidc-and-a-little-help-from-keycloak-de4ea1bdbbe)
|
||||
+ [https://medium.com/@int128/kubectl-with-openid-connect-43120b451672](https://medium.com/@int128/kubectl-with-openid-connect-43120b451672)
|
||||
+ [https://www.google.com/search?q=kubernetes+configure+oidc&oq=kubernetes+configure+oidc&aqs=chrome..69i57j0.4772j0j7&sourceid=chrome&ie=UTF-8](https://www.google.com/search?q=kubernetes+configure+oidc&oq=kubernetes+configure+oidc&aqs=chrome..69i57j0.4772j0j7&sourceid=chrome&ie=UTF-8)
|
||||
|
||||
You can deploy k8dash with oidc support using something like the following script...
|
||||
|
||||
NOTE: never trust a file downloaded from the internet. Make sure to review the contents of [kubernetes-k8dash-oidc.yaml](https://raw.githubusercontent.com/herbrandson/k8dash/master/kubernetes-k8dash-oidc.yaml) before running the script below.
|
||||
|
||||
``` bash
|
||||
OIDC_URL=<put your endpoint url here... something like https://accounts.google.com>
|
||||
OIDC_ID=<put your id here... something like blah-blah-blah.apps.googleusercontent.com>
|
||||
OIDC_SECRET=<put your oidc secret here>
|
||||
|
||||
kubectl create secret -n kube-system generic k8dash \
|
||||
--from-literal=url="$OIDC_URL" \
|
||||
--from-literal=id="$OIDC_ID" \
|
||||
--from-literal=secret="$OIDC_SECRET"
|
||||
|
||||
kubectl apply -f https://raw.githubusercontent.com/herbrandson/k8dash/master/kubernetes-k8dash-oidc.yaml
|
||||
|
||||
```
|
||||
|
||||
Additionally, there are a few other OIDC options you can provide via environment variables. First is `OIDC_SCOPES`. The default value for this value is `openid email`, but additional scopes can also be added using something like `OIDC_SCOPES="openid email groups"`.
|
||||
|
||||
The other option is `OIDC_METADATA`. K8Dash uses the excellent [node-openid-client](https://github.com/panva/node-openid-client) module. `OIDC_METADATA` will take a json string and pass it to the `Client` constructor. Docs [here](https://github.com/panva/node-openid-client/blob/master/docs/README.md#client). For example, `OIDC_METADATA='{"token_endpoint_auth_method":"client_secret_post"}`
|
||||
|
||||
## Running k8dash with NodePort
|
||||
If you do not have an ingress server setup, you can utilize a NodePort service as configured in the [kubernetes-k8dash-nodeport.yaml](https://raw.githubusercontent.com/herbrandson/k8dash/master/kubernetes-k8dash-nodeport.yaml). This is ideal when creating a single node master, or if you want to get up and running as fast as possible.
|
||||
|
||||
This will map the k8dash port 4654 to a randomly selected port on the running node. The assigned port can be found using
|
||||
```
|
||||
$ kubectl get svc --namespace=kube-system
|
||||
|
||||
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
|
||||
k8dash NodePort 10.107.107.62 <none> 4654:32565/TCP 1m
|
||||
```
|
||||
|
||||
## Metrics
|
||||
K8dash relies heavily on [metrics-server](https://github.com/kubernetes-incubator/metrics-server) to display real time cluster metrics. It is strongly recommended to have metrics-server installed to get the best experiance from k8dash.
|
||||
|
||||
+ [Installing metrics-server](https://github.com/kubernetes-incubator/metrics-server)
|
||||
+ [Running metrics-server with kubeadm](https://medium.com/@waleedkhan91/how-to-configure-metrics-server-on-kubeadm-provisioned-kubernetes-cluster-f755a2ac43a2)
|
||||
|
||||
|
||||
# Development
|
||||
K8dash is made up of 2 parts. The server and the client.
|
||||
|
||||
### Server
|
||||
To run the server, run `npm i` from the `/server` directory to install dependencies and then `npm start` to run the server.
|
||||
The server is a simple express.js server that is primarily responsible for proxying requests to the Kubernetes api server.
|
||||
During development, the server will use whatever is configured in `~/.kube/config` to connect the desired cluster.
|
||||
|
||||
### Client
|
||||
For the client, move to the `/client` directory, run `npm i` and then `npm start`. The client is a React application with minimal other dependencies.
|
||||
|
||||
## License
|
||||
|
||||
[Apache License 2.0](https://raw.githubusercontent.com/herbrandson/k8dash/master/LICENSE)
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
desc 'Delete generated _site files'
|
||||
task :clean do
|
||||
system "rm -fR _site"
|
||||
end
|
||||
|
||||
desc 'Run the jekyll dev server'
|
||||
task :serve do
|
||||
system "jekyll serve --watch --baseurl="
|
||||
end
|
||||
|
||||
task :default => :serve
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
name: Proctor - A/B Testing Framework by Indeed
|
||||
# https://github.com/blog/2100-github-pages-now-faster-and-simpler-with-jekyll-3-0
|
||||
highlighter: rouge
|
||||
markdown: kramdown
|
||||
kramdown:
|
||||
input: GFM #Enable GitHub Flavored Markdown (fenced code blocks)
|
||||
auto_ids: true
|
||||
hard_wrap: false
|
||||
syntax_highlighter: rouge
|
||||
|
||||
exclude: ['Gemfile', 'Gemfile.lock', 'Rakefile.rb', 'README.md']
|
||||
|
||||
# jekyll serve --watch --baseurl=
|
||||
# baseurl: "https://indeedeng.github.io/proctor"
|
||||
# baseurl: "https://tate-indeed.github.io/proctor-tate-working"
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
<script>
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
||||
ga('create', 'UA-90780-24', 'auto');
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
@@ -0,0 +1,20 @@
|
||||
{% assign items = include.items | split: ' ' %}
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
{% for item in items %}
|
||||
{% assign item_url = item | prepend:'/docs/' | append: '/' %}
|
||||
|
||||
{% if item_url == page.url %}
|
||||
{% assign c = 'current' %}
|
||||
{% else %}
|
||||
{% assign c = '' %}
|
||||
{% endif %}
|
||||
|
||||
{% for p in site.pages %}
|
||||
{% if p.url == item_url %}
|
||||
<li class="{{ c }}"><a href="{{ site.baseurl }}{{ p.url }}">{{ p.title }}</a></li>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
||||
{% endfor %}
|
||||
</ul>
|
||||
@@ -0,0 +1,13 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<div>Proctor is licensed under <a href="https://github.com/indeedeng/imhotep/blob/master/LICENSE">Apache License Version 2.0.</a></div>
|
||||
<div>This site is maintained by <a href="http://github.com/indeedeng">Indeed.com</a> (<a href="http://engineering.indeedblog.com/blog">engineering.indeedblog.com</a>)</div>
|
||||
<div><small>Hosted on GitHub Pages — Theme adapted from <a href="https://github.com/orderedlist/minimal">minimal by orderedlist</a></small></div>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1 @@
|
||||
<link rel="shortcut icon" type="image/x-icon" href="{{ "/images/favicon.ico" | prepend: site.baseurl }}" >
|
||||
@@ -0,0 +1,7 @@
|
||||
```
|
||||
<dependency>
|
||||
<groupId>com.indeed</groupId>
|
||||
<artifactId>{{ include.artifact }}</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
</dependency>
|
||||
```
|
||||
@@ -0,0 +1,9 @@
|
||||
{% assign buckets = include.buckets | split: ' ' %}
|
||||
{% assign ranges = include.ranges | split: ' ' %}
|
||||
{% assign values = include.values | split: ' ' %}
|
||||
|
||||
<div class="ui-allocation-bar">
|
||||
{% for bucket in buckets %}
|
||||
<span class="ui-allocation-range ui-color{{ values[forloop.index0] }}" style="width: {{ ranges[forloop.index0] }}%;"><span class="ui-allocation-range-lbl">{{ bucket }}<br/>{{ ranges[forloop.index0] }}%</span></span>
|
||||
{% endfor %}
|
||||
</div>
|
||||
@@ -0,0 +1,20 @@
|
||||
{% assign buckets = include.buckets | split: ' ' %}
|
||||
{% assign ranges = include.ranges | split: ' ' %}
|
||||
{% assign values = include.values | split: ' ' %}
|
||||
|
||||
<div class="ui-allocation-table">{% comment %}Without this extra div, jekyll {% endcomment %}
|
||||
<table>
|
||||
<tr>
|
||||
{% for bucket in buckets %}
|
||||
<th style="width: {{ ranges[forloop.index0] }}%;">{{ bucket }}</th>
|
||||
{% endfor %}
|
||||
</tr>
|
||||
<tr>
|
||||
{% for bucket in buckets %}
|
||||
<td class="ui-color{{ values[forloop.index0] }}">
|
||||
{{ ranges[forloop.index0] }}%
|
||||
</td>
|
||||
{% endfor %}
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
@@ -0,0 +1,19 @@
|
||||
<nav>
|
||||
<p><button data-toggle="collapse" data-target="#global_nav" id="navbutton">Proctor - All Topics</button></p>
|
||||
|
||||
<div id="global_nav" class="collapse">
|
||||
|
||||
<div style="width: 100%">
|
||||
|
||||
<h3 data-toc-skip>Getting Started</h3>
|
||||
<a href="{{ site.baseurl }}/">Introduction</a>
|
||||
{% include docs_ul.html items='overview quick-start' %}
|
||||
<h3 data-toc-skip>Application Usage</h3>
|
||||
{% include docs_ul.html items='key-features' %}
|
||||
<h3 data-toc-skip>Contributing</h3>
|
||||
{% include docs_ul.html items='contributing' %}
|
||||
|
||||
<br style="clear: left;" />
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
@@ -0,0 +1,104 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
{% include header.html %}
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<title>{{ page.title }}</title>
|
||||
<meta name="viewport" content="width=device-width">
|
||||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="https://cdn.rawgit.com/afeld/bootstrap-toc/v0.4.1/dist/bootstrap-toc.min.css">
|
||||
<script type="text/javascript" src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
|
||||
<script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
|
||||
<script src="https://cdn.rawgit.com/afeld/bootstrap-toc/v0.4.1/dist/bootstrap-toc.min.js"></script>
|
||||
<link rel="stylesheet" href="{{ site.baseurl }}/assets/css/normalize.css">
|
||||
<link rel="stylesheet" href="{{ site.baseurl }}/assets/css/gridism.css">
|
||||
<link rel="stylesheet" href="{{ site.baseurl }}/assets/css/syntax.css">
|
||||
<link rel="stylesheet" href="{{ site.baseurl }}/assets/css/styles.css">
|
||||
<link rel="stylesheet" href="{{ site.baseurl }}/assets/css/indeed-styles.css">
|
||||
<link rel="stylesheet" href="{{ site.baseurl }}/assets/css/styles-minimalist.css">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
<body data-spy="scroll" data-target="#toc">
|
||||
<div id="blogHeader" class="full-width-wrapper">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<nav class="navbar navbar-default navbar-static-top" role="navigation">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#headerNavLinks">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a href="https://engineering.indeedblog.com/" class="navbar-brand">
|
||||
<img src="https://rac4ou2q3g246tjk3rxqbt1c-wpengine.netdna-ssl.com/wp-content/themes/indeedblog/images/ind-eng-logo.png" alt="Indeed Engineering" width="300" scale="0">
|
||||
</a>
|
||||
</div>
|
||||
<div id="headerNavLinks" class="collapse navbar-collapse">
|
||||
<ul class="">
|
||||
<li id="menu-item-1211" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1211">
|
||||
<a href="https://engineering.indeedblog.com/blog">Engineering Blog</a>
|
||||
</li>
|
||||
<li id="menu-item-1212" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1212">
|
||||
<a href="https://engineering.indeedblog.com/talks">Tech Talks</a>
|
||||
</li>
|
||||
<li id="menu-item-1214" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1214">
|
||||
<a href="https://opensource.indeedeng.io/">Open Source</a>
|
||||
</li>
|
||||
<li id="menu-item-1213" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1213">
|
||||
<a href="https://indeed.jobs">Work at Indeed</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<section>
|
||||
<div class="grid">
|
||||
<div class="unit one-fifth" id="leftnav">
|
||||
<div id="stickyNav" data-spy="affix" data-offset-bottom="50">
|
||||
{% include sidenav_items.html %}
|
||||
<nav id="toc" data-toggle="toc"></nav>
|
||||
<!--custom script to hide/show the floating page TOC-->
|
||||
<script>
|
||||
function hideObject( element ) {
|
||||
$( element ).toggle();
|
||||
}
|
||||
$( "#navbutton" ).click(function() {
|
||||
hideObject( "#toc");
|
||||
});
|
||||
$( "#stickyNav" ).attr( "data-offset-top", $( "#blogHeader" ).height()+10 );
|
||||
$( "#stickyNav" ).attr( "style", "width:" + $( "#leftnav" ).width() + "px;" );
|
||||
$( window ).resize(function() {
|
||||
$( "#stickyNav" ).attr( "style", "width:" + $( "#leftnav" ).width() + "px;" );
|
||||
$('#stickyNav').data('bs.affix').options.offset = $('#stickyNav').offset().top;
|
||||
});
|
||||
</script>
|
||||
<!---->
|
||||
</div>
|
||||
</div>
|
||||
<div class="unit four-fifths" style="min-height:775px;">
|
||||
<article>
|
||||
<h1>{{ page.title }}</h1>
|
||||
{{ content }}
|
||||
</article>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
{% include footer.html %}
|
||||
</footer>
|
||||
</div>
|
||||
<!--{% if page.exclude_toc == nil or page.exclude_toc == false %}
|
||||
<script src="{{ site.baseurl }}/assets/js/toc.js"></script>
|
||||
{% endif %}-->
|
||||
{% include analytics.html %}
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,11 @@
|
||||
desc 'Delete generated _site files'
|
||||
task :clean do
|
||||
system "rm -fR _site"
|
||||
end
|
||||
|
||||
desc 'Run the jekyll dev server'
|
||||
task :serve do
|
||||
system "jekyll serve --watch --baseurl="
|
||||
end
|
||||
|
||||
task :default => :serve
|
||||
@@ -0,0 +1,113 @@
|
||||
/*
|
||||
* Gridism
|
||||
* A simple, responsive, and handy CSS grid by @cobyism
|
||||
* https://github.com/cobyism/gridism
|
||||
*/
|
||||
|
||||
/* Preserve some sanity */
|
||||
.grid,
|
||||
.unit {
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
/* Set up some rules to govern the grid */
|
||||
.grid {
|
||||
display: block;
|
||||
clear: both;
|
||||
}
|
||||
.grid .unit {
|
||||
float: left;
|
||||
width: 100%;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
/* This ensures the outer gutters are equal to the (doubled) inner gutters. */
|
||||
.grid .unit:first-child { padding-left: 20px; }
|
||||
.grid .unit:last-child { padding-right: 20px; }
|
||||
|
||||
/* Nested grids already have padding though, so let’s nuke it */
|
||||
.unit .unit:first-child { padding-left: 0; }
|
||||
.unit .unit:last-child { padding-right: 0; }
|
||||
.unit .grid:first-child > .unit { padding-top: 0; }
|
||||
.unit .grid:last-child > .unit { padding-bottom: 0; }
|
||||
|
||||
/* Let people nuke the gutters/padding completely in a couple of ways */
|
||||
.no-gutters .unit,
|
||||
.unit.no-gutters {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
/* Wrapping at a maximum width is optional */
|
||||
.wrap .grid,
|
||||
.grid.wrap {
|
||||
max-width: 978px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
/* Width classes also have shorthand versions numbered as fractions
|
||||
* For example: for a grid unit 1/3 (one third) of the parent width,
|
||||
* simply apply class="w-1-3" to the element. */
|
||||
.grid .whole, .grid .w-1-1 { width: 100%; }
|
||||
.grid .half, .grid .w-1-2 { width: 50%; }
|
||||
.grid .one-third, .grid .w-1-3 { width: 33.3332%; }
|
||||
.grid .two-thirds, .grid .w-2-3 { width: 66.6665%; }
|
||||
.grid .one-quarter, .grid .w-1-4 { width: 25%; }
|
||||
.grid .three-quarters, .grid .w-3-4 { width: 75%; }
|
||||
.grid .one-fifth, .grid .w-1-5 { width: 20%; }
|
||||
.grid .two-fifths, .grid .w-2-5 { width: 40%; }
|
||||
.grid .three-fifths, .grid .w-3-5 { width: 60%; }
|
||||
.grid .four-fifths, .grid .w-4-5 { width: 80%; }
|
||||
.grid .golden-small, .grid .w-g-s { width: 38.2716%; } /* Golden section: smaller piece */
|
||||
.grid .golden-large, .grid .w-g-l { width: 61.7283%; } /* Golden section: larger piece */
|
||||
|
||||
/* Clearfix after every .grid */
|
||||
.grid {
|
||||
*zoom: 1;
|
||||
}
|
||||
.grid:before, .grid:after {
|
||||
display: table;
|
||||
content: "";
|
||||
line-height: 0;
|
||||
}
|
||||
.grid:after {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
/* Utility classes */
|
||||
.align-center { text-align: center; }
|
||||
.align-left { text-align: left; }
|
||||
.align-right { text-align: right; }
|
||||
.pull-left { float: left; }
|
||||
.pull-right { float: right; }
|
||||
|
||||
/* Responsive Stuff */
|
||||
@media screen and (max-width: 568px) {
|
||||
/* Stack anything that isn’t full-width on smaller screens */
|
||||
.grid .unit {
|
||||
width: 100% !important;
|
||||
padding-left: 20px;
|
||||
padding-right: 20px;
|
||||
}
|
||||
.unit .grid .unit {
|
||||
padding-left: 0px;
|
||||
padding-right: 0px;
|
||||
}
|
||||
|
||||
/* Sometimes, you just want to be different on small screens */
|
||||
.center-on-mobiles {
|
||||
text-align: center !important;
|
||||
}
|
||||
.hide-on-mobiles {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* Expand the wrap a bit further on larger screens */
|
||||
@media screen and (min-width: 1180px) {
|
||||
.wider .grid {
|
||||
max-width: 1180px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
Vendored
+408
@@ -0,0 +1,408 @@
|
||||
/*! normalize.css v2.1.3 | MIT License | git.io/normalize */
|
||||
|
||||
/* ==========================================================================
|
||||
HTML5 display definitions
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Correct `block` display not defined in IE 8/9.
|
||||
*/
|
||||
|
||||
article,
|
||||
aside,
|
||||
details,
|
||||
figcaption,
|
||||
figure,
|
||||
footer,
|
||||
header,
|
||||
hgroup,
|
||||
main,
|
||||
nav,
|
||||
section,
|
||||
summary {
|
||||
display: block;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct `inline-block` display not defined in IE 8/9.
|
||||
*/
|
||||
|
||||
audio,
|
||||
canvas,
|
||||
video {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prevent modern browsers from displaying `audio` without controls.
|
||||
* Remove excess height in iOS 5 devices.
|
||||
*/
|
||||
|
||||
audio:not([controls]) {
|
||||
display: none;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address `[hidden]` styling not present in IE 8/9.
|
||||
* Hide the `template` element in IE, Safari, and Firefox < 22.
|
||||
*/
|
||||
|
||||
[hidden],
|
||||
template {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Base
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* 1. Set default font family to sans-serif.
|
||||
* 2. Prevent iOS text size adjust after orientation change, without disabling
|
||||
* user zoom.
|
||||
*/
|
||||
|
||||
html {
|
||||
font-family: sans-serif; /* 1 */
|
||||
-ms-text-size-adjust: 100%; /* 2 */
|
||||
-webkit-text-size-adjust: 100%; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove default margin.
|
||||
*/
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Links
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove the gray background color from active links in IE 10.
|
||||
*/
|
||||
|
||||
a {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address `outline` inconsistency between Chrome and other browsers.
|
||||
*/
|
||||
|
||||
a:focus {
|
||||
outline: thin dotted;
|
||||
}
|
||||
|
||||
/**
|
||||
* Improve readability when focused and also mouse hovered in all browsers.
|
||||
*/
|
||||
|
||||
a:active,
|
||||
a:hover {
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Typography
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Address variable `h1` font-size and margin within `section` and `article`
|
||||
* contexts in Firefox 4+, Safari 5, and Chrome.
|
||||
*/
|
||||
|
||||
h1 {
|
||||
font-size: 2em;
|
||||
margin: 0.67em 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address styling not present in IE 8/9, Safari 5, and Chrome.
|
||||
*/
|
||||
|
||||
abbr[title] {
|
||||
border-bottom: 1px dotted;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
|
||||
*/
|
||||
|
||||
b,
|
||||
strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address styling not present in Safari 5 and Chrome.
|
||||
*/
|
||||
|
||||
dfn {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address differences between Firefox and other browsers.
|
||||
*/
|
||||
|
||||
hr {
|
||||
-moz-box-sizing: content-box;
|
||||
box-sizing: content-box;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address styling not present in IE 8/9.
|
||||
*/
|
||||
|
||||
mark {
|
||||
background: #ff0;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct font family set oddly in Safari 5 and Chrome.
|
||||
*/
|
||||
|
||||
code,
|
||||
kbd,
|
||||
pre,
|
||||
samp {
|
||||
font-family: monospace, serif;
|
||||
font-size: 1em;
|
||||
color: #000000;
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
|
||||
/**
|
||||
* Improve readability of pre-formatted text in all browsers.
|
||||
*/
|
||||
|
||||
pre {
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set consistent quote types.
|
||||
*/
|
||||
|
||||
q {
|
||||
quotes: "\201C" "\201D" "\2018" "\2019";
|
||||
}
|
||||
|
||||
/**
|
||||
* Address inconsistent and variable font size in all browsers.
|
||||
*/
|
||||
|
||||
small {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
|
||||
*/
|
||||
|
||||
sub,
|
||||
sup {
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
position: relative;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
sup {
|
||||
top: -0.5em;
|
||||
}
|
||||
|
||||
sub {
|
||||
bottom: -0.25em;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Embedded content
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove border when inside `a` element in IE 8/9.
|
||||
*/
|
||||
|
||||
img {
|
||||
border: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct overflow displayed oddly in IE 9.
|
||||
*/
|
||||
|
||||
svg:not(:root) {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Figures
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Address margin not present in IE 8/9 and Safari 5.
|
||||
*/
|
||||
|
||||
figure {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Forms
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Define consistent border, margin, and padding.
|
||||
*/
|
||||
|
||||
fieldset {
|
||||
border: 1px solid #c0c0c0;
|
||||
margin: 0 2px;
|
||||
padding: 0.35em 0.625em 0.75em;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct `color` not being inherited in IE 8/9.
|
||||
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
|
||||
*/
|
||||
|
||||
legend {
|
||||
border: 0; /* 1 */
|
||||
padding: 0; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct font family not being inherited in all browsers.
|
||||
* 2. Correct font size not being inherited in all browsers.
|
||||
* 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
|
||||
*/
|
||||
|
||||
button,
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
font-family: inherit; /* 1 */
|
||||
font-size: 100%; /* 2 */
|
||||
margin: 0; /* 3 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
|
||||
* the UA stylesheet.
|
||||
*/
|
||||
|
||||
button,
|
||||
input {
|
||||
line-height: normal;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address inconsistent `text-transform` inheritance for `button` and `select`.
|
||||
* All other form control elements do not inherit `text-transform` values.
|
||||
* Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
|
||||
* Correct `select` style inheritance in Firefox 4+ and Opera.
|
||||
*/
|
||||
|
||||
button,
|
||||
select {
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
|
||||
* and `video` controls.
|
||||
* 2. Correct inability to style clickable `input` types in iOS.
|
||||
* 3. Improve usability and consistency of cursor style between image-type
|
||||
* `input` and others.
|
||||
*/
|
||||
|
||||
button,
|
||||
html input[type="button"], /* 1 */
|
||||
input[type="reset"],
|
||||
input[type="submit"] {
|
||||
-webkit-appearance: button; /* 2 */
|
||||
cursor: pointer; /* 3 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Re-set default cursor for disabled elements.
|
||||
*/
|
||||
|
||||
button[disabled],
|
||||
html input[disabled] {
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Address box sizing set to `content-box` in IE 8/9/10.
|
||||
* 2. Remove excess padding in IE 8/9/10.
|
||||
*/
|
||||
|
||||
input[type="checkbox"],
|
||||
input[type="radio"] {
|
||||
box-sizing: border-box; /* 1 */
|
||||
padding: 0; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
|
||||
* 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
|
||||
* (include `-moz` to future-proof).
|
||||
*/
|
||||
|
||||
input[type="search"] {
|
||||
-webkit-appearance: textfield; /* 1 */
|
||||
-moz-box-sizing: content-box;
|
||||
-webkit-box-sizing: content-box; /* 2 */
|
||||
box-sizing: content-box;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove inner padding and search cancel button in Safari 5 and Chrome
|
||||
* on OS X.
|
||||
*/
|
||||
|
||||
input[type="search"]::-webkit-search-cancel-button,
|
||||
input[type="search"]::-webkit-search-decoration {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove inner padding and border in Firefox 4+.
|
||||
*/
|
||||
|
||||
button::-moz-focus-inner,
|
||||
input::-moz-focus-inner {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Remove default vertical scrollbar in IE 8/9.
|
||||
* 2. Improve readability and alignment in all browsers.
|
||||
*/
|
||||
|
||||
textarea {
|
||||
overflow: auto; /* 1 */
|
||||
vertical-align: top; /* 2 */
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Tables
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove most spacing between table cells.
|
||||
*/
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
}
|
||||
@@ -0,0 +1,122 @@
|
||||
/* Theme by Steve Smith (orderedlist) : https://github.com/orderedlist/minimal */
|
||||
@import url(https://fonts.googleapis.com/css?family=Lato:300italic,700italic,300,700);
|
||||
|
||||
body {
|
||||
padding:0;
|
||||
font-family: 'Avenir', Helvetica Neue, Helvetica, Arial, sans-serif;
|
||||
font-size: 14px;
|
||||
font-weight:300;
|
||||
}
|
||||
|
||||
header {
|
||||
padding-top: 20px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
|
||||
header, section, article, footer {
|
||||
padding-left: 0;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
color:#222;
|
||||
margin:0 0 20px;
|
||||
}
|
||||
|
||||
p, ul, ol, table, pre, dl {
|
||||
margin:0 0 20px;
|
||||
}
|
||||
|
||||
h1, h2, h3 {
|
||||
line-height:1.1;
|
||||
}
|
||||
|
||||
h2 {
|
||||
color:#393939;
|
||||
}
|
||||
|
||||
h3, h4, h5, h6 {
|
||||
color:#494949;
|
||||
}
|
||||
|
||||
a {
|
||||
color:#00c;
|
||||
text-decoration:none;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color:#069;
|
||||
}
|
||||
|
||||
a small {
|
||||
font-size:11px;
|
||||
color:#777;
|
||||
margin-top:-0.6em;
|
||||
display:block;
|
||||
}
|
||||
|
||||
a:hover small {
|
||||
color:#777;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
border-left:1px solid #e5e5e5;
|
||||
margin:0;
|
||||
padding:0 0 0 20px;
|
||||
font-style:italic;
|
||||
}
|
||||
|
||||
code, pre {
|
||||
font-family:Monospace, Bitstream Vera Sans Mono, Lucida Console, Terminal;
|
||||
color:#333;
|
||||
font-size:14px;
|
||||
}
|
||||
|
||||
pre {
|
||||
padding:8px 15px;
|
||||
background: #f8f8f8;
|
||||
border-radius:5px;
|
||||
border:1px solid #e5e5e5;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
table {
|
||||
width:100%;
|
||||
border-collapse:collapse;
|
||||
}
|
||||
|
||||
th, td {
|
||||
text-align:left;
|
||||
padding:5px 10px;
|
||||
border-bottom:1px solid #e5e5e5;
|
||||
}
|
||||
|
||||
dt {
|
||||
color:#444;
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
th {
|
||||
color:#444;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width:100%;
|
||||
}
|
||||
|
||||
strong {
|
||||
color:#222;
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size:11px;
|
||||
}
|
||||
|
||||
hr {
|
||||
border:0;
|
||||
background:#e5e5e5;
|
||||
height:1px;
|
||||
margin:0 0 20px;
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
|
||||
article {
|
||||
padding: 0 20px 20px;
|
||||
margin: 0 10px;
|
||||
}
|
||||
aside {
|
||||
padding: 0 0 20px;
|
||||
}
|
||||
|
||||
aside h1, aside h2, aside h3, aside h4, aside h5, aside h6 {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
table code {
|
||||
white-space: nowrap;
|
||||
color: #000000;
|
||||
background-color: #E8E8EE;
|
||||
}
|
||||
|
||||
td {
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
span.smallcode code {
|
||||
font-family: 'Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal';
|
||||
font-size: 12px;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
span.xscode code {
|
||||
font-family: 'Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal';
|
||||
font-size: 10px;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
span.smallcode,span.xscode a code {
|
||||
color: #39c;
|
||||
}
|
||||
|
||||
.ui-allocation-bar{
|
||||
display:block;
|
||||
border:1px solid #BBB;
|
||||
overflow:hidden;
|
||||
padding:5px;
|
||||
background-color:#FFF;
|
||||
}
|
||||
.ui-allocation-range{
|
||||
display:inline-block;
|
||||
float:left;
|
||||
text-align:center;
|
||||
white-space:nowrap;
|
||||
padding:5px 0;
|
||||
overflow:hidden;
|
||||
}
|
||||
|
||||
.ui-allocation-range-lbl{
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
.ui-color-1{background-color:#FFED6F;}
|
||||
.ui-color0{background-color:#8DD3C7;}
|
||||
.ui-color1{background-color:#FFFFB3;}
|
||||
.ui-color2{background-color:#BEBADA;}
|
||||
.ui-color3{background-color:#FB8072;}
|
||||
.ui-color4{background-color:#80B1D3;}
|
||||
.ui-color5{background-color:#FDB462;}
|
||||
.ui-color6{background-color:#B3DE69;}
|
||||
.ui-color7{background-color:#FCCDE5;}
|
||||
.ui-color8{background-color:#D9D9D9;}
|
||||
.ui-color9{background-color:#BC80BD;}
|
||||
.ui-color10{background-color:#CCEBC5;}
|
||||
@@ -0,0 +1,69 @@
|
||||
.highlight { background: #f5f5f5; }
|
||||
.highlight .c { color: #999988; font-style: italic } /* Comment */
|
||||
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
|
||||
.highlight .k { font-weight: bold } /* Keyword */
|
||||
.highlight .o { font-weight: bold } /* Operator */
|
||||
.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */
|
||||
.highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */
|
||||
.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */
|
||||
.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
|
||||
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
|
||||
.highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */
|
||||
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||
.highlight .gr { color: #aa0000 } /* Generic.Error */
|
||||
.highlight .gh { color: #999999 } /* Generic.Heading */
|
||||
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
|
||||
.highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */
|
||||
.highlight .go { color: #888888 } /* Generic.Output */
|
||||
.highlight .gp { color: #555555 } /* Generic.Prompt */
|
||||
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||
.highlight .gu { color: #800080; font-weight: bold; } /* Generic.Subheading */
|
||||
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
|
||||
.highlight .kc { font-weight: bold } /* Keyword.Constant */
|
||||
.highlight .kd { font-weight: bold } /* Keyword.Declaration */
|
||||
.highlight .kn { font-weight: bold } /* Keyword.Namespace */
|
||||
.highlight .kp { font-weight: bold } /* Keyword.Pseudo */
|
||||
.highlight .kr { font-weight: bold } /* Keyword.Reserved */
|
||||
.highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */
|
||||
.highlight .m { color: #009999 } /* Literal.Number */
|
||||
.highlight .s { color: #d14 } /* Literal.String */
|
||||
.highlight .na { color: #008080 } /* Name.Attribute */
|
||||
.highlight .nb { color: #0086B3 } /* Name.Builtin */
|
||||
.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */
|
||||
.highlight .no { color: #008080 } /* Name.Constant */
|
||||
.highlight .ni { color: #800080 } /* Name.Entity */
|
||||
.highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */
|
||||
.highlight .nf { color: #990000; font-weight: bold } /* Name.Function */
|
||||
.highlight .nn { color: #555555 } /* Name.Namespace */
|
||||
.highlight .nt { color: #000080 } /* Name.Tag */
|
||||
.highlight .nv { color: #008080 } /* Name.Variable */
|
||||
.highlight .ow { font-weight: bold } /* Operator.Word */
|
||||
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||
.highlight .mf { color: #009999 } /* Literal.Number.Float */
|
||||
.highlight .mh { color: #009999 } /* Literal.Number.Hex */
|
||||
.highlight .mi { color: #009999 } /* Literal.Number.Integer */
|
||||
.highlight .mo { color: #009999 } /* Literal.Number.Oct */
|
||||
.highlight .sb { color: #d14 } /* Literal.String.Backtick */
|
||||
.highlight .sc { color: #d14 } /* Literal.String.Char */
|
||||
.highlight .sd { color: #d14 } /* Literal.String.Doc */
|
||||
.highlight .s2 { color: #d14 } /* Literal.String.Double */
|
||||
.highlight .se { color: #d14 } /* Literal.String.Escape */
|
||||
.highlight .sh { color: #d14 } /* Literal.String.Heredoc */
|
||||
.highlight .si { color: #d14 } /* Literal.String.Interpol */
|
||||
.highlight .sx { color: #d14 } /* Literal.String.Other */
|
||||
.highlight .sr { color: #009926 } /* Literal.String.Regex */
|
||||
.highlight .s1 { color: #d14 } /* Literal.String.Single */
|
||||
.highlight .ss { color: #990073 } /* Literal.String.Symbol */
|
||||
.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */
|
||||
.highlight .vc { color: #008080 } /* Name.Variable.Class */
|
||||
.highlight .vg { color: #008080 } /* Name.Variable.Global */
|
||||
.highlight .vi { color: #008080 } /* Name.Variable.Instance */
|
||||
.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */
|
||||
|
||||
.type-csharp .highlight .k { color: #0000FF }
|
||||
.type-csharp .highlight .kt { color: #0000FF }
|
||||
.type-csharp .highlight .nf { color: #000000; font-weight: normal }
|
||||
.type-csharp .highlight .nc { color: #2B91AF }
|
||||
.type-csharp .highlight .nn { color: #000000 }
|
||||
.type-csharp .highlight .s { color: #A31515 }
|
||||
.type-csharp .highlight .sc { color: #A31515 }
|
||||
@@ -0,0 +1,33 @@
|
||||
// renders table-of-contents for the given page
|
||||
// alternative to https://github.com/dafi/jekyll-toc-generator or https://github.com/dafi/tocmd-generator
|
||||
if(typeof document.querySelectorAll === 'function') {
|
||||
var toc = document.querySelectorAll('[id^=toc]'),
|
||||
len = toc.length,
|
||||
df = document.createDocumentFragment(),
|
||||
sidebar = document.querySelector('aside'),
|
||||
main_header = document.querySelector('article > h1'),
|
||||
h4, ul, li, anchor, i;
|
||||
|
||||
if(len > 0) {
|
||||
ul = document.createElement('ul');
|
||||
for(i = 0; i < len; i++) {
|
||||
// restrict to h1,h2,h3
|
||||
if(toc[i].nodeName == 'H1' || toc[i].nodeName == 'H2' || toc[i].nodeName == 'H3') {
|
||||
li = document.createElement('li');
|
||||
anchor = document.createElement('a');
|
||||
anchor.href = '#' + toc[i].id;
|
||||
anchor.innerText = toc[i].innerText;
|
||||
anchor.title = 'Jump to ' + toc[i].innerText;
|
||||
li.appendChild(anchor);
|
||||
ul.appendChild(li);
|
||||
}
|
||||
}
|
||||
h4 = document.createElement('h4');
|
||||
h4.innerText = "On this page";
|
||||
df.appendChild(h4);
|
||||
df.appendChild(ul);
|
||||
|
||||
sidebar.insertBefore(df, sidebar.firstChild);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,85 @@
|
||||
{
|
||||
"tests" : {
|
||||
"bgcolortst" : {
|
||||
"version" : 1,
|
||||
"description" : "background color test",
|
||||
"constants" : {
|
||||
},
|
||||
"rule" : null,
|
||||
"salt" : "bgcolortst",
|
||||
"buckets" : [ {
|
||||
"name" : "inactive",
|
||||
"value" : -1,
|
||||
"description" : "",
|
||||
"payload" : {
|
||||
"stringValue" : ""
|
||||
}
|
||||
}, {
|
||||
"name" : "altColor1",
|
||||
"value" : 0,
|
||||
"description" : "indeed orange for android",
|
||||
"payload" : {
|
||||
"stringValue" : "#ff6600"
|
||||
}
|
||||
}, {
|
||||
"name" : "altColor2",
|
||||
"value" : 1,
|
||||
"description" : "magenta for android >= 5",
|
||||
"payload" : {
|
||||
"stringValue" : "#CD29C0"
|
||||
}
|
||||
}, {
|
||||
"name" : "altColor3",
|
||||
"value" : 2,
|
||||
"description" : "indeed blue for iOS",
|
||||
"payload" : {
|
||||
"stringValue" : "#2164f3"
|
||||
}
|
||||
}, {
|
||||
"name" : "altColor4",
|
||||
"value" : 3,
|
||||
"description" : "green for iOS >= 8",
|
||||
"payload" : {
|
||||
"stringValue" : "#008040"
|
||||
}
|
||||
}],
|
||||
"allocations" : [ {
|
||||
"rule" : "${userAgent.android && userAgent.OS.majorVersion >= 5}",
|
||||
"ranges" : [ {
|
||||
"length" : 1.0,
|
||||
"bucketValue" : 1
|
||||
} ]
|
||||
}, {
|
||||
"rule" : "${userAgent.android}",
|
||||
"ranges" : [ {
|
||||
"length" : 1.0,
|
||||
"bucketValue" : 0
|
||||
} ]
|
||||
}, {
|
||||
"rule" : "${userAgent.IOS && userAgent.OS.majorVersion >= 8}",
|
||||
"ranges" : [ {
|
||||
"length" : 1.0,
|
||||
"bucketValue" : 3
|
||||
} ]
|
||||
}, {
|
||||
"rule" : "${userAgent.IOS}",
|
||||
"ranges" : [ {
|
||||
"length" : 1.0,
|
||||
"bucketValue" : 2
|
||||
} ]
|
||||
}, {
|
||||
"rule" : null,
|
||||
"ranges" : [ {
|
||||
"length" : 1.0,
|
||||
"bucketValue" : -1
|
||||
} ]
|
||||
} ],
|
||||
"testType" : "USER"
|
||||
}
|
||||
},
|
||||
"audit" : {
|
||||
"version" : 1,
|
||||
"updatedBy" : "jack",
|
||||
"updated" : 1379048400000
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,233 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<link rel="shortcut icon" type="image/x-icon" href="/images/favicon.ico" >
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<title>Contributing</title>
|
||||
<meta name="viewport" content="width=device-width">
|
||||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="https://cdn.rawgit.com/afeld/bootstrap-toc/v0.4.1/dist/bootstrap-toc.min.css">
|
||||
<script type="text/javascript" src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
|
||||
<script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
|
||||
<script src="https://cdn.rawgit.com/afeld/bootstrap-toc/v0.4.1/dist/bootstrap-toc.min.js"></script>
|
||||
<link rel="stylesheet" href="/assets/css/normalize.css">
|
||||
<link rel="stylesheet" href="/assets/css/gridism.css">
|
||||
<link rel="stylesheet" href="/assets/css/syntax.css">
|
||||
<link rel="stylesheet" href="/assets/css/styles.css">
|
||||
<link rel="stylesheet" href="/assets/css/indeed-styles.css">
|
||||
<link rel="stylesheet" href="/assets/css/styles-minimalist.css">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
<body data-spy="scroll" data-target="#toc">
|
||||
<div id="blogHeader" class="full-width-wrapper">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<nav class="navbar navbar-default navbar-static-top" role="navigation">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#headerNavLinks">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a href="https://engineering.indeedblog.com/" class="navbar-brand">
|
||||
<img src="https://rac4ou2q3g246tjk3rxqbt1c-wpengine.netdna-ssl.com/wp-content/themes/indeedblog/images/ind-eng-logo.png" alt="Indeed Engineering" width="300" scale="0">
|
||||
</a>
|
||||
</div>
|
||||
<div id="headerNavLinks" class="collapse navbar-collapse">
|
||||
<ul class="">
|
||||
<li id="menu-item-1211" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1211">
|
||||
<a href="https://engineering.indeedblog.com/blog">Engineering Blog</a>
|
||||
</li>
|
||||
<li id="menu-item-1212" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1212">
|
||||
<a href="https://engineering.indeedblog.com/talks">Tech Talks</a>
|
||||
</li>
|
||||
<li id="menu-item-1214" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1214">
|
||||
<a href="https://opensource.indeedeng.io/">Open Source</a>
|
||||
</li>
|
||||
<li id="menu-item-1213" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1213">
|
||||
<a href="https://indeed.jobs">Work at Indeed</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<section>
|
||||
<div class="grid">
|
||||
<div class="unit one-fifth" id="leftnav">
|
||||
<div id="stickyNav" data-spy="affix" data-offset-bottom="50">
|
||||
<nav>
|
||||
<p><button data-toggle="collapse" data-target="#global_nav" id="navbutton">Proctor - All Topics</button></p>
|
||||
|
||||
<div id="global_nav" class="collapse">
|
||||
|
||||
<div style="width: 100%">
|
||||
|
||||
<h3 data-toc-skip>Getting Started</h3>
|
||||
<a href="/">Introduction</a>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/overview/">Deploying</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/quick-start/">Quick Start</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
<h3 data-toc-skip>Application Usage</h3>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/key-features/">Loading Test Matrix</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
<h3 data-toc-skip>Contributing</h3>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="current"><a href="/docs/contributing/">Contributing</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
|
||||
<br style="clear: left;" />
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<nav id="toc" data-toggle="toc"></nav>
|
||||
<!--custom script to hide/show the floating page TOC-->
|
||||
<script>
|
||||
function hideObject( element ) {
|
||||
$( element ).toggle();
|
||||
}
|
||||
$( "#navbutton" ).click(function() {
|
||||
hideObject( "#toc");
|
||||
});
|
||||
$( "#stickyNav" ).attr( "data-offset-top", $( "#blogHeader" ).height()+10 );
|
||||
$( "#stickyNav" ).attr( "style", "width:" + $( "#leftnav" ).width() + "px;" );
|
||||
$( window ).resize(function() {
|
||||
$( "#stickyNav" ).attr( "style", "width:" + $( "#leftnav" ).width() + "px;" );
|
||||
$('#stickyNav').data('bs.affix').options.offset = $('#stickyNav').offset().top;
|
||||
});
|
||||
</script>
|
||||
<!---->
|
||||
</div>
|
||||
</div>
|
||||
<div class="unit four-fifths" style="min-height:775px;">
|
||||
<article>
|
||||
<h1>Contributing</h1>
|
||||
<h3>Coming Soon!</h3>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<div>Proctor is licensed under <a href="https://github.com/indeedeng/imhotep/blob/master/LICENSE">Apache License Version 2.0.</a></div>
|
||||
<div>This site is maintained by <a href="http://github.com/indeedeng">Indeed.com</a> (<a href="http://engineering.indeedblog.com/blog">engineering.indeedblog.com</a>)</div>
|
||||
<div><small>Hosted on GitHub Pages — Theme adapted from <a href="https://github.com/orderedlist/minimal">minimal by orderedlist</a></small></div>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
</footer>
|
||||
</div>
|
||||
<!--
|
||||
<script src="/assets/js/toc.js"></script>
|
||||
-->
|
||||
<script>
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
||||
ga('create', 'UA-90780-24', 'auto');
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,233 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<link rel="shortcut icon" type="image/x-icon" href="/images/favicon.ico" >
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<title>Loading Test Matrix</title>
|
||||
<meta name="viewport" content="width=device-width">
|
||||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="https://cdn.rawgit.com/afeld/bootstrap-toc/v0.4.1/dist/bootstrap-toc.min.css">
|
||||
<script type="text/javascript" src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
|
||||
<script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
|
||||
<script src="https://cdn.rawgit.com/afeld/bootstrap-toc/v0.4.1/dist/bootstrap-toc.min.js"></script>
|
||||
<link rel="stylesheet" href="/assets/css/normalize.css">
|
||||
<link rel="stylesheet" href="/assets/css/gridism.css">
|
||||
<link rel="stylesheet" href="/assets/css/syntax.css">
|
||||
<link rel="stylesheet" href="/assets/css/styles.css">
|
||||
<link rel="stylesheet" href="/assets/css/indeed-styles.css">
|
||||
<link rel="stylesheet" href="/assets/css/styles-minimalist.css">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
<body data-spy="scroll" data-target="#toc">
|
||||
<div id="blogHeader" class="full-width-wrapper">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<nav class="navbar navbar-default navbar-static-top" role="navigation">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#headerNavLinks">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a href="https://engineering.indeedblog.com/" class="navbar-brand">
|
||||
<img src="https://rac4ou2q3g246tjk3rxqbt1c-wpengine.netdna-ssl.com/wp-content/themes/indeedblog/images/ind-eng-logo.png" alt="Indeed Engineering" width="300" scale="0">
|
||||
</a>
|
||||
</div>
|
||||
<div id="headerNavLinks" class="collapse navbar-collapse">
|
||||
<ul class="">
|
||||
<li id="menu-item-1211" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1211">
|
||||
<a href="https://engineering.indeedblog.com/blog">Engineering Blog</a>
|
||||
</li>
|
||||
<li id="menu-item-1212" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1212">
|
||||
<a href="https://engineering.indeedblog.com/talks">Tech Talks</a>
|
||||
</li>
|
||||
<li id="menu-item-1214" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1214">
|
||||
<a href="https://opensource.indeedeng.io/">Open Source</a>
|
||||
</li>
|
||||
<li id="menu-item-1213" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1213">
|
||||
<a href="https://indeed.jobs">Work at Indeed</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<section>
|
||||
<div class="grid">
|
||||
<div class="unit one-fifth" id="leftnav">
|
||||
<div id="stickyNav" data-spy="affix" data-offset-bottom="50">
|
||||
<nav>
|
||||
<p><button data-toggle="collapse" data-target="#global_nav" id="navbutton">Proctor - All Topics</button></p>
|
||||
|
||||
<div id="global_nav" class="collapse">
|
||||
|
||||
<div style="width: 100%">
|
||||
|
||||
<h3 data-toc-skip>Getting Started</h3>
|
||||
<a href="/">Introduction</a>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/overview/">Deploying</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/quick-start/">Quick Start</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
<h3 data-toc-skip>Application Usage</h3>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="current"><a href="/docs/key-features/">Loading Test Matrix</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
<h3 data-toc-skip>Contributing</h3>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/contributing/">Contributing</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
|
||||
<br style="clear: left;" />
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<nav id="toc" data-toggle="toc"></nav>
|
||||
<!--custom script to hide/show the floating page TOC-->
|
||||
<script>
|
||||
function hideObject( element ) {
|
||||
$( element ).toggle();
|
||||
}
|
||||
$( "#navbutton" ).click(function() {
|
||||
hideObject( "#toc");
|
||||
});
|
||||
$( "#stickyNav" ).attr( "data-offset-top", $( "#blogHeader" ).height()+10 );
|
||||
$( "#stickyNav" ).attr( "style", "width:" + $( "#leftnav" ).width() + "px;" );
|
||||
$( window ).resize(function() {
|
||||
$( "#stickyNav" ).attr( "style", "width:" + $( "#leftnav" ).width() + "px;" );
|
||||
$('#stickyNav').data('bs.affix').options.offset = $('#stickyNav').offset().top;
|
||||
});
|
||||
</script>
|
||||
<!---->
|
||||
</div>
|
||||
</div>
|
||||
<div class="unit four-fifths" style="min-height:775px;">
|
||||
<article>
|
||||
<h1>Loading Test Matrix</h1>
|
||||
<h3>Coming Soon!</h3>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<div>Proctor is licensed under <a href="https://github.com/indeedeng/imhotep/blob/master/LICENSE">Apache License Version 2.0.</a></div>
|
||||
<div>This site is maintained by <a href="http://github.com/indeedeng">Indeed.com</a> (<a href="http://engineering.indeedblog.com/blog">engineering.indeedblog.com</a>)</div>
|
||||
<div><small>Hosted on GitHub Pages — Theme adapted from <a href="https://github.com/orderedlist/minimal">minimal by orderedlist</a></small></div>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
</footer>
|
||||
</div>
|
||||
<!--
|
||||
<script src="/assets/js/toc.js"></script>
|
||||
-->
|
||||
<script>
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
||||
ga('create', 'UA-90780-24', 'auto');
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,233 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<link rel="shortcut icon" type="image/x-icon" href="/images/favicon.ico" >
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<title>Deploying</title>
|
||||
<meta name="viewport" content="width=device-width">
|
||||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="https://cdn.rawgit.com/afeld/bootstrap-toc/v0.4.1/dist/bootstrap-toc.min.css">
|
||||
<script type="text/javascript" src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
|
||||
<script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
|
||||
<script src="https://cdn.rawgit.com/afeld/bootstrap-toc/v0.4.1/dist/bootstrap-toc.min.js"></script>
|
||||
<link rel="stylesheet" href="/assets/css/normalize.css">
|
||||
<link rel="stylesheet" href="/assets/css/gridism.css">
|
||||
<link rel="stylesheet" href="/assets/css/syntax.css">
|
||||
<link rel="stylesheet" href="/assets/css/styles.css">
|
||||
<link rel="stylesheet" href="/assets/css/indeed-styles.css">
|
||||
<link rel="stylesheet" href="/assets/css/styles-minimalist.css">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
<body data-spy="scroll" data-target="#toc">
|
||||
<div id="blogHeader" class="full-width-wrapper">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<nav class="navbar navbar-default navbar-static-top" role="navigation">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#headerNavLinks">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a href="https://engineering.indeedblog.com/" class="navbar-brand">
|
||||
<img src="https://rac4ou2q3g246tjk3rxqbt1c-wpengine.netdna-ssl.com/wp-content/themes/indeedblog/images/ind-eng-logo.png" alt="Indeed Engineering" width="300" scale="0">
|
||||
</a>
|
||||
</div>
|
||||
<div id="headerNavLinks" class="collapse navbar-collapse">
|
||||
<ul class="">
|
||||
<li id="menu-item-1211" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1211">
|
||||
<a href="https://engineering.indeedblog.com/blog">Engineering Blog</a>
|
||||
</li>
|
||||
<li id="menu-item-1212" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1212">
|
||||
<a href="https://engineering.indeedblog.com/talks">Tech Talks</a>
|
||||
</li>
|
||||
<li id="menu-item-1214" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1214">
|
||||
<a href="https://opensource.indeedeng.io/">Open Source</a>
|
||||
</li>
|
||||
<li id="menu-item-1213" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1213">
|
||||
<a href="https://indeed.jobs">Work at Indeed</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<section>
|
||||
<div class="grid">
|
||||
<div class="unit one-fifth" id="leftnav">
|
||||
<div id="stickyNav" data-spy="affix" data-offset-bottom="50">
|
||||
<nav>
|
||||
<p><button data-toggle="collapse" data-target="#global_nav" id="navbutton">Proctor - All Topics</button></p>
|
||||
|
||||
<div id="global_nav" class="collapse">
|
||||
|
||||
<div style="width: 100%">
|
||||
|
||||
<h3 data-toc-skip>Getting Started</h3>
|
||||
<a href="/">Introduction</a>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="current"><a href="/docs/overview/">Deploying</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/quick-start/">Quick Start</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
<h3 data-toc-skip>Application Usage</h3>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/key-features/">Loading Test Matrix</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
<h3 data-toc-skip>Contributing</h3>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/contributing/">Contributing</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
|
||||
<br style="clear: left;" />
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<nav id="toc" data-toggle="toc"></nav>
|
||||
<!--custom script to hide/show the floating page TOC-->
|
||||
<script>
|
||||
function hideObject( element ) {
|
||||
$( element ).toggle();
|
||||
}
|
||||
$( "#navbutton" ).click(function() {
|
||||
hideObject( "#toc");
|
||||
});
|
||||
$( "#stickyNav" ).attr( "data-offset-top", $( "#blogHeader" ).height()+10 );
|
||||
$( "#stickyNav" ).attr( "style", "width:" + $( "#leftnav" ).width() + "px;" );
|
||||
$( window ).resize(function() {
|
||||
$( "#stickyNav" ).attr( "style", "width:" + $( "#leftnav" ).width() + "px;" );
|
||||
$('#stickyNav').data('bs.affix').options.offset = $('#stickyNav').offset().top;
|
||||
});
|
||||
</script>
|
||||
<!---->
|
||||
</div>
|
||||
</div>
|
||||
<div class="unit four-fifths" style="min-height:775px;">
|
||||
<article>
|
||||
<h1>Deploying</h1>
|
||||
<h3>Coming Soon!</h3>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<div>Proctor is licensed under <a href="https://github.com/indeedeng/imhotep/blob/master/LICENSE">Apache License Version 2.0.</a></div>
|
||||
<div>This site is maintained by <a href="http://github.com/indeedeng">Indeed.com</a> (<a href="http://engineering.indeedblog.com/blog">engineering.indeedblog.com</a>)</div>
|
||||
<div><small>Hosted on GitHub Pages — Theme adapted from <a href="https://github.com/orderedlist/minimal">minimal by orderedlist</a></small></div>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
</footer>
|
||||
</div>
|
||||
<!--
|
||||
<script src="/assets/js/toc.js"></script>
|
||||
-->
|
||||
<script>
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
||||
ga('create', 'UA-90780-24', 'auto');
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,233 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<link rel="shortcut icon" type="image/x-icon" href="/images/favicon.ico" >
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<title>Quick Start</title>
|
||||
<meta name="viewport" content="width=device-width">
|
||||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="https://cdn.rawgit.com/afeld/bootstrap-toc/v0.4.1/dist/bootstrap-toc.min.css">
|
||||
<script type="text/javascript" src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
|
||||
<script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
|
||||
<script src="https://cdn.rawgit.com/afeld/bootstrap-toc/v0.4.1/dist/bootstrap-toc.min.js"></script>
|
||||
<link rel="stylesheet" href="/assets/css/normalize.css">
|
||||
<link rel="stylesheet" href="/assets/css/gridism.css">
|
||||
<link rel="stylesheet" href="/assets/css/syntax.css">
|
||||
<link rel="stylesheet" href="/assets/css/styles.css">
|
||||
<link rel="stylesheet" href="/assets/css/indeed-styles.css">
|
||||
<link rel="stylesheet" href="/assets/css/styles-minimalist.css">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
<body data-spy="scroll" data-target="#toc">
|
||||
<div id="blogHeader" class="full-width-wrapper">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<nav class="navbar navbar-default navbar-static-top" role="navigation">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#headerNavLinks">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a href="https://engineering.indeedblog.com/" class="navbar-brand">
|
||||
<img src="https://rac4ou2q3g246tjk3rxqbt1c-wpengine.netdna-ssl.com/wp-content/themes/indeedblog/images/ind-eng-logo.png" alt="Indeed Engineering" width="300" scale="0">
|
||||
</a>
|
||||
</div>
|
||||
<div id="headerNavLinks" class="collapse navbar-collapse">
|
||||
<ul class="">
|
||||
<li id="menu-item-1211" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1211">
|
||||
<a href="https://engineering.indeedblog.com/blog">Engineering Blog</a>
|
||||
</li>
|
||||
<li id="menu-item-1212" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1212">
|
||||
<a href="https://engineering.indeedblog.com/talks">Tech Talks</a>
|
||||
</li>
|
||||
<li id="menu-item-1214" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1214">
|
||||
<a href="https://opensource.indeedeng.io/">Open Source</a>
|
||||
</li>
|
||||
<li id="menu-item-1213" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1213">
|
||||
<a href="https://indeed.jobs">Work at Indeed</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<section>
|
||||
<div class="grid">
|
||||
<div class="unit one-fifth" id="leftnav">
|
||||
<div id="stickyNav" data-spy="affix" data-offset-bottom="50">
|
||||
<nav>
|
||||
<p><button data-toggle="collapse" data-target="#global_nav" id="navbutton">Proctor - All Topics</button></p>
|
||||
|
||||
<div id="global_nav" class="collapse">
|
||||
|
||||
<div style="width: 100%">
|
||||
|
||||
<h3 data-toc-skip>Getting Started</h3>
|
||||
<a href="/">Introduction</a>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/overview/">Deploying</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="current"><a href="/docs/quick-start/">Quick Start</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
<h3 data-toc-skip>Application Usage</h3>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/key-features/">Loading Test Matrix</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
<h3 data-toc-skip>Contributing</h3>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/contributing/">Contributing</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
|
||||
<br style="clear: left;" />
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<nav id="toc" data-toggle="toc"></nav>
|
||||
<!--custom script to hide/show the floating page TOC-->
|
||||
<script>
|
||||
function hideObject( element ) {
|
||||
$( element ).toggle();
|
||||
}
|
||||
$( "#navbutton" ).click(function() {
|
||||
hideObject( "#toc");
|
||||
});
|
||||
$( "#stickyNav" ).attr( "data-offset-top", $( "#blogHeader" ).height()+10 );
|
||||
$( "#stickyNav" ).attr( "style", "width:" + $( "#leftnav" ).width() + "px;" );
|
||||
$( window ).resize(function() {
|
||||
$( "#stickyNav" ).attr( "style", "width:" + $( "#leftnav" ).width() + "px;" );
|
||||
$('#stickyNav').data('bs.affix').options.offset = $('#stickyNav').offset().top;
|
||||
});
|
||||
</script>
|
||||
<!---->
|
||||
</div>
|
||||
</div>
|
||||
<div class="unit four-fifths" style="min-height:775px;">
|
||||
<article>
|
||||
<h1>Quick Start</h1>
|
||||
<h3>Coming Soon!</h3>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<div>Proctor is licensed under <a href="https://github.com/indeedeng/imhotep/blob/master/LICENSE">Apache License Version 2.0.</a></div>
|
||||
<div>This site is maintained by <a href="http://github.com/indeedeng">Indeed.com</a> (<a href="http://engineering.indeedblog.com/blog">engineering.indeedblog.com</a>)</div>
|
||||
<div><small>Hosted on GitHub Pages — Theme adapted from <a href="https://github.com/orderedlist/minimal">minimal by orderedlist</a></small></div>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
</footer>
|
||||
</div>
|
||||
<!--
|
||||
<script src="/assets/js/toc.js"></script>
|
||||
-->
|
||||
<script>
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
||||
ga('create', 'UA-90780-24', 'auto');
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 318 B |
@@ -0,0 +1,233 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<link rel="shortcut icon" type="image/x-icon" href="/images/favicon.ico" >
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<title>K8dash</title>
|
||||
<meta name="viewport" content="width=device-width">
|
||||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="https://cdn.rawgit.com/afeld/bootstrap-toc/v0.4.1/dist/bootstrap-toc.min.css">
|
||||
<script type="text/javascript" src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
|
||||
<script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
|
||||
<script src="https://cdn.rawgit.com/afeld/bootstrap-toc/v0.4.1/dist/bootstrap-toc.min.js"></script>
|
||||
<link rel="stylesheet" href="/assets/css/normalize.css">
|
||||
<link rel="stylesheet" href="/assets/css/gridism.css">
|
||||
<link rel="stylesheet" href="/assets/css/syntax.css">
|
||||
<link rel="stylesheet" href="/assets/css/styles.css">
|
||||
<link rel="stylesheet" href="/assets/css/indeed-styles.css">
|
||||
<link rel="stylesheet" href="/assets/css/styles-minimalist.css">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
<body data-spy="scroll" data-target="#toc">
|
||||
<div id="blogHeader" class="full-width-wrapper">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<nav class="navbar navbar-default navbar-static-top" role="navigation">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#headerNavLinks">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a href="https://engineering.indeedblog.com/" class="navbar-brand">
|
||||
<img src="https://rac4ou2q3g246tjk3rxqbt1c-wpengine.netdna-ssl.com/wp-content/themes/indeedblog/images/ind-eng-logo.png" alt="Indeed Engineering" width="300" scale="0">
|
||||
</a>
|
||||
</div>
|
||||
<div id="headerNavLinks" class="collapse navbar-collapse">
|
||||
<ul class="">
|
||||
<li id="menu-item-1211" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1211">
|
||||
<a href="https://engineering.indeedblog.com/blog">Engineering Blog</a>
|
||||
</li>
|
||||
<li id="menu-item-1212" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1212">
|
||||
<a href="https://engineering.indeedblog.com/talks">Tech Talks</a>
|
||||
</li>
|
||||
<li id="menu-item-1214" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1214">
|
||||
<a href="https://opensource.indeedeng.io/">Open Source</a>
|
||||
</li>
|
||||
<li id="menu-item-1213" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1213">
|
||||
<a href="https://indeed.jobs">Work at Indeed</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<section>
|
||||
<div class="grid">
|
||||
<div class="unit one-fifth" id="leftnav">
|
||||
<div id="stickyNav" data-spy="affix" data-offset-bottom="50">
|
||||
<nav>
|
||||
<p><button data-toggle="collapse" data-target="#global_nav" id="navbutton">Proctor - All Topics</button></p>
|
||||
|
||||
<div id="global_nav" class="collapse">
|
||||
|
||||
<div style="width: 100%">
|
||||
|
||||
<h3 data-toc-skip>Getting Started</h3>
|
||||
<a href="/">Introduction</a>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/overview/">Deploying</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/quick-start/">Quick Start</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
<h3 data-toc-skip>Application Usage</h3>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/key-features/">Loading Test Matrix</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
<h3 data-toc-skip>Contributing</h3>
|
||||
|
||||
|
||||
<ul style="list-style-type: none; padding: 0; margin-left: 0">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class=""><a href="/docs/contributing/">Contributing</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
|
||||
<br style="clear: left;" />
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<nav id="toc" data-toggle="toc"></nav>
|
||||
<!--custom script to hide/show the floating page TOC-->
|
||||
<script>
|
||||
function hideObject( element ) {
|
||||
$( element ).toggle();
|
||||
}
|
||||
$( "#navbutton" ).click(function() {
|
||||
hideObject( "#toc");
|
||||
});
|
||||
$( "#stickyNav" ).attr( "data-offset-top", $( "#blogHeader" ).height()+10 );
|
||||
$( "#stickyNav" ).attr( "style", "width:" + $( "#leftnav" ).width() + "px;" );
|
||||
$( window ).resize(function() {
|
||||
$( "#stickyNav" ).attr( "style", "width:" + $( "#leftnav" ).width() + "px;" );
|
||||
$('#stickyNav').data('bs.affix').options.offset = $('#stickyNav').offset().top;
|
||||
});
|
||||
</script>
|
||||
<!---->
|
||||
</div>
|
||||
</div>
|
||||
<div class="unit four-fifths" style="min-height:775px;">
|
||||
<article>
|
||||
<h1>K8dash</h1>
|
||||
<h3>Coming Soon!</h3>
|
||||
|
||||
<!--img src="/images/k8dash.png" style="max-width:125px;max-height:125px;clear:both;padding:10px;" /-->
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<div>Proctor is licensed under <a href="https://github.com/indeedeng/imhotep/blob/master/LICENSE">Apache License Version 2.0.</a></div>
|
||||
<div>This site is maintained by <a href="http://github.com/indeedeng">Indeed.com</a> (<a href="http://engineering.indeedblog.com/blog">engineering.indeedblog.com</a>)</div>
|
||||
<div><small>Hosted on GitHub Pages — Theme adapted from <a href="https://github.com/orderedlist/minimal">minimal by orderedlist</a></small></div>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
</footer>
|
||||
</div>
|
||||
<!---->
|
||||
<script>
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
||||
ga('create', 'UA-90780-24', 'auto');
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,113 @@
|
||||
/*
|
||||
* Gridism
|
||||
* A simple, responsive, and handy CSS grid by @cobyism
|
||||
* https://github.com/cobyism/gridism
|
||||
*/
|
||||
|
||||
/* Preserve some sanity */
|
||||
.grid,
|
||||
.unit {
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
/* Set up some rules to govern the grid */
|
||||
.grid {
|
||||
display: block;
|
||||
clear: both;
|
||||
}
|
||||
.grid .unit {
|
||||
float: left;
|
||||
width: 100%;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
/* This ensures the outer gutters are equal to the (doubled) inner gutters. */
|
||||
.grid .unit:first-child { padding-left: 20px; }
|
||||
.grid .unit:last-child { padding-right: 20px; }
|
||||
|
||||
/* Nested grids already have padding though, so let’s nuke it */
|
||||
.unit .unit:first-child { padding-left: 0; }
|
||||
.unit .unit:last-child { padding-right: 0; }
|
||||
.unit .grid:first-child > .unit { padding-top: 0; }
|
||||
.unit .grid:last-child > .unit { padding-bottom: 0; }
|
||||
|
||||
/* Let people nuke the gutters/padding completely in a couple of ways */
|
||||
.no-gutters .unit,
|
||||
.unit.no-gutters {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
/* Wrapping at a maximum width is optional */
|
||||
.wrap .grid,
|
||||
.grid.wrap {
|
||||
max-width: 978px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
/* Width classes also have shorthand versions numbered as fractions
|
||||
* For example: for a grid unit 1/3 (one third) of the parent width,
|
||||
* simply apply class="w-1-3" to the element. */
|
||||
.grid .whole, .grid .w-1-1 { width: 100%; }
|
||||
.grid .half, .grid .w-1-2 { width: 50%; }
|
||||
.grid .one-third, .grid .w-1-3 { width: 33.3332%; }
|
||||
.grid .two-thirds, .grid .w-2-3 { width: 66.6665%; }
|
||||
.grid .one-quarter, .grid .w-1-4 { width: 25%; }
|
||||
.grid .three-quarters, .grid .w-3-4 { width: 75%; }
|
||||
.grid .one-fifth, .grid .w-1-5 { width: 20%; }
|
||||
.grid .two-fifths, .grid .w-2-5 { width: 40%; }
|
||||
.grid .three-fifths, .grid .w-3-5 { width: 60%; }
|
||||
.grid .four-fifths, .grid .w-4-5 { width: 80%; }
|
||||
.grid .golden-small, .grid .w-g-s { width: 38.2716%; } /* Golden section: smaller piece */
|
||||
.grid .golden-large, .grid .w-g-l { width: 61.7283%; } /* Golden section: larger piece */
|
||||
|
||||
/* Clearfix after every .grid */
|
||||
.grid {
|
||||
*zoom: 1;
|
||||
}
|
||||
.grid:before, .grid:after {
|
||||
display: table;
|
||||
content: "";
|
||||
line-height: 0;
|
||||
}
|
||||
.grid:after {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
/* Utility classes */
|
||||
.align-center { text-align: center; }
|
||||
.align-left { text-align: left; }
|
||||
.align-right { text-align: right; }
|
||||
.pull-left { float: left; }
|
||||
.pull-right { float: right; }
|
||||
|
||||
/* Responsive Stuff */
|
||||
@media screen and (max-width: 568px) {
|
||||
/* Stack anything that isn’t full-width on smaller screens */
|
||||
.grid .unit {
|
||||
width: 100% !important;
|
||||
padding-left: 20px;
|
||||
padding-right: 20px;
|
||||
}
|
||||
.unit .grid .unit {
|
||||
padding-left: 0px;
|
||||
padding-right: 0px;
|
||||
}
|
||||
|
||||
/* Sometimes, you just want to be different on small screens */
|
||||
.center-on-mobiles {
|
||||
text-align: center !important;
|
||||
}
|
||||
.hide-on-mobiles {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* Expand the wrap a bit further on larger screens */
|
||||
@media screen and (min-width: 1180px) {
|
||||
.wider .grid {
|
||||
max-width: 1180px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
Vendored
+408
@@ -0,0 +1,408 @@
|
||||
/*! normalize.css v2.1.3 | MIT License | git.io/normalize */
|
||||
|
||||
/* ==========================================================================
|
||||
HTML5 display definitions
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Correct `block` display not defined in IE 8/9.
|
||||
*/
|
||||
|
||||
article,
|
||||
aside,
|
||||
details,
|
||||
figcaption,
|
||||
figure,
|
||||
footer,
|
||||
header,
|
||||
hgroup,
|
||||
main,
|
||||
nav,
|
||||
section,
|
||||
summary {
|
||||
display: block;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct `inline-block` display not defined in IE 8/9.
|
||||
*/
|
||||
|
||||
audio,
|
||||
canvas,
|
||||
video {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prevent modern browsers from displaying `audio` without controls.
|
||||
* Remove excess height in iOS 5 devices.
|
||||
*/
|
||||
|
||||
audio:not([controls]) {
|
||||
display: none;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address `[hidden]` styling not present in IE 8/9.
|
||||
* Hide the `template` element in IE, Safari, and Firefox < 22.
|
||||
*/
|
||||
|
||||
[hidden],
|
||||
template {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Base
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* 1. Set default font family to sans-serif.
|
||||
* 2. Prevent iOS text size adjust after orientation change, without disabling
|
||||
* user zoom.
|
||||
*/
|
||||
|
||||
html {
|
||||
font-family: sans-serif; /* 1 */
|
||||
-ms-text-size-adjust: 100%; /* 2 */
|
||||
-webkit-text-size-adjust: 100%; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove default margin.
|
||||
*/
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Links
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove the gray background color from active links in IE 10.
|
||||
*/
|
||||
|
||||
a {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address `outline` inconsistency between Chrome and other browsers.
|
||||
*/
|
||||
|
||||
a:focus {
|
||||
outline: thin dotted;
|
||||
}
|
||||
|
||||
/**
|
||||
* Improve readability when focused and also mouse hovered in all browsers.
|
||||
*/
|
||||
|
||||
a:active,
|
||||
a:hover {
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Typography
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Address variable `h1` font-size and margin within `section` and `article`
|
||||
* contexts in Firefox 4+, Safari 5, and Chrome.
|
||||
*/
|
||||
|
||||
h1 {
|
||||
font-size: 2em;
|
||||
margin: 0.67em 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address styling not present in IE 8/9, Safari 5, and Chrome.
|
||||
*/
|
||||
|
||||
abbr[title] {
|
||||
border-bottom: 1px dotted;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
|
||||
*/
|
||||
|
||||
b,
|
||||
strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address styling not present in Safari 5 and Chrome.
|
||||
*/
|
||||
|
||||
dfn {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address differences between Firefox and other browsers.
|
||||
*/
|
||||
|
||||
hr {
|
||||
-moz-box-sizing: content-box;
|
||||
box-sizing: content-box;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address styling not present in IE 8/9.
|
||||
*/
|
||||
|
||||
mark {
|
||||
background: #ff0;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct font family set oddly in Safari 5 and Chrome.
|
||||
*/
|
||||
|
||||
code,
|
||||
kbd,
|
||||
pre,
|
||||
samp {
|
||||
font-family: monospace, serif;
|
||||
font-size: 1em;
|
||||
color: #000000;
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
|
||||
/**
|
||||
* Improve readability of pre-formatted text in all browsers.
|
||||
*/
|
||||
|
||||
pre {
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set consistent quote types.
|
||||
*/
|
||||
|
||||
q {
|
||||
quotes: "\201C" "\201D" "\2018" "\2019";
|
||||
}
|
||||
|
||||
/**
|
||||
* Address inconsistent and variable font size in all browsers.
|
||||
*/
|
||||
|
||||
small {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
|
||||
*/
|
||||
|
||||
sub,
|
||||
sup {
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
position: relative;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
sup {
|
||||
top: -0.5em;
|
||||
}
|
||||
|
||||
sub {
|
||||
bottom: -0.25em;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Embedded content
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove border when inside `a` element in IE 8/9.
|
||||
*/
|
||||
|
||||
img {
|
||||
border: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct overflow displayed oddly in IE 9.
|
||||
*/
|
||||
|
||||
svg:not(:root) {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Figures
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Address margin not present in IE 8/9 and Safari 5.
|
||||
*/
|
||||
|
||||
figure {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Forms
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Define consistent border, margin, and padding.
|
||||
*/
|
||||
|
||||
fieldset {
|
||||
border: 1px solid #c0c0c0;
|
||||
margin: 0 2px;
|
||||
padding: 0.35em 0.625em 0.75em;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct `color` not being inherited in IE 8/9.
|
||||
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
|
||||
*/
|
||||
|
||||
legend {
|
||||
border: 0; /* 1 */
|
||||
padding: 0; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct font family not being inherited in all browsers.
|
||||
* 2. Correct font size not being inherited in all browsers.
|
||||
* 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
|
||||
*/
|
||||
|
||||
button,
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
font-family: inherit; /* 1 */
|
||||
font-size: 100%; /* 2 */
|
||||
margin: 0; /* 3 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
|
||||
* the UA stylesheet.
|
||||
*/
|
||||
|
||||
button,
|
||||
input {
|
||||
line-height: normal;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address inconsistent `text-transform` inheritance for `button` and `select`.
|
||||
* All other form control elements do not inherit `text-transform` values.
|
||||
* Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
|
||||
* Correct `select` style inheritance in Firefox 4+ and Opera.
|
||||
*/
|
||||
|
||||
button,
|
||||
select {
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
|
||||
* and `video` controls.
|
||||
* 2. Correct inability to style clickable `input` types in iOS.
|
||||
* 3. Improve usability and consistency of cursor style between image-type
|
||||
* `input` and others.
|
||||
*/
|
||||
|
||||
button,
|
||||
html input[type="button"], /* 1 */
|
||||
input[type="reset"],
|
||||
input[type="submit"] {
|
||||
-webkit-appearance: button; /* 2 */
|
||||
cursor: pointer; /* 3 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Re-set default cursor for disabled elements.
|
||||
*/
|
||||
|
||||
button[disabled],
|
||||
html input[disabled] {
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Address box sizing set to `content-box` in IE 8/9/10.
|
||||
* 2. Remove excess padding in IE 8/9/10.
|
||||
*/
|
||||
|
||||
input[type="checkbox"],
|
||||
input[type="radio"] {
|
||||
box-sizing: border-box; /* 1 */
|
||||
padding: 0; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
|
||||
* 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
|
||||
* (include `-moz` to future-proof).
|
||||
*/
|
||||
|
||||
input[type="search"] {
|
||||
-webkit-appearance: textfield; /* 1 */
|
||||
-moz-box-sizing: content-box;
|
||||
-webkit-box-sizing: content-box; /* 2 */
|
||||
box-sizing: content-box;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove inner padding and search cancel button in Safari 5 and Chrome
|
||||
* on OS X.
|
||||
*/
|
||||
|
||||
input[type="search"]::-webkit-search-cancel-button,
|
||||
input[type="search"]::-webkit-search-decoration {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove inner padding and border in Firefox 4+.
|
||||
*/
|
||||
|
||||
button::-moz-focus-inner,
|
||||
input::-moz-focus-inner {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Remove default vertical scrollbar in IE 8/9.
|
||||
* 2. Improve readability and alignment in all browsers.
|
||||
*/
|
||||
|
||||
textarea {
|
||||
overflow: auto; /* 1 */
|
||||
vertical-align: top; /* 2 */
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Tables
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove most spacing between table cells.
|
||||
*/
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
}
|
||||
@@ -0,0 +1,122 @@
|
||||
/* Theme by Steve Smith (orderedlist) : https://github.com/orderedlist/minimal */
|
||||
@import url(https://fonts.googleapis.com/css?family=Lato:300italic,700italic,300,700);
|
||||
|
||||
body {
|
||||
padding:0;
|
||||
font-family: 'Avenir', Helvetica Neue, Helvetica, Arial, sans-serif;
|
||||
font-size: 14px;
|
||||
font-weight:300;
|
||||
}
|
||||
|
||||
header {
|
||||
padding-top: 20px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
|
||||
header, section, article, footer {
|
||||
padding-left: 0;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
color:#222;
|
||||
margin:0 0 20px;
|
||||
}
|
||||
|
||||
p, ul, ol, table, pre, dl {
|
||||
margin:0 0 20px;
|
||||
}
|
||||
|
||||
h1, h2, h3 {
|
||||
line-height:1.1;
|
||||
}
|
||||
|
||||
h2 {
|
||||
color:#393939;
|
||||
}
|
||||
|
||||
h3, h4, h5, h6 {
|
||||
color:#494949;
|
||||
}
|
||||
|
||||
a {
|
||||
color:#00c;
|
||||
text-decoration:none;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color:#069;
|
||||
}
|
||||
|
||||
a small {
|
||||
font-size:11px;
|
||||
color:#777;
|
||||
margin-top:-0.6em;
|
||||
display:block;
|
||||
}
|
||||
|
||||
a:hover small {
|
||||
color:#777;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
border-left:1px solid #e5e5e5;
|
||||
margin:0;
|
||||
padding:0 0 0 20px;
|
||||
font-style:italic;
|
||||
}
|
||||
|
||||
code, pre {
|
||||
font-family:Monospace, Bitstream Vera Sans Mono, Lucida Console, Terminal;
|
||||
color:#333;
|
||||
font-size:14px;
|
||||
}
|
||||
|
||||
pre {
|
||||
padding:8px 15px;
|
||||
background: #f8f8f8;
|
||||
border-radius:5px;
|
||||
border:1px solid #e5e5e5;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
table {
|
||||
width:100%;
|
||||
border-collapse:collapse;
|
||||
}
|
||||
|
||||
th, td {
|
||||
text-align:left;
|
||||
padding:5px 10px;
|
||||
border-bottom:1px solid #e5e5e5;
|
||||
}
|
||||
|
||||
dt {
|
||||
color:#444;
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
th {
|
||||
color:#444;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width:100%;
|
||||
}
|
||||
|
||||
strong {
|
||||
color:#222;
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size:11px;
|
||||
}
|
||||
|
||||
hr {
|
||||
border:0;
|
||||
background:#e5e5e5;
|
||||
height:1px;
|
||||
margin:0 0 20px;
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
|
||||
article {
|
||||
padding: 0 20px 20px;
|
||||
margin: 0 10px;
|
||||
}
|
||||
aside {
|
||||
padding: 0 0 20px;
|
||||
}
|
||||
|
||||
aside h1, aside h2, aside h3, aside h4, aside h5, aside h6 {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
table code {
|
||||
white-space: nowrap;
|
||||
color: #000000;
|
||||
background-color: #E8E8EE;
|
||||
}
|
||||
|
||||
td {
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
span.smallcode code {
|
||||
font-family: 'Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal';
|
||||
font-size: 12px;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
span.xscode code {
|
||||
font-family: 'Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal';
|
||||
font-size: 10px;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
span.smallcode,span.xscode a code {
|
||||
color: #39c;
|
||||
}
|
||||
|
||||
.ui-allocation-bar{
|
||||
display:block;
|
||||
border:1px solid #BBB;
|
||||
overflow:hidden;
|
||||
padding:5px;
|
||||
background-color:#FFF;
|
||||
}
|
||||
.ui-allocation-range{
|
||||
display:inline-block;
|
||||
float:left;
|
||||
text-align:center;
|
||||
white-space:nowrap;
|
||||
padding:5px 0;
|
||||
overflow:hidden;
|
||||
}
|
||||
|
||||
.ui-allocation-range-lbl{
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
.ui-color-1{background-color:#FFED6F;}
|
||||
.ui-color0{background-color:#8DD3C7;}
|
||||
.ui-color1{background-color:#FFFFB3;}
|
||||
.ui-color2{background-color:#BEBADA;}
|
||||
.ui-color3{background-color:#FB8072;}
|
||||
.ui-color4{background-color:#80B1D3;}
|
||||
.ui-color5{background-color:#FDB462;}
|
||||
.ui-color6{background-color:#B3DE69;}
|
||||
.ui-color7{background-color:#FCCDE5;}
|
||||
.ui-color8{background-color:#D9D9D9;}
|
||||
.ui-color9{background-color:#BC80BD;}
|
||||
.ui-color10{background-color:#CCEBC5;}
|
||||
@@ -0,0 +1,69 @@
|
||||
.highlight { background: #f5f5f5; }
|
||||
.highlight .c { color: #999988; font-style: italic } /* Comment */
|
||||
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
|
||||
.highlight .k { font-weight: bold } /* Keyword */
|
||||
.highlight .o { font-weight: bold } /* Operator */
|
||||
.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */
|
||||
.highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */
|
||||
.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */
|
||||
.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
|
||||
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
|
||||
.highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */
|
||||
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||
.highlight .gr { color: #aa0000 } /* Generic.Error */
|
||||
.highlight .gh { color: #999999 } /* Generic.Heading */
|
||||
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
|
||||
.highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */
|
||||
.highlight .go { color: #888888 } /* Generic.Output */
|
||||
.highlight .gp { color: #555555 } /* Generic.Prompt */
|
||||
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||
.highlight .gu { color: #800080; font-weight: bold; } /* Generic.Subheading */
|
||||
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
|
||||
.highlight .kc { font-weight: bold } /* Keyword.Constant */
|
||||
.highlight .kd { font-weight: bold } /* Keyword.Declaration */
|
||||
.highlight .kn { font-weight: bold } /* Keyword.Namespace */
|
||||
.highlight .kp { font-weight: bold } /* Keyword.Pseudo */
|
||||
.highlight .kr { font-weight: bold } /* Keyword.Reserved */
|
||||
.highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */
|
||||
.highlight .m { color: #009999 } /* Literal.Number */
|
||||
.highlight .s { color: #d14 } /* Literal.String */
|
||||
.highlight .na { color: #008080 } /* Name.Attribute */
|
||||
.highlight .nb { color: #0086B3 } /* Name.Builtin */
|
||||
.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */
|
||||
.highlight .no { color: #008080 } /* Name.Constant */
|
||||
.highlight .ni { color: #800080 } /* Name.Entity */
|
||||
.highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */
|
||||
.highlight .nf { color: #990000; font-weight: bold } /* Name.Function */
|
||||
.highlight .nn { color: #555555 } /* Name.Namespace */
|
||||
.highlight .nt { color: #000080 } /* Name.Tag */
|
||||
.highlight .nv { color: #008080 } /* Name.Variable */
|
||||
.highlight .ow { font-weight: bold } /* Operator.Word */
|
||||
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||
.highlight .mf { color: #009999 } /* Literal.Number.Float */
|
||||
.highlight .mh { color: #009999 } /* Literal.Number.Hex */
|
||||
.highlight .mi { color: #009999 } /* Literal.Number.Integer */
|
||||
.highlight .mo { color: #009999 } /* Literal.Number.Oct */
|
||||
.highlight .sb { color: #d14 } /* Literal.String.Backtick */
|
||||
.highlight .sc { color: #d14 } /* Literal.String.Char */
|
||||
.highlight .sd { color: #d14 } /* Literal.String.Doc */
|
||||
.highlight .s2 { color: #d14 } /* Literal.String.Double */
|
||||
.highlight .se { color: #d14 } /* Literal.String.Escape */
|
||||
.highlight .sh { color: #d14 } /* Literal.String.Heredoc */
|
||||
.highlight .si { color: #d14 } /* Literal.String.Interpol */
|
||||
.highlight .sx { color: #d14 } /* Literal.String.Other */
|
||||
.highlight .sr { color: #009926 } /* Literal.String.Regex */
|
||||
.highlight .s1 { color: #d14 } /* Literal.String.Single */
|
||||
.highlight .ss { color: #990073 } /* Literal.String.Symbol */
|
||||
.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */
|
||||
.highlight .vc { color: #008080 } /* Name.Variable.Class */
|
||||
.highlight .vg { color: #008080 } /* Name.Variable.Global */
|
||||
.highlight .vi { color: #008080 } /* Name.Variable.Instance */
|
||||
.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */
|
||||
|
||||
.type-csharp .highlight .k { color: #0000FF }
|
||||
.type-csharp .highlight .kt { color: #0000FF }
|
||||
.type-csharp .highlight .nf { color: #000000; font-weight: normal }
|
||||
.type-csharp .highlight .nc { color: #2B91AF }
|
||||
.type-csharp .highlight .nn { color: #000000 }
|
||||
.type-csharp .highlight .s { color: #A31515 }
|
||||
.type-csharp .highlight .sc { color: #A31515 }
|
||||
@@ -0,0 +1,33 @@
|
||||
// renders table-of-contents for the given page
|
||||
// alternative to https://github.com/dafi/jekyll-toc-generator or https://github.com/dafi/tocmd-generator
|
||||
if(typeof document.querySelectorAll === 'function') {
|
||||
var toc = document.querySelectorAll('[id^=toc]'),
|
||||
len = toc.length,
|
||||
df = document.createDocumentFragment(),
|
||||
sidebar = document.querySelector('aside'),
|
||||
main_header = document.querySelector('article > h1'),
|
||||
h4, ul, li, anchor, i;
|
||||
|
||||
if(len > 0) {
|
||||
ul = document.createElement('ul');
|
||||
for(i = 0; i < len; i++) {
|
||||
// restrict to h1,h2,h3
|
||||
if(toc[i].nodeName == 'H1' || toc[i].nodeName == 'H2' || toc[i].nodeName == 'H3') {
|
||||
li = document.createElement('li');
|
||||
anchor = document.createElement('a');
|
||||
anchor.href = '#' + toc[i].id;
|
||||
anchor.innerText = toc[i].innerText;
|
||||
anchor.title = 'Jump to ' + toc[i].innerText;
|
||||
li.appendChild(anchor);
|
||||
ul.appendChild(li);
|
||||
}
|
||||
}
|
||||
h4 = document.createElement('h4');
|
||||
h4.innerText = "On this page";
|
||||
df.appendChild(h4);
|
||||
df.appendChild(ul);
|
||||
|
||||
sidebar.insertBefore(df, sidebar.firstChild);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
build/**
|
||||
@@ -1,49 +0,0 @@
|
||||
{
|
||||
"extends": ["airbnb-base","plugin:react/recommended"],
|
||||
"env": {
|
||||
"browser": true,
|
||||
"jest": true
|
||||
},
|
||||
"plugins": ["react"],
|
||||
"parser": "babel-eslint",
|
||||
"parserOptions": {
|
||||
"jsx": true
|
||||
},
|
||||
"rules": {
|
||||
"indent": [
|
||||
"error",
|
||||
4,
|
||||
{
|
||||
"SwitchCase": 1
|
||||
}
|
||||
],
|
||||
"eqeqeq": [
|
||||
"error",
|
||||
"always",
|
||||
{
|
||||
"null": "ignore"
|
||||
}
|
||||
],
|
||||
"object-curly-spacing": [
|
||||
"error",
|
||||
"never"
|
||||
],
|
||||
"object-curly-newline": [
|
||||
"error",
|
||||
{
|
||||
"consistent": true
|
||||
}
|
||||
],
|
||||
"no-use-before-define": [
|
||||
"error",
|
||||
{
|
||||
"functions": false
|
||||
}
|
||||
],
|
||||
"no-await-in-loop": "off",
|
||||
"no-restricted-syntax": "off",
|
||||
"no-plusplus": "off",
|
||||
"class-methods-use-this": "off",
|
||||
"react/prop-types": "off"
|
||||
}
|
||||
}
|
||||
@@ -1,68 +0,0 @@
|
||||
This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).
|
||||
|
||||
## Available Scripts
|
||||
|
||||
In the project directory, you can run:
|
||||
|
||||
### `npm start`
|
||||
|
||||
Runs the app in the development mode.<br>
|
||||
Open [http://localhost:3000](http://localhost:3000) to view it in the browser.
|
||||
|
||||
The page will reload if you make edits.<br>
|
||||
You will also see any lint errors in the console.
|
||||
|
||||
### `npm test`
|
||||
|
||||
Launches the test runner in the interactive watch mode.<br>
|
||||
See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.
|
||||
|
||||
### `npm run build`
|
||||
|
||||
Builds the app for production to the `build` folder.<br>
|
||||
It correctly bundles React in production mode and optimizes the build for the best performance.
|
||||
|
||||
The build is minified and the filenames include the hashes.<br>
|
||||
Your app is ready to be deployed!
|
||||
|
||||
See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.
|
||||
|
||||
### `npm run eject`
|
||||
|
||||
**Note: this is a one-way operation. Once you `eject`, you can’t go back!**
|
||||
|
||||
If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.
|
||||
|
||||
Instead, it will copy all the configuration files and the transitive dependencies (Webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.
|
||||
|
||||
You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.
|
||||
|
||||
## Learn More
|
||||
|
||||
You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).
|
||||
|
||||
To learn React, check out the [React documentation](https://reactjs.org/).
|
||||
|
||||
### Code Splitting
|
||||
|
||||
This section has moved here: https://facebook.github.io/create-react-app/docs/code-splitting
|
||||
|
||||
### Analyzing the Bundle Size
|
||||
|
||||
This section has moved here: https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size
|
||||
|
||||
### Making a Progressive Web App
|
||||
|
||||
This section has moved here: https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app
|
||||
|
||||
### Advanced Configuration
|
||||
|
||||
This section has moved here: https://facebook.github.io/create-react-app/docs/advanced-configuration
|
||||
|
||||
### Deployment
|
||||
|
||||
This section has moved here: https://facebook.github.io/create-react-app/docs/deployment
|
||||
|
||||
### `npm run build` fails to minify
|
||||
|
||||
This section has moved here: https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify
|
||||
Generated
-15935
File diff suppressed because it is too large
Load Diff
@@ -1,46 +0,0 @@
|
||||
{
|
||||
"name": "client",
|
||||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"homepage": ".",
|
||||
"dependencies": {
|
||||
"ansi-to-react": "^5.1.1",
|
||||
"humanize-duration": "3.21.0",
|
||||
"js-base64": "^2.5.2",
|
||||
"js-cookie": "^2.2.1",
|
||||
"lodash": "^4.17.15",
|
||||
"node-sass": "^4.14.1",
|
||||
"react": "^16.13.1",
|
||||
"react-dom": "^16.13.1",
|
||||
"react-modal": "^3.11.2",
|
||||
"react-scripts": "3.0.1",
|
||||
"react-select": "^3.1.0",
|
||||
"react-swipeable": "^5.5.1",
|
||||
"react-switch": "^5.0.1",
|
||||
"swagger-parser": "^7.0.1",
|
||||
"xterm": "^3.14.5",
|
||||
"yamljs": "^0.3.0"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "PORT=4653 react-scripts start",
|
||||
"build": "react-scripts build",
|
||||
"test": "react-scripts test",
|
||||
"eject": "react-scripts eject"
|
||||
},
|
||||
"eslintConfig": {
|
||||
"extends": "react-app"
|
||||
},
|
||||
"browserslist": [
|
||||
">5%",
|
||||
"not dead",
|
||||
"not ie <= 11",
|
||||
"not op_mini all"
|
||||
],
|
||||
"devDependencies": {
|
||||
"eslint": "^5.16.0",
|
||||
"eslint-config-airbnb": "^17.1.1",
|
||||
"eslint-plugin-import": "^2.20.2",
|
||||
"eslint-plugin-jsx-a11y": "^6.2.3",
|
||||
"eslint-plugin-react": "^7.19.0"
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 256 KiB |
@@ -1,36 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<script>
|
||||
let basePath = window.location.pathname;
|
||||
if (!basePath.endsWith('/')) basePath += '/';
|
||||
document.write(`<base href="${basePath}">`);
|
||||
</script>
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<link rel="shortcut icon" href="./favicon.ico" />
|
||||
<meta
|
||||
name="viewport"
|
||||
content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no"
|
||||
/>
|
||||
<meta name="theme-color" content="#326ce5" />
|
||||
<link rel="manifest" href="./manifest.json" />
|
||||
<link rel="apple-touch-icon" sizes="512x512 192x192 144x144 64x64 32x32 24x24 16x16" href="./logo.png">
|
||||
<link rel="apple-touch-startup-image" href="./logo.png">
|
||||
<title>K8Dash</title>
|
||||
</head>
|
||||
<body>
|
||||
<noscript>You need to enable JavaScript to run this app.</noscript>
|
||||
<div id="root"></div>
|
||||
<!--
|
||||
This HTML file is a template.
|
||||
If you open it directly in the browser, you will see an empty page.
|
||||
|
||||
You can add webfonts, meta tags, or analytics to this file.
|
||||
The build step will place the bundled scripts into the <body> tag.
|
||||
|
||||
To begin the development, run `npm start` or `yarn start`.
|
||||
To create a production bundle, use `npm run build` or `yarn build`.
|
||||
-->
|
||||
</body>
|
||||
</html>
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 100 KiB |
@@ -1,15 +0,0 @@
|
||||
{
|
||||
"short_name": "K8Dash",
|
||||
"name": "K8Dash - Kubernetes Dashboard",
|
||||
"icons": [
|
||||
{
|
||||
"src": "logo.png",
|
||||
"sizes": "512x512 192x192 144x144 64x64 32x32 24x24 16x16",
|
||||
"type": "image/png"
|
||||
}
|
||||
],
|
||||
"start_url": ".",
|
||||
"display": "standalone",
|
||||
"theme_color": "#326ce5",
|
||||
"background_color": "#344055"
|
||||
}
|
||||
@@ -1,62 +0,0 @@
|
||||
import React, {Component, Fragment} from 'react';
|
||||
import Menu from './components/menu';
|
||||
import {Notifier} from './components/notifier';
|
||||
import Error from './components/error';
|
||||
import {initRouter} from './router';
|
||||
import log from './utils/log';
|
||||
import Button from './components/button';
|
||||
import LogoSvg from './art/logoSvg';
|
||||
import HamburgerSvg from './art/hamburgerSvg';
|
||||
|
||||
const genericError = (
|
||||
<div id='content'>
|
||||
<Error messages={['There was an error and this content was unable to be displayed.']} />
|
||||
</div>
|
||||
);
|
||||
|
||||
class App extends Component {
|
||||
componentDidMount() {
|
||||
initRouter((content) => {
|
||||
this.setState({content, contentDate: Date.now(), hasError: false});
|
||||
window.scrollTo(0, 0);
|
||||
});
|
||||
}
|
||||
|
||||
componentDidCatch(err, info) { // eslint-disable-line class-methods-use-this
|
||||
log.error('Error rendering ', {err, info});
|
||||
this.setState({hasError: true});
|
||||
}
|
||||
|
||||
render() {
|
||||
const {content, contentDate, hasError, menuToggled} = this.state || {};
|
||||
|
||||
return (
|
||||
<>
|
||||
<div id='titleBar'>
|
||||
<Button className='button_clear titleBar_hamburger' onClick={() => this.setState({menuToggled: !menuToggled})}>
|
||||
<HamburgerSvg className='svg_button' />
|
||||
</Button>
|
||||
|
||||
<a href='#!'>
|
||||
<LogoSvg className='titleBar_logo' />
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div id='shell'>
|
||||
<Menu
|
||||
toggled={menuToggled}
|
||||
onClick={() => this.setState({menuToggled: false})}
|
||||
/>
|
||||
|
||||
<Fragment key={contentDate}>
|
||||
{hasError ? genericError : content}
|
||||
</Fragment>
|
||||
</div>
|
||||
|
||||
<Notifier />
|
||||
</>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export default App;
|
||||
@@ -1,9 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const AddSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" fillRule="evenodd" clipRule="evenodd" viewBox="0 0 24 24" {...props}>
|
||||
<path d="M11.5 0C17.847 0 23 5.153 23 11.5S17.847 23 11.5 23 0 17.847 0 11.5 5.153 0 11.5 0zm0 1C17.295 1 22 5.705 22 11.5S17.295 22 11.5 22 1 17.295 1 11.5 5.705 1 11.5 1zm.5 10h6v1h-6v6h-1v-6H5v-1h6V5h1v6z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default AddSvg;
|
||||
@@ -1,9 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const arrowDownSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 292.362 292.362" {...props}>
|
||||
<path d="M286.935 69.377c-3.614-3.617-7.898-5.424-12.848-5.424H18.274c-4.952 0-9.233 1.807-12.85 5.424C1.807 72.998 0 77.279 0 82.228c0 4.948 1.807 9.229 5.424 12.847l127.907 127.907c3.621 3.617 7.902 5.428 12.85 5.428s9.233-1.811 12.847-5.428L286.935 95.074c3.613-3.617 5.427-7.898 5.427-12.847 0-4.948-1.814-9.229-5.427-12.85z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default arrowDownSvg;
|
||||
@@ -1,9 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const arrowUpSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 292.362 292.362" {...props}>
|
||||
<path d="M286.935 197.286L159.028 69.379c-3.613-3.617-7.895-5.424-12.847-5.424s-9.233 1.807-12.85 5.424L5.424 197.286C1.807 200.9 0 205.184 0 210.132s1.807 9.233 5.424 12.847c3.621 3.617 7.902 5.428 12.85 5.428h255.813c4.949 0 9.233-1.811 12.848-5.428 3.613-3.613 5.427-7.898 5.427-12.847s-1.814-9.232-5.427-12.846z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default arrowUpSvg;
|
||||
@@ -1,10 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const CancelSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300" {...props}>
|
||||
<path d="M112.78 205.8A66.43 66.43 0 0 0 150 217.16a66.89 66.89 0 0 0 66.8-66.8 66.43 66.43 0 0 0-11.35-37.23l-92.67 92.67zM150 83.54a66.88 66.88 0 0 0-66.8 66.81c0 15.6 5.38 29.95 14.37 41.33l93.75-93.76A66.43 66.43 0 0 0 150 83.54z"/>
|
||||
<path d="M150 0C67.16 0 0 67.16 0 150s67.16 150 150 150 150-67.16 150-150S232.84 0 150 0zm0 237.9c-48.28 0-87.56-39.27-87.56-87.55 0-48.28 39.28-87.56 87.56-87.56s87.56 39.28 87.56 87.56-39.28 87.56-87.56 87.56z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default CancelSvg;
|
||||
@@ -1,14 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const ClusterRoleBindingSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.03533 17.50038" {...props}>
|
||||
<path d="M8.95834.46317a1.13579 1.1265 0 0 0-.43526.11015L2.58354 3.41129a1.13579 1.1265 0 0 0-.61454.76419l-1.46533 6.3748a1.13579 1.1265 0 0 0 .1542.8637 1.13579 1.1265 0 0 0 .06458.08964l4.1111 5.11154a1.13579 1.1265 0 0 0 .88801.42387l6.59282-.00152a1.13579 1.1265 0 0 0 .888-.42311l4.1096-5.1123a1.13579 1.1265 0 0 0 .21953-.95333l-1.4676-6.37481a1.13579 1.1265 0 0 0-.61454-.76419L9.50907.57332a1.13579 1.1265 0 0 0-.55073-.11015z"/>
|
||||
<path d="M8.95515.00157a1.19902 1.1892 0 0 0-.45881.11698L2.2256 3.11377a1.19902 1.1892 0 0 0-.64872.80673l-1.5466 6.72955a1.19902 1.1892 0 0 0 .16255.91231 1.19902 1.1892 0 0 0 .06837.0942l4.33976 5.3964a1.19902 1.1892 0 0 0 .93738.44742l6.95972-.00152a1.19902 1.1892 0 0 0 .93738-.44667l4.33824-5.39716a1.19902 1.1892 0 0 0 .23169-1.00575l-1.54888-6.7303a1.19902 1.1892 0 0 0-.64872-.80597L9.53703.11779a1.19902 1.1892 0 0 0-.58188-.11622zm.00304.46185a1.13579 1.1265 0 0 1 .55073.11015l5.9403 2.83645a1.13579 1.1265 0 0 1 .61454.7642l1.4676 6.3748a1.13579 1.1265 0 0 1-.21953.95333l-4.1096 5.1123a1.13579 1.1265 0 0 1-.888.42312l-6.59282.00152a1.13579 1.1265 0 0 1-.888-.42387L.7223 11.50388a1.13579 1.1265 0 0 1-.06457-.08964 1.13579 1.1265 0 0 1-.1542-.8637l1.46532-6.3748a1.13579 1.1265 0 0 1 .61454-.76419L8.52293.57358a1.13579 1.1265 0 0 1 .43526-.11015z" color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.81178" x="10.01098" fontWeight="400" fontSize="10.58333" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26458" transform="translate(-.99263 -1.17418)">
|
||||
<tspan y="16.81178" x="10.01098" fontSize="2.82222" fontFamily="Arial" textAnchor="middle">crb</tspan>
|
||||
</text>
|
||||
<path d="M5.8895 8.43399c0-.66039.53683-1.1972 1.1972-1.1972h1.54478v-.73376H7.0867c-1.0659 0-1.93095.86507-1.93095 1.93096s.86506 1.93095 1.93095 1.93095h1.54477v-.73376H7.0867c-.66038 0-1.1972-.5368-1.1972-1.1972zm1.5834.38619h3.08953V8.0478H7.4729zm3.47573-2.31715H9.40386v.73377h1.54477c.66038 0 1.19718.5368 1.19718 1.19719 0 .66038-.5368 1.1972-1.19718 1.1972H9.40386v.73375h1.54477c1.06589 0 1.93095-.86506 1.93095-1.93095s-.86506-1.93096-1.93095-1.93096z" fill="#fff"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default ClusterRoleBindingSvg;
|
||||
@@ -1,18 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const ClusterRoleSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.0353 17.5004" {...props}>
|
||||
<path d="M8.9583.4632a1.1358 1.1265 0 0 0-.4352.1101l-5.9396 2.838a1.1358 1.1265 0 0 0-.6145.7642L.5037 10.5503a1.1358 1.1265 0 0 0 .1542.8637 1.1358 1.1265 0 0 0 .0645.0896l4.1112 5.1116a1.1358 1.1265 0 0 0 .888.4238l6.5928-.0015a1.1358 1.1265 0 0 0 .888-.4231l4.1096-5.1123a1.1358 1.1265 0 0 0 .2195-.9533L16.064 4.174a1.1358 1.1265 0 0 0-.6145-.7642L9.509.5733a1.1358 1.1265 0 0 0-.5508-.1101z"/>
|
||||
<path d="M8.9552.0016a1.199 1.1892 0 0 0-.4589.117L2.2256 3.1138a1.199 1.1892 0 0 0-.6487.8067L.0303 10.65a1.199 1.1892 0 0 0 .1625.9124 1.199 1.1892 0 0 0 .0684.0942L4.601 17.053a1.199 1.1892 0 0 0 .9373.4474l6.9598-.0015a1.199 1.1892 0 0 0 .9373-.4467l4.3383-5.3972a1.199 1.1892 0 0 0 .2317-1.0057l-1.549-6.7303a1.199 1.1892 0 0 0-.6486-.806L9.537.1178a1.199 1.1892 0 0 0-.5818-.1162zm.003.4618a1.1358 1.1265 0 0 1 .5507.1102L15.4492 3.41a1.1358 1.1265 0 0 1 .6146.7642l1.4676 6.3748a1.1358 1.1265 0 0 1-.2196.9534l-4.1096 5.1123a1.1358 1.1265 0 0 1-.888.423l-6.5928.0016a1.1358 1.1265 0 0 1-.888-.4239L.7223 11.504a1.1358 1.1265 0 0 1-.0646-.0897 1.1358 1.1265 0 0 1-.1542-.8637l1.4653-6.3748a1.1358 1.1265 0 0 1 .6146-.7641L8.5229.5736a1.1358 1.1265 0 0 1 .4353-.1102z" color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.8118" x="10.0144" fontWeight="400" fontSize="10.5833" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".2646" transform="translate(-.9926 -1.1742)">
|
||||
<tspan y="16.8118" x="10.0144" fontSize="2.8222" fontFamily="Arial" textAnchor="middle">c.role</tspan>
|
||||
</text>
|
||||
<g fill="#fff" transform="translate(-.9926 -1.1742)">
|
||||
<ellipse ry=".5023" rx=".5063" cy="9.9493" cx="9.9283"/>
|
||||
<path d="M10.011 5.8762L6.9028 7.2504v2.0505c0 1.901 1.3248 3.678 3.108 4.1098 1.7808-.4319 3.1068-2.2088 3.1068-4.1098V7.2504zm1.6451 5.5182H8.3644V8.631h.4725v-.3015c0-.651.5319-1.1791 1.1892-1.1791.6574 0 1.1893.5281 1.1893 1.1791v.3015h.4407z"/>
|
||||
<path d="M9.9878 7.589c-.3939.0014-.713.318-.713.708v.2964h1.4273V8.292c-.0038-.3889-.3217-.7017-.7143-.703z"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default ClusterRoleSvg;
|
||||
@@ -1,18 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const ConfigMapSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.035334 17.500378" {...props}>
|
||||
<path d="M8.95834241.46317128a1.13578782 1.12649307 0 0 0-.43526729.11014617L2.58353674 3.41129071a1.13578782 1.12649307 0 0 0-.61453947.76418673L.50367255 10.5502822a1.13578782 1.12649307 0 0 0 .15420523.8636987 1.13578782 1.12649307 0 0 0 .06456722.08963497l4.11111115 5.11154276a1.13578782 1.12649307 0 0 0 .8880063.42387233l6.5928196-.00152234a1.13578782 1.12649307 0 0 0 .8880061-.42311319l4.10959317-5.11229377a1.13578782 1.12649307 0 0 0 .219532-.95333468l-1.46760216-6.37480883a1.13578782 1.12649307 0 0 0-.61453999-.76418663L9.5090737.57331745a1.13578782 1.12649307 0 0 0-.55073128-.11014617z"/>
|
||||
<path d="M8.95515363.00156985a1.19902036 1.18920801 0 0 0-.45881585.11698298L2.22560173 3.11376929a1.19902036 1.18920801 0 0 0-.64872294.8067259l-1.54660412 6.7295526a1.19902036 1.18920801 0 0 0 .1625598.9123139 1.19902036 1.18920801 0 0 0 .0683629.09419182l4.33975948 5.39640273a1.19902036 1.18920801 0 0 0 .93738165.4474218l6.95971983-.00152233a1.19902036 1.18920801 0 0 0 .93738246-.44666266l4.3382398-5.39716289a1.19902036 1.18920801 0 0 0 .2316869-1.0057476L16.4564882 3.9189759a1.19902036 1.18920801 0 0 0-.64872234-.80596625L9.53702972.11779318a1.19902036 1.18920801 0 0 0-.58187609-.11622333zm.00303452.46185444a1.13578782 1.12649307 0 0 1 .55073108.11014617l5.9402975 2.83645407a1.13578782 1.12649307 0 0 1 .61454376.76418674l1.46760303 6.37480537a1.13578782 1.12649307 0 0 1-.2195329.95333367l-4.10959207 5.1123029a1.13578782 1.12649307 0 0 1-.8880062.4231132l-6.59281909.00152233a1.13578782 1.12649307 0 0 1-.8880063-.4238703L.72229582 11.5038767a1.13578782 1.12649307 0 0 1-.06456722-.08963497 1.13578782 1.12649307 0 0 1-.15420422-.8636987l1.4653237-6.37480547a1.13578782 1.12649307 0 0 1 .61453947-.76418663L8.52292583.57357757a1.13578782 1.12649307 0 0 1 .4352674-.11014618z" color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.811775" x="10.047501" fontWeight="400" fontSize="10.58333302" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26458332" transform="translate(-.99262638 -1.174181)">
|
||||
<tspan y="16.811775" x="10.047501" fontSize="2.82222223" fontFamily="Arial" textAnchor="middle">cm</tspan>
|
||||
</text>
|
||||
<g transform="translate(-.87483657 -1.174181)">
|
||||
<path d="M8.236948 6.2914262h5.825001M5.723058 6.2914262h1.45834" fill="none" stroke="#fff" strokeWidth=".79374999" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
<path d="M10.353619 8.4080928h3.70833" fill="none" stroke="#fff" strokeWidth=".79374999" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
<path d="M7.839728 8.4080928h1.4583305M10.353619 10.52476h3.70833M7.839728 10.52476h1.4583305M8.236948 12.641428h5.825001M5.723058 12.641428h1.45834" fill="none" stroke="#fff" strokeWidth=".79374999" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default ConfigMapSvg;
|
||||
@@ -1,20 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const CronJobSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.035334 17.500378" {...props}>
|
||||
<path d="M8.95834241.46317128a1.13578782 1.12649307 0 0 0-.43526729.11014617L2.58353674 3.41129071a1.13578782 1.12649307 0 0 0-.61453947.76418673L.50367255 10.5502822a1.13578782 1.12649307 0 0 0 .15420523.8636987 1.13578782 1.12649307 0 0 0 .06456722.08963497l4.11111115 5.11154276a1.13578782 1.12649307 0 0 0 .8880063.42387233l6.5928196-.00152234a1.13578782 1.12649307 0 0 0 .8880061-.42311319l4.10959317-5.11229377a1.13578782 1.12649307 0 0 0 .219532-.95333468l-1.46760216-6.37480883a1.13578782 1.12649307 0 0 0-.61453999-.76418663L9.5090737.57331745a1.13578782 1.12649307 0 0 0-.55073128-.11014617z"/>
|
||||
<path d="M8.95515363.00156985a1.19902036 1.18920801 0 0 0-.45881585.11698298L2.22560173 3.11376929a1.19902036 1.18920801 0 0 0-.64872294.8067259l-1.54660412 6.7295526a1.19902036 1.18920801 0 0 0 .1625598.9123139 1.19902036 1.18920801 0 0 0 .0683629.09419182l4.33975948 5.39640273a1.19902036 1.18920801 0 0 0 .93738165.4474218l6.95971983-.00152233a1.19902036 1.18920801 0 0 0 .93738246-.44666266l4.3382398-5.39716289a1.19902036 1.18920801 0 0 0 .2316869-1.0057476L16.4564882 3.9189759a1.19902036 1.18920801 0 0 0-.64872234-.80596625L9.53702972.11779318a1.19902036 1.18920801 0 0 0-.58187609-.11622333zm.00303452.46185444a1.13578782 1.12649307 0 0 1 .55073108.11014617l5.9402975 2.83645407a1.13578782 1.12649307 0 0 1 .61454376.76418674l1.46760303 6.37480537a1.13578782 1.12649307 0 0 1-.2195329.95333367l-4.10959207 5.1123029a1.13578782 1.12649307 0 0 1-.8880062.4231132l-6.59281909.00152233a1.13578782 1.12649307 0 0 1-.8880063-.4238703L.72229582 11.5038767a1.13578782 1.12649307 0 0 1-.06456722-.08963497 1.13578782 1.12649307 0 0 1-.15420422-.8636987l1.4653237-6.37480547a1.13578782 1.12649307 0 0 1 .61453947-.76418663L8.52292583.57357757a1.13578782 1.12649307 0 0 1 .4352674-.11014618z"
|
||||
color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.811775" x="10.010983"
|
||||
fontWeight="400" fontSize="10.58333302" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26458332" transform="translate(-.99262638 -1.174181)">
|
||||
<tspan
|
||||
y="16.811775" x="10.010983" fontSize="2.82222223" fontFamily="Arial" textAnchor="middle">cronjob</tspan>
|
||||
</text>
|
||||
<g fill="#fff">
|
||||
<path d="M10.10198738 2.7858537v2.142506h2.20296v-2.142506zm0 3.08405v.5462191c.2587-.06122.52685-.09715.80357-.09715.49701 0 .96978.106323 1.39939.2945548v-.7436239zm-6.2838598.03307v2.1425051h2.20297V5.9029737zm3.1419301 0v2.1425051h.9281098c.3102901-.520329.7495899-.954616 1.2748599-1.2572889v-.8852163zM3.79797748 9.020096v2.142506h2.2029701V9.020096zm3.1517501 0v2.142506h.7064101c-.16935-.410763-.26458-.859621-.26458-1.329635 0-.28008.0371-.551296.0997-.812871z"/>
|
||||
<path d="M12.608072 7.9394728c-1.7599 0-3.1997998 1.439912-3.1997998 3.1998052 0 1.759893 1.4398998 3.199805 3.1997998 3.199805 1.75989 0 3.199799-1.439912 3.199799-3.199805 0-1.7598932-1.439909-3.1998052-3.199799-3.1998052zm1.34392 4.5437232l-1.6639-1.023938V9.5393748h.47997v1.6639002l1.43992.863947z" clipPath="url(#b)" transform="translate(-1.57051462 -1.174181)"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default CronJobSvg;
|
||||
@@ -1,23 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const DaemonSetSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.035334 17.500378" {...props}>
|
||||
<path d="M8.95834241.46317128a1.13578782 1.12649307 0 0 0-.43526729.11014617L2.58353674 3.41129071a1.13578782 1.12649307 0 0 0-.61453947.76418673L.50367255 10.5502822a1.13578782 1.12649307 0 0 0 .15420523.8636987 1.13578782 1.12649307 0 0 0 .06456722.08963497l4.11111115 5.11154276a1.13578782 1.12649307 0 0 0 .8880063.42387233l6.5928196-.00152234a1.13578782 1.12649307 0 0 0 .8880061-.42311319l4.10959317-5.11229377a1.13578782 1.12649307 0 0 0 .219532-.95333468l-1.46760216-6.37480883a1.13578782 1.12649307 0 0 0-.61453999-.76418663L9.5090737.57331745a1.13578782 1.12649307 0 0 0-.55073128-.11014617z"/>
|
||||
<path d="M8.95515363.00156985a1.19902036 1.18920801 0 0 0-.45881585.11698298L2.22560173 3.11376929a1.19902036 1.18920801 0 0 0-.64872294.8067259l-1.54660412 6.7295526a1.19902036 1.18920801 0 0 0 .1625598.9123139 1.19902036 1.18920801 0 0 0 .0683629.09419182l4.33975948 5.39640273a1.19902036 1.18920801 0 0 0 .93738165.4474218l6.95971983-.00152233a1.19902036 1.18920801 0 0 0 .93738246-.44666266l4.3382398-5.39716289a1.19902036 1.18920801 0 0 0 .2316869-1.0057476L16.4564882 3.9189759a1.19902036 1.18920801 0 0 0-.64872234-.80596625L9.53702972.11779318a1.19902036 1.18920801 0 0 0-.58187609-.11622333zm.00303452.46185444a1.13578782 1.12649307 0 0 1 .55073108.11014617l5.9402975 2.83645407a1.13578782 1.12649307 0 0 1 .61454376.76418674l1.46760303 6.37480537a1.13578782 1.12649307 0 0 1-.2195329.95333367l-4.10959207 5.1123029a1.13578782 1.12649307 0 0 1-.8880062.4231132l-6.59281909.00152233a1.13578782 1.12649307 0 0 1-.8880063-.4238703L.72229582 11.5038767a1.13578782 1.12649307 0 0 1-.06456722-.08963497 1.13578782 1.12649307 0 0 1-.15420422-.8636987l1.4653237-6.37480547a1.13578782 1.12649307 0 0 1 .61453947-.76418663L8.52292583.57357757a1.13578782 1.12649307 0 0 1 .4352674-.11014618z"
|
||||
color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.811775" x="10.016495"
|
||||
fontWeight="400" fontSize="10.58333302" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26458332" transform="translate(-.99262638 -1.174181)">
|
||||
<tspan
|
||||
y="16.811775" x="10.016495" fontSize="2.82222223" fontFamily="Arial" textAnchor="middle">ds</tspan>
|
||||
</text>
|
||||
<g>
|
||||
<path d="M7.30195097 4.1085938h6.524989v4.5833348h-6.524989z" fill="none" stroke="#fff" strokeWidth=".52914584" strokeLinecap="square" strokeLinejoin="round" strokeMiterlimit="10" strokeDasharray="1.58743756 1.58743756" strokeDashoffset="3.66698074"/>
|
||||
<path d="M3.94382097 12.432571h7.074559" fill="none" stroke="#fff" strokeWidth=".61833036"/>
|
||||
<path d="M5.76320097 5.5199045h6.524989V10.10324h-6.524989z" fillRule="evenodd" stroke="#fff" strokeWidth=".52914584" strokeLinecap="square" strokeLinejoin="round" strokeMiterlimit="10" strokeDasharray="1.58743756 1.58743756" strokeDashoffset="3.87863898"/>
|
||||
<path d="M4.22445097 6.9312173h6.524999v4.5833347h-6.524999z" fill="none" stroke="#fff" strokeWidth=".52916664" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
<path d="M4.18017117 6.9484851h6.5250018v4.5833339h-6.5250018z" fill="#fff" fillRule="evenodd"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default DaemonSetSvg;
|
||||
@@ -1,10 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const DeleteSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 83.816 83.816" {...props}>
|
||||
<path d="M54.074 33.163H29.741c-.551 0-1 .449-1 1V58.83c0 .551.449 1 1 1h24.333c.551 0 1-.449 1-1V34.163c0-.552-.449-1-1-1zm-19.166 23c0 .552-.448 1-1 1s-1-.448-1-1v-19c0-.552.448-1 1-1s1 .448 1 1v19zm4 0c0 .552-.448 1-1 1s-1-.448-1-1v-19c0-.552.448-1 1-1s1 .448 1 1v19zm4 0c0 .552-.448 1-1 1s-1-.448-1-1v-19c0-.552.448-1 1-1s1 .448 1 1v19zm4 0c0 .552-.448 1-1 1-.553 0-1-.448-1-1v-19c0-.552.447-1 1-1 .552 0 1 .448 1 1v19zm4 0c0 .552-.448 1-1 1-.553 0-1-.448-1-1v-19c0-.552.447-1 1-1 .552 0 1 .448 1 1v19zM54.074 24.534h-7.167c-.552 0-1-.448-1-1v-.872c0-.551-.449-1-1-1h-6c-.551 0-1 .449-1 1v.872c0 .552-.448 1-1 1H29.74c-.551 0-1 .449-1 1v1.128c0 .551.449 1 1 1h24.333c.551 0 1-.449 1-1v-1.128c.001-.551-.448-1-.999-1z"/>
|
||||
<path d="M41.908 0C18.762 0 0 18.763 0 41.909c0 23.146 18.763 41.907 41.908 41.907s41.908-18.762 41.908-41.907C83.816 18.763 65.053 0 41.908 0zm15.166 58.829c0 1.653-1.346 3-3 3H29.741c-1.654 0-3-1.347-3-3V34.163c0-1.654 1.346-3 3-3h24.333c1.654 0 3 1.346 3 3v24.666zm0-32.166c0 1.654-1.346 3-3 3H29.741c-1.654 0-3-1.346-3-3v-1.128c0-1.654 1.346-3 3-3h6.169c.067-1.595 1.386-2.872 2.997-2.872h6c1.61 0 2.931 1.277 2.997 2.872h6.169c1.653 0 3 1.346 3 3l.001 1.128z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default DeleteSvg;
|
||||
@@ -1,20 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const DeploymentSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.04 17.5" {...props}>
|
||||
<path d="M8.96.46a1.14 1.13 0 0 0-.44.11L2.58 3.41a1.14 1.13 0 0 0-.61.77L.5 10.55a1.14 1.13 0 0 0 .16.86 1.14 1.13 0 0 0 .06.1l4.11 5.1a1.14 1.13 0 0 0 .9.43h6.58a1.14 1.13 0 0 0 .9-.43l4.1-5.1a1.14 1.13 0 0 0 .22-.96l-1.47-6.38a1.14 1.13 0 0 0-.61-.76L9.5.57a1.14 1.13 0 0 0-.55-.1z"/>
|
||||
<path d="M8.96 0a1.2 1.19 0 0 0-.46.12l-6.27 3a1.2 1.19 0 0 0-.65.8L.03 10.65a1.2 1.19 0 0 0 .16.91 1.2 1.19 0 0 0 .07.1l4.34 5.4a1.2 1.19 0 0 0 .94.44h6.96a1.2 1.19 0 0 0 .94-.45l4.33-5.4a1.2 1.19 0 0 0 .24-1l-1.55-6.73a1.2 1.19 0 0 0-.65-.8l-6.27-3A1.2 1.19 0 0 0 8.96 0zm0 .46a1.14 1.13 0 0 1 .55.11l5.94 2.84a1.14 1.13 0 0 1 .61.76l1.47 6.38a1.14 1.13 0 0 1-.22.95l-4.1 5.11a1.14 1.13 0 0 1-.9.43H5.72a1.14 1.13 0 0 1-.89-.42L.73 11.5a1.14 1.13 0 0 1-.07-.09 1.14 1.13 0 0 1-.16-.86l1.47-6.37a1.14 1.13 0 0 1 .61-.77L8.52.57a1.14 1.13 0 0 1 .44-.1z"
|
||||
color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.81" x="9.97"
|
||||
fontWeight="400" fontSize="10.58" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26" transform="translate(-1 -1.17)">
|
||||
<tspan
|
||||
y="16.81" x="9.97" fontSize="2.82" fontFamily="Arial" textAnchor="middle">deploy</tspan>
|
||||
</text>
|
||||
<g fill="#fff" fillRule="evenodd">
|
||||
<path d="M8.58 12.56a4.45 4.45 0 1 1 4.23-4.73l-1.76.11A2.69 2.69 0 1 0 8.5 10.8z"/>
|
||||
<path d="M9.49 7.83l1.4 3.43 3.22-3.43z"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default DeploymentSvg;
|
||||
@@ -1,9 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const EditSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300" {...props}>
|
||||
<path d="M149.996 0C67.157 0 .001 67.161.001 149.997S67.157 300 149.996 300s150.003-67.163 150.003-150.003S232.835 0 149.996 0zm71.306 107.945l-14.247 14.247-29.001-28.999-11.002 11.002 29.001 29.001-71.132 71.126-28.999-28.996-11.002 11.002 28.999 28.999-7.088 7.088-.135-.135c-.786 1.294-2.064 2.238-3.582 2.575l-27.043 6.03c-.405.091-.817.135-1.224.135-1.476 0-2.91-.581-3.973-1.647-1.364-1.359-1.932-3.322-1.512-5.203l6.027-27.035c.34-1.517 1.286-2.798 2.578-3.582l-.137-.137L192.3 78.941c1.678-1.675 4.404-1.675 6.082.005l22.922 22.917c1.678 1.678 1.678 4.404-.002 6.082z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default EditSvg;
|
||||
@@ -1,10 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const ExecSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300" {...props}>
|
||||
<path d="M78.841 216.367c0 4.186 3.408 7.594 7.597 7.594H213.56c4.189 0 7.597-3.405 7.597-7.594v-85.456H78.841v85.456zM221.154 98.03c.002-4.186-3.406-7.594-7.594-7.594H86.438c-4.189 0-7.597 3.405-7.597 7.594v17.32h142.313V98.03zm-119.137 11.251h-9.736V98.906h9.736v10.375zm17.67 0h-9.736V98.906h9.736v10.375zm17.668 0h-9.736V98.906h9.736v10.375z"/>
|
||||
<path d="M149.996 0C67.157 0 .001 67.161.001 149.997S67.157 300 149.996 300s150.003-67.163 150.003-150.003S232.835 0 149.996 0zm86.722 216.367c0 12.768-10.39 23.156-23.158 23.156H86.438c-12.768 0-23.158-10.387-23.158-23.156V98.03c0-12.768 10.387-23.156 23.158-23.156H213.56c12.768 0 23.158 10.387 23.158 23.156v118.337z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default ExecSvg;
|
||||
@@ -1,9 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const HamburgerSvg = props => (
|
||||
<svg version="1" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg" {...props}>
|
||||
<path d="M4 10h24a2 2 0 0 0 0-4H4a2 2 0 0 0 0 4zm24 4H4a2 2 0 0 0 0 4h24a2 2 0 0 0 0-4zm0 8H4a2 2 0 0 0 0 4h24a2 2 0 0 0 0-4z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default HamburgerSvg;
|
||||
@@ -1,14 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const IngressSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.035334 17.500378" {...props}>
|
||||
<path d="M8.95834241.46317128a1.13578782 1.12649307 0 0 0-.43526729.11014617L2.58353674 3.41129071a1.13578782 1.12649307 0 0 0-.61453947.76418673L.50367255 10.5502822a1.13578782 1.12649307 0 0 0 .15420523.8636987 1.13578782 1.12649307 0 0 0 .06456722.08963497l4.11111115 5.11154276a1.13578782 1.12649307 0 0 0 .8880063.42387233l6.5928196-.00152234a1.13578782 1.12649307 0 0 0 .8880061-.42311319l4.10959317-5.11229377a1.13578782 1.12649307 0 0 0 .219532-.95333468l-1.46760216-6.37480883a1.13578782 1.12649307 0 0 0-.61453999-.76418663L9.5090737.57331745a1.13578782 1.12649307 0 0 0-.55073128-.11014617z"/>
|
||||
<path d="M8.95515363.00156985a1.19902036 1.18920801 0 0 0-.45881585.11698298L2.22560173 3.11376929a1.19902036 1.18920801 0 0 0-.64872294.8067259l-1.54660412 6.7295526a1.19902036 1.18920801 0 0 0 .1625598.9123139 1.19902036 1.18920801 0 0 0 .0683629.09419182l4.33975948 5.39640273a1.19902036 1.18920801 0 0 0 .93738165.4474218l6.95971983-.00152233a1.19902036 1.18920801 0 0 0 .93738246-.44666266l4.3382398-5.39716289a1.19902036 1.18920801 0 0 0 .2316869-1.0057476L16.4564882 3.9189759a1.19902036 1.18920801 0 0 0-.64872234-.80596625L9.53702972.11779318a1.19902036 1.18920801 0 0 0-.58187609-.11622333zm.00303452.46185444a1.13578782 1.12649307 0 0 1 .55073108.11014617l5.9402975 2.83645407a1.13578782 1.12649307 0 0 1 .61454376.76418674l1.46760303 6.37480537a1.13578782 1.12649307 0 0 1-.2195329.95333367l-4.10959207 5.1123029a1.13578782 1.12649307 0 0 1-.8880062.4231132l-6.59281909.00152233a1.13578782 1.12649307 0 0 1-.8880063-.4238703L.72229582 11.5038767a1.13578782 1.12649307 0 0 1-.06456722-.08963497 1.13578782 1.12649307 0 0 1-.15420422-.8636987l1.4653237-6.37480547a1.13578782 1.12649307 0 0 1 .61453947-.76418663L8.52292583.57357757a1.13578782 1.12649307 0 0 1 .4352674-.11014618z" color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.811775" x="10.008915" fontWeight="400" fontSize="10.58333302" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26458332" transform="translate(-.99262638 -1.174181)">
|
||||
<tspan y="16.811775" x="10.008915" fontSize="2.82222223" fontFamily="Arial" textAnchor="middle">ing</tspan>
|
||||
</text>
|
||||
<path d="M11.76536362 12.542075h-2.270701l-4.9209009-6.1558614h-1.42366V4.3713067h2.31473l4.9230119 6.1558533h1.37752V8.933686l3.119869 2.599882-3.119869 2.601983zm-2.47616-4.7552748l1.09864-1.3754256h1.37752v1.593475l3.119869-2.5998829-3.119869-2.601983v1.593483h-2.270701l-1.4571904 1.8241102zM5.69128172 9.151743l-1.11752 1.400578h-1.42366v2.014915h2.31473l1.4781699-1.849278z" fill="#fff"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default IngressSvg;
|
||||
@@ -1,16 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const JobSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.035334 17.500378" {...props}>
|
||||
<path d="M8.95834241.46317128a1.13578782 1.12649307 0 0 0-.43526729.11014617L2.58353674 3.41129071a1.13578782 1.12649307 0 0 0-.61453947.76418673L.50367255 10.5502822a1.13578782 1.12649307 0 0 0 .15420523.8636987 1.13578782 1.12649307 0 0 0 .06456722.08963497l4.11111115 5.11154276a1.13578782 1.12649307 0 0 0 .8880063.42387233l6.5928196-.00152234a1.13578782 1.12649307 0 0 0 .8880061-.42311319l4.10959317-5.11229377a1.13578782 1.12649307 0 0 0 .219532-.95333468l-1.46760216-6.37480883a1.13578782 1.12649307 0 0 0-.61453999-.76418663L9.5090737.57331745a1.13578782 1.12649307 0 0 0-.55073128-.11014617z"/>
|
||||
<path d="M8.95515363.00156985a1.19902036 1.18920801 0 0 0-.45881585.11698298L2.22560173 3.11376929a1.19902036 1.18920801 0 0 0-.64872294.8067259l-1.54660412 6.7295526a1.19902036 1.18920801 0 0 0 .1625598.9123139 1.19902036 1.18920801 0 0 0 .0683629.09419182l4.33975948 5.39640273a1.19902036 1.18920801 0 0 0 .93738165.4474218l6.95971983-.00152233a1.19902036 1.18920801 0 0 0 .93738246-.44666266l4.3382398-5.39716289a1.19902036 1.18920801 0 0 0 .2316869-1.0057476L16.4564882 3.9189759a1.19902036 1.18920801 0 0 0-.64872234-.80596625L9.53702972.11779318a1.19902036 1.18920801 0 0 0-.58187609-.11622333zm.00303452.46185444a1.13578782 1.12649307 0 0 1 .55073108.11014617l5.9402975 2.83645407a1.13578782 1.12649307 0 0 1 .61454376.76418674l1.46760303 6.37480537a1.13578782 1.12649307 0 0 1-.2195329.95333367l-4.10959207 5.1123029a1.13578782 1.12649307 0 0 1-.8880062.4231132l-6.59281909.00152233a1.13578782 1.12649307 0 0 1-.8880063-.4238703L.72229582 11.5038767a1.13578782 1.12649307 0 0 1-.06456722-.08963497 1.13578782 1.12649307 0 0 1-.15420422-.8636987l1.4653237-6.37480547a1.13578782 1.12649307 0 0 1 .61453947-.76418663L8.52292583.57357757a1.13578782 1.12649307 0 0 1 .4352674-.11014618z" color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.811775" x="10.130872" fontWeight="400" fontSize="10.58333302" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26458332" transform="translate(-.99262638 -1.174181)">
|
||||
<tspan y="16.811775" x="10.130872" fontSize="2.82222223" fontFamily="Arial" textAnchor="middle">job</tspan>
|
||||
</text>
|
||||
<g fill="#fff">
|
||||
<path d="M4.76416207 9.703665h2.2029927v2.1426713h-2.2029927zM7.91617107 9.703665h2.2029927v2.1426713h-2.2029927zM11.06817897 9.703665h2.2029927v2.1426713h-2.2029927zM11.06817897 6.5534725h2.2029927v2.1426713h-2.2029927zM7.92624287 6.5865459h2.2029927v2.1426713h-2.2029927zM4.78431987 6.5865459h2.2029927v2.1426713h-2.2029927zM11.06817897 3.4694195h2.2029927v2.1426713h-2.2029927z"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default JobSvg;
|
||||
@@ -1,9 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const lightBulbSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300" {...props}>
|
||||
<path d="M149.996 0C67.157 0 .001 67.161.001 149.997S67.157 300 149.996 300s150.003-67.163 150.003-150.003S232.835 0 149.996 0zm-1.245 218.468c-12.893 0-23.342-11.082-23.342-24.764h46.685c-.001 13.682-10.453 24.764-23.343 24.764zm21.662-37.773h-43.326c-1.167-12.753-31.476-23.871-31.476-55.747 0-33.999 25.425-52.027 53.135-52.709h.006c27.712.685 53.135 18.71 53.135 52.709.002 31.876-30.307 42.994-31.474 55.747z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default lightBulbSvg;
|
||||
@@ -1,11 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const LoadingSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 760 740" {...props}>
|
||||
<path d="M381 118c-8 0-15 8-15 17v4l2 14 2 26-5 8v6a190 190 0 0 0-122 59l-6-4c-2 0-5 1-8-1-7-4-13-10-20-18l-10-10-3-2c-3-3-7-4-10-4-5 0-9 1-12 5-5 6-3 16 4 21v1l3 2 12 7 22 15 3 9 5 4c-25 38-37 84-30 132l-6 2c-2 2-4 5-7 6l-26 4-14 1-4 1c-9 3-14 10-13 18 2 8 11 13 19 11h1l4-1 13-5 25-8c4 0 7 2 9 3l6-1c15 46 45 83 84 106l-2 6c1 3 2 6 1 8-3 8-8 15-13 24-3 4-6 7-8 12l-2 4c-4 8-1 17 6 21 8 3 17-1 20-9h1l1-4 5-13c3-10 6-20 11-26 1-2 4-3 6-3l3-6a189 189 0 0 0 135 0l4 6c2 1 5 1 7 4 4 7 7 15 10 25l4 13 2 4c4 8 13 12 20 8 8-3 10-12 7-21l-2-3-8-12-13-23c-1-4 0-6 1-9l-2-6c40-24 70-62 84-106l6 1c2-1 4-3 8-3 8 1 16 4 26 8l13 5 4 1c9 2 17-3 19-11s-4-16-12-18l-5-1-14-1-26-4c-3-1-5-5-6-7l-6-1a189 189 0 0 0-30-132l5-5c0-2 0-5 2-8l22-15 12-7 4-3c7-5 8-15 3-21-5-7-15-7-22-2l-3 3-10 10-19 18c-3 2-7 1-9 1l-6 4c-31-33-75-55-121-59v-6c-2-2-5-4-5-8-1-8 0-16 1-26l2-14v-4c0-9-6-17-14-17zm-19 114l-4 77a13 13 0 0 1-21 10l-63-45a151 151 0 0 1 88-42zm37 0c33 4 64 19 88 42l-63 44a13 13 0 0 1-20-9h-1zm-148 71l58 51a13 13 0 0 1-5 23l-74 21c-4-34 4-67 21-95zm259 0a153 153 0 0 1 22 95l-74-21v-1a13 13 0 0 1-5-22l57-51zm-141 55h24l14 18-5 23-21 10-21-10-6-23zm75 63h4l76 13c-11 31-33 58-61 76l-30-71a13 13 0 0 1 11-18zm-127 0a13 13 0 0 1 11 18l-29 71c-27-18-49-44-61-76l76-13h3zm63 31l6 1c3 2 5 3 6 6l38 67a154 154 0 0 1-98 0l37-67c3-4 7-7 11-7z">
|
||||
<animateTransform attributeName="transform" type="rotate" calcMode="linear" values="0 380 370;-360 380 370" keyTimes="0;1" dur="2s" begin="0s" repeatCount="indefinite"/>
|
||||
</path>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default LoadingSvg;
|
||||
@@ -1,10 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const LockSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 299.995 299.995" {...props}>
|
||||
<path d="M149.997 161.485c-8.613 0-15.598 6.982-15.598 15.598 0 5.776 3.149 10.807 7.817 13.505v17.341h15.562v-17.341c4.668-2.697 7.817-7.729 7.817-13.505 0-8.616-6.984-15.598-15.598-15.598zM150.003 85.849c-13.111 0-23.775 10.665-23.775 23.775v25.319h47.548v-25.319c-.001-13.108-10.665-23.775-23.773-23.775z"/>
|
||||
<path d="M149.995.001C67.156.001 0 67.159 0 149.998c0 82.837 67.156 149.997 149.995 149.997s150-67.161 150-149.997c0-82.839-67.161-149.997-150-149.997zm46.09 227.117h-92.173c-9.734 0-17.626-7.892-17.626-17.629V152.57c0-8.491 6.007-15.582 14.003-17.25v-25.697c0-27.409 22.3-49.711 49.711-49.711 27.409 0 49.709 22.3 49.709 49.711v25.697c7.993 1.673 14 8.759 14 17.25v56.919h.002c0 9.736-7.892 17.629-17.626 17.629z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default LockSvg;
|
||||
File diff suppressed because one or more lines are too long
@@ -1,10 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const LogoutSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300" {...props}>
|
||||
<path d="M127.591 119.253l-13.258 13.258 22.406 22.406-22.406 22.406 13.258 13.259 22.406-22.406 22.406 22.406 13.259-13.259-22.406-22.406 22.406-22.406-13.259-13.258-22.406 22.406z"/>
|
||||
<path d="M149.997 0C67.158 0 .003 67.161.003 149.997S67.158 300 149.997 300s150-67.163 150-150.003S232.837 0 149.997 0zM150 232.886c-77.185 0-82.683-130.592-82.683-130.592l82.681-35.187H150l82.681 35.187c0 .002-5.498 130.592-82.681 130.592z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default LogoutSvg;
|
||||
@@ -1,9 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const LogsSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300" {...props}>
|
||||
<path d="M149.997 0C67.158 0 .003 67.161.003 149.997S67.158 300 149.997 300s150-67.163 150-150.003S232.837 0 149.997 0zm59.456 220.955c-1.644 0-3.268-.091-4.866-.254-1.46.163-2.944.254-4.448.254h-37.656l40.504-40.87c2.342-2.365 3.079-5.983 1.849-9.137-1.227-3.156-4.165-5.218-7.431-5.218h-19.958v-42.662c0-5.14-4.171-9.311-9.311-9.311h-28.231c-5.14 0-9.311 4.168-9.311 9.311v42.662h-21.576c-4.43 0-8.019 3.737-8.019 8.354 0 2.63 1.162 4.969 2.977 6.5l40.011 40.372H83.794c-21.916 0-39.684-17.771-39.684-39.684 0-18.256 12.327-33.615 29.108-38.245 1.854-15.541 15.058-27.598 31.094-27.598 4.85 0 9.428 1.136 13.526 3.105 7.973-22.188 29.188-38.053 54.118-38.053 29.896 0 54.455 22.821 57.227 51.988 15.779 7.42 26.709 23.454 26.709 42.045-.001 25.649-20.791 46.441-46.439 46.441z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default LogsSvg;
|
||||
@@ -1,17 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const NamespaceSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.04 17.5" {...props}>
|
||||
<path d="M8.96.46a1.14 1.13 0 0 0-.44.11L2.58 3.41a1.14 1.13 0 0 0-.61.77L.5 10.55a1.14 1.13 0 0 0 .16.86 1.14 1.13 0 0 0 .06.1l4.11 5.1a1.14 1.13 0 0 0 .9.43h6.58a1.14 1.13 0 0 0 .9-.43l4.1-5.1a1.14 1.13 0 0 0 .22-.96l-1.47-6.38a1.14 1.13 0 0 0-.61-.76L9.5.57a1.14 1.13 0 0 0-.55-.1z"/>
|
||||
<path d="M8.96 0a1.2 1.19 0 0 0-.46.12l-6.27 3a1.2 1.19 0 0 0-.65.8L.03 10.65a1.2 1.19 0 0 0 .16.91 1.2 1.19 0 0 0 .07.1l4.34 5.4a1.2 1.19 0 0 0 .94.44h6.96a1.2 1.19 0 0 0 .94-.45l4.33-5.4a1.2 1.19 0 0 0 .24-1l-1.55-6.73a1.2 1.19 0 0 0-.65-.8l-6.27-3A1.2 1.19 0 0 0 8.96 0zm0 .46a1.14 1.13 0 0 1 .55.11l5.94 2.84a1.14 1.13 0 0 1 .61.76l1.47 6.38a1.14 1.13 0 0 1-.22.95l-4.1 5.11a1.14 1.13 0 0 1-.9.43H5.72a1.14 1.13 0 0 1-.89-.42L.73 11.5a1.14 1.13 0 0 1-.07-.09 1.14 1.13 0 0 1-.16-.86l1.47-6.37a1.14 1.13 0 0 1 .61-.77L8.52.57a1.14 1.13 0 0 1 .44-.1z"
|
||||
color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.81" x="9.97"
|
||||
fontWeight="400" fontSize="10.58" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26" transform="translate(-1 -1.17)">
|
||||
<tspan
|
||||
y="16.81" x="9.97" fontSize="2.82" fontFamily="Arial" textAnchor="middle">ns</tspan>
|
||||
</text>
|
||||
<path fill="none" stroke="#fff" strokeWidth=".4" strokeLinejoin="round" strokeMiterlimit="10" strokeDasharray=".8 .4" strokeDashoffset="3.44" d="M5.18 5.2h7.67v6.69H5.18z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default NamespaceSvg;
|
||||
@@ -1,17 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const NodeSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.04 17.5" {...props}>
|
||||
<path d="M8.96.46a1.14 1.13 0 0 0-.44.11L2.58 3.41a1.14 1.13 0 0 0-.61.77L.5 10.55a1.14 1.13 0 0 0 .16.86 1.14 1.13 0 0 0 .06.1l4.11 5.1a1.14 1.13 0 0 0 .9.43h6.58a1.14 1.13 0 0 0 .9-.43l4.1-5.1a1.14 1.13 0 0 0 .22-.96l-1.47-6.38a1.14 1.13 0 0 0-.61-.76L9.5.57a1.14 1.13 0 0 0-.55-.1z"/>
|
||||
<path d="M8.96 0a1.2 1.19 0 0 0-.46.12l-6.27 3a1.2 1.19 0 0 0-.65.8L.03 10.65a1.2 1.19 0 0 0 .16.91 1.2 1.19 0 0 0 .07.1l4.34 5.4a1.2 1.19 0 0 0 .94.44h6.96a1.2 1.19 0 0 0 .94-.45l4.33-5.4a1.2 1.19 0 0 0 .24-1l-1.55-6.73a1.2 1.19 0 0 0-.65-.8l-6.27-3A1.2 1.19 0 0 0 8.96 0zm0 .46a1.14 1.13 0 0 1 .55.11l5.94 2.84a1.14 1.13 0 0 1 .61.76l1.47 6.38a1.14 1.13 0 0 1-.22.95l-4.1 5.11a1.14 1.13 0 0 1-.9.43H5.72a1.14 1.13 0 0 1-.89-.42L.73 11.5a1.14 1.13 0 0 1-.07-.09 1.14 1.13 0 0 1-.16-.86l1.47-6.37a1.14 1.13 0 0 1 .61-.77L8.52.57a1.14 1.13 0 0 1 .44-.1z"
|
||||
color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.81" x="9.98"
|
||||
fontWeight="400" fontSize="10.58" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26" transform="translate(-1 -1.17)">
|
||||
<tspan
|
||||
y="16.81" x="9.98" fontSize="2.82" fontFamily="Arial" textAnchor="middle">node</tspan>
|
||||
</text>
|
||||
<path d="M9 2.92c-.14 0-4 1.9-4.05 1.99-.12.23-1 4.28-.94 4.37l1.4 1.78 1.35 1.69h4.44l1.42-1.77 1.41-1.76-.5-2.17A39.4 39.4 0 0 0 13 4.84c-.07-.07-3.93-1.92-4-1.92zm.2.95l.9.26-.9.26-.91-.26zm-.91.36l.85.26v1.18l-.85-.47zm1.81 0v.97l-.84.47V4.49zM7.9 5.85l.92.26-.91.26L7 6.11zm2.22 0l.9.26-.9.26-.91-.26zM7 6.2l.85.25v1.19L7 7.18zm1.82 0v.97l-.85.47V6.46zm.39 0l.85.25v1.19l-.85-.47zm1.81 0v.97l-.84.47V6.46zM7.58 7.73c.27 0 .06.28.36.42.33.16.4-.23.6.07.21.3-.18.22-.15.58s.4.23.25.56c-.16.32-.29-.05-.59.15-.3.21 0 .46-.35.5-.36.02-.1-.28-.43-.43-.33-.16-.4.23-.6-.07-.21-.3.18-.22.15-.58s-.4-.23-.24-.55c.15-.33.28.04.58-.16.3-.2 0-.46.35-.5h.07zm2.33.36c.48.01.02.47.46.66.44.2.46-.45.8-.1.33.35-.32.34-.15.8.17.45.65 0 .64.49-.02.48-.47.01-.67.45-.2.44.46.47.1.8-.35.33-.34-.32-.79-.15-.45.18 0 .66-.49.64-.48-.01-.01-.46-.46-.66-.44-.2-.46.45-.8.1-.33-.35.32-.34.15-.8-.17-.44-.65 0-.64-.48.02-.49.47-.02.67-.46.2-.44-.46-.47-.1-.8.35-.33.34.32.79.15.45-.18 0-.65.5-.64zm-2.31.25a.53.53 0 1 0 0 1.07.53.53 0 0 0 0-1.07zm2.26.48a1.06 1.06 0 1 0 0 2.13 1.06 1.06 0 0 0 0-2.13z" fill="#fff"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default NodeSvg;
|
||||
@@ -1,14 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const PersistentVolumeClaimSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.035334 17.500378" {...props}>
|
||||
<path d="M8.95834241.46317128a1.13578782 1.12649307 0 0 0-.43526729.11014617L2.58353674 3.41129071a1.13578782 1.12649307 0 0 0-.61453947.76418673L.50367255 10.5502822a1.13578782 1.12649307 0 0 0 .15420523.8636987 1.13578782 1.12649307 0 0 0 .06456722.08963497l4.11111115 5.11154276a1.13578782 1.12649307 0 0 0 .8880063.42387233l6.5928196-.00152234a1.13578782 1.12649307 0 0 0 .8880061-.42311319l4.10959317-5.11229377a1.13578782 1.12649307 0 0 0 .219532-.95333468l-1.46760216-6.37480883a1.13578782 1.12649307 0 0 0-.61453999-.76418663L9.5090737.57331745a1.13578782 1.12649307 0 0 0-.55073128-.11014617z"/>
|
||||
<path d="M8.95515363.00156985a1.19902036 1.18920801 0 0 0-.45881585.11698298L2.22560173 3.11376929a1.19902036 1.18920801 0 0 0-.64872294.8067259l-1.54660412 6.7295526a1.19902036 1.18920801 0 0 0 .1625598.9123139 1.19902036 1.18920801 0 0 0 .0683629.09419182l4.33975948 5.39640273a1.19902036 1.18920801 0 0 0 .93738165.4474218l6.95971983-.00152233a1.19902036 1.18920801 0 0 0 .93738246-.44666266l4.3382398-5.39716289a1.19902036 1.18920801 0 0 0 .2316869-1.0057476L16.4564882 3.9189759a1.19902036 1.18920801 0 0 0-.64872234-.80596625L9.53702972.11779318a1.19902036 1.18920801 0 0 0-.58187609-.11622333zm.00303452.46185444a1.13578782 1.12649307 0 0 1 .55073108.11014617l5.9402975 2.83645407a1.13578782 1.12649307 0 0 1 .61454376.76418674l1.46760303 6.37480537a1.13578782 1.12649307 0 0 1-.2195329.95333367l-4.10959207 5.1123029a1.13578782 1.12649307 0 0 1-.8880062.4231132l-6.59281909.00152233a1.13578782 1.12649307 0 0 1-.8880063-.4238703L.72229582 11.5038767a1.13578782 1.12649307 0 0 1-.06456722-.08963497 1.13578782 1.12649307 0 0 1-.15420422-.8636987l1.4653237-6.37480547a1.13578782 1.12649307 0 0 1 .61453947-.76418663L8.52292583.57357757a1.13578782 1.12649307 0 0 1 .4352674-.11014618z" color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.811775" x="9.9303675" fontWeight="400" fontSize="10.58333302" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26458332" transform="translate(-.99262638 -1.174181)">
|
||||
<tspan y="16.811775" x="9.9303675" fontSize="2.82222223" fontFamily="Arial" textAnchor="middle">pvc</tspan>
|
||||
</text>
|
||||
<path d="M13.64683362 6.9024603c0 .6211207-2.07255 1.1246391-4.62916 1.1246391-2.5566224 0-4.629173-.5035184-4.629173-1.1246391 0-.621119 2.0725506-1.124637 4.629173-1.124637 2.55661 0 4.62916.503518 4.62916 1.124637V9.944852c0 .62112-2.07255 1.124638-4.62916 1.124638-2.5566224 0-4.629173-.503518-4.629173-1.124638V6.9024603" fill="none" stroke="#fff" strokeWidth=".52916664" strokeLinejoin="round" strokeMiterlimit="10" strokeDasharray="2.11666669 .52916668"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default PersistentVolumeClaimSvg;
|
||||
@@ -1,21 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const PersistentVolumeSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.04 17.5" {...props}>
|
||||
<path d="M8.96.46a1.14 1.13 0 0 0-.44.11L2.58 3.41a1.14 1.13 0 0 0-.61.77L.5 10.55a1.14 1.13 0 0 0 .16.86 1.14 1.13 0 0 0 .06.1l4.11 5.1a1.14 1.13 0 0 0 .9.43h6.58a1.14 1.13 0 0 0 .9-.43l4.1-5.1a1.14 1.13 0 0 0 .22-.96l-1.47-6.38a1.14 1.13 0 0 0-.61-.76L9.5.57a1.14 1.13 0 0 0-.55-.1z"/>
|
||||
<path d="M8.96 0a1.2 1.19 0 0 0-.46.12l-6.27 3a1.2 1.19 0 0 0-.65.8L.03 10.65a1.2 1.19 0 0 0 .16.91 1.2 1.19 0 0 0 .07.1l4.34 5.4a1.2 1.19 0 0 0 .94.44h6.96a1.2 1.19 0 0 0 .94-.45l4.33-5.4a1.2 1.19 0 0 0 .24-1l-1.55-6.73a1.2 1.19 0 0 0-.65-.8l-6.27-3A1.2 1.19 0 0 0 8.96 0zm0 .46a1.14 1.13 0 0 1 .55.11l5.94 2.84a1.14 1.13 0 0 1 .61.76l1.47 6.38a1.14 1.13 0 0 1-.22.95l-4.1 5.11a1.14 1.13 0 0 1-.9.43H5.72a1.14 1.13 0 0 1-.89-.42L.73 11.5a1.14 1.13 0 0 1-.07-.09 1.14 1.13 0 0 1-.16-.86l1.47-6.37a1.14 1.13 0 0 1 .61-.77L8.52.57a1.14 1.13 0 0 1 .44-.1z"
|
||||
color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.81" x="9.93"
|
||||
fontWeight="400" fontSize="10.58" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26" transform="translate(-1 -1.17)">
|
||||
<tspan
|
||||
y="16.81" x="9.93" fontSize="2.82" fontFamily="Arial" textAnchor="middle">pv</tspan>
|
||||
</text>
|
||||
<g>
|
||||
<path d="M4.39 6.74c0 .62 2.07 1.12 4.63 1.12 2.55 0 4.63-.5 4.63-1.12v3.04c0 .62-2.08 1.12-4.63 1.12-2.56 0-4.63-.5-4.63-1.12z" fill="#fff" fillRule="evenodd"/>
|
||||
<path d="M4.39 6.74c0-.62 2.07-1.13 4.63-1.13 2.55 0 4.63.5 4.63 1.13 0 .62-2.08 1.12-4.63 1.12-2.56 0-4.63-.5-4.63-1.12z" fill="#fff" fillRule="evenodd"/>
|
||||
<path d="M13.65 6.74c0 .62-2.08 1.12-4.63 1.12-2.56 0-4.63-.5-4.63-1.12 0-.62 2.07-1.13 4.63-1.13 2.55 0 4.63.5 4.63 1.13v3.04c0 .62-2.08 1.12-4.63 1.12-2.56 0-4.63-.5-4.63-1.12V6.74" fill="none" stroke="#326ce5" strokeWidth=".26" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default PersistentVolumeSvg;
|
||||
@@ -1,30 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const PodSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.04 17.5" {...props}>
|
||||
<path
|
||||
d="M8.96.46a1.14 1.13 0 0 0-.44.11L2.58 3.41a1.14 1.13 0 0 0-.61.77L.5 10.55a1.14 1.13 0 0 0 .16.86 1.14 1.13 0 0 0
|
||||
.06.1l4.11 5.1a1.14 1.13 0 0 0 .9.43h6.58a1.14 1.13 0 0 0 .9-.43l4.1-5.1a1.14 1.13 0 0 0 .22-.96l-1.47-6.38a1.14 1.13
|
||||
0 0 0-.61-.76L9.5.57a1.14 1.13 0 0 0-.55-.1z"
|
||||
/>
|
||||
<path
|
||||
color="#000"
|
||||
fontWeight="400"
|
||||
fontFamily="Sans"
|
||||
fill="#fff"
|
||||
d="M8.96 0a1.2 1.19 0 0 0-.46.12l-6.27 3a1.2 1.19 0 0 0-.65.8L.03 10.65a1.2 1.19 0 0 0 .16.91 1.2 1.19 0 0 0 .07.1l4.34
|
||||
5.4a1.2 1.19 0 0 0 .94.44h6.96a1.2 1.19 0 0 0 .94-.45l4.33-5.4a1.2 1.19 0 0 0 .24-1l-1.55-6.73a1.2 1.19 0 0 0-.65-.8l-6.27-3A1.2
|
||||
1.19 0 0 0 8.96 0zm0 .46a1.14 1.13 0 0 1 .55.11l5.94 2.84a1.14 1.13 0 0 1 .61.76l1.47 6.38a1.14 1.13 0 0 1-.22.95l-4.1 5.11a1.14
|
||||
1.13 0 0 1-.9.43H5.72a1.14 1.13 0 0 1-.89-.42L.73 11.5a1.14 1.13 0 0 1-.07-.09 1.14 1.13 0 0 1-.16-.86l1.47-6.37a1.14 1.13 0 0 1
|
||||
.61-.77L8.52.57a1.14 1.13 0 0 1 .44-.1z"
|
||||
/>
|
||||
<text y="16.81" x="10.02" fontWeight="400" fontSize="10.58" fontFamily="Sans" fill="#fff" strokeWidth=".26" transform="translate(-1 -1.17)">
|
||||
<tspan y="16.81" x="10.02" fontSize="2.82" fontFamily="Arial" textAnchor="middle">pod</tspan>
|
||||
</text>
|
||||
<g fill="#fff">
|
||||
<path d="M5.4 5.86l3.62-1.05 3.62 1.05-3.62 1.05zM5.4 6.26v3.86l3.37 1.87.02-4.72zM12.64 6.26v3.86l-3.38 1.87-.01-4.72z"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default PodSvg;
|
||||
@@ -1,19 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const ReplicaSetSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.035334 17.500378" {...props}>
|
||||
<path d="M8.95834241.46317128a1.13578782 1.12649307 0 0 0-.43526729.11014617L2.58353674 3.41129071a1.13578782 1.12649307 0 0 0-.61453947.76418673L.50367255 10.5502822a1.13578782 1.12649307 0 0 0 .15420523.8636987 1.13578782 1.12649307 0 0 0 .06456722.08963497l4.11111115 5.11154276a1.13578782 1.12649307 0 0 0 .8880063.42387233l6.5928196-.00152234a1.13578782 1.12649307 0 0 0 .8880061-.42311319l4.10959317-5.11229377a1.13578782 1.12649307 0 0 0 .219532-.95333468l-1.46760216-6.37480883a1.13578782 1.12649307 0 0 0-.61453999-.76418663L9.5090737.57331745a1.13578782 1.12649307 0 0 0-.55073128-.11014617z"/>
|
||||
<path d="M8.95515363.00156985a1.19902036 1.18920801 0 0 0-.45881585.11698298L2.22560173 3.11376929a1.19902036 1.18920801 0 0 0-.64872294.8067259l-1.54660412 6.7295526a1.19902036 1.18920801 0 0 0 .1625598.9123139 1.19902036 1.18920801 0 0 0 .0683629.09419182l4.33975948 5.39640273a1.19902036 1.18920801 0 0 0 .93738165.4474218l6.95971983-.00152233a1.19902036 1.18920801 0 0 0 .93738246-.44666266l4.3382398-5.39716289a1.19902036 1.18920801 0 0 0 .2316869-1.0057476L16.4564882 3.9189759a1.19902036 1.18920801 0 0 0-.64872234-.80596625L9.53702972.11779318a1.19902036 1.18920801 0 0 0-.58187609-.11622333zm.00303452.46185444a1.13578782 1.12649307 0 0 1 .55073108.11014617l5.9402975 2.83645407a1.13578782 1.12649307 0 0 1 .61454376.76418674l1.46760303 6.37480537a1.13578782 1.12649307 0 0 1-.2195329.95333367l-4.10959207 5.1123029a1.13578782 1.12649307 0 0 1-.8880062.4231132l-6.59281909.00152233a1.13578782 1.12649307 0 0 1-.8880063-.4238703L.72229582 11.5038767a1.13578782 1.12649307 0 0 1-.06456722-.08963497 1.13578782 1.12649307 0 0 1-.15420422-.8636987l1.4653237-6.37480547a1.13578782 1.12649307 0 0 1 .61453947-.76418663L8.52292583.57357757a1.13578782 1.12649307 0 0 1 .4352674-.11014618z" color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.811775" x="9.9730864" fontWeight="400" fontSize="10.58333302" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26458332" transform="translate(-.99262638 -1.174181)">
|
||||
<tspan y="16.811775" x="9.9730864" fontSize="2.82222223" fontFamily="Arial" textAnchor="middle">rs</tspan>
|
||||
</text>
|
||||
<g>
|
||||
<path d="M7.29396369 4.3782274h6.52499V8.961562h-6.52499z" fillRule="evenodd" stroke="#fff" strokeWidth=".52899998" strokeLinecap="square" strokeLinejoin="round" strokeMiterlimit="10" strokeDasharray="1.58700001 1.58700001" strokeDashoffset="3.66597009"/>
|
||||
<path d="M5.75521349 5.7895384h6.5249902v4.5833346h-6.5249902z" fillRule="evenodd" stroke="#fff" strokeWidth=".52914584" strokeLinecap="square" strokeLinejoin="round" strokeMiterlimit="10" strokeDasharray="1.58743756 1.58743756" strokeDashoffset="3.87863898"/>
|
||||
<path d="M4.21646349 7.2008504h6.5250002v4.5833346h-6.5250002z" fill="#fff" fillRule="evenodd"/>
|
||||
<path d="M4.21646349 7.2008504h6.5250002v4.5833346h-6.5250002z" fill="none" stroke="#fff" strokeWidth=".52916664" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default ReplicaSetSvg;
|
||||
@@ -1,50 +0,0 @@
|
||||
import React from 'react';
|
||||
import ClusterRoleBindingSvg from './clusterRoleBindingSvg';
|
||||
import ClusterRoleSvg from './clusterRoleSvg';
|
||||
import ConfigMapSvg from './configMapSvg';
|
||||
import DaemonSetSvg from './daemonSetSvg';
|
||||
import DeploymentSvg from './deploymentSvg';
|
||||
import IngressSvg from './ingressSvg';
|
||||
import LogoSvg from './logoSvg';
|
||||
import NamespaceSvg from './namespaceSvg';
|
||||
import NodeSvg from './nodeSvg';
|
||||
import PersistentVolumeClaimSvg from './persistentVolumeClaimSvg';
|
||||
import PersistentVolumesSvg from './persistentVolumeSvg';
|
||||
import PodSvg from './podSvg';
|
||||
import ReplicaSetSvg from './replicaSetSvg';
|
||||
import RoleBindingSvg from './roleBindingSvg';
|
||||
import RoleSvg from './roleSvg';
|
||||
import SecretSvg from './secretSvg';
|
||||
import ServiceAccountSvg from './serviceAccountSvg';
|
||||
import ServiceSvg from './serviceSvg';
|
||||
import StatefulSetSvg from './statefulSetSvg';
|
||||
import StorageClassesSvg from './storageClassSvg';
|
||||
import UserSvg from './userSvg';
|
||||
|
||||
const ResourceSvg = (props) => {
|
||||
switch (props.resource) {
|
||||
case 'ClusterRole': return <ClusterRoleSvg {...props} />;
|
||||
case 'ClusterRoleBinding': return <ClusterRoleBindingSvg {...props} />;
|
||||
case 'ConfigMap': return <ConfigMapSvg {...props} />;
|
||||
case 'DaemonSet': return <DaemonSetSvg {...props} />;
|
||||
case 'Deployment': return <DeploymentSvg {...props} />;
|
||||
case 'Ingress': return <IngressSvg {...props} />;
|
||||
case 'Namespace': return <NamespaceSvg {...props} />;
|
||||
case 'Node': return <NodeSvg {...props} />;
|
||||
case 'PersistentVolume': return <PersistentVolumesSvg {...props} />;
|
||||
case 'PersistentVolumeClaim': return <PersistentVolumeClaimSvg {...props} />;
|
||||
case 'Pod': return <PodSvg {...props} />;
|
||||
case 'ReplicaSet': return <ReplicaSetSvg {...props} />;
|
||||
case 'Role': return <RoleSvg {...props} />;
|
||||
case 'RoleBinding': return <RoleBindingSvg {...props} />;
|
||||
case 'Secret': return <SecretSvg {...props} />;
|
||||
case 'Service': return <ServiceSvg {...props} />;
|
||||
case 'ServiceAccount': return <ServiceAccountSvg {...props} />;
|
||||
case 'StatefulSet': return <StatefulSetSvg {...props} />;
|
||||
case 'StorageClass': return <StorageClassesSvg {...props} />;
|
||||
case 'User': return <UserSvg {...props} />;
|
||||
default: return <LogoSvg {...props} />;
|
||||
}
|
||||
};
|
||||
|
||||
export default ResourceSvg;
|
||||
@@ -1,15 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const RoleBindingSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.03533 17.50038" {...props}>
|
||||
<path d="M8.95834.46317a1.13579 1.1265 0 0 0-.43526.11015L2.58354 3.41129a1.13579 1.1265 0 0 0-.61454.76419l-1.46533 6.3748a1.13579 1.1265 0 0 0 .1542.8637 1.13579 1.1265 0 0 0 .06458.08964l4.1111 5.11154a1.13579 1.1265 0 0 0 .88801.42387l6.59282-.00152a1.13579 1.1265 0 0 0 .888-.42311l4.1096-5.1123a1.13579 1.1265 0 0 0 .21953-.95333l-1.4676-6.37481a1.13579 1.1265 0 0 0-.61454-.76419L9.50907.57332a1.13579 1.1265 0 0 0-.55073-.11015z" />
|
||||
<path d="M8.95515.00157a1.19902 1.1892 0 0 0-.45881.11698L2.2256 3.11377a1.19902 1.1892 0 0 0-.64872.80673l-1.5466 6.72955a1.19902 1.1892 0 0 0 .16255.91231 1.19902 1.1892 0 0 0 .06837.0942l4.33976 5.3964a1.19902 1.1892 0 0 0 .93738.44742l6.95972-.00152a1.19902 1.1892 0 0 0 .93738-.44667l4.33824-5.39716a1.19902 1.1892 0 0 0 .23169-1.00575l-1.54888-6.7303a1.19902 1.1892 0 0 0-.64872-.80597L9.53703.11779a1.19902 1.1892 0 0 0-.58188-.11622zm.00304.46185a1.13579 1.1265 0 0 1 .55073.11015l5.9403 2.83645a1.13579 1.1265 0 0 1 .61454.7642l1.4676 6.3748a1.13579 1.1265 0 0 1-.21953.95333l-4.1096 5.1123a1.13579 1.1265 0 0 1-.888.42312l-6.59282.00152a1.13579 1.1265 0 0 1-.888-.42387L.7223 11.50388a1.13579 1.1265 0 0 1-.06457-.08964 1.13579 1.1265 0 0 1-.1542-.8637l1.46532-6.3748a1.13579 1.1265 0 0 1 .61454-.76419L8.52293.57358a1.13579 1.1265 0 0 1 .43526-.11015z" color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.91761" x="9.97446" fontWeight="400" fontSize="10.58333" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26458" transform="translate(-.99263 -1.17418)">
|
||||
<tspan y="16.91761" x="9.97446" fontSize="2.82222" fontFamily="Arial" textAnchor="middle">rb</tspan>
|
||||
</text>
|
||||
<path fill="none" stroke="#fff" strokeWidth=".4" strokeLinejoin="round" strokeMiterlimit="10" strokeDasharray=".8 .4" strokeDashoffset="4" d="M4.05273 3.75263h9.92986v8.65717H4.05273z"/>
|
||||
<path d="M5.8895 8.08121c0-.66039.53682-1.1972 1.1972-1.1972h1.54477v-.73376H7.0867c-1.0659 0-1.93095.86507-1.93095 1.93096s.86506 1.93096 1.93095 1.93096h1.54477V9.2784H7.0867c-.66038 0-1.1972-.5368-1.1972-1.19719zm1.5834.3862h3.08952v-.77239H7.4729zm3.47572-2.31716H9.40385v.73377h1.54477c.66038 0 1.19718.5368 1.19718 1.1972 0 .66038-.5368 1.19718-1.19718 1.19718H9.40385v.73377h1.54477c1.0659 0 1.93095-.86507 1.93095-1.93096s-.86506-1.93096-1.93095-1.93096zM7.50288 3.752v-.19403H8.27899v.38805H7.50288V3.752zM8.70232 3.752v-.19403H9.47843v.38805H8.70232V3.752zM9.90177 3.752v-.19403H10.67788v.38805H9.90177V3.752zM11.10121 3.752v-.19403H11.87732v.38805H11.10121V3.752zM12.30065 3.752v-.19403h.77612v.38805h-.77612V3.752z" fill="#fff"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default RoleBindingSvg;
|
||||
@@ -1,22 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const RoleSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.04 17.5" {...props}>
|
||||
<path d="M8.96.46a1.14 1.13 0 0 0-.44.11L2.58 3.41a1.14 1.13 0 0 0-.61.77L.5 10.55a1.14 1.13 0 0 0 .16.86 1.14 1.13 0 0 0 .06.1l4.11 5.1a1.14 1.13 0 0 0 .9.43h6.58a1.14 1.13 0 0 0 .9-.43l4.1-5.1a1.14 1.13 0 0 0 .22-.96l-1.47-6.38a1.14 1.13 0 0 0-.61-.76L9.5.57a1.14 1.13 0 0 0-.55-.1z"/>
|
||||
<path d="M8.96 0a1.2 1.19 0 0 0-.46.12l-6.27 3a1.2 1.19 0 0 0-.65.8L.03 10.65a1.2 1.19 0 0 0 .16.91 1.2 1.19 0 0 0 .07.1l4.34 5.4a1.2 1.19 0 0 0 .94.44h6.96a1.2 1.19 0 0 0 .94-.45l4.33-5.4a1.2 1.19 0 0 0 .24-1l-1.55-6.73a1.2 1.19 0 0 0-.65-.8l-6.27-3A1.2 1.19 0 0 0 8.96 0zm0 .46a1.14 1.13 0 0 1 .55.11l5.94 2.84a1.14 1.13 0 0 1 .61.76l1.47 6.38a1.14 1.13 0 0 1-.22.95l-4.1 5.11a1.14 1.13 0 0 1-.9.43H5.72a1.14 1.13 0 0 1-.89-.42L.73 11.5a1.14 1.13 0 0 1-.07-.09 1.14 1.13 0 0 1-.16-.86l1.47-6.37a1.14 1.13 0 0 1 .61-.77L8.52.57a1.14 1.13 0 0 1 .44-.1z"
|
||||
color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.81" x="9.98"
|
||||
fontWeight="400" fontSize="10.58" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26" transform="translate(-1 -1.17)">
|
||||
<tspan
|
||||
y="16.81" x="9.98" fontSize="2.82" fontFamily="Arial" textAnchor="middle">role</tspan>
|
||||
</text>
|
||||
<g transform="translate(-.86 -1.74)">
|
||||
<ellipse ry=".5" rx=".51" cy="9.95" cx="9.93" fill="#fff"/>
|
||||
<path d="M9.99 5.88l-3.1 1.37V9.3c0 1.9 1.32 3.68 3.1 4.11a4.27 4.27 0 0 0 3.1-4.1V7.24zm1.64 5.51H8.34V8.63h.48v-.3a1.18 1.18 0 1 1 2.38 0v.3h.43z" fill="#fff"/>
|
||||
<path d="M9.99 7.59c-.4 0-.72.32-.72.7v.3h1.43v-.3c0-.39-.32-.7-.71-.7z" fill="#fff"/>
|
||||
<path fill="none" stroke="#fff" strokeWidth=".4" strokeLinejoin="round" strokeMiterlimit="10" strokeDasharray=".8 .4" strokeDashoffset="4" d="M4.92 5.46h9.93v8.66H4.92z"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default RoleSvg;
|
||||
@@ -1,9 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const ScaleSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300" {...props}>
|
||||
<path d="M149.996 0C67.157 0 .001 67.161.001 149.997S67.157 300 149.996 300s150.003-67.163 150.003-150.003S232.838 0 149.996 0zm84.756 201.789l-81.296 40.291c-1.089.539-2.272.812-3.455.812-1.183 0-2.368-.27-3.455-.809L65.25 201.792c-3.851-1.909-5.426-6.577-3.517-10.429 1.906-3.846 6.58-5.426 10.426-3.517l77.844 38.58 77.841-38.577c3.844-1.911 8.517-.335 10.426 3.514 1.908 3.848.333 8.517-3.518 10.426zm0-29.609l-81.296 40.291c-1.089.539-2.272.812-3.455.812-1.183 0-2.368-.27-3.455-.809L65.25 172.183c-3.851-1.909-5.426-6.577-3.517-10.429 1.906-3.849 6.58-5.421 10.426-3.517l77.844 38.58 77.841-38.577c3.844-1.917 8.517-.335 10.426 3.514 1.908 3.849.333 8.517-3.518 10.426zm0-29.608l-81.296 40.291c-1.089.539-2.272.812-3.455.812-1.183 0-2.368-.27-3.455-.809L65.25 142.572c-3.851-1.909-5.426-6.577-3.517-10.426 1.906-3.849 6.58-5.426 10.426-3.517l77.844 38.58 77.841-38.58c3.844-1.906 8.517-.335 10.426 3.517 1.908 3.849.333 8.517-3.518 10.426zm0-31.066l-81.296 40.289c-1.089.539-2.272.809-3.455.809-1.183 0-2.368-.27-3.455-.809L65.25 111.506c-2.648-1.312-4.326-4.015-4.326-6.972 0-2.957 1.675-5.659 4.326-6.972l81.299-40.294c2.176-1.079 4.733-1.079 6.909 0l81.296 40.294c2.648 1.312 4.326 4.015 4.326 6.972 0 2.957-1.677 5.657-4.328 6.972z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default ScaleSvg;
|
||||
@@ -1,10 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const SearchSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300" {...props}>
|
||||
<path d="M139.415 96.195c-22.673 0-41.056 18.389-41.056 41.062 0 22.676 18.383 41.059 41.056 41.059 7.446 0 14.41-2.01 20.43-5.478 2.625-1.511 5.06-3.308 7.275-5.342.08-.073.163-.145.241-.218.705-.659 1.393-1.343 2.052-2.049.036-.039.07-.078.106-.117 2.754-2.977 5.073-6.367 6.86-10.068 2.596-5.387 4.095-11.404 4.095-17.787 0-22.673-18.381-41.062-41.059-41.062zm19.841 50.778h-39.684c-4.298 0-7.781-3.483-7.781-7.781s3.483-7.781 7.781-7.781h39.684c4.298 0 7.781 3.483 7.781 7.781s-3.483 7.781-7.781 7.781z"/>
|
||||
<path d="M149.995 0C67.156 0 0 67.158 0 149.995s67.156 150 149.995 150 150-67.163 150-150S232.834 0 149.995 0zm75.442 221.254c-2.371 2.376-5.48 3.561-8.59 3.561-3.11 0-6.217-1.185-8.593-3.561l-34.145-34.147c-9.837 6.863-21.791 10.896-34.697 10.896-33.548 0-60.742-27.196-60.742-60.744s27.194-60.742 60.742-60.742 60.744 27.194 60.744 60.742c0 11.855-3.408 22.909-9.28 32.259l34.56 34.56c4.747 4.739 4.747 12.434.001 17.176z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default SearchSvg;
|
||||
@@ -1,22 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const SecretSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.035334 17.500378" {...props}>
|
||||
<path d="M8.95834241.46317128a1.13578782 1.12649307 0 0 0-.43526729.11014617L2.58353674 3.41129071a1.13578782 1.12649307 0 0 0-.61453947.76418673L.50367255 10.5502822a1.13578782 1.12649307 0 0 0 .15420523.8636987 1.13578782 1.12649307 0 0 0 .06456722.08963497l4.11111115 5.11154276a1.13578782 1.12649307 0 0 0 .8880063.42387233l6.5928196-.00152234a1.13578782 1.12649307 0 0 0 .8880061-.42311319l4.10959317-5.11229377a1.13578782 1.12649307 0 0 0 .219532-.95333468l-1.46760216-6.37480883a1.13578782 1.12649307 0 0 0-.61453999-.76418663L9.5090737.57331745a1.13578782 1.12649307 0 0 0-.55073128-.11014617z"/>
|
||||
<path d="M8.95515363.00156985a1.19902036 1.18920801 0 0 0-.45881585.11698298L2.22560173 3.11376929a1.19902036 1.18920801 0 0 0-.64872294.8067259l-1.54660412 6.7295526a1.19902036 1.18920801 0 0 0 .1625598.9123139 1.19902036 1.18920801 0 0 0 .0683629.09419182l4.33975948 5.39640273a1.19902036 1.18920801 0 0 0 .93738165.4474218l6.95971983-.00152233a1.19902036 1.18920801 0 0 0 .93738246-.44666266l4.3382398-5.39716289a1.19902036 1.18920801 0 0 0 .2316869-1.0057476L16.4564882 3.9189759a1.19902036 1.18920801 0 0 0-.64872234-.80596625L9.53702972.11779318a1.19902036 1.18920801 0 0 0-.58187609-.11622333zm.00303452.46185444a1.13578782 1.12649307 0 0 1 .55073108.11014617l5.9402975 2.83645407a1.13578782 1.12649307 0 0 1 .61454376.76418674l1.46760303 6.37480537a1.13578782 1.12649307 0 0 1-.2195329.95333367l-4.10959207 5.1123029a1.13578782 1.12649307 0 0 1-.8880062.4231132l-6.59281909.00152233a1.13578782 1.12649307 0 0 1-.8880063-.4238703L.72229582 11.5038767a1.13578782 1.12649307 0 0 1-.06456722-.08963497 1.13578782 1.12649307 0 0 1-.15420422-.8636987l1.4653237-6.37480547a1.13578782 1.12649307 0 0 1 .61453947-.76418663L8.52292583.57357757a1.13578782 1.12649307 0 0 1 .4352674-.11014618z" color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.882332" x="9.976531" fontWeight="400" fontSize="10.58333302" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26458332" transform="translate(-.99262638 -1.174181)">
|
||||
<tspan y="16.882332" x="9.976531" fontSize="2.82222223" fontFamily="Arial" textAnchor="middle">secret</tspan>
|
||||
</text>
|
||||
<g transform="translate(-.93551717 -1.174181)">
|
||||
<path d="M10.414299 8.0912253h3.708331" fill="none" stroke="#fff" strokeWidth=".79374999" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
<path d="M8.2976282 5.9745582H14.12263" fill="none" stroke="#fff" strokeWidth=".79400003" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
<path d="M5.7837382 5.9745582h1.45834" fill="none" stroke="#fff" strokeWidth=".79374999" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
<path d="M7.7183782 8.4321603c0-1.1667021 1.0110897-2.1125011 2.2583305-2.1125011 1.2472403 0 2.2583303.945799 2.2583303 2.1125011h-1.05624c0-.583351-.5382-1.0562501-1.2020903-1.0562501-.6638904 0-1.2020808.4728991-1.2020808 1.0562501z" fill="#fff" fillRule="evenodd" stroke="#326ce5" strokeWidth=".26458332" strokeLinecap="square" strokeMiterlimit="10"/>
|
||||
<path d="M10.414299 10.207893h3.708331M8.2976282 12.32456H14.12263M5.7837382 12.32456h1.45834" fill="none" stroke="#fff" strokeWidth=".79374999" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
<path d="M7.1622182 8.3691063h5.6166608V12.02744H7.1622182z" fill="#fff" fillRule="evenodd" stroke="#326ce5" strokeWidth=".26458332" strokeLinecap="square" strokeMiterlimit="10"/>
|
||||
<circle r=".55515254" cy="10.198272" cx="9.9705448"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default SecretSvg;
|
||||
@@ -1,14 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const ServiceAccountSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.03533 17.50038" {...props}>
|
||||
<path d="M8.95834.46317a1.13579 1.1265 0 0 0-.43526.11015L2.58354 3.41129a1.13579 1.1265 0 0 0-.61454.76419l-1.46533 6.3748a1.13579 1.1265 0 0 0 .1542.8637 1.13579 1.1265 0 0 0 .06458.08964l4.1111 5.11154a1.13579 1.1265 0 0 0 .88801.42387l6.59282-.00152a1.13579 1.1265 0 0 0 .888-.42311l4.1096-5.1123a1.13579 1.1265 0 0 0 .21953-.95333l-1.4676-6.37481a1.13579 1.1265 0 0 0-.61454-.76419L9.50907.57332a1.13579 1.1265 0 0 0-.55073-.11015z"/>
|
||||
<path d="M8.95515.00157a1.19902 1.1892 0 0 0-.45881.11698L2.2256 3.11377a1.19902 1.1892 0 0 0-.64872.80673l-1.5466 6.72955a1.19902 1.1892 0 0 0 .16255.91231 1.19902 1.1892 0 0 0 .06837.0942l4.33976 5.3964a1.19902 1.1892 0 0 0 .93738.44742l6.95972-.00152a1.19902 1.1892 0 0 0 .93738-.44667l4.33824-5.39716a1.19902 1.1892 0 0 0 .23169-1.00575l-1.54888-6.7303a1.19902 1.1892 0 0 0-.64872-.80597L9.53703.11779a1.19902 1.1892 0 0 0-.58188-.11622zm.00304.46185a1.13579 1.1265 0 0 1 .55073.11015l5.9403 2.83645a1.13579 1.1265 0 0 1 .61454.7642l1.4676 6.3748a1.13579 1.1265 0 0 1-.21953.95333l-4.1096 5.1123a1.13579 1.1265 0 0 1-.888.42312l-6.59282.00152a1.13579 1.1265 0 0 1-.888-.42387L.7223 11.50388a1.13579 1.1265 0 0 1-.06457-.08964 1.13579 1.1265 0 0 1-.1542-.8637l1.46532-6.3748a1.13579 1.1265 0 0 1 .61454-.76419L8.52293.57358a1.13579 1.1265 0 0 1 .43526-.11015z" color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.81178" x="10.02476" fontWeight="400" fontSize="10.58333" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26458" transform="translate(-.99263 -1.17418)">
|
||||
<tspan y="16.81178" x="10.02476" fontSize="2.82222" fontFamily="Arial" textAnchor="middle">sa</tspan>
|
||||
</text>
|
||||
<path d="M9.01847 3.21212l-4.0416 1.7961v2.69493c0 2.49125 1.72496 4.82244 4.0416 5.38826 2.31665-.56582 4.03999-2.89701 4.03999-5.38826V5.00821zm0 1.9028c.52218 0 .99424.31524 1.19309.79861.20046.48338.09053 1.0395-.27968 1.40971-.37021.3686-.92634.48014-1.40971.27968-.48176-.20046-.797-.6709-.797-1.1947 0-.71455.57875-1.2933 1.2933-1.2933zm2.42335 5.34784c0 .03232-.0097.06305-.0275.09053-.02908.04363-.05817.08892-.09053.13094-.57067.7857-1.37899 1.36606-2.30533 1.65383-.92795-.28777-1.73627-.86814-2.30694-1.65383-.03232-.04204-.06143-.0873-.09053-.13094-.01778-.0275-.0275-.05817-.0275-.09053v-.7178c0-.99099 1.61664-1.49053 2.42496-1.49053.80832 0 2.42335.49954 2.42335 1.49054z" fill="#fff"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default ServiceAccountSvg;
|
||||
@@ -1,19 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const ServiceSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.035334 17.500378" {...props}>
|
||||
<path d="M8.95834241.46317128a1.13578782 1.12649307 0 0 0-.43526729.11014617L2.58353674 3.41129071a1.13578782 1.12649307 0 0 0-.61453947.76418673L.50367255 10.5502822a1.13578782 1.12649307 0 0 0 .15420523.8636987 1.13578782 1.12649307 0 0 0 .06456722.08963497l4.11111115 5.11154276a1.13578782 1.12649307 0 0 0 .8880063.42387233l6.5928196-.00152234a1.13578782 1.12649307 0 0 0 .8880061-.42311319l4.10959317-5.11229377a1.13578782 1.12649307 0 0 0 .219532-.95333468l-1.46760216-6.37480883a1.13578782 1.12649307 0 0 0-.61453999-.76418663L9.5090737.57331745a1.13578782 1.12649307 0 0 0-.55073128-.11014617z"/>
|
||||
<path d="M8.95515363.00156985a1.19902036 1.18920801 0 0 0-.45881585.11698298L2.22560173 3.11376929a1.19902036 1.18920801 0 0 0-.64872294.8067259l-1.54660412 6.7295526a1.19902036 1.18920801 0 0 0 .1625598.9123139 1.19902036 1.18920801 0 0 0 .0683629.09419182l4.33975948 5.39640273a1.19902036 1.18920801 0 0 0 .93738165.4474218l6.95971983-.00152233a1.19902036 1.18920801 0 0 0 .93738246-.44666266l4.3382398-5.39716289a1.19902036 1.18920801 0 0 0 .2316869-1.0057476L16.4564882 3.9189759a1.19902036 1.18920801 0 0 0-.64872234-.80596625L9.53702972.11779318a1.19902036 1.18920801 0 0 0-.58187609-.11622333zm.00303452.46185444a1.13578782 1.12649307 0 0 1 .55073108.11014617l5.9402975 2.83645407a1.13578782 1.12649307 0 0 1 .61454376.76418674l1.46760303 6.37480537a1.13578782 1.12649307 0 0 1-.2195329.95333367l-4.10959207 5.1123029a1.13578782 1.12649307 0 0 1-.8880062.4231132l-6.59281909.00152233a1.13578782 1.12649307 0 0 1-.8880063-.4238703L.72229582 11.5038767a1.13578782 1.12649307 0 0 1-.06456722-.08963497 1.13578782 1.12649307 0 0 1-.15420422-.8636987l1.4653237-6.37480547a1.13578782 1.12649307 0 0 1 .61453947-.76418663L8.52292583.57357757a1.13578782 1.12649307 0 0 1 .4352674-.11014618z" color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.811775" x="9.9799767" fontWeight="400" fontSize="10.58333302" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26458332" transform="translate(-.99262638 -1.174181)">
|
||||
<tspan y="16.811775" x="9.9799767" fontSize="2.82222223" fontFamily="Arial" textAnchor="middle">svc</tspan>
|
||||
</text>
|
||||
<g>
|
||||
<path d="M3.59475123 10.086645h2.9083311v2.041667h-2.9083311zM7.56350233 10.086645h2.9083303v2.041667h-2.9083303zM11.53225263 10.086645h2.90833v2.041667h-2.90833zM6.71350233 4.0341111h4.6083303v2.041667h-4.6083303z" fill="#fff" fillRule="evenodd"/>
|
||||
<path d="M9.01766213 6.0757791v2.005449h-3.966671v2.0028859" fill="none" stroke="#fff" strokeWidth=".52916664" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
<path d="M9.01766213 6.0757791v2.005449h3.9666705v2.0028859" fill="none" stroke="#fff" strokeWidth=".52899998" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
<path d="M9.00931543 6.0770441v2.005449h.0167v2.0028859" fill="none" stroke="#fff" strokeWidth=".52916664" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default ServiceSvg;
|
||||
@@ -1,25 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const StatefulSetSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.035334 17.500378" {...props}>
|
||||
<path d="M8.99362041.46317128a1.13578782 1.12649307 0 0 0-.43526729.11014617L2.61881474 3.41129071a1.13578782 1.12649307 0 0 0-.61453947.76418673L.53895055 10.5502822a1.13578782 1.12649307 0 0 0 .15420523.8636987 1.13578782 1.12649307 0 0 0 .06456722.08963497l4.11111115 5.11154276a1.13578782 1.12649307 0 0 0 .8880063.42387233l6.5928196-.00152234a1.13578782 1.12649307 0 0 0 .8880061-.42311319l4.10959317-5.11229377a1.13578782 1.12649307 0 0 0 .219532-.95333468l-1.46760216-6.37480883a1.13578782 1.12649307 0 0 0-.61453999-.76418663L9.5443517.57331745a1.13578782 1.12649307 0 0 0-.55073128-.11014617z" />
|
||||
<path d="M8.99043163.00156985a1.19902036 1.18920801 0 0 0-.45881585.11698298L2.26087973 3.11376929a1.19902036 1.18920801 0 0 0-.64872294.8067259l-1.54660412 6.7295526a1.19902036 1.18920801 0 0 0 .1625598.9123139 1.19902036 1.18920801 0 0 0 .0683629.09419182l4.33975948 5.39640273a1.19902036 1.18920801 0 0 0 .93738165.4474218l6.95971983-.00152233a1.19902036 1.18920801 0 0 0 .93738246-.44666266l4.3382398-5.39716289a1.19902036 1.18920801 0 0 0 .2316869-1.0057476L16.4917662 3.9189759a1.19902036 1.18920801 0 0 0-.64872234-.80596625L9.57230772.11779318a1.19902036 1.18920801 0 0 0-.58187609-.11622333zm.00303452.46185444a1.13578782 1.12649307 0 0 1 .55073108.11014617l5.9402975 2.83645407a1.13578782 1.12649307 0 0 1 .61454376.76418674l1.46760303 6.37480537a1.13578782 1.12649307 0 0 1-.2195329.95333367l-4.10959207 5.1123029a1.13578782 1.12649307 0 0 1-.8880062.4231132l-6.59281909.00152233a1.13578782 1.12649307 0 0 1-.8880063-.4238703L.75757382 11.5038767a1.13578782 1.12649307 0 0 1-.06456722-.08963497 1.13578782 1.12649307 0 0 1-.15420422-.8636987l1.4653237-6.37480547a1.13578782 1.12649307 0 0 1 .61453947-.76418663L8.55820383.57357757a1.13578782 1.12649307 0 0 1 .4352674-.11014618z"
|
||||
color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.811775" x="10.056596"
|
||||
fontWeight="400" fontSize="10.58333302" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26458332" transform="translate(-.99262638 -1.174181)">
|
||||
<tspan
|
||||
y="16.811775" x="10.056596" fontSize="2.82222223" fontFamily="Arial" textAnchor="middle">sts</tspan>
|
||||
</text>
|
||||
<g>
|
||||
<path d="M7.32918454 3.9548946h6.5250067v4.583335h-6.5250067z" fill="none" stroke="#fff" strokeWidth=".52914584" strokeLinecap="square" strokeLinejoin="round" strokeMiterlimit="10" strokeDasharray="1.58743761 1.58743761" strokeDashoffset="3.66698074"/>
|
||||
<path d="M5.79043614 5.3662066h6.5250071V9.949542h-6.5250071z" fillRule="evenodd" stroke="#fff" strokeWidth=".52914584" strokeLinecap="square" strokeLinejoin="round" strokeMiterlimit="10" strokeDasharray="1.58743761 1.58743761" strokeDashoffset="3.87863898"/>
|
||||
<path d="M4.25170904 6.7775174h6.5249912v4.5833346h-6.5249912z" fill="#fff" fillRule="evenodd"/>
|
||||
<path d="M4.25170904 6.7775174h6.5249912v4.5833346h-6.5249912z" fill="none" stroke="#fff" strokeWidth=".5291667" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
<path d="M4.78487104 8.0518672c0-.4294054 1.2218881-.7775054 2.7291615-.7775054 1.5072743 0 2.7291787.3481 2.7291787.7775054s-1.2219044.7775068-2.7291787.7775068c-1.5072734 0-2.7291615-.3481014-2.7291615-.7775068z" fill="#fff" fillRule="evenodd"/>
|
||||
<path d="M10.24321824 8.0518672c0 .4294054-1.2219064.7775068-2.7291777.7775068-1.5072734 0-2.7291614-.3481014-2.7291614-.7775068 0-.4294054 1.221888-.7775054 2.7291614-.7775054 1.5072733 0 2.7291777.3481 2.7291777.7775054V10.15519c0 .429405-1.2219064.777506-2.7291777.777506-1.5072734 0-2.7291614-.348101-2.7291614-.777506V8.0518672" fill="none"/>
|
||||
<path d="M10.24321824 8.0518672c0 .4294054-1.2219064.7775068-2.7291777.7775068-1.5072734 0-2.7291614-.3481014-2.7291614-.7775068 0-.4294054 1.221888-.7775054 2.7291614-.7775054 1.5072733 0 2.7291777.3481 2.7291777.7775054V10.15519c0 .429405-1.2219064.777506-2.7291777.777506-1.5072734 0-2.7291614-.348101-2.7291614-.777506V8.0518672" fill="none" stroke="#326ce5" strokeWidth=".5291667" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default StatefulSetSvg;
|
||||
@@ -1,26 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const StorageClassSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.04 17.5" {...props}>
|
||||
<path d="M8.96.46a1.14 1.13 0 0 0-.44.11L2.58 3.41a1.14 1.13 0 0 0-.61.77L.5 10.55a1.14 1.13 0 0 0 .16.86 1.14 1.13 0 0 0 .06.1l4.11 5.1a1.14 1.13 0 0 0 .9.43h6.58a1.14 1.13 0 0 0 .9-.43l4.1-5.1a1.14 1.13 0 0 0 .22-.96l-1.47-6.38a1.14 1.13 0 0 0-.61-.76L9.5.57a1.14 1.13 0 0 0-.55-.1z"/>
|
||||
<path d="M8.96 0a1.2 1.19 0 0 0-.46.12l-6.27 3a1.2 1.19 0 0 0-.65.8L.03 10.65a1.2 1.19 0 0 0 .16.91 1.2 1.19 0 0 0 .07.1l4.34 5.4a1.2 1.19 0 0 0 .94.44h6.96a1.2 1.19 0 0 0 .94-.45l4.33-5.4a1.2 1.19 0 0 0 .24-1l-1.55-6.73a1.2 1.19 0 0 0-.65-.8l-6.27-3A1.2 1.19 0 0 0 8.96 0zm0 .46a1.14 1.13 0 0 1 .55.11l5.94 2.84a1.14 1.13 0 0 1 .61.76l1.47 6.38a1.14 1.13 0 0 1-.22.95l-4.1 5.11a1.14 1.13 0 0 1-.9.43H5.72a1.14 1.13 0 0 1-.89-.42L.73 11.5a1.14 1.13 0 0 1-.07-.09 1.14 1.13 0 0 1-.16-.86l1.47-6.37a1.14 1.13 0 0 1 .61-.77L8.52.57a1.14 1.13 0 0 1 .44-.1z"
|
||||
color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.81" x="9.98"
|
||||
fontWeight="400" fontSize="10.58" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".26" transform="translate(-1 -1.17)">
|
||||
<tspan
|
||||
y="16.81" x="9.98" fontSize="2.82" fontFamily="Arial" textAnchor="middle">sc</tspan>
|
||||
</text>
|
||||
<path d="M4.43 9.35c0 .38 2.1.68 4.7.68 2.59 0 4.7-.3 4.7-.68v1.85c0 .37-2.11.68-4.7.68-2.6 0-4.7-.3-4.7-.68z" fillRule="evenodd"/>
|
||||
<path d="M4.43 9.35c0-.37 2.1-.68 4.7-.68 2.59 0 4.7.3 4.7.68 0 .38-2.11.68-4.7.68-2.6 0-4.7-.3-4.7-.68z" fillRule="evenodd"/>
|
||||
<path d="M4.43 7.04c0 .38 2.1.68 4.7.68 2.59 0 4.7-.3 4.7-.68V8.9c0 .37-2.11.68-4.7.68-2.6 0-4.7-.3-4.7-.68z" fill="#fff" fillRule="evenodd" stroke="#eee" strokeWidth=".21" strokeLinecap="square" strokeMiterlimit="10"/>
|
||||
<path d="M4.43 7.04c0-.37 2.1-.68 4.7-.68 2.59 0 4.7.3 4.7.68 0 .38-2.11.68-4.7.68-2.6 0-4.7-.3-4.7-.68zM4.43 4.49c0-.38 2.1-.68 4.7-.68 2.59 0 4.7.3 4.7.68 0 .37-2.11.68-4.7.68-2.6 0-4.7-.3-4.7-.68z" fillRule="evenodd"/>
|
||||
<g>
|
||||
<path d="M13.72 9.7c0 .38-2.1.69-4.7.69s-4.7-.3-4.7-.68c0-.38 2.1-.69 4.7-.69s4.7.31 4.7.69v1.84c0 .38-2.1.68-4.7.68s-4.7-.3-4.7-.68V9.71" fill="none" stroke="#fff" strokeWidth=".41" strokeLinejoin="round" strokeMiterlimit="10" strokeDasharray="1.66 .41"/>
|
||||
<path d="M13.72 7.04c0 .38-2.1.68-4.7.68s-4.7-.3-4.7-.68c0-.37 2.1-.68 4.7-.68s4.7.3 4.7.68V8.9c0 .37-2.1.68-4.7.68s-4.7-.3-4.7-.68V7.04" fill="none" stroke="#fff" strokeWidth=".41" strokeLinejoin="round" strokeMiterlimit="10"/>
|
||||
<path d="M4.32 4.49c0 .37 2.1.68 4.7.68s4.7-.3 4.7-.68v1.84c0 .38-2.1.68-4.7.68s-4.7-.3-4.7-.68z" fillRule="evenodd"/>
|
||||
<path d="M13.72 4.49c0 .37-2.1.68-4.7.68s-4.7-.3-4.7-.68c0-.38 2.1-.68 4.7-.68s4.7.3 4.7.68v1.84c0 .38-2.1.68-4.7.68s-4.7-.3-4.7-.68V4.5" fill="none" stroke="#fff" strokeWidth=".42" strokeLinejoin="round" strokeMiterlimit="10" strokeDasharray="1.66 .42"/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default StorageClassSvg;
|
||||
@@ -1,10 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const UnlockSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 299.997 299.997" {...props}>
|
||||
<path d="M134.437 161.482c-8.613 0-15.598 6.982-15.598 15.598 0 5.778 3.149 10.807 7.817 13.502v17.346h15.562v-17.346c4.668-2.695 7.817-7.726 7.817-13.502 0-8.616-6.985-15.598-15.598-15.598z"/>
|
||||
<path d="M149.996 0C67.157 0 .001 67.158.001 149.997c0 82.837 67.156 150 149.995 150s150-67.163 150-150C299.996 67.156 232.835 0 149.996 0zm102.947 134.436h-25.936v-27.915c0-13.108-10.665-23.775-23.773-23.775-13.111 0-23.775 10.665-23.775 23.775v25.321h1.063c9.734 0 17.626 7.892 17.626 17.629v56.921c0 9.736-7.892 17.629-17.626 17.629H88.349c-9.734 0-17.626-7.892-17.626-17.629v-56.924c0-9.736 7.892-17.629 17.626-17.629h65.174V106.52c0-27.409 22.302-49.711 49.711-49.711s49.709 22.3 49.709 49.711v27.916z"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default UnlockSvg;
|
||||
@@ -1,14 +0,0 @@
|
||||
import React from 'react';
|
||||
|
||||
const UserSvg = props => (
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.0353 17.5004" {...props}>
|
||||
<path d="M8.9583.4632a1.1358 1.1265 0 0 0-.4352.1101l-5.9396 2.838a1.1358 1.1265 0 0 0-.6145.7642L.5037 10.5503a1.1358 1.1265 0 0 0 .1542.8637 1.1358 1.1265 0 0 0 .0645.0896l4.1112 5.1116a1.1358 1.1265 0 0 0 .888.4238l6.5928-.0015a1.1358 1.1265 0 0 0 .888-.4231l4.1096-5.1123a1.1358 1.1265 0 0 0 .2195-.9533L16.064 4.174a1.1358 1.1265 0 0 0-.6145-.7642L9.509.5733a1.1358 1.1265 0 0 0-.5508-.1101z"/>
|
||||
<path d="M8.9552.0016a1.199 1.1892 0 0 0-.4589.117L2.2256 3.1138a1.199 1.1892 0 0 0-.6487.8067L.0303 10.65a1.199 1.1892 0 0 0 .1625.9124 1.199 1.1892 0 0 0 .0684.0942L4.601 17.053a1.199 1.1892 0 0 0 .9373.4474l6.9598-.0015a1.199 1.1892 0 0 0 .9373-.4467l4.3383-5.3972a1.199 1.1892 0 0 0 .2317-1.0057l-1.549-6.7303a1.199 1.1892 0 0 0-.6486-.806L9.537.1178a1.199 1.1892 0 0 0-.5818-.1162zm.003.4618a1.1358 1.1265 0 0 1 .5507.1102L15.4492 3.41a1.1358 1.1265 0 0 1 .6146.7642l1.4676 6.3748a1.1358 1.1265 0 0 1-.2196.9534l-4.1096 5.1123a1.1358 1.1265 0 0 1-.888.423l-6.5928.0016a1.1358 1.1265 0 0 1-.888-.4239L.7223 11.504a1.1358 1.1265 0 0 1-.0646-.0897 1.1358 1.1265 0 0 1-.1542-.8637l1.4653-6.3748a1.1358 1.1265 0 0 1 .6146-.7641L8.5229.5736a1.1358 1.1265 0 0 1 .4353-.1102z" color="#000" fontWeight="400" fontFamily="Sans" overflow="visible" fill="#fff"/>
|
||||
<text y="16.8823" x="9.8994" fontWeight="400" fontSize="10.5833" fontFamily="Sans" letterSpacing="0" wordSpacing="0" fill="#fff" strokeWidth=".2646" transform="translate(-.9926 -1.1742)">
|
||||
<tspan y="16.8823" x="9.8994" fontSize="2.8222" fontFamily="Arial" textAnchor="middle">user</tspan>
|
||||
</text>
|
||||
<path d="M5.1752 3.6173a.8548.8548 0 0 0-.8568.8564v7.2853a.855.855 0 0 0 .8568.8567h7.6852a.8548.8548 0 0 0 .8565-.8567V4.4737a.8546.8546 0 0 0-.8565-.8564zM9.0178 5.039c.7298 0 1.3144.5891 1.3144 1.319 0 .7297-.5846 1.3186-1.3144 1.3186a1.317 1.317 0 0 1-1.319-1.3187c0-.7298.5892-1.319 1.319-1.319zm0 3.517c1.0244 0 3.0774.5143 3.0774 1.5386v1.0991h-6.155v-1.099c0-1.0244 2.0533-1.5386 3.0776-1.5386z" fill="#fff"/>
|
||||
</svg>
|
||||
);
|
||||
|
||||
export default UserSvg;
|
||||
@@ -1,38 +0,0 @@
|
||||
import {Component} from 'react';
|
||||
import log from '../utils/log';
|
||||
|
||||
export default class Base extends Component {
|
||||
async componentWillUnmount() {
|
||||
await this.clearDisposers();
|
||||
}
|
||||
|
||||
async registerApi(apis) {
|
||||
if (!this.apis) this.apis = {};
|
||||
|
||||
for (const [name, api] of Object.entries(apis)) {
|
||||
await this.clearDisposer(name);
|
||||
this.apis[name] = api;
|
||||
}
|
||||
}
|
||||
|
||||
async clearDisposers() {
|
||||
const keys = Object.keys(this.apis || {});
|
||||
for (const name of keys) {
|
||||
this.clearDisposer(name);
|
||||
}
|
||||
}
|
||||
|
||||
async clearDisposer(name) {
|
||||
if (!this.apis || !this.apis[name]) return;
|
||||
|
||||
const item = this.apis[name];
|
||||
delete this.apis[name];
|
||||
|
||||
const handler = await item;
|
||||
if (handler) {
|
||||
handler();
|
||||
} else {
|
||||
log.warn('Found null handler when calling disposers');
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,36 +0,0 @@
|
||||
import React from 'react';
|
||||
import Base from './base';
|
||||
import log from '../utils/log';
|
||||
import {addUserNotification} from './notifier';
|
||||
import './button.scss';
|
||||
|
||||
export default class Button extends Base {
|
||||
async click() {
|
||||
this.setState({working: true});
|
||||
|
||||
try {
|
||||
await this.props.onClick();
|
||||
} catch (err) {
|
||||
log.error({err}, 'Error in button handler');
|
||||
addUserNotification(err.message, true);
|
||||
}
|
||||
|
||||
this.setState({working: false});
|
||||
}
|
||||
|
||||
render() {
|
||||
const {working} = this.state || {};
|
||||
const {children, disabled, className, title} = this.props;
|
||||
|
||||
return (
|
||||
<button
|
||||
className={className}
|
||||
title={title}
|
||||
disabled={working || disabled}
|
||||
onClick={() => this.click()}
|
||||
>
|
||||
{children}
|
||||
</button>
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -1,59 +0,0 @@
|
||||
@import '../scss/settings.scss';
|
||||
|
||||
.button, .button:visited {
|
||||
border: none;
|
||||
background: $color-accent;
|
||||
color: $color-white;
|
||||
cursor: pointer;
|
||||
outline: none;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
|
||||
padding: 0.5rem;
|
||||
margin: 0.5rem 1px;
|
||||
min-width: 5rem;
|
||||
}
|
||||
|
||||
.button_negative, .button_negative:visited {
|
||||
@extend .button;
|
||||
background: $color-error;
|
||||
color: $color-white;
|
||||
}
|
||||
|
||||
.button_clear, .button_clear:visited {
|
||||
@extend .button;
|
||||
background: none;
|
||||
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
min-width: 3rem;
|
||||
}
|
||||
|
||||
.button:disabled, .button_negative:disabled {
|
||||
border: none;
|
||||
background: $color-lightest;
|
||||
color: $color-white;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.button_clear:disabled {
|
||||
@extend .button:disabled;
|
||||
background: none;
|
||||
color: $color-lightest;
|
||||
|
||||
> svg {
|
||||
fill: $color-lightest;
|
||||
}
|
||||
}
|
||||
|
||||
.button_headerAction {
|
||||
@extend .button_clear
|
||||
}
|
||||
|
||||
.button_label {
|
||||
color: $color-light;
|
||||
font-size: $font-size-small;
|
||||
text-transform: uppercase;
|
||||
margin-top: 3px;
|
||||
}
|
||||
@@ -1,51 +0,0 @@
|
||||
import _ from 'lodash';
|
||||
import React from 'react';
|
||||
import Donut from './donut';
|
||||
|
||||
export default function Chart(props) {
|
||||
const {used = 0, usedSuffix, available = 0, availableSuffix, pending = 0, decimals = 1} = props;
|
||||
|
||||
const fixedUsed = _.round(used, decimals);
|
||||
const fixedPending = _.round(pending, decimals);
|
||||
const fixedAvailable = _.round(available, decimals);
|
||||
const {percent, percent2} = getData(fixedUsed, fixedPending, fixedAvailable);
|
||||
|
||||
return (
|
||||
<div className='charts_donut'>
|
||||
<Donut percent={percent} percent2={percent2} />
|
||||
<span className='chart_donutLabel'>
|
||||
<div>
|
||||
{Number.isFinite(fixedUsed) && (
|
||||
<>
|
||||
<span>{fixedUsed}</span>
|
||||
{usedSuffix && (<span className='chart_innerLabel'>{usedSuffix}</span>)}
|
||||
</>
|
||||
)}
|
||||
</div>
|
||||
<div className='chart_innerLabel'>of</div>
|
||||
<div>
|
||||
{Number.isFinite(fixedAvailable) && (
|
||||
<>
|
||||
<span>{fixedAvailable}</span>
|
||||
{availableSuffix && (<span className='chart_innerLabel'>{availableSuffix}</span>)}
|
||||
</>
|
||||
)}
|
||||
</div>
|
||||
</span>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
function getData(used, pending, available) {
|
||||
// If there's a negative amount remaining, show an all red chart
|
||||
const remaining = available - used - pending;
|
||||
if (remaining < 0) return {percent: 0, percent2: 1};
|
||||
|
||||
// If there's no data, show an all grey chart
|
||||
if (!available) return {percent: 0, percent2: 0};
|
||||
|
||||
const percent = used / available;
|
||||
const percent2 = pending / available;
|
||||
|
||||
return {percent, percent2};
|
||||
}
|
||||
@@ -1,51 +0,0 @@
|
||||
import React from 'react';
|
||||
import {Swipeable} from 'react-swipeable';
|
||||
import Base from './base';
|
||||
|
||||
export default class ChartsContainer extends Base {
|
||||
state = {
|
||||
index: 0,
|
||||
};
|
||||
|
||||
swipe(value) {
|
||||
let {index} = this.state;
|
||||
const {children} = this.props;
|
||||
index += value;
|
||||
index = Math.max(0, index);
|
||||
index = Math.min(children.length - 1, index);
|
||||
this.setState({index});
|
||||
}
|
||||
|
||||
next() {
|
||||
let {index} = this.state;
|
||||
const {children} = this.props;
|
||||
index++;
|
||||
if (index >= children.length) index = 0;
|
||||
this.setState({index});
|
||||
}
|
||||
|
||||
render() {
|
||||
const {children} = this.props;
|
||||
const {index} = this.state;
|
||||
|
||||
return (
|
||||
<div className='charts_container'>
|
||||
<Swipeable
|
||||
onSwipedLeft={() => this.swipe(1)}
|
||||
onSwipedRight={() => this.swipe(-1)}
|
||||
trackMouse={true}
|
||||
preventDefaultTouchmoveEvent={true}
|
||||
className={`charts chart_${index}`}
|
||||
>
|
||||
{children}
|
||||
</Swipeable>
|
||||
|
||||
<div className='chart_dots' onClick={() => this.next()}>
|
||||
{children.map((_, i) => (
|
||||
<span key={i} className={i === index ? 'chart_dotSelected' : undefined}>•</span>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -1,67 +0,0 @@
|
||||
import _ from 'lodash';
|
||||
import React, {Fragment} from 'react';
|
||||
import Field from './field';
|
||||
|
||||
const ContainersPanel = ({spec}) => (
|
||||
<>
|
||||
{spec && _.map(spec.containers, item => (
|
||||
<Fragment key={item.name}>
|
||||
<div className='contentPanel_header'>Container</div>
|
||||
<div key={item.name} className='contentPanel'>
|
||||
|
||||
<Field name='Container'>{item.name}</Field>
|
||||
<Field name='Image'>{item.image}</Field>
|
||||
|
||||
{item.args && (
|
||||
<Field name='Args'>{item.args.join(' ')}</Field>
|
||||
)}
|
||||
|
||||
{item.env && (
|
||||
<Field name='Env'>
|
||||
{item.env.map(x => (
|
||||
<div key={x.name}>
|
||||
{x.name}: {getVariableValue(x)}
|
||||
</div>
|
||||
))}
|
||||
</Field>
|
||||
)}
|
||||
|
||||
{item.resources && item.resources.requests && (
|
||||
<>
|
||||
<Field name='Cpu Request'>{item.resources.requests.cpu}</Field>
|
||||
<Field name='Memory Request'>{item.resources.requests.memory}</Field>
|
||||
</>
|
||||
)}
|
||||
|
||||
{item.resources && item.resources.limits && (
|
||||
<>
|
||||
<Field name='Cpu Limit'>{item.resources.limits.cpu}</Field>
|
||||
<Field name='Memory Limit'>{item.resources.limits.memory}</Field>
|
||||
</>
|
||||
)}
|
||||
|
||||
{item.ports && (
|
||||
<Field name='Ports'>
|
||||
{item.ports.map((x, i) => (
|
||||
<div key={i}>
|
||||
{[x.name, x.containerPort, x.hostPort, x.protocol].filter(y => !!y).join(' • ')}
|
||||
</div>
|
||||
))}
|
||||
</Field>
|
||||
)}
|
||||
</div>
|
||||
</Fragment>
|
||||
))}
|
||||
</>
|
||||
);
|
||||
|
||||
function getVariableValue(item) {
|
||||
if (item.value) return item.value;
|
||||
if (!item.valueFrom) return null;
|
||||
if (item.valueFrom.secretKeyRef) return item.valueFrom.secretKeyRef.key;
|
||||
if (item.valueFrom.fieldRef) return item.valueFrom.fieldRef.fieldPath;
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
export default ContainersPanel;
|
||||
@@ -1,28 +0,0 @@
|
||||
import React from 'react';
|
||||
import Base from './base';
|
||||
import Button from './button';
|
||||
import {addUserConfirmation} from './notifier';
|
||||
import DeleteSvg from '../art/deleteSvg';
|
||||
|
||||
export default class DeleteButton extends Base {
|
||||
render() {
|
||||
return (
|
||||
<Button title='Delete' className='button_headerAction' onClick={() => this.startDelete()}>
|
||||
<DeleteSvg />
|
||||
<span className='button_label'>Delete</span>
|
||||
</Button>
|
||||
);
|
||||
}
|
||||
|
||||
startDelete() {
|
||||
const {onDelete} = this.props;
|
||||
const message = 'Are you sure you want to permanently delete this item?';
|
||||
|
||||
addUserConfirmation(message, async (result) => {
|
||||
if (!result) return;
|
||||
|
||||
await onDelete();
|
||||
window.history.back();
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -1,45 +0,0 @@
|
||||
import './doc.scss';
|
||||
import React from 'react';
|
||||
import Base from './base';
|
||||
import ArrowDownSvg from '../art/arrowDownSvg';
|
||||
|
||||
export default class Doc extends Base {
|
||||
render() {
|
||||
const {properties} = this.props;
|
||||
const pairs = Object.entries(properties || {});
|
||||
|
||||
return (
|
||||
<ul className='doc_group'>
|
||||
{pairs.map(([name, value]) => (
|
||||
<DocItem key={name} name={name} value={value} />
|
||||
))}
|
||||
</ul>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
class DocItem extends Base {
|
||||
toggle() {
|
||||
const {expanded} = this.state || {};
|
||||
this.setState({expanded: !expanded});
|
||||
}
|
||||
|
||||
render() {
|
||||
const {name, value} = this.props;
|
||||
const {expanded} = this.state || {};
|
||||
|
||||
return (
|
||||
<>
|
||||
<li className='doc_item' key={name} onClick={() => this.toggle()}>
|
||||
<ArrowDownSvg className={expanded ? 'doc_arrow doc_arrowExpanded' : 'doc_arrow'} />
|
||||
<span>{name}</span>
|
||||
<span className='doc_itemType'> {value.format || value.type}</span>
|
||||
{expanded && <div className='doc_description'>{value.description}</div>}
|
||||
</li>
|
||||
{expanded && (
|
||||
<Doc key={`${name}-properties`} properties={value.properties} />
|
||||
)}
|
||||
</>
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
@import '../scss/settings.scss';
|
||||
|
||||
ul.doc_group {
|
||||
margin: 0;
|
||||
padding-inline-start: 15px;
|
||||
}
|
||||
|
||||
.doc_item {
|
||||
margin: 5px;
|
||||
list-style-type: none;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.doc_itemType {
|
||||
font-size: $font-size-small;
|
||||
color: $color-dark;
|
||||
}
|
||||
|
||||
.doc_description {
|
||||
margin-left: 10px;
|
||||
color: $color-dark;
|
||||
font-size: 8pt;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
svg.doc_arrow {
|
||||
width: 6px;
|
||||
height: 6px;
|
||||
cursor: pointer;
|
||||
fill: $color-dark;
|
||||
margin-right: 3px;
|
||||
transform: rotate(-90deg);
|
||||
|
||||
transition-duration: $animation-length;
|
||||
transition-property: transform;
|
||||
}
|
||||
|
||||
svg.doc_arrowExpanded {
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user