@vanelsas/baredom 0.1.2-alpha → 0.1.8-alpha
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/CHANGELOG.md +54 -0
- package/README.md +144 -1
- package/dist/x-date-picker.js +16 -16
- package/package.json +225 -236
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,60 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to BareDome will be documented in this file.
|
|
4
4
|
|
|
5
|
+
## [0.1.8-alpha] - 2026-03-27
|
|
6
|
+
|
|
7
|
+
## Fixed
|
|
8
|
+
|
|
9
|
+
- Updates release.yml
|
|
10
|
+
|
|
11
|
+
## [0.1.7-alpha] - 2026-03-27
|
|
12
|
+
|
|
13
|
+
## Fixed
|
|
14
|
+
|
|
15
|
+
- Updates package.json
|
|
16
|
+
- Updates release.yml
|
|
17
|
+
|
|
18
|
+
## [0.1.6-alpha] - 2026-03-27
|
|
19
|
+
|
|
20
|
+
## Fixed
|
|
21
|
+
|
|
22
|
+
- Updates package.json
|
|
23
|
+
|
|
24
|
+
## [0.1.5-alpha] - 2026-03-27
|
|
25
|
+
|
|
26
|
+
## Fixed
|
|
27
|
+
|
|
28
|
+
- Updates package.json
|
|
29
|
+
|
|
30
|
+
## [0.1.4-alpha] - 2026-03-27
|
|
31
|
+
|
|
32
|
+
## Fixed
|
|
33
|
+
|
|
34
|
+
- renames Release in yml to release
|
|
35
|
+
|
|
36
|
+
## [0.1.3-alpha] - 2026-03-27
|
|
37
|
+
|
|
38
|
+
## Fixed
|
|
39
|
+
|
|
40
|
+
- Fixes Release with OIDC
|
|
41
|
+
|
|
42
|
+
## [0.1.2-alpha] - 2026-03-27
|
|
43
|
+
|
|
44
|
+
## Fixed
|
|
45
|
+
|
|
46
|
+
- Release with OIDC
|
|
47
|
+
|
|
48
|
+
## [0.1.1-alpha] - 2026-03-27
|
|
49
|
+
|
|
50
|
+
## Fixed
|
|
51
|
+
|
|
52
|
+
- Fixes x-date-picker disabled
|
|
53
|
+
- Fixes loading of logo in darkmode/lightmode in main demo
|
|
54
|
+
|
|
55
|
+
## Adds
|
|
56
|
+
|
|
57
|
+
- Pure HTML/JS demo + README.md
|
|
58
|
+
|
|
5
59
|
## [0.1.0-alpha] - 2026-03-25
|
|
6
60
|
|
|
7
61
|
Initial alpha release of BareDome — 54 native Web Components built with ClojureScript and compiled to zero-dependency ESM modules.
|
package/README.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# BareDOM
|
|
2
2
|
|
|
3
|
+
<p align="left">
|
|
4
|
+
<picture>
|
|
5
|
+
<source media="(prefers-color-scheme: dark)" srcset="public/assets/baredom_darkmode.svg">
|
|
6
|
+
<source media="(prefers-color-scheme: light)" srcset="public/assets/baredom_lightmode.svg">
|
|
7
|
+
<img alt="Baredom Logo" src="apublic/assets/baredom_lightmode.svg" width="120">
|
|
8
|
+
</picture>
|
|
9
|
+
</p>
|
|
10
|
+
|
|
3
11
|
**Native web components. Zero runtime. No framework required.**
|
|
4
12
|
|
|
5
13
|
[](https://www.npmjs.com/package/@vanelsas/baredom)
|
|
@@ -52,7 +60,7 @@ BareDOM has been created using Claude Code. The CLAUDE.md file is added to the r
|
|
|
52
60
|
```json
|
|
53
61
|
{
|
|
54
62
|
"dependencies": {
|
|
55
|
-
"@vanelsas/baredom": "^0.1.
|
|
63
|
+
"@vanelsas/baredom": "^0.1.0-alpha"
|
|
56
64
|
}
|
|
57
65
|
}
|
|
58
66
|
```
|
|
@@ -63,6 +71,94 @@ Then run `npm install`.
|
|
|
63
71
|
|
|
64
72
|
---
|
|
65
73
|
|
|
74
|
+
## Using with plain HTML (no build step)
|
|
75
|
+
|
|
76
|
+
BareDOM components are standard ES modules. Load them directly in any HTML page using a CDN — no npm, no bundler, no framework required.
|
|
77
|
+
|
|
78
|
+
### Import and initialise
|
|
79
|
+
|
|
80
|
+
```html
|
|
81
|
+
<!DOCTYPE html>
|
|
82
|
+
<html lang="en">
|
|
83
|
+
<head>
|
|
84
|
+
<meta charset="UTF-8">
|
|
85
|
+
<title>My App</title>
|
|
86
|
+
</head>
|
|
87
|
+
<body>
|
|
88
|
+
|
|
89
|
+
<x-button variant="primary">Hello</x-button>
|
|
90
|
+
<x-alert type="success" text="It works!"></x-alert>
|
|
91
|
+
|
|
92
|
+
<script type="module">
|
|
93
|
+
import { init as initButton } from "https://esm.sh/@vanelsas/baredom/x-button";
|
|
94
|
+
import { init as initAlert } from "https://esm.sh/@vanelsas/baredom/x-alert";
|
|
95
|
+
|
|
96
|
+
initButton();
|
|
97
|
+
initAlert();
|
|
98
|
+
</script>
|
|
99
|
+
|
|
100
|
+
</body>
|
|
101
|
+
</html>
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
`<script type="module">` is required because BareDOM components are ES modules. Each `init()` call registers the custom element with the browser. Only the components you import are loaded — unused components cost nothing.
|
|
105
|
+
|
|
106
|
+
### Set attributes in HTML
|
|
107
|
+
|
|
108
|
+
Every attribute can be set directly in markup:
|
|
109
|
+
|
|
110
|
+
```html
|
|
111
|
+
<x-button variant="secondary" size="sm" disabled>Cancel</x-button>
|
|
112
|
+
<x-checkbox checked></x-checkbox>
|
|
113
|
+
<x-alert type="warning" text="Check your input." dismissible></x-alert>
|
|
114
|
+
<x-progress value="65" max="100"></x-progress>
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
Boolean attributes follow the HTML convention: presence means `true`, absence means `false`.
|
|
118
|
+
|
|
119
|
+
### Handle events
|
|
120
|
+
|
|
121
|
+
```html
|
|
122
|
+
<x-button id="btn" variant="primary">Click me</x-button>
|
|
123
|
+
<x-tabs id="tabs" value="home">
|
|
124
|
+
<x-tab value="home">Home</x-tab>
|
|
125
|
+
<x-tab value="settings">Settings</x-tab>
|
|
126
|
+
</x-tabs>
|
|
127
|
+
|
|
128
|
+
<script type="module">
|
|
129
|
+
import { init as initButton } from "https://esm.sh/@vanelsas/baredom/x-button";
|
|
130
|
+
import { init as initTabs } from "https://esm.sh/@vanelsas/baredom/x-tabs";
|
|
131
|
+
import { init as initTab } from "https://esm.sh/@vanelsas/baredom/x-tab";
|
|
132
|
+
|
|
133
|
+
initButton(); initTabs(); initTab();
|
|
134
|
+
|
|
135
|
+
document.getElementById("btn").addEventListener("click", () => {
|
|
136
|
+
console.log("button clicked");
|
|
137
|
+
});
|
|
138
|
+
|
|
139
|
+
document.getElementById("tabs").addEventListener("value-change", e => {
|
|
140
|
+
console.log("active tab:", e.detail.value);
|
|
141
|
+
});
|
|
142
|
+
</script>
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
Custom events carry a `detail` payload — check the individual component docs for the event name and `detail` shape.
|
|
146
|
+
|
|
147
|
+
### Theme with CSS custom properties
|
|
148
|
+
|
|
149
|
+
```html
|
|
150
|
+
<style>
|
|
151
|
+
:root {
|
|
152
|
+
--x-button-radius: 4px;
|
|
153
|
+
--x-button-bg-primary: #0a5c99;
|
|
154
|
+
}
|
|
155
|
+
</style>
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
CSS custom properties cascade normally into the open Shadow DOM. No JavaScript required for theming.
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
66
162
|
## Usage
|
|
67
163
|
|
|
68
164
|
### 1. Register components
|
|
@@ -419,6 +515,53 @@ See [`bare-demo/README.md`](./bare-demo/README.md) for a full walkthrough of the
|
|
|
419
515
|
|
|
420
516
|
---
|
|
421
517
|
|
|
518
|
+
## bare-reagent-demo — Reagent usage example
|
|
519
|
+
|
|
520
|
+
The `bare-reagent-demo/` folder is visually identical to `bare-demo` but replaces the custom hiccup renderer with [Reagent](https://reagent-project.github.io/) — a minimalist ClojureScript wrapper around React. It demonstrates the integration patterns and trade-offs that arise when pairing a virtual-DOM framework with native Custom Elements.
|
|
521
|
+
|
|
522
|
+
The key differences from `bare-demo`:
|
|
523
|
+
|
|
524
|
+
- **`reagent.core/atom`** drives reactivity. Any component that dereferences a ratom with `@` re-renders automatically — no `add-watch` or manual render trigger required.
|
|
525
|
+
- **Standard events** (`:on-click`) work transparently through React's synthetic event system.
|
|
526
|
+
- **Custom events** (`x-modal-dismiss`, `toggle`) are not handled by React and must be wired imperatively. The demo uses `reagent/create-class` lifecycle hooks (`component-did-mount` / `component-will-unmount`) and `rdom/dom-node` to attach and clean up native event listeners on the real DOM element.
|
|
527
|
+
|
|
528
|
+
**Run it:**
|
|
529
|
+
|
|
530
|
+
```bash
|
|
531
|
+
cd bare-reagent-demo
|
|
532
|
+
npm install
|
|
533
|
+
npm start
|
|
534
|
+
```
|
|
535
|
+
|
|
536
|
+
Then open `http://localhost:8002`.
|
|
537
|
+
|
|
538
|
+
See [`bare-reagent-demo/README.md`](./bare-reagent-demo/README.md) for a full code walkthrough, the custom-event workaround, and a side-by-side comparison with `bare-demo`.
|
|
539
|
+
|
|
540
|
+
---
|
|
541
|
+
|
|
542
|
+
## bare-html — HTML/JS only demo
|
|
543
|
+
|
|
544
|
+
The `bare-html/` folder contains the same demo — navbar, sidebar, modal, and event log — written entirely in plain HTML and JavaScript. There is no ClojureScript, no build step, and no bundler. Components are loaded by importing their pre-built ES modules directly from the `dist/` folder using a `<script type="module">` tag.
|
|
545
|
+
|
|
546
|
+
The implementation uses three ideas:
|
|
547
|
+
|
|
548
|
+
- **Declarative HTML markup.** All components are written as custom element tags in the HTML source. Attributes are set directly in markup or via `setAttribute` / `removeAttribute` from JavaScript.
|
|
549
|
+
- **A plain state object and a `render()` function.** A simple JS object holds `sidebarOpen`, `modalOpen`, and `activeNav`. The `render()` function reads this object and reconciles attributes — open/close state is a single `setAttribute` or `removeAttribute` call.
|
|
550
|
+
- **Native event listeners.** `x-button` fires a `press` event; `x-sidebar` fires `toggle` with `detail.open`; `x-modal` fires `x-modal-dismiss` on Escape or backdrop click. All are wired with standard `addEventListener`.
|
|
551
|
+
|
|
552
|
+
**Run it:**
|
|
553
|
+
|
|
554
|
+
```bash
|
|
555
|
+
# From the project root
|
|
556
|
+
python3 -m http.server 8000
|
|
557
|
+
```
|
|
558
|
+
|
|
559
|
+
Then open `http://localhost:8000/bare-html/demo.html`. The demo must be served over HTTP — ES module imports are blocked by browsers on `file://` URLs.
|
|
560
|
+
|
|
561
|
+
See [`bare-html/README.md`](./bare-html/README.md) for a full walkthrough and a comparison with `bare-demo`.
|
|
562
|
+
|
|
563
|
+
---
|
|
564
|
+
|
|
422
565
|
## Building from Source
|
|
423
566
|
|
|
424
567
|
BareDOM is authored in ClojureScript and compiled with [shadow-cljs](https://shadow-cljs.github.io/docs/UsersGuide.html).
|
package/dist/x-date-picker.js
CHANGED
|
@@ -12,22 +12,22 @@ c.textContent=h);if(!$APP.n($APP.l(a,"__xDatePickerWeekdaysDone")))for(a.__xDate
|
|
|
12
12
|
var m=wC("button"),q=UB(k),r=k.getUTCDate(),u=zC(k,b);k=CC(k,b);var w=$APP.M(k);k=$APP.I(w,$APP.Jh);var z=$APP.I(w,AC);w=$APP.I(w,BC);m.setAttribute("part","day");m.setAttribute("type","button");m.setAttribute("data-iso",q);m.setAttribute("data-outside",$APP.n(a)?"false":"true");m.setAttribute("data-disabled",$APP.n(u)?"true":"false");m.setAttribute("data-selected",$APP.n(k)?"true":"false");m.setAttribute("data-in-range",$APP.n(z)?"true":"false");m.setAttribute("data-range-edge",$APP.n(w)?"true":
|
|
13
13
|
"false");$APP.n(u)&&m.setAttribute("disabled","");m.textContent=""+$APP.S.g(r);d.appendChild(m);f+=1}else if(a=$APP.v(e))e=a,$APP.yc(e)?(c=$APP.ob(e),e=$APP.pb(e),a=c,h=$APP.B(c),c=a):(a=$APP.x(e),a=$APP.M(a),k=$APP.I(a,cC),a=$APP.I(a,uC),c=wC("button"),h=UB(k),f=k.getUTCDate(),m=zC(k,b),k=CC(k,b),r=$APP.M(k),k=$APP.I(r,$APP.Jh),q=$APP.I(r,AC),r=$APP.I(r,BC),c.setAttribute("part","day"),c.setAttribute("type","button"),c.setAttribute("data-iso",h),c.setAttribute("data-outside",$APP.n(a)?"false":"true"),
|
|
14
14
|
c.setAttribute("data-disabled",$APP.n(m)?"true":"false"),c.setAttribute("data-selected",$APP.n(k)?"true":"false"),c.setAttribute("data-in-range",$APP.n(q)?"true":"false"),c.setAttribute("data-range-edge",$APP.n(r)?"true":"false"),$APP.n(m)&&c.setAttribute("disabled",""),c.textContent=""+$APP.S.g(f),d.appendChild(c),e=$APP.y(e),c=null,h=0),f=0;else{d=null;break a}d=void 0}else d=null;return d}return null},EC=function(a){var b=$APP.l(a,"__xDatePickerRefs");b=$APP.n(b)?$APP.l(b,"input"):null;var c=$APP.l(a,
|
|
15
|
-
"__xDatePickerState");c=$APP.n(c)?$APP.l(c,"disp"):null;a=$APP.l(a,"__xDatePickerFocused");return $APP.n($APP.n(b)?$APP.p(a):b)?b.value=$APP.n(c)?c:"":null},FC=function(a){var b=$APP.l(a,"__xDatePickerRefs");if($APP.n(b)){
|
|
16
|
-
|
|
17
|
-
reason:"click"},f=xC(a,"x-date-picker-change-request",!0,e);if($APP.n(f.defaultPrevented))return null;if($APP.D.h(d,hC))return GC(a,b),yC(a),FC(a),xC(a,"x-date-picker-change",!1,e),$APP.n(a.hasAttribute("close-on-select"))?(a.removeAttribute("open"),FC(a)):null;d=function(){var r=$APP.l(a,"__xDatePickerRangeStep");return $APP.n(r)?r:0}();f=qC.g(c);sC.g(c);if($APP.D.h(d,0))a.setAttribute("start",
|
|
18
|
-
f);if($APP.n(function(){var r=k>0;return r?r:$APP.n(h)?k===0:h}())){var m=$APP.n(fC.g(c))?WB(f,b)<0?f:b:f,q=$APP.n(fC.g(c))?WB(f,b)>0?f:b:b;a.setAttribute("start",UB(m));a.setAttribute("end",UB(q));a.__xDatePickerRangeStep=0;$APP.n(function(){var r=a.hasAttribute("close-on-select");return $APP.n(r)?m!=null&&q!=null:r}())&&a.removeAttribute("open")}else a.setAttribute("start",UB(b)),a.removeAttribute("end"),
|
|
19
|
-
1;yC(a);FC(a);return xC(a,"x-date-picker-change",!1,e)},IC=function(a,b){var c=$APP.l(a,"__xDatePickerRefs");c=$APP.n(c)?$APP.l(c,"input"):null;c=$APP.n(c)?c.value:null;var d=$APP.l(a,"__xDatePickerState");d=$APP.n(d)?$APP.l(d,"canon"):null;var e=$APP.fi.g(d);xC(a,"x-date-picker-input",!1,{value:c});if($APP.D.h(e,hC)){if(c=dC(c),d=$APP.M(c),c=$APP.I(d,bC),d=$APP.I(d,cC),$APP.n(c)){c=xC(a,
|
|
20
|
-
FC(a);return xC(a,"x-date-picker-change",!1,{iso:UB(d),reason:b})}}else if(d=new $APP.P(null,1,[$APP.ph,$APP.ph.g(d)],null),d=$APP.M(d),d=$APP.I(d,$APP.ph),d=typeof d==="string"&&d.length>0?d:" - ",c=RB(c),c==null?c=new $APP.P(null,3,[bC,!1,$APP.zi,null,$APP.uh,null],null):(e=c.indexOf(d),e<0?(c=dC(c),d=$APP.M(c),c=$APP.I(d,bC),d=$APP.I(d,cC),c=new $APP.P(null,3,[bC,c,$APP.zi,d,$APP.uh,
|
|
21
|
-
null&&d!=null,$APP.zi,c,$APP.uh,d],null))),e=$APP.M(c),c=$APP.I(e,bC),d=$APP.I(e,$APP.zi),e=$APP.I(e,$APP.uh),$APP.n(c)){c=xC(a,"x-date-picker-change-request",!0,{"start-iso":UB(d),"end-iso":UB(e),reason:b});if($APP.n(c.defaultPrevented))return null;a.setAttribute("start",UB(d));a.setAttribute("end",UB(e));a.__xDatePickerRangeStep=0;yC(a);FC(a);return xC(a,"x-date-picker-change",!1,{"start-iso":UB(d),
|
|
22
|
-
|
|
23
|
-
null:LC(a):null}function c(E){return E.preventDefault()}function d(E){E=E.target.closest("button[data-iso]");$APP.n($APP.n(E)?$APP.p(E.hasAttribute("disabled")):E)?(E=E.getAttribute("data-iso"),E=VB(E),E=$APP.n(E)?HC(a,E):null):E=null;return E}function e(E){return NC(a,E)}function f(E){return NC(a,E)}function h(){if($APP.n(a.hasAttribute("open")))var E=LC(a);else $APP.n(a.hasAttribute("open"))?E=null:(a.setAttribute("open",""),E=DC(a));return E}
|
|
24
|
-
return EC(a)}function m(){a.__xDatePickerFocused=!0}function q(E){var Q=E.key;$APP.D.h(Q,"Enter")?(E.preventDefault(),E=IC(a,"keyboard")):E=$APP.D.h(Q,"Escape")?LC(a):null;return E}function r(){var E=$APP.l(a,"__xDatePickerRefs");E=$APP.n(E)?$APP.l(E,"input"):null;a.__xDatePickerDisplay=$APP.n(E)?E.value:null;return xC(a,"x-date-picker-input",!1,{value:$APP.n(E)?E.value:null})}var u=$APP.l(a,"__xDatePickerRefs"),w=$APP.l(u,"input"),z=$APP.l(u,"btn"),
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
"prev"));f.removeEventListener("click",$APP.l(a,"next"));h.removeEventListener("click",$APP.l(a,"grid"));b.removeEventListener("mousedown",$APP.l(a,"pop-md"));return document.removeEventListener("pointerdown",$APP.l(a,"doc-click"),!0)}return null},QC=function(a,b,c){Object.defineProperty(a,b,{configurable:!0,enumerable:!0,get:function(){var d=this.getAttribute(c);return $APP.n(d)?d:null},set:function(d){return typeof d==="string"&&$APP.N(d,"")?this.setAttribute(c,
|
|
28
|
-
function(a,b,c){Object.defineProperty(a,b,{configurable:!0,enumerable:!0,get:function(){return this.hasAttribute(c)},set:function(d){return $APP.n(d)?this.setAttribute(c,""):this.removeAttribute(c)}})},SC=function(a){a.focus=function(){var b=$APP.l(this,"__xDatePickerRefs");b=$APP.n(b)?$APP.l(b,"input"):null;return $APP.n(b)?b.focus():null};a.commit=function(){return IC(this,"programmatic")};a.clear=function(){var b=$APP.l(this,"__xDatePickerState");$APP.D.h($APP.fi.g($APP.n(b)
|
|
29
|
-
null),hC)?this.removeAttribute("value"):(this.removeAttribute("start"),this.removeAttribute("end"));yC(this);return FC(this)}},UC=function(){function a(){return Reflect.construct(HTMLElement,[],$APP.Ra(b))}var b=new $APP.Dd;$APP.Ed(b,a);var c=Object.create(HTMLElement.prototype);Object.setPrototypeOf(a,HTMLElement);c.constructor=a;a.observedAttributes=TC;c.connectedCallback=function(){if(!$APP.n($APP.l(this,"__xDatePickerRefs"))){var d=this.attachShadow({mode:"open"}),e=wC("style"),
|
|
30
|
-
wC("input"),k=wC("button"),m=wC("div"),q=wC("div"),r=wC("button"),u=wC("div"),w=wC("button"),z=wC("div"),A=wC("div"),C=wC("div");e.textContent=":host{display:block;color-scheme:light dark;}[part\x3dcontainer]{position:relative;display:flex;align-items:stretch;gap:8px;width:100%;}[part\x3dinput]{flex:1;min-width:0;appearance:none;box-sizing:border-box;border:1px solid var(--x-date-picker-border,#cbd5e1);border-radius:var(--x-date-picker-radius,8px);padding:8px 12px;font-size:0.9375rem;background:var(--x-date-picker-input-bg,#fff);color:var(--x-date-picker-text,inherit);outline:none;}[part\x3dinput]:focus{border-color:var(--x-date-picker-focus,#60a5fa);box-shadow:0 0 0 3px rgba(96,165,250,0.25);}[part\x3dinput][disabled]{opacity:0.5;cursor:default;}[part\x3dinput]::placeholder{color:var(--x-date-picker-placeholder,#94a3b8);}[part\x3dbtn]{all:unset;cursor:pointer;flex:0 0 auto;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--x-date-picker-border,#cbd5e1);border-radius:var(--x-date-picker-radius,8px);background:var(--x-date-picker-btn-bg,#f8fafc);color:var(--x-date-picker-text,inherit);box-sizing:border-box;}[part\x3dbtn]:hover{background:var(--x-date-picker-btn-hover,#f1f5f9);}[part\x3dbtn]:focus-visible{outline:2px solid var(--x-date-picker-focus,#60a5fa);}[part\x3dpopover]{display:none;position:absolute;z-index:1000;top:calc(100% + 8px);left:0;background:var(--x-date-picker-popover-bg,#fff);border:1px solid var(--x-date-picker-border,#e2e8f0);border-radius:var(--x-date-picker-popover-radius,12px);box-shadow:0 8px 32px rgba(0,0,0,0.12),0 2px 8px rgba(0,0,0,0.06);padding:16px;width:var(--x-date-picker-popover-width,304px);box-sizing:border-box;}:host([open]) [part\x3dpopover]{display:block;}[part\x3dnav]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;}[part\x3dnavbtn]{all:unset;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;color:var(--x-date-picker-text,inherit);}[part\x3dnavbtn]:hover{background:var(--x-date-picker-nav-hover,#f1f5f9);}[part\x3dnavbtn]:focus-visible{outline:2px solid var(--x-date-picker-focus,#60a5fa);}[part\x3dmonthlabel]{font-weight:600;font-size:0.9375rem;}[part\x3dweekdays]{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px;}[part\x3dweekday]{text-align:center;font-size:0.75rem;font-weight:600;color:var(--x-date-picker-weekday,#94a3b8);padding:4px 0;}[part\x3dgrid]{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;}[part\x3dday]{all:unset;cursor:pointer;box-sizing:border-box;display:flex;align-items:center;justify-content:center;height:36px;border-radius:6px;font-size:0.875rem;color:var(--x-date-picker-day-text,inherit);}[part\x3dday]:hover:not([disabled]){background:var(--x-date-picker-day-hover,#f1f5f9);}[part\x3dday]:focus-visible{outline:2px solid var(--x-date-picker-focus,#60a5fa);}[part\x3dday][data-outside\x3dtrue]{opacity:0.4;}[part\x3dday][data-disabled\x3dtrue]{opacity:0.3;cursor:default;pointer-events:none;}[part\x3dday][data-selected\x3dtrue]{background:var(--x-date-picker-selected-bg,#2563eb);color:var(--x-date-picker-selected-text,#fff);font-weight:600;}[part\x3dday][data-in-range\x3dtrue]:not([data-range-edge\x3dtrue]){background:var(--x-date-picker-range-bg,#dbeafe);color:var(--x-date-picker-range-text,#1e40af);border-radius:0;}[part\x3dday][data-range-edge\x3dtrue]{background:var(--x-date-picker-selected-bg,#2563eb);color:var(--x-date-picker-selected-text,#fff);font-weight:600;}[part\x3dsr-status]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}@media (prefers-color-scheme:dark){:host{--x-date-picker-border:#334155;--x-date-picker-input-bg:#0f172a;--x-date-picker-btn-bg:#1e293b;--x-date-picker-btn-hover:#334155;--x-date-picker-popover-bg:#1e293b;--x-date-picker-day-hover:#334155;--x-date-picker-selected-bg:#3b82f6;--x-date-picker-range-bg:#1e3a8a;--x-date-picker-range-text:#93c5fd;--x-date-picker-nav-hover:#334155;}}@media (prefers-reduced-motion:reduce){[part\x3dpopover]{transition:none;}}";
|
|
15
|
+
"__xDatePickerState");c=$APP.n(c)?$APP.l(c,"disp"):null;a=$APP.l(a,"__xDatePickerFocused");return $APP.n($APP.n(b)?$APP.p(a):b)?b.value=$APP.n(c)?c:"":null},FC=function(a){var b=$APP.l(a,"__xDatePickerRefs");if($APP.n(b)){var c=$APP.l(b,"input");b=$APP.l(b,"btn");var d=a.hasAttribute("disabled"),e=a.hasAttribute("readonly"),f=a.getAttribute("placeholder"),h=a.getAttribute("aria-label"),k=a.getAttribute("aria-describedby");$APP.n(b)&&($APP.n(d)?b.setAttribute("disabled",""):b.removeAttribute("disabled"));
|
|
16
|
+
$APP.n(c)&&($APP.n(d)?(c.setAttribute("disabled",""),c.setAttribute("aria-disabled","true")):(c.removeAttribute("disabled"),c.removeAttribute("aria-disabled")),$APP.n(e)&&c.setAttribute("readonly",""),$APP.n(e)||c.removeAttribute("readonly"),$APP.n(f)&&c.setAttribute("placeholder",f),$APP.n(h)&&c.setAttribute("aria-label",h),$APP.n(k)&&c.setAttribute("aria-describedby",k));EC(a);return DC(a)}return null},GC=function(a,b){$APP.n(b)?a.setAttribute("value",UB(b)):a.removeAttribute("value")},HC=function(a,
|
|
17
|
+
b){var c=$APP.l(a,"__xDatePickerState");c=$APP.n(c)?$APP.l(c,"canon"):null;var d=$APP.n(c)?$APP.fi.g(c):null,e={iso:UB(b),reason:"click"},f=xC(a,"x-date-picker-change-request",!0,e);if($APP.n(f.defaultPrevented))return null;if($APP.D.h(d,hC))return GC(a,b),yC(a),FC(a),xC(a,"x-date-picker-change",!1,e),$APP.n(a.hasAttribute("close-on-select"))?(a.removeAttribute("open"),FC(a)):null;d=function(){var r=$APP.l(a,"__xDatePickerRangeStep");return $APP.n(r)?r:0}();f=qC.g(c);sC.g(c);if($APP.D.h(d,0))a.setAttribute("start",
|
|
18
|
+
UB(b)),a.removeAttribute("end"),a.__xDatePickerRangeStep=1;else if($APP.D.h(d,1)){var h=kC.g(c),k=WB(b,f);if($APP.n(function(){var r=k>0;return r?r:$APP.n(h)?k===0:h}())){var m=$APP.n(fC.g(c))?WB(f,b)<0?f:b:f,q=$APP.n(fC.g(c))?WB(f,b)>0?f:b:b;a.setAttribute("start",UB(m));a.setAttribute("end",UB(q));a.__xDatePickerRangeStep=0;$APP.n(function(){var r=a.hasAttribute("close-on-select");return $APP.n(r)?m!=null&&q!=null:r}())&&a.removeAttribute("open")}else a.setAttribute("start",UB(b)),a.removeAttribute("end"),
|
|
19
|
+
a.__xDatePickerRangeStep=1}else a.setAttribute("start",UB(b)),a.removeAttribute("end"),a.__xDatePickerRangeStep=1;yC(a);FC(a);return xC(a,"x-date-picker-change",!1,e)},IC=function(a,b){var c=$APP.l(a,"__xDatePickerRefs");c=$APP.n(c)?$APP.l(c,"input"):null;c=$APP.n(c)?c.value:null;var d=$APP.l(a,"__xDatePickerState");d=$APP.n(d)?$APP.l(d,"canon"):null;var e=$APP.fi.g(d);xC(a,"x-date-picker-input",!1,{value:c});if($APP.D.h(e,hC)){if(c=dC(c),d=$APP.M(c),c=$APP.I(d,bC),d=$APP.I(d,cC),$APP.n(c)){c=xC(a,
|
|
20
|
+
"x-date-picker-change-request",!0,{iso:UB(d),reason:b});if($APP.n(c.defaultPrevented))return null;GC(a,d);yC(a);FC(a);return xC(a,"x-date-picker-change",!1,{iso:UB(d),reason:b})}}else if(d=new $APP.P(null,1,[$APP.ph,$APP.ph.g(d)],null),d=$APP.M(d),d=$APP.I(d,$APP.ph),d=typeof d==="string"&&d.length>0?d:" - ",c=RB(c),c==null?c=new $APP.P(null,3,[bC,!1,$APP.zi,null,$APP.uh,null],null):(e=c.indexOf(d),e<0?(c=dC(c),d=$APP.M(c),c=$APP.I(d,bC),d=$APP.I(d,cC),c=new $APP.P(null,3,[bC,c,$APP.zi,d,$APP.uh,
|
|
21
|
+
null],null)):(d=c.substring(e+d.length).trim(),c=VB(c.substring(0,e).trim()),d=VB(d),c=new $APP.P(null,3,[bC,c!=null&&d!=null,$APP.zi,c,$APP.uh,d],null))),e=$APP.M(c),c=$APP.I(e,bC),d=$APP.I(e,$APP.zi),e=$APP.I(e,$APP.uh),$APP.n(c)){c=xC(a,"x-date-picker-change-request",!0,{"start-iso":UB(d),"end-iso":UB(e),reason:b});if($APP.n(c.defaultPrevented))return null;a.setAttribute("start",UB(d));a.setAttribute("end",UB(e));a.__xDatePickerRangeStep=0;yC(a);FC(a);return xC(a,"x-date-picker-change",!1,{"start-iso":UB(d),
|
|
22
|
+
"end-iso":UB(e),reason:b})}return null},KC=function(a,b){var c=$APP.l(a,"__xDatePickerState"),d=$APP.n(c)?$APP.l(c,"month"):null;if($APP.n(d)){var e=d.getUTCFullYear();d=d.getUTCMonth();b=$APP.D.h(b,JC)?new Date(Date.UTC(e,d+1,1)):new Date(Date.UTC(e,d-1,1));c.month=b;return DC(a)}return null},LC=function(a){return $APP.n(a.hasAttribute("open"))?a.removeAttribute("open"):null},NC=function(a,b){b=b.currentTarget.getAttribute("data-nav");return $APP.D.h(b,"prev")?KC(a,MC):KC(a,JC)},OC=function(a){function b(E){return $APP.n(a.hasAttribute("open"))?
|
|
23
|
+
$APP.n(E.composedPath().some(function(Q){return Q===a}))?null:LC(a):null}function c(E){return E.preventDefault()}function d(E){E=E.target.closest("button[data-iso]");$APP.n($APP.n(E)?$APP.p(E.hasAttribute("disabled")):E)?(E=E.getAttribute("data-iso"),E=VB(E),E=$APP.n(E)?HC(a,E):null):E=null;return E}function e(E){return NC(a,E)}function f(E){return NC(a,E)}function h(){if($APP.n(a.hasAttribute("open")))var E=LC(a);else $APP.n(a.hasAttribute("open"))?E=null:(a.setAttribute("open",""),E=DC(a));return E}
|
|
24
|
+
function k(){a.__xDatePickerFocused=!1;IC(a,"blur");return EC(a)}function m(){a.__xDatePickerFocused=!0}function q(E){var Q=E.key;$APP.D.h(Q,"Enter")?(E.preventDefault(),E=IC(a,"keyboard")):E=$APP.D.h(Q,"Escape")?LC(a):null;return E}function r(){var E=$APP.l(a,"__xDatePickerRefs");E=$APP.n(E)?$APP.l(E,"input"):null;a.__xDatePickerDisplay=$APP.n(E)?E.value:null;return xC(a,"x-date-picker-input",!1,{value:$APP.n(E)?E.value:null})}var u=$APP.l(a,"__xDatePickerRefs"),w=$APP.l(u,"input"),z=$APP.l(u,"btn"),
|
|
25
|
+
A=$APP.l(u,"nav-prev"),C=$APP.l(u,"nav-next"),F=$APP.l(u,"grid");u=$APP.l(u,"popover");w.addEventListener("input",r);w.addEventListener("keydown",q);w.addEventListener("focus",m);w.addEventListener("blur",k);z.addEventListener("click",h);A.addEventListener("click",f);C.addEventListener("click",e);F.addEventListener("click",d);u.addEventListener("mousedown",c);document.addEventListener("pointerdown",b,!0);$APP.ma(a,"__xDatePickerHandlers",{"pop-md":c,keydown:q,grid:d,next:e,blur:k,prev:f,focus:m,input:r,
|
|
26
|
+
btn:h,"doc-click":b})},PC=function(a){var b=$APP.l(a,"__xDatePickerRefs");a=$APP.l(a,"__xDatePickerHandlers");if($APP.n($APP.n(b)?a:b)){var c=$APP.l(b,"input"),d=$APP.l(b,"btn"),e=$APP.l(b,"nav-prev"),f=$APP.l(b,"nav-next"),h=$APP.l(b,"grid");b=$APP.l(b,"popover");c.removeEventListener("input",$APP.l(a,"input"));c.removeEventListener("keydown",$APP.l(a,"keydown"));c.removeEventListener("focus",$APP.l(a,"focus"));c.removeEventListener("blur",$APP.l(a,"blur"));d.removeEventListener("click",$APP.l(a,
|
|
27
|
+
"btn"));e.removeEventListener("click",$APP.l(a,"prev"));f.removeEventListener("click",$APP.l(a,"next"));h.removeEventListener("click",$APP.l(a,"grid"));b.removeEventListener("mousedown",$APP.l(a,"pop-md"));return document.removeEventListener("pointerdown",$APP.l(a,"doc-click"),!0)}return null},QC=function(a,b,c){Object.defineProperty(a,b,{configurable:!0,enumerable:!0,get:function(){var d=this.getAttribute(c);return $APP.n(d)?d:null},set:function(d){return typeof d==="string"&&$APP.N(d,"")?this.setAttribute(c,
|
|
28
|
+
d):this.removeAttribute(c)}})},RC=function(a,b,c){Object.defineProperty(a,b,{configurable:!0,enumerable:!0,get:function(){return this.hasAttribute(c)},set:function(d){return $APP.n(d)?this.setAttribute(c,""):this.removeAttribute(c)}})},SC=function(a){a.focus=function(){var b=$APP.l(this,"__xDatePickerRefs");b=$APP.n(b)?$APP.l(b,"input"):null;return $APP.n(b)?b.focus():null};a.commit=function(){return IC(this,"programmatic")};a.clear=function(){var b=$APP.l(this,"__xDatePickerState");$APP.D.h($APP.fi.g($APP.n(b)?
|
|
29
|
+
$APP.l(b,"canon"):null),hC)?this.removeAttribute("value"):(this.removeAttribute("start"),this.removeAttribute("end"));yC(this);return FC(this)}},UC=function(){function a(){return Reflect.construct(HTMLElement,[],$APP.Ra(b))}var b=new $APP.Dd;$APP.Ed(b,a);var c=Object.create(HTMLElement.prototype);Object.setPrototypeOf(a,HTMLElement);c.constructor=a;a.observedAttributes=TC;c.connectedCallback=function(){if(!$APP.n($APP.l(this,"__xDatePickerRefs"))){var d=this.attachShadow({mode:"open"}),e=wC("style"),
|
|
30
|
+
f=wC("div"),h=wC("input"),k=wC("button"),m=wC("div"),q=wC("div"),r=wC("button"),u=wC("div"),w=wC("button"),z=wC("div"),A=wC("div"),C=wC("div");e.textContent=":host{display:block;color-scheme:light dark;}[part\x3dcontainer]{position:relative;display:flex;align-items:stretch;gap:8px;width:100%;}[part\x3dinput]{flex:1;min-width:0;appearance:none;box-sizing:border-box;border:1px solid var(--x-date-picker-border,#cbd5e1);border-radius:var(--x-date-picker-radius,8px);padding:8px 12px;font-size:0.9375rem;background:var(--x-date-picker-input-bg,#fff);color:var(--x-date-picker-text,inherit);outline:none;}[part\x3dinput]:focus{border-color:var(--x-date-picker-focus,#60a5fa);box-shadow:0 0 0 3px rgba(96,165,250,0.25);}[part\x3dinput][disabled]{opacity:0.5;cursor:default;}[part\x3dbtn][disabled]{opacity:0.5;cursor:default;pointer-events:none;}[part\x3dinput]::placeholder{color:var(--x-date-picker-placeholder,#94a3b8);}[part\x3dbtn]{all:unset;cursor:pointer;flex:0 0 auto;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--x-date-picker-border,#cbd5e1);border-radius:var(--x-date-picker-radius,8px);background:var(--x-date-picker-btn-bg,#f8fafc);color:var(--x-date-picker-text,inherit);box-sizing:border-box;}[part\x3dbtn]:hover{background:var(--x-date-picker-btn-hover,#f1f5f9);}[part\x3dbtn]:focus-visible{outline:2px solid var(--x-date-picker-focus,#60a5fa);}[part\x3dpopover]{display:none;position:absolute;z-index:1000;top:calc(100% + 8px);left:0;background:var(--x-date-picker-popover-bg,#fff);border:1px solid var(--x-date-picker-border,#e2e8f0);border-radius:var(--x-date-picker-popover-radius,12px);box-shadow:0 8px 32px rgba(0,0,0,0.12),0 2px 8px rgba(0,0,0,0.06);padding:16px;width:var(--x-date-picker-popover-width,304px);box-sizing:border-box;}:host([open]) [part\x3dpopover]{display:block;}[part\x3dnav]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;}[part\x3dnavbtn]{all:unset;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;color:var(--x-date-picker-text,inherit);}[part\x3dnavbtn]:hover{background:var(--x-date-picker-nav-hover,#f1f5f9);}[part\x3dnavbtn]:focus-visible{outline:2px solid var(--x-date-picker-focus,#60a5fa);}[part\x3dmonthlabel]{font-weight:600;font-size:0.9375rem;}[part\x3dweekdays]{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px;}[part\x3dweekday]{text-align:center;font-size:0.75rem;font-weight:600;color:var(--x-date-picker-weekday,#94a3b8);padding:4px 0;}[part\x3dgrid]{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;}[part\x3dday]{all:unset;cursor:pointer;box-sizing:border-box;display:flex;align-items:center;justify-content:center;height:36px;border-radius:6px;font-size:0.875rem;color:var(--x-date-picker-day-text,inherit);}[part\x3dday]:hover:not([disabled]){background:var(--x-date-picker-day-hover,#f1f5f9);}[part\x3dday]:focus-visible{outline:2px solid var(--x-date-picker-focus,#60a5fa);}[part\x3dday][data-outside\x3dtrue]{opacity:0.4;}[part\x3dday][data-disabled\x3dtrue]{opacity:0.3;cursor:default;pointer-events:none;}[part\x3dday][data-selected\x3dtrue]{background:var(--x-date-picker-selected-bg,#2563eb);color:var(--x-date-picker-selected-text,#fff);font-weight:600;}[part\x3dday][data-in-range\x3dtrue]:not([data-range-edge\x3dtrue]){background:var(--x-date-picker-range-bg,#dbeafe);color:var(--x-date-picker-range-text,#1e40af);border-radius:0;}[part\x3dday][data-range-edge\x3dtrue]{background:var(--x-date-picker-selected-bg,#2563eb);color:var(--x-date-picker-selected-text,#fff);font-weight:600;}[part\x3dsr-status]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}@media (prefers-color-scheme:dark){:host{--x-date-picker-border:#334155;--x-date-picker-input-bg:#0f172a;--x-date-picker-btn-bg:#1e293b;--x-date-picker-btn-hover:#334155;--x-date-picker-popover-bg:#1e293b;--x-date-picker-day-hover:#334155;--x-date-picker-selected-bg:#3b82f6;--x-date-picker-range-bg:#1e3a8a;--x-date-picker-range-text:#93c5fd;--x-date-picker-nav-hover:#334155;}}@media (prefers-reduced-motion:reduce){[part\x3dpopover]{transition:none;}}";
|
|
31
31
|
f.setAttribute("part","container");h.setAttribute("part","input");h.setAttribute("type","text");h.setAttribute("inputmode","none");h.setAttribute("autocomplete","off");k.setAttribute("part","btn");k.setAttribute("type","button");k.setAttribute("aria-label","Open calendar");k.textContent="\ud83d\udcc5";m.setAttribute("part","popover");m.setAttribute("role","dialog");m.setAttribute("aria-modal","true");m.setAttribute("aria-label","Calendar");q.setAttribute("part","nav");r.setAttribute("part","navbtn");
|
|
32
32
|
r.setAttribute("data-nav","prev");r.setAttribute("type","button");r.setAttribute("aria-label","Previous month");r.textContent="‹";u.setAttribute("part","monthlabel");u.setAttribute("aria-live","polite");w.setAttribute("part","navbtn");w.setAttribute("data-nav","next");w.setAttribute("type","button");w.setAttribute("aria-label","Next month");w.textContent="›";z.setAttribute("part","weekdays");z.setAttribute("aria-hidden","true");A.setAttribute("part","grid");A.setAttribute("role","grid");A.setAttribute("aria-label",
|
|
33
33
|
"Calendar grid");C.setAttribute("part","sr-status");C.setAttribute("aria-live","polite");C.setAttribute("aria-atomic","true");q.appendChild(r);q.appendChild(u);q.appendChild(w);m.appendChild(q);m.appendChild(z);m.appendChild(A);m.appendChild(C);f.appendChild(h);f.appendChild(k);f.appendChild(m);d.appendChild(e);d.appendChild(f);this.__xDatePickerRefs={weekdays:z,grid:A,popover:m,"nav-next":w,"month-label":u,input:h,btn:k,sr:C,"nav-prev":r}}PC(this);OC(this);yC(this);return FC(this)};c.disconnectedCallback=
|
package/package.json
CHANGED
|
@@ -1,275 +1,264 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
"
|
|
4
|
-
|
|
5
|
-
"author": "Alexander van Elsas",
|
|
6
|
-
"license": "MIT",
|
|
7
|
-
"keywords": [
|
|
8
|
-
"web-components",
|
|
9
|
-
"custom-elements",
|
|
10
|
-
"baredom",
|
|
11
|
-
"ui-library",
|
|
12
|
-
"clojurescript",
|
|
13
|
-
"esm",
|
|
14
|
-
"framework-agnostic"
|
|
15
|
-
],
|
|
16
|
-
"repository": {
|
|
17
|
-
"type": "git",
|
|
18
|
-
"url": "https://github.com/vanelsas/baredom.git"
|
|
2
|
+
"description" : "54 native Web Components — stateless, framework-free, zero runtime. Built with ClojureScript, compiled to tree-shakeable ESM.",
|
|
3
|
+
"engines" : {
|
|
4
|
+
"node" : ">=18"
|
|
19
5
|
},
|
|
20
|
-
"
|
|
21
|
-
|
|
22
|
-
"url": "https://github.com/
|
|
6
|
+
"repository" : {
|
|
7
|
+
"type" : "git",
|
|
8
|
+
"url" : "https://github.com/avanelsas/baredom.git"
|
|
23
9
|
},
|
|
24
|
-
"
|
|
25
|
-
|
|
10
|
+
"license" : "MIT",
|
|
11
|
+
"homepage" : "https://github.com/avanelsas/baredom#readme",
|
|
12
|
+
"name" : "@vanelsas/baredom",
|
|
13
|
+
"scripts" : {
|
|
14
|
+
"clean" : "rm -rf dist .shadow-cljs",
|
|
15
|
+
"build" : "npm run clean && npx shadow-cljs release lib",
|
|
16
|
+
"pack:local" : "npm pack",
|
|
17
|
+
"test" : "npx shadow-cljs compile test-karma && npx karma start karma.conf.cjs --single-run"
|
|
26
18
|
},
|
|
27
|
-
"
|
|
28
|
-
|
|
29
|
-
"
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
"exports": {
|
|
38
|
-
"./x-
|
|
39
|
-
"import": "./dist/x-
|
|
40
|
-
"default": "./dist/x-
|
|
41
|
-
},
|
|
42
|
-
"./x-
|
|
43
|
-
"import": "./dist/x-
|
|
44
|
-
"default": "./dist/x-
|
|
45
|
-
},
|
|
46
|
-
"./x-
|
|
47
|
-
"import": "./dist/x-
|
|
48
|
-
"default": "./dist/x-
|
|
49
|
-
},
|
|
50
|
-
"./x-
|
|
51
|
-
"import": "./dist/x-
|
|
52
|
-
"default": "./dist/x-
|
|
53
|
-
},
|
|
54
|
-
"./x-
|
|
55
|
-
"import": "./dist/x-
|
|
56
|
-
"default": "./dist/x-
|
|
57
|
-
},
|
|
58
|
-
"./x-
|
|
59
|
-
"import": "./dist/x-
|
|
60
|
-
"default": "./dist/x-
|
|
61
|
-
},
|
|
62
|
-
"./x-stat": {
|
|
63
|
-
"import": "./dist/x-stat.js",
|
|
64
|
-
"default": "./dist/x-stat.js"
|
|
65
|
-
},
|
|
66
|
-
"./x-
|
|
67
|
-
"import": "./dist/x-
|
|
68
|
-
"default": "./dist/x-
|
|
69
|
-
},
|
|
70
|
-
"./x-
|
|
71
|
-
"import": "./dist/x-
|
|
72
|
-
"default": "./dist/x-
|
|
73
|
-
},
|
|
74
|
-
"./x-
|
|
75
|
-
"import": "./dist/x-
|
|
76
|
-
"default": "./dist/x-
|
|
77
|
-
},
|
|
78
|
-
"./x-
|
|
79
|
-
"import": "./dist/x-
|
|
80
|
-
"default": "./dist/x-
|
|
81
|
-
},
|
|
82
|
-
"./x-
|
|
83
|
-
"import": "./dist/x-
|
|
84
|
-
"default": "./dist/x-
|
|
85
|
-
},
|
|
86
|
-
"./x-
|
|
87
|
-
"import": "./dist/x-
|
|
88
|
-
"default": "./dist/x-
|
|
89
|
-
},
|
|
90
|
-
"./x-
|
|
91
|
-
"import": "./dist/x-
|
|
92
|
-
"default": "./dist/x-
|
|
93
|
-
},
|
|
94
|
-
"./x-
|
|
95
|
-
"import": "./dist/x-
|
|
96
|
-
"default": "./dist/x-
|
|
97
|
-
},
|
|
98
|
-
"./x-
|
|
99
|
-
"import": "./dist/x-
|
|
100
|
-
"default": "./dist/x-
|
|
101
|
-
},
|
|
102
|
-
"./x-
|
|
103
|
-
"import": "./dist/x-
|
|
104
|
-
"default": "./dist/x-
|
|
105
|
-
},
|
|
106
|
-
"./x-
|
|
107
|
-
"import": "./dist/x-
|
|
108
|
-
"default": "./dist/x-
|
|
109
|
-
},
|
|
110
|
-
"./x-
|
|
111
|
-
"import": "./dist/x-
|
|
112
|
-
"default": "./dist/x-
|
|
113
|
-
},
|
|
114
|
-
"./x-
|
|
115
|
-
"import": "./dist/x-
|
|
116
|
-
"default": "./dist/x-
|
|
117
|
-
},
|
|
118
|
-
"./x-
|
|
119
|
-
"import": "./dist/x-
|
|
120
|
-
"default": "./dist/x-
|
|
121
|
-
},
|
|
122
|
-
"./x-
|
|
123
|
-
"import": "./dist/x-
|
|
124
|
-
"default": "./dist/x-
|
|
125
|
-
},
|
|
126
|
-
"./x-
|
|
127
|
-
"import": "./dist/x-
|
|
128
|
-
"default": "./dist/x-
|
|
129
|
-
},
|
|
130
|
-
"./x-divider": {
|
|
131
|
-
"import": "./dist/x-divider.js",
|
|
132
|
-
"default": "./dist/x-divider.js"
|
|
133
|
-
},
|
|
134
|
-
"./x-
|
|
135
|
-
"import": "./dist/x-
|
|
136
|
-
"default": "./dist/x-
|
|
19
|
+
"publishConfig" : {
|
|
20
|
+
"access" : "public",
|
|
21
|
+
"tag" : "alpha"
|
|
22
|
+
},
|
|
23
|
+
"type" : "module",
|
|
24
|
+
"bugs" : {
|
|
25
|
+
"url" : "https://github.com/avanelsas/baredom/issues"
|
|
26
|
+
},
|
|
27
|
+
"keywords" : [ "web-components", "custom-elements", "baredom", "ui-library", "clojurescript", "esm", "framework-agnostic" ],
|
|
28
|
+
"author" : "Alexander van Elsas",
|
|
29
|
+
"exports" : {
|
|
30
|
+
"./x-table-row" : {
|
|
31
|
+
"import" : "./dist/x-table-row.js",
|
|
32
|
+
"default" : "./dist/x-table-row.js"
|
|
33
|
+
},
|
|
34
|
+
"./x-slider" : {
|
|
35
|
+
"import" : "./dist/x-slider.js",
|
|
36
|
+
"default" : "./dist/x-slider.js"
|
|
37
|
+
},
|
|
38
|
+
"./x-form" : {
|
|
39
|
+
"import" : "./dist/x-form.js",
|
|
40
|
+
"default" : "./dist/x-form.js"
|
|
41
|
+
},
|
|
42
|
+
"./x-select" : {
|
|
43
|
+
"import" : "./dist/x-select.js",
|
|
44
|
+
"default" : "./dist/x-select.js"
|
|
45
|
+
},
|
|
46
|
+
"./x-tabs" : {
|
|
47
|
+
"import" : "./dist/x-tabs.js",
|
|
48
|
+
"default" : "./dist/x-tabs.js"
|
|
49
|
+
},
|
|
50
|
+
"./x-currency-field" : {
|
|
51
|
+
"import" : "./dist/x-currency-field.js",
|
|
52
|
+
"default" : "./dist/x-currency-field.js"
|
|
53
|
+
},
|
|
54
|
+
"./x-stat" : {
|
|
55
|
+
"import" : "./dist/x-stat.js",
|
|
56
|
+
"default" : "./dist/x-stat.js"
|
|
57
|
+
},
|
|
58
|
+
"./x-navbar" : {
|
|
59
|
+
"import" : "./dist/x-navbar.js",
|
|
60
|
+
"default" : "./dist/x-navbar.js"
|
|
61
|
+
},
|
|
62
|
+
"./x-avatar" : {
|
|
63
|
+
"import" : "./dist/x-avatar.js",
|
|
64
|
+
"default" : "./dist/x-avatar.js"
|
|
65
|
+
},
|
|
66
|
+
"./x-menu" : {
|
|
67
|
+
"import" : "./dist/x-menu.js",
|
|
68
|
+
"default" : "./dist/x-menu.js"
|
|
69
|
+
},
|
|
70
|
+
"./x-switch" : {
|
|
71
|
+
"import" : "./dist/x-switch.js",
|
|
72
|
+
"default" : "./dist/x-switch.js"
|
|
73
|
+
},
|
|
74
|
+
"./x-container" : {
|
|
75
|
+
"import" : "./dist/x-container.js",
|
|
76
|
+
"default" : "./dist/x-container.js"
|
|
77
|
+
},
|
|
78
|
+
"./x-drawer" : {
|
|
79
|
+
"import" : "./dist/x-drawer.js",
|
|
80
|
+
"default" : "./dist/x-drawer.js"
|
|
81
|
+
},
|
|
82
|
+
"./x-menu-item" : {
|
|
83
|
+
"import" : "./dist/x-menu-item.js",
|
|
84
|
+
"default" : "./dist/x-menu-item.js"
|
|
85
|
+
},
|
|
86
|
+
"./x-pagination" : {
|
|
87
|
+
"import" : "./dist/x-pagination.js",
|
|
88
|
+
"default" : "./dist/x-pagination.js"
|
|
89
|
+
},
|
|
90
|
+
"./x-button" : {
|
|
91
|
+
"import" : "./dist/x-button.js",
|
|
92
|
+
"default" : "./dist/x-button.js"
|
|
93
|
+
},
|
|
94
|
+
"./x-grid" : {
|
|
95
|
+
"import" : "./dist/x-grid.js",
|
|
96
|
+
"default" : "./dist/x-grid.js"
|
|
97
|
+
},
|
|
98
|
+
"./x-table-cell" : {
|
|
99
|
+
"import" : "./dist/x-table-cell.js",
|
|
100
|
+
"default" : "./dist/x-table-cell.js"
|
|
101
|
+
},
|
|
102
|
+
"./x-modal" : {
|
|
103
|
+
"import" : "./dist/x-modal.js",
|
|
104
|
+
"default" : "./dist/x-modal.js"
|
|
105
|
+
},
|
|
106
|
+
"./x-skeleton" : {
|
|
107
|
+
"import" : "./dist/x-skeleton.js",
|
|
108
|
+
"default" : "./dist/x-skeleton.js"
|
|
109
|
+
},
|
|
110
|
+
"./x-badge" : {
|
|
111
|
+
"import" : "./dist/x-badge.js",
|
|
112
|
+
"default" : "./dist/x-badge.js"
|
|
113
|
+
},
|
|
114
|
+
"./x-spacer" : {
|
|
115
|
+
"import" : "./dist/x-spacer.js",
|
|
116
|
+
"default" : "./dist/x-spacer.js"
|
|
117
|
+
},
|
|
118
|
+
"./x-chart" : {
|
|
119
|
+
"import" : "./dist/x-chart.js",
|
|
120
|
+
"default" : "./dist/x-chart.js"
|
|
121
|
+
},
|
|
122
|
+
"./x-divider" : {
|
|
123
|
+
"import" : "./dist/x-divider.js",
|
|
124
|
+
"default" : "./dist/x-divider.js"
|
|
125
|
+
},
|
|
126
|
+
"./x-form-field" : {
|
|
127
|
+
"import" : "./dist/x-form-field.js",
|
|
128
|
+
"default" : "./dist/x-form-field.js"
|
|
137
129
|
},
|
|
138
|
-
"./x-
|
|
139
|
-
"import": "./dist/x-
|
|
140
|
-
"default": "./dist/x-
|
|
130
|
+
"./x-sidebar" : {
|
|
131
|
+
"import" : "./dist/x-sidebar.js",
|
|
132
|
+
"default" : "./dist/x-sidebar.js"
|
|
141
133
|
},
|
|
142
|
-
"./x-
|
|
143
|
-
"import": "./dist/x-
|
|
144
|
-
"default": "./dist/x-
|
|
134
|
+
"./x-context-menu" : {
|
|
135
|
+
"import" : "./dist/x-context-menu.js",
|
|
136
|
+
"default" : "./dist/x-context-menu.js"
|
|
145
137
|
},
|
|
146
|
-
"./x-
|
|
147
|
-
"import": "./dist/x-
|
|
148
|
-
"default": "./dist/x-
|
|
138
|
+
"./x-progress" : {
|
|
139
|
+
"import" : "./dist/x-progress.js",
|
|
140
|
+
"default" : "./dist/x-progress.js"
|
|
149
141
|
},
|
|
150
|
-
"./x-
|
|
151
|
-
"import": "./dist/x-
|
|
152
|
-
"default": "./dist/x-
|
|
142
|
+
"./x-timeline" : {
|
|
143
|
+
"import" : "./dist/x-timeline.js",
|
|
144
|
+
"default" : "./dist/x-timeline.js"
|
|
153
145
|
},
|
|
154
|
-
"./x-
|
|
155
|
-
"import": "./dist/x-
|
|
156
|
-
"default": "./dist/x-
|
|
146
|
+
"./x-notification-center" : {
|
|
147
|
+
"import" : "./dist/x-notification-center.js",
|
|
148
|
+
"default" : "./dist/x-notification-center.js"
|
|
157
149
|
},
|
|
158
|
-
"./x-
|
|
159
|
-
"import": "./dist/x-
|
|
160
|
-
"default": "./dist/x-
|
|
150
|
+
"./x-tab" : {
|
|
151
|
+
"import" : "./dist/x-tab.js",
|
|
152
|
+
"default" : "./dist/x-tab.js"
|
|
161
153
|
},
|
|
162
|
-
"./x-
|
|
163
|
-
"import": "./dist/x-
|
|
164
|
-
"default": "./dist/x-
|
|
154
|
+
"./x-chip" : {
|
|
155
|
+
"import" : "./dist/x-chip.js",
|
|
156
|
+
"default" : "./dist/x-chip.js"
|
|
165
157
|
},
|
|
166
|
-
"./x-
|
|
167
|
-
"import": "./dist/x-
|
|
168
|
-
"default": "./dist/x-
|
|
158
|
+
"./x-progress-circle" : {
|
|
159
|
+
"import" : "./dist/x-progress-circle.js",
|
|
160
|
+
"default" : "./dist/x-progress-circle.js"
|
|
169
161
|
},
|
|
170
|
-
"./x-
|
|
171
|
-
"import": "./dist/x-
|
|
172
|
-
"default": "./dist/x-
|
|
162
|
+
"./x-date-picker" : {
|
|
163
|
+
"import" : "./dist/x-date-picker.js",
|
|
164
|
+
"default" : "./dist/x-date-picker.js"
|
|
173
165
|
},
|
|
174
|
-
"./x-
|
|
175
|
-
"import": "./dist/x-
|
|
176
|
-
"default": "./dist/x-
|
|
166
|
+
"./x-spinner" : {
|
|
167
|
+
"import" : "./dist/x-spinner.js",
|
|
168
|
+
"default" : "./dist/x-spinner.js"
|
|
177
169
|
},
|
|
178
|
-
"./x-
|
|
179
|
-
"import": "./dist/x-
|
|
180
|
-
"default": "./dist/x-
|
|
170
|
+
"./x-popover" : {
|
|
171
|
+
"import" : "./dist/x-popover.js",
|
|
172
|
+
"default" : "./dist/x-popover.js"
|
|
181
173
|
},
|
|
182
|
-
"./x-
|
|
183
|
-
"import": "./dist/x-
|
|
184
|
-
"default": "./dist/x-
|
|
174
|
+
"./x-command-palette" : {
|
|
175
|
+
"import" : "./dist/x-command-palette.js",
|
|
176
|
+
"default" : "./dist/x-command-palette.js"
|
|
185
177
|
},
|
|
186
|
-
"./x-
|
|
187
|
-
"import": "./dist/x-
|
|
188
|
-
"default": "./dist/x-
|
|
178
|
+
"./x-collapse" : {
|
|
179
|
+
"import" : "./dist/x-collapse.js",
|
|
180
|
+
"default" : "./dist/x-collapse.js"
|
|
189
181
|
},
|
|
190
|
-
"./x-
|
|
191
|
-
"import": "./dist/x-
|
|
192
|
-
"default": "./dist/x-
|
|
182
|
+
"./x-timeline-item" : {
|
|
183
|
+
"import" : "./dist/x-timeline-item.js",
|
|
184
|
+
"default" : "./dist/x-timeline-item.js"
|
|
193
185
|
},
|
|
194
|
-
"./x-
|
|
195
|
-
"import": "./dist/x-
|
|
196
|
-
"default": "./dist/x-
|
|
186
|
+
"./x-stepper" : {
|
|
187
|
+
"import" : "./dist/x-stepper.js",
|
|
188
|
+
"default" : "./dist/x-stepper.js"
|
|
197
189
|
},
|
|
198
|
-
"./x-
|
|
199
|
-
"import": "./dist/x-
|
|
200
|
-
"default": "./dist/x-
|
|
190
|
+
"./x-search-field" : {
|
|
191
|
+
"import" : "./dist/x-search-field.js",
|
|
192
|
+
"default" : "./dist/x-search-field.js"
|
|
201
193
|
},
|
|
202
|
-
"./x-
|
|
203
|
-
"import": "./dist/x-
|
|
204
|
-
"default": "./dist/x-
|
|
194
|
+
"./x-text-area" : {
|
|
195
|
+
"import" : "./dist/x-text-area.js",
|
|
196
|
+
"default" : "./dist/x-text-area.js"
|
|
205
197
|
},
|
|
206
|
-
"./x-
|
|
207
|
-
"import": "./dist/x-
|
|
208
|
-
"default": "./dist/x-
|
|
198
|
+
"./x-toaster" : {
|
|
199
|
+
"import" : "./dist/x-toaster.js",
|
|
200
|
+
"default" : "./dist/x-toaster.js"
|
|
209
201
|
},
|
|
210
|
-
"./x-
|
|
211
|
-
"import": "./dist/x-
|
|
212
|
-
"default": "./dist/x-
|
|
202
|
+
"./x-radio" : {
|
|
203
|
+
"import" : "./dist/x-radio.js",
|
|
204
|
+
"default" : "./dist/x-radio.js"
|
|
213
205
|
},
|
|
214
|
-
"./x-
|
|
215
|
-
"import": "./dist/x-
|
|
216
|
-
"default": "./dist/x-
|
|
206
|
+
"./x-dropdown" : {
|
|
207
|
+
"import" : "./dist/x-dropdown.js",
|
|
208
|
+
"default" : "./dist/x-dropdown.js"
|
|
217
209
|
},
|
|
218
|
-
"./x-
|
|
219
|
-
"import": "./dist/x-
|
|
220
|
-
"default": "./dist/x-
|
|
210
|
+
"./x-breadcrumbs" : {
|
|
211
|
+
"import" : "./dist/x-breadcrumbs.js",
|
|
212
|
+
"default" : "./dist/x-breadcrumbs.js"
|
|
221
213
|
},
|
|
222
|
-
"./x-
|
|
223
|
-
"import": "./dist/x-
|
|
224
|
-
"default": "./dist/x-
|
|
214
|
+
"./x-file-download" : {
|
|
215
|
+
"import" : "./dist/x-file-download.js",
|
|
216
|
+
"default" : "./dist/x-file-download.js"
|
|
225
217
|
},
|
|
226
|
-
"./x-
|
|
227
|
-
"import": "./dist/x-
|
|
228
|
-
"default": "./dist/x-
|
|
218
|
+
"./x-toast" : {
|
|
219
|
+
"import" : "./dist/x-toast.js",
|
|
220
|
+
"default" : "./dist/x-toast.js"
|
|
229
221
|
},
|
|
230
|
-
"./x-
|
|
231
|
-
"import": "./dist/x-
|
|
232
|
-
"default": "./dist/x-
|
|
222
|
+
"./x-fieldset" : {
|
|
223
|
+
"import" : "./dist/x-fieldset.js",
|
|
224
|
+
"default" : "./dist/x-fieldset.js"
|
|
233
225
|
},
|
|
234
|
-
"./x-
|
|
235
|
-
"import": "./dist/x-
|
|
236
|
-
"default": "./dist/x-
|
|
226
|
+
"./x-cancel-dialogue" : {
|
|
227
|
+
"import" : "./dist/x-cancel-dialogue.js",
|
|
228
|
+
"default" : "./dist/x-cancel-dialogue.js"
|
|
237
229
|
},
|
|
238
|
-
"./x-
|
|
239
|
-
"import": "./dist/x-
|
|
240
|
-
"default": "./dist/x-
|
|
230
|
+
"./x-checkbox" : {
|
|
231
|
+
"import" : "./dist/x-checkbox.js",
|
|
232
|
+
"default" : "./dist/x-checkbox.js"
|
|
241
233
|
},
|
|
242
|
-
"./x-
|
|
243
|
-
"import": "./dist/x-
|
|
244
|
-
"default": "./dist/x-
|
|
234
|
+
"./x-table" : {
|
|
235
|
+
"import" : "./dist/x-table.js",
|
|
236
|
+
"default" : "./dist/x-table.js"
|
|
245
237
|
},
|
|
246
|
-
"./x-
|
|
247
|
-
"import": "./dist/x-
|
|
248
|
-
"default": "./dist/x-
|
|
238
|
+
"./x-alert" : {
|
|
239
|
+
"import" : "./dist/x-alert.js",
|
|
240
|
+
"default" : "./dist/x-alert.js"
|
|
249
241
|
},
|
|
250
|
-
"./x-
|
|
251
|
-
"import": "./dist/x-
|
|
252
|
-
"default": "./dist/x-
|
|
242
|
+
"./x-avatar-group" : {
|
|
243
|
+
"import" : "./dist/x-avatar-group.js",
|
|
244
|
+
"default" : "./dist/x-avatar-group.js"
|
|
253
245
|
},
|
|
254
|
-
"./x-
|
|
255
|
-
"import": "./dist/x-
|
|
256
|
-
"default": "./dist/x-
|
|
246
|
+
"./x-card" : {
|
|
247
|
+
"import" : "./dist/x-card.js",
|
|
248
|
+
"default" : "./dist/x-card.js"
|
|
257
249
|
},
|
|
258
|
-
"./x-
|
|
259
|
-
"import": "./dist/x-
|
|
260
|
-
"default": "./dist/x-
|
|
250
|
+
"./x-copy" : {
|
|
251
|
+
"import" : "./dist/x-copy.js",
|
|
252
|
+
"default" : "./dist/x-copy.js"
|
|
261
253
|
}
|
|
262
254
|
},
|
|
263
|
-
"
|
|
264
|
-
"
|
|
265
|
-
"
|
|
266
|
-
"
|
|
267
|
-
"
|
|
255
|
+
"devDependencies" : {
|
|
256
|
+
"karma" : "^6.4.4",
|
|
257
|
+
"karma-chrome-launcher" : "^3.2.0",
|
|
258
|
+
"karma-cljs-test" : "^0.1.0",
|
|
259
|
+
"shadow-cljs" : "^3.3.6"
|
|
268
260
|
},
|
|
269
|
-
"
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
"karma-cljs-test": "^0.1.0",
|
|
273
|
-
"shadow-cljs": "^3.3.6"
|
|
274
|
-
}
|
|
261
|
+
"files" : [ "dist", "README.md", "LICENSE", "CHANGELOG.md" ],
|
|
262
|
+
"version" : "0.1.8-alpha",
|
|
263
|
+
"sideEffects" : [ "./dist/*.js" ]
|
|
275
264
|
}
|