@rickard.antonsson/ts-utility 2.1.3 → 2.2.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.
|
@@ -15,8 +15,7 @@ function createElement(basicEmmet, listOrFn, list) {
|
|
|
15
15
|
elm.append(...list.map(i => (typeof i === 'function' ? i() : i)));
|
|
16
16
|
return elm;
|
|
17
17
|
}
|
|
18
|
-
|
|
19
|
-
function emmetCreateElement(str) {
|
|
18
|
+
function emmetCreateElement2(str) {
|
|
20
19
|
const matches = str.match(/([a-z-]+)(#[a-z1-9-]+)?((\.[a-z1-9-]+)*)(\{.+\})?/);
|
|
21
20
|
if (!matches)
|
|
22
21
|
return;
|
|
@@ -30,4 +29,43 @@ function emmetCreateElement(str) {
|
|
|
30
29
|
element.textContent = textContent.substring(1, textContent.length - 1);
|
|
31
30
|
return element;
|
|
32
31
|
}
|
|
32
|
+
function emmetCreateElement(input) {
|
|
33
|
+
var _a, _b, _c, _d, _e;
|
|
34
|
+
const [, tagname, , modifier] = (_a = input.match(/^([a-z-]+)(:([a-z-]+))?/)) !== null && _a !== void 0 ? _a : [];
|
|
35
|
+
const element = document.createElement((tagname !== null && tagname !== void 0 ? tagname : 'div'));
|
|
36
|
+
if (modifier)
|
|
37
|
+
handleElementModifier(element, modifier);
|
|
38
|
+
const [, id] = (_b = input.match(/#([a-z-]+)/)) !== null && _b !== void 0 ? _b : [];
|
|
39
|
+
if (id)
|
|
40
|
+
element.id = id;
|
|
41
|
+
const [, text] = (_c = input.match(/{(.*)}/)) !== null && _c !== void 0 ? _c : [];
|
|
42
|
+
if (text)
|
|
43
|
+
element.textContent = text;
|
|
44
|
+
const classnames = [...input.matchAll(/\.([a-z-0-9]*)/g)];
|
|
45
|
+
if (classnames.length)
|
|
46
|
+
element.className = classnames.map(cn => cn[1]).join(' ');
|
|
47
|
+
const [, allAttributes] = (_d = input.match(/\[(.*?)\]/)) !== null && _d !== void 0 ? _d : [];
|
|
48
|
+
const temp = [
|
|
49
|
+
...((_e = allAttributes === null || allAttributes === void 0 ? void 0 : allAttributes.matchAll(/(\b\w+\b)(=(\b\w+)|="(.+?)")?/gi)) !== null && _e !== void 0 ? _e : []),
|
|
50
|
+
];
|
|
51
|
+
temp === null || temp === void 0 ? void 0 : temp.forEach(([, prop, , single, multiple]) => { var _a; return (element[prop] = (_a = single !== null && single !== void 0 ? single : multiple) !== null && _a !== void 0 ? _a : true); });
|
|
52
|
+
return element;
|
|
53
|
+
}
|
|
54
|
+
function handleElementModifier(elm, attribute) {
|
|
55
|
+
var _a;
|
|
56
|
+
if (elm instanceof HTMLInputElement) {
|
|
57
|
+
const expand = {
|
|
58
|
+
b: 'button',
|
|
59
|
+
c: 'checkbox',
|
|
60
|
+
f: 'file',
|
|
61
|
+
h: 'hidden',
|
|
62
|
+
i: 'image',
|
|
63
|
+
r: 'radio',
|
|
64
|
+
s: 'submit',
|
|
65
|
+
t: 'text',
|
|
66
|
+
p: 'password',
|
|
67
|
+
};
|
|
68
|
+
elm.type = (_a = expand[attribute]) !== null && _a !== void 0 ? _a : attribute;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
33
71
|
//# sourceMappingURL=create-element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-element.js","sourceRoot":"","sources":["../../../src/functions/other/create-element.ts"],"names":[],"mappings":";;AAEA,sCAsBC;AAtBD,SAAgB,aAAa,CAK3B,UAAa,EACb,QAE4D,EAC5D,IAA8D;IAE9D,MAAM,GAAG,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC3C,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC;IAC3D,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QAChD,IAAI,OAAO,QAAQ,KAAK,UAAU;YAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;;YAE3D,GAAG,CAAC,MAAM,CACR,GAAG,CAAC,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAClE,CAAC;IACN,CAAC;IACD,IAAI,IAAI;QAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5E,OAAO,GAAG,CAAC;AACb,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"create-element.js","sourceRoot":"","sources":["../../../src/functions/other/create-element.ts"],"names":[],"mappings":"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"}
|