@saasmakers/ui 2.0.24 → 2.0.26

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.
@@ -53,8 +53,8 @@ function onClick(event: MouseEvent) {
53
53
  'gap-1.5 p-3': size === 'base',
54
54
  'gap-2 p-4': size === 'lg',
55
55
  'border border-gray-200 bg-white dark:border-gray-800 dark:bg-gray-900': variant === 'outline' && !active,
56
- 'border border-gray-300 bg-gray-100 dark:border-gray-700 dark:bg-gray-800': variant === 'outline' && active,
57
- 'hover:border-gray-300 dark:hover:border-gray-700': variant === 'outline' && !disabled && !loading,
56
+ 'base-highlight-indigo': variant === 'outline' && active,
57
+ 'hover:border-gray-300 dark:hover:border-gray-700': variant === 'outline' && !active && !disabled && !loading,
58
58
  'bg-gray-100 dark:bg-gray-800': variant === 'filled',
59
59
  }"
60
60
  :disabled="disabled || loading"
@@ -138,7 +138,10 @@ function onTogglePasswordVisibility() {
138
138
  showPassword.value = !showPassword.value
139
139
  }
140
140
 
141
- defineExpose({ blur, focus })
141
+ defineExpose({
142
+ blur,
143
+ focus,
144
+ })
142
145
  </script>
143
146
 
144
147
  <template>
@@ -25,10 +25,10 @@ const isClickable = computed(() => {
25
25
 
26
26
  const textSize = computed<BaseSize>(() => {
27
27
  switch (props.size) {
28
- case 'lg':
29
- return 'base'
30
28
  case 'base':
31
29
  return 'sm'
30
+ case 'lg':
31
+ return 'base'
32
32
  case 'sm':
33
33
  return 'xs'
34
34
  default:
@@ -276,7 +276,7 @@ function selectOption(event: MouseEvent, value: string) {
276
276
  :initial="fadeIn.initial"
277
277
  >
278
278
  <div
279
- class="options base-border-active min-w-xs overflow-y-auto border rounded-lg bg-white text-gray-600 font-medium dark:bg-gray-900 dark:text-gray-400"
279
+ class="options min-w-xs overflow-y-auto border base-border-active rounded-lg bg-white text-gray-600 font-medium dark:bg-gray-900 dark:text-gray-400"
280
280
  :class="{
281
281
  'md:min-w-xl p-1 pb-0': computedColumns.length >= 2,
282
282
  'mt-8': size === 'sm' && !padding && direction === 'bottom',
@@ -293,7 +293,7 @@ function selectOption(event: MouseEvent, value: string) {
293
293
  >
294
294
  <div
295
295
  v-if="searchable"
296
- class="base-border-b sticky top-0 z-10 bg-white dark:bg-gray-900"
296
+ class="sticky top-0 z-10 base-border-b bg-white dark:bg-gray-900"
297
297
  @click.stop
298
298
  >
299
299
  <FieldInput
@@ -311,7 +311,7 @@ function selectOption(event: MouseEvent, value: string) {
311
311
 
312
312
  <div
313
313
  v-if="searchable && searchQueryCleaned && !firstFilteredOption"
314
- class="base-border-b flex justify-center p-3"
314
+ class="flex justify-center base-border-b p-3"
315
315
  >
316
316
  <BaseIcon
317
317
  class="pointer-events-none"
@@ -55,7 +55,7 @@ function onFieldBlur(event: FocusEvent) {
55
55
  />
56
56
 
57
57
  <div
58
- class="base-box flex cursor-pointer items-center gap-2 overflow-hidden px-3 font-normal"
58
+ class="flex cursor-pointer items-center gap-2 overflow-hidden base-box px-3 font-normal"
59
59
  :class="{
60
60
  'field-disabled': disabled,
61
61
  'base-border-interactive-focus-within': !disabled,
@@ -24,10 +24,6 @@ export interface BaseAlert {
24
24
  // Global types for bases
25
25
  export type BaseAlignment = 'center' | 'left' | 'right'
26
26
 
27
- export type BaseButtonShape = 'circle' | 'default' | 'square'
28
-
29
- export type BaseAvatarShape = 'circle' | 'square'
30
-
31
27
  export interface BaseAvatar {
32
28
  bordered?: boolean
33
29
  borderWidth?: number
@@ -39,6 +35,8 @@ export interface BaseAvatar {
39
35
  to?: RouteLocationNamedI18n
40
36
  }
41
37
 
38
+ export type BaseAvatarShape = 'circle' | 'square'
39
+
42
40
  export type BaseBackground = 'gray' | 'white'
43
41
 
44
42
  export interface BaseBordered {
@@ -70,6 +68,8 @@ export interface BaseButton {
70
68
  type?: BaseButtonType
71
69
  }
72
70
 
71
+ export type BaseButtonShape = 'circle' | 'default' | 'square'
72
+
73
73
  export type BaseButtonSize
74
74
  = | '2xs'
75
75
  | 'base'
@@ -20,10 +20,12 @@ declare global {
20
20
  type BaseAlert = import('./bases').BaseAlert
21
21
  type BaseAlignment = import('./bases').BaseAlignment
22
22
  type BaseAvatar = import('./bases').BaseAvatar
23
+ type BaseAvatarShape = import('./bases').BaseAvatarShape
23
24
  type BaseBackground = import('./bases').BaseBackground
24
25
  type BaseBordered = import('./bases').BaseBordered
25
26
  type BaseBorderedColor = import('./bases').BaseBorderedColor
26
27
  type BaseButton = import('./bases').BaseButton
28
+ type BaseButtonShape = import('./bases').BaseButtonShape
27
29
  type BaseButtonSize = import('./bases').BaseButtonSize
28
30
  type BaseButtonType = import('./bases').BaseButtonType
29
31
  type BaseCard = import('./bases').BaseCard
@@ -66,8 +68,6 @@ declare global {
66
68
  type BaseQuoteSize = import('./bases').BaseQuoteSize
67
69
  type BaseShortcut = import('./bases').BaseShortcut
68
70
  type BaseSize = import('./bases').BaseSize
69
- type BaseButtonShape = import('./bases').BaseButtonShape
70
- type BaseAvatarShape = import('./bases').BaseAvatarShape
71
71
  type BaseSpinner = import('./bases').BaseSpinner
72
72
  type BaseStatus = import('./bases').BaseStatus
73
73
  type BaseTag = import('./bases').BaseTag
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@saasmakers/ui",
3
- "version": "2.0.24",
3
+ "version": "2.0.26",
4
4
  "private": false,
5
5
  "description": "Reusable Nuxt UI components for SaaS Makers projects",
6
6
  "license": "MIT",
package/uno.config.ts CHANGED
@@ -34,8 +34,10 @@ export const shortcuts: Record<string, string> = {
34
34
  'base-border-interactive': 'hover:border-gray-300 focus:border-gray-400 dark:hover:border-gray-700 dark:focus:border-gray-600',
35
35
  'base-border-interactive-focus-visible': 'hover:border-gray-300 focus-visible:border-gray-400 dark:hover:border-gray-700 dark:focus-visible:border-gray-600',
36
36
  'base-border-interactive-focus-within': 'hover:border-gray-300 focus-within:border-gray-400 dark:hover:border-gray-700 dark:focus-within:border-gray-600',
37
+ 'base-bg': 'bg-white dark:bg-gray-900',
37
38
  'base-box': 'border shadow-sm base-border rounded-lg',
38
- 'base-surface': 'border base-border bg-white dark:bg-gray-900 shadow-sm',
39
+ 'base-highlight-indigo': 'border border-indigo-600/35 bg-indigo-600/[0.08] dark:border-indigo-400/35 dark:bg-indigo-400/[0.08]',
40
+ 'base-surface': 'border base-border base-bg shadow-sm',
39
41
  'field-disabled': 'opacity-50 cursor-not-allowed',
40
42
  'scroll-y-stable': 'overflow-y-auto [scrollbar-gutter:stable]',
41
43
  }