@digipair/skill-web 0.45.6 → 0.46.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.cjs.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var engine = require('@digipair/engine');
|
|
6
|
+
var jsdom = require('jsdom');
|
|
6
7
|
|
|
7
8
|
function _extends() {
|
|
8
9
|
_extends = Object.assign || function assign(target) {
|
|
@@ -67,6 +68,38 @@ let WebService = class WebService {
|
|
|
67
68
|
}
|
|
68
69
|
return output;
|
|
69
70
|
}
|
|
71
|
+
async pins2html(pins) {
|
|
72
|
+
const dom = new jsdom.JSDOM();
|
|
73
|
+
const element = dom.window.document.createElement('section');
|
|
74
|
+
await this.generateElementsFromPins(pins, element, dom);
|
|
75
|
+
return element.innerHTML;
|
|
76
|
+
}
|
|
77
|
+
async generateElementsFromPins(pinsList, parent, dom) {
|
|
78
|
+
for(let i = 0; i < pinsList.length; i++){
|
|
79
|
+
const item = pinsList[i];
|
|
80
|
+
await this.generateElementFromPins(item, parent, dom);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
async generateElementFromPins(pinsSettings, parent, dom) {
|
|
84
|
+
const element = dom.window.document.createElement(pinsSettings.element);
|
|
85
|
+
element.setAttribute('data-ssr', '1');
|
|
86
|
+
// const settings = await preparePinsSettings(pinsSettings, context);
|
|
87
|
+
const settings = pinsSettings;
|
|
88
|
+
Object.entries(settings.properties || {}).forEach(([key, value])=>{
|
|
89
|
+
if (key === 'textContent') {
|
|
90
|
+
element.textContent = value;
|
|
91
|
+
} else if (key === 'innerHTML') {
|
|
92
|
+
element.innerHTML = value;
|
|
93
|
+
} else if (typeof value === 'string') {
|
|
94
|
+
element.setAttribute(key, value);
|
|
95
|
+
} else {
|
|
96
|
+
element[key] = value;
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
const pinsList = settings.pins || [];
|
|
100
|
+
await this.generateElementsFromPins(pinsList, element, dom);
|
|
101
|
+
parent.appendChild(element);
|
|
102
|
+
}
|
|
70
103
|
async page(params, _pinsSettingsList, context) {
|
|
71
104
|
var _context_request_body;
|
|
72
105
|
const { body, title = 'Digipair', favicon = 'https://res.cloudinary.com/do87nxq3l/image/upload/fl_preserve_transparency/v1717769492/logo-digipair_oyvvxz.png?_s=public-apps', styleHtml = '', styleBody = '', baseUrl = 'https://cdn.jsdelivr.net/npm', factoryInitialize = [], browserInitialize = [], browserLoad = [] } = params;
|
|
@@ -119,6 +152,7 @@ let WebService = class WebService {
|
|
|
119
152
|
await executePinsList(${JSON.stringify(this.prepareBrowserPinsSettings('browserInitialize', browserInitialize))}, context);
|
|
120
153
|
|
|
121
154
|
const pinsList = ${JSON.stringify(this.prepareBrowserPinsSettings('body', body))};
|
|
155
|
+
document.querySelectorAll('body > [data-ssr]').forEach((element) => element.remove()); // Remove SSR elements
|
|
122
156
|
for (let i = 0; i < pinsList.length; i++) {
|
|
123
157
|
const item = pinsList[i];
|
|
124
158
|
await generateElementFromPins(item, document.body, { ...context, data: ${JSON.stringify(preparedData)} });
|
|
@@ -128,6 +162,8 @@ let WebService = class WebService {
|
|
|
128
162
|
await executePinsList(${JSON.stringify(this.prepareBrowserPinsSettings('browserLoad', browserLoad))}, context);
|
|
129
163
|
}, 1);
|
|
130
164
|
</script>
|
|
165
|
+
|
|
166
|
+
${await this.pins2html(body)}
|
|
131
167
|
</body>
|
|
132
168
|
</html>
|
|
133
169
|
`;
|
package/index.esm.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { JSDOM } from 'jsdom';
|
|
2
|
+
|
|
1
3
|
function _extends() {
|
|
2
4
|
_extends = Object.assign || function assign(target) {
|
|
3
5
|
for(var i = 1; i < arguments.length; i++){
|
|
@@ -23899,14 +23901,14 @@ function indent(str, spaces) {
|
|
|
23899
23901
|
var match = parseIdentifier(input, i1, namePart) || namePart && parseAdditionalSymbol(input, i1) || maybeSpace && parseSpaces(input, i1);
|
|
23900
23902
|
// match is required
|
|
23901
23903
|
if (!match) {
|
|
23902
|
-
return
|
|
23904
|
+
return tokens = tokens1, nextMatch = nextMatch1, i = i1, {
|
|
23903
23905
|
v: nextMatch1
|
|
23904
23906
|
};
|
|
23905
23907
|
}
|
|
23906
23908
|
var token = match.token, offset = match.offset;
|
|
23907
23909
|
i1 += offset;
|
|
23908
23910
|
if (token === " ") {
|
|
23909
|
-
return
|
|
23911
|
+
return tokens = tokens1, nextMatch = nextMatch1, i = i1, "continue";
|
|
23910
23912
|
}
|
|
23911
23913
|
tokens1 = _to_consumable_array$1(tokens1).concat([
|
|
23912
23914
|
token
|
|
@@ -23925,7 +23927,7 @@ function indent(str, spaces) {
|
|
|
23925
23927
|
if (contextKeys.some(function(el) {
|
|
23926
23928
|
return el.startsWith(name);
|
|
23927
23929
|
})) {
|
|
23928
|
-
return
|
|
23930
|
+
return tokens = tokens1, nextMatch = nextMatch1, i = i1, "continue";
|
|
23929
23931
|
}
|
|
23930
23932
|
if (dateTimeIdentifiers.some(function(el) {
|
|
23931
23933
|
return el === name;
|
|
@@ -23944,9 +23946,9 @@ function indent(str, spaces) {
|
|
|
23944
23946
|
if (dateTimeIdentifiers.some(function(el) {
|
|
23945
23947
|
return el.startsWith(name);
|
|
23946
23948
|
})) {
|
|
23947
|
-
return
|
|
23949
|
+
return tokens = tokens1, nextMatch = nextMatch1, i = i1, "continue";
|
|
23948
23950
|
}
|
|
23949
|
-
return
|
|
23951
|
+
return tokens = tokens1, nextMatch = nextMatch1, i = i1, {
|
|
23950
23952
|
v: nextMatch1
|
|
23951
23953
|
};
|
|
23952
23954
|
};
|
|
@@ -28005,6 +28007,38 @@ let WebService = class WebService {
|
|
|
28005
28007
|
}
|
|
28006
28008
|
return output;
|
|
28007
28009
|
}
|
|
28010
|
+
async pins2html(pins) {
|
|
28011
|
+
const dom = new JSDOM();
|
|
28012
|
+
const element = dom.window.document.createElement('section');
|
|
28013
|
+
await this.generateElementsFromPins(pins, element, dom);
|
|
28014
|
+
return element.innerHTML;
|
|
28015
|
+
}
|
|
28016
|
+
async generateElementsFromPins(pinsList, parent, dom) {
|
|
28017
|
+
for(let i = 0; i < pinsList.length; i++){
|
|
28018
|
+
const item = pinsList[i];
|
|
28019
|
+
await this.generateElementFromPins(item, parent, dom);
|
|
28020
|
+
}
|
|
28021
|
+
}
|
|
28022
|
+
async generateElementFromPins(pinsSettings, parent, dom) {
|
|
28023
|
+
const element = dom.window.document.createElement(pinsSettings.element);
|
|
28024
|
+
element.setAttribute('data-ssr', '1');
|
|
28025
|
+
// const settings = await preparePinsSettings(pinsSettings, context);
|
|
28026
|
+
const settings = pinsSettings;
|
|
28027
|
+
Object.entries(settings.properties || {}).forEach(([key, value])=>{
|
|
28028
|
+
if (key === 'textContent') {
|
|
28029
|
+
element.textContent = value;
|
|
28030
|
+
} else if (key === 'innerHTML') {
|
|
28031
|
+
element.innerHTML = value;
|
|
28032
|
+
} else if (typeof value === 'string') {
|
|
28033
|
+
element.setAttribute(key, value);
|
|
28034
|
+
} else {
|
|
28035
|
+
element[key] = value;
|
|
28036
|
+
}
|
|
28037
|
+
});
|
|
28038
|
+
const pinsList = settings.pins || [];
|
|
28039
|
+
await this.generateElementsFromPins(pinsList, element, dom);
|
|
28040
|
+
parent.appendChild(element);
|
|
28041
|
+
}
|
|
28008
28042
|
async page(params, _pinsSettingsList, context) {
|
|
28009
28043
|
var _context_request_body;
|
|
28010
28044
|
const { body, title = 'Digipair', favicon = 'https://res.cloudinary.com/do87nxq3l/image/upload/fl_preserve_transparency/v1717769492/logo-digipair_oyvvxz.png?_s=public-apps', styleHtml = '', styleBody = '', baseUrl = 'https://cdn.jsdelivr.net/npm', factoryInitialize = [], browserInitialize = [], browserLoad = [] } = params;
|
|
@@ -28057,6 +28091,7 @@ let WebService = class WebService {
|
|
|
28057
28091
|
await executePinsList(${JSON.stringify(this.prepareBrowserPinsSettings('browserInitialize', browserInitialize))}, context);
|
|
28058
28092
|
|
|
28059
28093
|
const pinsList = ${JSON.stringify(this.prepareBrowserPinsSettings('body', body))};
|
|
28094
|
+
document.querySelectorAll('body > [data-ssr]').forEach((element) => element.remove()); // Remove SSR elements
|
|
28060
28095
|
for (let i = 0; i < pinsList.length; i++) {
|
|
28061
28096
|
const item = pinsList[i];
|
|
28062
28097
|
await generateElementFromPins(item, document.body, { ...context, data: ${JSON.stringify(preparedData)} });
|
|
@@ -28066,6 +28101,8 @@ let WebService = class WebService {
|
|
|
28066
28101
|
await executePinsList(${JSON.stringify(this.prepareBrowserPinsSettings('browserLoad', browserLoad))}, context);
|
|
28067
28102
|
}, 1);
|
|
28068
28103
|
</script>
|
|
28104
|
+
|
|
28105
|
+
${await this.pins2html(body)}
|
|
28069
28106
|
</body>
|
|
28070
28107
|
</html>
|
|
28071
28108
|
`;
|
package/package.json
CHANGED
|
File without changes
|
|
File without changes
|