@techfides/ui-library-design 0.5.0 → 0.8.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 (169) hide show
  1. package/dist/anatomies.d.ts +1586 -0
  2. package/dist/anatomies.js +107 -0
  3. package/dist/anatomies.js.map +1 -0
  4. package/dist/anatomy.d.ts +13 -0
  5. package/dist/anatomy.js +6 -0
  6. package/dist/anatomy.js.map +1 -0
  7. package/dist/cn.generated.js +217 -0
  8. package/dist/cn.generated.js.map +1 -0
  9. package/dist/cn.js +10 -166
  10. package/dist/cn.js.map +1 -1
  11. package/dist/control.d.ts +1 -2
  12. package/dist/control.js +1 -2
  13. package/dist/control.js.map +1 -1
  14. package/dist/index.d.ts +55 -52
  15. package/dist/index.js +59 -56
  16. package/dist/recipes/accordion.d.ts +28 -1
  17. package/dist/recipes/accordion.js +29 -1
  18. package/dist/recipes/accordion.js.map +1 -1
  19. package/dist/recipes/alert.d.ts +45 -1
  20. package/dist/recipes/alert.js +45 -1
  21. package/dist/recipes/alert.js.map +1 -1
  22. package/dist/recipes/band.d.ts +11 -1
  23. package/dist/recipes/band.js +7 -1
  24. package/dist/recipes/band.js.map +1 -1
  25. package/dist/recipes/bars.d.ts +60 -1
  26. package/dist/recipes/bars.js +59 -1
  27. package/dist/recipes/bars.js.map +1 -1
  28. package/dist/recipes/brandMark.d.ts +8 -1
  29. package/dist/recipes/brandMark.js +7 -1
  30. package/dist/recipes/brandMark.js.map +1 -1
  31. package/dist/recipes/button.d.ts +41 -4
  32. package/dist/recipes/button.js +31 -2
  33. package/dist/recipes/button.js.map +1 -1
  34. package/dist/recipes/cardHeader.d.ts +18 -1
  35. package/dist/recipes/cardHeader.js +19 -1
  36. package/dist/recipes/cardHeader.js.map +1 -1
  37. package/dist/recipes/checkbox.d.ts +16 -1
  38. package/dist/recipes/checkbox.js +16 -3
  39. package/dist/recipes/checkbox.js.map +1 -1
  40. package/dist/recipes/chip.d.ts +41 -2
  41. package/dist/recipes/chip.js +34 -1
  42. package/dist/recipes/chip.js.map +1 -1
  43. package/dist/recipes/codeEditor.d.ts +8 -1
  44. package/dist/recipes/codeEditor.js +7 -1
  45. package/dist/recipes/codeEditor.js.map +1 -1
  46. package/dist/recipes/datePicker.d.ts +62 -1
  47. package/dist/recipes/datePicker.js +56 -3
  48. package/dist/recipes/datePicker.js.map +1 -1
  49. package/dist/recipes/dialog.d.ts +49 -1
  50. package/dist/recipes/dialog.js +40 -1
  51. package/dist/recipes/dialog.js.map +1 -1
  52. package/dist/recipes/feature.d.ts +30 -1
  53. package/dist/recipes/feature.js +30 -2
  54. package/dist/recipes/feature.js.map +1 -1
  55. package/dist/recipes/field.js +1 -1
  56. package/dist/recipes/findings.d.ts +33 -1
  57. package/dist/recipes/findings.js +34 -1
  58. package/dist/recipes/findings.js.map +1 -1
  59. package/dist/recipes/heading.d.ts +12 -2
  60. package/dist/recipes/heading.js +7 -1
  61. package/dist/recipes/heading.js.map +1 -1
  62. package/dist/recipes/heartbeat.d.ts +52 -2
  63. package/dist/recipes/heartbeat.js +51 -4
  64. package/dist/recipes/heartbeat.js.map +1 -1
  65. package/dist/recipes/ink.d.ts +11 -0
  66. package/dist/recipes/ink.js +13 -0
  67. package/dist/recipes/ink.js.map +1 -0
  68. package/dist/recipes/input.d.ts +55 -1
  69. package/dist/recipes/input.js +52 -2
  70. package/dist/recipes/input.js.map +1 -1
  71. package/dist/recipes/listItem.d.ts +18 -1
  72. package/dist/recipes/listItem.js +20 -1
  73. package/dist/recipes/listItem.js.map +1 -1
  74. package/dist/recipes/listbox.d.ts +22 -2
  75. package/dist/recipes/listbox.js +19 -1
  76. package/dist/recipes/listbox.js.map +1 -1
  77. package/dist/recipes/marquee.d.ts +26 -2
  78. package/dist/recipes/marquee.js +24 -1
  79. package/dist/recipes/marquee.js.map +1 -1
  80. package/dist/recipes/menu.d.ts +33 -1
  81. package/dist/recipes/menu.js +29 -1
  82. package/dist/recipes/menu.js.map +1 -1
  83. package/dist/recipes/metaRow.d.ts +11 -2
  84. package/dist/recipes/metaRow.js +7 -1
  85. package/dist/recipes/metaRow.js.map +1 -1
  86. package/dist/recipes/meter.d.ts +36 -2
  87. package/dist/recipes/meter.js +34 -1
  88. package/dist/recipes/meter.js.map +1 -1
  89. package/dist/recipes/motion.d.ts +9 -1
  90. package/dist/recipes/nebula.js +1 -1
  91. package/dist/recipes/numberRange.d.ts +44 -1
  92. package/dist/recipes/numberRange.js +36 -1
  93. package/dist/recipes/numberRange.js.map +1 -1
  94. package/dist/recipes/paper.d.ts +55 -2
  95. package/dist/recipes/paper.js +47 -4
  96. package/dist/recipes/paper.js.map +1 -1
  97. package/dist/recipes/progressBar.d.ts +8 -1
  98. package/dist/recipes/progressBar.js +7 -1
  99. package/dist/recipes/progressBar.js.map +1 -1
  100. package/dist/recipes/queue.d.ts +33 -1
  101. package/dist/recipes/queue.js +35 -1
  102. package/dist/recipes/queue.js.map +1 -1
  103. package/dist/recipes/radioGroup.d.ts +18 -1
  104. package/dist/recipes/radioGroup.js +21 -3
  105. package/dist/recipes/radioGroup.js.map +1 -1
  106. package/dist/recipes/scopeSwitcher.d.ts +38 -1
  107. package/dist/recipes/scopeSwitcher.js +40 -1
  108. package/dist/recipes/scopeSwitcher.js.map +1 -1
  109. package/dist/recipes/scrollArea.d.ts +12 -3
  110. package/dist/recipes/scrollArea.js +7 -1
  111. package/dist/recipes/scrollArea.js.map +1 -1
  112. package/dist/recipes/searchPalette.d.ts +48 -1
  113. package/dist/recipes/searchPalette.js +49 -1
  114. package/dist/recipes/searchPalette.js.map +1 -1
  115. package/dist/recipes/sectionHeader.d.ts +20 -2
  116. package/dist/recipes/sectionHeader.js +20 -3
  117. package/dist/recipes/sectionHeader.js.map +1 -1
  118. package/dist/recipes/segmentedControl.d.ts +8 -1
  119. package/dist/recipes/segmentedControl.js +7 -1
  120. package/dist/recipes/segmentedControl.js.map +1 -1
  121. package/dist/recipes/select.d.ts +57 -1
  122. package/dist/recipes/select.js +51 -1
  123. package/dist/recipes/select.js.map +1 -1
  124. package/dist/recipes/separator.d.ts +13 -2
  125. package/dist/recipes/separator.js +8 -2
  126. package/dist/recipes/separator.js.map +1 -1
  127. package/dist/recipes/sidebar.d.ts +128 -2
  128. package/dist/recipes/sidebar.js +125 -2
  129. package/dist/recipes/sidebar.js.map +1 -1
  130. package/dist/recipes/sky.d.ts +31 -1
  131. package/dist/recipes/sky.js +30 -1
  132. package/dist/recipes/sky.js.map +1 -1
  133. package/dist/recipes/slider.d.ts +15 -1
  134. package/dist/recipes/slider.js +14 -1
  135. package/dist/recipes/slider.js.map +1 -1
  136. package/dist/recipes/stat.d.ts +71 -1
  137. package/dist/recipes/stat.js +73 -3
  138. package/dist/recipes/stat.js.map +1 -1
  139. package/dist/recipes/switch.d.ts +10 -1
  140. package/dist/recipes/switch.js +9 -3
  141. package/dist/recipes/switch.js.map +1 -1
  142. package/dist/recipes/table.d.ts +63 -3
  143. package/dist/recipes/table.js +56 -2
  144. package/dist/recipes/table.js.map +1 -1
  145. package/dist/recipes/tail.d.ts +40 -5
  146. package/dist/recipes/tail.js +37 -5
  147. package/dist/recipes/tail.js.map +1 -1
  148. package/dist/recipes/text.d.ts +16 -3
  149. package/dist/recipes/text.js +8 -3
  150. package/dist/recipes/text.js.map +1 -1
  151. package/dist/recipes/textarea.d.ts +46 -1
  152. package/dist/recipes/textarea.js +41 -1
  153. package/dist/recipes/textarea.js.map +1 -1
  154. package/dist/recipes/tile.d.ts +23 -1
  155. package/dist/recipes/tile.js +19 -1
  156. package/dist/recipes/tile.js.map +1 -1
  157. package/dist/recipes/tooltip.d.ts +8 -1
  158. package/dist/recipes/tooltip.js +7 -1
  159. package/dist/recipes/tooltip.js.map +1 -1
  160. package/dist/recipes/topBar.d.ts +43 -1
  161. package/dist/recipes/topBar.js +44 -1
  162. package/dist/recipes/topBar.js.map +1 -1
  163. package/dist/recipes/trail.d.ts +55 -5
  164. package/dist/recipes/trail.js +47 -5
  165. package/dist/recipes/trail.js.map +1 -1
  166. package/dist/recipes/userMenu.d.ts +23 -1
  167. package/dist/recipes/userMenu.js +24 -1
  168. package/dist/recipes/userMenu.js.map +1 -1
  169. package/package.json +3 -2
@@ -1,3 +1,4 @@
1
+ import { anatomy } from "../anatomy.js";
1
2
  import { controlInert, controlPress, controlReach } from "../parts/control.js";
2
3
  import { ruleFading } from "../parts/rule.js";
3
4
  import { mirrorMotion } from "./motion.js";
@@ -57,7 +58,54 @@ const searchFootRecipe = cva([
57
58
  "flex items-center justify-between gap-3 rounded-b-tf-card px-5 py-3",
58
59
  "text-tf-caption-sm text-tf-muted"
59
60
  ]);
61
+ const searchPaletteAnatomy = anatomy({
62
+ empty: {
63
+ part: "empty",
64
+ recipe: searchEmptyRecipe,
65
+ required: false
66
+ },
67
+ foot: {
68
+ part: "foot",
69
+ recipe: searchFootRecipe,
70
+ required: true
71
+ },
72
+ hint: {
73
+ part: "hint",
74
+ recipe: searchFootRecipe,
75
+ required: true
76
+ },
77
+ mark: {
78
+ part: "mark",
79
+ recipe: searchMarkRecipe,
80
+ required: true
81
+ },
82
+ meta: {
83
+ part: "meta",
84
+ recipe: searchHitMetaRecipe,
85
+ required: false
86
+ },
87
+ root: {
88
+ part: "search-palette",
89
+ recipe: searchPanelRecipe,
90
+ required: true
91
+ },
92
+ rule: {
93
+ part: "rule",
94
+ recipe: searchRuleRecipe,
95
+ required: true
96
+ },
97
+ searchTrigger: {
98
+ part: "search-trigger",
99
+ recipe: searchTriggerRecipe,
100
+ required: true
101
+ },
102
+ shortcut: {
103
+ part: "shortcut",
104
+ recipe: searchKeyRecipe,
105
+ required: false
106
+ }
107
+ });
60
108
  //#endregion
61
- export { searchEmptyRecipe, searchFieldRecipe, searchFootRecipe, searchHitMetaRecipe, searchHitRecipe, searchHitTextRecipe, searchInputRecipe, searchKeyRecipe, searchLabelRecipe, searchListRecipe, searchMarkRecipe, searchPanelRecipe, searchPositionerRecipe, searchRuleRecipe, searchTriggerRecipe };
109
+ export { searchEmptyRecipe, searchFieldRecipe, searchFootRecipe, searchHitMetaRecipe, searchHitRecipe, searchHitTextRecipe, searchInputRecipe, searchKeyRecipe, searchLabelRecipe, searchListRecipe, searchMarkRecipe, searchPaletteAnatomy, searchPanelRecipe, searchPositionerRecipe, searchRuleRecipe, searchTriggerRecipe };
62
110
 
63
111
  //# sourceMappingURL=searchPalette.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"searchPalette.js","names":[],"sources":["../../src/recipes/searchPalette.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { controlInert, controlPress, controlReach } from '#parts/control'\nimport { ruleFading } from '#parts/rule'\nimport { scrollFades } from '#parts/scroll'\nimport { travelMarkBase } from '#parts/travel'\n\nimport { mirrorMotion } from './motion'\n\nconst GROUND = 'relative flex-none bg-tf-shade-under'\n\nconst searchTriggerRecipe = cva([\n 'relative isolate inline-flex h-tf-control-sm min-w-60 items-center gap-3',\n 'rounded-tf-control bg-tf-control pr-3 pl-3',\n 'font-tf-body text-tf-body-sm font-medium text-tf-muted',\n 'interactive:hovered:bg-tf-control-hi interactive:hovered:text-tf-fg',\n 'tf-icons [&_svg]:size-tf-icon-sm [&_svg]:shrink-0',\n 'cursor-pointer tf-transition motion-reduce:transition-none',\n ...controlReach,\n ...controlInert,\n])\n\nconst searchLabelRecipe = cva('min-w-0 flex-1 truncate text-left')\n\nconst searchKeyRecipe = cva([\n 'flex h-6 flex-none items-center rounded-tf-inline bg-tf-panel-hi px-2',\n 'text-tf-caption-sm font-normal text-tf-muted',\n])\n\nconst searchPositionerRecipe = cva([\n 'fixed inset-0 z-tf-modal flex items-start justify-center',\n 'px-4 pt-24 pb-10 font-tf-body sm:px-10',\n])\n\nconst searchPanelRecipe = cva([\n 'relative isolate rounded-tf-card bg-tf-shade-deep backdrop-blur-tf-panel',\n 'tf-edge-sweep tf-swept blend-tf-accent tf-edge-plain',\n 'flex max-h-full w-full max-w-tf-measure flex-col overflow-hidden',\n 'text-tf-body-sm font-medium text-tf-fg shadow-tf-float',\n ...mirrorMotion,\n 'motion-reduce:animate-none',\n])\n\nconst searchFieldRecipe = cva([\n GROUND,\n 'flex h-tf-control-lg items-center gap-3 rounded-t-tf-card px-5',\n 'tf-icons [&_svg]:size-tf-icon-sm [&_svg]:shrink-0 [&_svg]:text-tf-muted',\n])\n\nconst searchInputRecipe = cva([\n 'min-w-0 flex-1 border-0 bg-transparent outline-hidden',\n 'font-tf-body text-tf-body text-tf-fg placeholder:text-tf-muted',\n])\n\nconst searchRuleRecipe = cva(`absolute inset-x-0 bottom-0 ${ruleFading}`)\n\nconst searchListRecipe = cva([\n 'relative flex tf-scroll-hidden max-h-80 min-h-0 flex-col overflow-auto p-2',\n 'outline-hidden data-empty:hidden',\n ...scrollFades,\n])\n\nconst searchHitRecipe = cva([\n 'relative flex h-tf-control-md min-h-tf-control-md flex-none items-center gap-4',\n 'rounded-tf-control px-3 text-left text-tf-fg',\n 'tf-icons [&_svg]:size-tf-icon-sm [&_svg]:shrink-0 [&_svg]:text-tf-muted',\n 'cursor-pointer tf-transition motion-reduce:transition-none',\n ...controlReach,\n ...controlPress,\n ...controlInert,\n])\n\nconst searchMarkRecipe = cva([\n ...travelMarkBase,\n 'inset-x-2 h-tf-control-md rounded-tf-control bg-tf-panel-hi',\n])\n\nconst searchHitTextRecipe = cva('min-w-0 flex-1 truncate')\n\nconst searchHitMetaRecipe = cva([\n 'flex-none text-tf-caption-sm whitespace-nowrap text-tf-muted tabular-nums',\n])\n\nconst searchEmptyRecipe = cva([\n 'flex h-tf-control-lg flex-none items-center justify-center px-3',\n 'bg-tf-panel-2 text-tf-caption font-medium text-tf-muted',\n])\n\nconst searchFootRecipe = cva([\n GROUND,\n 'flex items-center justify-between gap-3 rounded-b-tf-card px-5 py-3',\n 'text-tf-caption-sm text-tf-muted',\n])\n\nexport {\n searchEmptyRecipe,\n searchFieldRecipe,\n searchFootRecipe,\n searchHitMetaRecipe,\n searchHitRecipe,\n searchHitTextRecipe,\n searchInputRecipe,\n searchKeyRecipe,\n searchLabelRecipe,\n searchListRecipe,\n searchMarkRecipe,\n searchPanelRecipe,\n searchPositionerRecipe,\n searchRuleRecipe,\n searchTriggerRecipe,\n}\n"],"mappings":";;;;;;;AASA,MAAM,SAAS;AAEf,MAAM,sBAAsB,IAAI;CAC9B;CACA;CACA;CACA;CACA;CACA;CACA,GAAG;CACH,GAAG;AACL,CAAC;AAED,MAAM,oBAAoB,IAAI,mCAAmC;AAEjE,MAAM,kBAAkB,IAAI,CAC1B,yEACA,8CACF,CAAC;AAED,MAAM,yBAAyB,IAAI,CACjC,4DACA,wCACF,CAAC;AAED,MAAM,oBAAoB,IAAI;CAC5B;CACA;CACA;CACA;CACA,GAAG;CACH;AACF,CAAC;AAED,MAAM,oBAAoB,IAAI;CAC5B;CACA;CACA;AACF,CAAC;AAED,MAAM,oBAAoB,IAAI,CAC5B,yDACA,gEACF,CAAC;AAED,MAAM,mBAAmB,IAAI,+BAA+B,YAAY;AAExE,MAAM,mBAAmB,IAAI;CAC3B;CACA;CACA,GAAG;AACL,CAAC;AAED,MAAM,kBAAkB,IAAI;CAC1B;CACA;CACA;CACA;CACA,GAAG;CACH,GAAG;CACH,GAAG;AACL,CAAC;AAED,MAAM,mBAAmB,IAAI,CAC3B,GAAG,gBACH,6DACF,CAAC;AAED,MAAM,sBAAsB,IAAI,yBAAyB;AAEzD,MAAM,sBAAsB,IAAI,CAC9B,2EACF,CAAC;AAED,MAAM,oBAAoB,IAAI,CAC5B,mEACA,yDACF,CAAC;AAED,MAAM,mBAAmB,IAAI;CAC3B;CACA;CACA;AACF,CAAC"}
1
+ {"version":3,"file":"searchPalette.js","names":[],"sources":["../../src/recipes/searchPalette.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { anatomy } from '#anatomy'\nimport { controlInert, controlPress, controlReach } from '#parts/control'\nimport { ruleFading } from '#parts/rule'\nimport { scrollFades } from '#parts/scroll'\nimport { travelMarkBase } from '#parts/travel'\n\nimport { mirrorMotion } from './motion'\n\nconst GROUND = 'relative flex-none bg-tf-shade-under'\n\nconst searchTriggerRecipe = cva([\n 'relative isolate inline-flex h-tf-control-sm min-w-60 items-center gap-3',\n 'rounded-tf-control bg-tf-control pr-3 pl-3',\n 'font-tf-body text-tf-body-sm font-medium text-tf-muted',\n 'interactive:hovered:bg-tf-control-hi interactive:hovered:text-tf-fg',\n 'tf-icons [&_svg]:size-tf-icon-sm [&_svg]:shrink-0',\n 'cursor-pointer tf-transition motion-reduce:transition-none',\n ...controlReach,\n ...controlInert,\n])\n\nconst searchLabelRecipe = cva('min-w-0 flex-1 truncate text-left')\n\nconst searchKeyRecipe = cva([\n 'flex h-6 flex-none items-center rounded-tf-inline bg-tf-panel-hi px-2',\n 'text-tf-caption-sm font-normal text-tf-muted',\n])\n\nconst searchPositionerRecipe = cva([\n 'fixed inset-0 z-tf-modal flex items-start justify-center',\n 'px-4 pt-24 pb-10 font-tf-body sm:px-10',\n])\n\nconst searchPanelRecipe = cva([\n 'relative isolate rounded-tf-card bg-tf-shade-deep backdrop-blur-tf-panel',\n 'tf-edge-sweep tf-swept blend-tf-accent tf-edge-plain',\n 'flex max-h-full w-full max-w-tf-measure flex-col overflow-hidden',\n 'text-tf-body-sm font-medium text-tf-fg shadow-tf-float',\n ...mirrorMotion,\n 'motion-reduce:animate-none',\n])\n\nconst searchFieldRecipe = cva([\n GROUND,\n 'flex h-tf-control-lg items-center gap-3 rounded-t-tf-card px-5',\n 'tf-icons [&_svg]:size-tf-icon-sm [&_svg]:shrink-0 [&_svg]:text-tf-muted',\n])\n\nconst searchInputRecipe = cva([\n 'min-w-0 flex-1 border-0 bg-transparent outline-hidden',\n 'font-tf-body text-tf-body text-tf-fg placeholder:text-tf-muted',\n])\n\nconst searchRuleRecipe = cva(`absolute inset-x-0 bottom-0 ${ruleFading}`)\n\nconst searchListRecipe = cva([\n 'relative flex tf-scroll-hidden max-h-80 min-h-0 flex-col overflow-auto p-2',\n 'outline-hidden data-empty:hidden',\n ...scrollFades,\n])\n\nconst searchHitRecipe = cva([\n 'relative flex h-tf-control-md min-h-tf-control-md flex-none items-center gap-4',\n 'rounded-tf-control px-3 text-left text-tf-fg',\n 'tf-icons [&_svg]:size-tf-icon-sm [&_svg]:shrink-0 [&_svg]:text-tf-muted',\n 'cursor-pointer tf-transition motion-reduce:transition-none',\n ...controlReach,\n ...controlPress,\n ...controlInert,\n])\n\nconst searchMarkRecipe = cva([\n ...travelMarkBase,\n 'inset-x-2 h-tf-control-md rounded-tf-control bg-tf-panel-hi',\n])\n\nconst searchHitTextRecipe = cva('min-w-0 flex-1 truncate')\n\nconst searchHitMetaRecipe = cva([\n 'flex-none text-tf-caption-sm whitespace-nowrap text-tf-muted tabular-nums',\n])\n\nconst searchEmptyRecipe = cva([\n 'flex h-tf-control-lg flex-none items-center justify-center px-3',\n 'bg-tf-panel-2 text-tf-caption font-medium text-tf-muted',\n])\n\nconst searchFootRecipe = cva([\n GROUND,\n 'flex items-center justify-between gap-3 rounded-b-tf-card px-5 py-3',\n 'text-tf-caption-sm text-tf-muted',\n])\n\nconst searchPaletteAnatomy = anatomy({\n empty: { part: 'empty', recipe: searchEmptyRecipe, required: false },\n foot: { part: 'foot', recipe: searchFootRecipe, required: true },\n hint: { part: 'hint', recipe: searchFootRecipe, required: true },\n mark: { part: 'mark', recipe: searchMarkRecipe, required: true },\n meta: { part: 'meta', recipe: searchHitMetaRecipe, required: false },\n root: { part: 'search-palette', recipe: searchPanelRecipe, required: true },\n rule: { part: 'rule', recipe: searchRuleRecipe, required: true },\n searchTrigger: { part: 'search-trigger', recipe: searchTriggerRecipe, required: true },\n shortcut: { part: 'shortcut', recipe: searchKeyRecipe, required: false },\n})\n\nexport {\n searchEmptyRecipe,\n searchFieldRecipe,\n searchFootRecipe,\n searchHitMetaRecipe,\n searchHitRecipe,\n searchHitTextRecipe,\n searchInputRecipe,\n searchKeyRecipe,\n searchLabelRecipe,\n searchListRecipe,\n searchMarkRecipe,\n searchPaletteAnatomy,\n searchPanelRecipe,\n searchPositionerRecipe,\n searchRuleRecipe,\n searchTriggerRecipe,\n}\n"],"mappings":";;;;;;;;AAUA,MAAM,SAAS;AAEf,MAAM,sBAAsB,IAAI;CAC9B;CACA;CACA;CACA;CACA;CACA;CACA,GAAG;CACH,GAAG;AACL,CAAC;AAED,MAAM,oBAAoB,IAAI,mCAAmC;AAEjE,MAAM,kBAAkB,IAAI,CAC1B,yEACA,8CACF,CAAC;AAED,MAAM,yBAAyB,IAAI,CACjC,4DACA,wCACF,CAAC;AAED,MAAM,oBAAoB,IAAI;CAC5B;CACA;CACA;CACA;CACA,GAAG;CACH;AACF,CAAC;AAED,MAAM,oBAAoB,IAAI;CAC5B;CACA;CACA;AACF,CAAC;AAED,MAAM,oBAAoB,IAAI,CAC5B,yDACA,gEACF,CAAC;AAED,MAAM,mBAAmB,IAAI,+BAA+B,YAAY;AAExE,MAAM,mBAAmB,IAAI;CAC3B;CACA;CACA,GAAG;AACL,CAAC;AAED,MAAM,kBAAkB,IAAI;CAC1B;CACA;CACA;CACA;CACA,GAAG;CACH,GAAG;CACH,GAAG;AACL,CAAC;AAED,MAAM,mBAAmB,IAAI,CAC3B,GAAG,gBACH,6DACF,CAAC;AAED,MAAM,sBAAsB,IAAI,yBAAyB;AAEzD,MAAM,sBAAsB,IAAI,CAC9B,2EACF,CAAC;AAED,MAAM,oBAAoB,IAAI,CAC5B,mEACA,yDACF,CAAC;AAED,MAAM,mBAAmB,IAAI;CAC3B;CACA;CACA;AACF,CAAC;AAED,MAAM,uBAAuB,QAAQ;CACnC,OAAO;EAAE,MAAM;EAAS,QAAQ;EAAmB,UAAU;CAAM;CACnE,MAAM;EAAE,MAAM;EAAQ,QAAQ;EAAkB,UAAU;CAAK;CAC/D,MAAM;EAAE,MAAM;EAAQ,QAAQ;EAAkB,UAAU;CAAK;CAC/D,MAAM;EAAE,MAAM;EAAQ,QAAQ;EAAkB,UAAU;CAAK;CAC/D,MAAM;EAAE,MAAM;EAAQ,QAAQ;EAAqB,UAAU;CAAM;CACnE,MAAM;EAAE,MAAM;EAAkB,QAAQ;EAAmB,UAAU;CAAK;CAC1E,MAAM;EAAE,MAAM;EAAQ,QAAQ;EAAkB,UAAU;CAAK;CAC/D,eAAe;EAAE,MAAM;EAAkB,QAAQ;EAAqB,UAAU;CAAK;CACrF,UAAU;EAAE,MAAM;EAAY,QAAQ;EAAiB,UAAU;CAAM;AACzE,CAAC"}
@@ -4,12 +4,30 @@ type SectionHeaderEyebrow = 'lead' | 'quiet';
4
4
  declare const defaultSectionHeaderSize = "section";
5
5
  declare const sectionHeaderSizes: readonly ["section", "hero", "panel"];
6
6
  declare const sectionHeaderEyebrows: readonly ["lead", "quiet"];
7
- declare const sectionHeaderTones: readonly ["accent", "success", "warning", "info", "danger"];
8
7
  declare const restingEyebrow: (size: SectionHeaderSize) => SectionHeaderEyebrow;
9
8
  declare const sectionHeaderRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
10
9
  declare const sectionHeaderLabelStackRecipe: (props?: ({
11
10
  size?: "panel" | "section" | "hero" | null | undefined;
12
11
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
12
+ declare const sectionHeaderAnatomy: {
13
+ readonly actions: {
14
+ readonly part: "actions";
15
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
16
+ readonly required: false;
17
+ };
18
+ readonly root: {
19
+ readonly part: "section-header";
20
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
21
+ readonly required: true;
22
+ };
23
+ readonly stack: {
24
+ readonly part: "stack";
25
+ readonly recipe: (props?: ({
26
+ size?: "panel" | "section" | "hero" | null | undefined;
27
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
28
+ readonly required: true;
29
+ };
30
+ };
13
31
  //#endregion
14
- export { type SectionHeaderEyebrow, type SectionHeaderSize, defaultSectionHeaderSize, restingEyebrow, sectionHeaderEyebrows, sectionHeaderLabelStackRecipe, sectionHeaderRecipe, sectionHeaderSizes, sectionHeaderTones };
32
+ export { type SectionHeaderEyebrow, type SectionHeaderSize, defaultSectionHeaderSize, restingEyebrow, sectionHeaderAnatomy, sectionHeaderEyebrows, sectionHeaderLabelStackRecipe, sectionHeaderRecipe, sectionHeaderSizes };
15
33
  //# sourceMappingURL=sectionHeader.d.ts.map
@@ -1,4 +1,4 @@
1
- import { tones } from "../parts/tone.js";
1
+ import { anatomy } from "../anatomy.js";
2
2
  import { cva } from "class-variance-authority";
3
3
  //#region src/recipes/sectionHeader.ts
4
4
  const defaultSectionHeaderSize = "section";
@@ -8,7 +8,6 @@ const sectionHeaderSizes = [
8
8
  "panel"
9
9
  ];
10
10
  const sectionHeaderEyebrows = ["lead", "quiet"];
11
- const sectionHeaderTones = tones;
12
11
  const RESTING_EYEBROW = {
13
12
  hero: "lead",
14
13
  panel: "quiet",
@@ -24,7 +23,25 @@ const sectionHeaderLabelStackRecipe = cva("flex flex-col", {
24
23
  section: "gap-4"
25
24
  } }
26
25
  });
26
+ const sectionHeaderActionsRecipe = cva("flex flex-wrap items-center gap-4");
27
+ const sectionHeaderAnatomy = anatomy({
28
+ actions: {
29
+ part: "actions",
30
+ recipe: sectionHeaderActionsRecipe,
31
+ required: false
32
+ },
33
+ root: {
34
+ part: "section-header",
35
+ recipe: sectionHeaderRecipe,
36
+ required: true
37
+ },
38
+ stack: {
39
+ part: "stack",
40
+ recipe: sectionHeaderLabelStackRecipe,
41
+ required: true
42
+ }
43
+ });
27
44
  //#endregion
28
- export { defaultSectionHeaderSize, restingEyebrow, sectionHeaderEyebrows, sectionHeaderLabelStackRecipe, sectionHeaderRecipe, sectionHeaderSizes, sectionHeaderTones };
45
+ export { defaultSectionHeaderSize, restingEyebrow, sectionHeaderAnatomy, sectionHeaderEyebrows, sectionHeaderLabelStackRecipe, sectionHeaderRecipe, sectionHeaderSizes };
29
46
 
30
47
  //# sourceMappingURL=sectionHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sectionHeader.js","names":[],"sources":["../../src/recipes/sectionHeader.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { tones } from '#parts/tone'\n\ntype SectionHeaderSize = 'section' | 'hero' | 'panel'\n\ntype SectionHeaderEyebrow = 'lead' | 'quiet'\n\nconst defaultSectionHeaderSize = 'section' satisfies SectionHeaderSize\n\nconst sectionHeaderSizes = [\n 'section',\n 'hero',\n 'panel',\n] as const satisfies readonly SectionHeaderSize[]\n\nconst sectionHeaderEyebrows = ['lead', 'quiet'] as const satisfies readonly SectionHeaderEyebrow[]\n\nconst sectionHeaderTones = tones\n\nconst RESTING_EYEBROW = {\n hero: 'lead',\n panel: 'quiet',\n section: 'quiet',\n} satisfies Record<SectionHeaderSize, SectionHeaderEyebrow>\n\nconst restingEyebrow = (size: SectionHeaderSize): SectionHeaderEyebrow => RESTING_EYEBROW[size]\n\nconst sectionHeaderRecipe = cva('flex flex-col gap-6')\n\nconst sectionHeaderLabelStackRecipe = cva('flex flex-col', {\n defaultVariants: { size: defaultSectionHeaderSize },\n variants: {\n size: {\n hero: 'gap-4',\n panel: 'gap-2',\n section: 'gap-4',\n } satisfies Record<SectionHeaderSize, string>,\n },\n})\n\nexport {\n type SectionHeaderEyebrow,\n type SectionHeaderSize,\n defaultSectionHeaderSize,\n restingEyebrow,\n sectionHeaderEyebrows,\n sectionHeaderLabelStackRecipe,\n sectionHeaderRecipe,\n sectionHeaderSizes,\n sectionHeaderTones,\n}\n"],"mappings":";;;AAQA,MAAM,2BAA2B;AAEjC,MAAM,qBAAqB;CACzB;CACA;CACA;AACF;AAEA,MAAM,wBAAwB,CAAC,QAAQ,OAAO;AAE9C,MAAM,qBAAqB;AAE3B,MAAM,kBAAkB;CACtB,MAAM;CACN,OAAO;CACP,SAAS;AACX;AAEA,MAAM,kBAAkB,SAAkD,gBAAgB;AAE1F,MAAM,sBAAsB,IAAI,qBAAqB;AAErD,MAAM,gCAAgC,IAAI,iBAAiB;CACzD,iBAAiB,EAAE,MAAM,yBAAyB;CAClD,UAAU,EACR,MAAM;EACJ,MAAM;EACN,OAAO;EACP,SAAS;CACX,EACF;AACF,CAAC"}
1
+ {"version":3,"file":"sectionHeader.js","names":[],"sources":["../../src/recipes/sectionHeader.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { anatomy } from '#anatomy'\n\ntype SectionHeaderSize = 'section' | 'hero' | 'panel'\n\ntype SectionHeaderEyebrow = 'lead' | 'quiet'\n\nconst defaultSectionHeaderSize = 'section' satisfies SectionHeaderSize\n\nconst sectionHeaderSizes = [\n 'section',\n 'hero',\n 'panel',\n] as const satisfies readonly SectionHeaderSize[]\n\nconst sectionHeaderEyebrows = ['lead', 'quiet'] as const satisfies readonly SectionHeaderEyebrow[]\n\nconst RESTING_EYEBROW = {\n hero: 'lead',\n panel: 'quiet',\n section: 'quiet',\n} satisfies Record<SectionHeaderSize, SectionHeaderEyebrow>\n\nconst restingEyebrow = (size: SectionHeaderSize): SectionHeaderEyebrow => RESTING_EYEBROW[size]\n\nconst sectionHeaderRecipe = cva('flex flex-col gap-6')\n\nconst sectionHeaderLabelStackRecipe = cva('flex flex-col', {\n defaultVariants: { size: defaultSectionHeaderSize },\n variants: {\n size: {\n hero: 'gap-4',\n panel: 'gap-2',\n section: 'gap-4',\n } satisfies Record<SectionHeaderSize, string>,\n },\n})\n\nconst sectionHeaderActionsRecipe = cva('flex flex-wrap items-center gap-4')\n\nconst sectionHeaderAnatomy = anatomy({\n actions: { part: 'actions', recipe: sectionHeaderActionsRecipe, required: false },\n root: { part: 'section-header', recipe: sectionHeaderRecipe, required: true },\n stack: { part: 'stack', recipe: sectionHeaderLabelStackRecipe, required: true },\n})\n\nexport {\n type SectionHeaderEyebrow,\n type SectionHeaderSize,\n defaultSectionHeaderSize,\n restingEyebrow,\n sectionHeaderAnatomy,\n sectionHeaderEyebrows,\n sectionHeaderLabelStackRecipe,\n sectionHeaderRecipe,\n sectionHeaderSizes,\n}\n"],"mappings":";;;AAQA,MAAM,2BAA2B;AAEjC,MAAM,qBAAqB;CACzB;CACA;CACA;AACF;AAEA,MAAM,wBAAwB,CAAC,QAAQ,OAAO;AAE9C,MAAM,kBAAkB;CACtB,MAAM;CACN,OAAO;CACP,SAAS;AACX;AAEA,MAAM,kBAAkB,SAAkD,gBAAgB;AAE1F,MAAM,sBAAsB,IAAI,qBAAqB;AAErD,MAAM,gCAAgC,IAAI,iBAAiB;CACzD,iBAAiB,EAAE,MAAM,yBAAyB;CAClD,UAAU,EACR,MAAM;EACJ,MAAM;EACN,OAAO;EACP,SAAS;CACX,EACF;AACF,CAAC;AAED,MAAM,6BAA6B,IAAI,mCAAmC;AAE1E,MAAM,uBAAuB,QAAQ;CACnC,SAAS;EAAE,MAAM;EAAW,QAAQ;EAA4B,UAAU;CAAM;CAChF,MAAM;EAAE,MAAM;EAAkB,QAAQ;EAAqB,UAAU;CAAK;CAC5E,OAAO;EAAE,MAAM;EAAS,QAAQ;EAA+B,UAAU;CAAK;AAChF,CAAC"}
@@ -4,6 +4,13 @@ declare const segmentedControlIndicatorRecipe: (props?: import("class-variance-a
4
4
  declare const segmentedControlItemRecipe: (props?: ({
5
5
  checked?: boolean | null | undefined;
6
6
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
+ declare const segmentedControlAnatomy: {
8
+ readonly root: {
9
+ readonly part: "segmented-control";
10
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
11
+ readonly required: true;
12
+ };
13
+ };
7
14
  //#endregion
8
- export { segmentedControlIndicatorRecipe, segmentedControlItemRecipe, segmentedControlRecipe };
15
+ export { segmentedControlAnatomy, segmentedControlIndicatorRecipe, segmentedControlItemRecipe, segmentedControlRecipe };
9
16
  //# sourceMappingURL=segmentedControl.d.ts.map
@@ -1,3 +1,4 @@
1
+ import { anatomy } from "../anatomy.js";
1
2
  import { controlInert, controlPress, controlReach, hitArea } from "../parts/control.js";
2
3
  import { cva } from "class-variance-authority";
3
4
  //#region src/recipes/segmentedControl.ts
@@ -23,7 +24,12 @@ const segmentedControlItemRecipe = cva([
23
24
  true: "text-tf-on-accent"
24
25
  } }
25
26
  });
27
+ const segmentedControlAnatomy = anatomy({ root: {
28
+ part: "segmented-control",
29
+ recipe: segmentedControlRecipe,
30
+ required: true
31
+ } });
26
32
  //#endregion
27
- export { segmentedControlIndicatorRecipe, segmentedControlItemRecipe, segmentedControlRecipe };
33
+ export { segmentedControlAnatomy, segmentedControlIndicatorRecipe, segmentedControlItemRecipe, segmentedControlRecipe };
28
34
 
29
35
  //# sourceMappingURL=segmentedControl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"segmentedControl.js","names":[],"sources":["../../src/recipes/segmentedControl.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { controlInert, controlPress, controlReach, hitArea } from '#parts/control'\n\nconst HIT_AREA = hitArea('after:h-tf-target')\n\nconst segmentedControlRecipe = cva(\n 'relative isolate flex items-center gap-1 rounded-tf-pill bg-tf-panel p-1',\n)\n\nconst segmentedControlIndicatorRecipe = cva([\n 'pointer-events-none absolute z-[-1] rounded-tf-pill bg-tf-blend blend-tf-accent',\n 'top-(--top) left-(--left) h-(--height) w-(--width)',\n '[--transition-duration:var(--tf-duration-1)]',\n '[--transition-timing-function:var(--ease-tf)]',\n])\n\nconst segmentedControlItemRecipe = cva(\n [\n 'relative flex h-tf-control-2xs items-center rounded-tf-pill px-3 text-tf-caption-sm font-normal',\n 'cursor-pointer tf-transition motion-reduce:transition-none',\n HIT_AREA,\n ...controlReach,\n ...controlPress,\n ...controlInert,\n ],\n {\n defaultVariants: { checked: false },\n variants: {\n checked: {\n false: 'text-tf-muted interactive:hovered:text-tf-fg',\n true: 'text-tf-on-accent',\n },\n },\n },\n)\n\nexport { segmentedControlIndicatorRecipe, segmentedControlItemRecipe, segmentedControlRecipe }\n"],"mappings":";;;AAIA,MAAM,WAAW,QAAQ,mBAAmB;AAE5C,MAAM,yBAAyB,IAC7B,0EACF;AAEA,MAAM,kCAAkC,IAAI;CAC1C;CACA;CACA;CACA;AACF,CAAC;AAED,MAAM,6BAA6B,IACjC;CACE;CACA;CACA;CACA,GAAG;CACH,GAAG;CACH,GAAG;AACL,GACA;CACE,iBAAiB,EAAE,SAAS,MAAM;CAClC,UAAU,EACR,SAAS;EACP,OAAO;EACP,MAAM;CACR,EACF;AACF,CACF"}
1
+ {"version":3,"file":"segmentedControl.js","names":[],"sources":["../../src/recipes/segmentedControl.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { anatomy } from '#anatomy'\nimport { controlInert, controlPress, controlReach, hitArea } from '#parts/control'\n\nconst HIT_AREA = hitArea('after:h-tf-target')\n\nconst segmentedControlRecipe = cva(\n 'relative isolate flex items-center gap-1 rounded-tf-pill bg-tf-panel p-1',\n)\n\nconst segmentedControlIndicatorRecipe = cva([\n 'pointer-events-none absolute z-[-1] rounded-tf-pill bg-tf-blend blend-tf-accent',\n 'top-(--top) left-(--left) h-(--height) w-(--width)',\n '[--transition-duration:var(--tf-duration-1)]',\n '[--transition-timing-function:var(--ease-tf)]',\n])\n\nconst segmentedControlItemRecipe = cva(\n [\n 'relative flex h-tf-control-2xs items-center rounded-tf-pill px-3 text-tf-caption-sm font-normal',\n 'cursor-pointer tf-transition motion-reduce:transition-none',\n HIT_AREA,\n ...controlReach,\n ...controlPress,\n ...controlInert,\n ],\n {\n defaultVariants: { checked: false },\n variants: {\n checked: {\n false: 'text-tf-muted interactive:hovered:text-tf-fg',\n true: 'text-tf-on-accent',\n },\n },\n },\n)\n\nconst segmentedControlAnatomy = anatomy({\n root: { part: 'segmented-control', recipe: segmentedControlRecipe, required: true },\n})\n\nexport {\n segmentedControlAnatomy,\n segmentedControlIndicatorRecipe,\n segmentedControlItemRecipe,\n segmentedControlRecipe,\n}\n"],"mappings":";;;;AAKA,MAAM,WAAW,QAAQ,mBAAmB;AAE5C,MAAM,yBAAyB,IAC7B,0EACF;AAEA,MAAM,kCAAkC,IAAI;CAC1C;CACA;CACA;CACA;AACF,CAAC;AAED,MAAM,6BAA6B,IACjC;CACE;CACA;CACA;CACA,GAAG;CACH,GAAG;CACH,GAAG;AACL,GACA;CACE,iBAAiB,EAAE,SAAS,MAAM;CAClC,UAAU,EACR,SAAS;EACP,OAAO;EACP,MAAM;CACR,EACF;AACF,CACF;AAEA,MAAM,0BAA0B,QAAQ,EACtC,MAAM;CAAE,MAAM;CAAqB,QAAQ;CAAwB,UAAU;AAAK,EACpF,CAAC"}
@@ -4,6 +4,62 @@ declare const selectValueRecipe: (props?: import("class-variance-authority/types
4
4
  declare const selectIndicatorRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
5
5
  declare const selectRowRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
6
6
  declare const selectEmptyRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
7
+ declare const selectAnatomy: {
8
+ readonly empty: {
9
+ readonly part: "empty";
10
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
11
+ readonly required: false;
12
+ };
13
+ readonly foot: {
14
+ readonly part: "foot";
15
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
16
+ readonly required: true;
17
+ };
18
+ readonly held: {
19
+ readonly part: "held";
20
+ readonly recipe: (props?: ({
21
+ tone?: "danger" | "neutral" | "chosen" | null | undefined;
22
+ within?: "surface" | "list" | null | undefined;
23
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
24
+ readonly required: true;
25
+ };
26
+ readonly mark: {
27
+ readonly part: "mark";
28
+ readonly recipe: (props?: ({
29
+ tone?: "danger" | "neutral" | "chosen" | null | undefined;
30
+ within?: "surface" | "list" | null | undefined;
31
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
32
+ readonly required: true;
33
+ };
34
+ readonly meta: {
35
+ readonly part: "meta";
36
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
37
+ readonly required: false;
38
+ };
39
+ readonly root: {
40
+ readonly part: "select";
41
+ readonly recipe: (props?: ({
42
+ fullWidth?: boolean | null | undefined;
43
+ message?: boolean | null | undefined;
44
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
45
+ readonly required: true;
46
+ };
47
+ readonly row: {
48
+ readonly part: "row";
49
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
50
+ readonly required: true;
51
+ };
52
+ readonly spinner: {
53
+ readonly part: "spinner";
54
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
55
+ readonly required: false;
56
+ };
57
+ readonly trailing: {
58
+ readonly part: "trailing";
59
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
60
+ readonly required: true;
61
+ };
62
+ };
7
63
  //#endregion
8
- export { selectEmptyRecipe, selectIndicatorRecipe, selectRowRecipe, selectTriggerRecipe, selectValueRecipe };
64
+ export { selectAnatomy, selectEmptyRecipe, selectIndicatorRecipe, selectRowRecipe, selectTriggerRecipe, selectValueRecipe };
9
65
  //# sourceMappingURL=select.d.ts.map
@@ -1,3 +1,6 @@
1
+ import { anatomy } from "../anatomy.js";
2
+ import { fieldFootRecipe, fieldRecipe, trailingRecipe } from "./field.js";
3
+ import { menuMarkRecipe, menuShortcutRecipe } from "./menu.js";
1
4
  import { cva } from "class-variance-authority";
2
5
  //#region src/recipes/select.ts
3
6
  const selectTriggerRecipe = cva([
@@ -15,7 +18,54 @@ const selectRowRecipe = cva([
15
18
  "has-data-[state=open]:**:data-[part=trailing]:stroke-tf-ink"
16
19
  ]);
17
20
  const selectEmptyRecipe = cva(["flex h-tf-row min-h-tf-row flex-none items-center px-3", "text-tf-body-sm font-medium text-tf-muted"]);
21
+ const selectAnatomy = anatomy({
22
+ empty: {
23
+ part: "empty",
24
+ recipe: selectEmptyRecipe,
25
+ required: false
26
+ },
27
+ foot: {
28
+ part: "foot",
29
+ recipe: fieldFootRecipe,
30
+ required: true
31
+ },
32
+ held: {
33
+ part: "held",
34
+ recipe: menuMarkRecipe,
35
+ required: true
36
+ },
37
+ mark: {
38
+ part: "mark",
39
+ recipe: menuMarkRecipe,
40
+ required: true
41
+ },
42
+ meta: {
43
+ part: "meta",
44
+ recipe: menuShortcutRecipe,
45
+ required: false
46
+ },
47
+ root: {
48
+ part: "select",
49
+ recipe: fieldRecipe,
50
+ required: true
51
+ },
52
+ row: {
53
+ part: "row",
54
+ recipe: selectRowRecipe,
55
+ required: true
56
+ },
57
+ spinner: {
58
+ part: "spinner",
59
+ recipe: trailingRecipe,
60
+ required: false
61
+ },
62
+ trailing: {
63
+ part: "trailing",
64
+ recipe: trailingRecipe,
65
+ required: true
66
+ }
67
+ });
18
68
  //#endregion
19
- export { selectEmptyRecipe, selectIndicatorRecipe, selectRowRecipe, selectTriggerRecipe, selectValueRecipe };
69
+ export { selectAnatomy, selectEmptyRecipe, selectIndicatorRecipe, selectRowRecipe, selectTriggerRecipe, selectValueRecipe };
20
70
 
21
71
  //# sourceMappingURL=select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","names":[],"sources":["../../src/recipes/select.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nconst selectTriggerRecipe = cva([\n 'flex items-center text-left',\n 'cursor-pointer disabled:cursor-not-allowed',\n 'data-readonly:cursor-default',\n 'outline-hidden',\n])\n\nconst selectValueRecipe = cva('min-w-0 flex-1 truncate')\n\nconst selectIndicatorRecipe = cva([\n 'tf-transition motion-reduce:transition-none',\n 'data-[state=open]:rotate-180',\n])\n\nconst selectRowRecipe = cva([\n 'reached:**:data-[part=trailing]:text-tf-accent-hi',\n 'reached:**:data-[part=trailing]:stroke-tf-ink',\n 'has-data-[state=open]:**:data-[part=trailing]:text-tf-accent-hi',\n 'has-data-[state=open]:**:data-[part=trailing]:stroke-tf-ink',\n])\n\nconst selectEmptyRecipe = cva([\n 'flex h-tf-row min-h-tf-row flex-none items-center px-3',\n 'text-tf-body-sm font-medium text-tf-muted',\n])\n\nexport {\n selectEmptyRecipe,\n selectIndicatorRecipe,\n selectRowRecipe,\n selectTriggerRecipe,\n selectValueRecipe,\n}\n"],"mappings":";;AAEA,MAAM,sBAAsB,IAAI;CAC9B;CACA;CACA;CACA;AACF,CAAC;AAED,MAAM,oBAAoB,IAAI,yBAAyB;AAEvD,MAAM,wBAAwB,IAAI,CAChC,+CACA,8BACF,CAAC;AAED,MAAM,kBAAkB,IAAI;CAC1B;CACA;CACA;CACA;AACF,CAAC;AAED,MAAM,oBAAoB,IAAI,CAC5B,0DACA,2CACF,CAAC"}
1
+ {"version":3,"file":"select.js","names":[],"sources":["../../src/recipes/select.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { anatomy } from '#anatomy'\n\nimport { fieldFootRecipe, fieldRecipe, trailingRecipe } from './field'\nimport { menuMarkRecipe, menuShortcutRecipe } from './menu'\n\nconst selectTriggerRecipe = cva([\n 'flex items-center text-left',\n 'cursor-pointer disabled:cursor-not-allowed',\n 'data-readonly:cursor-default',\n 'outline-hidden',\n])\n\nconst selectValueRecipe = cva('min-w-0 flex-1 truncate')\n\nconst selectIndicatorRecipe = cva([\n 'tf-transition motion-reduce:transition-none',\n 'data-[state=open]:rotate-180',\n])\n\nconst selectRowRecipe = cva([\n 'reached:**:data-[part=trailing]:text-tf-accent-hi',\n 'reached:**:data-[part=trailing]:stroke-tf-ink',\n 'has-data-[state=open]:**:data-[part=trailing]:text-tf-accent-hi',\n 'has-data-[state=open]:**:data-[part=trailing]:stroke-tf-ink',\n])\n\nconst selectEmptyRecipe = cva([\n 'flex h-tf-row min-h-tf-row flex-none items-center px-3',\n 'text-tf-body-sm font-medium text-tf-muted',\n])\n\nconst selectAnatomy = anatomy({\n empty: { part: 'empty', recipe: selectEmptyRecipe, required: false },\n foot: { part: 'foot', recipe: fieldFootRecipe, required: true },\n held: { part: 'held', recipe: menuMarkRecipe, required: true },\n mark: { part: 'mark', recipe: menuMarkRecipe, required: true },\n meta: { part: 'meta', recipe: menuShortcutRecipe, required: false },\n root: { part: 'select', recipe: fieldRecipe, required: true },\n row: { part: 'row', recipe: selectRowRecipe, required: true },\n spinner: { part: 'spinner', recipe: trailingRecipe, required: false },\n trailing: { part: 'trailing', recipe: trailingRecipe, required: true },\n})\n\nexport {\n selectAnatomy,\n selectEmptyRecipe,\n selectIndicatorRecipe,\n selectRowRecipe,\n selectTriggerRecipe,\n selectValueRecipe,\n}\n"],"mappings":";;;;;AAOA,MAAM,sBAAsB,IAAI;CAC9B;CACA;CACA;CACA;AACF,CAAC;AAED,MAAM,oBAAoB,IAAI,yBAAyB;AAEvD,MAAM,wBAAwB,IAAI,CAChC,+CACA,8BACF,CAAC;AAED,MAAM,kBAAkB,IAAI;CAC1B;CACA;CACA;CACA;AACF,CAAC;AAED,MAAM,oBAAoB,IAAI,CAC5B,0DACA,2CACF,CAAC;AAED,MAAM,gBAAgB,QAAQ;CAC5B,OAAO;EAAE,MAAM;EAAS,QAAQ;EAAmB,UAAU;CAAM;CACnE,MAAM;EAAE,MAAM;EAAQ,QAAQ;EAAiB,UAAU;CAAK;CAC9D,MAAM;EAAE,MAAM;EAAQ,QAAQ;EAAgB,UAAU;CAAK;CAC7D,MAAM;EAAE,MAAM;EAAQ,QAAQ;EAAgB,UAAU;CAAK;CAC7D,MAAM;EAAE,MAAM;EAAQ,QAAQ;EAAoB,UAAU;CAAM;CAClE,MAAM;EAAE,MAAM;EAAU,QAAQ;EAAa,UAAU;CAAK;CAC5D,KAAK;EAAE,MAAM;EAAO,QAAQ;EAAiB,UAAU;CAAK;CAC5D,SAAS;EAAE,MAAM;EAAW,QAAQ;EAAgB,UAAU;CAAM;CACpE,UAAU;EAAE,MAAM;EAAY,QAAQ;EAAgB,UAAU;CAAK;AACvE,CAAC"}
@@ -5,13 +5,24 @@ declare const defaultSeparatorOrientation = "horizontal";
5
5
  declare const defaultSeparatorVariant = "filled";
6
6
  declare const defaultSeparatorTone = "accent";
7
7
  declare const separatorRecipe: (props?: ({
8
- orientation?: "vertical" | "horizontal" | null | undefined;
8
+ orientation?: "horizontal" | "vertical" | null | undefined;
9
9
  tone?: "accent" | "success" | "warning" | "info" | "danger" | null | undefined;
10
10
  variant?: "quiet" | "filled" | "fade" | null | undefined;
11
11
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
12
12
  declare const separatorOrientations: readonly ["horizontal", "vertical"];
13
13
  declare const separatorVariants: readonly ["fade", "filled", "quiet"];
14
14
  declare const separatorTones: readonly ["accent", "success", "warning", "info", "danger"];
15
+ declare const separatorAnatomy: {
16
+ readonly root: {
17
+ readonly part: "separator";
18
+ readonly recipe: (props?: ({
19
+ orientation?: "horizontal" | "vertical" | null | undefined;
20
+ tone?: "accent" | "success" | "warning" | "info" | "danger" | null | undefined;
21
+ variant?: "quiet" | "filled" | "fade" | null | undefined;
22
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
23
+ readonly required: true;
24
+ };
25
+ };
15
26
  //#endregion
16
- export { type SeparatorOrientation, type SeparatorVariant, defaultSeparatorOrientation, defaultSeparatorTone, defaultSeparatorVariant, separatorOrientations, separatorRecipe, separatorTones, separatorVariants };
27
+ export { type SeparatorOrientation, type SeparatorVariant, defaultSeparatorOrientation, defaultSeparatorTone, defaultSeparatorVariant, separatorAnatomy, separatorOrientations, separatorRecipe, separatorTones, separatorVariants };
17
28
  //# sourceMappingURL=separator.d.ts.map
@@ -1,6 +1,7 @@
1
- import { toneBlend } from "../tone.js";
1
+ import { anatomy } from "../anatomy.js";
2
2
  import { fadingDownOf, fadingOf, filledDownOf, filledOf, ruleQuiet, ruleQuietDown } from "../parts/rule.js";
3
3
  import { defaultTone, tones } from "../parts/tone.js";
4
+ import { toneBlend } from "../tone.js";
4
5
  import { cva } from "class-variance-authority";
5
6
  //#region src/recipes/separator.ts
6
7
  const defaultSeparatorOrientation = "horizontal";
@@ -80,7 +81,12 @@ const separatorVariants = [
80
81
  "quiet"
81
82
  ];
82
83
  const separatorTones = tones;
84
+ const separatorAnatomy = anatomy({ root: {
85
+ part: "separator",
86
+ recipe: separatorRecipe,
87
+ required: true
88
+ } });
83
89
  //#endregion
84
- export { defaultSeparatorOrientation, defaultSeparatorTone, defaultSeparatorVariant, separatorOrientations, separatorRecipe, separatorTones, separatorVariants };
90
+ export { defaultSeparatorOrientation, defaultSeparatorTone, defaultSeparatorVariant, separatorAnatomy, separatorOrientations, separatorRecipe, separatorTones, separatorVariants };
85
91
 
86
92
  //# sourceMappingURL=separator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"separator.js","names":[],"sources":["../../src/recipes/separator.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport {\n fadingDownOf,\n fadingOf,\n filledDownOf,\n filledOf,\n ruleQuiet,\n ruleQuietDown,\n} from '#parts/rule'\nimport { defaultTone, tones } from '#parts/tone'\nimport type { Tone } from '#tone'\nimport { toneBlend } from '#tone'\n\ntype SeparatorOrientation = 'horizontal' | 'vertical'\n\ntype SeparatorVariant = 'fade' | 'filled' | 'quiet'\n\nconst defaultSeparatorOrientation = 'horizontal' satisfies SeparatorOrientation\n\nconst defaultSeparatorVariant = 'filled' satisfies SeparatorVariant\n\nconst defaultSeparatorTone = defaultTone\n\ninterface TonedRule {\n class: string\n orientation: SeparatorOrientation\n tone: Tone\n variant: SeparatorVariant\n}\n\nconst tonedRules: TonedRule[] = tones.flatMap((tone) => {\n const blend = toneBlend[tone]\n\n return [\n { class: fadingOf(blend), orientation: 'horizontal', tone, variant: 'fade' },\n { class: filledOf(blend), orientation: 'horizontal', tone, variant: 'filled' },\n { class: fadingDownOf(blend), orientation: 'vertical', tone, variant: 'fade' },\n { class: filledDownOf(blend), orientation: 'vertical', tone, variant: 'filled' },\n ]\n})\n\nconst separatorRecipe = cva('shrink-0', {\n compoundVariants: [\n { class: ruleQuiet, orientation: 'horizontal', variant: 'quiet' },\n { class: ruleQuietDown, orientation: 'vertical', variant: 'quiet' },\n ...tonedRules,\n ],\n defaultVariants: {\n orientation: defaultSeparatorOrientation,\n tone: defaultSeparatorTone,\n variant: defaultSeparatorVariant,\n },\n variants: {\n orientation: {\n horizontal: 'w-full',\n vertical: 'self-stretch',\n } satisfies Record<SeparatorOrientation, string>,\n tone: {\n accent: '',\n danger: '',\n info: '',\n success: '',\n warning: '',\n } satisfies Record<Tone, string>,\n variant: {\n fade: '',\n filled: '',\n quiet: '',\n } satisfies Record<SeparatorVariant, string>,\n },\n})\n\nconst separatorOrientations = [\n 'horizontal',\n 'vertical',\n] as const satisfies readonly SeparatorOrientation[]\n\nconst separatorVariants = ['fade', 'filled', 'quiet'] as const satisfies readonly SeparatorVariant[]\n\nconst separatorTones = tones\n\nexport {\n type SeparatorOrientation,\n type SeparatorVariant,\n defaultSeparatorOrientation,\n defaultSeparatorTone,\n defaultSeparatorVariant,\n separatorOrientations,\n separatorRecipe,\n separatorTones,\n separatorVariants,\n}\n"],"mappings":";;;;;AAkBA,MAAM,8BAA8B;AAEpC,MAAM,0BAA0B;AAEhC,MAAM,uBAAuB;AAS7B,MAAM,aAA0B,MAAM,SAAS,SAAS;CACtD,MAAM,QAAQ,UAAU;CAExB,OAAO;EACL;GAAE,OAAO,SAAS,KAAK;GAAG,aAAa;GAAc;GAAM,SAAS;EAAO;EAC3E;GAAE,OAAO,SAAS,KAAK;GAAG,aAAa;GAAc;GAAM,SAAS;EAAS;EAC7E;GAAE,OAAO,aAAa,KAAK;GAAG,aAAa;GAAY;GAAM,SAAS;EAAO;EAC7E;GAAE,OAAO,aAAa,KAAK;GAAG,aAAa;GAAY;GAAM,SAAS;EAAS;CACjF;AACF,CAAC;AAED,MAAM,kBAAkB,IAAI,YAAY;CACtC,kBAAkB;EAChB;GAAE,OAAO;GAAW,aAAa;GAAc,SAAS;EAAQ;EAChE;GAAE,OAAO;GAAe,aAAa;GAAY,SAAS;EAAQ;EAClE,GAAG;CACL;CACA,iBAAiB;EACf,aAAa;EACb,MAAM;EACN,SAAS;CACX;CACA,UAAU;EACR,aAAa;GACX,YAAY;GACZ,UAAU;EACZ;EACA,MAAM;GACJ,QAAQ;GACR,QAAQ;GACR,MAAM;GACN,SAAS;GACT,SAAS;EACX;EACA,SAAS;GACP,MAAM;GACN,QAAQ;GACR,OAAO;EACT;CACF;AACF,CAAC;AAED,MAAM,wBAAwB,CAC5B,cACA,UACF;AAEA,MAAM,oBAAoB;CAAC;CAAQ;CAAU;AAAO;AAEpD,MAAM,iBAAiB"}
1
+ {"version":3,"file":"separator.js","names":[],"sources":["../../src/recipes/separator.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { anatomy } from '#anatomy'\nimport {\n fadingDownOf,\n fadingOf,\n filledDownOf,\n filledOf,\n ruleQuiet,\n ruleQuietDown,\n} from '#parts/rule'\nimport { defaultTone, tones } from '#parts/tone'\nimport type { Tone } from '#tone'\nimport { toneBlend } from '#tone'\n\ntype SeparatorOrientation = 'horizontal' | 'vertical'\n\ntype SeparatorVariant = 'fade' | 'filled' | 'quiet'\n\nconst defaultSeparatorOrientation = 'horizontal' satisfies SeparatorOrientation\n\nconst defaultSeparatorVariant = 'filled' satisfies SeparatorVariant\n\nconst defaultSeparatorTone = defaultTone\n\ninterface TonedRule {\n class: string\n orientation: SeparatorOrientation\n tone: Tone\n variant: SeparatorVariant\n}\n\nconst tonedRules: TonedRule[] = tones.flatMap((tone) => {\n const blend = toneBlend[tone]\n\n return [\n { class: fadingOf(blend), orientation: 'horizontal', tone, variant: 'fade' },\n { class: filledOf(blend), orientation: 'horizontal', tone, variant: 'filled' },\n { class: fadingDownOf(blend), orientation: 'vertical', tone, variant: 'fade' },\n { class: filledDownOf(blend), orientation: 'vertical', tone, variant: 'filled' },\n ]\n})\n\nconst separatorRecipe = cva('shrink-0', {\n compoundVariants: [\n { class: ruleQuiet, orientation: 'horizontal', variant: 'quiet' },\n { class: ruleQuietDown, orientation: 'vertical', variant: 'quiet' },\n ...tonedRules,\n ],\n defaultVariants: {\n orientation: defaultSeparatorOrientation,\n tone: defaultSeparatorTone,\n variant: defaultSeparatorVariant,\n },\n variants: {\n orientation: {\n horizontal: 'w-full',\n vertical: 'self-stretch',\n } satisfies Record<SeparatorOrientation, string>,\n tone: {\n accent: '',\n danger: '',\n info: '',\n success: '',\n warning: '',\n } satisfies Record<Tone, string>,\n variant: {\n fade: '',\n filled: '',\n quiet: '',\n } satisfies Record<SeparatorVariant, string>,\n },\n})\n\nconst separatorOrientations = [\n 'horizontal',\n 'vertical',\n] as const satisfies readonly SeparatorOrientation[]\n\nconst separatorVariants = ['fade', 'filled', 'quiet'] as const satisfies readonly SeparatorVariant[]\n\nconst separatorTones = tones\n\nconst separatorAnatomy = anatomy({\n root: { part: 'separator', recipe: separatorRecipe, required: true },\n})\n\nexport {\n type SeparatorOrientation,\n type SeparatorVariant,\n defaultSeparatorOrientation,\n defaultSeparatorTone,\n defaultSeparatorVariant,\n separatorAnatomy,\n separatorOrientations,\n separatorRecipe,\n separatorTones,\n separatorVariants,\n}\n"],"mappings":";;;;;;AAmBA,MAAM,8BAA8B;AAEpC,MAAM,0BAA0B;AAEhC,MAAM,uBAAuB;AAS7B,MAAM,aAA0B,MAAM,SAAS,SAAS;CACtD,MAAM,QAAQ,UAAU;CAExB,OAAO;EACL;GAAE,OAAO,SAAS,KAAK;GAAG,aAAa;GAAc;GAAM,SAAS;EAAO;EAC3E;GAAE,OAAO,SAAS,KAAK;GAAG,aAAa;GAAc;GAAM,SAAS;EAAS;EAC7E;GAAE,OAAO,aAAa,KAAK;GAAG,aAAa;GAAY;GAAM,SAAS;EAAO;EAC7E;GAAE,OAAO,aAAa,KAAK;GAAG,aAAa;GAAY;GAAM,SAAS;EAAS;CACjF;AACF,CAAC;AAED,MAAM,kBAAkB,IAAI,YAAY;CACtC,kBAAkB;EAChB;GAAE,OAAO;GAAW,aAAa;GAAc,SAAS;EAAQ;EAChE;GAAE,OAAO;GAAe,aAAa;GAAY,SAAS;EAAQ;EAClE,GAAG;CACL;CACA,iBAAiB;EACf,aAAa;EACb,MAAM;EACN,SAAS;CACX;CACA,UAAU;EACR,aAAa;GACX,YAAY;GACZ,UAAU;EACZ;EACA,MAAM;GACJ,QAAQ;GACR,QAAQ;GACR,MAAM;GACN,SAAS;GACT,SAAS;EACX;EACA,SAAS;GACP,MAAM;GACN,QAAQ;GACR,OAAO;EACT;CACF;AACF,CAAC;AAED,MAAM,wBAAwB,CAC5B,cACA,UACF;AAEA,MAAM,oBAAoB;CAAC;CAAQ;CAAU;AAAO;AAEpD,MAAM,iBAAiB;AAEvB,MAAM,mBAAmB,QAAQ,EAC/B,MAAM;CAAE,MAAM;CAAa,QAAQ;CAAiB,UAAU;AAAK,EACrE,CAAC"}
@@ -27,7 +27,7 @@ declare const sidebarNavRecipe: (props?: import("class-variance-authority/types"
27
27
  declare const sidebarMarkRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
28
28
  declare const sidebarGroupRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
29
29
  declare const sidebarItemRecipe: (props?: ({
30
- level?: "top" | "child" | null | undefined;
30
+ level?: "child" | "top" | null | undefined;
31
31
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
32
32
  declare const sidebarIconRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
33
33
  declare const sidebarLabelRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
@@ -35,6 +35,132 @@ declare const sidebarChevronRecipe: (props?: import("class-variance-authority/ty
35
35
  declare const sidebarDotRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
36
36
  declare const sidebarSubRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
37
37
  declare const sidebarFootRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
38
+ declare const sidebarAnatomy: {
39
+ readonly brand: {
40
+ readonly part: "brand";
41
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
42
+ readonly required: true;
43
+ };
44
+ readonly brandStack: {
45
+ readonly part: "brand-stack";
46
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
47
+ readonly required: true;
48
+ };
49
+ readonly brandSubtitle: {
50
+ readonly part: "brand-subtitle";
51
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
52
+ readonly required: false;
53
+ };
54
+ readonly child: {
55
+ readonly part: "child";
56
+ readonly recipe: (props?: ({
57
+ level?: "child" | "top" | null | undefined;
58
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
59
+ readonly required: false;
60
+ };
61
+ readonly dot: {
62
+ readonly part: "dot";
63
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
64
+ readonly required: false;
65
+ };
66
+ readonly foot: {
67
+ readonly part: "foot";
68
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
69
+ readonly required: true;
70
+ };
71
+ readonly head: {
72
+ readonly part: "head";
73
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
74
+ readonly required: true;
75
+ };
76
+ readonly item: {
77
+ readonly part: "item";
78
+ readonly recipe: (props?: ({
79
+ level?: "child" | "top" | null | undefined;
80
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
81
+ readonly required: false;
82
+ };
83
+ readonly label: {
84
+ readonly part: "label";
85
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
86
+ readonly required: true;
87
+ };
88
+ readonly mark: {
89
+ readonly part: "mark";
90
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
91
+ readonly required: true;
92
+ };
93
+ readonly mobileBar: {
94
+ readonly part: "mobile-bar";
95
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
96
+ readonly required: true;
97
+ };
98
+ readonly mobileEyebrow: {
99
+ readonly part: "mobile-eyebrow";
100
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
101
+ readonly required: false;
102
+ };
103
+ readonly mobileHeadings: {
104
+ readonly part: "mobile-headings";
105
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
106
+ readonly required: false;
107
+ };
108
+ readonly mobileTitle: {
109
+ readonly part: "mobile-title";
110
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
111
+ readonly required: false;
112
+ };
113
+ readonly nav: {
114
+ readonly part: "nav";
115
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
116
+ readonly required: true;
117
+ };
118
+ readonly overlayBody: {
119
+ readonly part: "overlay-body";
120
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
121
+ readonly required: true;
122
+ };
123
+ readonly overlayBrand: {
124
+ readonly part: "overlay-brand";
125
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
126
+ readonly required: true;
127
+ };
128
+ readonly overlayHead: {
129
+ readonly part: "overlay-head";
130
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
131
+ readonly required: true;
132
+ };
133
+ readonly overlayScope: {
134
+ readonly part: "overlay-scope";
135
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
136
+ readonly required: false;
137
+ };
138
+ readonly root: {
139
+ readonly part: "sidebar";
140
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
141
+ readonly required: true;
142
+ };
143
+ readonly scope: {
144
+ readonly part: "scope";
145
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
146
+ readonly required: false;
147
+ };
148
+ readonly separator: {
149
+ readonly part: "separator";
150
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
151
+ readonly required: true;
152
+ };
153
+ readonly switch: {
154
+ readonly part: "switch";
155
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
156
+ readonly required: true;
157
+ };
158
+ readonly wordmark: {
159
+ readonly part: "wordmark";
160
+ readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
161
+ readonly required: true;
162
+ };
163
+ };
38
164
  //#endregion
39
- export { sidebarBrandRecipe, sidebarBrandStackRecipe, sidebarBrandSubtitleRecipe, sidebarChevronRecipe, sidebarDotRecipe, sidebarFootRecipe, sidebarGroupRecipe, sidebarHeadRecipe, sidebarIconRecipe, sidebarItemRecipe, sidebarLabelRecipe, sidebarMarkRecipe, sidebarMobileBarRecipe, sidebarMobileEyebrowRecipe, sidebarMobileHeadingsRecipe, sidebarMobileTitleRecipe, sidebarNavRecipe, sidebarOverlayBackdropRecipe, sidebarOverlayBodyRecipe, sidebarOverlayBrandRecipe, sidebarOverlayHeadRecipe, sidebarOverlayItemActive, sidebarOverlayNavRecipe, sidebarOverlayPanelRecipe, sidebarOverlayPositionerRecipe, sidebarOverlayScopeRecipe, sidebarOverlaySeparatorRecipe, sidebarRecipe, sidebarScopeRecipe, sidebarSubRecipe, sidebarSwitchRecipe, sidebarToggleRecipe, sidebarTravel, sidebarWordmarkRecipe };
165
+ export { sidebarAnatomy, sidebarBrandRecipe, sidebarBrandStackRecipe, sidebarBrandSubtitleRecipe, sidebarChevronRecipe, sidebarDotRecipe, sidebarFootRecipe, sidebarGroupRecipe, sidebarHeadRecipe, sidebarIconRecipe, sidebarItemRecipe, sidebarLabelRecipe, sidebarMarkRecipe, sidebarMobileBarRecipe, sidebarMobileEyebrowRecipe, sidebarMobileHeadingsRecipe, sidebarMobileTitleRecipe, sidebarNavRecipe, sidebarOverlayBackdropRecipe, sidebarOverlayBodyRecipe, sidebarOverlayBrandRecipe, sidebarOverlayHeadRecipe, sidebarOverlayItemActive, sidebarOverlayNavRecipe, sidebarOverlayPanelRecipe, sidebarOverlayPositionerRecipe, sidebarOverlayScopeRecipe, sidebarOverlaySeparatorRecipe, sidebarRecipe, sidebarScopeRecipe, sidebarSubRecipe, sidebarSwitchRecipe, sidebarToggleRecipe, sidebarTravel, sidebarWordmarkRecipe };
40
166
  //# sourceMappingURL=sidebar.d.ts.map