Skip to content

Commit

Permalink
Merge branch 'dev' into proquest-federated-search-gateway
Browse files Browse the repository at this point in the history
  • Loading branch information
maccabeelevine committed Nov 6, 2024
2 parents 4a0b7b5 + 906455d commit 190abbe
Show file tree
Hide file tree
Showing 649 changed files with 19,017 additions and 5,022 deletions.
115 changes: 115 additions & 0 deletions .eslintrc.jsdoc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
/**
* TODO: Temporary file for rules. Merge this file into eslintrc.js
* after all the ignored patterns under themes/bootstrap5/js are removed.
*/
module.exports = {
plugins: ["jsdoc"],
ignorePatterns: [
"themes/**/vendor/**",
"themes/**/node_modules/**",
"themes/bootstrap5/js/account_ajax.js",
"themes/bootstrap5/js/relais.js",
"themes/bootstrap5/js/search.js",
"themes/bootstrap5/js/requests.js",
"themes/bootstrap5/js/resultcount.js",
"themes/bootstrap5/js/map_tab_leaflet.js",
"themes/bootstrap5/js/check_item_statuses.js",
"themes/bootstrap5/js/combined-search.js",
"themes/bootstrap5/js/cart.js",
"themes/bootstrap5/js/pubdate_vis.js",
"themes/bootstrap5/js/map_selection_leaflet.js",
"themes/bootstrap5/js/common.js",
"themes/bootstrap5/js/bs3-compat.js",
"themes/bootstrap5/js/explain.js",
"themes/bootstrap5/js/list_item_selection.js",
"themes/bootstrap5/js/embedded_record.js",
"themes/bootstrap5/js/openurl.js",
"themes/bootstrap5/js/ill.js",
"themes/bootstrap5/js/record.js",
"themes/bootstrap5/js/doi.js",
"themes/bootstrap5/js/keep_alive.js",
"themes/bootstrap5/js/embedGBS.js",
"themes/bootstrap5/js/lib/ajax_request_queue.js",
"themes/bootstrap5/js/covers.js",
"themes/bootstrap5/js/trigger_print.js",
"themes/bootstrap5/js/visual_facets.js",
"themes/bootstrap5/js/preview.js",
"themes/bootstrap5/js/facets.js",
"themes/bootstrap5/js/searchbox_controls.js",
"themes/bootstrap5/js/lightbox.js",
"themes/bootstrap5/js/hierarchy_tree.js",
"themes/bootstrap5/js/cookie.js",
"themes/bootstrap5/js/record_versions.js",
"themes/bootstrap5/js/collection_record.js",
"themes/bootstrap5/js/sticky_elements.js",
"themes/bootstrap5/js/checkouts.js",
"themes/bootstrap5/js/advanced_search.js",
"themes/bootstrap5/js/check_save_statuses.js",
"themes/bootstrap5/js/hold.js",
"themes/bootstrap5/js/config.js",
"themes/bootstrap5/js/channels.js",
"themes/bootstrap5/js/truncate.js",
"themes/bootstrap3/**"
],
extends: [],
env: {
"browser": true,
"es6": true,
"jquery": true
},
rules: {
// Recommended
"jsdoc/check-access": 1,
"jsdoc/check-alignment": 1,
"jsdoc/check-param-names": 1,
"jsdoc/check-property-names": 1,
"jsdoc/check-tag-names": 1,
"jsdoc/check-types": 1,
"jsdoc/check-values": 1,
"jsdoc/empty-tags": 1,
"jsdoc/implements-on-classes": 1,
"jsdoc/multiline-blocks": 1,
"jsdoc/no-multi-asterisks": 1,
"jsdoc/no-undefined-types": 1,
"jsdoc/require-jsdoc": 1,
"jsdoc/require-param": 1,
"jsdoc/require-param-description": 1,
"jsdoc/require-param-name": 1,
"jsdoc/require-param-type": 1,
"jsdoc/require-property": 1,
"jsdoc/require-property-description": 1,
"jsdoc/require-property-name": 1,
"jsdoc/require-property-type": 1,
"jsdoc/require-returns": 1,
"jsdoc/require-returns-check": 1,
"jsdoc/require-returns-description": 1,
"jsdoc/require-returns-type": 1,
"jsdoc/require-yields": 1,
"jsdoc/require-yields-check": 1,
"jsdoc/tag-lines": 1,
"jsdoc/valid-types": 1
// Disabled
//"jsdoc/check-examples": 1,
//"jsdoc/check-indentation": 1,
//"jsdoc/check-line-alignment": 1,
//"jsdoc/check-template-names": 1,
//"jsdoc/check-syntax": 1,
//"jsdoc/informative-docs": 1,
//"jsdoc/match-description": 1,
//"jsdoc/no-bad-blocks": 1,
//"jsdoc/no-blank-block-descriptions": 1,
//"jsdoc/no-defaults": 1,
//"jsdoc/no-missing-syntax": 1,
//"jsdoc/no-restricted-syntax": 1,
//"jsdoc/no-types": 1,
//"jsdoc/require-asterisk-prefix": 1,
//"jsdoc/require-description": 1,
//"jsdoc/require-description-complete-sentence": 1,
//"jsdoc/require-example": 1,
//"jsdoc/require-file-overview": 1,
//"jsdoc/require-hyphen-before-param-description": 1,
//"jsdoc/require-template": 1,
//"jsdoc/require-throws": 1,
//"jsdoc/sort-tags": 1,
}
};
2 changes: 1 addition & 1 deletion .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:

- name: Setup node
if: ${{ matrix.phing_tasks == 'qa-console' }}
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: '20'

Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -30,4 +30,5 @@ themes/bootstrap5/scss/vendor/bootstrap
local/DirLocations.ini
local/config/vufind/*.ini
local/config/vufind/*.json
local/config/vufind/*.key
local/config/vufind/*.yaml
3 changes: 2 additions & 1 deletion Gruntfile.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
module.exports = function(grunt) {
const fs = require("fs");
const os = require("node:os");

// Load dart-sass
grunt.loadNpmTasks('grunt-dart-sass');
Expand Down Expand Up @@ -275,7 +276,7 @@ module.exports = function(grunt) {
expand: true,
cwd: path.join('themes', themeList[i], 'scss'),
src: ['compiled.scss'],
dest: checkOnly ? null : path.join('themes', themeList[i], 'css'),
dest: path.join(checkOnly ? os.tmpdir() : 'themes', themeList[i], 'css'),
ext: '.css'
}]
};
Expand Down
67 changes: 40 additions & 27 deletions build.xml
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,10 @@
<property name="solr_pid_file" value="${localdir}/solr-${solr_port}.pid" />
<property name="marc_bib_dir" value="${srcdir}/tests/data" /><!-- directory containing MARC bib records for test environment -->
<property name="marc_authority_dir" value="${marc_bib_dir}/authority" /><!-- directory containing MARC authority records for test environment -->
<property name="bootstrap3_theme" value="bootstrap3" /><!-- base Bootstrap 3 theme (used for theme update tasks) -->
<property name="bootstrap5_theme" value="bootstrap5" /><!-- base Bootstrap 5 theme (used for theme update tasks) -->

<property name="version" value="10.0" />
<property name="version" value="10.1" />

<property name="mysqlconnectionargs" value="-h ${mysqlhost} -P ${mysqlport} -u ${mysqlrootuser}" />
<!-- Add password if not empty -->
Expand Down Expand Up @@ -153,6 +155,7 @@
<!-- Quality Assurance Javascript Tasks -->
<target name="qa-js-and-less" description="quality assurance js and less tasks">
<phingcall target="eslint"/>
<phingcall target="eslint-jsdoc"/>
<phingcall target="jshint"/>
<phingcall target="checkLessToSass"/>
<phingcall target="checkSassBuild"/>
Expand Down Expand Up @@ -274,6 +277,20 @@
</exec>
</target>

<!-- ESLint jsDoc (test only) -->
<target name="eslint-jsdoc">
<exec executable="npx" escape="false" checkreturn="true" passthru="true">
<arg line="eslint ${srcdir}/themes/**/*.js -c ${srcdir}/.eslintrc.jsdoc.js" />
</exec>
</target>

<!-- ESLint jsDoc (auto-fix eligible issues) -->
<target name="eslint-jsdoc-fix">
<exec executable="npx" escape="false" checkreturn="true" passthru="true">
<arg line="eslint ${srcdir}/themes/**/*.js -c ${srcdir}/.eslintrc.jsdoc.js --fix" />
</exec>
</target>

<!-- JSHint -->
<target name="jshint">
<exec executable="npx" checkreturn="true" passthru="true">
Expand Down Expand Up @@ -730,11 +747,21 @@
<mkdir dir="${localdir}/languages/Facets" />
</then>
</if>
<if>
<not>
<available file="${localdir}/languages/ChildDomain" type="dir" />
</not>
<then>
<mkdir dir="${localdir}/languages/ChildDomain" />
</then>
</if>
<append destFile="${localdir}/languages/en.ini" text="location_main = Main Library${line.separator}" />
<append destFile="${localdir}/languages/en.ini" text="test_string_1 = Child Text" />
<append destFile="${localdir}/languages/Facets/en.ini" text="0/level1a/ = Top Level, Sorted Last${line.separator}" />
<append destFile="${localdir}/languages/Facets/en.ini" text="0/level1z/ = Top Level, Sorted First${line.separator}" />
<append destFile="${localdir}/languages/Facets/en.ini" text="1/level1z/level2y/ = Second Level, Sorted Last${line.separator}" />
<append destFile="${localdir}/languages/Facets/en.ini" text="1/level1z/level2z/ = Second Level, Sorted First${line.separator}" />
<append destFile="${localdir}/languages/ChildDomain/en.ini" text="test = Child Text" />

<!-- Add templates to a minktest theme for tests -->
<property name="themedir" value="${srcdir}/themes/minktest" />
Expand All @@ -755,11 +782,11 @@
</if>
<echo file="${themedir}/theme.config.php">&lt;?php
return [
'extends' =&gt; 'sandal',
'extends' =&gt; 'sandal5',
];
</echo>

<copy file="${srcdir}/themes/bootstrap3/templates/ajax/status-full.phtml" tofile="${themedir}/templates/ajax/status-full.phtml" overwrite="true" />
<copy file="${srcdir}/themes/bootstrap5/templates/ajax/status-full.phtml" tofile="${themedir}/templates/ajax/status-full.phtml" overwrite="true" />
<!-- Add a script for testing that inline scripts work -->
<echo file="${themedir}/templates/ajax/status-full.phtml" append="true">
&lt;div class="js-status-test hidden"&gt;&lt;/div&gt;
Expand Down Expand Up @@ -1252,24 +1279,10 @@ ${git_status}
<delete file="${localdir}/import/import-${BASENAME}.properties" />
</target>

<target name="patch-dependencies" description="apply fixes to dependencies">
<!-- Fix for PHP 8 incompatibility in chrome-mink-driver 2.8.0: -->
<reflexive>
<fileset dir="vendor/dmore/chrome-mink-driver/src">
<include pattern="ChromeDriver.php" />
</fileset>
<filterchain>
<replaceregexp>
<regexp pattern="\$base_url," replace="\$base_url = &apos;&apos;," />
</replaceregexp>
</filterchain>
</reflexive>
</target>

<!-- Update bootstrap3 templates from bootstrap5 -->
<!-- N.B. This destroys any existing bootstrap3 templates (except explicitly excluded ones) -->
<target name="update-bootstrap3">
<property name="templatesdir" value="${srcdir}/themes/bootstrap3/templates" />
<property name="templatesdir" value="${srcdir}/themes/${bootstrap3_theme}/templates" />
<if>
<available file="${templatesdir}"></available>
<then>
Expand All @@ -1287,7 +1300,7 @@ ${git_status}
</if>
<mkdir dir="${templatesdir}"></mkdir>
<copy todir="${templatesdir}">
<fileset dir="${srcdir}/themes/bootstrap5/templates">
<fileset dir="${srcdir}/themes/${bootstrap5_theme}/templates">
<exclude name="header.phtml" />
<exclude name="RecordTab/similaritemscarousel.phtml" />
</fileset>
Expand All @@ -1313,7 +1326,7 @@ ${git_status}
<!-- Update bootstrap5 templates from bootstrap3 -->
<!-- N.B. This destroys any existing bootstrap5 templates (except explicitly excluded ones) -->
<target name="update-bootstrap5">
<property name="templatesdir" value="${srcdir}/themes/bootstrap5/templates" />
<property name="templatesdir" value="${srcdir}/themes/${bootstrap5_theme}/templates" />
<if>
<available file="${templatesdir}"></available>
<then>
Expand All @@ -1331,7 +1344,7 @@ ${git_status}
</if>
<mkdir dir="${templatesdir}"></mkdir>
<copy todir="${templatesdir}">
<fileset dir="${srcdir}/themes/bootstrap3/templates">
<fileset dir="${srcdir}/themes/${bootstrap3_theme}/templates">
<exclude name="header.phtml" />
<exclude name="RecordTab/similaritemscarousel.phtml" />
</fileset>
Expand All @@ -1354,8 +1367,8 @@ ${git_status}

<!-- Check that bootstrap5 is up to date with bootstrap3 -->
<target name="check-bootstrap5">
<property override="true" name="check_dir_base" value="${srcdir}/themes/bootstrap3/templates" />
<property override="true" name="check_dir_compare" value="${srcdir}/themes/bootstrap5/templates" />
<property override="true" name="check_dir_base" value="${srcdir}/themes/${bootstrap3_theme}/templates" />
<property override="true" name="check_dir_compare" value="${srcdir}/themes/${bootstrap5_theme}/templates" />
<foreach target="check-dir-single-file" param="filename" inheritall="true">
<fileset dir="${check_dir_base}">
<type type="file" />
Expand All @@ -1365,8 +1378,8 @@ ${git_status}
</fileset>
</foreach>

<property override="true" name="check_dir_base" value="${srcdir}/themes/bootstrap3/scss" />
<property override="true" name="check_dir_compare" value="${srcdir}/themes/bootstrap5/scss" />
<property override="true" name="check_dir_base" value="${srcdir}/themes/${bootstrap3_theme}/scss" />
<property override="true" name="check_dir_compare" value="${srcdir}/themes/${bootstrap5_theme}/scss" />
<foreach target="check-dir-single-file" param="filename" inheritall="true">
<fileset dir="${check_dir_base}">
<type type="file" />
Expand All @@ -1377,8 +1390,8 @@ ${git_status}
</fileset>
</foreach>

<property override="true" name="check_dir_base" value="${srcdir}/themes/bootstrap3/js" />
<property override="true" name="check_dir_compare" value="${srcdir}/themes/bootstrap5/js" />
<property override="true" name="check_dir_base" value="${srcdir}/themes/${bootstrap3_theme}/js" />
<property override="true" name="check_dir_compare" value="${srcdir}/themes/${bootstrap5_theme}/js" />
<foreach target="check-dir-single-file" param="filename" inheritall="true">
<fileset dir="${check_dir_base}">
<type type="file" />
Expand Down
Loading

0 comments on commit 190abbe

Please sign in to comment.