Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
75 commits
Select commit Hold shift + click to select a range
5e39567
Update .gitignore
labkey-klum Aug 2, 2016
d910f3a
Spec 25970: Import more x/y data (#1)
Sep 22, 2016
4261d72
Wait for element instead of text
labkey-tchad Sep 26, 2016
04de6cd
Spec ID 26490: Get IDRI using new HPLC assay
Sep 29, 2016
a426f06
Spec 27883: Update all source code copyrights & licenses
labkey-eyounske Oct 28, 2016
8009d99
Initial doc for Signal Data module.
labkey-steveh Nov 13, 2016
8116e87
Update README.md
labkey-steveh Nov 13, 2016
b7fc1c4
Update README.md
labkey-steveh Nov 14, 2016
b5f0ec1
Update README.md
labkey-steveh Nov 14, 2016
6d24e62
Update README.md
labkey-steveh Nov 14, 2016
af80321
Update README.md
Nov 16, 2016
02e268e
Update README.md
labkey-steveh Nov 21, 2016
ad5717d
Fix timing of SignalDataUploadPage
labkey-tchad Feb 20, 2017
1fdde2f
add distribution build files for custom, external, and optional modules
labkey-susanh Feb 22, 2017
84df5ce
update distribution package name to avoid name collision (otherwise G…
labkey-susanh Feb 28, 2017
4331e8d
change casing for HLPC project
labkey-susanh Mar 3, 2017
ec413a1
exclude Zip archive
labkey-susanh Mar 15, 2017
8d4c9ad
Make ant property accurately reflect actual behavior
labkey-tchad Mar 15, 2017
176985c
Use non-deprecated module in distribution
labkey-tchad Mar 15, 2017
c4ee242
Update README.md
labkey-steveh May 3, 2017
0f5f11a
Remove old IntelliJ module files from optionalModules
labkey-tchad May 11, 2017
cbb87e2
Remove ant build files for distributions
labkey-susanh May 22, 2017
be6521c
Avoid modal alerts blocking page navigation
labkey-tchad Jun 1, 2017
b3b3ffe
17.2 Update all copyrights & licenses
labkey-eyounske Jun 22, 2017
06c7569
Fixing SignalDataRawTest
Jul 10, 2017
0609f51
Merge pull request #3 from LabKey/fb_testFix
Jul 11, 2017
2cc926a
Use appropriate helper to click data region button
labkey-tchad Sep 20, 2017
a7491d0
Updates to signalDataUpload.html per new UI
cnathe Sep 22, 2017
5079998
UX Refresh: SignalDataRawTest
labkey-nicka Sep 22, 2017
db5af1e
Remove test flags for new UX
labkey-tchad Oct 27, 2017
a312327
Update copyrights for 17.3
labkey-eyounske Oct 31, 2017
c847ad3
Update copyrights for 17.3
labkey-eyounske Nov 1, 2017
426f538
Fixing SignalDataRawTest.testFileImport. Slightly increasing wait tim…
labkey-danield Nov 2, 2017
e39ede4
Add missing CSRF token
labkey-eyounske Feb 15, 2018
9fb7ef0
Move distribution projects to separate git repository
labkey-susanh Mar 7, 2018
7f47570
Issue 33539: Fix FileContentUploadTest, FileContentServiceImpl unit t…
labkey-dave Mar 14, 2018
4a22db6
Merge remote-tracking branch 'origin/release18.1' into develop
labkey-tchad Apr 9, 2018
b2649ee
Standard set/get pattern for more services and their usages: Activity…
labkey-adam Apr 11, 2018
32d191b
Avoid throwing a blocking alert when navigating away from page
labkey-tchad May 9, 2018
594f6c3
Correct spelling
labkey-adam May 31, 2018
09a050d
Fix for issue #34399
labkey-steveh Jun 1, 2018
4acac1e
Update and correct links to labkey.org: always https://www.labkey.org…
labkey-adam Jun 19, 2018
1b3cb12
Try to fix intermittent failures during signal data upload
labkey-tchad Sep 13, 2018
dc4071d
Wait for save button to be enabled
labkey-tchad Sep 13, 2018
6863432
Copyright and license updates
labkey-eyounske Nov 9, 2018
3e0d420
Copyright and license updates
labkey-eyounske Nov 13, 2018
2006a3b
Use helper to delete rows
labkey-tchad Dec 18, 2018
5c392e5
Workaround for mangled returnUrl
labkey-tchad Dec 21, 2018
7a60e1e
Make dropzone visible to allow WebDriver interaction (#4)
labkey-tchad Mar 11, 2019
97be24e
Wait for plot to refresh
labkey-tchad Mar 12, 2019
de563cf
Item 5351: ApiAction review and migration (#5)
labkey-ankurj Mar 19, 2019
371df26
Create .gitattributes
labkey-klum Apr 17, 2019
f9d625d
Immutable tableinfo
labkey-adam May 15, 2019
2270255
Item 5760: update copyrights to 2019
labkey-ankurj Jun 17, 2019
ad85b59
Item 5015: Assay without Study (#8)
labkey-adam Jul 27, 2019
1eea930
Item 6204: test conversion for SignalData module to new assay designe…
cnathe Oct 29, 2019
af789b4
Create pull_request_template.md
labkey-klum Apr 30, 2020
c416add
Bulk annotate with @Override (round #2) (#10)
labkey-adam May 27, 2020
d09cc17
Add release workflow definitions (#11)
labkey-tchad Jun 25, 2020
eeb33a6
Add PR validation workflow (#12)
labkey-tchad Dec 15, 2020
9bf0df0
Add build.gradle file in anticipation of removal of modules/build.gra…
labkey-susanh Dec 30, 2020
d41d982
Issue 7580: inconsistent use of returnUrl parameter (#14)
labkey-kevink Jan 7, 2021
3547f0e
Rename action branch to develop (#15)
labkey-tchad Apr 22, 2021
e12bb6a
Use FileContentService.UPLOADED_FILE DataType (#16)
labkey-kevink Jul 12, 2021
652a2f6
Prevent JavaScript error when crawler injects a bad rowId (#17)
labkey-tchad Apr 22, 2022
890e93f
Avoid using raw JS alert() to stop tripping up the crawler (#18)
labkey-jeckels Jun 16, 2022
13cba1e
Remove `WebDriverWrapper.setDropZone` (#19)
labkey-tchad Aug 17, 2022
580deb5
Work around race condition in signal data upload form (#20)
labkey-tchad Aug 19, 2022
6101486
Signal Data Update (#22)
labkey-klum Sep 14, 2024
e2565e8
Issue 50861: Pass around properly encoded WebDav URLs (#23)
labkey-jeckels Nov 5, 2024
f5e2a41
Modules and tests are PostgreSQL-only (#24)
labkey-adam Nov 15, 2024
c073ecd
Remove SupportedDatabases property now that default is PostgreSQL-onl…
labkey-adam Nov 19, 2024
65a063d
Add ManageVersion property to all module.properties files (#26)
labkey-adam Jan 9, 2025
edf4561
Rehome signalData module
labkey-tchad Feb 24, 2025
b0bd7ac
Merge signalData module
labkey-tchad Feb 24, 2025
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
1 change: 1 addition & 0 deletions signalData/.gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* text=auto
12 changes: 12 additions & 0 deletions signalData/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
*.class

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.ear

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
202 changes: 202 additions & 0 deletions signalData/LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,202 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions.

"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.

"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.

"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.

3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:

(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and

(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and

(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and

(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.

You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "{}"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright {yyyy} {name of copyright owner}

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

79 changes: 79 additions & 0 deletions signalData/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# SignalData

## Basic Setup ##

1. Create a LabKey Assay Project/Folder
1. Hover over the Project or Folder menu, and click **Create Project** or **Create Subfolder**.
1. Provide a Name and select type **Assay**.
1. Click **Next**.
1. Set permissions (optional) and click **Next**.
1. Click **Finish**.
1. Create a Signal Data Assay Design
1. In the **Assay List** web part, click **New Assay Design**.
1. On the New Assay Design page, select **Signal Data** as the assay type.
1. Click **Next**.
1. Name is the only required field. (Design default values should work fine.)
1. Click the **Save & Close** button.

## Manual Import of Signal Data Results ##

Importing data is a two step process:

1. Upload the metadata file. (An example metadata file is available at: https://github.com/LabKey/signalData/blob/develop/test/sampledata/signaldata/RunsMetadata/datafiles.tsv)
1. Drag and drop the data files (Example data files are available at: https://github.com/LabKey/signalData/tree/develop/test/sampledata/signaldata/SignalDataAssayData/TestRun001)

### Metadata Upload

1. Go to the folder where you wish to upload results.
1. Add the **Signal Data Upload** webpart.
1. Confirm that **File** is selected, and click **Upload TXT, TSV, XLS, XLSX**.

![Drag-and-drop to upload a run](https://github.com/LabKey/docs/blob/master/images/signal1.png?raw=true)

1. Specify a Run Identifier (required).

![Drag-and-drop to upload a run](https://github.com/LabKey/docs/blob/master/images/signal2.png?raw=true)

### Data Upload

1. Drag-and-drop any result files you want to import onto the dropzone.

![Drag-and-drop to upload a run](https://github.com/LabKey/docs/blob/master/images/signal3.png?raw=true)

1. Click the **Save Run** button.

![Name and save a run](https://github.com/LabKey/docs/blob/master/images/signal4.png?raw=true)

## View Results ##

To view chromatograms for the results, follow these instructions:

1. Go to the folder where your results reside.
1. On the **Assay List** webpart, click the name of the Signal Data assay you created.
1. Select the run(s) you want to look at, using the checkboxes.
1. Click **View Selected Runs**.

![View runs](https://github.com/LabKey/docs/blob/master/images/hplc3.png?raw=true)

1. Select the data run(s) you wish to view from the left.
1. Click the `Overlay Selected` button.

![View runs](https://github.com/LabKey/docs/blob/master/images/hplc4.png?raw=true)

1. The left selection pane will close, and the overlayed results will be displayed in the center pane.

![View runs](https://github.com/LabKey/docs/blob/master/images/hplc5.png?raw=true)

1. You can zoom into the graph by entering values in the **Time** and **mV Range** text boxes, or by drawing a new area inside the graph using the mouse.

![View runs](https://github.com/LabKey/docs/blob/master/images/hplc6.png?raw=true)

Enter values in the right pane to calculate areas under the curves. Select in the name column to highlight different graph lines.

![View runs](https://github.com/LabKey/docs/blob/master/images/hplc7.png?raw=true)

## Installing the Signal Data Module ##

[Contact us](https://www.labkey.com/company/contact-us) for details on installing the Signal Data module.


3 changes: 3 additions & 0 deletions signalData/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
plugins {
id 'org.labkey.build.module'
}
7 changes: 7 additions & 0 deletions signalData/module.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
ModuleClass: org.labkey.signaldata.SignalDataModule
Label: signaldata
Description: A module defining general X/Y plottable assays and tools for working with those assays.
URL: https://github.com/LabKey/signalData
License: Apache 2.0
LicenseURL: http://www.apache.org/licenses/LICENSE-2.0
ManageVersion: true
7 changes: 7 additions & 0 deletions signalData/resources/assay/signalData/config.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<ap:provider xmlns:ap="http://labkey.org/study/assay/xml">
<ap:name>Signal Data</ap:name>
<ap:description>X/Y plottable Signal Data</ap:description>
<ap:requiredModules>
<ap:moduleName>SignalData</ap:moduleName>
</ap:requiredModules>
</ap:provider>
19 changes: 19 additions & 0 deletions signalData/resources/assay/signalData/domains/batch.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<ap:domain xmlns:exp="http://cpas.fhcrc.org/exp/xml" xmlns:ap="http://labkey.org/study/assay/xml">
<exp:Description>Signal Data Assay Batch fields</exp:Description>
<exp:PropertyDescriptor>
<exp:Name>XAxis</exp:Name>
<exp:Hidden>true</exp:Hidden>
<exp:RangeURI>http://www.w3.org/2001/XMLSchema#string</exp:RangeURI>
<exp:Label>X-Axis Label</exp:Label>
<exp:DefaultType>FixedValue</exp:DefaultType>
<exp:DefaultValue>Time (m)</exp:DefaultValue>
</exp:PropertyDescriptor>
<exp:PropertyDescriptor>
<exp:Name>YAxis</exp:Name>
<exp:Hidden>true</exp:Hidden>
<exp:RangeURI>http://www.w3.org/2001/XMLSchema#string</exp:RangeURI>
<exp:Label>Y-Axis Label</exp:Label>
<exp:DefaultType>FixedValue</exp:DefaultType>
<exp:DefaultValue>mV</exp:DefaultValue>
</exp:PropertyDescriptor>
</ap:domain>
14 changes: 14 additions & 0 deletions signalData/resources/assay/signalData/domains/result.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<ap:domain xmlns:exp="http://cpas.fhcrc.org/exp/xml" xmlns:ap="http://labkey.org/study/assay/xml">
<exp:Description>Signal Data Assay Results</exp:Description>
<exp:PropertyDescriptor>
<exp:Name>Name</exp:Name>
<exp:Required>true</exp:Required>
<exp:RangeURI>http://www.w3.org/2001/XMLSchema#string</exp:RangeURI>
</exp:PropertyDescriptor>
<exp:PropertyDescriptor>
<exp:Name>DataFile</exp:Name>
<exp:Required>true</exp:Required>
<exp:RangeURI>http://cpas.fhcrc.org/exp/xml#fileLink</exp:RangeURI>
<exp:Label>Data File</exp:Label>
</exp:PropertyDescriptor>
</ap:domain>
8 changes: 8 additions & 0 deletions signalData/resources/assay/signalData/domains/run.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<ap:domain xmlns:exp="http://cpas.fhcrc.org/exp/xml" xmlns:ap="http://labkey.org/study/assay/xml">
<exp:PropertyDescriptor>
<exp:Name>RunIdentifier</exp:Name>
<exp:Required>true</exp:Required>
<exp:RangeURI>http://www.w3.org/2001/XMLSchema#string</exp:RangeURI>
<exp:Label>Run Identifier</exp:Label>
</exp:PropertyDescriptor>
</ap:domain>
Loading