Skip to content

Commit d4aba5d

Browse files
committed
Detecting fillable fields
1 parent 6be6cfe commit d4aba5d

8 files changed

Lines changed: 10 additions & 140 deletions

File tree

packages/super-editor/src/core/super-converter/exporter.js

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,6 @@ export function exportSchemaToJson(params) {
8181
tableRow: translateTableRow,
8282
tableCell: translateTableCell,
8383
bookmarkStart: translateBookmarkStart,
84-
fillableField: translateFillableField,
8584
fieldAnnotation: translateFieldAnnotation,
8685
tab: translateTab,
8786
image: translateImageNode,
@@ -1813,19 +1812,6 @@ function translateFieldAnnotation(params) {
18131812
};
18141813
};
18151814

1816-
function translateFillableField(params) {
1817-
const { node, isFinalDoc } = params;
1818-
const { attrs = {} } = node;
1819-
const { displayLabel } = attrs;
1820-
console.log(params);
1821-
1822-
return {
1823-
name: 'w:t',
1824-
1825-
elements: [{ text:displayLabel, type: 'text' }],
1826-
};
1827-
};
1828-
18291815
export function translateHardBreak(params) {
18301816
const { node = {} } = params;
18311817
const { attrs = {} } = node;

packages/super-editor/src/core/super-converter/v2/importer/fillableFieldImporter.js

Lines changed: 0 additions & 42 deletions
This file was deleted.

packages/super-editor/src/core/super-converter/v2/importer/importerHelpers.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,3 +118,6 @@ export const extractFillableParts = (text) => {
118118

119119
return parts;
120120
};
121+
122+
let uniqueIdCounter = 0;
123+
export const generateUniqueId = () => `fillable-${uniqueIdCounter++}`;

packages/super-editor/src/core/super-converter/v2/importer/textNodeImporter.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { extractFillableParts, getElementName, parseProperties } from './importerHelpers.js';
1+
import { generateUniqueId, extractFillableParts, getElementName, parseProperties } from './importerHelpers.js';
22

33
/**
44
* @type {import("docxImporter").NodeHandler}
@@ -29,10 +29,12 @@ export const handleTextNode = (params) => {
2929
let attrs = { type, attributes: attributes || {} }
3030
if(part.fillable) {
3131
let label = part.text;
32-
attrs.fieldId = 'fillable-0';
32+
attrs.fieldId = generateUniqueId();
3333
attrs.displayLabel = label;
34+
attrs.highlighted = false;
35+
attrs.type = "text";
3436
return {
35-
type: 'fillableField',
37+
type: 'fieldAnnotation',
3638
attrs: attrs,
3739
marks,
3840
};

packages/super-editor/src/core/super-converter/v2/importer/trackChangesImporter.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ export const handleTrackChangeNode = (params) => {
1919
if (['w:ins', 'w:del'].includes(mainNode.name)) {
2020
node = mainNode;
2121
} else {
22-
const sdtContent = mainNode.elements.find((el) => el.name === 'w:sdtContent');
23-
const trackedChange = sdtContent?.elements.find((el) => ['w:ins', 'w:del'].includes(el.name));
22+
const sdtContent = mainNode.elements?.find((el) => el.name === 'w:sdtContent');
23+
const trackedChange = sdtContent?.elements?.find((el) => ['w:ins', 'w:del'].includes(el.name));
2424
if (trackedChange) node = trackedChange;
2525
}
2626

packages/super-editor/src/extensions/fillable-field/fillable-field.js

Lines changed: 0 additions & 74 deletions
This file was deleted.

packages/super-editor/src/extensions/fillable-field/index.js

Lines changed: 0 additions & 1 deletion
This file was deleted.

packages/super-editor/src/extensions/index.js

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ import { PageNumber, TotalPageCount } from './page-number/index.js';
3737
import { ShapeContainer } from './shape-container/index.js';
3838
import { ShapeTextbox } from './shape-textbox/index.js';
3939
import { ContentBlock } from './content-block/index.js';
40-
import {FillableField} from "./fillable-field/index.js";
4140

4241
// Marks extensions
4342
import { TextStyle } from './text-style/text-style.js';
@@ -93,7 +92,6 @@ const getRichTextExtensions = () => {
9392
TableRow,
9493
TableCell,
9594
TableHeader,
96-
FillableField,
9795
FieldAnnotation,
9896
DropCursor,
9997
TrackInsert,
@@ -140,7 +138,6 @@ const getStarterExtensions = () => {
140138
TableRow,
141139
TableCell,
142140
TableHeader,
143-
FillableField,
144141
FieldAnnotation,
145142
DropCursor,
146143
Image,
@@ -204,7 +201,6 @@ export {
204201
TableHeader,
205202
Placeholder,
206203
DropCursor,
207-
FillableField,
208204
FieldAnnotation,
209205
fieldAnnotationHelpers,
210206
Image,

0 commit comments

Comments
 (0)