@art-md/constructs 0.0.3 → 0.0.4

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 (139) hide show
  1. package/README.md +2 -2
  2. package/package.json +8 -3
  3. package/src/factories/constructs/Document/factory/createDocument.test.ts +2 -2
  4. package/src/factories/constructs/Document/factory/createDocument.ts +1 -1
  5. package/src/factories/constructs/Document/factory/types.ts +1 -1
  6. package/src/factories/constructs/Document/index.ts +2 -2
  7. package/src/factories/constructs/FieldBlock/factory/createFieldBlock.test.ts +2 -2
  8. package/src/factories/constructs/FieldBlock/factory/createFieldBlock.ts +2 -2
  9. package/src/factories/constructs/FieldBlock/factory/types.ts +2 -2
  10. package/src/factories/constructs/FieldBlock/index.ts +3 -3
  11. package/src/factories/constructs/FieldBlock/types.ts +2 -2
  12. package/src/factories/constructs/FieldInline/factory/createFieldInline.test.ts +2 -2
  13. package/src/factories/constructs/FieldInline/factory/createFieldInline.ts +2 -2
  14. package/src/factories/constructs/FieldInline/factory/types.ts +2 -2
  15. package/src/factories/constructs/FieldInline/index.ts +3 -3
  16. package/src/factories/constructs/FieldInline/types.ts +2 -2
  17. package/src/factories/constructs/NaturalBlock/factory/createNaturalBlock.test.ts +2 -2
  18. package/src/factories/constructs/NaturalBlock/factory/createNaturalBlock.ts +2 -2
  19. package/src/factories/constructs/NaturalBlock/factory/types.ts +1 -1
  20. package/src/factories/constructs/NaturalBlock/index.ts +3 -3
  21. package/src/factories/constructs/NaturalBlock/types.ts +1 -1
  22. package/src/factories/constructs/NaturalExpression/factory/createNaturalExpression.test.ts +2 -2
  23. package/src/factories/constructs/NaturalExpression/factory/createNaturalExpression.ts +2 -2
  24. package/src/factories/constructs/NaturalExpression/factory/types.ts +1 -1
  25. package/src/factories/constructs/NaturalExpression/index.ts +3 -3
  26. package/src/factories/constructs/SectionBlock/factory/createSectionBlock.test.ts +2 -4
  27. package/src/factories/constructs/SectionBlock/factory/createSectionBlock.ts +2 -3
  28. package/src/factories/constructs/SectionBlock/factory/types.ts +1 -2
  29. package/src/factories/constructs/SectionBlock/index.ts +3 -3
  30. package/src/factories/constructs/SectionBlock/types.ts +1 -2
  31. package/src/factories/constructs/Tag/factory/createTag.test.ts +1 -1
  32. package/src/factories/constructs/Tag/factory/createTag.ts +2 -2
  33. package/src/factories/constructs/Tag/index.ts +3 -3
  34. package/src/factories/index.ts +8 -8
  35. package/src/factories/public.ts +14 -14
  36. package/src/factories/types.ts +6 -6
  37. package/src/index.ts +3 -3
  38. package/src/parser/constructs/FieldBlock/createFieldBlockParser.test.ts +1 -1
  39. package/src/parser/constructs/FieldBlock/createFieldBlockParser.ts +2 -2
  40. package/src/parser/constructs/FieldBlock/index.ts +1 -1
  41. package/src/parser/constructs/FieldBlock/private/helpers/createFieldBlockFromNode.test.ts +4 -4
  42. package/src/parser/constructs/FieldBlock/private/helpers/createFieldBlockFromNode.ts +4 -4
  43. package/src/parser/constructs/FieldBlock/private/helpers/onBeforeConstruct.test.ts +1 -1
  44. package/src/parser/constructs/FieldBlock/private/index.ts +2 -2
  45. package/src/parser/constructs/FieldBlock/private/integrator/createFieldBlockIntegrator.test.ts +4 -4
  46. package/src/parser/constructs/FieldBlock/private/integrator/createFieldBlockIntegrator.ts +3 -3
  47. package/src/parser/constructs/FieldBlock/private/processor/createFieldBlockProcessor.test.ts +4 -4
  48. package/src/parser/constructs/FieldBlock/private/processor/createFieldBlockProcessor.ts +3 -3
  49. package/src/parser/constructs/FieldInline/createFieldInlineParser.test.ts +1 -1
  50. package/src/parser/constructs/FieldInline/createFieldInlineParser.ts +2 -2
  51. package/src/parser/constructs/FieldInline/index.ts +1 -1
  52. package/src/parser/constructs/FieldInline/private/helpers/createFieldInlineFromNode.test.ts +4 -4
  53. package/src/parser/constructs/FieldInline/private/helpers/createFieldInlineFromNode.ts +6 -6
  54. package/src/parser/constructs/FieldInline/private/helpers/trimFieldEdges.test.ts +2 -2
  55. package/src/parser/constructs/FieldInline/private/helpers/trimFieldEdges.ts +1 -1
  56. package/src/parser/constructs/FieldInline/private/index.ts +1 -1
  57. package/src/parser/constructs/FieldInline/private/processor/createFieldInlineProcessor.test.ts +4 -4
  58. package/src/parser/constructs/FieldInline/private/processor/createFieldInlineProcessor.ts +3 -3
  59. package/src/parser/constructs/NaturalBlock/createNaturalBlockParser.test.ts +1 -1
  60. package/src/parser/constructs/NaturalBlock/createNaturalBlockParser.ts +2 -2
  61. package/src/parser/constructs/NaturalBlock/index.ts +1 -1
  62. package/src/parser/constructs/NaturalBlock/private/helpers/createNaturalBlockFromNode.test.ts +4 -4
  63. package/src/parser/constructs/NaturalBlock/private/helpers/createNaturalBlockFromNode.ts +4 -4
  64. package/src/parser/constructs/NaturalBlock/private/index.ts +1 -1
  65. package/src/parser/constructs/NaturalBlock/private/processor/createNaturalBlockProcessor.test.ts +4 -4
  66. package/src/parser/constructs/NaturalBlock/private/processor/createNaturalBlockProcessor.ts +2 -2
  67. package/src/parser/constructs/SectionBlock/createSectionBlockParser.test.ts +1 -1
  68. package/src/parser/constructs/SectionBlock/createSectionBlockParser.ts +2 -2
  69. package/src/parser/constructs/SectionBlock/index.ts +1 -1
  70. package/src/parser/constructs/SectionBlock/private/helpers/createSectionBlockFromNode.test.ts +6 -6
  71. package/src/parser/constructs/SectionBlock/private/helpers/createSectionBlockFromNode.ts +4 -7
  72. package/src/parser/constructs/SectionBlock/private/helpers/findParentSection.test.ts +9 -3
  73. package/src/parser/constructs/SectionBlock/private/helpers/findParentSection.ts +1 -1
  74. package/src/parser/constructs/SectionBlock/private/index.ts +2 -2
  75. package/src/parser/constructs/SectionBlock/private/integrator/createSectionBlockIntegrator.test.ts +6 -3
  76. package/src/parser/constructs/SectionBlock/private/integrator/createSectionBlockIntegrator.ts +3 -3
  77. package/src/parser/constructs/SectionBlock/private/processor/createSectionBlockProcessor.test.ts +4 -4
  78. package/src/parser/constructs/SectionBlock/private/processor/createSectionBlockProcessor.ts +2 -2
  79. package/src/parser/document/createArtDocumentFromNode.test.ts +2 -2
  80. package/src/parser/document/createArtDocumentFromNode.ts +1 -1
  81. package/src/parser/document/index.ts +1 -1
  82. package/src/parser/fields/constants.test.ts +1 -1
  83. package/src/parser/fields/index.ts +3 -3
  84. package/src/parser/fields/isFieldStrong.test.ts +2 -2
  85. package/src/parser/fields/isFieldStrong.ts +2 -2
  86. package/src/parser/fields/stripStrong.test.ts +3 -3
  87. package/src/parser/fields/stripStrong.ts +1 -1
  88. package/src/parser/index.ts +6 -6
  89. package/src/parser/mdast/index.ts +1 -1
  90. package/src/parser/mdast/rawSlice.test.ts +1 -1
  91. package/src/parser/naturalExpression/createNaturalExpressionFromNode.test.ts +2 -2
  92. package/src/parser/naturalExpression/createNaturalExpressionFromNode.ts +2 -3
  93. package/src/parser/naturalExpression/index.ts +1 -1
  94. package/src/parser/public.ts +7 -7
  95. package/src/parser/tags/extractTags.test.ts +1 -1
  96. package/src/parser/tags/extractTags.ts +1 -1
  97. package/src/parser/tags/index.ts +1 -1
  98. package/src/parser/types.ts +1 -1
  99. package/src/serializer/constructs/Document/createDocumentToMdast.test.ts +1 -1
  100. package/src/serializer/constructs/Document/createDocumentToMdast.ts +1 -1
  101. package/src/serializer/constructs/Document/index.ts +1 -1
  102. package/src/serializer/constructs/FieldBlock/createFieldBlockToMdast.test.ts +2 -2
  103. package/src/serializer/constructs/FieldBlock/createFieldBlockToMdast.ts +3 -3
  104. package/src/serializer/constructs/FieldBlock/index.ts +1 -1
  105. package/src/serializer/constructs/FieldInline/createFieldInlineToMdast.test.ts +2 -2
  106. package/src/serializer/constructs/FieldInline/createFieldInlineToMdast.ts +3 -3
  107. package/src/serializer/constructs/FieldInline/index.ts +1 -1
  108. package/src/serializer/constructs/NaturalBlock/createNaturalBlockToMdast.test.ts +2 -2
  109. package/src/serializer/constructs/NaturalBlock/createNaturalBlockToMdast.ts +3 -3
  110. package/src/serializer/constructs/NaturalBlock/index.ts +1 -1
  111. package/src/serializer/constructs/NaturalExpression/createNaturalExpressionToMdast.test.ts +2 -2
  112. package/src/serializer/constructs/NaturalExpression/createNaturalExpressionToMdast.ts +2 -2
  113. package/src/serializer/constructs/NaturalExpression/index.ts +1 -1
  114. package/src/serializer/constructs/SectionBlock/createSectionBlockToMdast.test.ts +2 -2
  115. package/src/serializer/constructs/SectionBlock/createSectionBlockToMdast.ts +3 -3
  116. package/src/serializer/constructs/SectionBlock/index.ts +1 -1
  117. package/src/serializer/index.ts +7 -7
  118. package/src/serializer/public.ts +8 -8
  119. package/src/serializer/tags/index.ts +2 -2
  120. package/src/serializer/tags/tagToMdast.test.ts +1 -1
  121. package/src/serializer/tags/tagToMdast.ts +1 -1
  122. package/src/serializer/tags/tagsToMdast.test.ts +2 -2
  123. package/src/serializer/tags/tagsToMdast.ts +2 -2
  124. package/src/serializer/types.ts +1 -1
  125. package/src/test/helpers/constructs/FieldBlock/makeFieldBlockFixture.ts +1 -1
  126. package/src/test/helpers/constructs/FieldBlock/makeFieldBlockMock.ts +1 -1
  127. package/src/test/helpers/constructs/FieldInline/makeFieldInlineFixture.ts +1 -1
  128. package/src/test/helpers/constructs/FieldInline/makeFieldInlineMock.ts +1 -1
  129. package/src/test/helpers/constructs/NaturalBlock/makeNaturalBlockFixture.ts +1 -1
  130. package/src/test/helpers/constructs/NaturalBlock/makeNaturalBlockMock.ts +1 -1
  131. package/src/test/helpers/constructs/NaturalExpression/makeNaturalExpressionFixture.ts +1 -1
  132. package/src/test/helpers/constructs/NaturalExpression/makeNaturalExpressionMock.ts +1 -1
  133. package/src/test/helpers/constructs/SectionBlock/makeSectionBlockFixture.ts +1 -3
  134. package/src/test/helpers/constructs/Tag/makeTagFixture.ts +1 -1
  135. package/src/test/helpers/constructs/index.ts +14 -14
  136. package/src/test/helpers/index.ts +2 -2
  137. package/src/test/helpers/parsers/index.ts +5 -5
  138. package/src/parser/constructs/SectionBlock/private/constants.test.ts +0 -17
  139. package/src/parser/constructs/SectionBlock/private/constants.ts +0 -1
package/README.md CHANGED
@@ -1,10 +1,10 @@
1
- # artificial-constructs
1
+ # @art-md/constructs
2
2
 
3
3
  > Construct factories for the Art language.
4
4
 
5
5
  Construct factories and helpers used by the Art parser and serializer.
6
6
 
7
- This package is part of the [Art MD toolkit](../../README.md).
7
+ This package is part of the [Art MD](https://art-md.noodlestan.org) project.
8
8
 
9
9
  ## Development
10
10
 
package/package.json CHANGED
@@ -1,7 +1,12 @@
1
1
  {
2
2
  "name": "@art-md/constructs",
3
- "version": "0.0.3",
3
+ "version": "0.0.4",
4
4
  "description": "Construct factories for Art parser records.",
5
+ "keywords": [
6
+ "art",
7
+ "constructs",
8
+ "parser"
9
+ ],
5
10
  "author": "Noodlestan Collective",
6
11
  "license": "MIT",
7
12
  "private": false,
@@ -22,10 +27,10 @@
22
27
  "README.md"
23
28
  ],
24
29
  "scripts": {
25
- "dev": "vite build --watch",
30
+ "dev": "esbuild-cli-watch",
26
31
  "lint": "prettier . -c && eslint . && tsc --noEmit",
27
32
  "lint:fix": "prettier . -c --write && eslint . --fix",
28
- "build": "vite build",
33
+ "build": "esbuild-cli",
29
34
  "build:clean": "rm -rf dist",
30
35
  "test": "vitest run",
31
36
  "test:ci": "vitest run --coverage",
@@ -1,8 +1,8 @@
1
1
  import { describe, expect, it } from 'vitest';
2
2
 
3
- import type { SectionBlock } from '../../SectionBlock';
3
+ import type { SectionBlock } from '../../SectionBlock/index.js';
4
4
 
5
- import { createDocument } from './createDocument';
5
+ import { createDocument } from './createDocument.js';
6
6
 
7
7
  describe('createDocument', () => {
8
8
  it('WHEN creating an ArtDocument from data', () => {
@@ -1,6 +1,6 @@
1
1
  import { type ArtDocument, createArtDocument } from '@art-md/primitives';
2
2
 
3
- import type { DocumentFactoryData } from './types';
3
+ import type { DocumentFactoryData } from './types.js';
4
4
 
5
5
  export function createDocument(data: DocumentFactoryData): ArtDocument {
6
6
  const docData = {
@@ -1,4 +1,4 @@
1
- import type { BlockContent } from '../../../types';
1
+ import type { BlockContent } from '../../../types.js';
2
2
 
3
3
  export type DocumentFactoryData = {
4
4
  children?: BlockContent[];
@@ -1,3 +1,3 @@
1
- export { createDocument } from './factory/createDocument';
1
+ export { createDocument } from './factory/createDocument.js';
2
2
 
3
- export type { DocumentFactoryData } from './factory/types';
3
+ export type { DocumentFactoryData } from './factory/types.js';
@@ -4,9 +4,9 @@ import {
4
4
  makeFieldBlockFixture,
5
5
  makeNaturalBlockFixture,
6
6
  makeTagFixture,
7
- } from '../../../../test/helpers';
7
+ } from '../../../../test/helpers/index.js';
8
8
 
9
- import { createFieldBlock } from './createFieldBlock';
9
+ import { createFieldBlock } from './createFieldBlock.js';
10
10
 
11
11
  describe('createFieldBlock', () => {
12
12
  it('WHEN creating a FieldBlock from minimal data', () => {
@@ -1,6 +1,6 @@
1
- import type { FieldBlock } from '../types';
1
+ import type { FieldBlock } from '../types.js';
2
2
 
3
- import type { FieldBlockFactoryData } from './types';
3
+ import type { FieldBlockFactoryData } from './types.js';
4
4
 
5
5
  export function createFieldBlock(data: FieldBlockFactoryData): FieldBlock {
6
6
  const field: FieldBlock = {
@@ -1,5 +1,5 @@
1
- import type { BlockContent } from '../../../types';
2
- import type { Tag } from '../../Tag';
1
+ import type { BlockContent } from '../../../types.js';
2
+ import type { Tag } from '../../Tag/index.js';
3
3
 
4
4
  export type FieldBlockFactoryData = {
5
5
  name: string;
@@ -1,4 +1,4 @@
1
- export { createFieldBlock } from './factory/createFieldBlock';
1
+ export { createFieldBlock } from './factory/createFieldBlock.js';
2
2
 
3
- export type { FieldBlock } from './types';
4
- export type { FieldBlockFactoryData } from './factory/types';
3
+ export type { FieldBlock } from './types.js';
4
+ export type { FieldBlockFactoryData } from './factory/types.js';
@@ -1,7 +1,7 @@
1
1
  import type { ContainerConstructBase } from '@art-md/primitives';
2
2
 
3
- import type { BlockContent } from '../../types';
4
- import type { Tag } from '../Tag';
3
+ import type { BlockContent } from '../../types.js';
4
+ import type { Tag } from '../Tag/index.js';
5
5
 
6
6
  export type FieldBlock = ContainerConstructBase & {
7
7
  construct: 'FieldBlock';
@@ -4,9 +4,9 @@ import {
4
4
  makeFieldInlineFixture,
5
5
  makeNaturalExpressionFixture,
6
6
  makeTagFixture,
7
- } from '../../../../test/helpers';
7
+ } from '../../../../test/helpers/index.js';
8
8
 
9
- import { createFieldInline } from './createFieldInline';
9
+ import { createFieldInline } from './createFieldInline.js';
10
10
 
11
11
  describe('createFieldInline', () => {
12
12
  it('WHEN creating a FieldInline from minimal data', () => {
@@ -1,6 +1,6 @@
1
- import type { FieldInline } from '../types';
1
+ import type { FieldInline } from '../types.js';
2
2
 
3
- import type { FieldInlineFactoryData } from './types';
3
+ import type { FieldInlineFactoryData } from './types.js';
4
4
 
5
5
  export function createFieldInline(data: FieldInlineFactoryData): FieldInline {
6
6
  const field: FieldInline = {
@@ -1,5 +1,5 @@
1
- import type { NaturalExpression } from '../../NaturalExpression';
2
- import type { Tag } from '../../Tag';
1
+ import type { NaturalExpression } from '../../NaturalExpression/index.js';
2
+ import type { Tag } from '../../Tag/index.js';
3
3
 
4
4
  export type FieldInlineFactoryData = {
5
5
  name: string;
@@ -1,4 +1,4 @@
1
- export { createFieldInline } from './factory/createFieldInline';
1
+ export { createFieldInline } from './factory/createFieldInline.js';
2
2
 
3
- export type { FieldInline } from './types';
4
- export type { FieldInlineFactoryData } from './factory/types';
3
+ export type { FieldInline } from './types.js';
4
+ export type { FieldInlineFactoryData } from './factory/types.js';
@@ -1,7 +1,7 @@
1
1
  import type { ContainerConstructBase } from '@art-md/primitives';
2
2
 
3
- import type { NaturalExpression } from '../NaturalExpression';
4
- import type { Tag } from '../Tag';
3
+ import type { NaturalExpression } from '../NaturalExpression/index.js';
4
+ import type { Tag } from '../Tag/index.js';
5
5
 
6
6
  export type FieldInline = ContainerConstructBase & {
7
7
  construct: 'FieldInline';
@@ -1,8 +1,8 @@
1
1
  import { describe, expect, it } from 'vitest';
2
2
 
3
- import { makeNaturalBlockFixture, makeTagFixture } from '../../../../test/helpers';
3
+ import { makeNaturalBlockFixture, makeTagFixture } from '../../../../test/helpers/index.js';
4
4
 
5
- import { createNaturalBlock } from './createNaturalBlock';
5
+ import { createNaturalBlock } from './createNaturalBlock.js';
6
6
 
7
7
  describe('createNaturalBlock', () => {
8
8
  it('WHEN creating a NaturalBlock from minimal data', () => {
@@ -1,6 +1,6 @@
1
- import type { NaturalBlock } from '../types';
1
+ import type { NaturalBlock } from '../types.js';
2
2
 
3
- import type { NaturalBlockFactoryData } from './types';
3
+ import type { NaturalBlockFactoryData } from './types.js';
4
4
 
5
5
  export function createNaturalBlock(data: NaturalBlockFactoryData): NaturalBlock {
6
6
  const block: NaturalBlock = {
@@ -1,6 +1,6 @@
1
1
  import type { ContainerConstructBase } from '@art-md/primitives';
2
2
 
3
- import type { Tag } from '../../Tag';
3
+ import type { Tag } from '../../Tag/index.js';
4
4
 
5
5
  export type NaturalBlockFactoryData = {
6
6
  value: string;
@@ -1,4 +1,4 @@
1
- export { createNaturalBlock } from './factory/createNaturalBlock';
1
+ export { createNaturalBlock } from './factory/createNaturalBlock.js';
2
2
 
3
- export type { NaturalBlock } from './types';
4
- export type { NaturalBlockFactoryData } from './factory/types';
3
+ export type { NaturalBlock } from './types.js';
4
+ export type { NaturalBlockFactoryData } from './factory/types.js';
@@ -1,6 +1,6 @@
1
1
  import type { ContainerConstructBase } from '@art-md/primitives';
2
2
 
3
- import type { Tag } from '../Tag';
3
+ import type { Tag } from '../Tag/index.js';
4
4
 
5
5
  export type NaturalBlock = ContainerConstructBase & {
6
6
  construct: 'NaturalBlock';
@@ -1,8 +1,8 @@
1
1
  import { describe, expect, it } from 'vitest';
2
2
 
3
- import { makeNaturalExpressionFixture } from '../../../../test/helpers';
3
+ import { makeNaturalExpressionFixture } from '../../../../test/helpers/index.js';
4
4
 
5
- import { createNaturalExpression } from './createNaturalExpression';
5
+ import { createNaturalExpression } from './createNaturalExpression.js';
6
6
 
7
7
  describe('createNaturalExpression', () => {
8
8
  it('WHEN creating a NaturalExpression from data', () => {
@@ -1,6 +1,6 @@
1
- import type { NaturalExpression } from '../types';
1
+ import type { NaturalExpression } from '../types.js';
2
2
 
3
- import type { NaturalExpressionFactoryData } from './types';
3
+ import type { NaturalExpressionFactoryData } from './types.js';
4
4
 
5
5
  export function createNaturalExpression(data: NaturalExpressionFactoryData): NaturalExpression {
6
6
  return {
@@ -1,4 +1,4 @@
1
- import type { NaturalExpression } from '../types';
1
+ import type { NaturalExpression } from '../types.js';
2
2
 
3
3
  export type NaturalExpressionFactoryData = {
4
4
  type: string;
@@ -1,4 +1,4 @@
1
- export { createNaturalExpression } from './factory/createNaturalExpression';
1
+ export { createNaturalExpression } from './factory/createNaturalExpression.js';
2
2
 
3
- export type { NaturalExpression } from './types';
4
- export type { NaturalExpressionFactoryData } from './factory/types';
3
+ export type { NaturalExpression } from './types.js';
4
+ export type { NaturalExpressionFactoryData } from './factory/types.js';
@@ -4,9 +4,9 @@ import {
4
4
  makeNaturalBlockFixture,
5
5
  makeSectionBlockFixture,
6
6
  makeTagFixture,
7
- } from '../../../../test/helpers';
7
+ } from '../../../../test/helpers/index.js';
8
8
 
9
- import { createSectionBlock } from './createSectionBlock';
9
+ import { createSectionBlock } from './createSectionBlock.js';
10
10
 
11
11
  describe('createSectionBlock', () => {
12
12
  it('WHEN creating a SectionBlock from minimal data', () => {
@@ -17,12 +17,10 @@ describe('createSectionBlock', () => {
17
17
  it('WHEN provided includes optional properties', () => {
18
18
  const result = createSectionBlock({
19
19
  name: 'Test',
20
- kind: 'Module',
21
20
  depth: 2,
22
21
  children: [makeNaturalBlockFixture()],
23
22
  tags: [makeTagFixture()],
24
23
  });
25
- expect(result.kind).toBe('Module');
26
24
  expect(result.depth).toBe(2);
27
25
  expect(result.children).toHaveLength(1);
28
26
  expect(result.tags).toHaveLength(1);
@@ -1,6 +1,6 @@
1
- import type { SectionBlock } from '../types';
1
+ import type { SectionBlock } from '../types.js';
2
2
 
3
- import type { SectionBlockFactoryData } from './types';
3
+ import type { SectionBlockFactoryData } from './types.js';
4
4
 
5
5
  export function createSectionBlock(data: SectionBlockFactoryData): SectionBlock {
6
6
  const section: SectionBlock = {
@@ -8,7 +8,6 @@ export function createSectionBlock(data: SectionBlockFactoryData): SectionBlock
8
8
  name: data.name,
9
9
  children: data.children ?? [],
10
10
  };
11
- if (data.kind) section.kind = data.kind;
12
11
  if (data.depth !== undefined) section.depth = data.depth;
13
12
  if (data.tags?.length) section.tags = data.tags;
14
13
  return section;
@@ -1,10 +1,9 @@
1
1
  import type { ConstructBase } from '@art-md/primitives';
2
2
 
3
- import type { Tag } from '../../Tag';
3
+ import type { Tag } from '../../Tag/index.js';
4
4
 
5
5
  export type SectionBlockFactoryData = {
6
6
  name: string;
7
- kind?: string;
8
7
  depth?: number;
9
8
  children?: ConstructBase[];
10
9
  tags?: Tag[];
@@ -1,4 +1,4 @@
1
- export { createSectionBlock } from './factory/createSectionBlock';
1
+ export { createSectionBlock } from './factory/createSectionBlock.js';
2
2
 
3
- export type { SectionBlock } from './types';
4
- export type { SectionBlockFactoryData } from './factory/types';
3
+ export type { SectionBlock } from './types.js';
4
+ export type { SectionBlockFactoryData } from './factory/types.js';
@@ -1,10 +1,9 @@
1
1
  import type { ConstructBase, ContainerConstructBase } from '@art-md/primitives';
2
2
 
3
- import type { Tag } from '../Tag';
3
+ import type { Tag } from '../Tag/index.js';
4
4
 
5
5
  export type SectionBlock = ContainerConstructBase & {
6
6
  construct: 'SectionBlock';
7
- kind?: string;
8
7
  name: string;
9
8
  tags?: Tag[];
10
9
  children: ConstructBase[];
@@ -1,6 +1,6 @@
1
1
  import { describe, expect, it } from 'vitest';
2
2
 
3
- import { createTag } from './createTag';
3
+ import { createTag } from './createTag.js';
4
4
 
5
5
  describe('createTag', () => {
6
6
  it('WHEN creating a Tag from data', () => {
@@ -1,6 +1,6 @@
1
- import type { Tag } from '../types';
1
+ import type { Tag } from '../types.js';
2
2
 
3
- import type { TagFactoryData } from './types';
3
+ import type { TagFactoryData } from './types.js';
4
4
 
5
5
  export function createTag(tagData: TagFactoryData): Tag {
6
6
  return { construct: 'Tag' as const, name: tagData.name };
@@ -1,4 +1,4 @@
1
- export { createTag } from './factory/createTag';
1
+ export { createTag } from './factory/createTag.js';
2
2
 
3
- export type { Tag } from './types';
4
- export type { TagFactoryData } from './factory/types';
3
+ export type { Tag } from './types.js';
4
+ export type { TagFactoryData } from './factory/types.js';
@@ -1,9 +1,9 @@
1
- export * from './constructs/Document';
2
- export * from './constructs/FieldBlock';
3
- export * from './constructs/FieldInline';
4
- export * from './constructs/NaturalBlock';
5
- export * from './constructs/NaturalExpression';
6
- export * from './constructs/SectionBlock';
7
- export * from './constructs/Tag';
1
+ export * from './constructs/Document/index.js';
2
+ export * from './constructs/FieldBlock/index.js';
3
+ export * from './constructs/FieldInline/index.js';
4
+ export * from './constructs/NaturalBlock/index.js';
5
+ export * from './constructs/NaturalExpression/index.js';
6
+ export * from './constructs/SectionBlock/index.js';
7
+ export * from './constructs/Tag/index.js';
8
8
 
9
- export type * from './types';
9
+ export type * from './types.js';
@@ -1,19 +1,19 @@
1
- import { createDocument } from './constructs/Document';
2
- import { createFieldBlock } from './constructs/FieldBlock';
3
- import { createFieldInline } from './constructs/FieldInline';
4
- import { createNaturalBlock } from './constructs/NaturalBlock';
5
- import { createNaturalExpression } from './constructs/NaturalExpression';
6
- import { createSectionBlock } from './constructs/SectionBlock';
7
- import { createTag } from './constructs/Tag';
1
+ import { createDocument } from './constructs/Document/index.js';
2
+ import { createFieldBlock } from './constructs/FieldBlock/index.js';
3
+ import { createFieldInline } from './constructs/FieldInline/index.js';
4
+ import { createNaturalBlock } from './constructs/NaturalBlock/index.js';
5
+ import { createNaturalExpression } from './constructs/NaturalExpression/index.js';
6
+ import { createSectionBlock } from './constructs/SectionBlock/index.js';
7
+ import { createTag } from './constructs/Tag/index.js';
8
8
 
9
- export type { FieldBlock } from './constructs/FieldBlock';
10
- export type { FieldInline } from './constructs/FieldInline';
11
- export type { NaturalBlock } from './constructs/NaturalBlock';
12
- export type { NaturalExpression } from './constructs/NaturalExpression';
13
- export type { SectionBlock } from './constructs/SectionBlock';
14
- export type { Tag } from './constructs/Tag';
9
+ export type { FieldBlock } from './constructs/FieldBlock/index.js';
10
+ export type { FieldInline } from './constructs/FieldInline/index.js';
11
+ export type { NaturalBlock } from './constructs/NaturalBlock/index.js';
12
+ export type { NaturalExpression } from './constructs/NaturalExpression/index.js';
13
+ export type { SectionBlock } from './constructs/SectionBlock/index.js';
14
+ export type { Tag } from './constructs/Tag/index.js';
15
15
 
16
- export type * from './types';
16
+ export type * from './types.js';
17
17
 
18
18
  export const FACTORIES = [
19
19
  {
@@ -1,9 +1,9 @@
1
- import type { FieldBlock } from './constructs/FieldBlock';
2
- import type { FieldInline } from './constructs/FieldInline';
3
- import type { NaturalBlock } from './constructs/NaturalBlock';
4
- import type { NaturalExpression } from './constructs/NaturalExpression';
5
- import type { SectionBlock } from './constructs/SectionBlock';
6
- import type { Tag } from './constructs/Tag';
1
+ import type { FieldBlock } from './constructs/FieldBlock/index.js';
2
+ import type { FieldInline } from './constructs/FieldInline/index.js';
3
+ import type { NaturalBlock } from './constructs/NaturalBlock/index.js';
4
+ import type { NaturalExpression } from './constructs/NaturalExpression/index.js';
5
+ import type { SectionBlock } from './constructs/SectionBlock/index.js';
6
+ import type { Tag } from './constructs/Tag/index.js';
7
7
 
8
8
  /**
9
9
  * Open registry of block-level constructs. Augment via declaration merging when new constructs land.
package/src/index.ts CHANGED
@@ -1,3 +1,3 @@
1
- export * from './factories/public';
2
- export * from './parser/public';
3
- export * from './serializer/public';
1
+ export * from './factories/public.js';
2
+ export * from './parser/public.js';
3
+ export * from './serializer/public.js';
@@ -1,6 +1,6 @@
1
1
  import { describe, expect, it } from 'vitest';
2
2
 
3
- import { createFieldBlockParser } from './createFieldBlockParser';
3
+ import { createFieldBlockParser } from './createFieldBlockParser.js';
4
4
 
5
5
  describe('createFieldBlockParser', () => {
6
6
  it('WHEN called returns a parser with FieldBlock name, processor, integrator and factory', () => {
@@ -1,6 +1,6 @@
1
- import type { ConstructParserFactory } from '../../types';
1
+ import type { ConstructParserFactory } from '../../types.js';
2
2
 
3
- import { createFieldBlockIntegrator, createFieldBlockProcessor } from './private';
3
+ import { createFieldBlockIntegrator, createFieldBlockProcessor } from './private/index.js';
4
4
 
5
5
  export const createFieldBlockParser: ConstructParserFactory = () => ({
6
6
  name: 'FieldBlock',
@@ -1 +1 @@
1
- export { createFieldBlockParser } from './createFieldBlockParser';
1
+ export { createFieldBlockParser } from './createFieldBlockParser.js';
@@ -1,14 +1,14 @@
1
- import { makeParserVisitContextMock } from '@art-md/primitives/src/test/helpers';
1
+ import { makeParserVisitContextMock } from '@art-md/primitives/src/test/helpers/index.js';
2
2
  import type { Paragraph } from 'mdast';
3
3
  import { fromMarkdown } from 'mdast-util-from-markdown';
4
4
  import { describe, expect, it, vi } from 'vitest';
5
5
 
6
- import { createFieldBlock } from '../../../../../factories';
6
+ import { createFieldBlock } from '../../../../../factories/index.js';
7
7
 
8
- import { createFieldBlockFromNode } from './createFieldBlockFromNode';
8
+ import { createFieldBlockFromNode } from './createFieldBlockFromNode.js';
9
9
 
10
10
  vi.mock('../../../../../factories/constructs/FieldBlock/factory/createFieldBlock', async () => {
11
- const { createFieldBlockMock } = await import('../../../../../test/helpers');
11
+ const { createFieldBlockMock } = await import('../../../../../test/helpers/index.js');
12
12
  return createFieldBlockMock();
13
13
  });
14
14
 
@@ -2,10 +2,10 @@ import type { ParserVisitContext } from '@art-md/primitives';
2
2
  import { nodePosition } from '@art-md/primitives';
3
3
  import type { Paragraph, Strong } from 'mdast';
4
4
 
5
- import { type FieldBlock, createFieldBlock } from '../../../../../factories';
6
- import { stripStrong } from '../../../../fields';
7
- import { rawSlice } from '../../../../mdast';
8
- import { extractTags } from '../../../../tags';
5
+ import { type FieldBlock, createFieldBlock } from '../../../../../factories/index.js';
6
+ import { stripStrong } from '../../../../fields/index.js';
7
+ import { rawSlice } from '../../../../mdast/index.js';
8
+ import { extractTags } from '../../../../tags/index.js';
9
9
 
10
10
  export function createFieldBlockFromNode(
11
11
  paragraph: Paragraph,
@@ -1,6 +1,6 @@
1
1
  import { describe, expect, it, vi } from 'vitest';
2
2
 
3
- import { onBeforeConstruct } from './onBeforeConstruct';
3
+ import { onBeforeConstruct } from './onBeforeConstruct.js';
4
4
 
5
5
  describe('onBeforeConstruct', () => {
6
6
  it('FOR a non-boundary construct returns the same context', () => {
@@ -1,2 +1,2 @@
1
- export * from './integrator/createFieldBlockIntegrator';
2
- export * from './processor/createFieldBlockProcessor';
1
+ export * from './integrator/createFieldBlockIntegrator.js';
2
+ export * from './processor/createFieldBlockProcessor.js';
@@ -1,10 +1,10 @@
1
- import { makeParserVisitContextMock } from '@art-md/primitives/src/test/helpers';
1
+ import { makeParserVisitContextMock } from '@art-md/primitives/src/test/helpers/index.js';
2
2
  import { describe, expect, it, vi } from 'vitest';
3
3
 
4
- import { makeFieldBlockFixture } from '../../../../../test/helpers';
5
- import { onBeforeConstruct } from '../helpers/onBeforeConstruct';
4
+ import { makeFieldBlockFixture } from '../../../../../test/helpers/index.js';
5
+ import { onBeforeConstruct } from '../helpers/onBeforeConstruct.js';
6
6
 
7
- import { createFieldBlockIntegrator } from './createFieldBlockIntegrator';
7
+ import { createFieldBlockIntegrator } from './createFieldBlockIntegrator.js';
8
8
 
9
9
  describe('createFieldBlockIntegrator', () => {
10
10
  it('WHEN integrating captures the construct and returns a child context', () => {
@@ -1,6 +1,6 @@
1
- import type { FieldBlock } from '../../../../../factories';
2
- import type { ConstructIntegrator } from '../../../../types';
3
- import { onBeforeConstruct } from '../helpers/onBeforeConstruct';
1
+ import type { FieldBlock } from '../../../../../factories/index.js';
2
+ import type { ConstructIntegrator } from '../../../../types.js';
3
+ import { onBeforeConstruct } from '../helpers/onBeforeConstruct.js';
4
4
 
5
5
  export function createFieldBlockIntegrator(): ConstructIntegrator {
6
6
  return {
@@ -1,11 +1,11 @@
1
- import { makeParserVisitContextMock } from '@art-md/primitives/src/test/helpers';
1
+ import { makeParserVisitContextMock } from '@art-md/primitives/src/test/helpers/index.js';
2
2
  import { fromMarkdown } from 'mdast-util-from-markdown';
3
3
  import { describe, expect, it, vi } from 'vitest';
4
4
 
5
- import { createFieldBlockFromNodeMock } from '../../../../../test/helpers';
6
- import { createFieldBlockFromNode } from '../helpers/createFieldBlockFromNode';
5
+ import { createFieldBlockFromNodeMock } from '../../../../../test/helpers/index.js';
6
+ import { createFieldBlockFromNode } from '../helpers/createFieldBlockFromNode.js';
7
7
 
8
- import { createFieldBlockProcessor } from './createFieldBlockProcessor';
8
+ import { createFieldBlockProcessor } from './createFieldBlockProcessor.js';
9
9
 
10
10
  vi.mock('../helpers/createFieldBlockFromNode', async () => {
11
11
  return createFieldBlockFromNodeMock();
@@ -1,8 +1,8 @@
1
1
  import type { Paragraph } from 'mdast';
2
2
 
3
- import { isFieldStrong } from '../../../../fields';
4
- import type { ConstructProcessor } from '../../../../types';
5
- import { createFieldBlockFromNode } from '../helpers/createFieldBlockFromNode';
3
+ import { isFieldStrong } from '../../../../fields/index.js';
4
+ import type { ConstructProcessor } from '../../../../types.js';
5
+ import { createFieldBlockFromNode } from '../helpers/createFieldBlockFromNode.js';
6
6
 
7
7
  export function createFieldBlockProcessor(): ConstructProcessor {
8
8
  return {
@@ -1,6 +1,6 @@
1
1
  import { describe, expect, it } from 'vitest';
2
2
 
3
- import { createFieldInlineParser } from './createFieldInlineParser';
3
+ import { createFieldInlineParser } from './createFieldInlineParser.js';
4
4
 
5
5
  describe('createFieldInlineParser', () => {
6
6
  it('WHEN called returns a parser with FieldInline name, processor and factory', () => {
@@ -1,6 +1,6 @@
1
- import type { ConstructParserFactory } from '../../types';
1
+ import type { ConstructParserFactory } from '../../types.js';
2
2
 
3
- import { createFieldInlineProcessor } from './private';
3
+ import { createFieldInlineProcessor } from './private/index.js';
4
4
 
5
5
  export const createFieldInlineParser: ConstructParserFactory = () => ({
6
6
  name: 'FieldInline',
@@ -1 +1 @@
1
- export { createFieldInlineParser } from './createFieldInlineParser';
1
+ export { createFieldInlineParser } from './createFieldInlineParser.js';