@uva-glass/component-library 3.42.5 → 3.43.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/dist/RteEditor.module-CovRFt0S.js +34 -0
- package/dist/RteEditor.module-CovRFt0S.js.map +1 -0
- package/dist/{TablePlugin-CAoOq8iA.js → TablePlugin-DaKDRL4G.js} +2 -2
- package/dist/{TablePlugin-CAoOq8iA.js.map → TablePlugin-DaKDRL4G.js.map} +1 -1
- package/dist/assets/RteEditor.css +1 -1
- package/dist/components/CheckboxTree/CheckboxTree.js +1 -1
- package/dist/components/FormInput/FormInput.js +1 -1
- package/dist/components/InputField/InputField.stories.js +1 -1
- package/dist/components/MultiSelect/MultiSelect.js +1 -1
- package/dist/components/MultiSelect/MultiSelect.stories.js +1 -1
- package/dist/components/MultiSelect/components/MultiSelectHeader.js +1 -1
- package/dist/components/MultiSelect/index.js +1 -1
- package/dist/components/PeriodSelector/PeriodSelector.js +37 -37
- package/dist/components/PeriodSelector/PeriodSelector.js.map +1 -1
- package/dist/components/ProgrammeCard/ProgrammeCard.stories.js +1 -1
- package/dist/components/RadioTabSelector/RadioTabSelector.js +1 -1
- package/dist/components/RteEditor/EditorHeader/EditorHeader.js +1 -1
- package/dist/components/RteEditor/Plugins/BlockFormatPlugin/BlockFormatPlugin.js +1 -1
- package/dist/components/RteEditor/Plugins/HistoryPlugin/HistoryPlugin.js +2 -2
- package/dist/components/RteEditor/Plugins/LinkPlugin/AddLinkForm/AddLinkFrom.js +1 -1
- package/dist/components/RteEditor/Plugins/LinkPlugin/LinkPlugin.js +2 -2
- package/dist/components/RteEditor/Plugins/ListPlugin/ListPlugin.js +1 -1
- package/dist/components/RteEditor/Plugins/TablePlugin/AddTableFrom.js +1 -1
- package/dist/components/RteEditor/Plugins/TablePlugin/TablePlugin.js +2 -2
- package/dist/components/RteEditor/Plugins/TablePlugin/index.js +1 -1
- package/dist/components/RteEditor/Plugins/ToolbarPlugin/ToolbarPlugin.js +2 -2
- package/dist/components/RteEditor/Plugins/index.js +1 -1
- package/dist/components/RteEditor/RteEditor.js +2 -2
- package/dist/components/RteEditor/RteEditor.stories.js +64 -25
- package/dist/components/RteEditor/RteEditor.stories.js.map +1 -1
- package/dist/components/RteEditor/UvaTheme/UvaTheme.d.ts +2 -0
- package/dist/components/RteEditor/UvaTheme/UvaTheme.js +4 -2
- package/dist/components/RteEditor/UvaTheme/UvaTheme.js.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/index.js +1 -1
- package/package.json +18 -18
- package/dist/RteEditor.module-dE9wQTC9.js +0 -42
- package/dist/RteEditor.module-dE9wQTC9.js.map +0 -1
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import './assets/RteEditor.css';const t = "_editor__container_1hmqh_1", _ = "_editor__header_1hmqh_7", e = "_editor_1hmqh_1", o = "_editor__field_1hmqh_36", i = "_editor__toolbar_1hmqh_40", r = "_editor__placeholder_1hmqh_170", d = {
|
|
2
|
+
editor__container: t,
|
|
3
|
+
editor__header: _,
|
|
4
|
+
"editor__header-word-count": "_editor__header-word-count_1hmqh_15",
|
|
5
|
+
"editor__header-word-count--alert": "_editor__header-word-count--alert_1hmqh_24",
|
|
6
|
+
editor: e,
|
|
7
|
+
editor__field: o,
|
|
8
|
+
editor__toolbar: i,
|
|
9
|
+
"editor__toolbar-button-group": "_editor__toolbar-button-group_1hmqh_49",
|
|
10
|
+
"editor__toolbar-button": "_editor__toolbar-button_1hmqh_49",
|
|
11
|
+
"editor__toolbar-button--active": "_editor__toolbar-button--active_1hmqh_80",
|
|
12
|
+
"editor__toolbar-button--bold": "_editor__toolbar-button--bold_1hmqh_100",
|
|
13
|
+
"editor__toolbar-button--italic": "_editor__toolbar-button--italic_1hmqh_104",
|
|
14
|
+
"editor__toolbar-button-flyoutwrapper": "_editor__toolbar-button-flyoutwrapper_1hmqh_123",
|
|
15
|
+
"editor__field-wrapper": "_editor__field-wrapper_1hmqh_127",
|
|
16
|
+
editor__placeholder: r,
|
|
17
|
+
"guide-text-ltr": "_guide-text-ltr_1hmqh_180",
|
|
18
|
+
"guide-text-rtl": "_guide-text-rtl_1hmqh_184",
|
|
19
|
+
"guide-text-paragraph": "_guide-text-paragraph_1hmqh_188",
|
|
20
|
+
"guide-text__text--bold": "_guide-text__text--bold_1hmqh_193",
|
|
21
|
+
"guide-text__text--italic": "_guide-text__text--italic_1hmqh_197",
|
|
22
|
+
"guide-text__list--ul": "_guide-text__list--ul_1hmqh_201",
|
|
23
|
+
"guide-text__list--ol": "_guide-text__list--ol_1hmqh_202",
|
|
24
|
+
"guide-text__list--listitem": "_guide-text__list--listitem_1hmqh_214",
|
|
25
|
+
"guide-text__list--nested-listitem": "_guide-text__list--nested-listitem_1hmqh_223",
|
|
26
|
+
"guide-text__list--ul2": "_guide-text__list--ul2_1hmqh_233",
|
|
27
|
+
"guide-text__list--ul3": "_guide-text__list--ul3_1hmqh_237",
|
|
28
|
+
"guide-text__list--ul4": "_guide-text__list--ul4_1hmqh_241",
|
|
29
|
+
"guide-text__list--ul5": "_guide-text__list--ul5_1hmqh_245"
|
|
30
|
+
};
|
|
31
|
+
export {
|
|
32
|
+
d as s
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=RteEditor.module-CovRFt0S.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RteEditor.module-CovRFt0S.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -32,7 +32,7 @@ import "./components/RteEditor/hooks/components/Flyout.js";
|
|
|
32
32
|
import { PREVENT_OPEN_DELAY as ue, deleteTable as fe, deleteColumn as pe, insertColumn as be, deleteRow as _e, insertRow as he, createTable as ke, getEditorParrentCellWidth as ve, getEditorContentWidth as we, DEFAULT_EDITOR_WIDTH as Fe, DEFAULT_COL_WIDTH as Ce } from "./components/RteEditor/Plugins/TablePlugin/helpers.js";
|
|
33
33
|
import { $createTableWrapperNode as ye } from "./components/RteEditor/nodes/TableWrapperNode/TableWrapperNode.js";
|
|
34
34
|
import { useFlyout as Ne } from "./components/RteEditor/hooks/useFlyout.js";
|
|
35
|
-
import { s as q } from "./RteEditor.module-
|
|
35
|
+
import { s as q } from "./RteEditor.module-CovRFt0S.js";
|
|
36
36
|
import "react-dom";
|
|
37
37
|
import "./index-yEhaxKq-.js";
|
|
38
38
|
import "./components/SelectListbox/SelectListbox.js";
|
|
@@ -303,4 +303,4 @@ export {
|
|
|
303
303
|
ge as a,
|
|
304
304
|
Se as b
|
|
305
305
|
};
|
|
306
|
-
//# sourceMappingURL=TablePlugin-
|
|
306
|
+
//# sourceMappingURL=TablePlugin-DaKDRL4G.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TablePlugin-CAoOq8iA.js","sources":["../src/components/MultiSelect/components/MultiSelectHeader.tsx","../src/components/MultiSelect/MultiSelect.tsx","../src/components/RteEditor/Plugins/LinkPlugin/AddLinkForm/AddLinkFrom.tsx","../src/components/RteEditor/Plugins/TablePlugin/AddTableFrom.tsx","../src/components/RteEditor/Plugins/TablePlugin/TablePlugin.tsx"],"sourcesContent":["import styles from 'components/MultiSelect/MultiSelect.module.css';\nimport { Label } from 'components/Label';\nimport { Button } from 'components';\n\nexport interface MultiSelectHeaderProps {\n label: string;\n clearTrigger?: string;\n onClear?: () => void;\n}\n\nexport function MultiSelectHeader({ label, clearTrigger, onClear }: MultiSelectHeaderProps) {\n return (\n <header className={styles['multi-select__header']}>\n <Label htmlFor=\"multi-select-list\">{label}</Label>\n {clearTrigger && (\n <Button variant={'blank'} onClick={onClear}>\n {clearTrigger}\n </Button>\n )}\n </header>\n );\n}\n","import { clsx } from 'clsx';\n\nimport type { PropsWithChildren, ReactNode } from 'react';\n\nimport styles from './MultiSelect.module.css';\n\nimport { MultiSelectItem } from 'components/MultiSelect/components/MultiSelectItem';\nimport { MultiSelectHeader } from 'components/MultiSelect/components/MultiSelectHeader';\n\nexport interface MultiSelectProps {\n /** `true` if the container should scroll on overflow; otherwise, `false` to resize the container to its contents. The default is `true`. */\n scrollable?: boolean;\n /** `true` to disable the border around the container; otherwise, `false`. The default is `false`. */\n noBorder?: boolean;\n /** The header contents. */\n header?: ReactNode;\n}\n\n/** Represents a component to list a number of checkboxes. */\nexport const MultiSelect = ({ scrollable = true, noBorder, header, children }: PropsWithChildren<MultiSelectProps>) => (\n <>\n {header}\n <div\n className={clsx(styles['multi-select'], {\n [styles['multi-select--no-border']]: noBorder,\n })}\n >\n <ul\n className={clsx(styles['multi-select__list'], {\n [styles['multi-select__list--scrollable']]: scrollable,\n })}\n id=\"multi-select-list\"\n >\n {children}\n </ul>\n </div>\n </>\n);\n\nMultiSelect.MultiSelectHeader = MultiSelectHeader;\nMultiSelect.MultiSelectItem = MultiSelectItem;\n","import { useState, forwardRef, useImperativeHandle, useRef, useId } from 'react';\n\nimport type { ChangeEvent, JSX } from 'react';\nimport type { LinkType } from 'components/RteEditor/Plugins/LinkPlugin';\n\nimport styles from './AddLinkForm.module.css';\n\nimport { ensureHttps, validateUrlWithProtocol } from 'components/RteEditor/Plugins/LinkPlugin/helpers';\nimport { Button, FeedbackBox, FormField, Icon, InputField, Label } from 'components';\nimport { useTranslation } from 'components/RteEditor/hooks/useTranslation';\n\ninterface AddLinkFormProps {\n onCloseHandler: () => void;\n onSaveHandler: (url: string, linktext: string) => void;\n isLink: LinkType;\n}\n\nexport interface addLinkFormMethods {\n clearForm: () => void;\n focusFirstField: () => void;\n setDefaults: (url: string, linktext: string) => void;\n}\n\nexport const AddLinkForm = forwardRef(\n (\n { onCloseHandler, onSaveHandler, isLink = { active: false, url: '', linktext: '' } }: AddLinkFormProps,\n ref\n ): JSX.Element => {\n const t = useTranslation();\n const [url, setUrl] = useState<string>(isLink.url || '');\n const [linkText, setLinkText] = useState<string>(isLink.linktext || '');\n const [showLinktextField, setShowLinktextField] = useState<boolean>(false);\n const [urlError, setUrlError] = useState<string | null>(null);\n const [linkTextError, setLinkTextError] = useState<string | null>(null);\n const firstField = useRef<HTMLInputElement>(null);\n const linkId = `link_${useId()}`;\n const textId = `text_${useId()}`;\n\n const handleOpenUrl = () => {\n window.open(ensureHttps(url), '_blank');\n };\n\n const handleUrl = (event: ChangeEvent<HTMLInputElement>) => {\n setUrl(event.target.value);\n };\n\n const handleLinkText = (event: ChangeEvent<HTMLInputElement>) => {\n setLinkText(event.target.value);\n };\n\n const validateUrl = (url: string): boolean => {\n if (validateUrlWithProtocol(url) === false || url.trim() === '') {\n setUrlError(t.errortext.urlNotValid);\n return false;\n }\n setUrlError(null);\n return true;\n };\n\n const validateLinkText = (linkText: string): boolean => {\n if (linkText.trim() === '') {\n setLinkTextError(t.errortext.linkTextNotValid);\n return false;\n }\n setLinkTextError(null);\n return true;\n };\n\n const handleSave = () => {\n if (!validateUrl(url) || (showLinktextField && !validateLinkText(linkText))) {\n return;\n }\n\n onSaveHandler(url, linkText);\n resetForm();\n };\n\n const handleClose = () => {\n onCloseHandler();\n resetForm();\n };\n\n const resetForm = () => {\n setUrl('');\n setShowLinktextField(false);\n setUrlError(null);\n setLinkTextError(null);\n };\n\n const setDefaults = (url: string, linktext: string) => {\n setUrl(url);\n if (!linktext && !url) {\n setShowLinktextField(true);\n }\n };\n\n const focusFirstField = () => {\n if (firstField.current) {\n firstField.current.focus();\n }\n };\n\n useImperativeHandle(ref, () => ({\n clearForm: resetForm,\n focusFirstField,\n setDefaults,\n }));\n\n return (\n <div className={styles['linkform']}>\n <FormField className={styles['linkform__input-field']}>\n <Label htmlFor={linkId}>{t.links.linkLabel}</Label>\n <div className={styles['linkform__input-url-wrapper']}>\n <InputField\n id={linkId}\n placeholder={t.links.linkPlaceholder}\n value={url}\n onChange={(event) => handleUrl(event)}\n onFocus={() => setUrlError(null)}\n ref={firstField}\n aria-label={t.aria.labels.linkField}\n />\n {url && (\n <button type=\"button\" onClick={handleOpenUrl} className={styles['linkform__open-url-button']}>\n <Icon name=\"ArrowTopRightOnSquare\" size={20} />\n </button>\n )}\n </div>\n {urlError && <FeedbackBox level=\"error\" feedback={urlError} />}\n </FormField>\n {showLinktextField && (\n <FormField className={styles['linkform__input-field']}>\n <Label htmlFor={textId}>{t.links.linkText}</Label>\n <InputField\n id={textId}\n value={linkText}\n onChange={(event) => handleLinkText(event)}\n onFocus={() => setLinkTextError(null)}\n aria-label={t.aria.labels.linkTextfield}\n />\n {linkTextError && <FeedbackBox level=\"error\" feedback={linkTextError} />}\n </FormField>\n )}\n <div className={styles['linkform__footer']}>\n <Button variant={'secondary'} onClick={handleClose} aria-label={t.common.cancel} type=\"button\">\n {t.common.cancel}\n </Button>\n <Button variant={'primary'} onClick={handleSave} aria-label={t.aria.labels.linkOkButton} type=\"button\">\n {t.links.addLink}\n </Button>\n </div>\n </div>\n );\n }\n);\n","import { useState, forwardRef, useImperativeHandle, useRef, useId, useEffect } from 'react';\n\nimport type { ChangeEvent } from 'react';\n\nimport styles from './AddTableFrom.module.css';\n\nimport { Button, FormField, InputField, Label } from 'components';\nimport { useTranslation } from 'components/RteEditor/hooks/useTranslation';\nimport { removeScrollableContainers, setScrollableContainers } from 'components/RteEditor/helpers';\n\ninterface AddTableFormProps {\n onCloseHandler: () => void;\n onSaveHandler: (nrfOfRows: number, nrOfColumns: number) => void;\n}\n\nexport interface addTableForm {\n clearForm: () => void;\n focusFirstField: () => void;\n}\n\nexport const AddTableForm = forwardRef(({ onCloseHandler, onSaveHandler }: AddTableFormProps, ref) => {\n const t = useTranslation();\n const [rowCount, setRowCount] = useState<number>();\n const [columnCount, setColumnCount] = useState<number>();\n const firstField = useRef<HTMLInputElement>(null);\n const rowId = `row_${useId()}`;\n const columnId = `column_${useId()}`;\n\n const handleDimentionChange = (event: ChangeEvent<HTMLInputElement>, type: string) => {\n const value = event.target.value;\n type === 'row' ? setRowCount(parseInt(value)) : setColumnCount(parseInt(value));\n };\n\n const handleSave = () => {\n if (rowCount !== undefined && columnCount !== undefined) {\n onSaveHandler(rowCount, columnCount);\n resetForm();\n }\n };\n\n const handleClose = () => {\n onCloseHandler();\n resetForm();\n };\n\n const resetForm = () => {\n setRowCount(undefined);\n setColumnCount(undefined);\n };\n\n useImperativeHandle(ref, () => ({\n clearForm: resetForm,\n focusFirstField: () => firstField.current?.focus(),\n }));\n\n useEffect(() => {\n const handleResizeScroll = () => {\n handleClose();\n };\n\n setScrollableContainers(handleResizeScroll);\n\n window.addEventListener('scroll', handleResizeScroll);\n window.addEventListener('resize', handleResizeScroll);\n\n return () => {\n window.removeEventListener('scroll', handleResizeScroll);\n window.removeEventListener('resize', handleResizeScroll);\n removeScrollableContainers(handleResizeScroll);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <div className={styles['tableform']}>\n <FormField className={styles['tableform__input-field']}>\n <Label htmlFor={rowId}>{t.table.nrofRows}</Label>\n <InputField\n id={rowId}\n placeholder={t.table.nrofRowsPlaceholder}\n value={rowCount ? rowCount : ''}\n onChange={(event) => handleDimentionChange(event, 'row')}\n aria-label={t.aria.labels.tableRowfield}\n ref={firstField}\n />\n </FormField>\n <FormField className={styles['tableform__input-field']}>\n <Label htmlFor={columnId}>{t.table.nrofColumns}</Label>\n <InputField\n id={columnId}\n placeholder={t.table.nrofColumnsPlaceholder}\n value={columnCount ? columnCount : ''}\n onChange={(event) => handleDimentionChange(event, 'column')}\n aria-label={t.aria.labels.tableColumnfield}\n />\n </FormField>\n <div className={styles['tableform__footer']}>\n <Button variant={'secondary'} onClick={handleClose} aria-label={t.common.cancel}>\n {t.common.cancel}\n </Button>\n <Button\n variant={'primary'}\n onClick={handleSave}\n disabled={!rowCount || !columnCount}\n aria-label={t.aria.labels.tableOkButton}\n >\n {t.common.add}\n </Button>\n </div>\n </div>\n );\n});\n","import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';\nimport { clsx } from 'clsx';\nimport { $getTableCellNodeFromLexicalNode, $isTableCellNode, TableCellNode } from '@lexical/table';\nimport {\n $getSelection,\n $isRangeSelection,\n $getRoot,\n KEY_DOWN_COMMAND,\n COMMAND_PRIORITY_EDITOR,\n $isNodeSelection,\n} from 'lexical';\nimport { $getNearestNodeOfType } from '@lexical/utils';\nimport { useRef, useEffect, useImperativeHandle, forwardRef } from 'react';\n\nimport type { TableNode } from '@lexical/table';\nimport type { JSX } from 'react';\nimport type { TextNode } from 'lexical';\nimport type { addTableForm } from './AddTableFrom';\nimport type { Actions } from './TableCellContextMenu';\n\nimport { AddTableForm } from './AddTableFrom';\nimport {\n createTable,\n DEFAULT_COL_WIDTH,\n DEFAULT_EDITOR_WIDTH,\n deleteColumn,\n deleteRow,\n deleteTable,\n getEditorContentWidth,\n getEditorParrentCellWidth,\n insertColumn,\n insertRow,\n PREVENT_OPEN_DELAY,\n} from './helpers';\n\nimport { $createTableWrapperNode } from 'components/RteEditor/nodes';\nimport { useFlyout } from 'components/RteEditor/hooks/useFlyout';\nimport { Icon } from 'components';\nimport styles from 'components/RteEditor/RteEditor.module.css';\nimport { useTranslation } from 'components/RteEditor/hooks/useTranslation';\n\ninterface TablePluginProps {\n isActive: boolean;\n}\nexport interface TableMutation {\n mutateTable: (type: Actions) => void;\n}\n\nexport const TablePlugin = forwardRef(({ isActive }: TablePluginProps, ref): JSX.Element => {\n const t = useTranslation();\n const [editor] = useLexicalComposerContext();\n const { flyout, showFlyout, hideFlyout, isVisible } = useFlyout();\n const addTableForm = useRef<addTableForm>(undefined);\n const buttonRef = useRef<HTMLButtonElement>(null);\n const preventOpen = useRef(false);\n const isVisibleRef = useRef(isVisible);\n\n const openFlyout = () => {\n const rect = buttonRef.current?.getBoundingClientRect();\n if (!preventOpen.current && rect) {\n showFlyout({ position: { top: rect.bottom, left: rect.left }, ...flyoutOptions });\n }\n };\n\n const closeFlyout = () => {\n hideFlyout();\n };\n\n const insertTable = (nrOfRows: number, nrOfColumns: number) => {\n editor.update(() => {\n const selection = $getSelection();\n const tableNode = createTable(nrOfRows, nrOfColumns);\n\n const anchorNode =\n ($isRangeSelection(selection) && selection.anchor.getNode()) ||\n ($isNodeSelection(selection) && selection.getNodes()[0]) ||\n null;\n\n const willBeNested = anchorNode ? $getNearestNodeOfType(anchorNode, TableCellNode) : null;\n\n const availibleWidth = willBeNested\n ? getEditorParrentCellWidth(willBeNested, nrOfColumns, editor)\n : getEditorContentWidth(editor) || DEFAULT_EDITOR_WIDTH;\n\n const perCol = Math.max(DEFAULT_COL_WIDTH, Math.floor(availibleWidth / Math.max(1, nrOfColumns)));\n\n const colWidths = Array.from({ length: nrOfColumns }, () => perCol);\n\n (tableNode as TableNode).setColWidths(colWidths);\n\n const tableWrapper = $createTableWrapperNode();\n tableWrapper.append(tableNode);\n if ($isRangeSelection(selection)) {\n selection.insertNodes([tableWrapper]);\n } else {\n $getRoot().append(tableWrapper);\n }\n const firstDescendant = tableWrapper.getFirstDescendant();\n if (firstDescendant) {\n (firstDescendant as TextNode).select();\n }\n });\n\n closeFlyout();\n };\n\n const mutateTable = (action: Actions) => {\n editor.update(() => {\n const selection = $getSelection();\n if ($isRangeSelection(selection)) {\n const anchorNode = selection.anchor.getNode();\n const currentNode = $getTableCellNodeFromLexicalNode(anchorNode);\n\n if ($isTableCellNode(currentNode)) {\n switch (action) {\n case 'insertRowAbove':\n case 'insertRowBelow':\n insertRow(currentNode, action);\n break;\n case 'deleteRow':\n deleteRow(currentNode);\n break;\n case 'insertColumnLeft':\n case 'insertColumnRight':\n insertColumn(currentNode, action);\n break;\n case 'deleteColumn':\n deleteColumn(currentNode);\n break;\n case 'deleteTable':\n deleteTable(currentNode);\n break;\n }\n }\n }\n });\n };\n\n const flyoutOptions = {\n children: (\n <AddTableForm\n onCloseHandler={closeFlyout}\n onSaveHandler={(rows, columns) => insertTable(rows, columns)}\n ref={addTableForm}\n />\n ),\n };\n\n useEffect(() => {\n if (!isVisible) {\n addTableForm.current?.clearForm();\n setTimeout(() => (preventOpen.current = false), PREVENT_OPEN_DELAY);\n } else {\n preventOpen.current = true;\n addTableForm.current?.focusFirstField();\n }\n }, [addTableForm, isVisible]);\n\n useEffect(() => {\n const removeKeyboardShortcut = editor.registerCommand(\n KEY_DOWN_COMMAND,\n (event: KeyboardEvent) => {\n if (event.ctrlKey && event.shiftKey && event.code === 'Digit9') {\n event.preventDefault();\n openFlyout();\n return true;\n }\n return false;\n },\n COMMAND_PRIORITY_EDITOR\n );\n\n return () => {\n removeKeyboardShortcut();\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [editor]);\n\n useEffect(() => {\n isVisibleRef.current = isVisible;\n }, [isVisible]);\n\n useEffect(() => {\n const removeKeydown = (event: KeyboardEvent) => {\n if (event.key === 'Escape' && isVisibleRef.current) {\n event.preventDefault();\n event.stopPropagation();\n closeFlyout();\n }\n };\n\n document.addEventListener('keydown', removeKeydown, { capture: true });\n\n return () => {\n document.removeEventListener('keydown', removeKeydown);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useImperativeHandle(ref, () => ({\n mutateTable,\n }));\n\n return (\n <div className={styles['editor__toolbar-button-group']}>\n <div className={styles['editor__toolbar-button-flyoutwrapper']}>\n <button\n onClick={openFlyout}\n title={t.table.tableTooltip}\n className={clsx(styles['editor__toolbar-button'], isActive && styles[`editor__toolbar-button--active`])}\n aria-label={t.aria.labels.table}\n aria-keyshortcuts={t.aria.keyshortcuts.table}\n ref={buttonRef}\n type=\"button\"\n >\n <Icon name=\"Table\" size={24} />\n </button>\n {flyout}\n </div>\n </div>\n );\n});\n"],"names":["MultiSelectHeader","label","clearTrigger","onClear","jsxs","styles","jsx","Label","Button","MultiSelect","scrollable","noBorder","header","children","Fragment","clsx","MultiSelectItem","AddLinkForm","forwardRef","onCloseHandler","onSaveHandler","isLink","ref","t","useTranslation","url","setUrl","useState","linkText","setLinkText","showLinktextField","setShowLinktextField","urlError","setUrlError","linkTextError","setLinkTextError","firstField","useRef","linkId","useId","textId","handleOpenUrl","ensureHttps","handleUrl","event","handleLinkText","validateUrl","validateUrlWithProtocol","validateLinkText","handleSave","resetForm","handleClose","setDefaults","linktext","focusFirstField","useImperativeHandle","FormField","InputField","Icon","FeedbackBox","AddTableForm","rowCount","setRowCount","columnCount","setColumnCount","rowId","columnId","handleDimentionChange","type","value","useEffect","handleResizeScroll","setScrollableContainers","removeScrollableContainers","TablePlugin","isActive","editor","useLexicalComposerContext","flyout","showFlyout","hideFlyout","isVisible","useFlyout","addTableForm","buttonRef","preventOpen","isVisibleRef","openFlyout","rect","flyoutOptions","closeFlyout","insertTable","nrOfRows","nrOfColumns","selection","$getSelection","tableNode","createTable","anchorNode","$isRangeSelection","$isNodeSelection","willBeNested","$getNearestNodeOfType","TableCellNode","availibleWidth","getEditorParrentCellWidth","getEditorContentWidth","DEFAULT_EDITOR_WIDTH","perCol","DEFAULT_COL_WIDTH","colWidths","tableWrapper","$createTableWrapperNode","$getRoot","firstDescendant","mutateTable","action","currentNode","$getTableCellNodeFromLexicalNode","$isTableCellNode","insertRow","deleteRow","insertColumn","deleteColumn","deleteTable","rows","columns","PREVENT_OPEN_DELAY","removeKeyboardShortcut","KEY_DOWN_COMMAND","COMMAND_PRIORITY_EDITOR","removeKeydown"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TablePlugin-DaKDRL4G.js","sources":["../src/components/MultiSelect/components/MultiSelectHeader.tsx","../src/components/MultiSelect/MultiSelect.tsx","../src/components/RteEditor/Plugins/LinkPlugin/AddLinkForm/AddLinkFrom.tsx","../src/components/RteEditor/Plugins/TablePlugin/AddTableFrom.tsx","../src/components/RteEditor/Plugins/TablePlugin/TablePlugin.tsx"],"sourcesContent":["import styles from 'components/MultiSelect/MultiSelect.module.css';\nimport { Label } from 'components/Label';\nimport { Button } from 'components';\n\nexport interface MultiSelectHeaderProps {\n label: string;\n clearTrigger?: string;\n onClear?: () => void;\n}\n\nexport function MultiSelectHeader({ label, clearTrigger, onClear }: MultiSelectHeaderProps) {\n return (\n <header className={styles['multi-select__header']}>\n <Label htmlFor=\"multi-select-list\">{label}</Label>\n {clearTrigger && (\n <Button variant={'blank'} onClick={onClear}>\n {clearTrigger}\n </Button>\n )}\n </header>\n );\n}\n","import { clsx } from 'clsx';\n\nimport type { PropsWithChildren, ReactNode } from 'react';\n\nimport styles from './MultiSelect.module.css';\n\nimport { MultiSelectItem } from 'components/MultiSelect/components/MultiSelectItem';\nimport { MultiSelectHeader } from 'components/MultiSelect/components/MultiSelectHeader';\n\nexport interface MultiSelectProps {\n /** `true` if the container should scroll on overflow; otherwise, `false` to resize the container to its contents. The default is `true`. */\n scrollable?: boolean;\n /** `true` to disable the border around the container; otherwise, `false`. The default is `false`. */\n noBorder?: boolean;\n /** The header contents. */\n header?: ReactNode;\n}\n\n/** Represents a component to list a number of checkboxes. */\nexport const MultiSelect = ({ scrollable = true, noBorder, header, children }: PropsWithChildren<MultiSelectProps>) => (\n <>\n {header}\n <div\n className={clsx(styles['multi-select'], {\n [styles['multi-select--no-border']]: noBorder,\n })}\n >\n <ul\n className={clsx(styles['multi-select__list'], {\n [styles['multi-select__list--scrollable']]: scrollable,\n })}\n id=\"multi-select-list\"\n >\n {children}\n </ul>\n </div>\n </>\n);\n\nMultiSelect.MultiSelectHeader = MultiSelectHeader;\nMultiSelect.MultiSelectItem = MultiSelectItem;\n","import { useState, forwardRef, useImperativeHandle, useRef, useId } from 'react';\n\nimport type { ChangeEvent, JSX } from 'react';\nimport type { LinkType } from 'components/RteEditor/Plugins/LinkPlugin';\n\nimport styles from './AddLinkForm.module.css';\n\nimport { ensureHttps, validateUrlWithProtocol } from 'components/RteEditor/Plugins/LinkPlugin/helpers';\nimport { Button, FeedbackBox, FormField, Icon, InputField, Label } from 'components';\nimport { useTranslation } from 'components/RteEditor/hooks/useTranslation';\n\ninterface AddLinkFormProps {\n onCloseHandler: () => void;\n onSaveHandler: (url: string, linktext: string) => void;\n isLink: LinkType;\n}\n\nexport interface addLinkFormMethods {\n clearForm: () => void;\n focusFirstField: () => void;\n setDefaults: (url: string, linktext: string) => void;\n}\n\nexport const AddLinkForm = forwardRef(\n (\n { onCloseHandler, onSaveHandler, isLink = { active: false, url: '', linktext: '' } }: AddLinkFormProps,\n ref\n ): JSX.Element => {\n const t = useTranslation();\n const [url, setUrl] = useState<string>(isLink.url || '');\n const [linkText, setLinkText] = useState<string>(isLink.linktext || '');\n const [showLinktextField, setShowLinktextField] = useState<boolean>(false);\n const [urlError, setUrlError] = useState<string | null>(null);\n const [linkTextError, setLinkTextError] = useState<string | null>(null);\n const firstField = useRef<HTMLInputElement>(null);\n const linkId = `link_${useId()}`;\n const textId = `text_${useId()}`;\n\n const handleOpenUrl = () => {\n window.open(ensureHttps(url), '_blank');\n };\n\n const handleUrl = (event: ChangeEvent<HTMLInputElement>) => {\n setUrl(event.target.value);\n };\n\n const handleLinkText = (event: ChangeEvent<HTMLInputElement>) => {\n setLinkText(event.target.value);\n };\n\n const validateUrl = (url: string): boolean => {\n if (validateUrlWithProtocol(url) === false || url.trim() === '') {\n setUrlError(t.errortext.urlNotValid);\n return false;\n }\n setUrlError(null);\n return true;\n };\n\n const validateLinkText = (linkText: string): boolean => {\n if (linkText.trim() === '') {\n setLinkTextError(t.errortext.linkTextNotValid);\n return false;\n }\n setLinkTextError(null);\n return true;\n };\n\n const handleSave = () => {\n if (!validateUrl(url) || (showLinktextField && !validateLinkText(linkText))) {\n return;\n }\n\n onSaveHandler(url, linkText);\n resetForm();\n };\n\n const handleClose = () => {\n onCloseHandler();\n resetForm();\n };\n\n const resetForm = () => {\n setUrl('');\n setShowLinktextField(false);\n setUrlError(null);\n setLinkTextError(null);\n };\n\n const setDefaults = (url: string, linktext: string) => {\n setUrl(url);\n if (!linktext && !url) {\n setShowLinktextField(true);\n }\n };\n\n const focusFirstField = () => {\n if (firstField.current) {\n firstField.current.focus();\n }\n };\n\n useImperativeHandle(ref, () => ({\n clearForm: resetForm,\n focusFirstField,\n setDefaults,\n }));\n\n return (\n <div className={styles['linkform']}>\n <FormField className={styles['linkform__input-field']}>\n <Label htmlFor={linkId}>{t.links.linkLabel}</Label>\n <div className={styles['linkform__input-url-wrapper']}>\n <InputField\n id={linkId}\n placeholder={t.links.linkPlaceholder}\n value={url}\n onChange={(event) => handleUrl(event)}\n onFocus={() => setUrlError(null)}\n ref={firstField}\n aria-label={t.aria.labels.linkField}\n />\n {url && (\n <button type=\"button\" onClick={handleOpenUrl} className={styles['linkform__open-url-button']}>\n <Icon name=\"ArrowTopRightOnSquare\" size={20} />\n </button>\n )}\n </div>\n {urlError && <FeedbackBox level=\"error\" feedback={urlError} />}\n </FormField>\n {showLinktextField && (\n <FormField className={styles['linkform__input-field']}>\n <Label htmlFor={textId}>{t.links.linkText}</Label>\n <InputField\n id={textId}\n value={linkText}\n onChange={(event) => handleLinkText(event)}\n onFocus={() => setLinkTextError(null)}\n aria-label={t.aria.labels.linkTextfield}\n />\n {linkTextError && <FeedbackBox level=\"error\" feedback={linkTextError} />}\n </FormField>\n )}\n <div className={styles['linkform__footer']}>\n <Button variant={'secondary'} onClick={handleClose} aria-label={t.common.cancel} type=\"button\">\n {t.common.cancel}\n </Button>\n <Button variant={'primary'} onClick={handleSave} aria-label={t.aria.labels.linkOkButton} type=\"button\">\n {t.links.addLink}\n </Button>\n </div>\n </div>\n );\n }\n);\n","import { useState, forwardRef, useImperativeHandle, useRef, useId, useEffect } from 'react';\n\nimport type { ChangeEvent } from 'react';\n\nimport styles from './AddTableFrom.module.css';\n\nimport { Button, FormField, InputField, Label } from 'components';\nimport { useTranslation } from 'components/RteEditor/hooks/useTranslation';\nimport { removeScrollableContainers, setScrollableContainers } from 'components/RteEditor/helpers';\n\ninterface AddTableFormProps {\n onCloseHandler: () => void;\n onSaveHandler: (nrfOfRows: number, nrOfColumns: number) => void;\n}\n\nexport interface addTableForm {\n clearForm: () => void;\n focusFirstField: () => void;\n}\n\nexport const AddTableForm = forwardRef(({ onCloseHandler, onSaveHandler }: AddTableFormProps, ref) => {\n const t = useTranslation();\n const [rowCount, setRowCount] = useState<number>();\n const [columnCount, setColumnCount] = useState<number>();\n const firstField = useRef<HTMLInputElement>(null);\n const rowId = `row_${useId()}`;\n const columnId = `column_${useId()}`;\n\n const handleDimentionChange = (event: ChangeEvent<HTMLInputElement>, type: string) => {\n const value = event.target.value;\n type === 'row' ? setRowCount(parseInt(value)) : setColumnCount(parseInt(value));\n };\n\n const handleSave = () => {\n if (rowCount !== undefined && columnCount !== undefined) {\n onSaveHandler(rowCount, columnCount);\n resetForm();\n }\n };\n\n const handleClose = () => {\n onCloseHandler();\n resetForm();\n };\n\n const resetForm = () => {\n setRowCount(undefined);\n setColumnCount(undefined);\n };\n\n useImperativeHandle(ref, () => ({\n clearForm: resetForm,\n focusFirstField: () => firstField.current?.focus(),\n }));\n\n useEffect(() => {\n const handleResizeScroll = () => {\n handleClose();\n };\n\n setScrollableContainers(handleResizeScroll);\n\n window.addEventListener('scroll', handleResizeScroll);\n window.addEventListener('resize', handleResizeScroll);\n\n return () => {\n window.removeEventListener('scroll', handleResizeScroll);\n window.removeEventListener('resize', handleResizeScroll);\n removeScrollableContainers(handleResizeScroll);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <div className={styles['tableform']}>\n <FormField className={styles['tableform__input-field']}>\n <Label htmlFor={rowId}>{t.table.nrofRows}</Label>\n <InputField\n id={rowId}\n placeholder={t.table.nrofRowsPlaceholder}\n value={rowCount ? rowCount : ''}\n onChange={(event) => handleDimentionChange(event, 'row')}\n aria-label={t.aria.labels.tableRowfield}\n ref={firstField}\n />\n </FormField>\n <FormField className={styles['tableform__input-field']}>\n <Label htmlFor={columnId}>{t.table.nrofColumns}</Label>\n <InputField\n id={columnId}\n placeholder={t.table.nrofColumnsPlaceholder}\n value={columnCount ? columnCount : ''}\n onChange={(event) => handleDimentionChange(event, 'column')}\n aria-label={t.aria.labels.tableColumnfield}\n />\n </FormField>\n <div className={styles['tableform__footer']}>\n <Button variant={'secondary'} onClick={handleClose} aria-label={t.common.cancel}>\n {t.common.cancel}\n </Button>\n <Button\n variant={'primary'}\n onClick={handleSave}\n disabled={!rowCount || !columnCount}\n aria-label={t.aria.labels.tableOkButton}\n >\n {t.common.add}\n </Button>\n </div>\n </div>\n );\n});\n","import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';\nimport { clsx } from 'clsx';\nimport { $getTableCellNodeFromLexicalNode, $isTableCellNode, TableCellNode } from '@lexical/table';\nimport {\n $getSelection,\n $isRangeSelection,\n $getRoot,\n KEY_DOWN_COMMAND,\n COMMAND_PRIORITY_EDITOR,\n $isNodeSelection,\n} from 'lexical';\nimport { $getNearestNodeOfType } from '@lexical/utils';\nimport { useRef, useEffect, useImperativeHandle, forwardRef } from 'react';\n\nimport type { TableNode } from '@lexical/table';\nimport type { JSX } from 'react';\nimport type { TextNode } from 'lexical';\nimport type { addTableForm } from './AddTableFrom';\nimport type { Actions } from './TableCellContextMenu';\n\nimport { AddTableForm } from './AddTableFrom';\nimport {\n createTable,\n DEFAULT_COL_WIDTH,\n DEFAULT_EDITOR_WIDTH,\n deleteColumn,\n deleteRow,\n deleteTable,\n getEditorContentWidth,\n getEditorParrentCellWidth,\n insertColumn,\n insertRow,\n PREVENT_OPEN_DELAY,\n} from './helpers';\n\nimport { $createTableWrapperNode } from 'components/RteEditor/nodes';\nimport { useFlyout } from 'components/RteEditor/hooks/useFlyout';\nimport { Icon } from 'components';\nimport styles from 'components/RteEditor/RteEditor.module.css';\nimport { useTranslation } from 'components/RteEditor/hooks/useTranslation';\n\ninterface TablePluginProps {\n isActive: boolean;\n}\nexport interface TableMutation {\n mutateTable: (type: Actions) => void;\n}\n\nexport const TablePlugin = forwardRef(({ isActive }: TablePluginProps, ref): JSX.Element => {\n const t = useTranslation();\n const [editor] = useLexicalComposerContext();\n const { flyout, showFlyout, hideFlyout, isVisible } = useFlyout();\n const addTableForm = useRef<addTableForm>(undefined);\n const buttonRef = useRef<HTMLButtonElement>(null);\n const preventOpen = useRef(false);\n const isVisibleRef = useRef(isVisible);\n\n const openFlyout = () => {\n const rect = buttonRef.current?.getBoundingClientRect();\n if (!preventOpen.current && rect) {\n showFlyout({ position: { top: rect.bottom, left: rect.left }, ...flyoutOptions });\n }\n };\n\n const closeFlyout = () => {\n hideFlyout();\n };\n\n const insertTable = (nrOfRows: number, nrOfColumns: number) => {\n editor.update(() => {\n const selection = $getSelection();\n const tableNode = createTable(nrOfRows, nrOfColumns);\n\n const anchorNode =\n ($isRangeSelection(selection) && selection.anchor.getNode()) ||\n ($isNodeSelection(selection) && selection.getNodes()[0]) ||\n null;\n\n const willBeNested = anchorNode ? $getNearestNodeOfType(anchorNode, TableCellNode) : null;\n\n const availibleWidth = willBeNested\n ? getEditorParrentCellWidth(willBeNested, nrOfColumns, editor)\n : getEditorContentWidth(editor) || DEFAULT_EDITOR_WIDTH;\n\n const perCol = Math.max(DEFAULT_COL_WIDTH, Math.floor(availibleWidth / Math.max(1, nrOfColumns)));\n\n const colWidths = Array.from({ length: nrOfColumns }, () => perCol);\n\n (tableNode as TableNode).setColWidths(colWidths);\n\n const tableWrapper = $createTableWrapperNode();\n tableWrapper.append(tableNode);\n if ($isRangeSelection(selection)) {\n selection.insertNodes([tableWrapper]);\n } else {\n $getRoot().append(tableWrapper);\n }\n const firstDescendant = tableWrapper.getFirstDescendant();\n if (firstDescendant) {\n (firstDescendant as TextNode).select();\n }\n });\n\n closeFlyout();\n };\n\n const mutateTable = (action: Actions) => {\n editor.update(() => {\n const selection = $getSelection();\n if ($isRangeSelection(selection)) {\n const anchorNode = selection.anchor.getNode();\n const currentNode = $getTableCellNodeFromLexicalNode(anchorNode);\n\n if ($isTableCellNode(currentNode)) {\n switch (action) {\n case 'insertRowAbove':\n case 'insertRowBelow':\n insertRow(currentNode, action);\n break;\n case 'deleteRow':\n deleteRow(currentNode);\n break;\n case 'insertColumnLeft':\n case 'insertColumnRight':\n insertColumn(currentNode, action);\n break;\n case 'deleteColumn':\n deleteColumn(currentNode);\n break;\n case 'deleteTable':\n deleteTable(currentNode);\n break;\n }\n }\n }\n });\n };\n\n const flyoutOptions = {\n children: (\n <AddTableForm\n onCloseHandler={closeFlyout}\n onSaveHandler={(rows, columns) => insertTable(rows, columns)}\n ref={addTableForm}\n />\n ),\n };\n\n useEffect(() => {\n if (!isVisible) {\n addTableForm.current?.clearForm();\n setTimeout(() => (preventOpen.current = false), PREVENT_OPEN_DELAY);\n } else {\n preventOpen.current = true;\n addTableForm.current?.focusFirstField();\n }\n }, [addTableForm, isVisible]);\n\n useEffect(() => {\n const removeKeyboardShortcut = editor.registerCommand(\n KEY_DOWN_COMMAND,\n (event: KeyboardEvent) => {\n if (event.ctrlKey && event.shiftKey && event.code === 'Digit9') {\n event.preventDefault();\n openFlyout();\n return true;\n }\n return false;\n },\n COMMAND_PRIORITY_EDITOR\n );\n\n return () => {\n removeKeyboardShortcut();\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [editor]);\n\n useEffect(() => {\n isVisibleRef.current = isVisible;\n }, [isVisible]);\n\n useEffect(() => {\n const removeKeydown = (event: KeyboardEvent) => {\n if (event.key === 'Escape' && isVisibleRef.current) {\n event.preventDefault();\n event.stopPropagation();\n closeFlyout();\n }\n };\n\n document.addEventListener('keydown', removeKeydown, { capture: true });\n\n return () => {\n document.removeEventListener('keydown', removeKeydown);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useImperativeHandle(ref, () => ({\n mutateTable,\n }));\n\n return (\n <div className={styles['editor__toolbar-button-group']}>\n <div className={styles['editor__toolbar-button-flyoutwrapper']}>\n <button\n onClick={openFlyout}\n title={t.table.tableTooltip}\n className={clsx(styles['editor__toolbar-button'], isActive && styles[`editor__toolbar-button--active`])}\n aria-label={t.aria.labels.table}\n aria-keyshortcuts={t.aria.keyshortcuts.table}\n ref={buttonRef}\n type=\"button\"\n >\n <Icon name=\"Table\" size={24} />\n </button>\n {flyout}\n </div>\n </div>\n );\n});\n"],"names":["MultiSelectHeader","label","clearTrigger","onClear","jsxs","styles","jsx","Label","Button","MultiSelect","scrollable","noBorder","header","children","Fragment","clsx","MultiSelectItem","AddLinkForm","forwardRef","onCloseHandler","onSaveHandler","isLink","ref","t","useTranslation","url","setUrl","useState","linkText","setLinkText","showLinktextField","setShowLinktextField","urlError","setUrlError","linkTextError","setLinkTextError","firstField","useRef","linkId","useId","textId","handleOpenUrl","ensureHttps","handleUrl","event","handleLinkText","validateUrl","validateUrlWithProtocol","validateLinkText","handleSave","resetForm","handleClose","setDefaults","linktext","focusFirstField","useImperativeHandle","FormField","InputField","Icon","FeedbackBox","AddTableForm","rowCount","setRowCount","columnCount","setColumnCount","rowId","columnId","handleDimentionChange","type","value","useEffect","handleResizeScroll","setScrollableContainers","removeScrollableContainers","TablePlugin","isActive","editor","useLexicalComposerContext","flyout","showFlyout","hideFlyout","isVisible","useFlyout","addTableForm","buttonRef","preventOpen","isVisibleRef","openFlyout","rect","flyoutOptions","closeFlyout","insertTable","nrOfRows","nrOfColumns","selection","$getSelection","tableNode","createTable","anchorNode","$isRangeSelection","$isNodeSelection","willBeNested","$getNearestNodeOfType","TableCellNode","availibleWidth","getEditorParrentCellWidth","getEditorContentWidth","DEFAULT_EDITOR_WIDTH","perCol","DEFAULT_COL_WIDTH","colWidths","tableWrapper","$createTableWrapperNode","$getRoot","firstDescendant","mutateTable","action","currentNode","$getTableCellNodeFromLexicalNode","$isTableCellNode","insertRow","deleteRow","insertColumn","deleteColumn","deleteTable","rows","columns","PREVENT_OPEN_DELAY","removeKeyboardShortcut","KEY_DOWN_COMMAND","COMMAND_PRIORITY_EDITOR","removeKeydown"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.
|
|
1
|
+
._editor__container_1hmqh_1{background-color:var(--new-color-uva-white);display:flex;flex-direction:column}._editor__header_1hmqh_7{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem;min-height:1.5rem}._editor__header-word-count_1hmqh_15{align-self:flex-end;font-size:.875rem;margin-left:.5rem;text-align:right;white-space:nowrap;width:4.5rem}._editor__header-word-count--alert_1hmqh_24{color:var(--new-color-red-600);font-weight:700}._editor_1hmqh_1{border:1px solid var(--new-color-grey-600);border-radius:4px;margin-bottom:.5rem;padding:.25rem}._editor_1hmqh_1:has(._editor__field_1hmqh_36:focus-visible){outline:1px solid var(--new-color-navy-600)}._editor__toolbar_1hmqh_40{align-items:center;display:flex;gap:.25rem;justify-content:flex-start;margin-bottom:.25rem;padding:.25rem}._editor__toolbar-button-group_1hmqh_49{align-items:center;display:flex;gap:.125rem;justify-content:center}._editor__toolbar-button_1hmqh_49{align-items:center;background-color:var(--new-color-uva-white);border:none;border-radius:.25rem;cursor:pointer;display:flex;font-size:1.1rem;height:2rem;justify-content:center;width:2rem}._editor__toolbar-button_1hmqh_49:hover{background-color:var(--new-color-grey-400);border:1px solid var(--new-color-grey-700)}._editor__toolbar-button_1hmqh_49:focus-visible{outline:.125rem dotted var(--new-color-navy-600);outline-offset:.125rem;z-index:1}._editor__toolbar-button--active_1hmqh_80,._editor__toolbar-button_1hmqh_49:active{background-color:var(--new-color-uva-black);border-color:var(--new-color-uva-black);color:var(--new-color-uva-white)}._editor__toolbar-button_1hmqh_49:disabled{border-color:var(--new-color-grey-300);color:var(--new-color-grey-400);cursor:not-allowed}._editor__toolbar-button_1hmqh_49:hover:disabled{background-color:var(--new-color-grey-300);border-color:var(--new-color-grey-300);color:var(--new-color-grey-500);cursor:not-allowed}._editor__toolbar-button--bold_1hmqh_100{font-weight:700}._editor__toolbar-button--italic_1hmqh_104{font-style:italic}._editor__toolbar-button_1hmqh_49:active:hover{color:var(--new-color-uva-white)}._editor__toolbar-button--active_1hmqh_80:hover{color:var(--new-color-uva-black)}._editor__toolbar-button--active_1hmqh_80:disabled{background-color:var(--new-color-grey-300);border-color:var(--new-color-grey-300);color:var(--new-color-grey-500);cursor:not-allowed}._editor__toolbar-button-flyoutwrapper_1hmqh_123,._editor__field-wrapper_1hmqh_127{position:relative}._editor__field-wrapper_1hmqh_127:before{border-top:1px solid var(--new-color-grey-600);content:"";display:block;height:0;margin-left:-.25rem;margin-top:-.3rem;width:calc(100% + .5rem)}._editor__field_1hmqh_36{background-color:var(--new-color-uva-white);margin-top:.5rem;min-height:8rem;overflow-x:hidden;padding:0 .5rem .5rem;position:relative}._editor__field_1hmqh_36::-webkit-scrollbar{cursor:default;width:12px}._editor__field_1hmqh_36::-webkit-scrollbar-track{background:var(--new-color-uva-white)}._editor__field_1hmqh_36::-webkit-scrollbar-thumb{background-color:var(--new-color-grey-500);border:3px solid var(--new-color-uva-white);border-radius:20px;cursor:default}._editor__field_1hmqh_36:focus-visible{outline:none}._editor__placeholder_1hmqh_170{color:var(--new-color-grey-500);left:.45rem;pointer-events:none;position:absolute;top:.55rem}._guide-text-ltr_1hmqh_180{text-align:left}._guide-text-rtl_1hmqh_184{text-align:right}._guide-text-paragraph_1hmqh_188{margin:0;position:relative}._guide-text__text--bold_1hmqh_193{font-weight:700}._guide-text__text--italic_1hmqh_197{font-style:italic}._guide-text__list--ul_1hmqh_201,._guide-text__list--ol_1hmqh_202{list-style-position:inside;margin:0 0 0 -.25rem;padding:.25rem}._guide-text__list--ol_1hmqh_202{list-style-position:outside;list-style-type:decimal;margin:0 0 0 .25rem}._guide-text__list--ul_1hmqh_201 ._guide-text__list--listitem_1hmqh_214{margin:0}._guide-text__list--ol_1hmqh_202 ._guide-text__list--listitem_1hmqh_214{margin-left:.35rem;padding-left:.55rem}._guide-text__list--ol_1hmqh_202 ._guide-text__list--nested-listitem_1hmqh_223,._guide-text__list--ul_1hmqh_201 ._guide-text__list--nested-listitem_1hmqh_223{list-style-type:none;margin-left:1.5rem}._guide-text__list--ol_1hmqh_202 ._guide-text__list--nested-listitem_1hmqh_223{margin-left:1rem}._guide-text__list--ul2_1hmqh_233 ._guide-text__list--listitem_1hmqh_214{list-style-type:circle}._guide-text__list--ul3_1hmqh_237 ._guide-text__list--listitem_1hmqh_214{list-style-type:square}._guide-text__list--ul4_1hmqh_241 ._guide-text__list--listitem_1hmqh_214{list-style-type:disc}._guide-text__list--ul5_1hmqh_245 ._guide-text__list--listitem_1hmqh_214{list-style-type:circle}ul ._guide-text__list--nested-listitem_1hmqh_223 ol{list-style-position:outside;list-style-type:decimal;margin-left:0;padding:.25rem .25rem .25rem .55rem}ul ._guide-text__list--nested-listitem_1hmqh_223 ol ._guide-text__list--listitem_1hmqh_214{list-style-type:decimal;margin-left:.35rem;padding-left:.55rem}ol ._guide-text__list--nested-listitem_1hmqh_223 ul ._guide-text__list--listitem_1hmqh_214{list-style-type:disc;margin-left:.35rem;padding-left:.55rem}ul ._guide-text__list--nested-listitem_1hmqh_223{list-style-type:none!important}ol ._guide-text__list--nested-listitem_1hmqh_223 ul{margin-left:-1.5rem;padding-left:.55rem}
|
|
@@ -18,7 +18,7 @@ import "../IconButton/IconButton.js";
|
|
|
18
18
|
import "../Input/Input.js";
|
|
19
19
|
import "../InputField/InputField.js";
|
|
20
20
|
import "react-router";
|
|
21
|
-
import "../../TablePlugin-
|
|
21
|
+
import "../../TablePlugin-DaKDRL4G.js";
|
|
22
22
|
import "../RteEditor/Providers/LanguageProvider.js";
|
|
23
23
|
import "../RteEditor/Plugins/LinkPlugin/LinkContextMenu/LinkContextMenu.js";
|
|
24
24
|
import "../RteEditor/hooks/components/Flyout.js";
|
|
@@ -17,7 +17,7 @@ import "../IconButton/IconButton.js";
|
|
|
17
17
|
import "../Input/Input.js";
|
|
18
18
|
import "../InputField/InputField.js";
|
|
19
19
|
import "react-router";
|
|
20
|
-
import "../../TablePlugin-
|
|
20
|
+
import "../../TablePlugin-DaKDRL4G.js";
|
|
21
21
|
import "../RteEditor/Providers/LanguageProvider.js";
|
|
22
22
|
import "../RteEditor/Plugins/LinkPlugin/LinkContextMenu/LinkContextMenu.js";
|
|
23
23
|
import "../RteEditor/hooks/components/Flyout.js";
|
|
@@ -17,7 +17,7 @@ import "../GridRow/GridRow.js";
|
|
|
17
17
|
import "../IconButton/IconButton.js";
|
|
18
18
|
import "../Input/Input.js";
|
|
19
19
|
import "react-router";
|
|
20
|
-
import "../../TablePlugin-
|
|
20
|
+
import "../../TablePlugin-DaKDRL4G.js";
|
|
21
21
|
import "../RteEditor/Providers/LanguageProvider.js";
|
|
22
22
|
import "../RteEditor/Plugins/LinkPlugin/LinkContextMenu/LinkContextMenu.js";
|
|
23
23
|
import "../RteEditor/hooks/components/Flyout.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs as S, jsx as r } from "react/jsx-runtime";
|
|
2
2
|
import { l as d } from "../../index-BamlKH-k.js";
|
|
3
3
|
import { useState as p } from "react";
|
|
4
|
-
import { M as e } from "../../TablePlugin-
|
|
4
|
+
import { M as e } from "../../TablePlugin-DaKDRL4G.js";
|
|
5
5
|
import { Container as M } from "../../storyComponents/Container/Container.js";
|
|
6
6
|
const C = `
|
|
7
7
|
// MultiSelectHeader can be added optionally
|
|
@@ -16,7 +16,7 @@ import "../../IconButton/IconButton.js";
|
|
|
16
16
|
import "../../Input/Input.js";
|
|
17
17
|
import "../../InputField/InputField.js";
|
|
18
18
|
import "react-router";
|
|
19
|
-
import { a as A } from "../../../TablePlugin-
|
|
19
|
+
import { a as A } from "../../../TablePlugin-DaKDRL4G.js";
|
|
20
20
|
import "../../RteEditor/Providers/LanguageProvider.js";
|
|
21
21
|
import "../../RteEditor/Plugins/LinkPlugin/LinkContextMenu/LinkContextMenu.js";
|
|
22
22
|
import "../../RteEditor/hooks/components/Flyout.js";
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { jsxs as
|
|
1
|
+
import { jsxs as u, jsx as s } from "react/jsx-runtime";
|
|
2
2
|
import { c as k } from "../../clsx-OuTLNxxd.js";
|
|
3
|
-
import { useRef as v, useState as M, useEffect as
|
|
3
|
+
import { useRef as v, useState as M, useEffect as N } from "react";
|
|
4
4
|
import "../Accordion/Accordion.js";
|
|
5
5
|
import "../Buttons/Button.js";
|
|
6
6
|
import "../Buttons/LinkButton.js";
|
|
7
7
|
import "@react-aria/button";
|
|
8
8
|
import "../Checkbox/Checkbox.js";
|
|
9
|
-
import { CheckboxButtonBar as
|
|
9
|
+
import { CheckboxButtonBar as B } from "../CheckboxButtonBar/CheckboxButtonBar.js";
|
|
10
10
|
import "@react-aria/dialog";
|
|
11
11
|
import "@react-aria/focus";
|
|
12
12
|
import "@react-aria/overlays";
|
|
13
13
|
import "../OverlayCloseButton/OverlayCloseButton.js";
|
|
14
|
-
import { FeedbackBox as
|
|
14
|
+
import { FeedbackBox as D } from "../FeedbackBox/FeedbackBox.js";
|
|
15
15
|
import "../GridRow/GridRow.js";
|
|
16
16
|
import "../IconButton/IconButton.js";
|
|
17
17
|
import "../Input/Input.js";
|
|
18
18
|
import "../InputField/InputField.js";
|
|
19
|
-
import { Label as
|
|
19
|
+
import { Label as I } from "../Label/Label.js";
|
|
20
20
|
import "react-router";
|
|
21
|
-
import "../../TablePlugin-
|
|
21
|
+
import "../../TablePlugin-DaKDRL4G.js";
|
|
22
22
|
import "../RteEditor/Providers/LanguageProvider.js";
|
|
23
23
|
import "../RteEditor/Plugins/LinkPlugin/LinkContextMenu/LinkContextMenu.js";
|
|
24
24
|
import "../RteEditor/hooks/components/Flyout.js";
|
|
@@ -28,67 +28,67 @@ import "../SelectListbox/SelectListbox.js";
|
|
|
28
28
|
import "../SelectListbox/SelectProvider.js";
|
|
29
29
|
import "../Sortable/components/SortableItem.js";
|
|
30
30
|
import "../../SortableProvider-l8-7ClBJ.js";
|
|
31
|
-
import '../../assets/PeriodSelector.css';const
|
|
31
|
+
import '../../assets/PeriodSelector.css';const l = {
|
|
32
32
|
"period-selector__container": "_period-selector__container_1txwd_1",
|
|
33
33
|
"period-selector__container--label-left": "_period-selector__container--label-left_1txwd_6",
|
|
34
34
|
"period-selector__container--label-top": "_period-selector__container--label-top_1txwd_12",
|
|
35
35
|
"period-selector__selector-container": "_period-selector__selector-container_1txwd_18",
|
|
36
36
|
"period-selector__selector-row": "_period-selector__selector-row_1txwd_24"
|
|
37
|
-
},
|
|
37
|
+
}, f = 0, h = 1, S = 2, E = 3, j = 7, A = (c) => {
|
|
38
38
|
const n = [];
|
|
39
|
-
for (let o = 0; o <
|
|
40
|
-
n.push(
|
|
39
|
+
for (let o = 0; o < c.length; o += E)
|
|
40
|
+
n.push(c.slice(o, o + E));
|
|
41
41
|
return n;
|
|
42
|
-
},
|
|
43
|
-
maxPeriods:
|
|
42
|
+
}, _r = ({
|
|
43
|
+
maxPeriods: c = j,
|
|
44
44
|
defaultValues: n,
|
|
45
45
|
label: o,
|
|
46
46
|
labelPosition: b = "top",
|
|
47
|
-
required:
|
|
47
|
+
required: _ = !1,
|
|
48
48
|
notValidatedText: p = "",
|
|
49
49
|
onChange: x
|
|
50
50
|
}) => {
|
|
51
|
-
const g = Array.from({ length:
|
|
52
|
-
label:
|
|
51
|
+
const g = Array.from({ length: c }, (r, e) => e + 1), m = A(g), w = m.map((r, e) => r.map((t) => ({
|
|
52
|
+
label: t.toString(),
|
|
53
53
|
value: t.toString()
|
|
54
|
-
}))),
|
|
55
|
-
|
|
56
|
-
(
|
|
54
|
+
}))), i = v(
|
|
55
|
+
m.map(
|
|
56
|
+
(r) => r.reduce((e, t) => (n?.includes(t) && e.push(t), e), [])
|
|
57
57
|
)
|
|
58
|
-
), [R,
|
|
59
|
-
|
|
58
|
+
), [R, a] = M([]), d = (r) => r[f].length !== 0 || r[h].length !== 0 ? [S] : r[S].length !== 0 ? [f, h] : [], P = (r, e) => {
|
|
59
|
+
i.current[e] = r.map((t) => Number(t)), a(d(i.current)), x([...i.current.flat()].sort());
|
|
60
60
|
};
|
|
61
|
-
return
|
|
62
|
-
d(
|
|
63
|
-
}, []), /* @__PURE__ */
|
|
61
|
+
return N(() => {
|
|
62
|
+
a(d(i.current));
|
|
63
|
+
}, []), /* @__PURE__ */ u(
|
|
64
64
|
"div",
|
|
65
65
|
{
|
|
66
66
|
className: k(
|
|
67
|
-
|
|
68
|
-
|
|
67
|
+
l["period-selector__container"],
|
|
68
|
+
l[`period-selector__container--label-${b}`]
|
|
69
69
|
),
|
|
70
70
|
children: [
|
|
71
|
-
o && /* @__PURE__ */
|
|
72
|
-
/* @__PURE__ */
|
|
73
|
-
/* @__PURE__ */
|
|
74
|
-
|
|
71
|
+
o && /* @__PURE__ */ s(I, { htmlFor: "", required: _, children: o }),
|
|
72
|
+
/* @__PURE__ */ u("div", { className: l["period-selector__selector-container"], children: [
|
|
73
|
+
/* @__PURE__ */ s("div", { className: l["period-selector__selector-row"], children: w.map((r, e) => /* @__PURE__ */ s(
|
|
74
|
+
B,
|
|
75
75
|
{
|
|
76
|
-
checkboxes:
|
|
77
|
-
defaultValues:
|
|
78
|
-
disableGroup: R.includes(
|
|
79
|
-
required:
|
|
80
|
-
onSetValues: (t) => P(t,
|
|
76
|
+
checkboxes: r,
|
|
77
|
+
defaultValues: i.current[e].map((t) => t.toString()),
|
|
78
|
+
disableGroup: R.includes(e),
|
|
79
|
+
required: _,
|
|
80
|
+
onSetValues: (t) => P(t, e),
|
|
81
81
|
notValidated: p !== ""
|
|
82
82
|
},
|
|
83
|
-
`group_${
|
|
83
|
+
`group_${e}`
|
|
84
84
|
)) }),
|
|
85
|
-
p !== "" && /* @__PURE__ */
|
|
85
|
+
p !== "" && /* @__PURE__ */ s(D, { level: "error", feedback: p })
|
|
86
86
|
] })
|
|
87
87
|
]
|
|
88
88
|
}
|
|
89
89
|
);
|
|
90
90
|
};
|
|
91
91
|
export {
|
|
92
|
-
|
|
92
|
+
_r as PeriodSelector
|
|
93
93
|
};
|
|
94
94
|
//# sourceMappingURL=PeriodSelector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PeriodSelector.js","sources":["../../../src/components/PeriodSelector/PeriodSelector.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport { useEffect, useRef, useState } from 'react';\n\nimport styles from './PeriodSelector.module.css';\n\nimport { Label, CheckboxButtonBar, FeedbackBox } from 'components';\n\nexport interface PeriodSelectorProps {\n /** Indicates how many periods are shown. */\n // eslint-disable-next-line @typescript-eslint/no-magic-numbers\n maxPeriods: 6 | 7;\n /** array of period values [3, 5 ...] */\n defaultValues?: number[];\n label?: string;\n labelPosition?: 'top' | 'left';\n /** Shows red * */\n required?: boolean;\n /** error text to display if set */\n notValidatedText?: string;\n /** Returns array of selected values as number */\n onChange: (values: number[]) => void;\n}\n\nconst SEMESTER_1 = 0;\nconst SEMESTER_2 = 1;\nconst SEMESTER_3 = 2;\n\nconst PERIODS_PER_SEMESTER = 3;\nconst MAX_PERIODS = 7;\n\nconst chunkPeriods = (array: number[]): number[][] => {\n const result: number[][] = [];\n for (let count = 0; count < array.length; count += PERIODS_PER_SEMESTER) {\n result.push(array.slice(count, count + PERIODS_PER_SEMESTER));\n }\n return result;\n};\n\n/** Checkbox group for selecting periods */\nexport const PeriodSelector = ({\n maxPeriods = MAX_PERIODS,\n defaultValues,\n label,\n labelPosition = 'top',\n required = false,\n notValidatedText = '',\n onChange,\n}: PeriodSelectorProps) => {\n const maxPeriodsList = Array.from({ length: maxPeriods }, (_, index) => index + 1);\n const chunkedPeriods = chunkPeriods(maxPeriodsList);\n\n const checkboxItems = chunkedPeriods.map((periods,
|
|
1
|
+
{"version":3,"file":"PeriodSelector.js","sources":["../../../src/components/PeriodSelector/PeriodSelector.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport { useEffect, useRef, useState } from 'react';\n\nimport styles from './PeriodSelector.module.css';\n\nimport { Label, CheckboxButtonBar, FeedbackBox } from 'components';\n\nexport interface PeriodSelectorProps {\n /** Indicates how many periods are shown. */\n // eslint-disable-next-line @typescript-eslint/no-magic-numbers\n maxPeriods: 6 | 7;\n /** array of period values [3, 5 ...] */\n defaultValues?: number[];\n label?: string;\n labelPosition?: 'top' | 'left';\n /** Shows red * */\n required?: boolean;\n /** error text to display if set */\n notValidatedText?: string;\n /** Returns array of selected values as number */\n onChange: (values: number[]) => void;\n}\n\nconst SEMESTER_1 = 0;\nconst SEMESTER_2 = 1;\nconst SEMESTER_3 = 2;\n\nconst PERIODS_PER_SEMESTER = 3;\nconst MAX_PERIODS = 7;\n\nconst chunkPeriods = (array: number[]): number[][] => {\n const result: number[][] = [];\n for (let count = 0; count < array.length; count += PERIODS_PER_SEMESTER) {\n result.push(array.slice(count, count + PERIODS_PER_SEMESTER));\n }\n return result;\n};\n\n/** Checkbox group for selecting periods */\nexport const PeriodSelector = ({\n maxPeriods = MAX_PERIODS,\n defaultValues,\n label,\n labelPosition = 'top',\n required = false,\n notValidatedText = '',\n onChange,\n}: PeriodSelectorProps) => {\n const maxPeriodsList = Array.from({ length: maxPeriods }, (_, index) => index + 1);\n const chunkedPeriods = chunkPeriods(maxPeriodsList);\n\n const checkboxItems = chunkedPeriods.map((periods, _) => {\n return periods.map((period) => ({\n label: period.toString(),\n value: period.toString(),\n }));\n });\n\n const returnValues = useRef<number[][]>(\n chunkedPeriods.map((semester) =>\n semester.reduce((periods, period) => {\n if (defaultValues?.includes(period)) periods.push(period);\n return periods;\n }, [] as number[])\n )\n );\n const [disableSemesters, setDisableSemesters] = useState<number[]>([]);\n\n const disableGroups = (selects: number[][]) => {\n if (selects[SEMESTER_1].length !== 0 || selects[SEMESTER_2].length !== 0) return [SEMESTER_3];\n if (selects[SEMESTER_3].length !== 0) return [SEMESTER_1, SEMESTER_2];\n return [];\n };\n\n const handleChange = (values: string[], index: number) => {\n returnValues.current[index] = values.map((num) => Number(num));\n setDisableSemesters(disableGroups(returnValues.current));\n onChange([...returnValues.current.flat()].sort());\n };\n\n useEffect(() => {\n setDisableSemesters(disableGroups(returnValues.current));\n }, []);\n\n return (\n <div\n className={clsx(\n styles['period-selector__container'],\n styles[`period-selector__container--label-${labelPosition}`]\n )}\n >\n {label && (\n <Label htmlFor=\"\" required={required}>\n {label}\n </Label>\n )}\n <div className={styles['period-selector__selector-container']}>\n <div className={styles['period-selector__selector-row']}>\n {checkboxItems.map((checkboxes, semester) => (\n <CheckboxButtonBar\n key={`group_${semester}`}\n checkboxes={checkboxes}\n defaultValues={returnValues.current[semester].map((num) => num.toString())}\n disableGroup={disableSemesters.includes(semester)}\n required={required}\n onSetValues={(event) => handleChange(event, semester)}\n notValidated={notValidatedText !== ''}\n />\n ))}\n </div>\n {notValidatedText !== '' && <FeedbackBox level=\"error\" feedback={notValidatedText} />}\n </div>\n </div>\n );\n};\n"],"names":["SEMESTER_1","SEMESTER_2","SEMESTER_3","PERIODS_PER_SEMESTER","MAX_PERIODS","chunkPeriods","array","result","count","PeriodSelector","maxPeriods","defaultValues","label","labelPosition","required","notValidatedText","onChange","maxPeriodsList","_","index","chunkedPeriods","checkboxItems","periods","period","returnValues","useRef","semester","disableSemesters","setDisableSemesters","useState","disableGroups","selects","handleChange","values","num","useEffect","jsxs","clsx","styles","jsx","Label","checkboxes","CheckboxButtonBar","event","FeedbackBox"],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ import "../GridRow/GridRow.js";
|
|
|
18
18
|
import "../IconButton/IconButton.js";
|
|
19
19
|
import "../Input/Input.js";
|
|
20
20
|
import "../InputField/InputField.js";
|
|
21
|
-
import "../../TablePlugin-
|
|
21
|
+
import "../../TablePlugin-DaKDRL4G.js";
|
|
22
22
|
import "../RteEditor/Providers/LanguageProvider.js";
|
|
23
23
|
import "../RteEditor/Plugins/LinkPlugin/LinkContextMenu/LinkContextMenu.js";
|
|
24
24
|
import "../RteEditor/hooks/components/Flyout.js";
|
|
@@ -18,7 +18,7 @@ import "../IconButton/IconButton.js";
|
|
|
18
18
|
import "../Input/Input.js";
|
|
19
19
|
import "../InputField/InputField.js";
|
|
20
20
|
import "react-router";
|
|
21
|
-
import "../../TablePlugin-
|
|
21
|
+
import "../../TablePlugin-DaKDRL4G.js";
|
|
22
22
|
import "../RteEditor/Providers/LanguageProvider.js";
|
|
23
23
|
import "../RteEditor/Plugins/LinkPlugin/LinkContextMenu/LinkContextMenu.js";
|
|
24
24
|
import "../RteEditor/hooks/components/Flyout.js";
|
|
@@ -15,7 +15,7 @@ import "../../IconButton/IconButton.js";
|
|
|
15
15
|
import "../../Input/Input.js";
|
|
16
16
|
import "../../InputField/InputField.js";
|
|
17
17
|
import "react-router";
|
|
18
|
-
import "../../../TablePlugin-
|
|
18
|
+
import "../../../TablePlugin-DaKDRL4G.js";
|
|
19
19
|
import "../Providers/LanguageProvider.js";
|
|
20
20
|
import "../Plugins/LinkPlugin/LinkContextMenu/LinkContextMenu.js";
|
|
21
21
|
import "../hooks/components/Flyout.js";
|
|
@@ -4,7 +4,7 @@ import { c as f } from "../../../../clsx-OuTLNxxd.js";
|
|
|
4
4
|
import { w as _, a as p, U as h } from "../../../../Lexical.prod-nXWuyOKD.js";
|
|
5
5
|
import { useState as l, useEffect as k } from "react";
|
|
6
6
|
import { Icon as I } from "../../../Icon/Icon.js";
|
|
7
|
-
import { s as a } from "../../../../RteEditor.module-
|
|
7
|
+
import { s as a } from "../../../../RteEditor.module-CovRFt0S.js";
|
|
8
8
|
import { useTranslation as B } from "../../hooks/useTranslation.js";
|
|
9
9
|
const C = {
|
|
10
10
|
bold: "Bold",
|
|
@@ -18,8 +18,8 @@ import "../../../IconButton/IconButton.js";
|
|
|
18
18
|
import "../../../Input/Input.js";
|
|
19
19
|
import "../../../InputField/InputField.js";
|
|
20
20
|
import "react-router";
|
|
21
|
-
import "../../../../TablePlugin-
|
|
22
|
-
import { s as r } from "../../../../RteEditor.module-
|
|
21
|
+
import "../../../../TablePlugin-DaKDRL4G.js";
|
|
22
|
+
import { s as r } from "../../../../RteEditor.module-CovRFt0S.js";
|
|
23
23
|
import { useTranslation as x } from "../../hooks/useTranslation.js";
|
|
24
24
|
import "../LinkPlugin/LinkContextMenu/LinkContextMenu.js";
|
|
25
25
|
import "../../hooks/components/Flyout.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "react/jsx-runtime";
|
|
2
2
|
import "react";
|
|
3
|
-
import { A as G } from "../../../../../TablePlugin-
|
|
3
|
+
import { A as G } from "../../../../../TablePlugin-DaKDRL4G.js";
|
|
4
4
|
import "../../../../../helpers-mE437H2Y.js";
|
|
5
5
|
import "../../../../Accordion/Accordion.js";
|
|
6
6
|
import "../../../../Icon/Icon.js";
|
|
@@ -4,7 +4,7 @@ import { c as Y } from "../../../../clsx-OuTLNxxd.js";
|
|
|
4
4
|
import { p as O, k as q, v as G } from "../../../../LexicalLink.prod-Brzpgs_K.js";
|
|
5
5
|
import { useRef as a, useState as J, useEffect as m } from "react";
|
|
6
6
|
import { a2 as X, w as p, u as Z, as as $, a as w, I as tt, k as et, Q as ot } from "../../../../Lexical.prod-nXWuyOKD.js";
|
|
7
|
-
import { A as rt } from "../../../../TablePlugin-
|
|
7
|
+
import { A as rt } from "../../../../TablePlugin-DaKDRL4G.js";
|
|
8
8
|
import { e as nt } from "../../../../helpers-mE437H2Y.js";
|
|
9
9
|
import { LinkContextMenu as it } from "./LinkContextMenu/LinkContextMenu.js";
|
|
10
10
|
import { useFlyout as st } from "../../hooks/useFlyout.js";
|
|
@@ -24,7 +24,7 @@ import "../../../Input/Input.js";
|
|
|
24
24
|
import "../../../InputField/InputField.js";
|
|
25
25
|
import "react-router";
|
|
26
26
|
import { setScrollableContainers as K, removeScrollableContainers as lt } from "../../helpers.js";
|
|
27
|
-
import { s as h } from "../../../../RteEditor.module-
|
|
27
|
+
import { s as h } from "../../../../RteEditor.module-CovRFt0S.js";
|
|
28
28
|
import { useTranslation as at } from "../../hooks/useTranslation.js";
|
|
29
29
|
import "react-dom";
|
|
30
30
|
import "../../../../index-yEhaxKq-.js";
|
|
@@ -6,7 +6,7 @@ import { useState as p, useEffect as K } from "react";
|
|
|
6
6
|
import { c as x } from "../../../../clsx-OuTLNxxd.js";
|
|
7
7
|
import { as as O, I as U, a0 as B, w as b, a as h, K as E, F } from "../../../../Lexical.prod-nXWuyOKD.js";
|
|
8
8
|
import { Icon as T } from "../../../Icon/Icon.js";
|
|
9
|
-
import { s as l } from "../../../../RteEditor.module-
|
|
9
|
+
import { s as l } from "../../../../RteEditor.module-CovRFt0S.js";
|
|
10
10
|
import { useTranslation as $ } from "../../hooks/useTranslation.js";
|
|
11
11
|
const j = {
|
|
12
12
|
bullet: "BulletList",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "react/jsx-runtime";
|
|
2
2
|
import "react";
|
|
3
|
-
import { b as D } from "../../../../TablePlugin-
|
|
3
|
+
import { b as D } from "../../../../TablePlugin-DaKDRL4G.js";
|
|
4
4
|
import "../../../Accordion/Accordion.js";
|
|
5
5
|
import "../../../Buttons/Button.js";
|
|
6
6
|
import "../../../Buttons/LinkButton.js";
|
|
@@ -5,7 +5,7 @@ import "../../../../LexicalTable.prod-DJktN6jF.js";
|
|
|
5
5
|
import "../../../../Lexical.prod-nXWuyOKD.js";
|
|
6
6
|
import "../../../../LexicalUtils.prod-Ckfw0Hjt.js";
|
|
7
7
|
import "react";
|
|
8
|
-
import { T as J } from "../../../../TablePlugin-
|
|
8
|
+
import { T as J } from "../../../../TablePlugin-DaKDRL4G.js";
|
|
9
9
|
import "./helpers.js";
|
|
10
10
|
import "../../nodes/TableWrapperNode/TableWrapperNode.js";
|
|
11
11
|
import "../../hooks/useFlyout.js";
|
|
@@ -24,7 +24,7 @@ import "../../../IconButton/IconButton.js";
|
|
|
24
24
|
import "../../../Input/Input.js";
|
|
25
25
|
import "../../../InputField/InputField.js";
|
|
26
26
|
import "react-router";
|
|
27
|
-
import "../../../../RteEditor.module-
|
|
27
|
+
import "../../../../RteEditor.module-CovRFt0S.js";
|
|
28
28
|
import "../../hooks/useTranslation.js";
|
|
29
29
|
import "../LinkPlugin/LinkContextMenu/LinkContextMenu.js";
|
|
30
30
|
import "react-dom";
|
|
@@ -7,11 +7,11 @@ import { BlockFormatPlugin as T } from "../BlockFormatPlugin/BlockFormatPlugin.j
|
|
|
7
7
|
import { ListPlugin as N } from "../ListPlugin/ListPlugin.js";
|
|
8
8
|
import { LinkPlugin as x } from "../LinkPlugin/LinkPlugin.js";
|
|
9
9
|
import { HistoryPlugin as B } from "../HistoryPlugin/HistoryPlugin.js";
|
|
10
|
-
import { T as S } from "../../../../TablePlugin-
|
|
10
|
+
import { T as S } from "../../../../TablePlugin-DaKDRL4G.js";
|
|
11
11
|
import { TableCellContextMenu as z } from "../TablePlugin/TableCellContextMenu/TableCellContextMenu.js";
|
|
12
12
|
import "react-dom";
|
|
13
13
|
import "../../../../index-yEhaxKq-.js";
|
|
14
|
-
import { s as A } from "../../../../RteEditor.module-
|
|
14
|
+
import { s as A } from "../../../../RteEditor.module-CovRFt0S.js";
|
|
15
15
|
import { setScrollableContainers as w, removeScrollableContainers as K } from "../../helpers.js";
|
|
16
16
|
const V = ({ editorScrollPosition: m }) => {
|
|
17
17
|
const [t] = y(), [r, i] = L(null), d = E(null), u = k(() => {
|
|
@@ -3,7 +3,7 @@ import { BlockFormatPlugin as t } from "./BlockFormatPlugin/BlockFormatPlugin.js
|
|
|
3
3
|
import { ListPlugin as n } from "./ListPlugin/ListPlugin.js";
|
|
4
4
|
import { LinkPlugin as g, getLinkNodeTag as m } from "./LinkPlugin/LinkPlugin.js";
|
|
5
5
|
import { HistoryPlugin as f } from "./HistoryPlugin/HistoryPlugin.js";
|
|
6
|
-
import { T as u } from "../../../TablePlugin-
|
|
6
|
+
import { T as u } from "../../../TablePlugin-DaKDRL4G.js";
|
|
7
7
|
import { TableCellContextMenu as T } from "./TablePlugin/TableCellContextMenu/TableCellContextMenu.js";
|
|
8
8
|
import { T as b } from "../../../TableCellResizerPlugin-DFzNK-ve.js";
|
|
9
9
|
import { PasteHandlerPlugin as C } from "./PasteHandlerPlugin/PasteHandlerPlugin.js";
|
|
@@ -14,10 +14,10 @@ import { s as er, d as tr, b as He, e as rr, w as nr, S as or, y as Je, O as ar
|
|
|
14
14
|
import { a as sr, w as ir, M as lr } from "../../helpers-mE437H2Y.js";
|
|
15
15
|
import { c as ur } from "../../clsx-OuTLNxxd.js";
|
|
16
16
|
import { exportMap as cr, isStartingWithHtmlTag as dr, mergeBoldStrongTags as fr, cleanUpTable as mr } from "./helpers.js";
|
|
17
|
-
import { s as R } from "../../RteEditor.module-
|
|
17
|
+
import { s as R } from "../../RteEditor.module-CovRFt0S.js";
|
|
18
18
|
import { ToolBarPlugin as pr } from "./Plugins/ToolbarPlugin/ToolbarPlugin.js";
|
|
19
19
|
import { useTranslation as gr } from "./hooks/useTranslation.js";
|
|
20
|
-
import "../../TablePlugin-
|
|
20
|
+
import "../../TablePlugin-DaKDRL4G.js";
|
|
21
21
|
import "./Plugins/LinkPlugin/LinkContextMenu/LinkContextMenu.js";
|
|
22
22
|
import "./hooks/components/Flyout.js";
|
|
23
23
|
import "../Accordion/Accordion.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useState as
|
|
3
|
-
import { RteEditor as
|
|
4
|
-
import { MOCK_RTE_CONTENT as
|
|
1
|
+
import { jsxs as n, Fragment as a, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { useState as s } from "react";
|
|
3
|
+
import { RteEditor as i } from "./RteEditor.js";
|
|
4
|
+
import { MOCK_RTE_CONTENT as p } from "./mockRteContent.js";
|
|
5
5
|
import { Container as u } from "../../storyComponents/Container/Container.js";
|
|
6
6
|
const g = `<RteEditor
|
|
7
7
|
initialValue=""
|
|
@@ -13,15 +13,15 @@ const g = `<RteEditor
|
|
|
13
13
|
onChange={handleChange}
|
|
14
14
|
/>`, v = {
|
|
15
15
|
title: "Organisms/RteEditor",
|
|
16
|
-
component:
|
|
16
|
+
component: i,
|
|
17
17
|
parameters: {
|
|
18
|
-
inspectComponent:
|
|
18
|
+
inspectComponent: i,
|
|
19
19
|
codeString: g
|
|
20
20
|
}
|
|
21
|
-
},
|
|
22
|
-
const [
|
|
23
|
-
return /* @__PURE__ */
|
|
24
|
-
/* @__PURE__ */ e(u, { size: "large-full-height", children: /* @__PURE__ */ e(
|
|
21
|
+
}, m = (l) => {
|
|
22
|
+
const [r, t] = s(l.initialValue || "");
|
|
23
|
+
return /* @__PURE__ */ n(a, { children: [
|
|
24
|
+
/* @__PURE__ */ e(u, { size: "large-full-height", children: /* @__PURE__ */ e(i, { ...l, onChange: (d) => t(d) }) }),
|
|
25
25
|
/* @__PURE__ */ e("br", {}),
|
|
26
26
|
/* @__PURE__ */ e("br", {}),
|
|
27
27
|
/* @__PURE__ */ e("p", { style: { margin: "0", marginTop: "2rem" }, children: "HTML Output:" }),
|
|
@@ -35,11 +35,11 @@ const g = `<RteEditor
|
|
|
35
35
|
borderRadius: "0.25rem",
|
|
36
36
|
color: "#666"
|
|
37
37
|
},
|
|
38
|
-
children:
|
|
38
|
+
children: r
|
|
39
39
|
}
|
|
40
40
|
)
|
|
41
41
|
] });
|
|
42
|
-
}, c =
|
|
42
|
+
}, c = m.bind({});
|
|
43
43
|
c.args = {
|
|
44
44
|
placeholder: "Voeg hier tekst in...",
|
|
45
45
|
currentLanguage: "NL",
|
|
@@ -47,11 +47,50 @@ c.args = {
|
|
|
47
47
|
info: "Studiemateriaal is essentieel voor succesvol leren. Het omvat boeken, artikelen, video's en oefeningen die studenten helpen hun kennis te vergroten, vaardigheden te ontwikkelen en hun studieprestaties te verbeteren.",
|
|
48
48
|
required: !0,
|
|
49
49
|
maxWords: 100,
|
|
50
|
-
initialValue:
|
|
50
|
+
initialValue: p
|
|
51
51
|
};
|
|
52
52
|
const C = () => {
|
|
53
|
-
const [
|
|
54
|
-
|
|
53
|
+
const [l, r] = s(
|
|
54
|
+
"Editor 1 <ul><li>aap</li><li>noot</li><li>mies</li></ul><ol><li>een</li><li>twee</li><li>drie</li></ol><p></p><ul><li>nesting</li><li><ul><li>nested 1</li><li>nested 2</li><li><ul><li>deep nested 1</li><li>deep nested 2</li><li><ul><li>deeper nested 1</li><li>deeper nested 2</li><li><ul><li>deepest nested 1</li><li>deepest nested 2</li></ul></li></ul></li></ul></li></ul></li><li>nesting end</li></ul><p></p><ol><li>nesting</li><li><ol><li>nested 1</li><li>nested 2</li><li><ol><li>deep nested 1</li><li>deep nested 2</li><li><ol><li>deeper nested 1</li><li>deeper nested 2</li><li><ol><li>deepest nested 1</li><li>deepest nested 2</li></ol></li></ol></li></ol></li></ol></li><li>nesting end</li></ol>"
|
|
55
|
+
), [t, d] = s(
|
|
56
|
+
`<p>Editor 2</p>
|
|
57
|
+
<ul>
|
|
58
|
+
<li>nesting</li>
|
|
59
|
+
<li>
|
|
60
|
+
<ol>
|
|
61
|
+
<li>nested 1</li>
|
|
62
|
+
<li>nested 2</li>
|
|
63
|
+
</ol>
|
|
64
|
+
</li>
|
|
65
|
+
<li>nesting 2</li>
|
|
66
|
+
<li>
|
|
67
|
+
<ul>
|
|
68
|
+
<li>deep nested 1</li>
|
|
69
|
+
<li>deep nested 2</li>
|
|
70
|
+
<li>
|
|
71
|
+
<ol>
|
|
72
|
+
<li>deeper nested 1</li>
|
|
73
|
+
<li>
|
|
74
|
+
<ul>
|
|
75
|
+
<li>deepest nested 1</li>
|
|
76
|
+
<li>deepest nested 2</li>
|
|
77
|
+
</ul>
|
|
78
|
+
</li>
|
|
79
|
+
<li>deeper nested 2</li>
|
|
80
|
+
<li>
|
|
81
|
+
<ol>
|
|
82
|
+
<li>deepest nested 1</li>
|
|
83
|
+
<li>deepest nested 2</li>
|
|
84
|
+
</ol>
|
|
85
|
+
</li>
|
|
86
|
+
</ol>
|
|
87
|
+
</li>
|
|
88
|
+
</ul>
|
|
89
|
+
</li>
|
|
90
|
+
<li>nesting end</li>
|
|
91
|
+
</ul>`
|
|
92
|
+
);
|
|
93
|
+
return /* @__PURE__ */ n(
|
|
55
94
|
"div",
|
|
56
95
|
{
|
|
57
96
|
style: {
|
|
@@ -63,16 +102,16 @@ const C = () => {
|
|
|
63
102
|
backgroundColor: "#FFF"
|
|
64
103
|
},
|
|
65
104
|
children: [
|
|
66
|
-
/* @__PURE__ */
|
|
105
|
+
/* @__PURE__ */ n("div", { style: { flex: "1" }, children: [
|
|
67
106
|
/* @__PURE__ */ e(
|
|
68
|
-
|
|
107
|
+
i,
|
|
69
108
|
{
|
|
70
|
-
initialValue:
|
|
109
|
+
initialValue: l,
|
|
71
110
|
label: "Editor 1",
|
|
72
111
|
info: "Uitleg over editor 1",
|
|
73
112
|
placeholder: "Voeg hier tekst in...",
|
|
74
113
|
notValidatedText: "",
|
|
75
|
-
onChange: (
|
|
114
|
+
onChange: (o) => r(o)
|
|
76
115
|
}
|
|
77
116
|
),
|
|
78
117
|
/* @__PURE__ */ e("br", {}),
|
|
@@ -87,20 +126,20 @@ const C = () => {
|
|
|
87
126
|
borderRadius: "0.25rem",
|
|
88
127
|
color: "#666"
|
|
89
128
|
},
|
|
90
|
-
children:
|
|
129
|
+
children: l
|
|
91
130
|
}
|
|
92
131
|
)
|
|
93
132
|
] }),
|
|
94
|
-
/* @__PURE__ */
|
|
133
|
+
/* @__PURE__ */ n("div", { style: { flex: "1" }, children: [
|
|
95
134
|
/* @__PURE__ */ e(
|
|
96
|
-
|
|
135
|
+
i,
|
|
97
136
|
{
|
|
98
|
-
initialValue:
|
|
137
|
+
initialValue: t,
|
|
99
138
|
label: "Editor 2",
|
|
100
139
|
info: "Uitleg over editor 2 wat langer om te kijken of dat ook goed gaat, want je weet maar nooit.",
|
|
101
140
|
placeholder: "Voeg hier tekst in...",
|
|
102
141
|
notValidatedText: "",
|
|
103
|
-
onChange: (
|
|
142
|
+
onChange: (o) => d(o)
|
|
104
143
|
}
|
|
105
144
|
),
|
|
106
145
|
/* @__PURE__ */ e("br", {}),
|
|
@@ -115,7 +154,7 @@ const C = () => {
|
|
|
115
154
|
borderRadius: "0.25rem",
|
|
116
155
|
color: "#666"
|
|
117
156
|
},
|
|
118
|
-
children:
|
|
157
|
+
children: t
|
|
119
158
|
}
|
|
120
159
|
)
|
|
121
160
|
] })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RteEditor.stories.js","sources":["../../../src/components/RteEditor/RteEditor.stories.tsx"],"sourcesContent":["import { useState, type PropsWithChildren } from 'react';\n\nimport type { Meta, StoryFn } from '@storybook/react';\nimport type { RteEditorProps } from './RteEditor';\n\nimport { RteEditor } from './RteEditor';\nimport { MOCK_RTE_CONTENT } from './mockRteContent';\n\nimport { Container } from 'storyComponents/Container';\n\nconst codeString = `<RteEditor\n initialValue=\"\"\n currentLanguage=\"NL\"\n label=\"\"\n info=\"\"\n placeholder=\"\"\n notValidatedText=\"\"\n onChange={handleChange}\n />`;\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Organisms/RteEditor',\n component: RteEditor,\n parameters: {\n inspectComponent: RteEditor,\n codeString: codeString,\n },\n} as Meta<PropsWithChildren<RteEditorProps>>;\n\nconst Template: StoryFn<PropsWithChildren<RteEditorProps>> = (args) => {\n const [result, setResult] = useState<string>(args.initialValue || '');\n\n return (\n <>\n <Container size=\"large-full-height\">\n <RteEditor {...args} onChange={(evt) => setResult(evt)} />\n </Container>\n <br />\n <br />\n\n <p style={{ margin: '0', marginTop: '2rem' }}>HTML Output:</p>\n <div\n style={{\n marginTop: '0rem',\n padding: '1rem',\n backgroundColor: '#F9F9F9',\n borderRadius: '0.25rem',\n color: '#666',\n }}\n >\n {result}\n </div>\n </>\n );\n};\n\nexport const RteEditorExample = Template.bind({});\n\nRteEditorExample.args = {\n placeholder: 'Voeg hier tekst in...',\n currentLanguage: 'NL',\n label: 'Studiemateriaal',\n info: \"Studiemateriaal is essentieel voor succesvol leren. Het omvat boeken, artikelen, video's en oefeningen die studenten helpen hun kennis te vergroten, vaardigheden te ontwikkelen en hun studieprestaties te verbeteren.\",\n required: true,\n maxWords: 100,\n initialValue: MOCK_RTE_CONTENT,\n};\n\nexport const MultipleRteEditors = () => {\n const [result01, setResult01] = useState<string>('Editor 1 <ul><li>aap</li>
|
|
1
|
+
{"version":3,"file":"RteEditor.stories.js","sources":["../../../src/components/RteEditor/RteEditor.stories.tsx"],"sourcesContent":["import { useState, type PropsWithChildren } from 'react';\n\nimport type { Meta, StoryFn } from '@storybook/react';\nimport type { RteEditorProps } from './RteEditor';\n\nimport { RteEditor } from './RteEditor';\nimport { MOCK_RTE_CONTENT } from './mockRteContent';\n\nimport { Container } from 'storyComponents/Container';\n\nconst codeString = `<RteEditor\n initialValue=\"\"\n currentLanguage=\"NL\"\n label=\"\"\n info=\"\"\n placeholder=\"\"\n notValidatedText=\"\"\n onChange={handleChange}\n />`;\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Organisms/RteEditor',\n component: RteEditor,\n parameters: {\n inspectComponent: RteEditor,\n codeString: codeString,\n },\n} as Meta<PropsWithChildren<RteEditorProps>>;\n\nconst Template: StoryFn<PropsWithChildren<RteEditorProps>> = (args) => {\n const [result, setResult] = useState<string>(args.initialValue || '');\n\n return (\n <>\n <Container size=\"large-full-height\">\n <RteEditor {...args} onChange={(evt) => setResult(evt)} />\n </Container>\n <br />\n <br />\n\n <p style={{ margin: '0', marginTop: '2rem' }}>HTML Output:</p>\n <div\n style={{\n marginTop: '0rem',\n padding: '1rem',\n backgroundColor: '#F9F9F9',\n borderRadius: '0.25rem',\n color: '#666',\n }}\n >\n {result}\n </div>\n </>\n );\n};\n\nexport const RteEditorExample = Template.bind({});\n\nRteEditorExample.args = {\n placeholder: 'Voeg hier tekst in...',\n currentLanguage: 'NL',\n label: 'Studiemateriaal',\n info: \"Studiemateriaal is essentieel voor succesvol leren. Het omvat boeken, artikelen, video's en oefeningen die studenten helpen hun kennis te vergroten, vaardigheden te ontwikkelen en hun studieprestaties te verbeteren.\",\n required: true,\n maxWords: 100,\n initialValue: MOCK_RTE_CONTENT,\n};\n\nexport const MultipleRteEditors = () => {\n const [result01, setResult01] = useState<string>(\n 'Editor 1 <ul><li>aap</li><li>noot</li><li>mies</li></ul><ol><li>een</li><li>twee</li><li>drie</li></ol><p></p><ul><li>nesting</li><li><ul><li>nested 1</li><li>nested 2</li><li><ul><li>deep nested 1</li><li>deep nested 2</li><li><ul><li>deeper nested 1</li><li>deeper nested 2</li><li><ul><li>deepest nested 1</li><li>deepest nested 2</li></ul></li></ul></li></ul></li></ul></li><li>nesting end</li></ul><p></p><ol><li>nesting</li><li><ol><li>nested 1</li><li>nested 2</li><li><ol><li>deep nested 1</li><li>deep nested 2</li><li><ol><li>deeper nested 1</li><li>deeper nested 2</li><li><ol><li>deepest nested 1</li><li>deepest nested 2</li></ol></li></ol></li></ol></li></ol></li><li>nesting end</li></ol>'\n );\n const [result02, setResult02] = useState<string>(\n `<p>Editor 2</p>\n <ul>\n <li>nesting</li>\n <li>\n <ol>\n <li>nested 1</li>\n <li>nested 2</li>\n </ol>\n </li>\n <li>nesting 2</li>\n <li>\n <ul>\n <li>deep nested 1</li>\n <li>deep nested 2</li>\n <li>\n <ol>\n <li>deeper nested 1</li>\n <li>\n <ul>\n <li>deepest nested 1</li>\n <li>deepest nested 2</li>\n </ul>\n </li>\n <li>deeper nested 2</li>\n <li>\n <ol>\n <li>deepest nested 1</li>\n <li>deepest nested 2</li>\n </ol>\n </li>\n </ol>\n </li>\n </ul>\n </li>\n <li>nesting end</li>\n </ul>`\n );\n\n return (\n <div\n style={{\n display: 'flex',\n flexDirection: 'row',\n gap: '1rem',\n width: '100%',\n padding: '1rem',\n backgroundColor: '#FFF',\n }}\n >\n <div style={{ flex: '1' }}>\n <RteEditor\n initialValue={result01}\n label=\"Editor 1\"\n info=\"Uitleg over editor 1\"\n placeholder=\"Voeg hier tekst in...\"\n notValidatedText=\"\"\n onChange={(evt) => setResult01(evt)}\n />\n <br />\n <p style={{ margin: '0', marginTop: '2rem' }}>HTML Output:</p>\n <div\n style={{\n marginTop: '0rem',\n padding: '1rem',\n backgroundColor: '#F9F9F9',\n borderRadius: '0.25rem',\n color: '#666',\n }}\n >\n {result01}\n </div>\n </div>\n <div style={{ flex: '1' }}>\n <RteEditor\n initialValue={result02}\n label=\"Editor 2\"\n info=\"Uitleg over editor 2 wat langer om te kijken of dat ook goed gaat, want je weet maar nooit.\"\n placeholder=\"Voeg hier tekst in...\"\n notValidatedText=\"\"\n onChange={(evt) => setResult02(evt)}\n />\n <br />\n <p style={{ margin: '0', marginTop: '2rem' }}>HTML Output:</p>\n <div\n style={{\n marginTop: '0rem',\n padding: '1rem',\n backgroundColor: '#F9F9F9',\n borderRadius: '0.25rem',\n color: '#666',\n }}\n >\n {result02}\n </div>\n </div>\n </div>\n );\n};\n"],"names":["codeString","RteEditor_stories","RteEditor","Template","args","result","setResult","useState","jsxs","Fragment","jsx","Container","evt","RteEditorExample","MOCK_RTE_CONTENT","MultipleRteEditors","result01","setResult01","result02","setResult02"],"mappings":"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"}
|
|
@@ -9,11 +9,13 @@ export declare const UvaTheme: {
|
|
|
9
9
|
list: {
|
|
10
10
|
listitem: string;
|
|
11
11
|
nested: {
|
|
12
|
+
list: string;
|
|
12
13
|
listitem: string;
|
|
13
14
|
};
|
|
14
15
|
olDepth: string[];
|
|
15
16
|
ulDepth: string[];
|
|
16
17
|
ul: string;
|
|
18
|
+
ulDepthNested: string[];
|
|
17
19
|
};
|
|
18
20
|
link: string;
|
|
19
21
|
tableWrapper: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { s as t } from "../../../RteEditor.module-
|
|
1
|
+
import { s as t } from "../../../RteEditor.module-CovRFt0S.js";
|
|
2
2
|
const i = {
|
|
3
3
|
ltr: t["guide-text-ltr"],
|
|
4
4
|
rtl: t["guide-text-rtl"],
|
|
@@ -10,6 +10,7 @@ const i = {
|
|
|
10
10
|
list: {
|
|
11
11
|
listitem: t["guide-text__list--listitem"],
|
|
12
12
|
nested: {
|
|
13
|
+
list: t["guide-text__list--nested"],
|
|
13
14
|
listitem: t["guide-text__list--nested-listitem"]
|
|
14
15
|
},
|
|
15
16
|
olDepth: [
|
|
@@ -26,7 +27,8 @@ const i = {
|
|
|
26
27
|
t["guide-text__list--ul4"],
|
|
27
28
|
t["guide-text__list--ul5"]
|
|
28
29
|
],
|
|
29
|
-
ul: t["guide-text__list--ul"]
|
|
30
|
+
ul: t["guide-text__list--ul"],
|
|
31
|
+
ulDepthNested: [t["guide-text__list--ol"]]
|
|
30
32
|
},
|
|
31
33
|
link: t["guide-text__link"],
|
|
32
34
|
tableWrapper: t["guide-text__table-wrapper"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UvaTheme.js","sources":["../../../../src/components/RteEditor/UvaTheme/UvaTheme.tsx"],"sourcesContent":["import styles from 'components/RteEditor/RteEditor.module.css';\n\nexport const UvaTheme = {\n ltr: styles['guide-text-ltr'],\n rtl: styles['guide-text-rtl'],\n paragraph: styles['guide-text-paragraph'],\n text: {\n bold: styles['guide-text__text--bold'],\n italic: styles['guide-text__text--italic'],\n },\n list: {\n listitem: styles['guide-text__list--listitem'],\n nested: {\n listitem: styles['guide-text__list--nested-listitem'],\n },\n olDepth: [\n styles['guide-text__list--ol'],\n styles['guide-text__list--ol2'],\n styles['guide-text__list--ol3'],\n styles['guide-text__list--ol4'],\n styles['guide-text__list--ol5'],\n ],\n ulDepth: [\n styles['guide-text__list--ul'],\n styles['guide-text__list--ul2'],\n styles['guide-text__list--ul3'],\n styles['guide-text__list--ul4'],\n styles['guide-text__list--ul5'],\n ],\n ul: styles['guide-text__list--ul'],\n },\n link: styles['guide-text__link'],\n tableWrapper: styles['guide-text__table-wrapper'],\n table: styles['guide-text__table'],\n};\n"],"names":["UvaTheme","styles"],"mappings":";AAEO,MAAMA,IAAW;AAAA,EACtB,KAAKC,EAAO,gBAAgB;AAAA,EAC5B,KAAKA,EAAO,gBAAgB;AAAA,EAC5B,WAAWA,EAAO,sBAAsB;AAAA,EACxC,MAAM;AAAA,IACJ,MAAMA,EAAO,wBAAwB;AAAA,IACrC,QAAQA,EAAO,0BAA0B;AAAA,EAAA;AAAA,EAE3C,MAAM;AAAA,IACJ,UAAUA,EAAO,4BAA4B;AAAA,IAC7C,QAAQ;AAAA,MACN,UAAUA,EAAO,mCAAmC;AAAA,IAAA;AAAA,IAEtD,SAAS;AAAA,MACPA,EAAO,sBAAsB;AAAA,MAC7BA,EAAO,uBAAuB;AAAA,MAC9BA,EAAO,uBAAuB;AAAA,MAC9BA,EAAO,uBAAuB;AAAA,MAC9BA,EAAO,uBAAuB;AAAA,IAAA;AAAA,IAEhC,SAAS;AAAA,MACPA,EAAO,sBAAsB;AAAA,MAC7BA,EAAO,uBAAuB;AAAA,MAC9BA,EAAO,uBAAuB;AAAA,MAC9BA,EAAO,uBAAuB;AAAA,MAC9BA,EAAO,uBAAuB;AAAA,IAAA;AAAA,IAEhC,IAAIA,EAAO,sBAAsB;AAAA,EAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"UvaTheme.js","sources":["../../../../src/components/RteEditor/UvaTheme/UvaTheme.tsx"],"sourcesContent":["import styles from 'components/RteEditor/RteEditor.module.css';\n\nexport const UvaTheme = {\n ltr: styles['guide-text-ltr'],\n rtl: styles['guide-text-rtl'],\n paragraph: styles['guide-text-paragraph'],\n text: {\n bold: styles['guide-text__text--bold'],\n italic: styles['guide-text__text--italic'],\n },\n list: {\n listitem: styles['guide-text__list--listitem'],\n nested: {\n list: styles['guide-text__list--nested'],\n listitem: styles['guide-text__list--nested-listitem'],\n },\n olDepth: [\n styles['guide-text__list--ol'],\n styles['guide-text__list--ol2'],\n styles['guide-text__list--ol3'],\n styles['guide-text__list--ol4'],\n styles['guide-text__list--ol5'],\n ],\n ulDepth: [\n styles['guide-text__list--ul'],\n styles['guide-text__list--ul2'],\n styles['guide-text__list--ul3'],\n styles['guide-text__list--ul4'],\n styles['guide-text__list--ul5'],\n ],\n ul: styles['guide-text__list--ul'],\n ulDepthNested: [styles['guide-text__list--ol']],\n },\n link: styles['guide-text__link'],\n tableWrapper: styles['guide-text__table-wrapper'],\n table: styles['guide-text__table'],\n};\n"],"names":["UvaTheme","styles"],"mappings":";AAEO,MAAMA,IAAW;AAAA,EACtB,KAAKC,EAAO,gBAAgB;AAAA,EAC5B,KAAKA,EAAO,gBAAgB;AAAA,EAC5B,WAAWA,EAAO,sBAAsB;AAAA,EACxC,MAAM;AAAA,IACJ,MAAMA,EAAO,wBAAwB;AAAA,IACrC,QAAQA,EAAO,0BAA0B;AAAA,EAAA;AAAA,EAE3C,MAAM;AAAA,IACJ,UAAUA,EAAO,4BAA4B;AAAA,IAC7C,QAAQ;AAAA,MACN,MAAMA,EAAO,0BAA0B;AAAA,MACvC,UAAUA,EAAO,mCAAmC;AAAA,IAAA;AAAA,IAEtD,SAAS;AAAA,MACPA,EAAO,sBAAsB;AAAA,MAC7BA,EAAO,uBAAuB;AAAA,MAC9BA,EAAO,uBAAuB;AAAA,MAC9BA,EAAO,uBAAuB;AAAA,MAC9BA,EAAO,uBAAuB;AAAA,IAAA;AAAA,IAEhC,SAAS;AAAA,MACPA,EAAO,sBAAsB;AAAA,MAC7BA,EAAO,uBAAuB;AAAA,MAC9BA,EAAO,uBAAuB;AAAA,MAC9BA,EAAO,uBAAuB;AAAA,MAC9BA,EAAO,uBAAuB;AAAA,IAAA;AAAA,IAEhC,IAAIA,EAAO,sBAAsB;AAAA,IACjC,eAAe,CAACA,EAAO,sBAAsB,CAAC;AAAA,EAAA;AAAA,EAEhD,MAAMA,EAAO,kBAAkB;AAAA,EAC/B,cAAcA,EAAO,2BAA2B;AAAA,EAChD,OAAOA,EAAO,mBAAmB;AACnC;"}
|
package/dist/components/index.js
CHANGED
|
@@ -35,7 +35,7 @@ import { Label as Bo } from "./Label/Label.js";
|
|
|
35
35
|
import { MenuLink as So } from "./MenuLink/MenuLink.js";
|
|
36
36
|
import { MetaDataList as Co } from "./MetaDataList/MetaDataList.js";
|
|
37
37
|
import { ModalDialog as ko } from "./ModalDialog/ModalDialog.js";
|
|
38
|
-
import { M as Mo } from "../TablePlugin-
|
|
38
|
+
import { M as Mo } from "../TablePlugin-DaKDRL4G.js";
|
|
39
39
|
import { MultiSelectBox as Lo } from "./MultiSelectBox/MultiSelectBox.js";
|
|
40
40
|
import { Notification as Ro } from "./Notification/Notification.js";
|
|
41
41
|
import { OverlayCloseButton as ho } from "./OverlayCloseButton/OverlayCloseButton.js";
|
package/dist/index.js
CHANGED
|
@@ -35,7 +35,7 @@ import { Label as Bo } from "./components/Label/Label.js";
|
|
|
35
35
|
import { MenuLink as So } from "./components/MenuLink/MenuLink.js";
|
|
36
36
|
import { MetaDataList as Co } from "./components/MetaDataList/MetaDataList.js";
|
|
37
37
|
import { ModalDialog as ko } from "./components/ModalDialog/ModalDialog.js";
|
|
38
|
-
import { M as Mo } from "./TablePlugin-
|
|
38
|
+
import { M as Mo } from "./TablePlugin-DaKDRL4G.js";
|
|
39
39
|
import { MultiSelectBox as Lo } from "./components/MultiSelectBox/MultiSelectBox.js";
|
|
40
40
|
import { Notification as Ro } from "./components/Notification/Notification.js";
|
|
41
41
|
import { OverlayCloseButton as ho } from "./components/OverlayCloseButton/OverlayCloseButton.js";
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@uva-glass/component-library",
|
|
3
3
|
"author": "Team Glass - Frontend vrienden",
|
|
4
4
|
"private": false,
|
|
5
|
-
"version": "3.
|
|
5
|
+
"version": "3.43.1",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
8
|
"types": "dist/index.d.ts",
|
|
@@ -52,16 +52,16 @@
|
|
|
52
52
|
"@semantic-release/git": "^10.0.1",
|
|
53
53
|
"@semantic-release/gitlab": "^13.2.8",
|
|
54
54
|
"@semantic-release/npm": "^12.0.2",
|
|
55
|
-
"@storybook/addon-a11y": "^9.1.
|
|
56
|
-
"@storybook/addon-docs": "^9.1.
|
|
57
|
-
"@storybook/addon-links": "^9.1.
|
|
58
|
-
"@storybook/react": "^9.1.
|
|
59
|
-
"@storybook/react-vite": "^9.1.
|
|
55
|
+
"@storybook/addon-a11y": "^9.1.5",
|
|
56
|
+
"@storybook/addon-docs": "^9.1.5",
|
|
57
|
+
"@storybook/addon-links": "^9.1.5",
|
|
58
|
+
"@storybook/react": "^9.1.5",
|
|
59
|
+
"@storybook/react-vite": "^9.1.5",
|
|
60
60
|
"@testing-library/jest-dom": "^6.8.0",
|
|
61
61
|
"@testing-library/react": "^16.3.0",
|
|
62
62
|
"@types/jest": "^30.0.0",
|
|
63
|
-
"@types/node": "^22.18.
|
|
64
|
-
"@types/react": "^19.1.
|
|
63
|
+
"@types/node": "^22.18.3",
|
|
64
|
+
"@types/react": "^19.1.13",
|
|
65
65
|
"@types/react-dom": "^19.1.9",
|
|
66
66
|
"@uva-glass/eslint-config": "^1.3.11",
|
|
67
67
|
"@uva-glass/stylelint-config": "^1.2.3",
|
|
@@ -76,21 +76,21 @@
|
|
|
76
76
|
"jest": "^30.1.3",
|
|
77
77
|
"jest-environment-jsdom": "^30.1.2",
|
|
78
78
|
"jest-junit": "^16.0.0",
|
|
79
|
-
"jsdom": "^
|
|
79
|
+
"jsdom": "^27.0.0",
|
|
80
80
|
"npm-run-all2": "^8.0.4",
|
|
81
81
|
"react": "^19.1.1",
|
|
82
82
|
"react-dom": "^19.1.1",
|
|
83
|
-
"react-router": "^7.
|
|
84
|
-
"semantic-release": "^24.2.
|
|
85
|
-
"storybook": "^9.1.
|
|
83
|
+
"react-router": "^7.9.1",
|
|
84
|
+
"semantic-release": "^24.2.8",
|
|
85
|
+
"storybook": "^9.1.5",
|
|
86
86
|
"style-dictionary": "^5.0.4",
|
|
87
|
-
"stylelint": "^16.
|
|
87
|
+
"stylelint": "^16.24.0",
|
|
88
88
|
"stylelint-config-recommended": "^17.0.0",
|
|
89
89
|
"stylelint-config-standard": "^39.0.0",
|
|
90
90
|
"stylelint-order": "^7.0.0",
|
|
91
91
|
"ts-node": "^10.9.2",
|
|
92
92
|
"typescript": "^5.9.2",
|
|
93
|
-
"vite": "^7.1.
|
|
93
|
+
"vite": "^7.1.5",
|
|
94
94
|
"vite-plugin-dts": "^4.5.4",
|
|
95
95
|
"vite-plugin-lib-inject-css": "^2.2.2",
|
|
96
96
|
"vite-plugin-static-copy": "^3.1.2",
|
|
@@ -108,9 +108,9 @@
|
|
|
108
108
|
"lexical": "^0.35.0"
|
|
109
109
|
},
|
|
110
110
|
"optionalDependencies": {
|
|
111
|
-
"@ast-grep/napi-linux-x64-gnu": "0.39.
|
|
112
|
-
"@rollup/rollup-linux-x64-gnu": "^4.50.
|
|
113
|
-
"@rspack/binding-darwin-arm64": "1.5.
|
|
114
|
-
"@rspack/binding-linux-x64-gnu": "1.5.
|
|
111
|
+
"@ast-grep/napi-linux-x64-gnu": "0.39.5",
|
|
112
|
+
"@rollup/rollup-linux-x64-gnu": "^4.50.2",
|
|
113
|
+
"@rspack/binding-darwin-arm64": "1.5.3",
|
|
114
|
+
"@rspack/binding-linux-x64-gnu": "1.5.3"
|
|
115
115
|
}
|
|
116
116
|
}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import './assets/RteEditor.css';const _ = "_editor__container_ng60c_1", t = "_editor__header_ng60c_7", e = "_editor_ng60c_1", i = "_editor__field_ng60c_36", o = "_editor__toolbar_ng60c_40", d = "_editor__placeholder_ng60c_170", l = "_listitem_ng60c_201", r = {
|
|
2
|
-
editor__container: _,
|
|
3
|
-
editor__header: t,
|
|
4
|
-
"editor__header-word-count": "_editor__header-word-count_ng60c_15",
|
|
5
|
-
"editor__header-word-count--alert": "_editor__header-word-count--alert_ng60c_24",
|
|
6
|
-
editor: e,
|
|
7
|
-
editor__field: i,
|
|
8
|
-
editor__toolbar: o,
|
|
9
|
-
"editor__toolbar-button-group": "_editor__toolbar-button-group_ng60c_49",
|
|
10
|
-
"editor__toolbar-button": "_editor__toolbar-button_ng60c_49",
|
|
11
|
-
"editor__toolbar-button--active": "_editor__toolbar-button--active_ng60c_80",
|
|
12
|
-
"editor__toolbar-button--bold": "_editor__toolbar-button--bold_ng60c_100",
|
|
13
|
-
"editor__toolbar-button--italic": "_editor__toolbar-button--italic_ng60c_104",
|
|
14
|
-
"editor__toolbar-button-flyoutwrapper": "_editor__toolbar-button-flyoutwrapper_ng60c_123",
|
|
15
|
-
"editor__field-wrapper": "_editor__field-wrapper_ng60c_127",
|
|
16
|
-
editor__placeholder: d,
|
|
17
|
-
"guide-text-ltr": "_guide-text-ltr_ng60c_180",
|
|
18
|
-
"guide-text-rtl": "_guide-text-rtl_ng60c_184",
|
|
19
|
-
"guide-text-paragraph": "_guide-text-paragraph_ng60c_188",
|
|
20
|
-
"guide-text__text--bold": "_guide-text__text--bold_ng60c_193",
|
|
21
|
-
"guide-text__text--italic": "_guide-text__text--italic_ng60c_197",
|
|
22
|
-
listitem: l,
|
|
23
|
-
"guide-text__list--ol": "_guide-text__list--ol_ng60c_205",
|
|
24
|
-
"guide-text__list--ol2": "_guide-text__list--ol2_ng60c_210",
|
|
25
|
-
"guide-text__list--ol3": "_guide-text__list--ol3_ng60c_217",
|
|
26
|
-
"guide-text__list--ol4": "_guide-text__list--ol4_ng60c_224",
|
|
27
|
-
"guide-text__list--ol5": "_guide-text__list--ol5_ng60c_231",
|
|
28
|
-
"guide-text__list--ul": "_guide-text__list--ul_ng60c_238",
|
|
29
|
-
"guide-text__list--ul2": "_guide-text__list--ul2_ng60c_244",
|
|
30
|
-
"guide-text__list--ul3": "_guide-text__list--ul3_ng60c_251",
|
|
31
|
-
"guide-text__list--ul4": "_guide-text__list--ul4_ng60c_258",
|
|
32
|
-
"guide-text__list--ul5": "_guide-text__list--ul5_ng60c_265",
|
|
33
|
-
"guide-text__list--listitem": "_guide-text__list--listitem_ng60c_272",
|
|
34
|
-
"guide-text__list--nested-listitem": "_guide-text__list--nested-listitem_ng60c_276",
|
|
35
|
-
"guide-text__link": "_guide-text__link_ng60c_281",
|
|
36
|
-
"guide-text__table-wrapper": "_guide-text__table-wrapper_ng60c_287",
|
|
37
|
-
"guide-text__table": "_guide-text__table_ng60c_287"
|
|
38
|
-
};
|
|
39
|
-
export {
|
|
40
|
-
r as s
|
|
41
|
-
};
|
|
42
|
-
//# sourceMappingURL=RteEditor.module-dE9wQTC9.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RteEditor.module-dE9wQTC9.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|