diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
new file mode 100644
index 000000000..36d521172
--- /dev/null
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -0,0 +1,46 @@
+## PR Checklist
+Please check if your PR fulfills the following requirements:
+
+
+
+- [ ] The commit message follows our guidelines: https://github.com/mobi/goponents/blob/master/CONTRIBUTING.md
+- [ ] Tests for the changes have been added (for bug fixes / features)
+- [ ] Docs have been added / updated (for bug fixes / features)
+
+
+## PR Type
+What kind of change does this PR introduce?
+
+
+
+- [ ] Bugfix
+- [ ] Feature
+- [ ] Code style update (formatting, local variables)
+- [ ] Refactoring (no functional changes, no api changes)
+- [ ] Build related changes
+- [ ] CI related changes
+- [ ] Documentation content changes
+- [ ] Other... Please describe:
+
+
+## What is the current behavior?
+
+
+Issue Number: N/A
+
+
+## What is the new behavior?
+
+
+## Does this PR introduce a breaking change?
+
+
+
+- [ ] Yes
+- [ ] No
+
+
+
+
+
+## Other information
diff --git a/.sass-lint.yml b/.sass-lint.yml
index d422f7de7..3ef28d6d4 100644
--- a/.sass-lint.yml
+++ b/.sass-lint.yml
@@ -54,22 +54,22 @@ rules:
# Name Formats
class-name-format:
- 1
- - convention: hyphenatedbem
+ - convention: hyphenated_BEM
function-name-format:
- 1
- - convention: hyphenatedbem
+ - convention: hyphenated_BEM
id-name-format:
- 1
- - convention: hyphenatedbem
+ - convention: hyphenated_BEM
mixin-name-format:
- 1
- - convention: hyphenatedbem
+ - convention: hyphenated_BEM
placeholder-name-format:
- 1
- - convention: hyphenatedbem
+ - convention: hyphenated_BEM
variable-name-format:
- 1
- - convention: hyphenatedbem
+ - convention: hyphenated_BEM
# Style Guide
attribute-quotes: 1
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index f39176378..bb9af5a7f 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -4,13 +4,6 @@ _**Note:** The guide for contributing to this repo is based on the [contribution
## Code of Conduct
Please read and follow our [Code of conduct](https://github.com/mobi/goponents/blob/master/CODE_OF_CONDUCT.md).
-## Got a question, problem, or feedback?
-Feel free to open up [an issue](https://github.com/mobi/goponents/issues/new/choose) using the appropriate template.
-
-When any sort of issue is created, depending on the impact or urgency of the issue, one of our [contributors](https://github.com/mobi/goponents/graphs/contributors) will respond as quickly as appropriate on the issue itself. We will try to give a timeline and release schedule for any request that is made.
-
-We would also welcome anyone to open up a [pull request]() for a bug or issue experienced in order to expedite the process.
-
## Feature requests
You can request a new feature by submitting an issue to our [GitHub Repository](https://github.com/mobi/goponents/issues). If you would like to _implement_ a new feature, please submit an issue with a proposal for your work first.
@@ -19,11 +12,15 @@ Our team will first make sure of the following:
2. Where it fits into our current road map.
3. What design resources and support will be needed before the feature work can begin.
-Please consider what kind of change it is:
+## Working Issues
+Before working on an issue, you must claim it. To do so, simply comment on the issue stating that you're looking into it.
+Once claimed, a contributor will modify the issue and apply the appropriate labels and milestones.
-For a **Major Feature**, first open an issue and outline your proposal so that it can be discussed. This will also allow us to better coordinate our efforts, prevent duplication of work, and help you to craft the change so that it is successfully accepted into the project.
+### What issues can be worked?
-**Small Features** can be crafted and directly submitted as a Pull Request so long as they have the appropriate design support.
+Any issue that does not have the `Needs Triaged` milestone can be worked.
+
+Issues labeled as `bugs` take priority over general a `chore` or `feature`.
## Submitting a pull request (PR)
Before you submit your pull request (PR) consider the following guidelines:
@@ -48,13 +45,20 @@ Before you submit your pull request (PR) consider the following guidelines:
```bash
git push origin my-branch-name
```
-9. In GitHub, send a pull request to `goponents:master`.
- - If we suggest changes then:
- 1. Make the required updates.
- 2. Re-run the test suite to ensure tests are still passing.
- 3. Rebase your branch and force push to your GitHub repository (this will update your Pull Request):
+9. In GitHub, send a pull request to `goponents:dev`.
+ - Please format the description of your PR with our [pull request template](https://github.com/mobi/goponents/blob/master/.github/PULL_REQUEST_TEMPLATE.md)
+ - If we suggest changes then:
+ 1. Make the required updates.
+ 2. Re-run the test suite to ensure tests are still passing.
+ 3. Rebase your branch and force push to your GitHub repository (this will update your Pull Request):
```
- git rebase master -i
+ git rebase dev -i
git push -f
```
+## Got a question, problem, or feedback?
+Feel free to open up [an issue](https://github.com/mobi/goponents/issues/new/choose) using the appropriate template.
+
+When any sort of issue is created, depending on the impact or urgency of the issue, one of our [contributors](https://github.com/mobi/goponents/graphs/contributors) will respond as quickly as appropriate on the issue itself. We will try to give a timeline and release schedule for any request that is made.
+
+We would also welcome anyone to open up a [pull request]() for a bug or issue experienced in order to expedite the process.
diff --git a/angular.json b/angular.json
index e24502714..612078cbc 100644
--- a/angular.json
+++ b/angular.json
@@ -168,7 +168,117 @@
}
}
}
+ },
+ "go-style-guide": {
+ "root": "projects/go-style-guide/",
+ "sourceRoot": "projects/go-style-guide/src",
+ "projectType": "application",
+ "prefix": "app",
+ "schematics": {
+ "@schematics/angular:component": {
+ "styleext": "scss"
+ }
+ },
+ "architect": {
+ "build": {
+ "builder": "@angular-devkit/build-angular:browser",
+ "options": {
+ "outputPath": "dist/go-style-guide",
+ "index": "projects/go-style-guide/src/index.html",
+ "main": "projects/go-style-guide/src/main.ts",
+ "polyfills": "projects/go-style-guide/src/polyfills.ts",
+ "tsConfig": "projects/go-style-guide/tsconfig.app.json",
+ "assets": [
+ "projects/go-style-guide/src/favicon.ico",
+ "projects/go-style-guide/src/assets",
+ "projects/go-style-guide/src/_redirects"
+ ],
+ "styles": [
+ "projects/go-style-guide/src/styles/styles.scss"
+ ],
+ "scripts": [],
+ "stylePreprocessorOptions": {
+ "includePaths": [
+ "projects/go-style-guide/src/styles"
+ ]
+ },
+ "es5BrowserSupport": true
+ },
+ "configurations": {
+ "production": {
+ "fileReplacements": [
+ {
+ "replace": "projects/go-style-guide/src/environments/environment.ts",
+ "with": "projects/go-style-guide/src/environments/environment.prod.ts"
+ }
+ ],
+ "optimization": true,
+ "outputHashing": "all",
+ "sourceMap": false,
+ "extractCss": true,
+ "namedChunks": false,
+ "aot": true,
+ "extractLicenses": true,
+ "vendorChunk": false,
+ "buildOptimizer": true,
+ "budgets": [
+ {
+ "type": "initial",
+ "maximumWarning": "2mb",
+ "maximumError": "5mb"
+ }
+ ]
+ }
+ }
+ },
+ "serve": {
+ "builder": "@angular-devkit/build-angular:dev-server",
+ "options": {
+ "browserTarget": "go-style-guide:build"
+ },
+ "configurations": {
+ "production": {
+ "browserTarget": "go-style-guide:build:production"
+ }
+ }
+ },
+ "extract-i18n": {
+ "builder": "@angular-devkit/build-angular:extract-i18n",
+ "options": {
+ "browserTarget": "go-style-guide:build"
+ }
+ },
+ "test": {
+ "builder": "@angular-devkit/build-angular:karma",
+ "options": {
+ "main": "projects/go-style-guide/src/test.ts",
+ "polyfills": "projects/go-style-guide/src/polyfills.ts",
+ "tsConfig": "projects/go-style-guide/tsconfig.spec.json",
+ "karmaConfig": "projects/go-style-guide/karma.conf.js",
+ "styles": [
+ "projects/go-style-guide/src/styles.css"
+ ],
+ "scripts": [],
+ "assets": [
+ "projects/go-style-guide/src/favicon.ico",
+ "projects/go-style-guide/src/assets"
+ ]
+ }
+ },
+ "lint": {
+ "builder": "@angular-devkit/build-angular:tslint",
+ "options": {
+ "tsConfig": [
+ "projects/go-style-guide/tsconfig.app.json",
+ "projects/go-style-guide/tsconfig.spec.json"
+ ],
+ "exclude": [
+ "**/node_modules/**"
+ ]
+ }
+ }
+ }
}
},
"defaultProject": "go-lib"
-}
+}
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index 7f2087c28..1e63985bc 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -4286,6 +4286,11 @@
"integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
"dev": true
},
+ "faker": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/faker/-/faker-4.1.0.tgz",
+ "integrity": "sha1-HkW7vsxndLPBlfrSg1EJxtdIzD8="
+ },
"fast-deep-equal": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz",
@@ -5486,6 +5491,11 @@
"minimalistic-assert": "^1.0.1"
}
},
+ "highlight.js": {
+ "version": "9.15.10",
+ "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.15.10.tgz",
+ "integrity": "sha512-RoV7OkQm0T3os3Dd2VHLNMoaoDVx77Wygln3n9l5YV172XonWG6rgQD3XnF/BuFFZw9A0TJgmMSO8FEWQgvcXw=="
+ },
"hmac-drbg": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
@@ -7679,6 +7689,14 @@
}
}
},
+ "ngx-highlightjs": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/ngx-highlightjs/-/ngx-highlightjs-3.0.3.tgz",
+ "integrity": "sha512-/Eh+uJL9CiePWXzyT7VpLaQoWQyyNEUQaHhJ4faUBQZLBpachCBY55iDX0mi50zG9dapTiiapH5Vz/sL2GDxlg==",
+ "requires": {
+ "tslib": "^1.9.0"
+ }
+ },
"nice-try": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
diff --git a/package.json b/package.json
index f28f42dbb..47a6fae16 100644
--- a/package.json
+++ b/package.json
@@ -23,7 +23,9 @@
"package": "npm run build_lib && npm run npm_pack",
"publish": "npm run package && cd dist/go-lib && npm publish",
"publish_local": "npm run package && node ./local_install.js",
- "sass-lint": "node_modules/.bin/sass-lint -c .sass-lint.yml"
+ "sass-lint": "node_modules/.bin/sass-lint -c .sass-lint.yml",
+ "style_guide": "ng serve --project=go-style-guide",
+ "style_guide_publish": "ng build --prod --project=go-style-guide"
},
"private": true,
"engines": {
@@ -43,6 +45,9 @@
"@ng-select/ng-select": "^2.20.5",
"classlist.js": "^1.1.20150312",
"core-js": "^2.5.4",
+ "faker": "4.1.0",
+ "highlight.js": "^9.13.1",
+ "ngx-highlightjs": "^3.0.1",
"npm": "^6.10.1",
"rxjs": "~6.5.2",
"web-animations-js": "^2.3.2",
diff --git a/projects/go-lib/src/lib/animations/accordion.animation.ts b/projects/go-lib/src/lib/animations/accordion.animation.ts
index 234b39251..64f3f1489 100644
--- a/projects/go-lib/src/lib/animations/accordion.animation.ts
+++ b/projects/go-lib/src/lib/animations/accordion.animation.ts
@@ -12,10 +12,12 @@ import { easing, timing } from './_configs';
export const accordionAnimation: AnimationTriggerMetadata = trigger('accordionAnimation', [
state('open', style({
height: '*',
+ overflow: 'visible',
visibility: 'visible'
})),
state('close', style({
height: 0,
+ overflow: 'hidden',
visibility: 'hidden'
})),
transition('open <=> close', [
diff --git a/projects/go-lib/src/lib/components/go-accordion/go-accordion-panel.component.html b/projects/go-lib/src/lib/components/go-accordion/go-accordion-panel.component.html
index 7a45cbd8c..dd0ae7494 100644
--- a/projects/go-lib/src/lib/components/go-accordion/go-accordion-panel.component.html
+++ b/projects/go-lib/src/lib/components/go-accordion/go-accordion-panel.component.html
@@ -2,6 +2,10 @@
class="go-accordion-panel"
[ngClass]="containerClasses"
>
+