diff --git a/wax-prosemirror-components/package.json b/wax-prosemirror-components/package.json index 1d120e4e3ccd212a670bb1ba78fb1d1466b91677..591526e9122566fbd98b0d75d30d0b840f829bf5 100644 --- a/wax-prosemirror-components/package.json +++ b/wax-prosemirror-components/package.json @@ -4,7 +4,7 @@ "version": "0.0.42", "description": "Wax prosemirror UI components", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "files": [ "dist" ], diff --git a/wax-prosemirror-components/src/components/TableDropDown.js b/wax-prosemirror-components/src/components/TableDropDown.js index 5fa779bc529d363d5519b8c2606a7173cdf48559..919af7c569ccb4752a873b40fb0a6ec4b8835f1d 100644 --- a/wax-prosemirror-components/src/components/TableDropDown.js +++ b/wax-prosemirror-components/src/components/TableDropDown.js @@ -1,6 +1,5 @@ /* eslint react/prop-types: 0 */ -import React, { useMemo, useContext, useState } from 'react'; -import { TextSelection } from 'prosemirror-state'; +import React, { useMemo, useContext, useState, useEffect } from 'react'; import styled from 'styled-components'; import * as tablesFn from 'prosemirror-tables'; import { WaxContext } from 'wax-prosemirror-core'; @@ -37,26 +36,37 @@ const DropdownStyled = styled(Dropdown)` } `; -const dropDownOptions = [ - { label: 'add column before', value: 'addColumnBefore' }, - { label: 'add column after', value: 'addColumnAfter' }, - { label: 'Delete column', value: 'deleteColumn' }, - { label: 'Insert row before', value: 'addRowBefore' }, - { label: 'Insert row after', value: 'addRowAfter' }, - { label: 'Delete row', value: 'deleteRow' }, - { label: 'Delete table', value: 'deleteTable' }, - { label: 'Merge cells', value: 'mergeCells' }, - { label: 'Split cell', value: 'splitCell' }, - { label: 'Toggle header column', value: 'toggleHeaderColumn' }, - { label: 'Toggle header row', value: 'toggleHeaderRow' }, - { label: 'Toggle header cells', value: 'toggleHeaderCell' }, -]; - const TableDropDown = ({ item }) => { + const dropDownOptions = [ + { label: 'Add column before', value: 'addColumnBefore' }, + { label: 'Add column after', value: 'addColumnAfter' }, + { label: 'Delete column', value: 'deleteColumn' }, + { label: 'Insert row before', value: 'addRowBefore' }, + { label: 'Insert row after', value: 'addRowAfter' }, + { label: 'Delete row', value: 'deleteRow' }, + { label: 'Delete table', value: 'deleteTable' }, + { label: 'Merge cells', value: 'mergeCells' }, + { label: 'Split cell', value: 'splitCell' }, + { label: 'Toggle header column', value: 'toggleHeaderColumn' }, + { label: 'Toggle header row', value: 'toggleHeaderRow' }, + { label: 'Toggle header cells', value: 'toggleHeaderCell' }, + ]; + const { activeView } = useContext(WaxContext); const [selectedOption, setSelectedOption] = useState(''); + const appliedDropDownOptions = []; + dropDownOptions.forEach(option => { + if (tablesFn[option.value](activeView.state)) { + appliedDropDownOptions.push(option); + } + }); const isDisabled = item.select(activeView.state); + + useEffect(() => { + console.log('useEfe'); + }, [selectedOption]); + const TableDropDownComponent = useMemo( () => ( <DropdownStyled @@ -72,12 +82,12 @@ const TableDropDown = ({ item }) => { activeView.focus(); }); }} - options={dropDownOptions} + options={appliedDropDownOptions} placeholder="Table Options" select={isDisabled} /> ), - [isDisabled, selectedOption], + [isDisabled, selectedOption, appliedDropDownOptions], ); return TableDropDownComponent; diff --git a/wax-prosemirror-core/package.json b/wax-prosemirror-core/package.json index a62b2a8164d3ed9525a6b7f6eb7db17444ab9755..9c567257e7d3966c51a147181b9ee06eae439a87 100644 --- a/wax-prosemirror-core/package.json +++ b/wax-prosemirror-core/package.json @@ -4,7 +4,7 @@ "version": "0.0.42", "description": "Wax prosemirror core", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "files": [ "dist" ], diff --git a/wax-prosemirror-plugins/package.json b/wax-prosemirror-plugins/package.json index 1c7f813eddd961844cbbf5935a1e8b64d3bd3c19..932bdabecb6a0fac82f2b8d2684d00381343664e 100644 --- a/wax-prosemirror-plugins/package.json +++ b/wax-prosemirror-plugins/package.json @@ -4,7 +4,7 @@ "version": "0.0.42", "description": "Wax prosemirror plugins", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "files": [ "dist" ], diff --git a/wax-prosemirror-schema/package.json b/wax-prosemirror-schema/package.json index 0b8d338fb427e2e6f724c4ebe7d6d81bb42790b5..aff9089eee97a17dd8b32b8d2fa746e89db64a27 100644 --- a/wax-prosemirror-schema/package.json +++ b/wax-prosemirror-schema/package.json @@ -4,7 +4,7 @@ "version": "0.0.42", "description": "Wax prosemirror schema", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "files": [ "dist" ], diff --git a/wax-prosemirror-services/package.json b/wax-prosemirror-services/package.json index f9491b3e2fa82ac9439d237d78169e10010ae303..84ffa498050b9fda0142f86ad59e6a007a60069e 100644 --- a/wax-prosemirror-services/package.json +++ b/wax-prosemirror-services/package.json @@ -4,7 +4,7 @@ "version": "0.0.42", "description": "Wax prosemirror services", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "files": [ "dist" ], diff --git a/wax-prosemirror-utilities/package.json b/wax-prosemirror-utilities/package.json index 8374e65e94074277a24dabc297918af37bfc16db..603640748cc47787237ac2e3cd624d30803b4a5c 100644 --- a/wax-prosemirror-utilities/package.json +++ b/wax-prosemirror-utilities/package.json @@ -4,7 +4,7 @@ "version": "0.0.42", "description": "Wax prosemirror utilities", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "files": [ "dist" ],