blacklight-frontend
Advanced tools
Comparing version 8.8.1 to 9.0.0-beta1
@@ -118,3 +118,3 @@ /* Converts a "toggle" form, with single submit button to add/remove | ||
// | ||
// debounced // does NOT print to the screen because it is invoked again less than 200 milliseconds later | ||
// debounced // does NOT print to the screen becase it is invoked again less than 200 milliseconds later | ||
// debounced // does print to the screen | ||
@@ -141,5 +141,5 @@ // ``` | ||
const text = await blob.text(); | ||
const facetArea = document.querySelector('.facet-extended-list'); | ||
if (text && facetArea) { | ||
@@ -266,3 +266,3 @@ facetArea.innerHTML = text; | ||
modal.activateScripts(frag); | ||
modal.target().querySelector('.modal-content').replaceChildren(frag); | ||
@@ -276,3 +276,2 @@ | ||
if (e.defaultPrevented) return; | ||
modal.show(); | ||
@@ -328,2 +327,8 @@ }; | ||
dom.close(); | ||
// Turn body scrolling back to what it was | ||
document.body.style["overflow"] = modal.originalBodyOverflow; | ||
document.body.style["padding-right"] = modal.originalBodyPaddingRight; | ||
modal.originalBodyOverflow = undefined; | ||
modal.originalBodyPaddingRight = undefined; | ||
}; | ||
@@ -340,2 +345,8 @@ | ||
dom.showModal(); | ||
// Turn off body scrolling | ||
modal.originalBodyOverflow = document.body.style['overflow']; | ||
modal.originalBodyPaddingRight = document.body.style['padding-right']; | ||
document.body.style["overflow"] = "hidden"; | ||
document.body.style["padding-right"] = "0px"; | ||
}; | ||
@@ -483,10 +494,2 @@ | ||
listeners.push('turbo:load', 'turbo:frame-load'); | ||
} else if (typeof Turbolinks !== 'undefined' && Turbolinks.supported) { | ||
// Turbolinks 5 | ||
if (Turbolinks.BrowserAdapter) { | ||
listeners.push('turbolinks:load'); | ||
} else { | ||
// Turbolinks < 5 | ||
listeners.push('page:load', 'DOMContentLoaded'); | ||
} | ||
} else { | ||
@@ -501,4 +504,4 @@ listeners.push('DOMContentLoaded'); | ||
// turbolinks triggers page:load events on page transition | ||
// If app isn't using turbolinks, this event will never be triggered, no prob. | ||
// turbo triggers turbo:load events on page transition | ||
// If app isn't using turbo, this event will never be triggered, no prob. | ||
Core.listeners().forEach(function(listener) { | ||
@@ -505,0 +508,0 @@ document.addEventListener(listener, function() { |
@@ -124,3 +124,3 @@ (function (global, factory) { | ||
// | ||
// debounced // does NOT print to the screen because it is invoked again less than 200 milliseconds later | ||
// debounced // does NOT print to the screen becase it is invoked again less than 200 milliseconds later | ||
// debounced // does print to the screen | ||
@@ -147,5 +147,5 @@ // ``` | ||
const text = await blob.text(); | ||
const facetArea = document.querySelector('.facet-extended-list'); | ||
if (text && facetArea) { | ||
@@ -272,3 +272,3 @@ facetArea.innerHTML = text; | ||
modal.activateScripts(frag); | ||
modal.target().querySelector('.modal-content').replaceChildren(frag); | ||
@@ -282,3 +282,2 @@ | ||
if (e.defaultPrevented) return; | ||
modal.show(); | ||
@@ -334,2 +333,8 @@ }; | ||
dom.close(); | ||
// Turn body scrolling back to what it was | ||
document.body.style["overflow"] = modal.originalBodyOverflow; | ||
document.body.style["padding-right"] = modal.originalBodyPaddingRight; | ||
modal.originalBodyOverflow = undefined; | ||
modal.originalBodyPaddingRight = undefined; | ||
}; | ||
@@ -346,2 +351,8 @@ | ||
dom.showModal(); | ||
// Turn off body scrolling | ||
modal.originalBodyOverflow = document.body.style['overflow']; | ||
modal.originalBodyPaddingRight = document.body.style['padding-right']; | ||
document.body.style["overflow"] = "hidden"; | ||
document.body.style["padding-right"] = "0px"; | ||
}; | ||
@@ -489,10 +500,2 @@ | ||
listeners.push('turbo:load', 'turbo:frame-load'); | ||
} else if (typeof Turbolinks !== 'undefined' && Turbolinks.supported) { | ||
// Turbolinks 5 | ||
if (Turbolinks.BrowserAdapter) { | ||
listeners.push('turbolinks:load'); | ||
} else { | ||
// Turbolinks < 5 | ||
listeners.push('page:load', 'DOMContentLoaded'); | ||
} | ||
} else { | ||
@@ -507,4 +510,4 @@ listeners.push('DOMContentLoaded'); | ||
// turbolinks triggers page:load events on page transition | ||
// If app isn't using turbolinks, this event will never be triggered, no prob. | ||
// turbo triggers turbo:load events on page transition | ||
// If app isn't using turbo, this event will never be triggered, no prob. | ||
Core.listeners().forEach(function(listener) { | ||
@@ -511,0 +514,0 @@ document.addEventListener(listener, function() { |
{ | ||
"name": "blacklight-frontend", | ||
"version": "8.8.1", | ||
"version": "9.0.0-beta1", | ||
"description": "The frontend code and styles for Blacklight", | ||
"main": "app/assets/javascripts/blacklight", | ||
"exports": { | ||
"./blacklight.esm.js": "./app/assets/javascripts/blacklight/blacklight.esm.js", | ||
"./stylesheets/*": "./app/assets/stylesheets/blacklight/*", | ||
".": { | ||
"import": "./app/javascript/blacklight-frontend/index.js", | ||
"require": "./app/assets/javascripts/blacklight.js" | ||
}, | ||
"./*": "./app/javascript/blacklight-frontend/*.js" | ||
}, | ||
"type": "module", | ||
"module": "app/assets/javascripts/blacklight/blacklight.esm.js", | ||
"scripts": { | ||
"build": "sass ./app/assets/stylesheets/blacklight/build.scss:./app/assets/builds/blacklight.css --no-source-map --load-path=node_modules --quiet-deps", | ||
"prepare": "rollup --config rollup.config.js --sourcemap && ESM=true rollup --config rollup.config.js --sourcemap" | ||
@@ -27,3 +35,5 @@ }, | ||
"rollup": "^4.24.0", | ||
"rollup-plugin-includepaths": "^0.2.4" | ||
"rollup-plugin-includepaths": "^0.2.4", | ||
"sass": "^1.80.3", | ||
"bootstrap": "^5.3.3" | ||
}, | ||
@@ -30,0 +40,0 @@ "browserslist": [ |
@@ -5,3 +5,11 @@ # Blacklight | ||
## Branches | ||
* The `main` branch is currently where we do new development for the upcoming 9.0 release. | ||
* The `8.x` series is on the [release-8.x](https://github.com/projectblacklight/blacklight/tree/release-8.x) branch | ||
* The `7.x` series is on the [release-7.x](https://github.com/projectblacklight/blacklight/tree/release-7.x) branch | ||
* The `6.x` series is on the [release-6.x](https://github.com/projectblacklight/blacklight/tree/release-6.x) branch | ||
## Description | ||
Blacklight is an open source Solr user interface discovery platform. | ||
@@ -57,12 +65,26 @@ You can use Blacklight to enable searching and browsing of your collections. | ||
## Building the javascript | ||
The javascript is built by npm from sources in `app/javascript` into a bundle | ||
in `app/assets/javascripts/blacklight/blacklight.js`. This file should not be edited | ||
by hand as any changes would be overwritten. When any of the javascript | ||
components in the gem are changed, this bundle should be rebuild with the | ||
following steps: | ||
The javascript includes some derivative combination files that are built at release time, that can be used by some javascript pipelines. The derivatives are placed at `app/assets/javascripts/blacklight`, and files there should not be edited by hand. | ||
When any of the javascript components in the gem are changed, you may have to rebuild these derivative files. | ||
1. [Install npm](https://www.npmjs.com/get-npm) | ||
1. run `npm install` to download dependencies | ||
1. run `npm run prepare` to build the bundle | ||
1. run `npm publish` to push the javascript package to https://npmjs.org/package/blacklight-frontend | ||
1. run `bundle exec rake build:npm` | ||
(just runs `npm install` to download dependencies and `npm run prepare` to build the bundle) | ||
## Releasing versions | ||
You always need to release both the rubygem and npm package simultaneously. For more information, see [wiki](https://github.com/projectblacklight/blacklight/wiki/How-to-release-a-version) | ||
Summary of technical steps: | ||
1. Make sure `./package.json` and `./VERSION` files have correct and matching versions. | ||
1. Release ruby gem with `bundle exec rake release` | ||
1. Release npm package | ||
1. Build derivative products included in release with `bundle exec rake build:npm` | ||
1. Publish with `npm publish`. | ||
## Using the javascript | ||
@@ -69,0 +91,0 @@ Blacklight ships with Javascript that can be compiled either by Webpacker or by |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
Unstable ownership
Supply chain riskA new collaborator has begun publishing package versions. Package stability and security risk may be elevated.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
163435
1749
93
0
12
4
1