@mantis-core/ui 0.5.0 → 0.7.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/CHANGELOG.md +155 -0
- package/COMPONENTS.md +71 -73
- package/README.md +19 -6
- package/bin/mantis-llm.mjs +242 -0
- package/catalog.json +3031 -0
- package/dist/components/Buttons/Button.d.ts +39 -9
- package/dist/components/Buttons/Button.d.ts.map +1 -1
- package/dist/components/Buttons/Button.js +21 -13
- package/dist/components/Buttons/Button.js.map +1 -1
- package/dist/components/Forms/AutoCompleteField.d.ts +60 -0
- package/dist/components/Forms/AutoCompleteField.d.ts.map +1 -0
- package/dist/components/Forms/AutoCompleteField.js +125 -0
- package/dist/components/Forms/AutoCompleteField.js.map +1 -0
- package/dist/components/Forms/CKEditorInput.d.ts +5 -2
- package/dist/components/Forms/CKEditorInput.d.ts.map +1 -1
- package/dist/components/Forms/CKEditorInput.js +5 -2
- package/dist/components/Forms/CKEditorInput.js.map +1 -1
- package/dist/components/Forms/CheckboxField.d.ts +14 -0
- package/dist/components/Forms/CheckboxField.d.ts.map +1 -0
- package/dist/components/Forms/CheckboxField.js +26 -0
- package/dist/components/Forms/CheckboxField.js.map +1 -0
- package/dist/components/Forms/ColorPickerInput.d.ts +27 -8
- package/dist/components/Forms/ColorPickerInput.d.ts.map +1 -1
- package/dist/components/Forms/ColorPickerInput.js +57 -11
- package/dist/components/Forms/ColorPickerInput.js.map +1 -1
- package/dist/components/Forms/DateField.d.ts +68 -0
- package/dist/components/Forms/DateField.d.ts.map +1 -0
- package/dist/components/Forms/DateField.js +108 -0
- package/dist/components/Forms/DateField.js.map +1 -0
- package/dist/components/Forms/DatePresets.d.ts.map +1 -1
- package/dist/components/Forms/DatePresets.js +6 -3
- package/dist/components/Forms/DatePresets.js.map +1 -1
- package/dist/components/Forms/FieldShell.d.ts +24 -0
- package/dist/components/Forms/FieldShell.d.ts.map +1 -0
- package/dist/components/Forms/FieldShell.js +39 -0
- package/dist/components/Forms/FieldShell.js.map +1 -0
- package/dist/components/Forms/FileDropzone.d.ts +4 -2
- package/dist/components/Forms/FileDropzone.d.ts.map +1 -1
- package/dist/components/Forms/FileDropzone.js.map +1 -1
- package/dist/components/Forms/FormActionsBar.js +2 -2
- package/dist/components/Forms/FormActionsBar.js.map +1 -1
- package/dist/components/Forms/FormWizard.d.ts +1 -1
- package/dist/components/Forms/FormWizard.d.ts.map +1 -1
- package/dist/components/Forms/FormWizard.js +4 -5
- package/dist/components/Forms/FormWizard.js.map +1 -1
- package/dist/components/Forms/HiddenField.d.ts +12 -6
- package/dist/components/Forms/HiddenField.d.ts.map +1 -1
- package/dist/components/Forms/HiddenField.js +14 -5
- package/dist/components/Forms/HiddenField.js.map +1 -1
- package/dist/components/Forms/MaskField.d.ts +28 -0
- package/dist/components/Forms/MaskField.d.ts.map +1 -0
- package/dist/components/Forms/MaskField.js +74 -0
- package/dist/components/Forms/MaskField.js.map +1 -0
- package/dist/components/Forms/NumberField.d.ts +14 -0
- package/dist/components/Forms/NumberField.d.ts.map +1 -0
- package/dist/components/Forms/NumberField.js +51 -0
- package/dist/components/Forms/NumberField.js.map +1 -0
- package/dist/components/Forms/OtpInput.d.ts +23 -8
- package/dist/components/Forms/OtpInput.d.ts.map +1 -1
- package/dist/components/Forms/OtpInput.js +37 -8
- package/dist/components/Forms/OtpInput.js.map +1 -1
- package/dist/components/Forms/PasswordInput.d.ts +22 -9
- package/dist/components/Forms/PasswordInput.d.ts.map +1 -1
- package/dist/components/Forms/PasswordInput.js +63 -28
- package/dist/components/Forms/PasswordInput.js.map +1 -1
- package/dist/components/Forms/PhoneInput.d.ts +16 -8
- package/dist/components/Forms/PhoneInput.d.ts.map +1 -1
- package/dist/components/Forms/PhoneInput.js +13 -6
- package/dist/components/Forms/PhoneInput.js.map +1 -1
- package/dist/components/Forms/RadioGroup.d.ts +34 -13
- package/dist/components/Forms/RadioGroup.d.ts.map +1 -1
- package/dist/components/Forms/RadioGroup.js +49 -6
- package/dist/components/Forms/RadioGroup.js.map +1 -1
- package/dist/components/Forms/RangeSlider.d.ts +26 -11
- package/dist/components/Forms/RangeSlider.d.ts.map +1 -1
- package/dist/components/Forms/RangeSlider.js +40 -7
- package/dist/components/Forms/RangeSlider.js.map +1 -1
- package/dist/components/Forms/RatingInput.d.ts +24 -8
- package/dist/components/Forms/RatingInput.d.ts.map +1 -1
- package/dist/components/Forms/RatingInput.js +41 -9
- package/dist/components/Forms/RatingInput.js.map +1 -1
- package/dist/components/Forms/SearchInput.d.ts +18 -10
- package/dist/components/Forms/SearchInput.d.ts.map +1 -1
- package/dist/components/Forms/SearchInput.js +44 -23
- package/dist/components/Forms/SearchInput.js.map +1 -1
- package/dist/components/Forms/SelectField.d.ts +41 -0
- package/dist/components/Forms/SelectField.d.ts.map +1 -0
- package/dist/components/Forms/SelectField.js +110 -0
- package/dist/components/Forms/SelectField.js.map +1 -0
- package/dist/components/Forms/SwitchField.d.ts +14 -0
- package/dist/components/Forms/SwitchField.d.ts.map +1 -0
- package/dist/components/Forms/SwitchField.js +26 -0
- package/dist/components/Forms/SwitchField.js.map +1 -0
- package/dist/components/Forms/TagsInput.d.ts +29 -8
- package/dist/components/Forms/TagsInput.d.ts.map +1 -1
- package/dist/components/Forms/TagsInput.js +53 -9
- package/dist/components/Forms/TagsInput.js.map +1 -1
- package/dist/components/Forms/TextArea.d.ts +13 -10
- package/dist/components/Forms/TextArea.d.ts.map +1 -1
- package/dist/components/Forms/TextArea.js +27 -9
- package/dist/components/Forms/TextArea.js.map +1 -1
- package/dist/components/Forms/TextField.d.ts +14 -0
- package/dist/components/Forms/TextField.d.ts.map +1 -0
- package/dist/components/Forms/TextField.js +29 -0
- package/dist/components/Forms/TextField.js.map +1 -0
- package/dist/components/Forms/ToggleInlineButton.d.ts +33 -12
- package/dist/components/Forms/ToggleInlineButton.d.ts.map +1 -1
- package/dist/components/Forms/ToggleInlineButton.js +56 -6
- package/dist/components/Forms/ToggleInlineButton.js.map +1 -1
- package/dist/components/Forms/UploadFilesPreview.js +3 -3
- package/dist/components/Forms/UploadFilesPreview.js.map +1 -1
- package/dist/components/Forms/field-typing.test-d.d.ts +2 -0
- package/dist/components/Forms/field-typing.test-d.d.ts.map +1 -0
- package/dist/components/Forms/field-typing.test-d.js +24 -0
- package/dist/components/Forms/field-typing.test-d.js.map +1 -0
- package/dist/components/Forms/useFieldController.d.ts +85 -0
- package/dist/components/Forms/useFieldController.d.ts.map +1 -0
- package/dist/components/Forms/useFieldController.js +54 -0
- package/dist/components/Forms/useFieldController.js.map +1 -0
- package/dist/components/Loaders/Loading.d.ts.map +1 -1
- package/dist/components/Loaders/Loading.js +3 -2
- package/dist/components/Loaders/Loading.js.map +1 -1
- package/dist/components/Tables/ActionColumn.d.ts +20 -4
- package/dist/components/Tables/ActionColumn.d.ts.map +1 -1
- package/dist/components/Tables/ActionColumn.js +24 -5
- package/dist/components/Tables/ActionColumn.js.map +1 -1
- package/dist/components/Tables/FilterPannel.d.ts +9 -2
- package/dist/components/Tables/FilterPannel.d.ts.map +1 -1
- package/dist/components/Tables/FilterPannel.js +15 -11
- package/dist/components/Tables/FilterPannel.js.map +1 -1
- package/dist/components/Tables/IndexColumn.d.ts +12 -3
- package/dist/components/Tables/IndexColumn.d.ts.map +1 -1
- package/dist/components/Tables/IndexColumn.js +21 -5
- package/dist/components/Tables/IndexColumn.js.map +1 -1
- package/dist/components/Tables/MantisDataTable.d.ts +45 -0
- package/dist/components/Tables/MantisDataTable.d.ts.map +1 -0
- package/dist/components/Tables/MantisDataTable.js +63 -0
- package/dist/components/Tables/MantisDataTable.js.map +1 -0
- package/dist/components/Tables/MenuButton.d.ts +28 -7
- package/dist/components/Tables/MenuButton.d.ts.map +1 -1
- package/dist/components/Tables/MenuButton.js +20 -10
- package/dist/components/Tables/MenuButton.js.map +1 -1
- package/dist/components/Tables/PaginatedTable.d.ts +26 -17
- package/dist/components/Tables/PaginatedTable.d.ts.map +1 -1
- package/dist/components/Tables/PaginatedTable.js +24 -22
- package/dist/components/Tables/PaginatedTable.js.map +1 -1
- package/dist/components/Tables/cell-presets.d.ts +35 -0
- package/dist/components/Tables/cell-presets.d.ts.map +1 -0
- package/dist/components/Tables/cell-presets.js +40 -0
- package/dist/components/Tables/cell-presets.js.map +1 -0
- package/dist/components/Tables/columns.d.ts +40 -0
- package/dist/components/Tables/columns.d.ts.map +1 -0
- package/dist/components/Tables/columns.js +2 -0
- package/dist/components/Tables/columns.js.map +1 -0
- package/dist/components/Tables/filters/MultiSelectFilter.d.ts +24 -6
- package/dist/components/Tables/filters/MultiSelectFilter.d.ts.map +1 -1
- package/dist/components/Tables/filters/MultiSelectFilter.js +19 -6
- package/dist/components/Tables/filters/MultiSelectFilter.js.map +1 -1
- package/dist/components/auth/ChangePasswordForm.d.ts.map +1 -1
- package/dist/components/auth/ChangePasswordForm.js +12 -12
- package/dist/components/auth/ChangePasswordForm.js.map +1 -1
- package/dist/components/auth/ForgotPasswordForm.d.ts.map +1 -1
- package/dist/components/auth/ForgotPasswordForm.js +7 -5
- package/dist/components/auth/ForgotPasswordForm.js.map +1 -1
- package/dist/components/auth/LoginForm.d.ts +2 -2
- package/dist/components/auth/LoginForm.d.ts.map +1 -1
- package/dist/components/auth/LoginForm.js +15 -15
- package/dist/components/auth/LoginForm.js.map +1 -1
- package/dist/components/auth/ResetPasswordForm.d.ts.map +1 -1
- package/dist/components/auth/ResetPasswordForm.js +11 -12
- package/dist/components/auth/ResetPasswordForm.js.map +1 -1
- package/dist/components/auth/UserMenu.d.ts +11 -1
- package/dist/components/auth/UserMenu.d.ts.map +1 -1
- package/dist/components/auth/UserMenu.js +30 -87
- package/dist/components/auth/UserMenu.js.map +1 -1
- package/dist/components/data/Timeline.d.ts +2 -2
- package/dist/components/data/Timeline.d.ts.map +1 -1
- package/dist/components/data/Timeline.js +17 -17
- package/dist/components/data/Timeline.js.map +1 -1
- package/dist/components/feedback/Avatar.d.ts +4 -2
- package/dist/components/feedback/Avatar.d.ts.map +1 -1
- package/dist/components/feedback/Avatar.js +4 -4
- package/dist/components/feedback/Avatar.js.map +1 -1
- package/dist/components/feedback/CardSkeleton.d.ts.map +1 -1
- package/dist/components/feedback/CardSkeleton.js +3 -3
- package/dist/components/feedback/CardSkeleton.js.map +1 -1
- package/dist/components/feedback/TableSkeleton.d.ts.map +1 -1
- package/dist/components/feedback/TableSkeleton.js +3 -3
- package/dist/components/feedback/TableSkeleton.js.map +1 -1
- package/dist/components/feedback/Tag.d.ts +4 -2
- package/dist/components/feedback/Tag.d.ts.map +1 -1
- package/dist/components/feedback/Tag.js +4 -4
- package/dist/components/feedback/Tag.js.map +1 -1
- package/dist/components/navigation/CommandPalette.d.ts.map +1 -1
- package/dist/components/navigation/CommandPalette.js +5 -2
- package/dist/components/navigation/CommandPalette.js.map +1 -1
- package/dist/components/navigation/PageTabs.d.ts +10 -8
- package/dist/components/navigation/PageTabs.d.ts.map +1 -1
- package/dist/components/navigation/PageTabs.js +17 -13
- package/dist/components/navigation/PageTabs.js.map +1 -1
- package/dist/components/overlays/Drawer.d.ts +16 -3
- package/dist/components/overlays/Drawer.d.ts.map +1 -1
- package/dist/components/overlays/Drawer.js +9 -5
- package/dist/components/overlays/Drawer.js.map +1 -1
- package/dist/components/overlays/Modal.d.ts +18 -3
- package/dist/components/overlays/Modal.d.ts.map +1 -1
- package/dist/components/overlays/Modal.js +13 -5
- package/dist/components/overlays/Modal.js.map +1 -1
- package/dist/components/pages/app-shell/AppShell.d.ts.map +1 -1
- package/dist/components/pages/app-shell/AppShell.js +6 -6
- package/dist/components/pages/app-shell/AppShell.js.map +1 -1
- package/dist/components/ui/ConfirmDialog.d.ts +1 -2
- package/dist/components/ui/ConfirmDialog.d.ts.map +1 -1
- package/dist/components/ui/ConfirmDialog.js +10 -4
- package/dist/components/ui/ConfirmDialog.js.map +1 -1
- package/dist/components/ui/DataState.js +2 -2
- package/dist/components/ui/DataState.js.map +1 -1
- package/dist/index.d.ts +71 -42
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +114 -22
- package/dist/index.js.map +1 -1
- package/docs/README.md +1 -1
- package/docs/components/action-column.md +33 -7
- package/docs/components/admin-page-configurator.md +24 -5
- package/docs/components/admin-page-header.md +21 -3
- package/docs/components/admin-page-layout-shell.md +18 -4
- package/docs/components/admin-page-layout.md +34 -5
- package/docs/components/app-shell.md +31 -6
- package/docs/components/auto-complete-field.md +60 -0
- package/docs/components/avatar.md +18 -8
- package/docs/components/bar-chart.md +25 -7
- package/docs/components/breadcrumbs.md +15 -2
- package/docs/components/button.md +34 -15
- package/docs/components/card-skeleton.md +9 -3
- package/docs/components/change-password-form.md +23 -4
- package/docs/components/checkbox-field.md +38 -0
- package/docs/components/ckeditor-input.md +40 -8
- package/docs/components/color-picker-input.md +19 -8
- package/docs/components/command-palette.md +23 -2
- package/docs/components/confirm-dialog.md +36 -9
- package/docs/components/data-state.md +31 -6
- package/docs/components/date-field.md +39 -0
- package/docs/components/date-presets.md +19 -5
- package/docs/components/description-list.md +20 -2
- package/docs/components/dirty-form-guard.md +16 -4
- package/docs/components/donut-chart.md +24 -7
- package/docs/components/drawer.md +27 -8
- package/docs/components/empty-state.md +12 -2
- package/docs/components/error-boundary.md +16 -2
- package/docs/components/error-message.md +22 -3
- package/docs/components/field-shell.md +47 -0
- package/docs/components/file-dropzone.md +22 -6
- package/docs/components/filter-pannel.md +34 -7
- package/docs/components/forgot-password-form.md +23 -5
- package/docs/components/form-actions-bar.md +21 -2
- package/docs/components/form-field-render.md +36 -8
- package/docs/components/form-section.md +13 -1
- package/docs/components/form-wizard.md +34 -5
- package/docs/components/hidden-field.md +22 -6
- package/docs/components/index-column.md +25 -5
- package/docs/components/line-chart.md +25 -7
- package/docs/components/loading.md +14 -5
- package/docs/components/login-form.md +31 -6
- package/docs/components/mantis-data-table.md +61 -0
- package/docs/components/map-picker-client.md +29 -8
- package/docs/components/map-picker-osm.md +27 -9
- package/docs/components/map-picker.md +25 -4
- package/docs/components/mask-field.md +31 -0
- package/docs/components/menu-button.md +22 -7
- package/docs/components/modal.md +34 -9
- package/docs/components/multi-select-filter.md +25 -7
- package/docs/components/number-field.md +40 -0
- package/docs/components/otp-input.md +20 -7
- package/docs/components/page-tabs.md +23 -4
- package/docs/components/page-title.md +6 -1
- package/docs/components/paginated-table.md +36 -13
- package/docs/components/pagination.md +20 -7
- package/docs/components/password-input.md +20 -8
- package/docs/components/phone-input.md +17 -7
- package/docs/components/radio-group.md +39 -9
- package/docs/components/range-slider.md +18 -6
- package/docs/components/rating-input.md +19 -8
- package/docs/components/render-field.md +31 -3
- package/docs/components/reset-password-form.md +24 -4
- package/docs/components/rich-text-preview.md +17 -5
- package/docs/components/search-input.md +18 -7
- package/docs/components/select-field.md +55 -0
- package/docs/components/stat-card.md +14 -3
- package/docs/components/status-badge.md +17 -7
- package/docs/components/switch-field.md +32 -0
- package/docs/components/table-filter-field.md +22 -4
- package/docs/components/table-skeleton.md +9 -3
- package/docs/components/table-toolbar.md +18 -5
- package/docs/components/tag.md +16 -7
- package/docs/components/tags-input.md +21 -8
- package/docs/components/text-area.md +18 -8
- package/docs/components/text-field.md +32 -0
- package/docs/components/timeline.md +19 -3
- package/docs/components/toggle-inline-button.md +42 -10
- package/docs/components/upload-files-preview.md +23 -2
- package/docs/components/use-field-controller.md +58 -0
- package/docs/components/user-menu.md +26 -6
- package/docs/contracts/dependency-map.md +50 -52
- package/docs/contracts/field-controller.md +138 -0
- package/docs/contracts/style-imports.md +1 -20
- package/llms.txt +70 -72
- package/package.json +48 -11
- package/dist/components/Forms/AsyncSelect.d.ts +0 -20
- package/dist/components/Forms/AsyncSelect.d.ts.map +0 -1
- package/dist/components/Forms/AsyncSelect.js +0 -77
- package/dist/components/Forms/AsyncSelect.js.map +0 -1
- package/dist/components/Forms/Combobox.d.ts +0 -10
- package/dist/components/Forms/Combobox.d.ts.map +0 -1
- package/dist/components/Forms/Combobox.js +0 -11
- package/dist/components/Forms/Combobox.js.map +0 -1
- package/dist/components/Forms/CurrencyInput.d.ts +0 -12
- package/dist/components/Forms/CurrencyInput.d.ts.map +0 -1
- package/dist/components/Forms/CurrencyInput.js +0 -9
- package/dist/components/Forms/CurrencyInput.js.map +0 -1
- package/dist/components/Forms/DateInput.d.ts +0 -10
- package/dist/components/Forms/DateInput.d.ts.map +0 -1
- package/dist/components/Forms/DateInput.js +0 -11
- package/dist/components/Forms/DateInput.js.map +0 -1
- package/dist/components/Forms/DateRangeInput.d.ts +0 -10
- package/dist/components/Forms/DateRangeInput.d.ts.map +0 -1
- package/dist/components/Forms/DateRangeInput.js +0 -13
- package/dist/components/Forms/DateRangeInput.js.map +0 -1
- package/dist/components/Forms/DropDown.d.ts +0 -10
- package/dist/components/Forms/DropDown.d.ts.map +0 -1
- package/dist/components/Forms/DropDown.js +0 -11
- package/dist/components/Forms/DropDown.js.map +0 -1
- package/dist/components/Forms/MultiSelect.d.ts +0 -10
- package/dist/components/Forms/MultiSelect.d.ts.map +0 -1
- package/dist/components/Forms/MultiSelect.js +0 -13
- package/dist/components/Forms/MultiSelect.js.map +0 -1
- package/dist/components/Forms/NumberInput.d.ts +0 -10
- package/dist/components/Forms/NumberInput.d.ts.map +0 -1
- package/dist/components/Forms/NumberInput.js +0 -16
- package/dist/components/Forms/NumberInput.js.map +0 -1
- package/dist/components/Forms/Select.d.ts +0 -15
- package/dist/components/Forms/Select.d.ts.map +0 -1
- package/dist/components/Forms/Select.js +0 -48
- package/dist/components/Forms/Select.js.map +0 -1
- package/dist/components/Forms/Switch.d.ts +0 -18
- package/dist/components/Forms/Switch.d.ts.map +0 -1
- package/dist/components/Forms/Switch.js +0 -30
- package/dist/components/Forms/Switch.js.map +0 -1
- package/dist/components/Forms/TextInput.d.ts +0 -11
- package/dist/components/Forms/TextInput.d.ts.map +0 -1
- package/dist/components/Forms/TextInput.js +0 -12
- package/dist/components/Forms/TextInput.js.map +0 -1
- package/dist/components/Forms/TimePicker.d.ts +0 -13
- package/dist/components/Forms/TimePicker.d.ts.map +0 -1
- package/dist/components/Forms/TimePicker.js +0 -19
- package/dist/components/Forms/TimePicker.js.map +0 -1
- package/dist/components/Forms/Toggle.d.ts +0 -14
- package/dist/components/Forms/Toggle.d.ts.map +0 -1
- package/dist/components/Forms/Toggle.js +0 -10
- package/dist/components/Forms/Toggle.js.map +0 -1
- package/dist/components/Forms/types.d.ts +0 -9
- package/dist/components/Forms/types.d.ts.map +0 -1
- package/dist/components/Forms/types.js +0 -2
- package/dist/components/Forms/types.js.map +0 -1
- package/docs/components/async-select.md +0 -27
- package/docs/components/combobox.md +0 -19
- package/docs/components/currency-input.md +0 -21
- package/docs/components/date-input.md +0 -21
- package/docs/components/date-range-input.md +0 -20
- package/docs/components/drop-down.md +0 -26
- package/docs/components/multi-select.md +0 -22
- package/docs/components/number-input.md +0 -21
- package/docs/components/select.md +0 -28
- package/docs/components/switch.md +0 -24
- package/docs/components/text-input.md +0 -24
- package/docs/components/time-picker.md +0 -25
- package/docs/components/toggle.md +0 -24
- package/docs/contracts/component-doc-schema.md +0 -78
- package/docs/contracts/controller-props.md +0 -28
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Select
|
|
3
|
-
category: forms
|
|
4
|
-
import: '@mantis-core/ui/components/Forms/Select'
|
|
5
|
-
whenToUse: Single-value searchable select (react-select); supports creatable mode.
|
|
6
|
-
baseLibrary: react-select
|
|
7
|
-
formContract: ControllerProps
|
|
8
|
-
requiredStyles: [scss/select.scss]
|
|
9
|
-
relatedComponents: [FormFieldRender, AsyncSelect, DropDown]
|
|
10
|
-
relatedNextCore: []
|
|
11
|
-
props:
|
|
12
|
-
- { name: controller, type: ControllerProps, required: true }
|
|
13
|
-
- { name: options, type: OptionsOrGroups, required: false }
|
|
14
|
-
- { name: isCreatable, type: boolean, required: false, default: 'false' }
|
|
15
|
-
- { name: variant, type: ButtonVariant, required: false, default: '''primary''' }
|
|
16
|
-
- { name: block, type: boolean, required: false }
|
|
17
|
-
- { name: isLoading, type: boolean, required: false }
|
|
18
|
-
---
|
|
19
|
-
## Example
|
|
20
|
-
|
|
21
|
-
```tsx
|
|
22
|
-
<Select controller={{ name: 'status' }} options={statusOptions} block />
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
## Notes
|
|
26
|
-
|
|
27
|
-
- This is not PrimeReact.
|
|
28
|
-
- Keep `classNamePrefix="react-select"` behavior so the shared SCSS continues to match.
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Switch
|
|
3
|
-
category: forms
|
|
4
|
-
import: '@mantis-core/ui/components/Forms/Switch'
|
|
5
|
-
whenToUse: Toggle/boolean switch wired to react-hook-form.
|
|
6
|
-
baseLibrary: custom
|
|
7
|
-
formContract: ControllerProps
|
|
8
|
-
requiredStyles: [scss/switch.scss]
|
|
9
|
-
relatedComponents: [FormFieldRender, Toggle]
|
|
10
|
-
relatedNextCore: []
|
|
11
|
-
props:
|
|
12
|
-
- { name: controller, type: ControllerProps, required: true }
|
|
13
|
-
- { name: label, type: string, required: false }
|
|
14
|
-
- { name: block, type: boolean, required: false }
|
|
15
|
-
---
|
|
16
|
-
## Example
|
|
17
|
-
|
|
18
|
-
```tsx
|
|
19
|
-
<Switch controller={{ name: 'isActive' }} label='Active' />
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## Notes
|
|
23
|
-
|
|
24
|
-
- This is not PrimeReact `InputSwitch`.
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: TextInput
|
|
3
|
-
category: forms
|
|
4
|
-
import: '@mantis-core/ui/components/Forms/TextInput'
|
|
5
|
-
whenToUse: Single-line text field wired to react-hook-form.
|
|
6
|
-
baseLibrary: primereact/inputtext
|
|
7
|
-
formContract: ControllerProps
|
|
8
|
-
requiredStyles: [scss/inputs.scss]
|
|
9
|
-
relatedComponents: [FormFieldRender, TextArea]
|
|
10
|
-
relatedNextCore: []
|
|
11
|
-
props:
|
|
12
|
-
- { name: controller, type: ControllerProps, required: true }
|
|
13
|
-
- { name: block, type: boolean, required: false, default: 'false' }
|
|
14
|
-
- { name: defaultValue, type: string, required: false, default: '''''' }
|
|
15
|
-
---
|
|
16
|
-
## Example
|
|
17
|
-
|
|
18
|
-
```tsx
|
|
19
|
-
<TextInput controller={{ name: 'email', rules: { required: true } }} block />
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## Notes
|
|
23
|
-
|
|
24
|
-
- Use this when you want PrimeReact `InputText` behavior with `react-hook-form` wiring.
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: TimePicker
|
|
3
|
-
category: forms
|
|
4
|
-
import: '@mantis-core/ui/components/Forms/TimePicker'
|
|
5
|
-
whenToUse: Time-only picker (15-min intervals) wired to react-hook-form; renders as a styled InputText trigger.
|
|
6
|
-
baseLibrary: react-datepicker
|
|
7
|
-
formContract: ControllerProps
|
|
8
|
-
requiredStyles: [scss/inputs.scss]
|
|
9
|
-
relatedNextCore: []
|
|
10
|
-
props:
|
|
11
|
-
- { name: controller, type: ControllerProps, required: true, description: 'react-hook-form controller config' }
|
|
12
|
-
- { name: block, type: boolean, required: false, default: 'false', description: 'Expand to full width' }
|
|
13
|
-
- { name: datePicker, type: DatePickerProps, required: false, description: 'Passthrough props for react-datepicker' }
|
|
14
|
-
- { name: className, type: string, required: false, description: 'Additional CSS class on the DatePicker wrapper' }
|
|
15
|
-
- { name: timePeriod, type: '''AM'' | ''PM''', required: false, description: 'Default time period hint' }
|
|
16
|
-
---
|
|
17
|
-
## Example
|
|
18
|
-
|
|
19
|
-
```tsx
|
|
20
|
-
{/* TODO: add example */}
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
## Notes
|
|
24
|
-
|
|
25
|
-
- This is not PrimeReact `Calendar`.
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Toggle
|
|
3
|
-
category: forms
|
|
4
|
-
import: '@mantis-core/ui/components/Forms/Toggle'
|
|
5
|
-
whenToUse: Checkbox-based boolean toggle wired to react-hook-form with configurable on/off labels.
|
|
6
|
-
baseLibrary: primereact/checkbox
|
|
7
|
-
formContract: ControllerProps
|
|
8
|
-
relatedComponents: [FormFieldRender, Switch]
|
|
9
|
-
relatedNextCore: []
|
|
10
|
-
props:
|
|
11
|
-
- { name: controller, type: ControllerProps, required: true, description: 'react-hook-form controller config (name, rules, defaultValue)' }
|
|
12
|
-
- { name: on, type: 'string | any', required: false, default: '''SI''', description: 'Label shown when value is true' }
|
|
13
|
-
- { name: off, type: 'string | any', required: false, default: '''NO''', description: 'Label shown when value is false' }
|
|
14
|
-
- { name: size, type: '''sm'' | ''lg'' | ''md''', required: false, description: 'Visual size variant' }
|
|
15
|
-
- { name: offstyle, type: '''primary'' | ''secondary'' | ''dark''', required: false, description: 'Style when off' }
|
|
16
|
-
- { name: onstyle, type: '''primary'' | ''secondary'' | ''dark''', required: false, description: 'Style when on' }
|
|
17
|
-
- { name: onClick, type: any, required: false, description: 'Click handler passthrough' }
|
|
18
|
-
- { name: active, type: boolean, required: false, description: 'Controlled active state' }
|
|
19
|
-
---
|
|
20
|
-
## Example
|
|
21
|
-
|
|
22
|
-
```tsx
|
|
23
|
-
{/* TODO: add example */}
|
|
24
|
-
```
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
# Component Doc Schema
|
|
2
|
-
|
|
3
|
-
Single source of truth for each component in `@mantis-core/ui`. One file per component at
|
|
4
|
-
`docs/components/<kebab-name>.md`. The file has **YAML frontmatter** (machine data) plus a short
|
|
5
|
-
prose body (`## Example`, optional `## Notes`).
|
|
6
|
-
|
|
7
|
-
`catalog.json`, `COMPONENTS.md`, `llms.txt`, `docs/contracts/dependency-map.md`, and
|
|
8
|
-
`docs/contracts/style-imports.md` are **generated** from these files by `pnpm gen:catalog` — never
|
|
9
|
-
edit them by hand. To document a component, edit its `.md` here and re-run the generator.
|
|
10
|
-
|
|
11
|
-
## File shape
|
|
12
|
-
|
|
13
|
-
```md
|
|
14
|
-
---
|
|
15
|
-
name: TextInput
|
|
16
|
-
category: forms
|
|
17
|
-
import: '@mantis-core/ui/components/Forms/TextInput'
|
|
18
|
-
whenToUse: Single-line text field wired to react-hook-form.
|
|
19
|
-
baseLibrary: primereact/inputtext
|
|
20
|
-
formContract: ControllerProps
|
|
21
|
-
requiredStyles: ['scss/inputs.scss']
|
|
22
|
-
relatedComponents: ['FormFieldRender', 'TextArea']
|
|
23
|
-
relatedNextCore: []
|
|
24
|
-
props:
|
|
25
|
-
- { name: controller, type: ControllerProps, required: true }
|
|
26
|
-
- { name: block, type: boolean, required: false, default: false }
|
|
27
|
-
- { name: defaultValue, type: string, required: false, default: "''" }
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
## Example
|
|
31
|
-
|
|
32
|
-
```tsx
|
|
33
|
-
<TextInput controller={{ name: 'title' }} block />
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
## Notes
|
|
37
|
-
|
|
38
|
-
- Optional prose. Gotchas, variants, edge cases. Keep terse — LLM-optimized, no over-info.
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
## Frontmatter fields
|
|
42
|
-
|
|
43
|
-
| Field | Type | Required | Notes |
|
|
44
|
-
|---|---|---|---|
|
|
45
|
-
| `name` | string | ✅ | Component identifier, PascalCase. Matches the export. |
|
|
46
|
-
| `category` | string | ✅ | One of: `forms`, `tables`, `pages`, `maps`, `overlays`, `navigation`, `data`, `feedback`, `auth`, `buttons`, `charts`. Groups `catalog.json`. |
|
|
47
|
-
| `import` | string | ✅¹ | **Deep path**, verbatim into `catalog.json.import`. Form `@mantis-core/ui/components/<Area>/<Name>`. Exceptions exist (`.../components/table-toolbar`, `.../components/table-filter-field`) — store the real path, do not derive it. ¹Omit **only** for overview/guide docs (e.g. `admin-page-layout.md`): an `import`-less file ships but is excluded from `catalog.json` and `llms.txt`. |
|
|
48
|
-
| `whenToUse` | string | ✅ | One line. Drives `catalog.json.whenToUse` + the `llms.txt` index. |
|
|
49
|
-
| `baseLibrary` | string | ➖ | Underlying lib (`primereact/inputtext`, `react-select`, `custom`). Drives `dependency-map.md`. Use `custom` for components with no third-party base. |
|
|
50
|
-
| `formContract` | string | ➖ | Shared contract the component follows, e.g. `ControllerProps`. Omit if none. |
|
|
51
|
-
| `requiredStyles` | string[] | ➖ | SCSS partials from `@mantis-core/styles`, e.g. `['scss/inputs.scss']`. Drives `style-imports.md`. Empty/omit when the component uses only utility classes or inline styles. |
|
|
52
|
-
| `relatedComponents` | string[] | ➖ | Sibling component `name`s. Cross-reference for LLMs. |
|
|
53
|
-
| `relatedNextCore` | string[] | ➖ | Hooks/utils from `@mantis-core/next-core` it pairs with, e.g. `['useList']`. Empty for stateless components. |
|
|
54
|
-
| `props` | object[] | ✅ | Each: `{ name, type, required, default?, description? }`. `name`/`type` strings, `required` boolean, `default`/`description` optional strings. Maps 1:1 to `catalog.json.props[]`. Empty array `[]` for components with no documented props (factories, etc.). |
|
|
55
|
-
|
|
56
|
-
## Body
|
|
57
|
-
|
|
58
|
-
- `## Example` — **enforced**: if the `## Example` heading is present it MUST contain exactly one fenced
|
|
59
|
-
```tsx block (closing fence on its own line) — the generator throws otherwise. The code inside is
|
|
60
|
-
extracted verbatim into `catalog.json.example`. Keep it copy-pasteable. Use the heading `## Example`
|
|
61
|
-
(singular); `## Examples` is not recognized. Avoid an inline ``` inside the snippet.
|
|
62
|
-
- `## Notes` — optional prose. Not consumed by the generator beyond shipping in the `.md`.
|
|
63
|
-
|
|
64
|
-
## Generated outputs (do not hand-edit)
|
|
65
|
-
|
|
66
|
-
| Output | Built from |
|
|
67
|
-
|---|---|
|
|
68
|
-
| `catalog.json` | All frontmatter, grouped by `category`. Shape: `{ name, import, whenToUse, props, example, category }`. |
|
|
69
|
-
| `COMPONENTS.md` | Index linking every `docs/components/*.md`. |
|
|
70
|
-
| `llms.txt` | LLM entry-point: `name · whenToUse · import · link`, grouped by category. |
|
|
71
|
-
| `docs/contracts/dependency-map.md` | `name → baseLibrary`, sectioned PrimeReact / non-PrimeReact / custom. |
|
|
72
|
-
| `docs/contracts/style-imports.md` | `name → requiredStyles`, plus the consolidated `@use` block. |
|
|
73
|
-
|
|
74
|
-
## Hand-maintained (not generated)
|
|
75
|
-
|
|
76
|
-
- `docs/contracts/controller-props.md` — shared contract, not derivable from one component.
|
|
77
|
-
- `docs/README.md`, `README.md` — narrative docs.
|
|
78
|
-
- Each component's `## Notes` prose.
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
# Controller Props
|
|
2
|
-
|
|
3
|
-
Shared form wrappers in `@mantis-core/ui` use this contract:
|
|
4
|
-
|
|
5
|
-
```ts
|
|
6
|
-
export interface ControllerProps {
|
|
7
|
-
name: string;
|
|
8
|
-
rules?: RegisterOptions;
|
|
9
|
-
shouldUnregister?: boolean;
|
|
10
|
-
defaultValue?: any;
|
|
11
|
-
control?: Control;
|
|
12
|
-
}
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
## Usage
|
|
16
|
-
|
|
17
|
-
```tsx
|
|
18
|
-
controller={{
|
|
19
|
-
name: "title",
|
|
20
|
-
control: form.control,
|
|
21
|
-
rules: { required: "Title is required" },
|
|
22
|
-
}}
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
## Notes
|
|
26
|
-
|
|
27
|
-
- Components that expose `controller: ControllerProps` are designed for `react-hook-form`.
|
|
28
|
-
- Some components, such as `FileDropzone`, also support plain controlled mode without `controller`.
|