@lumeweb/portal-framework-ui 0.0.1 → 0.1.1
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/LICENSE +9 -0
- package/README.md +1 -45
- package/dist/esm/components/Copyable.d.ts +43 -0
- package/dist/esm/components/Copyable.js +50 -0
- package/dist/esm/components/Copyable.js.map +1 -0
- package/dist/esm/components/FilterChip.d.ts +16 -0
- package/dist/esm/components/FilterChip.js +47 -0
- package/dist/esm/components/FilterChip.js.map +1 -0
- package/dist/esm/components/Forms.d.ts +55 -0
- package/dist/esm/components/Forms.js +123 -0
- package/dist/esm/components/Forms.js.map +1 -0
- package/dist/esm/components/InlineAuthLinkBanner.d.ts +18 -0
- package/dist/esm/components/InlineAuthLinkBanner.js +23 -0
- package/dist/esm/components/InlineAuthLinkBanner.js.map +1 -0
- package/dist/esm/components/KeyboardShortcutDialog.d.ts +12 -0
- package/dist/esm/components/KeyboardShortcutDialog.js +48 -0
- package/dist/esm/components/KeyboardShortcutDialog.js.map +1 -0
- package/dist/esm/components/Loading.d.ts +13 -0
- package/dist/esm/components/Loading.js +38 -0
- package/dist/esm/components/Loading.js.map +1 -0
- package/dist/esm/components/LumeLogo.d.ts +12 -0
- package/dist/esm/components/LumeLogo.js +22 -0
- package/dist/esm/components/LumeLogo.js.map +1 -0
- package/dist/esm/components/MainNavigation.d.ts +11 -0
- package/dist/esm/components/MainNavigation.js +227 -0
- package/dist/esm/components/MainNavigation.js.map +1 -0
- package/dist/esm/components/SkeletonLoader.d.ts +25 -0
- package/dist/esm/components/SkeletonLoader.js +78 -0
- package/dist/esm/components/SkeletonLoader.js.map +1 -0
- package/dist/esm/components/TableActionsDropdown.d.ts +18 -0
- package/dist/esm/components/TableActionsDropdown.js +34 -0
- package/dist/esm/components/TableActionsDropdown.js.map +1 -0
- package/dist/esm/components/TableContainer.d.ts +13 -0
- package/dist/esm/components/TableContainer.js +15 -0
- package/dist/esm/components/TableContainer.js.map +1 -0
- package/dist/esm/components/ThemeSwitcher.d.ts +7 -0
- package/dist/esm/components/ThemeSwitcher.js +38 -0
- package/dist/esm/components/ThemeSwitcher.js.map +1 -0
- package/dist/esm/components/ThemedBadge.d.ts +23 -0
- package/dist/esm/components/ThemedBadge.js +20 -0
- package/dist/esm/components/ThemedBadge.js.map +1 -0
- package/dist/esm/components/actions/ActionListRenderer.d.ts +15 -0
- package/dist/esm/components/actions/ActionListRenderer.js +38 -0
- package/dist/esm/components/actions/ActionListRenderer.js.map +1 -0
- package/dist/esm/components/actions/actionHelpers.d.ts +127 -0
- package/dist/esm/components/actions/actionHelpers.js +205 -0
- package/dist/esm/components/actions/actionHelpers.js.map +1 -0
- package/dist/esm/components/actions/index.d.ts +6 -0
- package/dist/esm/components/actions/index.js +7 -0
- package/dist/esm/components/actions/items/ButtonActionItem.d.ts +9 -0
- package/dist/esm/components/actions/items/ButtonActionItem.js +23 -0
- package/dist/esm/components/actions/items/ButtonActionItem.js.map +1 -0
- package/dist/esm/components/actions/items/CancelActionItem.d.ts +9 -0
- package/dist/esm/components/actions/items/CancelActionItem.js +28 -0
- package/dist/esm/components/actions/items/CancelActionItem.js.map +1 -0
- package/dist/esm/components/actions/items/CustomActionItem.d.ts +9 -0
- package/dist/esm/components/actions/items/CustomActionItem.js +27 -0
- package/dist/esm/components/actions/items/CustomActionItem.js.map +1 -0
- package/dist/esm/components/actions/items/LinkActionItem.d.ts +9 -0
- package/dist/esm/components/actions/items/LinkActionItem.js +33 -0
- package/dist/esm/components/actions/items/LinkActionItem.js.map +1 -0
- package/dist/esm/components/actions/items/RetryActionItem.d.ts +9 -0
- package/dist/esm/components/actions/items/RetryActionItem.js +23 -0
- package/dist/esm/components/actions/items/RetryActionItem.js.map +1 -0
- package/dist/esm/components/actions/items/SubmitActionItem.d.ts +9 -0
- package/dist/esm/components/actions/items/SubmitActionItem.js +26 -0
- package/dist/esm/components/actions/items/SubmitActionItem.js.map +1 -0
- package/dist/esm/components/actions/register.d.ts +5 -0
- package/dist/esm/components/actions/register.js +20 -0
- package/dist/esm/components/actions/register.js.map +1 -0
- package/dist/esm/components/actions/registry.d.ts +14 -0
- package/dist/esm/components/actions/registry.js +20 -0
- package/dist/esm/components/actions/registry.js.map +1 -0
- package/dist/esm/components/actions/types.d.ts +132 -0
- package/dist/esm/components/actions/types.js +29 -0
- package/dist/esm/components/actions/types.js.map +1 -0
- package/dist/esm/components/app/AppComponent.d.ts +17 -0
- package/dist/esm/components/app/AppComponent.js +179 -0
- package/dist/esm/components/app/AppComponent.js.map +1 -0
- package/dist/esm/components/data-table/BaseTable.d.ts +86 -0
- package/dist/esm/components/data-table/BaseTable.js +123 -0
- package/dist/esm/components/data-table/BaseTable.js.map +1 -0
- package/dist/esm/components/data-table/BaseTableContent.d.ts +48 -0
- package/dist/esm/components/data-table/BaseTableContent.js +38 -0
- package/dist/esm/components/data-table/BaseTableContent.js.map +1 -0
- package/dist/esm/components/data-table/BaseTableInner.d.ts +11 -0
- package/dist/esm/components/data-table/BaseTableInner.js +35 -0
- package/dist/esm/components/data-table/BaseTableInner.js.map +1 -0
- package/dist/esm/components/data-table/BaseTableStackedLayout.d.ts +31 -0
- package/dist/esm/components/data-table/BaseTableStackedLayout.js +137 -0
- package/dist/esm/components/data-table/BaseTableStackedLayout.js.map +1 -0
- package/dist/esm/components/data-table/DataTable.d.ts +18 -0
- package/dist/esm/components/data-table/DataTable.js +97 -0
- package/dist/esm/components/data-table/DataTable.js.map +1 -0
- package/dist/esm/components/data-table/DataTable.types.d.ts +203 -0
- package/dist/esm/components/data-table/DataTable.types.js +25 -0
- package/dist/esm/components/data-table/DataTable.types.js.map +1 -0
- package/dist/esm/components/data-table/DataTableController.d.ts +19 -0
- package/dist/esm/components/data-table/DataTableController.js +31 -0
- package/dist/esm/components/data-table/DataTableController.js.map +1 -0
- package/dist/esm/components/data-table/DefaultPagination.d.ts +7 -0
- package/dist/esm/components/data-table/DefaultPagination.js +62 -0
- package/dist/esm/components/data-table/DefaultPagination.js.map +1 -0
- package/dist/esm/components/data-table/DefaultTableLayout.d.ts +28 -0
- package/dist/esm/components/data-table/DefaultTableLayout.js +70 -0
- package/dist/esm/components/data-table/DefaultTableLayout.js.map +1 -0
- package/dist/esm/components/data-table/EmptyState.d.ts +19 -0
- package/dist/esm/components/data-table/EmptyState.js +16 -0
- package/dist/esm/components/data-table/EmptyState.js.map +1 -0
- package/dist/esm/components/data-table/LoadingState.d.ts +19 -0
- package/dist/esm/components/data-table/LoadingState.js +34 -0
- package/dist/esm/components/data-table/LoadingState.js.map +1 -0
- package/dist/esm/components/data-table/TableAction.d.ts +21 -0
- package/dist/esm/components/data-table/TableAction.js +26 -0
- package/dist/esm/components/data-table/TableAction.js.map +1 -0
- package/dist/esm/components/data-table/TableActionMenu.d.ts +20 -0
- package/dist/esm/components/data-table/TableActionMenu.js +31 -0
- package/dist/esm/components/data-table/TableActionMenu.js.map +1 -0
- package/dist/esm/components/data-table/TableLayoutRenderer.d.ts +48 -0
- package/dist/esm/components/data-table/TableLayoutRenderer.js +45 -0
- package/dist/esm/components/data-table/TableLayoutRenderer.js.map +1 -0
- package/dist/esm/components/data-table/Toolbar.d.ts +17 -0
- package/dist/esm/components/data-table/Toolbar.js +176 -0
- package/dist/esm/components/data-table/Toolbar.js.map +1 -0
- package/dist/esm/components/data-table/ToolbarRegistry.d.ts +66 -0
- package/dist/esm/components/data-table/ToolbarRegistry.js +89 -0
- package/dist/esm/components/data-table/ToolbarRegistry.js.map +1 -0
- package/dist/esm/components/data-table/ToolbarRenderer.d.ts +45 -0
- package/dist/esm/components/data-table/ToolbarRenderer.js +137 -0
- package/dist/esm/components/data-table/ToolbarRenderer.js.map +1 -0
- package/dist/esm/components/data-table/contexts/FilterHelpers.d.ts +30 -0
- package/dist/esm/components/data-table/contexts/FilterHelpers.js +60 -0
- package/dist/esm/components/data-table/contexts/FilterHelpers.js.map +1 -0
- package/dist/esm/components/data-table/contexts/RefineTable.d.ts +25 -0
- package/dist/esm/components/data-table/contexts/RefineTable.js +69 -0
- package/dist/esm/components/data-table/contexts/RefineTable.js.map +1 -0
- package/dist/esm/components/data-table/contexts/TableConfig.d.ts +24 -0
- package/dist/esm/components/data-table/contexts/TableConfig.js +29 -0
- package/dist/esm/components/data-table/contexts/TableConfig.js.map +1 -0
- package/dist/esm/components/data-table/contexts/TableInstance.d.ts +20 -0
- package/dist/esm/components/data-table/contexts/TableInstance.js +21 -0
- package/dist/esm/components/data-table/contexts/TableInstance.js.map +1 -0
- package/dist/esm/components/data-table/contexts/index.d.ts +5 -0
- package/dist/esm/components/data-table/contexts/index.js +6 -0
- package/dist/esm/components/data-table/filterColumnsForMobile.d.ts +16 -0
- package/dist/esm/components/data-table/filterColumnsForMobile.js +31 -0
- package/dist/esm/components/data-table/filterColumnsForMobile.js.map +1 -0
- package/dist/esm/components/data-table/index.d.ts +50 -0
- package/dist/esm/components/data-table/index.js +39 -0
- package/dist/esm/components/data-table/register.d.ts +1 -0
- package/dist/esm/components/data-table/register.js +1 -0
- package/dist/esm/components/data-table/tableOptions.d.ts +18 -0
- package/dist/esm/components/data-table/tableOptions.js +40 -0
- package/dist/esm/components/data-table/tableOptions.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/FilterGroup.d.ts +18 -0
- package/dist/esm/components/data-table/toolbarItems/FilterGroup.js +105 -0
- package/dist/esm/components/data-table/toolbarItems/FilterGroup.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/FilterResolver.d.ts +22 -0
- package/dist/esm/components/data-table/toolbarItems/FilterResolver.js +74 -0
- package/dist/esm/components/data-table/toolbarItems/FilterResolver.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/BaseFilter.d.ts +27 -0
- package/dist/esm/components/data-table/toolbarItems/filters/BaseFilter.js +29 -0
- package/dist/esm/components/data-table/toolbarItems/filters/BaseFilter.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/FilterRegistry.d.ts +52 -0
- package/dist/esm/components/data-table/toolbarItems/filters/FilterRegistry.js +57 -0
- package/dist/esm/components/data-table/toolbarItems/filters/FilterRegistry.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/BooleanFilter.d.ts +12 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/BooleanFilter.js +34 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/BooleanFilter.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/DateFilter.d.ts +12 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/DateFilter.js +25 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/DateFilter.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/MultiSelectFilter.d.ts +13 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/MultiSelectFilter.js +44 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/MultiSelectFilter.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/NumberFilter.d.ts +12 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/NumberFilter.js +29 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/NumberFilter.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/RangeFilter.d.ts +16 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/RangeFilter.js +61 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/RangeFilter.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/SearchFilter.d.ts +12 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/SearchFilter.js +33 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/SearchFilter.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/SelectFilter.d.ts +13 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/SelectFilter.js +95 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/SelectFilter.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/TextFilter.d.ts +12 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/TextFilter.js +25 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/TextFilter.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/index.d.ts +9 -0
- package/dist/esm/components/data-table/toolbarItems/filters/components/index.js +10 -0
- package/dist/esm/components/data-table/toolbarItems/filters/hooks/useFilterOperators.d.ts +43 -0
- package/dist/esm/components/data-table/toolbarItems/filters/hooks/useFilterOperators.js +102 -0
- package/dist/esm/components/data-table/toolbarItems/filters/hooks/useFilterOperators.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/hooks/useFilterTooltip.d.ts +19 -0
- package/dist/esm/components/data-table/toolbarItems/filters/hooks/useFilterTooltip.js +34 -0
- package/dist/esm/components/data-table/toolbarItems/filters/hooks/useFilterTooltip.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/index.d.ts +11 -0
- package/dist/esm/components/data-table/toolbarItems/filters/index.js +13 -0
- package/dist/esm/components/data-table/toolbarItems/filters/register.d.ts +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/register.js +8 -0
- package/dist/esm/components/data-table/toolbarItems/filters/types.d.ts +140 -0
- package/dist/esm/components/data-table/toolbarItems/filters/types.js +58 -0
- package/dist/esm/components/data-table/toolbarItems/filters/types.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/filters/util.d.ts +24 -0
- package/dist/esm/components/data-table/toolbarItems/filters/util.js +43 -0
- package/dist/esm/components/data-table/toolbarItems/filters/util.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/index.d.ts +17 -0
- package/dist/esm/components/data-table/toolbarItems/index.js +18 -0
- package/dist/esm/components/data-table/toolbarItems/items/custom.d.ts +15 -0
- package/dist/esm/components/data-table/toolbarItems/items/custom.js +19 -0
- package/dist/esm/components/data-table/toolbarItems/items/custom.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/items/index.d.ts +6 -0
- package/dist/esm/components/data-table/toolbarItems/items/index.js +6 -0
- package/dist/esm/components/data-table/toolbarItems/items/refresh.d.ts +7 -0
- package/dist/esm/components/data-table/toolbarItems/items/refresh.js +36 -0
- package/dist/esm/components/data-table/toolbarItems/items/refresh.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/items/search.d.ts +7 -0
- package/dist/esm/components/data-table/toolbarItems/items/search.js +66 -0
- package/dist/esm/components/data-table/toolbarItems/items/search.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/items/separator.d.ts +16 -0
- package/dist/esm/components/data-table/toolbarItems/items/separator.js +20 -0
- package/dist/esm/components/data-table/toolbarItems/items/separator.js.map +1 -0
- package/dist/esm/components/data-table/toolbarItems/register.d.ts +24 -0
- package/dist/esm/components/data-table/toolbarItems/register.js +119 -0
- package/dist/esm/components/data-table/toolbarItems/register.js.map +1 -0
- package/dist/esm/components/data-table/useMobileDetection.d.ts +18 -0
- package/dist/esm/components/data-table/useMobileDetection.js +32 -0
- package/dist/esm/components/data-table/useMobileDetection.js.map +1 -0
- package/dist/esm/components/data-table/useTableHandlers.d.ts +57 -0
- package/dist/esm/components/data-table/useTableHandlers.js +69 -0
- package/dist/esm/components/data-table/useTableHandlers.js.map +1 -0
- package/dist/esm/components/data-table/useTableLayoutSelector.d.ts +16 -0
- package/dist/esm/components/data-table/useTableLayoutSelector.js +12 -0
- package/dist/esm/components/data-table/useTableLayoutSelector.js.map +1 -0
- package/dist/esm/components/dialog/Dialog.context.d.ts +18 -0
- package/dist/esm/components/dialog/Dialog.context.js +80 -0
- package/dist/esm/components/dialog/Dialog.context.js.map +1 -0
- package/dist/esm/components/dialog/Dialog.registry.d.ts +22 -0
- package/dist/esm/components/dialog/Dialog.registry.js +24 -0
- package/dist/esm/components/dialog/Dialog.registry.js.map +1 -0
- package/dist/esm/components/dialog/Dialog.renderer.d.ts +9 -0
- package/dist/esm/components/dialog/Dialog.renderer.js +63 -0
- package/dist/esm/components/dialog/Dialog.renderer.js.map +1 -0
- package/dist/esm/components/dialog/Dialog.types.d.ts +273 -0
- package/dist/esm/components/dialog/Dialog.types.js +233 -0
- package/dist/esm/components/dialog/Dialog.types.js.map +1 -0
- package/dist/esm/components/dialog/DialogActions.context.d.ts +13 -0
- package/dist/esm/components/dialog/DialogActions.context.js +13 -0
- package/dist/esm/components/dialog/DialogActions.context.js.map +1 -0
- package/dist/esm/components/dialog/DialogContainer.d.ts +15 -0
- package/dist/esm/components/dialog/DialogContainer.js +37 -0
- package/dist/esm/components/dialog/DialogContainer.js.map +1 -0
- package/dist/esm/components/dialog/DialogContent.d.ts +14 -0
- package/dist/esm/components/dialog/DialogContent.js +18 -0
- package/dist/esm/components/dialog/DialogContent.js.map +1 -0
- package/dist/esm/components/dialog/DialogFooterContent.d.ts +14 -0
- package/dist/esm/components/dialog/DialogFooterContent.js +20 -0
- package/dist/esm/components/dialog/DialogFooterContent.js.map +1 -0
- package/dist/esm/components/dialog/DialogHeaderContent.d.ts +12 -0
- package/dist/esm/components/dialog/DialogHeaderContent.js +24 -0
- package/dist/esm/components/dialog/DialogHeaderContent.js.map +1 -0
- package/dist/esm/components/dialog/DialogState.context.d.ts +11 -0
- package/dist/esm/components/dialog/DialogState.context.js +11 -0
- package/dist/esm/components/dialog/DialogState.context.js.map +1 -0
- package/dist/esm/components/dialog/index.d.ts +6 -0
- package/dist/esm/components/dialog/index.js +8 -0
- package/dist/esm/components/dialog/types/AlertDialog.d.ts +19 -0
- package/dist/esm/components/dialog/types/AlertDialog.js +29 -0
- package/dist/esm/components/dialog/types/AlertDialog.js.map +1 -0
- package/dist/esm/components/dialog/types/ConfirmDialog.d.ts +17 -0
- package/dist/esm/components/dialog/types/ConfirmDialog.js +24 -0
- package/dist/esm/components/dialog/types/ConfirmDialog.js.map +1 -0
- package/dist/esm/components/dialog/types/CustomDialog.d.ts +28 -0
- package/dist/esm/components/dialog/types/CustomDialog.js +17 -0
- package/dist/esm/components/dialog/types/CustomDialog.js.map +1 -0
- package/dist/esm/components/dialog/types/FormDialog.d.ts +22 -0
- package/dist/esm/components/dialog/types/FormDialog.js +46 -0
- package/dist/esm/components/dialog/types/FormDialog.js.map +1 -0
- package/dist/esm/components/dialog/types/WizardDialog.d.ts +29 -0
- package/dist/esm/components/dialog/types/WizardDialog.js +43 -0
- package/dist/esm/components/dialog/types/WizardDialog.js.map +1 -0
- package/dist/esm/components/dialog/utils/dialogClasses.d.ts +7 -0
- package/dist/esm/components/dialog/utils/dialogClasses.js +14 -0
- package/dist/esm/components/dialog/utils/dialogClasses.js.map +1 -0
- package/dist/esm/components/dialog/utils/dialogDetection.d.ts +32 -0
- package/dist/esm/components/dialog/utils/dialogDetection.js +47 -0
- package/dist/esm/components/dialog/utils/dialogDetection.js.map +1 -0
- package/dist/esm/components/dialog/utils/index.d.ts +3 -0
- package/dist/esm/components/dialog/utils/index.js +4 -0
- package/dist/esm/components/editor/BlockTypeDropdown.d.ts +12 -0
- package/dist/esm/components/editor/BlockTypeDropdown.js +57 -0
- package/dist/esm/components/editor/BlockTypeDropdown.js.map +1 -0
- package/dist/esm/components/editor/Editor.d.ts +7 -0
- package/dist/esm/components/editor/Editor.js +17 -0
- package/dist/esm/components/editor/Editor.js.map +1 -0
- package/dist/esm/components/editor/EditorInner.d.ts +14 -0
- package/dist/esm/components/editor/EditorInner.js +107 -0
- package/dist/esm/components/editor/EditorInner.js.map +1 -0
- package/dist/esm/components/editor/Preview.d.ts +5 -0
- package/dist/esm/components/editor/Preview.js +18 -0
- package/dist/esm/components/editor/Preview.js.map +1 -0
- package/dist/esm/components/editor/ToolbarContext.d.ts +39 -0
- package/dist/esm/components/editor/ToolbarContext.js +54 -0
- package/dist/esm/components/editor/ToolbarContext.js.map +1 -0
- package/dist/esm/components/editor/ToolbarPlugin.d.ts +20 -0
- package/dist/esm/components/editor/ToolbarPlugin.js +194 -0
- package/dist/esm/components/editor/ToolbarPlugin.js.map +1 -0
- package/dist/esm/components/editor/formatting.d.ts +15 -0
- package/dist/esm/components/editor/formatting.js +117 -0
- package/dist/esm/components/editor/formatting.js.map +1 -0
- package/dist/esm/components/editor/index.d.ts +3 -0
- package/dist/esm/components/editor/index.js +3 -0
- package/dist/esm/components/form/FormGroup.d.ts +18 -0
- package/dist/esm/components/form/FormGroup.js +28 -0
- package/dist/esm/components/form/FormGroup.js.map +1 -0
- package/dist/esm/components/form/FormRenderer.d.ts +14 -0
- package/dist/esm/components/form/FormRenderer.js +179 -0
- package/dist/esm/components/form/FormRenderer.js.map +1 -0
- package/dist/esm/components/form/SchemaForm.d.ts +18 -0
- package/dist/esm/components/form/SchemaForm.js +172 -0
- package/dist/esm/components/form/SchemaForm.js.map +1 -0
- package/dist/esm/components/form/StepControlContext.d.ts +199 -0
- package/dist/esm/components/form/StepControlContext.js +249 -0
- package/dist/esm/components/form/StepControlContext.js.map +1 -0
- package/dist/esm/components/form/StepSchemaForm.d.ts +22 -0
- package/dist/esm/components/form/StepSchemaForm.js +176 -0
- package/dist/esm/components/form/StepSchemaForm.js.map +1 -0
- package/dist/esm/components/form/WizardForm.d.ts +16 -0
- package/dist/esm/components/form/WizardForm.js +126 -0
- package/dist/esm/components/form/WizardForm.js.map +1 -0
- package/dist/esm/components/form/WizardStepContent.d.ts +26 -0
- package/dist/esm/components/form/WizardStepContent.js +46 -0
- package/dist/esm/components/form/WizardStepContent.js.map +1 -0
- package/dist/esm/components/form/__mocks__/@hookform/resolvers/zod.d.ts +8 -0
- package/dist/esm/components/form/adapters.d.ts +23 -0
- package/dist/esm/components/form/adapters.js +43 -0
- package/dist/esm/components/form/adapters.js.map +1 -0
- package/dist/esm/components/form/autocomplete/index.d.ts +3 -0
- package/dist/esm/components/form/autocomplete/index.js +4 -0
- package/dist/esm/components/form/autocomplete/register.d.ts +8 -0
- package/dist/esm/components/form/autocomplete/register.js +161 -0
- package/dist/esm/components/form/autocomplete/register.js.map +1 -0
- package/dist/esm/components/form/autocomplete/rules.d.ts +15 -0
- package/dist/esm/components/form/autocomplete/rules.js +198 -0
- package/dist/esm/components/form/autocomplete/rules.js.map +1 -0
- package/dist/esm/components/form/context.d.ts +29 -0
- package/dist/esm/components/form/context.js +25 -0
- package/dist/esm/components/form/context.js.map +1 -0
- package/dist/esm/components/form/fields/Checkbox.d.ts +6 -0
- package/dist/esm/components/form/fields/Checkbox.js +33 -0
- package/dist/esm/components/form/fields/Checkbox.js.map +1 -0
- package/dist/esm/components/form/fields/DatePicker.d.ts +6 -0
- package/dist/esm/components/form/fields/DatePicker.js +29 -0
- package/dist/esm/components/form/fields/DatePicker.js.map +1 -0
- package/dist/esm/components/form/fields/EmailInput.d.ts +6 -0
- package/dist/esm/components/form/fields/EmailInput.js +25 -0
- package/dist/esm/components/form/fields/EmailInput.js.map +1 -0
- package/dist/esm/components/form/fields/FileInput.d.ts +6 -0
- package/dist/esm/components/form/fields/FileInput.js +28 -0
- package/dist/esm/components/form/fields/FileInput.js.map +1 -0
- package/dist/esm/components/form/fields/Input.d.ts +6 -0
- package/dist/esm/components/form/fields/Input.js +30 -0
- package/dist/esm/components/form/fields/Input.js.map +1 -0
- package/dist/esm/components/form/fields/RadioGroup.d.ts +6 -0
- package/dist/esm/components/form/fields/RadioGroup.js +42 -0
- package/dist/esm/components/form/fields/RadioGroup.js.map +1 -0
- package/dist/esm/components/form/fields/RichText.d.ts +6 -0
- package/dist/esm/components/form/fields/RichText.js +30 -0
- package/dist/esm/components/form/fields/RichText.js.map +1 -0
- package/dist/esm/components/form/fields/Select.d.ts +6 -0
- package/dist/esm/components/form/fields/Select.js +37 -0
- package/dist/esm/components/form/fields/Select.js.map +1 -0
- package/dist/esm/components/form/fields/Slider.d.ts +6 -0
- package/dist/esm/components/form/fields/Slider.js +29 -0
- package/dist/esm/components/form/fields/Slider.js.map +1 -0
- package/dist/esm/components/form/fields/Switch.d.ts +6 -0
- package/dist/esm/components/form/fields/Switch.js +33 -0
- package/dist/esm/components/form/fields/Switch.js.map +1 -0
- package/dist/esm/components/form/fields/Textarea.d.ts +6 -0
- package/dist/esm/components/form/fields/Textarea.js +28 -0
- package/dist/esm/components/form/fields/Textarea.js.map +1 -0
- package/dist/esm/components/form/fields/index.d.ts +13 -0
- package/dist/esm/components/form/fields/index.js +14 -0
- package/dist/esm/components/form/fields/registry.d.ts +11 -0
- package/dist/esm/components/form/fields/registry.js +15 -0
- package/dist/esm/components/form/fields/registry.js.map +1 -0
- package/dist/esm/components/form/fields/types.d.ts +37 -0
- package/dist/esm/components/form/fields/types.js +21 -0
- package/dist/esm/components/form/fields/types.js.map +1 -0
- package/dist/esm/components/form/handlers/core.d.ts +19 -0
- package/dist/esm/components/form/handlers/core.js +51 -0
- package/dist/esm/components/form/handlers/core.js.map +1 -0
- package/dist/esm/components/form/handlers/step.d.ts +19 -0
- package/dist/esm/components/form/handlers/step.js +40 -0
- package/dist/esm/components/form/handlers/step.js.map +1 -0
- package/dist/esm/components/form/index.d.ts +26 -0
- package/dist/esm/components/form/index.js +28 -0
- package/dist/esm/components/form/register.d.ts +5 -0
- package/dist/esm/components/form/register.js +31 -0
- package/dist/esm/components/form/register.js.map +1 -0
- package/dist/esm/components/form/types.d.ts +521 -0
- package/dist/esm/components/form/types.js +69 -0
- package/dist/esm/components/form/types.js.map +1 -0
- package/dist/esm/components/form/utils/animationUtils.d.ts +14 -0
- package/dist/esm/components/form/utils/animationUtils.js +20 -0
- package/dist/esm/components/form/utils/animationUtils.js.map +1 -0
- package/dist/esm/components/form/utils/autoSave.d.ts +8 -0
- package/dist/esm/components/form/utils/autoSave.js +17 -0
- package/dist/esm/components/form/utils/autoSave.js.map +1 -0
- package/dist/esm/components/form/utils/index.d.ts +4 -0
- package/dist/esm/components/form/utils/index.js +5 -0
- package/dist/esm/components/form/utils/stepRetry.d.ts +12 -0
- package/dist/esm/components/form/utils/stepRetry.js +16 -0
- package/dist/esm/components/form/utils/stepRetry.js.map +1 -0
- package/dist/esm/components/index.d.ts +126 -0
- package/dist/esm/components/index.js +130 -0
- package/dist/esm/components/layout/DesktopSidebar.d.ts +5 -0
- package/dist/esm/components/layout/DesktopSidebar.js +51 -0
- package/dist/esm/components/layout/DesktopSidebar.js.map +1 -0
- package/dist/esm/components/layout/GeneralLayout.d.ts +5 -0
- package/dist/esm/components/layout/GeneralLayout.js +34 -0
- package/dist/esm/components/layout/GeneralLayout.js.map +1 -0
- package/dist/esm/components/layout/MobileMenu.d.ts +5 -0
- package/dist/esm/components/layout/MobileMenu.js +48 -0
- package/dist/esm/components/layout/MobileMenu.js.map +1 -0
- package/dist/esm/components/layout/PageHeader.d.ts +16 -0
- package/dist/esm/components/layout/PageHeader.js +20 -0
- package/dist/esm/components/layout/PageHeader.js.map +1 -0
- package/dist/esm/components/layout/SidebarContext.d.ts +10 -0
- package/dist/esm/components/layout/SidebarContext.js +27 -0
- package/dist/esm/components/layout/SidebarContext.js.map +1 -0
- package/dist/esm/components/layout/SidebarToggle.d.ts +12 -0
- package/dist/esm/components/layout/SidebarToggle.js +23 -0
- package/dist/esm/components/layout/SidebarToggle.js.map +1 -0
- package/dist/esm/components/layout/UserNav.d.ts +5 -0
- package/dist/esm/components/layout/UserNav.js +110 -0
- package/dist/esm/components/layout/UserNav.js.map +1 -0
- package/dist/esm/components/layout/index.d.ts +7 -0
- package/dist/esm/components/layout/index.js +9 -0
- package/dist/esm/components/screen-reader/ScreenReaderAnnouncement.d.ts +23 -0
- package/dist/esm/components/screen-reader/ScreenReaderAnnouncement.js +28 -0
- package/dist/esm/components/screen-reader/ScreenReaderAnnouncement.js.map +1 -0
- package/dist/esm/components/screen-reader/hooks/useScreenReaderAnnouncement.d.ts +10 -0
- package/dist/esm/components/screen-reader/hooks/useScreenReaderAnnouncement.js +30 -0
- package/dist/esm/components/screen-reader/hooks/useScreenReaderAnnouncement.js.map +1 -0
- package/dist/esm/components/shared/UnifiedFooter.d.ts +17 -0
- package/dist/esm/components/shared/UnifiedFooter.js +210 -0
- package/dist/esm/components/shared/UnifiedFooter.js.map +1 -0
- package/dist/esm/components/shared/UnifiedHeader.d.ts +17 -0
- package/dist/esm/components/shared/UnifiedHeader.js +48 -0
- package/dist/esm/components/shared/UnifiedHeader.js.map +1 -0
- package/dist/esm/components/shared/context/FooterContext.d.ts +18 -0
- package/dist/esm/components/shared/context/FooterContext.js +24 -0
- package/dist/esm/components/shared/context/FooterContext.js.map +1 -0
- package/dist/esm/components/shared/context/HeaderContext.d.ts +18 -0
- package/dist/esm/components/shared/context/HeaderContext.js +23 -0
- package/dist/esm/components/shared/context/HeaderContext.js.map +1 -0
- package/dist/esm/components/shared/context/index.d.ts +3 -0
- package/dist/esm/components/shared/context/index.js +4 -0
- package/dist/esm/components/shared/environment/builders.d.ts +95 -0
- package/dist/esm/components/shared/environment/builders.js +163 -0
- package/dist/esm/components/shared/environment/builders.js.map +1 -0
- package/dist/esm/components/shared/environment/index.d.ts +7 -0
- package/dist/esm/components/shared/environment/index.js +3 -0
- package/dist/esm/components/shared/footers/ActionsFooter.d.ts +11 -0
- package/dist/esm/components/shared/footers/ActionsFooter.js +19 -0
- package/dist/esm/components/shared/footers/ActionsFooter.js.map +1 -0
- package/dist/esm/components/shared/footers/DefaultFooter.d.ts +13 -0
- package/dist/esm/components/shared/footers/DefaultFooter.js +20 -0
- package/dist/esm/components/shared/footers/DefaultFooter.js.map +1 -0
- package/dist/esm/components/shared/footers/FormFooter.d.ts +15 -0
- package/dist/esm/components/shared/footers/FormFooter.js +28 -0
- package/dist/esm/components/shared/footers/FormFooter.js.map +1 -0
- package/dist/esm/components/shared/footers/StepFormFooter.d.ts +15 -0
- package/dist/esm/components/shared/footers/StepFormFooter.js +28 -0
- package/dist/esm/components/shared/footers/StepFormFooter.js.map +1 -0
- package/dist/esm/components/shared/footers/WizardFooter.d.ts +12 -0
- package/dist/esm/components/shared/footers/WizardFooter.js +72 -0
- package/dist/esm/components/shared/footers/WizardFooter.js.map +1 -0
- package/dist/esm/components/shared/footers/index.d.ts +6 -0
- package/dist/esm/components/shared/footers/index.js +7 -0
- package/dist/esm/components/shared/headers/DefaultHeader.d.ts +13 -0
- package/dist/esm/components/shared/headers/DefaultHeader.js +30 -0
- package/dist/esm/components/shared/headers/DefaultHeader.js.map +1 -0
- package/dist/esm/components/shared/headers/FormHeader.d.ts +12 -0
- package/dist/esm/components/shared/headers/FormHeader.js +31 -0
- package/dist/esm/components/shared/headers/FormHeader.js.map +1 -0
- package/dist/esm/components/shared/headers/WizardHeader.d.ts +9 -0
- package/dist/esm/components/shared/headers/WizardHeader.js +116 -0
- package/dist/esm/components/shared/headers/WizardHeader.js.map +1 -0
- package/dist/esm/components/shared/headers/index.d.ts +4 -0
- package/dist/esm/components/shared/headers/index.js +5 -0
- package/dist/esm/components/shared/hooks/index.d.ts +3 -0
- package/dist/esm/components/shared/hooks/index.js +4 -0
- package/dist/esm/components/shared/hooks/useEnvironmentSync.d.ts +17 -0
- package/dist/esm/components/shared/hooks/useEnvironmentSync.js +17 -0
- package/dist/esm/components/shared/hooks/useEnvironmentSync.js.map +1 -0
- package/dist/esm/components/shared/hooks/useForceRerender.d.ts +17 -0
- package/dist/esm/components/shared/hooks/useForceRerender.js +26 -0
- package/dist/esm/components/shared/hooks/useForceRerender.js.map +1 -0
- package/dist/esm/components/shared/index.d.ts +31 -0
- package/dist/esm/components/shared/index.js +36 -0
- package/dist/esm/components/shared/registry/FooterRegistry.d.ts +15 -0
- package/dist/esm/components/shared/registry/FooterRegistry.js +47 -0
- package/dist/esm/components/shared/registry/FooterRegistry.js.map +1 -0
- package/dist/esm/components/shared/registry/HeaderRegistry.d.ts +15 -0
- package/dist/esm/components/shared/registry/HeaderRegistry.js +41 -0
- package/dist/esm/components/shared/registry/HeaderRegistry.js.map +1 -0
- package/dist/esm/components/shared/registry/index.d.ts +4 -0
- package/dist/esm/components/shared/registry/index.js +5 -0
- package/dist/esm/components/shared/registry/types.d.ts +23 -0
- package/dist/esm/components/shared/registry/types.js +21 -0
- package/dist/esm/components/shared/registry/types.js.map +1 -0
- package/dist/esm/components/shared/types/container.d.ts +70 -0
- package/dist/esm/components/shared/types/container.js +35 -0
- package/dist/esm/components/shared/types/container.js.map +1 -0
- package/dist/esm/components/shared/types/environment.d.ts +25 -0
- package/dist/esm/components/shared/types/environment.js +0 -0
- package/dist/esm/components/shared/types/footer.d.ts +121 -0
- package/dist/esm/components/shared/types/footer.js +58 -0
- package/dist/esm/components/shared/types/footer.js.map +1 -0
- package/dist/esm/components/shared/types/form.d.ts +120 -0
- package/dist/esm/components/shared/types/form.js +47 -0
- package/dist/esm/components/shared/types/form.js.map +1 -0
- package/dist/esm/components/shared/types/header.d.ts +81 -0
- package/dist/esm/components/shared/types/header.js +38 -0
- package/dist/esm/components/shared/types/header.js.map +1 -0
- package/dist/esm/components/shared/types/index.d.ts +8 -0
- package/dist/esm/components/shared/types/index.js +7 -0
- package/dist/esm/components/shared/types/navigation.d.ts +9 -0
- package/dist/esm/components/shared/types/navigation.js +0 -0
- package/dist/esm/components/shared/types/step.d.ts +104 -0
- package/dist/esm/components/shared/types/step.js +31 -0
- package/dist/esm/components/shared/types/step.js.map +1 -0
- package/dist/esm/components/shared/utils/createEnvironmentReceiver.d.ts +23 -0
- package/dist/esm/components/shared/utils/createEnvironmentReceiver.js +30 -0
- package/dist/esm/components/shared/utils/createEnvironmentReceiver.js.map +1 -0
- package/dist/esm/components/shared/utils/createForceRerenderReceiver.d.ts +22 -0
- package/dist/esm/components/shared/utils/createForceRerenderReceiver.js +30 -0
- package/dist/esm/components/shared/utils/createForceRerenderReceiver.js.map +1 -0
- package/dist/esm/components/shared/utils/index.d.ts +6 -0
- package/dist/esm/components/shared/utils/index.js +7 -0
- package/dist/esm/components/shared/utils/renderFooter.d.ts +37 -0
- package/dist/esm/components/shared/utils/renderFooter.js +99 -0
- package/dist/esm/components/shared/utils/renderFooter.js.map +1 -0
- package/dist/esm/components/shared/utils/renderHeader.d.ts +39 -0
- package/dist/esm/components/shared/utils/renderHeader.js +120 -0
- package/dist/esm/components/shared/utils/renderHeader.js.map +1 -0
- package/dist/esm/components/shared/utils/stepState.d.ts +36 -0
- package/dist/esm/components/shared/utils/stepState.js +61 -0
- package/dist/esm/components/shared/utils/stepState.js.map +1 -0
- package/dist/esm/components/sizing/index.d.ts +97 -0
- package/dist/esm/components/sizing/index.js +79 -0
- package/dist/esm/components/sizing/index.js.map +1 -0
- package/dist/esm/hooks/index.d.ts +16 -0
- package/dist/esm/hooks/index.js +17 -0
- package/dist/esm/hooks/useAccountSubdomain.d.ts +5 -0
- package/dist/esm/hooks/useAccountSubdomain.js +11 -0
- package/dist/esm/hooks/useAccountSubdomain.js.map +1 -0
- package/dist/esm/hooks/useAccountUrl.d.ts +5 -0
- package/dist/esm/hooks/useAccountUrl.js +27 -0
- package/dist/esm/hooks/useAccountUrl.js.map +1 -0
- package/dist/esm/hooks/useApiUrl.d.ts +5 -0
- package/dist/esm/hooks/useApiUrl.js +14 -0
- package/dist/esm/hooks/useApiUrl.js.map +1 -0
- package/dist/esm/hooks/useAvatar.d.ts +10 -0
- package/dist/esm/hooks/useAvatar.js +20 -0
- package/dist/esm/hooks/useAvatar.js.map +1 -0
- package/dist/esm/hooks/useFeatureFlag.d.ts +5 -0
- package/dist/esm/hooks/useFeatureFlag.js +10 -0
- package/dist/esm/hooks/useFeatureFlag.js.map +1 -0
- package/dist/esm/hooks/useLoginUrl.d.ts +5 -0
- package/dist/esm/hooks/useLoginUrl.js +10 -0
- package/dist/esm/hooks/useLoginUrl.js.map +1 -0
- package/dist/esm/hooks/useMenuItems.d.ts +12 -0
- package/dist/esm/hooks/useMenuItems.js +16 -0
- package/dist/esm/hooks/useMenuItems.js.map +1 -0
- package/dist/esm/hooks/usePluginMeta.d.ts +5 -0
- package/dist/esm/hooks/usePluginMeta.js +11 -0
- package/dist/esm/hooks/usePluginMeta.js.map +1 -0
- package/dist/esm/hooks/usePortalMeta.d.ts +7 -0
- package/dist/esm/hooks/usePortalMeta.js +10 -0
- package/dist/esm/hooks/usePortalMeta.js.map +1 -0
- package/dist/esm/hooks/usePortalUrl.d.ts +5 -0
- package/dist/esm/hooks/usePortalUrl.js +20 -0
- package/dist/esm/hooks/usePortalUrl.js.map +1 -0
- package/dist/esm/hooks/useProtocolDomain.d.ts +5 -0
- package/dist/esm/hooks/useProtocolDomain.js +12 -0
- package/dist/esm/hooks/useProtocolDomain.js.map +1 -0
- package/dist/esm/hooks/useRegisterUrl.d.ts +5 -0
- package/dist/esm/hooks/useRegisterUrl.js +10 -0
- package/dist/esm/hooks/useRegisterUrl.js.map +1 -0
- package/dist/esm/hooks/useResetPasswordUrl.d.ts +5 -0
- package/dist/esm/hooks/useResetPasswordUrl.js +10 -0
- package/dist/esm/hooks/useResetPasswordUrl.js.map +1 -0
- package/dist/esm/hooks/useSdk.d.ts +8 -0
- package/dist/esm/hooks/useSdk.js +33 -0
- package/dist/esm/hooks/useSdk.js.map +1 -0
- package/dist/esm/hooks/useTheme.d.ts +41 -0
- package/dist/esm/hooks/useTheme.js +79 -0
- package/dist/esm/hooks/useTheme.js.map +1 -0
- package/dist/esm/image.d.ts +6 -0
- package/dist/esm/images/account-banner-image.js +6 -0
- package/dist/esm/images/account-banner-image.js.map +1 -0
- package/dist/esm/images/discord-logo.js +6 -0
- package/dist/esm/images/discord-logo.js.map +1 -0
- package/dist/esm/images/lume-bg-image.js +6 -0
- package/dist/esm/images/lume-bg-image.js.map +1 -0
- package/dist/esm/images/lume-bg-login.js +6 -0
- package/dist/esm/images/lume-bg-login.js.map +1 -0
- package/dist/esm/images/lume-color-logo.js +6 -0
- package/dist/esm/images/lume-color-logo.js.map +1 -0
- package/dist/esm/images/lume-logo.js +6 -0
- package/dist/esm/images/lume-logo.js.map +1 -0
- package/dist/esm/images.d.ts +11 -0
- package/dist/esm/images.js +19 -0
- package/dist/esm/images.js.map +1 -0
- package/dist/esm/index.d.ts +150 -0
- package/dist/esm/index.js +149 -0
- package/dist/esm/store/appStore.d.ts +50 -0
- package/dist/esm/store/appStore.js +139 -0
- package/dist/esm/store/appStore.js.map +1 -0
- package/dist/esm/store/index.d.ts +5 -0
- package/dist/esm/store/index.js +6 -0
- package/dist/esm/store/portalStore.d.ts +33 -0
- package/dist/esm/store/portalStore.js +58 -0
- package/dist/esm/store/portalStore.js.map +1 -0
- package/dist/esm/store/saved-filters.d.ts +54 -0
- package/dist/esm/store/saved-filters.js +158 -0
- package/dist/esm/store/saved-filters.js.map +1 -0
- package/dist/esm/store/uiStore.d.ts +11 -0
- package/dist/esm/store/uiStore.js +16 -0
- package/dist/esm/store/uiStore.js.map +1 -0
- package/dist/esm/tests/portalMetaMocks.d.ts +16 -0
- package/dist/esm/tests/portalMetaMocks.js +15 -0
- package/dist/esm/tests/portalMetaMocks.js.map +1 -0
- package/dist/esm/types/badge.d.ts +16 -0
- package/dist/esm/types/badge.js +42 -0
- package/dist/esm/types/badge.js.map +1 -0
- package/dist/esm/types/index.d.ts +3 -0
- package/dist/esm/types/index.js +3 -0
- package/dist/esm/types/theme.d.ts +35 -0
- package/dist/esm/types/theme.js +0 -0
- package/dist/esm/utils/asyncUtils.d.ts +5 -0
- package/dist/esm/utils/asyncUtils.js +9 -0
- package/dist/esm/utils/asyncUtils.js.map +1 -0
- package/dist/esm/utils/fileSize.d.ts +5 -0
- package/dist/esm/utils/fileSize.js +18 -0
- package/dist/esm/utils/fileSize.js.map +1 -0
- package/dist/esm/utils/index.d.ts +4 -0
- package/dist/esm/utils/index.js +5 -0
- package/dist/esm/utils/theme.d.ts +197 -0
- package/dist/esm/utils/theme.js +689 -0
- package/dist/esm/utils/theme.js.map +1 -0
- package/package.json +75 -8
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { DialogTypes } from "../Dialog.types.js";
|
|
2
|
+
import { useDialog } from "../Dialog.context.js";
|
|
3
|
+
|
|
4
|
+
//#region src/components/dialog/utils/dialogDetection.ts
|
|
5
|
+
/**
|
|
6
|
+
* Config-based detection for dialog type
|
|
7
|
+
* Useful for static type checking and compile-time analysis
|
|
8
|
+
* @param config Dialog configuration object
|
|
9
|
+
*/
|
|
10
|
+
function getDialogTypeFromConfig(config) {
|
|
11
|
+
return config.type;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Hook-based detection for current dialog type
|
|
15
|
+
* Returns the type of the currently open dialog or null if no dialog is open
|
|
16
|
+
*/
|
|
17
|
+
function useDialogType() {
|
|
18
|
+
const { currentDialog } = useDialog();
|
|
19
|
+
return currentDialog?.type ?? null;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Hook-based detection for whether we're in a form dialog
|
|
23
|
+
* Checks the current dialog context for form-related dialogs
|
|
24
|
+
*/
|
|
25
|
+
function useIsFormDialog() {
|
|
26
|
+
const dialogType = useDialogType();
|
|
27
|
+
return dialogType === DialogTypes.FORM || dialogType === DialogTypes.WIZARD_FORM;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Hook-based detection for whether we're currently in any dialog
|
|
31
|
+
* More accurate than config-based detection as it reflects runtime state
|
|
32
|
+
*/
|
|
33
|
+
function useIsInDialog() {
|
|
34
|
+
const { currentDialog } = useDialog();
|
|
35
|
+
return !!currentDialog;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Hook-based detection for whether we're in a wizard dialog
|
|
39
|
+
* Checks the current dialog context for wizard-specific dialogs
|
|
40
|
+
*/
|
|
41
|
+
function useIsWizardDialog() {
|
|
42
|
+
return useDialogType() === DialogTypes.WIZARD_FORM;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
//#endregion
|
|
46
|
+
export { getDialogTypeFromConfig, useDialogType, useIsFormDialog, useIsInDialog, useIsWizardDialog };
|
|
47
|
+
//# sourceMappingURL=dialogDetection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dialogDetection.js","names":[],"sources":["../../../../../src/components/dialog/utils/dialogDetection.ts"],"sourcesContent":["import { useDialog } from \"../Dialog.context\";\nimport { DialogConfig, DialogType, DialogTypes } from \"../Dialog.types\";\n\n/**\n * Config-based detection for dialog type\n * Useful for static type checking and compile-time analysis\n * @param config Dialog configuration object\n */\nexport function getDialogTypeFromConfig(config: DialogConfig): DialogType {\n return config.type;\n}\n\n/**\n * Hook-based detection for current dialog type\n * Returns the type of the currently open dialog or null if no dialog is open\n */\nexport function useDialogType(): DialogType | null {\n const { currentDialog } = useDialog();\n return currentDialog?.type ?? null;\n}\n\n/**\n * Hook-based detection for whether we're in a form dialog\n * Checks the current dialog context for form-related dialogs\n */\nexport function useIsFormDialog(): boolean {\n const dialogType = useDialogType();\n return (\n dialogType === DialogTypes.FORM || dialogType === DialogTypes.WIZARD_FORM\n );\n}\n\n/**\n * Hook-based detection for whether we're currently in any dialog\n * More accurate than config-based detection as it reflects runtime state\n */\nexport function useIsInDialog(): boolean {\n const { currentDialog } = useDialog();\n return !!currentDialog;\n}\n\n/**\n * Hook-based detection for whether we're in a wizard dialog\n * Checks the current dialog context for wizard-specific dialogs\n */\nexport function useIsWizardDialog(): boolean {\n const dialogType = useDialogType();\n return dialogType === DialogTypes.WIZARD_FORM;\n}\n"],"mappings":";;;;;;;;;AAQA,SAAgB,wBAAwB,QAAkC;AACxE,QAAO,OAAO;;;;;;AAOhB,SAAgB,gBAAmC;CACjD,MAAM,EAAE,kBAAkB,WAAW;AACrC,QAAO,eAAe,QAAQ;;;;;;AAOhC,SAAgB,kBAA2B;CACzC,MAAM,aAAa,eAAe;AAClC,QACE,eAAe,YAAY,QAAQ,eAAe,YAAY;;;;;;AAQlE,SAAgB,gBAAyB;CACvC,MAAM,EAAE,kBAAkB,WAAW;AACrC,QAAO,CAAC,CAAC;;;;;;AAOX,SAAgB,oBAA6B;AAE3C,QADmB,eACF,KAAK,YAAY"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { getDialogContentClasses } from "./dialogClasses.js";
|
|
2
|
+
import { getDialogTypeFromConfig, useDialogType, useIsFormDialog, useIsInDialog, useIsWizardDialog } from "./dialogDetection.js";
|
|
3
|
+
export { getDialogContentClasses, getDialogTypeFromConfig, useDialogType, useIsFormDialog, useIsInDialog, useIsWizardDialog };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { getDialogContentClasses } from "./dialogClasses.js";
|
|
2
|
+
import { getDialogTypeFromConfig, useDialogType, useIsFormDialog, useIsInDialog, useIsWizardDialog } from "./dialogDetection.js";
|
|
3
|
+
|
|
4
|
+
export { getDialogContentClasses, getDialogTypeFromConfig, useDialogType, useIsFormDialog, useIsInDialog, useIsWizardDialog };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { blockTypeToBlockName } from "./ToolbarContext.js";
|
|
2
|
+
|
|
3
|
+
//#region src/components/editor/BlockTypeDropdown.d.ts
|
|
4
|
+
interface BlockTypeDropdownProps {
|
|
5
|
+
blockType: keyof typeof blockTypeToBlockName;
|
|
6
|
+
}
|
|
7
|
+
declare function BlockTypeDropdown({
|
|
8
|
+
blockType
|
|
9
|
+
}: BlockTypeDropdownProps): any;
|
|
10
|
+
//#endregion
|
|
11
|
+
export { BlockTypeDropdown as default };
|
|
12
|
+
//# sourceMappingURL=BlockTypeDropdown.d.ts.map
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { formatBulletList, formatCheckList, formatCode, formatHeading, formatOrderedList, formatParagraph, formatQuote } from "./formatting.js";
|
|
2
|
+
import { blockTypeToBlockName, useToolbarState } from "./ToolbarContext.js";
|
|
3
|
+
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@lumeweb/portal-framework-ui-core";
|
|
4
|
+
import React from "react";
|
|
5
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import { useLexicalComposerContext } from "@lexical/react/LexicalComposerContext";
|
|
7
|
+
|
|
8
|
+
//#region src/components/editor/BlockTypeDropdown.tsx
|
|
9
|
+
function BlockTypeDropdown({ blockType }) {
|
|
10
|
+
const [editor] = useLexicalComposerContext();
|
|
11
|
+
const { updateToolbarState } = useToolbarState();
|
|
12
|
+
const handleSelect = (value) => {
|
|
13
|
+
switch (value) {
|
|
14
|
+
case "bullet":
|
|
15
|
+
formatBulletList(editor, blockType, updateToolbarState);
|
|
16
|
+
break;
|
|
17
|
+
case "check":
|
|
18
|
+
formatCheckList(editor, blockType, updateToolbarState);
|
|
19
|
+
break;
|
|
20
|
+
case "code":
|
|
21
|
+
formatCode(editor, blockType, updateToolbarState);
|
|
22
|
+
break;
|
|
23
|
+
case "h1":
|
|
24
|
+
case "h2":
|
|
25
|
+
case "h3":
|
|
26
|
+
case "h4":
|
|
27
|
+
case "h5":
|
|
28
|
+
case "h6":
|
|
29
|
+
formatHeading(editor, blockType, value, updateToolbarState);
|
|
30
|
+
break;
|
|
31
|
+
case "number":
|
|
32
|
+
formatOrderedList(editor, blockType, updateToolbarState);
|
|
33
|
+
break;
|
|
34
|
+
case "paragraph":
|
|
35
|
+
formatParagraph(editor, updateToolbarState);
|
|
36
|
+
break;
|
|
37
|
+
case "quote":
|
|
38
|
+
formatQuote(editor, blockType, updateToolbarState);
|
|
39
|
+
break;
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
return /* @__PURE__ */ jsxs(Select, {
|
|
43
|
+
onValueChange: handleSelect,
|
|
44
|
+
value: blockType,
|
|
45
|
+
children: [/* @__PURE__ */ jsx(SelectTrigger, {
|
|
46
|
+
className: "w-40",
|
|
47
|
+
children: /* @__PURE__ */ jsx(SelectValue, { placeholder: "Block Type" })
|
|
48
|
+
}), /* @__PURE__ */ jsx(SelectContent, { children: Object.keys(blockTypeToBlockName).map((type) => /* @__PURE__ */ jsx(SelectItem, {
|
|
49
|
+
value: type,
|
|
50
|
+
children: blockTypeToBlockName[type]
|
|
51
|
+
}, type)) })]
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
//#endregion
|
|
56
|
+
export { BlockTypeDropdown as default };
|
|
57
|
+
//# sourceMappingURL=BlockTypeDropdown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BlockTypeDropdown.js","names":[],"sources":["../../../../src/components/editor/BlockTypeDropdown.tsx"],"sourcesContent":["import { useLexicalComposerContext } from \"@lexical/react/LexicalComposerContext\";\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@lumeweb/portal-framework-ui-core\";\nimport React from \"react\";\n\nimport {\n formatBulletList,\n formatCheckList,\n formatCode,\n formatHeading,\n formatOrderedList,\n formatParagraph,\n formatQuote,\n} from \"./formatting\";\nimport { blockTypeToBlockName, useToolbarState } from \"./ToolbarContext\";\n\ninterface BlockTypeDropdownProps {\n blockType: keyof typeof blockTypeToBlockName;\n}\n\nexport default function BlockTypeDropdown({\n blockType,\n}: BlockTypeDropdownProps) {\n const [editor] = useLexicalComposerContext();\n const { updateToolbarState } = useToolbarState();\n\n const handleSelect = (value: string) => {\n switch (value) {\n case \"bullet\":\n formatBulletList(editor, blockType, updateToolbarState);\n break;\n case \"check\":\n formatCheckList(editor, blockType, updateToolbarState);\n break;\n case \"code\":\n formatCode(editor, blockType, updateToolbarState);\n break;\n case \"h1\":\n case \"h2\":\n case \"h3\":\n case \"h4\":\n case \"h5\":\n case \"h6\":\n formatHeading(editor, blockType, value, updateToolbarState);\n break;\n case \"number\":\n formatOrderedList(editor, blockType, updateToolbarState);\n break;\n case \"paragraph\":\n formatParagraph(editor, updateToolbarState);\n break;\n case \"quote\":\n formatQuote(editor, blockType, updateToolbarState);\n break;\n }\n };\n\n return (\n <Select onValueChange={handleSelect} value={blockType}>\n <SelectTrigger className=\"w-40\">\n <SelectValue placeholder=\"Block Type\" />\n </SelectTrigger>\n <SelectContent>\n {Object.keys(blockTypeToBlockName).map((type) => (\n <SelectItem key={type} value={type}>\n {blockTypeToBlockName[type as keyof typeof blockTypeToBlockName]}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n );\n}\n"],"mappings":";;;;;;;;AAyBA,SAAwB,kBAAkB,EACxC,aACyB;CACzB,MAAM,CAAC,UAAU,2BAA2B;CAC5C,MAAM,EAAE,uBAAuB,iBAAiB;CAEhD,MAAM,gBAAgB,UAAkB;AACtC,UAAQ,OAAR;GACE,KAAK;AACH,qBAAiB,QAAQ,WAAW,mBAAmB;AACvD;GACF,KAAK;AACH,oBAAgB,QAAQ,WAAW,mBAAmB;AACtD;GACF,KAAK;AACH,eAAW,QAAQ,WAAW,mBAAmB;AACjD;GACF,KAAK;GACL,KAAK;GACL,KAAK;GACL,KAAK;GACL,KAAK;GACL,KAAK;AACH,kBAAc,QAAQ,WAAW,OAAO,mBAAmB;AAC3D;GACF,KAAK;AACH,sBAAkB,QAAQ,WAAW,mBAAmB;AACxD;GACF,KAAK;AACH,oBAAgB,QAAQ,mBAAmB;AAC3C;GACF,KAAK;AACH,gBAAY,QAAQ,WAAW,mBAAmB;AAClD;;;AAIN,QACE,qBAAC,QAAD;EAAQ,eAAe;EAAc,OAAO;YAA5C,CACE,oBAAC,eAAD;GAAe,WAAU;aACvB,oBAAC,aAAD,EAAa,aAAY,cAAe;GAC1B,GAChB,oBAAC,eAAD,YACG,OAAO,KAAK,qBAAqB,CAAC,KAAK,SACtC,oBAAC,YAAD;GAAuB,OAAO;aAC3B,qBAAqB;GACX,EAFI,KAEJ,CACb,EACY,EACT"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React, { Suspense } from "react";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/components/editor/Editor.tsx
|
|
5
|
+
const EditorInner = React.lazy(() => import("./EditorInner.js"));
|
|
6
|
+
const Editor = React.forwardRef((props, ref) => /* @__PURE__ */ jsx(Suspense, {
|
|
7
|
+
fallback: /* @__PURE__ */ jsx("div", { className: "min-h-[150px]" }),
|
|
8
|
+
children: /* @__PURE__ */ jsx(EditorInner, {
|
|
9
|
+
...props,
|
|
10
|
+
ref
|
|
11
|
+
})
|
|
12
|
+
}));
|
|
13
|
+
Editor.displayName = "Markdown";
|
|
14
|
+
|
|
15
|
+
//#endregion
|
|
16
|
+
export { Editor };
|
|
17
|
+
//# sourceMappingURL=Editor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Editor.js","names":[],"sources":["../../../../src/components/editor/Editor.tsx"],"sourcesContent":["import React, { Suspense } from \"react\";\n\nimport type { EditorProps, ToolbarOption } from \"./EditorInner\";\n\nconst EditorInner = React.lazy(() => import(\"./EditorInner\"));\n\nexport type { EditorProps, ToolbarOption };\n\nexport const Editor = React.forwardRef<HTMLDivElement, EditorProps>(\n (props, ref) => (\n <Suspense fallback={<div className=\"min-h-[150px]\" />}>\n <EditorInner {...props} ref={ref} />\n </Suspense>\n ),\n);\nEditor.displayName = \"Markdown\";\n"],"mappings":";;;;AAIA,MAAM,cAAc,MAAM,WAAW,OAAO,oBAAiB;AAI7D,MAAa,SAAS,MAAM,YACzB,OAAO,QACN,oBAAC,UAAD;CAAU,UAAU,oBAAC,OAAD,EAAK,WAAU,iBAAkB;WACnD,oBAAC,aAAD;EAAa,GAAI;EAAY;EAAO;CAC3B,EAEd;AACD,OAAO,cAAc"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
//#region src/components/editor/EditorInner.d.ts
|
|
2
|
+
interface EditorProps {
|
|
3
|
+
enablePreview?: boolean;
|
|
4
|
+
onChange?: (value: string) => void;
|
|
5
|
+
placeholder?: string;
|
|
6
|
+
required?: boolean;
|
|
7
|
+
toolbarOptions?: ToolbarOption[];
|
|
8
|
+
value?: string;
|
|
9
|
+
}
|
|
10
|
+
type ToolbarOption = "blockTypes" | "bold" | "clear" | "italic" | "redo" | "strikethrough" | "subscript" | "superscript" | "underline" | "undo";
|
|
11
|
+
declare const Editor: any;
|
|
12
|
+
//#endregion
|
|
13
|
+
export { Editor, Editor as default, EditorProps, ToolbarOption };
|
|
14
|
+
//# sourceMappingURL=EditorInner.d.ts.map
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { ToolbarProvider } from "./ToolbarContext.js";
|
|
2
|
+
import { Preview } from "./Preview.js";
|
|
3
|
+
import { ToolbarPlugin } from "./ToolbarPlugin.js";
|
|
4
|
+
import React, { forwardRef, useState } from "react";
|
|
5
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import { CodeNode } from "@lexical/code";
|
|
7
|
+
import { ListItemNode, ListNode } from "@lexical/list";
|
|
8
|
+
import { HeadingNode, QuoteNode } from "@lexical/rich-text";
|
|
9
|
+
import { $getRoot } from "lexical";
|
|
10
|
+
import { LinkNode } from "@lexical/link";
|
|
11
|
+
import { $convertFromMarkdownString, TRANSFORMERS } from "@lexical/markdown";
|
|
12
|
+
import { CheckListPlugin } from "@lexical/react/LexicalCheckListPlugin";
|
|
13
|
+
import { LexicalComposer } from "@lexical/react/LexicalComposer";
|
|
14
|
+
import { ContentEditable } from "@lexical/react/LexicalContentEditable";
|
|
15
|
+
import { LexicalErrorBoundary } from "@lexical/react/LexicalErrorBoundary";
|
|
16
|
+
import { HistoryPlugin } from "@lexical/react/LexicalHistoryPlugin";
|
|
17
|
+
import { HorizontalRuleNode } from "@lexical/react/LexicalHorizontalRuleNode";
|
|
18
|
+
import { LinkPlugin } from "@lexical/react/LexicalLinkPlugin";
|
|
19
|
+
import { ListPlugin } from "@lexical/react/LexicalListPlugin";
|
|
20
|
+
import { MarkdownShortcutPlugin } from "@lexical/react/LexicalMarkdownShortcutPlugin";
|
|
21
|
+
import { OnChangePlugin } from "@lexical/react/LexicalOnChangePlugin";
|
|
22
|
+
import { RichTextPlugin } from "@lexical/react/LexicalRichTextPlugin";
|
|
23
|
+
|
|
24
|
+
//#region src/components/editor/EditorInner.tsx
|
|
25
|
+
const Editor = forwardRef(({ enablePreview, onChange, placeholder, toolbarOptions, value }, ref) => {
|
|
26
|
+
const [isPreview, setIsPreview] = useState(false);
|
|
27
|
+
const handleChange = React.useCallback((editorState) => {
|
|
28
|
+
const content = editorState.read(() => $getRoot().getTextContent());
|
|
29
|
+
onChange?.(content);
|
|
30
|
+
}, [onChange]);
|
|
31
|
+
return /* @__PURE__ */ jsx("div", {
|
|
32
|
+
className: "bg-modal-input text-foreground rounded-md border",
|
|
33
|
+
children: /* @__PURE__ */ jsx(LexicalComposer, {
|
|
34
|
+
initialConfig: React.useMemo(() => ({
|
|
35
|
+
editable: !isPreview,
|
|
36
|
+
editorState: () => {
|
|
37
|
+
$convertFromMarkdownString(value ?? "", TRANSFORMERS);
|
|
38
|
+
},
|
|
39
|
+
namespace: "MarkdownEditor",
|
|
40
|
+
nodes: [
|
|
41
|
+
HorizontalRuleNode,
|
|
42
|
+
CodeNode,
|
|
43
|
+
LinkNode,
|
|
44
|
+
ListNode,
|
|
45
|
+
ListItemNode,
|
|
46
|
+
HeadingNode,
|
|
47
|
+
QuoteNode
|
|
48
|
+
],
|
|
49
|
+
onError: (error) => {
|
|
50
|
+
throw error;
|
|
51
|
+
},
|
|
52
|
+
theme: {
|
|
53
|
+
heading: {
|
|
54
|
+
h1: "text-2xl font-bold",
|
|
55
|
+
h2: "text-xl font-bold",
|
|
56
|
+
h3: "text-lg font-semibold",
|
|
57
|
+
h4: "text-base font-semibold",
|
|
58
|
+
h5: "text-sm font-semibold",
|
|
59
|
+
h6: "text-xs font-semibold"
|
|
60
|
+
},
|
|
61
|
+
link: "cursor-pointer",
|
|
62
|
+
root: "p-3 border rounded-md bg-modal-input text-foreground",
|
|
63
|
+
text: {
|
|
64
|
+
bold: "font-semibold",
|
|
65
|
+
italic: "italic",
|
|
66
|
+
underline: "underline"
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}), [isPreview, value]),
|
|
70
|
+
children: /* @__PURE__ */ jsxs(ToolbarProvider, { children: [/* @__PURE__ */ jsx("div", {
|
|
71
|
+
className: "border-border flex items-center justify-between gap-1 border-b p-1",
|
|
72
|
+
children: /* @__PURE__ */ jsx(ToolbarPlugin, {
|
|
73
|
+
isPreview,
|
|
74
|
+
setIsPreview,
|
|
75
|
+
toolbarOptions
|
|
76
|
+
})
|
|
77
|
+
}), !isPreview ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
78
|
+
/* @__PURE__ */ jsx(RichTextPlugin, {
|
|
79
|
+
contentEditable: /* @__PURE__ */ jsx(ContentEditable, {
|
|
80
|
+
"aria-placeholder": placeholder ?? "",
|
|
81
|
+
className: "text-foreground min-h-[150px] w-full resize-none bg-transparent outline-none",
|
|
82
|
+
placeholder: /* @__PURE__ */ jsx("div", {
|
|
83
|
+
className: "text-foreground/50",
|
|
84
|
+
children: placeholder
|
|
85
|
+
})
|
|
86
|
+
}),
|
|
87
|
+
ErrorBoundary: LexicalErrorBoundary
|
|
88
|
+
}),
|
|
89
|
+
/* @__PURE__ */ jsx(HistoryPlugin, {}),
|
|
90
|
+
/* @__PURE__ */ jsx(ListPlugin, {}),
|
|
91
|
+
/* @__PURE__ */ jsx(CheckListPlugin, {}),
|
|
92
|
+
/* @__PURE__ */ jsx(LinkPlugin, {}),
|
|
93
|
+
/* @__PURE__ */ jsx(MarkdownShortcutPlugin, { transformers: TRANSFORMERS }),
|
|
94
|
+
/* @__PURE__ */ jsx(OnChangePlugin, {
|
|
95
|
+
ignoreHistoryMergeTagChange: true,
|
|
96
|
+
ignoreSelectionChange: true,
|
|
97
|
+
onChange: handleChange
|
|
98
|
+
})
|
|
99
|
+
] }) : /* @__PURE__ */ jsx(Preview, {})] })
|
|
100
|
+
})
|
|
101
|
+
});
|
|
102
|
+
});
|
|
103
|
+
Editor.displayName = "Markdown";
|
|
104
|
+
|
|
105
|
+
//#endregion
|
|
106
|
+
export { Editor, Editor as default };
|
|
107
|
+
//# sourceMappingURL=EditorInner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EditorInner.js","names":[],"sources":["../../../../src/components/editor/EditorInner.tsx"],"sourcesContent":["import { CodeNode } from \"@lexical/code\";\nimport { LinkNode } from \"@lexical/link\";\nimport { ListItemNode, ListNode } from \"@lexical/list\";\nimport { $convertFromMarkdownString, TRANSFORMERS } from \"@lexical/markdown\";\nimport { CheckListPlugin } from \"@lexical/react/LexicalCheckListPlugin\";\nimport {\n InitialConfigType,\n LexicalComposer,\n} from \"@lexical/react/LexicalComposer\";\nimport { ContentEditable } from \"@lexical/react/LexicalContentEditable\";\nimport { LexicalErrorBoundary } from \"@lexical/react/LexicalErrorBoundary\";\nimport { HistoryPlugin } from \"@lexical/react/LexicalHistoryPlugin\";\nimport { HorizontalRuleNode } from \"@lexical/react/LexicalHorizontalRuleNode\";\nimport { LinkPlugin } from \"@lexical/react/LexicalLinkPlugin\";\nimport { ListPlugin } from \"@lexical/react/LexicalListPlugin\";\nimport { MarkdownShortcutPlugin } from \"@lexical/react/LexicalMarkdownShortcutPlugin\";\nimport { OnChangePlugin } from \"@lexical/react/LexicalOnChangePlugin\";\nimport { RichTextPlugin } from \"@lexical/react/LexicalRichTextPlugin\";\nimport { HeadingNode, QuoteNode } from \"@lexical/rich-text\";\nimport { $getRoot } from \"lexical\";\nimport React, { forwardRef, useState } from \"react\";\n\nimport { Preview } from \"./Preview\";\nimport { ToolbarProvider } from \"./ToolbarContext\";\nimport { ToolbarPlugin } from \"./ToolbarPlugin\";\n\nexport interface EditorProps {\n enablePreview?: boolean;\n onChange?: (value: string) => void;\n placeholder?: string;\n required?: boolean;\n toolbarOptions?: ToolbarOption[];\n value?: string;\n}\n\nexport type ToolbarOption =\n | \"blockTypes\"\n | \"bold\"\n | \"clear\"\n | \"italic\"\n | \"redo\"\n | \"strikethrough\"\n | \"subscript\"\n | \"superscript\"\n | \"underline\"\n | \"undo\";\n\nexport const Editor = forwardRef<HTMLDivElement, EditorProps>(\n ({ enablePreview, onChange, placeholder, toolbarOptions, value }, ref) => {\n const [isPreview, setIsPreview] = useState(false);\n\n const handleChange = React.useCallback(\n (editorState) => {\n const content = editorState.read(() => $getRoot().getTextContent());\n onChange?.(content);\n },\n [onChange],\n );\n\n const initialConfig = React.useMemo(\n () =>\n ({\n editable: !isPreview,\n editorState: () => {\n $convertFromMarkdownString(value ?? \"\", TRANSFORMERS);\n },\n namespace: \"MarkdownEditor\",\n nodes: [\n HorizontalRuleNode,\n CodeNode,\n LinkNode,\n ListNode,\n ListItemNode,\n HeadingNode,\n QuoteNode,\n ],\n onError: (error: Error) => {\n throw error;\n },\n theme: {\n heading: {\n h1: \"text-2xl font-bold\",\n h2: \"text-xl font-bold\",\n h3: \"text-lg font-semibold\",\n h4: \"text-base font-semibold\",\n h5: \"text-sm font-semibold\",\n h6: \"text-xs font-semibold\",\n },\n link: \"cursor-pointer\",\n root: \"p-3 border rounded-md bg-modal-input text-foreground\",\n text: {\n bold: \"font-semibold\",\n italic: \"italic\",\n underline: \"underline\",\n },\n },\n }) satisfies InitialConfigType,\n [isPreview, value],\n );\n\n return (\n <div className=\"bg-modal-input text-foreground rounded-md border\">\n <LexicalComposer initialConfig={initialConfig}>\n <ToolbarProvider>\n <div className=\"border-border flex items-center justify-between gap-1 border-b p-1\">\n <ToolbarPlugin\n isPreview={isPreview}\n setIsPreview={setIsPreview}\n toolbarOptions={toolbarOptions}\n />\n </div>\n {!isPreview ? (\n <>\n <RichTextPlugin\n contentEditable={\n <ContentEditable\n aria-placeholder={placeholder ?? \"\"}\n className=\"text-foreground min-h-[150px] w-full resize-none bg-transparent outline-none\"\n placeholder={\n <div className=\"text-foreground/50\">{placeholder}</div>\n }\n />\n }\n ErrorBoundary={LexicalErrorBoundary}\n />\n <HistoryPlugin />\n <ListPlugin />\n <CheckListPlugin />\n <LinkPlugin />\n <MarkdownShortcutPlugin transformers={TRANSFORMERS} />\n <OnChangePlugin\n ignoreHistoryMergeTagChange={true}\n ignoreSelectionChange={true}\n onChange={handleChange}\n />\n </>\n ) : (\n <Preview />\n )}\n </ToolbarProvider>\n </LexicalComposer>\n </div>\n );\n },\n);\nEditor.displayName = \"Markdown\";\n\nexport default Editor;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA+CA,MAAa,SAAS,YACnB,EAAE,eAAe,UAAU,aAAa,gBAAgB,SAAS,QAAQ;CACxE,MAAM,CAAC,WAAW,gBAAgB,SAAS,MAAM;CAEjD,MAAM,eAAe,MAAM,aACxB,gBAAgB;EACf,MAAM,UAAU,YAAY,WAAW,UAAU,CAAC,gBAAgB,CAAC;AACnE,aAAW,QAAQ;IAErB,CAAC,SAAS,CACX;AA2CD,QACE,oBAAC,OAAD;EAAK,WAAU;YACb,oBAAC,iBAAD;GAAiB,eA3CC,MAAM,eAEvB;IACC,UAAU,CAAC;IACX,mBAAmB;AACjB,gCAA2B,SAAS,IAAI,aAAa;;IAEvD,WAAW;IACX,OAAO;KACL;KACA;KACA;KACA;KACA;KACA;KACA;KACD;IACD,UAAU,UAAiB;AACzB,WAAM;;IAER,OAAO;KACL,SAAS;MACP,IAAI;MACJ,IAAI;MACJ,IAAI;MACJ,IAAI;MACJ,IAAI;MACJ,IAAI;MACL;KACD,MAAM;KACN,MAAM;KACN,MAAM;MACJ,MAAM;MACN,QAAQ;MACR,WAAW;MACZ;KACF;IACF,GACH,CAAC,WAAW,MAAM,CAK6B;aAC3C,qBAAC,iBAAD,aACE,oBAAC,OAAD;IAAK,WAAU;cACb,oBAAC,eAAD;KACa;KACG;KACE;KAChB;IACE,GACL,CAAC,YACA;IACE,oBAAC,gBAAD;KACE,iBACE,oBAAC,iBAAD;MACE,oBAAkB,eAAe;MACjC,WAAU;MACV,aACE,oBAAC,OAAD;OAAK,WAAU;iBAAsB;OAAkB;MAEzD;KAEJ,eAAe;KACf;IACF,oBAAC,eAAD,EAAiB;IACjB,oBAAC,YAAD,EAAc;IACd,oBAAC,iBAAD,EAAmB;IACnB,oBAAC,YAAD,EAAc;IACd,oBAAC,wBAAD,EAAwB,cAAc,cAAgB;IACtD,oBAAC,gBAAD;KACE,6BAA6B;KAC7B,uBAAuB;KACvB,UAAU;KACV;IACD,MAEH,oBAAC,SAAD,EAAW,EAEG;GACF;EACd;EAGX;AACD,OAAO,cAAc"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { useLexicalComposerContext } from "@lexical/react/LexicalComposerContext";
|
|
4
|
+
import { $generateHtmlFromNodes } from "@lexical/html";
|
|
5
|
+
import DOMPurify from "dompurify";
|
|
6
|
+
|
|
7
|
+
//#region src/components/editor/Preview.tsx
|
|
8
|
+
const Preview = function() {
|
|
9
|
+
const [editor] = useLexicalComposerContext();
|
|
10
|
+
return /* @__PURE__ */ jsx("div", {
|
|
11
|
+
className: "text-foreground min-h-[150px] whitespace-pre-wrap p-4",
|
|
12
|
+
dangerouslySetInnerHTML: { __html: editor.read(() => DOMPurify.sanitize($generateHtmlFromNodes(editor))) }
|
|
13
|
+
});
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
//#endregion
|
|
17
|
+
export { Preview };
|
|
18
|
+
//# sourceMappingURL=Preview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Preview.js","names":[],"sources":["../../../../src/components/editor/Preview.tsx"],"sourcesContent":["import { $generateHtmlFromNodes } from \"@lexical/html\";\nimport { useLexicalComposerContext } from \"@lexical/react/LexicalComposerContext\";\nimport DOMPurify from \"dompurify\";\nimport React from \"react\";\n\nexport const Preview = function () {\n const [editor] = useLexicalComposerContext();\n\n return (\n <div\n className=\"text-foreground min-h-[150px] whitespace-pre-wrap p-4\"\n dangerouslySetInnerHTML={{\n __html: editor.read(() =>\n DOMPurify.sanitize($generateHtmlFromNodes(editor)),\n ),\n }}\n />\n );\n};\n"],"mappings":";;;;;;;AAKA,MAAa,UAAU,WAAY;CACjC,MAAM,CAAC,UAAU,2BAA2B;AAE5C,QACE,oBAAC,OAAD;EACE,WAAU;EACV,yBAAyB,EACvB,QAAQ,OAAO,WACb,UAAU,SAAS,uBAAuB,OAAO,CAAC,CACnD,EACF;EACD"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { ReactNode } from "react";
|
|
2
|
+
|
|
3
|
+
//#region src/components/editor/ToolbarContext.d.ts
|
|
4
|
+
declare const blockTypeToBlockName: {
|
|
5
|
+
bullet: string;
|
|
6
|
+
check: string;
|
|
7
|
+
code: string;
|
|
8
|
+
h1: string;
|
|
9
|
+
h2: string;
|
|
10
|
+
h3: string;
|
|
11
|
+
h4: string;
|
|
12
|
+
h5: string;
|
|
13
|
+
h6: string;
|
|
14
|
+
number: string;
|
|
15
|
+
paragraph: string;
|
|
16
|
+
quote: string;
|
|
17
|
+
};
|
|
18
|
+
type BlockType = "check" | "code" | keyof typeof blockTypeToBlockName;
|
|
19
|
+
interface ToolbarState {
|
|
20
|
+
blockType: BlockType;
|
|
21
|
+
isBold: boolean;
|
|
22
|
+
isClear: boolean;
|
|
23
|
+
isItalic: boolean;
|
|
24
|
+
isStrikethrough: boolean;
|
|
25
|
+
isSubscript: boolean;
|
|
26
|
+
isSuperscript: boolean;
|
|
27
|
+
isUnderline: boolean;
|
|
28
|
+
}
|
|
29
|
+
type ToolbarStateKey = keyof ToolbarState;
|
|
30
|
+
type ToolbarStateValue<Key extends ToolbarStateKey> = ToolbarState[Key];
|
|
31
|
+
declare const ToolbarProvider: ({
|
|
32
|
+
children
|
|
33
|
+
}: {
|
|
34
|
+
children: ReactNode;
|
|
35
|
+
}) => any;
|
|
36
|
+
declare const useToolbarState: () => any;
|
|
37
|
+
//#endregion
|
|
38
|
+
export { BlockType, ToolbarProvider, ToolbarState, ToolbarStateKey, ToolbarStateValue, blockTypeToBlockName, useToolbarState };
|
|
39
|
+
//# sourceMappingURL=ToolbarContext.d.ts.map
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import React, { createContext, useCallback, useContext, useMemo, useState } from "react";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/components/editor/ToolbarContext.tsx
|
|
5
|
+
const blockTypeToBlockName = {
|
|
6
|
+
bullet: "Bulleted List",
|
|
7
|
+
check: "Check List",
|
|
8
|
+
code: "Code Block",
|
|
9
|
+
h1: "Heading 1",
|
|
10
|
+
h2: "Heading 2",
|
|
11
|
+
h3: "Heading 3",
|
|
12
|
+
h4: "Heading 4",
|
|
13
|
+
h5: "Heading 5",
|
|
14
|
+
h6: "Heading 6",
|
|
15
|
+
number: "Numbered List",
|
|
16
|
+
paragraph: "Normal",
|
|
17
|
+
quote: "Quote"
|
|
18
|
+
};
|
|
19
|
+
const Context = createContext(void 0);
|
|
20
|
+
const ToolbarProvider = ({ children }) => {
|
|
21
|
+
const [toolbarState, setToolbarState] = useState({
|
|
22
|
+
blockType: "paragraph",
|
|
23
|
+
isBold: false,
|
|
24
|
+
isClear: false,
|
|
25
|
+
isItalic: false,
|
|
26
|
+
isStrikethrough: false,
|
|
27
|
+
isSubscript: false,
|
|
28
|
+
isSuperscript: false,
|
|
29
|
+
isUnderline: false
|
|
30
|
+
});
|
|
31
|
+
const updateToolbarState = useCallback((key, value) => {
|
|
32
|
+
setToolbarState((prev) => ({
|
|
33
|
+
...prev,
|
|
34
|
+
[key]: value
|
|
35
|
+
}));
|
|
36
|
+
}, []);
|
|
37
|
+
const contextValue = useMemo(() => ({
|
|
38
|
+
toolbarState,
|
|
39
|
+
updateToolbarState
|
|
40
|
+
}), [toolbarState, updateToolbarState]);
|
|
41
|
+
return /* @__PURE__ */ jsx(Context.Provider, {
|
|
42
|
+
value: contextValue,
|
|
43
|
+
children
|
|
44
|
+
});
|
|
45
|
+
};
|
|
46
|
+
const useToolbarState = () => {
|
|
47
|
+
const context = useContext(Context);
|
|
48
|
+
if (context === void 0) throw new Error("useToolbarState must be used within a ToolbarProvider");
|
|
49
|
+
return context;
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
//#endregion
|
|
53
|
+
export { ToolbarProvider, blockTypeToBlockName, useToolbarState };
|
|
54
|
+
//# sourceMappingURL=ToolbarContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ToolbarContext.js","names":[],"sources":["../../../../src/components/editor/ToolbarContext.tsx"],"sourcesContent":["import React, {\n createContext,\n ReactNode,\n useCallback,\n useContext,\n useMemo,\n useState,\n} from \"react\";\n\nexport const blockTypeToBlockName = {\n bullet: \"Bulleted List\",\n check: \"Check List\",\n code: \"Code Block\",\n h1: \"Heading 1\",\n h2: \"Heading 2\",\n h3: \"Heading 3\",\n h4: \"Heading 4\",\n h5: \"Heading 5\",\n h6: \"Heading 6\",\n number: \"Numbered List\",\n paragraph: \"Normal\",\n quote: \"Quote\",\n};\n\nexport type BlockType = \"check\" | \"code\" | keyof typeof blockTypeToBlockName;\n\nexport interface ToolbarState {\n blockType: BlockType;\n isBold: boolean;\n isClear: boolean;\n isItalic: boolean;\n isStrikethrough: boolean;\n isSubscript: boolean;\n isSuperscript: boolean;\n isUnderline: boolean;\n}\n\nexport type ToolbarStateKey = keyof ToolbarState;\n\nexport type ToolbarStateValue<Key extends ToolbarStateKey> = ToolbarState[Key];\n\ninterface ContextShape {\n toolbarState: ToolbarState;\n updateToolbarState: <Key extends ToolbarStateKey>(\n key: Key,\n value: ToolbarStateValue<Key>,\n ) => void;\n}\n\nconst Context = createContext<ContextShape | undefined>(undefined);\n\nexport const ToolbarProvider = ({ children }: { children: ReactNode }) => {\n const [toolbarState, setToolbarState] = useState<ToolbarState>({\n blockType: \"paragraph\",\n isBold: false,\n isClear: false,\n isItalic: false,\n isStrikethrough: false,\n isSubscript: false,\n isSuperscript: false,\n isUnderline: false,\n });\n\n const updateToolbarState = useCallback(\n <Key extends ToolbarStateKey>(key: Key, value: ToolbarStateValue<Key>) => {\n setToolbarState((prev) => ({\n ...prev,\n [key]: value,\n }));\n },\n [],\n );\n\n const contextValue = useMemo(\n () => ({\n toolbarState,\n updateToolbarState,\n }),\n [toolbarState, updateToolbarState],\n );\n\n return <Context.Provider value={contextValue}>{children}</Context.Provider>;\n};\n\nexport const useToolbarState = () => {\n const context = useContext(Context);\n\n if (context === undefined) {\n throw new Error(\"useToolbarState must be used within a ToolbarProvider\");\n }\n\n return context;\n};\n"],"mappings":";;;;AASA,MAAa,uBAAuB;CAClC,QAAQ;CACR,OAAO;CACP,MAAM;CACN,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,QAAQ;CACR,WAAW;CACX,OAAO;CACR;AA2BD,MAAM,UAAU,cAAwC,OAAU;AAElE,MAAa,mBAAmB,EAAE,eAAwC;CACxE,MAAM,CAAC,cAAc,mBAAmB,SAAuB;EAC7D,WAAW;EACX,QAAQ;EACR,SAAS;EACT,UAAU;EACV,iBAAiB;EACjB,aAAa;EACb,eAAe;EACf,aAAa;EACd,CAAC;CAEF,MAAM,qBAAqB,aACK,KAAU,UAAkC;AACxE,mBAAiB,UAAU;GACzB,GAAG;IACF,MAAM;GACR,EAAE;IAEL,EAAE,CACH;CAED,MAAM,eAAe,eACZ;EACL;EACA;EACD,GACD,CAAC,cAAc,mBAAmB,CACnC;AAED,QAAO,oBAAC,QAAQ,UAAT;EAAkB,OAAO;EAAe;EAA4B;;AAG7E,MAAa,wBAAwB;CACnC,MAAM,UAAU,WAAW,QAAQ;AAEnC,KAAI,YAAY,OACd,OAAM,IAAI,MAAM,wDAAwD;AAG1E,QAAO"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ToolbarOption } from "./EditorInner.js";
|
|
2
|
+
import React from "react";
|
|
3
|
+
|
|
4
|
+
//#region src/components/editor/ToolbarPlugin.d.ts
|
|
5
|
+
declare const defaultToolbarOptions: ToolbarOption[];
|
|
6
|
+
interface ToolbarPluginProps {
|
|
7
|
+
enablePreview?: boolean;
|
|
8
|
+
isPreview: boolean;
|
|
9
|
+
setIsPreview: React.Dispatch<React.SetStateAction<boolean>>;
|
|
10
|
+
toolbarOptions?: ("blockTypes" | "bold" | "clear" | "italic" | "redo" | "strikethrough" | "subscript" | "superscript" | "underline" | "undo")[];
|
|
11
|
+
}
|
|
12
|
+
declare function ToolbarPlugin({
|
|
13
|
+
enablePreview,
|
|
14
|
+
isPreview,
|
|
15
|
+
setIsPreview,
|
|
16
|
+
toolbarOptions
|
|
17
|
+
}: ToolbarPluginProps): any;
|
|
18
|
+
//#endregion
|
|
19
|
+
export { ToolbarPlugin, defaultToolbarOptions };
|
|
20
|
+
//# sourceMappingURL=ToolbarPlugin.d.ts.map
|