@licklist/design 0.78.19 → 0.78.21

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 (268) hide show
  1. package/.storybook/main.cjs +55 -6
  2. package/.storybook/preview.jsx +77 -7
  3. package/dist/Maintenance/Maintenance.scss.js +6 -0
  4. package/dist/Maintenance/MaintenancePage.d.ts +12 -0
  5. package/dist/Maintenance/MaintenancePage.d.ts.map +1 -0
  6. package/dist/Maintenance/MaintenancePage.js +98 -0
  7. package/dist/Maintenance/SkeletonSidebar.d.ts +5 -0
  8. package/dist/Maintenance/SkeletonSidebar.d.ts.map +1 -0
  9. package/dist/Maintenance/SkeletonSidebar.js +101 -0
  10. package/dist/PageNotFound/PageNotFound.d.ts +10 -0
  11. package/dist/PageNotFound/PageNotFound.d.ts.map +1 -0
  12. package/dist/PageNotFound/PageNotFound.js +42 -0
  13. package/dist/PageNotFound/index.d.ts +2 -0
  14. package/dist/PageNotFound/index.d.ts.map +1 -0
  15. package/dist/UnderMaintenance/UnderMaintenance.d.ts +4 -0
  16. package/dist/UnderMaintenance/UnderMaintenance.d.ts.map +1 -0
  17. package/dist/UnderMaintenance/UnderMaintenance.js +39 -0
  18. package/dist/UnderMaintenance/UnderMaintenance.scss.js +6 -0
  19. package/dist/UnderMaintenance/index.d.ts +2 -0
  20. package/dist/UnderMaintenance/index.d.ts.map +1 -0
  21. package/dist/auth/Authorizer.d.ts.map +1 -1
  22. package/dist/auth/Authorizer.js +4 -3
  23. package/dist/auth/Layout/UserNavDropDown.js +1 -1
  24. package/dist/auth/Login/LoginComponent.d.ts.map +1 -1
  25. package/dist/auth/Login/LoginComponent.js +8 -6
  26. package/dist/auth/Logout/Logout.js +1 -1
  27. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.js +4 -3
  28. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.js +2 -1
  29. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.js +1 -1
  30. package/dist/index.d.ts +2 -0
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +2 -0
  33. package/dist/notification/components/NotificationPlaceholders.js +1 -1
  34. package/dist/product-set/form/ProductCategoriesControl.d.ts.map +1 -1
  35. package/dist/product-set/form/ProductCategoriesControl.js +13 -5
  36. package/dist/provider/provider-details-input/ProviderDetailsInput.js +1 -1
  37. package/dist/recurrence-input/RecurrenceEndInput.d.ts.map +1 -1
  38. package/dist/recurrence-input/RecurrenceEndInput.js +7 -3
  39. package/dist/sortable-tree/SortableTree.js +1 -26
  40. package/dist/styles/overrides/_functions.scss +1 -1
  41. package/dist/v2/components/Alert/Alert.d.ts +14 -0
  42. package/dist/v2/components/Alert/Alert.d.ts.map +1 -0
  43. package/dist/v2/components/Alert/index.d.ts +3 -0
  44. package/dist/v2/components/Alert/index.d.ts.map +1 -0
  45. package/dist/v2/components/Button/Button.d.ts +10 -0
  46. package/dist/v2/components/Button/Button.d.ts.map +1 -0
  47. package/dist/v2/components/Button/index.d.ts +3 -0
  48. package/dist/v2/components/Button/index.d.ts.map +1 -0
  49. package/dist/v2/components/Colors/Colors.d.ts +21 -0
  50. package/dist/v2/components/Colors/Colors.d.ts.map +1 -0
  51. package/dist/v2/components/Colors/index.d.ts +3 -0
  52. package/dist/v2/components/Colors/index.d.ts.map +1 -0
  53. package/dist/v2/components/Typography/Typography.d.ts +11 -0
  54. package/dist/v2/components/Typography/Typography.d.ts.map +1 -0
  55. package/dist/v2/components/Typography/index.d.ts +3 -0
  56. package/dist/v2/components/Typography/index.d.ts.map +1 -0
  57. package/dist/v2/hooks/useAuth.d.ts +4 -0
  58. package/dist/v2/hooks/useAuth.d.ts.map +1 -0
  59. package/dist/v2/index.d.ts +56 -0
  60. package/dist/v2/index.d.ts.map +1 -0
  61. package/dist/v2/navigation/FigmasAdminSideBar/FigmasAdminSideBar.d.ts +8 -0
  62. package/dist/v2/navigation/FigmasAdminSideBar/FigmasAdminSideBar.d.ts.map +1 -0
  63. package/dist/v2/navigation/FigmasAdminSideBar/index.d.ts +3 -0
  64. package/dist/v2/navigation/FigmasAdminSideBar/index.d.ts.map +1 -0
  65. package/dist/v2/navigation/FigmasSideBar/FigmasSideBar.d.ts +22 -0
  66. package/dist/v2/navigation/FigmasSideBar/FigmasSideBar.d.ts.map +1 -0
  67. package/dist/v2/navigation/FigmasSideBar/index.d.ts +3 -0
  68. package/dist/v2/navigation/FigmasSideBar/index.d.ts.map +1 -0
  69. package/dist/v2/navigation/FigmasTopHat/FigmasTopHat.d.ts +15 -0
  70. package/dist/v2/navigation/FigmasTopHat/FigmasTopHat.d.ts.map +1 -0
  71. package/dist/v2/navigation/FigmasTopHat/index.d.ts +3 -0
  72. package/dist/v2/navigation/FigmasTopHat/index.d.ts.map +1 -0
  73. package/dist/v2/navigation/Navigation/Navigation.d.ts +9 -0
  74. package/dist/v2/navigation/Navigation/Navigation.d.ts.map +1 -0
  75. package/dist/v2/navigation/Navigation/index.d.ts +3 -0
  76. package/dist/v2/navigation/Navigation/index.d.ts.map +1 -0
  77. package/dist/v2/navigation/NavigationItem/NavigationItem.d.ts +12 -0
  78. package/dist/v2/navigation/NavigationItem/NavigationItem.d.ts.map +1 -0
  79. package/dist/v2/navigation/NavigationItem/index.d.ts +3 -0
  80. package/dist/v2/navigation/NavigationItem/index.d.ts.map +1 -0
  81. package/dist/v2/navigation/NavigationSection/NavigationSection.d.ts +8 -0
  82. package/dist/v2/navigation/NavigationSection/NavigationSection.d.ts.map +1 -0
  83. package/dist/v2/navigation/NavigationSection/index.d.ts +3 -0
  84. package/dist/v2/navigation/NavigationSection/index.d.ts.map +1 -0
  85. package/dist/v2/navigation/SideBarToggleLarge/SideBarToggleLarge.d.ts +9 -0
  86. package/dist/v2/navigation/SideBarToggleLarge/SideBarToggleLarge.d.ts.map +1 -0
  87. package/dist/v2/navigation/SideBarToggleLarge/index.d.ts +3 -0
  88. package/dist/v2/navigation/SideBarToggleLarge/index.d.ts.map +1 -0
  89. package/dist/v2/navigation/SidebarUserElement/SidebarUserElement.d.ts +15 -0
  90. package/dist/v2/navigation/SidebarUserElement/SidebarUserElement.d.ts.map +1 -0
  91. package/dist/v2/navigation/SidebarUserElement/index.d.ts +3 -0
  92. package/dist/v2/navigation/SidebarUserElement/index.d.ts.map +1 -0
  93. package/dist/v2/navigation/SidebarWithAuth.d.ts +20 -0
  94. package/dist/v2/navigation/SidebarWithAuth.d.ts.map +1 -0
  95. package/dist/v2/navigation/TopHatControlDisc/TopHatControlDisc.d.ts +9 -0
  96. package/dist/v2/navigation/TopHatControlDisc/TopHatControlDisc.d.ts.map +1 -0
  97. package/dist/v2/navigation/TopHatControlDisc/index.d.ts +3 -0
  98. package/dist/v2/navigation/TopHatControlDisc/index.d.ts.map +1 -0
  99. package/dist/v2/navigation/config.d.ts +3 -0
  100. package/dist/v2/navigation/config.d.ts.map +1 -0
  101. package/dist/v2/navigation/icons/index.d.ts +12 -0
  102. package/dist/v2/navigation/icons/index.d.ts.map +1 -0
  103. package/dist/v2/navigation/index.d.ts +23 -0
  104. package/dist/v2/navigation/index.d.ts.map +1 -0
  105. package/dist/v2/types/navigation.d.ts +17 -0
  106. package/dist/v2/types/navigation.d.ts.map +1 -0
  107. package/package.json +4 -3
  108. package/rollup.config.js +13 -0
  109. package/src/Maintenance/Maintenance.scss +253 -0
  110. package/src/Maintenance/MaintenancePage.tsx +59 -0
  111. package/src/Maintenance/SkeletonSidebar.tsx +56 -0
  112. package/src/PageNotFound/PageNotFound.scss +8 -0
  113. package/src/PageNotFound/PageNotFound.stories.tsx +23 -0
  114. package/src/PageNotFound/PageNotFound.tsx +43 -0
  115. package/src/PageNotFound/index.ts +1 -0
  116. package/src/UnderMaintenance/UnderMaintenance.scss +6 -0
  117. package/src/UnderMaintenance/UnderMaintenance.stories.tsx +23 -0
  118. package/src/UnderMaintenance/UnderMaintenance.tsx +22 -0
  119. package/src/UnderMaintenance/index.ts +1 -0
  120. package/src/auth/Auth.stories.tsx +37 -3
  121. package/src/auth/Authorizer.tsx +3 -2
  122. package/src/auth/ChangePassword/ChangePassword.stories.tsx +1 -8
  123. package/src/auth/Layout/UserNavDropDown.tsx +1 -1
  124. package/src/auth/Login/Login.stories.tsx +1 -6
  125. package/src/auth/Login/LoginComponent.tsx +7 -5
  126. package/src/auth/Logout/Logout.stories.tsx +3 -0
  127. package/src/auth/Logout/Logout.tsx +1 -1
  128. package/src/auth/Register/Register.stories.tsx +3 -7
  129. package/src/auth/ResetPassword/ResetPassword.stories.tsx +1 -8
  130. package/src/auth/Social/Social.stories.tsx +1 -6
  131. package/src/collapsible-input-group/CollapsibleInputGroup.stories.tsx +72 -4
  132. package/src/events/edit-event-modal/component/EditEventForm/EditEventForm.stories.tsx +2 -1
  133. package/src/events/edit-recurrent-event-modal/EditRecurrentEventModal.stories.tsx +3 -2
  134. package/src/events/event-card/EventCard.stories.tsx +3 -2
  135. package/src/events/event-statistic-modal/EventStatisticModal.stories.tsx +2 -1
  136. package/src/events/event-venue-map/EventVenueMap.stories.tsx +8 -1
  137. package/src/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.tsx +3 -3
  138. package/src/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.tsx +2 -2
  139. package/src/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.tsx +1 -1
  140. package/src/iframe/custom-fields/components/CustomDateField.stories.tsx +3 -2
  141. package/src/iframe/event/event-card/IframeEventCard.stories.tsx +7 -5
  142. package/src/iframe/event/event-card/IframeEventCards.stories.tsx +7 -6
  143. package/src/iframe/event/event-description/EventDescription.stories.tsx +3 -2
  144. package/src/iframe/event/event-venue-map/IframeEventVenueMap.stories.tsx +3 -2
  145. package/src/iframe/external-modal/ExternalModal.stories.tsx +3 -0
  146. package/src/iframe/order-process/components/CalendarStepsForm/CalendarStepsForm.stories.tsx +5 -0
  147. package/src/iframe/order-process/components/NavigationSteps/NavigationSteps.stories.tsx +2 -1
  148. package/src/iframe/order-process/components/PaymentCard/PaymentCard.stories.tsx +2 -1
  149. package/src/iframe/page/Page.stories.tsx +9 -8
  150. package/src/iframe/payment/order-items-table/OrderItemsTable.stories.tsx +2 -1
  151. package/src/iframe/payment/payment-status-header/PaymentStatusHeader.stories.tsx +2 -1
  152. package/src/index.ts +2 -0
  153. package/src/logo/Logo.stories.tsx +17 -14
  154. package/src/modals/confirmation/Confirmation.stories.tsx +2 -1
  155. package/src/notification/components/NotificationPlaceholders.stories.tsx +4 -0
  156. package/src/notification/components/NotificationPlaceholders.tsx +1 -1
  157. package/src/product-set/form/ProductCategoriesControl.tsx +12 -6
  158. package/src/product-set/form/ProductSetForm.stories.tsx +13 -4
  159. package/src/provider/location-input/LocationInput.stories.tsx +47 -2
  160. package/src/provider/provider-details-input/ProviderDetailsInput.stories.tsx +10 -1
  161. package/src/provider/provider-details-input/ProviderDetailsInput.tsx +1 -1
  162. package/src/provider/provider-form/ProviderForm.stories.tsx +46 -0
  163. package/src/provider/venue-form/VenueForm.stories.tsx +49 -0
  164. package/src/recurrence-input/RecurrenceEndInput.tsx +7 -5
  165. package/src/recurrence-input/RecurrenceInput.stories.tsx +3 -0
  166. package/src/resource/form/ResourceForm.stories.tsx +2 -1
  167. package/src/sales/guest-profile/previous-bookings/PreviousBookings.stories.tsx +2 -1
  168. package/src/sales/life-time-sales/LifeTimeSalesChart.stories.tsx +2 -1
  169. package/src/sales/manual-booking/select-date-type-control/SelectDateTypeControl.stories.tsx +2 -1
  170. package/src/sales/manual-booking/select-menu/SelectMenu.stories.tsx +2 -1
  171. package/src/sales/modals/payment-modal/PaymentModal.stories.tsx +3 -2
  172. package/src/sales/modals/refund-modal/RefundModal.stories.tsx +5 -4
  173. package/src/sales/payment-form/SalePaymentForm.stories.tsx +3 -2
  174. package/src/setting/dashboard/snippet-templates/card/SnippetTemplateCard.stories.tsx +2 -1
  175. package/src/snippet/snippet-template/SnippetTemplate.stories.tsx +2 -1
  176. package/src/snippet/snippet-template/form/SnippetTemplateForm.stories.tsx +4 -2
  177. package/src/sortable-tree/SortableTree.tsx +1 -1
  178. package/src/sortable-tree/SortableTreeItem.stories.tsx +12 -14
  179. package/src/styles/overrides/_functions.scss +1 -1
  180. package/src/table/Table.stories.tsx +3 -24
  181. package/src/tiptap-editor/TipTapMenu/TipTapMenu.stories.tsx +27 -3
  182. package/src/v2/components/Alert/Alert.scss +186 -0
  183. package/src/v2/components/Alert/Alert.stories.tsx +176 -0
  184. package/src/v2/components/Alert/Alert.tsx +62 -0
  185. package/src/v2/components/Alert/assets/alert-icon.svg +3 -0
  186. package/src/v2/components/Alert/assets/error-icon.svg +3 -0
  187. package/src/v2/components/Alert/assets/info-icon.svg +3 -0
  188. package/src/v2/components/Alert/assets/success-icon.svg +3 -0
  189. package/src/v2/components/Alert/index.ts +2 -0
  190. package/src/v2/components/Button/Button.scss +19 -0
  191. package/src/v2/components/Button/Button.stories.tsx +93 -0
  192. package/src/v2/components/Button/Button.tsx +37 -0
  193. package/src/v2/components/Button/index.ts +3 -0
  194. package/src/v2/components/Colors/Colors.scss +64 -0
  195. package/src/v2/components/Colors/Colors.stories.tsx +143 -0
  196. package/src/v2/components/Colors/Colors.tsx +51 -0
  197. package/src/v2/components/Colors/ColorsAliases.stories.tsx +285 -0
  198. package/src/v2/components/Colors/Sizes.stories.tsx +141 -0
  199. package/src/v2/components/Colors/index.ts +2 -0
  200. package/src/v2/components/Typography/Typography.scss +72 -0
  201. package/src/v2/components/Typography/Typography.stories.tsx +266 -0
  202. package/src/v2/components/Typography/Typography.tsx +56 -0
  203. package/src/v2/components/Typography/index.ts +2 -0
  204. package/src/v2/hooks/useAuth.ts +40 -0
  205. package/src/v2/index.ts +105 -0
  206. package/src/v2/navigation/FigmasAdminSideBar/FigmasAdminSideBar.scss +148 -0
  207. package/src/v2/navigation/FigmasAdminSideBar/FigmasAdminSideBar.stories.tsx +132 -0
  208. package/src/v2/navigation/FigmasAdminSideBar/FigmasAdminSideBar.tsx +272 -0
  209. package/src/v2/navigation/FigmasAdminSideBar/index.ts +2 -0
  210. package/src/v2/navigation/FigmasSideBar/FigmasSideBar.scss +214 -0
  211. package/src/v2/navigation/FigmasSideBar/FigmasSideBar.stories.tsx +164 -0
  212. package/src/v2/navigation/FigmasSideBar/FigmasSideBar.tsx +310 -0
  213. package/src/v2/navigation/FigmasSideBar/index.ts +2 -0
  214. package/src/v2/navigation/FigmasTopHat/FigmasTopHat.scss +291 -0
  215. package/src/v2/navigation/FigmasTopHat/FigmasTopHat.stories.tsx +201 -0
  216. package/src/v2/navigation/FigmasTopHat/FigmasTopHat.tsx +158 -0
  217. package/src/v2/navigation/FigmasTopHat/assets/bell-icon.svg +3 -0
  218. package/src/v2/navigation/FigmasTopHat/assets/disc-icon.svg +4 -0
  219. package/src/v2/navigation/FigmasTopHat/assets/inbox-icon.svg +3 -0
  220. package/src/v2/navigation/FigmasTopHat/assets/logo-desktop-1.svg +3 -0
  221. package/src/v2/navigation/FigmasTopHat/assets/logo-desktop-2.svg +4 -0
  222. package/src/v2/navigation/FigmasTopHat/assets/user-icon.svg +4 -0
  223. package/src/v2/navigation/FigmasTopHat/index.ts +2 -0
  224. package/src/v2/navigation/Navigation/Navigation.scss +15 -0
  225. package/src/v2/navigation/Navigation/Navigation.stories.tsx +137 -0
  226. package/src/v2/navigation/Navigation/Navigation.tsx +127 -0
  227. package/src/v2/navigation/Navigation/index.ts +3 -0
  228. package/src/v2/navigation/NavigationItem/NavigationItem.scss +61 -0
  229. package/src/v2/navigation/NavigationItem/NavigationItem.stories.tsx +110 -0
  230. package/src/v2/navigation/NavigationItem/NavigationItem.tsx +38 -0
  231. package/src/v2/navigation/NavigationItem/index.ts +3 -0
  232. package/src/v2/navigation/NavigationSection/NavigationSection.scss +20 -0
  233. package/src/v2/navigation/NavigationSection/NavigationSection.tsx +19 -0
  234. package/src/v2/navigation/NavigationSection/index.ts +3 -0
  235. package/src/v2/navigation/SideBarToggleLarge/SideBarToggleLarge.scss +64 -0
  236. package/src/v2/navigation/SideBarToggleLarge/SideBarToggleLarge.stories.tsx +183 -0
  237. package/src/v2/navigation/SideBarToggleLarge/SideBarToggleLarge.tsx +30 -0
  238. package/src/v2/navigation/SideBarToggleLarge/assets/sidebar-icon.svg +5 -0
  239. package/src/v2/navigation/SideBarToggleLarge/index.ts +2 -0
  240. package/src/v2/navigation/SidebarUserElement/SidebarUserElement.scss +148 -0
  241. package/src/v2/navigation/SidebarUserElement/SidebarUserElement.stories.tsx +342 -0
  242. package/src/v2/navigation/SidebarUserElement/SidebarUserElement.tsx +113 -0
  243. package/src/v2/navigation/SidebarUserElement/index.ts +2 -0
  244. package/src/v2/navigation/SidebarWithAuth.stories.tsx +208 -0
  245. package/src/v2/navigation/SidebarWithAuth.tsx +49 -0
  246. package/src/v2/navigation/TopHatControlDisc/TopHatControlDisc.scss +57 -0
  247. package/src/v2/navigation/TopHatControlDisc/TopHatControlDisc.stories.tsx +153 -0
  248. package/src/v2/navigation/TopHatControlDisc/TopHatControlDisc.tsx +30 -0
  249. package/src/v2/navigation/TopHatControlDisc/assets/disc-icon.svg +4 -0
  250. package/src/v2/navigation/TopHatControlDisc/index.ts +2 -0
  251. package/src/v2/navigation/config.tsx +150 -0
  252. package/src/v2/navigation/icons/index.tsx +72 -0
  253. package/src/v2/navigation/index.ts +23 -0
  254. package/src/v2/styles/components/Button.scss +168 -0
  255. package/src/v2/styles/form/NewInput.scss +172 -0
  256. package/src/v2/styles/index.scss +5 -0
  257. package/src/v2/styles/navigation/Navigation.scss +17 -0
  258. package/src/v2/styles/navigation/NavigationItem.scss +86 -0
  259. package/src/v2/styles/navigation/NavigationSection.scss +26 -0
  260. package/src/v2/styles/navigation/_index.scss +9 -0
  261. package/src/v2/styles/tokens/_aliases.scss +199 -0
  262. package/src/v2/styles/tokens/_colors.scss +121 -0
  263. package/src/v2/styles/tokens/_sizes.scss +122 -0
  264. package/src/v2/styles/tokens/_status.scss +108 -0
  265. package/src/v2/styles/tokens/_typography.scss +146 -0
  266. package/src/v2/types/navigation.ts +17 -0
  267. package/src/zone/form/ZoneForm.stories.tsx +2 -1
  268. package/styles/overrides/_functions.scss +6 -0
@@ -0,0 +1,121 @@
1
+ /* Color tokens derived from Figma
2
+ * Spec: https://www.figma.com/design/HPb8SEwQH2rrFAD2sRlKei/BKIT---Booked-Kit?node-id=30-92
3
+ */
4
+
5
+ :root {
6
+ /* Purples - Primary brand colors */
7
+ --color-purple-50: #efe6fd;
8
+ --color-purple-100: #dccefb;
9
+ --color-purple-200: #c49af7;
10
+ --color-purple-300: #a866f3;
11
+ --color-purple-400: #8c33ef;
12
+ --color-purple-500: #7000eb;
13
+ --color-purple-600: #5a00bc;
14
+ --color-purple-700: #450091;
15
+ --color-purple-800: #2f0064;
16
+ --color-purple-900: #1a0036;
17
+
18
+ /* Labels - Text colors */
19
+ --color-label-primary: #121e52;
20
+ --color-label-secondary: #626a90;
21
+ --color-label-tertiary: #979db2;
22
+ --color-label-disabled: #c2c7d4;
23
+ --color-label-inverse: #ffffff;
24
+
25
+ /* Surfaces - Background colors */
26
+ --color-surface-primary: #ffffff;
27
+ --color-surface-secondary: #f8f8fa;
28
+ --color-surface-tertiary: #e8e9ef;
29
+ --color-surface-hover: #f0f0f2;
30
+ --color-surface-active: #e8e9ef;
31
+ --color-surface-focus: #ffffff;
32
+
33
+ /* Borders */
34
+ --color-border-primary: #e8e9ef;
35
+ --color-border-secondary: #d4d6dd;
36
+ --color-border-focus: #7000eb;
37
+
38
+ /* Brand colors */
39
+ --color-primary: #7000eb;
40
+ --color-primary-hover: #5a00bc;
41
+ --color-primary-active: #450091;
42
+ --color-primary-focus: #8c33ef;
43
+ --color-primary-inverse: #ffffff;
44
+
45
+ /* Status colors */
46
+ --color-success: #10b981;
47
+ --color-success-light: #d1fae5;
48
+ --color-error: #ef4444;
49
+ --color-error-light: #fee2e2;
50
+ --color-warning: #f59e0b;
51
+ --color-warning-light: #fef3c7;
52
+ --color-info: #3b82f6;
53
+ --color-info-light: #dbeafe;
54
+
55
+ /* Fills */
56
+ --color-fill-primary: #14215a;
57
+ --color-fill-secondary: #626a90;
58
+ --color-fill-disabled: #c2c7d4;
59
+ }
60
+
61
+ /* Color utility mixins */
62
+ @mixin color-bg($color) {
63
+ background-color: var(--color-#{$color});
64
+ }
65
+
66
+ @mixin color-text($color) {
67
+ color: var(--color-#{$color});
68
+ }
69
+
70
+ @mixin color-border($color) {
71
+ border-color: var(--color-#{$color});
72
+ }
73
+
74
+ /* Helper classes for quick color application */
75
+ .color-label-primary {
76
+ color: var(--color-label-primary);
77
+ }
78
+
79
+ .color-label-secondary {
80
+ color: var(--color-label-secondary);
81
+ }
82
+
83
+ .color-label-tertiary {
84
+ color: var(--color-label-tertiary);
85
+ }
86
+
87
+ .color-label-disabled {
88
+ color: var(--color-label-disabled);
89
+ }
90
+
91
+ .color-label-inverse {
92
+ color: var(--color-label-inverse);
93
+ }
94
+
95
+ .bg-surface-primary {
96
+ background-color: var(--color-surface-primary);
97
+ }
98
+
99
+ .bg-surface-secondary {
100
+ background-color: var(--color-surface-secondary);
101
+ }
102
+
103
+ .bg-surface-tertiary {
104
+ background-color: var(--color-surface-tertiary);
105
+ }
106
+
107
+ .bg-surface-hover {
108
+ background-color: var(--color-surface-hover);
109
+ }
110
+
111
+ .border-primary {
112
+ border-color: var(--color-border-primary);
113
+ }
114
+
115
+ .border-secondary {
116
+ border-color: var(--color-border-secondary);
117
+ }
118
+
119
+ .border-focus {
120
+ border-color: var(--color-border-focus);
121
+ }
@@ -0,0 +1,122 @@
1
+ /* Size tokens - Radius, Spacing, and Opacity
2
+ * Spec: https://www.figma.com/design/HPb8SEwQH2rrFAD2sRlKei/BKIT---Booked-Kit?node-id=37-110
3
+ */
4
+
5
+ :root {
6
+ /* Radius tokens - Border radius values */
7
+ --radius-zero: 0px;
8
+ --radius-xs: 1px;
9
+ --radius-sm: 2px;
10
+ --radius-md: 4px;
11
+ --radius-reg: 8px;
12
+ --radius-lg: 16px;
13
+ --radius-xl: 24px;
14
+
15
+ /* Spacing tokens - Gap, padding, margin values */
16
+ --spacing-zero: 0px;
17
+ --spacing-xxs: 1px;
18
+ --spacing-xs: 2px;
19
+ --spacing-sm: 4px;
20
+ --spacing-md: 8px;
21
+ --spacing-reg: 16px;
22
+ --spacing-lg: 24px;
23
+ --spacing-xl: 32px;
24
+ --spacing-xxl: 64px;
25
+ --spacing-super: 128px;
26
+
27
+ /* Opacity tokens - Transparency values */
28
+ --opacity-0: 0;
29
+ --opacity-10: 0.1;
30
+ --opacity-20: 0.2;
31
+ --opacity-30: 0.3;
32
+ --opacity-40: 0.4;
33
+ --opacity-50: 0.5;
34
+ --opacity-60: 0.6;
35
+ --opacity-70: 0.7;
36
+ --opacity-80: 0.8;
37
+ --opacity-90: 0.9;
38
+ --opacity-100: 1;
39
+ }
40
+
41
+ /* Helper mixins for using size tokens */
42
+ @mixin radius($token) {
43
+ border-radius: var(--radius-#{$token});
44
+ }
45
+
46
+ @mixin spacing($property, $token) {
47
+ #{$property}: var(--spacing-#{$token});
48
+ }
49
+
50
+ @mixin opacity($token) {
51
+ opacity: var(--opacity-#{$token});
52
+ }
53
+
54
+ /* Convenience mixins for common radius values */
55
+ @mixin radius-zero {
56
+ border-radius: var(--radius-zero);
57
+ }
58
+
59
+ @mixin radius-xs {
60
+ border-radius: var(--radius-xs);
61
+ }
62
+
63
+ @mixin radius-sm {
64
+ border-radius: var(--radius-sm);
65
+ }
66
+
67
+ @mixin radius-md {
68
+ border-radius: var(--radius-md);
69
+ }
70
+
71
+ @mixin radius-reg {
72
+ border-radius: var(--radius-reg);
73
+ }
74
+
75
+ @mixin radius-lg {
76
+ border-radius: var(--radius-lg);
77
+ }
78
+
79
+ @mixin radius-xl {
80
+ border-radius: var(--radius-xl);
81
+ }
82
+
83
+ /* Convenience mixins for common spacing values */
84
+ @mixin spacing-zero {
85
+ --spacing: var(--spacing-zero);
86
+ }
87
+
88
+ @mixin spacing-xxs {
89
+ --spacing: var(--spacing-xxs);
90
+ }
91
+
92
+ @mixin spacing-xs {
93
+ --spacing: var(--spacing-xs);
94
+ }
95
+
96
+ @mixin spacing-sm {
97
+ --spacing: var(--spacing-sm);
98
+ }
99
+
100
+ @mixin spacing-md {
101
+ --spacing: var(--spacing-md);
102
+ }
103
+
104
+ @mixin spacing-reg {
105
+ --spacing: var(--spacing-reg);
106
+ }
107
+
108
+ @mixin spacing-lg {
109
+ --spacing: var(--spacing-lg);
110
+ }
111
+
112
+ @mixin spacing-xl {
113
+ --spacing: var(--spacing-xl);
114
+ }
115
+
116
+ @mixin spacing-xxl {
117
+ --spacing: var(--spacing-xxl);
118
+ }
119
+
120
+ @mixin spacing-super {
121
+ --spacing: var(--spacing-super);
122
+ }
@@ -0,0 +1,108 @@
1
+ /* Status/Alert Color tokens derived from Figma Alerts & Errors page
2
+ * Spec: https://www.figma.com/design/HPb8SEwQH2rrFAD2sRlKei/BKIT---Booked-Kit?node-id=167:968
3
+ */
4
+
5
+ :root {
6
+ /* Success/Green Status Colors */
7
+ --color-success-fill: #2d6b18;
8
+ --color-success-background: #eef9ea;
9
+ --color-success-border: #c9ecbd;
10
+
11
+ /* Error/Red Status Colors */
12
+ --color-error-fill: #cc3c35;
13
+ --color-error-background: #fceceb;
14
+ --color-error-border: #f5c4c2;
15
+
16
+ /* Alert/Warning/Yellow Status Colors */
17
+ --color-alert-fill: #fd7e14;
18
+ --color-alert-background: #fcf6e7;
19
+ --color-alert-border: #f6e3b4;
20
+
21
+ /* Info/Blue Status Colors */
22
+ --color-info-fill: #0e8ce2;
23
+ --color-info-background: #e7f4fc;
24
+ --color-info-border: #b4dbf6;
25
+ }
26
+
27
+ /* Legacy format for compatibility with existing alias system */
28
+ :root {
29
+ /* Surfaces - Status backgrounds */
30
+ --surfaces-status-background-success: var(--color-success-background);
31
+ --surfaces-status-background-error: var(--color-error-background);
32
+ --surfaces-status-background-alert: var(--color-alert-background);
33
+ --surfaces-status-background-info: var(--color-info-background);
34
+
35
+ /* Borders - Status borders */
36
+ --borders-status-border-success: var(--color-success-border);
37
+ --borders-status-border-error: var(--color-error-border);
38
+ --borders-status-border-alert: var(--color-alert-border);
39
+ --borders-status-border-info: var(--color-info-border);
40
+
41
+ /* Fills - Status icons/text */
42
+ --fills-status-fill-success: var(--color-success-fill);
43
+ --fills-status-fill-error: var(--color-error-fill);
44
+ --fills-status-fill-alert: var(--color-alert-fill);
45
+ --fills-status-fill-info: var(--color-info-fill);
46
+ }
47
+
48
+ /* SCSS Map for status colors */
49
+ $status-colors: (
50
+ success: (
51
+ fill: var(--color-success-fill),
52
+ background: var(--color-success-background),
53
+ border: var(--color-success-border)
54
+ ),
55
+ error: (
56
+ fill: var(--color-error-fill),
57
+ background: var(--color-error-background),
58
+ border: var(--color-error-border)
59
+ ),
60
+ alert: (
61
+ fill: var(--color-alert-fill),
62
+ background: var(--color-alert-background),
63
+ border: var(--color-alert-border)
64
+ ),
65
+ info: (
66
+ fill: var(--color-info-fill),
67
+ background: var(--color-info-background),
68
+ border: var(--color-info-border)
69
+ )
70
+ );
71
+
72
+ /* Mixins for status colors */
73
+ @mixin status-success() {
74
+ background-color: var(--surfaces-status-background-success);
75
+ border-color: var(--borders-status-border-success);
76
+ color: var(--fills-status-fill-success);
77
+ }
78
+
79
+ @mixin status-error() {
80
+ background-color: var(--surfaces-status-background-error);
81
+ border-color: var(--borders-status-border-error);
82
+ color: var(--fills-status-fill-error);
83
+ }
84
+
85
+ @mixin status-alert() {
86
+ background-color: var(--surfaces-status-background-alert);
87
+ border-color: var(--borders-status-border-alert);
88
+ color: var(--fills-status-fill-alert);
89
+ }
90
+
91
+ @mixin status-info() {
92
+ background-color: var(--surfaces-status-background-info);
93
+ border-color: var(--borders-status-border-info);
94
+ color: var(--fills-status-fill-info);
95
+ }
96
+
97
+ /* Helper mixin for getting status colors */
98
+ @function get-status-color($status, $type) {
99
+ $status-map: map-get($status-colors, $status);
100
+ @if $status-map {
101
+ $color: map-get($status-map, $type);
102
+ @if $color {
103
+ @return $color;
104
+ }
105
+ }
106
+ @warn "Unknown status color: #{$status}.#{$type}";
107
+ @return null;
108
+ }
@@ -0,0 +1,146 @@
1
+ /* Typography tokens and mixins derived from Figma
2
+ * Spec: https://www.figma.com/design/HPb8SEwQH2rrFAD2sRlKei/BKIT---Booked-Kit?node-id=30-95&m=dev
3
+ */
4
+
5
+ :root {
6
+ /* Families */
7
+ --font-family-sans: 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Helvetica Neue', Arial, sans-serif;
8
+ --font-family-mono: 'Geist Mono', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
9
+
10
+ /* Headings Desktop */
11
+ --heading-xxl-size: 44px;
12
+ --heading-xxl-line: 48px;
13
+ --heading-xxl-weight: 600;
14
+ --heading-xl-size: 32px;
15
+ --heading-xl-line: 36px;
16
+ --heading-xl-weight: 700;
17
+ --heading-h1-size: 24px;
18
+ --heading-h1-line: 28px;
19
+ --heading-h1-weight: 600;
20
+ --heading-h2-size: 20px;
21
+ --heading-h2-line: 24px;
22
+ --heading-h2-weight: 600;
23
+ --heading-h3-size: 17px;
24
+ --heading-h3-line: 20px;
25
+ --heading-h3-weight: 600;
26
+ --heading-h4-size: 15px;
27
+ --heading-h4-line: 18px;
28
+ --heading-h4-weight: 600;
29
+ --heading-h5-size: 13px;
30
+ --heading-h5-line: 16px;
31
+ --heading-h5-weight: 500;
32
+ --heading-h6-size: 11px;
33
+ --heading-h6-line: 14px;
34
+ --heading-h6-weight: 500;
35
+
36
+ /* Headings Mobile */
37
+ --heading-xxl-mobile-size: 32px;
38
+ --heading-xxl-mobile-line: 36px;
39
+ --heading-xxl-mobile-weight: 600;
40
+ --heading-xl-mobile-size: 26px;
41
+ --heading-xl-mobile-line: 30px;
42
+ --heading-xl-mobile-weight: 700;
43
+ --heading-h1-mobile-size: 20px;
44
+ --heading-h1-mobile-line: 23px;
45
+ --heading-h1-mobile-weight: 600;
46
+ --heading-h2-mobile-size: 18px;
47
+ --heading-h2-mobile-line: 22px;
48
+ --heading-h2-mobile-weight: 600;
49
+ --heading-h3-mobile-size: 16px;
50
+ --heading-h3-mobile-line: 18px;
51
+ --heading-h3-mobile-weight: 600;
52
+ --heading-h4-mobile-size: 14px;
53
+ --heading-h4-mobile-line: 16px;
54
+ --heading-h4-mobile-weight: 600;
55
+ --heading-h5-mobile-size: 13px;
56
+ --heading-h5-mobile-line: 16px;
57
+ --heading-h5-mobile-weight: 500;
58
+ --heading-h6-mobile-size: 11px;
59
+ --heading-h6-mobile-line: 14px;
60
+ --heading-h6-mobile-weight: 500;
61
+
62
+ /* Body Desktop */
63
+ --text-xl-size: 20px;
64
+ --text-xl-line: 26px;
65
+ --text-xl-weight: 400;
66
+ --text-large-size: 18px;
67
+ --text-large-line: 24px;
68
+ --text-large-weight: 400;
69
+ --text-regular-size: 15px;
70
+ --text-regular-line: 20px;
71
+ --text-regular-weight: 400;
72
+ --text-small-size: 13px;
73
+ --text-small-line: 16px;
74
+ --text-small-weight: 400;
75
+ --text-small-emphasis-weight: 500;
76
+ --text-small-bold-weight: 600;
77
+ --text-xs-size: 10px;
78
+ --text-xs-line: 13px;
79
+ --text-xs-weight: 500;
80
+ --text-xs-bold-weight: 600;
81
+ }
82
+
83
+ /* Breakpoint: adjust if your system uses different breakpoints */
84
+ $bp-mobile-max: 767px;
85
+
86
+ /* Map of variants to CSS variable tuples: (size, line, weight) */
87
+ $typo-map: (
88
+ 'heading.xxl': (var(--heading-xxl-size), var(--heading-xxl-line), var(--heading-xxl-weight), var(--font-family-sans)),
89
+ 'heading.xl': (var(--heading-xl-size), var(--heading-xl-line), var(--heading-xl-weight), var(--font-family-sans)),
90
+ 'heading.h1': (var(--heading-h1-size), var(--heading-h1-line), var(--heading-h1-weight), var(--font-family-sans)),
91
+ 'heading.h2': (var(--heading-h2-size), var(--heading-h2-line), var(--heading-h2-weight), var(--font-family-sans)),
92
+ 'heading.h3': (var(--heading-h3-size), var(--heading-h3-line), var(--heading-h3-weight), var(--font-family-sans)),
93
+ 'heading.h4': (var(--heading-h4-size), var(--heading-h4-line), var(--heading-h4-weight), var(--font-family-sans)),
94
+ 'heading.h5': (var(--heading-h5-size), var(--heading-h5-line), var(--heading-h5-weight), var(--font-family-sans)),
95
+ 'heading.h6': (var(--heading-h6-size), var(--heading-h6-line), var(--heading-h6-weight), var(--font-family-sans)),
96
+
97
+ 'heading.xxl.mobile': (var(--heading-xxl-mobile-size), var(--heading-xxl-mobile-line), var(--heading-xxl-mobile-weight), var(--font-family-sans)),
98
+ 'heading.xl.mobile': (var(--heading-xl-mobile-size), var(--heading-xl-mobile-line), var(--heading-xl-mobile-weight), var(--font-family-sans)),
99
+ 'heading.h1.mobile': (var(--heading-h1-mobile-size), var(--heading-h1-mobile-line), var(--heading-h1-mobile-weight), var(--font-family-sans)),
100
+ 'heading.h2.mobile': (var(--heading-h2-mobile-size), var(--heading-h2-mobile-line), var(--heading-h2-mobile-weight), var(--font-family-sans)),
101
+ 'heading.h3.mobile': (var(--heading-h3-mobile-size), var(--heading-h3-mobile-line), var(--heading-h3-mobile-weight), var(--font-family-sans)),
102
+ 'heading.h4.mobile': (var(--heading-h4-mobile-size), var(--heading-h4-mobile-line), var(--heading-h4-mobile-weight), var(--font-family-sans)),
103
+ 'heading.h5.mobile': (var(--heading-h5-mobile-size), var(--heading-h5-mobile-line), var(--heading-h5-mobile-weight), var(--font-family-sans)),
104
+ 'heading.h6.mobile': (var(--heading-h6-mobile-size), var(--heading-h6-mobile-line), var(--heading-h6-mobile-weight), var(--font-family-sans)),
105
+
106
+ 'text.xl': (var(--text-xl-size), var(--text-xl-line), var(--text-xl-weight), var(--font-family-sans)),
107
+ 'text.large': (var(--text-large-size), var(--text-large-line), var(--text-large-weight), var(--font-family-sans)),
108
+ 'text.regular': (var(--text-regular-size), var(--text-regular-line), var(--text-regular-weight), var(--font-family-sans)),
109
+ 'text.small': (var(--text-small-size), var(--text-small-line), var(--text-small-weight), var(--font-family-sans)),
110
+ 'text.small.emphasis': (var(--text-small-size), var(--text-small-line), var(--text-small-emphasis-weight), var(--font-family-sans)),
111
+ 'text.small.bold': (var(--text-small-size), var(--text-small-line), var(--text-small-bold-weight), var(--font-family-sans)),
112
+ 'text.xs': (var(--text-xs-size), var(--text-xs-line), var(--text-xs-weight), var(--font-family-sans)),
113
+ 'text.xs.bold': (var(--text-xs-size), var(--text-xs-line), var(--text-xs-bold-weight), var(--font-family-sans))
114
+ );
115
+
116
+ @mixin apply-typo($tuple) {
117
+ $size: nth($tuple, 1);
118
+ $line: nth($tuple, 2);
119
+ $weight: nth($tuple, 3);
120
+ $family: nth($tuple, 4);
121
+ font-family: $family;
122
+ font-size: $size;
123
+ line-height: $line;
124
+ font-weight: $weight;
125
+ color: var(--labels-main-label-primary, #121E52);
126
+ }
127
+
128
+ @mixin typography($variant) {
129
+ @if map-has-key($typo-map, $variant) {
130
+ @include apply-typo(map-get($typo-map, $variant));
131
+ }
132
+
133
+ @else {
134
+ /* Fallback to regular text */
135
+ @include apply-typo(map-get($typo-map, 'text.regular'));
136
+ }
137
+ }
138
+
139
+ /* Convenience mixin that switches to mobile variant under mobile breakpoint */
140
+ @mixin responsive-heading($desktopVariant, $mobileVariant) {
141
+ @include typography($desktopVariant);
142
+
143
+ @media (max-width: $bp-mobile-max) {
144
+ @include typography($mobileVariant);
145
+ }
146
+ }
@@ -0,0 +1,17 @@
1
+ export interface NavigationItem {
2
+ id: string
3
+ label: string
4
+ path: string
5
+ requiredRoles?: string[]
6
+ requiredPermissions?: string[]
7
+ adminOnly?: boolean
8
+ venueRequired?: boolean
9
+ }
10
+
11
+ export interface AuthCredentials {
12
+ roles: string[]
13
+ permissions: string[]
14
+ isAdmin: boolean
15
+ isVenueUser: boolean
16
+ venueId?: string
17
+ }
@@ -8,7 +8,8 @@ export default {
8
8
  } as Meta
9
9
 
10
10
  export const Default: Story<ZoneFormProps> = (args) => {
11
- const isLoading = boolean('isLoading', false)
11
+ // TODO: Replace with Storybook controls
12
+ const isLoading = false
12
13
  return <ZoneForm {...args} isLoading={isLoading} />
13
14
  }
14
15
 
@@ -0,0 +1,6 @@
1
+ @import 'bootstrap/scss/functions';
2
+
3
+ // size in scalable pixels (0.25rem by default)
4
+ @function sp($value) {
5
+ @return calc($value / 4 * $font-size-base);
6
+ }