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

Vue3 migration #132

Draft
wants to merge 25 commits into
base: dev
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
64ce737
updating package.json and config.js
prakhyatox Aug 8, 2024
9844334
Autogenerated documentation files
prakhyatox Aug 8, 2024
64ebb1a
updated files from vue2 to vue3
prakhyatox Aug 20, 2024
7d794ae
Merge branch 'dev' into vue3_migration_129
prakhyatox Aug 20, 2024
2176031
fixing lint issues from vue2 to vue3
prakhyatox Aug 21, 2024
da84c7f
adding emit declaration
prakhyatox Aug 21, 2024
ff4d3ad
removing npm serve warnings for v-tooltip
prakhyatox Aug 27, 2024
a21b0c1
updating vue.config.js, webpack.config.js, webpack.js
prakhyatox Aug 30, 2024
5f0c434
adding vuetify styles and contain class for background-size
prakhyatox Sep 13, 2024
0d7b577
adding custom fairsharing theme
prakhyatox Sep 16, 2024
9d94e40
updating global properties for anchor & p tag
prakhyatox Sep 17, 2024
4be6d39
changing breakpoint to display in .breakpoint.screensize
prakhyatox Sep 17, 2024
1a0b8ff
updating fontawesome lib implementation and not using mdi library
prakhyatox Sep 19, 2024
842a8ff
adding div wrapper to overlay
prakhyatox Sep 20, 2024
d4a1325
added vue3 mode in main.js and commenting other options in configureC…
prakhyatox Sep 23, 2024
ceae9ee
adding v-model and class for the loader
prakhyatox Sep 24, 2024
ec830c7
adding fa to icons & updating values in v-data-table
prakhyatox Sep 24, 2024
7c69be2
fixing delete tag on chips selection
prakhyatox Sep 25, 2024
c544530
updating v-alert banner component
prakhyatox Sep 25, 2024
1f890b4
updating v-alert banner component
prakhyatox Sep 25, 2024
c1939d2
updating v-alert banner component
prakhyatox Sep 25, 2024
b52a15b
updating theme color imports
prakhyatox Sep 30, 2024
c3c2442
updating items for v-data-iterator
prakhyatox Oct 1, 2024
5c653c8
updating custom icons and themes for preview popup
prakhyatox Oct 4, 2024
bcff352
updating preview table icons and header
prakhyatox Oct 7, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,11 @@ module.exports = {
node: true,
jest: true
},
"extends": [
"plugin:vue/recommended",
"eslint:recommended"
extends: [
'plugin:vue/vue3-recommended',
"eslint:recommended",
'plugin:vue/base',
'plugin:vuetify/base'
],
rules: {
'no-console': process.env.NODE_ENV === "production" ? "error" : "off",
Expand Down
6 changes: 3 additions & 3 deletions babel.config.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
module.exports = {
presets: [
"@vue/cli-plugin-babel/preset",
"@babel/preset-env"
"@babel/preset-env",
],
plugins: [
'@babel/plugin-proposal-class-properties',
'@babel/plugin-proposal-private-methods'
'@babel/plugin-transform-class-properties',
'@babel/plugin-transform-private-methods'
]
};
21 changes: 10 additions & 11 deletions documentation/html/scripts/docstrap.lib.js

Large diffs are not rendered by default.

239 changes: 80 additions & 159 deletions documentation/html/scripts/toc.js
Original file line number Diff line number Diff line change
@@ -1,182 +1,103 @@
(function($) {
var navbarHeight;
var initialised = false;
var navbarOffset;

function elOffset($el) {
return $el.offset().top - (navbarHeight + navbarOffset);
}
$.fn.toc = function(options) {
var self = this;
var opts = $.extend({}, jQuery.fn.toc.defaults, options);

var container = $(opts.container);
var tocs = [];
var headings = $(opts.selectors, container);
var headingOffsets = [];
var activeClassName = 'active';
var navbarHeight = $('.navbar').height();
var ANCHOR_PREFIX = "__anchor";

var scrollTo = function(e) {
if (opts.smoothScrolling) {
e.preventDefault();
var elScrollTo = $(e.target).attr('href');
var $el = $(elScrollTo.replace('#.', '#\\.') + ANCHOR_PREFIX);

function scrollToHash(duringPageLoad) {
var elScrollToId = location.hash.replace(/^#/, '');
var $el;
var offsetTop = $el.offset().top - (navbarHeight + opts.navbarOffset);

function doScroll() {
var offsetTop = elOffset($el);
window.scrollTo(window.pageXOffset || window.scrollX, offsetTop);
$('body,html').animate({ scrollTop: offsetTop }, 400, 'swing', function() {
location.hash = elScrollTo;
});
}
$('li', self).removeClass(activeClassName);
$(e.target).parent().addClass(activeClassName);
};

if (elScrollToId) {
$el = $(document.getElementById(elScrollToId));

if (!$el.length) {
$el = $(document.getElementsByName(elScrollToId));
}

if ($el.length) {
if (duringPageLoad) {
$(window).one('scroll', function() {
setTimeout(doScroll, 100);
});
} else {
setTimeout(doScroll, 0);
}
}
}
var calcHadingOffsets = function() {
headingOffsets = [];
headings.each(function(i, heading) {
var top = $(heading).prev("span").offset().top - (navbarHeight + opts.navbarOffset);
headingOffsets.push(top > 0 ? top : 0);
});
}

function init(opts) {
if (initialised) {
return;
//highlight on scroll
var timeout;
var highlightOnScroll = function(e) {
if (timeout) {
clearTimeout(timeout);
}
initialised = true;
navbarHeight = $('.navbar').height();
navbarOffset = opts.navbarOffset;

// some browsers move the offset after changing location.
// also catch external links coming in
$(window).on("hashchange", scrollToHash.bind(null, false));
$(scrollToHash.bind(null, true));
}

$.catchAnchorLinks = function(options) {
var opts = $.extend({}, jQuery.fn.toc.defaults, options);
init(opts);
};

$.fn.toc = function(options) {
var self = this;
var opts = $.extend({}, jQuery.fn.toc.defaults, options);

var container = $(opts.container);
var tocs = [];
var headings = $(opts.selectors, container);
var headingOffsets = [];
var activeClassName = 'active';
var ANCHOR_PREFIX = "__anchor";
var maxScrollTo;
var visibleHeight;
var headerHeight = 10; // so if the header is readable, its counted as shown
init();

var scrollTo = function(e) {
e.preventDefault();
var target = $(e.target);
if (target.prop('tagName').toLowerCase() !== "a") {
target = target.parent();
timeout = setTimeout(function() {
var top = $(window).scrollTop(),
highlighted;
for (var i = 0, c = headingOffsets.length; i < c; i++) {
if (headingOffsets[i] >= top || (headingOffsets[i + 1] && headingOffsets[i + 1] > top)) {
$('li', self).removeClass(activeClassName);
if (i >= 0) {
highlighted = tocs[i].addClass(activeClassName);
opts.onHighlight(highlighted);
}
break;
}
}
var elScrollToId = target.attr('href').replace(/^#/, '') + ANCHOR_PREFIX;
var $el = $(document.getElementById(elScrollToId));

var offsetTop = Math.min(maxScrollTo, elOffset($el));
}, 50);
};
if (opts.highlightOnScroll) {
$(window).bind('scroll', highlightOnScroll);
$(window).bind('load resize', function() {
calcHadingOffsets();
highlightOnScroll();
});
}

$('body,html').animate({ scrollTop: offsetTop }, 400, 'swing', function() {
location.hash = '#' + elScrollToId;
});
return this.each(function() {
//build TOC
var el = $(this);
var ul = $('<ul/>');

$('a', self).removeClass(activeClassName);
target.addClass(activeClassName);
};

var calcHadingOffsets = function() {
maxScrollTo = $("body").height() - $(window).height();
visibleHeight = $(window).height() - navbarHeight;
headingOffsets = [];
headings.each(function(i, heading) {
var anchorSpan = $(heading).prev("span");
var top = 0;
if (anchorSpan.length) {
top = elOffset(anchorSpan);
}
headingOffsets.push(top > 0 ? top : 0);
});
}
headings.each(function(i, heading) {
var $h = $(heading);

//highlight on scroll
var timeout;
var highlightOnScroll = function(e) {
if (!tocs.length) {
return;
}
if (timeout) {
clearTimeout(timeout);
}
timeout = setTimeout(function() {
var top = $(window).scrollTop(),
highlighted;
for (var i = headingOffsets.length - 1; i >= 0; i--) {
var isActive = tocs[i].hasClass(activeClassName);
// at the end of the page, allow any shown header
if (isActive && headingOffsets[i] >= maxScrollTo && top >= maxScrollTo) {
return;
}
// if we have got to the first heading or the heading is the first one visible
if (i === 0 || (headingOffsets[i] + headerHeight >= top && (headingOffsets[i - 1] + headerHeight <= top))) {
// in the case that a heading takes up more than the visible height e.g. we are showing
// only the one above, highlight the one above
if (i > 0 && headingOffsets[i] - visibleHeight >= top) {
i--;
}
$('a', self).removeClass(activeClassName);
if (i >= 0) {
highlighted = tocs[i].addClass(activeClassName);
opts.onHighlight(highlighted);
}
break;
}
}
}, 50);
};
if (opts.highlightOnScroll) {
$(window).bind('scroll', highlightOnScroll);
$(window).bind('load resize', function() {
calcHadingOffsets();
highlightOnScroll();
});
}
var anchor = $('<span/>').attr('id', opts.anchorName(i, heading, opts.prefix) + ANCHOR_PREFIX).insertBefore($h);

return this.each(function() {
//build TOC
var el = $(this);
var ul = $('<div class="list-group">');
//build TOC item
var a = $('<a/>')
.text(opts.headerText(i, heading, $h))
.attr('href', '#' + opts.anchorName(i, heading, opts.prefix))
.bind('click', function(e) {
scrollTo(e);
el.trigger('selected', $(this).attr('href'));
});

headings.each(function(i, heading) {
var $h = $(heading);
var li = $('<li/>')
.addClass(opts.itemClass(i, heading, $h, opts.prefix))
.append(a);

var anchor = $('<span/>').attr('id', opts.anchorName(i, heading, opts.prefix) + ANCHOR_PREFIX).insertBefore($h);
tocs.push(li);

var span = $('<span/>')
.text(opts.headerText(i, heading, $h));

//build TOC item
var a = $('<a class="list-group-item"/>')
.append(span)
.attr('href', '#' + opts.anchorName(i, heading, opts.prefix))
.bind('click', function(e) {
scrollTo(e);
el.trigger('selected', $(this).attr('href'));
});
ul.append(li);
});
el.html(ul);

span.addClass(opts.itemClass(i, heading, $h, opts.prefix));
calcHadingOffsets();
});

tocs.push(a);

ul.append(a);
});
el.html(ul);

calcHadingOffsets();
});
};


Expand Down
Loading
Loading