@g4rcez/components 3.0.1 → 4.0.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 (176) hide show
  1. package/dist/CaretDown.es-Cj7klWI3.js +33 -0
  2. package/dist/CaretDown.es-Cj7klWI3.js.map +1 -0
  3. package/dist/CaretRight.es-0-M8D9y8.js +33 -0
  4. package/dist/CaretRight.es-0-M8D9y8.js.map +1 -0
  5. package/dist/CheckCircle.es-C6QWLfk_.js +33 -0
  6. package/dist/CheckCircle.es-C6QWLfk_.js.map +1 -0
  7. package/dist/File.es-CA-vuPED.js +33 -0
  8. package/dist/File.es-CA-vuPED.js.map +1 -0
  9. package/dist/IconBase.es-DJ1oCtpo.js +50 -0
  10. package/dist/IconBase.es-DJ1oCtpo.js.map +1 -0
  11. package/dist/Info.es-CrZKs4q4.js +33 -0
  12. package/dist/Info.es-CrZKs4q4.js.map +1 -0
  13. package/dist/MotionConfigContext-C7MqlSdv.js +2713 -0
  14. package/dist/MotionConfigContext-C7MqlSdv.js.map +1 -0
  15. package/dist/Warning.es-D_eI6tLe.js +39 -0
  16. package/dist/Warning.es-D_eI6tLe.js.map +1 -0
  17. package/dist/X.es-BJ1O93El.js +39 -0
  18. package/dist/X.es-BJ1O93El.js.map +1 -0
  19. package/dist/ai/docs/Alert.md +1 -1
  20. package/dist/ai/docs/AnimatedList.md +3 -3
  21. package/dist/ai/docs/Button.md +1 -1
  22. package/dist/ai/docs/CommandPalette.md +7 -7
  23. package/dist/ai/docs/Dropdown.md +4 -4
  24. package/dist/ai/docs/Empty.md +9 -9
  25. package/dist/ai/docs/Expand.md +1 -1
  26. package/dist/ai/docs/FileUpload.md +2 -2
  27. package/dist/ai/docs/Input.md +2 -2
  28. package/dist/ai/docs/InputField.md +2 -2
  29. package/dist/ai/docs/List.md +3 -3
  30. package/dist/ai/docs/Menu.md +3 -3
  31. package/dist/ai/docs/MultiSelect.md +1 -1
  32. package/dist/ai/docs/PageCalendar.md +1 -1
  33. package/dist/ai/docs/Select.md +1 -1
  34. package/dist/ai/docs/Slot.md +1 -1
  35. package/dist/ai/docs/Stats.md +11 -11
  36. package/dist/ai/docs/Table.md +1 -1
  37. package/dist/ai/docs/Tag.md +2 -2
  38. package/dist/ai/docs/Timeline.md +5 -5
  39. package/dist/ai/docs/Toolbar.md +2 -2
  40. package/dist/ai/docs/Tooltip.md +3 -3
  41. package/dist/ai/docs/TransferList.md +2 -2
  42. package/dist/autocomplete-Cn9Z2hLq.js +375 -0
  43. package/dist/autocomplete-Cn9Z2hLq.js.map +1 -0
  44. package/dist/calendar-B5lSd0ID.js +1747 -0
  45. package/dist/calendar-B5lSd0ID.js.map +1 -0
  46. package/dist/components/core/button.js +76 -0
  47. package/dist/components/core/button.js.map +1 -0
  48. package/dist/components/core/tag.js +67 -0
  49. package/dist/components/core/tag.js.map +1 -0
  50. package/dist/components/display/alert.js +94 -0
  51. package/dist/components/display/alert.js.map +1 -0
  52. package/dist/components/display/calendar.js +15 -0
  53. package/dist/components/display/calendar.js.map +1 -0
  54. package/dist/components/display/card.d.ts +2 -2
  55. package/dist/components/display/card.d.ts.map +1 -1
  56. package/dist/components/display/card.js +84 -0
  57. package/dist/components/display/card.js.map +1 -0
  58. package/dist/components/display/empty.d.ts +2 -2
  59. package/dist/components/display/empty.d.ts.map +1 -1
  60. package/dist/components/display/list.js +93 -0
  61. package/dist/components/display/list.js.map +1 -0
  62. package/dist/components/display/notifications.js +15 -0
  63. package/dist/components/display/notifications.js.map +1 -0
  64. package/dist/components/display/stats.js +16 -0
  65. package/dist/components/display/stats.js.map +1 -0
  66. package/dist/components/display/tabs.js +12 -0
  67. package/dist/components/display/tabs.js.map +1 -0
  68. package/dist/components/display/timeline.js +29 -0
  69. package/dist/components/display/timeline.js.map +1 -0
  70. package/dist/components/floating/command-palette.d.ts +3 -3
  71. package/dist/components/floating/command-palette.d.ts.map +1 -1
  72. package/dist/components/floating/dropdown.js +58 -0
  73. package/dist/components/floating/dropdown.js.map +1 -0
  74. package/dist/components/floating/expand.js +41 -0
  75. package/dist/components/floating/expand.js.map +1 -0
  76. package/dist/components/floating/menu.d.ts +2 -2
  77. package/dist/components/floating/menu.d.ts.map +1 -1
  78. package/dist/components/floating/menu.js +177 -0
  79. package/dist/components/floating/menu.js.map +1 -0
  80. package/dist/components/floating/modal.js +297 -0
  81. package/dist/components/floating/modal.js.map +1 -0
  82. package/dist/components/floating/tooltip.js +73 -0
  83. package/dist/components/floating/tooltip.js.map +1 -0
  84. package/dist/components/form/autocomplete.js +16 -0
  85. package/dist/components/form/autocomplete.js.map +1 -0
  86. package/dist/components/form/checkbox.js +44 -0
  87. package/dist/components/form/checkbox.js.map +1 -0
  88. package/dist/components/form/date-picker.js +12 -0
  89. package/dist/components/form/date-picker.js.map +1 -0
  90. package/dist/components/form/file-upload.d.ts.map +1 -1
  91. package/dist/components/form/file-upload.js +11 -0
  92. package/dist/components/form/file-upload.js.map +1 -0
  93. package/dist/components/form/form.js +8 -0
  94. package/dist/components/form/form.js.map +1 -0
  95. package/dist/components/form/input-field.d.ts.map +1 -1
  96. package/dist/components/form/input.js +5 -0
  97. package/dist/components/form/input.js.map +1 -0
  98. package/dist/components/form/radiobox.js +30 -0
  99. package/dist/components/form/radiobox.js.map +1 -0
  100. package/dist/components/form/select.js +106 -0
  101. package/dist/components/form/select.js.map +1 -0
  102. package/dist/components/form/switch.js +65 -0
  103. package/dist/components/form/switch.js.map +1 -0
  104. package/dist/components/form/task-list.js +68 -0
  105. package/dist/components/form/task-list.js.map +1 -0
  106. package/dist/components/form/transfer-list.js +55 -0
  107. package/dist/components/form/transfer-list.js.map +1 -0
  108. package/dist/components/page-calendar/calendar-header.d.ts.map +1 -1
  109. package/dist/components/table/table.js +10 -0
  110. package/dist/components/table/table.js.map +1 -0
  111. package/dist/config/context.d.ts +2 -0
  112. package/dist/config/context.d.ts.map +1 -1
  113. package/dist/constants-r-AHn273.js +6 -0
  114. package/dist/constants-r-AHn273.js.map +1 -0
  115. package/dist/context-BFXNJVn2.js +161 -0
  116. package/dist/context-BFXNJVn2.js.map +1 -0
  117. package/dist/date-picker-DwNo22lx.js +1626 -0
  118. package/dist/date-picker-DwNo22lx.js.map +1 -0
  119. package/dist/dom-Dl8XH0CK.js +2833 -0
  120. package/dist/dom-Dl8XH0CK.js.map +1 -0
  121. package/dist/file-upload-Brf2NkLr.js +3245 -0
  122. package/dist/file-upload-Brf2NkLr.js.map +1 -0
  123. package/dist/floating-ui.react-QNHG9W4N.js +3706 -0
  124. package/dist/floating-ui.react-QNHG9W4N.js.map +1 -0
  125. package/dist/fns-D2eyJKd5.js +33 -0
  126. package/dist/fns-D2eyJKd5.js.map +1 -0
  127. package/dist/hooks/use-components-provider.d.ts.map +1 -1
  128. package/dist/index-0YMC-_Lt.js +20 -0
  129. package/dist/index-0YMC-_Lt.js.map +1 -0
  130. package/dist/index-BelDtX5M.js +1821 -0
  131. package/dist/index-BelDtX5M.js.map +1 -0
  132. package/dist/index-C-PuFUZi.js +3416 -0
  133. package/dist/index-C-PuFUZi.js.map +1 -0
  134. package/dist/index-DJSMaZR4.js +35 -0
  135. package/dist/index-DJSMaZR4.js.map +1 -0
  136. package/dist/index-Z-fZHxfJ.js +335 -0
  137. package/dist/index-Z-fZHxfJ.js.map +1 -0
  138. package/dist/index-t1qLJTt5.js +351 -0
  139. package/dist/index-t1qLJTt5.js.map +1 -0
  140. package/dist/index.esm-BaIwleSE.js +343 -0
  141. package/dist/index.esm-BaIwleSE.js.map +1 -0
  142. package/dist/index.js +8125 -27
  143. package/dist/index.js.map +1 -1
  144. package/dist/input-CrGrSnUt.js +441 -0
  145. package/dist/input-CrGrSnUt.js.map +1 -0
  146. package/dist/input-field-5vYcz5tT.js +166 -0
  147. package/dist/input-field-5vYcz5tT.js.map +1 -0
  148. package/dist/notifications-cUdVPs-B.js +2786 -0
  149. package/dist/notifications-cUdVPs-B.js.map +1 -0
  150. package/dist/polymorph-B5n9fs_K.js +10 -0
  151. package/dist/polymorph-B5n9fs_K.js.map +1 -0
  152. package/dist/proxy-BZcQiBrp.js +2495 -0
  153. package/dist/proxy-BZcQiBrp.js.map +1 -0
  154. package/dist/skeleton-D75GFBV6.js +10 -0
  155. package/dist/skeleton-D75GFBV6.js.map +1 -0
  156. package/dist/slot-CRyweuj0.js +79 -0
  157. package/dist/slot-CRyweuj0.js.map +1 -0
  158. package/dist/styles/common.js +29 -0
  159. package/dist/styles/dark.js +214 -0
  160. package/dist/styles/design-tokens.js +98 -0
  161. package/dist/styles/light.js +214 -0
  162. package/dist/styles/theme.js +4 -0
  163. package/dist/styles/theme.types.js +1 -0
  164. package/dist/tabs-S00a8qq8.js +106 -0
  165. package/dist/tabs-S00a8qq8.js.map +1 -0
  166. package/dist/use-motion-value-eGwNuWuw.js +14 -0
  167. package/dist/use-motion-value-eGwNuWuw.js.map +1 -0
  168. package/dist/use-stable-ref-CYh-YkID.js +11 -0
  169. package/dist/use-stable-ref-CYh-YkID.js.map +1 -0
  170. package/dist/use-translations-BwLKTrZv.js +10 -0
  171. package/dist/use-translations-BwLKTrZv.js.map +1 -0
  172. package/package.json +4 -5
  173. package/dist/index.mjs +0 -37108
  174. package/dist/index.mjs.map +0 -1
  175. package/dist/index.umd.js +0 -28
  176. package/dist/index.umd.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-BFXNJVn2.js","sources":["../src/styles/design-tokens.ts","../src/config/default-translations.tsx","../src/config/default-tweaks.ts","../src/config/context.ts"],"sourcesContent":["import { CSSProperties } from \"react\";\nimport { DesignTokens, DesignTokensBuilder, DesignTokensParser, GeneralTokens, Token } from \"./theme.types\";\n\nexport const parsers = {\n hex: (v: string) => v,\n raw: (v: string) => v,\n hsl: (v: string) => `hsl(${v})` as const,\n rgb: (v: string) => `rgb(${v})` as const,\n z: (_, __, k) => `var(--z-${k})` as const,\n hsla: (v: string) => `hsla(${v})` as const,\n rgba: (v: string) => `rgba(${v})` as const,\n cssVariable: (_, __, k) => `var(--${k})` as const,\n formatWithVar: (format: string) => (_: string, __: string, v: string) => `${format}(var(--${v}), <alpha-value>)` as const,\n} satisfies Record<string, DesignTokensParser>;\n\nexport const reduceTokens = <T extends GeneralTokens>(colors: T, parse: DesignTokensBuilder, prefix: string = \"\", append: string = \"\"): Token[] =>\n Object.entries(colors).reduce<Token[]>((acc, [key, value]) => {\n const combine = append === \"\" ? `${prefix}${key}` : `${append}-${key}`;\n if (typeof value === \"string\") {\n const k = append === \"\" ? `${prefix}${key}` : key;\n return acc.concat(parse(value, k, combine));\n }\n return acc.concat(reduceTokens(value, parse, prefix, combine));\n }, []);\n\nexport const createDesignTokens = <T extends GeneralTokens, Fn extends DesignTokensParser>(\n colors: T,\n parse: Fn,\n prefix: string = \"\",\n append: string = \"\"\n): T =>\n Object.entries(colors).reduce<T>((acc, [key, value]) => {\n const combine = append === \"\" ? `${prefix}${key}` : `${append}-${key}`;\n if (typeof value === \"string\") {\n const k = append === \"\" ? `${prefix}${key}` : key;\n return { ...acc, [k]: parse(value, key, combine) };\n }\n return {\n ...acc,\n [key]: createDesignTokens(value, parse, prefix, combine),\n };\n }, {} as T);\n\nconst modifiers = {\n default: (variables: string) => `:root { ${variables} }`,\n dark: (variables: string) => `html.dark {${variables}}`,\n};\n\nconst createStyleContent = (\n tokens: Token[],\n modifiers: {\n result: (str: string) => string;\n value?: (k: string, v: string) => string;\n }\n) => {\n const v = modifiers.value || ((_: string, s: string) => s);\n const content = tokens.map((token) => `${token.key}: ${v(token.key, token.value)}`).join(\";\");\n return modifiers.result(content);\n};\n\nexport const createStyles = {\n default: (tokens: Token[]) => createStyleContent(tokens, { result: modifiers.default }),\n dark: (tokens: Token[]) => createStyleContent(tokens, { result: modifiers.dark }),\n};\n\ntype TokenParsersType = \"colors\" | \"spacing\" | \"rounded\" | \"customTokens\" | \"zIndex\";\n\ntype TokenCustomParser = (t: Token) => Token;\n\nexport type TokenRemap = Partial<Record<TokenParsersType, TokenCustomParser> & { name: string }>;\n\nconst fn =\n (p?: TokenCustomParser): DesignTokensBuilder =>\n (value, _, key) => {\n const r = { key: `--${key}`, value: `${value}` };\n return p ? p(r) : r;\n };\n\nconst zIndexParser = (t: Token): Token => ({ key: t.key.replace(/^--/, \"--z-\"), value: t.value });\n\nconst createTokens = (theme: DesignTokens, map?: TokenRemap) => {\n const colors = reduceTokens(theme.colors, fn(map?.colors));\n const spacing = reduceTokens(theme.spacing, fn(map?.spacing));\n const rounded = reduceTokens(theme.rounded, fn(map?.rounded));\n const shadow = reduceTokens(theme.shadow, fn(map?.rounded));\n const zIndex = reduceTokens(theme.zIndex, fn(map?.zIndex ?? zIndexParser));\n const customTokens = theme.custom ? reduceTokens(theme.custom, fn(map?.customTokens)) : [];\n return colors.concat(spacing, rounded, customTokens, zIndex, shadow);\n};\n\nexport const createTheme = (theme: DesignTokens, name?: string) =>\n createStyleContent(createTokens(theme), {\n result: (variables: string) => `html${name ? `.${name}` : \"\"} {${variables}}`,\n value: (_, v) => v.replace(\"hsla(\", \"\").replace(\")\", \"\"),\n });\n\nexport const createCssProperties = (theme: DesignTokens, map?: TokenRemap): CSSProperties => {\n const tokens = createTokens(theme, map);\n return tokens.reduce<CSSProperties>((acc, el) => ({ ...acc, [el.key]: el.value }), {});\n};\n\nexport const createTokenStyles = (theme: DesignTokens, map?: TokenRemap) =>\n createStyleContent(createTokens(theme, map), {\n result: (variables: string) => `html${map?.name ? `.${map.name}` : \"\"} {${variables}}`,\n value: (_, v) => v,\n });\n","import React, { Fragment } from \"react\";\n\nexport const defaultTranslations = {\n autocompleteEmpty: \"Nothing here...\",\n calendarBackMonth: \"Back month\",\n calendarFromDate: \"From\",\n calendarMonthLabel: \"Month\",\n calendarNextMonth: \"Next month\",\n calendarDatetimeTitle: \"Time\",\n calendarToDate: \"To\",\n calendarToday: \"Today\",\n pageCalendarMonthView: \"Month view\",\n pageCalendarWeekView: \"Week view\",\n pageCalendarDayView: \"Day view\",\n pageCalendarPrevious: \"Previous\",\n pageCalendarNext: \"Next\",\n pageCalendarToday: \"Today\",\n pageCalendarAddEvent: \"Add event\",\n pageCalendarWeekLabel: (n: number) => `Week ${n}`,\n pageCalendarFilter: \"Filter:\",\n pageCalendarMoreEvents: (n: number) => `+${n} more...`,\n pageCalendarLabel: \"Calendar\",\n pageCalendarNavigation: \"Calendar navigation\",\n pageCalendarMonthGrid: \"Calendar month\",\n pageCalendarFilterEnabled: \"enabled\",\n pageCalendarFilterDisabled: \"disabled\",\n pageCalendarEventCount: (n: number) => n === 1 ? \"1 event\" : `${n} events`,\n pageCalendarEventAt: (title: string, time: string) => `${title} at ${time}`,\n commandPaletteEmpty: \"Nothing here...\",\n commandPaletteLoading: \"Loading...\",\n datePickerCalendarButtonLabel: \"Click to open a date picker\",\n emptyDataMessage: \"No data\",\n inputCaretDown: \"Click to see all options\",\n inputCloseValue: \"Click to clear the value\",\n inputOptionalLabel: \"Optional\",\n wizardNext: \"Next\",\n wizardPrev: \"Previous\",\n wizardFinish: \"Finish\",\n wizardSkip: \"Skip\",\n multiSelectInnerPlaceholder: \"Search...\",\n multiSelectSelectedLabel: \"Selected\",\n tableColumnResizer: \"Resize column\",\n tableFilterColumnPlaceholder: \"Filter by\",\n tableFilterColumnTitle: \"Filter by\",\n tableFilterDropdownTitle: \"Filters\",\n tableFilterDropdownTitleUnique: \"Filter by\",\n tableFilterLabel: \"Filters\",\n tableFilterNewFilter: \"New filter\",\n tableFilterOperatorPlaceholder: \"Equals to...\",\n tableFilterOperatorTitle: \"Operation\",\n tableFilterTypeContains: \"Contains\",\n tableFilterTypeEndsWith: \"Ends with\",\n tableFilterTypeGreaterThan: \"Greater than\",\n tableFilterTypeIs: \"Is\",\n tableFilterTypeIsNot: \"Is not\",\n tableFilterTypeLessThan: \"Less than\",\n tableFilterTypeNotContains: \"Not contains\",\n tableFilterTypeStartsWith: \"Starts with\",\n tableFilterValuePlaceholder: \"Something...\",\n tableFilterValueTitle: \"Value\",\n tableGroupLabel: \"Group\",\n tableGroupLabelWithCount: \"Group\",\n tablePaginationFooter: (pagination: { pages: number; totalItems: number; sizes?: number[]; current: number; select: React.ReactNode }) => (\n <Fragment>\n {pagination.current} to {pagination.pages} of {pagination.totalItems} items.{Array.isArray(pagination.sizes) ? pagination.select : null}{\" \"}\n per page.\n </Fragment>\n ),\n tablePaginationNext: \"Next\",\n tablePaginationPrevious: \"Previous\",\n tablePaginationSelectLabel: \"Select the size of page\",\n tableSortAddButton: \"Add sort\",\n tableSortAsc: \"Ascending\",\n tableSortDesc: \"Descending\",\n tableSortDropdownTitle: \"Order by\",\n tableSortOrderByLabel: \"Order by\",\n tableSortOrderInputPlaceholder: \"Order by\",\n tableSortOrderInputTitle: \"Order by\",\n tableSortTypeInputPlaceholder: \"Ascending\",\n tableSortTypeInputTitle: \"Sort type\",\n\n uploadIdle: \"You can drag your files here\",\n uploadIdleButton: \"Choose your files\",\n uploadDragging: (props: { n: number }) => `Dragging ${props.n} ${props.n > 0 ? \"files\" : \"file\"}`,\n uploadDialogTitle: \"Details of your file\",\n\n datepickerPlaceholder: (_: string) => \"day/month/year\",\n};\n\nexport type Translations = typeof defaultTranslations;\n","export type Tweaks = {\n table: {\n sorters: boolean;\n filters: boolean;\n operations: boolean;\n sticky: number | undefined;\n };\n input: {\n iconFeedback: boolean;\n };\n};\n\nexport const defaultTweaks: Tweaks = {\n input: { iconFeedback: true },\n table: { operations: true, sorters: true, filters: true, sticky: undefined },\n};\n","\"use client\";\nimport { createContext } from \"react\";\nimport type { IconProps } from \"@phosphor-icons/react\";\nimport type { Locales } from \"the-mask-input\";\nimport type { ContextType } from \"../hooks/use-components-provider\";\nimport { parsers } from \"../styles/design-tokens\";\nimport { defaultTranslations, type Translations } from \"./default-translations\";\nimport { defaultTweaks, type Tweaks } from \"./default-tweaks\";\n\nexport type ContextProps = Partial<{\n tweaks: Partial<Tweaks>;\n map: Partial<Translations>;\n locale: Locales | undefined;\n parser: typeof parsers.hsla;\n rootFloating?: HTMLElement | null;\n iconWeight: IconProps[\"weight\"];\n}>;\n\nexport const Context = createContext<ContextType>({\n parser: parsers.hsla,\n tweaks: defaultTweaks,\n floatingRef: undefined,\n map: defaultTranslations,\n locale: undefined as Locales | undefined,\n});\n"],"names":["parsers","v","_","__","k","format","reduceTokens","colors","parse","prefix","append","acc","key","value","combine","createDesignTokens","modifiers","variables","createStyleContent","tokens","s","content","token","createStyles","fn","p","r","zIndexParser","t","createTokens","theme","map","spacing","rounded","shadow","zIndex","customTokens","createTheme","name","createCssProperties","el","createTokenStyles","defaultTranslations","n","title","time","pagination","jsxs","Fragment","props","defaultTweaks","Context","createContext"],"mappings":"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"}