aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/twbs/bootstrap/js/dist/util/template-factory.js
diff options
context:
space:
mode:
authorMario <mario@mariovavti.com>2023-01-20 11:05:15 +0000
committerMario <mario@mariovavti.com>2023-01-20 11:05:15 +0000
commit9dc949b62c6b5e3c8872211f71b11714d9d22b22 (patch)
tree38c06e7a128742e219eb74d6adb035f2f106918a /vendor/twbs/bootstrap/js/dist/util/template-factory.js
parent40394b94d7c8a8bf1f61f5482195164fff434b90 (diff)
downloadvolse-hubzilla-9dc949b62c6b5e3c8872211f71b11714d9d22b22.tar.gz
volse-hubzilla-9dc949b62c6b5e3c8872211f71b11714d9d22b22.tar.bz2
volse-hubzilla-9dc949b62c6b5e3c8872211f71b11714d9d22b22.zip
native dark theme initial checkin
Diffstat (limited to 'vendor/twbs/bootstrap/js/dist/util/template-factory.js')
-rw-r--r--vendor/twbs/bootstrap/js/dist/util/template-factory.js70
1 files changed, 21 insertions, 49 deletions
diff --git a/vendor/twbs/bootstrap/js/dist/util/template-factory.js b/vendor/twbs/bootstrap/js/dist/util/template-factory.js
index faac3352b..3cc8ca2cf 100644
--- a/vendor/twbs/bootstrap/js/dist/util/template-factory.js
+++ b/vendor/twbs/bootstrap/js/dist/util/template-factory.js
@@ -1,32 +1,28 @@
/*!
- * Bootstrap template-factory.js v5.2.2 (https://getbootstrap.com/)
+ * Bootstrap template-factory.js v5.3.0-alpha1 (https://getbootstrap.com/)
* Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/
(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./sanitizer'), require('./index'), require('../dom/selector-engine'), require('./config')) :
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./sanitizer.js'), require('./index.js'), require('../dom/selector-engine.js'), require('./config.js')) :
typeof define === 'function' && define.amd ? define(['./sanitizer', './index', '../dom/selector-engine', './config'], factory) :
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.TemplateFactory = factory(global.Sanitizer, global.Index, global.SelectorEngine, global.Config));
-})(this, (function (sanitizer, index, SelectorEngine, Config) { 'use strict';
-
- const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
-
- const SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine);
- const Config__default = /*#__PURE__*/_interopDefaultLegacy(Config);
+})(this, (function (sanitizer_js, index_js, SelectorEngine, Config) { 'use strict';
/**
* --------------------------------------------------------------------------
- * Bootstrap (v5.2.2): util/template-factory.js
+ * Bootstrap (v5.3.0-alpha1): util/template-factory.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* --------------------------------------------------------------------------
*/
+
/**
* Constants
*/
const NAME = 'TemplateFactory';
const Default = {
- allowList: sanitizer.DefaultAllowlist,
+ allowList: sanitizer_js.DefaultAllowlist,
content: {},
// { selector : text , selector2 : text2 , }
extraClass: '',
@@ -48,73 +44,62 @@
entry: '(string|element|function|null)',
selector: '(string|element)'
};
+
/**
* Class definition
*/
- class TemplateFactory extends Config__default.default {
+ class TemplateFactory extends Config {
constructor(config) {
super();
this._config = this._getConfig(config);
- } // Getters
-
+ }
+ // Getters
static get Default() {
return Default;
}
-
static get DefaultType() {
return DefaultType;
}
-
static get NAME() {
return NAME;
- } // Public
-
+ }
+ // Public
getContent() {
return Object.values(this._config.content).map(config => this._resolvePossibleFunction(config)).filter(Boolean);
}
-
hasContent() {
return this.getContent().length > 0;
}
-
changeContent(content) {
this._checkContent(content);
-
- this._config.content = { ...this._config.content,
+ this._config.content = {
+ ...this._config.content,
...content
};
return this;
}
-
toHtml() {
const templateWrapper = document.createElement('div');
templateWrapper.innerHTML = this._maybeSanitize(this._config.template);
-
for (const [selector, text] of Object.entries(this._config.content)) {
this._setContent(templateWrapper, text, selector);
}
-
const template = templateWrapper.children[0];
-
const extraClass = this._resolvePossibleFunction(this._config.extraClass);
-
if (extraClass) {
template.classList.add(...extraClass.split(' '));
}
-
return template;
- } // Private
-
+ }
+ // Private
_typeCheckConfig(config) {
super._typeCheckConfig(config);
-
this._checkContent(config.content);
}
-
_checkContent(arg) {
for (const [selector, content] of Object.entries(arg)) {
super._typeCheckConfig({
@@ -123,53 +108,40 @@
}, DefaultContentType);
}
}
-
_setContent(template, content, selector) {
- const templateElement = SelectorEngine__default.default.findOne(selector, template);
-
+ const templateElement = SelectorEngine.findOne(selector, template);
if (!templateElement) {
return;
}
-
content = this._resolvePossibleFunction(content);
-
if (!content) {
templateElement.remove();
return;
}
-
- if (index.isElement(content)) {
- this._putElementInTemplate(index.getElement(content), templateElement);
-
+ if (index_js.isElement(content)) {
+ this._putElementInTemplate(index_js.getElement(content), templateElement);
return;
}
-
if (this._config.html) {
templateElement.innerHTML = this._maybeSanitize(content);
return;
}
-
templateElement.textContent = content;
}
-
_maybeSanitize(arg) {
- return this._config.sanitize ? sanitizer.sanitizeHtml(arg, this._config.allowList, this._config.sanitizeFn) : arg;
+ return this._config.sanitize ? sanitizer_js.sanitizeHtml(arg, this._config.allowList, this._config.sanitizeFn) : arg;
}
-
_resolvePossibleFunction(arg) {
- return typeof arg === 'function' ? arg(this) : arg;
+ return index_js.execute(arg, [this]);
}
-
_putElementInTemplate(element, templateElement) {
if (this._config.html) {
templateElement.innerHTML = '';
templateElement.append(element);
return;
}
-
templateElement.textContent = element.textContent;
}
-
}
return TemplateFactory;