From 2fa713c64494833ddce00bfb5dd90af1f49e8091 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20Mart=C3=ADn?= Date: Wed, 26 Jul 2023 00:43:06 +0200 Subject: [PATCH] Use node packages to install Foundation Since Foundation hasn't released a new gem for years, we haven't been able to upgrade Foundation to its most recent version. Thanks to this change, we'll be able to do so. Note we're using motion-ui version 2.0.3 because version 2.0.5 (the latest at the moment) requires Dart Sass. --- Gemfile | 1 - Gemfile.lock | 13 -------- app/assets/javascripts/application.js | 2 +- .../stylesheets/foundation_and_overrides.scss | 4 +-- package-lock.json | 31 ++++++++++++++++++- package.json | 4 ++- 6 files changed, 36 insertions(+), 19 deletions(-) diff --git a/Gemfile b/Gemfile index 8fb3c31b2..a875d737e 100644 --- a/Gemfile +++ b/Gemfile @@ -23,7 +23,6 @@ gem "devise-security", "~> 0.18.0" gem "exiftool_vendored", "~> 12.80.0" gem "file_validators", "~> 3.0.0" gem "font-awesome-sass", "~> 5.15.1" # Remember to update vendor/assets/images/fontawesome when updating this gem -gem "foundation-rails", "~> 6.6.2.0" gem "foundation_rails_helper", "~> 4.0.1" gem "globalize", "~> 6.3.0" gem "globalize-accessors", "~> 0.3.0" diff --git a/Gemfile.lock b/Gemfile.lock index 812862a53..a6c0bd6c1 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -89,10 +89,6 @@ GEM request_store (~> 1.2) autoprefixer-rails (8.2.0) execjs - babel-source (5.8.35) - babel-transpiler (0.7.0) - babel-source (>= 4.0, < 6) - execjs (~> 2.0) base64 (0.1.1) bcrypt (3.1.20) better_html (2.0.2) @@ -229,10 +225,6 @@ GEM mime-types (>= 1.0) font-awesome-sass (5.15.1) sassc (>= 1.11) - foundation-rails (6.6.2.0) - railties (>= 3.1.0) - sass (>= 3.3.0) - sprockets-es6 (>= 0.9.0) foundation_rails_helper (4.0.1) actionpack (>= 4.1, < 7.1) activemodel (>= 4.1, < 7.1) @@ -624,10 +616,6 @@ GEM sprockets (4.2.1) concurrent-ruby (~> 1.0) rack (>= 2.2.4, < 4) - sprockets-es6 (0.9.2) - babel-source (>= 5.8.11) - babel-transpiler - sprockets (>= 3.0.0) sprockets-rails (3.2.2) actionpack (>= 4.0) activesupport (>= 4.0) @@ -731,7 +719,6 @@ DEPENDENCIES faker (~> 3.2.3) file_validators (~> 3.0.0) font-awesome-sass (~> 5.15.1) - foundation-rails (~> 6.6.2.0) foundation_rails_helper (~> 4.0.1) globalize (~> 6.3.0) globalize-accessors (~> 0.3.0) diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index 97e5154b6..0d39d6e64 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -51,7 +51,7 @@ //= require jquery-ui/ui/widgets/autocomplete //= require jquery-ui/ui/widgets/sortable //= require jquery-fileupload/basic -//= require foundation +//= require foundation-sites //= require turbolinks //= require turbolinks_anchors //= require ckeditor/loader diff --git a/app/assets/stylesheets/foundation_and_overrides.scss b/app/assets/stylesheets/foundation_and_overrides.scss index b093af62b..121b037ef 100644 --- a/app/assets/stylesheets/foundation_and_overrides.scss +++ b/app/assets/stylesheets/foundation_and_overrides.scss @@ -1,11 +1,11 @@ @charset "utf-8"; -@import "util/util"; +@import "foundation-sites/scss/util/util"; @import "consul_custom_overrides"; @import "consul_settings"; @import "settings"; @import "custom_settings"; -@import "foundation"; +@import "foundation-sites/scss/foundation"; @import "motion-ui/motion-ui"; diff --git a/package-lock.json b/package-lock.json index d6745d891..1592ee4bf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6,12 +6,14 @@ "": { "name": "consuldemocracy", "dependencies": { + "foundation-sites": "^6.6.2", "jquery": "^3.7.1", "jquery-ui": "^1.13.2", "jquery-ujs": "^1.2.3", "leaflet": "^1.9.4", "leaflet.markercluster": "^1.5.3", - "markdown-it": "^9.0.1" + "markdown-it": "^9.0.1", + "motion-ui": "^2.0.3" } }, "node_modules/argparse": { @@ -27,6 +29,19 @@ "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" }, + "node_modules/foundation-sites": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/foundation-sites/-/foundation-sites-6.6.2.tgz", + "integrity": "sha512-fGdJVYodUxUCbdNDuNTXFIpEWAD+9yl0uLkkX8/rRHmK8/EYqQnRAGnmPADDhMKLZ+fJuSGheEcnSM2imgk3Wg==", + "engines": { + "node": ">=8.4.0", + "npm": ">=2.14.2" + }, + "peerDependencies": { + "jquery": ">=2.2.0", + "what-input": ">=4.1.0" + } + }, "node_modules/jquery": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", @@ -89,6 +104,14 @@ "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" }, + "node_modules/motion-ui": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/motion-ui/-/motion-ui-2.0.3.tgz", + "integrity": "sha512-f9xzh/hbZTUYjk4M7y1aDcsiPTfqUbuvCv/+If05TSIBEJMu3hGBU+YSe9csQPP7WBBHXxjossEygM/TJo2enw==", + "peerDependencies": { + "jquery": ">=2.2.0" + } + }, "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", @@ -98,6 +121,12 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" + }, + "node_modules/what-input": { + "version": "5.2.12", + "resolved": "https://registry.npmjs.org/what-input/-/what-input-5.2.12.tgz", + "integrity": "sha512-3yrSa7nGSXGJS6wZeSkO6VNm95pB1mZ9i3wFzC1hhY7mn4/afue/MvXz04OXNdBC8bfo4AB4RRd3Dem9jXM58Q==", + "peer": true } } } diff --git a/package.json b/package.json index 51ce7733c..2f36162b9 100644 --- a/package.json +++ b/package.json @@ -1,11 +1,13 @@ { "name": "consuldemocracy", "dependencies": { + "foundation-sites": "^6.6.2", "jquery": "^3.7.1", "jquery-ui": "^1.13.2", "jquery-ujs": "^1.2.3", "leaflet": "^1.9.4", "leaflet.markercluster": "^1.5.3", - "markdown-it": "^9.0.1" + "markdown-it": "^9.0.1", + "motion-ui": "^2.0.3" } }