@mrts/soltw 0.3.13 → 0.3.23

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.
Files changed (50) hide show
  1. package/dist/index.d.ts +125 -10
  2. package/dist/index.js +3730 -10
  3. package/dist/index.jsx +3648 -10
  4. package/package.json +2 -2
  5. package/dist/Block.d.ts +0 -13
  6. package/dist/Block.js +0 -33
  7. package/dist/Block.jsx +0 -24
  8. package/dist/items/IdLabel.d.ts +0 -15
  9. package/dist/items/IdLabel.js +0 -19
  10. package/dist/items/IdLabel.jsx +0 -19
  11. package/dist/items/Item.d.ts +0 -25
  12. package/dist/items/Item.js +0 -75
  13. package/dist/items/Item.jsx +0 -60
  14. package/dist/items/ItemGroup.d.ts +0 -24
  15. package/dist/items/ItemGroup.js +0 -86
  16. package/dist/items/ItemGroup.jsx +0 -63
  17. package/dist/node_modules/solid-js/dist/solid.js +0 -677
  18. package/dist/node_modules/solid-js/dist/solid.jsx +0 -654
  19. package/dist/node_modules/solid-js/web/dist/web.js +0 -694
  20. package/dist/node_modules/solid-js/web/dist/web.jsx +0 -678
  21. package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +0 -1893
  22. package/dist/node_modules/tailwind-merge/dist/bundle-mjs.jsx +0 -1893
  23. package/dist/packages/common/dist/index.js +0 -4
  24. package/dist/packages/common/dist/index.jsx +0 -4
  25. package/dist/packages/common/dist/messages/index.js +0 -1
  26. package/dist/packages/common/dist/messages/index.jsx +0 -1
  27. package/dist/packages/common/dist/messages/logMessages.js +0 -14
  28. package/dist/packages/common/dist/messages/logMessages.jsx +0 -14
  29. package/dist/packages/common/dist/strings/index.js +0 -1
  30. package/dist/packages/common/dist/strings/index.jsx +0 -1
  31. package/dist/packages/common/dist/strings/tokenize.js +0 -47
  32. package/dist/packages/common/dist/strings/tokenize.jsx +0 -47
  33. package/dist/soltw.d.ts +0 -7
  34. package/dist/soltw.js +0 -10
  35. package/dist/soltw.jsx +0 -7
  36. package/dist/stylers/SVTStyler.d.ts +0 -32
  37. package/dist/stylers/SVTStyler.js +0 -65
  38. package/dist/stylers/SVTStyler.jsx +0 -65
  39. package/dist/stylers/Stylers.d.ts +0 -12
  40. package/dist/stylers/Stylers.js +0 -23
  41. package/dist/stylers/Stylers.jsx +0 -23
  42. package/dist/stylers/base.styler.d.ts +0 -6
  43. package/dist/stylers/base.styler.js +0 -71
  44. package/dist/stylers/base.styler.jsx +0 -71
  45. package/dist/stylers/index.js +0 -4
  46. package/dist/stylers/index.jsx +0 -4
  47. package/dist/stylers/normalizers.d.ts +0 -6
  48. package/dist/stylers/normalizers.js +0 -32
  49. package/dist/stylers/normalizers.jsx +0 -32
  50. package/dist/stylers/types.d.ts +0 -14
@@ -1,4 +0,0 @@
1
- import { argTokenizeBySpaces, buildArgTokenizeFunc, buildTokenizeFuncUsingSplitters, deduplicate, tokenizeBySpaces, tokenizeFilterString } from "./strings/tokenize.js";
2
- import "./strings/index.js";
3
- import { LogLevels } from "./messages/logMessages.js";
4
- import "./messages/index.js";
@@ -1,4 +0,0 @@
1
- import { argTokenizeBySpaces, buildArgTokenizeFunc, buildTokenizeFuncUsingSplitters, deduplicate, tokenizeBySpaces, tokenizeFilterString } from "./strings/tokenize.jsx";
2
- import "./strings/index.jsx";
3
- import { LogLevels } from "./messages/logMessages.jsx";
4
- import "./messages/index.jsx";
@@ -1 +0,0 @@
1
- import { LogLevels } from "./logMessages.js";
@@ -1 +0,0 @@
1
- import { LogLevels } from "./logMessages.jsx";
@@ -1,14 +0,0 @@
1
- //#region ../common/dist/messages/logMessages.js
2
- const LogLevels = [
3
- "ERROR",
4
- "WARNING",
5
- "INFO",
6
- "DEBUG"
7
- ];
8
- const LogLevelsMap = /* @__PURE__ */ new Map();
9
- LogLevels.forEach((level, i) => {
10
- LogLevelsMap.set(level, LogLevels.length - i);
11
- });
12
-
13
- //#endregion
14
- export { LogLevels };
@@ -1,14 +0,0 @@
1
- //#region ../common/dist/messages/logMessages.js
2
- const LogLevels = [
3
- "ERROR",
4
- "WARNING",
5
- "INFO",
6
- "DEBUG"
7
- ];
8
- const LogLevelsMap = /* @__PURE__ */ new Map();
9
- LogLevels.forEach((level, i) => {
10
- LogLevelsMap.set(level, LogLevels.length - i);
11
- });
12
-
13
- //#endregion
14
- export { LogLevels };
@@ -1 +0,0 @@
1
- import { argTokenizeBySpaces, buildArgTokenizeFunc, buildTokenizeFuncUsingSplitters, deduplicate, tokenizeBySpaces, tokenizeFilterString } from "./tokenize.js";
@@ -1 +0,0 @@
1
- import { argTokenizeBySpaces, buildArgTokenizeFunc, buildTokenizeFuncUsingSplitters, deduplicate, tokenizeBySpaces, tokenizeFilterString } from "./tokenize.jsx";
@@ -1,47 +0,0 @@
1
- //#region ../common/dist/strings/tokenize.js
2
- function buildTokenizeFuncUsingSplitters(splitters) {
3
- splitters = Array.isArray(splitters) ? splitters : [splitters];
4
- const tokenize = (s) => {
5
- let r = s.split(splitters[0]).filter((t) => t != "" && t != void 0);
6
- for (const splitter of splitters.slice(1)) {
7
- const r0 = [...r];
8
- r = [];
9
- for (const s$1 of r0) r.push(...tokenizeFilterString(s$1, {
10
- splitter,
11
- filter: (t) => t != "" && t != void 0
12
- }));
13
- }
14
- return r;
15
- };
16
- return tokenize;
17
- }
18
- function buildArgTokenizeFunc(tokenize) {
19
- const argTokenize = (arg) => {
20
- if (arg == void 0) return [];
21
- else if (Array.isArray(arg)) {
22
- const r = [];
23
- for (const a of arg) r.push(...argTokenize(a));
24
- return r;
25
- } else return tokenize(arg);
26
- };
27
- return argTokenize;
28
- }
29
- const tokenizeBySpaces = buildTokenizeFuncUsingSplitters(/\s+/);
30
- const argTokenizeBySpaces = buildArgTokenizeFunc(tokenizeBySpaces);
31
- function tokenizeFilterString(s, options = {}) {
32
- const separator = options.splitter ?? /\s+/;
33
- const filter = options.filter ?? ((s$1) => s$1.length > 0);
34
- return s.split(separator).filter(filter);
35
- }
36
- function deduplicate(items) {
37
- const r = [];
38
- const itemSet = /* @__PURE__ */ new Set();
39
- for (const item of items) if (!itemSet.has(item)) {
40
- r.push(item);
41
- itemSet.add(item);
42
- }
43
- return r;
44
- }
45
-
46
- //#endregion
47
- export { argTokenizeBySpaces, buildArgTokenizeFunc, buildTokenizeFuncUsingSplitters, deduplicate, tokenizeBySpaces, tokenizeFilterString };
@@ -1,47 +0,0 @@
1
- //#region ../common/dist/strings/tokenize.js
2
- function buildTokenizeFuncUsingSplitters(splitters) {
3
- splitters = Array.isArray(splitters) ? splitters : [splitters];
4
- const tokenize = (s) => {
5
- let r = s.split(splitters[0]).filter((t) => t != "" && t != void 0);
6
- for (const splitter of splitters.slice(1)) {
7
- const r0 = [...r];
8
- r = [];
9
- for (const s$1 of r0) r.push(...tokenizeFilterString(s$1, {
10
- splitter,
11
- filter: (t) => t != "" && t != void 0
12
- }));
13
- }
14
- return r;
15
- };
16
- return tokenize;
17
- }
18
- function buildArgTokenizeFunc(tokenize) {
19
- const argTokenize = (arg) => {
20
- if (arg == void 0) return [];
21
- else if (Array.isArray(arg)) {
22
- const r = [];
23
- for (const a of arg) r.push(...argTokenize(a));
24
- return r;
25
- } else return tokenize(arg);
26
- };
27
- return argTokenize;
28
- }
29
- const tokenizeBySpaces = buildTokenizeFuncUsingSplitters(/\s+/);
30
- const argTokenizeBySpaces = buildArgTokenizeFunc(tokenizeBySpaces);
31
- function tokenizeFilterString(s, options = {}) {
32
- const separator = options.splitter ?? /\s+/;
33
- const filter = options.filter ?? ((s$1) => s$1.length > 0);
34
- return s.split(separator).filter(filter);
35
- }
36
- function deduplicate(items) {
37
- const r = [];
38
- const itemSet = /* @__PURE__ */ new Set();
39
- for (const item of items) if (!itemSet.has(item)) {
40
- r.push(item);
41
- itemSet.add(item);
42
- }
43
- return r;
44
- }
45
-
46
- //#endregion
47
- export { argTokenizeBySpaces, buildArgTokenizeFunc, buildTokenizeFuncUsingSplitters, deduplicate, tokenizeBySpaces, tokenizeFilterString };
package/dist/soltw.d.ts DELETED
@@ -1,7 +0,0 @@
1
- import { Component } from "solid-js";
2
-
3
- //#region src/soltw.d.ts
4
- type TProps = {};
5
- declare const SolTw: Component<TProps>;
6
- //#endregion
7
- export { SolTw };
package/dist/soltw.js DELETED
@@ -1,10 +0,0 @@
1
- import { template } from "./node_modules/solid-js/web/dist/web.js";
2
-
3
- //#region src/soltw.tsx
4
- var _tmpl$ = /* @__PURE__ */ template(`<div class=bg-red-600>- - S O L T W - -`);
5
- const SolTw = (props) => {
6
- return _tmpl$();
7
- };
8
-
9
- //#endregion
10
- export { SolTw };
package/dist/soltw.jsx DELETED
@@ -1,7 +0,0 @@
1
- //#region src/soltw.tsx
2
- const SolTw = (props) => {
3
- return <div class="bg-red-600">- - S O L T W - -</div>;
4
- };
5
-
6
- //#endregion
7
- export { SolTw };
@@ -1,32 +0,0 @@
1
- import { ISVTStyler, TagListArgument, TagRule, TagRuleMode } from "./types.js";
2
-
3
- //#region src/stylers/SVTStyler.d.ts
4
- type SVTRule = {
5
- stagRule: TagRule;
6
- vtagRule: TagRule;
7
- classes: string[];
8
- };
9
- type SVTRuleDef = {
10
- stagMode?: TagRuleMode;
11
- vtagMode?: TagRuleMode;
12
- stags?: TagListArgument;
13
- vtags?: TagListArgument;
14
- classes?: TagListArgument;
15
- };
16
- type SVTStylerOptions = {
17
- normalizer?: (rawClasses: string[]) => string[];
18
- stagsNormaliser?: (rawTags: string[]) => string[];
19
- vtagsNormaliser?: (rawTags: string[]) => string[];
20
- };
21
- declare class SVTStyler implements ISVTStyler {
22
- readonly _rules: SVTRule[];
23
- readonly options: SVTStylerOptions;
24
- constructor(rules: SVTRuleDef[], options?: SVTStylerOptions);
25
- with(rules: SVTRuleDef[], options?: SVTStylerOptions): SVTStyler;
26
- classes(stags: TagListArgument, vtags: TagListArgument): string[];
27
- static normalizeRule(rule: SVTRuleDef): SVTRule;
28
- ruleMatches(rule: SVTRule, stags: string[], vtags: string[]): boolean;
29
- }
30
- declare function tagRuleMatches(rule: TagRule, candidateTags: string[]): boolean;
31
- //#endregion
32
- export { SVTRule, SVTRuleDef, SVTStyler, tagRuleMatches };
@@ -1,65 +0,0 @@
1
- import { argTokenizeBySpaces, deduplicate } from "../packages/common/dist/strings/tokenize.js";
2
- import "../packages/common/dist/index.js";
3
-
4
- //#region src/stylers/SVTStyler.ts
5
- var SVTStyler = class SVTStyler {
6
- _rules = [];
7
- options;
8
- constructor(rules, options = {}) {
9
- for (const r of rules) this._rules.push(SVTStyler.normalizeRule(r));
10
- this.options = { ...options };
11
- }
12
- with(rules, options = {}) {
13
- const addedRules = [];
14
- for (const r of rules) addedRules.push(SVTStyler.normalizeRule(r));
15
- const styler = new SVTStyler([], { ...this.options });
16
- styler._rules.push(...this._rules, ...addedRules);
17
- return styler;
18
- }
19
- classes(stags, vtags) {
20
- const r = [];
21
- let stagsNormalized = argTokenizeBySpaces(stags);
22
- let vtagsNormalized = argTokenizeBySpaces(vtags);
23
- if (this.options.stagsNormaliser) stagsNormalized = this.options.stagsNormaliser(stagsNormalized);
24
- if (this.options.vtagsNormaliser) vtagsNormalized = this.options.vtagsNormaliser(vtagsNormalized);
25
- for (const rule of this._rules) if (this.ruleMatches(rule, stagsNormalized, vtagsNormalized)) r.push(...rule.classes);
26
- return this.options.normalizer ? this.options.normalizer(r) : r;
27
- }
28
- static normalizeRule(rule) {
29
- let stagMode = rule.stagMode ?? "or";
30
- let vtagMode = rule.vtagMode ?? "or";
31
- let stags = deduplicate(argTokenizeBySpaces(rule.stags));
32
- let vtags = deduplicate(argTokenizeBySpaces(rule.vtags));
33
- let classes = deduplicate(argTokenizeBySpaces(rule.classes));
34
- if (rule.stags == void 0 && rule.stagMode == void 0) stagMode = "any";
35
- if (rule.vtags == void 0 && rule.vtagMode == void 0) vtagMode = "any";
36
- return {
37
- stagRule: {
38
- mode: stagMode,
39
- tags: stags
40
- },
41
- vtagRule: {
42
- mode: vtagMode,
43
- tags: vtags
44
- },
45
- classes
46
- };
47
- }
48
- ruleMatches(rule, stags, vtags) {
49
- return tagRuleMatches(rule.stagRule, stags) && tagRuleMatches(rule.vtagRule, vtags);
50
- }
51
- };
52
- function tagRuleMatches(rule, candidateTags) {
53
- if (rule.mode == "any") return true;
54
- else if (rule.mode == "or") {
55
- for (const ctag of candidateTags) if (rule.tags.indexOf(ctag) >= 0) return true;
56
- return false;
57
- } else if (rule.mode == "and") {
58
- for (const rtag of rule.tags) if (candidateTags.indexOf(rtag) < 0) return false;
59
- return true;
60
- }
61
- return false;
62
- }
63
-
64
- //#endregion
65
- export { SVTStyler, tagRuleMatches };
@@ -1,65 +0,0 @@
1
- import { argTokenizeBySpaces, deduplicate } from "../packages/common/dist/strings/tokenize.jsx";
2
- import "../packages/common/dist/index.jsx";
3
-
4
- //#region src/stylers/SVTStyler.ts
5
- var SVTStyler = class SVTStyler {
6
- _rules = [];
7
- options;
8
- constructor(rules, options = {}) {
9
- for (const r of rules) this._rules.push(SVTStyler.normalizeRule(r));
10
- this.options = { ...options };
11
- }
12
- with(rules, options = {}) {
13
- const addedRules = [];
14
- for (const r of rules) addedRules.push(SVTStyler.normalizeRule(r));
15
- const styler = new SVTStyler([], { ...this.options });
16
- styler._rules.push(...this._rules, ...addedRules);
17
- return styler;
18
- }
19
- classes(stags, vtags) {
20
- const r = [];
21
- let stagsNormalized = argTokenizeBySpaces(stags);
22
- let vtagsNormalized = argTokenizeBySpaces(vtags);
23
- if (this.options.stagsNormaliser) stagsNormalized = this.options.stagsNormaliser(stagsNormalized);
24
- if (this.options.vtagsNormaliser) vtagsNormalized = this.options.vtagsNormaliser(vtagsNormalized);
25
- for (const rule of this._rules) if (this.ruleMatches(rule, stagsNormalized, vtagsNormalized)) r.push(...rule.classes);
26
- return this.options.normalizer ? this.options.normalizer(r) : r;
27
- }
28
- static normalizeRule(rule) {
29
- let stagMode = rule.stagMode ?? "or";
30
- let vtagMode = rule.vtagMode ?? "or";
31
- let stags = deduplicate(argTokenizeBySpaces(rule.stags));
32
- let vtags = deduplicate(argTokenizeBySpaces(rule.vtags));
33
- let classes = deduplicate(argTokenizeBySpaces(rule.classes));
34
- if (rule.stags == void 0 && rule.stagMode == void 0) stagMode = "any";
35
- if (rule.vtags == void 0 && rule.vtagMode == void 0) vtagMode = "any";
36
- return {
37
- stagRule: {
38
- mode: stagMode,
39
- tags: stags
40
- },
41
- vtagRule: {
42
- mode: vtagMode,
43
- tags: vtags
44
- },
45
- classes
46
- };
47
- }
48
- ruleMatches(rule, stags, vtags) {
49
- return tagRuleMatches(rule.stagRule, stags) && tagRuleMatches(rule.vtagRule, vtags);
50
- }
51
- };
52
- function tagRuleMatches(rule, candidateTags) {
53
- if (rule.mode == "any") return true;
54
- else if (rule.mode == "or") {
55
- for (const ctag of candidateTags) if (rule.tags.indexOf(ctag) >= 0) return true;
56
- return false;
57
- } else if (rule.mode == "and") {
58
- for (const rtag of rule.tags) if (candidateTags.indexOf(rtag) < 0) return false;
59
- return true;
60
- }
61
- return false;
62
- }
63
-
64
- //#endregion
65
- export { SVTStyler, tagRuleMatches };
@@ -1,12 +0,0 @@
1
- import { ISVTStyler } from "./types.js";
2
-
3
- //#region src/stylers/Stylers.d.ts
4
- declare class Stylers {
5
- private static _base;
6
- private static _stylersMap;
7
- static get base(): ISVTStyler | undefined;
8
- static setBase(base: ISVTStyler | undefined): ISVTStyler | undefined;
9
- static get(name: string): ISVTStyler | undefined;
10
- }
11
- //#endregion
12
- export { Stylers };
@@ -1,23 +0,0 @@
1
- import { baseStyler } from "./base.styler.js";
2
-
3
- //#region src/stylers/Stylers.ts
4
- var Stylers = class {
5
- static _base;
6
- static _stylersMap = /* @__PURE__ */ new Map();
7
- static get base() {
8
- return this._base;
9
- }
10
- static setBase(base) {
11
- return this._base = base;
12
- }
13
- static {
14
- this._stylersMap.set("default", baseStyler);
15
- this.setBase(baseStyler);
16
- }
17
- static get(name) {
18
- return this._stylersMap.get(name);
19
- }
20
- };
21
-
22
- //#endregion
23
- export { Stylers };
@@ -1,23 +0,0 @@
1
- import { baseStyler } from "./base.styler.jsx";
2
-
3
- //#region src/stylers/Stylers.ts
4
- var Stylers = class {
5
- static _base;
6
- static _stylersMap = /* @__PURE__ */ new Map();
7
- static get base() {
8
- return this._base;
9
- }
10
- static setBase(base) {
11
- return this._base = base;
12
- }
13
- static {
14
- this._stylersMap.set("default", baseStyler);
15
- this.setBase(baseStyler);
16
- }
17
- static get(name) {
18
- return this._stylersMap.get(name);
19
- }
20
- };
21
-
22
- //#endregion
23
- export { Stylers };
@@ -1,6 +0,0 @@
1
- import { SVTStyler } from "./SVTStyler.js";
2
-
3
- //#region src/stylers/base.styler.d.ts
4
- declare const baseStyler: SVTStyler;
5
- //#endregion
6
- export { baseStyler };
@@ -1,71 +0,0 @@
1
- import { exclusiveTagsNormalize, mainTagNormalize, twMergeNormalize } from "./normalizers.js";
2
- import { SVTStyler } from "./SVTStyler.js";
3
-
4
- //#region src/stylers/base.styler.ts
5
- const baseStyler = new SVTStyler([
6
- {
7
- vtags: "A",
8
- classes: "bg-slate-100 text-slate-800"
9
- },
10
- {
11
- vtags: "B",
12
- classes: "bg-slate-800 text-slate-100"
13
- },
14
- {
15
- vtags: "C",
16
- classes: "bg-stone-300 text-orange-950"
17
- },
18
- {
19
- vtags: "D",
20
- classes: "bg-orange-900 text-stone-100"
21
- },
22
- {
23
- vtags: "LG",
24
- classes: "text-xl p-2"
25
- },
26
- {
27
- vtags: "BASE",
28
- classes: "text-base p-1"
29
- },
30
- {
31
- vtags: "SM",
32
- classes: "text-sm p-0.5"
33
- },
34
- {
35
- vtags: "LG",
36
- stags: "item",
37
- classes: "text-xl px-2 py-1"
38
- },
39
- {
40
- vtags: "BASE",
41
- stags: "item",
42
- classes: "text-base px-1 py-0.5"
43
- },
44
- {
45
- vtags: "SM",
46
- stags: "item",
47
- classes: "text-sm p-0.5"
48
- },
49
- {
50
- stags: "item:selected",
51
- classes: "underline font-bold"
52
- },
53
- {
54
- stags: "item:disabled",
55
- classes: "blur-[1px]"
56
- },
57
- {
58
- stags: "item/disabler",
59
- classes: "bg-slate-300/85 cursor-not-allowed"
60
- }
61
- ], {
62
- normalizer: twMergeNormalize,
63
- vtagsNormaliser: (tags) => exclusiveTagsNormalize(mainTagNormalize(tags, "A"), new Set([
64
- "SM",
65
- "BASE",
66
- "LG"
67
- ]), "BASE")
68
- });
69
-
70
- //#endregion
71
- export { baseStyler };
@@ -1,71 +0,0 @@
1
- import { exclusiveTagsNormalize, mainTagNormalize, twMergeNormalize } from "./normalizers.jsx";
2
- import { SVTStyler } from "./SVTStyler.jsx";
3
-
4
- //#region src/stylers/base.styler.ts
5
- const baseStyler = new SVTStyler([
6
- {
7
- vtags: "A",
8
- classes: "bg-slate-100 text-slate-800"
9
- },
10
- {
11
- vtags: "B",
12
- classes: "bg-slate-800 text-slate-100"
13
- },
14
- {
15
- vtags: "C",
16
- classes: "bg-stone-300 text-orange-950"
17
- },
18
- {
19
- vtags: "D",
20
- classes: "bg-orange-900 text-stone-100"
21
- },
22
- {
23
- vtags: "LG",
24
- classes: "text-xl p-2"
25
- },
26
- {
27
- vtags: "BASE",
28
- classes: "text-base p-1"
29
- },
30
- {
31
- vtags: "SM",
32
- classes: "text-sm p-0.5"
33
- },
34
- {
35
- vtags: "LG",
36
- stags: "item",
37
- classes: "text-xl px-2 py-1"
38
- },
39
- {
40
- vtags: "BASE",
41
- stags: "item",
42
- classes: "text-base px-1 py-0.5"
43
- },
44
- {
45
- vtags: "SM",
46
- stags: "item",
47
- classes: "text-sm p-0.5"
48
- },
49
- {
50
- stags: "item:selected",
51
- classes: "underline font-bold"
52
- },
53
- {
54
- stags: "item:disabled",
55
- classes: "blur-[1px]"
56
- },
57
- {
58
- stags: "item/disabler",
59
- classes: "bg-slate-300/85 cursor-not-allowed"
60
- }
61
- ], {
62
- normalizer: twMergeNormalize,
63
- vtagsNormaliser: (tags) => exclusiveTagsNormalize(mainTagNormalize(tags, "A"), new Set([
64
- "SM",
65
- "BASE",
66
- "LG"
67
- ]), "BASE")
68
- });
69
-
70
- //#endregion
71
- export { baseStyler };
@@ -1,4 +0,0 @@
1
- import { exclusiveTagsNormalize, mainTagNormalize, twMergeNormalize } from "./normalizers.js";
2
- import { SVTStyler, tagRuleMatches } from "./SVTStyler.js";
3
- import { baseStyler } from "./base.styler.js";
4
- import { Stylers } from "./Stylers.js";
@@ -1,4 +0,0 @@
1
- import { exclusiveTagsNormalize, mainTagNormalize, twMergeNormalize } from "./normalizers.jsx";
2
- import { SVTStyler, tagRuleMatches } from "./SVTStyler.jsx";
3
- import { baseStyler } from "./base.styler.jsx";
4
- import { Stylers } from "./Stylers.jsx";
@@ -1,6 +0,0 @@
1
- //#region src/stylers/normalizers.d.ts
2
- declare function twMergeNormalize(raw: string[]): string[];
3
- declare function mainTagNormalize(rawTags: string[], defaultTag?: string): string[];
4
- declare function exclusiveTagsNormalize(rawTags: string[], tagSet: Set<String> | ((tag: string) => boolean), defaultTag?: string): string[];
5
- //#endregion
6
- export { exclusiveTagsNormalize, mainTagNormalize, twMergeNormalize };
@@ -1,32 +0,0 @@
1
- import { twMerge } from "../node_modules/tailwind-merge/dist/bundle-mjs.js";
2
- import { tokenizeFilterString } from "../packages/common/dist/strings/tokenize.js";
3
- import "../packages/common/dist/index.js";
4
-
5
- //#region src/stylers/normalizers.ts
6
- function twMergeNormalize(raw) {
7
- return tokenizeFilterString(twMerge(...raw));
8
- }
9
- function mainTagNormalize(rawTags, defaultTag) {
10
- return exclusiveTagsNormalize(rawTags, (tag) => tag.length == 1 && tag.toUpperCase() == tag, defaultTag);
11
- }
12
- function exclusiveTagsNormalize(rawTags, tagSet, defaultTag) {
13
- const rhead = [];
14
- const rtail = [];
15
- let rtag = void 0;
16
- const tagSetFunc = typeof tagSet == "function" ? tagSet : (tag) => tagSet.has(tag);
17
- for (const tag of rawTags) if (tagSetFunc(tag)) {
18
- rtag = tag;
19
- rhead.push(...rtail);
20
- rtail.length = 0;
21
- } else if (rtag == void 0) rhead.push(tag);
22
- else rtail.push(tag);
23
- rtag = rtag ?? defaultTag;
24
- return rtag == void 0 ? [...rhead, ...rtail] : [
25
- ...rhead,
26
- rtag,
27
- ...rtail
28
- ];
29
- }
30
-
31
- //#endregion
32
- export { exclusiveTagsNormalize, mainTagNormalize, twMergeNormalize };
@@ -1,32 +0,0 @@
1
- import { twMerge } from "../node_modules/tailwind-merge/dist/bundle-mjs.jsx";
2
- import { tokenizeFilterString } from "../packages/common/dist/strings/tokenize.jsx";
3
- import "../packages/common/dist/index.jsx";
4
-
5
- //#region src/stylers/normalizers.ts
6
- function twMergeNormalize(raw) {
7
- return tokenizeFilterString(twMerge(...raw));
8
- }
9
- function mainTagNormalize(rawTags, defaultTag) {
10
- return exclusiveTagsNormalize(rawTags, (tag) => tag.length == 1 && tag.toUpperCase() == tag, defaultTag);
11
- }
12
- function exclusiveTagsNormalize(rawTags, tagSet, defaultTag) {
13
- const rhead = [];
14
- const rtail = [];
15
- let rtag = void 0;
16
- const tagSetFunc = typeof tagSet == "function" ? tagSet : (tag) => tagSet.has(tag);
17
- for (const tag of rawTags) if (tagSetFunc(tag)) {
18
- rtag = tag;
19
- rhead.push(...rtail);
20
- rtail.length = 0;
21
- } else if (rtag == void 0) rhead.push(tag);
22
- else rtail.push(tag);
23
- rtag = rtag ?? defaultTag;
24
- return rtag == void 0 ? [...rhead, ...rtail] : [
25
- ...rhead,
26
- rtag,
27
- ...rtail
28
- ];
29
- }
30
-
31
- //#endregion
32
- export { exclusiveTagsNormalize, mainTagNormalize, twMergeNormalize };
@@ -1,14 +0,0 @@
1
- import { TokenizeArg } from "@mrts/common";
2
-
3
- //#region src/stylers/types.d.ts
4
- type TagListArgument = TokenizeArg;
5
- interface ISVTStyler {
6
- classes(stags: TagListArgument, vtags: TagListArgument): string[] | undefined;
7
- }
8
- type TagRuleMode = "or" | "and" | "any";
9
- type TagRule = {
10
- mode: TagRuleMode;
11
- tags: string[];
12
- };
13
- //#endregion
14
- export { ISVTStyler, TagListArgument, TagRule, TagRuleMode };