Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
779 commits
Select commit Hold shift + click to select a range
0e07f20
Relocate schemas to server/api
labkey-susanh Oct 22, 2018
b57d6fb
Merge branch 'develop' into fb_marty
labkey-martyp Oct 22, 2018
c876fc5
Cleanup test code
labkey-martyp Oct 22, 2018
fcc6a23
Merge pull request #1 from LabKey/fb_marty
labkey-martyp Oct 22, 2018
cf3f04e
Fix SND LSID authority on truncate.
labkey-martyp Oct 22, 2018
a0633bf
Consolidate SQL scripts and bump module versions for release 18.3
labkey-adam Oct 26, 2018
5ece339
added getActiveProjects to api
spamhurts Oct 29, 2018
cf3ece5
refactored activeProjects code
spamhurts Oct 29, 2018
1d38d0b
Merge pull request #2 from LabKey/fb_project_api
spamhurts Oct 29, 2018
bd442eb
Merge pull request #3 from LabKey/fb_project_api
spamhurts Oct 29, 2018
6e5e857
Added ObjectId to toShallowMap
spamhurts Nov 8, 2018
4d0aef2
Copyright and license updates
labkey-eyounske Nov 9, 2018
cf984db
Copyright and license updates
labkey-eyounske Nov 13, 2018
8513242
snprc - refined active project selection
spamhurts Nov 16, 2018
3552cc1
Obsolete incremental scripts from 18.2 dev cycle
labkey-adam Dec 5, 2018
7b51e52
snprc - API changes
spamhurts Dec 13, 2018
c277e9a
Remove stub class
labkey-tchad Dec 19, 2018
1f9973e
Deprecate RedirectAction.doAction() and provide default implementatio…
labkey-adam Jan 17, 2019
8e8703f
Use correct action to stop impersonating
labkey-tchad Jan 21, 2019
6844c0e
Issue 36582: Split RedirectAction
labkey-adam Jan 22, 2019
984749d
Merge branch 'develop' of https://github.com/LabKey/snd into develop
labkey-adam Jan 22, 2019
0859edd
Need to POST to stop impersonating
labkey-tchad Jan 23, 2019
060735b
snprc - Changes to controller redirect action
spamhurts Jan 24, 2019
0fdd564
Update git ignore
labkey-martyp Jan 28, 2019
1d71ddc
Merge branch 'develop' into fb_snprc_scheduler_dev_server
labkey-martyp Jan 28, 2019
c080bd2
Merge pull request #4 from LabKey/fb_snprc_scheduler_dev_server
labkey-martyp Jan 28, 2019
3b4073b
Don't use JSON library from server API
labkey-tchad Jan 30, 2019
f17c409
Don't reparse JSON response from JavaScript
labkey-tchad Jan 31, 2019
ec080ec
Don't set a custom pipeline root
labkey-tchad Feb 1, 2019
7c8cdc9
Module bumps to 19.1 (all except CDS)
labkey-dave Feb 25, 2019
2b7013a
Fb snprc snd test fixes
labkey-martyp Feb 26, 2019
6d157ea
Fb snprc snd test fixes
labkey-martyp Mar 2, 2019
2143e02
Issue 37029: SND test fix for 19.1 CR: JE, TC
labkey-martyp Mar 14, 2019
8ae48a0
Item 5351: ApiAction review and migration
labkey-ankurj Mar 14, 2019
e3ac0c7
Merge remote-tracking branch 'origin/release19.1' into develop
labkey-tchad Mar 15, 2019
1d1d3f1
Added missing comma.
labkey-ankurj Mar 19, 2019
19d0248
Remove unused ApiAction imports
labkey-adam Mar 21, 2019
cf6f0b7
Update schemaLocation for new api module location
labkey-susanh Mar 27, 2019
4195ee6
Merge pull request #14 from LabKey/fb_schemaLocations
labkey-susanh Mar 27, 2019
799ac41
Create .gitattributes
labkey-klum Apr 17, 2019
a89326c
Test updates due to change in error logging
labkey-martyp May 10, 2019
7e938c5
Immutable tableinfo
labkey-adam May 15, 2019
fba43e5
Use shared code path for creating API Connections
labkey-tchad May 22, 2019
b18c646
Remove unnecessary synchronization
labkey-adam May 28, 2019
f7a1612
Fix DbSequence-related build break
labkey-adam May 29, 2019
f851a14
Use Math.toIntExact
labkey-martyp May 29, 2019
8591a84
Update packages with security alerts. Fix sort issue in category form…
labkey-martyp Jun 11, 2019
669d995
Issue 36854: Move JSON to Domain/Property methods out of ExperimentSe…
labkey-martyp Jun 11, 2019
a6667c1
Issue 36854: SND property descriptor marshalling and unmarshalling
labkey-martyp Jun 12, 2019
9a2a210
Item 5698 : [LabKey UX] Add/remove fields - added try/catch to catch …
labkey-bpatel Jun 19, 2019
e4d9002
Item 5760: update copyrights to 2019
labkey-ankurj Jul 8, 2019
7d1ad15
5869: Consolidate 19.2 release scripts
labkey-adam Jul 9, 2019
72596b0
Merge branch 'develop' into merge_19.2_develop
labkey-tchad Jul 10, 2019
bc19f8d
Merge 19.2-SNAPSHOT to develop
labkey-tchad Jul 10, 2019
e4e8ac4
Update package-lock.json files for new vesrion of npm
labkey-susanh Jul 18, 2019
8d2859f
fb_ticket_38326 - added Security Roles and Permissions for SND Packag…
spamhurts Aug 26, 2019
59fc693
Issue 37504: ProjectItemIds passed through UI
labkey-martyp Aug 26, 2019
278320d
Ticket 38257: Deactivating an assigned package does not enable save b…
labkey-martyp Aug 26, 2019
9ba8914
Migrate from @Deprecated RedirectAction to SimpleRedirectAction
labkey-adam Sep 3, 2019
88bc767
Fb issue37504
spamhurts Sep 5, 2019
bac44c6
Added permissions and roles for viewing and editing Projects
spamhurts Sep 12, 2019
97a0a78
Builds
Sep 16, 2019
27a299e
Merge pull request #38 from LabKey/fb_migrate_module_deps
Sep 25, 2019
0694dab
Update build.gradle
Sep 27, 2019
e6847a8
Merge pull request #39 from LabKey/fb_migrate_module_deps_spelling
Sep 27, 2019
062c20c
Issue 38666: Package save errors not being handled correctly
labkey-martyp Oct 24, 2019
63d13d1
Bump mixin-deep from 1.3.1 to 1.3.2
dependabot[bot] Oct 30, 2019
93aaac9
SQL script consolidation
Nov 5, 2019
92eae10
Merge release19.3-SNAPSHOT to develop
labkey-tchad Nov 5, 2019
8687a82
fb_snd_auditing - added detailed auditing to tables: "Pkgs" "SuperPkg…
spamhurts Nov 7, 2019
0489446
Pkgs.modified column added to getActiveProjects JSON results - this f…
spamhurts Nov 12, 2019
547df11
Added modified column to Package bean. This column will be used as a …
spamhurts Nov 14, 2019
3fab1d5
fixed createEvent() to allow optional event notes
spamhurts Dec 6, 2019
3b5957d
Bumped the starting value of the EventData ID sequencer to 3 million.…
spamhurts Dec 9, 2019
08a3a35
Bump versions to 20.000
labkey-adam Jan 24, 2020
7a73155
Remove "obsolete" directories and scripts
labkey-adam Jan 24, 2020
16ab9db
Migrate to getSchemaVersion()
labkey-adam Feb 10, 2020
a933b02
Epic 6798 : List Domain Designer Conversion
labkey-bpatel Feb 27, 2020
e6409fb
Bump lodash-es from 4.17.10 to 4.17.15
dependabot[bot] Mar 11, 2020
7fd41a8
Bump lodash from 4.17.10 to 4.17.15
dependabot[bot] Mar 11, 2020
3253a20
Bump lodash.merge from 4.6.1 to 4.6.2
dependabot[bot] Mar 11, 2020
e305ad5
Ticket 39929: SND import missing non-lookup default values
labkey-martyp Mar 11, 2020
abeb0f6
Test fixes, eliminate many StringKey class variants
labkey-jeckels Mar 25, 2020
f9f6e1e
Earliest upgrade version is now 18.10. Consolidate bootstrap scripts …
labkey-adam Apr 1, 2020
8d305a8
Create pull_request_template.md
labkey-klum Apr 30, 2020
a07b560
MutableColumnInfo
labkey-matthewb May 1, 2020
dbed2a0
appendNavTrail() to addNavTrail() migration
labkey-adam May 27, 2020
00a1d8f
Add release workflow definitions
labkey-tchad Jun 25, 2020
16b8146
Consolidate SQL Server bootstrap scripts to 0.00-18.20.sql
labkey-adam Aug 3, 2020
828f0d0
Item 7490: upgrade log4j
labkey-ankurj Aug 5, 2020
0f6e629
Use urlFor() instead of buildURL(). Stop encoding ints.
labkey-adam Sep 10, 2020
dce53d0
SND table changes and improvements to SND table CRUD performance for …
spamhurts Sep 24, 2020
75d7e99
Switch to DisplayColumn.getFormattedHtml() and use HtmlString
labkey-jeckels Sep 27, 2020
f07caaf
PlainTextNarrative.getDisplayValue override
labkey-martyp Oct 16, 2020
9bdde08
GetEvent and SaveEvent APIs return full superpackages even if no data…
labkey-martyp Nov 2, 2020
a08d226
Changed 1-24 hour format to 0-23
spamhurts Nov 4, 2020
46264d6
Generate files into gen directory for better build caching
labkey-susanh Nov 4, 2020
86b8675
1. Do not try to insert into or update the EventNotes table if the ev…
spamhurts Dec 14, 2020
7776090
Add PR validation workflow
labkey-tchad Dec 15, 2020
5ab5e96
add plugins block in anticipation of removal of modules/build.gradle
labkey-susanh Dec 23, 2020
abdcc25
Schema bump to 21.000
labkey-adam Dec 30, 2020
3cb005a
Fix SND
labkey-nicka Jan 6, 2021
13578f0
removed detailed auditing from snd.PkgCategoryJunction
spamhurts Feb 19, 2021
3519be8
Removed datailed logging from LookupSets and PkgCategoryJunction
spamhurts Mar 11, 2021
4b450e7
Add PackageAttribute table
labkey-martyp Mar 12, 2021
5e8415c
Do not try to process triggers if there is no EventDatas attached to …
spamhurts Mar 23, 2021
79bf9fc
Rename action branch to develop
labkey-tchad Apr 22, 2021
017b6bb
Add loadRows to SND table QUSes
labkey-martyp May 5, 2021
a12b1ac
Don't try to save attribute data if property value is null
spamhurts May 17, 2021
6ff3490
Update PackageAttribute table query
labkey-martyp Jun 4, 2021
5d24692
Update the attributes from the pipeline job unconditionally
spamhurts Jun 7, 2021
213bdf1
Add triggers to prevent truncate on lookup tables
labkey-martyp Jun 15, 2021
24f9d6f
SecurityManager.getPermissions()
labkey-matthewb Jun 17, 2021
6fcc87c
Issue 38598: Property validator refactor
labkey-martyp Jul 20, 2021
1146897
Updates for SND lookups editing
spamhurts Aug 30, 2021
6240202
Item 9192: Initial modifications to support sample status
labkey-susanh Sep 28, 2021
2793aa4
Add contextual role for table access from APIs
labkey-martyp Nov 17, 2021
9abfeb2
Merge 21.11 to develop
labkey-teamcity Nov 18, 2021
bc17264
Bump all schema versions to 22.000
labkey-adam Dec 30, 2021
042acba
Consolidate bootstrap scripts to 0.000-21.000.sql
labkey-adam Jan 16, 2022
15a9810
Update getReservedPropertyNames params
labkey-martyp Feb 4, 2022
c8706ab
Merge 21.11.7 to 22.2
labkey-teamcity Feb 9, 2022
d1a1071
Merge 22.2 to develop
labkey-teamcity Feb 10, 2022
54d49bc
Don't use HashSet for column lists
labkey-adam Mar 21, 2022
2c365c1
Remove unselectable metadata for lsid column in snd extensible tables
ankurjuneja Apr 8, 2022
35bf865
Fix ClassCastException with MS JDBC driver
labkey-jeckels Jun 24, 2022
e673bff
Repackage JSONObject and JSONArray
labkey-adam Sep 21, 2022
6753522
Update schema versions to 23.000
labkey-adam Dec 30, 2022
13a4d81
Consolidate SQL Server scripts to 0.000-22.000.sql
labkey-adam Jan 7, 2023
e767081
Issue 47050: SND qc states scoped by container
labkey-martyp Jan 10, 2023
ca589e7
Update data.js
labkey-martyp Mar 6, 2023
ee6b7c2
Merge 23.3 to develop
labkey-teamcity Mar 8, 2023
238775b
Migrate to new JSONObject library
labkey-adam Apr 7, 2023
95e4962
Update GitHub workflows to use checkout v3
labkey-tchad May 31, 2023
9f7cc1d
added auditLogging to lookupsets
jallentxbiomed Jun 27, 2023
848fc54
Merge 23.3 to develop
labkey-teamcity Jun 30, 2023
341de79
Increased default value of EventDataId in SNDSequencer
spamhurts Aug 1, 2023
a57f095
Merge 23.7 to 23.8
labkey-teamcity Aug 2, 2023
4dac96e
Add IsInUse column to LookupSets and Lookups tables
jallentxbiomed Aug 9, 2023
32dcab0
Merge 23.8 to develop
labkey-teamcity Aug 9, 2023
dbe4f05
Merge 23.7 to 23.8
labkey-teamcity Aug 14, 2023
479bf4c
Merge 23.8 to develop
labkey-teamcity Aug 16, 2023
3d3765b
Added code to check for note element availability in the JsonObject. …
RameshRapa Aug 16, 2023
683db7d
Merge 23.7 to develop
labkey-teamcity Aug 22, 2023
73f2e68
Issue 48499: Use preferred SecurityPolicyManager.savePolicy() variant
labkey-jeckels Aug 29, 2023
61bfb35
Schema update and fix
spamhurts Sep 14, 2023
dcd3a08
Merge 23.7 to 23.9
labkey-teamcity Sep 19, 2023
20924c9
Merge 23.9 to develop
labkey-teamcity Sep 20, 2023
80e9fcc
New superPackages database function
spamhurts Sep 25, 2023
24aa0bf
Merge 23.7 to develop
labkey-teamcity Sep 26, 2023
de3351a
Optimize EventData Cache Insert process
jallentxbiomed Oct 19, 2023
99d2e32
Merge 23.7 to develop
labkey-teamcity Oct 24, 2023
36bbb4b
Add nonces to popular pages
labkey-adam Nov 16, 2023
32b6359
Extend Basic Submitter capabilities
spamhurts Nov 30, 2023
bf2d774
Merge 23.11 to 23.12
labkey-teamcity Dec 5, 2023
7d2fc22
Merge 23.12 to develop
labkey-teamcity Dec 6, 2023
d64a054
Add eventDate to getActiveProjects and update method to get all proje…
jallentxbiomed Dec 19, 2023
060c016
Remove deprecated ContainerFilter.getSQLFragment
labkey-nicka Dec 21, 2023
7d253aa
Merge 23.11 to develop
labkey-teamcity Dec 26, 2023
49e26a6
Update schema version to 24.000
labkey-adam Jan 2, 2024
9283772
Move display column factory
labkey-martyp Jan 11, 2024
74ff769
Merge 23.11 to 24.1
labkey-teamcity Jan 16, 2024
3673a94
Merge 24.1 to develop
labkey-teamcity Jan 17, 2024
a65c596
Remove unnecessary conditional in SNDManager
jallentxbiomed Jan 22, 2024
52a1857
Merge 23.11 to develop
labkey-teamcity Jan 23, 2024
227a471
Made Code Changes for Widget Narrative Population using the api call …
RameshRapa Feb 16, 2024
6080b6c
Add nonces to script tags
labkey-adam Feb 19, 2024
1b3849e
Merge 23.11 to develop
labkey-teamcity Feb 20, 2024
87c6734
Migrate inline handlers
labkey-adam Mar 8, 2024
5b6d7c2
Missing property descriptor for attribute exception handling
spamhurts Mar 21, 2024
24b8213
Changed attributeData.propertyName encoding method to Lsid.encodePart().
spamhurts Mar 22, 2024
5496a68
Merge 23.11 to 24.3
labkey-teamcity Mar 25, 2024
7d4c27e
Merge 24.3 to develop
labkey-teamcity Mar 26, 2024
68b59a5
Optimize getEvent methods to decrease query time
jallentxbiomed Apr 22, 2024
a8144c1
Merge 23.11 to 24.3
labkey-teamcity Apr 29, 2024
516ed72
Merge 24.3 to develop
labkey-teamcity Apr 30, 2024
04bc50e
Remove hidden lookup values from attribute dropdown fields
spamhurts May 7, 2024
97d5623
Merge 23.11 to 24.3
labkey-teamcity May 13, 2024
bc2112c
Merge 24.3 to 24.5
labkey-teamcity May 14, 2024
1481d57
Merge 24.5 to develop
labkey-teamcity May 15, 2024
28f0c18
Update stored procedure definition to follow our conventions
labkey-adam Jun 11, 2024
a64adbc
added active column to query
jallentxbiomed Jul 23, 2024
192aa62
Migrate <permission name="login"/> to <requiresLogin/>
labkey-adam Jul 24, 2024
037acaa
Merge 23.11 to 24.3
labkey-teamcity Jul 26, 2024
50748f0
Merge 24.3 to 24.7
labkey-teamcity Jul 29, 2024
a67eab3
removed boolean that only checked for missing eventDataId
jallentxbiomed Aug 1, 2024
4815b9f
Merge 23.11 to 24.3
labkey-teamcity Aug 2, 2024
41d0c32
Migrate <permission name="login"/> to <requiresLogin/>
labkey-adam Aug 2, 2024
28b1d3b
Merge 24.3 to 24.7
labkey-teamcity Aug 2, 2024
2a9d158
Merge 24.7 to 24.8
labkey-teamcity Aug 6, 2024
eb77aa5
SND Role Impersonation
labkey-martyp Aug 6, 2024
a17982c
Merge 24.8 to develop
labkey-teamcity Aug 7, 2024
7fc388c
Jira issue 124: SND - Add new security roles and permissions for cont…
spamhurts Aug 7, 2024
33d8998
Jira issue 128: SND - Update SND Event related tables to require SNDV…
spamhurts Aug 8, 2024
1a9da46
Merge 23.11 to 24.3
labkey-teamcity Aug 9, 2024
332038c
Fixed issue where certain subpackages were not getting populated in t…
jallentxbiomed Aug 9, 2024
58b740b
Merge 24.7 to 24.8
labkey-teamcity Aug 9, 2024
cd64c28
Merge 24.3 to 24.7
labkey-teamcity Aug 12, 2024
d881a0d
Merge 24.7 to 24.8
labkey-teamcity Aug 13, 2024
d623875
Merge 24.8 to develop
labkey-teamcity Aug 14, 2024
a432181
new feature branch from snapshot
jallentxbiomed Aug 14, 2024
cde702b
Merge 23.11 to 24.3
labkey-teamcity Aug 16, 2024
d944bc3
Merge 24.3 to 24.7
labkey-teamcity Aug 19, 2024
a980ff1
Merge 24.7 to develop
labkey-teamcity Aug 27, 2024
f240a68
Fix up package lock file for newer NPM version
labkey-tchad Sep 9, 2024
2f3ab8e
Handle getEvent processing where multiple top-level EventData entries…
jallentxbiomed Sep 24, 2024
b364f7f
Merge 23.11 to 24.3
labkey-teamcity Sep 27, 2024
2559335
Merge 24.3 to 24.7
labkey-teamcity Sep 30, 2024
1495db0
Merge 24.7 to 24.10
labkey-teamcity Oct 1, 2024
3ddf129
Merge 24.10 to develop
labkey-teamcity Oct 2, 2024
f4c6f84
Handle Merge on EventId for EventNotes and Speed up NarrativeCache po…
jallentxbiomed Nov 1, 2024
4a903a1
Merge 24.7 to 24.11
labkey-teamcity Nov 5, 2024
aa9c657
Bump schema versions to 25.000
labkey-adam Dec 31, 2024
447b1b3
snd/packages and snd/categories schema
labkey-matthewb Jan 7, 2025
6ffe482
Ticket 51949: Attribute table truncate SQL
labkey-martyp Jan 8, 2025
d334e52
EventData Table truncate SQL
labkey-martyp Jan 9, 2025
69cc14a
EventData ETL fix
labkey-martyp Jan 10, 2025
11cc621
Reduced MAX_MERGE_ROWS from 10000 to 2000
spamhurts Feb 11, 2025
96d15ad
Updated mergeRows in EventDataTable and AttributeDataTable.
spamhurts Feb 24, 2025
6dddae7
Rehome snd module
labkey-tchad May 1, 2026
ca345a2
DisplayColumn refactor
labkey-adam Mar 18, 2025
f1ace39
SND Query Provisioned snapshot automation test
labkey-sweta Mar 13, 2025
66f9acb
changed sort from superPkgId to eventDataId
jallentxbiomed Mar 20, 2025
e598b9d
changed max rows for Events ETL
jallentxbiomed Mar 20, 2025
a86004b
Issue 52614: AssertionError deleting site group from its details page
labkey-jeckels Mar 25, 2025
bd396db
added check for null eventData subpackages
jallentxbiomed Mar 27, 2025
2d671ac
Remove unnecessary HttpView.currentView() casts in JSPs
labkey-adam Apr 7, 2025
1a0b6ee
Stop creating and managing the Site Administrators and Developers groups
labkey-adam Apr 10, 2025
4205938
Filter admin and dev from SND permission UI
labkey-martyp Apr 17, 2025
d5f52cd
Add forUpdate parameter to more methods that are getting domains
labkey-susanh Jun 4, 2025
2a420ab
Minor auto-refactor code cleanup on a massive scale
labkey-jeckels Jun 11, 2025
aa7756b
Issue 52277: SNDTest.testSuperPackageApis fails with DB deadlock
labkey-jeckels Jun 26, 2025
4b214be
This Commit has code changes for adding of sortOrder to the getPackag…
RameshRapa Jul 1, 2025
e07ad6d
Rename SaveRowsResponse to RowsResponse
labkey-nicka Jul 18, 2025
4e2b4be
Support BIGINT Primary Keys
labkey-matthewb Aug 14, 2025
20358f1
trim spaces on eventDataNarrative attribute brackets
jallentxbiomed Aug 13, 2025
a7150a0
Fix intermittent failure in SNDTest and cleanup some helpers
labkey-tchad Aug 28, 2025
bc444ba
Actually wait for SND permissions to propagate
labkey-tchad Aug 29, 2025
2f65d9c
Give EHRSecurityEscalationDomainKind a unique prefix
labkey-adam Sep 3, 2025
896b0f2
Reference security-category table columns by header text
labkey-chrisj Oct 1, 2025
6517cf9
ExperimentDataHandler File->FileLike
labkey-jeckels Oct 16, 2025
3cd7e53
Mark SND and EHR_ComplianceDB as schema version managed by LabKey
labkey-adam Dec 11, 2025
3579259
Bump schema versions to 26.000
labkey-adam Jan 1, 2026
9cb9f60
Consolidate SQL scripts to *-0.000-25.000.sql
labkey-adam Jan 7, 2026
2e8a52e
SecurityPolicy methods now return streams
labkey-adam Jan 29, 2026
5b26025
Adjust redirect handling
labkey-adam Feb 25, 2026
c9c51b2
ImpersonationContext -> PermissionsContext rename/repackage
labkey-adam Feb 27, 2026
49cfcc2
Stop passing SecurityPolicy parameter to Role.isApplicable()
labkey-adam Mar 23, 2026
f2c18e9
Migrate SND to PostgreSQL
labkey-adam Apr 11, 2026
022890d
Move snd module to snprcEhrModules
labkey-tchad May 2, 2026
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
16 changes: 16 additions & 0 deletions snd/.babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"presets": [["env", {
"targets": {
"browsers": ["> 0.2%", "last 2 versions", "Firefox 45", "not dead"]
}
}
], "react"],
"env": {
"development": {
"presets": ["react-hmre"]
},
"test": {
"plugins": ["transform-es2015-modules-commonjs"]
}
}
}
1 change: 1 addition & 0 deletions snd/.gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* text=auto
9 changes: 9 additions & 0 deletions snd/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
node_modules
app.css
app.css.map
app.js
app.js.map
.labkey
import
resources/web/snd/app/style.js
.gradle
202 changes: 202 additions & 0 deletions snd/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.

1 change: 1 addition & 0 deletions snd/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# snd
143 changes: 143 additions & 0 deletions snd/api-src/org/labkey/api/snd/AttributeData.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
/*
* Copyright (c) 2018 LabKey Corporation
*
* 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.
*/
package org.labkey.api.snd;

import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.json.JSONObject;
import org.labkey.api.data.Container;
import org.labkey.api.gwt.client.model.GWTPropertyDescriptor;
import org.labkey.api.query.ValidationException;
import org.labkey.api.security.User;

/**
* Class for attribute data and related methods. Used in EventData class
*/
public class AttributeData
{
private int _propertyId = -1;
private String _propertyName;
private GWTPropertyDescriptor _propertyDescriptor;
private String _value;
private ValidationException _exception;

public static final String ATTRIBUTE_DATA_PROPERTY_ID = "propertyId";
public static final String ATTRIBUTE_DATA_PROPERTY_NAME = "propertyName";
public static final String ATTRIBUTE_DATA_PROPERTY_DESCRIPTOR = "propertyDescriptor";
public static final String ATTRIBUTE_DATA_VALUE = "value";

public static final String ATTRIBUTE_DATA_CSS_CLASS = "snd-attribute-data";

public static final String DATE_TIME_FORMAT = "yyyy-MM-dd'T'HH:mm:ss"; // ISO8601 w/24-hour time and 'T' character
public static final String DATE_FORMAT = "yyyy-MM-dd"; // ISO8601

public AttributeData(int propertyId, @Nullable GWTPropertyDescriptor propertyDescriptor, @Nullable String value)
{
_propertyId = propertyId;
_propertyDescriptor = propertyDescriptor;
_value = value;
}

public AttributeData(String propertyName, @Nullable GWTPropertyDescriptor propertyDescriptor, @Nullable String value)
{
_propertyName = propertyName;
_propertyDescriptor = propertyDescriptor;
_value = value;
}

public AttributeData()
{}

public int getPropertyId()
{
return _propertyId;
}

public void setPropertyId(int propertyId)
{
_propertyId = propertyId;
}

public String getPropertyName()
{
return _propertyName;
}

public void setPropertyName(String propertyName)
{
_propertyName = propertyName;
}

public ValidationException getException()
{
return _exception;
}

public void setException(Event event, ValidationException exception)
{
_exception = exception;
event.updateExceptionCount(exception);
}

@Nullable
public GWTPropertyDescriptor getPropertyDescriptor()
{
return _propertyDescriptor;
}

public void setPropertyDescriptor(GWTPropertyDescriptor propertyDescriptor)
{
_propertyDescriptor = propertyDescriptor;
}

@Nullable
public String getValue()
{
return _value;
}

public void setValue(String value)
{
_value = value;
}

@NotNull
public JSONObject toJSON(Container c, User u)
{
JSONObject json = new JSONObject();
if (getPropertyId() != 0)
json.put(ATTRIBUTE_DATA_PROPERTY_ID, getPropertyId());

if (getPropertyName() != null)
json.put(ATTRIBUTE_DATA_PROPERTY_NAME, getPropertyName());

if (getPropertyDescriptor() != null)
json.put(ATTRIBUTE_DATA_PROPERTY_DESCRIPTOR, SNDService.get().convertPropertyDescriptorToJson(c, u, getPropertyDescriptor(), true));

// We want to ensure the attribute is returned even if null
json.put(ATTRIBUTE_DATA_VALUE, getValue() == null ? JSONObject.NULL : getValue());

if (_exception != null)
{
JSONObject jsonException = new JSONObject();
jsonException.put(Event.SND_EXCEPTION_MSG_JSON, _exception.getMessage());
jsonException.put(Event.SND_EXCEPTION_SEVERITY_JSON, _exception.getSeverity());
json.put(Event.SND_EXCEPTION_JSON, jsonException);
}

return json;
}
}
Loading
Loading