juxscript 1.1.402 → 1.1.404

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 (133) hide show
  1. package/dist/{components → containers}/c.d.ts.map +1 -1
  2. package/dist/{components → containers}/c.js.map +1 -1
  3. package/dist/containers/flex.d.ts +49 -0
  4. package/dist/containers/flex.d.ts.map +1 -0
  5. package/dist/containers/flex.js +122 -0
  6. package/dist/containers/flex.js.map +1 -0
  7. package/dist/{components → containers}/g.d.ts.map +1 -1
  8. package/dist/{components → containers}/g.js.map +1 -1
  9. package/dist/index.d.ts +6 -4
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +6 -4
  12. package/dist/index.js.map +1 -1
  13. package/dist/widgets/canvas.d.ts +31 -55
  14. package/dist/widgets/canvas.d.ts.map +1 -1
  15. package/dist/widgets/canvas.js +690 -539
  16. package/dist/widgets/canvas.js.map +1 -1
  17. package/package.json +1 -1
  18. package/dist/components/barChart.d.ts +0 -119
  19. package/dist/components/barChart.d.ts.map +0 -1
  20. package/dist/components/barChart.js +0 -555
  21. package/dist/components/barChart.js.map +0 -1
  22. package/dist/components/container.d.ts +0 -58
  23. package/dist/components/container.d.ts.map +0 -1
  24. package/dist/components/container.js +0 -152
  25. package/dist/components/container.js.map +0 -1
  26. package/dist/components/grid.d.ts +0 -58
  27. package/dist/components/grid.d.ts.map +0 -1
  28. package/dist/components/grid.js +0 -128
  29. package/dist/components/grid.js.map +0 -1
  30. package/dist/components/lineChart.d.ts +0 -104
  31. package/dist/components/lineChart.d.ts.map +0 -1
  32. package/dist/components/lineChart.js +0 -466
  33. package/dist/components/lineChart.js.map +0 -1
  34. package/dist/components/pieChart.d.ts +0 -93
  35. package/dist/components/pieChart.d.ts.map +0 -1
  36. package/dist/components/pieChart.js +0 -397
  37. package/dist/components/pieChart.js.map +0 -1
  38. package/dist/components/stack.d.ts +0 -42
  39. package/dist/components/stack.d.ts.map +0 -1
  40. package/dist/components/stack.js +0 -109
  41. package/dist/components/stack.js.map +0 -1
  42. package/dist/devtools/devtools.d.ts +0 -3
  43. package/dist/devtools/devtools.d.ts.map +0 -1
  44. package/dist/devtools/devtools.js +0 -182
  45. package/dist/devtools/devtools.js.map +0 -1
  46. package/dist/primitives/button.d.ts +0 -53
  47. package/dist/primitives/button.d.ts.map +0 -1
  48. package/dist/primitives/button.js +0 -170
  49. package/dist/primitives/button.js.map +0 -1
  50. package/dist/primitives/c.d.ts +0 -53
  51. package/dist/primitives/c.d.ts.map +0 -1
  52. package/dist/primitives/c.js +0 -127
  53. package/dist/primitives/c.js.map +0 -1
  54. package/dist/primitives/checkbox.d.ts +0 -92
  55. package/dist/primitives/checkbox.d.ts.map +0 -1
  56. package/dist/primitives/checkbox.js +0 -217
  57. package/dist/primitives/checkbox.js.map +0 -1
  58. package/dist/primitives/data.d.ts +0 -58
  59. package/dist/primitives/data.d.ts.map +0 -1
  60. package/dist/primitives/data.js +0 -131
  61. package/dist/primitives/data.js.map +0 -1
  62. package/dist/primitives/grid.d.ts +0 -58
  63. package/dist/primitives/grid.d.ts.map +0 -1
  64. package/dist/primitives/grid.js +0 -128
  65. package/dist/primitives/grid.js.map +0 -1
  66. package/dist/primitives/include.d.ts +0 -86
  67. package/dist/primitives/include.d.ts.map +0 -1
  68. package/dist/primitives/include.js +0 -239
  69. package/dist/primitives/include.js.map +0 -1
  70. package/dist/primitives/indexDb.d.ts +0 -80
  71. package/dist/primitives/indexDb.d.ts.map +0 -1
  72. package/dist/primitives/indexDb.js +0 -253
  73. package/dist/primitives/indexDb.js.map +0 -1
  74. package/dist/primitives/input.d.ts +0 -88
  75. package/dist/primitives/input.d.ts.map +0 -1
  76. package/dist/primitives/input.js +0 -216
  77. package/dist/primitives/input.js.map +0 -1
  78. package/dist/primitives/link.d.ts +0 -51
  79. package/dist/primitives/link.d.ts.map +0 -1
  80. package/dist/primitives/link.js +0 -178
  81. package/dist/primitives/link.js.map +0 -1
  82. package/dist/primitives/list.d.ts +0 -66
  83. package/dist/primitives/list.d.ts.map +0 -1
  84. package/dist/primitives/list.js +0 -233
  85. package/dist/primitives/list.js.map +0 -1
  86. package/dist/primitives/nav.d.ts +0 -64
  87. package/dist/primitives/nav.d.ts.map +0 -1
  88. package/dist/primitives/nav.js +0 -236
  89. package/dist/primitives/nav.js.map +0 -1
  90. package/dist/primitives/radio.d.ts +0 -58
  91. package/dist/primitives/radio.d.ts.map +0 -1
  92. package/dist/primitives/radio.js +0 -135
  93. package/dist/primitives/radio.js.map +0 -1
  94. package/dist/primitives/routes.d.ts +0 -15
  95. package/dist/primitives/routes.d.ts.map +0 -1
  96. package/dist/primitives/routes.js +0 -34
  97. package/dist/primitives/routes.js.map +0 -1
  98. package/dist/primitives/select.d.ts +0 -67
  99. package/dist/primitives/select.d.ts.map +0 -1
  100. package/dist/primitives/select.js +0 -160
  101. package/dist/primitives/select.js.map +0 -1
  102. package/dist/primitives/style.d.ts +0 -27
  103. package/dist/primitives/style.d.ts.map +0 -1
  104. package/dist/primitives/style.js +0 -53
  105. package/dist/primitives/style.js.map +0 -1
  106. package/dist/primitives/table.d.ts +0 -83
  107. package/dist/primitives/table.d.ts.map +0 -1
  108. package/dist/primitives/table.js +0 -264
  109. package/dist/primitives/table.js.map +0 -1
  110. package/dist/primitives/tabs.d.ts +0 -75
  111. package/dist/primitives/tabs.d.ts.map +0 -1
  112. package/dist/primitives/tabs.js +0 -263
  113. package/dist/primitives/tabs.js.map +0 -1
  114. package/dist/primitives/tag.d.ts +0 -92
  115. package/dist/primitives/tag.d.ts.map +0 -1
  116. package/dist/primitives/tag.js +0 -151
  117. package/dist/primitives/tag.js.map +0 -1
  118. package/dist/services/db.d.ts +0 -44
  119. package/dist/services/db.d.ts.map +0 -1
  120. package/dist/services/db.js +0 -59
  121. package/dist/services/db.js.map +0 -1
  122. package/dist/services/email.d.ts +0 -50
  123. package/dist/services/email.d.ts.map +0 -1
  124. package/dist/services/email.js +0 -60
  125. package/dist/services/email.js.map +0 -1
  126. package/dist/services/s3.d.ts +0 -61
  127. package/dist/services/s3.d.ts.map +0 -1
  128. package/dist/services/s3.js +0 -79
  129. package/dist/services/s3.js.map +0 -1
  130. /package/dist/{components → containers}/c.d.ts +0 -0
  131. /package/dist/{components → containers}/c.js +0 -0
  132. /package/dist/{components → containers}/g.d.ts +0 -0
  133. /package/dist/{components → containers}/g.js +0 -0
@@ -1,75 +0,0 @@
1
- interface TabItem {
2
- id?: string;
3
- label: string;
4
- content?: string;
5
- icon?: string;
6
- disabled?: boolean;
7
- [key: string]: any;
8
- }
9
- interface TabsOptions {
10
- items?: TabItem[];
11
- defaultTab?: string;
12
- class?: string;
13
- style?: string;
14
- target?: string;
15
- tabListClass?: string;
16
- tabClass?: string;
17
- tabActiveClass?: string;
18
- panelClass?: string;
19
- }
20
- declare class Tabs {
21
- id: string;
22
- opts: TabsOptions;
23
- private _element;
24
- private _tabList;
25
- private _panelContainer;
26
- private _items;
27
- private _value;
28
- private _onChange;
29
- constructor(id: string, options?: TabsOptions);
30
- defaultTab(value: string): this;
31
- class(value: string): this;
32
- style(value: string): this;
33
- tabListClass(value: string): this;
34
- tabClass(value: string): this;
35
- tabActiveClass(value: string): this;
36
- panelClass(value: string): this;
37
- addItem(item: TabItem): this;
38
- addItems(items: TabItem[]): this;
39
- removeItem(key: string | number): this;
40
- updateItem(key: string | number, updates: Partial<TabItem>): this;
41
- clearItems(): this;
42
- getItems(): TabItem[];
43
- getCount(): number;
44
- /** Get the panel element for a tab so you can render jux components into it */
45
- getPanel(tabId: string): HTMLElement | null;
46
- getValue(): string | null;
47
- setValue(val: string | null): this;
48
- getDefaultTab(): string;
49
- getClass(): string;
50
- getStyle(): string;
51
- getTabListClass(): string;
52
- getTabClass(): string;
53
- getTabActiveClass(): string;
54
- getPanelClass(): string;
55
- setDefaultTab(val: string): this;
56
- setClass(val: string): this;
57
- setStyle(val: string): this;
58
- setTabListClass(val: string): this;
59
- setTabClass(val: string): this;
60
- setTabActiveClass(val: string): this;
61
- setPanelClass(val: string): this;
62
- getElement(): HTMLElement;
63
- onChange(fn: (value: string | null) => void): this;
64
- /** Returns the reactive pageState proxy for this component */
65
- get state(): any;
66
- private _renderTab;
67
- private _renderPanel;
68
- private _renderAll;
69
- private _updateActiveState;
70
- private _dispatchChange;
71
- }
72
- export declare function tabs(id: string, options?: TabsOptions): Tabs;
73
- export { Tabs, TabItem, TabsOptions };
74
- export default tabs;
75
- //# sourceMappingURL=tabs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../lib/primitives/tabs.ts"],"names":[],"mappings":"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"}
@@ -1,263 +0,0 @@
1
- import generateId from '../utils/idgen.js';
2
- import { pageState } from '../state/pageState.js';
3
- class Tabs {
4
- constructor(id, options = {}) {
5
- this._items = [];
6
- this._value = null;
7
- this._onChange = null;
8
- this.id = id || generateId();
9
- this.opts = {
10
- tabListClass: 'jux-tabs-list',
11
- tabClass: 'jux-tab',
12
- tabActiveClass: 'jux-tab--active',
13
- panelClass: 'jux-tab-panel',
14
- ...options
15
- };
16
- this._element = document.createElement('div');
17
- this._element.id = this.id;
18
- this._element.setAttribute('data-jux-tabs', '');
19
- if (this.opts.class)
20
- this._element.className = this.opts.class;
21
- if (this.opts.style)
22
- this._element.setAttribute('style', this.opts.style);
23
- // Tab list (the clickable triggers)
24
- this._tabList = document.createElement('div');
25
- this._tabList.className = this.opts.tabListClass;
26
- this._tabList.setAttribute('role', 'tablist');
27
- this._element.appendChild(this._tabList);
28
- // Panel container (the content areas)
29
- this._panelContainer = document.createElement('div');
30
- this._panelContainer.className = 'jux-tabs-panels';
31
- this._element.appendChild(this._panelContainer);
32
- const resolvedTarget = this.opts.target;
33
- const container = resolvedTarget
34
- ? document.getElementById(resolvedTarget) || document.querySelector(resolvedTarget)
35
- : document.getElementById('app');
36
- container?.appendChild(this._element);
37
- if (this.opts.items) {
38
- this.addItems(this.opts.items);
39
- }
40
- if (this.opts.defaultTab) {
41
- this.setValue(this.opts.defaultTab);
42
- }
43
- else if (this._items.length > 0) {
44
- this.setValue(this._items[0].id);
45
- }
46
- }
47
- // ═══════════════════════════════════════════════════════════
48
- // FLUENT BUILDER API
49
- // ═══════════════════════════════════════════════════════════
50
- defaultTab(value) {
51
- this.opts.defaultTab = value;
52
- this.setValue(value);
53
- return this;
54
- }
55
- class(value) {
56
- this.opts.class = value;
57
- this._element.className = value;
58
- return this;
59
- }
60
- style(value) {
61
- this.opts.style = value;
62
- this._element.setAttribute('style', value);
63
- return this;
64
- }
65
- tabListClass(value) {
66
- this.opts.tabListClass = value;
67
- this._tabList.className = value;
68
- return this;
69
- }
70
- tabClass(value) {
71
- this.opts.tabClass = value;
72
- this._renderAll();
73
- return this;
74
- }
75
- tabActiveClass(value) {
76
- this.opts.tabActiveClass = value;
77
- this._updateActiveState();
78
- return this;
79
- }
80
- panelClass(value) {
81
- this.opts.panelClass = value;
82
- this._renderAll();
83
- return this;
84
- }
85
- // ═══════════════════════════════════════════════════════════
86
- // STANDARD COLLECTION API
87
- // ═══════════════════════════════════════════════════════════
88
- addItem(item) {
89
- const tabItem = { ...item, id: item.id || `${this.id}-tab-${this._items.length}` };
90
- this._items.push(tabItem);
91
- this._renderTab(tabItem);
92
- this._renderPanel(tabItem);
93
- if (this._items.length === 1)
94
- this.setValue(tabItem.id);
95
- this._dispatchChange();
96
- return this;
97
- }
98
- addItems(items) {
99
- for (const item of items) {
100
- const tabItem = { ...item, id: item.id || `${this.id}-tab-${this._items.length}` };
101
- this._items.push(tabItem);
102
- this._renderTab(tabItem);
103
- this._renderPanel(tabItem);
104
- }
105
- if (this._items.length > 0 && !this._value) {
106
- this.setValue(this._items[0].id);
107
- }
108
- this._dispatchChange();
109
- return this;
110
- }
111
- removeItem(key) {
112
- const idx = typeof key === 'number' ? key : this._items.findIndex(i => i.id === key);
113
- if (idx > -1) {
114
- const removed = this._items.splice(idx, 1)[0];
115
- this._renderAll();
116
- if (this._value === removed.id && this._items.length > 0) {
117
- this.setValue(this._items[0].id);
118
- }
119
- else if (this._items.length === 0) {
120
- this._value = null;
121
- }
122
- this._dispatchChange();
123
- }
124
- return this;
125
- }
126
- updateItem(key, updates) {
127
- const idx = typeof key === 'number' ? key : this._items.findIndex(i => i.id === key);
128
- if (idx > -1) {
129
- this._items[idx] = { ...this._items[idx], ...updates };
130
- this._renderAll();
131
- this._updateActiveState();
132
- this._dispatchChange();
133
- }
134
- return this;
135
- }
136
- clearItems() {
137
- this._items = [];
138
- this._value = null;
139
- this._tabList.innerHTML = '';
140
- this._panelContainer.innerHTML = '';
141
- this._dispatchChange();
142
- return this;
143
- }
144
- getItems() { return [...this._items]; }
145
- getCount() { return this._items.length; }
146
- // ═══════════════════════════════════════════════════════════
147
- // PANEL ACCESS (for rendering content into tab panels)
148
- // ═══════════════════════════════════════════════════════════
149
- /** Get the panel element for a tab so you can render jux components into it */
150
- getPanel(tabId) {
151
- return this._panelContainer.querySelector(`[data-tab-panel="${tabId}"]`);
152
- }
153
- // ═══════════════════════════════════════════════════════════
154
- // PAGESTATE INTEGRATION (delegates to fluent API)
155
- // ═══════════════════════════════════════════════════════════
156
- getValue() { return this._value; }
157
- setValue(val) {
158
- this._value = val;
159
- this._updateActiveState();
160
- return this;
161
- }
162
- getDefaultTab() { return this.opts.defaultTab ?? ''; }
163
- getClass() { return this.opts.class ?? ''; }
164
- getStyle() { return this.opts.style ?? ''; }
165
- getTabListClass() { return this.opts.tabListClass ?? ''; }
166
- getTabClass() { return this.opts.tabClass ?? ''; }
167
- getTabActiveClass() { return this.opts.tabActiveClass ?? ''; }
168
- getPanelClass() { return this.opts.panelClass ?? ''; }
169
- setDefaultTab(val) { return this.defaultTab(val); }
170
- setClass(val) { return this.class(val); }
171
- setStyle(val) { return this.style(val); }
172
- setTabListClass(val) { return this.tabListClass(val); }
173
- setTabClass(val) { return this.tabClass(val); }
174
- setTabActiveClass(val) { return this.tabActiveClass(val); }
175
- setPanelClass(val) { return this.panelClass(val); }
176
- getElement() { return this._element; }
177
- onChange(fn) {
178
- this._onChange = fn;
179
- return this;
180
- }
181
- /** Returns the reactive pageState proxy for this component */
182
- get state() {
183
- return pageState[this.id];
184
- }
185
- // ═══════════════════════════════════════════════════════════
186
- // INTERNAL
187
- // ═══════════════════════════════════════════════════════════
188
- _renderTab(item) {
189
- const btn = document.createElement('button');
190
- btn.id = `${item.id}-trigger`;
191
- btn.className = this.opts.tabClass;
192
- btn.setAttribute('role', 'tab');
193
- btn.setAttribute('data-tab-id', item.id);
194
- btn.textContent = item.label;
195
- if (item.disabled) {
196
- btn.disabled = true;
197
- btn.setAttribute('data-disabled', 'true');
198
- }
199
- btn.addEventListener('click', () => {
200
- if (item.disabled)
201
- return;
202
- this._value = item.id;
203
- this._updateActiveState();
204
- if (this._onChange)
205
- this._onChange(this._value);
206
- this._element.dispatchEvent(new Event('change', { bubbles: false }));
207
- });
208
- this._tabList.appendChild(btn);
209
- }
210
- _renderPanel(item) {
211
- const panel = document.createElement('div');
212
- panel.id = `${item.id}-panel`;
213
- panel.className = this.opts.panelClass;
214
- panel.setAttribute('role', 'tabpanel');
215
- panel.setAttribute('data-tab-panel', item.id);
216
- if (item.content)
217
- panel.innerHTML = item.content;
218
- panel.style.display = 'none';
219
- this._panelContainer.appendChild(panel);
220
- }
221
- _renderAll() {
222
- this._tabList.innerHTML = '';
223
- this._panelContainer.innerHTML = '';
224
- for (const item of this._items) {
225
- this._renderTab(item);
226
- this._renderPanel(item);
227
- }
228
- this._updateActiveState();
229
- }
230
- _updateActiveState() {
231
- // Tabs
232
- const tabs = this._tabList.querySelectorAll('[role="tab"]');
233
- tabs.forEach(tab => {
234
- const tabId = tab.getAttribute('data-tab-id');
235
- if (tabId === this._value) {
236
- tab.classList.add(this.opts.tabActiveClass);
237
- tab.setAttribute('aria-selected', 'true');
238
- }
239
- else {
240
- tab.classList.remove(this.opts.tabActiveClass);
241
- tab.setAttribute('aria-selected', 'false');
242
- }
243
- });
244
- // Panels
245
- const panels = this._panelContainer.querySelectorAll('[role="tabpanel"]');
246
- panels.forEach(panel => {
247
- const panelId = panel.getAttribute('data-tab-panel');
248
- panel.style.display = panelId === this._value ? '' : 'none';
249
- });
250
- }
251
- _dispatchChange() {
252
- this._element.setAttribute('data-count', String(this._items.length));
253
- this._element.dispatchEvent(new Event('change', { bubbles: false }));
254
- }
255
- }
256
- export function tabs(id, options = {}) {
257
- const t = new Tabs(id, options);
258
- pageState.__register(t);
259
- return t;
260
- }
261
- export { Tabs };
262
- export default tabs;
263
- //# sourceMappingURL=tabs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../lib/primitives/tabs.ts"],"names":[],"mappings":"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"}
@@ -1,92 +0,0 @@
1
- /**
2
- * Options for creating a Tag element.
3
- * @property content - Text content of the element
4
- * @property class - CSS class name(s) to apply
5
- * @property style - Inline CSS style string
6
- * @property target - ID of parent element to append into (enables nesting). Defaults to `#app`.
7
- * @property onClick - Click event handler
8
- */
9
- interface TagOptions {
10
- content?: string;
11
- class?: string;
12
- style?: string;
13
- target?: string;
14
- onClick?: (event: MouseEvent) => void;
15
- [key: string]: any;
16
- }
17
- declare class Tag {
18
- /** Unique element ID */
19
- id: string;
20
- /** HTML tag name (div, span, etc.) */
21
- tagName: string;
22
- /** Creation options */
23
- opts: TagOptions;
24
- private _element;
25
- private _onClick;
26
- constructor(id: string, tagName: string, options?: TagOptions);
27
- /** Set text content. Returns `this` for chaining. */
28
- content(value: string): this;
29
- /** Set CSS class(es). Returns `this` for chaining. */
30
- class(value: string): this;
31
- /** Set inline style string. Returns `this` for chaining. */
32
- style(value: string): this;
33
- getValue(): string;
34
- getContent(): string;
35
- getClass(): string;
36
- getStyle(): string;
37
- setValue(val: string): this;
38
- setContent(val: string): this;
39
- setClass(val: string): this;
40
- setStyle(val: string): this;
41
- setInnerHTML(val: string): this;
42
- getElement(): HTMLElement | null;
43
- onClick(fn: (event: MouseEvent) => void): this;
44
- /** Returns the reactive pageState proxy for this component */
45
- get state(): any;
46
- /**
47
- * Render the element into the DOM.
48
- * @param target - Optional parent element or ID. Falls back to `opts.target`, then `#app`.
49
- */
50
- render(target?: string | HTMLElement): this;
51
- }
52
- /**
53
- * Create and render a generic HTML element.
54
- * @param id - Unique element ID
55
- * @param tagName - HTML tag name
56
- * @param options - Tag options including style, content, target for nesting
57
- */
58
- export declare function tag(id: string, tagName: string, options?: TagOptions): Tag;
59
- /**
60
- * Create and render a `<div>` element.
61
- * @param id - Unique element ID
62
- * @param options - Tag options. Use `{ target: parentId }` to nest inside another element.
63
- * @example
64
- * ```js
65
- * jux.div('card').style('padding: 20px;');
66
- * jux.div('child', { target: 'card' }).content('I am nested!');
67
- * ```
68
- */
69
- export declare function div(id: string, options?: TagOptions): Tag;
70
- /**
71
- * Create and render a `<span>` element.
72
- * @param id - Unique element ID
73
- * @param options - Tag options. Use `{ target: parentId }` to nest inside another element.
74
- */
75
- export declare function span(id: string, options?: TagOptions): Tag;
76
- /**
77
- * Create and render a `<p>` element.
78
- * @param id - Unique element ID
79
- * @param options - Tag options. Use `{ target: parentId }` to nest inside another element.
80
- */
81
- export declare function p(id: string, options?: TagOptions): Tag;
82
- export declare function code(id: string, options?: TagOptions): Tag;
83
- export declare function pre(id: string, options?: TagOptions): Tag;
84
- export declare function h1(id: string, options?: TagOptions): Tag;
85
- export declare function h2(id: string, options?: TagOptions): Tag;
86
- export declare function h3(id: string, options?: TagOptions): Tag;
87
- export declare function h4(id: string, options?: TagOptions): Tag;
88
- export declare function h5(id: string, options?: TagOptions): Tag;
89
- export declare function h6(id: string, options?: TagOptions): Tag;
90
- export { Tag, TagOptions };
91
- export default tag;
92
- //# sourceMappingURL=tag.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tag.d.ts","sourceRoot":"","sources":["../../lib/primitives/tag.ts"],"names":[],"mappings":"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"}
@@ -1,151 +0,0 @@
1
- import generateId from '../utils/idgen.js';
2
- import { pageState } from '../state/pageState.js';
3
- import codeparser from '../utils/codeparser.js';
4
- class Tag {
5
- constructor(id, tagName, options = {}) {
6
- this._element = null;
7
- this._onClick = null;
8
- this.id = id || generateId();
9
- this.tagName = tagName;
10
- this.opts = options;
11
- }
12
- // Fluent API
13
- /** Set text content. Returns `this` for chaining. */
14
- content(value) { this.opts.content = value; if (this._element)
15
- this._element.textContent = value; return this; }
16
- /** Set CSS class(es). Returns `this` for chaining. */
17
- class(value) { this.opts.class = value; if (this._element)
18
- this._element.className = value; return this; }
19
- /** Set inline style string. Returns `this` for chaining. */
20
- style(value) { this.opts.style = value; if (this._element)
21
- this._element.setAttribute('style', value); return this; }
22
- // Getters/Setters for pageState integration (delegates to fluent API)
23
- getValue() { return this._element?.textContent ?? this.opts.content ?? ''; }
24
- getContent() { return this._element?.textContent ?? this.opts.content ?? ''; }
25
- getClass() { return this.opts.class ?? ''; }
26
- getStyle() { return this.opts.style ?? ''; }
27
- setValue(val) { return this.content(val); }
28
- setContent(val) { return this.content(val); }
29
- setClass(val) { return this.class(val); }
30
- setStyle(val) { return this.style(val); }
31
- setInnerHTML(val) { if (this._element)
32
- this._element.innerHTML = val; return this; }
33
- getElement() { return this._element; }
34
- onClick(fn) {
35
- this._onClick = fn;
36
- this._element?.addEventListener('click', fn);
37
- return this;
38
- }
39
- /** Returns the reactive pageState proxy for this component */
40
- get state() {
41
- return pageState[this.id];
42
- }
43
- /**
44
- * Render the element into the DOM.
45
- * @param target - Optional parent element or ID. Falls back to `opts.target`, then `#app`.
46
- */
47
- render(target) {
48
- const el = document.createElement(this.tagName);
49
- el.id = this.id;
50
- if (this.opts.content)
51
- el.textContent = this.opts.content;
52
- if (this.opts.class)
53
- el.className = this.opts.class;
54
- if (this.opts.style)
55
- el.setAttribute('style', this.opts.style);
56
- for (const [key, value] of Object.entries(this.opts)) {
57
- if (['content', 'class', 'style', 'target', 'onClick'].includes(key))
58
- continue;
59
- el.setAttribute(key, String(value));
60
- }
61
- this._element = el;
62
- // Wire up option-based click handler
63
- if (this.opts.onClick) {
64
- this._onClick = this.opts.onClick;
65
- el.addEventListener('click', this.opts.onClick);
66
- }
67
- // Resolve target: param > opts.target > #app
68
- const resolvedTarget = target || this.opts.target;
69
- const container = resolvedTarget
70
- ? (typeof resolvedTarget === 'string' ? document.getElementById(resolvedTarget) || document.querySelector(resolvedTarget) : resolvedTarget)
71
- : document.getElementById('app');
72
- container?.appendChild(el);
73
- return this;
74
- }
75
- }
76
- /**
77
- * Create and render a generic HTML element.
78
- * @param id - Unique element ID
79
- * @param tagName - HTML tag name
80
- * @param options - Tag options including style, content, target for nesting
81
- */
82
- export function tag(id, tagName, options = {}) {
83
- const t = new Tag(id, tagName, options);
84
- t.render();
85
- pageState.__register(t);
86
- return t;
87
- }
88
- /**
89
- * Create and render a `<div>` element.
90
- * @param id - Unique element ID
91
- * @param options - Tag options. Use `{ target: parentId }` to nest inside another element.
92
- * @example
93
- * ```js
94
- * jux.div('card').style('padding: 20px;');
95
- * jux.div('child', { target: 'card' }).content('I am nested!');
96
- * ```
97
- */
98
- export function div(id, options = {}) { return tag(id, 'div', options); }
99
- /**
100
- * Create and render a `<span>` element.
101
- * @param id - Unique element ID
102
- * @param options - Tag options. Use `{ target: parentId }` to nest inside another element.
103
- */
104
- export function span(id, options = {}) { return tag(id, 'span', options); }
105
- /**
106
- * Create and render a `<p>` element.
107
- * @param id - Unique element ID
108
- * @param options - Tag options. Use `{ target: parentId }` to nest inside another element.
109
- */
110
- export function p(id, options = {}) { return tag(id, 'p', options); }
111
- export function code(id, options = {}) {
112
- // Inject highlight styles once
113
- if (!document.getElementById('__jux-hl-styles')) {
114
- const style = document.createElement('style');
115
- style.id = '__jux-hl-styles';
116
- style.textContent = codeparser.getCSS();
117
- document.head.appendChild(style);
118
- }
119
- // Parse and highlight content
120
- const raw = options.content || '';
121
- const trimmed = raw.replace(/^\n+/, '').replace(/\n+$/, '');
122
- const parsed = codeparser.parse(trimmed);
123
- // Build line-by-line HTML
124
- const linesHtml = parsed.map(line => `<div class="jux-code-line"><span class="jux-code-line-number">${line.lineNumber}</span><span class="jux-code-line-content">${line.html}</span></div>`).join('');
125
- // Create as <pre> with inner code structure
126
- const t = new Tag(id, 'pre', {
127
- ...options,
128
- content: undefined,
129
- class: `jux-code${options.class ? ' ' + options.class : ''}`
130
- });
131
- t.render();
132
- const el = t.getElement();
133
- if (el) {
134
- const codeEl = document.createElement('code');
135
- codeEl.className = 'jux-code-lines';
136
- codeEl.innerHTML = linesHtml;
137
- el.appendChild(codeEl);
138
- }
139
- pageState.__register(t);
140
- return t;
141
- }
142
- export function pre(id, options = {}) { return tag(id, 'pre', options); }
143
- export function h1(id, options = {}) { return tag(id, 'h1', options); }
144
- export function h2(id, options = {}) { return tag(id, 'h2', options); }
145
- export function h3(id, options = {}) { return tag(id, 'h3', options); }
146
- export function h4(id, options = {}) { return tag(id, 'h4', options); }
147
- export function h5(id, options = {}) { return tag(id, 'h5', options); }
148
- export function h6(id, options = {}) { return tag(id, 'h6', options); }
149
- export { Tag };
150
- export default tag;
151
- //# sourceMappingURL=tag.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tag.js","sourceRoot":"","sources":["../../lib/primitives/tag.ts"],"names":[],"mappings":"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"}