@auvyx/ui 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/README.md +2 -2
  2. package/dist/auvyx.bundle.css +101 -8
  3. package/dist/auvyx.chart.min.js +2 -2
  4. package/dist/auvyx.css +56 -0
  5. package/dist/auvyx.js +27 -26
  6. package/dist/auvyx.min.css +2 -2
  7. package/dist/auvyx.min.js +3 -3
  8. package/dist/custom-elements.json +1 -1
  9. package/dist/elements/calendar.min.js +1 -1
  10. package/dist/elements/context-menu.min.js +1 -1
  11. package/dist/elements/data-table.min.js +1 -1
  12. package/dist/elements/date-picker.min.js +1 -1
  13. package/dist/elements/index.min.js +1 -1
  14. package/dist/elements/menu.min.js +1 -1
  15. package/dist/elements/resizable.min.js +1 -1
  16. package/dist/js/accordion.min.js +2 -2
  17. package/dist/js/calendar.min.js +1 -1
  18. package/dist/js/combobox.min.js +2 -2
  19. package/dist/js/command.min.js +2 -2
  20. package/dist/js/context-menu.min.js +1 -1
  21. package/dist/js/copy.min.js +1 -1
  22. package/dist/js/data-table.min.js +1 -1
  23. package/dist/js/date-picker.min.js +1 -1
  24. package/dist/js/drawer.min.js +2 -2
  25. package/dist/js/dropdown-menu.min.js +2 -2
  26. package/dist/js/manifest.json +17 -17
  27. package/dist/js/menu.min.js +1 -1
  28. package/dist/js/popover.min.js +2 -2
  29. package/dist/js/resizable.min.js +1 -1
  30. package/dist/js/select.min.js +2 -2
  31. package/dist/js/sidebar.min.js +2 -2
  32. package/dist/js/slider.min.js +2 -2
  33. package/dist/js/tabs.min.js +2 -2
  34. package/dist/js/toast.min.js +6 -6
  35. package/dist/styles/auvyx-luma.min.css +2 -2
  36. package/dist/styles/auvyx-lyra.min.css +2 -2
  37. package/dist/styles/auvyx-maia.min.css +2 -2
  38. package/dist/styles/auvyx-mira.min.css +2 -2
  39. package/dist/styles/auvyx-nova.min.css +2 -2
  40. package/dist/styles/auvyx-rhea.min.css +2 -2
  41. package/dist/styles/auvyx-sera.min.css +2 -2
  42. package/dist/styles/auvyx-vega.min.css +2 -2
  43. package/dist/types/elements.d.ts +23 -0
  44. package/dist/ui/accordion.js +9 -8
  45. package/dist/ui/base.css +56 -0
  46. package/dist/ui/calendar.js +1 -1
  47. package/dist/ui/combobox.js +9 -8
  48. package/dist/ui/command.js +9 -8
  49. package/dist/ui/context-menu.js +1 -1
  50. package/dist/ui/copy.js +1 -1
  51. package/dist/ui/data-table.js +1 -1
  52. package/dist/ui/date-picker.js +1 -1
  53. package/dist/ui/drawer.js +9 -8
  54. package/dist/ui/dropdown-menu.js +9 -8
  55. package/dist/ui/menu.js +1 -1
  56. package/dist/ui/popover.js +9 -8
  57. package/dist/ui/resizable.js +1 -1
  58. package/dist/ui/select.js +9 -8
  59. package/dist/ui/sidebar.js +9 -8
  60. package/dist/ui/slider.js +9 -8
  61. package/dist/ui/tabs.js +9 -8
  62. package/dist/ui/toast.js +10 -9
  63. package/dist/wc/accordion.min.js +2 -2
  64. package/dist/wc/combobox.min.js +2 -2
  65. package/dist/wc/command.min.js +2 -2
  66. package/dist/wc/drawer.min.js +2 -2
  67. package/dist/wc/dropdown-menu.min.js +2 -2
  68. package/dist/wc/manifest.json +11 -11
  69. package/dist/wc/popover.min.js +2 -2
  70. package/dist/wc/select.min.js +2 -2
  71. package/dist/wc/sidebar.min.js +2 -2
  72. package/dist/wc/slider.min.js +2 -2
  73. package/dist/wc/tabs.min.js +2 -2
  74. package/dist/wc/toast.min.js +5 -5
  75. package/package.json +4 -4
@@ -1,5 +1,22 @@
1
1
  // Generated from packages/elements/api.mjs by packages/ui/tools/types.mjs. Do not edit.
2
2
 
3
+ export interface AuvyxCore {
4
+ /** Register a behavior: name, a selector and an init function (or { selector, init, refresh }). */
5
+ register(name: string, selectorOrOptions: string | { selector: string; init: (el: Element) => void; refresh?: (el: Element) => void }, init?: (el: Element) => void): void;
6
+ /** Initialize one registered component type in the page. */
7
+ init(name: string): void;
8
+ /** Initialize every registered component not initialized yet; force re-creates them (after a cache restore). */
9
+ initAll(options?: { force?: boolean }): void;
10
+ /** Re-read an initialized component's markup (options changed). */
11
+ refresh(el: Element): void;
12
+ /** Watch the page for inserted markup (on by default). */
13
+ start(): void;
14
+ stop(): void;
15
+ theme: { get(): 'light' | 'dark'; set(mode: 'light' | 'dark'): void; toggle(): void };
16
+ /** Chart.js helper, present once auvyx.chart.min.js is loaded. */
17
+ chart?: (target: string | HTMLCanvasElement, config: unknown) => unknown;
18
+ }
19
+
3
20
  export interface AuvyxToastOptions {
4
21
  category?: 'success' | 'error' | 'info' | 'warning';
5
22
  title?: string;
@@ -241,6 +258,12 @@ export interface AuvyxContextMenuElement extends HTMLElement {
241
258
  }
242
259
 
243
260
  declare global {
261
+ interface Window {
262
+ /** The Auvyx UI JavaScript API. */
263
+ auvyx: AuvyxCore;
264
+ /** Alias of window.auvyx, kept for existing code. */
265
+ basecoat: AuvyxCore;
266
+ }
244
267
  interface HTMLElementTagNameMap {
245
268
  "auvyx-tabs": AuvyxTabsElement;
246
269
  "auvyx-select": AuvyxSelectElement;
@@ -1,6 +1,6 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
2
- // Basecoat core, once per page.
3
- if (!window.basecoat) (() => {
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
+ // Shared core, once per page.
3
+ if (!window.auvyx) (() => {
4
4
  const componentRegistry = {};
5
5
  let observer = null;
6
6
 
@@ -48,7 +48,7 @@ if (!window.basecoat) (() => {
48
48
  try {
49
49
  element._destroy();
50
50
  } catch (error) {
51
- console.error('Failed to destroy Basecoat component:', error);
51
+ console.error('Failed to destroy component:', error);
52
52
  }
53
53
  }
54
54
 
@@ -156,7 +156,8 @@ if (!window.basecoat) (() => {
156
156
 
157
157
  const getTheme = () => document.documentElement.classList.contains('dark') ? 'dark' : 'light';
158
158
 
159
- window.basecoat = {
159
+ // window.auvyx is the API; window.auvyx is the same object, kept as an alias.
160
+ window.auvyx = window.basecoat = {
160
161
  register: registerComponent,
161
162
  init: initRegisteredComponent,
162
163
  initAll: initAllRegisteredComponents,
@@ -240,10 +241,10 @@ if (!window.basecoat) (() => {
240
241
  root.dispatchEvent(new CustomEvent('basecoat:initialized'));
241
242
  };
242
243
 
243
- if (window.basecoat) {
244
- window.basecoat.register('accordion', '.accordion:not([data-accordion-initialized])', initAccordion);
244
+ if (window.auvyx) {
245
+ window.auvyx.register('accordion', '.accordion:not([data-accordion-initialized])', initAccordion);
245
246
  }
246
247
  })();
247
248
 
248
249
  // Loaded after the DOM is ready: initialize now.
249
- if (document.readyState !== 'loading') { window.basecoat.initAll(); window.basecoat.start(); }
250
+ if (document.readyState !== 'loading') { window.auvyx.initAll(); window.auvyx.start(); }
package/dist/ui/base.css CHANGED
@@ -483,6 +483,62 @@ html[data-motion='off'] {
483
483
  translate: none;
484
484
  }
485
485
  }
486
+ :is( .field > input:is([type='text'], [type='email'], [type='password'], [type='number'], [type='file'], [type='tel'], [type='url'], [type='search'], [type='date'], [type='datetime-local'], [type='month'], [type='week'], [type='time']), .input:is([type='text'], [type='email'], [type='password'], [type='number'], [type='file'], [type='tel'], [type='url'], [type='search'], [type='date'], [type='datetime-local'], [type='month'], [type='week'], [type='time']), .field > textarea, .textarea, .field > select, select.select, .select:not(select) > button, .combobox > input[role='combobox'], .input-group, .input-otp ) {
487
+ transition: color var(--motion-fast) var(--motion-ease-standard), background-color var(--motion-fast) var(--motion-ease-standard), border-color var(--motion-fast) var(--motion-ease-standard), box-shadow var(--motion-fast) var(--motion-ease-standard);
488
+ }
489
+ :is( .field > input:is([type='text'], [type='email'], [type='password'], [type='number'], [type='file'], [type='tel'], [type='url'], [type='search'], [type='date'], [type='datetime-local'], [type='month'], [type='week'], [type='time']), .input:is([type='text'], [type='email'], [type='password'], [type='number'], [type='file'], [type='tel'], [type='url'], [type='search'], [type='date'], [type='datetime-local'], [type='month'], [type='week'], [type='time']), .field > textarea, .textarea, .field > select, select.select, .select:not(select) > button, .combobox > input[role='combobox'], .input-group, .input-otp ):hover:not(:focus, :focus-within, :disabled, :has(:disabled), [aria-invalid='true'], [aria-expanded='true']) {
490
+ border-color: var(--ring);
491
+ @supports (color: color-mix(in lab, red, red)) {
492
+ border-color: color-mix(in oklch, var(--ring) 70%, var(--input));
493
+ }
494
+ }
495
+ :is(.field > input:is([type='checkbox'], [type='radio']), .input:is([type='checkbox'], [type='radio'])) {
496
+ transition: color var(--motion-fast) var(--motion-ease-standard), background-color var(--motion-fast) var(--motion-ease-standard), border-color var(--motion-fast) var(--motion-ease-standard), box-shadow var(--motion-fast) var(--motion-ease-standard), scale var(--motion-spring-snappy-duration) var(--motion-spring-snappy);
497
+ }
498
+ :is(.field > input:is([type='checkbox'], [type='radio']), .input:is([type='checkbox'], [type='radio'])):not([role='switch']):hover:not(:checked, :focus-visible, :disabled, [aria-invalid='true']) {
499
+ border-color: var(--ring);
500
+ @supports (color: color-mix(in lab, red, red)) {
501
+ border-color: color-mix(in oklch, var(--ring) 70%, var(--input));
502
+ }
503
+ }
504
+ :is(.field > input:is([type='checkbox'], [type='radio']), .input:is([type='checkbox'], [type='radio']))[role='switch']:hover:not(:checked, :disabled, [aria-invalid='true']) {
505
+ background-color: var(--input);
506
+ @supports (color: color-mix(in lab, red, red)) {
507
+ background-color: color-mix(in oklch, var(--input), var(--foreground) 12%);
508
+ }
509
+ }
510
+ :is(.dark, .dark *) :is(.field > input:is([type='checkbox'], [type='radio']), .input:is([type='checkbox'], [type='radio']))[role='switch']:hover:not(:checked, :disabled, [aria-invalid='true']) {
511
+ background-color: var(--input);
512
+ @supports (color: color-mix(in lab, red, red)) {
513
+ background-color: color-mix(in oklch, var(--input), var(--foreground) 18%);
514
+ }
515
+ }
516
+ :is(.field > input:is([type='checkbox'], [type='radio']), .input:is([type='checkbox'], [type='radio'])):active:not(:disabled) {
517
+ scale: 0.92;
518
+ }
519
+ :is(.field > input[type='range'], .input[type='range'])::-webkit-slider-thumb {
520
+ transition: scale var(--motion-spring-snappy-duration) var(--motion-spring-snappy), box-shadow var(--motion-fast) var(--motion-ease-standard);
521
+ }
522
+ :is(.field > input[type='range'], .input[type='range'])::-moz-range-thumb {
523
+ transition: scale var(--motion-spring-snappy-duration) var(--motion-spring-snappy), box-shadow var(--motion-fast) var(--motion-ease-standard);
524
+ }
525
+ :is(.field > input[type='range'], .input[type='range']):active:not(:disabled)::-webkit-slider-thumb {
526
+ scale: 1.15;
527
+ }
528
+ :is(.field > input[type='range'], .input[type='range']):active:not(:disabled)::-moz-range-thumb {
529
+ scale: 1.15;
530
+ }
531
+ @media (prefers-reduced-motion: reduce) {
532
+ :is(.field > input:is([type='checkbox'], [type='radio']), .input:is([type='checkbox'], [type='radio'])):active {
533
+ scale: none;
534
+ }
535
+ :is(.field > input[type='range'], .input[type='range']):active::-webkit-slider-thumb {
536
+ scale: none;
537
+ }
538
+ :is(.field > input[type='range'], .input[type='range']):active::-moz-range-thumb {
539
+ scale: none;
540
+ }
541
+ }
486
542
  [data-popover]:not([popover]) {
487
543
  transition-property: opacity, scale, translate, visibility;
488
544
  transition-duration: var(--motion-base);
@@ -1,4 +1,4 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
2
  (() => {
3
3
  // ../elements/src/calendar.js
4
4
  var pad = (n) => String(n).padStart(2, "0");
@@ -1,6 +1,6 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
2
- // Basecoat core, once per page.
3
- if (!window.basecoat) (() => {
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
+ // Shared core, once per page.
3
+ if (!window.auvyx) (() => {
4
4
  const componentRegistry = {};
5
5
  let observer = null;
6
6
 
@@ -48,7 +48,7 @@ if (!window.basecoat) (() => {
48
48
  try {
49
49
  element._destroy();
50
50
  } catch (error) {
51
- console.error('Failed to destroy Basecoat component:', error);
51
+ console.error('Failed to destroy component:', error);
52
52
  }
53
53
  }
54
54
 
@@ -156,7 +156,8 @@ if (!window.basecoat) (() => {
156
156
 
157
157
  const getTheme = () => document.documentElement.classList.contains('dark') ? 'dark' : 'light';
158
158
 
159
- window.basecoat = {
159
+ // window.auvyx is the API; window.auvyx is the same object, kept as an alias.
160
+ window.auvyx = window.basecoat = {
160
161
  register: registerComponent,
161
162
  init: initRegisteredComponent,
162
163
  initAll: initAllRegisteredComponents,
@@ -744,8 +745,8 @@ if (!window.basecoat) (() => {
744
745
  root.dispatchEvent(new CustomEvent('basecoat:initialized'));
745
746
  };
746
747
 
747
- if (window.basecoat) {
748
- window.basecoat.register('combobox', {
748
+ if (window.auvyx) {
749
+ window.auvyx.register('combobox', {
749
750
  selector: '.combobox:not([data-combobox-initialized])',
750
751
  init: initCombobox,
751
752
  refresh: refreshCombobox,
@@ -754,4 +755,4 @@ if (!window.basecoat) (() => {
754
755
  })();
755
756
 
756
757
  // Loaded after the DOM is ready: initialize now.
757
- if (document.readyState !== 'loading') { window.basecoat.initAll(); window.basecoat.start(); }
758
+ if (document.readyState !== 'loading') { window.auvyx.initAll(); window.auvyx.start(); }
@@ -1,6 +1,6 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
2
- // Basecoat core, once per page.
3
- if (!window.basecoat) (() => {
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
+ // Shared core, once per page.
3
+ if (!window.auvyx) (() => {
4
4
  const componentRegistry = {};
5
5
  let observer = null;
6
6
 
@@ -48,7 +48,7 @@ if (!window.basecoat) (() => {
48
48
  try {
49
49
  element._destroy();
50
50
  } catch (error) {
51
- console.error('Failed to destroy Basecoat component:', error);
51
+ console.error('Failed to destroy component:', error);
52
52
  }
53
53
  }
54
54
 
@@ -156,7 +156,8 @@ if (!window.basecoat) (() => {
156
156
 
157
157
  const getTheme = () => document.documentElement.classList.contains('dark') ? 'dark' : 'light';
158
158
 
159
- window.basecoat = {
159
+ // window.auvyx is the API; window.auvyx is the same object, kept as an alias.
160
+ window.auvyx = window.basecoat = {
160
161
  register: registerComponent,
161
162
  init: initRegisteredComponent,
162
163
  initAll: initAllRegisteredComponents,
@@ -369,8 +370,8 @@ if (!window.basecoat) (() => {
369
370
  container.dispatchEvent(new CustomEvent('basecoat:initialized'));
370
371
  };
371
372
 
372
- if (window.basecoat) {
373
- window.basecoat.register('command', {
373
+ if (window.auvyx) {
374
+ window.auvyx.register('command', {
374
375
  selector: '.command:not([data-command-initialized])',
375
376
  init: initCommand,
376
377
  refresh: refreshCommand,
@@ -379,4 +380,4 @@ if (!window.basecoat) (() => {
379
380
  })();
380
381
 
381
382
  // Loaded after the DOM is ready: initialize now.
382
- if (document.readyState !== 'loading') { window.basecoat.initAll(); window.basecoat.start(); }
383
+ if (document.readyState !== 'loading') { window.auvyx.initAll(); window.auvyx.start(); }
@@ -1,4 +1,4 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
2
  (() => {
3
3
  // ../elements/src/context-menu.js
4
4
  var AuvyxContextMenu = class extends HTMLElement {
package/dist/ui/copy.js CHANGED
@@ -1,4 +1,4 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
2
  // Copy to clipboard (fork addition).
3
3
  //
4
4
  // Any element with [data-copy] copies text on click:
@@ -1,4 +1,4 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
2
  (() => {
3
3
  // ../elements/src/data-table.js
4
4
  var AuvyxDataTable = class extends HTMLElement {
@@ -1,4 +1,4 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
2
  (() => {
3
3
  // ../elements/src/date-picker.js
4
4
  var calendarIcon = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M8 2v4"/><path d="M16 2v4"/><rect width="18" height="18" x="3" y="4" rx="2"/><path d="M3 10h18"/></svg>';
package/dist/ui/drawer.js CHANGED
@@ -1,6 +1,6 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
2
- // Basecoat core, once per page.
3
- if (!window.basecoat) (() => {
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
+ // Shared core, once per page.
3
+ if (!window.auvyx) (() => {
4
4
  const componentRegistry = {};
5
5
  let observer = null;
6
6
 
@@ -48,7 +48,7 @@ if (!window.basecoat) (() => {
48
48
  try {
49
49
  element._destroy();
50
50
  } catch (error) {
51
- console.error('Failed to destroy Basecoat component:', error);
51
+ console.error('Failed to destroy component:', error);
52
52
  }
53
53
  }
54
54
 
@@ -156,7 +156,8 @@ if (!window.basecoat) (() => {
156
156
 
157
157
  const getTheme = () => document.documentElement.classList.contains('dark') ? 'dark' : 'light';
158
158
 
159
- window.basecoat = {
159
+ // window.auvyx is the API; window.auvyx is the same object, kept as an alias.
160
+ window.auvyx = window.basecoat = {
160
161
  register: registerComponent,
161
162
  init: initRegisteredComponent,
162
163
  initAll: initAllRegisteredComponents,
@@ -256,10 +257,10 @@ if (!window.basecoat) (() => {
256
257
  drawer.dispatchEvent(new CustomEvent('basecoat:initialized'));
257
258
  };
258
259
 
259
- if (window.basecoat) {
260
- window.basecoat.register('drawer', '.drawer:not([data-drawer-initialized])', initDrawer);
260
+ if (window.auvyx) {
261
+ window.auvyx.register('drawer', '.drawer:not([data-drawer-initialized])', initDrawer);
261
262
  }
262
263
  })();
263
264
 
264
265
  // Loaded after the DOM is ready: initialize now.
265
- if (document.readyState !== 'loading') { window.basecoat.initAll(); window.basecoat.start(); }
266
+ if (document.readyState !== 'loading') { window.auvyx.initAll(); window.auvyx.start(); }
@@ -1,6 +1,6 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
2
- // Basecoat core, once per page.
3
- if (!window.basecoat) (() => {
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
+ // Shared core, once per page.
3
+ if (!window.auvyx) (() => {
4
4
  const componentRegistry = {};
5
5
  let observer = null;
6
6
 
@@ -48,7 +48,7 @@ if (!window.basecoat) (() => {
48
48
  try {
49
49
  element._destroy();
50
50
  } catch (error) {
51
- console.error('Failed to destroy Basecoat component:', error);
51
+ console.error('Failed to destroy component:', error);
52
52
  }
53
53
  }
54
54
 
@@ -156,7 +156,8 @@ if (!window.basecoat) (() => {
156
156
 
157
157
  const getTheme = () => document.documentElement.classList.contains('dark') ? 'dark' : 'light';
158
158
 
159
- window.basecoat = {
159
+ // window.auvyx is the API; window.auvyx is the same object, kept as an alias.
160
+ window.auvyx = window.basecoat = {
160
161
  register: registerComponent,
161
162
  init: initRegisteredComponent,
162
163
  initAll: initAllRegisteredComponents,
@@ -375,8 +376,8 @@ if (!window.basecoat) (() => {
375
376
  root.dispatchEvent(new CustomEvent('basecoat:initialized'));
376
377
  };
377
378
 
378
- if (window.basecoat) {
379
- window.basecoat.register('dropdown-menu', {
379
+ if (window.auvyx) {
380
+ window.auvyx.register('dropdown-menu', {
380
381
  selector: '.dropdown-menu:not([data-dropdown-menu-initialized]):not(:has(> [data-popover][popover]))',
381
382
  init: initDropdownMenu,
382
383
  refresh: refreshDropdownMenu,
@@ -385,4 +386,4 @@ if (!window.basecoat) (() => {
385
386
  })();
386
387
 
387
388
  // Loaded after the DOM is ready: initialize now.
388
- if (document.readyState !== 'loading') { window.basecoat.initAll(); window.basecoat.start(); }
389
+ if (document.readyState !== 'loading') { window.auvyx.initAll(); window.auvyx.start(); }
package/dist/ui/menu.js CHANGED
@@ -1,4 +1,4 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
2
  (() => {
3
3
  // ../elements/src/menu.js
4
4
  (() => {
@@ -1,6 +1,6 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
2
- // Basecoat core, once per page.
3
- if (!window.basecoat) (() => {
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
+ // Shared core, once per page.
3
+ if (!window.auvyx) (() => {
4
4
  const componentRegistry = {};
5
5
  let observer = null;
6
6
 
@@ -48,7 +48,7 @@ if (!window.basecoat) (() => {
48
48
  try {
49
49
  element._destroy();
50
50
  } catch (error) {
51
- console.error('Failed to destroy Basecoat component:', error);
51
+ console.error('Failed to destroy component:', error);
52
52
  }
53
53
  }
54
54
 
@@ -156,7 +156,8 @@ if (!window.basecoat) (() => {
156
156
 
157
157
  const getTheme = () => document.documentElement.classList.contains('dark') ? 'dark' : 'light';
158
158
 
159
- window.basecoat = {
159
+ // window.auvyx is the API; window.auvyx is the same object, kept as an alias.
160
+ window.auvyx = window.basecoat = {
160
161
  register: registerComponent,
161
162
  init: initRegisteredComponent,
162
163
  initAll: initAllRegisteredComponents,
@@ -259,10 +260,10 @@ if (!window.basecoat) (() => {
259
260
  popoverComponent.dispatchEvent(new CustomEvent('basecoat:initialized'));
260
261
  };
261
262
 
262
- if (window.basecoat) {
263
- window.basecoat.register('popover', '.popover:not([data-popover-initialized]):not(:has(> [data-popover][popover]))', initPopover);
263
+ if (window.auvyx) {
264
+ window.auvyx.register('popover', '.popover:not([data-popover-initialized]):not(:has(> [data-popover][popover]))', initPopover);
264
265
  }
265
266
  })();
266
267
 
267
268
  // Loaded after the DOM is ready: initialize now.
268
- if (document.readyState !== 'loading') { window.basecoat.initAll(); window.basecoat.start(); }
269
+ if (document.readyState !== 'loading') { window.auvyx.initAll(); window.auvyx.start(); }
@@ -1,4 +1,4 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
2
  (() => {
3
3
  // ../elements/src/resizable.js
4
4
  var AuvyxResizable = class extends HTMLElement {
package/dist/ui/select.js CHANGED
@@ -1,6 +1,6 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
2
- // Basecoat core, once per page.
3
- if (!window.basecoat) (() => {
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
+ // Shared core, once per page.
3
+ if (!window.auvyx) (() => {
4
4
  const componentRegistry = {};
5
5
  let observer = null;
6
6
 
@@ -48,7 +48,7 @@ if (!window.basecoat) (() => {
48
48
  try {
49
49
  element._destroy();
50
50
  } catch (error) {
51
- console.error('Failed to destroy Basecoat component:', error);
51
+ console.error('Failed to destroy component:', error);
52
52
  }
53
53
  }
54
54
 
@@ -156,7 +156,8 @@ if (!window.basecoat) (() => {
156
156
 
157
157
  const getTheme = () => document.documentElement.classList.contains('dark') ? 'dark' : 'light';
158
158
 
159
- window.basecoat = {
159
+ // window.auvyx is the API; window.auvyx is the same object, kept as an alias.
160
+ window.auvyx = window.basecoat = {
160
161
  register: registerComponent,
161
162
  init: initRegisteredComponent,
162
163
  initAll: initAllRegisteredComponents,
@@ -633,8 +634,8 @@ if (!window.basecoat) (() => {
633
634
  root.dispatchEvent(new CustomEvent('basecoat:initialized'));
634
635
  };
635
636
 
636
- if (window.basecoat) {
637
- window.basecoat.register('select', {
637
+ if (window.auvyx) {
638
+ window.auvyx.register('select', {
638
639
  selector: 'div.select:not([data-select-initialized])',
639
640
  init: initSelect,
640
641
  refresh: refreshSelect,
@@ -643,4 +644,4 @@ if (!window.basecoat) (() => {
643
644
  })();
644
645
 
645
646
  // Loaded after the DOM is ready: initialize now.
646
- if (document.readyState !== 'loading') { window.basecoat.initAll(); window.basecoat.start(); }
647
+ if (document.readyState !== 'loading') { window.auvyx.initAll(); window.auvyx.start(); }
@@ -1,6 +1,6 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
2
- // Basecoat core, once per page.
3
- if (!window.basecoat) (() => {
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
+ // Shared core, once per page.
3
+ if (!window.auvyx) (() => {
4
4
  const componentRegistry = {};
5
5
  let observer = null;
6
6
 
@@ -48,7 +48,7 @@ if (!window.basecoat) (() => {
48
48
  try {
49
49
  element._destroy();
50
50
  } catch (error) {
51
- console.error('Failed to destroy Basecoat component:', error);
51
+ console.error('Failed to destroy component:', error);
52
52
  }
53
53
  }
54
54
 
@@ -156,7 +156,8 @@ if (!window.basecoat) (() => {
156
156
 
157
157
  const getTheme = () => document.documentElement.classList.contains('dark') ? 'dark' : 'light';
158
158
 
159
- window.basecoat = {
159
+ // window.auvyx is the API; window.auvyx is the same object, kept as an alias.
160
+ window.auvyx = window.basecoat = {
160
161
  register: registerComponent,
161
162
  init: initRegisteredComponent,
162
163
  initAll: initAllRegisteredComponents,
@@ -278,10 +279,10 @@ if (!window.basecoat) (() => {
278
279
  sidebar.toggle();
279
280
  });
280
281
 
281
- if (window.basecoat) {
282
- window.basecoat.register('sidebar', '.sidebar', initSidebar);
282
+ if (window.auvyx) {
283
+ window.auvyx.register('sidebar', '.sidebar', initSidebar);
283
284
  }
284
285
  })();
285
286
 
286
287
  // Loaded after the DOM is ready: initialize now.
287
- if (document.readyState !== 'loading') { window.basecoat.initAll(); window.basecoat.start(); }
288
+ if (document.readyState !== 'loading') { window.auvyx.initAll(); window.auvyx.start(); }
package/dist/ui/slider.js CHANGED
@@ -1,6 +1,6 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
2
- // Basecoat core, once per page.
3
- if (!window.basecoat) (() => {
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
+ // Shared core, once per page.
3
+ if (!window.auvyx) (() => {
4
4
  const componentRegistry = {};
5
5
  let observer = null;
6
6
 
@@ -48,7 +48,7 @@ if (!window.basecoat) (() => {
48
48
  try {
49
49
  element._destroy();
50
50
  } catch (error) {
51
- console.error('Failed to destroy Basecoat component:', error);
51
+ console.error('Failed to destroy component:', error);
52
52
  }
53
53
  }
54
54
 
@@ -156,7 +156,8 @@ if (!window.basecoat) (() => {
156
156
 
157
157
  const getTheme = () => document.documentElement.classList.contains('dark') ? 'dark' : 'light';
158
158
 
159
- window.basecoat = {
159
+ // window.auvyx is the API; window.auvyx is the same object, kept as an alias.
160
+ window.auvyx = window.basecoat = {
160
161
  register: registerComponent,
161
162
  init: initRegisteredComponent,
162
163
  initAll: initAllRegisteredComponents,
@@ -197,10 +198,10 @@ if (!window.basecoat) (() => {
197
198
  element.dataset.rangeInitialized = 'true';
198
199
  }
199
200
 
200
- if (window.basecoat) {
201
- window.basecoat.register('range', 'input[type="range"]:not([data-range-initialized])', initRange);
201
+ if (window.auvyx) {
202
+ window.auvyx.register('range', 'input[type="range"]:not([data-range-initialized])', initRange);
202
203
  }
203
204
  })();
204
205
 
205
206
  // Loaded after the DOM is ready: initialize now.
206
- if (document.readyState !== 'loading') { window.basecoat.initAll(); window.basecoat.start(); }
207
+ if (document.readyState !== 'loading') { window.auvyx.initAll(); window.auvyx.start(); }
package/dist/ui/tabs.js CHANGED
@@ -1,6 +1,6 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
2
- // Basecoat core, once per page.
3
- if (!window.basecoat) (() => {
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
+ // Shared core, once per page.
3
+ if (!window.auvyx) (() => {
4
4
  const componentRegistry = {};
5
5
  let observer = null;
6
6
 
@@ -48,7 +48,7 @@ if (!window.basecoat) (() => {
48
48
  try {
49
49
  element._destroy();
50
50
  } catch (error) {
51
- console.error('Failed to destroy Basecoat component:', error);
51
+ console.error('Failed to destroy component:', error);
52
52
  }
53
53
  }
54
54
 
@@ -156,7 +156,8 @@ if (!window.basecoat) (() => {
156
156
 
157
157
  const getTheme = () => document.documentElement.classList.contains('dark') ? 'dark' : 'light';
158
158
 
159
- window.basecoat = {
159
+ // window.auvyx is the API; window.auvyx is the same object, kept as an alias.
160
+ window.auvyx = window.basecoat = {
160
161
  register: registerComponent,
161
162
  init: initRegisteredComponent,
162
163
  initAll: initAllRegisteredComponents,
@@ -275,8 +276,8 @@ if (!window.basecoat) (() => {
275
276
  root.dispatchEvent(new CustomEvent('basecoat:initialized'));
276
277
  };
277
278
 
278
- if (window.basecoat) {
279
- window.basecoat.register('tabs', {
279
+ if (window.auvyx) {
280
+ window.auvyx.register('tabs', {
280
281
  selector: '.tabs:not([data-tabs-initialized])',
281
282
  init: initTabs,
282
283
  refresh: refreshTabs,
@@ -285,4 +286,4 @@ if (!window.basecoat) (() => {
285
286
  })();
286
287
 
287
288
  // Loaded after the DOM is ready: initialize now.
288
- if (document.readyState !== 'loading') { window.basecoat.initAll(); window.basecoat.start(); }
289
+ if (document.readyState !== 'loading') { window.auvyx.initAll(); window.auvyx.start(); }
package/dist/ui/toast.js CHANGED
@@ -1,6 +1,6 @@
1
- /* @auvyx/ui v0.1.0 | MIT | based on Basecoat (MIT) */
2
- // Basecoat core, once per page.
3
- if (!window.basecoat) (() => {
1
+ /* @auvyx/ui v0.1.2 | MIT License | see LICENSE */
2
+ // Shared core, once per page.
3
+ if (!window.auvyx) (() => {
4
4
  const componentRegistry = {};
5
5
  let observer = null;
6
6
 
@@ -48,7 +48,7 @@ if (!window.basecoat) (() => {
48
48
  try {
49
49
  element._destroy();
50
50
  } catch (error) {
51
- console.error('Failed to destroy Basecoat component:', error);
51
+ console.error('Failed to destroy component:', error);
52
52
  }
53
53
  }
54
54
 
@@ -156,7 +156,8 @@ if (!window.basecoat) (() => {
156
156
 
157
157
  const getTheme = () => document.documentElement.classList.contains('dark') ? 'dark' : 'light';
158
158
 
159
- window.basecoat = {
159
+ // window.auvyx is the API; window.auvyx is the same object, kept as an alias.
160
+ window.auvyx = window.basecoat = {
160
161
  register: registerComponent,
161
162
  init: initRegisteredComponent,
162
163
  initAll: initAllRegisteredComponents,
@@ -368,11 +369,11 @@ if (!window.basecoat) (() => {
368
369
  return template.content.firstChild;
369
370
  }
370
371
 
371
- if (window.basecoat) {
372
- window.basecoat.register('toaster', '#toaster:not([data-toaster-initialized])', initToaster);
373
- window.basecoat.register('toast', '.toast:not([data-toast-initialized])', initToast);
372
+ if (window.auvyx) {
373
+ window.auvyx.register('toaster', '#toaster:not([data-toaster-initialized])', initToaster);
374
+ window.auvyx.register('toast', '.toast:not([data-toast-initialized])', initToast);
374
375
  }
375
376
  })();
376
377
 
377
378
  // Loaded after the DOM is ready: initialize now.
378
- if (document.readyState !== 'loading') { window.basecoat.initAll(); window.basecoat.start(); }
379
+ if (document.readyState !== 'loading') { window.auvyx.initAll(); window.auvyx.start(); }