@examind/block-sdk 0.2.1 → 0.2.2

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/index.js CHANGED
@@ -163,6 +163,19 @@ var ExcelQuestionNodeHandler = class extends NodeHandler {
163
163
  }
164
164
  };
165
165
 
166
+ // src/typeGuards/isSerializedExcelWorksheetLinkNode.ts
167
+ function isSerializedExcelWorksheetLinkNode(node) {
168
+ return node?.type === "excel-worksheet-link";
169
+ }
170
+
171
+ // src/exportToHtml/ExcelWorksheetLinkNodeHandler.ts
172
+ var ExcelWorksheetLinkNodeHandler = class extends NodeHandler {
173
+ processNode(node) {
174
+ if (!isSerializedExcelWorksheetLinkNode(node)) return null;
175
+ return `<x-worksheet-link x-data-name="${node.sheetName}"></x-worksheet-link>`;
176
+ }
177
+ };
178
+
166
179
  // src/typeGuards/isSerializedFillInTheBlankQuestionNode.ts
167
180
  function isSerializedFillInTheBlankQuestionNode(node) {
168
181
  return node?.type === "fill-in-the-blank-question" && "id" in node && typeof node.id === "string" && "pointsPerSpace" in node && typeof node.pointsPerSpace === "number" && "content" in node;
@@ -1004,7 +1017,7 @@ var VariableNodeHandler = class extends NodeHandler {
1004
1017
 
1005
1018
  // src/exportToHtml/traverse.ts
1006
1019
  var builder = new NodeHandlerChainBuilder();
1007
- var nodeHandlerChain = builder.addHandler(CustomQuestionNodeHandler).addHandler(EssayQuestionNodeHandler).addHandler(ExcelQuestionNodeHandler).addHandler(FillInTheBlankQuestionNodeHandler).addHandler(FillInTheBlankSpaceNodeHandler).addHandler(FinancialStatementQuestionNodeHandler).addHandler(HeadingNodeHandler).addHandler(HorizontalRuleNodeHandler).addHandler(ImageNodeHandler).addHandler(JournalEntryQuestionNodeHandler).addHandler(LineBreakNodeHandler).addHandler(LinkNodeHandler).addHandler(ListNodeHandler).addHandler(ListItemNodeHandler).addHandler(MatchingQuestionNodeHandler).addHandler(MultipleOptionQuestionNodeHandler).addHandler(ParagraphNodeHandler).addHandler(ShortAnswerQuestionNodeHandler).addHandler(SimulationQuestionNodeHandler).addHandler(TableCellNodeHandler).addHandler(TableNodeHandler).addHandler(TableRowNodeHandler).addHandler(TextNodeHandler).addHandler(VariableNodeHandler).build();
1020
+ var nodeHandlerChain = builder.addHandler(CustomQuestionNodeHandler).addHandler(EssayQuestionNodeHandler).addHandler(ExcelQuestionNodeHandler).addHandler(ExcelWorksheetLinkNodeHandler).addHandler(FillInTheBlankQuestionNodeHandler).addHandler(FillInTheBlankSpaceNodeHandler).addHandler(FinancialStatementQuestionNodeHandler).addHandler(HeadingNodeHandler).addHandler(HorizontalRuleNodeHandler).addHandler(ImageNodeHandler).addHandler(JournalEntryQuestionNodeHandler).addHandler(LineBreakNodeHandler).addHandler(LinkNodeHandler).addHandler(ListNodeHandler).addHandler(ListItemNodeHandler).addHandler(MatchingQuestionNodeHandler).addHandler(MultipleOptionQuestionNodeHandler).addHandler(ParagraphNodeHandler).addHandler(ShortAnswerQuestionNodeHandler).addHandler(SimulationQuestionNodeHandler).addHandler(TableCellNodeHandler).addHandler(TableNodeHandler).addHandler(TableRowNodeHandler).addHandler(TextNodeHandler).addHandler(VariableNodeHandler).build();
1008
1021
  var traverse = (node, metadata) => {
1009
1022
  return nodeHandlerChain.handle(node, metadata);
1010
1023
  };
@@ -1390,19 +1403,19 @@ var ExcelQuestionNodeHandler2 = class extends NodeHandler2 {
1390
1403
  // src/importFromHtml/ExcelWorksheetLinkNodeHandler.ts
1391
1404
  var import_node_html_parser6 = require("node-html-parser");
1392
1405
  var TAG = "x-worksheet-link";
1393
- var ExcelWorksheetLinkNodeHandler = class extends NodeHandler2 {
1406
+ var ExcelWorksheetLinkNodeHandler2 = class extends NodeHandler2 {
1394
1407
  processNode(node) {
1395
1408
  if (!(node instanceof import_node_html_parser6.HTMLElement) || node.tagName !== TAG.toUpperCase()) {
1396
1409
  return null;
1397
1410
  }
1398
- const url = node.getAttribute("x-data-name") || "";
1411
+ const sheetName = node.getAttribute("x-data-name") || "";
1399
1412
  const linkNode = {
1400
1413
  detail: 0,
1401
1414
  format: 0,
1402
1415
  mode: "normal",
1403
1416
  style: "",
1404
- text: node.text || url,
1405
- dataName: url,
1417
+ text: sheetName,
1418
+ sheetName,
1406
1419
  type: "excel-worksheet-link",
1407
1420
  version: 1
1408
1421
  };
@@ -2510,7 +2523,7 @@ var VariableNodeHandler2 = class extends NodeHandler2 {
2510
2523
 
2511
2524
  // src/importFromHtml/traverse.ts
2512
2525
  var builder2 = new NodeHandlerChainBuilder();
2513
- var nodeHandlerChain2 = builder2.addHandler(CustomQuestionNodeHandler2).addHandler(DivNodeHandler).addHandler(EssayQuestionNodeHandler2).addHandler(ExcelQuestionNodeHandler2).addHandler(ExcelWorksheetLinkNodeHandler).addHandler(FillInTheBlankQuestionNodeHandler2).addHandler(FillInTheBlankSpaceNodeHandler2).addHandler(FinancialStatementQuestionNodeHandler2).addHandler(FormattedNodeHandler).addHandler(HeadingNodeHandler2).addHandler(HorizontalRuleNodeHandler2).addHandler(ImageNodeHandler2).addHandler(JournalEntryQuestionNodeHandler2).addHandler(LineBreakNodeHandler2).addHandler(LinkNodeHandler2).addHandler(ListItemNodeHandler2).addHandler(ListNodeHandler2).addHandler(MatchingQuestionNodeHandler2).addHandler(MultipleOptionQuestionNodeHandler2).addHandler(ParagraphNodeHandler2).addHandler(ShortAnswerQuestionNodeHandler2).addHandler(SimulationQuestionNodeHandler2).addHandler(SpanNodeHandler).addHandler(TableCellNodeHandler2).addHandler(TableNodeHandler2).addHandler(TableRowNodeHandler2).addHandler(TextNodeHandler2).addHandler(VariableNodeHandler2).build();
2526
+ var nodeHandlerChain2 = builder2.addHandler(CustomQuestionNodeHandler2).addHandler(DivNodeHandler).addHandler(EssayQuestionNodeHandler2).addHandler(ExcelQuestionNodeHandler2).addHandler(ExcelWorksheetLinkNodeHandler2).addHandler(FillInTheBlankQuestionNodeHandler2).addHandler(FillInTheBlankSpaceNodeHandler2).addHandler(FinancialStatementQuestionNodeHandler2).addHandler(FormattedNodeHandler).addHandler(HeadingNodeHandler2).addHandler(HorizontalRuleNodeHandler2).addHandler(ImageNodeHandler2).addHandler(JournalEntryQuestionNodeHandler2).addHandler(LineBreakNodeHandler2).addHandler(LinkNodeHandler2).addHandler(ListItemNodeHandler2).addHandler(ListNodeHandler2).addHandler(MatchingQuestionNodeHandler2).addHandler(MultipleOptionQuestionNodeHandler2).addHandler(ParagraphNodeHandler2).addHandler(ShortAnswerQuestionNodeHandler2).addHandler(SimulationQuestionNodeHandler2).addHandler(SpanNodeHandler).addHandler(TableCellNodeHandler2).addHandler(TableNodeHandler2).addHandler(TableRowNodeHandler2).addHandler(TextNodeHandler2).addHandler(VariableNodeHandler2).build();
2514
2527
  function traverse2(node) {
2515
2528
  const result = nodeHandlerChain2.handle(node);
2516
2529
  if (result === null) return [];
package/dist/index.mjs CHANGED
@@ -136,6 +136,19 @@ var ExcelQuestionNodeHandler = class extends NodeHandler {
136
136
  }
137
137
  };
138
138
 
139
+ // src/typeGuards/isSerializedExcelWorksheetLinkNode.ts
140
+ function isSerializedExcelWorksheetLinkNode(node) {
141
+ return node?.type === "excel-worksheet-link";
142
+ }
143
+
144
+ // src/exportToHtml/ExcelWorksheetLinkNodeHandler.ts
145
+ var ExcelWorksheetLinkNodeHandler = class extends NodeHandler {
146
+ processNode(node) {
147
+ if (!isSerializedExcelWorksheetLinkNode(node)) return null;
148
+ return `<x-worksheet-link x-data-name="${node.sheetName}"></x-worksheet-link>`;
149
+ }
150
+ };
151
+
139
152
  // src/typeGuards/isSerializedFillInTheBlankQuestionNode.ts
140
153
  function isSerializedFillInTheBlankQuestionNode(node) {
141
154
  return node?.type === "fill-in-the-blank-question" && "id" in node && typeof node.id === "string" && "pointsPerSpace" in node && typeof node.pointsPerSpace === "number" && "content" in node;
@@ -977,7 +990,7 @@ var VariableNodeHandler = class extends NodeHandler {
977
990
 
978
991
  // src/exportToHtml/traverse.ts
979
992
  var builder = new NodeHandlerChainBuilder();
980
- var nodeHandlerChain = builder.addHandler(CustomQuestionNodeHandler).addHandler(EssayQuestionNodeHandler).addHandler(ExcelQuestionNodeHandler).addHandler(FillInTheBlankQuestionNodeHandler).addHandler(FillInTheBlankSpaceNodeHandler).addHandler(FinancialStatementQuestionNodeHandler).addHandler(HeadingNodeHandler).addHandler(HorizontalRuleNodeHandler).addHandler(ImageNodeHandler).addHandler(JournalEntryQuestionNodeHandler).addHandler(LineBreakNodeHandler).addHandler(LinkNodeHandler).addHandler(ListNodeHandler).addHandler(ListItemNodeHandler).addHandler(MatchingQuestionNodeHandler).addHandler(MultipleOptionQuestionNodeHandler).addHandler(ParagraphNodeHandler).addHandler(ShortAnswerQuestionNodeHandler).addHandler(SimulationQuestionNodeHandler).addHandler(TableCellNodeHandler).addHandler(TableNodeHandler).addHandler(TableRowNodeHandler).addHandler(TextNodeHandler).addHandler(VariableNodeHandler).build();
993
+ var nodeHandlerChain = builder.addHandler(CustomQuestionNodeHandler).addHandler(EssayQuestionNodeHandler).addHandler(ExcelQuestionNodeHandler).addHandler(ExcelWorksheetLinkNodeHandler).addHandler(FillInTheBlankQuestionNodeHandler).addHandler(FillInTheBlankSpaceNodeHandler).addHandler(FinancialStatementQuestionNodeHandler).addHandler(HeadingNodeHandler).addHandler(HorizontalRuleNodeHandler).addHandler(ImageNodeHandler).addHandler(JournalEntryQuestionNodeHandler).addHandler(LineBreakNodeHandler).addHandler(LinkNodeHandler).addHandler(ListNodeHandler).addHandler(ListItemNodeHandler).addHandler(MatchingQuestionNodeHandler).addHandler(MultipleOptionQuestionNodeHandler).addHandler(ParagraphNodeHandler).addHandler(ShortAnswerQuestionNodeHandler).addHandler(SimulationQuestionNodeHandler).addHandler(TableCellNodeHandler).addHandler(TableNodeHandler).addHandler(TableRowNodeHandler).addHandler(TextNodeHandler).addHandler(VariableNodeHandler).build();
981
994
  var traverse = (node, metadata) => {
982
995
  return nodeHandlerChain.handle(node, metadata);
983
996
  };
@@ -1363,19 +1376,19 @@ var ExcelQuestionNodeHandler2 = class extends NodeHandler2 {
1363
1376
  // src/importFromHtml/ExcelWorksheetLinkNodeHandler.ts
1364
1377
  import { HTMLElement as HTMLElement6 } from "node-html-parser";
1365
1378
  var TAG = "x-worksheet-link";
1366
- var ExcelWorksheetLinkNodeHandler = class extends NodeHandler2 {
1379
+ var ExcelWorksheetLinkNodeHandler2 = class extends NodeHandler2 {
1367
1380
  processNode(node) {
1368
1381
  if (!(node instanceof HTMLElement6) || node.tagName !== TAG.toUpperCase()) {
1369
1382
  return null;
1370
1383
  }
1371
- const url = node.getAttribute("x-data-name") || "";
1384
+ const sheetName = node.getAttribute("x-data-name") || "";
1372
1385
  const linkNode = {
1373
1386
  detail: 0,
1374
1387
  format: 0,
1375
1388
  mode: "normal",
1376
1389
  style: "",
1377
- text: node.text || url,
1378
- dataName: url,
1390
+ text: sheetName,
1391
+ sheetName,
1379
1392
  type: "excel-worksheet-link",
1380
1393
  version: 1
1381
1394
  };
@@ -2483,7 +2496,7 @@ var VariableNodeHandler2 = class extends NodeHandler2 {
2483
2496
 
2484
2497
  // src/importFromHtml/traverse.ts
2485
2498
  var builder2 = new NodeHandlerChainBuilder();
2486
- var nodeHandlerChain2 = builder2.addHandler(CustomQuestionNodeHandler2).addHandler(DivNodeHandler).addHandler(EssayQuestionNodeHandler2).addHandler(ExcelQuestionNodeHandler2).addHandler(ExcelWorksheetLinkNodeHandler).addHandler(FillInTheBlankQuestionNodeHandler2).addHandler(FillInTheBlankSpaceNodeHandler2).addHandler(FinancialStatementQuestionNodeHandler2).addHandler(FormattedNodeHandler).addHandler(HeadingNodeHandler2).addHandler(HorizontalRuleNodeHandler2).addHandler(ImageNodeHandler2).addHandler(JournalEntryQuestionNodeHandler2).addHandler(LineBreakNodeHandler2).addHandler(LinkNodeHandler2).addHandler(ListItemNodeHandler2).addHandler(ListNodeHandler2).addHandler(MatchingQuestionNodeHandler2).addHandler(MultipleOptionQuestionNodeHandler2).addHandler(ParagraphNodeHandler2).addHandler(ShortAnswerQuestionNodeHandler2).addHandler(SimulationQuestionNodeHandler2).addHandler(SpanNodeHandler).addHandler(TableCellNodeHandler2).addHandler(TableNodeHandler2).addHandler(TableRowNodeHandler2).addHandler(TextNodeHandler2).addHandler(VariableNodeHandler2).build();
2499
+ var nodeHandlerChain2 = builder2.addHandler(CustomQuestionNodeHandler2).addHandler(DivNodeHandler).addHandler(EssayQuestionNodeHandler2).addHandler(ExcelQuestionNodeHandler2).addHandler(ExcelWorksheetLinkNodeHandler2).addHandler(FillInTheBlankQuestionNodeHandler2).addHandler(FillInTheBlankSpaceNodeHandler2).addHandler(FinancialStatementQuestionNodeHandler2).addHandler(FormattedNodeHandler).addHandler(HeadingNodeHandler2).addHandler(HorizontalRuleNodeHandler2).addHandler(ImageNodeHandler2).addHandler(JournalEntryQuestionNodeHandler2).addHandler(LineBreakNodeHandler2).addHandler(LinkNodeHandler2).addHandler(ListItemNodeHandler2).addHandler(ListNodeHandler2).addHandler(MatchingQuestionNodeHandler2).addHandler(MultipleOptionQuestionNodeHandler2).addHandler(ParagraphNodeHandler2).addHandler(ShortAnswerQuestionNodeHandler2).addHandler(SimulationQuestionNodeHandler2).addHandler(SpanNodeHandler).addHandler(TableCellNodeHandler2).addHandler(TableNodeHandler2).addHandler(TableRowNodeHandler2).addHandler(TextNodeHandler2).addHandler(VariableNodeHandler2).build();
2487
2500
  function traverse2(node) {
2488
2501
  const result = nodeHandlerChain2.handle(node);
2489
2502
  if (result === null) return [];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@examind/block-sdk",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "@comment version": [
5
5
  "Don't specify package version here. It will be injected by publish workflow."
6
6
  ],
@@ -21,7 +21,7 @@
21
21
  "peerDependencies": {
22
22
  "nanoid": ">=3.0.0",
23
23
  "node-html-parser": ">=6.0.0",
24
- "@examind/block-types": "^0.2.1"
24
+ "@examind/block-types": "^0.2.2"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@eslint/js": "^9.17.0",
@@ -36,7 +36,7 @@
36
36
  "tsup": "^8.3.5",
37
37
  "typescript": "^5.7.2",
38
38
  "typescript-eslint": "^8.18.2",
39
- "@examind/block-types": "0.2.1"
39
+ "@examind/block-types": "0.2.2"
40
40
  },
41
41
  "dependencies": {
42
42
  "lodash-es": "4.17.21"