@mantis-core/ui 0.3.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/COMPONENTS.md +115 -15
- package/dist/components/Forms/ColorPickerInput.d.ts +10 -0
- package/dist/components/Forms/ColorPickerInput.d.ts.map +1 -0
- package/dist/components/Forms/ColorPickerInput.js +13 -0
- package/dist/components/Forms/ColorPickerInput.js.map +1 -0
- package/dist/components/Forms/Combobox.d.ts +10 -0
- package/dist/components/Forms/Combobox.d.ts.map +1 -0
- package/dist/components/Forms/Combobox.js +11 -0
- package/dist/components/Forms/Combobox.js.map +1 -0
- package/dist/components/Forms/DatePresets.d.ts +14 -0
- package/dist/components/Forms/DatePresets.d.ts.map +1 -0
- package/dist/components/Forms/DatePresets.js +55 -0
- package/dist/components/Forms/DatePresets.js.map +1 -0
- package/dist/components/Forms/OtpInput.d.ts +11 -0
- package/dist/components/Forms/OtpInput.d.ts.map +1 -0
- package/dist/components/Forms/OtpInput.js +11 -0
- package/dist/components/Forms/OtpInput.js.map +1 -0
- package/dist/components/Forms/PasswordInput.d.ts +12 -0
- package/dist/components/Forms/PasswordInput.d.ts.map +1 -0
- package/dist/components/Forms/PasswordInput.js +31 -0
- package/dist/components/Forms/PasswordInput.js.map +1 -0
- package/dist/components/Forms/RatingInput.d.ts +11 -0
- package/dist/components/Forms/RatingInput.d.ts.map +1 -0
- package/dist/components/Forms/RatingInput.js +11 -0
- package/dist/components/Forms/RatingInput.js.map +1 -0
- package/dist/components/Forms/TagsInput.d.ts +10 -0
- package/dist/components/Forms/TagsInput.d.ts.map +1 -0
- package/dist/components/Forms/TagsInput.js +11 -0
- package/dist/components/Forms/TagsInput.js.map +1 -0
- package/dist/components/auth/ChangePasswordForm.d.ts +16 -0
- package/dist/components/auth/ChangePasswordForm.d.ts.map +1 -0
- package/dist/components/auth/ChangePasswordForm.js +23 -0
- package/dist/components/auth/ChangePasswordForm.js.map +1 -0
- package/dist/components/auth/ForgotPasswordForm.d.ts +15 -0
- package/dist/components/auth/ForgotPasswordForm.d.ts.map +1 -0
- package/dist/components/auth/ForgotPasswordForm.js +14 -0
- package/dist/components/auth/ForgotPasswordForm.js.map +1 -0
- package/dist/components/auth/LoginForm.d.ts +22 -0
- package/dist/components/auth/LoginForm.d.ts.map +1 -0
- package/dist/components/auth/LoginForm.js +20 -0
- package/dist/components/auth/LoginForm.js.map +1 -0
- package/dist/components/auth/ResetPasswordForm.d.ts +16 -0
- package/dist/components/auth/ResetPasswordForm.d.ts.map +1 -0
- package/dist/components/auth/ResetPasswordForm.js +23 -0
- package/dist/components/auth/ResetPasswordForm.js.map +1 -0
- package/dist/components/auth/UserMenu.d.ts +22 -0
- package/dist/components/auth/UserMenu.d.ts.map +1 -0
- package/dist/components/auth/UserMenu.js +95 -0
- package/dist/components/auth/UserMenu.js.map +1 -0
- package/dist/components/auth/index.d.ts +11 -0
- package/dist/components/auth/index.d.ts.map +1 -0
- package/dist/components/auth/index.js +6 -0
- package/dist/components/auth/index.js.map +1 -0
- package/dist/components/charts/BarChart.d.ts +20 -0
- package/dist/components/charts/BarChart.d.ts.map +1 -0
- package/dist/components/charts/BarChart.js +28 -0
- package/dist/components/charts/BarChart.js.map +1 -0
- package/dist/components/charts/DonutChart.d.ts +21 -0
- package/dist/components/charts/DonutChart.d.ts.map +1 -0
- package/dist/components/charts/DonutChart.js +26 -0
- package/dist/components/charts/DonutChart.js.map +1 -0
- package/dist/components/charts/LineChart.d.ts +20 -0
- package/dist/components/charts/LineChart.d.ts.map +1 -0
- package/dist/components/charts/LineChart.js +27 -0
- package/dist/components/charts/LineChart.js.map +1 -0
- package/dist/components/charts/chart-setup.d.ts +3 -0
- package/dist/components/charts/chart-setup.d.ts.map +1 -0
- package/dist/components/charts/chart-setup.js +10 -0
- package/dist/components/charts/chart-setup.js.map +1 -0
- package/dist/components/charts/defaults.d.ts +13 -0
- package/dist/components/charts/defaults.d.ts.map +1 -0
- package/dist/components/charts/defaults.js +54 -0
- package/dist/components/charts/defaults.js.map +1 -0
- package/dist/components/charts/index.d.ts +9 -0
- package/dist/components/charts/index.d.ts.map +1 -0
- package/dist/components/charts/index.js +6 -0
- package/dist/components/charts/index.js.map +1 -0
- package/dist/components/data/DescriptionList.d.ts +11 -0
- package/dist/components/data/DescriptionList.d.ts.map +1 -0
- package/dist/components/data/DescriptionList.js +23 -0
- package/dist/components/data/DescriptionList.js.map +1 -0
- package/dist/components/data/StatCard.d.ts +14 -0
- package/dist/components/data/StatCard.d.ts.map +1 -0
- package/dist/components/data/StatCard.js +39 -0
- package/dist/components/data/StatCard.js.map +1 -0
- package/dist/components/data/Timeline.d.ts +15 -0
- package/dist/components/data/Timeline.d.ts.map +1 -0
- package/dist/components/data/Timeline.js +20 -0
- package/dist/components/data/Timeline.js.map +1 -0
- package/dist/components/feedback/Avatar.d.ts +9 -0
- package/dist/components/feedback/Avatar.d.ts.map +1 -0
- package/dist/components/feedback/Avatar.js +15 -0
- package/dist/components/feedback/Avatar.js.map +1 -0
- package/dist/components/feedback/CardSkeleton.d.ts +6 -0
- package/dist/components/feedback/CardSkeleton.d.ts.map +1 -0
- package/dist/components/feedback/CardSkeleton.js +7 -0
- package/dist/components/feedback/CardSkeleton.js.map +1 -0
- package/dist/components/feedback/EmptyState.d.ts +9 -0
- package/dist/components/feedback/EmptyState.d.ts.map +1 -0
- package/dist/components/feedback/EmptyState.js +6 -0
- package/dist/components/feedback/EmptyState.js.map +1 -0
- package/dist/components/feedback/ErrorBoundary.d.ts +18 -0
- package/dist/components/feedback/ErrorBoundary.d.ts.map +1 -0
- package/dist/components/feedback/ErrorBoundary.js +24 -0
- package/dist/components/feedback/ErrorBoundary.js.map +1 -0
- package/dist/components/feedback/TableSkeleton.d.ts +7 -0
- package/dist/components/feedback/TableSkeleton.d.ts.map +1 -0
- package/dist/components/feedback/TableSkeleton.js +7 -0
- package/dist/components/feedback/TableSkeleton.js.map +1 -0
- package/dist/components/feedback/Tag.d.ts +6 -0
- package/dist/components/feedback/Tag.d.ts.map +1 -0
- package/dist/components/feedback/Tag.js +7 -0
- package/dist/components/feedback/Tag.js.map +1 -0
- package/dist/components/navigation/CommandPalette.d.ts +17 -0
- package/dist/components/navigation/CommandPalette.d.ts.map +1 -0
- package/dist/components/navigation/CommandPalette.js +73 -0
- package/dist/components/navigation/CommandPalette.js.map +1 -0
- package/dist/components/navigation/PageTabs.d.ts +14 -0
- package/dist/components/navigation/PageTabs.d.ts.map +1 -0
- package/dist/components/navigation/PageTabs.js +21 -0
- package/dist/components/navigation/PageTabs.js.map +1 -0
- package/dist/components/overlays/Drawer.d.ts +6 -0
- package/dist/components/overlays/Drawer.d.ts.map +1 -0
- package/dist/components/overlays/Drawer.js +8 -0
- package/dist/components/overlays/Drawer.js.map +1 -0
- package/dist/components/overlays/Modal.d.ts +6 -0
- package/dist/components/overlays/Modal.d.ts.map +1 -0
- package/dist/components/overlays/Modal.js +8 -0
- package/dist/components/overlays/Modal.js.map +1 -0
- package/dist/components/pages/app-shell/AppShell.d.ts.map +1 -1
- package/dist/components/pages/app-shell/AppShell.js +11 -9
- package/dist/components/pages/app-shell/AppShell.js.map +1 -1
- package/dist/components/pages/app-shell/types.d.ts +4 -0
- package/dist/components/pages/app-shell/types.d.ts.map +1 -1
- package/dist/validation/index.d.ts +2 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +3 -0
- package/dist/validation/index.js.map +1 -0
- package/dist/validation/rules.d.ts +10 -0
- package/dist/validation/rules.d.ts.map +1 -0
- package/dist/validation/rules.js +39 -0
- package/dist/validation/rules.js.map +1 -0
- package/dist/validation/zod.d.ts +2 -0
- package/dist/validation/zod.d.ts.map +1 -0
- package/dist/validation/zod.js +3 -0
- package/dist/validation/zod.js.map +1 -0
- package/docs/components/action-column.md +14 -13
- package/docs/components/admin-page-configurator.md +23 -0
- package/docs/components/admin-page-header.md +15 -17
- package/docs/components/admin-page-layout-shell.md +22 -0
- package/docs/components/admin-page-layout.md +11 -20
- package/docs/components/app-shell.md +20 -0
- package/docs/components/async-select.md +18 -17
- package/docs/components/avatar.md +19 -0
- package/docs/components/bar-chart.md +21 -0
- package/docs/components/breadcrumbs.md +15 -0
- package/docs/components/button.md +20 -15
- package/docs/components/card-skeleton.md +15 -0
- package/docs/components/change-password-form.md +17 -0
- package/docs/components/ckeditor-input.md +15 -16
- package/docs/components/color-picker-input.md +19 -0
- package/docs/components/combobox.md +19 -0
- package/docs/components/command-palette.md +17 -0
- package/docs/components/confirm-dialog.md +19 -17
- package/docs/components/currency-input.md +21 -0
- package/docs/components/data-state.md +15 -15
- package/docs/components/date-input.md +17 -18
- package/docs/components/date-presets.md +18 -0
- package/docs/components/date-range-input.md +20 -0
- package/docs/components/description-list.md +16 -0
- package/docs/components/dirty-form-guard.md +15 -23
- package/docs/components/donut-chart.md +21 -0
- package/docs/components/drawer.md +19 -0
- package/docs/components/drop-down.md +18 -20
- package/docs/components/empty-state.md +18 -0
- package/docs/components/error-boundary.md +17 -0
- package/docs/components/error-message.md +11 -9
- package/docs/components/file-dropzone.md +28 -16
- package/docs/components/filter-pannel.md +12 -14
- package/docs/components/forgot-password-form.md +18 -0
- package/docs/components/form-actions-bar.md +29 -18
- package/docs/components/form-field-render.md +16 -16
- package/docs/components/form-section.md +15 -11
- package/docs/components/form-wizard.md +18 -0
- package/docs/components/hidden-field.md +12 -15
- package/docs/components/index-column.md +12 -9
- package/docs/components/line-chart.md +21 -0
- package/docs/components/loading.md +14 -12
- package/docs/components/login-form.md +22 -0
- package/docs/components/map-picker-client.md +14 -14
- package/docs/components/map-picker-osm.md +16 -14
- package/docs/components/map-picker.md +14 -17
- package/docs/components/menu-button.md +14 -18
- package/docs/components/modal.md +20 -0
- package/docs/components/multi-select-filter.md +14 -16
- package/docs/components/multi-select.md +18 -19
- package/docs/components/number-input.md +17 -16
- package/docs/components/otp-input.md +18 -0
- package/docs/components/page-tabs.md +16 -0
- package/docs/components/page-title.md +11 -9
- package/docs/components/paginated-table.md +19 -26
- package/docs/components/pagination.md +15 -18
- package/docs/components/password-input.md +19 -0
- package/docs/components/phone-input.md +18 -0
- package/docs/components/radio-group.md +20 -0
- package/docs/components/range-slider.md +20 -0
- package/docs/components/rating-input.md +19 -0
- package/docs/components/render-field.md +15 -20
- package/docs/components/reset-password-form.md +17 -0
- package/docs/components/rich-text-preview.md +15 -14
- package/docs/components/search-input.md +19 -0
- package/docs/components/select.md +19 -19
- package/docs/components/stat-card.md +19 -0
- package/docs/components/status-badge.md +16 -10
- package/docs/components/switch.md +16 -19
- package/docs/components/table-filter-field.md +13 -17
- package/docs/components/table-skeleton.md +16 -0
- package/docs/components/table-toolbar.md +16 -15
- package/docs/components/tag.md +18 -0
- package/docs/components/tags-input.md +19 -0
- package/docs/components/text-area.md +16 -16
- package/docs/components/text-input.md +16 -15
- package/docs/components/time-picker.md +17 -14
- package/docs/components/timeline.md +15 -0
- package/docs/components/toggle-inline-button.md +17 -18
- package/docs/components/toggle.md +20 -17
- package/docs/components/upload-files-preview.md +20 -22
- package/docs/components/user-menu.md +19 -0
- package/docs/contracts/component-doc-schema.md +78 -0
- package/docs/contracts/dependency-map.md +68 -29
- package/docs/contracts/style-imports.md +38 -12
- package/llms.txt +106 -0
- package/package.json +40 -4
- package/PRIMEREACT_MAPPING.md +0 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppShell.js","sourceRoot":"","sources":["../../../../src/components/pages/app-shell/AppShell.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAG7C,+EAA+E;AAE/E,MAAM,QAAQ,GAAG,CAAC,QAAgB,EAAE,IAAa,EAAW,EAAE,CAC5D,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"AppShell.js","sourceRoot":"","sources":["../../../../src/components/pages/app-shell/AppShell.tsx"],"names":[],"mappings":"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"}
|
|
@@ -16,5 +16,9 @@ export type AppShellProps = {
|
|
|
16
16
|
/** Optional footer rendered at the bottom of the sidebar */
|
|
17
17
|
footer?: ReactNode;
|
|
18
18
|
children: ReactNode;
|
|
19
|
+
/** Enable collapsible desktop sidebar (default: false) */
|
|
20
|
+
collapsible?: boolean;
|
|
21
|
+
/** Initial collapsed state when collapsible is true (default: false) */
|
|
22
|
+
defaultCollapsed?: boolean;
|
|
19
23
|
};
|
|
20
24
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/pages/app-shell/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,0DAA0D;IAC1D,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/pages/app-shell/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,0DAA0D;IAC1D,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,0DAA0D;IAC1D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/validation/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/validation/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,6EAA6E"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { RegisterOptions } from "react-hook-form";
|
|
2
|
+
export declare function requiredRule(msg?: string): RegisterOptions;
|
|
3
|
+
export declare function notEmptyRule(msg?: string): RegisterOptions;
|
|
4
|
+
export declare function emailRule(msg?: string): RegisterOptions;
|
|
5
|
+
export declare function phoneRule(msg?: string): RegisterOptions;
|
|
6
|
+
export declare function cedulaRule(msg?: string): RegisterOptions;
|
|
7
|
+
export declare function rucRule(msg?: string): RegisterOptions;
|
|
8
|
+
export declare function minLengthRule(n: number, msg?: string): RegisterOptions;
|
|
9
|
+
export declare function maxLengthRule(n: number, msg?: string): RegisterOptions;
|
|
10
|
+
//# sourceMappingURL=rules.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/validation/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAcvD,wBAAgB,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,eAAe,CAE1D;AAED,wBAAgB,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,eAAe,CAK1D;AAED,wBAAgB,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,eAAe,CAEvD;AAED,wBAAgB,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,eAAe,CAEvD;AAED,wBAAgB,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,eAAe,CAExD;AAED,wBAAgB,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,eAAe,CAErD;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,eAAe,CAEtE;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,eAAe,CAEtE"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { isNotEmptyString, isEmail, isPhone, isEcuadorianCedula, isRUC } from "@mantis-core/utils";
|
|
2
|
+
const MSG = {
|
|
3
|
+
required: "Este campo es obligatorio",
|
|
4
|
+
notEmpty: "Este campo no puede estar vacío",
|
|
5
|
+
email: "Ingrese un correo electrónico válido",
|
|
6
|
+
phone: "Ingrese un número de teléfono válido",
|
|
7
|
+
cedula: "Ingrese una cédula ecuatoriana válida",
|
|
8
|
+
ruc: "Ingrese un RUC ecuatoriano válido",
|
|
9
|
+
minLength: (n) => `Mínimo ${n} caracteres`,
|
|
10
|
+
maxLength: (n) => `Máximo ${n} caracteres`,
|
|
11
|
+
};
|
|
12
|
+
export function requiredRule(msg) {
|
|
13
|
+
return { required: msg ?? MSG.required };
|
|
14
|
+
}
|
|
15
|
+
export function notEmptyRule(msg) {
|
|
16
|
+
return {
|
|
17
|
+
required: msg ?? MSG.required,
|
|
18
|
+
validate: (v) => isNotEmptyString(v) || (msg ?? MSG.notEmpty),
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export function emailRule(msg) {
|
|
22
|
+
return { validate: (v) => isEmail(v) || (msg ?? MSG.email) };
|
|
23
|
+
}
|
|
24
|
+
export function phoneRule(msg) {
|
|
25
|
+
return { validate: (v) => isPhone(v) || (msg ?? MSG.phone) };
|
|
26
|
+
}
|
|
27
|
+
export function cedulaRule(msg) {
|
|
28
|
+
return { validate: (v) => isEcuadorianCedula(v) || (msg ?? MSG.cedula) };
|
|
29
|
+
}
|
|
30
|
+
export function rucRule(msg) {
|
|
31
|
+
return { validate: (v) => isRUC(v) || (msg ?? MSG.ruc) };
|
|
32
|
+
}
|
|
33
|
+
export function minLengthRule(n, msg) {
|
|
34
|
+
return { minLength: { value: n, message: msg ?? MSG.minLength(n) } };
|
|
35
|
+
}
|
|
36
|
+
export function maxLengthRule(n, msg) {
|
|
37
|
+
return { maxLength: { value: n, message: msg ?? MSG.maxLength(n) } };
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=rules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../src/validation/rules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEnG,MAAM,GAAG,GAAG;IACV,QAAQ,EAAE,2BAA2B;IACrC,QAAQ,EAAE,iCAAiC;IAC3C,KAAK,EAAE,sCAAsC;IAC7C,KAAK,EAAE,sCAAsC;IAC7C,MAAM,EAAE,uCAAuC;IAC/C,GAAG,EAAE,mCAAmC;IACxC,SAAS,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,UAAU,CAAC,aAAa;IAClD,SAAS,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,UAAU,CAAC,aAAa;CAC1C,CAAC;AAEX,MAAM,UAAU,YAAY,CAAC,GAAY;IACvC,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,GAAY;IACvC,OAAO;QACL,QAAQ,EAAE,GAAG,IAAI,GAAG,CAAC,QAAQ;QAC7B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC;KAC9D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAY;IACpC,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAY;IACpC,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAY;IACrC,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,GAAY;IAClC,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,CAAS,EAAE,GAAY;IACnD,OAAO,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,CAAS,EAAE,GAAY;IACnD,OAAO,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACvE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zod.d.ts","sourceRoot":"","sources":["../../src/validation/zod.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zod.js","sourceRoot":"","sources":["../../src/validation/zod.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -1,17 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
---
|
|
2
|
+
name: ActionColumn
|
|
3
|
+
category: tables
|
|
4
|
+
import: '@mantis-core/ui/components/Tables/ActionColumn'
|
|
5
|
+
whenToUse: 'Factory function that returns a PrimeReact Column with a dropdown action menu; call as ActionColumn(itemsFn, props).'
|
|
6
|
+
baseLibrary: primereact/column
|
|
7
|
+
relatedComponents: [PaginatedTable, MenuButton]
|
|
8
|
+
relatedNextCore: []
|
|
9
|
+
props:
|
|
10
|
+
- { name: items, type: '(rowData: TRow) => ActionMenuItem[]', required: true }
|
|
11
|
+
- { name: label, type: string, required: false }
|
|
12
|
+
- { name: icon, type: string, required: false }
|
|
13
|
+
---
|
|
10
14
|
## Example
|
|
11
15
|
|
|
12
16
|
```tsx
|
|
13
|
-
{ActionColumn(
|
|
14
|
-
(row) => [{ label: "Open", route: `/admin/items/${row.id}` }],
|
|
15
|
-
{ label: "Actions" },
|
|
16
|
-
)}
|
|
17
|
+
{ActionColumn((row) => [{ label: 'Delete', command: () => del(row.id) }])}
|
|
17
18
|
```
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: AdminPageConfigurator
|
|
3
|
+
category: pages
|
|
4
|
+
import: '@mantis-core/ui/components/pages/admin-layout/AdminPageConfigurator'
|
|
5
|
+
whenToUse: Sets the page title, description, and breadcrumbs in the admin layout shell via context; wrap each page's content with this.
|
|
6
|
+
baseLibrary: custom
|
|
7
|
+
requiredStyles: []
|
|
8
|
+
relatedComponents: ['AdminPageLayoutShell', 'AdminPageHeader']
|
|
9
|
+
relatedNextCore: []
|
|
10
|
+
props:
|
|
11
|
+
- { name: config, type: AdminPageLayoutConfig, required: true }
|
|
12
|
+
- { name: children, type: ReactNode, required: true }
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Example
|
|
16
|
+
|
|
17
|
+
```tsx
|
|
18
|
+
<AdminPageConfigurator config={{ title: 'Properties', description: 'Manage listings', breadcrumbs: [{ label: 'Home', href: '/' }, { label: 'Properties' }] }}><PropertiesView /></AdminPageConfigurator>
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Notes
|
|
22
|
+
|
|
23
|
+
- Pairs with [AdminPageLayoutShell](./admin-page-layout-shell.md), which reads the config from context and renders the header. See [admin-page-layout.md](./admin-page-layout.md) for the overview.
|
|
@@ -1,21 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
---
|
|
2
|
+
name: AdminPageHeader
|
|
3
|
+
category: pages
|
|
4
|
+
import: '@mantis-core/ui/components/pages/AdminPageHeader'
|
|
5
|
+
whenToUse: 'Gradient page header with title, optional description, breadcrumbs, and right-side actions slot; rendered by AdminPageLayoutShell — avoid rendering directly inside feature views.'
|
|
6
|
+
baseLibrary: custom
|
|
7
|
+
relatedComponents: [AdminPageLayoutShell]
|
|
8
|
+
relatedNextCore: []
|
|
9
|
+
props:
|
|
10
|
+
- { name: title, type: string, required: true }
|
|
11
|
+
- { name: description, type: string, required: false }
|
|
12
|
+
- { name: actions, type: ReactNode, required: false }
|
|
13
|
+
- { name: breadcrumbs, type: 'readonly AdminBreadcrumbItem[]', required: false }
|
|
14
|
+
---
|
|
9
15
|
## Example
|
|
10
16
|
|
|
11
17
|
```tsx
|
|
12
|
-
<AdminPageHeader
|
|
13
|
-
title="Clients"
|
|
14
|
-
description="Manage B2B accounts"
|
|
15
|
-
breadcrumbs={[
|
|
16
|
-
{ label: "Dashboard", href: "/admin" },
|
|
17
|
-
{ label: "Clients" },
|
|
18
|
-
]}
|
|
19
|
-
actions={<Button label="New client" icon="pi pi-plus" />}
|
|
20
|
-
/>
|
|
18
|
+
<AdminPageHeader title='Blog' description='Manage posts' actions={<Button label='New Post' onClick={onCreate} />} />
|
|
21
19
|
```
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: AdminPageLayoutShell
|
|
3
|
+
category: pages
|
|
4
|
+
import: '@mantis-core/ui/components/pages/admin-layout/AdminPageLayoutShell'
|
|
5
|
+
whenToUse: Root layout shell for admin pages; renders AdminPageHeader from context set by AdminPageConfigurator and provides the layout grid.
|
|
6
|
+
baseLibrary: custom
|
|
7
|
+
requiredStyles: []
|
|
8
|
+
relatedComponents: ['AdminPageConfigurator', 'AdminPageHeader']
|
|
9
|
+
relatedNextCore: []
|
|
10
|
+
props:
|
|
11
|
+
- { name: children, type: ReactNode, required: true }
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Example
|
|
15
|
+
|
|
16
|
+
```tsx
|
|
17
|
+
<AdminPageLayoutShell>{children}</AdminPageLayoutShell>
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Notes
|
|
21
|
+
|
|
22
|
+
- Reads page config from the context set by [AdminPageConfigurator](./admin-page-configurator.md). See [admin-page-layout.md](./admin-page-layout.md) for the overview.
|
|
@@ -1,29 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
- `AdminPageLayoutConfig`
|
|
10
|
-
- Import: `import { AdminPageLayoutProvider, AdminPageConfigurator, AdminPageLayoutShell } from "@mantis-core/ui";`
|
|
11
|
-
- Base library: React context + custom shell
|
|
12
|
-
- Required styles: none
|
|
13
|
-
|
|
1
|
+
---
|
|
2
|
+
name: AdminPageLayout
|
|
3
|
+
category: pages
|
|
4
|
+
whenToUse: Overview of the admin page layout system — Provider, Configurator, and Shell exports that together compose admin pages.
|
|
5
|
+
baseLibrary: React context + custom shell
|
|
6
|
+
relatedNextCore: []
|
|
7
|
+
props: []
|
|
8
|
+
---
|
|
14
9
|
## Example
|
|
15
10
|
|
|
16
11
|
```tsx
|
|
17
|
-
|
|
18
|
-
<AdminPageLayoutShell>
|
|
19
|
-
<AdminPageConfigurator config={{ title: "Leads" }}>
|
|
20
|
-
<LeadsTable />
|
|
21
|
-
</AdminPageConfigurator>
|
|
22
|
-
</AdminPageLayoutShell>
|
|
23
|
-
</AdminPageLayoutProvider>
|
|
12
|
+
{/* TODO: add example */}
|
|
24
13
|
```
|
|
25
14
|
|
|
26
15
|
## Notes
|
|
27
16
|
|
|
17
|
+
> Overview doc — individual exports are documented in their own entries.
|
|
18
|
+
|
|
28
19
|
- `useAdminPageLayout` must run inside `AdminPageLayoutProvider`.
|
|
29
20
|
- `AdminPageLayoutShell` renders `AdminPageHeader` when `config.title` exists and `hideHeader` is not set.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: AppShell
|
|
3
|
+
category: pages
|
|
4
|
+
import: '@mantis-core/ui/components/pages/app-shell/AppShell'
|
|
5
|
+
whenToUse: 'Full-page app shell with responsive sidebar nav, topbar, and mobile drawer; use as the root layout wrapper for authenticated pages.'
|
|
6
|
+
baseLibrary: custom
|
|
7
|
+
relatedNextCore: []
|
|
8
|
+
props:
|
|
9
|
+
- { name: navItems, type: 'AppNavItem[]', required: true }
|
|
10
|
+
- { name: children, type: ReactNode, required: true }
|
|
11
|
+
- { name: brand, type: ReactNode, required: false }
|
|
12
|
+
- { name: topbarActions, type: ReactNode, required: false }
|
|
13
|
+
- { name: user, type: ReactNode, required: false }
|
|
14
|
+
- { name: footer, type: ReactNode, required: false }
|
|
15
|
+
---
|
|
16
|
+
## Example
|
|
17
|
+
|
|
18
|
+
```tsx
|
|
19
|
+
<AppShell navItems={NAV_ITEMS} brand={<Logo />} user={<UserMenu />}>{children}</AppShell>
|
|
20
|
+
```
|
|
@@ -1,23 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
---
|
|
2
|
+
name: AsyncSelect
|
|
3
|
+
category: forms
|
|
4
|
+
import: '@mantis-core/ui/components/Forms/AsyncSelect'
|
|
5
|
+
whenToUse: Searchable select that loads options asynchronously via loadOptions callback.
|
|
6
|
+
baseLibrary: react-select/async
|
|
7
|
+
formContract: ControllerProps
|
|
8
|
+
requiredStyles: [scss/select.scss]
|
|
9
|
+
relatedComponents: [FormFieldRender, Select]
|
|
10
|
+
relatedNextCore: []
|
|
11
|
+
props:
|
|
12
|
+
- { name: controller, type: ControllerProps, required: true }
|
|
13
|
+
- { name: loadOptions, type: '(inputValue: string) => Promise<OptionsOrGroups>', required: true }
|
|
14
|
+
- { name: isCreatable, type: boolean, required: false, default: 'false' }
|
|
15
|
+
- { name: debounceMs, type: number, required: false, default: '250' }
|
|
16
|
+
- { name: block, type: boolean, required: false }
|
|
17
|
+
---
|
|
11
18
|
## Example
|
|
12
19
|
|
|
13
20
|
```tsx
|
|
14
|
-
<AsyncSelect
|
|
15
|
-
controller={{ name: "city", control: form.control }}
|
|
16
|
-
block
|
|
17
|
-
loadOptions={async (input) => searchCities(input)}
|
|
18
|
-
defaultOptions
|
|
19
|
-
debounceMs={300}
|
|
20
|
-
/>
|
|
21
|
+
<AsyncSelect controller={{ name: 'client' }} loadOptions={searchClients} block />
|
|
21
22
|
```
|
|
22
23
|
|
|
23
24
|
## Notes
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Avatar
|
|
3
|
+
category: feedback
|
|
4
|
+
import: '@mantis-core/ui/components/feedback/Avatar'
|
|
5
|
+
whenToUse: User avatar that auto-generates initials from a name when no image is supplied; wraps PrimeReact Avatar.
|
|
6
|
+
baseLibrary: custom
|
|
7
|
+
relatedNextCore: []
|
|
8
|
+
props:
|
|
9
|
+
- { name: name, type: string, required: false }
|
|
10
|
+
- { name: image, type: string, required: false }
|
|
11
|
+
- { name: label, type: string, required: false }
|
|
12
|
+
- { name: size, type: '''normal'' | ''large'' | ''xlarge''', required: false }
|
|
13
|
+
- { name: shape, type: '''square'' | ''circle''', required: false }
|
|
14
|
+
---
|
|
15
|
+
## Example
|
|
16
|
+
|
|
17
|
+
```tsx
|
|
18
|
+
<Avatar name='Diego Condo' size='large' shape='circle' />
|
|
19
|
+
```
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: BarChart
|
|
3
|
+
category: charts
|
|
4
|
+
import: '@mantis-core/ui/components/charts/BarChart'
|
|
5
|
+
whenToUse: Categorical comparisons rendered as a bar chart. Same prop shape as LineChart.
|
|
6
|
+
baseLibrary: custom
|
|
7
|
+
relatedComponents: [LineChart, DonutChart]
|
|
8
|
+
relatedNextCore: []
|
|
9
|
+
props:
|
|
10
|
+
- { name: labels, type: 'string[]', required: true }
|
|
11
|
+
- { name: datasets, type: 'BarChartDataset[]', required: true }
|
|
12
|
+
- { name: options, type: 'ChartOptions<''bar''>', required: false }
|
|
13
|
+
- { name: colors, type: 'string[]', required: false, default: DEFAULT_COLORS palette }
|
|
14
|
+
- { name: height, type: number, required: false, default: '300' }
|
|
15
|
+
- { name: className, type: string, required: false }
|
|
16
|
+
---
|
|
17
|
+
## Example
|
|
18
|
+
|
|
19
|
+
```tsx
|
|
20
|
+
<BarChart labels={['Q1','Q2','Q3']} datasets={[{ label: 'Sales', data: [40,70,55] }]} />
|
|
21
|
+
```
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Breadcrumbs
|
|
3
|
+
category: pages
|
|
4
|
+
import: '@mantis-core/ui/components/pages/app-shell/Breadcrumbs'
|
|
5
|
+
whenToUse: Standalone breadcrumb nav; renders nothing when items is empty.
|
|
6
|
+
baseLibrary: custom
|
|
7
|
+
relatedNextCore: []
|
|
8
|
+
props:
|
|
9
|
+
- { name: items, type: 'readonly AdminBreadcrumbItem[]', required: true }
|
|
10
|
+
---
|
|
11
|
+
## Example
|
|
12
|
+
|
|
13
|
+
```tsx
|
|
14
|
+
<Breadcrumbs items={[{ label: 'Home', href: '/' }, { label: 'Settings' }]} />
|
|
15
|
+
```
|
|
@@ -1,21 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
---
|
|
2
|
+
name: Button
|
|
3
|
+
category: buttons
|
|
4
|
+
import: '@mantis-core/ui/components/Buttons/Button'
|
|
5
|
+
whenToUse: Primary action button; wraps PrimeReact Button with Mantis Core variant tokens and optional Next.js href navigation.
|
|
6
|
+
baseLibrary: primereact/button
|
|
7
|
+
requiredStyles: [scss/buttons.scss]
|
|
8
|
+
relatedNextCore: []
|
|
9
|
+
props:
|
|
10
|
+
- { name: variant, type: '''primary'' | ''secondary'' | ''accent'' | ''success'' | ''warning'' | ''error'' | ''info'' | ''gray'' | ''danger''', required: false, default: '''primary''' }
|
|
11
|
+
- { name: label, type: string, required: false }
|
|
12
|
+
- { name: icon, type: string, required: false }
|
|
13
|
+
- { name: href, type: string, required: false }
|
|
14
|
+
- { name: outlined, type: boolean, required: false }
|
|
15
|
+
- { name: block, type: boolean, required: false }
|
|
16
|
+
- { name: text, type: boolean, required: false }
|
|
17
|
+
- { name: loading, type: boolean, required: false }
|
|
18
|
+
- { name: disabled, type: boolean, required: false }
|
|
19
|
+
---
|
|
9
20
|
## Example
|
|
10
21
|
|
|
11
22
|
```tsx
|
|
12
|
-
<Button
|
|
13
|
-
label="Save"
|
|
14
|
-
icon="pi pi-check"
|
|
15
|
-
variant="primary"
|
|
16
|
-
rounded
|
|
17
|
-
onClick={() => console.log("saved")}
|
|
18
|
-
/>
|
|
23
|
+
<Button variant='danger' outlined label='Delete' icon={PrimeIcons.TRASH} onClick={onDelete} />
|
|
19
24
|
```
|
|
20
25
|
|
|
21
26
|
## Notes
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: CardSkeleton
|
|
3
|
+
category: feedback
|
|
4
|
+
import: '@mantis-core/ui/components/feedback/CardSkeleton'
|
|
5
|
+
whenToUse: Animated skeleton for card grid layouts while data loads.
|
|
6
|
+
baseLibrary: custom
|
|
7
|
+
relatedNextCore: []
|
|
8
|
+
props:
|
|
9
|
+
- { name: count, type: number, required: false, default: '3' }
|
|
10
|
+
---
|
|
11
|
+
## Example
|
|
12
|
+
|
|
13
|
+
```tsx
|
|
14
|
+
<CardSkeleton count={6} />
|
|
15
|
+
```
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ChangePasswordForm
|
|
3
|
+
category: auth
|
|
4
|
+
import: '@mantis-core/ui/components/auth/ChangePasswordForm'
|
|
5
|
+
whenToUse: Current + new + confirm password form for authenticated users.
|
|
6
|
+
baseLibrary: custom
|
|
7
|
+
relatedNextCore: []
|
|
8
|
+
props:
|
|
9
|
+
- { name: onSubmit, type: '(values: ChangePasswordFormValues) => void | Promise<void>', required: true }
|
|
10
|
+
- { name: minPasswordLength, type: number, required: false, default: '8' }
|
|
11
|
+
- { name: className, type: string, required: false }
|
|
12
|
+
---
|
|
13
|
+
## Example
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
<ChangePasswordForm onSubmit={changePassword} />
|
|
17
|
+
```
|
|
@@ -1,22 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
---
|
|
2
|
+
name: CKEditorInput
|
|
3
|
+
category: forms
|
|
4
|
+
import: '@mantis-core/ui/components/Forms/CKEditorInput'
|
|
5
|
+
whenToUse: Rich-text WYSIWYG editor (CKEditor 5) wired to react-hook-form; emits HTML string.
|
|
6
|
+
baseLibrary: '@ckeditor/ckeditor5-react'
|
|
7
|
+
formContract: ControllerProps
|
|
8
|
+
requiredStyles: [scss/ckeditor.scss]
|
|
9
|
+
relatedComponents: [FormFieldRender, RichTextPreview]
|
|
10
|
+
relatedNextCore: []
|
|
11
|
+
props:
|
|
12
|
+
- { name: controller, type: ControllerProps, required: true }
|
|
13
|
+
- { name: block, type: boolean, required: false }
|
|
14
|
+
---
|
|
11
15
|
## Example
|
|
12
16
|
|
|
13
17
|
```tsx
|
|
14
|
-
<CKEditorInput
|
|
15
|
-
controller={{ name: "body", control: form.control }}
|
|
16
|
-
minHeight="20rem"
|
|
17
|
-
showStats
|
|
18
|
-
onMetricsChange={(metrics) => console.log(metrics.words)}
|
|
19
|
-
/>
|
|
18
|
+
<CKEditorInput controller={{ name: 'body', rules: { required: true } }} block />
|
|
20
19
|
```
|
|
21
20
|
|
|
22
21
|
## Notes
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ColorPickerInput
|
|
3
|
+
category: forms
|
|
4
|
+
import: '@mantis-core/ui/components/Forms/ColorPickerInput'
|
|
5
|
+
whenToUse: 'Color picker (PrimeReact ColorPicker, hex format) wired to react-hook-form.'
|
|
6
|
+
baseLibrary: custom
|
|
7
|
+
formContract: ControllerProps
|
|
8
|
+
relatedNextCore: []
|
|
9
|
+
props:
|
|
10
|
+
- { name: controller, type: ControllerProps, required: true }
|
|
11
|
+
- { name: format, type: '''hex'' | ''rgb'' | ''hsb''', required: false, default: '''hex''' }
|
|
12
|
+
- { name: inline, type: boolean, required: false }
|
|
13
|
+
- { name: block, type: boolean, required: false }
|
|
14
|
+
---
|
|
15
|
+
## Example
|
|
16
|
+
|
|
17
|
+
```tsx
|
|
18
|
+
<ColorPickerInput controller={{ name: 'brandColor' }} />
|
|
19
|
+
```
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Combobox
|
|
3
|
+
category: forms
|
|
4
|
+
import: '@mantis-core/ui/components/Forms/Combobox'
|
|
5
|
+
whenToUse: Autocomplete text input (PrimeReact AutoComplete) wired to react-hook-form; pass suggestions via the suggestions prop.
|
|
6
|
+
baseLibrary: custom
|
|
7
|
+
formContract: ControllerProps
|
|
8
|
+
relatedNextCore: []
|
|
9
|
+
props:
|
|
10
|
+
- { name: controller, type: ControllerProps, required: true }
|
|
11
|
+
- { name: suggestions, type: 'any[]', required: false }
|
|
12
|
+
- { name: completeMethod, type: '(e: AutoCompleteCompleteEvent) => void', required: false }
|
|
13
|
+
- { name: block, type: boolean, required: false }
|
|
14
|
+
---
|
|
15
|
+
## Example
|
|
16
|
+
|
|
17
|
+
```tsx
|
|
18
|
+
<Combobox controller={{ name: 'city' }} suggestions={cities} completeMethod={searchCities} block />
|
|
19
|
+
```
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: CommandPalette
|
|
3
|
+
category: navigation
|
|
4
|
+
import: '@mantis-core/ui/components/navigation/CommandPalette'
|
|
5
|
+
whenToUse: Keyboard-driven command search overlay (Ctrl+K); pair with useCommandPalette hook to wire the shortcut.
|
|
6
|
+
baseLibrary: custom
|
|
7
|
+
relatedNextCore: []
|
|
8
|
+
props:
|
|
9
|
+
- { name: commands, type: '{ id: string; label: string; icon?: ReactNode; keywords?: string[]; onSelect: () => void }[]', required: true }
|
|
10
|
+
- { name: open, type: boolean, required: false, default: 'false' }
|
|
11
|
+
- { name: onOpenChange, type: '(open: boolean) => void', required: false }
|
|
12
|
+
---
|
|
13
|
+
## Example
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
<CommandPalette commands={cmds} open={paletteOpen} onOpenChange={setPaletteOpen} />
|
|
17
|
+
```
|