@mnaoumov/typescript-dev-toolkit 1.3.1 → 2.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.
Files changed (177) hide show
  1. package/README.md +4 -0
  2. package/assets/docs-site/components/ConstructorBlock.astro +16 -0
  3. package/assets/docs-site/components/ImportStatement.astro +12 -0
  4. package/assets/docs-site/components/MemberDetail.astro +101 -0
  5. package/assets/docs-site/components/MethodTable.astro +45 -0
  6. package/assets/docs-site/components/PropertyTable.astro +45 -0
  7. package/assets/docs-site/components/SiteTitle.astro +43 -0
  8. package/assets/docs-site/components/TypeSignature.astro +20 -0
  9. package/assets/docs-site/fonts/inter-latin-400-normal.ttf +0 -0
  10. package/assets/docs-site/fonts/inter-latin-700-normal.ttf +0 -0
  11. package/assets/docs-site/styles/global.css +221 -0
  12. package/dist/lib/cjs/build.cjs +1 -1
  13. package/dist/lib/cjs/build.d.cts +1 -1
  14. package/dist/lib/cjs/commitlint-config.cjs +18 -3
  15. package/dist/lib/cjs/commitlint-config.d.cts +6 -0
  16. package/dist/lib/cjs/commitlint-forbidden-patterns.cjs +2 -2
  17. package/dist/lib/cjs/commitlint-forbidden-patterns.d.cts +1 -1
  18. package/dist/lib/cjs/commitlint-spellcheck-header.cjs +2 -2
  19. package/dist/lib/cjs/commitlint-spellcheck-header.d.cts +1 -1
  20. package/dist/lib/cjs/docs-site/api-doc-constants.cjs +171 -0
  21. package/dist/lib/cjs/docs-site/api-doc-constants.d.cts +18 -0
  22. package/dist/lib/cjs/docs-site/api-doc-jsdoc.cjs +414 -0
  23. package/dist/lib/cjs/docs-site/api-doc-jsdoc.d.cts +149 -0
  24. package/dist/lib/cjs/docs-site/api-doc-link-rendering.cjs +377 -0
  25. package/dist/lib/cjs/docs-site/api-doc-link-rendering.d.cts +185 -0
  26. package/dist/lib/cjs/docs-site/api-doc-package-sites.cjs +118 -0
  27. package/dist/lib/cjs/docs-site/api-doc-package-sites.d.cts +36 -0
  28. package/dist/lib/cjs/docs-site/api-doc-page-generation.cjs +561 -0
  29. package/dist/lib/cjs/docs-site/api-doc-page-generation.d.cts +159 -0
  30. package/dist/lib/cjs/docs-site/api-doc-route-segments.cjs +42 -0
  31. package/dist/lib/cjs/docs-site/api-doc-route-segments.d.cts +25 -0
  32. package/dist/lib/cjs/docs-site/api-doc-settings.cjs +47 -0
  33. package/dist/lib/cjs/docs-site/api-doc-settings.d.cts +53 -0
  34. package/dist/lib/cjs/docs-site/api-doc-source-processing.cjs +288 -0
  35. package/dist/lib/cjs/docs-site/api-doc-source-processing.d.cts +75 -0
  36. package/dist/lib/cjs/docs-site/api-doc-text-utils.cjs +281 -0
  37. package/dist/lib/cjs/docs-site/api-doc-text-utils.d.cts +178 -0
  38. package/dist/lib/cjs/docs-site/api-doc-type-merging.cjs +157 -0
  39. package/dist/lib/cjs/docs-site/api-doc-type-merging.d.cts +51 -0
  40. package/dist/lib/cjs/docs-site/api-doc-types.cjs +22 -0
  41. package/dist/lib/cjs/docs-site/api-doc-types.d.cts +157 -0
  42. package/dist/lib/cjs/docs-site/api-docs.cjs +143 -0
  43. package/dist/lib/cjs/docs-site/api-docs.d.cts +34 -0
  44. package/dist/lib/cjs/docs-site/astro-config.cjs +169 -0
  45. package/dist/lib/cjs/docs-site/astro-config.d.cts +23 -0
  46. package/dist/lib/cjs/docs-site/docs-links.cjs +123 -0
  47. package/dist/lib/cjs/docs-site/docs-links.d.cts +32 -0
  48. package/dist/lib/cjs/docs-site/docs-site-assets.cjs +64 -0
  49. package/dist/lib/cjs/docs-site/docs-site-assets.d.cts +23 -0
  50. package/dist/lib/cjs/docs-site/docs-site-commands.cjs +72 -0
  51. package/dist/lib/cjs/docs-site/docs-site-commands.d.cts +29 -0
  52. package/dist/lib/cjs/docs-site/docs-site-config.cjs +122 -0
  53. package/dist/lib/cjs/docs-site/docs-site-config.d.cts +162 -0
  54. package/dist/lib/cjs/docs-site/index.cjs +116 -0
  55. package/dist/lib/cjs/docs-site/index.d.cts +26 -0
  56. package/dist/lib/cjs/docs-site/link-check.cjs +197 -0
  57. package/dist/lib/cjs/docs-site/link-check.d.cts +163 -0
  58. package/dist/lib/cjs/docs-site/og-image-page.cjs +45 -0
  59. package/dist/lib/cjs/docs-site/og-image-page.d.cts +15 -0
  60. package/dist/lib/cjs/docs-site/og-image.cjs +326 -0
  61. package/dist/lib/cjs/docs-site/og-image.d.cts +70 -0
  62. package/dist/lib/cjs/docs-site/og-images.cjs +170 -0
  63. package/dist/lib/cjs/docs-site/og-images.d.cts +41 -0
  64. package/dist/lib/cjs/docs-site/route-data.cjs +47 -0
  65. package/dist/lib/cjs/docs-site/route-data.d.cts +14 -0
  66. package/dist/lib/cjs/docs-site/satteri-github-alerts.cjs +97 -0
  67. package/dist/lib/cjs/docs-site/satteri-github-alerts.d.cts +31 -0
  68. package/dist/lib/cjs/docs-site/satteri-relative-links.cjs +87 -0
  69. package/dist/lib/cjs/docs-site/satteri-relative-links.d.cts +29 -0
  70. package/dist/lib/cjs/docs-site/unrendered-alerts.cjs +51 -0
  71. package/dist/lib/cjs/docs-site/unrendered-alerts.d.cts +38 -0
  72. package/dist/lib/cjs/index.cjs +4 -1
  73. package/dist/lib/cjs/index.d.cts +1 -0
  74. package/dist/lib/cjs/library-build.cjs +1 -1
  75. package/dist/lib/cjs/library-build.d.cts +2 -2
  76. package/dist/lib/cjs/linters/eslint-config.cjs +17 -17
  77. package/dist/lib/cjs/linters/eslint-config.d.cts +1 -7
  78. package/dist/lib/cjs/linters/eslint-rules/in-house-plugin.cjs +2 -2
  79. package/dist/lib/cjs/linters/eslint-rules/in-house-plugin.d.cts +5 -8
  80. package/dist/lib/cjs/package-manager.cjs +2 -2
  81. package/dist/lib/esm/build.d.mts +1 -1
  82. package/dist/lib/esm/build.mjs +1 -1
  83. package/dist/lib/esm/commitlint-config.d.mts +6 -0
  84. package/dist/lib/esm/commitlint-config.mjs +7 -3
  85. package/dist/lib/esm/commitlint-forbidden-patterns.d.mts +1 -1
  86. package/dist/lib/esm/commitlint-forbidden-patterns.mjs +2 -2
  87. package/dist/lib/esm/commitlint-spellcheck-header.d.mts +1 -1
  88. package/dist/lib/esm/commitlint-spellcheck-header.mjs +2 -2
  89. package/dist/lib/esm/docs-site/api-doc-constants.d.mts +18 -0
  90. package/dist/lib/esm/docs-site/api-doc-constants.mjs +143 -0
  91. package/dist/lib/esm/docs-site/api-doc-jsdoc.d.mts +149 -0
  92. package/dist/lib/esm/docs-site/api-doc-jsdoc.mjs +377 -0
  93. package/dist/lib/esm/docs-site/api-doc-link-rendering.d.mts +185 -0
  94. package/dist/lib/esm/docs-site/api-doc-link-rendering.mjs +356 -0
  95. package/dist/lib/esm/docs-site/api-doc-package-sites.d.mts +36 -0
  96. package/dist/lib/esm/docs-site/api-doc-package-sites.mjs +91 -0
  97. package/dist/lib/esm/docs-site/api-doc-page-generation.d.mts +159 -0
  98. package/dist/lib/esm/docs-site/api-doc-page-generation.mjs +548 -0
  99. package/dist/lib/esm/docs-site/api-doc-route-segments.d.mts +25 -0
  100. package/dist/lib/esm/docs-site/api-doc-route-segments.mjs +17 -0
  101. package/dist/lib/esm/docs-site/api-doc-settings.d.mts +53 -0
  102. package/dist/lib/esm/docs-site/api-doc-settings.mjs +22 -0
  103. package/dist/lib/esm/docs-site/api-doc-source-processing.d.mts +75 -0
  104. package/dist/lib/esm/docs-site/api-doc-source-processing.mjs +274 -0
  105. package/dist/lib/esm/docs-site/api-doc-text-utils.d.mts +178 -0
  106. package/dist/lib/esm/docs-site/api-doc-text-utils.mjs +239 -0
  107. package/dist/lib/esm/docs-site/api-doc-type-merging.d.mts +51 -0
  108. package/dist/lib/esm/docs-site/api-doc-type-merging.mjs +129 -0
  109. package/dist/lib/esm/docs-site/api-doc-types.d.mts +157 -0
  110. package/dist/lib/esm/docs-site/api-doc-types.mjs +6 -0
  111. package/dist/lib/esm/docs-site/api-docs.d.mts +34 -0
  112. package/dist/lib/esm/docs-site/api-docs.mjs +139 -0
  113. package/dist/lib/esm/docs-site/astro-config.d.mts +23 -0
  114. package/dist/lib/esm/docs-site/astro-config.mjs +135 -0
  115. package/dist/lib/esm/docs-site/docs-links.d.mts +32 -0
  116. package/dist/lib/esm/docs-site/docs-links.mjs +113 -0
  117. package/dist/lib/esm/docs-site/docs-site-assets.d.mts +23 -0
  118. package/dist/lib/esm/docs-site/docs-site-assets.mjs +32 -0
  119. package/dist/lib/esm/docs-site/docs-site-commands.d.mts +29 -0
  120. package/dist/lib/esm/docs-site/docs-site-commands.mjs +46 -0
  121. package/dist/lib/esm/docs-site/docs-site-config.d.mts +162 -0
  122. package/dist/lib/esm/docs-site/docs-site-config.mjs +98 -0
  123. package/dist/lib/esm/docs-site/index.d.mts +26 -0
  124. package/dist/lib/esm/docs-site/index.mjs +58 -0
  125. package/dist/lib/esm/docs-site/link-check.d.mts +163 -0
  126. package/dist/lib/esm/docs-site/link-check.mjs +166 -0
  127. package/dist/lib/esm/docs-site/og-image-page.d.mts +15 -0
  128. package/dist/lib/esm/docs-site/og-image-page.mjs +21 -0
  129. package/dist/lib/esm/docs-site/og-image.d.mts +70 -0
  130. package/dist/lib/esm/docs-site/og-image.mjs +292 -0
  131. package/dist/lib/esm/docs-site/og-images.d.mts +41 -0
  132. package/dist/lib/esm/docs-site/og-images.mjs +156 -0
  133. package/dist/lib/esm/docs-site/route-data.d.mts +14 -0
  134. package/dist/lib/esm/docs-site/route-data.mjs +23 -0
  135. package/dist/lib/esm/docs-site/satteri-github-alerts.d.mts +31 -0
  136. package/dist/lib/esm/docs-site/satteri-github-alerts.mjs +72 -0
  137. package/dist/lib/esm/docs-site/satteri-relative-links.d.mts +29 -0
  138. package/dist/lib/esm/docs-site/satteri-relative-links.mjs +63 -0
  139. package/dist/lib/esm/docs-site/unrendered-alerts.d.mts +38 -0
  140. package/dist/lib/esm/docs-site/unrendered-alerts.mjs +26 -0
  141. package/dist/lib/esm/index.d.mts +1 -0
  142. package/dist/lib/esm/index.mjs +3 -1
  143. package/dist/lib/esm/library-build.d.mts +2 -2
  144. package/dist/lib/esm/library-build.mjs +1 -1
  145. package/dist/lib/esm/linters/eslint-config.d.mts +1 -7
  146. package/dist/lib/esm/linters/eslint-config.mjs +17 -17
  147. package/dist/lib/esm/linters/eslint-rules/in-house-plugin.d.mts +5 -8
  148. package/dist/lib/esm/linters/eslint-rules/in-house-plugin.mjs +2 -2
  149. package/dist/lib/esm/package-manager.mjs +2 -2
  150. package/docs-site/api-doc-constants/package.json +6 -0
  151. package/docs-site/api-doc-jsdoc/package.json +6 -0
  152. package/docs-site/api-doc-link-rendering/package.json +6 -0
  153. package/docs-site/api-doc-package-sites/package.json +6 -0
  154. package/docs-site/api-doc-page-generation/package.json +6 -0
  155. package/docs-site/api-doc-route-segments/package.json +6 -0
  156. package/docs-site/api-doc-settings/package.json +6 -0
  157. package/docs-site/api-doc-source-processing/package.json +6 -0
  158. package/docs-site/api-doc-text-utils/package.json +6 -0
  159. package/docs-site/api-doc-type-merging/package.json +6 -0
  160. package/docs-site/api-doc-types/package.json +6 -0
  161. package/docs-site/api-docs/package.json +6 -0
  162. package/docs-site/astro-config/package.json +6 -0
  163. package/docs-site/docs-links/package.json +6 -0
  164. package/docs-site/docs-site-assets/package.json +6 -0
  165. package/docs-site/docs-site-commands/package.json +6 -0
  166. package/docs-site/docs-site-config/package.json +6 -0
  167. package/docs-site/index/package.json +6 -0
  168. package/docs-site/link-check/package.json +6 -0
  169. package/docs-site/og-image/package.json +6 -0
  170. package/docs-site/og-image-page/package.json +6 -0
  171. package/docs-site/og-images/package.json +6 -0
  172. package/docs-site/package.json +6 -0
  173. package/docs-site/route-data/package.json +6 -0
  174. package/docs-site/satteri-github-alerts/package.json +6 -0
  175. package/docs-site/satteri-relative-links/package.json +6 -0
  176. package/docs-site/unrendered-alerts/package.json +6 -0
  177. package/package.json +75 -5
@@ -0,0 +1,118 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+ (function () {
6
+ function ensureBrowserProcess() {
7
+ const browserProcess = {
8
+ browser: true,
9
+ cwd() {
10
+ return '/';
11
+ },
12
+ env: {},
13
+ platform: 'android'
14
+ };
15
+
16
+ const existingProcess = globalThis.process;
17
+
18
+ if (!existingProcess) {
19
+ globalThis.process = browserProcess;
20
+ return;
21
+ }
22
+
23
+ if (existingProcess.versions?.node) {
24
+ return;
25
+ }
26
+
27
+ const existingProcessRecord = existingProcess;
28
+
29
+ for (const [key, value] of Object.entries(browserProcess)) {
30
+ existingProcessRecord[key] ??= value;
31
+ }
32
+
33
+ existingProcessRecord['browser'] = true;
34
+ }
35
+
36
+ ensureBrowserProcess();
37
+ })();
38
+
39
+ "use strict";
40
+ var __defProp = Object.defineProperty;
41
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
42
+ var __getOwnPropNames = Object.getOwnPropertyNames;
43
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
44
+ var __export = (target, all) => {
45
+ for (var name in all)
46
+ __defProp(target, name, { get: all[name], enumerable: true });
47
+ };
48
+ var __copyProps = (to, from, except, desc) => {
49
+ if (from && typeof from === "object" || typeof from === "function") {
50
+ for (let key of __getOwnPropNames(from))
51
+ if (!__hasOwnProp.call(to, key) && key !== except)
52
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
53
+ }
54
+ return to;
55
+ };
56
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
57
+ var api_doc_package_sites_exports = {};
58
+ __export(api_doc_package_sites_exports, {
59
+ DEFAULT_PACKAGE_SITES: () => DEFAULT_PACKAGE_SITES,
60
+ clearPackageDeclarations: () => clearPackageDeclarations,
61
+ getPackageTypeUrl: () => getPackageTypeUrl,
62
+ registerPackageDeclaration: () => registerPackageDeclaration
63
+ });
64
+ module.exports = __toCommonJS(api_doc_package_sites_exports);
65
+ var import_reg_exp = require('@mnaoumov/typescript-lib/reg-exp');
66
+ var import_api_doc_route_segments = require('./api-doc-route-segments.cjs');
67
+ var import_api_doc_settings = require('./api-doc-settings.cjs');
68
+ const PACKAGE_DECLARATION_REG_EXP = /\/node_modules\/(?<Package>(?:@[^/]+\/)?[^/]+)\/dist\/lib\/(?:cjs|esm)\/(?<Path>.+?)(?:\.d\.[cm]?ts)?$/;
69
+ const DEFAULT_PACKAGE_SITES = new Map([
70
+ "@mnaoumov/obsidian-dev-toolkit",
71
+ "@mnaoumov/obsidian-lib",
72
+ "@mnaoumov/typescript-dev-toolkit",
73
+ "@mnaoumov/typescript-lib",
74
+ "@mnaoumov/typescript-test-toolkit"
75
+ ].map((packageName) => [packageName, `https://mnaoumov.dev/${packageName.slice("@mnaoumov/".length)}/`]));
76
+ const moduleState = {
77
+ urls: /* @__PURE__ */ new Map()
78
+ };
79
+ function clearPackageDeclarations() {
80
+ moduleState.urls.clear();
81
+ }
82
+ function getPackageTypeUrl(name) {
83
+ return moduleState.urls.get(name) ?? void 0;
84
+ }
85
+ function registerPackageDeclaration(name, declarationFilePath) {
86
+ const url = toPackageTypeUrl({ declarationFilePath, name, settings: (0, import_api_doc_settings.getApiDocSettings)() });
87
+ if (url === void 0) {
88
+ return;
89
+ }
90
+ const existing = moduleState.urls.get(name);
91
+ if (existing === void 0) {
92
+ moduleState.urls.set(name, url);
93
+ } else if (existing !== url) {
94
+ moduleState.urls.set(name, null);
95
+ }
96
+ }
97
+ function toPackageTypeUrl(params) {
98
+ const { declarationFilePath, name, settings } = params;
99
+ const match = PACKAGE_DECLARATION_REG_EXP.exec(declarationFilePath.replaceAll("\\", "/"));
100
+ if (match === null) {
101
+ return void 0;
102
+ }
103
+ const packageName = (0, import_reg_exp.getMandatoryNamedGroup)(match, "Package");
104
+ const path = (0, import_reg_exp.getMandatoryNamedGroup)(match, "Path");
105
+ if (packageName === settings.packageName) {
106
+ return void 0;
107
+ }
108
+ const site = settings.packageSites.get(packageName);
109
+ return site === void 0 ? void 0 : `${site}api/${path}/${(0, import_api_doc_route_segments.toRouteSegmentPreserveCase)(name)}/`;
110
+ }
111
+ // Annotate the CommonJS export names for ESM import in node:
112
+ 0 && (module.exports = {
113
+ DEFAULT_PACKAGE_SITES,
114
+ clearPackageDeclarations,
115
+ getPackageTypeUrl,
116
+ registerPackageDeclaration
117
+ });
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kb2NzLXNpdGUvYXBpLWRvYy1wYWNrYWdlLXNpdGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBDcm9zcy1zaXRlIGxpbmtzOiBhIHR5cGUgZGVjbGFyZWQgaW4gYW5vdGhlciBkb2N1bWVudGVkIHBhY2thZ2UgbGlua3MgdG8gaXRzIHBhZ2Ugb24gdGhhdCBwYWNrYWdlJ3Mgc2l0ZS5cbiAqXG4gKiBBIHR5cGUgaXMgcmVjb2duaXplZCBieSB3aGVyZSBpdHMgZGVjbGFyYXRpb24gbGl2ZXMsIG5vdCBieSBpdHMgbmFtZTogYSBkZWNsYXJhdGlvbiB1bmRlclxuICogYG5vZGVfbW9kdWxlcy88cGFja2FnZT4vZGlzdC9saWIve2VzbSxjanN9LzxwYXRoPi5kLnttdHMsY3RzfWAgb2YgYSBwYWNrYWdlIGluXG4gKiB7QGxpbmsgQXBpRG9jU2V0dGluZ3MucGFja2FnZVNpdGVzfSBpcyB0aGUgcGFnZSBgPHNpdGU+YXBpLzxwYXRoPi88VHlwZT4vYCwgYnVpbHQgd2l0aCB0aGUgZ2VuZXJhdG9yJ3Mgb3duIHNsdWdcbiAqIHJ1bGVzLCBiZWNhdXNlIHRoYXQgc2l0ZSB3YXMgZ2VuZXJhdGVkIGZyb20gdGhlIHNhbWUgdHJlZS5cbiAqL1xuXG5pbXBvcnQgeyBnZXRNYW5kYXRvcnlOYW1lZEdyb3VwIH0gZnJvbSAnQG1uYW91bW92L3R5cGVzY3JpcHQtbGliL3JlZy1leHAnO1xuXG5pbXBvcnQgdHlwZSB7IEFwaURvY1NldHRpbmdzIH0gZnJvbSAnLi9hcGktZG9jLXNldHRpbmdzLnRzJztcblxuaW1wb3J0IHsgdG9Sb3V0ZVNlZ21lbnRQcmVzZXJ2ZUNhc2UgfSBmcm9tICcuL2FwaS1kb2Mtcm91dGUtc2VnbWVudHMudHMnO1xuaW1wb3J0IHsgZ2V0QXBpRG9jU2V0dGluZ3MgfSBmcm9tICcuL2FwaS1kb2Mtc2V0dGluZ3MudHMnO1xuXG5jb25zdCBQQUNLQUdFX0RFQ0xBUkFUSU9OX1JFR19FWFAgPSAvXFwvbm9kZV9tb2R1bGVzXFwvKD88UGFja2FnZT4oPzpAW14vXStcXC8pP1teL10rKVxcL2Rpc3RcXC9saWJcXC8oPzpjanN8ZXNtKVxcLyg/PFBhdGg+Lis/KSg/OlxcLmRcXC5bY21dP3RzKT8kLztcblxuLyoqXG4gKiBUaGUgZG9jdW1lbnRhdGlvbiBzaXRlcyBvZiB0aGUgYEBtbmFvdW1vdmAgcGFja2FnZXMsIHdoaWNoIGVhY2ggc2l0ZSBsaW5rcyB0byB1bmxlc3MgdG9sZCBvdGhlcndpc2UuXG4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX1BBQ0tBR0VfU0lURVM6IFJlYWRvbmx5TWFwPHN0cmluZywgc3RyaW5nPiA9IG5ldyBNYXAoW1xuICAnQG1uYW91bW92L29ic2lkaWFuLWRldi10b29sa2l0JyxcbiAgJ0BtbmFvdW1vdi9vYnNpZGlhbi1saWInLFxuICAnQG1uYW91bW92L3R5cGVzY3JpcHQtZGV2LXRvb2xraXQnLFxuICAnQG1uYW91bW92L3R5cGVzY3JpcHQtbGliJyxcbiAgJ0BtbmFvdW1vdi90eXBlc2NyaXB0LXRlc3QtdG9vbGtpdCdcbl0ubWFwKChwYWNrYWdlTmFtZSkgPT4gW3BhY2thZ2VOYW1lLCBgaHR0cHM6Ly9tbmFvdW1vdi5kZXYvJHtwYWNrYWdlTmFtZS5zbGljZSgnQG1uYW91bW92LycubGVuZ3RoKX0vYF0pKTtcblxuaW50ZXJmYWNlIE1vZHVsZVN0YXRlIHtcbiAgLyoqXG4gICAqIFR5cGUgbmFtZSB0byBpdHMgcGFnZSBVUkw7IGBudWxsYCB3aGVuIHR3byBwYWNrYWdlcyBkZWNsYXJlIHRoZSBuYW1lLCB3aGljaCBjYW5ub3QgYmUgdG9sZCBhcGFydCBmcm9tIHRleHQuXG4gICAqL1xuICByZWFkb25seSB1cmxzOiBNYXA8c3RyaW5nLCBudWxsIHwgc3RyaW5nPjtcbn1cblxuY29uc3QgbW9kdWxlU3RhdGU6IE1vZHVsZVN0YXRlID0ge1xuICB1cmxzOiBuZXcgTWFwKClcbn07XG5cbmludGVyZmFjZSBUb1BhY2thZ2VUeXBlVXJsUGFyYW1zIHtcbiAgcmVhZG9ubHkgZGVjbGFyYXRpb25GaWxlUGF0aDogc3RyaW5nO1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHNldHRpbmdzOiBBcGlEb2NTZXR0aW5ncztcbn1cblxuLyoqXG4gKiBGb3JnZXRzIGV2ZXJ5IGRlY2xhcmF0aW9uIHtAbGluayByZWdpc3RlclBhY2thZ2VEZWNsYXJhdGlvbn0gcmVjb3JkZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjbGVhclBhY2thZ2VEZWNsYXJhdGlvbnMoKTogdm9pZCB7XG4gIG1vZHVsZVN0YXRlLnVybHMuY2xlYXIoKTtcbn1cblxuLyoqXG4gKiBHZXRzIHRoZSBwYWdlIFVSTCBvZiBhIHR5cGUgZGVjbGFyZWQgaW4gYW5vdGhlciBkb2N1bWVudGVkIHBhY2thZ2UuXG4gKlxuICogQHBhcmFtIG5hbWUgLSBUaGUgdHlwZSdzIG5hbWUsIGFzIHR5cGUgdGV4dCBwcmludHMgaXQuXG4gKiBAcmV0dXJucyBUaGUgVVJMLCBvciBgdW5kZWZpbmVkYCB3aGVuIG5vIGRvY3VtZW50ZWQgcGFja2FnZSBkZWNsYXJlcyBleGFjdGx5IG9uZSB0eXBlIG9mIHRoYXQgbmFtZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFBhY2thZ2VUeXBlVXJsKG5hbWU6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiBtb2R1bGVTdGF0ZS51cmxzLmdldChuYW1lKSA/PyB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogUmVjb3JkcyB3aGVyZSBhIHR5cGUgaXMgZGVjbGFyZWQsIHNvIGl0cyByZWZlcmVuY2VzIGxpbmsgdG8gaXRzIHBhZ2Ugb24gdGhhdCBwYWNrYWdlJ3Mgc2l0ZS5cbiAqXG4gKiBBIGRlY2xhcmF0aW9uIG91dHNpZGUgZXZlcnkge0BsaW5rIEFwaURvY1NldHRpbmdzLnBhY2thZ2VTaXRlc30gcGFja2FnZSBpcyBpZ25vcmVkLiBBIG5hbWUgdHdvIHBhY2thZ2VzIGRlY2xhcmUgaXNcbiAqIHJlbWVtYmVyZWQgYXMgYW1iaWd1b3VzIGFuZCBuZXZlciBsaW5rZWQuXG4gKlxuICogQHBhcmFtIG5hbWUgLSBUaGUgdHlwZSdzIG5hbWUuXG4gKiBAcGFyYW0gZGVjbGFyYXRpb25GaWxlUGF0aCAtIFRoZSBkZWNsYXJhdGlvbiBmaWxlJ3MgcGF0aCwgd2l0aCBvciB3aXRob3V0IGl0cyBgLmQubXRzYCAvIGAuZC5jdHNgIGV4dGVuc2lvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyUGFja2FnZURlY2xhcmF0aW9uKG5hbWU6IHN0cmluZywgZGVjbGFyYXRpb25GaWxlUGF0aDogc3RyaW5nKTogdm9pZCB7XG4gIGNvbnN0IHVybCA9IHRvUGFja2FnZVR5cGVVcmwoeyBkZWNsYXJhdGlvbkZpbGVQYXRoLCBuYW1lLCBzZXR0aW5nczogZ2V0QXBpRG9jU2V0dGluZ3MoKSB9KTtcbiAgaWYgKHVybCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgZXhpc3RpbmcgPSBtb2R1bGVTdGF0ZS51cmxzLmdldChuYW1lKTtcbiAgaWYgKGV4aXN0aW5nID09PSB1bmRlZmluZWQpIHtcbiAgICBtb2R1bGVTdGF0ZS51cmxzLnNldChuYW1lLCB1cmwpO1xuICB9IGVsc2UgaWYgKGV4aXN0aW5nICE9PSB1cmwpIHtcbiAgICBtb2R1bGVTdGF0ZS51cmxzLnNldChuYW1lLCBudWxsKTtcbiAgfVxufVxuXG5mdW5jdGlvbiB0b1BhY2thZ2VUeXBlVXJsKHBhcmFtczogVG9QYWNrYWdlVHlwZVVybFBhcmFtcyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IHsgZGVjbGFyYXRpb25GaWxlUGF0aCwgbmFtZSwgc2V0dGluZ3MgfSA9IHBhcmFtcztcbiAgY29uc3QgbWF0Y2ggPSBQQUNLQUdFX0RFQ0xBUkFUSU9OX1JFR19FWFAuZXhlYyhkZWNsYXJhdGlvbkZpbGVQYXRoLnJlcGxhY2VBbGwoJ1xcXFwnLCAnLycpKTtcbiAgaWYgKG1hdGNoID09PSBudWxsKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGNvbnN0IHBhY2thZ2VOYW1lID0gZ2V0TWFuZGF0b3J5TmFtZWRHcm91cChtYXRjaCwgJ1BhY2thZ2UnKTtcbiAgY29uc3QgcGF0aCA9IGdldE1hbmRhdG9yeU5hbWVkR3JvdXAobWF0Y2gsICdQYXRoJyk7XG4gIGlmIChwYWNrYWdlTmFtZSA9PT0gc2V0dGluZ3MucGFja2FnZU5hbWUpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgY29uc3Qgc2l0ZSA9IHNldHRpbmdzLnBhY2thZ2VTaXRlcy5nZXQocGFja2FnZU5hbWUpO1xuICByZXR1cm4gc2l0ZSA9PT0gdW5kZWZpbmVkID8gdW5kZWZpbmVkIDogYCR7c2l0ZX1hcGkvJHtwYXRofS8ke3RvUm91dGVTZWdtZW50UHJlc2VydmVDYXNlKG5hbWUpfS9gO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQSxxQkFBdUM7QUFJdkMsb0NBQTJDO0FBQzNDLDhCQUFrQztBQUVsQyxNQUFNLDhCQUE4QjtBQUs3QixNQUFNLHdCQUFxRCxJQUFJLElBQUk7QUFBQSxFQUN4RTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFDRixFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLHdCQUF3QixZQUFZLE1BQU0sYUFBYSxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7QUFTeEcsTUFBTSxjQUEyQjtBQUFBLEVBQy9CLE1BQU0sb0JBQUksSUFBSTtBQUNoQjtBQVdPLFNBQVMsMkJBQWlDO0FBQy9DLGNBQVksS0FBSyxNQUFNO0FBQ3pCO0FBUU8sU0FBUyxrQkFBa0IsTUFBa0M7QUFDbEUsU0FBTyxZQUFZLEtBQUssSUFBSSxJQUFJLEtBQUs7QUFDdkM7QUFXTyxTQUFTLDJCQUEyQixNQUFjLHFCQUFtQztBQUMxRixRQUFNLE1BQU0saUJBQWlCLEVBQUUscUJBQXFCLE1BQU0sY0FBVSwyQ0FBa0IsRUFBRSxDQUFDO0FBQ3pGLE1BQUksUUFBUSxRQUFXO0FBQ3JCO0FBQUEsRUFDRjtBQUVBLFFBQU0sV0FBVyxZQUFZLEtBQUssSUFBSSxJQUFJO0FBQzFDLE1BQUksYUFBYSxRQUFXO0FBQzFCLGdCQUFZLEtBQUssSUFBSSxNQUFNLEdBQUc7QUFBQSxFQUNoQyxXQUFXLGFBQWEsS0FBSztBQUMzQixnQkFBWSxLQUFLLElBQUksTUFBTSxJQUFJO0FBQUEsRUFDakM7QUFDRjtBQUVBLFNBQVMsaUJBQWlCLFFBQW9EO0FBQzVFLFFBQU0sRUFBRSxxQkFBcUIsTUFBTSxTQUFTLElBQUk7QUFDaEQsUUFBTSxRQUFRLDRCQUE0QixLQUFLLG9CQUFvQixXQUFXLE1BQU0sR0FBRyxDQUFDO0FBQ3hGLE1BQUksVUFBVSxNQUFNO0FBQ2xCLFdBQU87QUFBQSxFQUNUO0FBRUEsUUFBTSxrQkFBYyx1Q0FBdUIsT0FBTyxTQUFTO0FBQzNELFFBQU0sV0FBTyx1Q0FBdUIsT0FBTyxNQUFNO0FBQ2pELE1BQUksZ0JBQWdCLFNBQVMsYUFBYTtBQUN4QyxXQUFPO0FBQUEsRUFDVDtBQUVBLFFBQU0sT0FBTyxTQUFTLGFBQWEsSUFBSSxXQUFXO0FBQ2xELFNBQU8sU0FBUyxTQUFZLFNBQVksR0FBRyxJQUFJLE9BQU8sSUFBSSxRQUFJLDBEQUEyQixJQUFJLENBQUM7QUFDaEc7IiwibmFtZXMiOltdfQ==
@@ -0,0 +1,36 @@
1
+ /// <reference path="../library-references.d.cts" />
2
+ /**
3
+ * @file
4
+ *
5
+ * Cross-site links: a type declared in another documented package links to its page on that package's site.
6
+ *
7
+ * A type is recognized by where its declaration lives, not by its name: a declaration under
8
+ * `node_modules/<package>/dist/lib/{esm,cjs}/<path>.d.{mts,cts}` of a package in
9
+ * {@link ApiDocSettings.packageSites} is the page `<site>api/<path>/<Type>/`, built with the generator's own slug
10
+ * rules, because that site was generated from the same tree.
11
+ */
12
+ /**
13
+ * The documentation sites of the `@mnaoumov` packages, which each site links to unless told otherwise.
14
+ */
15
+ export declare const DEFAULT_PACKAGE_SITES: ReadonlyMap<string, string>;
16
+ /**
17
+ * Forgets every declaration {@link registerPackageDeclaration} recorded.
18
+ */
19
+ export declare function clearPackageDeclarations(): void;
20
+ /**
21
+ * Gets the page URL of a type declared in another documented package.
22
+ *
23
+ * @param name - The type's name, as type text prints it.
24
+ * @returns The URL, or `undefined` when no documented package declares exactly one type of that name.
25
+ */
26
+ export declare function getPackageTypeUrl(name: string): string | undefined;
27
+ /**
28
+ * Records where a type is declared, so its references link to its page on that package's site.
29
+ *
30
+ * A declaration outside every {@link ApiDocSettings.packageSites} package is ignored. A name two packages declare is
31
+ * remembered as ambiguous and never linked.
32
+ *
33
+ * @param name - The type's name.
34
+ * @param declarationFilePath - The declaration file's path, with or without its `.d.mts` / `.d.cts` extension.
35
+ */
36
+ export declare function registerPackageDeclaration(name: string, declarationFilePath: string): void;