juxscript 1.1.412 → 1.1.414
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/dist/components/charts/index.d.ts +7 -0
- package/dist/components/charts/index.d.ts.map +1 -0
- package/dist/components/charts/index.js +4 -0
- package/dist/components/charts/index.js.map +1 -0
- package/dist/components/columns.d.ts +86 -0
- package/dist/components/columns.d.ts.map +1 -0
- package/dist/components/columns.js +176 -0
- package/dist/components/columns.js.map +1 -0
- package/dist/components/layout/cols.d.ts +34 -0
- package/dist/components/layout/cols.d.ts.map +1 -0
- package/dist/components/layout/cols.js +65 -0
- package/dist/components/layout/cols.js.map +1 -0
- package/dist/components/layout/container.d.ts +49 -0
- package/dist/components/layout/container.d.ts.map +1 -0
- package/dist/components/layout/container.js +87 -0
- package/dist/components/layout/container.js.map +1 -0
- package/dist/components/layout/group.d.ts +31 -0
- package/dist/components/layout/group.d.ts.map +1 -0
- package/dist/components/layout/group.js +64 -0
- package/dist/components/layout/group.js.map +1 -0
- package/dist/components/layout/hero.d.ts +41 -0
- package/dist/components/layout/hero.d.ts.map +1 -0
- package/dist/components/layout/hero.js +117 -0
- package/dist/components/layout/hero.js.map +1 -0
- package/dist/components/layout/index.d.ts +11 -0
- package/dist/components/layout/index.d.ts.map +1 -0
- package/dist/components/layout/index.js +11 -0
- package/dist/components/layout/index.js.map +1 -0
- package/dist/components/layout/nav.d.ts +43 -0
- package/dist/components/layout/nav.d.ts.map +1 -0
- package/dist/components/layout/nav.js +94 -0
- package/dist/components/layout/nav.js.map +1 -0
- package/dist/components/layout/rows.d.ts +33 -0
- package/dist/components/layout/rows.d.ts.map +1 -0
- package/dist/components/layout/rows.js +64 -0
- package/dist/components/layout/rows.js.map +1 -0
- package/dist/components/layout/section.d.ts +35 -0
- package/dist/components/layout/section.d.ts.map +1 -0
- package/dist/components/layout/section.js +66 -0
- package/dist/components/layout/section.js.map +1 -0
- package/dist/components/layout/split.d.ts +33 -0
- package/dist/components/layout/split.d.ts.map +1 -0
- package/dist/components/layout/split.js +74 -0
- package/dist/components/layout/split.js.map +1 -0
- package/dist/components/layout/stack.d.ts +37 -0
- package/dist/components/layout/stack.d.ts.map +1 -0
- package/dist/components/layout/stack.js +69 -0
- package/dist/components/layout/stack.js.map +1 -0
- package/dist/components/media/avatar.d.ts +53 -0
- package/dist/components/media/avatar.d.ts.map +1 -0
- package/dist/components/media/avatar.js +122 -0
- package/dist/components/media/avatar.js.map +1 -0
- package/dist/components/media/embed.d.ts +47 -0
- package/dist/components/media/embed.d.ts.map +1 -0
- package/dist/components/media/embed.js +74 -0
- package/dist/components/media/embed.js.map +1 -0
- package/dist/components/media/gallery.d.ts +50 -0
- package/dist/components/media/gallery.d.ts.map +1 -0
- package/dist/components/media/gallery.js +96 -0
- package/dist/components/media/gallery.js.map +1 -0
- package/dist/components/media/icon.d.ts +43 -0
- package/dist/components/media/icon.d.ts.map +1 -0
- package/dist/components/media/icon.js +78 -0
- package/dist/components/media/icon.js.map +1 -0
- package/dist/components/media/image.d.ts +46 -0
- package/dist/components/media/image.d.ts.map +1 -0
- package/dist/components/media/image.js +73 -0
- package/dist/components/media/image.js.map +1 -0
- package/dist/components/media/index.d.ts +9 -0
- package/dist/components/media/index.d.ts.map +1 -0
- package/dist/components/media/index.js +9 -0
- package/dist/components/media/index.js.map +1 -0
- package/dist/components/media/logo.d.ts +51 -0
- package/dist/components/media/logo.d.ts.map +1 -0
- package/dist/components/media/logo.js +93 -0
- package/dist/components/media/logo.js.map +1 -0
- package/dist/components/media/video.d.ts +62 -0
- package/dist/components/media/video.d.ts.map +1 -0
- package/dist/components/media/video.js +92 -0
- package/dist/components/media/video.js.map +1 -0
- package/dist/components/widgets/canvas-ai.d.ts.map +1 -1
- package/dist/components/widgets/canvas-ai.js +34 -1
- package/dist/components/widgets/canvas-ai.js.map +1 -1
- package/dist/components/widgets/canvas-compile.d.ts.map +1 -1
- package/dist/components/widgets/canvas-compile.js +83 -3
- package/dist/components/widgets/canvas-compile.js.map +1 -1
- package/dist/components/widgets/canvas-registry.d.ts +6 -0
- package/dist/components/widgets/canvas-registry.d.ts.map +1 -1
- package/dist/components/widgets/canvas-registry.js +63 -0
- package/dist/components/widgets/canvas-registry.js.map +1 -1
- package/dist/components/widgets/canvas-styles.d.ts.map +1 -1
- package/dist/components/widgets/canvas-styles.js +20 -6
- package/dist/components/widgets/canvas-styles.js.map +1 -1
- package/dist/components/widgets/canvas.d.ts +12 -0
- package/dist/components/widgets/canvas.d.ts.map +1 -1
- package/dist/components/widgets/canvas.js +193 -35
- package/dist/components/widgets/canvas.js.map +1 -1
- package/dist/components/widgets/chatAi.d.ts +83 -0
- package/dist/components/widgets/chatAi.d.ts.map +1 -0
- package/dist/components/widgets/chatAi.js +228 -0
- package/dist/components/widgets/chatAi.js.map +1 -0
- package/dist/connect/claudeService.d.ts +85 -0
- package/dist/connect/claudeService.d.ts.map +1 -0
- package/dist/connect/claudeService.js +132 -0
- package/dist/connect/claudeService.js.map +1 -0
- package/dist/connect/openaiService.d.ts +96 -0
- package/dist/connect/openaiService.d.ts.map +1 -0
- package/dist/connect/openaiService.js +156 -0
- package/dist/connect/openaiService.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/utils/codeparser.js +11 -11
- package/machinery/compiler4.js +0 -10
- package/package.json +1 -3
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { bar } from './barChart.js';
|
|
2
|
+
export { line } from './lineChart.js';
|
|
3
|
+
export { pie } from './pieChart.js';
|
|
4
|
+
export type { BarChart, BarChartOptions, BarDataItem, BarClickDetail, SeriesConfig, RATIOS, TOKENS } from './barChart.js';
|
|
5
|
+
export type { LineChart, LineChartOptions, LineDataItem, LineClickDetail, SeriesConfig as LineSeriesConfig } from './lineChart.js';
|
|
6
|
+
export type { PieChart, PieChartOptions, PieDataItem, PieClickDetail } from './pieChart.js';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/components/charts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAQ,eAAe,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAO,gBAAgB,CAAC;AACvC,OAAO,EAAE,GAAG,EAAE,MAAQ,eAAe,CAAC;AACtC,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC1H,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,IAAI,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACnI,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/components/charts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAQ,eAAe,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAO,gBAAgB,CAAC;AACvC,OAAO,EAAE,GAAG,EAAE,MAAQ,eAAe,CAAC"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
export interface ColumnDef {
|
|
2
|
+
width?: string;
|
|
3
|
+
minWidth?: string;
|
|
4
|
+
maxWidth?: string;
|
|
5
|
+
gap?: string;
|
|
6
|
+
class?: string;
|
|
7
|
+
style?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface ColumnsOptions {
|
|
10
|
+
gap?: string;
|
|
11
|
+
padding?: string;
|
|
12
|
+
class?: string;
|
|
13
|
+
style?: string;
|
|
14
|
+
align?: string;
|
|
15
|
+
width?: string;
|
|
16
|
+
height?: string;
|
|
17
|
+
target?: string;
|
|
18
|
+
}
|
|
19
|
+
export interface ColumnSlot {
|
|
20
|
+
element: HTMLElement;
|
|
21
|
+
render(target?: string | HTMLElement | {
|
|
22
|
+
element: HTMLElement;
|
|
23
|
+
}): ColumnSlot;
|
|
24
|
+
into(target?: string | HTMLElement | {
|
|
25
|
+
element: HTMLElement;
|
|
26
|
+
}): ColumnSlot;
|
|
27
|
+
append(...children: (HTMLElement | {
|
|
28
|
+
element: HTMLElement;
|
|
29
|
+
})[]): ColumnSlot;
|
|
30
|
+
}
|
|
31
|
+
export type ColumnsResult = {
|
|
32
|
+
[key: string]: any;
|
|
33
|
+
element: HTMLElement;
|
|
34
|
+
render(target?: any): ColumnsResult;
|
|
35
|
+
into(target?: any): ColumnsResult;
|
|
36
|
+
gap(val: string): ColumnsResult;
|
|
37
|
+
padding(val: string): ColumnsResult;
|
|
38
|
+
align(val: string): ColumnsResult;
|
|
39
|
+
width(val: string): ColumnsResult;
|
|
40
|
+
height(val: string): ColumnsResult;
|
|
41
|
+
class(val: string): ColumnsResult;
|
|
42
|
+
style(css: string): ColumnsResult;
|
|
43
|
+
};
|
|
44
|
+
export declare class Columns {
|
|
45
|
+
id: string;
|
|
46
|
+
private _opts;
|
|
47
|
+
private _defs;
|
|
48
|
+
private _element;
|
|
49
|
+
private _slots;
|
|
50
|
+
constructor(id: string, def: number | ColumnDef[], options?: ColumnsOptions);
|
|
51
|
+
get element(): HTMLElement;
|
|
52
|
+
getElement(): HTMLElement;
|
|
53
|
+
get state(): any;
|
|
54
|
+
gap(val: string): this;
|
|
55
|
+
padding(val: string): this;
|
|
56
|
+
align(val: string): this;
|
|
57
|
+
width(val: string): this;
|
|
58
|
+
height(val: string): this;
|
|
59
|
+
class(val: string): this;
|
|
60
|
+
style(css: string): this;
|
|
61
|
+
getGap(): string;
|
|
62
|
+
getPadding(): string;
|
|
63
|
+
getAlign(): string;
|
|
64
|
+
getWidth(): string;
|
|
65
|
+
getHeight(): string;
|
|
66
|
+
getClass(): string;
|
|
67
|
+
getStyle(): string;
|
|
68
|
+
setGap(val: string): this;
|
|
69
|
+
setPadding(val: string): this;
|
|
70
|
+
setAlign(val: string): this;
|
|
71
|
+
setWidth(val: string): this;
|
|
72
|
+
setHeight(val: string): this;
|
|
73
|
+
setClass(val: string): this;
|
|
74
|
+
setStyle(val: string): this;
|
|
75
|
+
private _injectStyles;
|
|
76
|
+
render(target?: string | HTMLElement | {
|
|
77
|
+
element: HTMLElement;
|
|
78
|
+
}): this;
|
|
79
|
+
into(target?: string | HTMLElement | {
|
|
80
|
+
element: HTMLElement;
|
|
81
|
+
}): this;
|
|
82
|
+
getColumns(): ColumnsResult;
|
|
83
|
+
}
|
|
84
|
+
export declare function columns(id: string, def: number | ColumnDef[], options?: ColumnsOptions): ColumnsResult;
|
|
85
|
+
export default columns;
|
|
86
|
+
//# sourceMappingURL=columns.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"columns.d.ts","sourceRoot":"","sources":["../../lib/components/columns.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import generateId from "../utils/idgen.js";
|
|
2
|
+
import { pageState } from "../state/pageState.js";
|
|
3
|
+
let columnsStylesInjected = false;
|
|
4
|
+
export class Columns {
|
|
5
|
+
constructor(id, def, options = {}) {
|
|
6
|
+
this.id = id || generateId('columns');
|
|
7
|
+
this._opts = { ...options };
|
|
8
|
+
this._injectStyles();
|
|
9
|
+
// Normalize defs
|
|
10
|
+
if (typeof def === 'number') {
|
|
11
|
+
this._defs = Array.from({ length: def }, () => ({ width: '1fr' }));
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
this._defs = def.map(d => ({ width: '1fr', ...d }));
|
|
15
|
+
}
|
|
16
|
+
// Build outer grid wrapper
|
|
17
|
+
this._element = document.createElement('div');
|
|
18
|
+
this._element.id = this.id;
|
|
19
|
+
this._element.style.display = 'grid';
|
|
20
|
+
this._element.style.boxSizing = 'border-box';
|
|
21
|
+
this._element.style.width = this._opts.width || '100%';
|
|
22
|
+
const templateCols = this._defs.map(d => {
|
|
23
|
+
if (d.minWidth || d.maxWidth) {
|
|
24
|
+
return `minmax(${d.minWidth || '0'}, ${d.maxWidth || d.width || '1fr'})`;
|
|
25
|
+
}
|
|
26
|
+
return d.width || '1fr';
|
|
27
|
+
}).join(' ');
|
|
28
|
+
this._element.style.gridTemplateColumns = templateCols;
|
|
29
|
+
if (this._opts.gap)
|
|
30
|
+
this._element.style.gap = this._opts.gap;
|
|
31
|
+
if (this._opts.padding)
|
|
32
|
+
this._element.style.padding = this._opts.padding;
|
|
33
|
+
if (this._opts.align)
|
|
34
|
+
this._element.style.alignItems = this._opts.align;
|
|
35
|
+
if (this._opts.height)
|
|
36
|
+
this._element.style.height = this._opts.height;
|
|
37
|
+
if (this._opts.class)
|
|
38
|
+
this._element.className = this._opts.class;
|
|
39
|
+
if (this._opts.style) {
|
|
40
|
+
const existing = this._element.getAttribute('style') || '';
|
|
41
|
+
this._element.setAttribute('style', existing + ';' + this._opts.style);
|
|
42
|
+
}
|
|
43
|
+
// Build column slot divs
|
|
44
|
+
this._slots = this._defs.map((colDef, i) => {
|
|
45
|
+
const col = document.createElement('div');
|
|
46
|
+
col.id = `${this.id}-col${i + 1}`;
|
|
47
|
+
col.style.boxSizing = 'border-box';
|
|
48
|
+
if (colDef.gap)
|
|
49
|
+
col.style.padding = colDef.gap;
|
|
50
|
+
if (colDef.class)
|
|
51
|
+
col.className = colDef.class;
|
|
52
|
+
if (colDef.style)
|
|
53
|
+
col.setAttribute('style', (col.getAttribute('style') || '') + ';' + colDef.style);
|
|
54
|
+
this._element.appendChild(col);
|
|
55
|
+
const slot = {
|
|
56
|
+
element: col,
|
|
57
|
+
render(target) {
|
|
58
|
+
let parent = null;
|
|
59
|
+
if (target instanceof HTMLElement)
|
|
60
|
+
parent = target;
|
|
61
|
+
else if (typeof target === 'string')
|
|
62
|
+
parent = document.getElementById(target) || document.querySelector(target);
|
|
63
|
+
else if (target && typeof target === 'object' && 'element' in target)
|
|
64
|
+
parent = target.element;
|
|
65
|
+
else
|
|
66
|
+
parent = document.getElementById('app');
|
|
67
|
+
parent?.appendChild(col);
|
|
68
|
+
return slot;
|
|
69
|
+
},
|
|
70
|
+
into(target) {
|
|
71
|
+
return slot.render(target);
|
|
72
|
+
},
|
|
73
|
+
append(...children) {
|
|
74
|
+
for (const child of children) {
|
|
75
|
+
const node = child instanceof HTMLElement
|
|
76
|
+
? child
|
|
77
|
+
: child.element;
|
|
78
|
+
col.appendChild(node);
|
|
79
|
+
}
|
|
80
|
+
return slot;
|
|
81
|
+
},
|
|
82
|
+
};
|
|
83
|
+
return slot;
|
|
84
|
+
});
|
|
85
|
+
// Auto-render if target option provided
|
|
86
|
+
if (this._opts.target)
|
|
87
|
+
this.render(this._opts.target);
|
|
88
|
+
}
|
|
89
|
+
// ── Element access ───────────────────────────────────────────────────
|
|
90
|
+
get element() { return this._element; }
|
|
91
|
+
getElement() { return this._element; }
|
|
92
|
+
get state() { return pageState[this.id]; }
|
|
93
|
+
// ── Fluent API ───────────────────────────────────────────────────────
|
|
94
|
+
gap(val) { this._opts.gap = val; this._element.style.gap = val; return this; }
|
|
95
|
+
padding(val) { this._opts.padding = val; this._element.style.padding = val; return this; }
|
|
96
|
+
align(val) { this._opts.align = val; this._element.style.alignItems = val; return this; }
|
|
97
|
+
width(val) { this._opts.width = val; this._element.style.width = val; return this; }
|
|
98
|
+
height(val) { this._opts.height = val; this._element.style.height = val; return this; }
|
|
99
|
+
class(val) { this._opts.class = val; this._element.className = val; return this; }
|
|
100
|
+
style(css) {
|
|
101
|
+
this._opts.style = css;
|
|
102
|
+
const existing = this._element.getAttribute('style') || '';
|
|
103
|
+
this._element.setAttribute('style', existing + ';' + css);
|
|
104
|
+
return this;
|
|
105
|
+
}
|
|
106
|
+
// ── get*/set* delegation ─────────────────────────────────────────────
|
|
107
|
+
getGap() { return this._opts.gap || ''; }
|
|
108
|
+
getPadding() { return this._opts.padding || ''; }
|
|
109
|
+
getAlign() { return this._opts.align || ''; }
|
|
110
|
+
getWidth() { return this._opts.width || '100%'; }
|
|
111
|
+
getHeight() { return this._opts.height || ''; }
|
|
112
|
+
getClass() { return this._opts.class || ''; }
|
|
113
|
+
getStyle() { return this._opts.style || ''; }
|
|
114
|
+
setGap(val) { return this.gap(val); }
|
|
115
|
+
setPadding(val) { return this.padding(val); }
|
|
116
|
+
setAlign(val) { return this.align(val); }
|
|
117
|
+
setWidth(val) { return this.width(val); }
|
|
118
|
+
setHeight(val) { return this.height(val); }
|
|
119
|
+
setClass(val) { return this.class(val); }
|
|
120
|
+
setStyle(val) { return this.style(val); }
|
|
121
|
+
// ── Style injection ──────────────────────────────────────────────────
|
|
122
|
+
_injectStyles() {
|
|
123
|
+
if (columnsStylesInjected)
|
|
124
|
+
return;
|
|
125
|
+
columnsStylesInjected = true;
|
|
126
|
+
const s = document.createElement('style');
|
|
127
|
+
s.id = 'jux-columns-styles';
|
|
128
|
+
s.textContent = `.jux-columns{display:grid;box-sizing:border-box;width:100%}.jux-columns>div{box-sizing:border-box}`;
|
|
129
|
+
document.head.appendChild(s);
|
|
130
|
+
}
|
|
131
|
+
// ── Render ───────────────────────────────────────────────────────────
|
|
132
|
+
render(target) {
|
|
133
|
+
let parent = null;
|
|
134
|
+
if (target instanceof HTMLElement)
|
|
135
|
+
parent = target;
|
|
136
|
+
else if (typeof target === 'string')
|
|
137
|
+
parent = document.getElementById(target) || document.querySelector(target);
|
|
138
|
+
else if (target && typeof target === 'object' && 'element' in target)
|
|
139
|
+
parent = target.element;
|
|
140
|
+
else
|
|
141
|
+
parent = document.getElementById('app');
|
|
142
|
+
parent?.appendChild(this._element);
|
|
143
|
+
return this;
|
|
144
|
+
}
|
|
145
|
+
into(target) {
|
|
146
|
+
return this.render(target);
|
|
147
|
+
}
|
|
148
|
+
// ── Column slots accessor ────────────────────────────────────────────
|
|
149
|
+
getColumns() {
|
|
150
|
+
const self = this;
|
|
151
|
+
const result = {
|
|
152
|
+
element: this._element,
|
|
153
|
+
render(target) { self.render(target); return result; },
|
|
154
|
+
into(target) { self.into(target); return result; },
|
|
155
|
+
gap(val) { self.gap(val); return result; },
|
|
156
|
+
padding(val) { self.padding(val); return result; },
|
|
157
|
+
align(val) { self.align(val); return result; },
|
|
158
|
+
width(val) { self.width(val); return result; },
|
|
159
|
+
height(val) { self.height(val); return result; },
|
|
160
|
+
class(val) { self.class(val); return result; },
|
|
161
|
+
style(css) { self.style(css); return result; },
|
|
162
|
+
};
|
|
163
|
+
for (let i = 0; i < this._slots.length; i++) {
|
|
164
|
+
result[`column${i + 1}`] = this._slots[i];
|
|
165
|
+
}
|
|
166
|
+
return result;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
// ── Factory ──────────────────────────────────────────────────────────────────
|
|
170
|
+
export function columns(id, def, options) {
|
|
171
|
+
const inst = new Columns(id, def, options);
|
|
172
|
+
pageState.__register(inst);
|
|
173
|
+
return inst.getColumns();
|
|
174
|
+
}
|
|
175
|
+
export default columns;
|
|
176
|
+
//# sourceMappingURL=columns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"columns.js","sourceRoot":"","sources":["../../lib/components/columns.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
type AnyChild = {
|
|
2
|
+
element: HTMLElement;
|
|
3
|
+
} | HTMLElement;
|
|
4
|
+
interface ColsOptions {
|
|
5
|
+
gap?: string;
|
|
6
|
+
class?: string;
|
|
7
|
+
style?: string;
|
|
8
|
+
target?: string;
|
|
9
|
+
[key: string]: any;
|
|
10
|
+
}
|
|
11
|
+
declare class Cols {
|
|
12
|
+
id: string;
|
|
13
|
+
private _opts;
|
|
14
|
+
private _element;
|
|
15
|
+
private _n;
|
|
16
|
+
constructor(id: string, n: number, gap?: string, options?: ColsOptions);
|
|
17
|
+
get element(): HTMLElement;
|
|
18
|
+
getElement(): HTMLElement;
|
|
19
|
+
get state(): any;
|
|
20
|
+
gap(val: string): this;
|
|
21
|
+
class(val: string): this;
|
|
22
|
+
style(css: string): this;
|
|
23
|
+
append(...children: AnyChild[]): this;
|
|
24
|
+
render(target?: string | HTMLElement | {
|
|
25
|
+
element: HTMLElement;
|
|
26
|
+
}): this;
|
|
27
|
+
into(target?: string | HTMLElement | {
|
|
28
|
+
element: HTMLElement;
|
|
29
|
+
}): this;
|
|
30
|
+
}
|
|
31
|
+
export declare function cols(id?: string, n?: number, gap?: string, options?: ColsOptions): Cols;
|
|
32
|
+
export { Cols, ColsOptions };
|
|
33
|
+
export default cols;
|
|
34
|
+
//# sourceMappingURL=cols.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cols.d.ts","sourceRoot":"","sources":["../../../lib/components/layout/cols.ts"],"names":[],"mappings":"AAGA,KAAK,QAAQ,GAAG;IAAE,OAAO,EAAE,WAAW,CAAA;CAAE,GAAG,WAAW,CAAC;AAEvD,UAAU,WAAW;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,cAAM,IAAI;IACN,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,EAAE,CAAS;gBAEP,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,GAAE,MAAe,EAAE,OAAO,GAAE,WAAgB;IAqBlF,IAAI,OAAO,IAAI,WAAW,CAA0B;IACpD,UAAU,IAAI,WAAW;IACzB,IAAI,KAAK,IAAI,GAAG,CAAyC;IAEzD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IACtB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IACxB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAOxB,MAAM,CAAC,GAAG,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI;IAQrC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,GAAG,IAAI;IAUtE,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,GAAG,IAAI;CAGvE;AAED,wBAAgB,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,GAAE,MAAU,EAAE,GAAG,GAAE,MAAe,EAAE,OAAO,GAAE,WAAgB,GAAG,IAAI,CAItG;AAED,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;AAC7B,eAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import generateId from '../../utils/idgen.js';
|
|
2
|
+
import { pageState } from '../../state/pageState.js';
|
|
3
|
+
class Cols {
|
|
4
|
+
constructor(id, n, gap = '16px', options = {}) {
|
|
5
|
+
this.id = id || generateId('cols');
|
|
6
|
+
this._n = n;
|
|
7
|
+
this._opts = { gap, ...options };
|
|
8
|
+
this._element = document.createElement('div');
|
|
9
|
+
this._element.id = this.id;
|
|
10
|
+
this._element.style.display = 'grid';
|
|
11
|
+
this._element.style.gridTemplateColumns = `repeat(${n}, 1fr)`;
|
|
12
|
+
this._element.style.gap = gap;
|
|
13
|
+
this._element.style.boxSizing = 'border-box';
|
|
14
|
+
if (this._opts.class)
|
|
15
|
+
this._element.className = this._opts.class;
|
|
16
|
+
if (this._opts.style) {
|
|
17
|
+
const existing = this._element.getAttribute('style') || '';
|
|
18
|
+
this._element.setAttribute('style', existing + ';' + this._opts.style);
|
|
19
|
+
}
|
|
20
|
+
if (this._opts.target)
|
|
21
|
+
this.render(this._opts.target);
|
|
22
|
+
}
|
|
23
|
+
get element() { return this._element; }
|
|
24
|
+
getElement() { return this._element; }
|
|
25
|
+
get state() { return pageState[this.id]; }
|
|
26
|
+
gap(val) { this._opts.gap = val; this._element.style.gap = val; return this; }
|
|
27
|
+
class(val) { this._opts.class = val; this._element.className = val; return this; }
|
|
28
|
+
style(css) {
|
|
29
|
+
this._opts.style = css;
|
|
30
|
+
const existing = this._element.getAttribute('style') || '';
|
|
31
|
+
this._element.setAttribute('style', existing + ';' + css);
|
|
32
|
+
return this;
|
|
33
|
+
}
|
|
34
|
+
append(...children) {
|
|
35
|
+
for (const child of children) {
|
|
36
|
+
const node = child instanceof HTMLElement ? child : child.element;
|
|
37
|
+
this._element.appendChild(node);
|
|
38
|
+
}
|
|
39
|
+
return this;
|
|
40
|
+
}
|
|
41
|
+
render(target) {
|
|
42
|
+
let parent = null;
|
|
43
|
+
if (typeof target === 'string')
|
|
44
|
+
parent = document.getElementById(target) || document.querySelector(target);
|
|
45
|
+
else if (target instanceof HTMLElement)
|
|
46
|
+
parent = target;
|
|
47
|
+
else if (target && 'element' in target)
|
|
48
|
+
parent = target.element;
|
|
49
|
+
else
|
|
50
|
+
parent = document.getElementById('app');
|
|
51
|
+
parent?.appendChild(this._element);
|
|
52
|
+
return this;
|
|
53
|
+
}
|
|
54
|
+
into(target) {
|
|
55
|
+
return this.render(target);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
export function cols(id, n = 2, gap = '16px', options = {}) {
|
|
59
|
+
const inst = new Cols(id || generateId('cols'), n, gap, options);
|
|
60
|
+
pageState.__register(inst);
|
|
61
|
+
return inst;
|
|
62
|
+
}
|
|
63
|
+
export { Cols };
|
|
64
|
+
export default cols;
|
|
65
|
+
//# sourceMappingURL=cols.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cols.js","sourceRoot":"","sources":["../../../lib/components/layout/cols.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
interface ContainerOptions {
|
|
2
|
+
width?: string;
|
|
3
|
+
height?: string;
|
|
4
|
+
padding?: string;
|
|
5
|
+
radius?: string;
|
|
6
|
+
margin?: string;
|
|
7
|
+
border?: string;
|
|
8
|
+
overflow?: string;
|
|
9
|
+
bg?: string;
|
|
10
|
+
shadow?: string;
|
|
11
|
+
class?: string;
|
|
12
|
+
style?: string;
|
|
13
|
+
target?: string;
|
|
14
|
+
[key: string]: any;
|
|
15
|
+
}
|
|
16
|
+
type AnyChild = {
|
|
17
|
+
element: HTMLElement;
|
|
18
|
+
} | HTMLElement;
|
|
19
|
+
declare class Container {
|
|
20
|
+
id: string;
|
|
21
|
+
private _opts;
|
|
22
|
+
private _element;
|
|
23
|
+
constructor(id: string, options?: ContainerOptions);
|
|
24
|
+
get element(): HTMLElement;
|
|
25
|
+
getElement(): HTMLElement;
|
|
26
|
+
get state(): any;
|
|
27
|
+
width(val: string): this;
|
|
28
|
+
height(val: string): this;
|
|
29
|
+
padding(val: string): this;
|
|
30
|
+
radius(val: string): this;
|
|
31
|
+
margin(val: string): this;
|
|
32
|
+
border(val: string): this;
|
|
33
|
+
overflow(val: string): this;
|
|
34
|
+
bg(val: string): this;
|
|
35
|
+
shadow(val: string): this;
|
|
36
|
+
class(val: string): this;
|
|
37
|
+
style(css: string): this;
|
|
38
|
+
append(...children: AnyChild[]): this;
|
|
39
|
+
render(target?: string | HTMLElement | {
|
|
40
|
+
element: HTMLElement;
|
|
41
|
+
}): this;
|
|
42
|
+
into(target?: string | HTMLElement | {
|
|
43
|
+
element: HTMLElement;
|
|
44
|
+
}): this;
|
|
45
|
+
}
|
|
46
|
+
export declare function container(id?: string, options?: ContainerOptions): Container;
|
|
47
|
+
export { Container, ContainerOptions };
|
|
48
|
+
export default container;
|
|
49
|
+
//# sourceMappingURL=container.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../lib/components/layout/container.ts"],"names":[],"mappings":"AAGA,UAAU,gBAAgB;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,KAAK,QAAQ,GAAG;IAAE,OAAO,EAAE,WAAW,CAAA;CAAE,GAAG,WAAW,CAAC;AAEvD,cAAM,SAAS;IACX,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,QAAQ,CAAc;gBAElB,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB;IA0BtD,IAAI,OAAO,IAAI,WAAW,CAA0B;IACpD,UAAU,IAAI,WAAW;IACzB,IAAI,KAAK,IAAI,GAAG,CAAyC;IAEzD,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IACxB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IACzB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAC1B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IACzB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IACzB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAC3B,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IACrB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IACzB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IACxB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAOxB,MAAM,CAAC,GAAG,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI;IAQrC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,GAAG,IAAI;IAUtE,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,GAAG,IAAI;CAGvE;AAED,wBAAgB,SAAS,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,SAAS,CAIhF;AAED,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AACvC,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import generateId from '../../utils/idgen.js';
|
|
2
|
+
import { pageState } from '../../state/pageState.js';
|
|
3
|
+
class Container {
|
|
4
|
+
constructor(id, options = {}) {
|
|
5
|
+
this.id = id || generateId('container');
|
|
6
|
+
this._opts = { ...options };
|
|
7
|
+
this._element = document.createElement('div');
|
|
8
|
+
this._element.id = this.id;
|
|
9
|
+
this._element.style.boxSizing = 'border-box';
|
|
10
|
+
if (this._opts.width)
|
|
11
|
+
this._element.style.width = this._opts.width;
|
|
12
|
+
if (this._opts.height)
|
|
13
|
+
this._element.style.height = this._opts.height;
|
|
14
|
+
if (this._opts.padding)
|
|
15
|
+
this._element.style.padding = this._opts.padding;
|
|
16
|
+
if (this._opts.radius)
|
|
17
|
+
this._element.style.borderRadius = this._opts.radius;
|
|
18
|
+
if (this._opts.margin)
|
|
19
|
+
this._element.style.margin = this._opts.margin;
|
|
20
|
+
if (this._opts.border)
|
|
21
|
+
this._element.style.border = this._opts.border;
|
|
22
|
+
if (this._opts.overflow)
|
|
23
|
+
this._element.style.overflow = this._opts.overflow;
|
|
24
|
+
if (this._opts.bg)
|
|
25
|
+
this._element.style.background = this._opts.bg;
|
|
26
|
+
if (this._opts.shadow)
|
|
27
|
+
this._element.style.boxShadow = this._opts.shadow;
|
|
28
|
+
if (this._opts.class)
|
|
29
|
+
this._element.className = this._opts.class;
|
|
30
|
+
if (this._opts.style) {
|
|
31
|
+
const existing = this._element.getAttribute('style') || '';
|
|
32
|
+
this._element.setAttribute('style', existing + ';' + this._opts.style);
|
|
33
|
+
}
|
|
34
|
+
if (this._opts.target)
|
|
35
|
+
this.render(this._opts.target);
|
|
36
|
+
}
|
|
37
|
+
get element() { return this._element; }
|
|
38
|
+
getElement() { return this._element; }
|
|
39
|
+
get state() { return pageState[this.id]; }
|
|
40
|
+
width(val) { this._opts.width = val; this._element.style.width = val; return this; }
|
|
41
|
+
height(val) { this._opts.height = val; this._element.style.height = val; return this; }
|
|
42
|
+
padding(val) { this._opts.padding = val; this._element.style.padding = val; return this; }
|
|
43
|
+
radius(val) { this._opts.radius = val; this._element.style.borderRadius = val; return this; }
|
|
44
|
+
margin(val) { this._opts.margin = val; this._element.style.margin = val; return this; }
|
|
45
|
+
border(val) { this._opts.border = val; this._element.style.border = val; return this; }
|
|
46
|
+
overflow(val) { this._opts.overflow = val; this._element.style.overflow = val; return this; }
|
|
47
|
+
bg(val) { this._opts.bg = val; this._element.style.background = val; return this; }
|
|
48
|
+
shadow(val) { this._opts.shadow = val; this._element.style.boxShadow = val; return this; }
|
|
49
|
+
class(val) { this._opts.class = val; this._element.className = val; return this; }
|
|
50
|
+
style(css) {
|
|
51
|
+
this._opts.style = css;
|
|
52
|
+
const existing = this._element.getAttribute('style') || '';
|
|
53
|
+
this._element.setAttribute('style', existing + ';' + css);
|
|
54
|
+
return this;
|
|
55
|
+
}
|
|
56
|
+
append(...children) {
|
|
57
|
+
for (const child of children) {
|
|
58
|
+
const node = child instanceof HTMLElement ? child : child.element;
|
|
59
|
+
this._element.appendChild(node);
|
|
60
|
+
}
|
|
61
|
+
return this;
|
|
62
|
+
}
|
|
63
|
+
render(target) {
|
|
64
|
+
let parent = null;
|
|
65
|
+
if (typeof target === 'string')
|
|
66
|
+
parent = document.getElementById(target) || document.querySelector(target);
|
|
67
|
+
else if (target instanceof HTMLElement)
|
|
68
|
+
parent = target;
|
|
69
|
+
else if (target && 'element' in target)
|
|
70
|
+
parent = target.element;
|
|
71
|
+
else
|
|
72
|
+
parent = document.getElementById('app');
|
|
73
|
+
parent?.appendChild(this._element);
|
|
74
|
+
return this;
|
|
75
|
+
}
|
|
76
|
+
into(target) {
|
|
77
|
+
return this.render(target);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
export function container(id, options = {}) {
|
|
81
|
+
const inst = new Container(id || generateId('container'), options);
|
|
82
|
+
pageState.__register(inst);
|
|
83
|
+
return inst;
|
|
84
|
+
}
|
|
85
|
+
export { Container };
|
|
86
|
+
export default container;
|
|
87
|
+
//# sourceMappingURL=container.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"container.js","sourceRoot":"","sources":["../../../lib/components/layout/container.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
type AnyChild = {
|
|
2
|
+
element: HTMLElement;
|
|
3
|
+
} | HTMLElement;
|
|
4
|
+
interface GroupOptions {
|
|
5
|
+
class?: string;
|
|
6
|
+
style?: string;
|
|
7
|
+
target?: string;
|
|
8
|
+
[key: string]: any;
|
|
9
|
+
}
|
|
10
|
+
declare class Group {
|
|
11
|
+
id: string;
|
|
12
|
+
private _opts;
|
|
13
|
+
private _element;
|
|
14
|
+
constructor(id: string, children?: AnyChild[], options?: GroupOptions);
|
|
15
|
+
get element(): HTMLElement;
|
|
16
|
+
getElement(): HTMLElement;
|
|
17
|
+
get state(): any;
|
|
18
|
+
class(val: string): this;
|
|
19
|
+
style(css: string): this;
|
|
20
|
+
append(...children: AnyChild[]): this;
|
|
21
|
+
render(target?: string | HTMLElement | {
|
|
22
|
+
element: HTMLElement;
|
|
23
|
+
}): this;
|
|
24
|
+
into(target?: string | HTMLElement | {
|
|
25
|
+
element: HTMLElement;
|
|
26
|
+
}): this;
|
|
27
|
+
}
|
|
28
|
+
export declare function group(id?: string, children?: AnyChild[], options?: GroupOptions): Group;
|
|
29
|
+
export { Group, GroupOptions };
|
|
30
|
+
export default group;
|
|
31
|
+
//# sourceMappingURL=group.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../../lib/components/layout/group.ts"],"names":[],"mappings":"AAGA,KAAK,QAAQ,GAAG;IAAE,OAAO,EAAE,WAAW,CAAA;CAAE,GAAG,WAAW,CAAC;AAEvD,UAAU,YAAY;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,cAAM,KAAK;IACP,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,QAAQ,CAAc;gBAElB,EAAE,EAAE,MAAM,EAAE,QAAQ,GAAE,QAAQ,EAAO,EAAE,OAAO,GAAE,YAAiB;IAsB7E,IAAI,OAAO,IAAI,WAAW,CAA0B;IACpD,UAAU,IAAI,WAAW;IACzB,IAAI,KAAK,IAAI,GAAG,CAAyC;IAEzD,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IACxB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAOxB,MAAM,CAAC,GAAG,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI;IAQrC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,GAAG,IAAI;IAUtE,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,GAAG,IAAI;CAGvE;AAED,wBAAgB,KAAK,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,GAAE,QAAQ,EAAO,EAAE,OAAO,GAAE,YAAiB,GAAG,KAAK,CAI/F;AAED,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;AAC/B,eAAe,KAAK,CAAC"}
|