bareframe 0.1.0

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 (228) hide show
  1. package/README.md +197 -0
  2. package/dist/components/accordion.css +107 -0
  3. package/dist/components/accordion.js +92 -0
  4. package/dist/components/action-list.css +30 -0
  5. package/dist/components/action-list.js +31 -0
  6. package/dist/components/alert.css +30 -0
  7. package/dist/components/alert.js +31 -0
  8. package/dist/components/anchor.css +30 -0
  9. package/dist/components/anchor.js +31 -0
  10. package/dist/components/autocomplete.css +30 -0
  11. package/dist/components/autocomplete.js +31 -0
  12. package/dist/components/avatar.css +30 -0
  13. package/dist/components/avatar.js +31 -0
  14. package/dist/components/badge.css +30 -0
  15. package/dist/components/badge.js +31 -0
  16. package/dist/components/banner.css +30 -0
  17. package/dist/components/banner.js +31 -0
  18. package/dist/components/bar-chart.css +30 -0
  19. package/dist/components/bar-chart.js +31 -0
  20. package/dist/components/bottom-navigation.css +30 -0
  21. package/dist/components/bottom-navigation.js +31 -0
  22. package/dist/components/bottom-sheet.css +30 -0
  23. package/dist/components/bottom-sheet.js +31 -0
  24. package/dist/components/breadcrumb.css +30 -0
  25. package/dist/components/breadcrumb.js +31 -0
  26. package/dist/components/button-group.css +30 -0
  27. package/dist/components/button-group.js +31 -0
  28. package/dist/components/button.css +136 -0
  29. package/dist/components/button.js +42 -0
  30. package/dist/components/calendar.css +30 -0
  31. package/dist/components/calendar.js +31 -0
  32. package/dist/components/canvas.css +30 -0
  33. package/dist/components/canvas.js +31 -0
  34. package/dist/components/card.css +30 -0
  35. package/dist/components/card.js +31 -0
  36. package/dist/components/carousel.css +30 -0
  37. package/dist/components/carousel.js +31 -0
  38. package/dist/components/chart.css +30 -0
  39. package/dist/components/chart.js +31 -0
  40. package/dist/components/checkbox.css +30 -0
  41. package/dist/components/checkbox.js +31 -0
  42. package/dist/components/chip.css +30 -0
  43. package/dist/components/chip.js +31 -0
  44. package/dist/components/code-block.css +30 -0
  45. package/dist/components/code-block.js +31 -0
  46. package/dist/components/color-picker.css +30 -0
  47. package/dist/components/color-picker.js +31 -0
  48. package/dist/components/combobox.css +30 -0
  49. package/dist/components/combobox.js +31 -0
  50. package/dist/components/command-palette.css +30 -0
  51. package/dist/components/command-palette.js +31 -0
  52. package/dist/components/context-menu.css +30 -0
  53. package/dist/components/context-menu.js +31 -0
  54. package/dist/components/countdown.css +30 -0
  55. package/dist/components/countdown.js +31 -0
  56. package/dist/components/data-grid.css +30 -0
  57. package/dist/components/data-grid.js +31 -0
  58. package/dist/components/date-picker.css +30 -0
  59. package/dist/components/date-picker.js +31 -0
  60. package/dist/components/date-range-picker.css +30 -0
  61. package/dist/components/date-range-picker.js +31 -0
  62. package/dist/components/dialog.css +30 -0
  63. package/dist/components/dialog.js +31 -0
  64. package/dist/components/divider.css +30 -0
  65. package/dist/components/divider.js +31 -0
  66. package/dist/components/donut-chart.css +30 -0
  67. package/dist/components/donut-chart.js +31 -0
  68. package/dist/components/drawer.css +30 -0
  69. package/dist/components/drawer.js +31 -0
  70. package/dist/components/dropdown.css +30 -0
  71. package/dist/components/dropdown.js +31 -0
  72. package/dist/components/empty-state.css +30 -0
  73. package/dist/components/empty-state.js +31 -0
  74. package/dist/components/error-summary.css +30 -0
  75. package/dist/components/error-summary.js +31 -0
  76. package/dist/components/expanded-panel.css +30 -0
  77. package/dist/components/expanded-panel.js +31 -0
  78. package/dist/components/fab.css +30 -0
  79. package/dist/components/fab.js +31 -0
  80. package/dist/components/file-upload.css +30 -0
  81. package/dist/components/file-upload.js +31 -0
  82. package/dist/components/filter-bar.css +30 -0
  83. package/dist/components/filter-bar.js +31 -0
  84. package/dist/components/footer.css +30 -0
  85. package/dist/components/footer.js +31 -0
  86. package/dist/components/form-field.css +30 -0
  87. package/dist/components/form-field.js +31 -0
  88. package/dist/components/gantt-chart.css +30 -0
  89. package/dist/components/gantt-chart.js +31 -0
  90. package/dist/components/gauge.css +30 -0
  91. package/dist/components/gauge.js +31 -0
  92. package/dist/components/graph.css +30 -0
  93. package/dist/components/graph.js +31 -0
  94. package/dist/components/grid.css +30 -0
  95. package/dist/components/grid.js +31 -0
  96. package/dist/components/header.css +30 -0
  97. package/dist/components/header.js +31 -0
  98. package/dist/components/heatmap.css +30 -0
  99. package/dist/components/heatmap.js +31 -0
  100. package/dist/components/hero.css +30 -0
  101. package/dist/components/hero.js +31 -0
  102. package/dist/components/icon.css +30 -0
  103. package/dist/components/icon.js +31 -0
  104. package/dist/components/image.css +30 -0
  105. package/dist/components/image.js +31 -0
  106. package/dist/components/input.css +30 -0
  107. package/dist/components/input.js +31 -0
  108. package/dist/components/key-value-list.css +30 -0
  109. package/dist/components/key-value-list.js +31 -0
  110. package/dist/components/line-chart.css +30 -0
  111. package/dist/components/line-chart.js +31 -0
  112. package/dist/components/link.css +30 -0
  113. package/dist/components/link.js +31 -0
  114. package/dist/components/list-item.css +30 -0
  115. package/dist/components/list-item.js +31 -0
  116. package/dist/components/list.css +30 -0
  117. package/dist/components/list.js +31 -0
  118. package/dist/components/loading-indicator.css +30 -0
  119. package/dist/components/loading-indicator.js +31 -0
  120. package/dist/components/map.css +30 -0
  121. package/dist/components/map.js +31 -0
  122. package/dist/components/menu-item.css +30 -0
  123. package/dist/components/menu-item.js +31 -0
  124. package/dist/components/menu.css +30 -0
  125. package/dist/components/menu.js +31 -0
  126. package/dist/components/message.css +30 -0
  127. package/dist/components/message.js +31 -0
  128. package/dist/components/metric-card.css +30 -0
  129. package/dist/components/metric-card.js +31 -0
  130. package/dist/components/modal.css +30 -0
  131. package/dist/components/modal.js +31 -0
  132. package/dist/components/multi-select.css +30 -0
  133. package/dist/components/multi-select.js +31 -0
  134. package/dist/components/nav.css +30 -0
  135. package/dist/components/nav.js +31 -0
  136. package/dist/components/notification.css +30 -0
  137. package/dist/components/notification.js +31 -0
  138. package/dist/components/number-field.css +30 -0
  139. package/dist/components/number-field.js +31 -0
  140. package/dist/components/otp-input.css +30 -0
  141. package/dist/components/otp-input.js +31 -0
  142. package/dist/components/pagination.css +30 -0
  143. package/dist/components/pagination.js +31 -0
  144. package/dist/components/pie-chart.css +30 -0
  145. package/dist/components/pie-chart.js +31 -0
  146. package/dist/components/popover.css +30 -0
  147. package/dist/components/popover.js +31 -0
  148. package/dist/components/progress-bar.css +30 -0
  149. package/dist/components/progress-bar.js +31 -0
  150. package/dist/components/progress-circle.css +30 -0
  151. package/dist/components/progress-circle.js +31 -0
  152. package/dist/components/quick-actions.css +30 -0
  153. package/dist/components/quick-actions.js +31 -0
  154. package/dist/components/radio-group.css +30 -0
  155. package/dist/components/radio-group.js +31 -0
  156. package/dist/components/radio.css +30 -0
  157. package/dist/components/radio.js +31 -0
  158. package/dist/components/range-slider.css +30 -0
  159. package/dist/components/range-slider.js +31 -0
  160. package/dist/components/rating.css +30 -0
  161. package/dist/components/rating.js +31 -0
  162. package/dist/components/search.css +30 -0
  163. package/dist/components/search.js +31 -0
  164. package/dist/components/segmented-control.css +30 -0
  165. package/dist/components/segmented-control.js +31 -0
  166. package/dist/components/select.css +30 -0
  167. package/dist/components/select.js +31 -0
  168. package/dist/components/sheet.css +30 -0
  169. package/dist/components/sheet.js +31 -0
  170. package/dist/components/skeleton.css +30 -0
  171. package/dist/components/skeleton.js +31 -0
  172. package/dist/components/slider.css +30 -0
  173. package/dist/components/slider.js +31 -0
  174. package/dist/components/snackbar.css +30 -0
  175. package/dist/components/snackbar.js +31 -0
  176. package/dist/components/sparkline.css +30 -0
  177. package/dist/components/sparkline.js +31 -0
  178. package/dist/components/split-button.css +30 -0
  179. package/dist/components/split-button.js +31 -0
  180. package/dist/components/splitter.css +30 -0
  181. package/dist/components/splitter.js +31 -0
  182. package/dist/components/stack.css +30 -0
  183. package/dist/components/stack.js +31 -0
  184. package/dist/components/stepper.css +30 -0
  185. package/dist/components/stepper.js +31 -0
  186. package/dist/components/switch.css +30 -0
  187. package/dist/components/switch.js +31 -0
  188. package/dist/components/tab-group.css +30 -0
  189. package/dist/components/tab-group.js +31 -0
  190. package/dist/components/tab.css +30 -0
  191. package/dist/components/tab.js +31 -0
  192. package/dist/components/table.css +30 -0
  193. package/dist/components/table.js +31 -0
  194. package/dist/components/tag.css +30 -0
  195. package/dist/components/tag.js +31 -0
  196. package/dist/components/textarea.css +30 -0
  197. package/dist/components/textarea.js +31 -0
  198. package/dist/components/textfield.css +30 -0
  199. package/dist/components/textfield.js +31 -0
  200. package/dist/components/timeline.css +30 -0
  201. package/dist/components/timeline.js +31 -0
  202. package/dist/components/toast.css +30 -0
  203. package/dist/components/toast.js +31 -0
  204. package/dist/components/toggle.css +30 -0
  205. package/dist/components/toggle.js +31 -0
  206. package/dist/components/toolbar.css +30 -0
  207. package/dist/components/toolbar.js +31 -0
  208. package/dist/components/tooltip.css +30 -0
  209. package/dist/components/tooltip.js +31 -0
  210. package/dist/components/tree-view.css +30 -0
  211. package/dist/components/tree-view.js +31 -0
  212. package/dist/components/treemap.css +30 -0
  213. package/dist/components/treemap.js +31 -0
  214. package/dist/components/upload-dropzone.css +30 -0
  215. package/dist/components/upload-dropzone.js +31 -0
  216. package/dist/components/video-player.css +30 -0
  217. package/dist/components/video-player.js +31 -0
  218. package/dist/components/virtual-list.css +30 -0
  219. package/dist/components/virtual-list.js +31 -0
  220. package/dist/components/wizard.css +30 -0
  221. package/dist/components/wizard.js +31 -0
  222. package/dist/index.js +110 -0
  223. package/dist/manifest.json +116 -0
  224. package/dist/themes/dark.css +368 -0
  225. package/dist/themes/light.css +368 -0
  226. package/dist/themes/sprint.css +368 -0
  227. package/dist/themes/system.css +398 -0
  228. package/package.json +32 -0
@@ -0,0 +1,30 @@
1
+ :host {
2
+ --bf-textfield-font: var(--bf-theme-font-family, inherit);
3
+ --bf-textfield-radius: var(--bf-theme-radius-md, 8px);
4
+ --bf-textfield-border-width: var(--bf-theme-border-width, 1px);
5
+ --bf-textfield-border-style: var(--bf-theme-border-style, solid);
6
+ --bf-textfield-border-color: var(--bf-theme-textfield-border-color, var(--bf-theme-border-1, #cbd5e1));
7
+ --bf-textfield-bg: var(--bf-theme-textfield-bg, var(--bf-theme-surface-1, #ffffff));
8
+ --bf-textfield-color: var(--bf-theme-textfield-color, var(--bf-theme-text-1, #0f172a));
9
+ --bf-textfield-padding-y: var(--bf-theme-space-2, 0.6rem);
10
+ --bf-textfield-padding-x: var(--bf-theme-space-3, 0.9rem);
11
+ --bf-textfield-transition:
12
+ var(--bf-theme-transition-bg, background-color 120ms ease),
13
+ var(--bf-theme-transition-color, color 120ms ease),
14
+ var(--bf-theme-transition-border, border-color 120ms ease);
15
+
16
+ display: block;
17
+ font: var(--bf-textfield-font);
18
+ color: var(--bf-textfield-color);
19
+ }
20
+
21
+ .root {
22
+ background: var(--bf-textfield-bg);
23
+ color: var(--bf-textfield-color);
24
+ border-width: var(--bf-textfield-border-width);
25
+ border-style: var(--bf-textfield-border-style);
26
+ border-color: var(--bf-textfield-border-color);
27
+ border-radius: var(--bf-textfield-radius);
28
+ padding: var(--bf-textfield-padding-y) var(--bf-textfield-padding-x);
29
+ transition: var(--bf-textfield-transition);
30
+ }
@@ -0,0 +1,31 @@
1
+ class BfTextfield extends HTMLElement {
2
+ constructor() {
3
+ super();
4
+ this.attachShadow({ mode: 'open' });
5
+ }
6
+
7
+ connectedCallback() {
8
+ if (this._initialized) {
9
+ return;
10
+ }
11
+ this._initialized = true;
12
+
13
+ const cssUrl = new URL('./textfield.css', import.meta.url);
14
+ const link = document.createElement('link');
15
+ link.rel = 'stylesheet';
16
+ link.href = cssUrl.href;
17
+
18
+ const root = document.createElement('div');
19
+ root.className = 'root';
20
+ root.setAttribute('part', 'root');
21
+ root.innerHTML = '<slot></slot>';
22
+
23
+ if (!this.innerHTML.trim()) {
24
+ root.textContent = 'textfield';
25
+ }
26
+
27
+ this.shadowRoot.replaceChildren(link, root);
28
+ }
29
+ }
30
+
31
+ customElements.define('bf-textfield', BfTextfield);
@@ -0,0 +1,30 @@
1
+ :host {
2
+ --bf-timeline-font: var(--bf-theme-font-family, inherit);
3
+ --bf-timeline-radius: var(--bf-theme-radius-md, 8px);
4
+ --bf-timeline-border-width: var(--bf-theme-border-width, 1px);
5
+ --bf-timeline-border-style: var(--bf-theme-border-style, solid);
6
+ --bf-timeline-border-color: var(--bf-theme-timeline-border-color, var(--bf-theme-border-1, #cbd5e1));
7
+ --bf-timeline-bg: var(--bf-theme-timeline-bg, var(--bf-theme-surface-1, #ffffff));
8
+ --bf-timeline-color: var(--bf-theme-timeline-color, var(--bf-theme-text-1, #0f172a));
9
+ --bf-timeline-padding-y: var(--bf-theme-space-2, 0.6rem);
10
+ --bf-timeline-padding-x: var(--bf-theme-space-3, 0.9rem);
11
+ --bf-timeline-transition:
12
+ var(--bf-theme-transition-bg, background-color 120ms ease),
13
+ var(--bf-theme-transition-color, color 120ms ease),
14
+ var(--bf-theme-transition-border, border-color 120ms ease);
15
+
16
+ display: block;
17
+ font: var(--bf-timeline-font);
18
+ color: var(--bf-timeline-color);
19
+ }
20
+
21
+ .root {
22
+ background: var(--bf-timeline-bg);
23
+ color: var(--bf-timeline-color);
24
+ border-width: var(--bf-timeline-border-width);
25
+ border-style: var(--bf-timeline-border-style);
26
+ border-color: var(--bf-timeline-border-color);
27
+ border-radius: var(--bf-timeline-radius);
28
+ padding: var(--bf-timeline-padding-y) var(--bf-timeline-padding-x);
29
+ transition: var(--bf-timeline-transition);
30
+ }
@@ -0,0 +1,31 @@
1
+ class BfTimeline extends HTMLElement {
2
+ constructor() {
3
+ super();
4
+ this.attachShadow({ mode: 'open' });
5
+ }
6
+
7
+ connectedCallback() {
8
+ if (this._initialized) {
9
+ return;
10
+ }
11
+ this._initialized = true;
12
+
13
+ const cssUrl = new URL('./timeline.css', import.meta.url);
14
+ const link = document.createElement('link');
15
+ link.rel = 'stylesheet';
16
+ link.href = cssUrl.href;
17
+
18
+ const root = document.createElement('div');
19
+ root.className = 'root';
20
+ root.setAttribute('part', 'root');
21
+ root.innerHTML = '<slot></slot>';
22
+
23
+ if (!this.innerHTML.trim()) {
24
+ root.textContent = 'timeline';
25
+ }
26
+
27
+ this.shadowRoot.replaceChildren(link, root);
28
+ }
29
+ }
30
+
31
+ customElements.define('bf-timeline', BfTimeline);
@@ -0,0 +1,30 @@
1
+ :host {
2
+ --bf-toast-font: var(--bf-theme-font-family, inherit);
3
+ --bf-toast-radius: var(--bf-theme-radius-md, 8px);
4
+ --bf-toast-border-width: var(--bf-theme-border-width, 1px);
5
+ --bf-toast-border-style: var(--bf-theme-border-style, solid);
6
+ --bf-toast-border-color: var(--bf-theme-toast-border-color, var(--bf-theme-border-1, #cbd5e1));
7
+ --bf-toast-bg: var(--bf-theme-toast-bg, var(--bf-theme-surface-1, #ffffff));
8
+ --bf-toast-color: var(--bf-theme-toast-color, var(--bf-theme-text-1, #0f172a));
9
+ --bf-toast-padding-y: var(--bf-theme-space-2, 0.6rem);
10
+ --bf-toast-padding-x: var(--bf-theme-space-3, 0.9rem);
11
+ --bf-toast-transition:
12
+ var(--bf-theme-transition-bg, background-color 120ms ease),
13
+ var(--bf-theme-transition-color, color 120ms ease),
14
+ var(--bf-theme-transition-border, border-color 120ms ease);
15
+
16
+ display: block;
17
+ font: var(--bf-toast-font);
18
+ color: var(--bf-toast-color);
19
+ }
20
+
21
+ .root {
22
+ background: var(--bf-toast-bg);
23
+ color: var(--bf-toast-color);
24
+ border-width: var(--bf-toast-border-width);
25
+ border-style: var(--bf-toast-border-style);
26
+ border-color: var(--bf-toast-border-color);
27
+ border-radius: var(--bf-toast-radius);
28
+ padding: var(--bf-toast-padding-y) var(--bf-toast-padding-x);
29
+ transition: var(--bf-toast-transition);
30
+ }
@@ -0,0 +1,31 @@
1
+ class BfToast extends HTMLElement {
2
+ constructor() {
3
+ super();
4
+ this.attachShadow({ mode: 'open' });
5
+ }
6
+
7
+ connectedCallback() {
8
+ if (this._initialized) {
9
+ return;
10
+ }
11
+ this._initialized = true;
12
+
13
+ const cssUrl = new URL('./toast.css', import.meta.url);
14
+ const link = document.createElement('link');
15
+ link.rel = 'stylesheet';
16
+ link.href = cssUrl.href;
17
+
18
+ const root = document.createElement('div');
19
+ root.className = 'root';
20
+ root.setAttribute('part', 'root');
21
+ root.innerHTML = '<slot></slot>';
22
+
23
+ if (!this.innerHTML.trim()) {
24
+ root.textContent = 'toast';
25
+ }
26
+
27
+ this.shadowRoot.replaceChildren(link, root);
28
+ }
29
+ }
30
+
31
+ customElements.define('bf-toast', BfToast);
@@ -0,0 +1,30 @@
1
+ :host {
2
+ --bf-toggle-font: var(--bf-theme-font-family, inherit);
3
+ --bf-toggle-radius: var(--bf-theme-radius-md, 8px);
4
+ --bf-toggle-border-width: var(--bf-theme-border-width, 1px);
5
+ --bf-toggle-border-style: var(--bf-theme-border-style, solid);
6
+ --bf-toggle-border-color: var(--bf-theme-toggle-border-color, var(--bf-theme-border-1, #cbd5e1));
7
+ --bf-toggle-bg: var(--bf-theme-toggle-bg, var(--bf-theme-surface-1, #ffffff));
8
+ --bf-toggle-color: var(--bf-theme-toggle-color, var(--bf-theme-text-1, #0f172a));
9
+ --bf-toggle-padding-y: var(--bf-theme-space-2, 0.6rem);
10
+ --bf-toggle-padding-x: var(--bf-theme-space-3, 0.9rem);
11
+ --bf-toggle-transition:
12
+ var(--bf-theme-transition-bg, background-color 120ms ease),
13
+ var(--bf-theme-transition-color, color 120ms ease),
14
+ var(--bf-theme-transition-border, border-color 120ms ease);
15
+
16
+ display: block;
17
+ font: var(--bf-toggle-font);
18
+ color: var(--bf-toggle-color);
19
+ }
20
+
21
+ .root {
22
+ background: var(--bf-toggle-bg);
23
+ color: var(--bf-toggle-color);
24
+ border-width: var(--bf-toggle-border-width);
25
+ border-style: var(--bf-toggle-border-style);
26
+ border-color: var(--bf-toggle-border-color);
27
+ border-radius: var(--bf-toggle-radius);
28
+ padding: var(--bf-toggle-padding-y) var(--bf-toggle-padding-x);
29
+ transition: var(--bf-toggle-transition);
30
+ }
@@ -0,0 +1,31 @@
1
+ class BfToggle extends HTMLElement {
2
+ constructor() {
3
+ super();
4
+ this.attachShadow({ mode: 'open' });
5
+ }
6
+
7
+ connectedCallback() {
8
+ if (this._initialized) {
9
+ return;
10
+ }
11
+ this._initialized = true;
12
+
13
+ const cssUrl = new URL('./toggle.css', import.meta.url);
14
+ const link = document.createElement('link');
15
+ link.rel = 'stylesheet';
16
+ link.href = cssUrl.href;
17
+
18
+ const root = document.createElement('div');
19
+ root.className = 'root';
20
+ root.setAttribute('part', 'root');
21
+ root.innerHTML = '<slot></slot>';
22
+
23
+ if (!this.innerHTML.trim()) {
24
+ root.textContent = 'toggle';
25
+ }
26
+
27
+ this.shadowRoot.replaceChildren(link, root);
28
+ }
29
+ }
30
+
31
+ customElements.define('bf-toggle', BfToggle);
@@ -0,0 +1,30 @@
1
+ :host {
2
+ --bf-toolbar-font: var(--bf-theme-font-family, inherit);
3
+ --bf-toolbar-radius: var(--bf-theme-radius-md, 8px);
4
+ --bf-toolbar-border-width: var(--bf-theme-border-width, 1px);
5
+ --bf-toolbar-border-style: var(--bf-theme-border-style, solid);
6
+ --bf-toolbar-border-color: var(--bf-theme-toolbar-border-color, var(--bf-theme-border-1, #cbd5e1));
7
+ --bf-toolbar-bg: var(--bf-theme-toolbar-bg, var(--bf-theme-surface-1, #ffffff));
8
+ --bf-toolbar-color: var(--bf-theme-toolbar-color, var(--bf-theme-text-1, #0f172a));
9
+ --bf-toolbar-padding-y: var(--bf-theme-space-2, 0.6rem);
10
+ --bf-toolbar-padding-x: var(--bf-theme-space-3, 0.9rem);
11
+ --bf-toolbar-transition:
12
+ var(--bf-theme-transition-bg, background-color 120ms ease),
13
+ var(--bf-theme-transition-color, color 120ms ease),
14
+ var(--bf-theme-transition-border, border-color 120ms ease);
15
+
16
+ display: block;
17
+ font: var(--bf-toolbar-font);
18
+ color: var(--bf-toolbar-color);
19
+ }
20
+
21
+ .root {
22
+ background: var(--bf-toolbar-bg);
23
+ color: var(--bf-toolbar-color);
24
+ border-width: var(--bf-toolbar-border-width);
25
+ border-style: var(--bf-toolbar-border-style);
26
+ border-color: var(--bf-toolbar-border-color);
27
+ border-radius: var(--bf-toolbar-radius);
28
+ padding: var(--bf-toolbar-padding-y) var(--bf-toolbar-padding-x);
29
+ transition: var(--bf-toolbar-transition);
30
+ }
@@ -0,0 +1,31 @@
1
+ class BfToolbar extends HTMLElement {
2
+ constructor() {
3
+ super();
4
+ this.attachShadow({ mode: 'open' });
5
+ }
6
+
7
+ connectedCallback() {
8
+ if (this._initialized) {
9
+ return;
10
+ }
11
+ this._initialized = true;
12
+
13
+ const cssUrl = new URL('./toolbar.css', import.meta.url);
14
+ const link = document.createElement('link');
15
+ link.rel = 'stylesheet';
16
+ link.href = cssUrl.href;
17
+
18
+ const root = document.createElement('div');
19
+ root.className = 'root';
20
+ root.setAttribute('part', 'root');
21
+ root.innerHTML = '<slot></slot>';
22
+
23
+ if (!this.innerHTML.trim()) {
24
+ root.textContent = 'toolbar';
25
+ }
26
+
27
+ this.shadowRoot.replaceChildren(link, root);
28
+ }
29
+ }
30
+
31
+ customElements.define('bf-toolbar', BfToolbar);
@@ -0,0 +1,30 @@
1
+ :host {
2
+ --bf-tooltip-font: var(--bf-theme-font-family, inherit);
3
+ --bf-tooltip-radius: var(--bf-theme-radius-md, 8px);
4
+ --bf-tooltip-border-width: var(--bf-theme-border-width, 1px);
5
+ --bf-tooltip-border-style: var(--bf-theme-border-style, solid);
6
+ --bf-tooltip-border-color: var(--bf-theme-tooltip-border-color, var(--bf-theme-border-1, #cbd5e1));
7
+ --bf-tooltip-bg: var(--bf-theme-tooltip-bg, var(--bf-theme-surface-1, #ffffff));
8
+ --bf-tooltip-color: var(--bf-theme-tooltip-color, var(--bf-theme-text-1, #0f172a));
9
+ --bf-tooltip-padding-y: var(--bf-theme-space-2, 0.6rem);
10
+ --bf-tooltip-padding-x: var(--bf-theme-space-3, 0.9rem);
11
+ --bf-tooltip-transition:
12
+ var(--bf-theme-transition-bg, background-color 120ms ease),
13
+ var(--bf-theme-transition-color, color 120ms ease),
14
+ var(--bf-theme-transition-border, border-color 120ms ease);
15
+
16
+ display: block;
17
+ font: var(--bf-tooltip-font);
18
+ color: var(--bf-tooltip-color);
19
+ }
20
+
21
+ .root {
22
+ background: var(--bf-tooltip-bg);
23
+ color: var(--bf-tooltip-color);
24
+ border-width: var(--bf-tooltip-border-width);
25
+ border-style: var(--bf-tooltip-border-style);
26
+ border-color: var(--bf-tooltip-border-color);
27
+ border-radius: var(--bf-tooltip-radius);
28
+ padding: var(--bf-tooltip-padding-y) var(--bf-tooltip-padding-x);
29
+ transition: var(--bf-tooltip-transition);
30
+ }
@@ -0,0 +1,31 @@
1
+ class BfTooltip extends HTMLElement {
2
+ constructor() {
3
+ super();
4
+ this.attachShadow({ mode: 'open' });
5
+ }
6
+
7
+ connectedCallback() {
8
+ if (this._initialized) {
9
+ return;
10
+ }
11
+ this._initialized = true;
12
+
13
+ const cssUrl = new URL('./tooltip.css', import.meta.url);
14
+ const link = document.createElement('link');
15
+ link.rel = 'stylesheet';
16
+ link.href = cssUrl.href;
17
+
18
+ const root = document.createElement('div');
19
+ root.className = 'root';
20
+ root.setAttribute('part', 'root');
21
+ root.innerHTML = '<slot></slot>';
22
+
23
+ if (!this.innerHTML.trim()) {
24
+ root.textContent = 'tooltip';
25
+ }
26
+
27
+ this.shadowRoot.replaceChildren(link, root);
28
+ }
29
+ }
30
+
31
+ customElements.define('bf-tooltip', BfTooltip);
@@ -0,0 +1,30 @@
1
+ :host {
2
+ --bf-tree-view-font: var(--bf-theme-font-family, inherit);
3
+ --bf-tree-view-radius: var(--bf-theme-radius-md, 8px);
4
+ --bf-tree-view-border-width: var(--bf-theme-border-width, 1px);
5
+ --bf-tree-view-border-style: var(--bf-theme-border-style, solid);
6
+ --bf-tree-view-border-color: var(--bf-theme-tree-view-border-color, var(--bf-theme-border-1, #cbd5e1));
7
+ --bf-tree-view-bg: var(--bf-theme-tree-view-bg, var(--bf-theme-surface-1, #ffffff));
8
+ --bf-tree-view-color: var(--bf-theme-tree-view-color, var(--bf-theme-text-1, #0f172a));
9
+ --bf-tree-view-padding-y: var(--bf-theme-space-2, 0.6rem);
10
+ --bf-tree-view-padding-x: var(--bf-theme-space-3, 0.9rem);
11
+ --bf-tree-view-transition:
12
+ var(--bf-theme-transition-bg, background-color 120ms ease),
13
+ var(--bf-theme-transition-color, color 120ms ease),
14
+ var(--bf-theme-transition-border, border-color 120ms ease);
15
+
16
+ display: block;
17
+ font: var(--bf-tree-view-font);
18
+ color: var(--bf-tree-view-color);
19
+ }
20
+
21
+ .root {
22
+ background: var(--bf-tree-view-bg);
23
+ color: var(--bf-tree-view-color);
24
+ border-width: var(--bf-tree-view-border-width);
25
+ border-style: var(--bf-tree-view-border-style);
26
+ border-color: var(--bf-tree-view-border-color);
27
+ border-radius: var(--bf-tree-view-radius);
28
+ padding: var(--bf-tree-view-padding-y) var(--bf-tree-view-padding-x);
29
+ transition: var(--bf-tree-view-transition);
30
+ }
@@ -0,0 +1,31 @@
1
+ class BfTreeView extends HTMLElement {
2
+ constructor() {
3
+ super();
4
+ this.attachShadow({ mode: 'open' });
5
+ }
6
+
7
+ connectedCallback() {
8
+ if (this._initialized) {
9
+ return;
10
+ }
11
+ this._initialized = true;
12
+
13
+ const cssUrl = new URL('./tree-view.css', import.meta.url);
14
+ const link = document.createElement('link');
15
+ link.rel = 'stylesheet';
16
+ link.href = cssUrl.href;
17
+
18
+ const root = document.createElement('div');
19
+ root.className = 'root';
20
+ root.setAttribute('part', 'root');
21
+ root.innerHTML = '<slot></slot>';
22
+
23
+ if (!this.innerHTML.trim()) {
24
+ root.textContent = 'tree view';
25
+ }
26
+
27
+ this.shadowRoot.replaceChildren(link, root);
28
+ }
29
+ }
30
+
31
+ customElements.define('bf-tree-view', BfTreeView);
@@ -0,0 +1,30 @@
1
+ :host {
2
+ --bf-treemap-font: var(--bf-theme-font-family, inherit);
3
+ --bf-treemap-radius: var(--bf-theme-radius-md, 8px);
4
+ --bf-treemap-border-width: var(--bf-theme-border-width, 1px);
5
+ --bf-treemap-border-style: var(--bf-theme-border-style, solid);
6
+ --bf-treemap-border-color: var(--bf-theme-treemap-border-color, var(--bf-theme-border-1, #cbd5e1));
7
+ --bf-treemap-bg: var(--bf-theme-treemap-bg, var(--bf-theme-surface-1, #ffffff));
8
+ --bf-treemap-color: var(--bf-theme-treemap-color, var(--bf-theme-text-1, #0f172a));
9
+ --bf-treemap-padding-y: var(--bf-theme-space-2, 0.6rem);
10
+ --bf-treemap-padding-x: var(--bf-theme-space-3, 0.9rem);
11
+ --bf-treemap-transition:
12
+ var(--bf-theme-transition-bg, background-color 120ms ease),
13
+ var(--bf-theme-transition-color, color 120ms ease),
14
+ var(--bf-theme-transition-border, border-color 120ms ease);
15
+
16
+ display: block;
17
+ font: var(--bf-treemap-font);
18
+ color: var(--bf-treemap-color);
19
+ }
20
+
21
+ .root {
22
+ background: var(--bf-treemap-bg);
23
+ color: var(--bf-treemap-color);
24
+ border-width: var(--bf-treemap-border-width);
25
+ border-style: var(--bf-treemap-border-style);
26
+ border-color: var(--bf-treemap-border-color);
27
+ border-radius: var(--bf-treemap-radius);
28
+ padding: var(--bf-treemap-padding-y) var(--bf-treemap-padding-x);
29
+ transition: var(--bf-treemap-transition);
30
+ }
@@ -0,0 +1,31 @@
1
+ class BfTreemap extends HTMLElement {
2
+ constructor() {
3
+ super();
4
+ this.attachShadow({ mode: 'open' });
5
+ }
6
+
7
+ connectedCallback() {
8
+ if (this._initialized) {
9
+ return;
10
+ }
11
+ this._initialized = true;
12
+
13
+ const cssUrl = new URL('./treemap.css', import.meta.url);
14
+ const link = document.createElement('link');
15
+ link.rel = 'stylesheet';
16
+ link.href = cssUrl.href;
17
+
18
+ const root = document.createElement('div');
19
+ root.className = 'root';
20
+ root.setAttribute('part', 'root');
21
+ root.innerHTML = '<slot></slot>';
22
+
23
+ if (!this.innerHTML.trim()) {
24
+ root.textContent = 'treemap';
25
+ }
26
+
27
+ this.shadowRoot.replaceChildren(link, root);
28
+ }
29
+ }
30
+
31
+ customElements.define('bf-treemap', BfTreemap);
@@ -0,0 +1,30 @@
1
+ :host {
2
+ --bf-upload-dropzone-font: var(--bf-theme-font-family, inherit);
3
+ --bf-upload-dropzone-radius: var(--bf-theme-radius-md, 8px);
4
+ --bf-upload-dropzone-border-width: var(--bf-theme-border-width, 1px);
5
+ --bf-upload-dropzone-border-style: var(--bf-theme-border-style, solid);
6
+ --bf-upload-dropzone-border-color: var(--bf-theme-upload-dropzone-border-color, var(--bf-theme-border-1, #cbd5e1));
7
+ --bf-upload-dropzone-bg: var(--bf-theme-upload-dropzone-bg, var(--bf-theme-surface-1, #ffffff));
8
+ --bf-upload-dropzone-color: var(--bf-theme-upload-dropzone-color, var(--bf-theme-text-1, #0f172a));
9
+ --bf-upload-dropzone-padding-y: var(--bf-theme-space-2, 0.6rem);
10
+ --bf-upload-dropzone-padding-x: var(--bf-theme-space-3, 0.9rem);
11
+ --bf-upload-dropzone-transition:
12
+ var(--bf-theme-transition-bg, background-color 120ms ease),
13
+ var(--bf-theme-transition-color, color 120ms ease),
14
+ var(--bf-theme-transition-border, border-color 120ms ease);
15
+
16
+ display: block;
17
+ font: var(--bf-upload-dropzone-font);
18
+ color: var(--bf-upload-dropzone-color);
19
+ }
20
+
21
+ .root {
22
+ background: var(--bf-upload-dropzone-bg);
23
+ color: var(--bf-upload-dropzone-color);
24
+ border-width: var(--bf-upload-dropzone-border-width);
25
+ border-style: var(--bf-upload-dropzone-border-style);
26
+ border-color: var(--bf-upload-dropzone-border-color);
27
+ border-radius: var(--bf-upload-dropzone-radius);
28
+ padding: var(--bf-upload-dropzone-padding-y) var(--bf-upload-dropzone-padding-x);
29
+ transition: var(--bf-upload-dropzone-transition);
30
+ }
@@ -0,0 +1,31 @@
1
+ class BfUploadDropzone extends HTMLElement {
2
+ constructor() {
3
+ super();
4
+ this.attachShadow({ mode: 'open' });
5
+ }
6
+
7
+ connectedCallback() {
8
+ if (this._initialized) {
9
+ return;
10
+ }
11
+ this._initialized = true;
12
+
13
+ const cssUrl = new URL('./upload-dropzone.css', import.meta.url);
14
+ const link = document.createElement('link');
15
+ link.rel = 'stylesheet';
16
+ link.href = cssUrl.href;
17
+
18
+ const root = document.createElement('div');
19
+ root.className = 'root';
20
+ root.setAttribute('part', 'root');
21
+ root.innerHTML = '<slot></slot>';
22
+
23
+ if (!this.innerHTML.trim()) {
24
+ root.textContent = 'upload dropzone';
25
+ }
26
+
27
+ this.shadowRoot.replaceChildren(link, root);
28
+ }
29
+ }
30
+
31
+ customElements.define('bf-upload-dropzone', BfUploadDropzone);
@@ -0,0 +1,30 @@
1
+ :host {
2
+ --bf-video-player-font: var(--bf-theme-font-family, inherit);
3
+ --bf-video-player-radius: var(--bf-theme-radius-md, 8px);
4
+ --bf-video-player-border-width: var(--bf-theme-border-width, 1px);
5
+ --bf-video-player-border-style: var(--bf-theme-border-style, solid);
6
+ --bf-video-player-border-color: var(--bf-theme-video-player-border-color, var(--bf-theme-border-1, #cbd5e1));
7
+ --bf-video-player-bg: var(--bf-theme-video-player-bg, var(--bf-theme-surface-1, #ffffff));
8
+ --bf-video-player-color: var(--bf-theme-video-player-color, var(--bf-theme-text-1, #0f172a));
9
+ --bf-video-player-padding-y: var(--bf-theme-space-2, 0.6rem);
10
+ --bf-video-player-padding-x: var(--bf-theme-space-3, 0.9rem);
11
+ --bf-video-player-transition:
12
+ var(--bf-theme-transition-bg, background-color 120ms ease),
13
+ var(--bf-theme-transition-color, color 120ms ease),
14
+ var(--bf-theme-transition-border, border-color 120ms ease);
15
+
16
+ display: block;
17
+ font: var(--bf-video-player-font);
18
+ color: var(--bf-video-player-color);
19
+ }
20
+
21
+ .root {
22
+ background: var(--bf-video-player-bg);
23
+ color: var(--bf-video-player-color);
24
+ border-width: var(--bf-video-player-border-width);
25
+ border-style: var(--bf-video-player-border-style);
26
+ border-color: var(--bf-video-player-border-color);
27
+ border-radius: var(--bf-video-player-radius);
28
+ padding: var(--bf-video-player-padding-y) var(--bf-video-player-padding-x);
29
+ transition: var(--bf-video-player-transition);
30
+ }
@@ -0,0 +1,31 @@
1
+ class BfVideoPlayer extends HTMLElement {
2
+ constructor() {
3
+ super();
4
+ this.attachShadow({ mode: 'open' });
5
+ }
6
+
7
+ connectedCallback() {
8
+ if (this._initialized) {
9
+ return;
10
+ }
11
+ this._initialized = true;
12
+
13
+ const cssUrl = new URL('./video-player.css', import.meta.url);
14
+ const link = document.createElement('link');
15
+ link.rel = 'stylesheet';
16
+ link.href = cssUrl.href;
17
+
18
+ const root = document.createElement('div');
19
+ root.className = 'root';
20
+ root.setAttribute('part', 'root');
21
+ root.innerHTML = '<slot></slot>';
22
+
23
+ if (!this.innerHTML.trim()) {
24
+ root.textContent = 'video player';
25
+ }
26
+
27
+ this.shadowRoot.replaceChildren(link, root);
28
+ }
29
+ }
30
+
31
+ customElements.define('bf-video-player', BfVideoPlayer);
@@ -0,0 +1,30 @@
1
+ :host {
2
+ --bf-virtual-list-font: var(--bf-theme-font-family, inherit);
3
+ --bf-virtual-list-radius: var(--bf-theme-radius-md, 8px);
4
+ --bf-virtual-list-border-width: var(--bf-theme-border-width, 1px);
5
+ --bf-virtual-list-border-style: var(--bf-theme-border-style, solid);
6
+ --bf-virtual-list-border-color: var(--bf-theme-virtual-list-border-color, var(--bf-theme-border-1, #cbd5e1));
7
+ --bf-virtual-list-bg: var(--bf-theme-virtual-list-bg, var(--bf-theme-surface-1, #ffffff));
8
+ --bf-virtual-list-color: var(--bf-theme-virtual-list-color, var(--bf-theme-text-1, #0f172a));
9
+ --bf-virtual-list-padding-y: var(--bf-theme-space-2, 0.6rem);
10
+ --bf-virtual-list-padding-x: var(--bf-theme-space-3, 0.9rem);
11
+ --bf-virtual-list-transition:
12
+ var(--bf-theme-transition-bg, background-color 120ms ease),
13
+ var(--bf-theme-transition-color, color 120ms ease),
14
+ var(--bf-theme-transition-border, border-color 120ms ease);
15
+
16
+ display: block;
17
+ font: var(--bf-virtual-list-font);
18
+ color: var(--bf-virtual-list-color);
19
+ }
20
+
21
+ .root {
22
+ background: var(--bf-virtual-list-bg);
23
+ color: var(--bf-virtual-list-color);
24
+ border-width: var(--bf-virtual-list-border-width);
25
+ border-style: var(--bf-virtual-list-border-style);
26
+ border-color: var(--bf-virtual-list-border-color);
27
+ border-radius: var(--bf-virtual-list-radius);
28
+ padding: var(--bf-virtual-list-padding-y) var(--bf-virtual-list-padding-x);
29
+ transition: var(--bf-virtual-list-transition);
30
+ }