diff --git a/_vendor/git.sandpoints.org/Drawwell/SandpointsTheme/layouts/partials/pagedjs.html b/_vendor/git.sandpoints.org/Drawwell/SandpointsTheme/layouts/partials/pagedjs.html
index 0daf7ea..cd0e6a3 100644
--- a/_vendor/git.sandpoints.org/Drawwell/SandpointsTheme/layouts/partials/pagedjs.html
+++ b/_vendor/git.sandpoints.org/Drawwell/SandpointsTheme/layouts/partials/pagedjs.html
@@ -2,4 +2,4 @@
-
+
diff --git a/_vendor/git.sandpoints.org/Drawwell/SandpointsTheme/static/js/repeatingHeader.js b/_vendor/git.sandpoints.org/Drawwell/SandpointsTheme/static/js/pagedjsCustomizations.js
similarity index 64%
rename from _vendor/git.sandpoints.org/Drawwell/SandpointsTheme/static/js/repeatingHeader.js
rename to _vendor/git.sandpoints.org/Drawwell/SandpointsTheme/static/js/pagedjsCustomizations.js
index 4813ab8..0871eef 100644
--- a/_vendor/git.sandpoints.org/Drawwell/SandpointsTheme/static/js/repeatingHeader.js
+++ b/_vendor/git.sandpoints.org/Drawwell/SandpointsTheme/static/js/pagedjsCustomizations.js
@@ -1,8 +1,47 @@
-class RepeatingTableHeaders extends Paged.Handler {
+var UID = {
+ _current: 0,
+ getNew: function(){
+ this._current++;
+ return this._current;
+ }
+};
+
+HTMLElement.prototype.pseudoStyle = function(element,prop,value){
+ var _this = this;
+ var _sheetId = "pseudoStyles";
+ var _head = document.head || document.getElementsByTagName('head')[0];
+ var _sheet = document.getElementById(_sheetId) || document.createElement('style');
+ _sheet.id = _sheetId;
+ var className = "pseudoStyle" + UID.getNew();
+
+ _this.className += " "+className;
+
+ _sheet.innerHTML += " ."+className+":"+element+"{"+prop+":"+value+"}";
+ _head.appendChild(_sheet);
+ return this;
+};
+
+class Sandpoints extends Paged.Handler {
constructor(chunker, polisher, caller) {
super(chunker, polisher, caller);
}
+ beforeParsed(content) {
+ var d = {};
+ content.querySelectorAll('*').forEach((n, i)=> {
+ if (n.classList.length > 0 ) {
+ n.classList.forEach((c, i)=>{
+ if (c.startsWith("css-")) {
+ (c in d) ? d[c]++ : d[c] = 1
+ let s = ""
+ Object.keys(d).filter(ks => ks.startsWith(c.slice(0, -1))).forEach((t, i)=> {if (c >= t) {s += `${d[t]}.`}})
+ n.pseudoStyle('before','content', `"${s} "`)
+ }
+ })
+ }
+ })
+ }
+
afterPageLayout(pageElement, page, breakToken, chunker) {
// Find all split table elements
let tables = pageElement.querySelectorAll("table[data-split-from]");
@@ -24,7 +63,6 @@ class RepeatingTableHeaders extends Paged.Handler {
// Find if there is a header
let sourceHeader = sourceTable.querySelector("thead");
if (sourceHeader) {
- console.log("Table header was cloned, because it is splitted.");
// Clone the header element
let clonedHeader = sourceHeader.cloneNode(true);
// Insert the header at the start of the split table
@@ -55,4 +93,4 @@ class RepeatingTableHeaders extends Paged.Handler {
}
}
-Paged.registerHandlers(RepeatingTableHeaders);
+Paged.registerHandlers(Sandpoints);
diff --git a/_vendor/modules.txt b/_vendor/modules.txt
index 194e84e..dd08a25 100644
--- a/_vendor/modules.txt
+++ b/_vendor/modules.txt
@@ -1 +1 @@
-# git.sandpoints.org/Drawwell/SandpointsTheme v0.0.0-20210205231518-7612f79321fb
+# git.sandpoints.org/Drawwell/SandpointsTheme v0.0.0-20210206114614-2c21080f414b