@birdycom/omniaui 0.11.0 → 0.11.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +21 -21
  3. package/bin/lib/add.mjs +126 -126
  4. package/bin/lib/catalog.mjs +169 -169
  5. package/bin/lib/project.mjs +90 -90
  6. package/bin/omniaui.mjs +69 -69
  7. package/dist/code-block.css +25 -25
  8. package/dist/components-extra.css +916 -914
  9. package/dist/components.css +6565 -6469
  10. package/dist/components.min.css +1 -1
  11. package/dist/data-table.d.ts +9 -9
  12. package/dist/data-table.js +505 -505
  13. package/dist/docs-ui.css +267 -265
  14. package/dist/oc-theme.css +69 -69
  15. package/dist/parts/app-accordion-accent.css +60 -60
  16. package/dist/parts/app-alpha-tabs.css +68 -68
  17. package/dist/parts/app-busy-overlay.css +25 -25
  18. package/dist/parts/app-column-menu.css +85 -85
  19. package/dist/parts/app-confirm-dialog.css +70 -70
  20. package/dist/parts/app-cookie-consent.css +63 -63
  21. package/dist/parts/app-data-table.css +174 -174
  22. package/dist/parts/app-greeting.css +47 -47
  23. package/dist/parts/app-list-toolbar.css +81 -81
  24. package/dist/parts/app-page-header.css +54 -54
  25. package/dist/parts/app-severity-card.css +91 -91
  26. package/dist/parts/app-sidebar-dark.css +15 -15
  27. package/dist/parts/app-sortable-row.css +52 -52
  28. package/dist/parts/app-stat-card.css +68 -68
  29. package/dist/parts/app-table-actions.css +71 -71
  30. package/dist/parts/app-table-compact.css +54 -54
  31. package/dist/parts/app-top-progress.css +68 -68
  32. package/dist/parts/app-tree.css +104 -104
  33. package/dist/parts/app-upgrade-banner.css +90 -90
  34. package/dist/parts/app-version-banner.css +80 -80
  35. package/dist/parts/data-chart-line.css +167 -167
  36. package/dist/parts/forms-affix-input.css +75 -75
  37. package/dist/parts/forms-barcode-input.css +75 -75
  38. package/dist/parts/forms-chip-filter.css +91 -91
  39. package/dist/parts/forms-color-select.css +97 -89
  40. package/dist/parts/forms-decimal-input.css +51 -51
  41. package/dist/parts/forms-filter-counts.css +94 -94
  42. package/dist/parts/forms-language-select.css +89 -76
  43. package/dist/parts/forms-number-input.css +98 -95
  44. package/dist/parts/forms-password-requirements.css +55 -55
  45. package/dist/parts/forms-phone-input.css +85 -85
  46. package/dist/parts/forms-time-input.css +74 -74
  47. package/dist/parts/forms-toggle-field.css +69 -69
  48. package/dist/parts/media-art.css +21 -21
  49. package/dist/parts/media-attachment.css +160 -160
  50. package/dist/parts/media-browser-frame.css +73 -73
  51. package/dist/parts/media-card.css +83 -83
  52. package/dist/parts/media-chat-composer.css +90 -90
  53. package/dist/parts/media-doc-viewer.css +151 -151
  54. package/dist/parts/media-emoji-picker.css +88 -88
  55. package/dist/parts/media-entity-card.css +52 -52
  56. package/dist/parts/media-flip-card.css +78 -78
  57. package/dist/parts/media-image-zoom.css +68 -68
  58. package/dist/parts/media-lightbox.css +131 -131
  59. package/dist/parts/media-message-thread.css +136 -136
  60. package/dist/parts/media-message.css +160 -160
  61. package/dist/parts/media-row.css +78 -78
  62. package/dist/parts/media-stack-card.css +82 -82
  63. package/dist/parts/media-terminal-log.css +76 -76
  64. package/dist/parts/media-thumb.css +71 -71
  65. package/dist/parts/site-fact-list.css +25 -25
  66. package/dist/parts/site-link-arrow.css +34 -34
  67. package/dist/parts/site-marquee.css +34 -34
  68. package/dist/parts/site-next-teaser.css +75 -75
  69. package/dist/parts/site-price-card.css +91 -75
  70. package/dist/parts/site-product-mark.css +66 -66
  71. package/dist/parts/site-project-card.css +111 -111
  72. package/dist/parts/site-prose.css +124 -124
  73. package/dist/parts/site-stack-list.css +48 -48
  74. package/dist/parts/site-timeline.css +54 -54
  75. package/dist/showcase.css +410 -404
  76. package/package.json +69 -69
  77. package/snippets/accordion-accent.html +24 -24
  78. package/snippets/accordion.html +11 -11
  79. package/snippets/affix-input.html +30 -30
  80. package/snippets/alert-dialog.html +22 -22
  81. package/snippets/alert.html +5 -5
  82. package/snippets/alpha-tabs.html +37 -37
  83. package/snippets/aspect-ratio.html +15 -15
  84. package/snippets/attachment.html +43 -43
  85. package/snippets/avatar.html +6 -6
  86. package/snippets/back-link.html +5 -5
  87. package/snippets/badge.html +5 -5
  88. package/snippets/barcode-input.html +18 -18
  89. package/snippets/breadcrumb.html +6 -6
  90. package/snippets/browser-frame.html +18 -18
  91. package/snippets/busy-overlay.html +31 -31
  92. package/snippets/button-group.html +21 -21
  93. package/snippets/button.html +8 -8
  94. package/snippets/calendar.html +43 -43
  95. package/snippets/card.html +17 -17
  96. package/snippets/carousel.html +21 -21
  97. package/snippets/chart-line.html +46 -46
  98. package/snippets/chart.html +27 -27
  99. package/snippets/chat-composer.html +21 -21
  100. package/snippets/checkbox.html +5 -5
  101. package/snippets/checklist.html +23 -23
  102. package/snippets/chip-filter.html +14 -14
  103. package/snippets/code-window.html +20 -20
  104. package/snippets/collapsible.html +19 -19
  105. package/snippets/color-field.html +13 -13
  106. package/snippets/color-select.html +18 -18
  107. package/snippets/column-menu.html +38 -38
  108. package/snippets/combobox.html +19 -19
  109. package/snippets/command.html +24 -24
  110. package/snippets/confirm-dialog.html +32 -32
  111. package/snippets/context-menu.html +25 -25
  112. package/snippets/cookie-consent.html +70 -70
  113. package/snippets/copy-field.html +19 -19
  114. package/snippets/counter.html +2 -2
  115. package/snippets/data-table.html +151 -151
  116. package/snippets/date-picker.html +32 -32
  117. package/snippets/decimal-input.html +20 -20
  118. package/snippets/definition-list.html +20 -20
  119. package/snippets/demo-panel.html +18 -18
  120. package/snippets/doc-viewer.html +58 -58
  121. package/snippets/drawer.html +30 -30
  122. package/snippets/dropdown-menu.html +27 -27
  123. package/snippets/dropdown.html +9 -9
  124. package/snippets/dropzone.html +13 -13
  125. package/snippets/emoji-picker.html +51 -51
  126. package/snippets/empty-state.html +17 -17
  127. package/snippets/entity-card.html +26 -26
  128. package/snippets/expandable-table.html +26 -26
  129. package/snippets/fact-list.html +14 -14
  130. package/snippets/filter-counts.html +30 -30
  131. package/snippets/flip-card.html +22 -22
  132. package/snippets/form-field.html +6 -6
  133. package/snippets/greeting.html +22 -22
  134. package/snippets/heading.html +14 -14
  135. package/snippets/hover-card.html +18 -18
  136. package/snippets/image-zoom.html +30 -30
  137. package/snippets/input-group.html +10 -10
  138. package/snippets/input.html +5 -5
  139. package/snippets/item.html +26 -26
  140. package/snippets/kbd.html +13 -13
  141. package/snippets/label.html +9 -9
  142. package/snippets/language-select.html +26 -26
  143. package/snippets/launcher-card.html +14 -14
  144. package/snippets/lightbox.html +50 -50
  145. package/snippets/link-arrow.html +10 -10
  146. package/snippets/list-toolbar.html +33 -33
  147. package/snippets/marquee.html +15 -15
  148. package/snippets/media-card.html +28 -28
  149. package/snippets/media-row.html +21 -21
  150. package/snippets/media-thumb.html +12 -12
  151. package/snippets/menubar.html +30 -30
  152. package/snippets/message-thread.html +123 -123
  153. package/snippets/message.html +51 -51
  154. package/snippets/modal.html +15 -15
  155. package/snippets/native-select.html +15 -15
  156. package/snippets/navmenu.html +23 -23
  157. package/snippets/next-teaser.html +15 -15
  158. package/snippets/number-input.html +27 -27
  159. package/snippets/otp-input.html +9 -9
  160. package/snippets/page-header.html +24 -24
  161. package/snippets/pagination.html +6 -6
  162. package/snippets/password-input.html +24 -24
  163. package/snippets/password-requirements.html +30 -30
  164. package/snippets/phone-input.html +22 -22
  165. package/snippets/popover.html +15 -15
  166. package/snippets/price-card.html +34 -34
  167. package/snippets/product-mark.html +13 -13
  168. package/snippets/progress.html +4 -4
  169. package/snippets/project-card.html +23 -23
  170. package/snippets/prose.html +54 -54
  171. package/snippets/radio.html +17 -17
  172. package/snippets/recovery-codes.html +20 -20
  173. package/snippets/resizable.html +16 -16
  174. package/snippets/scroll-area.html +20 -20
  175. package/snippets/search.html +8 -8
  176. package/snippets/segmented.html +11 -11
  177. package/snippets/select.html +7 -7
  178. package/snippets/separator.html +15 -15
  179. package/snippets/severity-card.html +35 -35
  180. package/snippets/sheet.html +32 -32
  181. package/snippets/sidebar-docs.html +24 -24
  182. package/snippets/sidebar.html +55 -55
  183. package/snippets/site-footer.html +6 -6
  184. package/snippets/site-header.html +26 -26
  185. package/snippets/skeleton.html +4 -4
  186. package/snippets/slider.html +17 -17
  187. package/snippets/sortable-row.html +31 -31
  188. package/snippets/spinner.html +14 -14
  189. package/snippets/stack-card.html +17 -17
  190. package/snippets/stack-list.html +16 -16
  191. package/snippets/stat-card.html +24 -24
  192. package/snippets/stepper.html +13 -13
  193. package/snippets/switch.html +6 -6
  194. package/snippets/table-actions.html +39 -39
  195. package/snippets/table-compact.html +24 -24
  196. package/snippets/table.html +29 -29
  197. package/snippets/tabs.html +9 -9
  198. package/snippets/tag-input.html +60 -17
  199. package/snippets/terminal-log.html +23 -23
  200. package/snippets/textarea.html +3 -3
  201. package/snippets/theme-switch.html +6 -6
  202. package/snippets/time-input.html +26 -26
  203. package/snippets/timeline.html +28 -28
  204. package/snippets/toast-stack.html +10 -10
  205. package/snippets/toast.html +36 -36
  206. package/snippets/toc.html +13 -13
  207. package/snippets/toggle-field.html +20 -20
  208. package/snippets/toggle.html +22 -22
  209. package/snippets/tooltip.html +4 -4
  210. package/snippets/top-progress.html +12 -12
  211. package/snippets/tree.html +38 -38
  212. package/snippets/upgrade-banner.html +28 -28
  213. package/snippets/user.html +15 -15
  214. package/snippets/version-banner.html +15 -15
package/bin/omniaui.mjs CHANGED
@@ -1,70 +1,70 @@
1
1
  #!/usr/bin/env node
2
- // File: packages/ui/bin/omniaui.mjs
3
- // OmniaUI CLI — copy components and blocks into your project (css | vue | react | blade), list the registry.
4
- // Map: args -> commands (add | list | help | version) -> lib/add.mjs (lib/catalog.mjs, lib/project.mjs)
5
- // Author: Serge Cools | Framework: OmniaUI (on OmniaCSS)
6
- //
7
- // These commands used to be "omniacss add/list" (moved here in October 2026). The CSS build stays in
8
- // the omniacss CLI: "npx omniacss build" (package @birdycom/omniacss-cli).
9
-
10
- import { parseArgs } from "node:util";
11
- import { cmdAdd, cmdList } from "./lib/add.mjs";
12
- import { readJson } from "./lib/project.mjs";
13
-
14
- const HELP = `
15
- OmniaUI CLI
16
-
17
- omniaui add <name...> [-f css|vue|react|blade] [--kind component|block]
18
- copy components/blocks into your project (you own the code)
19
- omniaui add <name...> -f vue --import print the import line for the npm package instead
20
- omniaui list [blocks|components] [-f vue] show what can be added in a flavour
21
-
22
- Options:
23
- -f, --framework <fw> css | vue | react | blade (default: "framework" in omnia.config.json, else detected
24
- from package.json / composer.json, else css)
25
- -k, --kind <kind> component | block (needed when a name exists as both)
26
- --dir <dir> target folder (alias --to); defaults per flavour:
27
- vue/react: resources/js/components/oc (Laravel) or src/components/oc,
28
- css: resources/views/oc-snippets (Laravel) or oc-snippets,
29
- blade: resources/views/components/oc
30
- --all add every component (or block with --kind block)
31
- --force overwrite existing files
32
- --dry-run show what would be copied
33
- --import print the import line for the npm package, copy nothing
34
-
35
- Blocks need @birdycom/omniaui-blocks, wrappers @birdycom/omniaui-vue / -react, Blade birdycom/omniaui-laravel.
36
- Build only the CSS you use with the OmniaCSS CLI: npx omniacss build
37
- `;
38
-
39
- async function main() {
40
- const { values, positionals } = parseArgs({
41
- allowPositionals: true,
42
- options: {
43
- to: { type: "string" },
44
- dir: { type: "string" },
45
- framework: { type: "string", short: "f" },
46
- kind: { type: "string", short: "k" },
47
- all: { type: "boolean" },
48
- force: { type: "boolean" },
49
- "dry-run": { type: "boolean" },
50
- import: { type: "boolean" },
51
- help: { type: "boolean", short: "h" },
52
- version: { type: "boolean", short: "v" },
53
- },
54
- });
55
- const [command, ...rest] = positionals;
56
- if (values.version) {
57
- console.log((await readJson(new URL("../package.json", import.meta.url))).version);
58
- return;
59
- }
60
- switch (command) {
61
- case "add": return cmdAdd(rest, values);
62
- case "list": return cmdList(rest[0], values);
63
- default: console.log(HELP);
64
- }
65
- }
66
-
67
- main().catch((err) => {
68
- console.error(`omniaui: ${err.message}`);
69
- process.exit(1);
70
- });
2
+ // File: packages/ui/bin/omniaui.mjs
3
+ // OmniaUI CLI — copy components and blocks into your project (css | vue | react | blade), list the registry.
4
+ // Map: args -> commands (add | list | help | version) -> lib/add.mjs (lib/catalog.mjs, lib/project.mjs)
5
+ // Author: Serge Cools | Framework: OmniaUI (on OmniaCSS)
6
+ //
7
+ // These commands used to be "omniacss add/list" (moved here in October 2026). The CSS build stays in
8
+ // the omniacss CLI: "npx omniacss build" (package @birdycom/omniacss-cli).
9
+
10
+ import { parseArgs } from "node:util";
11
+ import { cmdAdd, cmdList } from "./lib/add.mjs";
12
+ import { readJson } from "./lib/project.mjs";
13
+
14
+ const HELP = `
15
+ OmniaUI CLI
16
+
17
+ omniaui add <name...> [-f css|vue|react|blade] [--kind component|block]
18
+ copy components/blocks into your project (you own the code)
19
+ omniaui add <name...> -f vue --import print the import line for the npm package instead
20
+ omniaui list [blocks|components] [-f vue] show what can be added in a flavour
21
+
22
+ Options:
23
+ -f, --framework <fw> css | vue | react | blade (default: "framework" in omnia.config.json, else detected
24
+ from package.json / composer.json, else css)
25
+ -k, --kind <kind> component | block (needed when a name exists as both)
26
+ --dir <dir> target folder (alias --to); defaults per flavour:
27
+ vue/react: resources/js/components/oc (Laravel) or src/components/oc,
28
+ css: resources/views/oc-snippets (Laravel) or oc-snippets,
29
+ blade: resources/views/components/oc
30
+ --all add every component (or block with --kind block)
31
+ --force overwrite existing files
32
+ --dry-run show what would be copied
33
+ --import print the import line for the npm package, copy nothing
34
+
35
+ Blocks need @birdycom/omniaui-blocks, wrappers @birdycom/omniaui-vue / -react, Blade birdycom/omniaui-laravel.
36
+ Build only the CSS you use with the OmniaCSS CLI: npx omniacss build
37
+ `;
38
+
39
+ async function main() {
40
+ const { values, positionals } = parseArgs({
41
+ allowPositionals: true,
42
+ options: {
43
+ to: { type: "string" },
44
+ dir: { type: "string" },
45
+ framework: { type: "string", short: "f" },
46
+ kind: { type: "string", short: "k" },
47
+ all: { type: "boolean" },
48
+ force: { type: "boolean" },
49
+ "dry-run": { type: "boolean" },
50
+ import: { type: "boolean" },
51
+ help: { type: "boolean", short: "h" },
52
+ version: { type: "boolean", short: "v" },
53
+ },
54
+ });
55
+ const [command, ...rest] = positionals;
56
+ if (values.version) {
57
+ console.log((await readJson(new URL("../package.json", import.meta.url))).version);
58
+ return;
59
+ }
60
+ switch (command) {
61
+ case "add": return cmdAdd(rest, values);
62
+ case "list": return cmdList(rest[0], values);
63
+ default: console.log(HELP);
64
+ }
65
+ }
66
+
67
+ main().catch((err) => {
68
+ console.error(`omniaui: ${err.message}`);
69
+ process.exit(1);
70
+ });
@@ -12,31 +12,31 @@
12
12
  */
13
13
 
14
14
  /* ========== Theme variables (Birdycom Omnia Dark) ========== */
15
- :root {
16
- --oc-syntax-bg: var(--color-black-30); /* oklch(22% 0 none) */
17
- --oc-syntax-bg-preview: var(--color-shallowblue-60); /* oklch(16.6694200968% 0.0414311339 269.5585332855deg) */
18
- --oc-syntax-fg: var(--color-silver-60); /* oklch(75.9328463574% 0.008 none) */
19
- --oc-syntax-comment: var(--color-purple-2); /* oklch(74.5202011783% 0.1586314015 328.363415175deg) */
20
- --oc-syntax-string: var(--color-green-2); /* oklch(78.869080581% 0.1450237607 142.4953450414deg) */
21
- --oc-syntax-keyword: var(--color-purple-2); /* oklch(74.5202011783% 0.1586314015 328.363415175deg) */
22
- --oc-syntax-variable: var(--color-skycyan-30); /* oklch(86.5517470794% 0.0931746865 230.317904058deg) */
23
- --oc-syntax-function: var(--color-skycyan-60); /* oklch(77.7931310956% 0.1072512965 230.317904058deg) */
24
- --oc-syntax-number: var(--color-peru-40); /* oklch(72.3245616775% 0.1153837684 62.1815775778deg) */
25
- --oc-syntax-operator: var(--color-red-50); /* oklch(65.0278042086% 0.2473759717 29.2338802796deg) */
26
- --oc-syntax-constant: var(--color-skycyan-70); /* oklch(72.8276120895% 0.1132257599 230.317904058deg) */
27
- --oc-syntax-storage: var(--color-green-2); /* oklch(78.869080581% 0.1450237607 142.4953450414deg) */
28
- --oc-syntax-tag: var(--color-brown-10); /* oklch(67.7979779433% 0.1404981732 25.5621058937deg) */
29
- --oc-syntax-attr: var(--color-skycyan-70); /* oklch(72.8276120895% 0.1132257599 230.317904058deg) */
30
- --oc-syntax-prop: var(--color-green-2); /* oklch(78.869080581% 0.1450237607 142.4953450414deg) */
31
- --oc-syntax-value: var(--color-teal-10); /* oklch(71.6735992853% 0.0815848415 194.768959898deg) */
32
- --oc-syntax-cls: var(--color-wheat-70); /* oklch(79.977339078% 0.0750386695 83.0327715335deg) */
33
- --oc-syntax-id: var(--color-skycyan-70); /* oklch(72.8276120895% 0.1132257599 230.317904058deg) */
34
- --oc-syntax-unit: var(--color-peru-40); /* oklch(72.3245616775% 0.1153837684 62.1815775778deg) */
35
- --oc-syntax-key: var(--color-brown-10); /* oklch(67.7979779433% 0.1404981732 25.5621058937deg) */
36
-
37
- /* oc-code-block: line numbers and tab size (match editor: 2 spaces) */
38
- --oc-code-block-tab-size: 2;
39
- --oc-code-block-line-number-color: oklch(from var(--color-white-2) l c h / 0.25);
15
+ :root {
16
+ --oc-syntax-bg: var(--color-black-30); /* oklch(22% 0 none) */
17
+ --oc-syntax-bg-preview: var(--color-shallowblue-60); /* oklch(16.6694200968% 0.0414311339 269.5585332855deg) */
18
+ --oc-syntax-fg: var(--color-silver-60); /* oklch(75.9328463574% 0.008 none) */
19
+ --oc-syntax-comment: var(--color-purple-2); /* oklch(74.5202011783% 0.1586314015 328.363415175deg) */
20
+ --oc-syntax-string: var(--color-green-2); /* oklch(78.869080581% 0.1450237607 142.4953450414deg) */
21
+ --oc-syntax-keyword: var(--color-purple-2); /* oklch(74.5202011783% 0.1586314015 328.363415175deg) */
22
+ --oc-syntax-variable: var(--color-skycyan-30); /* oklch(86.5517470794% 0.0931746865 230.317904058deg) */
23
+ --oc-syntax-function: var(--color-skycyan-60); /* oklch(77.7931310956% 0.1072512965 230.317904058deg) */
24
+ --oc-syntax-number: var(--color-peru-40); /* oklch(72.3245616775% 0.1153837684 62.1815775778deg) */
25
+ --oc-syntax-operator: var(--color-red-50); /* oklch(65.0278042086% 0.2473759717 29.2338802796deg) */
26
+ --oc-syntax-constant: var(--color-skycyan-70); /* oklch(72.8276120895% 0.1132257599 230.317904058deg) */
27
+ --oc-syntax-storage: var(--color-green-2); /* oklch(78.869080581% 0.1450237607 142.4953450414deg) */
28
+ --oc-syntax-tag: var(--color-brown-10); /* oklch(67.7979779433% 0.1404981732 25.5621058937deg) */
29
+ --oc-syntax-attr: var(--color-skycyan-70); /* oklch(72.8276120895% 0.1132257599 230.317904058deg) */
30
+ --oc-syntax-prop: var(--color-green-2); /* oklch(78.869080581% 0.1450237607 142.4953450414deg) */
31
+ --oc-syntax-value: var(--color-teal-10); /* oklch(71.6735992853% 0.0815848415 194.768959898deg) */
32
+ --oc-syntax-cls: var(--color-wheat-70); /* oklch(79.977339078% 0.0750386695 83.0327715335deg) */
33
+ --oc-syntax-id: var(--color-skycyan-70); /* oklch(72.8276120895% 0.1132257599 230.317904058deg) */
34
+ --oc-syntax-unit: var(--color-peru-40); /* oklch(72.3245616775% 0.1153837684 62.1815775778deg) */
35
+ --oc-syntax-key: var(--color-brown-10); /* oklch(67.7979779433% 0.1404981732 25.5621058937deg) */
36
+
37
+ /* oc-code-block: line numbers and tab size (match editor: 2 spaces) */
38
+ --oc-code-block-tab-size: 2;
39
+ --oc-code-block-line-number-color: oklch(from var(--color-white-2) l c h / 0.25);
40
40
  }
41
41
 
42
42
  /* ========== oc-code-block wrapper (line numbers + tab-size) ========== */