Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lint codebase using standard #290

Merged
merged 9 commits into from
Aug 23, 2016
Merged

Conversation

gemmaleigh
Copy link
Contributor

@gemmaleigh gemmaleigh commented Aug 22, 2016

This PR updates GOV.UK elements to use JavaScript Standard Style .

This work has already been carried out for the GOV.UK prototype kit:

Standard is an opinionated JavaScript linter that uses eslint underneath and acts as a set of sensible defaults for it; here are the most important rules.

Ideally any shared JavaScript will be moved to the govuk_frontend_toolkit in the future.

TODO:

  • Update CONTRIBUTING.md
  • Lint details.polyfill.js (previously ignored by line 40 of package.json)

cc. @tvararu, @NickColley.

@gemmaleigh gemmaleigh force-pushed the lint-codebase-using-standard branch from 5123915 to da177a4 Compare August 22, 2016 13:09
This will use the standard linter and then run the grunt ‘test’ task -
which uses govuk lint to lint the scss files.

standard && ./node_modules/grunt-cli/bin/grunt test
Move details polyfill out of /vendor so it will be linted along with
the rest of the js.

Instead move it to /govuk/ (with a view to moving to the
govuk_frontend_toolkit in the future).
- Update contributing.md
- Add section on linting, include details of GOV.UK lint and Standard
JS.
var self = this;
/* global $ */
/* global jQuery */
/* global GOVUK */
Copy link
Contributor

@tvararu tvararu Aug 22, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that an alternative way of fixing this is doing:

var $ = window.$
var GOVUK = window.GOVUK

Inside the code.

This works fine though. 👌

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I prefer this because it is closer to what we'd do with a 'proper' module system in the future, wherein we have no globals.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is being moved over to frontend_toolkit anyway so this is a temporary fix.

@gemmaleigh gemmaleigh force-pushed the lint-codebase-using-standard branch from 3b5b1d5 to 38f6a45 Compare August 22, 2016 16:19
@@ -6,188 +6,185 @@

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we need to update this script tag to reference the new location:

<script src="/public/javascripts/vendor/details.polyfill.js"></script>

It's 404ing when I run this new updated branch locally.

@tvararu
Copy link
Contributor

tvararu commented Aug 22, 2016

This PR makes me very happy. 👏

Gave it a look and ran it locally, apart from that polyfill thing I think this looks good. 👍

This has been moved out of /vendor, with the intention of moving it to
the govuk frontend toolkit in the future.
@robinwhittleton robinwhittleton merged commit 520dca8 into master Aug 23, 2016
@robinwhittleton robinwhittleton deleted the lint-codebase-using-standard branch August 23, 2016 08:40
robinwhittleton pushed a commit that referenced this pull request Aug 24, 2016
- Remove the images path override from the helpers partial ([PR #292](#292)). This will break background images that are currently using the `file-url` function from [the url-helpers partial in the frontend toolkit](https://github.com/alphagov/govuk_frontend_toolkit/blob/d54c9b26d314a6e6cb50ba90f6e96ca50049498f/stylesheets/_url-helpers.scss). As `$path` will vary from project to project you will need to define this in your main application stylesheet.
- Bump govuk frontend toolkit to 4.16.1 ([PR #288](#288)). This adds space key activation to links with a role of button.
- Form validation patterns for conditionally revealing content ([PR #286](#286))
- Centre text on full-width buttons ([PR #289](#289))
- Lint JS code using [StandardJS](http://standardjs.com/) ([PR #290](#290))

*This version deprecates external link styles. If your service has user research that indicates that external links are useful (or not) then we’d like to hear from you either on Slack, [digital-service-designers](https://groups.google.com/a/digital.cabinet-office.gov.uk/forum/#!forum/digital-service-designers) or [opening an issue](https://github.com/alphagov/govuk_elements/issues/new).*
robinwhittleton pushed a commit that referenced this pull request Aug 25, 2016
- Remove the images path override from the helpers partial ([PR #292](#292)). This will break background images that are currently using the `file-url` function from [the url-helpers partial in the frontend toolkit](https://github.com/alphagov/govuk_frontend_toolkit/blob/d54c9b26d314a6e6cb50ba90f6e96ca50049498f/stylesheets/_url-helpers.scss). As `$path` will vary from project to project you will need to define this in your main application stylesheet.
- Bump govuk frontend toolkit to 4.16.1 ([PR #288](#288)). This adds space key activation to links with a role of button.
- Form validation patterns for conditionally revealing content ([PR #286](#286))
- Centre text on full-width buttons ([PR #289](#289))
- Lint JS code using [StandardJS](http://standardjs.com/) ([PR #290](#290))

*This version deprecates external link styles. If your service has user research that indicates that external links are useful (or not) then we’d like to hear from you either on Slack, [digital-service-designers](https://groups.google.com/a/digital.cabinet-office.gov.uk/forum/#!forum/digital-service-designers) or [opening an issue](https://github.com/alphagov/govuk_elements/issues/new).*
@robinwhittleton robinwhittleton mentioned this pull request Aug 25, 2016
gemmaleigh added a commit to alphagov/govuk-prototype-kit that referenced this pull request Oct 13, 2016
# 2.0.0

- Remove the images path override from the helpers partial ([PR
#292](alphagov/govuk_elements#292)). This will
break background images that are currently using the `file-url`
function from [the url-helpers partial in the frontend
toolkit](https://github.com/alphagov/govuk_frontend_toolkit/blob/d54c9b2
6d314a6e6cb50ba90f6e96ca50049498f/stylesheets/_url-helpers.scss). As
`$path` will vary from project to project you will need to define this
in your main application stylesheet.
- Bump govuk frontend toolkit to 4.16.1 ([PR
#288](alphagov/govuk_elements#288)). This adds
space key activation to links with a role of button.
- Form validation patterns for conditionally revealing content ([PR
#286](alphagov/govuk_elements#286))
- Centre text on full-width buttons ([PR
#289](alphagov/govuk_elements#289))
- Lint JS code using [StandardJS](http://standardjs.com/) ([PR
#290](alphagov/govuk_elements#290))

*This version deprecates external link styles. If your service has user
research that indicates that external links are useful (or not) then
we’d like to hear from you either on Slack,
[digital-service-designers](https://groups.google.com/a/digital.cabinet-
office.gov.uk/forum/#!forum/digital-service-designers) or [opening an
issue](https://github.com/alphagov/govuk_elements/issues/new).*

# 1.2.2

- Bump govuk frontend toolkit to 4.14.4 (PR #278)
- Add a .column-full class (PR #270)
- Add a file upload example (PR #268)
- Remove the blue outline from the main content area (PR #265)
- Fix legend text wrapping in IE (PR #248)

# 1.2.1

- Consistent spacing underneath block labels and toggled content (PR
#229)
- Remove underlines from abbreviations in Firefox (PR #241)
Guntrisoft added a commit to guidance-guarantee-programme/pension_guidance that referenced this pull request Dec 2, 2016
- made some minor adjustments to form to look good with
  new radio/checkbox styles
- removed field_with_errors wrapping div which
  conflicts with new radio/checkbox JS modules

Full list of changes:

Remove the images path override from the helpers partial
alphagov/govuk_elements#292

Bump govuk frontend toolkit to 4.16.1
alphagov/govuk_elements#288

Form validation patterns for conditionally revealing content
alphagov/govuk_elements#286

Centre text on full-width buttons
alphagov/govuk_elements#289

Lint JS code using StandardJS
alphagov/govuk_elements#290

Update govuk_frontend_toolkit to 5.0.0 and govuk_template to 0.19.0
alphagov/govuk_elements#333

Add a select box example
alphagov/govuk_elements#303

Add bullet points describing use of disabled buttons
alphagov/govuk_elements#304

Add reasoning for native over custom file inputs

Clear floats on details elements
alphagov/govuk_elements#328

Add a .bold utility class
alphagov/govuk_elements#321

Remove external link styles
alphagov/govuk_elements#274

Remove rounded corners on form inputs elements and textareas in iOS
alphagov/govuk_elements#342

Fix focus outline on form fields in Chrome / Safari
alphagov/govuk_elements#346

Updates the contribution guidelines
alphagov/govuk_elements#339

Recommend .visually-hidden over .visuallyhidden
alphagov/govuk_elements#341

Add snippets for data visualisation examples
alphagov/govuk_elements#350
alphagov/govuk_elements#351

Fix the grey left hand border example for Radios and checkboxes
alphagov/govuk_elements#349

Fix the spacing underneath the "inline" block label example
alphagov/govuk_elements#348

Custom radios / checkboxes
alphagov/govuk_elements#296

Fix contrast issues with phase banners. Use $govuk-blue for the phase tag and update the examples
alphagov/govuk_elements#364
Guntrisoft added a commit to guidance-guarantee-programme/pension_guidance that referenced this pull request Dec 5, 2016
- made some minor adjustments to form to look good with
  new radio/checkbox styles
- removed field_with_errors wrapping div which
  conflicts with new radio/checkbox JS modules

Full list of changes:

Remove the images path override from the helpers partial
alphagov/govuk_elements#292

Bump govuk frontend toolkit to 4.16.1
alphagov/govuk_elements#288

Form validation patterns for conditionally revealing content
alphagov/govuk_elements#286

Centre text on full-width buttons
alphagov/govuk_elements#289

Lint JS code using StandardJS
alphagov/govuk_elements#290

Update govuk_frontend_toolkit to 5.0.0 and govuk_template to 0.19.0
alphagov/govuk_elements#333

Add a select box example
alphagov/govuk_elements#303

Add bullet points describing use of disabled buttons
alphagov/govuk_elements#304

Add reasoning for native over custom file inputs

Clear floats on details elements
alphagov/govuk_elements#328

Add a .bold utility class
alphagov/govuk_elements#321

Remove external link styles
alphagov/govuk_elements#274

Remove rounded corners on form inputs elements and textareas in iOS
alphagov/govuk_elements#342

Fix focus outline on form fields in Chrome / Safari
alphagov/govuk_elements#346

Updates the contribution guidelines
alphagov/govuk_elements#339

Recommend .visually-hidden over .visuallyhidden
alphagov/govuk_elements#341

Add snippets for data visualisation examples
alphagov/govuk_elements#350
alphagov/govuk_elements#351

Fix the grey left hand border example for Radios and checkboxes
alphagov/govuk_elements#349

Fix the spacing underneath the "inline" block label example
alphagov/govuk_elements#348

Custom radios / checkboxes
alphagov/govuk_elements#296

Fix contrast issues with phase banners. Use $govuk-blue for the phase tag and update the examples
alphagov/govuk_elements#364
Guntrisoft added a commit to guidance-guarantee-programme/pension_guidance that referenced this pull request Dec 5, 2016
- made some minor adjustments to form to look good with
  new radio/checkbox styles

Full list of changes:

Remove the images path override from the helpers partial
alphagov/govuk_elements#292

Bump govuk frontend toolkit to 4.16.1
alphagov/govuk_elements#288

Form validation patterns for conditionally revealing content
alphagov/govuk_elements#286

Centre text on full-width buttons
alphagov/govuk_elements#289

Lint JS code using StandardJS
alphagov/govuk_elements#290

Update govuk_frontend_toolkit to 5.0.0 and govuk_template to 0.19.0
alphagov/govuk_elements#333

Add a select box example
alphagov/govuk_elements#303

Add bullet points describing use of disabled buttons
alphagov/govuk_elements#304

Add reasoning for native over custom file inputs

Clear floats on details elements
alphagov/govuk_elements#328

Add a .bold utility class
alphagov/govuk_elements#321

Remove external link styles
alphagov/govuk_elements#274

Remove rounded corners on form inputs elements and textareas in iOS
alphagov/govuk_elements#342

Fix focus outline on form fields in Chrome / Safari
alphagov/govuk_elements#346

Updates the contribution guidelines
alphagov/govuk_elements#339

Recommend .visually-hidden over .visuallyhidden
alphagov/govuk_elements#341

Add snippets for data visualisation examples
alphagov/govuk_elements#350
alphagov/govuk_elements#351

Fix the grey left hand border example for Radios and checkboxes
alphagov/govuk_elements#349

Fix the spacing underneath the "inline" block label example
alphagov/govuk_elements#348

Custom radios / checkboxes
alphagov/govuk_elements#296

Fix contrast issues with phase banners. Use $govuk-blue for the phase tag and update the examples
alphagov/govuk_elements#364
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants