@hypen-space/web 0.4.36 → 0.4.37

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 (139) hide show
  1. package/dist/canvas/accessibility.js +174 -174
  2. package/dist/canvas/accessibility.js.map +1 -10
  3. package/dist/canvas/events.js +264 -360
  4. package/dist/canvas/events.js.map +1 -11
  5. package/dist/canvas/index.js +11 -47
  6. package/dist/canvas/index.js.map +1 -9
  7. package/dist/canvas/input.js +178 -289
  8. package/dist/canvas/input.js.map +1 -11
  9. package/dist/canvas/layout.js +349 -547
  10. package/dist/canvas/layout.js.map +1 -12
  11. package/dist/canvas/paint.js +1122 -1146
  12. package/dist/canvas/paint.js.map +1 -12
  13. package/dist/canvas/renderer.js +352 -2259
  14. package/dist/canvas/renderer.js.map +1 -17
  15. package/dist/canvas/text.js +129 -264
  16. package/dist/canvas/text.js.map +1 -11
  17. package/dist/canvas/types.js +7 -2
  18. package/dist/canvas/types.js.map +1 -9
  19. package/dist/canvas/utils.js +158 -161
  20. package/dist/canvas/utils.js.map +1 -10
  21. package/dist/client.js +19 -45
  22. package/dist/client.js.map +1 -9
  23. package/dist/dom/applicators/advanced-layout.js +105 -138
  24. package/dist/dom/applicators/advanced-layout.js.map +1 -10
  25. package/dist/dom/applicators/background.js +36 -76
  26. package/dist/dom/applicators/background.js.map +1 -10
  27. package/dist/dom/applicators/border.js +82 -106
  28. package/dist/dom/applicators/border.js.map +1 -10
  29. package/dist/dom/applicators/color.js +17 -58
  30. package/dist/dom/applicators/color.js.map +1 -10
  31. package/dist/dom/applicators/display.js +39 -79
  32. package/dist/dom/applicators/display.js.map +1 -10
  33. package/dist/dom/applicators/effects.js +121 -147
  34. package/dist/dom/applicators/effects.js.map +1 -10
  35. package/dist/dom/applicators/events.js +413 -450
  36. package/dist/dom/applicators/events.js.map +1 -11
  37. package/dist/dom/applicators/font.js +119 -140
  38. package/dist/dom/applicators/font.js.map +1 -10
  39. package/dist/dom/applicators/index.js +386 -1770
  40. package/dist/dom/applicators/index.js.map +1 -26
  41. package/dist/dom/applicators/layout.js +143 -149
  42. package/dist/dom/applicators/layout.js.map +1 -10
  43. package/dist/dom/applicators/margin.js +64 -105
  44. package/dist/dom/applicators/margin.js.map +1 -10
  45. package/dist/dom/applicators/padding.js +64 -105
  46. package/dist/dom/applicators/padding.js.map +1 -10
  47. package/dist/dom/applicators/size.js +169 -172
  48. package/dist/dom/applicators/size.js.map +1 -10
  49. package/dist/dom/applicators/transform.js +73 -114
  50. package/dist/dom/applicators/transform.js.map +1 -10
  51. package/dist/dom/applicators/transition.js +47 -88
  52. package/dist/dom/applicators/transition.js.map +1 -10
  53. package/dist/dom/applicators/types.js +7 -2
  54. package/dist/dom/applicators/types.js.map +1 -9
  55. package/dist/dom/applicators/typography.js +68 -109
  56. package/dist/dom/applicators/typography.js.map +1 -10
  57. package/dist/dom/canvas/index.js +49 -83
  58. package/dist/dom/canvas/index.js.map +1 -10
  59. package/dist/dom/components/app.js +16 -63
  60. package/dist/dom/components/app.js.map +1 -10
  61. package/dist/dom/components/audio.js +31 -76
  62. package/dist/dom/components/audio.js.map +1 -10
  63. package/dist/dom/components/avatar.js +41 -87
  64. package/dist/dom/components/avatar.js.map +1 -10
  65. package/dist/dom/components/badge.js +35 -83
  66. package/dist/dom/components/badge.js.map +1 -10
  67. package/dist/dom/components/button.js +26 -69
  68. package/dist/dom/components/button.js.map +1 -10
  69. package/dist/dom/components/card.js +13 -63
  70. package/dist/dom/components/card.js.map +1 -10
  71. package/dist/dom/components/center.js +21 -65
  72. package/dist/dom/components/center.js.map +1 -10
  73. package/dist/dom/components/checkbox.js +37 -82
  74. package/dist/dom/components/checkbox.js.map +1 -10
  75. package/dist/dom/components/column.js +16 -62
  76. package/dist/dom/components/column.js.map +1 -10
  77. package/dist/dom/components/container.js +11 -59
  78. package/dist/dom/components/container.js.map +1 -10
  79. package/dist/dom/components/divider.js +27 -73
  80. package/dist/dom/components/divider.js.map +1 -10
  81. package/dist/dom/components/grid.js +41 -80
  82. package/dist/dom/components/grid.js.map +1 -10
  83. package/dist/dom/components/heading.js +28 -74
  84. package/dist/dom/components/heading.js.map +1 -10
  85. package/dist/dom/components/hypenapp.js +291 -288
  86. package/dist/dom/components/hypenapp.js.map +1 -10
  87. package/dist/dom/components/image.js +18 -67
  88. package/dist/dom/components/image.js.map +1 -10
  89. package/dist/dom/components/index.js +109 -1427
  90. package/dist/dom/components/index.js.map +1 -42
  91. package/dist/dom/components/input.js +19 -69
  92. package/dist/dom/components/input.js.map +1 -10
  93. package/dist/dom/components/link.js +23 -70
  94. package/dist/dom/components/link.js.map +1 -10
  95. package/dist/dom/components/list.js +26 -72
  96. package/dist/dom/components/list.js.map +1 -10
  97. package/dist/dom/components/paragraph.js +14 -63
  98. package/dist/dom/components/paragraph.js.map +1 -10
  99. package/dist/dom/components/progressbar.js +38 -85
  100. package/dist/dom/components/progressbar.js.map +1 -10
  101. package/dist/dom/components/route.js +27 -73
  102. package/dist/dom/components/route.js.map +1 -10
  103. package/dist/dom/components/router.js +15 -62
  104. package/dist/dom/components/router.js.map +1 -10
  105. package/dist/dom/components/row.js +25 -70
  106. package/dist/dom/components/row.js.map +1 -10
  107. package/dist/dom/components/select.js +42 -85
  108. package/dist/dom/components/select.js.map +1 -10
  109. package/dist/dom/components/slider.js +31 -76
  110. package/dist/dom/components/slider.js.map +1 -10
  111. package/dist/dom/components/spacer.js +10 -60
  112. package/dist/dom/components/spacer.js.map +1 -10
  113. package/dist/dom/components/spinner.js +41 -88
  114. package/dist/dom/components/spinner.js.map +1 -10
  115. package/dist/dom/components/stack.js +19 -67
  116. package/dist/dom/components/stack.js.map +1 -10
  117. package/dist/dom/components/switch.js +50 -93
  118. package/dist/dom/components/switch.js.map +1 -10
  119. package/dist/dom/components/text.js +24 -69
  120. package/dist/dom/components/text.js.map +1 -10
  121. package/dist/dom/components/textarea.js +35 -79
  122. package/dist/dom/components/textarea.js.map +1 -10
  123. package/dist/dom/components/video.js +35 -79
  124. package/dist/dom/components/video.js.map +1 -10
  125. package/dist/dom/debug.js +159 -160
  126. package/dist/dom/debug.js.map +1 -10
  127. package/dist/dom/element-data.js +181 -143
  128. package/dist/dom/element-data.js.map +1 -10
  129. package/dist/dom/events.js +133 -142
  130. package/dist/dom/events.js.map +1 -10
  131. package/dist/dom/index.js +11 -48
  132. package/dist/dom/index.js.map +1 -9
  133. package/dist/dom/renderer.js +311 -3596
  134. package/dist/dom/renderer.js.map +1 -62
  135. package/dist/hypen.js +385 -3880
  136. package/dist/hypen.js.map +1 -63
  137. package/dist/index.js +36 -53
  138. package/dist/index.js.map +1 -9
  139. package/package.json +2 -2
@@ -1,10 +1 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/dom/components/container.ts"],
4
- "sourcesContent": [
5
- "/**\n * Container/Box Component\n */\n\nimport type { ComponentHandler } from \"./index.js\";\n\nexport const containerHandler: ComponentHandler = {\n create(): HTMLElement {\n const el = document.createElement(\"div\");\n // Simple block container - wraps to content by default\n // Use .fillMaxWidth(true) to stretch\n el.dataset.hypenType = \"container\";\n return el;\n },\n};\n"
6
- ],
7
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAMa;AAAA;AAAA,qBAAqC;AAAA,IAChD,MAAM,GAAgB;AAAA,MACpB,MAAM,KAAK,SAAS,cAAc,KAAK;AAAA,MAGvC,GAAG,QAAQ,YAAY;AAAA,MACvB,OAAO;AAAA;AAAA,EAEX;AAAA;",
8
- "debugId": "DC11F92D0D1E3B6D64756E2164756E21",
9
- "names": []
10
- }
1
+ {"version":3,"file":"container.js","sourceRoot":"","sources":["../../../src/dom/components/container.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,CAAC,MAAM,gBAAgB,GAAqB;IAChD,MAAM;QACJ,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACzC,uDAAuD;QACvD,qCAAqC;QACrC,EAAE,CAAC,OAAO,CAAC,SAAS,GAAG,WAAW,CAAC;QACnC,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
@@ -1,77 +1,31 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropNames = Object.getOwnPropertyNames;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- function __accessProp(key) {
6
- return this[key];
7
- }
8
- var __toCommonJS = (from) => {
9
- var entry = (__moduleCache ??= new WeakMap).get(from), desc;
10
- if (entry)
11
- return entry;
12
- entry = __defProp({}, "__esModule", { value: true });
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (var key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(entry, key))
16
- __defProp(entry, key, {
17
- get: __accessProp.bind(from, key),
18
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
- });
20
- }
21
- __moduleCache.set(from, entry);
22
- return entry;
23
- };
24
- var __moduleCache;
25
- var __returnValue = (v) => v;
26
- function __exportSetter(name, newValue) {
27
- this[name] = __returnValue.bind(null, newValue);
28
- }
29
- var __export = (target, all) => {
30
- for (var name in all)
31
- __defProp(target, name, {
32
- get: all[name],
33
- enumerable: true,
34
- configurable: true,
35
- set: __exportSetter.bind(all, name)
36
- });
37
- };
38
- var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
39
-
40
- // src/dom/components/divider.ts
41
- var exports_divider = {};
42
- __export(exports_divider, {
43
- dividerHandler: () => dividerHandler
44
- });
45
- var dividerHandler;
46
- var init_divider = __esm(() => {
47
- dividerHandler = {
1
+ /**
2
+ * Divider Component - Visual separator
3
+ */
4
+ export const dividerHandler = {
48
5
  create() {
49
- const el = document.createElement("hr");
50
- el.dataset.hypenType = "divider";
51
- el.style.border = "none";
52
- el.style.borderTop = "1px solid #e0e0e0";
53
- el.style.margin = "0";
54
- return el;
6
+ const el = document.createElement("hr");
7
+ el.dataset.hypenType = "divider";
8
+ el.style.border = "none";
9
+ el.style.borderTop = "1px solid #e0e0e0";
10
+ el.style.margin = "0";
11
+ return el;
55
12
  },
56
13
  applyProps(el, props) {
57
- if (props.thickness !== undefined) {
58
- const thickness = typeof props.thickness === "number" ? `${props.thickness}px` : String(props.thickness);
59
- el.style.borderTopWidth = thickness;
60
- }
61
- if (props.orientation === "vertical") {
62
- el.style.borderTop = "none";
63
- el.style.borderLeft = "1px solid #e0e0e0";
64
- el.style.height = "100%";
65
- el.style.width = "0";
66
- el.style.display = "inline-block";
67
- }
68
- }
69
- };
70
- });
71
- init_divider();
72
-
73
- export {
74
- dividerHandler
14
+ // Thickness
15
+ if (props.thickness !== undefined) {
16
+ const thickness = typeof props.thickness === "number"
17
+ ? `${props.thickness}px`
18
+ : String(props.thickness);
19
+ el.style.borderTopWidth = thickness;
20
+ }
21
+ // Orientation
22
+ if (props.orientation === "vertical") {
23
+ el.style.borderTop = "none";
24
+ el.style.borderLeft = "1px solid #e0e0e0";
25
+ el.style.height = "100%";
26
+ el.style.width = "0";
27
+ el.style.display = "inline-block";
28
+ }
29
+ },
75
30
  };
76
-
77
- //# debugId=4EBBBEDF0C2E623064756E2164756E21
31
+ //# sourceMappingURL=divider.js.map
@@ -1,10 +1 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/dom/components/divider.ts"],
4
- "sourcesContent": [
5
- "/**\n * Divider Component - Visual separator\n */\n\nimport type { ComponentHandler } from \"./index.js\";\n\nexport const dividerHandler: ComponentHandler = {\n create(): HTMLElement {\n const el = document.createElement(\"hr\");\n el.dataset.hypenType = \"divider\";\n el.style.border = \"none\";\n el.style.borderTop = \"1px solid #e0e0e0\";\n el.style.margin = \"0\";\n return el;\n },\n\n applyProps(el: HTMLElement, props: Record<string, any>): void {\n // Thickness\n if (props.thickness !== undefined) {\n const thickness = typeof props.thickness === \"number\" \n ? `${props.thickness}px` \n : String(props.thickness);\n el.style.borderTopWidth = thickness;\n }\n\n // Orientation\n if (props.orientation === \"vertical\") {\n el.style.borderTop = \"none\";\n el.style.borderLeft = \"1px solid #e0e0e0\";\n el.style.height = \"100%\";\n el.style.width = \"0\";\n el.style.display = \"inline-block\";\n }\n },\n};\n\n\n"
6
- ],
7
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAMa;AAAA;AAAA,mBAAmC;AAAA,IAC9C,MAAM,GAAgB;AAAA,MACpB,MAAM,KAAK,SAAS,cAAc,IAAI;AAAA,MACtC,GAAG,QAAQ,YAAY;AAAA,MACvB,GAAG,MAAM,SAAS;AAAA,MAClB,GAAG,MAAM,YAAY;AAAA,MACrB,GAAG,MAAM,SAAS;AAAA,MAClB,OAAO;AAAA;AAAA,IAGT,UAAU,CAAC,IAAiB,OAAkC;AAAA,MAE5D,IAAI,MAAM,cAAc,WAAW;AAAA,QACjC,MAAM,YAAY,OAAO,MAAM,cAAc,WACzC,GAAG,MAAM,gBACT,OAAO,MAAM,SAAS;AAAA,QAC1B,GAAG,MAAM,iBAAiB;AAAA,MAC5B;AAAA,MAGA,IAAI,MAAM,gBAAgB,YAAY;AAAA,QACpC,GAAG,MAAM,YAAY;AAAA,QACrB,GAAG,MAAM,aAAa;AAAA,QACtB,GAAG,MAAM,SAAS;AAAA,QAClB,GAAG,MAAM,QAAQ;AAAA,QACjB,GAAG,MAAM,UAAU;AAAA,MACrB;AAAA;AAAA,EAEJ;AAAA;",
8
- "debugId": "4EBBBEDF0C2E623064756E2164756E21",
9
- "names": []
10
- }
1
+ {"version":3,"file":"divider.js","sourceRoot":"","sources":["../../../src/dom/components/divider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,CAAC,MAAM,cAAc,GAAqB;IAC9C,MAAM;QACJ,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACxC,EAAE,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;QACjC,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QACzB,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,mBAAmB,CAAC;QACzC,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC;QACtB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,UAAU,CAAC,EAAe,EAAE,KAA0B;QACpD,YAAY;QACZ,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;gBACnD,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,IAAI;gBACxB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC5B,EAAE,CAAC,KAAK,CAAC,cAAc,GAAG,SAAS,CAAC;QACtC,CAAC;QAED,cAAc;QACd,IAAI,KAAK,CAAC,WAAW,KAAK,UAAU,EAAE,CAAC;YACrC,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC;YAC5B,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,mBAAmB,CAAC;YAC1C,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;YACzB,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC;YACrB,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,cAAc,CAAC;QACpC,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -1,92 +1,53 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropNames = Object.getOwnPropertyNames;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- function __accessProp(key) {
6
- return this[key];
7
- }
8
- var __toCommonJS = (from) => {
9
- var entry = (__moduleCache ??= new WeakMap).get(from), desc;
10
- if (entry)
11
- return entry;
12
- entry = __defProp({}, "__esModule", { value: true });
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (var key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(entry, key))
16
- __defProp(entry, key, {
17
- get: __accessProp.bind(from, key),
18
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
- });
20
- }
21
- __moduleCache.set(from, entry);
22
- return entry;
23
- };
24
- var __moduleCache;
25
- var __returnValue = (v) => v;
26
- function __exportSetter(name, newValue) {
27
- this[name] = __returnValue.bind(null, newValue);
28
- }
29
- var __export = (target, all) => {
30
- for (var name in all)
31
- __defProp(target, name, {
32
- get: all[name],
33
- enumerable: true,
34
- configurable: true,
35
- set: __exportSetter.bind(all, name)
36
- });
37
- };
38
- var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
39
-
40
- // src/dom/components/grid.ts
41
- var exports_grid = {};
42
- __export(exports_grid, {
43
- gridHandler: () => gridHandler
44
- });
1
+ /**
2
+ * Grid Component - CSS Grid Layout
3
+ *
4
+ * Grid items stretch to fill their cells by default (matching Android/iOS behavior).
5
+ */
6
+ // Inject global styles for grid children
7
+ let gridStylesInjected = false;
45
8
  function ensureGridStyles() {
46
- if (gridStylesInjected)
47
- return;
48
- gridStylesInjected = true;
49
- const style = document.createElement("style");
50
- style.id = "hypen-grid-styles";
51
- style.textContent = `
9
+ if (gridStylesInjected)
10
+ return;
11
+ gridStylesInjected = true;
12
+ const style = document.createElement("style");
13
+ style.id = "hypen-grid-styles";
14
+ style.textContent = `
52
15
  /* Grid children stretch to fill cells by default (matches Android behavior) */
53
16
  [data-hypen-type="grid"] > * {
54
17
  justify-self: stretch;
55
18
  align-self: stretch;
56
19
  }
57
20
  `;
58
- document.head.appendChild(style);
21
+ document.head.appendChild(style);
59
22
  }
60
- var gridStylesInjected = false, gridHandler;
61
- var init_grid = __esm(() => {
62
- gridHandler = {
23
+ export const gridHandler = {
63
24
  create() {
64
- ensureGridStyles();
65
- const el = document.createElement("div");
66
- el.style.display = "grid";
67
- el.dataset.hypenType = "grid";
68
- return el;
25
+ ensureGridStyles();
26
+ const el = document.createElement("div");
27
+ el.style.display = "grid";
28
+ el.dataset.hypenType = "grid";
29
+ return el;
69
30
  },
70
31
  applyProps(el, props) {
71
- if (props.columns !== undefined) {
72
- const columns = typeof props.columns === "number" ? `repeat(${props.columns}, 1fr)` : String(props.columns);
73
- el.style.gridTemplateColumns = columns;
74
- }
75
- if (props.rows !== undefined) {
76
- const rows = typeof props.rows === "number" ? `repeat(${props.rows}, 1fr)` : String(props.rows);
77
- el.style.gridTemplateRows = rows;
78
- }
79
- if (props.gap !== undefined) {
80
- const gap = typeof props.gap === "number" ? `${props.gap}px` : String(props.gap);
81
- el.style.gap = gap;
82
- }
83
- }
84
- };
85
- });
86
- init_grid();
87
-
88
- export {
89
- gridHandler
32
+ // Columns
33
+ if (props.columns !== undefined) {
34
+ const columns = typeof props.columns === "number"
35
+ ? `repeat(${props.columns}, 1fr)`
36
+ : String(props.columns);
37
+ el.style.gridTemplateColumns = columns;
38
+ }
39
+ // Rows
40
+ if (props.rows !== undefined) {
41
+ const rows = typeof props.rows === "number"
42
+ ? `repeat(${props.rows}, 1fr)`
43
+ : String(props.rows);
44
+ el.style.gridTemplateRows = rows;
45
+ }
46
+ // Gap
47
+ if (props.gap !== undefined) {
48
+ const gap = typeof props.gap === "number" ? `${props.gap}px` : String(props.gap);
49
+ el.style.gap = gap;
50
+ }
51
+ },
90
52
  };
91
-
92
- //# debugId=96BFDBC03C14F29264756E2164756E21
53
+ //# sourceMappingURL=grid.js.map
@@ -1,10 +1 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/dom/components/grid.ts"],
4
- "sourcesContent": [
5
- "/**\n * Grid Component - CSS Grid Layout\n *\n * Grid items stretch to fill their cells by default (matching Android/iOS behavior).\n */\n\nimport type { ComponentHandler } from \"./index.js\";\n\n// Inject global styles for grid children\nlet gridStylesInjected = false;\nfunction ensureGridStyles(): void {\n if (gridStylesInjected) return;\n gridStylesInjected = true;\n\n const style = document.createElement(\"style\");\n style.id = \"hypen-grid-styles\";\n style.textContent = `\n /* Grid children stretch to fill cells by default (matches Android behavior) */\n [data-hypen-type=\"grid\"] > * {\n justify-self: stretch;\n align-self: stretch;\n }\n `;\n document.head.appendChild(style);\n}\n\nexport const gridHandler: ComponentHandler = {\n create(): HTMLElement {\n ensureGridStyles();\n\n const el = document.createElement(\"div\");\n el.style.display = \"grid\";\n el.dataset.hypenType = \"grid\";\n return el;\n },\n\n applyProps(el: HTMLElement, props: Record<string, any>): void {\n // Columns\n if (props.columns !== undefined) {\n const columns = typeof props.columns === \"number\"\n ? `repeat(${props.columns}, 1fr)`\n : String(props.columns);\n el.style.gridTemplateColumns = columns;\n }\n\n // Rows\n if (props.rows !== undefined) {\n const rows = typeof props.rows === \"number\"\n ? `repeat(${props.rows}, 1fr)`\n : String(props.rows);\n el.style.gridTemplateRows = rows;\n }\n\n // Gap\n if (props.gap !== undefined) {\n const gap = typeof props.gap === \"number\" ? `${props.gap}px` : String(props.gap);\n el.style.gap = gap;\n }\n },\n};\n\n\n"
6
- ],
7
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,SAAS,gBAAgB,GAAS;AAAA,EAChC,IAAI;AAAA,IAAoB;AAAA,EACxB,qBAAqB;AAAA,EAErB,MAAM,QAAQ,SAAS,cAAc,OAAO;AAAA,EAC5C,MAAM,KAAK;AAAA,EACX,MAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOpB,SAAS,KAAK,YAAY,KAAK;AAAA;AAAA,IAd7B,qBAAqB,OAiBZ;AAAA;AAAA,gBAAgC;AAAA,IAC3C,MAAM,GAAgB;AAAA,MACpB,iBAAiB;AAAA,MAEjB,MAAM,KAAK,SAAS,cAAc,KAAK;AAAA,MACvC,GAAG,MAAM,UAAU;AAAA,MACnB,GAAG,QAAQ,YAAY;AAAA,MACvB,OAAO;AAAA;AAAA,IAGT,UAAU,CAAC,IAAiB,OAAkC;AAAA,MAE5D,IAAI,MAAM,YAAY,WAAW;AAAA,QAC/B,MAAM,UAAU,OAAO,MAAM,YAAY,WACrC,UAAU,MAAM,kBAChB,OAAO,MAAM,OAAO;AAAA,QACxB,GAAG,MAAM,sBAAsB;AAAA,MACjC;AAAA,MAGA,IAAI,MAAM,SAAS,WAAW;AAAA,QAC5B,MAAM,OAAO,OAAO,MAAM,SAAS,WAC/B,UAAU,MAAM,eAChB,OAAO,MAAM,IAAI;AAAA,QACrB,GAAG,MAAM,mBAAmB;AAAA,MAC9B;AAAA,MAGA,IAAI,MAAM,QAAQ,WAAW;AAAA,QAC3B,MAAM,MAAM,OAAO,MAAM,QAAQ,WAAW,GAAG,MAAM,UAAU,OAAO,MAAM,GAAG;AAAA,QAC/E,GAAG,MAAM,MAAM;AAAA,MACjB;AAAA;AAAA,EAEJ;AAAA;",
8
- "debugId": "96BFDBC03C14F29264756E2164756E21",
9
- "names": []
10
- }
1
+ {"version":3,"file":"grid.js","sourceRoot":"","sources":["../../../src/dom/components/grid.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,yCAAyC;AACzC,IAAI,kBAAkB,GAAG,KAAK,CAAC;AAC/B,SAAS,gBAAgB;IACvB,IAAI,kBAAkB;QAAE,OAAO;IAC/B,kBAAkB,GAAG,IAAI,CAAC;IAE1B,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,EAAE,GAAG,mBAAmB,CAAC;IAC/B,KAAK,CAAC,WAAW,GAAG;;;;;;GAMnB,CAAC;IACF,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAqB;IAC3C,MAAM;QACJ,gBAAgB,EAAE,CAAC;QAEnB,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACzC,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAC1B,EAAE,CAAC,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC;QAC9B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,UAAU,CAAC,EAAe,EAAE,KAA0B;QACpD,UAAU;QACV,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;gBAC/C,CAAC,CAAC,UAAU,KAAK,CAAC,OAAO,QAAQ;gBACjC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC1B,EAAE,CAAC,KAAK,CAAC,mBAAmB,GAAG,OAAO,CAAC;QACzC,CAAC;QAED,OAAO;QACP,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;gBACzC,CAAC,CAAC,UAAU,KAAK,CAAC,IAAI,QAAQ;gBAC9B,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACvB,EAAE,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC;QACnC,CAAC;QAED,MAAM;QACN,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACjF,EAAE,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC;QACrB,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -1,79 +1,33 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropNames = Object.getOwnPropertyNames;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- function __accessProp(key) {
6
- return this[key];
7
- }
8
- var __toCommonJS = (from) => {
9
- var entry = (__moduleCache ??= new WeakMap).get(from), desc;
10
- if (entry)
11
- return entry;
12
- entry = __defProp({}, "__esModule", { value: true });
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (var key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(entry, key))
16
- __defProp(entry, key, {
17
- get: __accessProp.bind(from, key),
18
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
- });
20
- }
21
- __moduleCache.set(from, entry);
22
- return entry;
23
- };
24
- var __moduleCache;
25
- var __returnValue = (v) => v;
26
- function __exportSetter(name, newValue) {
27
- this[name] = __returnValue.bind(null, newValue);
28
- }
29
- var __export = (target, all) => {
30
- for (var name in all)
31
- __defProp(target, name, {
32
- get: all[name],
33
- enumerable: true,
34
- configurable: true,
35
- set: __exportSetter.bind(all, name)
36
- });
37
- };
38
- var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
39
-
40
- // src/dom/components/heading.ts
41
- var exports_heading = {};
42
- __export(exports_heading, {
43
- headingHandler: () => headingHandler
44
- });
45
- var headingHandler;
46
- var init_heading = __esm(() => {
47
- headingHandler = {
1
+ /**
2
+ * Heading Component - Semantic headings (h1-h6)
3
+ */
4
+ export const headingHandler = {
48
5
  create() {
49
- const el = document.createElement("h2");
50
- el.dataset.hypenType = "heading";
51
- return el;
6
+ const el = document.createElement("h2");
7
+ el.dataset.hypenType = "heading";
8
+ return el;
52
9
  },
53
10
  applyProps(el, props) {
54
- if (props.level !== undefined) {
55
- const level = Math.max(1, Math.min(6, Number(props.level)));
56
- const newEl = document.createElement(`h${level}`);
57
- newEl.dataset.hypenType = "heading";
58
- newEl.innerHTML = el.innerHTML;
59
- Array.from(el.attributes).forEach((attr) => {
60
- newEl.setAttribute(attr.name, attr.value);
61
- });
62
- if (el.parentNode) {
63
- el.parentNode.replaceChild(newEl, el);
11
+ // Level property (1-6)
12
+ if (props.level !== undefined) {
13
+ const level = Math.max(1, Math.min(6, Number(props.level)));
14
+ const newEl = document.createElement(`h${level}`);
15
+ newEl.dataset.hypenType = "heading";
16
+ // Copy content and attributes
17
+ newEl.innerHTML = el.innerHTML;
18
+ Array.from(el.attributes).forEach(attr => {
19
+ newEl.setAttribute(attr.name, attr.value);
20
+ });
21
+ // Replace the element
22
+ if (el.parentNode) {
23
+ el.parentNode.replaceChild(newEl, el);
24
+ }
64
25
  }
65
- }
66
- const text = props["0"] || props.text;
67
- if (text !== undefined) {
68
- el.textContent = String(text);
69
- }
70
- }
71
- };
72
- });
73
- init_heading();
74
-
75
- export {
76
- headingHandler
26
+ // Text content
27
+ const text = props["0"] || props.text;
28
+ if (text !== undefined) {
29
+ el.textContent = String(text);
30
+ }
31
+ },
77
32
  };
78
-
79
- //# debugId=FF5A0680D5657CEB64756E2164756E21
33
+ //# sourceMappingURL=heading.js.map
@@ -1,10 +1 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/dom/components/heading.ts"],
4
- "sourcesContent": [
5
- "/**\n * Heading Component - Semantic headings (h1-h6)\n */\n\nimport type { ComponentHandler } from \"./index.js\";\n\nexport const headingHandler: ComponentHandler = {\n create(): HTMLElement {\n const el = document.createElement(\"h2\");\n el.dataset.hypenType = \"heading\";\n return el;\n },\n\n applyProps(el: HTMLElement, props: Record<string, any>): void {\n // Level property (1-6)\n if (props.level !== undefined) {\n const level = Math.max(1, Math.min(6, Number(props.level)));\n const newEl = document.createElement(`h${level}`);\n newEl.dataset.hypenType = \"heading\";\n \n // Copy content and attributes\n newEl.innerHTML = el.innerHTML;\n Array.from(el.attributes).forEach(attr => {\n newEl.setAttribute(attr.name, attr.value);\n });\n \n // Replace the element\n if (el.parentNode) {\n el.parentNode.replaceChild(newEl, el);\n }\n }\n\n // Text content\n const text = props[\"0\"] || props.text;\n if (text !== undefined) {\n el.textContent = String(text);\n }\n },\n};\n\n\n"
6
- ],
7
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAMa;AAAA;AAAA,mBAAmC;AAAA,IAC9C,MAAM,GAAgB;AAAA,MACpB,MAAM,KAAK,SAAS,cAAc,IAAI;AAAA,MACtC,GAAG,QAAQ,YAAY;AAAA,MACvB,OAAO;AAAA;AAAA,IAGT,UAAU,CAAC,IAAiB,OAAkC;AAAA,MAE5D,IAAI,MAAM,UAAU,WAAW;AAAA,QAC7B,MAAM,QAAQ,KAAK,IAAI,GAAG,KAAK,IAAI,GAAG,OAAO,MAAM,KAAK,CAAC,CAAC;AAAA,QAC1D,MAAM,QAAQ,SAAS,cAAc,IAAI,OAAO;AAAA,QAChD,MAAM,QAAQ,YAAY;AAAA,QAG1B,MAAM,YAAY,GAAG;AAAA,QACrB,MAAM,KAAK,GAAG,UAAU,EAAE,QAAQ,UAAQ;AAAA,UACxC,MAAM,aAAa,KAAK,MAAM,KAAK,KAAK;AAAA,SACzC;AAAA,QAGD,IAAI,GAAG,YAAY;AAAA,UACjB,GAAG,WAAW,aAAa,OAAO,EAAE;AAAA,QACtC;AAAA,MACF;AAAA,MAGA,MAAM,OAAO,MAAM,QAAQ,MAAM;AAAA,MACjC,IAAI,SAAS,WAAW;AAAA,QACtB,GAAG,cAAc,OAAO,IAAI;AAAA,MAC9B;AAAA;AAAA,EAEJ;AAAA;",
8
- "debugId": "FF5A0680D5657CEB64756E2164756E21",
9
- "names": []
10
- }
1
+ {"version":3,"file":"heading.js","sourceRoot":"","sources":["../../../src/dom/components/heading.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,CAAC,MAAM,cAAc,GAAqB;IAC9C,MAAM;QACJ,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACxC,EAAE,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;QACjC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,UAAU,CAAC,EAAe,EAAE,KAA0B;QACpD,uBAAuB;QACvB,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;YAClD,KAAK,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;YAEpC,8BAA8B;YAC9B,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC,SAAS,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACvC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5C,CAAC,CAAC,CAAC;YAEH,sBAAsB;YACtB,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;gBAClB,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QAED,eAAe;QACf,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC;QACtC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;CACF,CAAC"}