@rollup-extras/plugin-html 1.2.4 → 1.3.1
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/dist/index.cjs +86 -35
- package/dist/index.mjs +74 -16
- package/package.json +6 -6
package/dist/index.cjs
CHANGED
|
@@ -3,16 +3,67 @@
|
|
|
3
3
|
var fs = require('fs/promises');
|
|
4
4
|
var oldStyleFs = require('fs');
|
|
5
5
|
var path = require('path');
|
|
6
|
-
var
|
|
7
|
-
var logger = require('@rollup-extras/utils/logger');
|
|
8
|
-
var mutliConfigPluginBase = require('@rollup-extras/utils/mutli-config-plugin-base');
|
|
6
|
+
var logger$1 = require('@niceties/logger');
|
|
9
7
|
|
|
10
|
-
function
|
|
8
|
+
function getOptionsObject(options, defaults, factory) {
|
|
9
|
+
const result = Object.assign(Object.assign({}, defaults), options);
|
|
10
|
+
if (factory) {
|
|
11
|
+
for (const [k, v] of Object.entries(factory)) {
|
|
12
|
+
result[k] = v(result, k);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
return result;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
function logger (options) {
|
|
19
|
+
return logger$1.createLogger(options.pluginName);
|
|
20
|
+
}
|
|
11
21
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
22
|
+
function multiConfigPluginBase(useWriteBundle, pluginName, execute, onFinalHook) {
|
|
23
|
+
const finalHook = useWriteBundle ? 'writeBundle' : 'generateBundle';
|
|
24
|
+
let remainingOutputsCount = 0, configsCount = 0;
|
|
25
|
+
const configs = new Set();
|
|
26
|
+
const instance = {
|
|
27
|
+
name: pluginName,
|
|
28
|
+
renderStart,
|
|
29
|
+
[finalHook]: writeBundle,
|
|
30
|
+
api: { addInstance }
|
|
31
|
+
};
|
|
32
|
+
return instance;
|
|
33
|
+
function addInstance() {
|
|
34
|
+
const configId = ++configsCount;
|
|
35
|
+
configs.add(configId);
|
|
36
|
+
return {
|
|
37
|
+
name: `${pluginName}#${configId}`,
|
|
38
|
+
renderStart: () => {
|
|
39
|
+
configs.delete(configId);
|
|
40
|
+
return renderStart();
|
|
41
|
+
},
|
|
42
|
+
[finalHook]: writeBundle
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
function renderStart() {
|
|
46
|
+
++remainingOutputsCount;
|
|
47
|
+
}
|
|
48
|
+
async function writeBundle(options, bundle) {
|
|
49
|
+
--remainingOutputsCount;
|
|
50
|
+
if (onFinalHook) {
|
|
51
|
+
await onFinalHook.call(this, options, bundle, configs.size, remainingOutputsCount);
|
|
52
|
+
}
|
|
53
|
+
if (configs.size === 0 && remainingOutputsCount === 0) {
|
|
54
|
+
// do work
|
|
55
|
+
try {
|
|
56
|
+
await execute.call(this, options, bundle);
|
|
57
|
+
}
|
|
58
|
+
finally {
|
|
59
|
+
// reset configs
|
|
60
|
+
for (let i = configsCount; i > 0; --i) {
|
|
61
|
+
configs.add(i);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
16
67
|
|
|
17
68
|
const defaultTemplate = '<!DOCTYPE html><html><head></head><body></body></html>';
|
|
18
69
|
const headClosingElement = '</head>';
|
|
@@ -28,9 +79,9 @@ const defaults = {
|
|
|
28
79
|
ignore: toAssetPredicate(false),
|
|
29
80
|
templateFactory: ((template, assets, defaultTemplateFactory) => defaultTemplateFactory(template, assets))
|
|
30
81
|
};
|
|
31
|
-
const factories = { logger
|
|
32
|
-
function index (options
|
|
33
|
-
const { pluginName, outputFile, template, watch, emitFile, conditionalLoading, logger, useWriteBundle, logLevel, useEmittedTemplate, injectIntoHead, ignore, assetsFactory, templateFactory } =
|
|
82
|
+
const factories = { logger, injectIntoHead: predicateFactory, ignore: predicateFactory };
|
|
83
|
+
function index (options = {}) {
|
|
84
|
+
const { pluginName, outputFile, template, watch, emitFile, conditionalLoading, logger, useWriteBundle, logLevel, useEmittedTemplate, injectIntoHead, ignore, assetsFactory, templateFactory } = getOptionsObject(options, Object.assign(Object.assign({}, defaults), { useEmittedTemplate: !('template' in options), logLevel: options.verbose ? 1 /* LogLevel.info */ : 0 /* LogLevel.verbose */ }), factories), hasCustomTemplateFactory = 'templateFactory' in options;
|
|
34
85
|
let templateString = defaultTemplate, hasTemplateFile = false;
|
|
35
86
|
if (template) {
|
|
36
87
|
if (isUsableByDefaultTemplateFactory(template)) {
|
|
@@ -40,7 +91,7 @@ function index (options$1 = {}) {
|
|
|
40
91
|
if (watch) {
|
|
41
92
|
try {
|
|
42
93
|
// using sync fs call because we need to return plugin object immidiately
|
|
43
|
-
useNewTemplate(
|
|
94
|
+
useNewTemplate(oldStyleFs.readFileSync(template, { encoding: 'utf8' }));
|
|
44
95
|
hasTemplateFile = true;
|
|
45
96
|
}
|
|
46
97
|
catch (e) {
|
|
@@ -49,7 +100,7 @@ function index (options$1 = {}) {
|
|
|
49
100
|
}
|
|
50
101
|
else {
|
|
51
102
|
templateString = new Promise(resolve => {
|
|
52
|
-
|
|
103
|
+
fs.readFile(template, { encoding: 'utf8' })
|
|
53
104
|
.then((newTemplateString) => {
|
|
54
105
|
if (!isUsableByDefaultTemplateFactory(newTemplateString) && !hasCustomTemplateFactory) {
|
|
55
106
|
warnAboutUsingDefaultTemplate();
|
|
@@ -66,13 +117,13 @@ function index (options$1 = {}) {
|
|
|
66
117
|
}
|
|
67
118
|
let initialDir = '', fileNameInInitialDir, assets = freshAssets();
|
|
68
119
|
const processedFiles = new Set();
|
|
69
|
-
const instance =
|
|
120
|
+
const instance = multiConfigPluginBase(useWriteBundle, pluginName, generateBundle, updateAssets);
|
|
70
121
|
const baseRenderStart = instance.renderStart;
|
|
71
122
|
const baseAddInstance = instance.api.addInstance;
|
|
72
123
|
instance.renderStart = function (outputOptions, inputOptions) {
|
|
73
|
-
logger('started collecting information', 0 /* verbose */);
|
|
124
|
+
logger('started collecting information', 0 /* LogLevel.verbose */);
|
|
74
125
|
initialDir = outputOptions.dir || '';
|
|
75
|
-
fileNameInInitialDir =
|
|
126
|
+
fileNameInInitialDir = path.join(initialDir, outputFile);
|
|
76
127
|
return baseRenderStart.call(this, outputOptions, inputOptions);
|
|
77
128
|
};
|
|
78
129
|
instance.api.addInstance = () => {
|
|
@@ -85,7 +136,7 @@ function index (options$1 = {}) {
|
|
|
85
136
|
if (hasTemplateFile && watch) {
|
|
86
137
|
instance.buildStart = async function () {
|
|
87
138
|
try {
|
|
88
|
-
useNewTemplate(await
|
|
139
|
+
useNewTemplate(await fs.readFile(template, { encoding: 'utf8' }));
|
|
89
140
|
}
|
|
90
141
|
catch (e) {
|
|
91
142
|
handleTemplateReadError(e);
|
|
@@ -101,16 +152,16 @@ function index (options$1 = {}) {
|
|
|
101
152
|
.filter(item => item.count)
|
|
102
153
|
.map(({ key, count }) => `${key}: ${count}`)
|
|
103
154
|
.join(', ');
|
|
104
|
-
logger(`assets collected: [${statistics}], remaining: ${remainingOutputsCount} outputs, ${remainingConfigsCount} configs`, 0 /* verbose */);
|
|
105
|
-
const dir = options.dir || '', fileName =
|
|
155
|
+
logger(`assets collected: [${statistics}], remaining: ${remainingOutputsCount} outputs, ${remainingConfigsCount} configs`, 0 /* LogLevel.verbose */);
|
|
156
|
+
const dir = options.dir || '', fileName = path.relative(dir, fileNameInInitialDir);
|
|
106
157
|
if (fileName in bundle) {
|
|
107
158
|
if (useEmittedTemplate) {
|
|
108
|
-
logger(`using exiting emitted ${fileName} as an input for out templateFactory`, 0 /* verbose */);
|
|
159
|
+
logger(`using exiting emitted ${fileName} as an input for out templateFactory`, 0 /* LogLevel.verbose */);
|
|
109
160
|
const source = bundle[fileName].type === 'asset' ? bundle[fileName].source.toString() : bundle[fileName].code;
|
|
110
161
|
useNewTemplate(source);
|
|
111
162
|
}
|
|
112
163
|
else {
|
|
113
|
-
logger(`removing exiting emitted ${fileName}`, 0 /* verbose */);
|
|
164
|
+
logger(`removing exiting emitted ${fileName}`, 0 /* LogLevel.verbose */);
|
|
114
165
|
}
|
|
115
166
|
if (remainingConfigsCount === 0 && emitFile && !useWriteBundle) {
|
|
116
167
|
delete bundle[fileName];
|
|
@@ -135,14 +186,14 @@ function index (options$1 = {}) {
|
|
|
135
186
|
}
|
|
136
187
|
function handleTemplateReadError(e) {
|
|
137
188
|
if ((e === null || e === void 0 ? void 0 : e.code) === 'ENOENT') {
|
|
138
|
-
logger('template nor a file or string', 2 /* warn */, e);
|
|
189
|
+
logger('template nor a file or string', 2 /* LogLevel.warn */, e);
|
|
139
190
|
}
|
|
140
191
|
else {
|
|
141
|
-
logger('error reading template', 2 /* warn */, e);
|
|
192
|
+
logger('error reading template', 2 /* LogLevel.warn */, e);
|
|
142
193
|
}
|
|
143
194
|
}
|
|
144
195
|
function warnAboutUsingDefaultTemplate() {
|
|
145
|
-
logger('template is unusable by default template factory, using default one', 2 /* warn */);
|
|
196
|
+
logger('template is unusable by default template factory, using default one', 2 /* LogLevel.warn */);
|
|
146
197
|
}
|
|
147
198
|
async function buildStart() {
|
|
148
199
|
this.addWatchFile(template);
|
|
@@ -150,14 +201,14 @@ function index (options$1 = {}) {
|
|
|
150
201
|
async function generateBundle(options) {
|
|
151
202
|
logger.start('generating html', logLevel);
|
|
152
203
|
try {
|
|
153
|
-
const dir = options.dir || '', fileName =
|
|
204
|
+
const dir = options.dir || '', fileName = path.relative(dir, fileNameInInitialDir);
|
|
154
205
|
const depromisifiedTemplateString = await templateString, source = await templateFactory(depromisifiedTemplateString, assets, defaultTemplateFactory);
|
|
155
206
|
if (!emitFile || fileName.startsWith('..') || useWriteBundle) {
|
|
156
207
|
if (emitFile && emitFile !== 'auto') {
|
|
157
|
-
logger('cannot emitFile because it is outside of current output.dir, using writeFile instead', 0 /* verbose */);
|
|
208
|
+
logger('cannot emitFile because it is outside of current output.dir, using writeFile instead', 0 /* LogLevel.verbose */);
|
|
158
209
|
}
|
|
159
|
-
await
|
|
160
|
-
await
|
|
210
|
+
await fs.mkdir(path.dirname(fileNameInInitialDir), { recursive: true });
|
|
211
|
+
await fs.writeFile(fileNameInInitialDir, source);
|
|
161
212
|
}
|
|
162
213
|
else {
|
|
163
214
|
this.emitFile({
|
|
@@ -172,13 +223,13 @@ function index (options$1 = {}) {
|
|
|
172
223
|
logger.finish('html file generated');
|
|
173
224
|
}
|
|
174
225
|
catch (e) {
|
|
175
|
-
logger.finish('html generation failed', 3 /* error */, e);
|
|
226
|
+
logger.finish('html generation failed', 3 /* LogLevel.error */, e);
|
|
176
227
|
}
|
|
177
228
|
}
|
|
178
229
|
async function getAssets(options, bundle) {
|
|
179
230
|
const dir = options.dir || '';
|
|
180
231
|
for (const fileName of Object.keys(bundle)) {
|
|
181
|
-
const relativeToRootAssetPath =
|
|
232
|
+
const relativeToRootAssetPath = path.join(dir, fileName);
|
|
182
233
|
if (ignore(relativeToRootAssetPath) || processedFiles.has(relativeToRootAssetPath)) {
|
|
183
234
|
continue;
|
|
184
235
|
}
|
|
@@ -188,7 +239,7 @@ function index (options$1 = {}) {
|
|
|
188
239
|
continue;
|
|
189
240
|
}
|
|
190
241
|
if (fileName.endsWith(cssExtention)) {
|
|
191
|
-
const assetPath =
|
|
242
|
+
const assetPath = path.relative(initialDir, relativeToRootAssetPath);
|
|
192
243
|
assets.asset.push({
|
|
193
244
|
html: getLinkElement(assetPath),
|
|
194
245
|
head: injectIntoHead(relativeToRootAssetPath),
|
|
@@ -204,14 +255,14 @@ function index (options$1 = {}) {
|
|
|
204
255
|
continue;
|
|
205
256
|
}
|
|
206
257
|
if (options.format === 'es' || options.format === 'iife' || options.format === 'umd') {
|
|
207
|
-
const assetPath =
|
|
258
|
+
const assetPath = path.relative(initialDir, relativeToRootAssetPath);
|
|
208
259
|
assets[options.format].push({
|
|
209
260
|
html: (assets) => {
|
|
210
261
|
let useConditionalLoading = conditionalLoading;
|
|
211
262
|
useConditionalLoading !== null && useConditionalLoading !== void 0 ? useConditionalLoading : (useConditionalLoading = !!((assets.iife.length
|
|
212
263
|
|| assets.umd.length)
|
|
213
264
|
&& assets.es.length));
|
|
214
|
-
return (options.format === 'iife' || options.format === 'umd') ? getNonModuleScriptElement(assetPath, useConditionalLoading) : getModuleScriptElement(assetPath);
|
|
265
|
+
return (options.format === 'iife' || options.format === 'umd') ? getNonModuleScriptElement(assetPath, !!useConditionalLoading) : getModuleScriptElement(assetPath);
|
|
215
266
|
},
|
|
216
267
|
head: injectIntoHead(relativeToRootAssetPath),
|
|
217
268
|
type: 'asset'
|
|
@@ -241,7 +292,7 @@ function index (options$1 = {}) {
|
|
|
241
292
|
}
|
|
242
293
|
}
|
|
243
294
|
catch (e) {
|
|
244
|
-
logger('exception in assetFactory', 2 /* warn */, e);
|
|
295
|
+
logger('exception in assetFactory', 2 /* LogLevel.warn */, e);
|
|
245
296
|
}
|
|
246
297
|
}
|
|
247
298
|
return false;
|
|
@@ -266,7 +317,7 @@ function predicateFactory(options, field) {
|
|
|
266
317
|
return predicate;
|
|
267
318
|
}
|
|
268
319
|
else {
|
|
269
|
-
options.logger && options.logger(`${field} option ignored because it is not a function, RegExp or boolean`, 2 /* warn */);
|
|
320
|
+
options.logger && options.logger(`${field} option ignored because it is not a function, RegExp or boolean`, 2 /* LogLevel.warn */);
|
|
270
321
|
}
|
|
271
322
|
}
|
|
272
323
|
return defaults[field];
|
package/dist/index.mjs
CHANGED
|
@@ -1,9 +1,67 @@
|
|
|
1
1
|
import fs from 'fs/promises';
|
|
2
2
|
import oldStyleFs from 'fs';
|
|
3
3
|
import path from 'path';
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
import { createLogger } from '@niceties/logger';
|
|
5
|
+
|
|
6
|
+
function getOptionsObject(options, defaults, factory) {
|
|
7
|
+
const result = Object.assign(Object.assign({}, defaults), options);
|
|
8
|
+
if (factory) {
|
|
9
|
+
for (const [k, v] of Object.entries(factory)) {
|
|
10
|
+
result[k] = v(result, k);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
return result;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
function logger (options) {
|
|
17
|
+
return createLogger(options.pluginName);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
function multiConfigPluginBase(useWriteBundle, pluginName, execute, onFinalHook) {
|
|
21
|
+
const finalHook = useWriteBundle ? 'writeBundle' : 'generateBundle';
|
|
22
|
+
let remainingOutputsCount = 0, configsCount = 0;
|
|
23
|
+
const configs = new Set();
|
|
24
|
+
const instance = {
|
|
25
|
+
name: pluginName,
|
|
26
|
+
renderStart,
|
|
27
|
+
[finalHook]: writeBundle,
|
|
28
|
+
api: { addInstance }
|
|
29
|
+
};
|
|
30
|
+
return instance;
|
|
31
|
+
function addInstance() {
|
|
32
|
+
const configId = ++configsCount;
|
|
33
|
+
configs.add(configId);
|
|
34
|
+
return {
|
|
35
|
+
name: `${pluginName}#${configId}`,
|
|
36
|
+
renderStart: () => {
|
|
37
|
+
configs.delete(configId);
|
|
38
|
+
return renderStart();
|
|
39
|
+
},
|
|
40
|
+
[finalHook]: writeBundle
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
function renderStart() {
|
|
44
|
+
++remainingOutputsCount;
|
|
45
|
+
}
|
|
46
|
+
async function writeBundle(options, bundle) {
|
|
47
|
+
--remainingOutputsCount;
|
|
48
|
+
if (onFinalHook) {
|
|
49
|
+
await onFinalHook.call(this, options, bundle, configs.size, remainingOutputsCount);
|
|
50
|
+
}
|
|
51
|
+
if (configs.size === 0 && remainingOutputsCount === 0) {
|
|
52
|
+
// do work
|
|
53
|
+
try {
|
|
54
|
+
await execute.call(this, options, bundle);
|
|
55
|
+
}
|
|
56
|
+
finally {
|
|
57
|
+
// reset configs
|
|
58
|
+
for (let i = configsCount; i > 0; --i) {
|
|
59
|
+
configs.add(i);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
7
65
|
|
|
8
66
|
const defaultTemplate = '<!DOCTYPE html><html><head></head><body></body></html>';
|
|
9
67
|
const headClosingElement = '</head>';
|
|
@@ -21,7 +79,7 @@ const defaults = {
|
|
|
21
79
|
};
|
|
22
80
|
const factories = { logger, injectIntoHead: predicateFactory, ignore: predicateFactory };
|
|
23
81
|
function index (options = {}) {
|
|
24
|
-
const { pluginName, outputFile, template, watch, emitFile, conditionalLoading, logger, useWriteBundle, logLevel, useEmittedTemplate, injectIntoHead, ignore, assetsFactory, templateFactory } = getOptionsObject(options, Object.assign(Object.assign({}, defaults), { useEmittedTemplate: !('template' in options), logLevel: options.verbose ? 1 /* info */ : 0 /* verbose */ }), factories), hasCustomTemplateFactory = 'templateFactory' in options;
|
|
82
|
+
const { pluginName, outputFile, template, watch, emitFile, conditionalLoading, logger, useWriteBundle, logLevel, useEmittedTemplate, injectIntoHead, ignore, assetsFactory, templateFactory } = getOptionsObject(options, Object.assign(Object.assign({}, defaults), { useEmittedTemplate: !('template' in options), logLevel: options.verbose ? 1 /* LogLevel.info */ : 0 /* LogLevel.verbose */ }), factories), hasCustomTemplateFactory = 'templateFactory' in options;
|
|
25
83
|
let templateString = defaultTemplate, hasTemplateFile = false;
|
|
26
84
|
if (template) {
|
|
27
85
|
if (isUsableByDefaultTemplateFactory(template)) {
|
|
@@ -61,7 +119,7 @@ function index (options = {}) {
|
|
|
61
119
|
const baseRenderStart = instance.renderStart;
|
|
62
120
|
const baseAddInstance = instance.api.addInstance;
|
|
63
121
|
instance.renderStart = function (outputOptions, inputOptions) {
|
|
64
|
-
logger('started collecting information', 0 /* verbose */);
|
|
122
|
+
logger('started collecting information', 0 /* LogLevel.verbose */);
|
|
65
123
|
initialDir = outputOptions.dir || '';
|
|
66
124
|
fileNameInInitialDir = path.join(initialDir, outputFile);
|
|
67
125
|
return baseRenderStart.call(this, outputOptions, inputOptions);
|
|
@@ -92,16 +150,16 @@ function index (options = {}) {
|
|
|
92
150
|
.filter(item => item.count)
|
|
93
151
|
.map(({ key, count }) => `${key}: ${count}`)
|
|
94
152
|
.join(', ');
|
|
95
|
-
logger(`assets collected: [${statistics}], remaining: ${remainingOutputsCount} outputs, ${remainingConfigsCount} configs`, 0 /* verbose */);
|
|
153
|
+
logger(`assets collected: [${statistics}], remaining: ${remainingOutputsCount} outputs, ${remainingConfigsCount} configs`, 0 /* LogLevel.verbose */);
|
|
96
154
|
const dir = options.dir || '', fileName = path.relative(dir, fileNameInInitialDir);
|
|
97
155
|
if (fileName in bundle) {
|
|
98
156
|
if (useEmittedTemplate) {
|
|
99
|
-
logger(`using exiting emitted ${fileName} as an input for out templateFactory`, 0 /* verbose */);
|
|
157
|
+
logger(`using exiting emitted ${fileName} as an input for out templateFactory`, 0 /* LogLevel.verbose */);
|
|
100
158
|
const source = bundle[fileName].type === 'asset' ? bundle[fileName].source.toString() : bundle[fileName].code;
|
|
101
159
|
useNewTemplate(source);
|
|
102
160
|
}
|
|
103
161
|
else {
|
|
104
|
-
logger(`removing exiting emitted ${fileName}`, 0 /* verbose */);
|
|
162
|
+
logger(`removing exiting emitted ${fileName}`, 0 /* LogLevel.verbose */);
|
|
105
163
|
}
|
|
106
164
|
if (remainingConfigsCount === 0 && emitFile && !useWriteBundle) {
|
|
107
165
|
delete bundle[fileName];
|
|
@@ -126,14 +184,14 @@ function index (options = {}) {
|
|
|
126
184
|
}
|
|
127
185
|
function handleTemplateReadError(e) {
|
|
128
186
|
if ((e === null || e === void 0 ? void 0 : e.code) === 'ENOENT') {
|
|
129
|
-
logger('template nor a file or string', 2 /* warn */, e);
|
|
187
|
+
logger('template nor a file or string', 2 /* LogLevel.warn */, e);
|
|
130
188
|
}
|
|
131
189
|
else {
|
|
132
|
-
logger('error reading template', 2 /* warn */, e);
|
|
190
|
+
logger('error reading template', 2 /* LogLevel.warn */, e);
|
|
133
191
|
}
|
|
134
192
|
}
|
|
135
193
|
function warnAboutUsingDefaultTemplate() {
|
|
136
|
-
logger('template is unusable by default template factory, using default one', 2 /* warn */);
|
|
194
|
+
logger('template is unusable by default template factory, using default one', 2 /* LogLevel.warn */);
|
|
137
195
|
}
|
|
138
196
|
async function buildStart() {
|
|
139
197
|
this.addWatchFile(template);
|
|
@@ -145,7 +203,7 @@ function index (options = {}) {
|
|
|
145
203
|
const depromisifiedTemplateString = await templateString, source = await templateFactory(depromisifiedTemplateString, assets, defaultTemplateFactory);
|
|
146
204
|
if (!emitFile || fileName.startsWith('..') || useWriteBundle) {
|
|
147
205
|
if (emitFile && emitFile !== 'auto') {
|
|
148
|
-
logger('cannot emitFile because it is outside of current output.dir, using writeFile instead', 0 /* verbose */);
|
|
206
|
+
logger('cannot emitFile because it is outside of current output.dir, using writeFile instead', 0 /* LogLevel.verbose */);
|
|
149
207
|
}
|
|
150
208
|
await fs.mkdir(path.dirname(fileNameInInitialDir), { recursive: true });
|
|
151
209
|
await fs.writeFile(fileNameInInitialDir, source);
|
|
@@ -163,7 +221,7 @@ function index (options = {}) {
|
|
|
163
221
|
logger.finish('html file generated');
|
|
164
222
|
}
|
|
165
223
|
catch (e) {
|
|
166
|
-
logger.finish('html generation failed', 3 /* error */, e);
|
|
224
|
+
logger.finish('html generation failed', 3 /* LogLevel.error */, e);
|
|
167
225
|
}
|
|
168
226
|
}
|
|
169
227
|
async function getAssets(options, bundle) {
|
|
@@ -202,7 +260,7 @@ function index (options = {}) {
|
|
|
202
260
|
useConditionalLoading !== null && useConditionalLoading !== void 0 ? useConditionalLoading : (useConditionalLoading = !!((assets.iife.length
|
|
203
261
|
|| assets.umd.length)
|
|
204
262
|
&& assets.es.length));
|
|
205
|
-
return (options.format === 'iife' || options.format === 'umd') ? getNonModuleScriptElement(assetPath, useConditionalLoading) : getModuleScriptElement(assetPath);
|
|
263
|
+
return (options.format === 'iife' || options.format === 'umd') ? getNonModuleScriptElement(assetPath, !!useConditionalLoading) : getModuleScriptElement(assetPath);
|
|
206
264
|
},
|
|
207
265
|
head: injectIntoHead(relativeToRootAssetPath),
|
|
208
266
|
type: 'asset'
|
|
@@ -232,7 +290,7 @@ function index (options = {}) {
|
|
|
232
290
|
}
|
|
233
291
|
}
|
|
234
292
|
catch (e) {
|
|
235
|
-
logger('exception in assetFactory', 2 /* warn */, e);
|
|
293
|
+
logger('exception in assetFactory', 2 /* LogLevel.warn */, e);
|
|
236
294
|
}
|
|
237
295
|
}
|
|
238
296
|
return false;
|
|
@@ -257,7 +315,7 @@ function predicateFactory(options, field) {
|
|
|
257
315
|
return predicate;
|
|
258
316
|
}
|
|
259
317
|
else {
|
|
260
|
-
options.logger && options.logger(`${field} option ignored because it is not a function, RegExp or boolean`, 2 /* warn */);
|
|
318
|
+
options.logger && options.logger(`${field} option ignored because it is not a function, RegExp or boolean`, 2 /* LogLevel.warn */);
|
|
261
319
|
}
|
|
262
320
|
}
|
|
263
321
|
return defaults[field];
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.
|
|
2
|
+
"version": "1.3.1",
|
|
3
3
|
"license": "MIT",
|
|
4
4
|
"name": "@rollup-extras/plugin-html",
|
|
5
5
|
"author": {
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"bundle"
|
|
39
39
|
],
|
|
40
40
|
"scripts": {
|
|
41
|
-
"build": "pkgbld",
|
|
41
|
+
"build": "pkgbld-internal",
|
|
42
42
|
"test": "jest --collectCoverage",
|
|
43
43
|
"lint": "eslint ./src",
|
|
44
44
|
"semantic-release": "npx semantic-release"
|
|
@@ -60,13 +60,13 @@
|
|
|
60
60
|
"ts-jest": "28.0.2",
|
|
61
61
|
"typescript": "4.6.x",
|
|
62
62
|
"update-monorepo-package-json": "0.2.0",
|
|
63
|
-
"pkgbld": "1.2
|
|
63
|
+
"pkgbld-internal": "1.0.2"
|
|
64
64
|
},
|
|
65
65
|
"peerDependencies": {
|
|
66
|
-
"rollup": "^2.60.1"
|
|
66
|
+
"rollup": "^2.60.1 || ^3.0.0"
|
|
67
67
|
},
|
|
68
68
|
"dependencies": {
|
|
69
|
-
"@niceties/logger": "^1.1.
|
|
70
|
-
"@rollup-extras/utils": "^1.
|
|
69
|
+
"@niceties/logger": "^1.1.4",
|
|
70
|
+
"@rollup-extras/utils": "^1.3.1"
|
|
71
71
|
}
|
|
72
72
|
}
|