@bunnix/components 0.9.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 (152) hide show
  1. package/@types/index.d.ts +269 -0
  2. package/LICENSE +7 -0
  3. package/README.md +184 -0
  4. package/package.json +53 -0
  5. package/src/components/AccordionGroup.mjs +37 -0
  6. package/src/components/Badge.mjs +49 -0
  7. package/src/components/Button.mjs +76 -0
  8. package/src/components/Checkbox.mjs +36 -0
  9. package/src/components/ComboBox.mjs +44 -0
  10. package/src/components/Container.mjs +27 -0
  11. package/src/components/DatePicker.mjs +251 -0
  12. package/src/components/Dialog.mjs +166 -0
  13. package/src/components/DropdownMenu.mjs +110 -0
  14. package/src/components/Grid.mjs +40 -0
  15. package/src/components/HStack.mjs +34 -0
  16. package/src/components/Icon.mjs +32 -0
  17. package/src/components/InputField.mjs +78 -0
  18. package/src/components/NavigationBar.mjs +47 -0
  19. package/src/components/PageHeader.mjs +13 -0
  20. package/src/components/PageSection.mjs +20 -0
  21. package/src/components/PopoverMenu.mjs +87 -0
  22. package/src/components/RadioCheckbox.mjs +36 -0
  23. package/src/components/SearchBox.mjs +207 -0
  24. package/src/components/Sidebar.mjs +187 -0
  25. package/src/components/Table.mjs +254 -0
  26. package/src/components/Text.mjs +38 -0
  27. package/src/components/TimePicker.mjs +172 -0
  28. package/src/components/ToastNotification.mjs +105 -0
  29. package/src/components/ToggleSwitch.mjs +26 -0
  30. package/src/components/VStack.mjs +35 -0
  31. package/src/icons/add-circle.svg +1 -0
  32. package/src/icons/add.svg +1 -0
  33. package/src/icons/alt.svg +1 -0
  34. package/src/icons/archive.svg +1 -0
  35. package/src/icons/at.svg +1 -0
  36. package/src/icons/attestation.svg +1 -0
  37. package/src/icons/bell.svg +4 -0
  38. package/src/icons/bookmark.svg +1 -0
  39. package/src/icons/bot.svg +1 -0
  40. package/src/icons/button.svg +1 -0
  41. package/src/icons/calculate.svg +1 -0
  42. package/src/icons/calendar.svg +1 -0
  43. package/src/icons/chart.svg +1 -0
  44. package/src/icons/check.svg +1 -0
  45. package/src/icons/chevron-down.svg +1 -0
  46. package/src/icons/chevron-left.svg +1 -0
  47. package/src/icons/chevron-right.svg +1 -0
  48. package/src/icons/clip.svg +1 -0
  49. package/src/icons/clock.svg +4 -0
  50. package/src/icons/close-circle.svg +4 -0
  51. package/src/icons/close.svg +1 -0
  52. package/src/icons/cloud-download.svg +1 -0
  53. package/src/icons/cloud-upload.svg +1 -0
  54. package/src/icons/cloud.svg +1 -0
  55. package/src/icons/columns-layout.svg +1 -0
  56. package/src/icons/command.svg +1 -0
  57. package/src/icons/cube.svg +1 -0
  58. package/src/icons/delete.svg +4 -0
  59. package/src/icons/dollar.svg +4 -0
  60. package/src/icons/download.svg +1 -0
  61. package/src/icons/draw.svg +1 -0
  62. package/src/icons/duplicate.svg +4 -0
  63. package/src/icons/edit.svg +1 -0
  64. package/src/icons/exclamation-mark.svg +1 -0
  65. package/src/icons/eye-open.svg +1 -0
  66. package/src/icons/eye.svg +1 -0
  67. package/src/icons/file-html.svg +1 -0
  68. package/src/icons/file.svg +4 -0
  69. package/src/icons/finger.svg +1 -0
  70. package/src/icons/flag.svg +1 -0
  71. package/src/icons/folder.svg +1 -0
  72. package/src/icons/function.svg +1 -0
  73. package/src/icons/gear.svg +1 -0
  74. package/src/icons/gift.svg +1 -0
  75. package/src/icons/globe.svg +4 -0
  76. package/src/icons/grid.svg +1 -0
  77. package/src/icons/hand.svg +1 -0
  78. package/src/icons/heart.svg +4 -0
  79. package/src/icons/home.svg +4 -0
  80. package/src/icons/image.svg +1 -0
  81. package/src/icons/inbox.svg +4 -0
  82. package/src/icons/info.svg +1 -0
  83. package/src/icons/key.svg +1 -0
  84. package/src/icons/lamp.svg +1 -0
  85. package/src/icons/link.svg +1 -0
  86. package/src/icons/location.svg +1 -0
  87. package/src/icons/locker.svg +1 -0
  88. package/src/icons/login.svg +1 -0
  89. package/src/icons/logout.svg +4 -0
  90. package/src/icons/mail.svg +4 -0
  91. package/src/icons/map.svg +4 -0
  92. package/src/icons/markup.svg +1 -0
  93. package/src/icons/merge.svg +1 -0
  94. package/src/icons/more-horizontal.svg +5 -0
  95. package/src/icons/more-vertical.svg +5 -0
  96. package/src/icons/mouse.svg +1 -0
  97. package/src/icons/palette.svg +1 -0
  98. package/src/icons/password.svg +1 -0
  99. package/src/icons/pencil.svg +1 -0
  100. package/src/icons/people.svg +4 -0
  101. package/src/icons/person-add.svg +1 -0
  102. package/src/icons/person-remove.svg +1 -0
  103. package/src/icons/person.svg +5 -0
  104. package/src/icons/pin.svg +1 -0
  105. package/src/icons/question-circle.svg +4 -0
  106. package/src/icons/remove-circle.svg +1 -0
  107. package/src/icons/return-arrow.svg +2 -0
  108. package/src/icons/save.svg +1 -0
  109. package/src/icons/search.svg +1 -0
  110. package/src/icons/sections.svg +1 -0
  111. package/src/icons/send.svg +1 -0
  112. package/src/icons/share.svg +1 -0
  113. package/src/icons/shine.svg +1 -0
  114. package/src/icons/sliders.svg +1 -0
  115. package/src/icons/star.svg +4 -0
  116. package/src/icons/storage.svg +1 -0
  117. package/src/icons/success-circle.svg +4 -0
  118. package/src/icons/swap.svg +1 -0
  119. package/src/icons/switch.svg +1 -0
  120. package/src/icons/sync.svg +4 -0
  121. package/src/icons/table.svg +4 -0
  122. package/src/icons/tag.svg +4 -0
  123. package/src/icons/terminal.svg +1 -0
  124. package/src/icons/text.svg +1 -0
  125. package/src/icons/thumb-down.svg +1 -0
  126. package/src/icons/thumb-up.svg +1 -0
  127. package/src/icons/timer.svg +4 -0
  128. package/src/icons/toggle.svg +1 -0
  129. package/src/icons/trash.svg +1 -0
  130. package/src/icons/update-page.svg +1 -0
  131. package/src/icons/upload.svg +1 -0
  132. package/src/icons/video.svg +1 -0
  133. package/src/icons/wallet.svg +1 -0
  134. package/src/icons/window.svg +1 -0
  135. package/src/index.mjs +29 -0
  136. package/src/styles/accordion.css +70 -0
  137. package/src/styles/buttons.css +118 -0
  138. package/src/styles/colors.css +131 -0
  139. package/src/styles/controls.css +504 -0
  140. package/src/styles/datepicker.css +140 -0
  141. package/src/styles/interactable.css +16 -0
  142. package/src/styles/layout.css +444 -0
  143. package/src/styles/links.css +38 -0
  144. package/src/styles/main.css +16 -0
  145. package/src/styles/media.css +155 -0
  146. package/src/styles/menu.css +168 -0
  147. package/src/styles/motion.css +66 -0
  148. package/src/styles/table.css +78 -0
  149. package/src/styles/timepicker.css +87 -0
  150. package/src/styles/typography.css +94 -0
  151. package/src/styles/variables.css +218 -0
  152. package/src/styles.css +1 -0
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
2
+ <svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="M11.0767 4.21969C11.4183 3.39839 12.5817 3.39839 12.9233 4.21968L14.7812 8.68645L19.6034 9.07305C20.4901 9.14413 20.8496 10.2506 20.174 10.8293L16.5 13.9765L17.6225 18.6822C17.8289 19.5474 16.8876 20.2313 16.1285 19.7676L12 17.246L7.87148 19.7676C7.11238 20.2313 6.17113 19.5474 6.37752 18.6822L7.5 13.9765L3.82596 10.8293C3.15042 10.2506 3.50994 9.14413 4.3966 9.07305L9.21885 8.68645L11.0767 4.21969Z" stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 9V5C5 3.89543 5.89543 3 7 3H17C18.1046 3 19 3.89543 19 5V9M5 9H19M5 9V15M19 9V15M19 15V19C19 20.1046 18.1046 21 17 21H7C5.89543 21 5 20.1046 5 19V15M19 15H5M8 12H8.01M8 6H8.01M8 18H8.01"></path></svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
2
+ <svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="M16 9L10 15.5L7.5 13M12 21C16.9706 21 21 16.9706 21 12C21 7.02944 16.9706 3 12 3C7.02944 3 3 7.02944 3 12C3 16.9706 7.02944 21 12 21Z" stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 19L3 16M3 16L6 13M3 16H11C12.6569 16 14 14.6569 14 13V12M10 12V11C10 9.34315 11.3431 8 13 8H21M21 8L18 11M21 8L18 5"></path></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor"><path d="M5.22 14.78a.75.75 0 0 0 1.06-1.06L4.56 12h8.69a.75.75 0 0 0 0-1.5H4.56l1.72-1.72a.75.75 0 0 0-1.06-1.06l-3 3a.75.75 0 0 0 0 1.06l3 3Zm5.56-6.5a.75.75 0 1 1-1.06-1.06l1.72-1.72H2.75a.75.75 0 0 1 0-1.5h8.69L9.72 2.28a.75.75 0 0 1 1.06-1.06l3 3a.75.75 0 0 1 0 1.06l-3 3Z"></path></svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
2
+ <svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="M18.5249 9.46C18.8317 10.2474 19 11.1041 19 12C19 15.866 15.866 19 12 19H9M5.47507 14.54C5.16832 13.7526 5 12.8959 5 12C5 8.13401 8.13401 5 12 5H15M15 5L12 2M15 5L12 8M9 19L12 16M9 19L12 22" stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
2
+ <svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="M9 4V20M4 9H20M6 20H18C19.1046 20 20 19.1046 20 18V6C20 4.89543 19.1046 4 18 4H6C4.89543 4 4 4.89543 4 6V18C4 19.1046 4.89543 20 6 20Z" stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
2
+ <svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="M8 8H8.01M11.5858 4.58579L19.5858 12.5858C20.3668 13.3668 20.3668 14.6332 19.5858 15.4142L15.4142 19.5858C14.6332 20.3668 13.3668 20.3668 12.5858 19.5858L4.58579 11.5858C4.21071 11.2107 4 10.702 4 10.1716V6C4 4.89543 4.89543 4 6 4H10.1716C10.702 4 11.2107 4.21071 11.5858 4.58579Z" stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="4 17 10 11 4 5"></polyline><line x1="12" y1="19" x2="20" y2="19"></line></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 18L8 5H7L3 18M4.23077 14H10.7692M14.5 10C16 9 20 8 20 11.5C20 15 20 18 20 18M20 12.5C18.5 13 14 13 14 16C14 19 18.5 18 20 15.5"></path></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M7.99997 4H17.1919C17.9865 4 18.7058 4.47039 19.0243 5.19836L21.8323 11.6167C21.9429 11.8695 22 12.1424 22 12.4184V13C22 14.1046 21.1045 15 20 15H13.5L14.7066 19.4243C14.8772 20.0498 14.5826 20.7087 14.0027 20.9986V20.9986C13.4204 21.2898 12.7134 21.1274 12.3164 20.6114L8.41472 15.5392C8.14579 15.1896 7.99997 14.7608 7.99997 14.3198V14M7.99997 4H2V14H7.99997M7.99997 4V14"></path></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M7.99997 20H17.1919C17.9865 20 18.7058 19.5296 19.0243 18.8016L21.8323 12.3833C21.9429 12.1305 22 11.8576 22 11.5816V11C22 9.89543 21.1045 9 20 9H13.5L14.7066 4.5757C14.8772 3.95023 14.5826 3.2913 14.0027 3.00136V3.00136C13.4204 2.7102 12.7134 2.87256 12.3164 3.3886L8.41472 8.46082C8.14579 8.81044 7.99997 9.23915 7.99997 9.68024V20ZM7.99997 20H2V10H7.99997V20Z"></path></svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
2
+ <svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="M12 9V13L15 15M3 6L6.5 3M21 6L17.5 3M12 21C16.4183 21 20 17.4183 20 13C20 8.58172 16.4183 5 12 5C7.58172 5 4 8.58172 4 13C4 17.4183 7.58172 21 12 21Z" stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M2 12C2 9.23858 4.23858 7 7 7H17C19.7614 7 22 9.23858 22 12C22 14.7614 19.7614 17 17 17H7C4.23858 17 2 14.7614 2 12Z"></path><path d="M22 12C22 14.7614 19.7614 17 17 17C14.2386 17 12 14.7614 12 12C12 9.23858 14.2386 7 17 7C19.7614 7 22 9.23858 22 12Z"></path></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor"><path d="M11 1.75V3h2.25a.75.75 0 0 1 0 1.5H2.75a.75.75 0 0 1 0-1.5H5V1.75C5 .784 5.784 0 6.75 0h2.5C10.216 0 11 .784 11 1.75ZM4.496 6.675l.66 6.6a.25.25 0 0 0 .249.225h5.19a.25.25 0 0 0 .249-.225l.66-6.6a.75.75 0 0 1 1.492.149l-.66 6.6A1.748 1.748 0 0 1 10.595 15h-5.19a1.75 1.75 0 0 1-1.741-1.575l-.66-6.6a.75.75 0 1 1 1.492-.15ZM6.5 1.75V3h3V1.75a.25.25 0 0 0-.25-.25h-2.5a.25.25 0 0 0-.25.25Z"></path></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M13 3H7C5.89543 3 5 3.89543 5 5V10M13 3L19 9M13 3V8C13 8.55228 13.4477 9 14 9H19M19 9V19C19 20.1046 18.1046 21 17 21H10C7.79086 21 6 19.2091 6 17V17C6 14.7909 7.79086 13 10 13H13M13 13L10 10M13 13L10 16"></path></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor"><path d="M2.75 14A1.75 1.75 0 0 1 1 12.25v-2.5a.75.75 0 0 1 1.5 0v2.5c0 .138.112.25.25.25h10.5a.25.25 0 0 0 .25-.25v-2.5a.75.75 0 0 1 1.5 0v2.5A1.75 1.75 0 0 1 13.25 14Z"></path><path d="M11.78 4.72a.749.749 0 1 1-1.06 1.06L8.75 3.811V9.5a.75.75 0 0 1-1.5 0V3.811L5.28 5.78a.749.749 0 1 1-1.06-1.06l3.25-3.25a.749.749 0 0 1 1.06 0l3.25 3.25Z"></path></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor"><path d="M0 3.75C0 2.784.784 2 1.75 2h12.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0 1 14.25 14H1.75A1.75 1.75 0 0 1 0 12.25Zm1.75-.25a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25v-8.5a.25.25 0 0 0-.25-.25Z"></path><path d="M6 10.559V5.442a.25.25 0 0 1 .379-.215l4.264 2.559a.25.25 0 0 1 0 .428l-4.264 2.559A.25.25 0 0 1 6 10.559Z"></path></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 6V17C3 18.6569 4.34315 20 6 20H20C20.5523 20 21 19.5523 21 19V16M19 8H5C3.89543 8 3 7.10457 3 6V6C3 4.89543 3.89543 4 5 4H18C18.5523 4 19 4.44772 19 5V8ZM19 8H20C20.5523 8 21 8.44772 21 9V12M21 12H18C16.8954 12 16 12.8954 16 14V14C16 15.1046 16.8954 16 18 16H21M21 12V16"></path></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor"><path d="M0 2.75C0 1.784.784 1 1.75 1h12.5c.966 0 1.75.784 1.75 1.75v10.5A1.75 1.75 0 0 1 14.25 15H1.75A1.75 1.75 0 0 1 0 13.25ZM14.5 6h-13v7.25c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25Zm-6-3.5v2h6V2.75a.25.25 0 0 0-.25-.25ZM5 2.5v2h2v-2Zm-3.25 0a.25.25 0 0 0-.25.25V4.5h2v-2Z"></path></svg>
package/src/index.mjs ADDED
@@ -0,0 +1,29 @@
1
+ export { default as AccordionGroup } from "./components/AccordionGroup.mjs";
2
+ export { default as Badge } from "./components/Badge.mjs";
3
+ export { default as Button } from "./components/Button.mjs";
4
+ export { default as Checkbox } from "./components/Checkbox.mjs";
5
+ export { default as ComboBox } from "./components/ComboBox.mjs";
6
+ export { default as Container } from "./components/Container.mjs";
7
+ export { default as DatePicker } from "./components/DatePicker.mjs";
8
+ export { default as Dialog } from "./components/Dialog.mjs";
9
+ export { default as DropdownMenu } from "./components/DropdownMenu.mjs";
10
+ export { default as Grid } from "./components/Grid.mjs";
11
+ export { default as HStack } from "./components/HStack.mjs";
12
+ export { default as Icon } from "./components/Icon.mjs";
13
+ export { default as InputField } from "./components/InputField.mjs";
14
+ export { default as NavigationBar } from "./components/NavigationBar.mjs";
15
+ export { default as PageHeader } from "./components/PageHeader.mjs";
16
+ export { default as PageSection } from "./components/PageSection.mjs";
17
+ export { default as PopoverMenu } from "./components/PopoverMenu.mjs";
18
+ export { default as RadioCheckbox } from "./components/RadioCheckbox.mjs";
19
+ export { default as SearchBox } from "./components/SearchBox.mjs";
20
+ export { default as Sidebar } from "./components/Sidebar.mjs";
21
+ export { default as Table } from "./components/Table.mjs";
22
+ export { default as Text } from "./components/Text.mjs";
23
+ export { default as TimePicker } from "./components/TimePicker.mjs";
24
+ export { default as ToastNotification } from "./components/ToastNotification.mjs";
25
+ export { default as ToggleSwitch } from "./components/ToggleSwitch.mjs";
26
+ export { default as VStack } from "./components/VStack.mjs";
27
+
28
+ export { dialogState, showDialog, hideDialog } from "./components/Dialog.mjs";
29
+ export { toastState, showToast, hideToast } from "./components/ToastNotification.mjs";
@@ -0,0 +1,70 @@
1
+ .accordion-group {
2
+ display: grid;
3
+ gap: var(--base-gap);
4
+ }
5
+
6
+ .accordion-item {
7
+ border: 1px solid var(--border-color);
8
+ border-radius: var(--min-control-radius);
9
+ background-color: var(--background-color);
10
+ overflow: hidden;
11
+ transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
12
+ }
13
+
14
+ .accordion-item.accordion-open {
15
+ background-color: var(--background-color);
16
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
17
+ }
18
+
19
+ .accordion-header {
20
+ width: 100%;
21
+ display: flex;
22
+ align-items: center;
23
+ gap: var(--base-gap);
24
+ padding: var(--base-padding);
25
+ background: transparent;
26
+ border: none;
27
+ color: var(--color-primary);
28
+ font-family: var(--font-family);
29
+ font-size: var(--font-size);
30
+ text-align: left;
31
+ justify-content: flex-start;
32
+ cursor: pointer;
33
+ }
34
+
35
+ .accordion-header:focus-visible {
36
+ outline: 2px solid var(--accent-color);
37
+ outline-offset: 2px;
38
+ }
39
+
40
+ .accordion-title {
41
+ flex: 1;
42
+ font-weight: var(--font-semibold);
43
+ color: var(--color-primary);
44
+ }
45
+
46
+ .accordion-icon {
47
+ flex-shrink: 0;
48
+ transition: transform 0.2s ease, background-color 0.2s ease;
49
+ }
50
+
51
+ .accordion-content {
52
+ display: grid;
53
+ grid-template-rows: 0fr;
54
+ transition: grid-template-rows 0.25s ease;
55
+ }
56
+
57
+ .accordion-open .accordion-content {
58
+ grid-template-rows: 1fr;
59
+ }
60
+
61
+ .accordion-body {
62
+ overflow: hidden;
63
+ }
64
+
65
+ .accordion-description {
66
+ padding: 0 var(--base-padding) var(--base-padding);
67
+ color: var(--color-secondary);
68
+ font-size: var(--font-size);
69
+ margin: 0;
70
+ }
@@ -0,0 +1,118 @@
1
+ button,
2
+ .btn {
3
+ appearance: none;
4
+ border: none;
5
+ cursor: pointer;
6
+ display: inline-flex;
7
+ align-items: center;
8
+ justify-content: center;
9
+ gap: var(--base-gap);
10
+ padding: calc(var(--base-padding) * 0.5) var(--base-padding);
11
+ border-radius: var(--min-control-radius);
12
+ font-family: var(--font-family);
13
+ font-size: var(--font-size);
14
+ font-weight: var(--font-semibold);
15
+ min-height: var(--min-control-height);
16
+ line-height: 1;
17
+ box-sizing: border-box;
18
+ transition: opacity 0.2s, background-color 0.2s;
19
+ text-decoration: none; /* In case applied to <a> */
20
+ }
21
+
22
+ button:focus,
23
+ .btn:focus,
24
+ button:focus-visible,
25
+ .btn:focus-visible {
26
+ outline: none;
27
+ box-shadow: none;
28
+ }
29
+
30
+ /* Button Sizes */
31
+ .btn-lg {
32
+ padding: calc(var(--base-padding) * 0.75) calc(var(--base-padding) * 1.25);
33
+ font-size: 1.1rem;
34
+ }
35
+
36
+ .btn-xl {
37
+ padding: var(--base-padding) calc(var(--base-padding) * 1.5);
38
+ font-size: 1.2rem;
39
+ }
40
+
41
+ /* Default / Regular (Accent) */
42
+ .btn {
43
+ background-color: var(--accent-color);
44
+ color: white;
45
+ }
46
+
47
+ .btn:visited {
48
+ color: white;
49
+ }
50
+
51
+ .btn:hover {
52
+ opacity: 0.9;
53
+ color: white;
54
+ }
55
+
56
+ .btn:active {
57
+ opacity: 0.8;
58
+ }
59
+
60
+ /* Flat Button */
61
+ .btn-flat {
62
+ background-color: transparent;
63
+ color: var(--color-primary);
64
+ }
65
+
66
+ .btn-flat:visited {
67
+ color: var(--color-primary);
68
+ }
69
+
70
+ .btn-flat:hover {
71
+ background-color: var(--highlight-background-color);
72
+ color: var(--color-primary);
73
+ }
74
+
75
+ .btn-flat:active {
76
+ background-color: var(--border-color);
77
+ }
78
+
79
+ /* Outline Button (Optional but useful) */
80
+ .btn-outline {
81
+ background-color: transparent;
82
+ border: 1px solid var(--border-color);
83
+ color: var(--color-primary);
84
+ }
85
+
86
+ .btn-outline:visited {
87
+ color: var(--color-primary);
88
+ }
89
+
90
+ .btn-outline:hover {
91
+ border-color: var(--color-secondary);
92
+ background-color: var(--highlight-background-color);
93
+ color: var(--color-primary);
94
+ }
95
+
96
+ /* Destructive Button */
97
+ .btn-destructive {
98
+ background-color: var(--color-destructive-dimmed);
99
+ color: white;
100
+ }
101
+
102
+ .btn-destructive:visited {
103
+ color: white;
104
+ }
105
+
106
+ .btn-destructive:hover {
107
+ background-color: var(--color-destructive);
108
+ color: white;
109
+ }
110
+
111
+ /* Disabled State */
112
+ button:disabled,
113
+ .btn:disabled,
114
+ .btn-disabled {
115
+ opacity: 0.5;
116
+ cursor: not-allowed;
117
+ pointer-events: none;
118
+ }
@@ -0,0 +1,131 @@
1
+ body {
2
+ color-scheme: light dark;
3
+ color: var(--color-primary-dimmed);
4
+ background-color: var(--background-color);
5
+ }
6
+
7
+ * {
8
+ color-scheme: inherit;
9
+ }
10
+
11
+ .bg-base {
12
+ background-color: var(--background-color) !important;
13
+ }
14
+
15
+ /* Text Color Utilities */
16
+ .text-primary {
17
+ color: var(--color-primary);
18
+ }
19
+
20
+ .text-primary-dimmed {
21
+ color: var(--color-primary-dimmed);
22
+ }
23
+
24
+ .text-secondary {
25
+ color: var(--color-secondary);
26
+ }
27
+
28
+ .text-tertiary {
29
+ color: var(--color-tertiary);
30
+ }
31
+
32
+ .text-quaternary {
33
+ color: var(--color-quaternary);
34
+ }
35
+
36
+ .text-destructive {
37
+ color: var(--color-destructive);
38
+ }
39
+
40
+ .text-destructive-dimmed {
41
+ color: var(--color-destructive-dimmed);
42
+ }
43
+
44
+ .text-accent {
45
+ color: var(--accent-color);
46
+ }
47
+
48
+ .text-accent-dimmed {
49
+ color: var(--accent-color-dimmed);
50
+ }
51
+
52
+ .text-white {
53
+ color: white;
54
+ }
55
+
56
+ /* Background Color Utilities (useful for icon masking) */
57
+ .bg-base {
58
+ background-color: var(--background-color) !important;
59
+ }
60
+
61
+ .icon-base {
62
+ background-color: var(--color-primary) !important;
63
+ }
64
+
65
+ .icon-white {
66
+ background-color: white !important;
67
+ }
68
+
69
+ .icon-secondary {
70
+ background-color: var(--color-secondary) !important;
71
+ }
72
+
73
+ .icon-tertiary {
74
+ background-color: var(--color-tertiary) !important;
75
+ }
76
+
77
+ .icon-quaternary {
78
+ background-color: var(--color-quaternary) !important;
79
+ }
80
+
81
+ .icon-destructive {
82
+ background-color: var(--color-destructive) !important;
83
+ }
84
+
85
+ .fg-base, .fg-primary {
86
+ color: var(--color-primary) !important;
87
+ }
88
+
89
+ .fg-tertiary {
90
+ color: var(--color-tertiary) !important;
91
+ }
92
+
93
+ .bg-dimmed {
94
+ background-color: var(--alternate-background-color) !important;
95
+ }
96
+
97
+ .bg-destructive {
98
+ background-color: var(--color-destructive) !important;
99
+ }
100
+
101
+ .bg-destructive-dimmed {
102
+ background-color: var(--color-destructive-dimmed) !important;
103
+ }
104
+
105
+ .bg-success {
106
+ background-color: var(--color-success) !important;
107
+ }
108
+
109
+ .bg-accent {
110
+ background-color: var(--accent-color) !important;
111
+ }
112
+
113
+ .bg-accent-dimmed {
114
+ background-color: var(--accent-color-dimmed) !important;
115
+ }
116
+
117
+ .bg-alternate {
118
+ background-color: var(--alternate-background-color) !important;
119
+ }
120
+
121
+ .bg-highlight {
122
+ background-color: var(--highlight-background-color) !important;
123
+ }
124
+
125
+ .bg-white {
126
+ background-color: white !important;
127
+ }
128
+
129
+ .bg-black {
130
+ background-color: black !important;
131
+ }