From 0f24a5f15deb732b86bf51a66ce7dd942972f30c Mon Sep 17 00:00:00 2001 From: chris <kokosias@yahoo.gr> Date: Wed, 7 Apr 2021 16:34:51 +0300 Subject: [PATCH] fix tables --- wax-prosemirror-components/package.json | 2 +- .../src/components/TableDropDown.js | 48 +++++++++++-------- wax-prosemirror-core/package.json | 2 +- wax-prosemirror-plugins/package.json | 2 +- wax-prosemirror-schema/package.json | 2 +- wax-prosemirror-services/package.json | 2 +- wax-prosemirror-utilities/package.json | 2 +- 7 files changed, 35 insertions(+), 25 deletions(-) diff --git a/wax-prosemirror-components/package.json b/wax-prosemirror-components/package.json index 1d120e4e3..591526e91 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 5fa779bc5..919af7c56 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 a62b2a816..9c567257e 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 1c7f813ed..932bdabec 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 0b8d338fb..aff9089ee 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 f9491b3e2..84ffa4980 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 8374e65e9..603640748 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" ], -- GitLab