@verbb/plugin-kit-react 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +5 -0
- package/LICENSE.md +21 -0
- package/README.md +31 -0
- package/dist/_virtual/_rolldown/runtime.js +34 -0
- package/dist/components/Button.d.ts +26 -0
- package/dist/components/Button.d.ts.map +1 -0
- package/dist/components/Button.js +148 -0
- package/dist/components/Button.js.map +1 -0
- package/dist/components/ButtonGroup.d.ts +11 -0
- package/dist/components/ButtonGroup.d.ts.map +1 -0
- package/dist/components/ButtonGroup.js +59 -0
- package/dist/components/ButtonGroup.js.map +1 -0
- package/dist/components/Calendar.d.ts +11 -0
- package/dist/components/Calendar.d.ts.map +1 -0
- package/dist/components/Calendar.js +133 -0
- package/dist/components/Calendar.js.map +1 -0
- package/dist/components/Checkbox.d.ts +5 -0
- package/dist/components/Checkbox.d.ts.map +1 -0
- package/dist/components/Checkbox.js +41 -0
- package/dist/components/Checkbox.js.map +1 -0
- package/dist/components/CheckboxInput.d.ts +14 -0
- package/dist/components/CheckboxInput.d.ts.map +1 -0
- package/dist/components/CheckboxInput.js +31 -0
- package/dist/components/CheckboxInput.js.map +1 -0
- package/dist/components/CheckboxSelect.d.ts +19 -0
- package/dist/components/CheckboxSelect.d.ts.map +1 -0
- package/dist/components/CheckboxSelect.js +63 -0
- package/dist/components/CheckboxSelect.js.map +1 -0
- package/dist/components/ColorInput.d.ts +14 -0
- package/dist/components/ColorInput.d.ts.map +1 -0
- package/dist/components/ColorInput.js +148 -0
- package/dist/components/ColorInput.js.map +1 -0
- package/dist/components/Combobox.d.ts +40 -0
- package/dist/components/Combobox.d.ts.map +1 -0
- package/dist/components/Combobox.js +393 -0
- package/dist/components/Combobox.js.map +1 -0
- package/dist/components/ComboboxInput.d.ts +28 -0
- package/dist/components/ComboboxInput.d.ts.map +1 -0
- package/dist/components/ComboboxInput.js +165 -0
- package/dist/components/ComboboxInput.js.map +1 -0
- package/dist/components/Command.d.ts +26 -0
- package/dist/components/Command.d.ts.map +1 -0
- package/dist/components/Command.js +94 -0
- package/dist/components/Command.js.map +1 -0
- package/dist/components/CopyButton.d.ts +9 -0
- package/dist/components/CopyButton.d.ts.map +1 -0
- package/dist/components/CopyButton.js +40 -0
- package/dist/components/CopyButton.js.map +1 -0
- package/dist/components/DatePicker.d.ts +9 -0
- package/dist/components/DatePicker.d.ts.map +1 -0
- package/dist/components/DatePicker.js +46 -0
- package/dist/components/DatePicker.js.map +1 -0
- package/dist/components/Dialog.d.ts +21 -0
- package/dist/components/Dialog.d.ts.map +1 -0
- package/dist/components/Dialog.js +179 -0
- package/dist/components/Dialog.js.map +1 -0
- package/dist/components/DropdownMenu.d.ts +47 -0
- package/dist/components/DropdownMenu.d.ts.map +1 -0
- package/dist/components/DropdownMenu.js +240 -0
- package/dist/components/DropdownMenu.js.map +1 -0
- package/dist/components/EditableTable.d.ts +28 -0
- package/dist/components/EditableTable.d.ts.map +1 -0
- package/dist/components/EditableTable.js +145 -0
- package/dist/components/EditableTable.js.map +1 -0
- package/dist/components/FadeIn.d.ts +12 -0
- package/dist/components/FadeIn.d.ts.map +1 -0
- package/dist/components/FadeIn.js +24 -0
- package/dist/components/FadeIn.js.map +1 -0
- package/dist/components/Input.d.ts +9 -0
- package/dist/components/Input.d.ts.map +1 -0
- package/dist/components/Input.js +43 -0
- package/dist/components/Input.js.map +1 -0
- package/dist/components/InputGroup.d.ts +20 -0
- package/dist/components/InputGroup.d.ts.map +1 -0
- package/dist/components/InputGroup.js +111 -0
- package/dist/components/InputGroup.js.map +1 -0
- package/dist/components/Label.d.ts +4 -0
- package/dist/components/Label.d.ts.map +1 -0
- package/dist/components/Label.js +15 -0
- package/dist/components/Label.js.map +1 -0
- package/dist/components/Lightswitch.d.ts +9 -0
- package/dist/components/Lightswitch.d.ts.map +1 -0
- package/dist/components/Lightswitch.js +56 -0
- package/dist/components/Lightswitch.js.map +1 -0
- package/dist/components/Markdown.d.ts +11 -0
- package/dist/components/Markdown.d.ts.map +1 -0
- package/dist/components/Markdown.js +46 -0
- package/dist/components/Markdown.js.map +1 -0
- package/dist/components/MenuButton.d.ts +40 -0
- package/dist/components/MenuButton.d.ts.map +1 -0
- package/dist/components/MenuButton.js +122 -0
- package/dist/components/MenuButton.js.map +1 -0
- package/dist/components/ModalTabs.d.ts +8 -0
- package/dist/components/ModalTabs.d.ts.map +1 -0
- package/dist/components/ModalTabs.js +37 -0
- package/dist/components/ModalTabs.js.map +1 -0
- package/dist/components/PaneTabs.d.ts +8 -0
- package/dist/components/PaneTabs.d.ts.map +1 -0
- package/dist/components/PaneTabs.js +37 -0
- package/dist/components/PaneTabs.js.map +1 -0
- package/dist/components/Popover.d.ts +12 -0
- package/dist/components/Popover.d.ts.map +1 -0
- package/dist/components/Popover.js +70 -0
- package/dist/components/Popover.js.map +1 -0
- package/dist/components/RadioGroup.d.ts +6 -0
- package/dist/components/RadioGroup.d.ts.map +1 -0
- package/dist/components/RadioGroup.js +34 -0
- package/dist/components/RadioGroup.js.map +1 -0
- package/dist/components/ScrollArea.d.ts +16 -0
- package/dist/components/ScrollArea.d.ts.map +1 -0
- package/dist/components/ScrollArea.js +47 -0
- package/dist/components/ScrollArea.js.map +1 -0
- package/dist/components/Select.d.ts +23 -0
- package/dist/components/Select.d.ts.map +1 -0
- package/dist/components/Select.js +205 -0
- package/dist/components/Select.js.map +1 -0
- package/dist/components/SelectInput.d.ts +33 -0
- package/dist/components/SelectInput.d.ts.map +1 -0
- package/dist/components/SelectInput.js +85 -0
- package/dist/components/SelectInput.js.map +1 -0
- package/dist/components/Separator.d.ts +4 -0
- package/dist/components/Separator.d.ts.map +1 -0
- package/dist/components/Separator.js +17 -0
- package/dist/components/Separator.js.map +1 -0
- package/dist/components/SlideUp.d.ts +12 -0
- package/dist/components/SlideUp.d.ts.map +1 -0
- package/dist/components/SlideUp.js +36 -0
- package/dist/components/SlideUp.js.map +1 -0
- package/dist/components/Slot.d.ts +6 -0
- package/dist/components/Slot.d.ts.map +1 -0
- package/dist/components/Slot.js +52 -0
- package/dist/components/Slot.js.map +1 -0
- package/dist/components/Spinner.d.ts +9 -0
- package/dist/components/Spinner.d.ts.map +1 -0
- package/dist/components/Spinner.js +43 -0
- package/dist/components/Spinner.js.map +1 -0
- package/dist/components/Status.d.ts +8 -0
- package/dist/components/Status.d.ts.map +1 -0
- package/dist/components/Status.js +55 -0
- package/dist/components/Status.js.map +1 -0
- package/dist/components/Table.d.ts +10 -0
- package/dist/components/Table.d.ts.map +1 -0
- package/dist/components/Table.js +64 -0
- package/dist/components/Table.js.map +1 -0
- package/dist/components/Tabs.d.ts +8 -0
- package/dist/components/Tabs.d.ts.map +1 -0
- package/dist/components/Tabs.js +37 -0
- package/dist/components/Tabs.js.map +1 -0
- package/dist/components/Textarea.d.ts +8 -0
- package/dist/components/Textarea.d.ts.map +1 -0
- package/dist/components/Textarea.js +26 -0
- package/dist/components/Textarea.js.map +1 -0
- package/dist/components/TimePicker.d.ts +9 -0
- package/dist/components/TimePicker.d.ts.map +1 -0
- package/dist/components/TimePicker.js +40 -0
- package/dist/components/TimePicker.js.map +1 -0
- package/dist/components/TiptapContent.d.ts +9 -0
- package/dist/components/TiptapContent.d.ts.map +1 -0
- package/dist/components/TiptapContent.js +24 -0
- package/dist/components/TiptapContent.js.map +1 -0
- package/dist/components/TiptapEditor.d.ts +41 -0
- package/dist/components/TiptapEditor.d.ts.map +1 -0
- package/dist/components/TiptapEditor.js +555 -0
- package/dist/components/TiptapEditor.js.map +1 -0
- package/dist/components/TiptapInput.d.ts +15 -0
- package/dist/components/TiptapInput.d.ts.map +1 -0
- package/dist/components/TiptapInput.js +138 -0
- package/dist/components/TiptapInput.js.map +1 -0
- package/dist/components/Toggle.d.ts +9 -0
- package/dist/components/Toggle.d.ts.map +1 -0
- package/dist/components/Toggle.js +48 -0
- package/dist/components/Toggle.js.map +1 -0
- package/dist/components/ToggleGroup.d.ts +11 -0
- package/dist/components/ToggleGroup.d.ts.map +1 -0
- package/dist/components/ToggleGroup.js +70 -0
- package/dist/components/ToggleGroup.js.map +1 -0
- package/dist/components/Tooltip.d.ts +9 -0
- package/dist/components/Tooltip.d.ts.map +1 -0
- package/dist/components/Tooltip.js +51 -0
- package/dist/components/Tooltip.js.map +1 -0
- package/dist/components/VirtualizedScrollArea.d.ts +25 -0
- package/dist/components/VirtualizedScrollArea.d.ts.map +1 -0
- package/dist/components/VirtualizedScrollArea.js +80 -0
- package/dist/components/VirtualizedScrollArea.js.map +1 -0
- package/dist/components/editable-table/RowDataCells.d.ts +3 -0
- package/dist/components/editable-table/RowDataCells.d.ts.map +1 -0
- package/dist/components/editable-table/RowDataCells.js +33 -0
- package/dist/components/editable-table/RowDataCells.js.map +1 -0
- package/dist/components/editable-table/TableCell.d.ts +13 -0
- package/dist/components/editable-table/TableCell.d.ts.map +1 -0
- package/dist/components/editable-table/TableCell.js +415 -0
- package/dist/components/editable-table/TableCell.js.map +1 -0
- package/dist/components/editable-table/TableRow.d.ts +3 -0
- package/dist/components/editable-table/TableRow.d.ts.map +1 -0
- package/dist/components/editable-table/TableRow.js +163 -0
- package/dist/components/editable-table/TableRow.js.map +1 -0
- package/dist/components/editable-table/helpers.d.ts +12 -0
- package/dist/components/editable-table/helpers.d.ts.map +1 -0
- package/dist/components/editable-table/helpers.js +23 -0
- package/dist/components/editable-table/helpers.js.map +1 -0
- package/dist/components/editable-table/index.d.ts +4 -0
- package/dist/components/editable-table/index.d.ts.map +1 -0
- package/dist/components/editable-table/index.js +4 -0
- package/dist/components/editable-table/types.d.ts +43 -0
- package/dist/components/editable-table/types.d.ts.map +1 -0
- package/dist/components/editable-table/types.js +0 -0
- package/dist/components/editable-table/useEditableTableCellChange.d.ts +17 -0
- package/dist/components/editable-table/useEditableTableCellChange.d.ts.map +1 -0
- package/dist/components/editable-table/useEditableTableCellChange.js +152 -0
- package/dist/components/editable-table/useEditableTableCellChange.js.map +1 -0
- package/dist/components/editable-table/useEditableTableDnd.d.ts +18 -0
- package/dist/components/editable-table/useEditableTableDnd.d.ts.map +1 -0
- package/dist/components/editable-table/useEditableTableDnd.js +55 -0
- package/dist/components/editable-table/useEditableTableDnd.js.map +1 -0
- package/dist/components/editable-table/useEditableTableRows.d.ts +17 -0
- package/dist/components/editable-table/useEditableTableRows.d.ts.map +1 -0
- package/dist/components/editable-table/useEditableTableRows.js +108 -0
- package/dist/components/editable-table/useEditableTableRows.js.map +1 -0
- package/dist/components/index.d.ts +45 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +45 -0
- package/dist/components/tiptap/InlineVariablePickerPopover.d.ts +24 -0
- package/dist/components/tiptap/InlineVariablePickerPopover.d.ts.map +1 -0
- package/dist/components/tiptap/InlineVariablePickerPopover.js +63 -0
- package/dist/components/tiptap/InlineVariablePickerPopover.js.map +1 -0
- package/dist/components/tiptap/InsertLinkDialog.d.ts +14 -0
- package/dist/components/tiptap/InsertLinkDialog.d.ts.map +1 -0
- package/dist/components/tiptap/InsertLinkDialog.js +145 -0
- package/dist/components/tiptap/InsertLinkDialog.js.map +1 -0
- package/dist/components/tiptap/LinkBubbleMenu.d.ts +10 -0
- package/dist/components/tiptap/LinkBubbleMenu.d.ts.map +1 -0
- package/dist/components/tiptap/LinkBubbleMenu.js +106 -0
- package/dist/components/tiptap/LinkBubbleMenu.js.map +1 -0
- package/dist/components/tiptap/LinkDropdown.d.ts +53 -0
- package/dist/components/tiptap/LinkDropdown.d.ts.map +1 -0
- package/dist/components/tiptap/LinkDropdown.js +155 -0
- package/dist/components/tiptap/LinkDropdown.js.map +1 -0
- package/dist/components/tiptap/VariableCommandList.d.ts +37 -0
- package/dist/components/tiptap/VariableCommandList.d.ts.map +1 -0
- package/dist/components/tiptap/VariableCommandList.js +166 -0
- package/dist/components/tiptap/VariableCommandList.js.map +1 -0
- package/dist/components/tiptap/VariableDropdown.d.ts +33 -0
- package/dist/components/tiptap/VariableDropdown.d.ts.map +1 -0
- package/dist/components/tiptap/VariableDropdown.js +121 -0
- package/dist/components/tiptap/VariableDropdown.js.map +1 -0
- package/dist/components/tiptap/VariablePickerContext.d.ts +38 -0
- package/dist/components/tiptap/VariablePickerContext.d.ts.map +1 -0
- package/dist/components/tiptap/VariablePickerContext.js +30 -0
- package/dist/components/tiptap/VariablePickerContext.js.map +1 -0
- package/dist/components/tiptap/VariableTag.d.ts +6 -0
- package/dist/components/tiptap/VariableTag.d.ts.map +1 -0
- package/dist/components/tiptap/VariableTag.js +153 -0
- package/dist/components/tiptap/VariableTag.js.map +1 -0
- package/dist/components/tiptap/VariableTagView.d.ts +3 -0
- package/dist/components/tiptap/VariableTagView.d.ts.map +1 -0
- package/dist/components/tiptap/VariableTagView.js +445 -0
- package/dist/components/tiptap/VariableTagView.js.map +1 -0
- package/dist/components/tiptap/VariableTransformControls.d.ts +37 -0
- package/dist/components/tiptap/VariableTransformControls.d.ts.map +1 -0
- package/dist/components/tiptap/VariableTransformControls.js +157 -0
- package/dist/components/tiptap/VariableTransformControls.js.map +1 -0
- package/dist/components/tiptap/editorConfig.d.ts +15 -0
- package/dist/components/tiptap/editorConfig.d.ts.map +1 -0
- package/dist/components/tiptap/editorConfig.js +191 -0
- package/dist/components/tiptap/editorConfig.js.map +1 -0
- package/dist/components/tiptap/useInlineVariablePicker.d.ts +34 -0
- package/dist/components/tiptap/useInlineVariablePicker.d.ts.map +1 -0
- package/dist/components/tiptap/useInlineVariablePicker.js +240 -0
- package/dist/components/tiptap/useInlineVariablePicker.js.map +1 -0
- package/dist/components/tiptap/useVariablePicker.d.ts +28 -0
- package/dist/components/tiptap/useVariablePicker.d.ts.map +1 -0
- package/dist/components/tiptap/useVariablePicker.js +122 -0
- package/dist/components/tiptap/useVariablePicker.js.map +1 -0
- package/dist/components/tiptap/variablePickerUtils.d.ts +11 -0
- package/dist/components/tiptap/variablePickerUtils.d.ts.map +1 -0
- package/dist/components/tiptap/variablePickerUtils.js +63 -0
- package/dist/components/tiptap/variablePickerUtils.js.map +1 -0
- package/dist/components/tiptap/variableSerialization.d.ts +49 -0
- package/dist/components/tiptap/variableSerialization.d.ts.map +1 -0
- package/dist/components/tiptap/variableSerialization.js +250 -0
- package/dist/components/tiptap/variableSerialization.js.map +1 -0
- package/dist/css/core.css +288 -0
- package/dist/css/style.css +295 -0
- package/dist/forms/Field.d.ts +37 -0
- package/dist/forms/Field.d.ts.map +1 -0
- package/dist/forms/Field.js +159 -0
- package/dist/forms/Field.js.map +1 -0
- package/dist/forms/SchemaFormEngine.d.ts +23 -0
- package/dist/forms/SchemaFormEngine.d.ts.map +1 -0
- package/dist/forms/SchemaFormEngine.js +444 -0
- package/dist/forms/SchemaFormEngine.js.map +1 -0
- package/dist/forms/components/FieldWrap.d.ts +11 -0
- package/dist/forms/components/FieldWrap.d.ts.map +1 -0
- package/dist/forms/components/FieldWrap.js +84 -0
- package/dist/forms/components/FieldWrap.js.map +1 -0
- package/dist/forms/components/ModalTabs.d.ts +21 -0
- package/dist/forms/components/ModalTabs.d.ts.map +1 -0
- package/dist/forms/components/ModalTabs.js +84 -0
- package/dist/forms/components/ModalTabs.js.map +1 -0
- package/dist/forms/components/index.d.ts +3 -0
- package/dist/forms/components/index.d.ts.map +1 -0
- package/dist/forms/components/index.js +3 -0
- package/dist/forms/contexts/VariableCategoriesContext.d.ts +17 -0
- package/dist/forms/contexts/VariableCategoriesContext.d.ts.map +1 -0
- package/dist/forms/contexts/VariableCategoriesContext.js +18 -0
- package/dist/forms/contexts/VariableCategoriesContext.js.map +1 -0
- package/dist/forms/engine/FormStateStore.d.ts +24 -0
- package/dist/forms/engine/FormStateStore.d.ts.map +1 -0
- package/dist/forms/engine/FormStateStore.js +97 -0
- package/dist/forms/engine/FormStateStore.js.map +1 -0
- package/dist/forms/engine/SchemaIndex.d.ts +33 -0
- package/dist/forms/engine/SchemaIndex.d.ts.map +1 -0
- package/dist/forms/engine/SchemaIndex.js +21 -0
- package/dist/forms/engine/SchemaIndex.js.map +1 -0
- package/dist/forms/engine/ValidationEngine.d.ts +13 -0
- package/dist/forms/engine/ValidationEngine.d.ts.map +1 -0
- package/dist/forms/engine/ValidationEngine.js +155 -0
- package/dist/forms/engine/ValidationEngine.js.map +1 -0
- package/dist/forms/engine/buildGroupedMessage.d.ts +2 -0
- package/dist/forms/engine/buildGroupedMessage.d.ts.map +1 -0
- package/dist/forms/engine/buildGroupedMessage.js +20 -0
- package/dist/forms/engine/buildGroupedMessage.js.map +1 -0
- package/dist/forms/engine/context.d.ts +60 -0
- package/dist/forms/engine/context.d.ts.map +1 -0
- package/dist/forms/engine/context.js +12 -0
- package/dist/forms/engine/context.js.map +1 -0
- package/dist/forms/engine/rules/email.d.ts +2 -0
- package/dist/forms/engine/rules/email.d.ts.map +1 -0
- package/dist/forms/engine/rules/email.js +11 -0
- package/dist/forms/engine/rules/email.js.map +1 -0
- package/dist/forms/engine/rules/emailOrVariable.d.ts +2 -0
- package/dist/forms/engine/rules/emailOrVariable.d.ts.map +1 -0
- package/dist/forms/engine/rules/emailOrVariable.js +13 -0
- package/dist/forms/engine/rules/emailOrVariable.js.map +1 -0
- package/dist/forms/engine/rules/handle.d.ts +2 -0
- package/dist/forms/engine/rules/handle.d.ts.map +1 -0
- package/dist/forms/engine/rules/handle.js +12 -0
- package/dist/forms/engine/rules/handle.js.map +1 -0
- package/dist/forms/engine/rules/index.d.ts +9 -0
- package/dist/forms/engine/rules/index.d.ts.map +1 -0
- package/dist/forms/engine/rules/index.js +35 -0
- package/dist/forms/engine/rules/index.js.map +1 -0
- package/dist/forms/engine/rules/max.d.ts +2 -0
- package/dist/forms/engine/rules/max.d.ts.map +1 -0
- package/dist/forms/engine/rules/max.js +16 -0
- package/dist/forms/engine/rules/max.js.map +1 -0
- package/dist/forms/engine/rules/min.d.ts +2 -0
- package/dist/forms/engine/rules/min.d.ts.map +1 -0
- package/dist/forms/engine/rules/min.js +16 -0
- package/dist/forms/engine/rules/min.js.map +1 -0
- package/dist/forms/engine/rules/required.d.ts +2 -0
- package/dist/forms/engine/rules/required.d.ts.map +1 -0
- package/dist/forms/engine/rules/required.js +11 -0
- package/dist/forms/engine/rules/required.js.map +1 -0
- package/dist/forms/engine/rules/uniqueHandle.d.ts +9 -0
- package/dist/forms/engine/rules/uniqueHandle.d.ts.map +1 -0
- package/dist/forms/engine/rules/uniqueHandle.js +95 -0
- package/dist/forms/engine/rules/uniqueHandle.js.map +1 -0
- package/dist/forms/engine/rules/utils.d.ts +3 -0
- package/dist/forms/engine/rules/utils.d.ts.map +1 -0
- package/dist/forms/engine/rules/utils.js +21 -0
- package/dist/forms/engine/rules/utils.js.map +1 -0
- package/dist/forms/fields/CalculationsField.d.ts +24 -0
- package/dist/forms/fields/CalculationsField.d.ts.map +1 -0
- package/dist/forms/fields/CalculationsField.js +215 -0
- package/dist/forms/fields/CalculationsField.js.map +1 -0
- package/dist/forms/fields/CalculationsToolbar.d.ts +17 -0
- package/dist/forms/fields/CalculationsToolbar.d.ts.map +1 -0
- package/dist/forms/fields/CalculationsToolbar.js +130 -0
- package/dist/forms/fields/CalculationsToolbar.js.map +1 -0
- package/dist/forms/fields/CheckboxSelectField.d.ts +19 -0
- package/dist/forms/fields/CheckboxSelectField.d.ts.map +1 -0
- package/dist/forms/fields/CheckboxSelectField.js +30 -0
- package/dist/forms/fields/CheckboxSelectField.js.map +1 -0
- package/dist/forms/fields/ColorField.d.ts +15 -0
- package/dist/forms/fields/ColorField.d.ts.map +1 -0
- package/dist/forms/fields/ColorField.js +30 -0
- package/dist/forms/fields/ColorField.js.map +1 -0
- package/dist/forms/fields/ComboboxField.d.ts +23 -0
- package/dist/forms/fields/ComboboxField.d.ts.map +1 -0
- package/dist/forms/fields/ComboboxField.js +38 -0
- package/dist/forms/fields/ComboboxField.js.map +1 -0
- package/dist/forms/fields/DateTimeField.d.ts +14 -0
- package/dist/forms/fields/DateTimeField.d.ts.map +1 -0
- package/dist/forms/fields/DateTimeField.js +53 -0
- package/dist/forms/fields/DateTimeField.js.map +1 -0
- package/dist/forms/fields/EditableTableField.d.ts +22 -0
- package/dist/forms/fields/EditableTableField.d.ts.map +1 -0
- package/dist/forms/fields/EditableTableField.js +37 -0
- package/dist/forms/fields/EditableTableField.js.map +1 -0
- package/dist/forms/fields/ElementSelectField.d.ts +20 -0
- package/dist/forms/fields/ElementSelectField.d.ts.map +1 -0
- package/dist/forms/fields/ElementSelectField.js +215 -0
- package/dist/forms/fields/ElementSelectField.js.map +1 -0
- package/dist/forms/fields/GroupField.d.ts +19 -0
- package/dist/forms/fields/GroupField.d.ts.map +1 -0
- package/dist/forms/fields/GroupField.js +50 -0
- package/dist/forms/fields/GroupField.js.map +1 -0
- package/dist/forms/fields/HandleField.d.ts +20 -0
- package/dist/forms/fields/HandleField.d.ts.map +1 -0
- package/dist/forms/fields/HandleField.js +70 -0
- package/dist/forms/fields/HandleField.js.map +1 -0
- package/dist/forms/fields/LightswitchField.d.ts +14 -0
- package/dist/forms/fields/LightswitchField.d.ts.map +1 -0
- package/dist/forms/fields/LightswitchField.js +29 -0
- package/dist/forms/fields/LightswitchField.js.map +1 -0
- package/dist/forms/fields/ListField.d.ts +17 -0
- package/dist/forms/fields/ListField.d.ts.map +1 -0
- package/dist/forms/fields/ListField.js +51 -0
- package/dist/forms/fields/ListField.js.map +1 -0
- package/dist/forms/fields/NumberField.d.ts +17 -0
- package/dist/forms/fields/NumberField.d.ts.map +1 -0
- package/dist/forms/fields/NumberField.js +33 -0
- package/dist/forms/fields/NumberField.js.map +1 -0
- package/dist/forms/fields/RadioGroupField.d.ts +25 -0
- package/dist/forms/fields/RadioGroupField.d.ts.map +1 -0
- package/dist/forms/fields/RadioGroupField.js +102 -0
- package/dist/forms/fields/RadioGroupField.js.map +1 -0
- package/dist/forms/fields/RichTextField.d.ts +23 -0
- package/dist/forms/fields/RichTextField.d.ts.map +1 -0
- package/dist/forms/fields/RichTextField.js +50 -0
- package/dist/forms/fields/RichTextField.js.map +1 -0
- package/dist/forms/fields/SelectField.d.ts +25 -0
- package/dist/forms/fields/SelectField.d.ts.map +1 -0
- package/dist/forms/fields/SelectField.js +73 -0
- package/dist/forms/fields/SelectField.js.map +1 -0
- package/dist/forms/fields/StaticTableField.d.ts +34 -0
- package/dist/forms/fields/StaticTableField.d.ts.map +1 -0
- package/dist/forms/fields/StaticTableField.js +128 -0
- package/dist/forms/fields/StaticTableField.js.map +1 -0
- package/dist/forms/fields/TextField.d.ts +16 -0
- package/dist/forms/fields/TextField.d.ts.map +1 -0
- package/dist/forms/fields/TextField.js +31 -0
- package/dist/forms/fields/TextField.js.map +1 -0
- package/dist/forms/fields/TextareaField.d.ts +17 -0
- package/dist/forms/fields/TextareaField.d.ts.map +1 -0
- package/dist/forms/fields/TextareaField.js +32 -0
- package/dist/forms/fields/TextareaField.js.map +1 -0
- package/dist/forms/fields/VariablePickerField.d.ts +21 -0
- package/dist/forms/fields/VariablePickerField.d.ts.map +1 -0
- package/dist/forms/fields/VariablePickerField.js +49 -0
- package/dist/forms/fields/VariablePickerField.js.map +1 -0
- package/dist/forms/index.d.ts +8 -0
- package/dist/forms/index.d.ts.map +1 -0
- package/dist/forms/index.js +10 -0
- package/dist/forms/registry.d.ts +8 -0
- package/dist/forms/registry.d.ts.map +1 -0
- package/dist/forms/registry.js +76 -0
- package/dist/forms/registry.js.map +1 -0
- package/dist/forms/store/element-store.d.ts +11 -0
- package/dist/forms/store/element-store.d.ts.map +1 -0
- package/dist/forms/store/element-store.js +41 -0
- package/dist/forms/store/element-store.js.map +1 -0
- package/dist/forms/useEditableTableFieldBinding.d.ts +13 -0
- package/dist/forms/useEditableTableFieldBinding.d.ts.map +1 -0
- package/dist/forms/useEditableTableFieldBinding.js +91 -0
- package/dist/forms/useEditableTableFieldBinding.js.map +1 -0
- package/dist/forms/useEngineField.d.ts +9 -0
- package/dist/forms/useEngineField.d.ts.map +1 -0
- package/dist/forms/useEngineField.js +32 -0
- package/dist/forms/useEngineField.js.map +1 -0
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +3 -0
- package/dist/hooks/useKeyboardShortcuts.d.ts +14 -0
- package/dist/hooks/useKeyboardShortcuts.d.ts.map +1 -0
- package/dist/hooks/useKeyboardShortcuts.js +67 -0
- package/dist/hooks/useKeyboardShortcuts.js.map +1 -0
- package/dist/hooks/useTranslation.d.ts +3 -0
- package/dist/hooks/useTranslation.d.ts.map +1 -0
- package/dist/hooks/useTranslation.js +12 -0
- package/dist/hooks/useTranslation.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/arrayLikeToArray.js +15 -0
- package/dist/node_modules/@babel/runtime/helpers/arrayLikeToArray.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js +15 -0
- package/dist/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/classCallCheck.js +13 -0
- package/dist/node_modules/@babel/runtime/helpers/classCallCheck.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/createClass.js +21 -0
- package/dist/node_modules/@babel/runtime/helpers/createClass.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/defineProperty.js +20 -0
- package/dist/node_modules/@babel/runtime/helpers/defineProperty.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/interopRequireDefault.js +13 -0
- package/dist/node_modules/@babel/runtime/helpers/interopRequireDefault.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/iterableToArray.js +13 -0
- package/dist/node_modules/@babel/runtime/helpers/iterableToArray.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/nonIterableSpread.js +13 -0
- package/dist/node_modules/@babel/runtime/helpers/nonIterableSpread.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/toConsumableArray.js +21 -0
- package/dist/node_modules/@babel/runtime/helpers/toConsumableArray.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/toPrimitive.js +22 -0
- package/dist/node_modules/@babel/runtime/helpers/toPrimitive.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/toPropertyKey.js +18 -0
- package/dist/node_modules/@babel/runtime/helpers/toPropertyKey.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/typeof.js +18 -0
- package/dist/node_modules/@babel/runtime/helpers/typeof.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js +19 -0
- package/dist/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js.map +1 -0
- package/dist/node_modules/jexl/dist/Expression.js +84 -0
- package/dist/node_modules/jexl/dist/Expression.js.map +1 -0
- package/dist/node_modules/jexl/dist/Jexl.js +165 -0
- package/dist/node_modules/jexl/dist/Jexl.js.map +1 -0
- package/dist/node_modules/jexl/dist/Lexer.js +152 -0
- package/dist/node_modules/jexl/dist/Lexer.js.map +1 -0
- package/dist/node_modules/jexl/dist/PromiseSync.js +87 -0
- package/dist/node_modules/jexl/dist/PromiseSync.js.map +1 -0
- package/dist/node_modules/jexl/dist/evaluator/Evaluator.js +98 -0
- package/dist/node_modules/jexl/dist/evaluator/Evaluator.js.map +1 -0
- package/dist/node_modules/jexl/dist/evaluator/handlers.js +162 -0
- package/dist/node_modules/jexl/dist/evaluator/handlers.js.map +1 -0
- package/dist/node_modules/jexl/dist/grammar.js +195 -0
- package/dist/node_modules/jexl/dist/grammar.js.map +1 -0
- package/dist/node_modules/jexl/dist/parser/Parser.js +135 -0
- package/dist/node_modules/jexl/dist/parser/Parser.js.map +1 -0
- package/dist/node_modules/jexl/dist/parser/handlers.js +205 -0
- package/dist/node_modules/jexl/dist/parser/handlers.js.map +1 -0
- package/dist/node_modules/jexl/dist/parser/states.js +158 -0
- package/dist/node_modules/jexl/dist/parser/states.js.map +1 -0
- package/dist/types/global.d.d.ts +1 -0
- package/dist/types/global.d.js +0 -0
- package/dist/utils/classes.d.ts +18 -0
- package/dist/utils/classes.d.ts.map +1 -0
- package/dist/utils/classes.js +25 -0
- package/dist/utils/classes.js.map +1 -0
- package/dist/utils/config.d.ts +14 -0
- package/dist/utils/config.d.ts.map +1 -0
- package/dist/utils/config.js +16 -0
- package/dist/utils/config.js.map +1 -0
- package/dist/utils/craftHostBridge.d.ts +16 -0
- package/dist/utils/craftHostBridge.d.ts.map +1 -0
- package/dist/utils/craftHostBridge.js +28 -0
- package/dist/utils/craftHostBridge.js.map +1 -0
- package/dist/utils/handle.d.ts +10 -0
- package/dist/utils/handle.d.ts.map +1 -0
- package/dist/utils/handle.js +51 -0
- package/dist/utils/handle.js.map +1 -0
- package/dist/utils/hostBridge.d.ts +40 -0
- package/dist/utils/hostBridge.d.ts.map +1 -0
- package/dist/utils/hostBridge.js +35 -0
- package/dist/utils/hostBridge.js.map +1 -0
- package/dist/utils/index.d.ts +18 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +66 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/portal.d.ts +17 -0
- package/dist/utils/portal.d.ts.map +1 -0
- package/dist/utils/portal.js +51 -0
- package/dist/utils/portal.js.map +1 -0
- package/dist/utils/schema.d.ts +17 -0
- package/dist/utils/schema.d.ts.map +1 -0
- package/dist/utils/schema.js +56 -0
- package/dist/utils/schema.js.map +1 -0
- package/dist/utils/schemaFieldNames.d.ts +2 -0
- package/dist/utils/schemaFieldNames.d.ts.map +1 -0
- package/dist/utils/schemaFieldNames.js +16 -0
- package/dist/utils/schemaFieldNames.js.map +1 -0
- package/dist/utils/schemaIndex.d.ts +6 -0
- package/dist/utils/schemaIndex.d.ts.map +1 -0
- package/dist/utils/schemaIndex.js +31 -0
- package/dist/utils/schemaIndex.js.map +1 -0
- package/dist/utils/schemaIndexCache.d.ts +6 -0
- package/dist/utils/schemaIndexCache.d.ts.map +1 -0
- package/dist/utils/schemaIndexCache.js +32 -0
- package/dist/utils/schemaIndexCache.js.map +1 -0
- package/dist/utils/schemaNormalize.d.ts +13 -0
- package/dist/utils/schemaNormalize.d.ts.map +1 -0
- package/dist/utils/schemaNormalize.js +17 -0
- package/dist/utils/schemaNormalize.js.map +1 -0
- package/dist/utils/store.d.ts +7 -0
- package/dist/utils/store.d.ts.map +1 -0
- package/dist/utils/store.js +6 -0
- package/dist/utils/store.js.map +1 -0
- package/dist/utils/timeOptions.d.ts +6 -0
- package/dist/utils/timeOptions.d.ts.map +1 -0
- package/dist/utils/timeOptions.js +42 -0
- package/dist/utils/timeOptions.js.map +1 -0
- package/dist/utils/tiptap.d.ts +13 -0
- package/dist/utils/tiptap.d.ts.map +1 -0
- package/dist/utils/tiptap.js +39 -0
- package/dist/utils/tiptap.js.map +1 -0
- package/dist/utils/translation.d.ts +5 -0
- package/dist/utils/translation.d.ts.map +1 -0
- package/dist/utils/translation.js +21 -0
- package/dist/utils/translation.js.map +1 -0
- package/dist/utils/validation.d.ts +4 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +253 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +167 -0
- package/vite-dev.mjs +56 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export * from './Button';
|
|
2
|
+
export * from './ButtonGroup';
|
|
3
|
+
export * from './Calendar';
|
|
4
|
+
export * from './Checkbox';
|
|
5
|
+
export * from './CheckboxInput';
|
|
6
|
+
export * from './CheckboxSelect';
|
|
7
|
+
export * from './Combobox';
|
|
8
|
+
export * from './ComboboxInput';
|
|
9
|
+
export * from './Command';
|
|
10
|
+
export * from './ColorInput';
|
|
11
|
+
export * from './CopyButton';
|
|
12
|
+
export * from './DatePicker';
|
|
13
|
+
export * from './Dialog';
|
|
14
|
+
export * from './DropdownMenu';
|
|
15
|
+
export * from './EditableTable';
|
|
16
|
+
export * from './FadeIn';
|
|
17
|
+
export * from './Input';
|
|
18
|
+
export * from './InputGroup';
|
|
19
|
+
export * from './Label';
|
|
20
|
+
export * from './Markdown';
|
|
21
|
+
export * from './Lightswitch';
|
|
22
|
+
export * from './Spinner';
|
|
23
|
+
export * from './MenuButton';
|
|
24
|
+
export * from './ModalTabs';
|
|
25
|
+
export * from './PaneTabs';
|
|
26
|
+
export * from './Popover';
|
|
27
|
+
export * from './RadioGroup';
|
|
28
|
+
export * from './ScrollArea';
|
|
29
|
+
export * from './Select';
|
|
30
|
+
export * from './SelectInput';
|
|
31
|
+
export * from './Separator';
|
|
32
|
+
export * from './SlideUp';
|
|
33
|
+
export * from './Status';
|
|
34
|
+
export * from './Table';
|
|
35
|
+
export * from './Tabs';
|
|
36
|
+
export * from './Textarea';
|
|
37
|
+
export * from './TimePicker';
|
|
38
|
+
export * from './TiptapEditor';
|
|
39
|
+
export * from './TiptapContent';
|
|
40
|
+
export * from './TiptapInput';
|
|
41
|
+
export * from './Toggle';
|
|
42
|
+
export * from './ToggleGroup';
|
|
43
|
+
export * from './Tooltip';
|
|
44
|
+
export * from './VirtualizedScrollArea';
|
|
45
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Separator } from "./Separator.js";
|
|
2
|
+
import { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants } from "./ButtonGroup.js";
|
|
3
|
+
import { Calendar, CalendarDayButton } from "./Calendar.js";
|
|
4
|
+
import { Checkbox } from "./Checkbox.js";
|
|
5
|
+
import { CheckboxInput } from "./CheckboxInput.js";
|
|
6
|
+
import { ALL_VALUE, CheckboxSelect } from "./CheckboxSelect.js";
|
|
7
|
+
import { Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxHighlightedText, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxPrimitiveInput, ComboboxSeparator, ComboboxTrigger, ComboboxValue, useComboboxAnchor } from "./Combobox.js";
|
|
8
|
+
import { ComboboxInput } from "./ComboboxInput.js";
|
|
9
|
+
import { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, useCommandState } from "./Command.js";
|
|
10
|
+
import { ColorInput } from "./ColorInput.js";
|
|
11
|
+
import { CopyButton, copyToClipboardWithMeta } from "./CopyButton.js";
|
|
12
|
+
import { DatePicker } from "./DatePicker.js";
|
|
13
|
+
import { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger } from "./Dialog.js";
|
|
14
|
+
import { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from "./DropdownMenu.js";
|
|
15
|
+
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "./Tooltip.js";
|
|
16
|
+
import { EditableTable } from "./EditableTable.js";
|
|
17
|
+
import { FadeIn } from "./FadeIn.js";
|
|
18
|
+
import { Input } from "./Input.js";
|
|
19
|
+
import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea } from "./InputGroup.js";
|
|
20
|
+
import { Label } from "./Label.js";
|
|
21
|
+
import { Markdown } from "./Markdown.js";
|
|
22
|
+
import { Lightswitch } from "./Lightswitch.js";
|
|
23
|
+
import { Spinner } from "./Spinner.js";
|
|
24
|
+
import { MenuButton } from "./MenuButton.js";
|
|
25
|
+
import { ModalTabs, ModalTabsContent, ModalTabsList, ModalTabsTrigger } from "./ModalTabs.js";
|
|
26
|
+
import { PaneTabs, PaneTabsContent, PaneTabsList, PaneTabsTrigger } from "./PaneTabs.js";
|
|
27
|
+
import { Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger } from "./Popover.js";
|
|
28
|
+
import { RadioGroup, RadioGroupItem } from "./RadioGroup.js";
|
|
29
|
+
import { ScrollArea } from "./ScrollArea.js";
|
|
30
|
+
import { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue } from "./Select.js";
|
|
31
|
+
import { Status } from "./Status.js";
|
|
32
|
+
import { SelectInput } from "./SelectInput.js";
|
|
33
|
+
import { SlideUp } from "./SlideUp.js";
|
|
34
|
+
import { Table, TableBody, TableCell, TableFooter, TableHead, TableHeader, TableRow } from "./Table.js";
|
|
35
|
+
import { Tabs, TabsContent, TabsList, TabsTrigger } from "./Tabs.js";
|
|
36
|
+
import { Textarea } from "./Textarea.js";
|
|
37
|
+
import { TimePicker } from "./TimePicker.js";
|
|
38
|
+
import { TiptapEditor } from "./TiptapEditor.js";
|
|
39
|
+
import { TiptapContent } from "./TiptapContent.js";
|
|
40
|
+
import { TiptapInput } from "./TiptapInput.js";
|
|
41
|
+
import { Toggle, toggleVariants } from "./Toggle.js";
|
|
42
|
+
import { ToggleGroup, ToggleGroupItem } from "./ToggleGroup.js";
|
|
43
|
+
import { VirtualizedScrollArea } from "./VirtualizedScrollArea.js";
|
|
44
|
+
import { Button, buttonVariants } from "./Button.js";
|
|
45
|
+
export { ALL_VALUE, Button, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, Calendar, CalendarDayButton, Checkbox, CheckboxInput, CheckboxSelect, ColorInput, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxHighlightedText, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxPrimitiveInput, ComboboxSeparator, ComboboxTrigger, ComboboxValue, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, CopyButton, DatePicker, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EditableTable, FadeIn, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, Label, Lightswitch, Markdown, MenuButton, ModalTabs, ModalTabsContent, ModalTabsList, ModalTabsTrigger, PaneTabs, PaneTabsContent, PaneTabsList, PaneTabsTrigger, Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, RadioGroup, RadioGroupItem, ScrollArea, Select, SelectContent, SelectGroup, SelectInput, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, SlideUp, Spinner, Status, Table, TableBody, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, TimePicker, TiptapContent, TiptapEditor, TiptapInput, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, VirtualizedScrollArea, buttonGroupVariants, buttonVariants, copyToClipboardWithMeta, toggleVariants, useComboboxAnchor, useCommandState };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { VariableOption } from './VariableDropdown';
|
|
2
|
+
import { VariableGroup } from './VariableCommandList';
|
|
3
|
+
export type FilteredVariables = {
|
|
4
|
+
groups: VariableGroup[];
|
|
5
|
+
options: VariableOption[];
|
|
6
|
+
isChildMode: boolean;
|
|
7
|
+
};
|
|
8
|
+
type InlineVariablePickerPopoverProps = {
|
|
9
|
+
open: boolean;
|
|
10
|
+
onOpenChange: (open: boolean) => void;
|
|
11
|
+
position: {
|
|
12
|
+
top: number;
|
|
13
|
+
left: number;
|
|
14
|
+
};
|
|
15
|
+
isChildMode: boolean;
|
|
16
|
+
query: string;
|
|
17
|
+
onQueryChange: (query: string) => void;
|
|
18
|
+
filteredVariables: FilteredVariables;
|
|
19
|
+
onSelect: (item: VariableOption, baseVariable?: VariableOption) => void;
|
|
20
|
+
onBack: () => void;
|
|
21
|
+
};
|
|
22
|
+
export declare function InlineVariablePickerPopover({ open, onOpenChange, position, isChildMode, query, onQueryChange, filteredVariables, onSelect, onBack, }: InlineVariablePickerPopoverProps): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=InlineVariablePickerPopover.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InlineVariablePickerPopover.d.ts","sourceRoot":"","sources":["../../../src/components/tiptap/InlineVariablePickerPopover.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,MAAM,MAAM,iBAAiB,GAAG;IAC5B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,KAAK,gCAAgC,GAAG;IACpC,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,QAAQ,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IACxE,MAAM,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,EACxC,IAAI,EACJ,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,KAAK,EACL,aAAa,EACb,iBAAiB,EACjB,QAAQ,EACR,MAAM,GACT,EAAE,gCAAgC,2CA8DlC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { cn } from "../../utils/classes.js";
|
|
2
|
+
import "../../utils/index.js";
|
|
3
|
+
import { useTranslation } from "../../hooks/useTranslation.js";
|
|
4
|
+
import "../../hooks/index.js";
|
|
5
|
+
import { VariableCommandList } from "./VariableCommandList.js";
|
|
6
|
+
import { Popover, PopoverContent, PopoverTrigger } from "../Popover.js";
|
|
7
|
+
import "../index.js";
|
|
8
|
+
import "react";
|
|
9
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
10
|
+
//#region src/components/tiptap/InlineVariablePickerPopover.tsx
|
|
11
|
+
function InlineVariablePickerPopover({ open, onOpenChange, position, isChildMode, query, onQueryChange, filteredVariables, onSelect, onBack }) {
|
|
12
|
+
const t = useTranslation();
|
|
13
|
+
const groups = filteredVariables.isChildMode || !filteredVariables.groups?.length ? null : filteredVariables.groups;
|
|
14
|
+
const { options } = filteredVariables;
|
|
15
|
+
return /* @__PURE__ */ jsxs(Popover, {
|
|
16
|
+
modal: false,
|
|
17
|
+
open: open && options.length > 0,
|
|
18
|
+
onOpenChange: (nextOpen) => {
|
|
19
|
+
if (!nextOpen) onOpenChange(false);
|
|
20
|
+
},
|
|
21
|
+
children: [/* @__PURE__ */ jsx(PopoverTrigger, {
|
|
22
|
+
nativeButton: false,
|
|
23
|
+
render: /* @__PURE__ */ jsx("span", {
|
|
24
|
+
"aria-hidden": "true",
|
|
25
|
+
className: "absolute size-px opacity-0 pointer-events-none",
|
|
26
|
+
style: {
|
|
27
|
+
top: position.top,
|
|
28
|
+
left: position.left
|
|
29
|
+
}
|
|
30
|
+
})
|
|
31
|
+
}), /* @__PURE__ */ jsx(PopoverContent, {
|
|
32
|
+
align: "start",
|
|
33
|
+
side: "bottom",
|
|
34
|
+
sideOffset: 4,
|
|
35
|
+
positionMethod: "fixed",
|
|
36
|
+
collisionAvoidance: {
|
|
37
|
+
side: "flip",
|
|
38
|
+
align: "shift",
|
|
39
|
+
fallbackAxisSide: "none"
|
|
40
|
+
},
|
|
41
|
+
portalClassName: "z-250",
|
|
42
|
+
className: cn("p-0 overflow-hidden flex flex-col", isChildMode ? "w-[260px] max-h-[280px]" : "min-w-[260px] max-w-[360px] max-h-[300px]"),
|
|
43
|
+
children: /* @__PURE__ */ jsx(VariableCommandList, {
|
|
44
|
+
search: query,
|
|
45
|
+
onSearchChange: onQueryChange,
|
|
46
|
+
groups,
|
|
47
|
+
options,
|
|
48
|
+
onSelect,
|
|
49
|
+
showSearch: true,
|
|
50
|
+
placeholder: t("Search variables"),
|
|
51
|
+
shouldFilter: false,
|
|
52
|
+
onBack: isChildMode ? onBack : void 0,
|
|
53
|
+
isChildMode,
|
|
54
|
+
selectFirstItem: true,
|
|
55
|
+
autoFocusSearchInput: false
|
|
56
|
+
})
|
|
57
|
+
})]
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
//#endregion
|
|
61
|
+
export { InlineVariablePickerPopover };
|
|
62
|
+
|
|
63
|
+
//# sourceMappingURL=InlineVariablePickerPopover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InlineVariablePickerPopover.js","names":[],"sources":["../../../src/components/tiptap/InlineVariablePickerPopover.tsx"],"sourcesContent":["import React from 'react';\nimport { Popover, PopoverContent, PopoverTrigger } from '@verbb/plugin-kit-react/components';\nimport { useTranslation } from '@verbb/plugin-kit-react/hooks';\nimport { cn } from '@verbb/plugin-kit-react/utils';\nimport type { VariableOption } from './VariableDropdown';\nimport { VariableCommandList } from './VariableCommandList';\nimport type { VariableGroup } from './VariableCommandList';\n\nexport type FilteredVariables = {\n groups: VariableGroup[];\n options: VariableOption[];\n isChildMode: boolean;\n};\n\ntype InlineVariablePickerPopoverProps = {\n open: boolean;\n onOpenChange: (open: boolean) => void;\n position: { top: number; left: number };\n isChildMode: boolean;\n query: string;\n onQueryChange: (query: string) => void;\n filteredVariables: FilteredVariables;\n onSelect: (item: VariableOption, baseVariable?: VariableOption) => void;\n onBack: () => void;\n};\n\nexport function InlineVariablePickerPopover({\n open,\n onOpenChange,\n position,\n isChildMode,\n query,\n onQueryChange,\n filteredVariables,\n onSelect,\n onBack,\n}: InlineVariablePickerPopoverProps) {\n const t = useTranslation();\n const groups = filteredVariables.isChildMode || !filteredVariables.groups?.length\n ? null\n : filteredVariables.groups;\n const { options } = filteredVariables;\n\n return (\n <Popover\n modal={false}\n open={open && options.length > 0}\n onOpenChange={(nextOpen) => {\n if (!nextOpen) {\n onOpenChange(false);\n }\n }}\n >\n <PopoverTrigger\n nativeButton={false}\n render={\n <span\n aria-hidden=\"true\"\n className=\"absolute size-px opacity-0 pointer-events-none\"\n style={{ top: position.top, left: position.left }}\n />\n }\n />\n <PopoverContent\n align=\"start\"\n side=\"bottom\"\n sideOffset={4}\n positionMethod=\"fixed\"\n collisionAvoidance={{\n side: 'flip',\n align: 'shift',\n fallbackAxisSide: 'none',\n }}\n portalClassName=\"z-250\"\n className={cn(\n 'p-0 overflow-hidden flex flex-col',\n isChildMode\n ? 'w-[260px] max-h-[280px]'\n : 'min-w-[260px] max-w-[360px] max-h-[300px]',\n )}\n >\n <VariableCommandList\n search={query}\n onSearchChange={onQueryChange}\n groups={groups}\n options={options}\n onSelect={onSelect}\n showSearch\n placeholder={t('Search variables')}\n shouldFilter={false}\n onBack={isChildMode ? onBack : undefined}\n isChildMode={isChildMode}\n selectFirstItem\n autoFocusSearchInput={false}\n />\n </PopoverContent>\n </Popover>\n );\n}\n"],"mappings":";;;;;;;;;;AA0BA,SAAgB,4BAA4B,EACxC,MACA,cACA,UACA,aACA,OACA,eACA,mBACA,UACA,UACiC;CACjC,MAAM,IAAI,gBAAgB;CAC1B,MAAM,SAAS,kBAAkB,eAAe,CAAC,kBAAkB,QAAQ,SACrE,OACA,kBAAkB;CACxB,MAAM,EAAE,YAAY;AAEpB,QACI,qBAAC,SAAD;EACI,OAAO;EACP,MAAM,QAAQ,QAAQ,SAAS;EAC/B,eAAe,aAAa;AACxB,OAAI,CAAC,SACD,cAAa,MAAM;;YAL/B,CASI,oBAAC,gBAAD;GACI,cAAc;GACd,QACI,oBAAC,QAAD;IACI,eAAY;IACZ,WAAU;IACV,OAAO;KAAE,KAAK,SAAS;KAAK,MAAM,SAAS;KAAM;IACnD,CAAA;GAER,CAAA,EACF,oBAAC,gBAAD;GACI,OAAM;GACN,MAAK;GACL,YAAY;GACZ,gBAAe;GACf,oBAAoB;IAChB,MAAM;IACN,OAAO;IACP,kBAAkB;IACrB;GACD,iBAAgB;GAChB,WAAW,GACP,qCACA,cACM,4BACA,4CACT;aAED,oBAAC,qBAAD;IACI,QAAQ;IACR,gBAAgB;IACR;IACC;IACC;IACV,YAAA;IACA,aAAa,EAAE,mBAAmB;IAClC,cAAc;IACd,QAAQ,cAAc,SAAS,KAAA;IAClB;IACb,iBAAA;IACA,sBAAsB;IACxB,CAAA;GACW,CAAA,CACX"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export type InsertLinkDialogState = {
|
|
2
|
+
url: string;
|
|
3
|
+
text: string;
|
|
4
|
+
openInNewTab: boolean;
|
|
5
|
+
};
|
|
6
|
+
type InsertLinkDialogProps = {
|
|
7
|
+
open: boolean;
|
|
8
|
+
onOpenChange: (open: boolean) => void;
|
|
9
|
+
initialValues?: Partial<InsertLinkDialogState>;
|
|
10
|
+
onInsert: (values: InsertLinkDialogState) => void;
|
|
11
|
+
};
|
|
12
|
+
export declare function InsertLinkDialog({ open, onOpenChange, initialValues, onInsert, }: InsertLinkDialogProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=InsertLinkDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InsertLinkDialog.d.ts","sourceRoot":"","sources":["../../../src/components/tiptap/InsertLinkDialog.tsx"],"names":[],"mappings":"AAiBA,MAAM,MAAM,qBAAqB,GAAG;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,KAAK,qBAAqB,GAAG;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,aAAa,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC/C,QAAQ,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAC;CACrD,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,EAC7B,IAAI,EACJ,YAAY,EACZ,aAAkB,EAClB,QAAQ,GACX,EAAE,qBAAqB,2CA6GvB"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { cn } from "../../utils/classes.js";
|
|
2
|
+
import "../../utils/index.js";
|
|
3
|
+
import { Checkbox } from "../Checkbox.js";
|
|
4
|
+
import { useTranslation } from "../../hooks/useTranslation.js";
|
|
5
|
+
import "../../hooks/index.js";
|
|
6
|
+
import { Dialog, DialogContent, DialogFooter, DialogHeader, DialogTitle } from "../Dialog.js";
|
|
7
|
+
import { Input } from "../Input.js";
|
|
8
|
+
import { Label } from "../Label.js";
|
|
9
|
+
import { Button } from "../Button.js";
|
|
10
|
+
import { useEffect, useState } from "react";
|
|
11
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
12
|
+
//#region src/components/tiptap/InsertLinkDialog.tsx
|
|
13
|
+
function InsertLinkDialog({ open, onOpenChange, initialValues = {}, onInsert }) {
|
|
14
|
+
const t = useTranslation();
|
|
15
|
+
const [url, setUrl] = useState(initialValues.url ?? "");
|
|
16
|
+
const [text, setText] = useState(initialValues.text ?? "");
|
|
17
|
+
const [openInNewTab, setOpenInNewTab] = useState(initialValues.openInNewTab ?? false);
|
|
18
|
+
useEffect(() => {
|
|
19
|
+
if (open) {
|
|
20
|
+
setUrl(initialValues.url ?? "");
|
|
21
|
+
setText(initialValues.text ?? "");
|
|
22
|
+
setOpenInNewTab(initialValues.openInNewTab ?? false);
|
|
23
|
+
}
|
|
24
|
+
}, [
|
|
25
|
+
open,
|
|
26
|
+
initialValues.url,
|
|
27
|
+
initialValues.text,
|
|
28
|
+
initialValues.openInNewTab
|
|
29
|
+
]);
|
|
30
|
+
const handleInsert = () => {
|
|
31
|
+
const trimmedUrl = url.trim();
|
|
32
|
+
if (!trimmedUrl) return;
|
|
33
|
+
onInsert({
|
|
34
|
+
url: trimmedUrl,
|
|
35
|
+
text: text.trim(),
|
|
36
|
+
openInNewTab
|
|
37
|
+
});
|
|
38
|
+
onOpenChange(false);
|
|
39
|
+
};
|
|
40
|
+
const handleCancel = () => {
|
|
41
|
+
onOpenChange(false);
|
|
42
|
+
};
|
|
43
|
+
const handleDialogKeyDownCapture = (event) => {
|
|
44
|
+
if (event.key !== "Enter") return;
|
|
45
|
+
const target = event.target;
|
|
46
|
+
if (!(target instanceof HTMLInputElement)) return;
|
|
47
|
+
if ([
|
|
48
|
+
"checkbox",
|
|
49
|
+
"radio",
|
|
50
|
+
"button",
|
|
51
|
+
"submit"
|
|
52
|
+
].includes(target.type)) return;
|
|
53
|
+
event.preventDefault();
|
|
54
|
+
event.stopPropagation();
|
|
55
|
+
handleInsert();
|
|
56
|
+
};
|
|
57
|
+
const isEditing = !!initialValues?.url?.trim();
|
|
58
|
+
return /* @__PURE__ */ jsx(Dialog, {
|
|
59
|
+
open,
|
|
60
|
+
onOpenChange,
|
|
61
|
+
children: /* @__PURE__ */ jsxs(DialogContent, {
|
|
62
|
+
showCloseButton: true,
|
|
63
|
+
onKeyDownCapture: handleDialogKeyDownCapture,
|
|
64
|
+
className: cn("w-[90vw] h-[90vh]", "max-w-[650px]", "max-h-[450px]"),
|
|
65
|
+
portalClassName: "plugin-kit-react-tiptap-dialog",
|
|
66
|
+
children: [
|
|
67
|
+
/* @__PURE__ */ jsx(DialogHeader, { children: /* @__PURE__ */ jsx(DialogTitle, { children: isEditing ? t("Update Link") : t("Insert Link") }) }),
|
|
68
|
+
/* @__PURE__ */ jsx("div", {
|
|
69
|
+
className: "h-full overflow-y-auto",
|
|
70
|
+
children: /* @__PURE__ */ jsxs("div", {
|
|
71
|
+
className: "flex flex-col gap-4 p-4",
|
|
72
|
+
children: [
|
|
73
|
+
/* @__PURE__ */ jsxs("div", {
|
|
74
|
+
className: "flex flex-col gap-1.5",
|
|
75
|
+
children: [/* @__PURE__ */ jsxs(Label, {
|
|
76
|
+
htmlFor: "link-url",
|
|
77
|
+
children: [
|
|
78
|
+
t("URL"),
|
|
79
|
+
" ",
|
|
80
|
+
/* @__PURE__ */ jsx("span", {
|
|
81
|
+
className: "text-red-600",
|
|
82
|
+
children: "*"
|
|
83
|
+
})
|
|
84
|
+
]
|
|
85
|
+
}), /* @__PURE__ */ jsx(Input, {
|
|
86
|
+
id: "link-url",
|
|
87
|
+
value: url,
|
|
88
|
+
onChange: (e) => {
|
|
89
|
+
return setUrl(e.target.value);
|
|
90
|
+
},
|
|
91
|
+
placeholder: "https://",
|
|
92
|
+
"aria-required": true
|
|
93
|
+
})]
|
|
94
|
+
}),
|
|
95
|
+
/* @__PURE__ */ jsxs("div", {
|
|
96
|
+
className: "flex flex-col gap-1.5",
|
|
97
|
+
children: [/* @__PURE__ */ jsx(Label, {
|
|
98
|
+
htmlFor: "link-text",
|
|
99
|
+
children: t("Text")
|
|
100
|
+
}), /* @__PURE__ */ jsx(Input, {
|
|
101
|
+
id: "link-text",
|
|
102
|
+
value: text,
|
|
103
|
+
onChange: (e) => {
|
|
104
|
+
return setText(e.target.value);
|
|
105
|
+
},
|
|
106
|
+
placeholder: t("Link text")
|
|
107
|
+
})]
|
|
108
|
+
}),
|
|
109
|
+
/* @__PURE__ */ jsxs("label", {
|
|
110
|
+
className: "flex items-center gap-2 cursor-pointer",
|
|
111
|
+
children: [/* @__PURE__ */ jsx(Checkbox, {
|
|
112
|
+
checked: openInNewTab,
|
|
113
|
+
onCheckedChange: (checked) => {
|
|
114
|
+
return setOpenInNewTab(!!checked);
|
|
115
|
+
}
|
|
116
|
+
}), /* @__PURE__ */ jsx("span", {
|
|
117
|
+
className: "text-sm",
|
|
118
|
+
children: t("Open link in new tab")
|
|
119
|
+
})]
|
|
120
|
+
})
|
|
121
|
+
]
|
|
122
|
+
})
|
|
123
|
+
}),
|
|
124
|
+
/* @__PURE__ */ jsxs(DialogFooter, {
|
|
125
|
+
className: "flex flex-row gap-2",
|
|
126
|
+
children: [/* @__PURE__ */ jsx(Button, {
|
|
127
|
+
type: "button",
|
|
128
|
+
onClick: handleCancel,
|
|
129
|
+
children: t("Cancel")
|
|
130
|
+
}), /* @__PURE__ */ jsx(Button, {
|
|
131
|
+
type: "button",
|
|
132
|
+
variant: "primary",
|
|
133
|
+
onClick: handleInsert,
|
|
134
|
+
disabled: !url.trim(),
|
|
135
|
+
children: isEditing ? t("Update") : t("Insert")
|
|
136
|
+
})]
|
|
137
|
+
})
|
|
138
|
+
]
|
|
139
|
+
})
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
//#endregion
|
|
143
|
+
export { InsertLinkDialog };
|
|
144
|
+
|
|
145
|
+
//# sourceMappingURL=InsertLinkDialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InsertLinkDialog.js","names":[],"sources":["../../../src/components/tiptap/InsertLinkDialog.tsx"],"sourcesContent":["import { useState, useEffect } from 'react';\nimport type { KeyboardEvent } from 'react';\n\nimport {\n Dialog,\n DialogContent,\n DialogHeader,\n DialogTitle,\n DialogFooter,\n} from '@verbb/plugin-kit-react/components/Dialog';\nimport { Button } from '@verbb/plugin-kit-react/components/Button';\nimport { Input } from '@verbb/plugin-kit-react/components/Input';\nimport { Label } from '@verbb/plugin-kit-react/components/Label';\nimport { Checkbox } from '@verbb/plugin-kit-react/components/Checkbox';\nimport { useTranslation } from '@verbb/plugin-kit-react/hooks';\nimport { cn } from '@verbb/plugin-kit-react/utils';\n\nexport type InsertLinkDialogState = {\n url: string;\n text: string;\n openInNewTab: boolean;\n};\n\ntype InsertLinkDialogProps = {\n open: boolean;\n onOpenChange: (open: boolean) => void;\n initialValues?: Partial<InsertLinkDialogState>;\n onInsert: (values: InsertLinkDialogState) => void;\n};\n\nexport function InsertLinkDialog({\n open,\n onOpenChange,\n initialValues = {},\n onInsert,\n}: InsertLinkDialogProps) {\n const t = useTranslation();\n const [url, setUrl] = useState(initialValues.url ?? '');\n const [text, setText] = useState(initialValues.text ?? '');\n const [openInNewTab, setOpenInNewTab] = useState(initialValues.openInNewTab ?? false);\n\n useEffect(() => {\n if (open) {\n setUrl(initialValues.url ?? '');\n setText(initialValues.text ?? '');\n setOpenInNewTab(initialValues.openInNewTab ?? false);\n }\n }, [open, initialValues.url, initialValues.text, initialValues.openInNewTab]);\n\n const handleInsert = () => {\n const trimmedUrl = url.trim();\n if (!trimmedUrl) {\n return;\n }\n onInsert({ url: trimmedUrl, text: text.trim(), openInNewTab });\n onOpenChange(false);\n };\n\n const handleCancel = () => {\n onOpenChange(false);\n };\n\n const handleDialogKeyDownCapture = (event: KeyboardEvent<HTMLElement>) => {\n if (event.key !== 'Enter') {\n return;\n }\n\n const target = event.target as HTMLElement | null;\n if (!(target instanceof HTMLInputElement)) {\n return;\n }\n\n // Only hijack Enter for text-like inputs in this dialog.\n if (['checkbox', 'radio', 'button', 'submit'].includes(target.type)) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n handleInsert();\n };\n\n const isEditing = !!(initialValues?.url?.trim());\n\n return (\n <Dialog open={open} onOpenChange={onOpenChange}>\n <DialogContent\n showCloseButton\n onKeyDownCapture={handleDialogKeyDownCapture}\n className={cn(\n 'w-[90vw] h-[90vh]',\n 'max-w-[650px]',\n 'max-h-[450px]',\n )}\n portalClassName=\"plugin-kit-react-tiptap-dialog\"\n >\n <DialogHeader>\n <DialogTitle>{isEditing ? t('Update Link') : t('Insert Link')}</DialogTitle>\n </DialogHeader>\n\n <div className=\"h-full overflow-y-auto\">\n <div className=\"flex flex-col gap-4 p-4\">\n <div className=\"flex flex-col gap-1.5\">\n <Label htmlFor=\"link-url\">\n {t('URL')} <span className=\"text-red-600\">*</span>\n </Label>\n <Input\n id=\"link-url\"\n value={url}\n onChange={(e) => { return setUrl(e.target.value); }}\n placeholder=\"https://\"\n aria-required\n />\n </div>\n <div className=\"flex flex-col gap-1.5\">\n <Label htmlFor=\"link-text\">{t('Text')}</Label>\n <Input\n id=\"link-text\"\n value={text}\n onChange={(e) => { return setText(e.target.value); }}\n placeholder={t('Link text')}\n />\n </div>\n <label className=\"flex items-center gap-2 cursor-pointer\">\n <Checkbox\n checked={openInNewTab}\n onCheckedChange={(checked) => { return setOpenInNewTab(!!checked); }}\n />\n <span className=\"text-sm\">{t('Open link in new tab')}</span>\n </label>\n </div>\n </div>\n\n <DialogFooter className=\"flex flex-row gap-2\">\n <Button type=\"button\" onClick={handleCancel}>\n {t('Cancel')}\n </Button>\n <Button type=\"button\" variant=\"primary\" onClick={handleInsert} disabled={!url.trim()}>\n {isEditing ? t('Update') : t('Insert')}\n </Button>\n </DialogFooter>\n </DialogContent>\n </Dialog>\n );\n}\n"],"mappings":";;;;;;;;;;;;AA8BA,SAAgB,iBAAiB,EAC7B,MACA,cACA,gBAAgB,EAAE,EAClB,YACsB;CACtB,MAAM,IAAI,gBAAgB;CAC1B,MAAM,CAAC,KAAK,UAAU,SAAS,cAAc,OAAO,GAAG;CACvD,MAAM,CAAC,MAAM,WAAW,SAAS,cAAc,QAAQ,GAAG;CAC1D,MAAM,CAAC,cAAc,mBAAmB,SAAS,cAAc,gBAAgB,MAAM;AAErF,iBAAgB;AACZ,MAAI,MAAM;AACN,UAAO,cAAc,OAAO,GAAG;AAC/B,WAAQ,cAAc,QAAQ,GAAG;AACjC,mBAAgB,cAAc,gBAAgB,MAAM;;IAEzD;EAAC;EAAM,cAAc;EAAK,cAAc;EAAM,cAAc;EAAa,CAAC;CAE7E,MAAM,qBAAqB;EACvB,MAAM,aAAa,IAAI,MAAM;AAC7B,MAAI,CAAC,WACD;AAEJ,WAAS;GAAE,KAAK;GAAY,MAAM,KAAK,MAAM;GAAE;GAAc,CAAC;AAC9D,eAAa,MAAM;;CAGvB,MAAM,qBAAqB;AACvB,eAAa,MAAM;;CAGvB,MAAM,8BAA8B,UAAsC;AACtE,MAAI,MAAM,QAAQ,QACd;EAGJ,MAAM,SAAS,MAAM;AACrB,MAAI,EAAE,kBAAkB,kBACpB;AAIJ,MAAI;GAAC;GAAY;GAAS;GAAU;GAAS,CAAC,SAAS,OAAO,KAAK,CAC/D;AAGJ,QAAM,gBAAgB;AACtB,QAAM,iBAAiB;AACvB,gBAAc;;CAGlB,MAAM,YAAY,CAAC,CAAE,eAAe,KAAK,MAAM;AAE/C,QACI,oBAAC,QAAD;EAAc;EAAoB;YAC9B,qBAAC,eAAD;GACI,iBAAA;GACA,kBAAkB;GAClB,WAAW,GACP,qBACA,iBACA,gBACH;GACD,iBAAgB;aARpB;IAUI,oBAAC,cAAD,EAAA,UACI,oBAAC,aAAD,EAAA,UAAc,YAAY,EAAE,cAAc,GAAG,EAAE,cAAc,EAAe,CAAA,EACjE,CAAA;IAEf,oBAAC,OAAD;KAAK,WAAU;eACX,qBAAC,OAAD;MAAK,WAAU;gBAAf;OACI,qBAAC,OAAD;QAAK,WAAU;kBAAf,CACI,qBAAC,OAAD;SAAO,SAAQ;mBAAf;UACK,EAAE,MAAM;UAAC;UAAC,oBAAC,QAAD;WAAM,WAAU;qBAAe;WAAQ,CAAA;UAC9C;YACR,oBAAC,OAAD;SACI,IAAG;SACH,OAAO;SACP,WAAW,MAAM;AAAE,iBAAO,OAAO,EAAE,OAAO,MAAM;;SAChD,aAAY;SACZ,iBAAA;SACF,CAAA,CACA;;OACN,qBAAC,OAAD;QAAK,WAAU;kBAAf,CACI,oBAAC,OAAD;SAAO,SAAQ;mBAAa,EAAE,OAAO;SAAS,CAAA,EAC9C,oBAAC,OAAD;SACI,IAAG;SACH,OAAO;SACP,WAAW,MAAM;AAAE,iBAAO,QAAQ,EAAE,OAAO,MAAM;;SACjD,aAAa,EAAE,YAAY;SAC7B,CAAA,CACA;;OACN,qBAAC,SAAD;QAAO,WAAU;kBAAjB,CACI,oBAAC,UAAD;SACI,SAAS;SACT,kBAAkB,YAAY;AAAE,iBAAO,gBAAgB,CAAC,CAAC,QAAQ;;SACnE,CAAA,EACF,oBAAC,QAAD;SAAM,WAAU;mBAAW,EAAE,uBAAuB;SAAQ,CAAA,CACxD;;OACN;;KACJ,CAAA;IAEN,qBAAC,cAAD;KAAc,WAAU;eAAxB,CACI,oBAAC,QAAD;MAAQ,MAAK;MAAS,SAAS;gBAC1B,EAAE,SAAS;MACP,CAAA,EACT,oBAAC,QAAD;MAAQ,MAAK;MAAS,SAAQ;MAAU,SAAS;MAAc,UAAU,CAAC,IAAI,MAAM;gBAC/E,YAAY,EAAE,SAAS,GAAG,EAAE,SAAS;MACjC,CAAA,CACE;;IACH;;EACX,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Editor } from '@tiptap/core';
|
|
2
|
+
type LinkBubbleMenuProps = {
|
|
3
|
+
editor: Editor | null | undefined;
|
|
4
|
+
onEdit: () => void;
|
|
5
|
+
/** When true, hide the bubble (e.g. when Insert Link dialog is open) so it doesn't stack above the dialog */
|
|
6
|
+
dialogOpen?: boolean;
|
|
7
|
+
};
|
|
8
|
+
export declare function LinkBubbleMenu({ editor, onEdit, dialogOpen }: LinkBubbleMenuProps): import("react/jsx-runtime").JSX.Element | null;
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=LinkBubbleMenu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinkBubbleMenu.d.ts","sourceRoot":"","sources":["../../../src/components/tiptap/LinkBubbleMenu.tsx"],"names":[],"mappings":"AAGA,OAAO,EAA8B,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAMvE,KAAK,mBAAmB,GAAG;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,6GAA6G;IAC7G,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,wBAAgB,cAAc,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,UAAkB,EAAE,EAAE,mBAAmB,kDAmHzF"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { cn } from "../../utils/classes.js";
|
|
2
|
+
import { getPortalTargetForAppend } from "../../utils/portal.js";
|
|
3
|
+
import "../../utils/index.js";
|
|
4
|
+
import { useTranslation } from "../../hooks/useTranslation.js";
|
|
5
|
+
import "../../hooks/index.js";
|
|
6
|
+
import { Button } from "../Button.js";
|
|
7
|
+
import { useCallback, useEffect, useState } from "react";
|
|
8
|
+
import { getMarkRange, posToDOMRect } from "@tiptap/core";
|
|
9
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
10
|
+
import { useEditorState } from "@tiptap/react";
|
|
11
|
+
import { BubbleMenu } from "@tiptap/react/menus";
|
|
12
|
+
//#region src/components/tiptap/LinkBubbleMenu.tsx
|
|
13
|
+
function LinkBubbleMenu({ editor, onEdit, dialogOpen = false }) {
|
|
14
|
+
const t = useTranslation();
|
|
15
|
+
const pluginKey = "linkBubbleMenu";
|
|
16
|
+
const [dismissed, setDismissed] = useState(false);
|
|
17
|
+
const href = useEditorState({
|
|
18
|
+
editor,
|
|
19
|
+
selector: ({ editor: ed }) => {
|
|
20
|
+
return ed?.isActive("link") ? ed.getAttributes("link").href : void 0;
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
const getReferencedVirtualElement = useCallback(() => {
|
|
24
|
+
if (!editor?.isActive("link")) return null;
|
|
25
|
+
const { state, view } = editor;
|
|
26
|
+
const linkType = state.schema.marks.link;
|
|
27
|
+
const getRect = () => {
|
|
28
|
+
const range = getMarkRange(editor.state.selection.$from, linkType);
|
|
29
|
+
if (range) return posToDOMRect(view, range.from, range.to);
|
|
30
|
+
const { from } = editor.state.selection;
|
|
31
|
+
return posToDOMRect(view, from, from);
|
|
32
|
+
};
|
|
33
|
+
return {
|
|
34
|
+
getBoundingClientRect: getRect,
|
|
35
|
+
getClientRects: () => {
|
|
36
|
+
return [getRect()];
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
}, [editor]);
|
|
40
|
+
const handleShow = useCallback(() => {
|
|
41
|
+
if (!editor) return;
|
|
42
|
+
requestAnimationFrame(() => {
|
|
43
|
+
editor.view.dispatch(editor.state.tr.setMeta(pluginKey, "updatePosition"));
|
|
44
|
+
});
|
|
45
|
+
}, [editor, pluginKey]);
|
|
46
|
+
useEffect(() => {
|
|
47
|
+
if (!dialogOpen) setDismissed(false);
|
|
48
|
+
}, [dialogOpen]);
|
|
49
|
+
if (!editor) return null;
|
|
50
|
+
const appendTarget = getPortalTargetForAppend();
|
|
51
|
+
return /* @__PURE__ */ jsxs(BubbleMenu, {
|
|
52
|
+
editor,
|
|
53
|
+
pluginKey,
|
|
54
|
+
shouldShow: ({ editor: ed }) => {
|
|
55
|
+
return !dismissed && !dialogOpen && ed.isFocused && ed.isActive("link");
|
|
56
|
+
},
|
|
57
|
+
appendTo: appendTarget ? () => {
|
|
58
|
+
return appendTarget;
|
|
59
|
+
} : void 0,
|
|
60
|
+
getReferencedVirtualElement,
|
|
61
|
+
updateDelay: 0,
|
|
62
|
+
options: {
|
|
63
|
+
placement: "top",
|
|
64
|
+
onShow: handleShow
|
|
65
|
+
},
|
|
66
|
+
className: cn("relative z-[250] flex items-center gap-0 rounded-md overflow-visible", "bg-[#1c2e36] text-white text-[12px]", dismissed && "hidden"),
|
|
67
|
+
children: [
|
|
68
|
+
/* @__PURE__ */ jsx("span", {
|
|
69
|
+
className: "absolute left-1/2 -translate-x-1/2 -bottom-1 size-2 rotate-45 bg-[#1c2e36]",
|
|
70
|
+
"aria-hidden": true
|
|
71
|
+
}),
|
|
72
|
+
/* @__PURE__ */ jsx("span", {
|
|
73
|
+
className: "px-2 py-1.5 max-w-[200px] truncate",
|
|
74
|
+
children: href
|
|
75
|
+
}),
|
|
76
|
+
/* @__PURE__ */ jsx("span", { className: "w-px h-3 bg-[#616d73]" }),
|
|
77
|
+
/* @__PURE__ */ jsx(Button, {
|
|
78
|
+
type: "button",
|
|
79
|
+
variant: "none",
|
|
80
|
+
size: "xs",
|
|
81
|
+
className: "text-white hover:text-white/70 px-2 py-1.5",
|
|
82
|
+
onClick: () => {
|
|
83
|
+
setDismissed(true);
|
|
84
|
+
editor?.commands?.blur?.();
|
|
85
|
+
onEdit();
|
|
86
|
+
},
|
|
87
|
+
children: t("Edit")
|
|
88
|
+
}),
|
|
89
|
+
/* @__PURE__ */ jsx("span", { className: "w-px h-3 bg-[#616d73]" }),
|
|
90
|
+
/* @__PURE__ */ jsx(Button, {
|
|
91
|
+
type: "button",
|
|
92
|
+
variant: "none",
|
|
93
|
+
size: "xs",
|
|
94
|
+
className: "text-white hover:text-white/70 px-2 py-1.5",
|
|
95
|
+
onClick: () => {
|
|
96
|
+
return editor.chain().focus().unsetLink().run();
|
|
97
|
+
},
|
|
98
|
+
children: t("Unlink")
|
|
99
|
+
})
|
|
100
|
+
]
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
//#endregion
|
|
104
|
+
export { LinkBubbleMenu };
|
|
105
|
+
|
|
106
|
+
//# sourceMappingURL=LinkBubbleMenu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinkBubbleMenu.js","names":[],"sources":["../../../src/components/tiptap/LinkBubbleMenu.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react';\nimport { useEditorState } from '@tiptap/react';\nimport { BubbleMenu } from '@tiptap/react/menus';\nimport { getMarkRange, posToDOMRect, type Editor } from '@tiptap/core';\nimport { Button } from '@verbb/plugin-kit-react/components/Button';\nimport { useTranslation } from '@verbb/plugin-kit-react/hooks';\nimport { cn } from '@verbb/plugin-kit-react/utils';\nimport { getPortalTargetForAppend } from '@verbb/plugin-kit-react/utils/portal';\n\ntype LinkBubbleMenuProps = {\n editor: Editor | null | undefined;\n onEdit: () => void;\n /** When true, hide the bubble (e.g. when Insert Link dialog is open) so it doesn't stack above the dialog */\n dialogOpen?: boolean;\n};\n\nexport function LinkBubbleMenu({ editor, onEdit, dialogOpen = false }: LinkBubbleMenuProps) {\n const t = useTranslation();\n const pluginKey = 'linkBubbleMenu';\n const [dismissed, setDismissed] = useState(false);\n\n const href = useEditorState({\n editor,\n selector: ({ editor: ed }) => {\n return ed?.isActive('link') ? ed.getAttributes('link').href : undefined;\n },\n });\n\n const getReferencedVirtualElement = useCallback(() => {\n if (!editor?.isActive('link')) {\n return null;\n }\n const { state, view } = editor;\n const linkType = state.schema.marks.link;\n\n const getRect = () => {\n const range = getMarkRange(editor.state.selection.$from, linkType);\n\n if (range) {\n return posToDOMRect(view, range.from, range.to);\n }\n\n const { from } = editor.state.selection;\n return posToDOMRect(view, from, from);\n };\n\n return {\n getBoundingClientRect: getRect,\n getClientRects: () => {\n return [getRect()];\n },\n };\n }, [editor]);\n\n const handleShow = useCallback(() => {\n if (!editor) {\n return;\n }\n requestAnimationFrame(() => {\n editor.view.dispatch(editor.state.tr.setMeta(pluginKey, 'updatePosition'));\n });\n }, [editor, pluginKey]);\n\n useEffect(() => {\n // Re-enable bubble after modal closes.\n if (!dialogOpen) {\n setDismissed(false);\n }\n }, [dialogOpen]);\n\n if (!editor) {\n return null;\n }\n const appendTarget = getPortalTargetForAppend();\n\n return (\n <BubbleMenu\n editor={editor}\n pluginKey={pluginKey}\n shouldShow={({ editor: ed }) => {\n return !dismissed && !dialogOpen && ed.isFocused && ed.isActive('link');\n }}\n appendTo={appendTarget ? () => {\n return appendTarget;\n } : undefined}\n getReferencedVirtualElement={getReferencedVirtualElement}\n updateDelay={0}\n options={{\n placement: 'top',\n onShow: handleShow,\n }}\n className={cn(\n 'relative z-[250] flex items-center gap-0 rounded-md overflow-visible',\n 'bg-[#1c2e36] text-white text-[12px]',\n dismissed && 'hidden',\n // 'shadow-lg border border-slate-600',\n )}\n >\n <span\n className=\"absolute left-1/2 -translate-x-1/2 -bottom-1 size-2 rotate-45 bg-[#1c2e36]\"\n aria-hidden\n />\n <span className=\"px-2 py-1.5 max-w-[200px] truncate\">\n {href}\n </span>\n <span className=\"w-px h-3 bg-[#616d73]\" />\n <Button\n type=\"button\"\n variant=\"none\"\n size=\"xs\"\n className=\"text-white hover:text-white/70 px-2 py-1.5\"\n onClick={() => {\n setDismissed(true);\n editor?.commands?.blur?.();\n onEdit();\n }}\n >\n {t('Edit')}\n </Button>\n <span className=\"w-px h-3 bg-[#616d73]\" />\n <Button\n type=\"button\"\n variant=\"none\"\n size=\"xs\"\n className=\"text-white hover:text-white/70 px-2 py-1.5\"\n onClick={() => { return editor.chain().focus().unsetLink().run(); }}\n >\n {t('Unlink')}\n </Button>\n </BubbleMenu>\n );\n}\n"],"mappings":";;;;;;;;;;;;AAgBA,SAAgB,eAAe,EAAE,QAAQ,QAAQ,aAAa,SAA8B;CACxF,MAAM,IAAI,gBAAgB;CAC1B,MAAM,YAAY;CAClB,MAAM,CAAC,WAAW,gBAAgB,SAAS,MAAM;CAEjD,MAAM,OAAO,eAAe;EACxB;EACA,WAAW,EAAE,QAAQ,SAAS;AAC1B,UAAO,IAAI,SAAS,OAAO,GAAG,GAAG,cAAc,OAAO,CAAC,OAAO,KAAA;;EAErE,CAAC;CAEF,MAAM,8BAA8B,kBAAkB;AAClD,MAAI,CAAC,QAAQ,SAAS,OAAO,CACzB,QAAO;EAEX,MAAM,EAAE,OAAO,SAAS;EACxB,MAAM,WAAW,MAAM,OAAO,MAAM;EAEpC,MAAM,gBAAgB;GAClB,MAAM,QAAQ,aAAa,OAAO,MAAM,UAAU,OAAO,SAAS;AAElE,OAAI,MACA,QAAO,aAAa,MAAM,MAAM,MAAM,MAAM,GAAG;GAGnD,MAAM,EAAE,SAAS,OAAO,MAAM;AAC9B,UAAO,aAAa,MAAM,MAAM,KAAK;;AAGzC,SAAO;GACH,uBAAuB;GACvB,sBAAsB;AAClB,WAAO,CAAC,SAAS,CAAC;;GAEzB;IACF,CAAC,OAAO,CAAC;CAEZ,MAAM,aAAa,kBAAkB;AACjC,MAAI,CAAC,OACD;AAEJ,8BAA4B;AACxB,UAAO,KAAK,SAAS,OAAO,MAAM,GAAG,QAAQ,WAAW,iBAAiB,CAAC;IAC5E;IACH,CAAC,QAAQ,UAAU,CAAC;AAEvB,iBAAgB;AAEZ,MAAI,CAAC,WACD,cAAa,MAAM;IAExB,CAAC,WAAW,CAAC;AAEhB,KAAI,CAAC,OACD,QAAO;CAEX,MAAM,eAAe,0BAA0B;AAE/C,QACI,qBAAC,YAAD;EACY;EACG;EACX,aAAa,EAAE,QAAQ,SAAS;AAC5B,UAAO,CAAC,aAAa,CAAC,cAAc,GAAG,aAAa,GAAG,SAAS,OAAO;;EAE3E,UAAU,qBAAqB;AAC3B,UAAO;MACP,KAAA;EACyB;EAC7B,aAAa;EACb,SAAS;GACL,WAAW;GACX,QAAQ;GACX;EACD,WAAW,GACP,wEACA,uCACA,aAAa,SAEhB;YApBL;GAsBI,oBAAC,QAAD;IACI,WAAU;IACV,eAAA;IACF,CAAA;GACF,oBAAC,QAAD;IAAM,WAAU;cACX;IACE,CAAA;GACP,oBAAC,QAAD,EAAM,WAAU,yBAA0B,CAAA;GAC1C,oBAAC,QAAD;IACI,MAAK;IACL,SAAQ;IACR,MAAK;IACL,WAAU;IACV,eAAe;AACX,kBAAa,KAAK;AAClB,aAAQ,UAAU,QAAQ;AAC1B,aAAQ;;cAGX,EAAE,OAAO;IACL,CAAA;GACT,oBAAC,QAAD,EAAM,WAAU,yBAA0B,CAAA;GAC1C,oBAAC,QAAD;IACI,MAAK;IACL,SAAQ;IACR,MAAK;IACL,WAAU;IACV,eAAe;AAAE,YAAO,OAAO,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK;;cAE/D,EAAE,SAAS;IACP,CAAA;GACA"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Editor } from '@tiptap/core';
|
|
2
|
+
export type LinkElementConfig = {
|
|
3
|
+
elementType: string;
|
|
4
|
+
refHandle: string;
|
|
5
|
+
sources?: string[];
|
|
6
|
+
criteria?: Record<string, unknown>;
|
|
7
|
+
};
|
|
8
|
+
export type LinkOptionSchemaItem = LinkElementConfig & {
|
|
9
|
+
optionTitle: string;
|
|
10
|
+
};
|
|
11
|
+
export type LinkOptions = {
|
|
12
|
+
elementSiteId?: number;
|
|
13
|
+
linkToEntry?: LinkElementConfig;
|
|
14
|
+
linkToAsset?: LinkElementConfig;
|
|
15
|
+
linkToCategory?: LinkElementConfig;
|
|
16
|
+
};
|
|
17
|
+
/** linkOptions can be the object format above, or an array from schema: { optionTitle, elementType, refHandle, sources?, criteria? }[] */
|
|
18
|
+
export type LinkOptionsInput = LinkOptions | LinkOptionSchemaItem[];
|
|
19
|
+
type LinkDropdownProps = {
|
|
20
|
+
editor: Editor | null | undefined;
|
|
21
|
+
linkOptions?: LinkOptionsInput;
|
|
22
|
+
linkSelectorStorageKeyPrefix?: string;
|
|
23
|
+
openInsertLinkDialog: (initial?: {
|
|
24
|
+
url?: string;
|
|
25
|
+
text?: string;
|
|
26
|
+
from?: number;
|
|
27
|
+
to?: number;
|
|
28
|
+
}) => void;
|
|
29
|
+
title?: string;
|
|
30
|
+
};
|
|
31
|
+
declare global {
|
|
32
|
+
interface Window {
|
|
33
|
+
Craft?: {
|
|
34
|
+
createElementSelectorModal?: (elementType: string, options: {
|
|
35
|
+
storageKey: string;
|
|
36
|
+
sources?: string[];
|
|
37
|
+
criteria?: Record<string, unknown>;
|
|
38
|
+
defaultSiteId?: number;
|
|
39
|
+
autoFocusSearchBox?: boolean;
|
|
40
|
+
onSelect: (elements: Array<{
|
|
41
|
+
url?: string;
|
|
42
|
+
label?: string;
|
|
43
|
+
id?: number;
|
|
44
|
+
siteId?: number;
|
|
45
|
+
}>) => void;
|
|
46
|
+
closeOtherModals?: boolean;
|
|
47
|
+
}) => void;
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
export declare function LinkDropdown({ editor, linkOptions, linkSelectorStorageKeyPrefix, openInsertLinkDialog, title, }: LinkDropdownProps): import("react/jsx-runtime").JSX.Element;
|
|
52
|
+
export {};
|
|
53
|
+
//# sourceMappingURL=LinkDropdown.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinkDropdown.d.ts","sourceRoot":"","sources":["../../../src/components/tiptap/LinkDropdown.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAe3C,MAAM,MAAM,iBAAiB,GAAG;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,GAAG;IACnD,WAAW,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,cAAc,CAAC,EAAE,iBAAiB,CAAC;CACtC,CAAC;AAEF,0IAA0I;AAC1I,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,oBAAoB,EAAE,CAAC;AAEpE,KAAK,iBAAiB,GAAG;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,oBAAoB,EAAE,CAAC,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACtG,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QACZ,KAAK,CAAC,EAAE;YACJ,0BAA0B,CAAC,EAAE,CACzB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE;gBACL,UAAU,EAAE,MAAM,CAAC;gBACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;gBACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBACnC,aAAa,CAAC,EAAE,MAAM,CAAC;gBACvB,kBAAkB,CAAC,EAAE,OAAO,CAAC;gBAC7B,QAAQ,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC;oBAAE,GAAG,CAAC,EAAE,MAAM,CAAC;oBAAC,KAAK,CAAC,EAAE,MAAM,CAAC;oBAAC,EAAE,CAAC,EAAE,MAAM,CAAC;oBAAC,MAAM,CAAC,EAAE,MAAM,CAAA;iBAAE,CAAC,KAAK,IAAI,CAAC;gBACpG,gBAAgB,CAAC,EAAE,OAAO,CAAC;aAC9B,KACA,IAAI,CAAC;SACb,CAAC;KACL;CACJ;AAuDD,wBAAgB,YAAY,CAAC,EACzB,MAAM,EACN,WAAgB,EAChB,4BAA4B,EAC5B,oBAAoB,EACpB,KAAK,GACR,EAAE,iBAAiB,2CAkJnB"}
|