@fairmint/ui 0.3.5 → 0.3.7
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.
- package/dist/_virtual/index3.cjs +5 -3
- package/dist/_virtual/index3.cjs.map +1 -1
- package/dist/_virtual/index3.js +5 -2
- package/dist/_virtual/index3.js.map +1 -1
- package/dist/_virtual/index4.cjs +3 -5
- package/dist/_virtual/index4.cjs.map +1 -1
- package/dist/_virtual/index4.js +2 -5
- package/dist/_virtual/index4.js.map +1 -1
- package/dist/components/generic/DataTable/DataTable.cjs +2 -2
- package/dist/components/generic/DataTable/DataTable.cjs.map +1 -1
- package/dist/components/generic/DataTable/DataTable.d.ts.map +1 -1
- package/dist/components/generic/DataTable/DataTable.js +3 -3
- package/dist/components/generic/DataTable/DataTable.js.map +1 -1
- package/dist/components/generic/DetailDrawer/DetailDrawer.cjs +1 -13
- package/dist/components/generic/DetailDrawer/DetailDrawer.cjs.map +1 -1
- package/dist/components/generic/DetailDrawer/DetailDrawer.d.ts.map +1 -1
- package/dist/components/generic/DetailDrawer/DetailDrawer.js +1 -13
- package/dist/components/generic/DetailDrawer/DetailDrawer.js.map +1 -1
- package/dist/components/generic/StepCard/StepCard.cjs +2 -1
- package/dist/components/generic/StepCard/StepCard.cjs.map +1 -1
- package/dist/components/generic/StepCard/StepCard.js +2 -1
- package/dist/components/generic/StepCard/StepCard.js.map +1 -1
- package/dist/components/layout/PageHeader/PageHeader.cjs +2 -1
- package/dist/components/layout/PageHeader/PageHeader.cjs.map +1 -1
- package/dist/components/layout/PageHeader/PageHeader.d.ts.map +1 -1
- package/dist/components/layout/PageHeader/PageHeader.js +2 -1
- package/dist/components/layout/PageHeader/PageHeader.js.map +1 -1
- package/dist/components/primitives/Drawer/Drawer.cjs +10 -1
- package/dist/components/primitives/Drawer/Drawer.cjs.map +1 -1
- package/dist/components/primitives/Drawer/Drawer.d.ts.map +1 -1
- package/dist/components/primitives/Drawer/Drawer.js +10 -1
- package/dist/components/primitives/Drawer/Drawer.js.map +1 -1
- package/dist/components/primitives/Table/Table.cjs +4 -2
- package/dist/components/primitives/Table/Table.cjs.map +1 -1
- package/dist/components/primitives/Table/Table.d.ts +3 -1
- package/dist/components/primitives/Table/Table.d.ts.map +1 -1
- package/dist/components/primitives/Table/Table.js +4 -2
- package/dist/components/primitives/Table/Table.js.map +1 -1
- package/dist/fairmint-ui.cjs +2 -0
- package/dist/fairmint-ui.cjs.map +1 -1
- package/dist/fairmint-ui.js +2 -0
- package/dist/fairmint-ui.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/node_modules/@mantine/form/esm/hooks/use-form-status/use-form-status.cjs +1 -1
- package/dist/node_modules/@mantine/form/esm/hooks/use-form-status/use-form-status.js +1 -1
- package/dist/node_modules/prop-types/index.cjs +1 -1
- package/dist/node_modules/prop-types/index.js +1 -1
- package/dist/theme/index.cjs.map +1 -1
- package/dist/theme/index.d.ts +2 -0
- package/dist/theme/index.d.ts.map +1 -1
- package/dist/theme/index.js.map +1 -1
- package/dist/theme/responsiveTypography.cjs +13 -0
- package/dist/theme/responsiveTypography.cjs.map +1 -0
- package/dist/theme/responsiveTypography.d.ts +40 -0
- package/dist/theme/responsiveTypography.d.ts.map +1 -0
- package/dist/theme/responsiveTypography.js +13 -0
- package/dist/theme/responsiveTypography.js.map +1 -0
- package/package.json +1 -1
package/dist/_virtual/index3.cjs
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
const _commonjsHelpers = require("./_commonjsHelpers.cjs");
|
|
3
|
+
const index = require("../node_modules/fast-deep-equal/index.cjs");
|
|
4
|
+
var fastDeepEqualExports = index.__require();
|
|
5
|
+
const isEqual = /* @__PURE__ */ _commonjsHelpers.getDefaultExportFromCjs(fastDeepEqualExports);
|
|
6
|
+
module.exports = isEqual;
|
|
5
7
|
//# sourceMappingURL=index3.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index3.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index3.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
package/dist/_virtual/index3.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
import { getDefaultExportFromCjs } from "./_commonjsHelpers.js";
|
|
2
|
+
import { __require as requireFastDeepEqual } from "../node_modules/fast-deep-equal/index.js";
|
|
3
|
+
var fastDeepEqualExports = requireFastDeepEqual();
|
|
4
|
+
const isEqual = /* @__PURE__ */ getDefaultExportFromCjs(fastDeepEqualExports);
|
|
2
5
|
export {
|
|
3
|
-
|
|
6
|
+
isEqual as default
|
|
4
7
|
};
|
|
5
8
|
//# sourceMappingURL=index3.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index3.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index3.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
package/dist/_virtual/index4.cjs
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const isEqual = /* @__PURE__ */ _commonjsHelpers.getDefaultExportFromCjs(fastDeepEqualExports);
|
|
6
|
-
module.exports = isEqual;
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
var propTypes = { exports: {} };
|
|
4
|
+
exports.__module = propTypes;
|
|
7
5
|
//# sourceMappingURL=index4.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index4.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index4.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
package/dist/_virtual/index4.js
CHANGED
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import { __require as requireFastDeepEqual } from "../node_modules/fast-deep-equal/index.js";
|
|
3
|
-
var fastDeepEqualExports = requireFastDeepEqual();
|
|
4
|
-
const isEqual = /* @__PURE__ */ getDefaultExportFromCjs(fastDeepEqualExports);
|
|
1
|
+
var propTypes = { exports: {} };
|
|
5
2
|
export {
|
|
6
|
-
|
|
3
|
+
propTypes as __module
|
|
7
4
|
};
|
|
8
5
|
//# sourceMappingURL=index4.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index4.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index4.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -70,7 +70,7 @@ function DataTable({
|
|
|
70
70
|
if (data.length === 0) {
|
|
71
71
|
return /* @__PURE__ */ jsxRuntime.jsx(EmptyState.EmptyState, { title: emptyTitle, description: emptyDescription, icon: emptyIcon });
|
|
72
72
|
}
|
|
73
|
-
return /* @__PURE__ */ jsxRuntime.
|
|
73
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Table.Table, { responsive: true, children: [
|
|
74
74
|
/* @__PURE__ */ jsxRuntime.jsx(Table.Table.Thead, { children: /* @__PURE__ */ jsxRuntime.jsx(Table.Table.Tr, { children: columns.map((col) => /* @__PURE__ */ jsxRuntime.jsx(Table.Table.Th, { w: col.width, children: col.sortable ? /* @__PURE__ */ jsxRuntime.jsx(UnstyledButton.UnstyledButton, { onClick: () => handleSort(col.key), children: /* @__PURE__ */ jsxRuntime.jsxs(Group.Group, { gap: 4, wrap: "nowrap", children: [
|
|
75
75
|
/* @__PURE__ */ jsxRuntime.jsx(Text.Text, { size: "xs", fw: 600, tt: "uppercase", children: col.label }),
|
|
76
76
|
/* @__PURE__ */ jsxRuntime.jsx(SortIcon, { direction: sortKey === col.key ? sortDir : null })
|
|
@@ -87,7 +87,7 @@ function DataTable({
|
|
|
87
87
|
key
|
|
88
88
|
);
|
|
89
89
|
}) })
|
|
90
|
-
] })
|
|
90
|
+
] });
|
|
91
91
|
}
|
|
92
92
|
exports.DataTable = DataTable;
|
|
93
93
|
//# sourceMappingURL=DataTable.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTable.cjs","sources":["../../../../src/components/generic/DataTable/DataTable.tsx"],"sourcesContent":["import { type ReactNode, useMemo, useState } from \"react\";\nimport {
|
|
1
|
+
{"version":3,"file":"DataTable.cjs","sources":["../../../../src/components/generic/DataTable/DataTable.tsx"],"sourcesContent":["import { type ReactNode, useMemo, useState } from \"react\";\nimport { Group, Stack, Text, UnstyledButton } from \"../../primitives/layout\";\nimport { Skeleton } from \"../../primitives/Skeleton/Skeleton\";\nimport { Table } from \"../../primitives/Table/Table\";\nimport { EmptyState } from \"../EmptyState/EmptyState\";\n\nexport interface DataTableColumn<T extends Record<string, unknown>> {\n /** Unique key matching a property in the data row. */\n key: string;\n /** Column header label. */\n label: string;\n /** Custom render function for the cell. */\n render?: (row: T) => ReactNode;\n /** Whether this column is sortable. @default false */\n sortable?: boolean;\n /** Column width (CSS value). */\n width?: string | number;\n}\n\nexport interface DataTableProps<T extends Record<string, unknown>> {\n /** Column definitions. */\n columns: DataTableColumn<T>[];\n /** Data rows. */\n data: T[];\n /** Unique key for each row. @default \"id\" */\n rowKey?: string;\n /** Whether data is loading. @default false */\n loading?: boolean;\n /** Number of skeleton rows to show when loading. @default 5 */\n loadingRows?: number;\n /** Empty state title. @default \"No data\" */\n emptyTitle?: string;\n /** Empty state description. */\n emptyDescription?: string;\n /** Empty state icon. */\n emptyIcon?: ReactNode;\n /** Row click handler. */\n onRowClick?: (row: T) => void;\n /** Controlled sort callback. When provided, skips internal sort. */\n onSortChange?: (key: string, direction: \"asc\" | \"desc\") => void;\n}\n\nconst SortIcon = ({ direction }: { direction: \"asc\" | \"desc\" | null }) => (\n <svg\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n style={{\n opacity: direction ? 1 : 0.3,\n transform: direction === \"desc\" ? \"rotate(180deg)\" : undefined,\n transition: \"transform 0.15s ease, opacity 0.15s ease\",\n }}\n >\n <path d=\"m5 12 7-7 7 7\" />\n <path d=\"M12 19V5\" />\n </svg>\n);\n\nexport function DataTable<T extends Record<string, unknown>>({\n columns,\n data,\n rowKey = \"id\",\n loading = false,\n loadingRows = 5,\n emptyTitle = \"No data\",\n emptyDescription,\n emptyIcon,\n onRowClick,\n onSortChange,\n}: DataTableProps<T>) {\n const [sortKey, setSortKey] = useState<string | null>(null);\n const [sortDir, setSortDir] = useState<\"asc\" | \"desc\">(\"asc\");\n\n const handleSort = (key: string) => {\n const newDir = sortKey === key && sortDir === \"asc\" ? \"desc\" : \"asc\";\n setSortKey(key);\n setSortDir(newDir);\n onSortChange?.(key, newDir);\n };\n\n const sortedData = useMemo(() => {\n if (onSortChange || !sortKey) return data;\n return [...data].sort((a, b) => {\n const aVal = a[sortKey];\n const bVal = b[sortKey];\n if (aVal === bVal) return 0;\n if (aVal == null) return 1;\n if (bVal == null) return -1;\n const cmp = aVal < bVal ? -1 : 1;\n return sortDir === \"asc\" ? cmp : -cmp;\n });\n }, [data, sortKey, sortDir, onSortChange]);\n\n if (loading) {\n return (\n <Stack gap=\"xs\">\n {Array.from({ length: loadingRows }, (_, i) => (\n <Skeleton key={`skeleton-${i.toString()}`} height={48} radius=\"sm\" />\n ))}\n </Stack>\n );\n }\n\n if (data.length === 0) {\n return <EmptyState title={emptyTitle} description={emptyDescription} icon={emptyIcon} />;\n }\n\n return (\n <Table responsive>\n <Table.Thead>\n <Table.Tr>\n {columns.map((col) => (\n <Table.Th key={col.key} w={col.width}>\n {col.sortable ? (\n <UnstyledButton onClick={() => handleSort(col.key)}>\n <Group gap={4} wrap=\"nowrap\">\n <Text size=\"xs\" fw={600} tt=\"uppercase\">\n {col.label}\n </Text>\n <SortIcon direction={sortKey === col.key ? sortDir : null} />\n </Group>\n </UnstyledButton>\n ) : (\n col.label\n )}\n </Table.Th>\n ))}\n </Table.Tr>\n </Table.Thead>\n <Table.Tbody>\n {sortedData.map((row) => {\n const key = String(row[rowKey] ?? sortedData.indexOf(row));\n return (\n <Table.Tr\n key={key}\n onClick={onRowClick ? () => onRowClick(row) : undefined}\n className={onRowClick ? \"fairmint-table-row-clickable\" : undefined}\n >\n {columns.map((col) => (\n <Table.Td key={col.key}>\n {col.render ? col.render(row) : String(row[col.key] ?? \"\")}\n </Table.Td>\n ))}\n </Table.Tr>\n );\n })}\n </Table.Tbody>\n </Table>\n );\n}\n"],"names":["jsxs","jsx","useState","useMemo","Stack","Skeleton","EmptyState","Table","UnstyledButton","Group","Text"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTable.d.ts","sourceRoot":"","sources":["../../../../src/components/generic/DataTable/DataTable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,OAAO,CAAC;AAM1D,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAChE,sDAAsD;IACtD,GAAG,EAAE,MAAM,CAAC;IACZ,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC;IAC/B,sDAAsD;IACtD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC/D,0BAA0B;IAC1B,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9B,iBAAiB;IACjB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+BAA+B;IAC/B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wBAAwB;IACxB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,yBAAyB;IACzB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC;IAC9B,oEAAoE;IACpE,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,GAAG,MAAM,KAAK,IAAI,CAAC;CACjE;AAwBD,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAC3D,OAAO,EACP,IAAI,EACJ,MAAa,EACb,OAAe,EACf,WAAe,EACf,UAAsB,EACtB,gBAAgB,EAChB,SAAS,EACT,UAAU,EACV,YAAY,GACb,EAAE,cAAc,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"DataTable.d.ts","sourceRoot":"","sources":["../../../../src/components/generic/DataTable/DataTable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,OAAO,CAAC;AAM1D,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAChE,sDAAsD;IACtD,GAAG,EAAE,MAAM,CAAC;IACZ,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC;IAC/B,sDAAsD;IACtD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC/D,0BAA0B;IAC1B,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9B,iBAAiB;IACjB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+BAA+B;IAC/B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wBAAwB;IACxB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,yBAAyB;IACzB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC;IAC9B,oEAAoE;IACpE,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,GAAG,MAAM,KAAK,IAAI,CAAC;CACjE;AAwBD,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAC3D,OAAO,EACP,IAAI,EACJ,MAAa,EACb,OAAe,EACf,WAAe,EACf,UAAsB,EACtB,gBAAgB,EAChB,SAAS,EACT,UAAU,EACV,YAAY,GACb,EAAE,cAAc,CAAC,CAAC,CAAC,2CAgFnB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useState, useMemo } from "react";
|
|
3
|
-
import { Stack
|
|
3
|
+
import { Stack } from "../../primitives/layout.js";
|
|
4
4
|
import { Skeleton } from "../../primitives/Skeleton/Skeleton.js";
|
|
5
5
|
import { Table } from "../../primitives/Table/Table.js";
|
|
6
6
|
import { EmptyState } from "../EmptyState/EmptyState.js";
|
|
@@ -68,7 +68,7 @@ function DataTable({
|
|
|
68
68
|
if (data.length === 0) {
|
|
69
69
|
return /* @__PURE__ */ jsx(EmptyState, { title: emptyTitle, description: emptyDescription, icon: emptyIcon });
|
|
70
70
|
}
|
|
71
|
-
return /* @__PURE__ */
|
|
71
|
+
return /* @__PURE__ */ jsxs(Table, { responsive: true, children: [
|
|
72
72
|
/* @__PURE__ */ jsx(Table.Thead, { children: /* @__PURE__ */ jsx(Table.Tr, { children: columns.map((col) => /* @__PURE__ */ jsx(Table.Th, { w: col.width, children: col.sortable ? /* @__PURE__ */ jsx(UnstyledButton, { onClick: () => handleSort(col.key), children: /* @__PURE__ */ jsxs(Group, { gap: 4, wrap: "nowrap", children: [
|
|
73
73
|
/* @__PURE__ */ jsx(Text, { size: "xs", fw: 600, tt: "uppercase", children: col.label }),
|
|
74
74
|
/* @__PURE__ */ jsx(SortIcon, { direction: sortKey === col.key ? sortDir : null })
|
|
@@ -85,7 +85,7 @@ function DataTable({
|
|
|
85
85
|
key
|
|
86
86
|
);
|
|
87
87
|
}) })
|
|
88
|
-
] })
|
|
88
|
+
] });
|
|
89
89
|
}
|
|
90
90
|
export {
|
|
91
91
|
DataTable
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTable.js","sources":["../../../../src/components/generic/DataTable/DataTable.tsx"],"sourcesContent":["import { type ReactNode, useMemo, useState } from \"react\";\nimport {
|
|
1
|
+
{"version":3,"file":"DataTable.js","sources":["../../../../src/components/generic/DataTable/DataTable.tsx"],"sourcesContent":["import { type ReactNode, useMemo, useState } from \"react\";\nimport { Group, Stack, Text, UnstyledButton } from \"../../primitives/layout\";\nimport { Skeleton } from \"../../primitives/Skeleton/Skeleton\";\nimport { Table } from \"../../primitives/Table/Table\";\nimport { EmptyState } from \"../EmptyState/EmptyState\";\n\nexport interface DataTableColumn<T extends Record<string, unknown>> {\n /** Unique key matching a property in the data row. */\n key: string;\n /** Column header label. */\n label: string;\n /** Custom render function for the cell. */\n render?: (row: T) => ReactNode;\n /** Whether this column is sortable. @default false */\n sortable?: boolean;\n /** Column width (CSS value). */\n width?: string | number;\n}\n\nexport interface DataTableProps<T extends Record<string, unknown>> {\n /** Column definitions. */\n columns: DataTableColumn<T>[];\n /** Data rows. */\n data: T[];\n /** Unique key for each row. @default \"id\" */\n rowKey?: string;\n /** Whether data is loading. @default false */\n loading?: boolean;\n /** Number of skeleton rows to show when loading. @default 5 */\n loadingRows?: number;\n /** Empty state title. @default \"No data\" */\n emptyTitle?: string;\n /** Empty state description. */\n emptyDescription?: string;\n /** Empty state icon. */\n emptyIcon?: ReactNode;\n /** Row click handler. */\n onRowClick?: (row: T) => void;\n /** Controlled sort callback. When provided, skips internal sort. */\n onSortChange?: (key: string, direction: \"asc\" | \"desc\") => void;\n}\n\nconst SortIcon = ({ direction }: { direction: \"asc\" | \"desc\" | null }) => (\n <svg\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n style={{\n opacity: direction ? 1 : 0.3,\n transform: direction === \"desc\" ? \"rotate(180deg)\" : undefined,\n transition: \"transform 0.15s ease, opacity 0.15s ease\",\n }}\n >\n <path d=\"m5 12 7-7 7 7\" />\n <path d=\"M12 19V5\" />\n </svg>\n);\n\nexport function DataTable<T extends Record<string, unknown>>({\n columns,\n data,\n rowKey = \"id\",\n loading = false,\n loadingRows = 5,\n emptyTitle = \"No data\",\n emptyDescription,\n emptyIcon,\n onRowClick,\n onSortChange,\n}: DataTableProps<T>) {\n const [sortKey, setSortKey] = useState<string | null>(null);\n const [sortDir, setSortDir] = useState<\"asc\" | \"desc\">(\"asc\");\n\n const handleSort = (key: string) => {\n const newDir = sortKey === key && sortDir === \"asc\" ? \"desc\" : \"asc\";\n setSortKey(key);\n setSortDir(newDir);\n onSortChange?.(key, newDir);\n };\n\n const sortedData = useMemo(() => {\n if (onSortChange || !sortKey) return data;\n return [...data].sort((a, b) => {\n const aVal = a[sortKey];\n const bVal = b[sortKey];\n if (aVal === bVal) return 0;\n if (aVal == null) return 1;\n if (bVal == null) return -1;\n const cmp = aVal < bVal ? -1 : 1;\n return sortDir === \"asc\" ? cmp : -cmp;\n });\n }, [data, sortKey, sortDir, onSortChange]);\n\n if (loading) {\n return (\n <Stack gap=\"xs\">\n {Array.from({ length: loadingRows }, (_, i) => (\n <Skeleton key={`skeleton-${i.toString()}`} height={48} radius=\"sm\" />\n ))}\n </Stack>\n );\n }\n\n if (data.length === 0) {\n return <EmptyState title={emptyTitle} description={emptyDescription} icon={emptyIcon} />;\n }\n\n return (\n <Table responsive>\n <Table.Thead>\n <Table.Tr>\n {columns.map((col) => (\n <Table.Th key={col.key} w={col.width}>\n {col.sortable ? (\n <UnstyledButton onClick={() => handleSort(col.key)}>\n <Group gap={4} wrap=\"nowrap\">\n <Text size=\"xs\" fw={600} tt=\"uppercase\">\n {col.label}\n </Text>\n <SortIcon direction={sortKey === col.key ? sortDir : null} />\n </Group>\n </UnstyledButton>\n ) : (\n col.label\n )}\n </Table.Th>\n ))}\n </Table.Tr>\n </Table.Thead>\n <Table.Tbody>\n {sortedData.map((row) => {\n const key = String(row[rowKey] ?? sortedData.indexOf(row));\n return (\n <Table.Tr\n key={key}\n onClick={onRowClick ? () => onRowClick(row) : undefined}\n className={onRowClick ? \"fairmint-table-row-clickable\" : undefined}\n >\n {columns.map((col) => (\n <Table.Td key={col.key}>\n {col.render ? col.render(row) : String(row[col.key] ?? \"\")}\n </Table.Td>\n ))}\n </Table.Tr>\n );\n })}\n </Table.Tbody>\n </Table>\n );\n}\n"],"names":[],"mappings":";;;;;;;;;AA0CA,MAAM,WAAW,CAAC,EAAE,UAAA,MAClB;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,OAAM;AAAA,IACN,QAAO;AAAA,IACP,SAAQ;AAAA,IACR,MAAK;AAAA,IACL,QAAO;AAAA,IACP,aAAY;AAAA,IACZ,eAAc;AAAA,IACd,gBAAe;AAAA,IACf,eAAY;AAAA,IACZ,OAAO;AAAA,MACL,SAAS,YAAY,IAAI;AAAA,MACzB,WAAW,cAAc,SAAS,mBAAmB;AAAA,MACrD,YAAY;AAAA,IAAA;AAAA,IAGd,UAAA;AAAA,MAAA,oBAAC,QAAA,EAAK,GAAE,gBAAA,CAAgB;AAAA,MACxB,oBAAC,QAAA,EAAK,GAAE,WAAA,CAAW;AAAA,IAAA;AAAA,EAAA;AACrB;AAGK,SAAS,UAA6C;AAAA,EAC3D;AAAA,EACA;AAAA,EACA,SAAS;AAAA,EACT,UAAU;AAAA,EACV,cAAc;AAAA,EACd,aAAa;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAsB;AACpB,QAAM,CAAC,SAAS,UAAU,IAAI,SAAwB,IAAI;AAC1D,QAAM,CAAC,SAAS,UAAU,IAAI,SAAyB,KAAK;AAE5D,QAAM,aAAa,CAAC,QAAgB;AAClC,UAAM,SAAS,YAAY,OAAO,YAAY,QAAQ,SAAS;AAC/D,eAAW,GAAG;AACd,eAAW,MAAM;AACjB,mBAAe,KAAK,MAAM;AAAA,EAC5B;AAEA,QAAM,aAAa,QAAQ,MAAM;AAC/B,QAAI,gBAAgB,CAAC,QAAS,QAAO;AACrC,WAAO,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,MAAM;AAC9B,YAAM,OAAO,EAAE,OAAO;AACtB,YAAM,OAAO,EAAE,OAAO;AACtB,UAAI,SAAS,KAAM,QAAO;AAC1B,UAAI,QAAQ,KAAM,QAAO;AACzB,UAAI,QAAQ,KAAM,QAAO;AACzB,YAAM,MAAM,OAAO,OAAO,KAAK;AAC/B,aAAO,YAAY,QAAQ,MAAM,CAAC;AAAA,IACpC,CAAC;AAAA,EACH,GAAG,CAAC,MAAM,SAAS,SAAS,YAAY,CAAC;AAEzC,MAAI,SAAS;AACX,WACE,oBAAC,OAAA,EAAM,KAAI,MACR,UAAA,MAAM,KAAK,EAAE,QAAQ,YAAA,GAAe,CAAC,GAAG,MACvC,oBAAC,UAAA,EAA0C,QAAQ,IAAI,QAAO,KAAA,GAA/C,YAAY,EAAE,SAAA,CAAU,EAA4B,CACpE,EAAA,CACH;AAAA,EAEJ;AAEA,MAAI,KAAK,WAAW,GAAG;AACrB,+BAAQ,YAAA,EAAW,OAAO,YAAY,aAAa,kBAAkB,MAAM,WAAW;AAAA,EACxF;AAEA,SACE,qBAAC,OAAA,EAAM,YAAU,MACf,UAAA;AAAA,IAAA,oBAAC,MAAM,OAAN,EACC,UAAA,oBAAC,MAAM,IAAN,EACE,UAAA,QAAQ,IAAI,CAAC,QACZ,oBAAC,MAAM,IAAN,EAAuB,GAAG,IAAI,OAC5B,UAAA,IAAI,WACH,oBAAC,gBAAA,EAAe,SAAS,MAAM,WAAW,IAAI,GAAG,GAC/C,UAAA,qBAAC,OAAA,EAAM,KAAK,GAAG,MAAK,UAClB,UAAA;AAAA,MAAA,oBAAC,MAAA,EAAK,MAAK,MAAK,IAAI,KAAK,IAAG,aACzB,cAAI,MAAA,CACP;AAAA,0BACC,UAAA,EAAS,WAAW,YAAY,IAAI,MAAM,UAAU,KAAA,CAAM;AAAA,IAAA,GAC7D,EAAA,CACF,IAEA,IAAI,MAAA,GAXO,IAAI,GAanB,CACD,GACH,GACF;AAAA,wBACC,MAAM,OAAN,EACE,UAAA,WAAW,IAAI,CAAC,QAAQ;AACvB,YAAM,MAAM,OAAO,IAAI,MAAM,KAAK,WAAW,QAAQ,GAAG,CAAC;AACzD,aACE;AAAA,QAAC,MAAM;AAAA,QAAN;AAAA,UAEC,SAAS,aAAa,MAAM,WAAW,GAAG,IAAI;AAAA,UAC9C,WAAW,aAAa,iCAAiC;AAAA,UAExD,UAAA,QAAQ,IAAI,CAAC,4BACX,MAAM,IAAN,EACE,UAAA,IAAI,SAAS,IAAI,OAAO,GAAG,IAAI,OAAO,IAAI,IAAI,GAAG,KAAK,EAAE,KAD5C,IAAI,GAEnB,CACD;AAAA,QAAA;AAAA,QARI;AAAA,MAAA;AAAA,IAWX,CAAC,EAAA,CACH;AAAA,EAAA,GACF;AAEJ;"}
|
|
@@ -10,19 +10,7 @@ function DetailDrawer({
|
|
|
10
10
|
size = "md",
|
|
11
11
|
...rest
|
|
12
12
|
}) {
|
|
13
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
14
|
-
Drawer.Drawer,
|
|
15
|
-
{
|
|
16
|
-
opened,
|
|
17
|
-
onClose,
|
|
18
|
-
title,
|
|
19
|
-
position: "right",
|
|
20
|
-
size,
|
|
21
|
-
p: "lg",
|
|
22
|
-
...rest,
|
|
23
|
-
children
|
|
24
|
-
}
|
|
25
|
-
);
|
|
13
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Drawer.Drawer, { opened, onClose, title, position: "right", size, ...rest, children });
|
|
26
14
|
}
|
|
27
15
|
exports.DetailDrawer = DetailDrawer;
|
|
28
16
|
//# sourceMappingURL=DetailDrawer.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DetailDrawer.cjs","sources":["../../../../src/components/generic/DetailDrawer/DetailDrawer.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { Drawer, type DrawerProps } from \"../../primitives/Drawer/Drawer\";\n\nexport interface DetailDrawerProps extends Omit<DrawerProps, \"title\"> {\n /** Drawer title shown in the header. Accepts ReactNode for flexibility (layout component). */\n title: ReactNode;\n /** Whether the drawer is open. */\n opened: boolean;\n /** Close callback. */\n onClose: () => void;\n /** Drawer content. */\n children: ReactNode;\n /** Drawer width. @default \"md\" */\n size?: DrawerProps[\"size\"];\n}\n\nexport function DetailDrawer({\n title,\n opened,\n onClose,\n children,\n size = \"md\",\n ...rest\n}: DetailDrawerProps) {\n return (\n <Drawer
|
|
1
|
+
{"version":3,"file":"DetailDrawer.cjs","sources":["../../../../src/components/generic/DetailDrawer/DetailDrawer.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { Drawer, type DrawerProps } from \"../../primitives/Drawer/Drawer\";\n\nexport interface DetailDrawerProps extends Omit<DrawerProps, \"title\"> {\n /** Drawer title shown in the header. Accepts ReactNode for flexibility (layout component). */\n title: ReactNode;\n /** Whether the drawer is open. */\n opened: boolean;\n /** Close callback. */\n onClose: () => void;\n /** Drawer content. */\n children: ReactNode;\n /** Drawer width. @default \"md\" */\n size?: DrawerProps[\"size\"];\n}\n\nexport function DetailDrawer({\n title,\n opened,\n onClose,\n children,\n size = \"md\",\n ...rest\n}: DetailDrawerProps) {\n return (\n <Drawer opened={opened} onClose={onClose} title={title} position=\"right\" size={size} {...rest}>\n {children}\n </Drawer>\n );\n}\n"],"names":["jsx","Drawer"],"mappings":";;;;AAgBO,SAAS,aAAa;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,GAAG;AACL,GAAsB;AACpB,SACEA,+BAACC,OAAAA,QAAA,EAAO,QAAgB,SAAkB,OAAc,UAAS,SAAQ,MAAa,GAAG,MACtF,SAAA,CACH;AAEJ;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DetailDrawer.d.ts","sourceRoot":"","sources":["../../../../src/components/generic/DetailDrawer/DetailDrawer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAE1E,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC;IACnE,8FAA8F;IAC9F,KAAK,EAAE,SAAS,CAAC;IACjB,kCAAkC;IAClC,MAAM,EAAE,OAAO,CAAC;IAChB,sBAAsB;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,sBAAsB;IACtB,QAAQ,EAAE,SAAS,CAAC;IACpB,kCAAkC;IAClC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC5B;AAED,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,MAAM,EACN,OAAO,EACP,QAAQ,EACR,IAAW,EACX,GAAG,IAAI,EACR,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"DetailDrawer.d.ts","sourceRoot":"","sources":["../../../../src/components/generic/DetailDrawer/DetailDrawer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAE1E,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC;IACnE,8FAA8F;IAC9F,KAAK,EAAE,SAAS,CAAC;IACjB,kCAAkC;IAClC,MAAM,EAAE,OAAO,CAAC;IAChB,sBAAsB;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,sBAAsB;IACtB,QAAQ,EAAE,SAAS,CAAC;IACpB,kCAAkC;IAClC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC5B;AAED,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,MAAM,EACN,OAAO,EACP,QAAQ,EACR,IAAW,EACX,GAAG,IAAI,EACR,EAAE,iBAAiB,2CAMnB"}
|
|
@@ -8,19 +8,7 @@ function DetailDrawer({
|
|
|
8
8
|
size = "md",
|
|
9
9
|
...rest
|
|
10
10
|
}) {
|
|
11
|
-
return /* @__PURE__ */ jsx(
|
|
12
|
-
Drawer,
|
|
13
|
-
{
|
|
14
|
-
opened,
|
|
15
|
-
onClose,
|
|
16
|
-
title,
|
|
17
|
-
position: "right",
|
|
18
|
-
size,
|
|
19
|
-
p: "lg",
|
|
20
|
-
...rest,
|
|
21
|
-
children
|
|
22
|
-
}
|
|
23
|
-
);
|
|
11
|
+
return /* @__PURE__ */ jsx(Drawer, { opened, onClose, title, position: "right", size, ...rest, children });
|
|
24
12
|
}
|
|
25
13
|
export {
|
|
26
14
|
DetailDrawer
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DetailDrawer.js","sources":["../../../../src/components/generic/DetailDrawer/DetailDrawer.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { Drawer, type DrawerProps } from \"../../primitives/Drawer/Drawer\";\n\nexport interface DetailDrawerProps extends Omit<DrawerProps, \"title\"> {\n /** Drawer title shown in the header. Accepts ReactNode for flexibility (layout component). */\n title: ReactNode;\n /** Whether the drawer is open. */\n opened: boolean;\n /** Close callback. */\n onClose: () => void;\n /** Drawer content. */\n children: ReactNode;\n /** Drawer width. @default \"md\" */\n size?: DrawerProps[\"size\"];\n}\n\nexport function DetailDrawer({\n title,\n opened,\n onClose,\n children,\n size = \"md\",\n ...rest\n}: DetailDrawerProps) {\n return (\n <Drawer
|
|
1
|
+
{"version":3,"file":"DetailDrawer.js","sources":["../../../../src/components/generic/DetailDrawer/DetailDrawer.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { Drawer, type DrawerProps } from \"../../primitives/Drawer/Drawer\";\n\nexport interface DetailDrawerProps extends Omit<DrawerProps, \"title\"> {\n /** Drawer title shown in the header. Accepts ReactNode for flexibility (layout component). */\n title: ReactNode;\n /** Whether the drawer is open. */\n opened: boolean;\n /** Close callback. */\n onClose: () => void;\n /** Drawer content. */\n children: ReactNode;\n /** Drawer width. @default \"md\" */\n size?: DrawerProps[\"size\"];\n}\n\nexport function DetailDrawer({\n title,\n opened,\n onClose,\n children,\n size = \"md\",\n ...rest\n}: DetailDrawerProps) {\n return (\n <Drawer opened={opened} onClose={onClose} title={title} position=\"right\" size={size} {...rest}>\n {children}\n </Drawer>\n );\n}\n"],"names":[],"mappings":";;AAgBO,SAAS,aAAa;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,GAAG;AACL,GAAsB;AACpB,SACE,oBAAC,QAAA,EAAO,QAAgB,SAAkB,OAAc,UAAS,SAAQ,MAAa,GAAG,MACtF,SAAA,CACH;AAEJ;"}
|
|
@@ -6,6 +6,7 @@ const layout = require("../../primitives/layout.cjs");
|
|
|
6
6
|
const Group = require("../../../node_modules/@mantine/core/esm/components/Group/Group.cjs");
|
|
7
7
|
const ThemeIcon = require("../../../node_modules/@mantine/core/esm/components/ThemeIcon/ThemeIcon.cjs");
|
|
8
8
|
const Text = require("../../../node_modules/@mantine/core/esm/components/Text/Text.cjs");
|
|
9
|
+
const responsiveTypography = require("../../../theme/responsiveTypography.cjs");
|
|
9
10
|
const DefaultCheckIcon = () => /* @__PURE__ */ jsxRuntime.jsx(
|
|
10
11
|
"svg",
|
|
11
12
|
{
|
|
@@ -59,7 +60,7 @@ function StepCard({
|
|
|
59
60
|
}
|
|
60
61
|
),
|
|
61
62
|
/* @__PURE__ */ jsxRuntime.jsxs(layout.Box, { style: { minWidth: 0, flex: 1 }, children: [
|
|
62
|
-
/* @__PURE__ */ jsxRuntime.jsx(Text.Text, { fw: 700, fz:
|
|
63
|
+
/* @__PURE__ */ jsxRuntime.jsx(Text.Text, { fw: 700, fz: responsiveTypography.responsiveTypography.cardTitle, c: index.neutralColors[900], lh: 1.3, children: title }),
|
|
63
64
|
description && /* @__PURE__ */ jsxRuntime.jsx(Text.Text, { size: "sm", c: index.neutralColors[600], lh: 1.5, mt: 4, children: description })
|
|
64
65
|
] })
|
|
65
66
|
] }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepCard.cjs","sources":["../../../../src/components/generic/StepCard/StepCard.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { brandColors, neutralColors } from \"../../../theme\";\nimport { Box, Group, Paper, Stack, Text, ThemeIcon } from \"../../primitives/layout\";\n\n/** Default check glyph shown when `done === true`. Inline SVG — check only, no circle outline. */\nconst DefaultCheckIcon = () => (\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n >\n <path d=\"m5 13 4 4 10-10\" />\n </svg>\n);\n\nexport interface StepCardProps {\n /** 1-indexed step number shown in the indicator when not done. */\n index: number;\n /** Step title. */\n title: string;\n /** Optional supporting text below the title. */\n description?: string;\n /** When true, the indicator flips from the number to a check glyph. */\n done?: boolean;\n /**\n * Override the icon shown when `done === true`. Defaults to a check-only\n * glyph. Accept-as-ReactNode so consumers don't need to import an icon library.\n */\n doneIcon?: ReactNode;\n /** Step content rendered below the header. */\n children: ReactNode;\n}\n\n/**\n * Numbered step card used in multi-section wizards and form flows.\n *\n * The numbered indicator on the left flips to a check when the step is\n * marked done — a quiet progress signal that doesn't compete with the\n * right-column summary or page-level progress UI. Each step sits in\n * its own `Paper` for clear visual separation.\n *\n * The header indicator is the focal point; consumers control the body\n * via `children`.\n */\nexport function StepCard({\n index,\n title,\n description,\n done = false,\n doneIcon,\n children,\n}: StepCardProps) {\n return (\n <Paper\n radius=\"lg\"\n p={{ base: \"md\", sm: \"xl\" }}\n style={{\n background: \"white\",\n border: `1px solid ${neutralColors[200]}`,\n }}\n >\n <Stack gap=\"md\">\n <Group gap=\"md\" align=\"flex-start\" wrap=\"nowrap\">\n <ThemeIcon\n size={32}\n radius=\"md\"\n variant={done ? \"filled\" : \"light\"}\n color={done ? \"indigo\" : \"gray\"}\n aria-label={done ? `Step ${index} complete` : `Step ${index}`}\n style={{\n flexShrink: 0,\n pointerEvents: \"none\",\n background: done ? brandColors.indigo : neutralColors[100],\n color: done ? \"white\" : neutralColors[600],\n border: done ? undefined : `1px solid ${neutralColors[200]}`,\n }}\n >\n {done ? (\n (doneIcon ?? <DefaultCheckIcon />)\n ) : (\n <Text fw={700} fz={14}>\n {index}\n </Text>\n )}\n </ThemeIcon>\n <Box style={{ minWidth: 0, flex: 1 }}>\n <Text fw={700} fz={
|
|
1
|
+
{"version":3,"file":"StepCard.cjs","sources":["../../../../src/components/generic/StepCard/StepCard.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { brandColors, neutralColors, responsiveTypography } from \"../../../theme\";\nimport { Box, Group, Paper, Stack, Text, ThemeIcon } from \"../../primitives/layout\";\n\n/** Default check glyph shown when `done === true`. Inline SVG — check only, no circle outline. */\nconst DefaultCheckIcon = () => (\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n >\n <path d=\"m5 13 4 4 10-10\" />\n </svg>\n);\n\nexport interface StepCardProps {\n /** 1-indexed step number shown in the indicator when not done. */\n index: number;\n /** Step title. */\n title: string;\n /** Optional supporting text below the title. */\n description?: string;\n /** When true, the indicator flips from the number to a check glyph. */\n done?: boolean;\n /**\n * Override the icon shown when `done === true`. Defaults to a check-only\n * glyph. Accept-as-ReactNode so consumers don't need to import an icon library.\n */\n doneIcon?: ReactNode;\n /** Step content rendered below the header. */\n children: ReactNode;\n}\n\n/**\n * Numbered step card used in multi-section wizards and form flows.\n *\n * The numbered indicator on the left flips to a check when the step is\n * marked done — a quiet progress signal that doesn't compete with the\n * right-column summary or page-level progress UI. Each step sits in\n * its own `Paper` for clear visual separation.\n *\n * The header indicator is the focal point; consumers control the body\n * via `children`.\n */\nexport function StepCard({\n index,\n title,\n description,\n done = false,\n doneIcon,\n children,\n}: StepCardProps) {\n return (\n <Paper\n radius=\"lg\"\n p={{ base: \"md\", sm: \"xl\" }}\n style={{\n background: \"white\",\n border: `1px solid ${neutralColors[200]}`,\n }}\n >\n <Stack gap=\"md\">\n <Group gap=\"md\" align=\"flex-start\" wrap=\"nowrap\">\n <ThemeIcon\n size={32}\n radius=\"md\"\n variant={done ? \"filled\" : \"light\"}\n color={done ? \"indigo\" : \"gray\"}\n aria-label={done ? `Step ${index} complete` : `Step ${index}`}\n style={{\n flexShrink: 0,\n pointerEvents: \"none\",\n background: done ? brandColors.indigo : neutralColors[100],\n color: done ? \"white\" : neutralColors[600],\n border: done ? undefined : `1px solid ${neutralColors[200]}`,\n }}\n >\n {done ? (\n (doneIcon ?? <DefaultCheckIcon />)\n ) : (\n <Text fw={700} fz={14}>\n {index}\n </Text>\n )}\n </ThemeIcon>\n <Box style={{ minWidth: 0, flex: 1 }}>\n <Text fw={700} fz={responsiveTypography.cardTitle} c={neutralColors[900]} lh={1.3}>\n {title}\n </Text>\n {description && (\n <Text size=\"sm\" c={neutralColors[600]} lh={1.5} mt={4}>\n {description}\n </Text>\n )}\n </Box>\n </Group>\n <Box pl={{ base: 0, sm: 48 }}>{children}</Box>\n </Stack>\n </Paper>\n );\n}\n"],"names":["jsx","index","Paper","neutralColors","jsxs","Stack","Group","ThemeIcon","brandColors","Text","Box","responsiveTypography"],"mappings":";;;;;;;;;AAKA,MAAM,mBAAmB,MACvBA,2BAAAA;AAAAA,EAAC;AAAA,EAAA;AAAA,IACC,OAAM;AAAA,IACN,QAAO;AAAA,IACP,SAAQ;AAAA,IACR,MAAK;AAAA,IACL,QAAO;AAAA,IACP,aAAY;AAAA,IACZ,eAAc;AAAA,IACd,gBAAe;AAAA,IACf,eAAY;AAAA,IAEZ,UAAAA,2BAAAA,IAAC,QAAA,EAAK,GAAE,kBAAA,CAAkB;AAAA,EAAA;AAC5B;AAgCK,SAAS,SAAS;AAAA,EAAA,OACvBC;AAAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA;AACF,GAAkB;AAChB,SACED,2BAAAA;AAAAA,IAACE,OAAAA;AAAAA,IAAA;AAAA,MACC,QAAO;AAAA,MACP,GAAG,EAAE,MAAM,MAAM,IAAI,KAAA;AAAA,MACrB,OAAO;AAAA,QACL,YAAY;AAAA,QACZ,QAAQ,aAAaC,MAAAA,cAAc,GAAG,CAAC;AAAA,MAAA;AAAA,MAGzC,UAAAC,2BAAAA,KAACC,OAAAA,OAAA,EAAM,KAAI,MACT,UAAA;AAAA,QAAAD,gCAACE,MAAAA,SAAM,KAAI,MAAK,OAAM,cAAa,MAAK,UACtC,UAAA;AAAA,UAAAN,2BAAAA;AAAAA,YAACO,UAAAA;AAAAA,YAAA;AAAA,cACC,MAAM;AAAA,cACN,QAAO;AAAA,cACP,SAAS,OAAO,WAAW;AAAA,cAC3B,OAAO,OAAO,WAAW;AAAA,cACzB,cAAY,OAAO,QAAQN,OAAK,cAAc,QAAQA,OAAK;AAAA,cAC3D,OAAO;AAAA,gBACL,YAAY;AAAA,gBACZ,eAAe;AAAA,gBACf,YAAY,OAAOO,MAAAA,YAAY,SAASL,MAAAA,cAAc,GAAG;AAAA,gBACzD,OAAO,OAAO,UAAUA,MAAAA,cAAc,GAAG;AAAA,gBACzC,QAAQ,OAAO,SAAY,aAAaA,MAAAA,cAAc,GAAG,CAAC;AAAA,cAAA;AAAA,cAG3D,UAAA,OACE,YAAYH,2BAAAA,IAAC,kBAAA,CAAA,CAAiB,IAE/BA,2BAAAA,IAACS,KAAAA,MAAA,EAAK,IAAI,KAAK,IAAI,IAChB,UAAAR,QAAA,CACH;AAAA,YAAA;AAAA,UAAA;AAAA,UAGJG,gCAACM,OAAAA,OAAI,OAAO,EAAE,UAAU,GAAG,MAAM,KAC/B,UAAA;AAAA,YAAAV,2BAAAA,IAACS,KAAAA,MAAA,EAAK,IAAI,KAAK,IAAIE,qBAAAA,qBAAqB,WAAW,GAAGR,MAAAA,cAAc,GAAG,GAAG,IAAI,KAC3E,UAAA,OACH;AAAA,YACC,eACCH,2BAAAA,IAACS,KAAAA,MAAA,EAAK,MAAK,MAAK,GAAGN,MAAAA,cAAc,GAAG,GAAG,IAAI,KAAK,IAAI,GACjD,UAAA,YAAA,CACH;AAAA,UAAA,EAAA,CAEJ;AAAA,QAAA,GACF;AAAA,QACAH,+BAACU,OAAAA,OAAI,IAAI,EAAE,MAAM,GAAG,IAAI,GAAA,GAAO,SAAA,CAAS;AAAA,MAAA,EAAA,CAC1C;AAAA,IAAA;AAAA,EAAA;AAGN;;"}
|
|
@@ -4,6 +4,7 @@ import { Paper, Stack, Box } from "../../primitives/layout.js";
|
|
|
4
4
|
import { Group } from "../../../node_modules/@mantine/core/esm/components/Group/Group.js";
|
|
5
5
|
import { ThemeIcon } from "../../../node_modules/@mantine/core/esm/components/ThemeIcon/ThemeIcon.js";
|
|
6
6
|
import { Text } from "../../../node_modules/@mantine/core/esm/components/Text/Text.js";
|
|
7
|
+
import { responsiveTypography } from "../../../theme/responsiveTypography.js";
|
|
7
8
|
const DefaultCheckIcon = () => /* @__PURE__ */ jsx(
|
|
8
9
|
"svg",
|
|
9
10
|
{
|
|
@@ -57,7 +58,7 @@ function StepCard({
|
|
|
57
58
|
}
|
|
58
59
|
),
|
|
59
60
|
/* @__PURE__ */ jsxs(Box, { style: { minWidth: 0, flex: 1 }, children: [
|
|
60
|
-
/* @__PURE__ */ jsx(Text, { fw: 700, fz:
|
|
61
|
+
/* @__PURE__ */ jsx(Text, { fw: 700, fz: responsiveTypography.cardTitle, c: neutralColors[900], lh: 1.3, children: title }),
|
|
61
62
|
description && /* @__PURE__ */ jsx(Text, { size: "sm", c: neutralColors[600], lh: 1.5, mt: 4, children: description })
|
|
62
63
|
] })
|
|
63
64
|
] }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepCard.js","sources":["../../../../src/components/generic/StepCard/StepCard.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { brandColors, neutralColors } from \"../../../theme\";\nimport { Box, Group, Paper, Stack, Text, ThemeIcon } from \"../../primitives/layout\";\n\n/** Default check glyph shown when `done === true`. Inline SVG — check only, no circle outline. */\nconst DefaultCheckIcon = () => (\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n >\n <path d=\"m5 13 4 4 10-10\" />\n </svg>\n);\n\nexport interface StepCardProps {\n /** 1-indexed step number shown in the indicator when not done. */\n index: number;\n /** Step title. */\n title: string;\n /** Optional supporting text below the title. */\n description?: string;\n /** When true, the indicator flips from the number to a check glyph. */\n done?: boolean;\n /**\n * Override the icon shown when `done === true`. Defaults to a check-only\n * glyph. Accept-as-ReactNode so consumers don't need to import an icon library.\n */\n doneIcon?: ReactNode;\n /** Step content rendered below the header. */\n children: ReactNode;\n}\n\n/**\n * Numbered step card used in multi-section wizards and form flows.\n *\n * The numbered indicator on the left flips to a check when the step is\n * marked done — a quiet progress signal that doesn't compete with the\n * right-column summary or page-level progress UI. Each step sits in\n * its own `Paper` for clear visual separation.\n *\n * The header indicator is the focal point; consumers control the body\n * via `children`.\n */\nexport function StepCard({\n index,\n title,\n description,\n done = false,\n doneIcon,\n children,\n}: StepCardProps) {\n return (\n <Paper\n radius=\"lg\"\n p={{ base: \"md\", sm: \"xl\" }}\n style={{\n background: \"white\",\n border: `1px solid ${neutralColors[200]}`,\n }}\n >\n <Stack gap=\"md\">\n <Group gap=\"md\" align=\"flex-start\" wrap=\"nowrap\">\n <ThemeIcon\n size={32}\n radius=\"md\"\n variant={done ? \"filled\" : \"light\"}\n color={done ? \"indigo\" : \"gray\"}\n aria-label={done ? `Step ${index} complete` : `Step ${index}`}\n style={{\n flexShrink: 0,\n pointerEvents: \"none\",\n background: done ? brandColors.indigo : neutralColors[100],\n color: done ? \"white\" : neutralColors[600],\n border: done ? undefined : `1px solid ${neutralColors[200]}`,\n }}\n >\n {done ? (\n (doneIcon ?? <DefaultCheckIcon />)\n ) : (\n <Text fw={700} fz={14}>\n {index}\n </Text>\n )}\n </ThemeIcon>\n <Box style={{ minWidth: 0, flex: 1 }}>\n <Text fw={700} fz={
|
|
1
|
+
{"version":3,"file":"StepCard.js","sources":["../../../../src/components/generic/StepCard/StepCard.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { brandColors, neutralColors, responsiveTypography } from \"../../../theme\";\nimport { Box, Group, Paper, Stack, Text, ThemeIcon } from \"../../primitives/layout\";\n\n/** Default check glyph shown when `done === true`. Inline SVG — check only, no circle outline. */\nconst DefaultCheckIcon = () => (\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n >\n <path d=\"m5 13 4 4 10-10\" />\n </svg>\n);\n\nexport interface StepCardProps {\n /** 1-indexed step number shown in the indicator when not done. */\n index: number;\n /** Step title. */\n title: string;\n /** Optional supporting text below the title. */\n description?: string;\n /** When true, the indicator flips from the number to a check glyph. */\n done?: boolean;\n /**\n * Override the icon shown when `done === true`. Defaults to a check-only\n * glyph. Accept-as-ReactNode so consumers don't need to import an icon library.\n */\n doneIcon?: ReactNode;\n /** Step content rendered below the header. */\n children: ReactNode;\n}\n\n/**\n * Numbered step card used in multi-section wizards and form flows.\n *\n * The numbered indicator on the left flips to a check when the step is\n * marked done — a quiet progress signal that doesn't compete with the\n * right-column summary or page-level progress UI. Each step sits in\n * its own `Paper` for clear visual separation.\n *\n * The header indicator is the focal point; consumers control the body\n * via `children`.\n */\nexport function StepCard({\n index,\n title,\n description,\n done = false,\n doneIcon,\n children,\n}: StepCardProps) {\n return (\n <Paper\n radius=\"lg\"\n p={{ base: \"md\", sm: \"xl\" }}\n style={{\n background: \"white\",\n border: `1px solid ${neutralColors[200]}`,\n }}\n >\n <Stack gap=\"md\">\n <Group gap=\"md\" align=\"flex-start\" wrap=\"nowrap\">\n <ThemeIcon\n size={32}\n radius=\"md\"\n variant={done ? \"filled\" : \"light\"}\n color={done ? \"indigo\" : \"gray\"}\n aria-label={done ? `Step ${index} complete` : `Step ${index}`}\n style={{\n flexShrink: 0,\n pointerEvents: \"none\",\n background: done ? brandColors.indigo : neutralColors[100],\n color: done ? \"white\" : neutralColors[600],\n border: done ? undefined : `1px solid ${neutralColors[200]}`,\n }}\n >\n {done ? (\n (doneIcon ?? <DefaultCheckIcon />)\n ) : (\n <Text fw={700} fz={14}>\n {index}\n </Text>\n )}\n </ThemeIcon>\n <Box style={{ minWidth: 0, flex: 1 }}>\n <Text fw={700} fz={responsiveTypography.cardTitle} c={neutralColors[900]} lh={1.3}>\n {title}\n </Text>\n {description && (\n <Text size=\"sm\" c={neutralColors[600]} lh={1.5} mt={4}>\n {description}\n </Text>\n )}\n </Box>\n </Group>\n <Box pl={{ base: 0, sm: 48 }}>{children}</Box>\n </Stack>\n </Paper>\n );\n}\n"],"names":[],"mappings":";;;;;;;AAKA,MAAM,mBAAmB,MACvB;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,OAAM;AAAA,IACN,QAAO;AAAA,IACP,SAAQ;AAAA,IACR,MAAK;AAAA,IACL,QAAO;AAAA,IACP,aAAY;AAAA,IACZ,eAAc;AAAA,IACd,gBAAe;AAAA,IACf,eAAY;AAAA,IAEZ,UAAA,oBAAC,QAAA,EAAK,GAAE,kBAAA,CAAkB;AAAA,EAAA;AAC5B;AAgCK,SAAS,SAAS;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA;AACF,GAAkB;AAChB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,QAAO;AAAA,MACP,GAAG,EAAE,MAAM,MAAM,IAAI,KAAA;AAAA,MACrB,OAAO;AAAA,QACL,YAAY;AAAA,QACZ,QAAQ,aAAa,cAAc,GAAG,CAAC;AAAA,MAAA;AAAA,MAGzC,UAAA,qBAAC,OAAA,EAAM,KAAI,MACT,UAAA;AAAA,QAAA,qBAAC,SAAM,KAAI,MAAK,OAAM,cAAa,MAAK,UACtC,UAAA;AAAA,UAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,MAAM;AAAA,cACN,QAAO;AAAA,cACP,SAAS,OAAO,WAAW;AAAA,cAC3B,OAAO,OAAO,WAAW;AAAA,cACzB,cAAY,OAAO,QAAQ,KAAK,cAAc,QAAQ,KAAK;AAAA,cAC3D,OAAO;AAAA,gBACL,YAAY;AAAA,gBACZ,eAAe;AAAA,gBACf,YAAY,OAAO,YAAY,SAAS,cAAc,GAAG;AAAA,gBACzD,OAAO,OAAO,UAAU,cAAc,GAAG;AAAA,gBACzC,QAAQ,OAAO,SAAY,aAAa,cAAc,GAAG,CAAC;AAAA,cAAA;AAAA,cAG3D,UAAA,OACE,YAAY,oBAAC,kBAAA,CAAA,CAAiB,IAE/B,oBAAC,MAAA,EAAK,IAAI,KAAK,IAAI,IAChB,UAAA,MAAA,CACH;AAAA,YAAA;AAAA,UAAA;AAAA,UAGJ,qBAAC,OAAI,OAAO,EAAE,UAAU,GAAG,MAAM,KAC/B,UAAA;AAAA,YAAA,oBAAC,MAAA,EAAK,IAAI,KAAK,IAAI,qBAAqB,WAAW,GAAG,cAAc,GAAG,GAAG,IAAI,KAC3E,UAAA,OACH;AAAA,YACC,eACC,oBAAC,MAAA,EAAK,MAAK,MAAK,GAAG,cAAc,GAAG,GAAG,IAAI,KAAK,IAAI,GACjD,UAAA,YAAA,CACH;AAAA,UAAA,EAAA,CAEJ;AAAA,QAAA,GACF;AAAA,QACA,oBAAC,OAAI,IAAI,EAAE,MAAM,GAAG,IAAI,GAAA,GAAO,SAAA,CAAS;AAAA,MAAA,EAAA,CAC1C;AAAA,IAAA;AAAA,EAAA;AAGN;"}
|
|
@@ -5,11 +5,12 @@ const index = require("../../../theme/index.cjs");
|
|
|
5
5
|
const layout = require("../../primitives/layout.cjs");
|
|
6
6
|
const Group = require("../../../node_modules/@mantine/core/esm/components/Group/Group.cjs");
|
|
7
7
|
const Title = require("../../../node_modules/@mantine/core/esm/components/Title/Title.cjs");
|
|
8
|
+
const responsiveTypography = require("../../../theme/responsiveTypography.cjs");
|
|
8
9
|
const Text = require("../../../node_modules/@mantine/core/esm/components/Text/Text.cjs");
|
|
9
10
|
function PageHeader({ title, subtitle, action }) {
|
|
10
11
|
return /* @__PURE__ */ jsxRuntime.jsxs(Group.Group, { justify: "space-between", align: "flex-start", mb: "lg", children: [
|
|
11
12
|
/* @__PURE__ */ jsxRuntime.jsxs(layout.Stack, { gap: 4, children: [
|
|
12
|
-
/* @__PURE__ */ jsxRuntime.jsx(Title.Title, { order: 2, children: title }),
|
|
13
|
+
/* @__PURE__ */ jsxRuntime.jsx(Title.Title, { order: 2, fz: responsiveTypography.responsiveTypography.h2, children: title }),
|
|
13
14
|
subtitle && /* @__PURE__ */ jsxRuntime.jsx(Text.Text, { c: index.fairmintVars.colorTextSecondary, size: "sm", children: subtitle })
|
|
14
15
|
] }),
|
|
15
16
|
action
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageHeader.cjs","sources":["../../../../src/components/layout/PageHeader/PageHeader.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { fairmintVars } from \"../../../theme\";\nimport { Group, Stack, Text, Title } from \"../../primitives/layout\";\n\nexport interface PageHeaderProps {\n title: string;\n subtitle?: string;\n action?: ReactNode;\n}\n\nexport function PageHeader({ title, subtitle, action }: PageHeaderProps) {\n return (\n <Group justify=\"space-between\" align=\"flex-start\" mb=\"lg\">\n <Stack gap={4}>\n <Title order={2}
|
|
1
|
+
{"version":3,"file":"PageHeader.cjs","sources":["../../../../src/components/layout/PageHeader/PageHeader.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { fairmintVars, responsiveTypography } from \"../../../theme\";\nimport { Group, Stack, Text, Title } from \"../../primitives/layout\";\n\nexport interface PageHeaderProps {\n title: string;\n subtitle?: string;\n action?: ReactNode;\n}\n\nexport function PageHeader({ title, subtitle, action }: PageHeaderProps) {\n return (\n <Group justify=\"space-between\" align=\"flex-start\" mb=\"lg\">\n <Stack gap={4}>\n <Title order={2} fz={responsiveTypography.h2}>\n {title}\n </Title>\n {subtitle && (\n <Text c={fairmintVars.colorTextSecondary} size=\"sm\">\n {subtitle}\n </Text>\n )}\n </Stack>\n {action}\n </Group>\n );\n}\n"],"names":["Group","jsxs","Stack","jsx","Title","responsiveTypography","Text","fairmintVars"],"mappings":";;;;;;;;;AAUO,SAAS,WAAW,EAAE,OAAO,UAAU,UAA2B;AACvE,yCACGA,aAAA,EAAM,SAAQ,iBAAgB,OAAM,cAAa,IAAG,MACnD,UAAA;AAAA,IAAAC,2BAAAA,KAACC,OAAAA,OAAA,EAAM,KAAK,GACV,UAAA;AAAA,MAAAC,+BAACC,MAAAA,SAAM,OAAO,GAAG,IAAIC,qBAAAA,qBAAqB,IACvC,UAAA,OACH;AAAA,MACC,2CACEC,WAAA,EAAK,GAAGC,MAAAA,aAAa,oBAAoB,MAAK,MAC5C,UAAA,SAAA,CACH;AAAA,IAAA,GAEJ;AAAA,IACC;AAAA,EAAA,GACH;AAEJ;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageHeader.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/PageHeader/PageHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,SAAS,CAAC;CACpB;AAED,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"PageHeader.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/PageHeader/PageHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,SAAS,CAAC;CACpB;AAED,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,eAAe,2CAgBtE"}
|
|
@@ -3,11 +3,12 @@ import { fairmintVars } from "../../../theme/index.js";
|
|
|
3
3
|
import { Stack } from "../../primitives/layout.js";
|
|
4
4
|
import { Group } from "../../../node_modules/@mantine/core/esm/components/Group/Group.js";
|
|
5
5
|
import { Title } from "../../../node_modules/@mantine/core/esm/components/Title/Title.js";
|
|
6
|
+
import { responsiveTypography } from "../../../theme/responsiveTypography.js";
|
|
6
7
|
import { Text } from "../../../node_modules/@mantine/core/esm/components/Text/Text.js";
|
|
7
8
|
function PageHeader({ title, subtitle, action }) {
|
|
8
9
|
return /* @__PURE__ */ jsxs(Group, { justify: "space-between", align: "flex-start", mb: "lg", children: [
|
|
9
10
|
/* @__PURE__ */ jsxs(Stack, { gap: 4, children: [
|
|
10
|
-
/* @__PURE__ */ jsx(Title, { order: 2, children: title }),
|
|
11
|
+
/* @__PURE__ */ jsx(Title, { order: 2, fz: responsiveTypography.h2, children: title }),
|
|
11
12
|
subtitle && /* @__PURE__ */ jsx(Text, { c: fairmintVars.colorTextSecondary, size: "sm", children: subtitle })
|
|
12
13
|
] }),
|
|
13
14
|
action
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageHeader.js","sources":["../../../../src/components/layout/PageHeader/PageHeader.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { fairmintVars } from \"../../../theme\";\nimport { Group, Stack, Text, Title } from \"../../primitives/layout\";\n\nexport interface PageHeaderProps {\n title: string;\n subtitle?: string;\n action?: ReactNode;\n}\n\nexport function PageHeader({ title, subtitle, action }: PageHeaderProps) {\n return (\n <Group justify=\"space-between\" align=\"flex-start\" mb=\"lg\">\n <Stack gap={4}>\n <Title order={2}
|
|
1
|
+
{"version":3,"file":"PageHeader.js","sources":["../../../../src/components/layout/PageHeader/PageHeader.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { fairmintVars, responsiveTypography } from \"../../../theme\";\nimport { Group, Stack, Text, Title } from \"../../primitives/layout\";\n\nexport interface PageHeaderProps {\n title: string;\n subtitle?: string;\n action?: ReactNode;\n}\n\nexport function PageHeader({ title, subtitle, action }: PageHeaderProps) {\n return (\n <Group justify=\"space-between\" align=\"flex-start\" mb=\"lg\">\n <Stack gap={4}>\n <Title order={2} fz={responsiveTypography.h2}>\n {title}\n </Title>\n {subtitle && (\n <Text c={fairmintVars.colorTextSecondary} size=\"sm\">\n {subtitle}\n </Text>\n )}\n </Stack>\n {action}\n </Group>\n );\n}\n"],"names":[],"mappings":";;;;;;;AAUO,SAAS,WAAW,EAAE,OAAO,UAAU,UAA2B;AACvE,8BACG,OAAA,EAAM,SAAQ,iBAAgB,OAAM,cAAa,IAAG,MACnD,UAAA;AAAA,IAAA,qBAAC,OAAA,EAAM,KAAK,GACV,UAAA;AAAA,MAAA,oBAAC,SAAM,OAAO,GAAG,IAAI,qBAAqB,IACvC,UAAA,OACH;AAAA,MACC,gCACE,MAAA,EAAK,GAAG,aAAa,oBAAoB,MAAK,MAC5C,UAAA,SAAA,CACH;AAAA,IAAA,GAEJ;AAAA,IACC;AAAA,EAAA,GACH;AAEJ;"}
|
|
@@ -4,7 +4,16 @@ const jsxRuntime = require("react/jsx-runtime");
|
|
|
4
4
|
const zIndex = require("../../../theme/zIndex.cjs");
|
|
5
5
|
const Drawer$1 = require("../../../node_modules/@mantine/core/esm/components/Drawer/Drawer.cjs");
|
|
6
6
|
function Drawer({ zIndex: zIndex$1 = zIndex.overlayZIndexAboveLegacyShell, ...props }) {
|
|
7
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
7
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
8
|
+
Drawer$1.Drawer,
|
|
9
|
+
{
|
|
10
|
+
position: "right",
|
|
11
|
+
size: "lg",
|
|
12
|
+
padding: "lg",
|
|
13
|
+
...props,
|
|
14
|
+
zIndex: zIndex$1
|
|
15
|
+
}
|
|
16
|
+
);
|
|
8
17
|
}
|
|
9
18
|
exports.Drawer = Drawer;
|
|
10
19
|
//# sourceMappingURL=Drawer.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Drawer.cjs","sources":["../../../../src/components/primitives/Drawer/Drawer.tsx"],"sourcesContent":["import { Drawer as MantineDrawer, type DrawerProps as MantineDrawerProps } from \"@mantine/core\";\n\nimport { overlayZIndexAboveLegacyShell } from \"../../../theme/zIndex\";\n\nexport interface DrawerProps extends MantineDrawerProps {}\n\nexport function Drawer({ zIndex = overlayZIndexAboveLegacyShell, ...props }: DrawerProps) {\n return <MantineDrawer
|
|
1
|
+
{"version":3,"file":"Drawer.cjs","sources":["../../../../src/components/primitives/Drawer/Drawer.tsx"],"sourcesContent":["import { Drawer as MantineDrawer, type DrawerProps as MantineDrawerProps } from \"@mantine/core\";\n\nimport { overlayZIndexAboveLegacyShell } from \"../../../theme/zIndex\";\n\nexport interface DrawerProps extends MantineDrawerProps {}\n\nexport function Drawer({ zIndex = overlayZIndexAboveLegacyShell, ...props }: DrawerProps) {\n return (\n <MantineDrawer\n position=\"right\"\n size=\"lg\"\n // `padding` (content/header/footer spacing) is not the same prop as the\n // Box style-shorthand `p`. Passing `p` here applies literal CSS padding to\n // the drawer's position: fixed, width: 100% root wrapper, which shifts its\n // static-position offset without shrinking its width — pushing the drawer\n // past the viewport's right edge by the padding amount.\n padding=\"lg\"\n {...props}\n zIndex={zIndex}\n />\n );\n}\n"],"names":["zIndex","overlayZIndexAboveLegacyShell","jsx","MantineDrawer"],"mappings":";;;;;AAMO,SAAS,OAAO,EAAA,QAAEA,WAASC,sCAA+B,GAAG,SAAsB;AACxF,SACEC,2BAAAA;AAAAA,IAACC,SAAAA;AAAAA,IAAA;AAAA,MACC,UAAS;AAAA,MACT,MAAK;AAAA,MAML,SAAQ;AAAA,MACP,GAAG;AAAA,MAAA,QACJH;AAAAA,IAAA;AAAA,EAAA;AAGN;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../../../src/components/primitives/Drawer/Drawer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,WAAW,IAAI,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAIhG,MAAM,WAAW,WAAY,SAAQ,kBAAkB;CAAG;AAE1D,wBAAgB,MAAM,CAAC,EAAE,MAAsC,EAAE,GAAG,KAAK,EAAE,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../../../src/components/primitives/Drawer/Drawer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,WAAW,IAAI,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAIhG,MAAM,WAAW,WAAY,SAAQ,kBAAkB;CAAG;AAE1D,wBAAgB,MAAM,CAAC,EAAE,MAAsC,EAAE,GAAG,KAAK,EAAE,EAAE,WAAW,2CAevF"}
|
|
@@ -2,7 +2,16 @@ import { jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { overlayZIndexAboveLegacyShell } from "../../../theme/zIndex.js";
|
|
3
3
|
import { Drawer as Drawer$1 } from "../../../node_modules/@mantine/core/esm/components/Drawer/Drawer.js";
|
|
4
4
|
function Drawer({ zIndex = overlayZIndexAboveLegacyShell, ...props }) {
|
|
5
|
-
return /* @__PURE__ */ jsx(
|
|
5
|
+
return /* @__PURE__ */ jsx(
|
|
6
|
+
Drawer$1,
|
|
7
|
+
{
|
|
8
|
+
position: "right",
|
|
9
|
+
size: "lg",
|
|
10
|
+
padding: "lg",
|
|
11
|
+
...props,
|
|
12
|
+
zIndex
|
|
13
|
+
}
|
|
14
|
+
);
|
|
6
15
|
}
|
|
7
16
|
export {
|
|
8
17
|
Drawer
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Drawer.js","sources":["../../../../src/components/primitives/Drawer/Drawer.tsx"],"sourcesContent":["import { Drawer as MantineDrawer, type DrawerProps as MantineDrawerProps } from \"@mantine/core\";\n\nimport { overlayZIndexAboveLegacyShell } from \"../../../theme/zIndex\";\n\nexport interface DrawerProps extends MantineDrawerProps {}\n\nexport function Drawer({ zIndex = overlayZIndexAboveLegacyShell, ...props }: DrawerProps) {\n return <MantineDrawer
|
|
1
|
+
{"version":3,"file":"Drawer.js","sources":["../../../../src/components/primitives/Drawer/Drawer.tsx"],"sourcesContent":["import { Drawer as MantineDrawer, type DrawerProps as MantineDrawerProps } from \"@mantine/core\";\n\nimport { overlayZIndexAboveLegacyShell } from \"../../../theme/zIndex\";\n\nexport interface DrawerProps extends MantineDrawerProps {}\n\nexport function Drawer({ zIndex = overlayZIndexAboveLegacyShell, ...props }: DrawerProps) {\n return (\n <MantineDrawer\n position=\"right\"\n size=\"lg\"\n // `padding` (content/header/footer spacing) is not the same prop as the\n // Box style-shorthand `p`. Passing `p` here applies literal CSS padding to\n // the drawer's position: fixed, width: 100% root wrapper, which shifts its\n // static-position offset without shrinking its width — pushing the drawer\n // past the viewport's right edge by the padding amount.\n padding=\"lg\"\n {...props}\n zIndex={zIndex}\n />\n );\n}\n"],"names":["MantineDrawer"],"mappings":";;;AAMO,SAAS,OAAO,EAAE,SAAS,+BAA+B,GAAG,SAAsB;AACxF,SACE;AAAA,IAACA;AAAAA,IAAA;AAAA,MACC,UAAS;AAAA,MACT,MAAK;AAAA,MAML,SAAQ;AAAA,MACP,GAAG;AAAA,MACJ;AAAA,IAAA;AAAA,EAAA;AAGN;"}
|
|
@@ -3,9 +3,11 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
3
3
|
const jsxRuntime = require("react/jsx-runtime");
|
|
4
4
|
const sx = require("../sx.cjs");
|
|
5
5
|
const Table$1 = require("../../../node_modules/@mantine/core/esm/components/Table/Table.cjs");
|
|
6
|
-
function TableBase({ sx: sx$1, style, ...props }) {
|
|
6
|
+
function TableBase({ responsive = false, sx: sx$1, style, ...props }) {
|
|
7
7
|
const sxStyle = sx.useSxStyle(sx$1);
|
|
8
|
-
|
|
8
|
+
const table = /* @__PURE__ */ jsxRuntime.jsx(Table$1.Table, { style: { ...sxStyle, ...style }, ...props });
|
|
9
|
+
if (!responsive) return table;
|
|
10
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "fairmint-table-scroll", style: { maxWidth: "100%", overflowX: "auto" }, children: table });
|
|
9
11
|
}
|
|
10
12
|
const Table = Object.assign(TableBase, {
|
|
11
13
|
Thead: Table$1.Table.Thead,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.cjs","sources":["../../../../src/components/primitives/Table/Table.tsx"],"sourcesContent":["import { Table as MantineTable, type TableProps as MantineTableProps } from \"@mantine/core\";\nimport { type Sx, useSxStyle } from \"../sx\";\n\nexport interface TableProps extends MantineTableProps {\n sx?: Sx;\n}\n\nfunction TableBase({ sx, style, ...props }: TableProps) {\n const sxStyle = useSxStyle(sx);\n
|
|
1
|
+
{"version":3,"file":"Table.cjs","sources":["../../../../src/components/primitives/Table/Table.tsx"],"sourcesContent":["import { Table as MantineTable, type TableProps as MantineTableProps } from \"@mantine/core\";\nimport { type Sx, useSxStyle } from \"../sx\";\n\nexport interface TableProps extends MantineTableProps {\n /** Wrap the table in a horizontal scroller for narrow layouts. */\n responsive?: boolean;\n sx?: Sx;\n}\n\nfunction TableBase({ responsive = false, sx, style, ...props }: TableProps) {\n const sxStyle = useSxStyle(sx);\n const table = <MantineTable style={{ ...sxStyle, ...style }} {...props} />;\n\n if (!responsive) return table;\n\n return (\n <div className=\"fairmint-table-scroll\" style={{ maxWidth: \"100%\", overflowX: \"auto\" }}>\n {table}\n </div>\n );\n}\n\nexport const Table = Object.assign(TableBase, {\n Thead: MantineTable.Thead,\n Tbody: MantineTable.Tbody,\n Tr: MantineTable.Tr,\n Th: MantineTable.Th,\n Td: MantineTable.Td,\n Tfoot: MantineTable.Tfoot,\n Caption: MantineTable.Caption,\n});\n"],"names":["sx","useSxStyle","jsx","MantineTable"],"mappings":";;;;;AASA,SAAS,UAAU,EAAE,aAAa,OAAA,IAAOA,MAAI,OAAO,GAAG,SAAqB;AAC1E,QAAM,UAAUC,GAAAA,WAAWD,IAAE;AAC7B,QAAM,QAAQE,2BAAAA,IAACC,QAAAA,OAAA,EAAa,OAAO,EAAE,GAAG,SAAS,GAAG,SAAU,GAAG,MAAA,CAAO;AAExE,MAAI,CAAC,WAAY,QAAO;AAExB,SACED,2BAAAA,IAAC,OAAA,EAAI,WAAU,yBAAwB,OAAO,EAAE,UAAU,QAAQ,WAAW,OAAA,GAC1E,UAAA,MAAA,CACH;AAEJ;AAEO,MAAM,QAAQ,OAAO,OAAO,WAAW;AAAA,EAC5C,OAAOC,QAAAA,MAAa;AAAA,EACpB,OAAOA,QAAAA,MAAa;AAAA,EACpB,IAAIA,QAAAA,MAAa;AAAA,EACjB,IAAIA,QAAAA,MAAa;AAAA,EACjB,IAAIA,QAAAA,MAAa;AAAA,EACjB,OAAOA,QAAAA,MAAa;AAAA,EACpB,SAASA,QAAAA,MAAa;AACxB,CAAC;;"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { TableProps as MantineTableProps } from '@mantine/core';
|
|
2
2
|
import { Sx } from '../sx';
|
|
3
3
|
export interface TableProps extends MantineTableProps {
|
|
4
|
+
/** Wrap the table in a horizontal scroller for narrow layouts. */
|
|
5
|
+
responsive?: boolean;
|
|
4
6
|
sx?: Sx;
|
|
5
7
|
}
|
|
6
|
-
declare function TableBase({ sx, style, ...props }: TableProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
declare function TableBase({ responsive, sx, style, ...props }: TableProps): import("react/jsx-runtime").JSX.Element;
|
|
7
9
|
export declare const Table: typeof TableBase & {
|
|
8
10
|
Thead: import('@mantine/core').MantineComponent<{
|
|
9
11
|
props: import('@mantine/core').TableTheadProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../../src/components/primitives/Table/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,UAAU,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAE,KAAK,EAAE,EAAc,MAAM,OAAO,CAAC;AAE5C,MAAM,WAAW,UAAW,SAAQ,iBAAiB;IACnD,EAAE,CAAC,EAAE,EAAE,CAAC;CACT;AAED,iBAAS,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../../src/components/primitives/Table/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,UAAU,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAE,KAAK,EAAE,EAAc,MAAM,OAAO,CAAC;AAE5C,MAAM,WAAW,UAAW,SAAQ,iBAAiB;IACnD,kEAAkE;IAClE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,EAAE,CAAC,EAAE,EAAE,CAAC;CACT;AAED,iBAAS,SAAS,CAAC,EAAE,UAAkB,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,UAAU,2CAWzE;AAED,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQhB,CAAC"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import { useSxStyle } from "../sx.js";
|
|
3
3
|
import { Table as Table$1 } from "../../../node_modules/@mantine/core/esm/components/Table/Table.js";
|
|
4
|
-
function TableBase({ sx, style, ...props }) {
|
|
4
|
+
function TableBase({ responsive = false, sx, style, ...props }) {
|
|
5
5
|
const sxStyle = useSxStyle(sx);
|
|
6
|
-
|
|
6
|
+
const table = /* @__PURE__ */ jsx(Table$1, { style: { ...sxStyle, ...style }, ...props });
|
|
7
|
+
if (!responsive) return table;
|
|
8
|
+
return /* @__PURE__ */ jsx("div", { className: "fairmint-table-scroll", style: { maxWidth: "100%", overflowX: "auto" }, children: table });
|
|
7
9
|
}
|
|
8
10
|
const Table = Object.assign(TableBase, {
|
|
9
11
|
Thead: Table$1.Thead,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.js","sources":["../../../../src/components/primitives/Table/Table.tsx"],"sourcesContent":["import { Table as MantineTable, type TableProps as MantineTableProps } from \"@mantine/core\";\nimport { type Sx, useSxStyle } from \"../sx\";\n\nexport interface TableProps extends MantineTableProps {\n sx?: Sx;\n}\n\nfunction TableBase({ sx, style, ...props }: TableProps) {\n const sxStyle = useSxStyle(sx);\n
|
|
1
|
+
{"version":3,"file":"Table.js","sources":["../../../../src/components/primitives/Table/Table.tsx"],"sourcesContent":["import { Table as MantineTable, type TableProps as MantineTableProps } from \"@mantine/core\";\nimport { type Sx, useSxStyle } from \"../sx\";\n\nexport interface TableProps extends MantineTableProps {\n /** Wrap the table in a horizontal scroller for narrow layouts. */\n responsive?: boolean;\n sx?: Sx;\n}\n\nfunction TableBase({ responsive = false, sx, style, ...props }: TableProps) {\n const sxStyle = useSxStyle(sx);\n const table = <MantineTable style={{ ...sxStyle, ...style }} {...props} />;\n\n if (!responsive) return table;\n\n return (\n <div className=\"fairmint-table-scroll\" style={{ maxWidth: \"100%\", overflowX: \"auto\" }}>\n {table}\n </div>\n );\n}\n\nexport const Table = Object.assign(TableBase, {\n Thead: MantineTable.Thead,\n Tbody: MantineTable.Tbody,\n Tr: MantineTable.Tr,\n Th: MantineTable.Th,\n Td: MantineTable.Td,\n Tfoot: MantineTable.Tfoot,\n Caption: MantineTable.Caption,\n});\n"],"names":["MantineTable"],"mappings":";;;AASA,SAAS,UAAU,EAAE,aAAa,OAAO,IAAI,OAAO,GAAG,SAAqB;AAC1E,QAAM,UAAU,WAAW,EAAE;AAC7B,QAAM,QAAQ,oBAACA,SAAA,EAAa,OAAO,EAAE,GAAG,SAAS,GAAG,SAAU,GAAG,MAAA,CAAO;AAExE,MAAI,CAAC,WAAY,QAAO;AAExB,SACE,oBAAC,OAAA,EAAI,WAAU,yBAAwB,OAAO,EAAE,UAAU,QAAQ,WAAW,OAAA,GAC1E,UAAA,MAAA,CACH;AAEJ;AAEO,MAAM,QAAQ,OAAO,OAAO,WAAW;AAAA,EAC5C,OAAOA,QAAa;AAAA,EACpB,OAAOA,QAAa;AAAA,EACpB,IAAIA,QAAa;AAAA,EACjB,IAAIA,QAAa;AAAA,EACjB,IAAIA,QAAa;AAAA,EACjB,OAAOA,QAAa;AAAA,EACpB,SAASA,QAAa;AACxB,CAAC;"}
|
package/dist/fairmint-ui.cjs
CHANGED
|
@@ -125,6 +125,7 @@ const ThemeIcon = require("./node_modules/@mantine/core/esm/components/ThemeIcon
|
|
|
125
125
|
const Title = require("./node_modules/@mantine/core/esm/components/Title/Title.cjs");
|
|
126
126
|
const UnstyledButton = require("./node_modules/@mantine/core/esm/components/UnstyledButton/UnstyledButton.cjs");
|
|
127
127
|
const fontSizes = require("./theme/fontSizes.cjs");
|
|
128
|
+
const responsiveTypography = require("./theme/responsiveTypography.cjs");
|
|
128
129
|
const spacing = require("./theme/spacing.cjs");
|
|
129
130
|
const useClickOutside = require("./node_modules/@mantine/hooks/esm/use-click-outside/use-click-outside.cjs");
|
|
130
131
|
const useClipboard = require("./node_modules/@mantine/hooks/esm/use-clipboard/use-clipboard.cjs");
|
|
@@ -527,6 +528,7 @@ exports.ThemeIcon = ThemeIcon.ThemeIcon;
|
|
|
527
528
|
exports.Title = Title.Title;
|
|
528
529
|
exports.UnstyledButton = UnstyledButton.UnstyledButton;
|
|
529
530
|
exports.fontSizes = fontSizes.fontSizes;
|
|
531
|
+
exports.responsiveTypography = responsiveTypography.responsiveTypography;
|
|
530
532
|
exports.spacing = spacing.spacing;
|
|
531
533
|
exports.useClickOutside = useClickOutside.useClickOutside;
|
|
532
534
|
exports.useClipboard = useClipboard.useClipboard;
|
package/dist/fairmint-ui.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fairmint-ui.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fairmint-ui.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/fairmint-ui.js
CHANGED
|
@@ -123,6 +123,7 @@ import { ThemeIcon } from "./node_modules/@mantine/core/esm/components/ThemeIcon
|
|
|
123
123
|
import { Title } from "./node_modules/@mantine/core/esm/components/Title/Title.js";
|
|
124
124
|
import { UnstyledButton } from "./node_modules/@mantine/core/esm/components/UnstyledButton/UnstyledButton.js";
|
|
125
125
|
import { fontSizes } from "./theme/fontSizes.js";
|
|
126
|
+
import { responsiveTypography } from "./theme/responsiveTypography.js";
|
|
126
127
|
import { spacing } from "./theme/spacing.js";
|
|
127
128
|
import { useClickOutside } from "./node_modules/@mantine/hooks/esm/use-click-outside/use-click-outside.js";
|
|
128
129
|
import { useClipboard } from "./node_modules/@mantine/hooks/esm/use-clipboard/use-clipboard.js";
|
|
@@ -509,6 +510,7 @@ export {
|
|
|
509
510
|
phoneSchema,
|
|
510
511
|
radii,
|
|
511
512
|
responsiveFontSizes,
|
|
513
|
+
responsiveTypography,
|
|
512
514
|
semanticColors,
|
|
513
515
|
shadowColor,
|
|
514
516
|
spacing,
|
package/dist/fairmint-ui.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fairmint-ui.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fairmint-ui.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/index.d.ts
CHANGED
|
@@ -148,8 +148,8 @@ export { MOBILE_BREAKPOINT, useIsMobile } from './hooks/useIsMobile';
|
|
|
148
148
|
export { TABLET_BREAKPOINT, useIsTablet } from './hooks/useIsTablet';
|
|
149
149
|
export { notify } from './notify';
|
|
150
150
|
export { closeSnackbar, enqueueSnackbar, useSnackbar } from './snackbarCompat';
|
|
151
|
-
export type { AvatarPaletteColor, FairmintColor, FairmintFontSize, FairmintSpacing } from './theme';
|
|
152
|
-
export { AVATAR_PALETTE, brandColors, colors, commonColors, createFairmintMantineProviderProps, fairmintCssVariables, fairmintVars, fontSizes, neutralColors, radii, semanticColors, shadowColor, spacing, theme, typography, } from './theme';
|
|
151
|
+
export type { AvatarPaletteColor, FairmintColor, FairmintFontSize, FairmintResponsiveTypography, FairmintSpacing, } from './theme';
|
|
152
|
+
export { AVATAR_PALETTE, brandColors, colors, commonColors, createFairmintMantineProviderProps, fairmintCssVariables, fairmintVars, fontSizes, neutralColors, radii, responsiveTypography, semanticColors, shadowColor, spacing, theme, typography, } from './theme';
|
|
153
153
|
export { ETHEREUM_ADDRESS_REGEX, isEthereumAddress, truncateAddress, validateEthereumAddress, ZERO_ETHEREUM_ADDRESS, } from './utils/address';
|
|
154
154
|
export { getAvatarColor, getInitials } from './utils/avatar';
|
|
155
155
|
export { getLogoFilter, isLightColor } from './utils/color';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,YAAY,EAAE,yBAAyB,EAAE,MAAM,wDAAwD,CAAC;AACxG,OAAO,EAAE,oBAAoB,EAAE,MAAM,wDAAwD,CAAC;AAC9F,YAAY,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,YAAY,EACV,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAChF,YAAY,EACV,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AACtE,YAAY,EACV,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,YAAY,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AAClF,YAAY,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AACvG,OAAO,EAAE,kBAAkB,EAAE,MAAM,yDAAyD,CAAC;AAC7F,YAAY,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AACvE,YAAY,EAAE,yBAAyB,EAAE,MAAM,6DAA6D,CAAC;AAC7G,OAAO,EACL,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,6DAA6D,CAAC;AACrE,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,YAAY,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,YAAY,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAChF,YAAY,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,WAAW,GACZ,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AACpG,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AACtF,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAC3F,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AACnG,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AACrE,YAAY,EACV,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,WAAW,EACX,UAAU,GACX,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,YAAY,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,kDAAkD,CAAC;AACjF,YAAY,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,YAAY,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,kDAAkD,CAAC;AACjF,YAAY,EAAE,0BAA0B,EAAE,MAAM,kEAAkE,CAAC;AACnH,OAAO,EAAE,qBAAqB,EAAE,MAAM,kEAAkE,CAAC;AACzG,YAAY,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,kDAAkD,CAAC;AACjF,YAAY,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAC5F,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAChG,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AACrE,YAAY,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,8CAA8C,CAAC;AAC3E,YAAY,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,gDAAgD,CAAC;AAC9E,YAAY,EACV,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACjF,YAAY,EAAE,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;AACjG,OAAO,EAAE,eAAe,EAAE,MAAM,sDAAsD,CAAC;AACvF,YAAY,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AACxE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC9F,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AACrE,YAAY,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAC/D,YAAY,EACV,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,gDAAgD,CAAC;AACxD,OAAO,EACL,+BAA+B,EAC/B,qCAAqC,EACrC,YAAY,GACb,MAAM,gDAAgD,CAAC;AACxD,YAAY,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAC/D,YAAY,EACV,qBAAqB,EACrB,uBAAuB,EACvB,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,0DAA0D,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0DAA0D,CAAC;AAC7F,YAAY,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAC/D,YAAY,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;AAC9F,OAAO,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AACpF,YAAY,EAAE,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;AACjG,OAAO,EAAE,eAAe,EAAE,MAAM,sDAAsD,CAAC;AACvF,YAAY,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AACrE,YAAY,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,8CAA8C,CAAC;AAC3E,YAAY,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,YAAY,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,8CAA8C,CAAC;AAC3E,YAAY,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,YAAY,EAAE,sBAAsB,EAAE,MAAM,0DAA0D,CAAC;AACvG,OAAO,EAAE,iBAAiB,EAAE,MAAM,0DAA0D,CAAC;AAC7F,YAAY,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAC5E,YAAY,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAC5E,YAAY,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,YAAY,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACvE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACrF,OAAO,EAAE,OAAO,EAAE,MAAM,qCAAqC,CAAC;AAC9D,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACzF,OAAO,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,+CAA+C,CAAC;AAC3E,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAE,IAAI,EAAE,MAAM,mCAAmC,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EACL,MAAM,EACN,QAAQ,EACR,KAAK,aAAa,EAClB,GAAG,EACH,KAAK,QAAQ,EACb,MAAM,EACN,MAAM,EACN,QAAQ,EACR,SAAS,EACT,KAAK,cAAc,EACnB,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,KAAK,EACL,KAAK,UAAU,EACf,IAAI,EACJ,OAAO,EACP,YAAY,EACZ,WAAW,EACX,KAAK,gBAAgB,EACrB,UAAU,EACV,KAAK,EACL,QAAQ,EACR,UAAU,EACV,gBAAgB,EAChB,UAAU,EACV,KAAK,EACL,KAAK,EACL,KAAK,UAAU,EACf,OAAO,EACP,IAAI,EACJ,KAAK,SAAS,EACd,SAAS,EACT,KAAK,cAAc,EACnB,KAAK,EACL,KAAK,UAAU,EACf,cAAc,EACd,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,UAAU,EACV,KAAK,EACL,eAAe,EACf,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,eAAe,GAChB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EACL,WAAW,EACX,KAAK,gBAAgB,GACtB,MAAM,iDAAiD,CAAC;AACzD,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,KAAK,EACL,WAAW,EACX,eAAe,EACf,WAAW,EACX,WAAW,EACX,UAAU,EACV,IAAI,EACJ,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,MAAM,EACN,WAAW,EACX,UAAU,EACV,MAAM,EACN,aAAa,EACb,aAAa,EACb,WAAW,EACX,MAAM,EACN,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,UAAU,EACV,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,SAAS,EACT,IAAI,EACJ,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,oBAAoB,EACpB,OAAO,EACP,QAAQ,EACR,aAAa,EACb,oBAAoB,EACpB,QAAQ,EACR,YAAY,EACZ,mBAAmB,EACnB,OAAO,EACP,KAAK,OAAO,EACZ,MAAM,EACN,SAAS,EACT,SAAS,EACT,SAAS,EACT,eAAe,EACf,QAAQ,EACR,SAAS,EACT,KAAK,cAAc,EACnB,KAAK,KAAK,EACV,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,QAAQ,GACT,MAAM,mCAAmC,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC;AACpF,OAAO,EACL,WAAW,EACX,KAAK,gBAAgB,EACrB,OAAO,EACP,KAAK,YAAY,GAClB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,MAAM,yCAAyC,CAAC;AAClE,YAAY,EACV,gBAAgB,EAChB,gBAAgB,IAAI,oBAAoB,GACzC,MAAM,+CAA+C,CAAC;AACvD,OAAO,EACL,WAAW,EACX,WAAW,IAAI,eAAe,GAC/B,MAAM,+CAA+C,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAClG,OAAO,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAC;AACxF,YAAY,EACV,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,GACb,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,yCAAyC,CAAC;AACjD,YAAY,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;AACrF,YAAY,EAAE,wBAAwB,EAAE,MAAM,+DAA+D,CAAC;AAC9G,OAAO,EAAE,mBAAmB,EAAE,MAAM,+DAA+D,CAAC;AACpG,YAAY,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AACzE,YAAY,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/E,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const React = require("react");
|
|
4
|
-
const index = require("../../../../../../_virtual/
|
|
4
|
+
const index = require("../../../../../../_virtual/index3.cjs");
|
|
5
5
|
const getStatus = require("../../get-status/get-status.cjs");
|
|
6
6
|
const clearListState = require("../../lists/clear-list-state.cjs");
|
|
7
7
|
const getPath = require("../../paths/get-path.cjs");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useState, useRef, useCallback } from "react";
|
|
2
|
-
import isEqual from "../../../../../../_virtual/
|
|
2
|
+
import isEqual from "../../../../../../_virtual/index3.js";
|
|
3
3
|
import { getStatus } from "../../get-status/get-status.js";
|
|
4
4
|
import { clearListState } from "../../lists/clear-list-state.js";
|
|
5
5
|
import { getPath } from "../../paths/get-path.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const index$1 = require("../../_virtual/
|
|
3
|
+
const index$1 = require("../../_virtual/index4.cjs");
|
|
4
4
|
const index = require("./node_modules/react-is/index.cjs");
|
|
5
5
|
const factoryWithTypeCheckers = require("./factoryWithTypeCheckers.cjs");
|
|
6
6
|
const factoryWithThrowingShims = require("./factoryWithThrowingShims.cjs");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __module as propTypes } from "../../_virtual/
|
|
1
|
+
import { __module as propTypes } from "../../_virtual/index4.js";
|
|
2
2
|
import { __require as requireReactIs } from "./node_modules/react-is/index.js";
|
|
3
3
|
import { __require as requireFactoryWithTypeCheckers } from "./factoryWithTypeCheckers.js";
|
|
4
4
|
import { __require as requireFactoryWithThrowingShims } from "./factoryWithThrowingShims.js";
|
package/dist/theme/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../../src/theme/index.ts"],"sourcesContent":["import { type CSSVariablesResolver, createTheme, type MantineColorsTuple } from \"@mantine/core\";\nimport { fontSizes } from \"./fontSizes\";\nimport { spacing } from \"./spacing\";\n\n/**\n * Fairmint radius scale — single source of truth used by both the Mantine\n * theme config and the exported `radii` constant. Edit here; both stay in sync.\n */\nexport const radii = {\n xs: \"0.25rem\",\n sm: \"0.375rem\",\n md: \"0.5rem\",\n lg: \"0.75rem\",\n xl: \"1rem\",\n} as const;\n\n/**\n * Indigo palette — primary UI color.\n * Used for buttons, links, active navigation, focus rings.\n * Shade [5] (#6366F1) is the default primary.\n */\nconst indigo: MantineColorsTuple = [\n \"#EEF2FF\",\n \"#E0E7FF\",\n \"#C7D2FE\",\n \"#A5B4FC\",\n \"#818CF8\",\n \"#6366F1\",\n \"#4F46E5\",\n \"#4338CA\",\n \"#3730A3\",\n \"#312E81\",\n];\n\n/**\n * Neutral scale — replaces Mantine's default gray.\n * Used for text, borders, backgrounds, disabled states.\n */\nconst neutral: MantineColorsTuple = [\n \"#F8F9FA\",\n \"#F3F4F6\",\n \"#E5E7EB\",\n \"#D2D6DB\",\n \"#9DA4AE\",\n \"#6C737F\",\n \"#4D5761\",\n \"#2F3746\",\n \"#1C2536\",\n \"#111927\",\n];\n\n/**\n * Fairmint brand blue — accent color for gradients and brand elements.\n * Shade [5] (#0A4EFB) is the primary brand blue.\n *\n * NOTE: design/README.md lists #2D00F7 as Fairmint Blue.\n * This library uses #0A4EFB (production value from investorv2).\n */\nconst fairmintBlue: MantineColorsTuple = [\n \"#e6f0ff\",\n \"#cce0ff\",\n \"#99c2ff\",\n \"#66a3ff\",\n \"#3385ff\",\n \"#0A4EFB\",\n \"#083ec9\",\n \"#062e97\",\n \"#041f64\",\n \"#020f32\",\n];\n\n/**\n * Fairmint brand purple — accent color for gradients and brand elements.\n * Shade [5] (#9E03FF) is the primary brand purple.\n *\n * NOTE: design/README.md lists #6739FD as Fairmint Purple.\n * This library uses #9E03FF (production value from investorv2).\n */\nconst fairmintPurple: MantineColorsTuple = [\n \"#f5e6ff\",\n \"#e6ccff\",\n \"#cc99ff\",\n \"#b366ff\",\n \"#9933ff\",\n \"#9E03FF\",\n \"#7e02cc\",\n \"#5f0299\",\n \"#3f0166\",\n \"#200133\",\n];\n\nconst success: MantineColorsTuple = [\n \"#F0FDF9\",\n \"#D1FAE5\",\n \"#A7F3D0\",\n \"#6EE7B7\",\n \"#34D399\",\n \"#10B981\",\n \"#059669\",\n \"#047857\",\n \"#065F46\",\n \"#134E48\",\n];\n\nconst warning: MantineColorsTuple = [\n \"#FFFAEB\",\n \"#FEF0C7\",\n \"#FEDF89\",\n \"#FEC84B\",\n \"#FDB022\",\n \"#F79009\",\n \"#DC6803\",\n \"#B54708\",\n \"#93370D\",\n \"#7A2E0E\",\n];\n\nconst error: MantineColorsTuple = [\n \"#FEF3F2\",\n \"#FEE4E2\",\n \"#FECDCA\",\n \"#FDA29B\",\n \"#F97066\",\n \"#F04438\",\n \"#D92D20\",\n \"#B42318\",\n \"#912018\",\n \"#7A271A\",\n];\n\nconst info: MantineColorsTuple = [\n \"#ECFDFF\",\n \"#CFF9FE\",\n \"#A5F0FC\",\n \"#67E3F9\",\n \"#22CCEE\",\n \"#06AED4\",\n \"#088AB2\",\n \"#0E7090\",\n \"#155B75\",\n \"#164C63\",\n];\n\n/**\n * Typography constants — single source of truth for font families.\n * Use these instead of var(--mantine-font-family-*) in component code.\n * Declared before createTheme so the theme itself references them.\n */\nexport const typography = {\n fontFamily:\n '\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\"',\n headingFontFamily: '\"Plus Jakarta Sans\", sans-serif',\n} as const;\n\nexport const theme = createTheme({\n primaryColor: \"indigo\",\n colors: { indigo, gray: neutral, fairmintBlue, fairmintPurple, success, warning, error, info },\n\n fontFamily: typography.fontFamily,\n headings: {\n fontFamily: typography.headingFontFamily,\n fontWeight: \"700\",\n },\n\n radius: radii,\n defaultRadius: \"md\",\n spacing,\n fontSizes: {\n xs: fontSizes.xs,\n sm: fontSizes.sm,\n md: fontSizes.md,\n lg: fontSizes.lg,\n xl: fontSizes.xl,\n },\n\n breakpoints: {\n xs: \"30em\",\n sm: \"48em\",\n md: \"64em\",\n lg: \"74em\",\n xl: \"90em\",\n },\n\n components: {\n Button: {\n defaultProps: { size: \"md\" },\n styles: {\n root: {\n fontWeight: 600,\n borderRadius: \"0.75rem\",\n textTransform: \"none\" as const,\n },\n },\n },\n TextInput: {\n defaultProps: { size: \"md\" },\n },\n Card: {\n defaultProps: {\n padding: \"lg\",\n radius: \"xl\",\n withBorder: true,\n },\n },\n Paper: {\n styles: {\n root: { backgroundImage: \"none\" },\n },\n },\n Table: {\n styles: {\n thead: {\n fontSize: \"0.75rem\",\n fontWeight: 600,\n letterSpacing: \"0.5px\",\n textTransform: \"uppercase\" as const,\n },\n },\n },\n Modal: {\n styles: {\n title: {\n fontSize: fontSizes.lg,\n fontWeight: 700,\n lineHeight: 1.3,\n },\n },\n },\n },\n});\n\n/**\n * Fairmint CSS variables resolver for MantineProvider.\n * Publishes --fairmint-* custom properties so components never reference\n * --mantine-* variables directly. All light/dark switching is centralised here.\n */\nexport const fairmintCssVariables: CSSVariablesResolver = () => ({\n variables: {\n \"--fairmint-font-headings\": typography.headingFontFamily,\n \"--fairmint-font-body\": typography.fontFamily,\n \"--fairmint-interactive-focus-ring\": indigo[5],\n },\n light: {\n \"--fairmint-watermark-color\": neutral[1],\n \"--fairmint-color-text-primary\": neutral[9],\n \"--fairmint-color-text-secondary\": neutral[5],\n \"--fairmint-color-text-tertiary\": neutral[4],\n \"--fairmint-color-surface-selected\": indigo[0],\n \"--fairmint-interactive-hover-shadow\": `0 2px 6px ${neutral[9]}0F`,\n \"--fairmint-interactive-hover-bg\": neutral[0],\n },\n dark: {\n \"--fairmint-watermark-color\": neutral[7],\n \"--fairmint-color-text-primary\": neutral[0],\n \"--fairmint-color-text-secondary\": neutral[4],\n \"--fairmint-color-text-tertiary\": neutral[5],\n \"--fairmint-color-surface-selected\": indigo[9],\n \"--fairmint-interactive-hover-shadow\": `0 2px 6px ${neutral[0]}1A`,\n \"--fairmint-interactive-hover-bg\": neutral[8],\n },\n});\n\n/**\n * Typed JS references to every --fairmint-* CSS custom property.\n * Use these in component code instead of raw \"var(--fairmint-...)\" strings so\n * that renaming a token requires one change here rather than hunting every file.\n *\n * Each value includes a CSS fallback derived from the light-mode token value so\n * that components degrade gracefully when cssVariablesResolver is not wired up\n * (e.g. bare MantineProvider in tests or custom setups). Dark-mode fidelity is\n * lost without the resolver, but nothing renders invisibly.\n */\nexport const fairmintVars = {\n /** Primary body/heading text — titles on tinted surfaces (Chip Banner). */\n colorTextPrimary: `var(--fairmint-color-text-primary, ${neutral[9]})`,\n /** Secondary / muted text — subtitles, supporting labels. Adapts to color scheme. */\n colorTextSecondary: `var(--fairmint-color-text-secondary, ${neutral[5]})`,\n /** Tertiary / faint text — timestamps, metadata. Adapts to color scheme. */\n colorTextTertiary: `var(--fairmint-color-text-tertiary, ${neutral[4]})`,\n /** Background tint for selected / active rows. Adapts to color scheme. */\n colorSurfaceSelected: `var(--fairmint-color-surface-selected, ${indigo[0]})`,\n /** Large decorative watermark on error/empty pages. Adapts to color scheme. */\n watermarkColor: `var(--fairmint-watermark-color, ${neutral[1]})`,\n /** Heading font family (Plus Jakarta Sans). */\n fontHeadings: `var(--fairmint-font-headings, ${typography.headingFontFamily})`,\n /** Body font family (Inter). */\n fontBody: `var(--fairmint-font-body, ${typography.fontFamily})`,\n} as const;\n\n/**\n * Returns the MantineProvider props required to use @fairmint/ui components.\n * Use this when you need to instantiate MantineProvider directly (e.g. in\n * Storybook decorators or server-rendering setups) instead of FairmintProvider.\n *\n * @example\n * ```tsx\n * import { MantineProvider } from \"@mantine/core\";\n * import { createFairmintMantineProviderProps } from \"@fairmint/ui\";\n *\n * <MantineProvider {...createFairmintMantineProviderProps()}>\n * <App />\n * </MantineProvider>\n * ```\n */\nexport function createFairmintMantineProviderProps(\n colorScheme: \"light\" | \"dark\" | \"auto\" = \"light\",\n) {\n return {\n theme,\n cssVariablesResolver: fairmintCssVariables,\n defaultColorScheme: colorScheme,\n } as const;\n}\n\n/** Brand colors for gradients and custom styling. */\nexport const brandColors = {\n blue: \"#0A4EFB\",\n purple: \"#9E03FF\",\n indigo: \"#6366F1\",\n gradient: \"linear-gradient(90deg, #0A4EFB 0%, #9E03FF 100%)\",\n} as const;\n\nexport const commonColors = {\n black: \"#000000\",\n white: \"#ffffff\",\n} as const;\n\n/**\n * Card/row shadow used by WalletList and similar card surfaces.\n * Equivalent to neutralColors[900] at ~10% opacity (#111927 → #1119271A).\n */\nexport const shadowColor = {\n card: \"#1119271A\",\n} as const;\n\n/** Neutral scale for direct access outside Mantine's theme system. Keys are numeric literals. */\nexport const neutralColors = {\n 50: \"#F8F9FA\",\n 100: \"#F3F4F6\",\n 200: \"#E5E7EB\",\n 300: \"#D2D6DB\",\n 400: \"#9DA4AE\",\n 500: \"#6C737F\",\n 600: \"#4D5761\",\n 700: \"#2F3746\",\n 800: \"#1C2536\",\n 900: \"#111927\",\n} as const;\n\n/** Semantic colors for status-based styling. */\nexport const semanticColors = {\n success: \"#10B981\",\n warning: \"#F79009\",\n error: \"#F04438\",\n info: \"#06AED4\",\n} as const;\n\nexport type { AvatarPaletteColor, FairmintColor } from \"./colors\";\nexport { AVATAR_PALETTE, colors } from \"./colors\";\nexport type { FairmintFontSize } from \"./fontSizes\";\nexport { fontSizes } from \"./fontSizes\";\nexport { DEFAULT_FAIRMINT_LOGO_SRC } from \"./logo\";\nexport type { FairmintSpacing } from \"./spacing\";\nexport { spacing } from \"./spacing\";\nexport { overlayZIndexAboveLegacyShell } from \"./zIndex\";\n"],"names":["createTheme","spacing","fontSizes"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../src/theme/index.ts"],"sourcesContent":["import { type CSSVariablesResolver, createTheme, type MantineColorsTuple } from \"@mantine/core\";\nimport { fontSizes } from \"./fontSizes\";\nimport { spacing } from \"./spacing\";\n\n/**\n * Fairmint radius scale — single source of truth used by both the Mantine\n * theme config and the exported `radii` constant. Edit here; both stay in sync.\n */\nexport const radii = {\n xs: \"0.25rem\",\n sm: \"0.375rem\",\n md: \"0.5rem\",\n lg: \"0.75rem\",\n xl: \"1rem\",\n} as const;\n\n/**\n * Indigo palette — primary UI color.\n * Used for buttons, links, active navigation, focus rings.\n * Shade [5] (#6366F1) is the default primary.\n */\nconst indigo: MantineColorsTuple = [\n \"#EEF2FF\",\n \"#E0E7FF\",\n \"#C7D2FE\",\n \"#A5B4FC\",\n \"#818CF8\",\n \"#6366F1\",\n \"#4F46E5\",\n \"#4338CA\",\n \"#3730A3\",\n \"#312E81\",\n];\n\n/**\n * Neutral scale — replaces Mantine's default gray.\n * Used for text, borders, backgrounds, disabled states.\n */\nconst neutral: MantineColorsTuple = [\n \"#F8F9FA\",\n \"#F3F4F6\",\n \"#E5E7EB\",\n \"#D2D6DB\",\n \"#9DA4AE\",\n \"#6C737F\",\n \"#4D5761\",\n \"#2F3746\",\n \"#1C2536\",\n \"#111927\",\n];\n\n/**\n * Fairmint brand blue — accent color for gradients and brand elements.\n * Shade [5] (#0A4EFB) is the primary brand blue.\n *\n * NOTE: design/README.md lists #2D00F7 as Fairmint Blue.\n * This library uses #0A4EFB (production value from investorv2).\n */\nconst fairmintBlue: MantineColorsTuple = [\n \"#e6f0ff\",\n \"#cce0ff\",\n \"#99c2ff\",\n \"#66a3ff\",\n \"#3385ff\",\n \"#0A4EFB\",\n \"#083ec9\",\n \"#062e97\",\n \"#041f64\",\n \"#020f32\",\n];\n\n/**\n * Fairmint brand purple — accent color for gradients and brand elements.\n * Shade [5] (#9E03FF) is the primary brand purple.\n *\n * NOTE: design/README.md lists #6739FD as Fairmint Purple.\n * This library uses #9E03FF (production value from investorv2).\n */\nconst fairmintPurple: MantineColorsTuple = [\n \"#f5e6ff\",\n \"#e6ccff\",\n \"#cc99ff\",\n \"#b366ff\",\n \"#9933ff\",\n \"#9E03FF\",\n \"#7e02cc\",\n \"#5f0299\",\n \"#3f0166\",\n \"#200133\",\n];\n\nconst success: MantineColorsTuple = [\n \"#F0FDF9\",\n \"#D1FAE5\",\n \"#A7F3D0\",\n \"#6EE7B7\",\n \"#34D399\",\n \"#10B981\",\n \"#059669\",\n \"#047857\",\n \"#065F46\",\n \"#134E48\",\n];\n\nconst warning: MantineColorsTuple = [\n \"#FFFAEB\",\n \"#FEF0C7\",\n \"#FEDF89\",\n \"#FEC84B\",\n \"#FDB022\",\n \"#F79009\",\n \"#DC6803\",\n \"#B54708\",\n \"#93370D\",\n \"#7A2E0E\",\n];\n\nconst error: MantineColorsTuple = [\n \"#FEF3F2\",\n \"#FEE4E2\",\n \"#FECDCA\",\n \"#FDA29B\",\n \"#F97066\",\n \"#F04438\",\n \"#D92D20\",\n \"#B42318\",\n \"#912018\",\n \"#7A271A\",\n];\n\nconst info: MantineColorsTuple = [\n \"#ECFDFF\",\n \"#CFF9FE\",\n \"#A5F0FC\",\n \"#67E3F9\",\n \"#22CCEE\",\n \"#06AED4\",\n \"#088AB2\",\n \"#0E7090\",\n \"#155B75\",\n \"#164C63\",\n];\n\n/**\n * Typography constants — single source of truth for font families.\n * Use these instead of var(--mantine-font-family-*) in component code.\n * Declared before createTheme so the theme itself references them.\n */\nexport const typography = {\n fontFamily:\n '\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\"',\n headingFontFamily: '\"Plus Jakarta Sans\", sans-serif',\n} as const;\n\nexport const theme = createTheme({\n primaryColor: \"indigo\",\n colors: { indigo, gray: neutral, fairmintBlue, fairmintPurple, success, warning, error, info },\n\n fontFamily: typography.fontFamily,\n headings: {\n fontFamily: typography.headingFontFamily,\n fontWeight: \"700\",\n },\n\n radius: radii,\n defaultRadius: \"md\",\n spacing,\n fontSizes: {\n xs: fontSizes.xs,\n sm: fontSizes.sm,\n md: fontSizes.md,\n lg: fontSizes.lg,\n xl: fontSizes.xl,\n },\n\n breakpoints: {\n xs: \"30em\",\n sm: \"48em\",\n md: \"64em\",\n lg: \"74em\",\n xl: \"90em\",\n },\n\n components: {\n Button: {\n defaultProps: { size: \"md\" },\n styles: {\n root: {\n fontWeight: 600,\n borderRadius: \"0.75rem\",\n textTransform: \"none\" as const,\n },\n },\n },\n TextInput: {\n defaultProps: { size: \"md\" },\n },\n Card: {\n defaultProps: {\n padding: \"lg\",\n radius: \"xl\",\n withBorder: true,\n },\n },\n Paper: {\n styles: {\n root: { backgroundImage: \"none\" },\n },\n },\n Table: {\n styles: {\n thead: {\n fontSize: \"0.75rem\",\n fontWeight: 600,\n letterSpacing: \"0.5px\",\n textTransform: \"uppercase\" as const,\n },\n },\n },\n Modal: {\n styles: {\n title: {\n fontSize: fontSizes.lg,\n fontWeight: 700,\n lineHeight: 1.3,\n },\n },\n },\n },\n});\n\n/**\n * Fairmint CSS variables resolver for MantineProvider.\n * Publishes --fairmint-* custom properties so components never reference\n * --mantine-* variables directly. All light/dark switching is centralised here.\n */\nexport const fairmintCssVariables: CSSVariablesResolver = () => ({\n variables: {\n \"--fairmint-font-headings\": typography.headingFontFamily,\n \"--fairmint-font-body\": typography.fontFamily,\n \"--fairmint-interactive-focus-ring\": indigo[5],\n },\n light: {\n \"--fairmint-watermark-color\": neutral[1],\n \"--fairmint-color-text-primary\": neutral[9],\n \"--fairmint-color-text-secondary\": neutral[5],\n \"--fairmint-color-text-tertiary\": neutral[4],\n \"--fairmint-color-surface-selected\": indigo[0],\n \"--fairmint-interactive-hover-shadow\": `0 2px 6px ${neutral[9]}0F`,\n \"--fairmint-interactive-hover-bg\": neutral[0],\n },\n dark: {\n \"--fairmint-watermark-color\": neutral[7],\n \"--fairmint-color-text-primary\": neutral[0],\n \"--fairmint-color-text-secondary\": neutral[4],\n \"--fairmint-color-text-tertiary\": neutral[5],\n \"--fairmint-color-surface-selected\": indigo[9],\n \"--fairmint-interactive-hover-shadow\": `0 2px 6px ${neutral[0]}1A`,\n \"--fairmint-interactive-hover-bg\": neutral[8],\n },\n});\n\n/**\n * Typed JS references to every --fairmint-* CSS custom property.\n * Use these in component code instead of raw \"var(--fairmint-...)\" strings so\n * that renaming a token requires one change here rather than hunting every file.\n *\n * Each value includes a CSS fallback derived from the light-mode token value so\n * that components degrade gracefully when cssVariablesResolver is not wired up\n * (e.g. bare MantineProvider in tests or custom setups). Dark-mode fidelity is\n * lost without the resolver, but nothing renders invisibly.\n */\nexport const fairmintVars = {\n /** Primary body/heading text — titles on tinted surfaces (Chip Banner). */\n colorTextPrimary: `var(--fairmint-color-text-primary, ${neutral[9]})`,\n /** Secondary / muted text — subtitles, supporting labels. Adapts to color scheme. */\n colorTextSecondary: `var(--fairmint-color-text-secondary, ${neutral[5]})`,\n /** Tertiary / faint text — timestamps, metadata. Adapts to color scheme. */\n colorTextTertiary: `var(--fairmint-color-text-tertiary, ${neutral[4]})`,\n /** Background tint for selected / active rows. Adapts to color scheme. */\n colorSurfaceSelected: `var(--fairmint-color-surface-selected, ${indigo[0]})`,\n /** Large decorative watermark on error/empty pages. Adapts to color scheme. */\n watermarkColor: `var(--fairmint-watermark-color, ${neutral[1]})`,\n /** Heading font family (Plus Jakarta Sans). */\n fontHeadings: `var(--fairmint-font-headings, ${typography.headingFontFamily})`,\n /** Body font family (Inter). */\n fontBody: `var(--fairmint-font-body, ${typography.fontFamily})`,\n} as const;\n\n/**\n * Returns the MantineProvider props required to use @fairmint/ui components.\n * Use this when you need to instantiate MantineProvider directly (e.g. in\n * Storybook decorators or server-rendering setups) instead of FairmintProvider.\n *\n * @example\n * ```tsx\n * import { MantineProvider } from \"@mantine/core\";\n * import { createFairmintMantineProviderProps } from \"@fairmint/ui\";\n *\n * <MantineProvider {...createFairmintMantineProviderProps()}>\n * <App />\n * </MantineProvider>\n * ```\n */\nexport function createFairmintMantineProviderProps(\n colorScheme: \"light\" | \"dark\" | \"auto\" = \"light\",\n) {\n return {\n theme,\n cssVariablesResolver: fairmintCssVariables,\n defaultColorScheme: colorScheme,\n } as const;\n}\n\n/** Brand colors for gradients and custom styling. */\nexport const brandColors = {\n blue: \"#0A4EFB\",\n purple: \"#9E03FF\",\n indigo: \"#6366F1\",\n gradient: \"linear-gradient(90deg, #0A4EFB 0%, #9E03FF 100%)\",\n} as const;\n\nexport const commonColors = {\n black: \"#000000\",\n white: \"#ffffff\",\n} as const;\n\n/**\n * Card/row shadow used by WalletList and similar card surfaces.\n * Equivalent to neutralColors[900] at ~10% opacity (#111927 → #1119271A).\n */\nexport const shadowColor = {\n card: \"#1119271A\",\n} as const;\n\n/** Neutral scale for direct access outside Mantine's theme system. Keys are numeric literals. */\nexport const neutralColors = {\n 50: \"#F8F9FA\",\n 100: \"#F3F4F6\",\n 200: \"#E5E7EB\",\n 300: \"#D2D6DB\",\n 400: \"#9DA4AE\",\n 500: \"#6C737F\",\n 600: \"#4D5761\",\n 700: \"#2F3746\",\n 800: \"#1C2536\",\n 900: \"#111927\",\n} as const;\n\n/** Semantic colors for status-based styling. */\nexport const semanticColors = {\n success: \"#10B981\",\n warning: \"#F79009\",\n error: \"#F04438\",\n info: \"#06AED4\",\n} as const;\n\nexport type { AvatarPaletteColor, FairmintColor } from \"./colors\";\nexport { AVATAR_PALETTE, colors } from \"./colors\";\nexport type { FairmintFontSize } from \"./fontSizes\";\nexport { fontSizes } from \"./fontSizes\";\nexport { DEFAULT_FAIRMINT_LOGO_SRC } from \"./logo\";\nexport type { FairmintResponsiveTypography } from \"./responsiveTypography\";\nexport { responsiveTypography } from \"./responsiveTypography\";\nexport type { FairmintSpacing } from \"./spacing\";\nexport { spacing } from \"./spacing\";\nexport { overlayZIndexAboveLegacyShell } from \"./zIndex\";\n"],"names":["createTheme","spacing","fontSizes"],"mappings":"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"}
|
package/dist/theme/index.d.ts
CHANGED
|
@@ -395,6 +395,8 @@ export { AVATAR_PALETTE, colors } from './colors';
|
|
|
395
395
|
export type { FairmintFontSize } from './fontSizes';
|
|
396
396
|
export { fontSizes } from './fontSizes';
|
|
397
397
|
export { DEFAULT_FAIRMINT_LOGO_SRC } from './logo';
|
|
398
|
+
export type { FairmintResponsiveTypography } from './responsiveTypography';
|
|
399
|
+
export { responsiveTypography } from './responsiveTypography';
|
|
398
400
|
export type { FairmintSpacing } from './spacing';
|
|
399
401
|
export { spacing } from './spacing';
|
|
400
402
|
export { overlayZIndexAboveLegacyShell } from './zIndex';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAe,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAIhG;;;GAGG;AACH,eAAO,MAAM,KAAK;;;;;;CAMR,CAAC;AAiIX;;;;GAIG;AACH,eAAO,MAAM,UAAU;;;CAIb,CAAC;AAEX,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2EhB,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,oBAwBjC,CAAC;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY;IACvB,2EAA2E;;IAE3E,qFAAqF;;IAErF,4EAA4E;;IAE5E,0EAA0E;;IAE1E,+EAA+E;;IAE/E,+CAA+C;;IAE/C,gCAAgC;;CAExB,CAAC;AAEX;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kCAAkC,CAChD,WAAW,GAAE,OAAO,GAAG,MAAM,GAAG,MAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOjD;AAED,qDAAqD;AACrD,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,eAAO,MAAM,YAAY;;;CAGf,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,WAAW;;CAEd,CAAC;AAEX,iGAAiG;AACjG,eAAO,MAAM,aAAa;;;;;;;;;;;CAWhB,CAAC;AAEX,gDAAgD;AAChD,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,yBAAyB,EAAE,MAAM,QAAQ,CAAC;AACnD,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,6BAA6B,EAAE,MAAM,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAe,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAIhG;;;GAGG;AACH,eAAO,MAAM,KAAK;;;;;;CAMR,CAAC;AAiIX;;;;GAIG;AACH,eAAO,MAAM,UAAU;;;CAIb,CAAC;AAEX,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2EhB,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,oBAwBjC,CAAC;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY;IACvB,2EAA2E;;IAE3E,qFAAqF;;IAErF,4EAA4E;;IAE5E,0EAA0E;;IAE1E,+EAA+E;;IAE/E,+CAA+C;;IAE/C,gCAAgC;;CAExB,CAAC;AAEX;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kCAAkC,CAChD,WAAW,GAAE,OAAO,GAAG,MAAM,GAAG,MAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOjD;AAED,qDAAqD;AACrD,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,eAAO,MAAM,YAAY;;;CAGf,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,WAAW;;CAEd,CAAC;AAEX,iGAAiG;AACjG,eAAO,MAAM,aAAa;;;;;;;;;;;CAWhB,CAAC;AAEX,gDAAgD;AAChD,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,yBAAyB,EAAE,MAAM,QAAQ,CAAC;AACnD,YAAY,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,6BAA6B,EAAE,MAAM,UAAU,CAAC"}
|
package/dist/theme/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/theme/index.ts"],"sourcesContent":["import { type CSSVariablesResolver, createTheme, type MantineColorsTuple } from \"@mantine/core\";\nimport { fontSizes } from \"./fontSizes\";\nimport { spacing } from \"./spacing\";\n\n/**\n * Fairmint radius scale — single source of truth used by both the Mantine\n * theme config and the exported `radii` constant. Edit here; both stay in sync.\n */\nexport const radii = {\n xs: \"0.25rem\",\n sm: \"0.375rem\",\n md: \"0.5rem\",\n lg: \"0.75rem\",\n xl: \"1rem\",\n} as const;\n\n/**\n * Indigo palette — primary UI color.\n * Used for buttons, links, active navigation, focus rings.\n * Shade [5] (#6366F1) is the default primary.\n */\nconst indigo: MantineColorsTuple = [\n \"#EEF2FF\",\n \"#E0E7FF\",\n \"#C7D2FE\",\n \"#A5B4FC\",\n \"#818CF8\",\n \"#6366F1\",\n \"#4F46E5\",\n \"#4338CA\",\n \"#3730A3\",\n \"#312E81\",\n];\n\n/**\n * Neutral scale — replaces Mantine's default gray.\n * Used for text, borders, backgrounds, disabled states.\n */\nconst neutral: MantineColorsTuple = [\n \"#F8F9FA\",\n \"#F3F4F6\",\n \"#E5E7EB\",\n \"#D2D6DB\",\n \"#9DA4AE\",\n \"#6C737F\",\n \"#4D5761\",\n \"#2F3746\",\n \"#1C2536\",\n \"#111927\",\n];\n\n/**\n * Fairmint brand blue — accent color for gradients and brand elements.\n * Shade [5] (#0A4EFB) is the primary brand blue.\n *\n * NOTE: design/README.md lists #2D00F7 as Fairmint Blue.\n * This library uses #0A4EFB (production value from investorv2).\n */\nconst fairmintBlue: MantineColorsTuple = [\n \"#e6f0ff\",\n \"#cce0ff\",\n \"#99c2ff\",\n \"#66a3ff\",\n \"#3385ff\",\n \"#0A4EFB\",\n \"#083ec9\",\n \"#062e97\",\n \"#041f64\",\n \"#020f32\",\n];\n\n/**\n * Fairmint brand purple — accent color for gradients and brand elements.\n * Shade [5] (#9E03FF) is the primary brand purple.\n *\n * NOTE: design/README.md lists #6739FD as Fairmint Purple.\n * This library uses #9E03FF (production value from investorv2).\n */\nconst fairmintPurple: MantineColorsTuple = [\n \"#f5e6ff\",\n \"#e6ccff\",\n \"#cc99ff\",\n \"#b366ff\",\n \"#9933ff\",\n \"#9E03FF\",\n \"#7e02cc\",\n \"#5f0299\",\n \"#3f0166\",\n \"#200133\",\n];\n\nconst success: MantineColorsTuple = [\n \"#F0FDF9\",\n \"#D1FAE5\",\n \"#A7F3D0\",\n \"#6EE7B7\",\n \"#34D399\",\n \"#10B981\",\n \"#059669\",\n \"#047857\",\n \"#065F46\",\n \"#134E48\",\n];\n\nconst warning: MantineColorsTuple = [\n \"#FFFAEB\",\n \"#FEF0C7\",\n \"#FEDF89\",\n \"#FEC84B\",\n \"#FDB022\",\n \"#F79009\",\n \"#DC6803\",\n \"#B54708\",\n \"#93370D\",\n \"#7A2E0E\",\n];\n\nconst error: MantineColorsTuple = [\n \"#FEF3F2\",\n \"#FEE4E2\",\n \"#FECDCA\",\n \"#FDA29B\",\n \"#F97066\",\n \"#F04438\",\n \"#D92D20\",\n \"#B42318\",\n \"#912018\",\n \"#7A271A\",\n];\n\nconst info: MantineColorsTuple = [\n \"#ECFDFF\",\n \"#CFF9FE\",\n \"#A5F0FC\",\n \"#67E3F9\",\n \"#22CCEE\",\n \"#06AED4\",\n \"#088AB2\",\n \"#0E7090\",\n \"#155B75\",\n \"#164C63\",\n];\n\n/**\n * Typography constants — single source of truth for font families.\n * Use these instead of var(--mantine-font-family-*) in component code.\n * Declared before createTheme so the theme itself references them.\n */\nexport const typography = {\n fontFamily:\n '\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\"',\n headingFontFamily: '\"Plus Jakarta Sans\", sans-serif',\n} as const;\n\nexport const theme = createTheme({\n primaryColor: \"indigo\",\n colors: { indigo, gray: neutral, fairmintBlue, fairmintPurple, success, warning, error, info },\n\n fontFamily: typography.fontFamily,\n headings: {\n fontFamily: typography.headingFontFamily,\n fontWeight: \"700\",\n },\n\n radius: radii,\n defaultRadius: \"md\",\n spacing,\n fontSizes: {\n xs: fontSizes.xs,\n sm: fontSizes.sm,\n md: fontSizes.md,\n lg: fontSizes.lg,\n xl: fontSizes.xl,\n },\n\n breakpoints: {\n xs: \"30em\",\n sm: \"48em\",\n md: \"64em\",\n lg: \"74em\",\n xl: \"90em\",\n },\n\n components: {\n Button: {\n defaultProps: { size: \"md\" },\n styles: {\n root: {\n fontWeight: 600,\n borderRadius: \"0.75rem\",\n textTransform: \"none\" as const,\n },\n },\n },\n TextInput: {\n defaultProps: { size: \"md\" },\n },\n Card: {\n defaultProps: {\n padding: \"lg\",\n radius: \"xl\",\n withBorder: true,\n },\n },\n Paper: {\n styles: {\n root: { backgroundImage: \"none\" },\n },\n },\n Table: {\n styles: {\n thead: {\n fontSize: \"0.75rem\",\n fontWeight: 600,\n letterSpacing: \"0.5px\",\n textTransform: \"uppercase\" as const,\n },\n },\n },\n Modal: {\n styles: {\n title: {\n fontSize: fontSizes.lg,\n fontWeight: 700,\n lineHeight: 1.3,\n },\n },\n },\n },\n});\n\n/**\n * Fairmint CSS variables resolver for MantineProvider.\n * Publishes --fairmint-* custom properties so components never reference\n * --mantine-* variables directly. All light/dark switching is centralised here.\n */\nexport const fairmintCssVariables: CSSVariablesResolver = () => ({\n variables: {\n \"--fairmint-font-headings\": typography.headingFontFamily,\n \"--fairmint-font-body\": typography.fontFamily,\n \"--fairmint-interactive-focus-ring\": indigo[5],\n },\n light: {\n \"--fairmint-watermark-color\": neutral[1],\n \"--fairmint-color-text-primary\": neutral[9],\n \"--fairmint-color-text-secondary\": neutral[5],\n \"--fairmint-color-text-tertiary\": neutral[4],\n \"--fairmint-color-surface-selected\": indigo[0],\n \"--fairmint-interactive-hover-shadow\": `0 2px 6px ${neutral[9]}0F`,\n \"--fairmint-interactive-hover-bg\": neutral[0],\n },\n dark: {\n \"--fairmint-watermark-color\": neutral[7],\n \"--fairmint-color-text-primary\": neutral[0],\n \"--fairmint-color-text-secondary\": neutral[4],\n \"--fairmint-color-text-tertiary\": neutral[5],\n \"--fairmint-color-surface-selected\": indigo[9],\n \"--fairmint-interactive-hover-shadow\": `0 2px 6px ${neutral[0]}1A`,\n \"--fairmint-interactive-hover-bg\": neutral[8],\n },\n});\n\n/**\n * Typed JS references to every --fairmint-* CSS custom property.\n * Use these in component code instead of raw \"var(--fairmint-...)\" strings so\n * that renaming a token requires one change here rather than hunting every file.\n *\n * Each value includes a CSS fallback derived from the light-mode token value so\n * that components degrade gracefully when cssVariablesResolver is not wired up\n * (e.g. bare MantineProvider in tests or custom setups). Dark-mode fidelity is\n * lost without the resolver, but nothing renders invisibly.\n */\nexport const fairmintVars = {\n /** Primary body/heading text — titles on tinted surfaces (Chip Banner). */\n colorTextPrimary: `var(--fairmint-color-text-primary, ${neutral[9]})`,\n /** Secondary / muted text — subtitles, supporting labels. Adapts to color scheme. */\n colorTextSecondary: `var(--fairmint-color-text-secondary, ${neutral[5]})`,\n /** Tertiary / faint text — timestamps, metadata. Adapts to color scheme. */\n colorTextTertiary: `var(--fairmint-color-text-tertiary, ${neutral[4]})`,\n /** Background tint for selected / active rows. Adapts to color scheme. */\n colorSurfaceSelected: `var(--fairmint-color-surface-selected, ${indigo[0]})`,\n /** Large decorative watermark on error/empty pages. Adapts to color scheme. */\n watermarkColor: `var(--fairmint-watermark-color, ${neutral[1]})`,\n /** Heading font family (Plus Jakarta Sans). */\n fontHeadings: `var(--fairmint-font-headings, ${typography.headingFontFamily})`,\n /** Body font family (Inter). */\n fontBody: `var(--fairmint-font-body, ${typography.fontFamily})`,\n} as const;\n\n/**\n * Returns the MantineProvider props required to use @fairmint/ui components.\n * Use this when you need to instantiate MantineProvider directly (e.g. in\n * Storybook decorators or server-rendering setups) instead of FairmintProvider.\n *\n * @example\n * ```tsx\n * import { MantineProvider } from \"@mantine/core\";\n * import { createFairmintMantineProviderProps } from \"@fairmint/ui\";\n *\n * <MantineProvider {...createFairmintMantineProviderProps()}>\n * <App />\n * </MantineProvider>\n * ```\n */\nexport function createFairmintMantineProviderProps(\n colorScheme: \"light\" | \"dark\" | \"auto\" = \"light\",\n) {\n return {\n theme,\n cssVariablesResolver: fairmintCssVariables,\n defaultColorScheme: colorScheme,\n } as const;\n}\n\n/** Brand colors for gradients and custom styling. */\nexport const brandColors = {\n blue: \"#0A4EFB\",\n purple: \"#9E03FF\",\n indigo: \"#6366F1\",\n gradient: \"linear-gradient(90deg, #0A4EFB 0%, #9E03FF 100%)\",\n} as const;\n\nexport const commonColors = {\n black: \"#000000\",\n white: \"#ffffff\",\n} as const;\n\n/**\n * Card/row shadow used by WalletList and similar card surfaces.\n * Equivalent to neutralColors[900] at ~10% opacity (#111927 → #1119271A).\n */\nexport const shadowColor = {\n card: \"#1119271A\",\n} as const;\n\n/** Neutral scale for direct access outside Mantine's theme system. Keys are numeric literals. */\nexport const neutralColors = {\n 50: \"#F8F9FA\",\n 100: \"#F3F4F6\",\n 200: \"#E5E7EB\",\n 300: \"#D2D6DB\",\n 400: \"#9DA4AE\",\n 500: \"#6C737F\",\n 600: \"#4D5761\",\n 700: \"#2F3746\",\n 800: \"#1C2536\",\n 900: \"#111927\",\n} as const;\n\n/** Semantic colors for status-based styling. */\nexport const semanticColors = {\n success: \"#10B981\",\n warning: \"#F79009\",\n error: \"#F04438\",\n info: \"#06AED4\",\n} as const;\n\nexport type { AvatarPaletteColor, FairmintColor } from \"./colors\";\nexport { AVATAR_PALETTE, colors } from \"./colors\";\nexport type { FairmintFontSize } from \"./fontSizes\";\nexport { fontSizes } from \"./fontSizes\";\nexport { DEFAULT_FAIRMINT_LOGO_SRC } from \"./logo\";\nexport type { FairmintSpacing } from \"./spacing\";\nexport { spacing } from \"./spacing\";\nexport { overlayZIndexAboveLegacyShell } from \"./zIndex\";\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/theme/index.ts"],"sourcesContent":["import { type CSSVariablesResolver, createTheme, type MantineColorsTuple } from \"@mantine/core\";\nimport { fontSizes } from \"./fontSizes\";\nimport { spacing } from \"./spacing\";\n\n/**\n * Fairmint radius scale — single source of truth used by both the Mantine\n * theme config and the exported `radii` constant. Edit here; both stay in sync.\n */\nexport const radii = {\n xs: \"0.25rem\",\n sm: \"0.375rem\",\n md: \"0.5rem\",\n lg: \"0.75rem\",\n xl: \"1rem\",\n} as const;\n\n/**\n * Indigo palette — primary UI color.\n * Used for buttons, links, active navigation, focus rings.\n * Shade [5] (#6366F1) is the default primary.\n */\nconst indigo: MantineColorsTuple = [\n \"#EEF2FF\",\n \"#E0E7FF\",\n \"#C7D2FE\",\n \"#A5B4FC\",\n \"#818CF8\",\n \"#6366F1\",\n \"#4F46E5\",\n \"#4338CA\",\n \"#3730A3\",\n \"#312E81\",\n];\n\n/**\n * Neutral scale — replaces Mantine's default gray.\n * Used for text, borders, backgrounds, disabled states.\n */\nconst neutral: MantineColorsTuple = [\n \"#F8F9FA\",\n \"#F3F4F6\",\n \"#E5E7EB\",\n \"#D2D6DB\",\n \"#9DA4AE\",\n \"#6C737F\",\n \"#4D5761\",\n \"#2F3746\",\n \"#1C2536\",\n \"#111927\",\n];\n\n/**\n * Fairmint brand blue — accent color for gradients and brand elements.\n * Shade [5] (#0A4EFB) is the primary brand blue.\n *\n * NOTE: design/README.md lists #2D00F7 as Fairmint Blue.\n * This library uses #0A4EFB (production value from investorv2).\n */\nconst fairmintBlue: MantineColorsTuple = [\n \"#e6f0ff\",\n \"#cce0ff\",\n \"#99c2ff\",\n \"#66a3ff\",\n \"#3385ff\",\n \"#0A4EFB\",\n \"#083ec9\",\n \"#062e97\",\n \"#041f64\",\n \"#020f32\",\n];\n\n/**\n * Fairmint brand purple — accent color for gradients and brand elements.\n * Shade [5] (#9E03FF) is the primary brand purple.\n *\n * NOTE: design/README.md lists #6739FD as Fairmint Purple.\n * This library uses #9E03FF (production value from investorv2).\n */\nconst fairmintPurple: MantineColorsTuple = [\n \"#f5e6ff\",\n \"#e6ccff\",\n \"#cc99ff\",\n \"#b366ff\",\n \"#9933ff\",\n \"#9E03FF\",\n \"#7e02cc\",\n \"#5f0299\",\n \"#3f0166\",\n \"#200133\",\n];\n\nconst success: MantineColorsTuple = [\n \"#F0FDF9\",\n \"#D1FAE5\",\n \"#A7F3D0\",\n \"#6EE7B7\",\n \"#34D399\",\n \"#10B981\",\n \"#059669\",\n \"#047857\",\n \"#065F46\",\n \"#134E48\",\n];\n\nconst warning: MantineColorsTuple = [\n \"#FFFAEB\",\n \"#FEF0C7\",\n \"#FEDF89\",\n \"#FEC84B\",\n \"#FDB022\",\n \"#F79009\",\n \"#DC6803\",\n \"#B54708\",\n \"#93370D\",\n \"#7A2E0E\",\n];\n\nconst error: MantineColorsTuple = [\n \"#FEF3F2\",\n \"#FEE4E2\",\n \"#FECDCA\",\n \"#FDA29B\",\n \"#F97066\",\n \"#F04438\",\n \"#D92D20\",\n \"#B42318\",\n \"#912018\",\n \"#7A271A\",\n];\n\nconst info: MantineColorsTuple = [\n \"#ECFDFF\",\n \"#CFF9FE\",\n \"#A5F0FC\",\n \"#67E3F9\",\n \"#22CCEE\",\n \"#06AED4\",\n \"#088AB2\",\n \"#0E7090\",\n \"#155B75\",\n \"#164C63\",\n];\n\n/**\n * Typography constants — single source of truth for font families.\n * Use these instead of var(--mantine-font-family-*) in component code.\n * Declared before createTheme so the theme itself references them.\n */\nexport const typography = {\n fontFamily:\n '\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\"',\n headingFontFamily: '\"Plus Jakarta Sans\", sans-serif',\n} as const;\n\nexport const theme = createTheme({\n primaryColor: \"indigo\",\n colors: { indigo, gray: neutral, fairmintBlue, fairmintPurple, success, warning, error, info },\n\n fontFamily: typography.fontFamily,\n headings: {\n fontFamily: typography.headingFontFamily,\n fontWeight: \"700\",\n },\n\n radius: radii,\n defaultRadius: \"md\",\n spacing,\n fontSizes: {\n xs: fontSizes.xs,\n sm: fontSizes.sm,\n md: fontSizes.md,\n lg: fontSizes.lg,\n xl: fontSizes.xl,\n },\n\n breakpoints: {\n xs: \"30em\",\n sm: \"48em\",\n md: \"64em\",\n lg: \"74em\",\n xl: \"90em\",\n },\n\n components: {\n Button: {\n defaultProps: { size: \"md\" },\n styles: {\n root: {\n fontWeight: 600,\n borderRadius: \"0.75rem\",\n textTransform: \"none\" as const,\n },\n },\n },\n TextInput: {\n defaultProps: { size: \"md\" },\n },\n Card: {\n defaultProps: {\n padding: \"lg\",\n radius: \"xl\",\n withBorder: true,\n },\n },\n Paper: {\n styles: {\n root: { backgroundImage: \"none\" },\n },\n },\n Table: {\n styles: {\n thead: {\n fontSize: \"0.75rem\",\n fontWeight: 600,\n letterSpacing: \"0.5px\",\n textTransform: \"uppercase\" as const,\n },\n },\n },\n Modal: {\n styles: {\n title: {\n fontSize: fontSizes.lg,\n fontWeight: 700,\n lineHeight: 1.3,\n },\n },\n },\n },\n});\n\n/**\n * Fairmint CSS variables resolver for MantineProvider.\n * Publishes --fairmint-* custom properties so components never reference\n * --mantine-* variables directly. All light/dark switching is centralised here.\n */\nexport const fairmintCssVariables: CSSVariablesResolver = () => ({\n variables: {\n \"--fairmint-font-headings\": typography.headingFontFamily,\n \"--fairmint-font-body\": typography.fontFamily,\n \"--fairmint-interactive-focus-ring\": indigo[5],\n },\n light: {\n \"--fairmint-watermark-color\": neutral[1],\n \"--fairmint-color-text-primary\": neutral[9],\n \"--fairmint-color-text-secondary\": neutral[5],\n \"--fairmint-color-text-tertiary\": neutral[4],\n \"--fairmint-color-surface-selected\": indigo[0],\n \"--fairmint-interactive-hover-shadow\": `0 2px 6px ${neutral[9]}0F`,\n \"--fairmint-interactive-hover-bg\": neutral[0],\n },\n dark: {\n \"--fairmint-watermark-color\": neutral[7],\n \"--fairmint-color-text-primary\": neutral[0],\n \"--fairmint-color-text-secondary\": neutral[4],\n \"--fairmint-color-text-tertiary\": neutral[5],\n \"--fairmint-color-surface-selected\": indigo[9],\n \"--fairmint-interactive-hover-shadow\": `0 2px 6px ${neutral[0]}1A`,\n \"--fairmint-interactive-hover-bg\": neutral[8],\n },\n});\n\n/**\n * Typed JS references to every --fairmint-* CSS custom property.\n * Use these in component code instead of raw \"var(--fairmint-...)\" strings so\n * that renaming a token requires one change here rather than hunting every file.\n *\n * Each value includes a CSS fallback derived from the light-mode token value so\n * that components degrade gracefully when cssVariablesResolver is not wired up\n * (e.g. bare MantineProvider in tests or custom setups). Dark-mode fidelity is\n * lost without the resolver, but nothing renders invisibly.\n */\nexport const fairmintVars = {\n /** Primary body/heading text — titles on tinted surfaces (Chip Banner). */\n colorTextPrimary: `var(--fairmint-color-text-primary, ${neutral[9]})`,\n /** Secondary / muted text — subtitles, supporting labels. Adapts to color scheme. */\n colorTextSecondary: `var(--fairmint-color-text-secondary, ${neutral[5]})`,\n /** Tertiary / faint text — timestamps, metadata. Adapts to color scheme. */\n colorTextTertiary: `var(--fairmint-color-text-tertiary, ${neutral[4]})`,\n /** Background tint for selected / active rows. Adapts to color scheme. */\n colorSurfaceSelected: `var(--fairmint-color-surface-selected, ${indigo[0]})`,\n /** Large decorative watermark on error/empty pages. Adapts to color scheme. */\n watermarkColor: `var(--fairmint-watermark-color, ${neutral[1]})`,\n /** Heading font family (Plus Jakarta Sans). */\n fontHeadings: `var(--fairmint-font-headings, ${typography.headingFontFamily})`,\n /** Body font family (Inter). */\n fontBody: `var(--fairmint-font-body, ${typography.fontFamily})`,\n} as const;\n\n/**\n * Returns the MantineProvider props required to use @fairmint/ui components.\n * Use this when you need to instantiate MantineProvider directly (e.g. in\n * Storybook decorators or server-rendering setups) instead of FairmintProvider.\n *\n * @example\n * ```tsx\n * import { MantineProvider } from \"@mantine/core\";\n * import { createFairmintMantineProviderProps } from \"@fairmint/ui\";\n *\n * <MantineProvider {...createFairmintMantineProviderProps()}>\n * <App />\n * </MantineProvider>\n * ```\n */\nexport function createFairmintMantineProviderProps(\n colorScheme: \"light\" | \"dark\" | \"auto\" = \"light\",\n) {\n return {\n theme,\n cssVariablesResolver: fairmintCssVariables,\n defaultColorScheme: colorScheme,\n } as const;\n}\n\n/** Brand colors for gradients and custom styling. */\nexport const brandColors = {\n blue: \"#0A4EFB\",\n purple: \"#9E03FF\",\n indigo: \"#6366F1\",\n gradient: \"linear-gradient(90deg, #0A4EFB 0%, #9E03FF 100%)\",\n} as const;\n\nexport const commonColors = {\n black: \"#000000\",\n white: \"#ffffff\",\n} as const;\n\n/**\n * Card/row shadow used by WalletList and similar card surfaces.\n * Equivalent to neutralColors[900] at ~10% opacity (#111927 → #1119271A).\n */\nexport const shadowColor = {\n card: \"#1119271A\",\n} as const;\n\n/** Neutral scale for direct access outside Mantine's theme system. Keys are numeric literals. */\nexport const neutralColors = {\n 50: \"#F8F9FA\",\n 100: \"#F3F4F6\",\n 200: \"#E5E7EB\",\n 300: \"#D2D6DB\",\n 400: \"#9DA4AE\",\n 500: \"#6C737F\",\n 600: \"#4D5761\",\n 700: \"#2F3746\",\n 800: \"#1C2536\",\n 900: \"#111927\",\n} as const;\n\n/** Semantic colors for status-based styling. */\nexport const semanticColors = {\n success: \"#10B981\",\n warning: \"#F79009\",\n error: \"#F04438\",\n info: \"#06AED4\",\n} as const;\n\nexport type { AvatarPaletteColor, FairmintColor } from \"./colors\";\nexport { AVATAR_PALETTE, colors } from \"./colors\";\nexport type { FairmintFontSize } from \"./fontSizes\";\nexport { fontSizes } from \"./fontSizes\";\nexport { DEFAULT_FAIRMINT_LOGO_SRC } from \"./logo\";\nexport type { FairmintResponsiveTypography } from \"./responsiveTypography\";\nexport { responsiveTypography } from \"./responsiveTypography\";\nexport type { FairmintSpacing } from \"./spacing\";\nexport { spacing } from \"./spacing\";\nexport { overlayZIndexAboveLegacyShell } from \"./zIndex\";\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const responsiveTypography = {
|
|
4
|
+
h1: { base: "1.75rem", sm: "2.125rem" },
|
|
5
|
+
h2: { base: "1.375rem", sm: "1.625rem" },
|
|
6
|
+
h3: { base: "1.25rem", sm: "1.375rem" },
|
|
7
|
+
h4: { base: "1.125rem", sm: "1.125rem" },
|
|
8
|
+
h5: { base: "1rem", sm: "1rem" },
|
|
9
|
+
h6: { base: "0.875rem", sm: "0.875rem" },
|
|
10
|
+
cardTitle: { base: "1.0625rem", sm: "1.1875rem" }
|
|
11
|
+
};
|
|
12
|
+
exports.responsiveTypography = responsiveTypography;
|
|
13
|
+
//# sourceMappingURL=responsiveTypography.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responsiveTypography.cjs","sources":["../../src/theme/responsiveTypography.ts"],"sourcesContent":["/**\n * Fairmint's mobile-first responsive typography scale.\n *\n * `base` is the mobile value used below the `sm` breakpoint (48em / 768px).\n * `sm` is the desktop value used at and above that breakpoint.\n * Keep these values semantic so components can opt into a role instead of\n * choosing a one-off responsive font size.\n */\nexport const responsiveTypography = {\n h1: { base: \"1.75rem\", sm: \"2.125rem\" },\n h2: { base: \"1.375rem\", sm: \"1.625rem\" },\n h3: { base: \"1.25rem\", sm: \"1.375rem\" },\n h4: { base: \"1.125rem\", sm: \"1.125rem\" },\n h5: { base: \"1rem\", sm: \"1rem\" },\n h6: { base: \"0.875rem\", sm: \"0.875rem\" },\n cardTitle: { base: \"1.0625rem\", sm: \"1.1875rem\" },\n} as const;\n\nexport type FairmintResponsiveTypography = keyof typeof responsiveTypography;\n"],"names":[],"mappings":";;AAQO,MAAM,uBAAuB;AAAA,EAClC,IAAI,EAAE,MAAM,WAAW,IAAI,WAAA;AAAA,EAC3B,IAAI,EAAE,MAAM,YAAY,IAAI,WAAA;AAAA,EAC5B,IAAI,EAAE,MAAM,WAAW,IAAI,WAAA;AAAA,EAC3B,IAAI,EAAE,MAAM,YAAY,IAAI,WAAA;AAAA,EAC5B,IAAI,EAAE,MAAM,QAAQ,IAAI,OAAA;AAAA,EACxB,IAAI,EAAE,MAAM,YAAY,IAAI,WAAA;AAAA,EAC5B,WAAW,EAAE,MAAM,aAAa,IAAI,YAAA;AACtC;;"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Fairmint's mobile-first responsive typography scale.
|
|
3
|
+
*
|
|
4
|
+
* `base` is the mobile value used below the `sm` breakpoint (48em / 768px).
|
|
5
|
+
* `sm` is the desktop value used at and above that breakpoint.
|
|
6
|
+
* Keep these values semantic so components can opt into a role instead of
|
|
7
|
+
* choosing a one-off responsive font size.
|
|
8
|
+
*/
|
|
9
|
+
export declare const responsiveTypography: {
|
|
10
|
+
readonly h1: {
|
|
11
|
+
readonly base: "1.75rem";
|
|
12
|
+
readonly sm: "2.125rem";
|
|
13
|
+
};
|
|
14
|
+
readonly h2: {
|
|
15
|
+
readonly base: "1.375rem";
|
|
16
|
+
readonly sm: "1.625rem";
|
|
17
|
+
};
|
|
18
|
+
readonly h3: {
|
|
19
|
+
readonly base: "1.25rem";
|
|
20
|
+
readonly sm: "1.375rem";
|
|
21
|
+
};
|
|
22
|
+
readonly h4: {
|
|
23
|
+
readonly base: "1.125rem";
|
|
24
|
+
readonly sm: "1.125rem";
|
|
25
|
+
};
|
|
26
|
+
readonly h5: {
|
|
27
|
+
readonly base: "1rem";
|
|
28
|
+
readonly sm: "1rem";
|
|
29
|
+
};
|
|
30
|
+
readonly h6: {
|
|
31
|
+
readonly base: "0.875rem";
|
|
32
|
+
readonly sm: "0.875rem";
|
|
33
|
+
};
|
|
34
|
+
readonly cardTitle: {
|
|
35
|
+
readonly base: "1.0625rem";
|
|
36
|
+
readonly sm: "1.1875rem";
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
export type FairmintResponsiveTypography = keyof typeof responsiveTypography;
|
|
40
|
+
//# sourceMappingURL=responsiveTypography.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responsiveTypography.d.ts","sourceRoot":"","sources":["../../src/theme/responsiveTypography.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQvB,CAAC;AAEX,MAAM,MAAM,4BAA4B,GAAG,MAAM,OAAO,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
const responsiveTypography = {
|
|
2
|
+
h1: { base: "1.75rem", sm: "2.125rem" },
|
|
3
|
+
h2: { base: "1.375rem", sm: "1.625rem" },
|
|
4
|
+
h3: { base: "1.25rem", sm: "1.375rem" },
|
|
5
|
+
h4: { base: "1.125rem", sm: "1.125rem" },
|
|
6
|
+
h5: { base: "1rem", sm: "1rem" },
|
|
7
|
+
h6: { base: "0.875rem", sm: "0.875rem" },
|
|
8
|
+
cardTitle: { base: "1.0625rem", sm: "1.1875rem" }
|
|
9
|
+
};
|
|
10
|
+
export {
|
|
11
|
+
responsiveTypography
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=responsiveTypography.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responsiveTypography.js","sources":["../../src/theme/responsiveTypography.ts"],"sourcesContent":["/**\n * Fairmint's mobile-first responsive typography scale.\n *\n * `base` is the mobile value used below the `sm` breakpoint (48em / 768px).\n * `sm` is the desktop value used at and above that breakpoint.\n * Keep these values semantic so components can opt into a role instead of\n * choosing a one-off responsive font size.\n */\nexport const responsiveTypography = {\n h1: { base: \"1.75rem\", sm: \"2.125rem\" },\n h2: { base: \"1.375rem\", sm: \"1.625rem\" },\n h3: { base: \"1.25rem\", sm: \"1.375rem\" },\n h4: { base: \"1.125rem\", sm: \"1.125rem\" },\n h5: { base: \"1rem\", sm: \"1rem\" },\n h6: { base: \"0.875rem\", sm: \"0.875rem\" },\n cardTitle: { base: \"1.0625rem\", sm: \"1.1875rem\" },\n} as const;\n\nexport type FairmintResponsiveTypography = keyof typeof responsiveTypography;\n"],"names":[],"mappings":"AAQO,MAAM,uBAAuB;AAAA,EAClC,IAAI,EAAE,MAAM,WAAW,IAAI,WAAA;AAAA,EAC3B,IAAI,EAAE,MAAM,YAAY,IAAI,WAAA;AAAA,EAC5B,IAAI,EAAE,MAAM,WAAW,IAAI,WAAA;AAAA,EAC3B,IAAI,EAAE,MAAM,YAAY,IAAI,WAAA;AAAA,EAC5B,IAAI,EAAE,MAAM,QAAQ,IAAI,OAAA;AAAA,EACxB,IAAI,EAAE,MAAM,YAAY,IAAI,WAAA;AAAA,EAC5B,WAAW,EAAE,MAAM,aAAa,IAAI,YAAA;AACtC;"}
|