juxscript 1.1.393 → 1.1.396
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/bin/cli.js +9 -9
- package/dist/components/barChart.d.ts +103 -0
- package/dist/components/barChart.d.ts.map +1 -0
- package/dist/components/barChart.js +520 -0
- package/dist/components/barChart.js.map +1 -0
- package/dist/components/c.d.ts.map +1 -1
- package/dist/components/c.js +16 -12
- package/dist/components/c.js.map +1 -1
- package/dist/components/g.d.ts +21 -0
- package/dist/components/g.d.ts.map +1 -0
- package/dist/components/g.js +52 -0
- package/dist/components/g.js.map +1 -0
- package/dist/components/gateway.d.ts +97 -0
- package/dist/components/gateway.d.ts.map +1 -0
- package/dist/components/gateway.js +188 -0
- package/dist/components/gateway.js.map +1 -0
- package/dist/components/lineChart.d.ts +87 -0
- package/dist/components/lineChart.d.ts.map +1 -0
- package/dist/components/lineChart.js +330 -0
- package/dist/components/lineChart.js.map +1 -0
- package/dist/components/pieChart.d.ts +86 -0
- package/dist/components/pieChart.d.ts.map +1 -0
- package/dist/components/pieChart.js +300 -0
- package/dist/components/pieChart.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -1
- package/dist/index.js.map +1 -1
- package/dist/primitives/button.d.ts +53 -0
- package/dist/primitives/button.d.ts.map +1 -0
- package/dist/primitives/button.js +170 -0
- package/dist/primitives/button.js.map +1 -0
- package/dist/primitives/c.d.ts +53 -0
- package/dist/primitives/c.d.ts.map +1 -0
- package/dist/primitives/c.js +127 -0
- package/dist/primitives/c.js.map +1 -0
- package/dist/primitives/checkbox.d.ts +92 -0
- package/dist/primitives/checkbox.d.ts.map +1 -0
- package/dist/primitives/checkbox.js +217 -0
- package/dist/primitives/checkbox.js.map +1 -0
- package/dist/primitives/data.d.ts +58 -0
- package/dist/primitives/data.d.ts.map +1 -0
- package/dist/primitives/data.js +131 -0
- package/dist/primitives/data.js.map +1 -0
- package/dist/primitives/grid.d.ts +58 -0
- package/dist/primitives/grid.d.ts.map +1 -0
- package/dist/primitives/grid.js +128 -0
- package/dist/primitives/grid.js.map +1 -0
- package/dist/primitives/include.d.ts +86 -0
- package/dist/primitives/include.d.ts.map +1 -0
- package/dist/primitives/include.js +239 -0
- package/dist/primitives/include.js.map +1 -0
- package/dist/primitives/indexDb.d.ts +80 -0
- package/dist/primitives/indexDb.d.ts.map +1 -0
- package/dist/primitives/indexDb.js +253 -0
- package/dist/primitives/indexDb.js.map +1 -0
- package/dist/primitives/input.d.ts +88 -0
- package/dist/primitives/input.d.ts.map +1 -0
- package/dist/primitives/input.js +216 -0
- package/dist/primitives/input.js.map +1 -0
- package/dist/primitives/link.d.ts +51 -0
- package/dist/primitives/link.d.ts.map +1 -0
- package/dist/primitives/link.js +178 -0
- package/dist/primitives/link.js.map +1 -0
- package/dist/primitives/list.d.ts +66 -0
- package/dist/primitives/list.d.ts.map +1 -0
- package/dist/primitives/list.js +233 -0
- package/dist/primitives/list.js.map +1 -0
- package/dist/primitives/nav.d.ts +64 -0
- package/dist/primitives/nav.d.ts.map +1 -0
- package/dist/primitives/nav.js +236 -0
- package/dist/primitives/nav.js.map +1 -0
- package/dist/primitives/radio.d.ts +58 -0
- package/dist/primitives/radio.d.ts.map +1 -0
- package/dist/primitives/radio.js +135 -0
- package/dist/primitives/radio.js.map +1 -0
- package/dist/primitives/routes.d.ts +15 -0
- package/dist/primitives/routes.d.ts.map +1 -0
- package/dist/primitives/routes.js +34 -0
- package/dist/primitives/routes.js.map +1 -0
- package/dist/primitives/select.d.ts +67 -0
- package/dist/primitives/select.d.ts.map +1 -0
- package/dist/primitives/select.js +160 -0
- package/dist/primitives/select.js.map +1 -0
- package/dist/primitives/style.d.ts +27 -0
- package/dist/primitives/style.d.ts.map +1 -0
- package/dist/primitives/style.js +53 -0
- package/dist/primitives/style.js.map +1 -0
- package/dist/primitives/table.d.ts +83 -0
- package/dist/primitives/table.d.ts.map +1 -0
- package/dist/primitives/table.js +264 -0
- package/dist/primitives/table.js.map +1 -0
- package/dist/primitives/tabs.d.ts +75 -0
- package/dist/primitives/tabs.d.ts.map +1 -0
- package/dist/primitives/tabs.js +263 -0
- package/dist/primitives/tabs.js.map +1 -0
- package/dist/primitives/tag.d.ts +92 -0
- package/dist/primitives/tag.d.ts.map +1 -0
- package/dist/primitives/tag.js +151 -0
- package/dist/primitives/tag.js.map +1 -0
- package/dist/services/db.d.ts +44 -0
- package/dist/services/db.d.ts.map +1 -0
- package/dist/services/db.js +59 -0
- package/dist/services/db.js.map +1 -0
- package/dist/services/email.d.ts +50 -0
- package/dist/services/email.d.ts.map +1 -0
- package/dist/services/email.js +60 -0
- package/dist/services/email.js.map +1 -0
- package/dist/services/s3.d.ts +61 -0
- package/dist/services/s3.d.ts.map +1 -0
- package/dist/services/s3.js +79 -0
- package/dist/services/s3.js.map +1 -0
- package/juxconfig.example.js +7 -0
- package/machinery/build3.js +2 -1
- package/machinery/compiler4.js +2 -0
- package/machinery/serve.js +6 -26
- package/machinery/validate-jux.js +4 -0
- package/package.json +2 -2
- /package/{presets → components}/calendar/calendar-usage.jux +0 -0
- /package/{presets → components}/calendar/calendar.jux +0 -0
- /package/{presets → components}/sidebar/index.jux +0 -0
- /package/{presets → components}/sidebar/usage.jux +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indexDb.js","sourceRoot":"","sources":["../../lib/primitives/indexDb.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
type InputType = 'text' | 'email' | 'password' | 'number' | 'tel' | 'url' | 'search' | 'date' | 'time' | 'datetime-local' | 'color' | 'range' | 'file' | 'hidden';
|
|
2
|
+
interface InputOptions {
|
|
3
|
+
type?: InputType;
|
|
4
|
+
label?: string;
|
|
5
|
+
placeholder?: string;
|
|
6
|
+
value?: string;
|
|
7
|
+
name?: string;
|
|
8
|
+
required?: boolean;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
readonly?: boolean;
|
|
11
|
+
min?: string | number;
|
|
12
|
+
max?: string | number;
|
|
13
|
+
step?: string | number;
|
|
14
|
+
pattern?: string;
|
|
15
|
+
autocomplete?: string;
|
|
16
|
+
class?: string;
|
|
17
|
+
style?: string;
|
|
18
|
+
onChange?: (value: string, event: Event) => void;
|
|
19
|
+
onFocus?: (event: FocusEvent) => void;
|
|
20
|
+
onBlur?: (event: FocusEvent) => void;
|
|
21
|
+
onKeyDown?: (event: KeyboardEvent) => void;
|
|
22
|
+
}
|
|
23
|
+
declare class Input {
|
|
24
|
+
id: string;
|
|
25
|
+
options: InputOptions;
|
|
26
|
+
private _element;
|
|
27
|
+
private _wrapper;
|
|
28
|
+
private _onChange;
|
|
29
|
+
private _onFocus;
|
|
30
|
+
private _onBlur;
|
|
31
|
+
private _onKeyDown;
|
|
32
|
+
constructor(id: string, options?: InputOptions);
|
|
33
|
+
type(value: InputType): this;
|
|
34
|
+
label(value: string): this;
|
|
35
|
+
placeholder(value: string): this;
|
|
36
|
+
value(value: string): this;
|
|
37
|
+
name(value: string): this;
|
|
38
|
+
required(value?: boolean): this;
|
|
39
|
+
disabled(value?: boolean): this;
|
|
40
|
+
readonly(value?: boolean): this;
|
|
41
|
+
style(value: string): this;
|
|
42
|
+
class(value: string): this;
|
|
43
|
+
onChange(fn: (value: string, event: Event) => void): this;
|
|
44
|
+
onFocus(fn: (event: FocusEvent) => void): this;
|
|
45
|
+
onBlur(fn: (event: FocusEvent) => void): this;
|
|
46
|
+
onKeyDown(fn: (event: KeyboardEvent) => void): this;
|
|
47
|
+
getValue(): string;
|
|
48
|
+
getType(): string;
|
|
49
|
+
getName(): string;
|
|
50
|
+
getLabel(): string;
|
|
51
|
+
getPlaceholder(): string;
|
|
52
|
+
getDisabled(): boolean;
|
|
53
|
+
getRequired(): boolean;
|
|
54
|
+
getReadonly(): boolean;
|
|
55
|
+
getClass(): string;
|
|
56
|
+
getStyle(): string;
|
|
57
|
+
getFiles(): FileList | null;
|
|
58
|
+
setValue(val: string): this;
|
|
59
|
+
setContent(val: string): this;
|
|
60
|
+
setType(val: InputType): this;
|
|
61
|
+
setName(val: string): this;
|
|
62
|
+
setLabel(val: string): this;
|
|
63
|
+
setPlaceholder(val: string): this;
|
|
64
|
+
setDisabled(val: boolean): this;
|
|
65
|
+
setRequired(val: boolean): this;
|
|
66
|
+
setReadonly(val: boolean): this;
|
|
67
|
+
setClass(val: string): this;
|
|
68
|
+
setStyle(val: string): this;
|
|
69
|
+
/** Returns the reactive pageState proxy for this component */
|
|
70
|
+
get state(): any;
|
|
71
|
+
render(target?: string | HTMLElement): this;
|
|
72
|
+
}
|
|
73
|
+
export declare function input(id: string, options?: InputOptions): Input;
|
|
74
|
+
export declare function email(id: string, options?: InputOptions): Input;
|
|
75
|
+
export declare function password(id: string, options?: InputOptions): Input;
|
|
76
|
+
export declare function number(id: string, options?: InputOptions): Input;
|
|
77
|
+
export declare function tel(id: string, options?: InputOptions): Input;
|
|
78
|
+
export declare function url(id: string, options?: InputOptions): Input;
|
|
79
|
+
export declare function search(id: string, options?: InputOptions): Input;
|
|
80
|
+
export declare function date(id: string, options?: InputOptions): Input;
|
|
81
|
+
export declare function time(id: string, options?: InputOptions): Input;
|
|
82
|
+
export declare function datetime(id: string, options?: InputOptions): Input;
|
|
83
|
+
export declare function color(id: string, options?: InputOptions): Input;
|
|
84
|
+
export declare function range(id: string, options?: InputOptions): Input;
|
|
85
|
+
export declare function file(id: string, options?: InputOptions): Input;
|
|
86
|
+
export declare function hidden(id: string, options?: InputOptions): Input;
|
|
87
|
+
export { Input, InputOptions };
|
|
88
|
+
//# sourceMappingURL=input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../lib/primitives/input.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
import generateId from '../utils/idgen.js';
|
|
2
|
+
import niceName from '../utils/niceName.js';
|
|
3
|
+
import { pageState } from '../state/pageState.js';
|
|
4
|
+
class Input {
|
|
5
|
+
constructor(id, options = {}) {
|
|
6
|
+
this._element = null;
|
|
7
|
+
this._wrapper = null;
|
|
8
|
+
this._onChange = null;
|
|
9
|
+
this._onFocus = null;
|
|
10
|
+
this._onBlur = null;
|
|
11
|
+
this._onKeyDown = null;
|
|
12
|
+
this.id = id || generateId();
|
|
13
|
+
this.options = {
|
|
14
|
+
type: 'text',
|
|
15
|
+
...options
|
|
16
|
+
};
|
|
17
|
+
// Auto-generate label from ID if not provided
|
|
18
|
+
if (!this.options.label && this.id) {
|
|
19
|
+
this.options.label = niceName(this.id);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
// Fluent API
|
|
23
|
+
type(value) { this.options.type = value; return this; }
|
|
24
|
+
label(value) { this.options.label = value; return this; }
|
|
25
|
+
placeholder(value) { this.options.placeholder = value; return this; }
|
|
26
|
+
value(value) { this.options.value = value; if (this._element)
|
|
27
|
+
this._element.value = value; return this; }
|
|
28
|
+
name(value) { this.options.name = value; return this; }
|
|
29
|
+
required(value = true) { this.options.required = value; return this; }
|
|
30
|
+
disabled(value = true) { this.options.disabled = value; if (this._element)
|
|
31
|
+
this._element.disabled = value; return this; }
|
|
32
|
+
readonly(value = true) { this.options.readonly = value; return this; }
|
|
33
|
+
style(value) { this.options.style = value; return this; }
|
|
34
|
+
class(value) { this.options.class = value; return this; }
|
|
35
|
+
onChange(fn) {
|
|
36
|
+
this._onChange = fn;
|
|
37
|
+
return this;
|
|
38
|
+
}
|
|
39
|
+
onFocus(fn) {
|
|
40
|
+
this._element?.addEventListener('focus', fn);
|
|
41
|
+
this._onFocus = fn;
|
|
42
|
+
return this;
|
|
43
|
+
}
|
|
44
|
+
onBlur(fn) {
|
|
45
|
+
this._element?.addEventListener('blur', fn);
|
|
46
|
+
this._onBlur = fn;
|
|
47
|
+
return this;
|
|
48
|
+
}
|
|
49
|
+
onKeyDown(fn) {
|
|
50
|
+
this._element?.addEventListener('keydown', fn);
|
|
51
|
+
this._onKeyDown = fn;
|
|
52
|
+
return this;
|
|
53
|
+
}
|
|
54
|
+
getValue() {
|
|
55
|
+
return this._element?.value ?? this.options.value ?? '';
|
|
56
|
+
}
|
|
57
|
+
getType() { return this.options.type ?? 'text'; }
|
|
58
|
+
getName() { return this.options.name ?? ''; }
|
|
59
|
+
getLabel() { return this.options.label ?? ''; }
|
|
60
|
+
getPlaceholder() { return this.options.placeholder ?? ''; }
|
|
61
|
+
getDisabled() { return this.options.disabled ?? false; }
|
|
62
|
+
getRequired() { return this.options.required ?? false; }
|
|
63
|
+
getReadonly() { return this.options.readonly ?? false; }
|
|
64
|
+
getClass() { return this.options.class ?? ''; }
|
|
65
|
+
getStyle() { return this.options.style ?? ''; }
|
|
66
|
+
getFiles() {
|
|
67
|
+
return this._element?.files ?? null;
|
|
68
|
+
}
|
|
69
|
+
setValue(val) { return this.value(val); }
|
|
70
|
+
setContent(val) { return this.value(val); }
|
|
71
|
+
setType(val) { return this.type(val); }
|
|
72
|
+
setName(val) { return this.name(val); }
|
|
73
|
+
setLabel(val) { return this.label(val); }
|
|
74
|
+
setPlaceholder(val) { return this.placeholder(val); }
|
|
75
|
+
setDisabled(val) { return this.disabled(val); }
|
|
76
|
+
setRequired(val) { return this.required(val); }
|
|
77
|
+
setReadonly(val) { return this.readonly(val); }
|
|
78
|
+
setClass(val) { return this.class(val); }
|
|
79
|
+
setStyle(val) { return this.style(val); }
|
|
80
|
+
/** Returns the reactive pageState proxy for this component */
|
|
81
|
+
get state() {
|
|
82
|
+
return pageState[this.id];
|
|
83
|
+
}
|
|
84
|
+
render(target) {
|
|
85
|
+
const wrapper = document.createElement('div');
|
|
86
|
+
wrapper.className = 'jux-input';
|
|
87
|
+
wrapper.id = `${this.id}-wrapper`;
|
|
88
|
+
if (this.options.class)
|
|
89
|
+
wrapper.className += ` ${this.options.class}`;
|
|
90
|
+
if (this.options.style)
|
|
91
|
+
wrapper.setAttribute('style', this.options.style);
|
|
92
|
+
if (this.options.label) {
|
|
93
|
+
const labelEl = document.createElement('label');
|
|
94
|
+
labelEl.htmlFor = this.id;
|
|
95
|
+
labelEl.textContent = this.options.label;
|
|
96
|
+
labelEl.className = 'jux-input-label';
|
|
97
|
+
wrapper.appendChild(labelEl);
|
|
98
|
+
}
|
|
99
|
+
const input = document.createElement('input');
|
|
100
|
+
input.id = this.id;
|
|
101
|
+
input.type = this.options.type || 'text';
|
|
102
|
+
input.className = 'jux-input-element';
|
|
103
|
+
if (this.options.placeholder)
|
|
104
|
+
input.placeholder = this.options.placeholder;
|
|
105
|
+
if (this.options.value)
|
|
106
|
+
input.value = this.options.value;
|
|
107
|
+
if (this.options.name)
|
|
108
|
+
input.name = this.options.name;
|
|
109
|
+
if (this.options.required)
|
|
110
|
+
input.required = true;
|
|
111
|
+
if (this.options.disabled)
|
|
112
|
+
input.disabled = true;
|
|
113
|
+
if (this.options.readonly)
|
|
114
|
+
input.readOnly = true;
|
|
115
|
+
if (this.options.min != null)
|
|
116
|
+
input.min = String(this.options.min);
|
|
117
|
+
if (this.options.max != null)
|
|
118
|
+
input.max = String(this.options.max);
|
|
119
|
+
if (this.options.step != null)
|
|
120
|
+
input.step = String(this.options.step);
|
|
121
|
+
if (this.options.pattern)
|
|
122
|
+
input.pattern = this.options.pattern;
|
|
123
|
+
if (this.options.autocomplete)
|
|
124
|
+
input.autocomplete = this.options.autocomplete;
|
|
125
|
+
input.addEventListener('input', (e) => {
|
|
126
|
+
if (this._onChange)
|
|
127
|
+
this._onChange(input.value, e);
|
|
128
|
+
});
|
|
129
|
+
input.addEventListener('focus', (e) => {
|
|
130
|
+
if (this._onFocus)
|
|
131
|
+
this._onFocus(e);
|
|
132
|
+
});
|
|
133
|
+
input.addEventListener('blur', (e) => {
|
|
134
|
+
if (this._onBlur)
|
|
135
|
+
this._onBlur(e);
|
|
136
|
+
});
|
|
137
|
+
input.addEventListener('keydown', (e) => {
|
|
138
|
+
if (this._onKeyDown)
|
|
139
|
+
this._onKeyDown(e);
|
|
140
|
+
});
|
|
141
|
+
// For file inputs, also listen to 'change'
|
|
142
|
+
if (this.options.type === 'file') {
|
|
143
|
+
input.addEventListener('change', (e) => {
|
|
144
|
+
if (this._onChange)
|
|
145
|
+
this._onChange(input.value, e);
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
wrapper.appendChild(input);
|
|
149
|
+
this._element = input;
|
|
150
|
+
this._wrapper = wrapper;
|
|
151
|
+
// Wire up option-based handlers
|
|
152
|
+
if (this.options.onChange)
|
|
153
|
+
this._onChange = this.options.onChange;
|
|
154
|
+
if (this.options.onFocus)
|
|
155
|
+
this._onFocus = this.options.onFocus;
|
|
156
|
+
if (this.options.onBlur)
|
|
157
|
+
this._onBlur = this.options.onBlur;
|
|
158
|
+
if (this.options.onKeyDown)
|
|
159
|
+
this._onKeyDown = this.options.onKeyDown;
|
|
160
|
+
const container = target
|
|
161
|
+
? (typeof target === 'string' ? document.getElementById(target) || document.querySelector(target) : target)
|
|
162
|
+
: document.getElementById('app');
|
|
163
|
+
container?.appendChild(wrapper);
|
|
164
|
+
return this;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
export function input(id, options = {}) {
|
|
168
|
+
const inp = new Input(id, options);
|
|
169
|
+
inp.render();
|
|
170
|
+
pageState.__register(inp);
|
|
171
|
+
return inp;
|
|
172
|
+
}
|
|
173
|
+
// ═══════════════════════════════════════════════════════════════
|
|
174
|
+
// TYPE-SPECIFIC FACTORY METHODS
|
|
175
|
+
// ═══════════════════════════════════════════════════════════════
|
|
176
|
+
export function email(id, options = {}) {
|
|
177
|
+
return input(id, { placeholder: 'name@example.com', autocomplete: 'email', ...options, type: 'email' });
|
|
178
|
+
}
|
|
179
|
+
export function password(id, options = {}) {
|
|
180
|
+
return input(id, { placeholder: '••••••••', autocomplete: 'current-password', ...options, type: 'password' });
|
|
181
|
+
}
|
|
182
|
+
export function number(id, options = {}) {
|
|
183
|
+
return input(id, { placeholder: '0', ...options, type: 'number' });
|
|
184
|
+
}
|
|
185
|
+
export function tel(id, options = {}) {
|
|
186
|
+
return input(id, { placeholder: '+1 (555) 000-0000', autocomplete: 'tel', ...options, type: 'tel' });
|
|
187
|
+
}
|
|
188
|
+
export function url(id, options = {}) {
|
|
189
|
+
return input(id, { placeholder: 'https://', autocomplete: 'url', ...options, type: 'url' });
|
|
190
|
+
}
|
|
191
|
+
export function search(id, options = {}) {
|
|
192
|
+
return input(id, { placeholder: 'Search...', ...options, type: 'search' });
|
|
193
|
+
}
|
|
194
|
+
export function date(id, options = {}) {
|
|
195
|
+
return input(id, { ...options, type: 'date' });
|
|
196
|
+
}
|
|
197
|
+
export function time(id, options = {}) {
|
|
198
|
+
return input(id, { ...options, type: 'time' });
|
|
199
|
+
}
|
|
200
|
+
export function datetime(id, options = {}) {
|
|
201
|
+
return input(id, { ...options, type: 'datetime-local' });
|
|
202
|
+
}
|
|
203
|
+
export function color(id, options = {}) {
|
|
204
|
+
return input(id, { ...options, type: 'color' });
|
|
205
|
+
}
|
|
206
|
+
export function range(id, options = {}) {
|
|
207
|
+
return input(id, { min: '0', max: '100', ...options, type: 'range' });
|
|
208
|
+
}
|
|
209
|
+
export function file(id, options = {}) {
|
|
210
|
+
return input(id, { ...options, type: 'file' });
|
|
211
|
+
}
|
|
212
|
+
export function hidden(id, options = {}) {
|
|
213
|
+
return input(id, { ...options, type: 'hidden' });
|
|
214
|
+
}
|
|
215
|
+
export { Input };
|
|
216
|
+
//# sourceMappingURL=input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input.js","sourceRoot":"","sources":["../../lib/primitives/input.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
interface LinkOptions {
|
|
2
|
+
content?: string;
|
|
3
|
+
href?: string;
|
|
4
|
+
spa?: boolean;
|
|
5
|
+
external?: boolean;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
class?: string;
|
|
8
|
+
style?: string;
|
|
9
|
+
target?: string;
|
|
10
|
+
linkTarget?: '_blank' | '_self' | '_parent' | '_top';
|
|
11
|
+
icon?: string;
|
|
12
|
+
onClick?: (event: MouseEvent) => void;
|
|
13
|
+
[key: string]: any;
|
|
14
|
+
}
|
|
15
|
+
declare class Link {
|
|
16
|
+
id: string;
|
|
17
|
+
opts: LinkOptions;
|
|
18
|
+
private _element;
|
|
19
|
+
private _onChange;
|
|
20
|
+
constructor(id: string, options?: LinkOptions);
|
|
21
|
+
content(value: string): this;
|
|
22
|
+
href(value: string): this;
|
|
23
|
+
icon(value: string): this;
|
|
24
|
+
disabled(value?: boolean): this;
|
|
25
|
+
style(value: string): this;
|
|
26
|
+
class(value: string): this;
|
|
27
|
+
getValue(): string;
|
|
28
|
+
getContent(): string;
|
|
29
|
+
getHref(): string;
|
|
30
|
+
getIcon(): string;
|
|
31
|
+
getDisabled(): boolean;
|
|
32
|
+
getClass(): string;
|
|
33
|
+
getStyle(): string;
|
|
34
|
+
setValue(val: string): this;
|
|
35
|
+
setContent(val: string): this;
|
|
36
|
+
setHref(val: string): this;
|
|
37
|
+
setIcon(val: string): this;
|
|
38
|
+
setDisabled(val: boolean): this;
|
|
39
|
+
setClass(val: string): this;
|
|
40
|
+
setStyle(val: string): this;
|
|
41
|
+
getElement(): HTMLAnchorElement;
|
|
42
|
+
onChange(fn: (value: string) => void): this;
|
|
43
|
+
onClick(fn: (event: MouseEvent) => void): this;
|
|
44
|
+
/** Returns the reactive pageState proxy for this component */
|
|
45
|
+
get state(): any;
|
|
46
|
+
}
|
|
47
|
+
export declare function link(id: string, options?: LinkOptions): Link;
|
|
48
|
+
export declare function a(id: string, options?: LinkOptions): Link;
|
|
49
|
+
export { Link, LinkOptions };
|
|
50
|
+
export default link;
|
|
51
|
+
//# sourceMappingURL=link.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../lib/primitives/link.ts"],"names":[],"mappings":"AAIA,UAAU,WAAW;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACrD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,cAAM,IAAI;IACN,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,SAAS,CAA0C;gBAE/C,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB;IAiFjD,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAW5B,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMzB,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAczB,QAAQ,CAAC,KAAK,GAAE,OAAc,GAAG,IAAI;IAUrC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM1B,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAU1B,QAAQ,IAAI,MAAM;IAClB,UAAU,IAAI,MAAM;IACpB,OAAO,IAAI,MAAM;IACjB,OAAO,IAAI,MAAM;IACjB,WAAW,IAAI,OAAO;IACtB,QAAQ,IAAI,MAAM;IAClB,QAAQ,IAAI,MAAM;IAElB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAC3B,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAC7B,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAC1B,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAC1B,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAE3B,UAAU,IAAI,iBAAiB;IAE/B,QAAQ,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAK3C,OAAO,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI;IAK9C,8DAA8D;IAC9D,IAAI,KAAK,IAAI,GAAG,CAEf;CACJ;AAED,wBAAgB,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,IAAI,CAIhE;AAED,wBAAgB,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,IAAI,CAI7D;AAED,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;AAC7B,eAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import generateId from '../utils/idgen.js';
|
|
2
|
+
import niceName from '../utils/niceName.js';
|
|
3
|
+
import { pageState } from '../state/pageState.js';
|
|
4
|
+
class Link {
|
|
5
|
+
constructor(id, options = {}) {
|
|
6
|
+
this._onChange = null;
|
|
7
|
+
this.id = id || generateId();
|
|
8
|
+
this.opts = {
|
|
9
|
+
spa: true,
|
|
10
|
+
external: false,
|
|
11
|
+
disabled: false,
|
|
12
|
+
...options
|
|
13
|
+
};
|
|
14
|
+
// Auto-generate content from ID if not provided
|
|
15
|
+
if (!this.opts.content && this.id) {
|
|
16
|
+
this.opts.content = niceName(this.id);
|
|
17
|
+
}
|
|
18
|
+
this._element = document.createElement('a');
|
|
19
|
+
this._element.id = this.id;
|
|
20
|
+
this._element.className = this.opts.class || 'jux-link';
|
|
21
|
+
if (this.opts.style)
|
|
22
|
+
this._element.setAttribute('style', this.opts.style);
|
|
23
|
+
if (this.opts.href)
|
|
24
|
+
this._element.href = this.opts.href;
|
|
25
|
+
if (this.opts.disabled)
|
|
26
|
+
this._element.setAttribute('data-disabled', 'true');
|
|
27
|
+
// External link handling
|
|
28
|
+
if (this.opts.external || this.opts.linkTarget === '_blank') {
|
|
29
|
+
this._element.target = this.opts.linkTarget || '_blank';
|
|
30
|
+
this._element.rel = 'noopener noreferrer';
|
|
31
|
+
}
|
|
32
|
+
// Content
|
|
33
|
+
if (this.opts.icon) {
|
|
34
|
+
const iconSpan = document.createElement('span');
|
|
35
|
+
iconSpan.className = 'jux-link-icon';
|
|
36
|
+
iconSpan.textContent = this.opts.icon;
|
|
37
|
+
this._element.appendChild(iconSpan);
|
|
38
|
+
}
|
|
39
|
+
if (this.opts.content) {
|
|
40
|
+
const textSpan = document.createElement('span');
|
|
41
|
+
textSpan.className = 'jux-link-text';
|
|
42
|
+
textSpan.textContent = this.opts.content;
|
|
43
|
+
this._element.appendChild(textSpan);
|
|
44
|
+
}
|
|
45
|
+
// Extra attributes
|
|
46
|
+
for (const [key, value] of Object.entries(this.opts)) {
|
|
47
|
+
if (['content', 'class', 'style', 'target', 'href', 'spa', 'external', 'disabled', 'icon', 'linkTarget', 'onClick'].includes(key))
|
|
48
|
+
continue;
|
|
49
|
+
this._element.setAttribute(`data-${key}`, String(value));
|
|
50
|
+
}
|
|
51
|
+
// Custom click handler
|
|
52
|
+
if (this.opts.onClick) {
|
|
53
|
+
this._element.addEventListener('click', this.opts.onClick);
|
|
54
|
+
}
|
|
55
|
+
// SPA navigation
|
|
56
|
+
if (this.opts.spa && !this.opts.external) {
|
|
57
|
+
this._element.addEventListener('click', (e) => {
|
|
58
|
+
if (this.opts.disabled) {
|
|
59
|
+
e.preventDefault();
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
const href = this._element.href;
|
|
63
|
+
if (href && !href.startsWith('http') && !href.startsWith('//')) {
|
|
64
|
+
e.preventDefault();
|
|
65
|
+
const path = new URL(href, window.location.origin).pathname;
|
|
66
|
+
if (typeof window.navigateTo === 'function') {
|
|
67
|
+
window.navigateTo(path);
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
window.history.pushState({}, '', path);
|
|
71
|
+
window.dispatchEvent(new PopStateEvent('popstate'));
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
const resolvedTarget = this.opts.target;
|
|
77
|
+
const container = resolvedTarget
|
|
78
|
+
? document.getElementById(resolvedTarget) || document.querySelector(resolvedTarget)
|
|
79
|
+
: document.getElementById('app');
|
|
80
|
+
container?.appendChild(this._element);
|
|
81
|
+
}
|
|
82
|
+
// ═══════════════════════════════════════════════════════════
|
|
83
|
+
// FLUENT BUILDER API
|
|
84
|
+
// ═══════════════════════════════════════════════════════════
|
|
85
|
+
content(value) {
|
|
86
|
+
this.opts.content = value;
|
|
87
|
+
const textEl = this._element.querySelector('.jux-link-text');
|
|
88
|
+
if (textEl) {
|
|
89
|
+
textEl.textContent = value;
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
this._element.textContent = value;
|
|
93
|
+
}
|
|
94
|
+
return this;
|
|
95
|
+
}
|
|
96
|
+
href(value) {
|
|
97
|
+
this.opts.href = value;
|
|
98
|
+
this._element.href = value;
|
|
99
|
+
return this;
|
|
100
|
+
}
|
|
101
|
+
icon(value) {
|
|
102
|
+
this.opts.icon = value;
|
|
103
|
+
let iconEl = this._element.querySelector('.jux-link-icon');
|
|
104
|
+
if (iconEl) {
|
|
105
|
+
iconEl.textContent = value;
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
const iconSpan = document.createElement('span');
|
|
109
|
+
iconSpan.className = 'jux-link-icon';
|
|
110
|
+
iconSpan.textContent = value;
|
|
111
|
+
this._element.prepend(iconSpan);
|
|
112
|
+
}
|
|
113
|
+
return this;
|
|
114
|
+
}
|
|
115
|
+
disabled(value = true) {
|
|
116
|
+
this.opts.disabled = value;
|
|
117
|
+
if (value) {
|
|
118
|
+
this._element.setAttribute('data-disabled', 'true');
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
this._element.removeAttribute('data-disabled');
|
|
122
|
+
}
|
|
123
|
+
return this;
|
|
124
|
+
}
|
|
125
|
+
style(value) {
|
|
126
|
+
this.opts.style = value;
|
|
127
|
+
this._element.setAttribute('style', value);
|
|
128
|
+
return this;
|
|
129
|
+
}
|
|
130
|
+
class(value) {
|
|
131
|
+
this.opts.class = value;
|
|
132
|
+
this._element.className = value;
|
|
133
|
+
return this;
|
|
134
|
+
}
|
|
135
|
+
// ═══════════════════════════════════════════════════════════
|
|
136
|
+
// PAGESTATE INTEGRATION (delegates to fluent API)
|
|
137
|
+
// ═══════════════════════════════════════════════════════════
|
|
138
|
+
getValue() { return this.opts.href ?? ''; }
|
|
139
|
+
getContent() { return this.opts.content ?? ''; }
|
|
140
|
+
getHref() { return this.opts.href ?? ''; }
|
|
141
|
+
getIcon() { return this.opts.icon ?? ''; }
|
|
142
|
+
getDisabled() { return this.opts.disabled ?? false; }
|
|
143
|
+
getClass() { return this.opts.class ?? ''; }
|
|
144
|
+
getStyle() { return this.opts.style ?? ''; }
|
|
145
|
+
setValue(val) { return this.href(val); }
|
|
146
|
+
setContent(val) { return this.content(val); }
|
|
147
|
+
setHref(val) { return this.href(val); }
|
|
148
|
+
setIcon(val) { return this.icon(val); }
|
|
149
|
+
setDisabled(val) { return this.disabled(val); }
|
|
150
|
+
setClass(val) { return this.class(val); }
|
|
151
|
+
setStyle(val) { return this.style(val); }
|
|
152
|
+
getElement() { return this._element; }
|
|
153
|
+
onChange(fn) {
|
|
154
|
+
this._onChange = fn;
|
|
155
|
+
return this;
|
|
156
|
+
}
|
|
157
|
+
onClick(fn) {
|
|
158
|
+
this._element.addEventListener('click', fn);
|
|
159
|
+
return this;
|
|
160
|
+
}
|
|
161
|
+
/** Returns the reactive pageState proxy for this component */
|
|
162
|
+
get state() {
|
|
163
|
+
return pageState[this.id];
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
export function link(id, options = {}) {
|
|
167
|
+
const l = new Link(id, options);
|
|
168
|
+
pageState.__register(l);
|
|
169
|
+
return l;
|
|
170
|
+
}
|
|
171
|
+
export function a(id, options = {}) {
|
|
172
|
+
const l = new Link(id, options);
|
|
173
|
+
pageState.__register(l);
|
|
174
|
+
return l;
|
|
175
|
+
}
|
|
176
|
+
export { Link };
|
|
177
|
+
export default link;
|
|
178
|
+
//# sourceMappingURL=link.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link.js","sourceRoot":"","sources":["../../lib/primitives/link.ts"],"names":[],"mappings":"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"}
|