@sc4rfurryx/proteusjs 1.0.0 → 1.1.1
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/LICENSE +1 -1
- package/README.md +331 -77
- package/dist/.tsbuildinfo +1 -1
- package/dist/adapters/react.d.ts +140 -0
- package/dist/adapters/react.esm.js +849 -0
- package/dist/adapters/react.esm.js.map +1 -0
- package/dist/adapters/svelte.d.ts +181 -0
- package/dist/adapters/svelte.esm.js +909 -0
- package/dist/adapters/svelte.esm.js.map +1 -0
- package/dist/adapters/vue.d.ts +205 -0
- package/dist/adapters/vue.esm.js +873 -0
- package/dist/adapters/vue.esm.js.map +1 -0
- package/dist/modules/a11y-audit.d.ts +31 -0
- package/dist/modules/a11y-audit.esm.js +64 -0
- package/dist/modules/a11y-audit.esm.js.map +1 -0
- package/dist/modules/a11y-primitives.d.ts +36 -0
- package/dist/modules/a11y-primitives.esm.js +114 -0
- package/dist/modules/a11y-primitives.esm.js.map +1 -0
- package/dist/modules/anchor.d.ts +30 -0
- package/dist/modules/anchor.esm.js +219 -0
- package/dist/modules/anchor.esm.js.map +1 -0
- package/dist/modules/container.d.ts +60 -0
- package/dist/modules/container.esm.js +194 -0
- package/dist/modules/container.esm.js.map +1 -0
- package/dist/modules/perf.d.ts +82 -0
- package/dist/modules/perf.esm.js +257 -0
- package/dist/modules/perf.esm.js.map +1 -0
- package/dist/modules/popover.d.ts +33 -0
- package/dist/modules/popover.esm.js +191 -0
- package/dist/modules/popover.esm.js.map +1 -0
- package/dist/modules/scroll.d.ts +43 -0
- package/dist/modules/scroll.esm.js +195 -0
- package/dist/modules/scroll.esm.js.map +1 -0
- package/dist/modules/transitions.d.ts +35 -0
- package/dist/modules/transitions.esm.js +120 -0
- package/dist/modules/transitions.esm.js.map +1 -0
- package/dist/modules/typography.d.ts +72 -0
- package/dist/modules/typography.esm.js +168 -0
- package/dist/modules/typography.esm.js.map +1 -0
- package/dist/proteus.cjs.js +1554 -12
- package/dist/proteus.cjs.js.map +1 -1
- package/dist/proteus.d.ts +516 -12
- package/dist/proteus.esm.js +1545 -12
- package/dist/proteus.esm.js.map +1 -1
- package/dist/proteus.esm.min.js +3 -3
- package/dist/proteus.esm.min.js.map +1 -1
- package/dist/proteus.js +1554 -12
- package/dist/proteus.js.map +1 -1
- package/dist/proteus.min.js +3 -3
- package/dist/proteus.min.js.map +1 -1
- package/package.json +69 -7
- package/src/adapters/react.ts +264 -0
- package/src/adapters/svelte.ts +321 -0
- package/src/adapters/vue.ts +268 -0
- package/src/index.ts +33 -6
- package/src/modules/a11y-audit/index.ts +84 -0
- package/src/modules/a11y-primitives/index.ts +152 -0
- package/src/modules/anchor/index.ts +259 -0
- package/src/modules/container/index.ts +230 -0
- package/src/modules/perf/index.ts +291 -0
- package/src/modules/popover/index.ts +238 -0
- package/src/modules/scroll/index.ts +251 -0
- package/src/modules/transitions/index.ts +145 -0
- package/src/modules/typography/index.ts +239 -0
- package/src/utils/version.ts +1 -1
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"vue.esm.js","sources":["../../src/modules/transitions/index.ts","../../src/modules/scroll/index.ts","../../src/modules/popover/index.ts","../../src/modules/anchor/index.ts","../../src/modules/container/index.ts","../../src/adapters/vue.ts"],"sourcesContent":[null,null,null,null,null,null],"names":["attachPopover"],"mappings":"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"}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
/**
|
2
|
+
* @sc4rfurryx/proteusjs/a11y-audit
|
3
|
+
* Lightweight accessibility audits for development
|
4
|
+
*
|
5
|
+
* @version 1.1.0
|
6
|
+
* @author sc4rfurry
|
7
|
+
* @license MIT
|
8
|
+
*/
|
9
|
+
interface AuditOptions {
|
10
|
+
rules?: string[];
|
11
|
+
format?: 'console' | 'json';
|
12
|
+
}
|
13
|
+
interface AuditViolation {
|
14
|
+
id: string;
|
15
|
+
impact: 'minor' | 'moderate' | 'serious' | 'critical';
|
16
|
+
nodes: number;
|
17
|
+
help: string;
|
18
|
+
}
|
19
|
+
interface AuditReport {
|
20
|
+
violations: AuditViolation[];
|
21
|
+
passes: number;
|
22
|
+
timestamp: number;
|
23
|
+
url: string;
|
24
|
+
}
|
25
|
+
declare function audit(target?: Document | Element, options?: AuditOptions): Promise<AuditReport>;
|
26
|
+
declare const _default: {
|
27
|
+
audit: typeof audit;
|
28
|
+
};
|
29
|
+
|
30
|
+
export { audit, _default as default };
|
31
|
+
export type { AuditOptions, AuditReport, AuditViolation };
|
@@ -0,0 +1,64 @@
|
|
1
|
+
/*!
|
2
|
+
* ProteusJS v1.1.1
|
3
|
+
* Shape-shifting responsive design that adapts like the sea god himself
|
4
|
+
* (c) 2025 sc4rfurry
|
5
|
+
* Released under the MIT License
|
6
|
+
*/
|
7
|
+
/**
|
8
|
+
* @sc4rfurryx/proteusjs/a11y-audit
|
9
|
+
* Lightweight accessibility audits for development
|
10
|
+
*
|
11
|
+
* @version 1.1.0
|
12
|
+
* @author sc4rfurry
|
13
|
+
* @license MIT
|
14
|
+
*/
|
15
|
+
async function audit(target = document, options = {}) {
|
16
|
+
if (typeof window === 'undefined' || process.env['NODE_ENV'] === 'production') {
|
17
|
+
return { violations: [], passes: 0, timestamp: Date.now(), url: '' };
|
18
|
+
}
|
19
|
+
const { rules = ['images', 'headings', 'forms'], format = 'console' } = options;
|
20
|
+
const violations = [];
|
21
|
+
let passes = 0;
|
22
|
+
if (rules.includes('images')) {
|
23
|
+
const imgs = target.querySelectorAll('img:not([alt])');
|
24
|
+
if (imgs.length > 0) {
|
25
|
+
violations.push({
|
26
|
+
id: 'image-alt', impact: 'critical', nodes: imgs.length, help: 'Images need alt text'
|
27
|
+
});
|
28
|
+
}
|
29
|
+
passes += target.querySelectorAll('img[alt]').length;
|
30
|
+
}
|
31
|
+
if (rules.includes('headings')) {
|
32
|
+
const h1s = target.querySelectorAll('h1');
|
33
|
+
if (h1s.length !== 1) {
|
34
|
+
violations.push({
|
35
|
+
id: 'heading-structure', impact: 'moderate', nodes: h1s.length, help: 'Page should have exactly one h1'
|
36
|
+
});
|
37
|
+
}
|
38
|
+
else
|
39
|
+
passes++;
|
40
|
+
}
|
41
|
+
if (rules.includes('forms')) {
|
42
|
+
const unlabeled = target.querySelectorAll('input:not([aria-label]):not([aria-labelledby])');
|
43
|
+
if (unlabeled.length > 0) {
|
44
|
+
violations.push({
|
45
|
+
id: 'form-labels', impact: 'critical', nodes: unlabeled.length, help: 'Form inputs need labels'
|
46
|
+
});
|
47
|
+
}
|
48
|
+
passes += target.querySelectorAll('input[aria-label], input[aria-labelledby]').length;
|
49
|
+
}
|
50
|
+
const report = {
|
51
|
+
violations, passes, timestamp: Date.now(),
|
52
|
+
url: typeof window !== 'undefined' ? window.location.href : ''
|
53
|
+
};
|
54
|
+
if (format === 'console' && violations.length > 0) {
|
55
|
+
console.group('🔍 A11y Audit Results');
|
56
|
+
violations.forEach(v => console.warn(`${v.impact}: ${v.help}`));
|
57
|
+
console.groupEnd();
|
58
|
+
}
|
59
|
+
return report;
|
60
|
+
}
|
61
|
+
var index = { audit };
|
62
|
+
|
63
|
+
export { audit, index as default };
|
64
|
+
//# sourceMappingURL=a11y-audit.esm.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"a11y-audit.esm.js","sources":["../../src/modules/a11y-audit/index.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAAA;;;;;;;AAOG;AAqBI,eAAe,KAAK,CACzB,MAAA,GAA6B,QAAQ,EACrC,OAAA,GAAwB,EAAE,EAAA;AAE1B,IAAA,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,YAAY,EAAE;QAC7E,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;IACtE;AAEA,IAAA,MAAM,EAAE,KAAK,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,OAAO;IAC/E,MAAM,UAAU,GAAqB,EAAE;IACvC,IAAI,MAAM,GAAG,CAAC;AAEd,IAAA,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;AACtD,QAAA,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,UAAU,CAAC,IAAI,CAAC;AACd,gBAAA,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE;AAChE,aAAA,CAAC;QACJ;QACA,MAAM,IAAI,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,MAAM;IACtD;AAEA,IAAA,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;QAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC;AACzC,QAAA,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,UAAU,CAAC,IAAI,CAAC;AACd,gBAAA,EAAE,EAAE,mBAAmB,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE;AACvE,aAAA,CAAC;QACJ;;AAAO,YAAA,MAAM,EAAE;IACjB;AAEA,IAAA,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;QAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC,gDAAgD,CAAC;AAC3F,QAAA,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YACxB,UAAU,CAAC,IAAI,CAAC;AACd,gBAAA,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE;AACvE,aAAA,CAAC;QACJ;QACA,MAAM,IAAI,MAAM,CAAC,gBAAgB,CAAC,2CAA2C,CAAC,CAAC,MAAM;IACvF;AAEA,IAAA,MAAM,MAAM,GAAgB;QAC1B,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;AACzC,QAAA,GAAG,EAAE,OAAO,MAAM,KAAK,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG;KAC7D;IAED,IAAI,MAAM,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;AACjD,QAAA,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC;QACtC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAA,EAAA,EAAK,CAAC,CAAC,IAAI,CAAA,CAAE,CAAC,CAAC;QAC/D,OAAO,CAAC,QAAQ,EAAE;IACpB;AAEA,IAAA,OAAO,MAAM;AACf;AAEA,YAAe,EAAE,KAAK,EAAE;;;;"}
|
@@ -0,0 +1,36 @@
|
|
1
|
+
/**
|
2
|
+
* @sc4rfurryx/proteusjs/a11y-primitives
|
3
|
+
* Lightweight accessibility patterns
|
4
|
+
*
|
5
|
+
* @version 1.1.0
|
6
|
+
* @author sc4rfurry
|
7
|
+
* @license MIT
|
8
|
+
*/
|
9
|
+
interface Controller {
|
10
|
+
destroy(): void;
|
11
|
+
}
|
12
|
+
interface DialogOptions {
|
13
|
+
modal?: boolean;
|
14
|
+
restoreFocus?: boolean;
|
15
|
+
}
|
16
|
+
interface TooltipOptions {
|
17
|
+
delay?: number;
|
18
|
+
placement?: 'top' | 'bottom' | 'left' | 'right';
|
19
|
+
}
|
20
|
+
interface FocusTrapController {
|
21
|
+
activate(): void;
|
22
|
+
deactivate(): void;
|
23
|
+
}
|
24
|
+
declare function dialog(root: Element | string, opts?: DialogOptions): Controller;
|
25
|
+
declare function tooltip(trigger: Element, content: Element, opts?: TooltipOptions): Controller;
|
26
|
+
declare function focusTrap(container: Element): FocusTrapController;
|
27
|
+
declare function menu(container: Element): Controller;
|
28
|
+
declare const _default: {
|
29
|
+
dialog: typeof dialog;
|
30
|
+
tooltip: typeof tooltip;
|
31
|
+
focusTrap: typeof focusTrap;
|
32
|
+
menu: typeof menu;
|
33
|
+
};
|
34
|
+
|
35
|
+
export { _default as default, dialog, focusTrap, menu, tooltip };
|
36
|
+
export type { Controller, DialogOptions, FocusTrapController, TooltipOptions };
|
@@ -0,0 +1,114 @@
|
|
1
|
+
/*!
|
2
|
+
* ProteusJS v1.1.1
|
3
|
+
* Shape-shifting responsive design that adapts like the sea god himself
|
4
|
+
* (c) 2025 sc4rfurry
|
5
|
+
* Released under the MIT License
|
6
|
+
*/
|
7
|
+
/**
|
8
|
+
* @sc4rfurryx/proteusjs/a11y-primitives
|
9
|
+
* Lightweight accessibility patterns
|
10
|
+
*
|
11
|
+
* @version 1.1.0
|
12
|
+
* @author sc4rfurry
|
13
|
+
* @license MIT
|
14
|
+
*/
|
15
|
+
function dialog(root, opts = {}) {
|
16
|
+
const el = typeof root === 'string' ? document.querySelector(root) : root;
|
17
|
+
if (!el)
|
18
|
+
throw new Error('Dialog element not found');
|
19
|
+
const { modal = true, restoreFocus = true } = opts;
|
20
|
+
const close = () => {
|
21
|
+
};
|
22
|
+
return { destroy: () => close() };
|
23
|
+
}
|
24
|
+
function tooltip(trigger, content, opts = {}) {
|
25
|
+
const { delay = 300 } = opts;
|
26
|
+
let timeout;
|
27
|
+
const show = () => {
|
28
|
+
clearTimeout(timeout);
|
29
|
+
timeout = window.setTimeout(() => {
|
30
|
+
content.setAttribute('role', 'tooltip');
|
31
|
+
trigger.setAttribute('aria-describedby', content.id || 'tooltip');
|
32
|
+
content.style.display = 'block';
|
33
|
+
}, delay);
|
34
|
+
};
|
35
|
+
const hide = () => {
|
36
|
+
clearTimeout(timeout);
|
37
|
+
content.style.display = 'none';
|
38
|
+
trigger.removeAttribute('aria-describedby');
|
39
|
+
};
|
40
|
+
trigger.addEventListener('mouseenter', show);
|
41
|
+
trigger.addEventListener('mouseleave', hide);
|
42
|
+
trigger.addEventListener('focus', show);
|
43
|
+
trigger.addEventListener('blur', hide);
|
44
|
+
return {
|
45
|
+
destroy: () => {
|
46
|
+
clearTimeout(timeout);
|
47
|
+
trigger.removeEventListener('mouseenter', show);
|
48
|
+
trigger.removeEventListener('mouseleave', hide);
|
49
|
+
trigger.removeEventListener('focus', show);
|
50
|
+
trigger.removeEventListener('blur', hide);
|
51
|
+
}
|
52
|
+
};
|
53
|
+
}
|
54
|
+
function focusTrap(container) {
|
55
|
+
const focusable = 'button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])';
|
56
|
+
const activate = () => {
|
57
|
+
const elements = container.querySelectorAll(focusable);
|
58
|
+
if (elements.length === 0)
|
59
|
+
return;
|
60
|
+
const first = elements[0];
|
61
|
+
const last = elements[elements.length - 1];
|
62
|
+
const handleTab = (e) => {
|
63
|
+
if (e.key !== 'Tab')
|
64
|
+
return;
|
65
|
+
if (e.shiftKey && document.activeElement === first) {
|
66
|
+
e.preventDefault();
|
67
|
+
last.focus();
|
68
|
+
}
|
69
|
+
else if (!e.shiftKey && document.activeElement === last) {
|
70
|
+
e.preventDefault();
|
71
|
+
first.focus();
|
72
|
+
}
|
73
|
+
};
|
74
|
+
container.addEventListener('keydown', handleTab);
|
75
|
+
first.focus();
|
76
|
+
return () => container.removeEventListener('keydown', handleTab);
|
77
|
+
};
|
78
|
+
let deactivate = () => { };
|
79
|
+
return {
|
80
|
+
activate: () => { deactivate = activate() || (() => { }); },
|
81
|
+
deactivate: () => deactivate()
|
82
|
+
};
|
83
|
+
}
|
84
|
+
function menu(container) {
|
85
|
+
const items = container.querySelectorAll('[role="menuitem"]');
|
86
|
+
let currentIndex = 0;
|
87
|
+
const navigate = (e) => {
|
88
|
+
switch (e.key) {
|
89
|
+
case 'ArrowDown':
|
90
|
+
e.preventDefault();
|
91
|
+
currentIndex = (currentIndex + 1) % items.length;
|
92
|
+
items[currentIndex].focus();
|
93
|
+
break;
|
94
|
+
case 'ArrowUp':
|
95
|
+
e.preventDefault();
|
96
|
+
currentIndex = currentIndex === 0 ? items.length - 1 : currentIndex - 1;
|
97
|
+
items[currentIndex].focus();
|
98
|
+
break;
|
99
|
+
case 'Escape':
|
100
|
+
e.preventDefault();
|
101
|
+
container.dispatchEvent(new CustomEvent('menu:close'));
|
102
|
+
break;
|
103
|
+
}
|
104
|
+
};
|
105
|
+
container.setAttribute('role', 'menu');
|
106
|
+
container.addEventListener('keydown', navigate);
|
107
|
+
return {
|
108
|
+
destroy: () => container.removeEventListener('keydown', navigate)
|
109
|
+
};
|
110
|
+
}
|
111
|
+
var index = { dialog, tooltip, focusTrap, menu };
|
112
|
+
|
113
|
+
export { index as default, dialog, focusTrap, menu, tooltip };
|
114
|
+
//# sourceMappingURL=a11y-primitives.esm.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"a11y-primitives.esm.js","sources":["../../src/modules/a11y-primitives/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
/**
|
2
|
+
* @sc4rfurryx/proteusjs/anchor
|
3
|
+
* CSS Anchor Positioning utilities with robust JS fallback
|
4
|
+
*
|
5
|
+
* @version 1.1.0
|
6
|
+
* @author sc4rfurry
|
7
|
+
* @license MIT
|
8
|
+
*/
|
9
|
+
interface TetherOptions {
|
10
|
+
anchor: Element | string;
|
11
|
+
placement?: 'top' | 'bottom' | 'left' | 'right' | 'auto';
|
12
|
+
align?: 'start' | 'center' | 'end';
|
13
|
+
offset?: number;
|
14
|
+
strategy?: 'absolute' | 'fixed';
|
15
|
+
}
|
16
|
+
interface TetherController {
|
17
|
+
update(): void;
|
18
|
+
destroy(): void;
|
19
|
+
}
|
20
|
+
/**
|
21
|
+
* Declarative tethers (tooltips, callouts) via CSS Anchor Positioning when available;
|
22
|
+
* robust JS fallback with flip/collision detection
|
23
|
+
*/
|
24
|
+
declare function tether(floating: Element | string, opts: TetherOptions): TetherController;
|
25
|
+
declare const _default: {
|
26
|
+
tether: typeof tether;
|
27
|
+
};
|
28
|
+
|
29
|
+
export { _default as default, tether };
|
30
|
+
export type { TetherController, TetherOptions };
|
@@ -0,0 +1,219 @@
|
|
1
|
+
/*!
|
2
|
+
* ProteusJS v1.1.1
|
3
|
+
* Shape-shifting responsive design that adapts like the sea god himself
|
4
|
+
* (c) 2025 sc4rfurry
|
5
|
+
* Released under the MIT License
|
6
|
+
*/
|
7
|
+
/**
|
8
|
+
* @sc4rfurryx/proteusjs/anchor
|
9
|
+
* CSS Anchor Positioning utilities with robust JS fallback
|
10
|
+
*
|
11
|
+
* @version 1.1.0
|
12
|
+
* @author sc4rfurry
|
13
|
+
* @license MIT
|
14
|
+
*/
|
15
|
+
/**
|
16
|
+
* Declarative tethers (tooltips, callouts) via CSS Anchor Positioning when available;
|
17
|
+
* robust JS fallback with flip/collision detection
|
18
|
+
*/
|
19
|
+
function tether(floating, opts) {
|
20
|
+
const floatingEl = typeof floating === 'string' ? document.querySelector(floating) : floating;
|
21
|
+
const anchorEl = typeof opts.anchor === 'string' ? document.querySelector(opts.anchor) : opts.anchor;
|
22
|
+
if (!floatingEl || !anchorEl) {
|
23
|
+
throw new Error('Both floating and anchor elements must exist');
|
24
|
+
}
|
25
|
+
const { placement = 'bottom', align = 'center', offset = 8, strategy = 'absolute' } = opts;
|
26
|
+
// Check for CSS Anchor Positioning support
|
27
|
+
const hasAnchorPositioning = CSS.supports('anchor-name', 'test');
|
28
|
+
let isDestroyed = false;
|
29
|
+
let resizeObserver = null;
|
30
|
+
const setupCSSAnchorPositioning = () => {
|
31
|
+
if (!hasAnchorPositioning)
|
32
|
+
return false;
|
33
|
+
// Generate unique anchor name
|
34
|
+
const anchorName = `anchor-${Math.random().toString(36).substring(2, 11)}`;
|
35
|
+
// Set anchor name on anchor element
|
36
|
+
anchorEl.style.setProperty('anchor-name', anchorName);
|
37
|
+
// Position floating element using CSS anchor positioning
|
38
|
+
const floatingStyle = floatingEl;
|
39
|
+
floatingStyle.style.position = strategy;
|
40
|
+
floatingStyle.style.setProperty('position-anchor', anchorName);
|
41
|
+
// Set position based on placement
|
42
|
+
switch (placement) {
|
43
|
+
case 'top':
|
44
|
+
floatingStyle.style.bottom = `anchor(bottom, ${offset}px)`;
|
45
|
+
break;
|
46
|
+
case 'bottom':
|
47
|
+
floatingStyle.style.top = `anchor(bottom, ${offset}px)`;
|
48
|
+
break;
|
49
|
+
case 'left':
|
50
|
+
floatingStyle.style.right = `anchor(left, ${offset}px)`;
|
51
|
+
break;
|
52
|
+
case 'right':
|
53
|
+
floatingStyle.style.left = `anchor(right, ${offset}px)`;
|
54
|
+
break;
|
55
|
+
}
|
56
|
+
// Set alignment
|
57
|
+
if (placement === 'top' || placement === 'bottom') {
|
58
|
+
switch (align) {
|
59
|
+
case 'start':
|
60
|
+
floatingStyle.style.left = 'anchor(left)';
|
61
|
+
break;
|
62
|
+
case 'center':
|
63
|
+
floatingStyle.style.left = 'anchor(center)';
|
64
|
+
floatingStyle.style.transform = 'translateX(-50%)';
|
65
|
+
break;
|
66
|
+
case 'end':
|
67
|
+
floatingStyle.style.right = 'anchor(right)';
|
68
|
+
break;
|
69
|
+
}
|
70
|
+
}
|
71
|
+
else {
|
72
|
+
switch (align) {
|
73
|
+
case 'start':
|
74
|
+
floatingStyle.style.top = 'anchor(top)';
|
75
|
+
break;
|
76
|
+
case 'center':
|
77
|
+
floatingStyle.style.top = 'anchor(center)';
|
78
|
+
floatingStyle.style.transform = 'translateY(-50%)';
|
79
|
+
break;
|
80
|
+
case 'end':
|
81
|
+
floatingStyle.style.bottom = 'anchor(bottom)';
|
82
|
+
break;
|
83
|
+
}
|
84
|
+
}
|
85
|
+
return true;
|
86
|
+
};
|
87
|
+
const calculatePosition = () => {
|
88
|
+
const anchorRect = anchorEl.getBoundingClientRect();
|
89
|
+
const floatingRect = floatingEl.getBoundingClientRect();
|
90
|
+
const viewport = {
|
91
|
+
width: window.innerWidth,
|
92
|
+
height: window.innerHeight
|
93
|
+
};
|
94
|
+
let finalPlacement = placement;
|
95
|
+
let x = 0;
|
96
|
+
let y = 0;
|
97
|
+
// Calculate base position
|
98
|
+
switch (finalPlacement) {
|
99
|
+
case 'top':
|
100
|
+
x = anchorRect.left;
|
101
|
+
y = anchorRect.top - floatingRect.height - offset;
|
102
|
+
break;
|
103
|
+
case 'bottom':
|
104
|
+
x = anchorRect.left;
|
105
|
+
y = anchorRect.bottom + offset;
|
106
|
+
break;
|
107
|
+
case 'left':
|
108
|
+
x = anchorRect.left - floatingRect.width - offset;
|
109
|
+
y = anchorRect.top;
|
110
|
+
break;
|
111
|
+
case 'right':
|
112
|
+
x = anchorRect.right + offset;
|
113
|
+
y = anchorRect.top;
|
114
|
+
break;
|
115
|
+
case 'auto': {
|
116
|
+
// Choose best placement based on available space
|
117
|
+
const spaces = {
|
118
|
+
top: anchorRect.top,
|
119
|
+
bottom: viewport.height - anchorRect.bottom,
|
120
|
+
left: anchorRect.left,
|
121
|
+
right: viewport.width - anchorRect.right
|
122
|
+
};
|
123
|
+
const bestPlacement = Object.entries(spaces).reduce((a, b) => spaces[a[0]] > spaces[b[0]] ? a : b)[0];
|
124
|
+
finalPlacement = bestPlacement;
|
125
|
+
return calculatePosition(); // Recursive call with determined placement
|
126
|
+
}
|
127
|
+
}
|
128
|
+
// Apply alignment
|
129
|
+
if (finalPlacement === 'top' || finalPlacement === 'bottom') {
|
130
|
+
switch (align) {
|
131
|
+
case 'start':
|
132
|
+
// x already set correctly
|
133
|
+
break;
|
134
|
+
case 'center':
|
135
|
+
x = anchorRect.left + (anchorRect.width - floatingRect.width) / 2;
|
136
|
+
break;
|
137
|
+
case 'end':
|
138
|
+
x = anchorRect.right - floatingRect.width;
|
139
|
+
break;
|
140
|
+
}
|
141
|
+
}
|
142
|
+
else {
|
143
|
+
switch (align) {
|
144
|
+
case 'start':
|
145
|
+
// y already set correctly
|
146
|
+
break;
|
147
|
+
case 'center':
|
148
|
+
y = anchorRect.top + (anchorRect.height - floatingRect.height) / 2;
|
149
|
+
break;
|
150
|
+
case 'end':
|
151
|
+
y = anchorRect.bottom - floatingRect.height;
|
152
|
+
break;
|
153
|
+
}
|
154
|
+
}
|
155
|
+
// Collision detection and adjustment
|
156
|
+
if (x < 0)
|
157
|
+
x = 8;
|
158
|
+
if (y < 0)
|
159
|
+
y = 8;
|
160
|
+
if (x + floatingRect.width > viewport.width) {
|
161
|
+
x = viewport.width - floatingRect.width - 8;
|
162
|
+
}
|
163
|
+
if (y + floatingRect.height > viewport.height) {
|
164
|
+
y = viewport.height - floatingRect.height - 8;
|
165
|
+
}
|
166
|
+
return { x, y };
|
167
|
+
};
|
168
|
+
const updatePosition = () => {
|
169
|
+
if (isDestroyed)
|
170
|
+
return;
|
171
|
+
if (!hasAnchorPositioning) {
|
172
|
+
const { x, y } = calculatePosition();
|
173
|
+
const floatingStyle = floatingEl;
|
174
|
+
floatingStyle.style.position = strategy;
|
175
|
+
floatingStyle.style.left = `${x}px`;
|
176
|
+
floatingStyle.style.top = `${y}px`;
|
177
|
+
}
|
178
|
+
};
|
179
|
+
const setupJSFallback = () => {
|
180
|
+
updatePosition();
|
181
|
+
// Set up observers for position updates
|
182
|
+
resizeObserver = new ResizeObserver(updatePosition);
|
183
|
+
resizeObserver.observe(anchorEl);
|
184
|
+
resizeObserver.observe(floatingEl);
|
185
|
+
window.addEventListener('scroll', updatePosition, { passive: true });
|
186
|
+
window.addEventListener('resize', updatePosition, { passive: true });
|
187
|
+
};
|
188
|
+
const destroy = () => {
|
189
|
+
isDestroyed = true;
|
190
|
+
if (resizeObserver) {
|
191
|
+
resizeObserver.disconnect();
|
192
|
+
resizeObserver = null;
|
193
|
+
}
|
194
|
+
window.removeEventListener('scroll', updatePosition);
|
195
|
+
window.removeEventListener('resize', updatePosition);
|
196
|
+
// Clean up CSS anchor positioning
|
197
|
+
if (hasAnchorPositioning) {
|
198
|
+
anchorEl.style.removeProperty('anchor-name');
|
199
|
+
const floatingStyle = floatingEl;
|
200
|
+
floatingStyle.style.removeProperty('position-anchor');
|
201
|
+
floatingStyle.style.position = '';
|
202
|
+
}
|
203
|
+
};
|
204
|
+
// Initialize
|
205
|
+
if (!setupCSSAnchorPositioning()) {
|
206
|
+
setupJSFallback();
|
207
|
+
}
|
208
|
+
return {
|
209
|
+
update: updatePosition,
|
210
|
+
destroy
|
211
|
+
};
|
212
|
+
}
|
213
|
+
// Export default object for convenience
|
214
|
+
var index = {
|
215
|
+
tether
|
216
|
+
};
|
217
|
+
|
218
|
+
export { index as default, tether };
|
219
|
+
//# sourceMappingURL=anchor.esm.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"anchor.esm.js","sources":["../../src/modules/anchor/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
@@ -0,0 +1,60 @@
|
|
1
|
+
/**
|
2
|
+
* @sc4rfurryx/proteusjs/container
|
3
|
+
* Container/Style Query helpers with visualization devtools
|
4
|
+
*
|
5
|
+
* @version 1.1.0
|
6
|
+
* @author sc4rfurry
|
7
|
+
* @license MIT
|
8
|
+
*/
|
9
|
+
interface ContainerOptions {
|
10
|
+
type?: 'size' | 'style';
|
11
|
+
inlineSize?: boolean;
|
12
|
+
}
|
13
|
+
/**
|
14
|
+
* Sugar on native container queries with dev visualization
|
15
|
+
*/
|
16
|
+
declare function defineContainer(target: Element | string, name?: string, opts?: ContainerOptions): void;
|
17
|
+
/**
|
18
|
+
* Helper to create container query CSS rules
|
19
|
+
*/
|
20
|
+
declare function createContainerQuery(containerName: string, condition: string, styles: Record<string, string>): string;
|
21
|
+
/**
|
22
|
+
* Apply container query styles dynamically
|
23
|
+
*/
|
24
|
+
declare function applyContainerQuery(containerName: string, condition: string, styles: Record<string, string>): void;
|
25
|
+
/**
|
26
|
+
* Remove container query styles
|
27
|
+
*/
|
28
|
+
declare function removeContainerQuery(containerName: string): void;
|
29
|
+
/**
|
30
|
+
* Get container size information
|
31
|
+
*/
|
32
|
+
declare function getContainerSize(target: Element | string): {
|
33
|
+
width: number;
|
34
|
+
height: number;
|
35
|
+
};
|
36
|
+
/**
|
37
|
+
* Check if container queries are supported
|
38
|
+
*/
|
39
|
+
declare function isSupported(): boolean;
|
40
|
+
/**
|
41
|
+
* Cleanup container overlays and observers
|
42
|
+
*/
|
43
|
+
declare function cleanup(target: Element | string): void;
|
44
|
+
/**
|
45
|
+
* Toggle dev overlay visibility
|
46
|
+
*/
|
47
|
+
declare function toggleDevOverlay(visible?: boolean): void;
|
48
|
+
declare const _default: {
|
49
|
+
defineContainer: typeof defineContainer;
|
50
|
+
createContainerQuery: typeof createContainerQuery;
|
51
|
+
applyContainerQuery: typeof applyContainerQuery;
|
52
|
+
removeContainerQuery: typeof removeContainerQuery;
|
53
|
+
getContainerSize: typeof getContainerSize;
|
54
|
+
isSupported: typeof isSupported;
|
55
|
+
cleanup: typeof cleanup;
|
56
|
+
toggleDevOverlay: typeof toggleDevOverlay;
|
57
|
+
};
|
58
|
+
|
59
|
+
export { applyContainerQuery, cleanup, createContainerQuery, _default as default, defineContainer, getContainerSize, isSupported, removeContainerQuery, toggleDevOverlay };
|
60
|
+
export type { ContainerOptions };
|