Skip to content
This repository has been archived by the owner on Mar 23, 2023. It is now read-only.

Add saplingjs and canopyjs #1465

Draft
wants to merge 111 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
111 commits
Select commit Hold shift + click to select a range
f742401
Initial commit
rbuysse Feb 14, 2020
a5099b1
Initial commit
rbuysse Feb 14, 2020
212cf28
Merge remote-tracking branch 'splinter-remote/master'
dplumb94 Feb 17, 2020
ebc5416
Merge remote-tracking branch 'splinter-remote/master'
dplumb94 Feb 17, 2020
052d113
Remove unnecessary files and update paths
dplumb94 Feb 17, 2020
56fa103
Add README.md
dplumb94 Feb 17, 2020
b81ea31
Update paths and remove files
dplumb94 Feb 17, 2020
91f7f96
Add lint script and fix errors
dplumb94 Feb 17, 2020
64f942e
Merge pull request #2 from dplumb94/merge-splinter
dplumb94 Feb 18, 2020
3c06341
Update package name
dnewh Feb 17, 2020
562799b
Update main file path
dnewh Feb 17, 2020
ba5e012
Merge pull request #2 from dplumb94/merge-splinter
dplumb94 Feb 18, 2020
c1ce82e
Update package name
dnewh Feb 17, 2020
02538b6
Add prepare script
dnewh Feb 17, 2020
268923b
rename build command
dnewh Feb 19, 2020
783cefe
Add prepare script
dnewh Feb 17, 2020
d212b0f
Merge pull request #3 from dnewh/prepard-script
dplumb94 Feb 19, 2020
f39b509
Merge pull request #3 from dnewh/prepare-script
dplumb94 Feb 19, 2020
07c9b4d
Update package privacy to public
dnewh Feb 26, 2020
df818ce
Update package version to 0.0.1
dnewh Feb 26, 2020
6cb0cf2
Update version to 0.0.1
dnewh Feb 26, 2020
90ee560
Add get/set key functionality
dnewh Feb 26, 2020
c5623d4
Add get/set key functionality
dnewh Feb 26, 2020
2a8a448
Add encrypt/decrypt keys functionality
dnewh Mar 2, 2020
a20ef55
Fix lint issue
dnewh Mar 2, 2020
bceb197
Merge pull request #4 from dnewh/fetch-keys
dplumb94 Mar 2, 2020
a4c019d
Merge pull request #4 from dnewh/fetch-keys
dplumb94 Mar 2, 2020
337fb6b
Add token to user object
dplumb94 Mar 3, 2020
fb20870
Add hideCanopy() function
dplumb94 Mar 3, 2020
c669044
Implement hideCanopy function
dplumb94 Mar 3, 2020
1ac0842
Update tabBox styles to match wireframes
dplumb94 Mar 3, 2020
9a924e4
Add input component and styles
dplumb94 Mar 3, 2020
1ef0bbf
Add button styles
dplumb94 Mar 3, 2020
f4aa82d
Add auth form styles
dplumb94 Mar 3, 2020
1f16980
Add Davey Newhall as codeowner and maintainer
dplumb94 Mar 3, 2020
53ed249
Add Davey Newhall as codeowner and maintainer
dplumb94 Mar 3, 2020
6454ce1
Merge pull request #6 from dnewh/enc-dec-keys
dplumb94 Mar 4, 2020
b88625d
Merge pull request #5 from dnewh/update-version
peterschwarz Mar 6, 2020
043d69b
Merge pull request #5 from dnewh/update-version
peterschwarz Mar 6, 2020
652b3b0
Merge pull request #7 from dplumb94/add-login-funcs
dplumb94 Mar 6, 2020
aef2009
Merge pull request #6 from dplumb94/add-login-elements
dplumb94 Mar 6, 2020
3381dbb
Merge pull request #8 from dplumb94/add-davey-maintainer
vaporos Mar 16, 2020
797520c
Merge pull request #7 from dplumb94/add-davey-maintainer
vaporos Mar 16, 2020
4ad98a7
Adjust base font size to 16pt
dplumb94 Mar 19, 2020
4f952a4
Merge pull request #8 from dplumb94/fix-font-sizes
dplumb94 Mar 20, 2020
6344b95
Allow object proptype and fix eslintrc formatting
dplumb94 Mar 30, 2020
cfecc4c
Add appConfig to shared config object
dplumb94 Mar 30, 2020
c62e0f3
Merge pull request #9 from dplumb94/appdata-config
dplumb94 Apr 2, 2020
40e7c87
gitignore and dockerignore package-lock.json
dplumb94 Apr 9, 2020
b3c698a
Fix Dockerfile build
dplumb94 Apr 9, 2020
6c2d149
Update repo path
dplumb94 Apr 9, 2020
8c0af43
Use npm to run scripts
dplumb94 Apr 9, 2020
000f24e
Fix tab alignment
dplumb94 Apr 9, 2020
ccfdf78
Merge pull request #10 from dplumb94/fix-build
dplumb94 Apr 9, 2020
1ee5916
Copy files before npm install
dplumb94 Apr 9, 2020
ada66c4
Ignore package-lock.json
dplumb94 Apr 9, 2020
f5d0d33
Redirect users to login sapling if they are not logged in
RyanLassigBanks May 1, 2020
60eb6c3
Merge pull request #11 from RyanLassigBanks/auth-guard
RyanLassigBanks May 21, 2020
c60c0cc
Check if sideNav is in dom before hiding it
RyanLassigBanks May 22, 2020
0131371
Merge pull request #13 from RyanLassigBanks/hideCanopy-element-check
RyanLassigBanks May 26, 2020
1a74176
Update README with link to splinter.dev
Jun 10, 2020
17e6917
Merge pull request #9 from dplumb94/fix-build
dplumb94 Jun 10, 2020
38cc46e
Update README with link to splinter.dev
Jun 10, 2020
1529408
Merge pull request #10 from chenette/add-website-link-to-readme
annechenette Jun 15, 2020
61c9908
Merge pull request #14 from chenette/add-website-link-to-readme
annechenette Jun 15, 2020
84a903c
Unmount user sapling styles when not rendered
dplumb94 Jul 23, 2020
5180174
Merge pull request #15 from dplumb94/unload-stylesheet
dplumb94 Jul 27, 2020
5b49c05
Allow fully qualified URL's in config files
peterschwarz Nov 17, 2020
29f92d3
Merge pull request #16 from peterschwarz/fix-loading
peterschwarz Nov 17, 2020
1eda93b
Update postcss version
Jan 22, 2021
55b8039
Merge pull request #17 from isabeltomb/update-dependency
Jan 22, 2021
a8f44f1
Replace FA icons with Material UI icons
Jan 25, 2021
b9b61ee
Add profile tab label
Jan 25, 2021
3718816
Update SideNav.scss
Jan 25, 2021
16bf226
Merge pull request #18 from isabeltomb/new-left-nav-design
Jan 26, 2021
ec636d2
Fix sapling tab rendering on refresh
dplumb94 May 20, 2020
abe7b13
Merge pull request #12 from dplumb94/no-refresh
dplumb94 Jan 27, 2021
4cf6fe3
Add icon borders for hover/select
Feb 22, 2021
255da2e
Add shadow to logo
Feb 22, 2021
6cbe7a3
Merge pull request #19 from isabeltomb/update-left-nav
Feb 22, 2021
ba02ba3
Add 'headerFn' prop to 'get' component
Mar 9, 2021
16727be
Add logout functionality
Mar 9, 2021
33920d2
Merge pull request #20 from isabeltomb/logout
Mar 16, 2021
efd9333
Update babel preset-env version
dnewh Apr 8, 2021
2d972b3
Add custom icon support to sidebar
dnewh Apr 8, 2021
f435220
Merge pull request #21 from Cargill/dnewh-fix-sidebar
dnewh Apr 21, 2021
6420fb3
Disable Travis CI builds
rbuysse May 7, 2021
168b261
Add GitHub Actions workflow files
rbuysse May 7, 2021
d3fdb89
Disable Travis CI builds
rbuysse May 7, 2021
0baa141
Add GitHub Actions workflow files
rbuysse May 7, 2021
00ab688
Merge pull request #22 from rbuysse/add-gha
rbuysse May 13, 2021
7450986
Merge pull request #23 from rbuysse/disable-travis
rbuysse May 13, 2021
41e7ff8
Merge pull request #12 from Cargill/add-gha
rbuysse May 13, 2021
6a5b242
Merge pull request #13 from rbuysse/disable-travis
rbuysse May 13, 2021
cc6f765
Add additional .env file
rbuysse May 12, 2021
72e0e86
Add additional .env file
rbuysse May 12, 2021
2d72bd7
Merge pull request #14 from rbuysse/more-env-files
rbuysse May 17, 2021
d277530
Merge pull request #24 from rbuysse/more-env-files
rbuysse May 17, 2021
2df20e6
Remove Sapling nav tab
dplumb94 Jun 30, 2021
965385f
Merge pull request #25 from dplumb94/remove-saplings-button
dplumb94 Jul 1, 2021
ee2eef6
Trigger builds at 10am UTC
rbuysse Aug 16, 2021
ac8a382
Trigger builds at 10am UTC
rbuysse Aug 16, 2021
5d4f577
Merge pull request #26 from rbuysse/cron-builds
rbuysse Aug 18, 2021
836b179
Merge pull request #15 from rbuysse/cron-builds
rbuysse Aug 18, 2021
66dc31d
Move contents to saplingjs folder
Jul 29, 2022
8ce738e
Move contents to canopyjs folder
Jul 29, 2022
893c757
Add saplingsjs to grid ui
Jul 29, 2022
7b57f9d
Add canopyjs to grid ui
Jul 29, 2022
eaf52ca
Update grid-ui to use local canopyjs
Jul 29, 2022
7fd8efa
Update saplings to use local saplingjs
Jul 29, 2022
0cbe030
Combine Dockerfile RUN commands
Jul 29, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 14 additions & 3 deletions ui/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,19 @@
FROM node:14.18.1-alpine3.11 as canopy-app-build-stage

RUN apk add --no-cache python g++ git make
COPY ui/canopyjs /canopyjs
ENV REACT_APP_SPLINTER_URL "/splinterd"
ENV REACT_APP_SAPLING_URL "/sapling-dev-server"
ENV REACT_APP_GRID_URL "/gridd"
WORKDIR /canopyjs
RUN npm config set unsafe-perm true \
&& npm install \
&& npm run build
WORKDIR /ui
COPY ui/grid-ui/package*.json ./
RUN npm config set unsafe-perm true && npm install
COPY ui/grid-ui .
ENV REACT_APP_SPLINTER_URL "/splinterd"
ENV REACT_APP_SAPLING_URL "/sapling-dev-server"
ENV REACT_APP_GRID_URL "/gridd"

RUN npm run build
WORKDIR /ui/build
ARG REPO_VERSION
Expand All @@ -42,6 +48,11 @@ RUN apk add --no-cache python g++ git make \
COPY ui/saplings /saplings
COPY ui/sapling-dev-server /sapling-dev-server
COPY ui/protos /protos
COPY ui/saplingjs /saplingjs

WORKDIR /saplingjs
RUN npm install \
&& npm run build

ARG PUBLIC_URL_PARTIAL
ENV PUBLIC_URL $PUBLIC_URL_PARTIAL
Expand Down
6 changes: 6 additions & 0 deletions ui/canopyjs/.babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"presets": ["@babel/preset-react", "@babel/preset-env"],
"plugins": [
["@babel/transform-runtime"]
]
}
22 changes: 22 additions & 0 deletions ui/canopyjs/.dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Copyright 2018-2020 Cargill Incorporated
#
# 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.

**/node_modules
**/.pnp
**/.pnp.js
**/yarn.lock
**/package-lock.json
**/coverage
**/build
**/dist
17 changes: 17 additions & 0 deletions ui/canopyjs/.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Copyright 2018-2020 Cargill Incorporated
#
# 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.

ISOLATION_ID=latest
DISTRO=bionic
REPO_VERSION=0.3.12-dev
16 changes: 16 additions & 0 deletions ui/canopyjs/.eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Copyright 2018-2020 Cargill Incorporated
#
# 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.

saplings/*
build/*
29 changes: 29 additions & 0 deletions ui/canopyjs/.eslintrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"env": {
"es6": true,
"jest": true,
"browser": true
},
"parserOptions": {
"ecmaVersion": 2020
},
"extends": [
"airbnb",
"plugin:prettier/recommended"
],
"rules": {
"react/jsx-filename-extension": 0,
"react/prefer-stateless-function": 0,
"import/prefer-default-export": 0,
"react/forbid-prop-types": 0
},
"settings": {
"import/resolver": {
"node": {
"paths": [
"src"
]
}
}
}
}
5 changes: 5 additions & 0 deletions ui/canopyjs/.prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"printWidth": 80,
"tabWidth": 2,
"singleQuote": true
}
21 changes: 21 additions & 0 deletions ui/canopyjs/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Copyright 2018-2020 Cargill Incorporated
#
# 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.

FROM node:lts-alpine

WORKDIR /splinter-canopyjs

COPY . .

RUN npm install
201 changes: 201 additions & 0 deletions ui/canopyjs/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,201 @@
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 2018-2020 Cargill, Inc.

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.
Loading