sveld 0.25.9 → 0.25.11

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.
Files changed (39) hide show
  1. package/README.md +34 -8
  2. package/lib/ComponentParser.d.ts +714 -5
  3. package/lib/ComponentParser.js +1542 -330
  4. package/lib/cli.d.ts +14 -0
  5. package/lib/cli.js +14 -0
  6. package/lib/create-exports.d.ts +41 -0
  7. package/lib/create-exports.js +107 -16
  8. package/lib/element-tag-map.d.ts +70 -0
  9. package/lib/element-tag-map.js +74 -6
  10. package/lib/index.js +4 -4
  11. package/lib/parse-exports.d.ts +22 -0
  12. package/lib/parse-exports.js +22 -0
  13. package/lib/resolve-alias.d.ts +48 -0
  14. package/lib/resolve-alias.js +83 -15
  15. package/lib/rollup-plugin.d.ts +41 -0
  16. package/lib/rollup-plugin.js +97 -8
  17. package/lib/sveld.d.ts +21 -0
  18. package/lib/sveld.js +21 -0
  19. package/lib/writer/MarkdownWriterBase.d.ts +29 -0
  20. package/lib/writer/MarkdownWriterBase.js +70 -0
  21. package/lib/writer/Writer.d.ts +77 -0
  22. package/lib/writer/Writer.js +78 -0
  23. package/lib/writer/WriterMarkdown.d.ts +28 -9
  24. package/lib/writer/WriterMarkdown.js +37 -48
  25. package/lib/writer/markdown-format-utils.d.ts +106 -0
  26. package/lib/writer/markdown-format-utils.js +108 -3
  27. package/lib/writer/markdown-render-utils.d.ts +16 -0
  28. package/lib/writer/markdown-render-utils.js +89 -0
  29. package/lib/writer/writer-json.d.ts +26 -0
  30. package/lib/writer/writer-json.js +80 -3
  31. package/lib/writer/writer-markdown-core.d.ts +19 -14
  32. package/lib/writer/writer-markdown-core.js +22 -114
  33. package/lib/writer/writer-markdown.d.ts +22 -0
  34. package/lib/writer/writer-markdown.js +24 -54
  35. package/lib/writer/writer-ts-definitions-core.d.ts +22 -0
  36. package/lib/writer/writer-ts-definitions-core.js +341 -105
  37. package/lib/writer/writer-ts-definitions.d.ts +58 -0
  38. package/lib/writer/writer-ts-definitions.js +43 -7
  39. package/package.json +1 -1
package/README.md CHANGED
@@ -196,7 +196,7 @@ By default, `sveld` will use the `"svelte"` field from your `package.json` to de
196
196
  ```js
197
197
  sveld({
198
198
  entry: "src/index.js",
199
- })
199
+ });
200
200
  ```
201
201
 
202
202
  When building the library, TypeScript definitions are emitted to the `types` folder by default.
@@ -254,7 +254,10 @@ sveld({
254
254
  markdownOptions: {
255
255
  onAppend: (type, document, components) => {
256
256
  if (type === "h1")
257
- document.append("quote", `${components.size} components exported from ${pkg.name}@${pkg.version}.`);
257
+ document.append(
258
+ "quote",
259
+ `${components.size} components exported from ${pkg.name}@${pkg.version}.`,
260
+ );
258
261
  },
259
262
  },
260
263
  json: true,
@@ -605,7 +608,14 @@ type DataTableProps<Row> = {
605
608
  // Snippet prop for Svelte 5 compatibility
606
609
  cell?: (
607
610
  this: void,
608
- ...args: [{ row: Row; cell: DataTableCell<Row>; rowIndex: number; cellIndex: number }]
611
+ ...args: [
612
+ {
613
+ row: Row;
614
+ cell: DataTableCell<Row>;
615
+ rowIndex: number;
616
+ cellIndex: number;
617
+ },
618
+ ]
609
619
  ) => void;
610
620
 
611
621
  // Default slot as children prop
@@ -614,11 +624,18 @@ type DataTableProps<Row> = {
614
624
 
615
625
  export default class DataTable<Row> extends SvelteComponentTyped<
616
626
  DataTableProps<Row>,
617
- { /* events */ },
627
+ {
628
+ /* events */
629
+ },
618
630
  {
619
631
  // Traditional slot definition (Svelte 3/4)
620
632
  default: Record<string, never>;
621
- cell: { row: Row; cell: DataTableCell<Row>; rowIndex: number; cellIndex: number };
633
+ cell: {
634
+ row: Row;
635
+ cell: DataTableCell<Row>;
636
+ rowIndex: number;
637
+ cellIndex: number;
638
+ };
622
639
  }
623
640
  > {}
624
641
  ```
@@ -705,7 +722,7 @@ function handleSubmit() {
705
722
  dispatch("submit", {
706
723
  name: "Jane Doe",
707
724
  email: "jane@example.com",
708
- newsletter: true
725
+ newsletter: true,
709
726
  });
710
727
  }
711
728
  ```
@@ -752,7 +769,7 @@ const dispatch = createEventDispatcher();
752
769
  function throwSnowball() {
753
770
  dispatch("snowball", {
754
771
  isPacked: true,
755
- speed: 50
772
+ speed: 50,
756
773
  });
757
774
  }
758
775
  ```
@@ -1026,7 +1043,14 @@ Example
1026
1043
  The generated TypeScript definition will resemble the following:
1027
1044
 
1028
1045
  ```ts
1029
- export default class Component<Row extends DataTableRow = any> extends SvelteComponentTyped<
1046
+ // Props type includes the full constraint, enabling indexed access types like Row["id"]
1047
+ export type ComponentProps<Row extends DataTableRow = any> = {
1048
+ rows?: ReadonlyArray<Row>;
1049
+ };
1050
+
1051
+ export default class Component<
1052
+ Row extends DataTableRow = any,
1053
+ > extends SvelteComponentTyped<
1030
1054
  ComponentProps<Row>,
1031
1055
  Record<string, any>,
1032
1056
  Record<string, any>
@@ -1042,6 +1066,8 @@ For a parameter list, the name should be comma-separated but not include spaces.
1042
1066
  ```
1043
1067
 
1044
1068
  ```ts
1069
+ export type ComponentProps<Param1, Param2> = { ... };
1070
+
1045
1071
  export default class Component<Param1, Param2> extends SvelteComponentTyped<
1046
1072
  ComponentProps<Name1, Name2>,
1047
1073
  Record<string, any>,