@universityofmaryland/web-model-library 1.0.0 → 1.0.2-beta.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/README.md +1 -1
- package/dist/_virtual/___vite-browser-external.js +6 -7
- package/dist/_virtual/___vite-browser-external.js.map +1 -1
- package/dist/_virtual/__vite-browser-external.js +3 -2
- package/dist/_virtual/__vite-browser-external.js.map +1 -1
- package/dist/_virtual/_commonjsHelpers.js +4 -4
- package/dist/_virtual/_commonjsHelpers.js.map +1 -1
- package/dist/_virtual/index.js +7 -6
- package/dist/_virtual/index.js.map +1 -1
- package/dist/_virtual/picocolors.browser.js +3 -3
- package/dist/_virtual/picocolors.browser.js.map +1 -1
- package/dist/_virtual/postcss.js +7 -6
- package/dist/_virtual/postcss.js.map +1 -1
- package/dist/_virtual/symbols.js +3 -3
- package/dist/_virtual/symbols.js.map +1 -1
- package/dist/attributes/checks.d.ts +5 -6
- package/dist/attributes/checks.d.ts.map +1 -1
- package/dist/attributes/checks.js +338 -340
- package/dist/attributes/checks.js.map +1 -1
- package/dist/attributes/handler.d.ts +1 -2
- package/dist/attributes/handler.d.ts.map +1 -1
- package/dist/attributes/handler.js +20 -19
- package/dist/attributes/handler.js.map +1 -1
- package/dist/attributes/index.d.ts +4 -4
- package/dist/attributes/index.d.ts.map +1 -1
- package/dist/attributes/names.d.ts +4 -6
- package/dist/attributes/names.d.ts.map +1 -1
- package/dist/attributes/names.js +7 -8
- package/dist/attributes/names.js.map +1 -1
- package/dist/attributes/values.d.ts +13 -11
- package/dist/attributes/values.d.ts.map +1 -1
- package/dist/attributes/values.js +7 -3
- package/dist/attributes/values.js.map +1 -1
- package/dist/attributes.js +21 -22
- package/dist/attributes.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -12
- package/dist/index.js.map +1 -1
- package/dist/model.js +7 -7
- package/dist/model.js.map +1 -1
- package/dist/node_modules/nanoid/non-secure/index.js +3 -3
- package/dist/node_modules/nanoid/non-secure/index.js.map +1 -1
- package/dist/node_modules/picocolors/picocolors.browser.js +8 -8
- package/dist/node_modules/picocolors/picocolors.browser.js.map +1 -1
- package/dist/node_modules/postcss/lib/at-rule.js +5 -5
- package/dist/node_modules/postcss/lib/at-rule.js.map +1 -1
- package/dist/node_modules/postcss/lib/comment.js +5 -5
- package/dist/node_modules/postcss/lib/comment.js.map +1 -1
- package/dist/node_modules/postcss/lib/container.js +69 -62
- package/dist/node_modules/postcss/lib/container.js.map +1 -1
- package/dist/node_modules/postcss/lib/css-syntax-error.js +30 -19
- package/dist/node_modules/postcss/lib/css-syntax-error.js.map +1 -1
- package/dist/node_modules/postcss/lib/declaration.js +8 -8
- package/dist/node_modules/postcss/lib/declaration.js.map +1 -1
- package/dist/node_modules/postcss/lib/document.js +5 -5
- package/dist/node_modules/postcss/lib/document.js.map +1 -1
- package/dist/node_modules/postcss/lib/fromJSON.js +19 -19
- package/dist/node_modules/postcss/lib/fromJSON.js.map +1 -1
- package/dist/node_modules/postcss/lib/input.js +51 -37
- package/dist/node_modules/postcss/lib/input.js.map +1 -1
- package/dist/node_modules/postcss/lib/lazy-result.js +67 -67
- package/dist/node_modules/postcss/lib/lazy-result.js.map +1 -1
- package/dist/node_modules/postcss/lib/list.js +3 -3
- package/dist/node_modules/postcss/lib/list.js.map +1 -1
- package/dist/node_modules/postcss/lib/map-generator.js +27 -18
- package/dist/node_modules/postcss/lib/map-generator.js.map +1 -1
- package/dist/node_modules/postcss/lib/no-work-result.js +54 -51
- package/dist/node_modules/postcss/lib/no-work-result.js.map +1 -1
- package/dist/node_modules/postcss/lib/node.js +91 -38
- package/dist/node_modules/postcss/lib/node.js.map +1 -1
- package/dist/node_modules/postcss/lib/parse.js +13 -13
- package/dist/node_modules/postcss/lib/parse.js.map +1 -1
- package/dist/node_modules/postcss/lib/parser.js +21 -20
- package/dist/node_modules/postcss/lib/parser.js.map +1 -1
- package/dist/node_modules/postcss/lib/postcss.js +4 -3
- package/dist/node_modules/postcss/lib/postcss.js.map +1 -1
- package/dist/node_modules/postcss/lib/postcss2.js +43 -43
- package/dist/node_modules/postcss/lib/postcss2.js.map +1 -1
- package/dist/node_modules/postcss/lib/previous-map.js +14 -12
- package/dist/node_modules/postcss/lib/previous-map.js.map +1 -1
- package/dist/node_modules/postcss/lib/processor.js +13 -13
- package/dist/node_modules/postcss/lib/processor.js.map +1 -1
- package/dist/node_modules/postcss/lib/result.js +12 -12
- package/dist/node_modules/postcss/lib/result.js.map +1 -1
- package/dist/node_modules/postcss/lib/root.js +5 -5
- package/dist/node_modules/postcss/lib/root.js.map +1 -1
- package/dist/node_modules/postcss/lib/rule.js +13 -13
- package/dist/node_modules/postcss/lib/rule.js.map +1 -1
- package/dist/node_modules/postcss/lib/stringifier.js +3 -3
- package/dist/node_modules/postcss/lib/stringifier.js.map +1 -1
- package/dist/node_modules/postcss/lib/stringify.js +5 -5
- package/dist/node_modules/postcss/lib/stringify.js.map +1 -1
- package/dist/node_modules/postcss/lib/symbols.js +8 -8
- package/dist/node_modules/postcss/lib/symbols.js.map +1 -1
- package/dist/node_modules/postcss/lib/tokenize.js +5 -5
- package/dist/node_modules/postcss/lib/tokenize.js.map +1 -1
- package/dist/node_modules/postcss/lib/warning.js +3 -3
- package/dist/node_modules/postcss/lib/warning.js.map +1 -1
- package/dist/packages/model/node_modules/postcss-discard-duplicates/src/index.js +3 -3
- package/dist/packages/model/node_modules/postcss-discard-duplicates/src/index.js.map +1 -1
- package/dist/slots/create.js +3 -3
- package/dist/slots/create.js.map +1 -1
- package/dist/slots/element.js +3 -3
- package/dist/slots/element.js.map +1 -1
- package/dist/slots/index.d.ts +23 -16
- package/dist/slots/index.d.ts.map +1 -1
- package/dist/slots/mapping.d.ts +4 -0
- package/dist/slots/mapping.d.ts.map +1 -1
- package/dist/slots/mapping.js +8 -4
- package/dist/slots/mapping.js.map +1 -1
- package/dist/slots.d.ts +0 -4
- package/dist/slots.js +41 -36
- package/dist/slots.js.map +1 -1
- package/dist/utilities/index.d.ts +1 -1
- package/dist/utilities/index.d.ts.map +1 -1
- package/dist/utilities/lifecycle.js +4 -4
- package/dist/utilities/lifecycle.js.map +1 -1
- package/dist/utilities/register.js +6 -6
- package/dist/utilities/register.js.map +1 -1
- package/dist/utilities/styles.d.ts +1 -2
- package/dist/utilities/styles.d.ts.map +1 -1
- package/dist/utilities/styles.js +15 -10
- package/dist/utilities/styles.js.map +1 -1
- package/dist/utilities.js +10 -10
- package/dist/utilities.js.map +1 -1
- package/package.json +13 -12
- package/dist/_virtual/___vite-browser-external.mjs +0 -7
- package/dist/_virtual/___vite-browser-external.mjs.map +0 -1
- package/dist/_virtual/__vite-browser-external.mjs +0 -5
- package/dist/_virtual/__vite-browser-external.mjs.map +0 -1
- package/dist/_virtual/_commonjsHelpers.mjs +0 -37
- package/dist/_virtual/_commonjsHelpers.mjs.map +0 -1
- package/dist/_virtual/index.mjs +0 -8
- package/dist/_virtual/index.mjs.map +0 -1
- package/dist/_virtual/picocolors.browser.mjs +0 -5
- package/dist/_virtual/picocolors.browser.mjs.map +0 -1
- package/dist/_virtual/postcss.mjs +0 -8
- package/dist/_virtual/postcss.mjs.map +0 -1
- package/dist/_virtual/symbols.mjs +0 -5
- package/dist/_virtual/symbols.mjs.map +0 -1
- package/dist/attributes/checks.mjs +0 -740
- package/dist/attributes/checks.mjs.map +0 -1
- package/dist/attributes/handler.mjs +0 -206
- package/dist/attributes/handler.mjs.map +0 -1
- package/dist/attributes/names.mjs +0 -146
- package/dist/attributes/names.mjs.map +0 -1
- package/dist/attributes/values.mjs +0 -81
- package/dist/attributes/values.mjs.map +0 -1
- package/dist/attributes.mjs +0 -23
- package/dist/attributes.mjs.map +0 -1
- package/dist/index.mjs +0 -13
- package/dist/index.mjs.map +0 -1
- package/dist/model.mjs +0 -259
- package/dist/model.mjs.map +0 -1
- package/dist/node_modules/nanoid/non-secure/index.mjs +0 -31
- package/dist/node_modules/nanoid/non-secure/index.mjs.map +0 -1
- package/dist/node_modules/picocolors/picocolors.browser.mjs +0 -17
- package/dist/node_modules/picocolors/picocolors.browser.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/at-rule.mjs +0 -30
- package/dist/node_modules/postcss/lib/at-rule.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/comment.mjs +0 -21
- package/dist/node_modules/postcss/lib/comment.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/container.mjs +0 -383
- package/dist/node_modules/postcss/lib/container.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/css-syntax-error.mjs +0 -92
- package/dist/node_modules/postcss/lib/css-syntax-error.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/declaration.mjs +0 -27
- package/dist/node_modules/postcss/lib/declaration.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/document.mjs +0 -34
- package/dist/node_modules/postcss/lib/document.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/fromJSON.mjs +0 -67
- package/dist/node_modules/postcss/lib/fromJSON.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/input.mjs +0 -216
- package/dist/node_modules/postcss/lib/input.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/lazy-result.mjs +0 -467
- package/dist/node_modules/postcss/lib/lazy-result.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/list.mjs +0 -60
- package/dist/node_modules/postcss/lib/list.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/map-generator.mjs +0 -314
- package/dist/node_modules/postcss/lib/map-generator.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/no-work-result.mjs +0 -113
- package/dist/node_modules/postcss/lib/no-work-result.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/node.mjs +0 -335
- package/dist/node_modules/postcss/lib/node.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/parse.mjs +0 -30
- package/dist/node_modules/postcss/lib/parse.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/parser.mjs +0 -543
- package/dist/node_modules/postcss/lib/parser.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/postcss.mjs +0 -29
- package/dist/node_modules/postcss/lib/postcss.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/postcss2.mjs +0 -110
- package/dist/node_modules/postcss/lib/postcss2.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/previous-map.mjs +0 -123
- package/dist/node_modules/postcss/lib/previous-map.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/processor.mjs +0 -61
- package/dist/node_modules/postcss/lib/processor.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/result.mjs +0 -44
- package/dist/node_modules/postcss/lib/result.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/root.mjs +0 -58
- package/dist/node_modules/postcss/lib/root.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/rule.mjs +0 -33
- package/dist/node_modules/postcss/lib/rule.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/stringifier.mjs +0 -308
- package/dist/node_modules/postcss/lib/stringifier.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/stringify.mjs +0 -19
- package/dist/node_modules/postcss/lib/stringify.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/symbols.mjs +0 -13
- package/dist/node_modules/postcss/lib/symbols.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/tokenize.mjs +0 -219
- package/dist/node_modules/postcss/lib/tokenize.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/warning.mjs +0 -40
- package/dist/node_modules/postcss/lib/warning.mjs.map +0 -1
- package/dist/packages/model/node_modules/postcss-discard-duplicates/src/index.mjs +0 -130
- package/dist/packages/model/node_modules/postcss-discard-duplicates/src/index.mjs.map +0 -1
- package/dist/slots/create.mjs +0 -50
- package/dist/slots/create.mjs.map +0 -1
- package/dist/slots/element.mjs +0 -42
- package/dist/slots/element.mjs.map +0 -1
- package/dist/slots/mapping.mjs +0 -97
- package/dist/slots/mapping.mjs.map +0 -1
- package/dist/slots.mjs +0 -74
- package/dist/slots.mjs.map +0 -1
- package/dist/utilities/lifecycle.mjs +0 -21
- package/dist/utilities/lifecycle.mjs.map +0 -1
- package/dist/utilities/register.mjs +0 -32
- package/dist/utilities/register.mjs.map +0 -1
- package/dist/utilities/styles.mjs +0 -80
- package/dist/utilities/styles.mjs.map +0 -1
- package/dist/utilities.mjs +0 -11
- package/dist/utilities.mjs.map +0 -1
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
declare const AttributeValues: {
|
|
2
|
-
campaign: {
|
|
1
|
+
export declare const AttributeValues: {
|
|
2
|
+
readonly campaign: {
|
|
3
3
|
forward: string;
|
|
4
4
|
};
|
|
5
|
-
data: {
|
|
5
|
+
readonly data: {
|
|
6
6
|
type: {
|
|
7
7
|
academic: string;
|
|
8
8
|
};
|
|
9
9
|
};
|
|
10
|
-
display: {
|
|
10
|
+
readonly display: {
|
|
11
11
|
block: string;
|
|
12
12
|
feature: string;
|
|
13
13
|
featured: string;
|
|
@@ -23,8 +23,11 @@ declare const AttributeValues: {
|
|
|
23
23
|
statement: string;
|
|
24
24
|
sticky: string;
|
|
25
25
|
tabular: string;
|
|
26
|
+
mega: string;
|
|
27
|
+
visual: string;
|
|
28
|
+
simple: string;
|
|
26
29
|
};
|
|
27
|
-
layout: {
|
|
30
|
+
readonly layout: {
|
|
28
31
|
center: string;
|
|
29
32
|
defaultCentered: string;
|
|
30
33
|
defaultInteriorCentered: string;
|
|
@@ -38,26 +41,26 @@ declare const AttributeValues: {
|
|
|
38
41
|
right: string;
|
|
39
42
|
stackedInterior: string;
|
|
40
43
|
};
|
|
41
|
-
search: {
|
|
44
|
+
readonly search: {
|
|
42
45
|
domain: string;
|
|
43
46
|
};
|
|
44
|
-
size: {
|
|
47
|
+
readonly size: {
|
|
45
48
|
NORMAL: string;
|
|
46
49
|
LARGE: string;
|
|
47
50
|
};
|
|
48
|
-
state: {
|
|
51
|
+
readonly state: {
|
|
49
52
|
CLOSED: string;
|
|
50
53
|
FALSE: string;
|
|
51
54
|
OPENED: string;
|
|
52
55
|
TRUE: string;
|
|
53
56
|
};
|
|
54
|
-
theme: {
|
|
57
|
+
readonly theme: {
|
|
55
58
|
DARK: string;
|
|
56
59
|
GOLD: string;
|
|
57
60
|
LIGHT: string;
|
|
58
61
|
MARYLAND: string;
|
|
59
62
|
};
|
|
60
|
-
type: {
|
|
63
|
+
readonly type: {
|
|
61
64
|
OUTLINE: string;
|
|
62
65
|
PRIMARY: string;
|
|
63
66
|
SECONDARY: string;
|
|
@@ -66,5 +69,4 @@ declare const AttributeValues: {
|
|
|
66
69
|
SIMPLE: string;
|
|
67
70
|
};
|
|
68
71
|
};
|
|
69
|
-
export default AttributeValues;
|
|
70
72
|
//# sourceMappingURL=values.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"values.d.ts","sourceRoot":"","sources":["../../source/attributes/values.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"values.d.ts","sourceRoot":"","sources":["../../source/attributes/values.ts"],"names":[],"mappings":"AAgFA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUlB,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
const campaign = {
|
|
3
2
|
forward: "forward"
|
|
4
3
|
};
|
|
@@ -22,7 +21,10 @@ const display = {
|
|
|
22
21
|
standard: "standard",
|
|
23
22
|
statement: "statement",
|
|
24
23
|
sticky: "sticky",
|
|
25
|
-
tabular: "tabular"
|
|
24
|
+
tabular: "tabular",
|
|
25
|
+
mega: "mega",
|
|
26
|
+
visual: "visual",
|
|
27
|
+
simple: "simple"
|
|
26
28
|
};
|
|
27
29
|
const layout = {
|
|
28
30
|
center: "center",
|
|
@@ -76,5 +78,7 @@ const AttributeValues = {
|
|
|
76
78
|
theme,
|
|
77
79
|
type
|
|
78
80
|
};
|
|
79
|
-
|
|
81
|
+
export {
|
|
82
|
+
AttributeValues
|
|
83
|
+
};
|
|
80
84
|
//# sourceMappingURL=values.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"values.js","sources":["../../source/attributes/values.ts"],"sourcesContent":["// Values\n\nconst campaign = {\n forward: 'forward',\n};\n\nconst data = {\n type: {\n academic: 'academic',\n },\n};\n\nconst display = {\n block: 'block',\n feature: 'feature',\n featured: 'featured',\n hero: 'hero',\n image: 'image',\n list: 'list',\n minimal: 'minimal',\n overlay: 'overlay',\n promo: 'promo',\n short: 'short',\n stacked: 'stacked',\n standard: 'standard',\n statement: 'statement',\n sticky: 'sticky',\n tabular: 'tabular',\n};\n\nconst layout = {\n center: 'center',\n defaultCentered: 'default-centered',\n defaultInteriorCentered: 'default-interior-centered',\n defaultInterior: 'default-interior',\n fixed: 'fixed',\n fullImage: 'full-image',\n full: 'full',\n large: 'large',\n small: 'small',\n left: 'left',\n right: 'right',\n stackedInterior: 'stacked-interior',\n};\n\nconst search = {\n domain: 'domain',\n};\n\nconst size = {\n NORMAL: 'normal',\n LARGE: 'large',\n};\n\nconst state = {\n CLOSED: 'closed',\n FALSE: 'false',\n OPENED: 'open',\n TRUE: 'true',\n};\n\nconst theme = {\n DARK: 'dark',\n GOLD: 'gold',\n LIGHT: 'light',\n MARYLAND: 'maryland',\n};\n\nconst type = {\n OUTLINE: 'outline',\n PRIMARY: 'primary',\n SECONDARY: 'secondary',\n MEGA: 'mega',\n VISUAL: 'visual',\n SIMPLE: 'simple',\n};\n\
|
|
1
|
+
{"version":3,"file":"values.js","sources":["../../source/attributes/values.ts"],"sourcesContent":["// Values\n\nconst campaign = {\n forward: 'forward',\n};\n\nconst data = {\n type: {\n academic: 'academic',\n },\n};\n\nconst display = {\n block: 'block',\n feature: 'feature',\n featured: 'featured',\n hero: 'hero',\n image: 'image',\n list: 'list',\n minimal: 'minimal',\n overlay: 'overlay',\n promo: 'promo',\n short: 'short',\n stacked: 'stacked',\n standard: 'standard',\n statement: 'statement',\n sticky: 'sticky',\n tabular: 'tabular',\n mega: 'mega',\n visual: 'visual',\n simple: 'simple',\n};\n\nconst layout = {\n center: 'center',\n defaultCentered: 'default-centered',\n defaultInteriorCentered: 'default-interior-centered',\n defaultInterior: 'default-interior',\n fixed: 'fixed',\n fullImage: 'full-image',\n full: 'full',\n large: 'large',\n small: 'small',\n left: 'left',\n right: 'right',\n stackedInterior: 'stacked-interior',\n};\n\nconst search = {\n domain: 'domain',\n};\n\nconst size = {\n NORMAL: 'normal',\n LARGE: 'large',\n};\n\nconst state = {\n CLOSED: 'closed',\n FALSE: 'false',\n OPENED: 'open',\n TRUE: 'true',\n};\n\nconst theme = {\n DARK: 'dark',\n GOLD: 'gold',\n LIGHT: 'light',\n MARYLAND: 'maryland',\n};\n\nconst type = {\n OUTLINE: 'outline',\n PRIMARY: 'primary',\n SECONDARY: 'secondary',\n MEGA: 'mega',\n VISUAL: 'visual',\n SIMPLE: 'simple',\n};\n\nexport const AttributeValues = {\n campaign,\n data,\n display,\n layout,\n search,\n size,\n state,\n theme,\n type,\n} as const;\n"],"names":[],"mappings":"AAEA,MAAM,WAAW;AAAA,EACf,SAAS;AACX;AAEA,MAAM,OAAO;AAAA,EACX,MAAM;AAAA,IACJ,UAAU;AAAA,EAAA;AAEd;AAEA,MAAM,UAAU;AAAA,EACd,OAAO;AAAA,EACP,SAAS;AAAA,EACT,UAAU;AAAA,EACV,MAAM;AAAA,EACN,OAAO;AAAA,EACP,MAAM;AAAA,EACN,SAAS;AAAA,EACT,SAAS;AAAA,EACT,OAAO;AAAA,EACP,OAAO;AAAA,EACP,SAAS;AAAA,EACT,UAAU;AAAA,EACV,WAAW;AAAA,EACX,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,QAAQ;AACV;AAEA,MAAM,SAAS;AAAA,EACb,QAAQ;AAAA,EACR,iBAAiB;AAAA,EACjB,yBAAyB;AAAA,EACzB,iBAAiB;AAAA,EACjB,OAAO;AAAA,EACP,WAAW;AAAA,EACX,MAAM;AAAA,EACN,OAAO;AAAA,EACP,OAAO;AAAA,EACP,MAAM;AAAA,EACN,OAAO;AAAA,EACP,iBAAiB;AACnB;AAEA,MAAM,SAAS;AAAA,EACb,QAAQ;AACV;AAEA,MAAM,OAAO;AAAA,EACX,QAAQ;AAAA,EACR,OAAO;AACT;AAEA,MAAM,QAAQ;AAAA,EACZ,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,MAAM;AACR;AAEA,MAAM,QAAQ;AAAA,EACZ,MAAM;AAAA,EACN,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AACZ;AAEA,MAAM,OAAO;AAAA,EACX,SAAS;AAAA,EACT,SAAS;AAAA,EACT,WAAW;AAAA,EACX,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,QAAQ;AACV;AAEO,MAAM,kBAAkB;AAAA,EAC7B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;"}
|
package/dist/attributes.js
CHANGED
|
@@ -1,23 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
exports.isVisual = checks.isVisual;
|
|
1
|
+
import { handler } from "./attributes/handler.js";
|
|
2
|
+
import { AttributeNames } from "./attributes/names.js";
|
|
3
|
+
import { AttributeValues } from "./attributes/values.js";
|
|
4
|
+
import { getValue, hasDecoration, hasInfo, includesFeature, includesSharing, isData, isDisplay, isInfo, isLayout, isSharing, isTheme, isVisual } from "./attributes/checks.js";
|
|
5
|
+
export {
|
|
6
|
+
getValue,
|
|
7
|
+
handler,
|
|
8
|
+
hasDecoration,
|
|
9
|
+
hasInfo,
|
|
10
|
+
includesFeature,
|
|
11
|
+
includesSharing,
|
|
12
|
+
isData,
|
|
13
|
+
isDisplay,
|
|
14
|
+
isInfo,
|
|
15
|
+
isLayout,
|
|
16
|
+
isSharing,
|
|
17
|
+
isTheme,
|
|
18
|
+
isVisual,
|
|
19
|
+
AttributeNames as names,
|
|
20
|
+
AttributeValues as values
|
|
21
|
+
};
|
|
23
22
|
//# sourceMappingURL=attributes.js.map
|
package/dist/attributes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attributes.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"attributes.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../source/index.ts"],"names":[],"mappings":"AA8DA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../source/index.ts"],"names":[],"mappings":"AA8DA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,KAAK,SAAS,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACL,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AAGxB,mBAAmB,UAAU,CAAC;AAG9B,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;AAGzD,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
import * as attributes from "./attributes.js";
|
|
2
|
+
import * as model from "./model.js";
|
|
3
|
+
import * as register from "./utilities/register.js";
|
|
4
|
+
import { Slots } from "./slots.js";
|
|
5
|
+
import * as lifecycle from "./utilities/lifecycle.js";
|
|
6
|
+
export {
|
|
7
|
+
attributes as Attributes,
|
|
8
|
+
lifecycle as Lifecycle,
|
|
9
|
+
model as Model,
|
|
10
|
+
register as Register,
|
|
11
|
+
Slots
|
|
12
|
+
};
|
|
13
13
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
|
package/dist/model.js
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const styles = require("./utilities/styles.js");
|
|
1
|
+
import { stylesTemplate } from "./utilities/styles.js";
|
|
4
2
|
var __create = Object.create;
|
|
5
3
|
var __defProp = Object.defineProperty;
|
|
6
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
7
|
-
var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
|
|
5
|
+
var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : /* @__PURE__ */ Symbol.for("Symbol." + name);
|
|
8
6
|
var __typeError = (msg) => {
|
|
9
7
|
throw TypeError(msg);
|
|
10
8
|
};
|
|
@@ -91,7 +89,7 @@ class BaseComponent extends HTMLElement {
|
|
|
91
89
|
}
|
|
92
90
|
setupShadowDom(component) {
|
|
93
91
|
this.shadow.appendChild(
|
|
94
|
-
|
|
92
|
+
stylesTemplate({ styles: component.styles || "" }).content.cloneNode(true)
|
|
95
93
|
);
|
|
96
94
|
this.shadow.appendChild(component.element);
|
|
97
95
|
}
|
|
@@ -254,6 +252,8 @@ const createCustomElement = (config) => {
|
|
|
254
252
|
__runInitializers(_init, 1, Component);
|
|
255
253
|
return Component;
|
|
256
254
|
};
|
|
257
|
-
|
|
258
|
-
|
|
255
|
+
export {
|
|
256
|
+
BaseComponent,
|
|
257
|
+
createCustomElement
|
|
258
|
+
};
|
|
259
259
|
//# sourceMappingURL=model.js.map
|
package/dist/model.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sources":["../source/model/index.ts"],"sourcesContent":["/**\n * Custom Element Model System\n *\n * Provides a base class and utilities for creating web components with:\n * - Shadow DOM encapsulation\n * - Attribute observation and handling\n * - Slot validation\n * - Lifecycle management\n * - Error handling\n *\n * ## Key Features:\n *\n * 1. **Attribute Handling**: Automatic observation and callback execution\n * 2. **Slot Validation**: Required slots, deprecated warnings, element type checking\n * 3. **Lifecycle Hooks**: beforeConnect, afterConnect, onReady\n * 4. **Error Management**: Centralized error handling with custom events\n *\n * ## Usage:\n * ```typescript\n * const element = createCustomElement({\n * tagName: 'my-component',\n * slots: {\n * headline: { required: true, allowedElements: ['h2', 'h3'] },\n * content: { allowedElements: ['div', 'p'] }\n * },\n * attributes: [{\n * name: 'theme',\n * handler: (ref, oldValue, newValue) => {\n * // Handle theme change\n * }\n * }],\n * createComponent: (host) => {\n * // Create and return component\n * }\n * });\n * ```\n */\nimport StylesTemplate from '../utilities/styles';\nimport type {\n SlotConfig,\n ComponentEventDetail,\n ComponentReadyDetail,\n ComponentErrorDetail,\n ElementRef\n} from '../_types';\n\ninterface AttributeConfig {\n name: string;\n handler: (element: ElementRef, oldValue: string, newValue: string) => void;\n}\n\ninterface SlotValidationError {\n slot: string;\n error: 'missing' | 'deprecated' | 'invalid-elements';\n message: string;\n invalidElements?: Element[];\n}\n\ninterface ComponentLifecycle {\n beforeConnect?: (ref: ElementRef, shadow: ShadowRoot) => void;\n afterConnect?: (ref: ElementRef, shadow: ShadowRoot) => void;\n onReady?: (ref: ElementRef, shadow: ShadowRoot) => void;\n}\n\ninterface ComponentConfig extends ComponentLifecycle {\n tagName: string;\n attributes?: AttributeConfig[];\n slots?: Record<string, SlotConfig>;\n createComponent: (host: HTMLElement) => ElementRef;\n}\n\n// Store the config on the constructor itself\nconst ComponentConfig = (config: ComponentConfig) => {\n return function <T extends typeof BaseComponent>(constructor: T) {\n constructor.componentConfig = config;\n return constructor;\n };\n};\n\n/**\n * Base class for all web components created by the Model system.\n * Extends HTMLElement with shadow DOM support, attribute observation,\n * slot validation, and lifecycle management.\n *\n * @internal This class is not meant to be extended directly.\n * Use `createCustomElement` to create components.\n */\nclass BaseComponent extends HTMLElement {\n static componentConfig: ComponentConfig;\n\n protected shadow: ShadowRoot;\n protected elementRef: ElementRef | null = null;\n protected config: ComponentConfig;\n\n constructor() {\n super();\n\n const constructor = this.constructor as typeof BaseComponent;\n this.config = constructor.componentConfig;\n\n if (!this.config) {\n throw new Error(\n 'Component config not found. Did you forget to use the @Component decorator?',\n );\n }\n\n this.shadow = this.attachShadow({ mode: 'open' });\n this.validateConfig();\n }\n\n static get observedAttributes(): string[] {\n return this.componentConfig?.attributes?.map((attr) => attr.name) || [];\n }\n\n connectedCallback(): void {\n try {\n this.initializeComponent();\n } catch (error) {\n this.handleError('Failed to initialize component', error);\n }\n }\n\n disconnectedCallback(): void {\n this.cleanup();\n }\n\n attributeChangedCallback(\n name: string,\n oldValue: string,\n newValue: string,\n ): void {\n if (oldValue === newValue) return;\n\n try {\n this.handleAttributeChange(name, oldValue, newValue);\n } catch (error) {\n this.handleError(`Failed to handle attribute change: ${name}`, error);\n }\n }\n\n protected initializeComponent(): void {\n try {\n this.validateSlots();\n\n const componentRef = this.config.createComponent(this);\n\n if (!componentRef || !componentRef.element) {\n throw new Error(\n 'Component creation failed: Invalid component reference',\n );\n }\n\n this.elementRef = componentRef;\n this.setupShadowDom(componentRef);\n this.afterInit();\n } catch (error) {\n this.handleError('Failed to initialize component', error);\n }\n }\n\n protected setupShadowDom(component: ElementRef): void {\n this.shadow.appendChild(\n StylesTemplate({ styles: component.styles || '' }).content.cloneNode(true),\n );\n this.shadow.appendChild(component.element);\n }\n\n protected validateConfig(): void {\n const requiredFields: (keyof ComponentConfig)[] = [\n 'tagName',\n 'createComponent',\n ];\n\n requiredFields.forEach((field) => {\n if (!this.config[field]) {\n throw new Error(`Missing required config field: ${field}`);\n }\n });\n\n if (this.config.attributes) {\n this.config.attributes.forEach((attr) => {\n if (!attr.name || !attr.handler) {\n throw new Error(\n 'Invalid attribute config: requires name and handler',\n );\n }\n });\n }\n }\n\n protected async afterInit(): Promise<void> {\n if (!this.elementRef) {\n this.handleError('Cannot initialize - missing element reference', null);\n return;\n }\n\n await this.executeLifecycleCallbacks();\n\n // Dispatch umdComponent:ready event after all lifecycle callbacks complete\n this.dispatchComponentEvent<ComponentReadyDetail>('umdComponent:ready', {\n shadowRoot: this.shadow,\n ref: this.elementRef,\n });\n }\n\n protected handleAttributeChange(\n name: string,\n oldValue: string,\n newValue: string,\n ): void {\n if (!this.elementRef) return;\n\n const handler = this.config.attributes?.find(\n (attr) => attr.name === name,\n )?.handler;\n\n if (handler) {\n handler(this.elementRef, oldValue, newValue);\n }\n }\n\n protected cleanup(): void {\n this.elementRef = null;\n }\n\n /**\n * Helper method to dispatch component events with consistent structure\n */\n protected dispatchComponentEvent<T extends ComponentEventDetail>(\n eventName: string,\n detail: Omit<T, 'tagName' | 'element' | 'timestamp'>,\n ): void {\n const fullDetail = {\n ...detail,\n tagName: this.config.tagName,\n element: this,\n timestamp: Date.now(),\n } as unknown as T;\n\n this.dispatchEvent(\n new CustomEvent<T>(eventName, {\n detail: fullDetail,\n bubbles: true,\n composed: true,\n }),\n );\n }\n\n protected handleError(message: string, error: unknown): void {\n console.error(`[${this.config.tagName}]`, message, error);\n\n // Determine error type based on component state and message\n const errorType = this.elementRef\n ? 'runtime'\n : message.toLowerCase().includes('validation')\n ? 'validation'\n : 'initialization';\n\n this.dispatchComponentEvent<ComponentErrorDetail>('umdComponent:error', {\n type: errorType,\n message,\n details: error,\n });\n }\n\n private validateSlots(): void {\n if (!this.config.slots) return;\n\n const errors: SlotValidationError[] = [];\n\n Object.entries(this.config.slots).forEach(([name, config]) => {\n const type = name\n .replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`)\n .replace(/^-/, '');\n\n if (config.required) {\n const slotElement = this.querySelector(`[slot=\"${type}\"]`);\n if (!slotElement) {\n errors.push({\n slot: name,\n error: 'missing',\n message: `Required slot \"${type}\" is missing`,\n });\n }\n }\n\n if (config.deprecated) {\n const slotElement = this.querySelector(`[slot=\"${type}\"]`);\n if (slotElement) {\n errors.push({\n slot: name,\n error: 'deprecated',\n message: `Slot \"${type}\" is deprecated. ${config.deprecated}`,\n });\n }\n }\n\n if (config.allowedElements) {\n const slotElements = Array.from(\n this.querySelectorAll(`[slot=\"${type}\"]`),\n );\n const invalidElements = slotElements.filter(\n (element) =>\n !config.allowedElements!.includes(element.tagName.toLowerCase()),\n );\n\n if (invalidElements.length > 0) {\n errors.push({\n slot: name,\n error: 'invalid-elements',\n message: `Slot \"${type}\" contains invalid elements. Allowed: ${config.allowedElements.join(\n ', ',\n )}`,\n invalidElements,\n });\n }\n }\n });\n\n if (errors.length > 0) {\n this.handleError('Slot validation failed', errors);\n\n errors.forEach((error) => {\n console.warn(`[${this.config.tagName}]`, error.message, error);\n });\n }\n }\n\n private async executeLifecycleCallbacks(): Promise<void> {\n const lifecycleMethods = [\n 'beforeConnect',\n 'afterConnect',\n 'onReady',\n ] as const;\n\n for (const method of lifecycleMethods) {\n await this.executeCallback(method);\n }\n }\n\n private async executeCallback(name: keyof ComponentLifecycle): Promise<void> {\n const callback = this.config[name];\n\n if (!callback) {\n return;\n }\n\n try {\n await Promise.resolve(callback(this.elementRef!, this.shadow));\n } catch (error) {\n this.handleError(`Failed to execute ${name} callback`, error);\n }\n }\n\n public getRef(): ElementRef | null {\n return this.elementRef;\n }\n}\n\n/**\n * Factory function to create a custom element class.\n *\n * @param config - Component configuration including tagName, slots, attributes, and lifecycle hooks\n * @returns Custom element class that extends BaseComponent\n *\n * @example\n * ```typescript\n * export default () => {\n * Register.registerWebComponent({\n * name: tagName,\n * element: createCustomElement({\n * tagName,\n * slots,\n * attributes,\n * createComponent\n * })\n * });\n * };\n * ```\n */\nconst createCustomElement = (config: ComponentConfig): typeof BaseComponent => {\n @ComponentConfig(config)\n class Component extends BaseComponent {\n constructor() {\n super();\n }\n }\n\n return Component;\n};\n\nexport {\n createCustomElement,\n BaseComponent,\n type ComponentConfig,\n type AttributeConfig,\n};\n"],"names":["StylesTemplate"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model.js","sources":["../source/model/index.ts"],"sourcesContent":["/**\n * Custom Element Model System\n *\n * Provides a base class and utilities for creating web components with:\n * - Shadow DOM encapsulation\n * - Attribute observation and handling\n * - Slot validation\n * - Lifecycle management\n * - Error handling\n *\n * ## Key Features:\n *\n * 1. **Attribute Handling**: Automatic observation and callback execution\n * 2. **Slot Validation**: Required slots, deprecated warnings, element type checking\n * 3. **Lifecycle Hooks**: beforeConnect, afterConnect, onReady\n * 4. **Error Management**: Centralized error handling with custom events\n *\n * ## Usage:\n * ```typescript\n * const element = createCustomElement({\n * tagName: 'my-component',\n * slots: {\n * headline: { required: true, allowedElements: ['h2', 'h3'] },\n * content: { allowedElements: ['div', 'p'] }\n * },\n * attributes: [{\n * name: 'theme',\n * handler: (ref, oldValue, newValue) => {\n * // Handle theme change\n * }\n * }],\n * createComponent: (host) => {\n * // Create and return component\n * }\n * });\n * ```\n */\nimport { stylesTemplate } from '../utilities/styles';\nimport type {\n SlotConfig,\n ComponentEventDetail,\n ComponentReadyDetail,\n ComponentErrorDetail,\n ElementRef\n} from '../_types';\n\ninterface AttributeConfig {\n name: string;\n handler: (element: ElementRef, oldValue: string, newValue: string) => void;\n}\n\ninterface SlotValidationError {\n slot: string;\n error: 'missing' | 'deprecated' | 'invalid-elements';\n message: string;\n invalidElements?: Element[];\n}\n\ninterface ComponentLifecycle {\n beforeConnect?: (ref: ElementRef, shadow: ShadowRoot) => void;\n afterConnect?: (ref: ElementRef, shadow: ShadowRoot) => void;\n onReady?: (ref: ElementRef, shadow: ShadowRoot) => void;\n}\n\ninterface ComponentConfig extends ComponentLifecycle {\n tagName: string;\n attributes?: AttributeConfig[];\n slots?: Record<string, SlotConfig>;\n createComponent: (host: HTMLElement) => ElementRef;\n}\n\n// Store the config on the constructor itself\nconst ComponentConfig = (config: ComponentConfig) => {\n return function <T extends typeof BaseComponent>(constructor: T) {\n constructor.componentConfig = config;\n return constructor;\n };\n};\n\n/**\n * Base class for all web components created by the Model system.\n * Extends HTMLElement with shadow DOM support, attribute observation,\n * slot validation, and lifecycle management.\n *\n * @internal This class is not meant to be extended directly.\n * Use `createCustomElement` to create components.\n */\nclass BaseComponent extends HTMLElement {\n static componentConfig: ComponentConfig;\n\n protected shadow: ShadowRoot;\n protected elementRef: ElementRef | null = null;\n protected config: ComponentConfig;\n\n constructor() {\n super();\n\n const constructor = this.constructor as typeof BaseComponent;\n this.config = constructor.componentConfig;\n\n if (!this.config) {\n throw new Error(\n 'Component config not found. Did you forget to use the @Component decorator?',\n );\n }\n\n this.shadow = this.attachShadow({ mode: 'open' });\n this.validateConfig();\n }\n\n static get observedAttributes(): string[] {\n return this.componentConfig?.attributes?.map((attr) => attr.name) || [];\n }\n\n connectedCallback(): void {\n try {\n this.initializeComponent();\n } catch (error) {\n this.handleError('Failed to initialize component', error);\n }\n }\n\n disconnectedCallback(): void {\n this.cleanup();\n }\n\n attributeChangedCallback(\n name: string,\n oldValue: string,\n newValue: string,\n ): void {\n if (oldValue === newValue) return;\n\n try {\n this.handleAttributeChange(name, oldValue, newValue);\n } catch (error) {\n this.handleError(`Failed to handle attribute change: ${name}`, error);\n }\n }\n\n protected initializeComponent(): void {\n try {\n this.validateSlots();\n\n const componentRef = this.config.createComponent(this);\n\n if (!componentRef || !componentRef.element) {\n throw new Error(\n 'Component creation failed: Invalid component reference',\n );\n }\n\n this.elementRef = componentRef;\n this.setupShadowDom(componentRef);\n this.afterInit();\n } catch (error) {\n this.handleError('Failed to initialize component', error);\n }\n }\n\n protected setupShadowDom(component: ElementRef): void {\n this.shadow.appendChild(\n stylesTemplate({ styles: component.styles || '' }).content.cloneNode(true),\n );\n this.shadow.appendChild(component.element);\n }\n\n protected validateConfig(): void {\n const requiredFields: (keyof ComponentConfig)[] = [\n 'tagName',\n 'createComponent',\n ];\n\n requiredFields.forEach((field) => {\n if (!this.config[field]) {\n throw new Error(`Missing required config field: ${field}`);\n }\n });\n\n if (this.config.attributes) {\n this.config.attributes.forEach((attr) => {\n if (!attr.name || !attr.handler) {\n throw new Error(\n 'Invalid attribute config: requires name and handler',\n );\n }\n });\n }\n }\n\n protected async afterInit(): Promise<void> {\n if (!this.elementRef) {\n this.handleError('Cannot initialize - missing element reference', null);\n return;\n }\n\n await this.executeLifecycleCallbacks();\n\n // Dispatch umdComponent:ready event after all lifecycle callbacks complete\n this.dispatchComponentEvent<ComponentReadyDetail>('umdComponent:ready', {\n shadowRoot: this.shadow,\n ref: this.elementRef,\n });\n }\n\n protected handleAttributeChange(\n name: string,\n oldValue: string,\n newValue: string,\n ): void {\n if (!this.elementRef) return;\n\n const handler = this.config.attributes?.find(\n (attr) => attr.name === name,\n )?.handler;\n\n if (handler) {\n handler(this.elementRef, oldValue, newValue);\n }\n }\n\n protected cleanup(): void {\n this.elementRef = null;\n }\n\n /**\n * Helper method to dispatch component events with consistent structure\n */\n protected dispatchComponentEvent<T extends ComponentEventDetail>(\n eventName: string,\n detail: Omit<T, 'tagName' | 'element' | 'timestamp'>,\n ): void {\n const fullDetail = {\n ...detail,\n tagName: this.config.tagName,\n element: this,\n timestamp: Date.now(),\n } as unknown as T;\n\n this.dispatchEvent(\n new CustomEvent<T>(eventName, {\n detail: fullDetail,\n bubbles: true,\n composed: true,\n }),\n );\n }\n\n protected handleError(message: string, error: unknown): void {\n console.error(`[${this.config.tagName}]`, message, error);\n\n // Determine error type based on component state and message\n const errorType = this.elementRef\n ? 'runtime'\n : message.toLowerCase().includes('validation')\n ? 'validation'\n : 'initialization';\n\n this.dispatchComponentEvent<ComponentErrorDetail>('umdComponent:error', {\n type: errorType,\n message,\n details: error,\n });\n }\n\n private validateSlots(): void {\n if (!this.config.slots) return;\n\n const errors: SlotValidationError[] = [];\n\n Object.entries(this.config.slots).forEach(([name, config]) => {\n const type = name\n .replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`)\n .replace(/^-/, '');\n\n if (config.required) {\n const slotElement = this.querySelector(`[slot=\"${type}\"]`);\n if (!slotElement) {\n errors.push({\n slot: name,\n error: 'missing',\n message: `Required slot \"${type}\" is missing`,\n });\n }\n }\n\n if (config.deprecated) {\n const slotElement = this.querySelector(`[slot=\"${type}\"]`);\n if (slotElement) {\n errors.push({\n slot: name,\n error: 'deprecated',\n message: `Slot \"${type}\" is deprecated. ${config.deprecated}`,\n });\n }\n }\n\n if (config.allowedElements) {\n const slotElements = Array.from(\n this.querySelectorAll(`[slot=\"${type}\"]`),\n );\n const invalidElements = slotElements.filter(\n (element) =>\n !config.allowedElements!.includes(element.tagName.toLowerCase()),\n );\n\n if (invalidElements.length > 0) {\n errors.push({\n slot: name,\n error: 'invalid-elements',\n message: `Slot \"${type}\" contains invalid elements. Allowed: ${config.allowedElements.join(\n ', ',\n )}`,\n invalidElements,\n });\n }\n }\n });\n\n if (errors.length > 0) {\n this.handleError('Slot validation failed', errors);\n\n errors.forEach((error) => {\n console.warn(`[${this.config.tagName}]`, error.message, error);\n });\n }\n }\n\n private async executeLifecycleCallbacks(): Promise<void> {\n const lifecycleMethods = [\n 'beforeConnect',\n 'afterConnect',\n 'onReady',\n ] as const;\n\n for (const method of lifecycleMethods) {\n await this.executeCallback(method);\n }\n }\n\n private async executeCallback(name: keyof ComponentLifecycle): Promise<void> {\n const callback = this.config[name];\n\n if (!callback) {\n return;\n }\n\n try {\n await Promise.resolve(callback(this.elementRef!, this.shadow));\n } catch (error) {\n this.handleError(`Failed to execute ${name} callback`, error);\n }\n }\n\n public getRef(): ElementRef | null {\n return this.elementRef;\n }\n}\n\n/**\n * Factory function to create a custom element class.\n *\n * @param config - Component configuration including tagName, slots, attributes, and lifecycle hooks\n * @returns Custom element class that extends BaseComponent\n *\n * @example\n * ```typescript\n * export default () => {\n * Register.registerWebComponent({\n * name: tagName,\n * element: createCustomElement({\n * tagName,\n * slots,\n * attributes,\n * createComponent\n * })\n * });\n * };\n * ```\n */\nconst createCustomElement = (config: ComponentConfig): typeof BaseComponent => {\n @ComponentConfig(config)\n class Component extends BaseComponent {\n constructor() {\n super();\n }\n }\n\n return Component;\n};\n\nexport {\n createCustomElement,\n BaseComponent,\n type ComponentConfig,\n type AttributeConfig,\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwEA,MAAM,kBAAkB,CAAC,WAA4B;AACnD,SAAO,SAA0C,aAAgB;AAC/D,gBAAY,kBAAkB;AAC9B,WAAO;AAAA,EACT;AACF;AAUA,MAAM,sBAAsB,YAAY;AAAA,EAOtC,cAAc;AACZ,UAAA;AAJF,SAAU,aAAgC;AAMxC,UAAM,cAAc,KAAK;AACzB,SAAK,SAAS,YAAY;AAE1B,QAAI,CAAC,KAAK,QAAQ;AAChB,YAAM,IAAI;AAAA,QACR;AAAA,MAAA;AAAA,IAEJ;AAEA,SAAK,SAAS,KAAK,aAAa,EAAE,MAAM,QAAQ;AAChD,SAAK,eAAA;AAAA,EACP;AAAA,EAEA,WAAW,qBAA+B;AACxC,WAAO,KAAK,iBAAiB,YAAY,IAAI,CAAC,SAAS,KAAK,IAAI,KAAK,CAAA;AAAA,EACvE;AAAA,EAEA,oBAA0B;AACxB,QAAI;AACF,WAAK,oBAAA;AAAA,IACP,SAAS,OAAO;AACd,WAAK,YAAY,kCAAkC,KAAK;AAAA,IAC1D;AAAA,EACF;AAAA,EAEA,uBAA6B;AAC3B,SAAK,QAAA;AAAA,EACP;AAAA,EAEA,yBACE,MACA,UACA,UACM;AACN,QAAI,aAAa,SAAU;AAE3B,QAAI;AACF,WAAK,sBAAsB,MAAM,UAAU,QAAQ;AAAA,IACrD,SAAS,OAAO;AACd,WAAK,YAAY,sCAAsC,IAAI,IAAI,KAAK;AAAA,IACtE;AAAA,EACF;AAAA,EAEU,sBAA4B;AACpC,QAAI;AACF,WAAK,cAAA;AAEL,YAAM,eAAe,KAAK,OAAO,gBAAgB,IAAI;AAErD,UAAI,CAAC,gBAAgB,CAAC,aAAa,SAAS;AAC1C,cAAM,IAAI;AAAA,UACR;AAAA,QAAA;AAAA,MAEJ;AAEA,WAAK,aAAa;AAClB,WAAK,eAAe,YAAY;AAChC,WAAK,UAAA;AAAA,IACP,SAAS,OAAO;AACd,WAAK,YAAY,kCAAkC,KAAK;AAAA,IAC1D;AAAA,EACF;AAAA,EAEU,eAAe,WAA6B;AACpD,SAAK,OAAO;AAAA,MACV,eAAe,EAAE,QAAQ,UAAU,UAAU,IAAI,EAAE,QAAQ,UAAU,IAAI;AAAA,IAAA;AAE3E,SAAK,OAAO,YAAY,UAAU,OAAO;AAAA,EAC3C;AAAA,EAEU,iBAAuB;AAC/B,UAAM,iBAA4C;AAAA,MAChD;AAAA,MACA;AAAA,IAAA;AAGF,mBAAe,QAAQ,CAAC,UAAU;AAChC,UAAI,CAAC,KAAK,OAAO,KAAK,GAAG;AACvB,cAAM,IAAI,MAAM,kCAAkC,KAAK,EAAE;AAAA,MAC3D;AAAA,IACF,CAAC;AAED,QAAI,KAAK,OAAO,YAAY;AAC1B,WAAK,OAAO,WAAW,QAAQ,CAAC,SAAS;AACvC,YAAI,CAAC,KAAK,QAAQ,CAAC,KAAK,SAAS;AAC/B,gBAAM,IAAI;AAAA,YACR;AAAA,UAAA;AAAA,QAEJ;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EAEA,MAAgB,YAA2B;AACzC,QAAI,CAAC,KAAK,YAAY;AACpB,WAAK,YAAY,iDAAiD,IAAI;AACtE;AAAA,IACF;AAEA,UAAM,KAAK,0BAAA;AAGX,SAAK,uBAA6C,sBAAsB;AAAA,MACtE,YAAY,KAAK;AAAA,MACjB,KAAK,KAAK;AAAA,IAAA,CACX;AAAA,EACH;AAAA,EAEU,sBACR,MACA,UACA,UACM;AACN,QAAI,CAAC,KAAK,WAAY;AAEtB,UAAM,UAAU,KAAK,OAAO,YAAY;AAAA,MACtC,CAAC,SAAS,KAAK,SAAS;AAAA,IAAA,GACvB;AAEH,QAAI,SAAS;AACX,cAAQ,KAAK,YAAY,UAAU,QAAQ;AAAA,IAC7C;AAAA,EACF;AAAA,EAEU,UAAgB;AACxB,SAAK,aAAa;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA,EAKU,uBACR,WACA,QACM;AACN,UAAM,aAAa;AAAA,MACjB,GAAG;AAAA,MACH,SAAS,KAAK,OAAO;AAAA,MACrB,SAAS;AAAA,MACT,WAAW,KAAK,IAAA;AAAA,IAAI;AAGtB,SAAK;AAAA,MACH,IAAI,YAAe,WAAW;AAAA,QAC5B,QAAQ;AAAA,QACR,SAAS;AAAA,QACT,UAAU;AAAA,MAAA,CACX;AAAA,IAAA;AAAA,EAEL;AAAA,EAEU,YAAY,SAAiB,OAAsB;AAC3D,YAAQ,MAAM,IAAI,KAAK,OAAO,OAAO,KAAK,SAAS,KAAK;AAGxD,UAAM,YAAY,KAAK,aACnB,YACA,QAAQ,cAAc,SAAS,YAAY,IAC3C,eACA;AAEJ,SAAK,uBAA6C,sBAAsB;AAAA,MACtE,MAAM;AAAA,MACN;AAAA,MACA,SAAS;AAAA,IAAA,CACV;AAAA,EACH;AAAA,EAEQ,gBAAsB;AAC5B,QAAI,CAAC,KAAK,OAAO,MAAO;AAExB,UAAM,SAAgC,CAAA;AAEtC,WAAO,QAAQ,KAAK,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,MAAM,MAAM,MAAM;AAC5D,YAAM,OAAO,KACV,QAAQ,UAAU,CAAC,WAAW,IAAI,OAAO,YAAA,CAAa,EAAE,EACxD,QAAQ,MAAM,EAAE;AAEnB,UAAI,OAAO,UAAU;AACnB,cAAM,cAAc,KAAK,cAAc,UAAU,IAAI,IAAI;AACzD,YAAI,CAAC,aAAa;AAChB,iBAAO,KAAK;AAAA,YACV,MAAM;AAAA,YACN,OAAO;AAAA,YACP,SAAS,kBAAkB,IAAI;AAAA,UAAA,CAChC;AAAA,QACH;AAAA,MACF;AAEA,UAAI,OAAO,YAAY;AACrB,cAAM,cAAc,KAAK,cAAc,UAAU,IAAI,IAAI;AACzD,YAAI,aAAa;AACf,iBAAO,KAAK;AAAA,YACV,MAAM;AAAA,YACN,OAAO;AAAA,YACP,SAAS,SAAS,IAAI,oBAAoB,OAAO,UAAU;AAAA,UAAA,CAC5D;AAAA,QACH;AAAA,MACF;AAEA,UAAI,OAAO,iBAAiB;AAC1B,cAAM,eAAe,MAAM;AAAA,UACzB,KAAK,iBAAiB,UAAU,IAAI,IAAI;AAAA,QAAA;AAE1C,cAAM,kBAAkB,aAAa;AAAA,UACnC,CAAC,YACC,CAAC,OAAO,gBAAiB,SAAS,QAAQ,QAAQ,YAAA,CAAa;AAAA,QAAA;AAGnE,YAAI,gBAAgB,SAAS,GAAG;AAC9B,iBAAO,KAAK;AAAA,YACV,MAAM;AAAA,YACN,OAAO;AAAA,YACP,SAAS,SAAS,IAAI,yCAAyC,OAAO,gBAAgB;AAAA,cACpF;AAAA,YAAA,CACD;AAAA,YACD;AAAA,UAAA,CACD;AAAA,QACH;AAAA,MACF;AAAA,IACF,CAAC;AAED,QAAI,OAAO,SAAS,GAAG;AACrB,WAAK,YAAY,0BAA0B,MAAM;AAEjD,aAAO,QAAQ,CAAC,UAAU;AACxB,gBAAQ,KAAK,IAAI,KAAK,OAAO,OAAO,KAAK,MAAM,SAAS,KAAK;AAAA,MAC/D,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EAEA,MAAc,4BAA2C;AACvD,UAAM,mBAAmB;AAAA,MACvB;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAGF,eAAW,UAAU,kBAAkB;AACrC,YAAM,KAAK,gBAAgB,MAAM;AAAA,IACnC;AAAA,EACF;AAAA,EAEA,MAAc,gBAAgB,MAA+C;AAC3E,UAAM,WAAW,KAAK,OAAO,IAAI;AAEjC,QAAI,CAAC,UAAU;AACb;AAAA,IACF;AAEA,QAAI;AACF,YAAM,QAAQ,QAAQ,SAAS,KAAK,YAAa,KAAK,MAAM,CAAC;AAAA,IAC/D,SAAS,OAAO;AACd,WAAK,YAAY,qBAAqB,IAAI,aAAa,KAAK;AAAA,IAC9D;AAAA,EACF;AAAA,EAEO,SAA4B;AACjC,WAAO,KAAK;AAAA,EACd;AACF;AAuBA,MAAM,sBAAsB,CAAC,WAAkD;AA5X/E,MAAA,uBAAA,OAAA;AA6XE,0BAAA,CAAC,gBAAgB,MAAM,CAAA;AAAA,EACvB,MAAM,mBAAkB,KAAA,eAAc;AAAA,IACpC,cAAc;AACZ,YAAA;AAAA,IACF;AAAA,EAAA;AAHF,UAAA,iBAAA,EAAA;AAAM,cAAN,yCADA,uBACM,SAAA;AAAN,oBAAA,OAAA,GAAM,SAAA;AAMN,SAAO;AACT;"}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
1
|
var nonSecure;
|
|
4
2
|
var hasRequiredNonSecure;
|
|
5
3
|
function requireNonSecure() {
|
|
@@ -27,5 +25,7 @@ function requireNonSecure() {
|
|
|
27
25
|
nonSecure = { nanoid, customAlphabet };
|
|
28
26
|
return nonSecure;
|
|
29
27
|
}
|
|
30
|
-
|
|
28
|
+
export {
|
|
29
|
+
requireNonSecure as __require
|
|
30
|
+
};
|
|
31
31
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../node_modules/nanoid/non-secure/index.cjs"],"sourcesContent":["// This alphabet uses `A-Za-z0-9_-` symbols.\n// The order of characters is optimized for better gzip and brotli compression.\n// References to the same file (works both for gzip and brotli):\n// `'use`, `andom`, and `rict'`\n// References to the brotli default dictionary:\n// `-26T`, `1983`, `40px`, `75px`, `bush`, `jack`, `mind`, `very`, and `wolf`\nlet urlAlphabet =\n 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'\n\nlet customAlphabet = (alphabet, defaultSize = 21) => {\n return (size = defaultSize) => {\n let id = ''\n // A compact alternative for `for (var i = 0; i < step; i++)`.\n let i = size | 0\n while (i--) {\n // `| 0` is more compact and faster than `Math.floor()`.\n id += alphabet[(Math.random() * alphabet.length) | 0]\n }\n return id\n }\n}\n\nlet nanoid = (size = 21) => {\n let id = ''\n // A compact alternative for `for (var i = 0; i < step; i++)`.\n let i = size | 0\n while (i--) {\n // `| 0` is more compact and faster than `Math.floor()`.\n id += urlAlphabet[(Math.random() * 64) | 0]\n }\n return id\n}\n\nmodule.exports = { nanoid, customAlphabet }\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../node_modules/nanoid/non-secure/index.cjs"],"sourcesContent":["// This alphabet uses `A-Za-z0-9_-` symbols.\n// The order of characters is optimized for better gzip and brotli compression.\n// References to the same file (works both for gzip and brotli):\n// `'use`, `andom`, and `rict'`\n// References to the brotli default dictionary:\n// `-26T`, `1983`, `40px`, `75px`, `bush`, `jack`, `mind`, `very`, and `wolf`\nlet urlAlphabet =\n 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'\n\nlet customAlphabet = (alphabet, defaultSize = 21) => {\n return (size = defaultSize) => {\n let id = ''\n // A compact alternative for `for (var i = 0; i < step; i++)`.\n let i = size | 0\n while (i--) {\n // `| 0` is more compact and faster than `Math.floor()`.\n id += alphabet[(Math.random() * alphabet.length) | 0]\n }\n return id\n }\n}\n\nlet nanoid = (size = 21) => {\n let id = ''\n // A compact alternative for `for (var i = 0; i < step; i++)`.\n let i = size | 0\n while (i--) {\n // `| 0` is more compact and faster than `Math.floor()`.\n id += urlAlphabet[(Math.random() * 64) | 0]\n }\n return id\n}\n\nmodule.exports = { nanoid, customAlphabet }\n"],"names":[],"mappings":";;;;;AAMA,MAAI,cACF;AAEF,MAAI,iBAAiB,CAAC,UAAU,cAAc,OAAO;AACnD,WAAO,CAAC,OAAO,gBAAgB;AAC7B,UAAI,KAAK;AAET,UAAI,IAAI,OAAO;AACf,aAAO,KAAK;AAEV,cAAM,SAAU,KAAK,OAAM,IAAK,SAAS,SAAU,CAAC;AAAA,MAC1D;AACI,aAAO;AAAA,IACX;AAAA,EACA;AAEA,MAAI,SAAS,CAAC,OAAO,OAAO;AAC1B,QAAI,KAAK;AAET,QAAI,IAAI,OAAO;AACf,WAAO,KAAK;AAEV,YAAM,YAAa,KAAK,OAAM,IAAK,KAAM,CAAC;AAAA,IAC9C;AACE,WAAO;AAAA,EACT;AAEA,cAAiB,EAAE,QAAQ,eAAc;;;","x_google_ignoreList":[0]}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const picocolors_browser = require("../../_virtual/picocolors.browser.js");
|
|
1
|
+
import { __module as picocolors_browser } from "../../_virtual/picocolors.browser.js";
|
|
4
2
|
var hasRequiredPicocolors_browser;
|
|
5
3
|
function requirePicocolors_browser() {
|
|
6
|
-
if (hasRequiredPicocolors_browser) return picocolors_browser.
|
|
4
|
+
if (hasRequiredPicocolors_browser) return picocolors_browser.exports;
|
|
7
5
|
hasRequiredPicocolors_browser = 1;
|
|
8
6
|
var x = String;
|
|
9
7
|
var create = function() {
|
|
10
8
|
return { isColorSupported: false, reset: x, bold: x, dim: x, italic: x, underline: x, inverse: x, hidden: x, strikethrough: x, black: x, red: x, green: x, yellow: x, blue: x, magenta: x, cyan: x, white: x, gray: x, bgBlack: x, bgRed: x, bgGreen: x, bgYellow: x, bgBlue: x, bgMagenta: x, bgCyan: x, bgWhite: x, blackBright: x, redBright: x, greenBright: x, yellowBright: x, blueBright: x, magentaBright: x, cyanBright: x, whiteBright: x, bgBlackBright: x, bgRedBright: x, bgGreenBright: x, bgYellowBright: x, bgBlueBright: x, bgMagentaBright: x, bgCyanBright: x, bgWhiteBright: x };
|
|
11
9
|
};
|
|
12
|
-
picocolors_browser.
|
|
13
|
-
picocolors_browser.
|
|
14
|
-
return picocolors_browser.
|
|
10
|
+
picocolors_browser.exports = create();
|
|
11
|
+
picocolors_browser.exports.createColors = create;
|
|
12
|
+
return picocolors_browser.exports;
|
|
15
13
|
}
|
|
16
|
-
|
|
14
|
+
export {
|
|
15
|
+
requirePicocolors_browser as __require
|
|
16
|
+
};
|
|
17
17
|
//# sourceMappingURL=picocolors.browser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"picocolors.browser.js","sources":["../../../../../node_modules/picocolors/picocolors.browser.js"],"sourcesContent":["var x=String;\nvar create=function() {return {isColorSupported:false,reset:x,bold:x,dim:x,italic:x,underline:x,inverse:x,hidden:x,strikethrough:x,black:x,red:x,green:x,yellow:x,blue:x,magenta:x,cyan:x,white:x,gray:x,bgBlack:x,bgRed:x,bgGreen:x,bgYellow:x,bgBlue:x,bgMagenta:x,bgCyan:x,bgWhite:x,blackBright:x,redBright:x,greenBright:x,yellowBright:x,blueBright:x,magentaBright:x,cyanBright:x,whiteBright:x,bgBlackBright:x,bgRedBright:x,bgGreenBright:x,bgYellowBright:x,bgBlueBright:x,bgMagentaBright:x,bgCyanBright:x,bgWhiteBright:x}};\nmodule.exports=create();\nmodule.exports.createColors = create;\n"],"names":["picocolors_browserModule"],"mappings":"
|
|
1
|
+
{"version":3,"file":"picocolors.browser.js","sources":["../../../../../node_modules/picocolors/picocolors.browser.js"],"sourcesContent":["var x=String;\nvar create=function() {return {isColorSupported:false,reset:x,bold:x,dim:x,italic:x,underline:x,inverse:x,hidden:x,strikethrough:x,black:x,red:x,green:x,yellow:x,blue:x,magenta:x,cyan:x,white:x,gray:x,bgBlack:x,bgRed:x,bgGreen:x,bgYellow:x,bgBlue:x,bgMagenta:x,bgCyan:x,bgWhite:x,blackBright:x,redBright:x,greenBright:x,yellowBright:x,blueBright:x,magentaBright:x,cyanBright:x,whiteBright:x,bgBlackBright:x,bgRedBright:x,bgGreenBright:x,bgYellowBright:x,bgBlueBright:x,bgMagentaBright:x,bgCyanBright:x,bgWhiteBright:x}};\nmodule.exports=create();\nmodule.exports.createColors = create;\n"],"names":["picocolors_browserModule"],"mappings":";;;;;AAAA,MAAI,IAAE;AACN,MAAI,SAAO,WAAW;AAAC,WAAO,EAAC,kBAAiB,OAAM,OAAM,GAAE,MAAK,GAAE,KAAI,GAAE,QAAO,GAAE,WAAU,GAAE,SAAQ,GAAE,QAAO,GAAE,eAAc,GAAE,OAAM,GAAE,KAAI,GAAE,OAAM,GAAE,QAAO,GAAE,MAAK,GAAE,SAAQ,GAAE,MAAK,GAAE,OAAM,GAAE,MAAK,GAAE,SAAQ,GAAE,OAAM,GAAE,SAAQ,GAAE,UAAS,GAAE,QAAO,GAAE,WAAU,GAAE,QAAO,GAAE,SAAQ,GAAE,aAAY,GAAE,WAAU,GAAE,aAAY,GAAE,cAAa,GAAE,YAAW,GAAE,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,eAAc,GAAE,aAAY,GAAE,eAAc,GAAE,gBAAe,GAAE,cAAa,GAAE,iBAAgB,GAAE,cAAa,GAAE,eAAc,EAAC;AAAA,EAAC;AACtgBA,qBAAA,UAAe,OAAM;AACrBA,qBAAA,QAAA,eAA8B;;;","x_google_ignoreList":[0]}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const container = require("./container.js");
|
|
1
|
+
import { __require as requireContainer } from "./container.js";
|
|
4
2
|
var atRule;
|
|
5
3
|
var hasRequiredAtRule;
|
|
6
4
|
function requireAtRule() {
|
|
7
5
|
if (hasRequiredAtRule) return atRule;
|
|
8
6
|
hasRequiredAtRule = 1;
|
|
9
|
-
let Container =
|
|
7
|
+
let Container = requireContainer();
|
|
10
8
|
class AtRule extends Container {
|
|
11
9
|
constructor(defaults) {
|
|
12
10
|
super(defaults);
|
|
@@ -26,5 +24,7 @@ function requireAtRule() {
|
|
|
26
24
|
Container.registerAtRule(AtRule);
|
|
27
25
|
return atRule;
|
|
28
26
|
}
|
|
29
|
-
|
|
27
|
+
export {
|
|
28
|
+
requireAtRule as __require
|
|
29
|
+
};
|
|
30
30
|
//# sourceMappingURL=at-rule.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"at-rule.js","sources":["../../../../../../node_modules/postcss/lib/at-rule.js"],"sourcesContent":["'use strict'\n\nlet Container = require('./container')\n\nclass AtRule extends Container {\n constructor(defaults) {\n super(defaults)\n this.type = 'atrule'\n }\n\n append(...children) {\n if (!this.proxyOf.nodes) this.nodes = []\n return super.append(...children)\n }\n\n prepend(...children) {\n if (!this.proxyOf.nodes) this.nodes = []\n return super.prepend(...children)\n }\n}\n\nmodule.exports = AtRule\nAtRule.default = AtRule\n\nContainer.registerAtRule(AtRule)\n"],"names":["require$$0"],"mappings":"
|
|
1
|
+
{"version":3,"file":"at-rule.js","sources":["../../../../../../node_modules/postcss/lib/at-rule.js"],"sourcesContent":["'use strict'\n\nlet Container = require('./container')\n\nclass AtRule extends Container {\n constructor(defaults) {\n super(defaults)\n this.type = 'atrule'\n }\n\n append(...children) {\n if (!this.proxyOf.nodes) this.nodes = []\n return super.append(...children)\n }\n\n prepend(...children) {\n if (!this.proxyOf.nodes) this.nodes = []\n return super.prepend(...children)\n }\n}\n\nmodule.exports = AtRule\nAtRule.default = AtRule\n\nContainer.registerAtRule(AtRule)\n"],"names":["require$$0"],"mappings":";;;;;;AAEA,MAAI,YAAYA,iBAAA;AAAA,EAEhB,MAAM,eAAe,UAAU;AAAA,IAC7B,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,OAAO;AAAA,IAChB;AAAA,IAEE,UAAU,UAAU;AAClB,UAAI,CAAC,KAAK,QAAQ,MAAO,MAAK,QAAQ,CAAA;AACtC,aAAO,MAAM,OAAO,GAAG,QAAQ;AAAA,IACnC;AAAA,IAEE,WAAW,UAAU;AACnB,UAAI,CAAC,KAAK,QAAQ,MAAO,MAAK,QAAQ,CAAA;AACtC,aAAO,MAAM,QAAQ,GAAG,QAAQ;AAAA,IACpC;AAAA,EACA;AAEA,WAAiB;AACjB,SAAO,UAAU;AAEjB,YAAU,eAAe,MAAM;;;","x_google_ignoreList":[0]}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const node = require("./node.js");
|
|
1
|
+
import { __require as requireNode } from "./node.js";
|
|
4
2
|
var comment;
|
|
5
3
|
var hasRequiredComment;
|
|
6
4
|
function requireComment() {
|
|
7
5
|
if (hasRequiredComment) return comment;
|
|
8
6
|
hasRequiredComment = 1;
|
|
9
|
-
let Node =
|
|
7
|
+
let Node = requireNode();
|
|
10
8
|
class Comment extends Node {
|
|
11
9
|
constructor(defaults) {
|
|
12
10
|
super(defaults);
|
|
@@ -17,5 +15,7 @@ function requireComment() {
|
|
|
17
15
|
Comment.default = Comment;
|
|
18
16
|
return comment;
|
|
19
17
|
}
|
|
20
|
-
|
|
18
|
+
export {
|
|
19
|
+
requireComment as __require
|
|
20
|
+
};
|
|
21
21
|
//# sourceMappingURL=comment.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comment.js","sources":["../../../../../../node_modules/postcss/lib/comment.js"],"sourcesContent":["'use strict'\n\nlet Node = require('./node')\n\nclass Comment extends Node {\n constructor(defaults) {\n super(defaults)\n this.type = 'comment'\n }\n}\n\nmodule.exports = Comment\nComment.default = Comment\n"],"names":["require$$0"],"mappings":"
|
|
1
|
+
{"version":3,"file":"comment.js","sources":["../../../../../../node_modules/postcss/lib/comment.js"],"sourcesContent":["'use strict'\n\nlet Node = require('./node')\n\nclass Comment extends Node {\n constructor(defaults) {\n super(defaults)\n this.type = 'comment'\n }\n}\n\nmodule.exports = Comment\nComment.default = Comment\n"],"names":["require$$0"],"mappings":";;;;;;AAEA,MAAI,OAAOA,YAAA;AAAA,EAEX,MAAM,gBAAgB,KAAK;AAAA,IACzB,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,OAAO;AAAA,IAChB;AAAA,EACA;AAEA,YAAiB;AACjB,UAAQ,UAAU;;;","x_google_ignoreList":[0]}
|