@savvy-web/silk 0.5.0 → 1.1.0

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.
@@ -77211,10 +77211,12 @@ function readRawPackageJson(fs, pkgDir) {
77211
77211
  /**
77212
77212
  * Build resolved scopes from the discovered workspace packages, keeping only
77213
77213
  * those that are a release surface (declare publishConfig that yields at least
77214
- * one publish target). Used when `.changeset/config.json` declares no explicit
77215
- * `packages` record. The changeset `ignore` list is intentionally NOT consulted
77216
- * here an ignored package still declares publishConfig and remains a valid
77217
- * changeset target.
77214
+ * one publish target). Used both when `.changeset/config.json` declares no
77215
+ * explicit `packages` record AND to augment an explicit record with the
77216
+ * remaining workspace packages it does not list (so the record annotates the
77217
+ * listed packages without shrinking the release surface). The changeset
77218
+ * `ignore` list is intentionally NOT consulted here — an ignored package still
77219
+ * declares publishConfig and remains a valid changeset target.
77218
77220
  */
77219
77221
  function buildFallbackScopes(fs, workspaces) {
77220
77222
  return effect.Effect.forEach(workspaces, (ws) => effect.Effect.gen(function* () {
@@ -77328,19 +77330,24 @@ function makeShape$2(reader, discovery, fs) {
77328
77330
  }));
77329
77331
  const hasExplicitPackages = Object.keys(decodedOptions.packages ?? {}).length > 0;
77330
77332
  let scopes;
77331
- if (hasExplicitPackages) try {
77332
- scopes = buildResolvedScopes({
77333
- options: decodedOptions,
77334
- workspaces,
77335
- projectDir,
77336
- configPath
77337
- });
77338
- checkConflicts(scopes, workspaces, projectDir, configPath);
77339
- } catch (e) {
77340
- if (e instanceof ConfigurationError) return yield* effect.Effect.fail(e);
77341
- throw e;
77342
- }
77343
- else scopes = yield* buildFallbackScopes(fs, workspaces);
77333
+ if (hasExplicitPackages) {
77334
+ let explicitScopes;
77335
+ try {
77336
+ explicitScopes = buildResolvedScopes({
77337
+ options: decodedOptions,
77338
+ workspaces,
77339
+ projectDir,
77340
+ configPath
77341
+ });
77342
+ checkConflicts(explicitScopes, workspaces, projectDir, configPath);
77343
+ } catch (e) {
77344
+ if (e instanceof ConfigurationError) return yield* effect.Effect.fail(e);
77345
+ throw e;
77346
+ }
77347
+ const explicitNames = new Set(explicitScopes.map((s) => s.name));
77348
+ const discoveredScopes = yield* buildFallbackScopes(fs, workspaces.filter((w) => !explicitNames.has(w.name)));
77349
+ scopes = [...explicitScopes, ...discoveredScopes];
77350
+ } else scopes = yield* buildFallbackScopes(fs, workspaces);
77344
77351
  const inspected = {
77345
77352
  configPath,
77346
77353
  projectDir,
@@ -8501,7 +8501,7 @@ interface TokenTypeMap {
8501
8501
  chunkText: 'chunkText';
8502
8502
  chunkString: 'chunkString';
8503
8503
  } //#endregion
8504
- //#region ../../node_modules/.pnpm/markdownlint@0.40.0/node_modules/markdownlint/lib/markdownlint.d.mts
8504
+ //#region ../../node_modules/.pnpm/markdownlint@0.41.0/node_modules/markdownlint/lib/markdownlint.d.mts
8505
8505
  /**
8506
8506
  * Function to implement rule logic.
8507
8507
  */
@@ -8567,13 +8567,13 @@ type ParserMicromark = {
8567
8567
  tokens: MicromarkToken[];
8568
8568
  };
8569
8569
  /**
8570
- * markdown-it token.
8570
+ * markdown-it base token.
8571
8571
  */
8572
- type MarkdownItToken = {
8572
+ type MarkdownItBaseToken = {
8573
8573
  /**
8574
8574
  * HTML attributes.
8575
8575
  */
8576
- attrs: string[][];
8576
+ attrs: string[][] | null;
8577
8577
  /**
8578
8578
  * Block-level token.
8579
8579
  */
@@ -8581,7 +8581,7 @@ type MarkdownItToken = {
8581
8581
  /**
8582
8582
  * Child nodes.
8583
8583
  */
8584
- children: MarkdownItToken[];
8584
+ children: MarkdownItBaseToken[] | null;
8585
8585
  /**
8586
8586
  * Tag contents.
8587
8587
  */
@@ -8601,7 +8601,7 @@ type MarkdownItToken = {
8601
8601
  /**
8602
8602
  * Beginning/ending line numbers.
8603
8603
  */
8604
- map: number[];
8604
+ map: number[] | null;
8605
8605
  /**
8606
8606
  * Markup text.
8607
8607
  */
@@ -8609,7 +8609,7 @@ type MarkdownItToken = {
8609
8609
  /**
8610
8610
  * Arbitrary data.
8611
8611
  */
8612
- meta: any;
8612
+ meta: Object;
8613
8613
  /**
8614
8614
  * Level change.
8615
8615
  */
@@ -8622,6 +8622,15 @@ type MarkdownItToken = {
8622
8622
  * Token type.
8623
8623
  */
8624
8624
  type: string;
8625
+ };
8626
+ /**
8627
+ * markdown-it extended token.
8628
+ */
8629
+ type MarkdownItExtendedToken = {
8630
+ /**
8631
+ * Child nodes.
8632
+ */
8633
+ children: MarkdownItExtendedToken[] | null;
8625
8634
  /**
8626
8635
  * Line number (1-based).
8627
8636
  */
@@ -8631,6 +8640,10 @@ type MarkdownItToken = {
8631
8640
  */
8632
8641
  line: string;
8633
8642
  };
8643
+ /**
8644
+ * markdown-it token.
8645
+ */
8646
+ type MarkdownItToken = MarkdownItBaseToken & MarkdownItExtendedToken;
8634
8647
  type MicromarkTokenType = TokenType;
8635
8648
  /**
8636
8649
  * micromark token.
@@ -8684,23 +8697,23 @@ type RuleOnErrorInfo = {
8684
8697
  /**
8685
8698
  * Detail about the error.
8686
8699
  */
8687
- detail?: string;
8700
+ detail?: string | undefined;
8688
8701
  /**
8689
8702
  * Context for the error.
8690
8703
  */
8691
- context?: string;
8704
+ context?: string | undefined;
8692
8705
  /**
8693
8706
  * Link to more information.
8694
8707
  */
8695
- information?: URL;
8708
+ information?: URL | undefined;
8696
8709
  /**
8697
8710
  * Column number (1-based) and length.
8698
8711
  */
8699
- range?: number[];
8712
+ range?: number[] | undefined;
8700
8713
  /**
8701
8714
  * Fix information.
8702
8715
  */
8703
- fixInfo?: RuleOnErrorFixInfo;
8716
+ fixInfo?: RuleOnErrorFixInfo | undefined;
8704
8717
  };
8705
8718
  /**
8706
8719
  * Fix information for RuleOnErrorInfo.
@@ -8709,19 +8722,19 @@ type RuleOnErrorFixInfo = {
8709
8722
  /**
8710
8723
  * Line number (1-based).
8711
8724
  */
8712
- lineNumber?: number;
8725
+ lineNumber?: number | undefined;
8713
8726
  /**
8714
8727
  * Column of the fix (1-based).
8715
8728
  */
8716
- editColumn?: number;
8729
+ editColumn?: number | undefined;
8717
8730
  /**
8718
8731
  * Count of characters to delete.
8719
8732
  */
8720
- deleteCount?: number;
8733
+ deleteCount?: number | undefined;
8721
8734
  /**
8722
8735
  * Text to insert (after deleting).
8723
8736
  */
8724
- insertText?: string;
8737
+ insertText?: string | undefined;
8725
8738
  };
8726
8739
  /**
8727
8740
  * Rule definition.
@@ -8738,7 +8751,7 @@ type Rule$2 = {
8738
8751
  /**
8739
8752
  * Link to more information.
8740
8753
  */
8741
- information?: URL;
8754
+ information?: URL | undefined;
8742
8755
  /**
8743
8756
  * Rule tag(s).
8744
8757
  */
@@ -8750,7 +8763,7 @@ type Rule$2 = {
8750
8763
  /**
8751
8764
  * True if asynchronous.
8752
8765
  */
8753
- asynchronous?: boolean;
8766
+ asynchronous?: boolean | undefined;
8754
8767
  /**
8755
8768
  * Rule implementation.
8756
8769
  */
@@ -8760,7 +8773,7 @@ type Rule$2 = {
8760
8773
  * Rule configuration.
8761
8774
  */
8762
8775
  type RuleConfiguration = boolean | any; //#endregion
8763
- //#region ../../node_modules/.pnpm/markdownlint@0.40.0/node_modules/markdownlint/lib/exports.d.mts
8776
+ //#region ../../node_modules/.pnpm/markdownlint@0.41.0/node_modules/markdownlint/lib/exports.d.mts
8764
8777
  type Rule$1 = Rule$2; //#endregion
8765
8778
  //#region src/changesets/markdownlint/rules/content-structure.d.ts
8766
8779
  /**
@@ -8501,7 +8501,7 @@ interface TokenTypeMap {
8501
8501
  chunkText: 'chunkText';
8502
8502
  chunkString: 'chunkString';
8503
8503
  } //#endregion
8504
- //#region ../../node_modules/.pnpm/markdownlint@0.40.0/node_modules/markdownlint/lib/markdownlint.d.mts
8504
+ //#region ../../node_modules/.pnpm/markdownlint@0.41.0/node_modules/markdownlint/lib/markdownlint.d.mts
8505
8505
  /**
8506
8506
  * Function to implement rule logic.
8507
8507
  */
@@ -8567,13 +8567,13 @@ type ParserMicromark = {
8567
8567
  tokens: MicromarkToken[];
8568
8568
  };
8569
8569
  /**
8570
- * markdown-it token.
8570
+ * markdown-it base token.
8571
8571
  */
8572
- type MarkdownItToken = {
8572
+ type MarkdownItBaseToken = {
8573
8573
  /**
8574
8574
  * HTML attributes.
8575
8575
  */
8576
- attrs: string[][];
8576
+ attrs: string[][] | null;
8577
8577
  /**
8578
8578
  * Block-level token.
8579
8579
  */
@@ -8581,7 +8581,7 @@ type MarkdownItToken = {
8581
8581
  /**
8582
8582
  * Child nodes.
8583
8583
  */
8584
- children: MarkdownItToken[];
8584
+ children: MarkdownItBaseToken[] | null;
8585
8585
  /**
8586
8586
  * Tag contents.
8587
8587
  */
@@ -8601,7 +8601,7 @@ type MarkdownItToken = {
8601
8601
  /**
8602
8602
  * Beginning/ending line numbers.
8603
8603
  */
8604
- map: number[];
8604
+ map: number[] | null;
8605
8605
  /**
8606
8606
  * Markup text.
8607
8607
  */
@@ -8609,7 +8609,7 @@ type MarkdownItToken = {
8609
8609
  /**
8610
8610
  * Arbitrary data.
8611
8611
  */
8612
- meta: any;
8612
+ meta: Object;
8613
8613
  /**
8614
8614
  * Level change.
8615
8615
  */
@@ -8622,6 +8622,15 @@ type MarkdownItToken = {
8622
8622
  * Token type.
8623
8623
  */
8624
8624
  type: string;
8625
+ };
8626
+ /**
8627
+ * markdown-it extended token.
8628
+ */
8629
+ type MarkdownItExtendedToken = {
8630
+ /**
8631
+ * Child nodes.
8632
+ */
8633
+ children: MarkdownItExtendedToken[] | null;
8625
8634
  /**
8626
8635
  * Line number (1-based).
8627
8636
  */
@@ -8631,6 +8640,10 @@ type MarkdownItToken = {
8631
8640
  */
8632
8641
  line: string;
8633
8642
  };
8643
+ /**
8644
+ * markdown-it token.
8645
+ */
8646
+ type MarkdownItToken = MarkdownItBaseToken & MarkdownItExtendedToken;
8634
8647
  type MicromarkTokenType = TokenType;
8635
8648
  /**
8636
8649
  * micromark token.
@@ -8684,23 +8697,23 @@ type RuleOnErrorInfo = {
8684
8697
  /**
8685
8698
  * Detail about the error.
8686
8699
  */
8687
- detail?: string;
8700
+ detail?: string | undefined;
8688
8701
  /**
8689
8702
  * Context for the error.
8690
8703
  */
8691
- context?: string;
8704
+ context?: string | undefined;
8692
8705
  /**
8693
8706
  * Link to more information.
8694
8707
  */
8695
- information?: URL;
8708
+ information?: URL | undefined;
8696
8709
  /**
8697
8710
  * Column number (1-based) and length.
8698
8711
  */
8699
- range?: number[];
8712
+ range?: number[] | undefined;
8700
8713
  /**
8701
8714
  * Fix information.
8702
8715
  */
8703
- fixInfo?: RuleOnErrorFixInfo;
8716
+ fixInfo?: RuleOnErrorFixInfo | undefined;
8704
8717
  };
8705
8718
  /**
8706
8719
  * Fix information for RuleOnErrorInfo.
@@ -8709,19 +8722,19 @@ type RuleOnErrorFixInfo = {
8709
8722
  /**
8710
8723
  * Line number (1-based).
8711
8724
  */
8712
- lineNumber?: number;
8725
+ lineNumber?: number | undefined;
8713
8726
  /**
8714
8727
  * Column of the fix (1-based).
8715
8728
  */
8716
- editColumn?: number;
8729
+ editColumn?: number | undefined;
8717
8730
  /**
8718
8731
  * Count of characters to delete.
8719
8732
  */
8720
- deleteCount?: number;
8733
+ deleteCount?: number | undefined;
8721
8734
  /**
8722
8735
  * Text to insert (after deleting).
8723
8736
  */
8724
- insertText?: string;
8737
+ insertText?: string | undefined;
8725
8738
  };
8726
8739
  /**
8727
8740
  * Rule definition.
@@ -8738,7 +8751,7 @@ type Rule$2 = {
8738
8751
  /**
8739
8752
  * Link to more information.
8740
8753
  */
8741
- information?: URL;
8754
+ information?: URL | undefined;
8742
8755
  /**
8743
8756
  * Rule tag(s).
8744
8757
  */
@@ -8750,7 +8763,7 @@ type Rule$2 = {
8750
8763
  /**
8751
8764
  * True if asynchronous.
8752
8765
  */
8753
- asynchronous?: boolean;
8766
+ asynchronous?: boolean | undefined;
8754
8767
  /**
8755
8768
  * Rule implementation.
8756
8769
  */
@@ -8760,7 +8773,7 @@ type Rule$2 = {
8760
8773
  * Rule configuration.
8761
8774
  */
8762
8775
  type RuleConfiguration = boolean | any; //#endregion
8763
- //#region ../../node_modules/.pnpm/markdownlint@0.40.0/node_modules/markdownlint/lib/exports.d.mts
8776
+ //#region ../../node_modules/.pnpm/markdownlint@0.41.0/node_modules/markdownlint/lib/exports.d.mts
8764
8777
  type Rule$1 = Rule$2; //#endregion
8765
8778
  //#region src/changesets/markdownlint/rules/content-structure.d.ts
8766
8779
  /**
@@ -77215,10 +77215,12 @@ function readRawPackageJson(fs, pkgDir) {
77215
77215
  /**
77216
77216
  * Build resolved scopes from the discovered workspace packages, keeping only
77217
77217
  * those that are a release surface (declare publishConfig that yields at least
77218
- * one publish target). Used when `.changeset/config.json` declares no explicit
77219
- * `packages` record. The changeset `ignore` list is intentionally NOT consulted
77220
- * here an ignored package still declares publishConfig and remains a valid
77221
- * changeset target.
77218
+ * one publish target). Used both when `.changeset/config.json` declares no
77219
+ * explicit `packages` record AND to augment an explicit record with the
77220
+ * remaining workspace packages it does not list (so the record annotates the
77221
+ * listed packages without shrinking the release surface). The changeset
77222
+ * `ignore` list is intentionally NOT consulted here — an ignored package still
77223
+ * declares publishConfig and remains a valid changeset target.
77222
77224
  */
77223
77225
  function buildFallbackScopes(fs, workspaces) {
77224
77226
  return effect.Effect.forEach(workspaces, (ws) => effect.Effect.gen(function* () {
@@ -77332,19 +77334,24 @@ function makeShape$2(reader, discovery, fs) {
77332
77334
  }));
77333
77335
  const hasExplicitPackages = Object.keys(decodedOptions.packages ?? {}).length > 0;
77334
77336
  let scopes;
77335
- if (hasExplicitPackages) try {
77336
- scopes = buildResolvedScopes({
77337
- options: decodedOptions,
77338
- workspaces,
77339
- projectDir,
77340
- configPath
77341
- });
77342
- checkConflicts(scopes, workspaces, projectDir, configPath);
77343
- } catch (e) {
77344
- if (e instanceof ConfigurationError) return yield* effect.Effect.fail(e);
77345
- throw e;
77346
- }
77347
- else scopes = yield* buildFallbackScopes(fs, workspaces);
77337
+ if (hasExplicitPackages) {
77338
+ let explicitScopes;
77339
+ try {
77340
+ explicitScopes = buildResolvedScopes({
77341
+ options: decodedOptions,
77342
+ workspaces,
77343
+ projectDir,
77344
+ configPath
77345
+ });
77346
+ checkConflicts(explicitScopes, workspaces, projectDir, configPath);
77347
+ } catch (e) {
77348
+ if (e instanceof ConfigurationError) return yield* effect.Effect.fail(e);
77349
+ throw e;
77350
+ }
77351
+ const explicitNames = new Set(explicitScopes.map((s) => s.name));
77352
+ const discoveredScopes = yield* buildFallbackScopes(fs, workspaces.filter((w) => !explicitNames.has(w.name)));
77353
+ scopes = [...explicitScopes, ...discoveredScopes];
77354
+ } else scopes = yield* buildFallbackScopes(fs, workspaces);
77348
77355
  const inspected = {
77349
77356
  configPath,
77350
77357
  projectDir,
@@ -8501,7 +8501,7 @@ interface TokenTypeMap {
8501
8501
  chunkText: 'chunkText';
8502
8502
  chunkString: 'chunkString';
8503
8503
  } //#endregion
8504
- //#region ../../node_modules/.pnpm/markdownlint@0.40.0/node_modules/markdownlint/lib/markdownlint.d.mts
8504
+ //#region ../../node_modules/.pnpm/markdownlint@0.41.0/node_modules/markdownlint/lib/markdownlint.d.mts
8505
8505
  /**
8506
8506
  * Function to implement rule logic.
8507
8507
  */
@@ -8567,13 +8567,13 @@ type ParserMicromark = {
8567
8567
  tokens: MicromarkToken[];
8568
8568
  };
8569
8569
  /**
8570
- * markdown-it token.
8570
+ * markdown-it base token.
8571
8571
  */
8572
- type MarkdownItToken = {
8572
+ type MarkdownItBaseToken = {
8573
8573
  /**
8574
8574
  * HTML attributes.
8575
8575
  */
8576
- attrs: string[][];
8576
+ attrs: string[][] | null;
8577
8577
  /**
8578
8578
  * Block-level token.
8579
8579
  */
@@ -8581,7 +8581,7 @@ type MarkdownItToken = {
8581
8581
  /**
8582
8582
  * Child nodes.
8583
8583
  */
8584
- children: MarkdownItToken[];
8584
+ children: MarkdownItBaseToken[] | null;
8585
8585
  /**
8586
8586
  * Tag contents.
8587
8587
  */
@@ -8601,7 +8601,7 @@ type MarkdownItToken = {
8601
8601
  /**
8602
8602
  * Beginning/ending line numbers.
8603
8603
  */
8604
- map: number[];
8604
+ map: number[] | null;
8605
8605
  /**
8606
8606
  * Markup text.
8607
8607
  */
@@ -8609,7 +8609,7 @@ type MarkdownItToken = {
8609
8609
  /**
8610
8610
  * Arbitrary data.
8611
8611
  */
8612
- meta: any;
8612
+ meta: Object;
8613
8613
  /**
8614
8614
  * Level change.
8615
8615
  */
@@ -8622,6 +8622,15 @@ type MarkdownItToken = {
8622
8622
  * Token type.
8623
8623
  */
8624
8624
  type: string;
8625
+ };
8626
+ /**
8627
+ * markdown-it extended token.
8628
+ */
8629
+ type MarkdownItExtendedToken = {
8630
+ /**
8631
+ * Child nodes.
8632
+ */
8633
+ children: MarkdownItExtendedToken[] | null;
8625
8634
  /**
8626
8635
  * Line number (1-based).
8627
8636
  */
@@ -8631,6 +8640,10 @@ type MarkdownItToken = {
8631
8640
  */
8632
8641
  line: string;
8633
8642
  };
8643
+ /**
8644
+ * markdown-it token.
8645
+ */
8646
+ type MarkdownItToken = MarkdownItBaseToken & MarkdownItExtendedToken;
8634
8647
  type MicromarkTokenType = TokenType;
8635
8648
  /**
8636
8649
  * micromark token.
@@ -8684,23 +8697,23 @@ type RuleOnErrorInfo = {
8684
8697
  /**
8685
8698
  * Detail about the error.
8686
8699
  */
8687
- detail?: string;
8700
+ detail?: string | undefined;
8688
8701
  /**
8689
8702
  * Context for the error.
8690
8703
  */
8691
- context?: string;
8704
+ context?: string | undefined;
8692
8705
  /**
8693
8706
  * Link to more information.
8694
8707
  */
8695
- information?: URL;
8708
+ information?: URL | undefined;
8696
8709
  /**
8697
8710
  * Column number (1-based) and length.
8698
8711
  */
8699
- range?: number[];
8712
+ range?: number[] | undefined;
8700
8713
  /**
8701
8714
  * Fix information.
8702
8715
  */
8703
- fixInfo?: RuleOnErrorFixInfo;
8716
+ fixInfo?: RuleOnErrorFixInfo | undefined;
8704
8717
  };
8705
8718
  /**
8706
8719
  * Fix information for RuleOnErrorInfo.
@@ -8709,19 +8722,19 @@ type RuleOnErrorFixInfo = {
8709
8722
  /**
8710
8723
  * Line number (1-based).
8711
8724
  */
8712
- lineNumber?: number;
8725
+ lineNumber?: number | undefined;
8713
8726
  /**
8714
8727
  * Column of the fix (1-based).
8715
8728
  */
8716
- editColumn?: number;
8729
+ editColumn?: number | undefined;
8717
8730
  /**
8718
8731
  * Count of characters to delete.
8719
8732
  */
8720
- deleteCount?: number;
8733
+ deleteCount?: number | undefined;
8721
8734
  /**
8722
8735
  * Text to insert (after deleting).
8723
8736
  */
8724
- insertText?: string;
8737
+ insertText?: string | undefined;
8725
8738
  };
8726
8739
  /**
8727
8740
  * Rule definition.
@@ -8738,7 +8751,7 @@ type Rule$2 = {
8738
8751
  /**
8739
8752
  * Link to more information.
8740
8753
  */
8741
- information?: URL;
8754
+ information?: URL | undefined;
8742
8755
  /**
8743
8756
  * Rule tag(s).
8744
8757
  */
@@ -8750,7 +8763,7 @@ type Rule$2 = {
8750
8763
  /**
8751
8764
  * True if asynchronous.
8752
8765
  */
8753
- asynchronous?: boolean;
8766
+ asynchronous?: boolean | undefined;
8754
8767
  /**
8755
8768
  * Rule implementation.
8756
8769
  */
@@ -8760,7 +8773,7 @@ type Rule$2 = {
8760
8773
  * Rule configuration.
8761
8774
  */
8762
8775
  type RuleConfiguration = boolean | any; //#endregion
8763
- //#region ../../node_modules/.pnpm/markdownlint@0.40.0/node_modules/markdownlint/lib/exports.d.mts
8776
+ //#region ../../node_modules/.pnpm/markdownlint@0.41.0/node_modules/markdownlint/lib/exports.d.mts
8764
8777
  type Rule$1 = Rule$2; //#endregion
8765
8778
  //#region src/changesets/markdownlint/rules/content-structure.d.ts
8766
8779
  /**
@@ -8501,7 +8501,7 @@ interface TokenTypeMap {
8501
8501
  chunkText: 'chunkText';
8502
8502
  chunkString: 'chunkString';
8503
8503
  } //#endregion
8504
- //#region ../../node_modules/.pnpm/markdownlint@0.40.0/node_modules/markdownlint/lib/markdownlint.d.mts
8504
+ //#region ../../node_modules/.pnpm/markdownlint@0.41.0/node_modules/markdownlint/lib/markdownlint.d.mts
8505
8505
  /**
8506
8506
  * Function to implement rule logic.
8507
8507
  */
@@ -8567,13 +8567,13 @@ type ParserMicromark = {
8567
8567
  tokens: MicromarkToken[];
8568
8568
  };
8569
8569
  /**
8570
- * markdown-it token.
8570
+ * markdown-it base token.
8571
8571
  */
8572
- type MarkdownItToken = {
8572
+ type MarkdownItBaseToken = {
8573
8573
  /**
8574
8574
  * HTML attributes.
8575
8575
  */
8576
- attrs: string[][];
8576
+ attrs: string[][] | null;
8577
8577
  /**
8578
8578
  * Block-level token.
8579
8579
  */
@@ -8581,7 +8581,7 @@ type MarkdownItToken = {
8581
8581
  /**
8582
8582
  * Child nodes.
8583
8583
  */
8584
- children: MarkdownItToken[];
8584
+ children: MarkdownItBaseToken[] | null;
8585
8585
  /**
8586
8586
  * Tag contents.
8587
8587
  */
@@ -8601,7 +8601,7 @@ type MarkdownItToken = {
8601
8601
  /**
8602
8602
  * Beginning/ending line numbers.
8603
8603
  */
8604
- map: number[];
8604
+ map: number[] | null;
8605
8605
  /**
8606
8606
  * Markup text.
8607
8607
  */
@@ -8609,7 +8609,7 @@ type MarkdownItToken = {
8609
8609
  /**
8610
8610
  * Arbitrary data.
8611
8611
  */
8612
- meta: any;
8612
+ meta: Object;
8613
8613
  /**
8614
8614
  * Level change.
8615
8615
  */
@@ -8622,6 +8622,15 @@ type MarkdownItToken = {
8622
8622
  * Token type.
8623
8623
  */
8624
8624
  type: string;
8625
+ };
8626
+ /**
8627
+ * markdown-it extended token.
8628
+ */
8629
+ type MarkdownItExtendedToken = {
8630
+ /**
8631
+ * Child nodes.
8632
+ */
8633
+ children: MarkdownItExtendedToken[] | null;
8625
8634
  /**
8626
8635
  * Line number (1-based).
8627
8636
  */
@@ -8631,6 +8640,10 @@ type MarkdownItToken = {
8631
8640
  */
8632
8641
  line: string;
8633
8642
  };
8643
+ /**
8644
+ * markdown-it token.
8645
+ */
8646
+ type MarkdownItToken = MarkdownItBaseToken & MarkdownItExtendedToken;
8634
8647
  type MicromarkTokenType = TokenType;
8635
8648
  /**
8636
8649
  * micromark token.
@@ -8684,23 +8697,23 @@ type RuleOnErrorInfo = {
8684
8697
  /**
8685
8698
  * Detail about the error.
8686
8699
  */
8687
- detail?: string;
8700
+ detail?: string | undefined;
8688
8701
  /**
8689
8702
  * Context for the error.
8690
8703
  */
8691
- context?: string;
8704
+ context?: string | undefined;
8692
8705
  /**
8693
8706
  * Link to more information.
8694
8707
  */
8695
- information?: URL;
8708
+ information?: URL | undefined;
8696
8709
  /**
8697
8710
  * Column number (1-based) and length.
8698
8711
  */
8699
- range?: number[];
8712
+ range?: number[] | undefined;
8700
8713
  /**
8701
8714
  * Fix information.
8702
8715
  */
8703
- fixInfo?: RuleOnErrorFixInfo;
8716
+ fixInfo?: RuleOnErrorFixInfo | undefined;
8704
8717
  };
8705
8718
  /**
8706
8719
  * Fix information for RuleOnErrorInfo.
@@ -8709,19 +8722,19 @@ type RuleOnErrorFixInfo = {
8709
8722
  /**
8710
8723
  * Line number (1-based).
8711
8724
  */
8712
- lineNumber?: number;
8725
+ lineNumber?: number | undefined;
8713
8726
  /**
8714
8727
  * Column of the fix (1-based).
8715
8728
  */
8716
- editColumn?: number;
8729
+ editColumn?: number | undefined;
8717
8730
  /**
8718
8731
  * Count of characters to delete.
8719
8732
  */
8720
- deleteCount?: number;
8733
+ deleteCount?: number | undefined;
8721
8734
  /**
8722
8735
  * Text to insert (after deleting).
8723
8736
  */
8724
- insertText?: string;
8737
+ insertText?: string | undefined;
8725
8738
  };
8726
8739
  /**
8727
8740
  * Rule definition.
@@ -8738,7 +8751,7 @@ type Rule$2 = {
8738
8751
  /**
8739
8752
  * Link to more information.
8740
8753
  */
8741
- information?: URL;
8754
+ information?: URL | undefined;
8742
8755
  /**
8743
8756
  * Rule tag(s).
8744
8757
  */
@@ -8750,7 +8763,7 @@ type Rule$2 = {
8750
8763
  /**
8751
8764
  * True if asynchronous.
8752
8765
  */
8753
- asynchronous?: boolean;
8766
+ asynchronous?: boolean | undefined;
8754
8767
  /**
8755
8768
  * Rule implementation.
8756
8769
  */
@@ -8760,7 +8773,7 @@ type Rule$2 = {
8760
8773
  * Rule configuration.
8761
8774
  */
8762
8775
  type RuleConfiguration = boolean | any; //#endregion
8763
- //#region ../../node_modules/.pnpm/markdownlint@0.40.0/node_modules/markdownlint/lib/exports.d.mts
8776
+ //#region ../../node_modules/.pnpm/markdownlint@0.41.0/node_modules/markdownlint/lib/exports.d.mts
8764
8777
  type Rule$1 = Rule$2; //#endregion
8765
8778
  //#region src/changesets/markdownlint/rules/content-structure.d.ts
8766
8779
  /**
package/lint.d.ts CHANGED
@@ -88,7 +88,9 @@ declare const MARKDOWNLINT_CONFIG: {
88
88
  readonly MD024: {
89
89
  readonly siblings_only: true;
90
90
  };
91
- readonly MD025: true;
91
+ readonly MD025: {
92
+ readonly front_matter_title: "";
93
+ };
92
94
  readonly MD026: true;
93
95
  readonly MD027: true;
94
96
  readonly MD028: true;
@@ -141,7 +143,7 @@ declare const MARKDOWNLINT_TEMPLATE: {
141
143
  readonly fix: true;
142
144
  readonly gitignore: true;
143
145
  readonly noBanner: true;
144
- readonly ignores: readonly ["**/node_modules", "**/.cache", "**/coverage", "**/.coverage", "**/dist", "**/CHANGELOG.md", "**/.claude/plans", "**/docs/superpowers"];
146
+ readonly ignores: readonly ["**/node_modules", "**/.cache", "**/coverage", "**/.coverage", "**/dist", "**/CHANGELOG.md", "**/.claude/plans", "**/docs/superpowers", "**/__test__/**/fixtures/**", "**/__fixtures__/**"];
145
147
  readonly customRules: readonly ["@savvy-web/silk/changesets/markdownlint"];
146
148
  readonly config: {
147
149
  readonly default: true;
@@ -171,7 +173,9 @@ declare const MARKDOWNLINT_TEMPLATE: {
171
173
  readonly MD024: {
172
174
  readonly siblings_only: true;
173
175
  };
174
- readonly MD025: true;
176
+ readonly MD025: {
177
+ readonly front_matter_title: "";
178
+ };
175
179
  readonly MD026: true;
176
180
  readonly MD027: true;
177
181
  readonly MD028: true;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@savvy-web/silk",
3
- "version": "0.5.0",
3
+ "version": "1.1.0",
4
4
  "private": false,
5
5
  "description": "The single Silk Suite dev-tooling package — changeset, commitlint, lint, and biome conventions",
6
6
  "homepage": "https://github.com/savvy-web/systems/tree/main/packages/silk",
@@ -60,11 +60,13 @@
60
60
  "import": "./lint.js"
61
61
  },
62
62
  "./biome": "./public/biome/silk.jsonc",
63
+ "./tsconfig/node/root.json": "./public/tsconfig/node/root.json",
64
+ "./tsconfig/rspress/website.json": "./public/tsconfig/rspress/website.json",
63
65
  "./package.json": "./package.json"
64
66
  },
65
67
  "dependencies": {
66
68
  "@effect/platform": "^0.96.1",
67
- "@savvy-web/silk-effects": "1.1.0",
69
+ "@savvy-web/silk-effects": "1.2.0",
68
70
  "effect": "^3.21.3",
69
71
  "semver": "^7.8.4"
70
72
  },
@@ -73,8 +75,8 @@
73
75
  "@changesets/cli": "^2.31.0",
74
76
  "@commitlint/cli": "^21.0.1",
75
77
  "@commitlint/config-conventional": "^21.0.2",
76
- "@savvy-web/cli": "0.5.0",
77
- "@savvy-web/mcp": "0.5.0",
78
+ "@savvy-web/cli": "1.1.0",
79
+ "@savvy-web/mcp": "1.1.0",
78
80
  "@types/node": "^25.9.0",
79
81
  "@typescript/native-preview": "^7.0.0-dev.20260513.1",
80
82
  "commitizen": "^4.3.0",
@@ -248,10 +248,12 @@ function readRawPackageJson(fs, pkgDir) {
248
248
  /**
249
249
  * Build resolved scopes from the discovered workspace packages, keeping only
250
250
  * those that are a release surface (declare publishConfig that yields at least
251
- * one publish target). Used when `.changeset/config.json` declares no explicit
252
- * `packages` record. The changeset `ignore` list is intentionally NOT consulted
253
- * here an ignored package still declares publishConfig and remains a valid
254
- * changeset target.
251
+ * one publish target). Used both when `.changeset/config.json` declares no
252
+ * explicit `packages` record AND to augment an explicit record with the
253
+ * remaining workspace packages it does not list (so the record annotates the
254
+ * listed packages without shrinking the release surface). The changeset
255
+ * `ignore` list is intentionally NOT consulted here — an ignored package still
256
+ * declares publishConfig and remains a valid changeset target.
255
257
  */
256
258
  function buildFallbackScopes(fs, workspaces) {
257
259
  return effect.Effect.forEach(workspaces, (ws) => effect.Effect.gen(function* () {
@@ -365,19 +367,24 @@ function makeShape(reader, discovery, fs) {
365
367
  }));
366
368
  const hasExplicitPackages = Object.keys(decodedOptions.packages ?? {}).length > 0;
367
369
  let scopes;
368
- if (hasExplicitPackages) try {
369
- scopes = buildResolvedScopes({
370
- options: decodedOptions,
371
- workspaces,
372
- projectDir,
373
- configPath
374
- });
375
- checkConflicts(scopes, workspaces, projectDir, configPath);
376
- } catch (e) {
377
- if (e instanceof require_errors.ConfigurationError) return yield* effect.Effect.fail(e);
378
- throw e;
379
- }
380
- else scopes = yield* buildFallbackScopes(fs, workspaces);
370
+ if (hasExplicitPackages) {
371
+ let explicitScopes;
372
+ try {
373
+ explicitScopes = buildResolvedScopes({
374
+ options: decodedOptions,
375
+ workspaces,
376
+ projectDir,
377
+ configPath
378
+ });
379
+ checkConflicts(explicitScopes, workspaces, projectDir, configPath);
380
+ } catch (e) {
381
+ if (e instanceof require_errors.ConfigurationError) return yield* effect.Effect.fail(e);
382
+ throw e;
383
+ }
384
+ const explicitNames = new Set(explicitScopes.map((s) => s.name));
385
+ const discoveredScopes = yield* buildFallbackScopes(fs, workspaces.filter((w) => !explicitNames.has(w.name)));
386
+ scopes = [...explicitScopes, ...discoveredScopes];
387
+ } else scopes = yield* buildFallbackScopes(fs, workspaces);
381
388
  const inspected = {
382
389
  configPath,
383
390
  projectDir,
@@ -248,10 +248,12 @@ function readRawPackageJson(fs, pkgDir) {
248
248
  /**
249
249
  * Build resolved scopes from the discovered workspace packages, keeping only
250
250
  * those that are a release surface (declare publishConfig that yields at least
251
- * one publish target). Used when `.changeset/config.json` declares no explicit
252
- * `packages` record. The changeset `ignore` list is intentionally NOT consulted
253
- * here an ignored package still declares publishConfig and remains a valid
254
- * changeset target.
251
+ * one publish target). Used both when `.changeset/config.json` declares no
252
+ * explicit `packages` record AND to augment an explicit record with the
253
+ * remaining workspace packages it does not list (so the record annotates the
254
+ * listed packages without shrinking the release surface). The changeset
255
+ * `ignore` list is intentionally NOT consulted here — an ignored package still
256
+ * declares publishConfig and remains a valid changeset target.
255
257
  */
256
258
  function buildFallbackScopes(fs, workspaces) {
257
259
  return Effect.forEach(workspaces, (ws) => Effect.gen(function* () {
@@ -365,19 +367,24 @@ function makeShape(reader, discovery, fs) {
365
367
  }));
366
368
  const hasExplicitPackages = Object.keys(decodedOptions.packages ?? {}).length > 0;
367
369
  let scopes;
368
- if (hasExplicitPackages) try {
369
- scopes = buildResolvedScopes({
370
- options: decodedOptions,
371
- workspaces,
372
- projectDir,
373
- configPath
374
- });
375
- checkConflicts(scopes, workspaces, projectDir, configPath);
376
- } catch (e) {
377
- if (e instanceof ConfigurationError) return yield* Effect.fail(e);
378
- throw e;
379
- }
380
- else scopes = yield* buildFallbackScopes(fs, workspaces);
370
+ if (hasExplicitPackages) {
371
+ let explicitScopes;
372
+ try {
373
+ explicitScopes = buildResolvedScopes({
374
+ options: decodedOptions,
375
+ workspaces,
376
+ projectDir,
377
+ configPath
378
+ });
379
+ checkConflicts(explicitScopes, workspaces, projectDir, configPath);
380
+ } catch (e) {
381
+ if (e instanceof ConfigurationError) return yield* Effect.fail(e);
382
+ throw e;
383
+ }
384
+ const explicitNames = new Set(explicitScopes.map((s) => s.name));
385
+ const discoveredScopes = yield* buildFallbackScopes(fs, workspaces.filter((w) => !explicitNames.has(w.name)));
386
+ scopes = [...explicitScopes, ...discoveredScopes];
387
+ } else scopes = yield* buildFallbackScopes(fs, workspaces);
381
388
  const inspected = {
382
389
  configPath,
383
390
  projectDir,
@@ -107,7 +107,7 @@
107
107
  }
108
108
  }
109
109
  },
110
- "includes": ["**/turbo.json", "**/tsconfig.json", "**/tsconfig.*.json"]
110
+ "includes": ["**/turbo.json", "**/tsconfig.json", "**/tsconfig.*.json", "**/public/tsconfig/**/*.json"]
111
111
  },
112
112
  {
113
113
  "includes": ["**/*.test.ts"],
@@ -138,7 +138,8 @@
138
138
  "!**/.vitest",
139
139
  "!**/.coverage",
140
140
  "!coverage",
141
- "!**/__test__/fixtures",
141
+ "!.claude/worktrees",
142
+ "!**/__test__/**/fixtures",
142
143
  "!**/__test__/snapshots",
143
144
  "!**/__test__/**/fixtures",
144
145
  "!**/__test__/**/snapshots",
@@ -0,0 +1,35 @@
1
+ {
2
+ "$schema": "https://json.schemastore.org/tsconfig",
3
+ "compilerOptions": {
4
+ "composite": true,
5
+ "declaration": true,
6
+ "module": "nodenext",
7
+ "outDir": "dist",
8
+ "resolveJsonModule": true,
9
+ "strict": true,
10
+ "strictNullChecks": true,
11
+ "target": "es2025",
12
+ "types": ["node"]
13
+ },
14
+ "exclude": ["${configDir}/node_modules", "${configDir}/dist/**/*"],
15
+ "include": [
16
+ "${configDir}/types/*.ts",
17
+ "${configDir}/package.json",
18
+ "${configDir}/*.ts",
19
+ "${configDir}/*.cts",
20
+ "${configDir}/*.mts",
21
+ "${configDir}/src/**/*.ts",
22
+ "${configDir}/src/**/*.tsx",
23
+ "${configDir}/src/**/*.cts",
24
+ "${configDir}/src/**/*.mts",
25
+ "${configDir}/lib/**/*.ts",
26
+ "${configDir}/lib/**/*.tsx",
27
+ "${configDir}/lib/**/*.cts",
28
+ "${configDir}/lib/**/*.mts",
29
+ "${configDir}/__test__/**/*.ts",
30
+ "${configDir}/__test__/**/*.tsx",
31
+ "${configDir}/__test__/**/*.cts",
32
+ "${configDir}/__test__/**/*.mts",
33
+ "${configDir}/public/**/*.json"
34
+ ]
35
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "$schema": "https://json.schemastore.org/tsconfig.json",
3
+ "compilerOptions": {
4
+ "allowImportingTsExtensions": true,
5
+ "isolatedModules": true,
6
+ "jsx": "react-jsx",
7
+ "lib": ["dom", "es2023"],
8
+ "module": "esnext",
9
+ "moduleDetection": "force",
10
+ "moduleResolution": "bundler",
11
+ "noEmit": true,
12
+ "noUncheckedSideEffectImports": true,
13
+ "noUnusedLocals": true,
14
+ "noUnusedParameters": true,
15
+ "resolveJsonModule": true,
16
+ "skipLibCheck": true,
17
+ "strict": true,
18
+ "target": "es2023",
19
+ "types": ["node", "react", "react-dom"],
20
+ "useDefineForClassFields": true,
21
+ "verbatimModuleSyntax": true
22
+ },
23
+ "exclude": ["${configDir}/node_modules", "${configDir}/dist", "${configDir}/.rspress"],
24
+ "include": ["${configDir}/docs", "${configDir}/theme", "${configDir}/rspress.config.ts", "${configDir}/types/*.d.ts"],
25
+ "mdx": {
26
+ "checkMdx": true
27
+ }
28
+ }