Skip to content
This repository has been archived by the owner on Aug 28, 2024. It is now read-only.

Commit

Permalink
Merge pull request #118 from Esri/dev
Browse files Browse the repository at this point in the history
First Release of GRG Widget
  • Loading branch information
adgiles authored Sep 29, 2017
2 parents fdbc9ce + dd44059 commit 31fc5f6
Show file tree
Hide file tree
Showing 96 changed files with 12,801 additions and 12 deletions.
5 changes: 5 additions & 0 deletions .brackets.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"jscodehints.detectedExclusions": [
"D:/Projects/WebAppBuilder/arcgis-web-appbuilder-1.0beta2/client/stemapp/widgets/solutions-webappbuilder-widgets/ImageMensuration/nls/strings.js"
]
}
195 changes: 195 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,195 @@
# Defense Template specific ignores
application/
data/
maps/
scratch/
log/
arc.dir
#*.pyt.xml -- We cannot ignore these files... these are documentation
*.zip
*.zip
*.7z
*-old.*
*-old
*-sav
*-sav.*
*Copy.*
*.log
*.sav
*.pyproj
*.sln

#############
## Python
#############

*.py[co]

# Packages
*.egg
*.egg-info
dist
build
eggs
parts
bin
var
sdist
develop-eggs
.installed.cfg

#################
## Visual Studio
#################

# Build Folders (you can keep bin if you'd like, to store dlls and pdbs)
[Bb]in/
[Oo]bj/

#################
## Eclipse
#################

# General
.metadata
bin/
tmp/
dist/
*.tmp
*.bak
*.swp
*~.nib

# Eclipse
local.properties
.classpath
.settings/
.loadpath

# External tool builders
.externalToolBuilders/

# Locally stored "Eclipse launch configurations"
*.launch

# CDT-specific
.cproject

# PDT-specific
.buildpath
# mstest test results
TestResults

## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.

# User-specific files
*.suo
*.user
*.sln.docstates

# Build results
[Dd]ebug/
[Rr]elease/
x64/
*_i.c
*_p.c
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.log
*.vspscc
*.vssscc
.builds

# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opensdf
*.sdf

# Visual Studio profiler
*.psess
*.vsp
*.vspx

# Guidance Automation Toolkit
*.gpState

# ReSharper is a .NET coding add-in
_ReSharper*

# NCrunch
*.ncrunch*
.*crunch*.local.xml

# Installshield output folder
[Ee]xpress

# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html

# Click-Once directory
publish

# Publish Web Output
*.Publish.xml

# NuGet Packages Directory
packages

# Windows Azure Build Output
csx
*.build.csdef

# Windows Store app package directory
AppPackages/

# Others
[Bb]in
[Oo]bj
sql
TestResults
[Tt]est[Rr]esult*
*.Cache
ClientBin
[Ss]tyle[Cc]op.*
~$*
*.dbmdl
Generated_Code #added for RIA/Silverlight projects

# Backup & report files from converting an old project file to a newer
# Visual Studio version. Backup files are not needed, because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML

############
## Windows
############

# Windows image file caches
Thumbs.db

# Folder config file
Desktop.ini

*.lock
26 changes: 26 additions & 0 deletions .jscsrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{
"requireOperatorBeforeLineBreak": true,
"maximumLineLength": {
"value": 100,
"allowComments": true,
"allowRegex": true
},
"validateIndentation": 2,
"disallowMultipleLineStrings": true,
"disallowMixedSpacesAndTabs": true,
"disallowTrailingWhitespace": true,
"requireSpaceAfterKeywords": [
"return"
],
"requireSpaceBeforeBinaryOperators": ["=",
"+",
"-",
"/",
"*",
"==",
"===",
"!=",
"!=="
],
"requireSpaceAfterBinaryOperators": true
}
100 changes: 100 additions & 0 deletions .jshintrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
{
// JSHint Configuration, esri jsapi
// Modified from [jshint web defaults][1].
// Differences between the default and our file are noted
// Options that are commented out completely are uneccesary or problematic for our codebase
// [1] : https://github.com/jshint/jshint/blob/2.x/examples/.jshintrc
// See http://jshint.com/docs/ for more details

"maxerr" : 5000, // {int} Maximum error before stopping ** Get ALL the errors **

// Enforcing - true = enforce this rule, false = don't enforce this rule
"bitwise" : true, // true: Prohibit bitwise operators (&, |, ^, etc.)
"camelcase" : true, // true: Identifiers must be in camelCase
"curly" : true, // true: Require {} for every new block or scope
"freeze" : true, // prevents modification to of native objects. Generally a bad iadea unless you know what you are doing.
"eqeqeq" : true, // true: Require triple equals (===) for comparison ** Just use triples with undefined, null, false, 0 and 1 **
"es3" : true, // true: Adhere to ECMAScript 3 specification ** Still needed until IE8 support is dropped **
"forin" : true, // true: Require filtering for..in loops with obj.hasOwnProperty() ** Still needed until IE8 support is dropped **
"immed" : true, // true: Require immediate invocations to be wrapped in parens e.g. `(function () { } ());` ** Avoids confusion and minification errors **
"latedef" : false, // true: Require variables/functions to be defined before being used
"newcap" : true, // true: Require capitalization of all constructor functions e.g. `new F()` ** Coding style enforcement **
"noarg" : true, // true: Prohibit use of `arguments.caller` and `arguments.callee`
"noempty" : true, // true: Prohibit use of empty blocks
"nonew" : true, // true: Prohibit use of constructors for side-effects (without assignment) ** Coding style enforcement **
"plusplus" : false, // true: Prohibit use of `++` & `--`
"quotmark" : true, // Quotation mark consistency: ** Use the same style. Single should be used in most cases **
// false : do nothing (default)
// true : ensure whatever is used is consistent
// "single" : require single quotes
// "double" : require double quotes
"undef" : true, // true: Require all non-global variables to be declared (prevents global leaks)
"unused" : "vars", // true: Require all defined variables be used
"strict" : false, // true: Requires all functions run in ES5 Strict Mode ** Dojo style and existing codebase conflicts **
"trailing" : false, // true: Prohibit trailing whitespaces
"indent" : 2, // {int} Number of spaces to use for indentation
//"maxparams" : false, // {int} Max number of formal params allowed per function
"maxdepth" : 3, // {int} Max depth of nested blocks (within functions)
"maxstatements" : 15, // {int} Max number statements per function
//"maxcomplexity" : false, // {int} Max cyclomatic complexity per function
"maxlen" : 120, // {int} Max number of characters per line

// Relaxing - false = continue to enforce this rule, true = don't enforce this rule (relax it)
"asi" : false, // true: Tolerate Automatic Semicolon Insertion (no semicolons)
"boss" : false, // true: Tolerate assignments where comparisons would be expected
"debug" : false, // true: Allow debugger statements e.g. browser breakpoints.
"eqnull" : true, // true: Tolerate use of `== null`
"es5" : false, // true: Allow ES5 syntax (ex: getters and setters)
"esnext" : false, // true: Allow ES.next (ES6) syntax (ex: `const`)
"moz" : false, // true: Allow Mozilla specific syntax (extends and overrides esnext features)
// (ex: `for each`, multiple try/catch, function expression…)
"evil" : false, // true: Tolerate use of `eval` and `new Function()`
"expr" : false, // true: Tolerate `ExpressionStatement` as Programs
"funcscope" : true, // true: Tolerate defining variables inside control statements ** Other variable checks keep use from abusing this **
"globalstrict" : false, // true: Allow global "use strict" (also enables 'strict')
"iterator" : false, // true: Tolerate using the `__iterator__` property
"lastsemic" : false, // true: Tolerate omitting a semicolon for the last statement of a 1-line block
"laxbreak" : false, // true: Tolerate possibly unsafe line breakings
"laxcomma" : false, // true: Tolerate comma-first style coding
"loopfunc" : true, // true: Tolerate functions being defined in loops ** Almost required in some callback & promise style code **
"multistr" : false, // true: Tolerate multi-line strings
"proto" : false, // true: Tolerate using the `__proto__` property
"scripturl" : true, // true: Tolerate script-targeted URLs ** If this is being used, there is probably a good reason **
"smarttabs" : false, // true: Tolerate mixed tabs/spaces when used for alignment
"shadow" : false, // true: Allows re-define variables later in code e.g. `var x=1; x=2;`
"sub" : false, // true: Tolerate using `[]` notation when it can still be expressed in dot notation
"supernew" : false, // true: Tolerate `new function () { ... };` and `new Object;`
"validthis" : true, // true: Tolerate using this in a non-constructor function ** We don't run in `strict mode` & coding style conflicts **

// Environments
"browser" : true, // Web Browser (window, document, etc)
"devel" : true, // Development/debugging (alert, confirm, etc)
"couch" : false, // CouchDB
"dojo" : false, // Dojo Toolkit ** Don't use global dojo objects. Use AMD style coding **
"jquery" : false, // jQuery
"mootools" : false, // MooTools
"node" : false, // Node.js
"nonstandard" : false, // Widely adopted globals (escape, unescape, etc)
"prototypejs" : false, // Prototype and Scriptaculous
"rhino" : false, // Rhino
"worker" : false, // Web Workers ** Make a jshint comment when this is `true` **
"wsh" : false, // Windows Scripting Host
"yui" : false, // Yahoo User Interface

// Legacy ** According to jshint docs, these options are NOT to be used or relied on. Removing them.
//"nomen" : false, // true: Prohibit dangling `_` in variables
//"onevar" : false, // true: Allow only one `var` statement per function
//"passfail" : false, // true: Stop on first error
//"white" : false, // true: Check against strict whitespace and indentation rules

// Custom Globals - additional predefined global variables
// Using both `predef` and `globals` to support tools with older jshint parsers
"predef" : [
"define",
"require"
],
"globals" : { // ** `false` = don't allow variable to be redefined locally
"define": false,
"require": false
}
}
49 changes: 49 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
Contributing to the GRG Widget Repository
=========================================

Esri welcomes contributions from anyone and everyone. Please see our [guidelines for contributing](https://github.com/esri/contributing).

- ***All development work is to be performed in a branch and when ready for release committed to master.***
- ***Your code is required to adhere to coding rules using [JS Hint](http://www.jshint.com/) and [JSCS](http://jscs.info/). There is a .jshintrc file and .jscs file included in the root folder which enforces these styles.***

Issues
------
Feel free to submit issues and enhancement requests.

Contributing
------------
Please refer to each project's style guidelines and guidelines for submitting patches and additions. In general, we follow the "fork-and-pull" Git workflow.

1. **Fork** the repo on GitHub
2. **Clone** the project to your own machine
3. **Commit** changes to your own branch
4. **Push** your work back up to your fork
5. Submit a **Pull request** so that we can review your changes

NOTE: Be sure to merge the latest from "upstream" before making a pull request!

Copyright and Licensing
-----------------------
Most Esri open source projects are licensed under the Apache 2.0 license.

Esri does not require you to assign the copyright of your contributions, you retain the copyright. Esri does require that you make your contributions available under the Apache license in order to be included in the main repo.

If appropriate, include the Apache 2.0 license summary at the top of each file along with the copyright info. If you are adding a new file that you wrote, include your name in the copyright notice in the license summary at the top of the file.

Contributing code written by others
-----------------------------------
Please do not contribute code you did not write yourself, unless you are certain you have the legal ability to do so. Also ensure all code contributed can be licensed under the Apache License 2.0.

Copyright 2017 by Esri

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

0 comments on commit 31fc5f6

Please sign in to comment.