obsidian-dev-utils 70.1.0 → 70.2.1

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 (85) hide show
  1. package/CHANGELOG.md +23 -5
  2. package/dist/dev/main.js +138 -67
  3. package/dist/dprint.json +1 -1
  4. package/dist/lib/cjs/abort-controller.cjs +1 -1
  5. package/dist/lib/cjs/library.cjs +1 -1
  6. package/dist/lib/cjs/library.d.cts +1 -1
  7. package/dist/lib/cjs/object-utils.cjs +1 -1
  8. package/dist/lib/cjs/obsidian/command-handlers/abstract-file-command-handler.cjs +17 -10
  9. package/dist/lib/cjs/obsidian/command-handlers/abstract-file-command-handler.d.cts +13 -2
  10. package/dist/lib/cjs/obsidian/command-handlers/folder-command-handler.cjs +9 -1
  11. package/dist/lib/cjs/obsidian/command-handlers/folder-command-handler.d.cts +6 -0
  12. package/dist/lib/cjs/obsidian/components/plugin-settings-component.cjs +1 -1
  13. package/dist/lib/cjs/obsidian/components/rename-delete-handler-component.cjs +1 -1
  14. package/dist/lib/cjs/obsidian/constructors/getDomEventsHandlersConstructor.cjs +77 -25
  15. package/dist/lib/cjs/obsidian/link.cjs +2 -4
  16. package/dist/lib/cjs/obsidian/markdown-code-block-processor.cjs +2 -4
  17. package/dist/lib/cjs/obsidian/markdown.cjs +80 -28
  18. package/dist/lib/cjs/obsidian/plugin/obsidian-plugin-repo-paths.cjs +2 -1
  19. package/dist/lib/cjs/obsidian/plugin/obsidian-plugin-repo-paths.d.cts +2 -0
  20. package/dist/lib/cjs/obsidian/setting-components/code-highlighter-component.cjs +1 -1
  21. package/dist/lib/cjs/obsidian/setting-components/multiple-dropdown-component.cjs +1 -1
  22. package/dist/lib/cjs/obsidian/setting-components/multiple-text-component.cjs +1 -1
  23. package/dist/lib/cjs/obsidian/setting-components/typed-multiple-dropdown-component.cjs +1 -1
  24. package/dist/lib/cjs/script-utils/build.cjs +22 -1
  25. package/dist/lib/cjs/script-utils/build.d.cts +6 -0
  26. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/dependency.cjs +2 -2
  27. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/fix-source-maps-plugin.cjs +1 -1
  28. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.cjs +2 -2
  29. package/dist/lib/cjs/script-utils/check-project-types.cjs +209 -0
  30. package/dist/lib/cjs/script-utils/check-project-types.d.cts +76 -0
  31. package/dist/lib/cjs/script-utils/exec.cjs +1 -1
  32. package/dist/lib/cjs/script-utils/index.cjs +7 -1
  33. package/dist/lib/cjs/script-utils/index.d.cts +2 -0
  34. package/dist/lib/cjs/script-utils/linters/eslint-config.cjs +38 -1
  35. package/dist/lib/cjs/script-utils/linters/eslint-no-restricted-syntax.cjs +1 -1
  36. package/dist/lib/cjs/script-utils/linters/eslint-rules/no-async-callback-to-unsafe-return.cjs +1 -1
  37. package/dist/lib/cjs/script-utils/linters/eslint-rules/require-component-suffix.cjs +1 -1
  38. package/dist/lib/cjs/script-utils/obsidian-dev-utils-repo-paths.cjs +3 -1
  39. package/dist/lib/cjs/script-utils/obsidian-dev-utils-repo-paths.d.cts +4 -0
  40. package/dist/lib/cjs/script-utils/validate-declarations.cjs +203 -0
  41. package/dist/lib/cjs/script-utils/validate-declarations.d.cts +24 -0
  42. package/dist/lib/cjs/type.cjs +1 -1
  43. package/dist/lib/esm/abort-controller.mjs +1 -1
  44. package/dist/lib/esm/library.d.mts +1 -1
  45. package/dist/lib/esm/library.mjs +1 -1
  46. package/dist/lib/esm/object-utils.mjs +1 -1
  47. package/dist/lib/esm/obsidian/command-handlers/abstract-file-command-handler.d.mts +13 -2
  48. package/dist/lib/esm/obsidian/command-handlers/abstract-file-command-handler.mjs +17 -10
  49. package/dist/lib/esm/obsidian/command-handlers/folder-command-handler.d.mts +6 -0
  50. package/dist/lib/esm/obsidian/command-handlers/folder-command-handler.mjs +9 -1
  51. package/dist/lib/esm/obsidian/components/plugin-settings-component.mjs +1 -1
  52. package/dist/lib/esm/obsidian/components/rename-delete-handler-component.mjs +1 -1
  53. package/dist/lib/esm/obsidian/constructors/getDomEventsHandlersConstructor.mjs +77 -25
  54. package/dist/lib/esm/obsidian/link.mjs +2 -4
  55. package/dist/lib/esm/obsidian/markdown-code-block-processor.mjs +2 -4
  56. package/dist/lib/esm/obsidian/markdown.mjs +80 -28
  57. package/dist/lib/esm/obsidian/plugin/obsidian-plugin-repo-paths.d.mts +2 -0
  58. package/dist/lib/esm/obsidian/plugin/obsidian-plugin-repo-paths.mjs +2 -1
  59. package/dist/lib/esm/obsidian/setting-components/code-highlighter-component.mjs +1 -1
  60. package/dist/lib/esm/obsidian/setting-components/multiple-dropdown-component.mjs +1 -1
  61. package/dist/lib/esm/obsidian/setting-components/multiple-text-component.mjs +1 -1
  62. package/dist/lib/esm/obsidian/setting-components/typed-multiple-dropdown-component.mjs +1 -1
  63. package/dist/lib/esm/script-utils/build.d.mts +6 -0
  64. package/dist/lib/esm/script-utils/build.mjs +27 -1
  65. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/dependency.mjs +2 -2
  66. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/fix-source-maps-plugin.mjs +1 -1
  67. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.mjs +2 -2
  68. package/dist/lib/esm/script-utils/check-project-types.d.mts +76 -0
  69. package/dist/lib/esm/script-utils/check-project-types.mjs +98 -0
  70. package/dist/lib/esm/script-utils/exec.mjs +1 -1
  71. package/dist/lib/esm/script-utils/index.d.mts +2 -0
  72. package/dist/lib/esm/script-utils/index.mjs +5 -1
  73. package/dist/lib/esm/script-utils/linters/eslint-config.mjs +38 -1
  74. package/dist/lib/esm/script-utils/linters/eslint-no-restricted-syntax.mjs +1 -1
  75. package/dist/lib/esm/script-utils/linters/eslint-rules/no-async-callback-to-unsafe-return.mjs +1 -1
  76. package/dist/lib/esm/script-utils/linters/eslint-rules/require-component-suffix.mjs +1 -1
  77. package/dist/lib/esm/script-utils/obsidian-dev-utils-repo-paths.d.mts +4 -0
  78. package/dist/lib/esm/script-utils/obsidian-dev-utils-repo-paths.mjs +3 -1
  79. package/dist/lib/esm/script-utils/validate-declarations.d.mts +24 -0
  80. package/dist/lib/esm/script-utils/validate-declarations.mjs +106 -0
  81. package/dist/lib/esm/type.mjs +1 -1
  82. package/package.json +9 -9
  83. package/script-utils/check-project-types/package.json +6 -0
  84. package/script-utils/validate-declarations/package.json +6 -0
  85. package/scripts/postinstall.mjs +0 -29
@@ -0,0 +1,106 @@
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
+
6
+ (function initEsm() {
7
+ // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
8
+ if (globalThis.process) {
9
+ return;
10
+ }
11
+
12
+ const browserProcess = {
13
+ browser: true,
14
+ cwd() {
15
+ return '/';
16
+ },
17
+ env: {},
18
+ platform: 'android'
19
+ };
20
+ // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
21
+ globalThis.process = browserProcess;
22
+ })();
23
+
24
+ import {
25
+ forEachChild,
26
+ isExportDeclaration,
27
+ isImportDeclaration,
28
+ isImportTypeNode,
29
+ isLiteralTypeNode,
30
+ isStringLiteral
31
+ } from "typescript";
32
+ import { join } from "../path.mjs";
33
+ import {
34
+ checkProjectTypes,
35
+ parseTsConfig,
36
+ toCanonical
37
+ } from "./check-project-types.mjs";
38
+ import { ObsidianDevUtilsRepoPaths } from "./obsidian-dev-utils-repo-paths.mjs";
39
+ import { getRootFolder } from "./root.mjs";
40
+ const NODE_MODULES_SEGMENT = "/node_modules/";
41
+ const RELATIVE_SPECIFIER_PREFIX = ".";
42
+ const VALIDATE_DECLARATIONS_TS_CONFIG_FILE_NAMES = [
43
+ ObsidianDevUtilsRepoPaths.TsConfigValidateDeclarationsJson,
44
+ ObsidianDevUtilsRepoPaths.TsConfigValidateDeclarationsCjsJson
45
+ ];
46
+ function validateDeclarations() {
47
+ const root = getRootFolder();
48
+ if (!root) {
49
+ throw new Error("Could not find root folder");
50
+ }
51
+ const rootCanonical = toCanonical(root);
52
+ let isValid = true;
53
+ for (const tsConfigFileName of VALIDATE_DECLARATIONS_TS_CONFIG_FILE_NAMES) {
54
+ const { fileNames, options } = parseTsConfig(join(root, tsConfigFileName));
55
+ const isConfigValid = checkProjectTypes({
56
+ options,
57
+ rootNames: fileNames,
58
+ shouldKeepDiagnostic: (diagnostic) => !isThirdPartyModuleImportDiagnostic(diagnostic),
59
+ shouldKeepFile: (fileName) => shouldKeepProjectFile(fileName, rootCanonical)
60
+ });
61
+ isValid &&= isConfigValid;
62
+ }
63
+ return isValid;
64
+ }
65
+ function findEnclosingModuleSpecifier(sourceFile, position) {
66
+ let specifier = null;
67
+ visit(sourceFile);
68
+ return specifier;
69
+ function visit(node) {
70
+ if (position < node.getStart(sourceFile) || position >= node.getEnd()) {
71
+ return;
72
+ }
73
+ const nodeSpecifier = getModuleSpecifier(node);
74
+ if (nodeSpecifier !== null) {
75
+ specifier = nodeSpecifier;
76
+ }
77
+ forEachChild(node, visit);
78
+ }
79
+ }
80
+ function getModuleSpecifier(node) {
81
+ if (isImportDeclaration(node) || isExportDeclaration(node)) {
82
+ return getStringLiteralText(node.moduleSpecifier);
83
+ }
84
+ if (isImportTypeNode(node)) {
85
+ return isLiteralTypeNode(node.argument) ? getStringLiteralText(node.argument.literal) : null;
86
+ }
87
+ return null;
88
+ }
89
+ function getStringLiteralText(node) {
90
+ return node && isStringLiteral(node) ? node.text : null;
91
+ }
92
+ function isThirdPartyModuleImportDiagnostic(diagnostic) {
93
+ const file = diagnostic.file;
94
+ if (!file || diagnostic.start === void 0) {
95
+ return false;
96
+ }
97
+ const specifier = findEnclosingModuleSpecifier(file, diagnostic.start);
98
+ return specifier !== null && !specifier.startsWith(RELATIVE_SPECIFIER_PREFIX);
99
+ }
100
+ function shouldKeepProjectFile(fileName, rootCanonical) {
101
+ return fileName.startsWith(`${rootCanonical}/`) && !fileName.includes(NODE_MODULES_SEGMENT);
102
+ }
103
+ export {
104
+ validateDeclarations
105
+ };
106
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy92YWxpZGF0ZS1kZWNsYXJhdGlvbnMudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBUeXBlLWNoZWNrcyB0aGUgZ2VuZXJhdGVkIGRlY2xhcmF0aW9uIGZpbGVzIChgLmQuY3RzYCAvIGAuZC5tdHNgKSB0byBwcm92ZSB0aGV5IGFyZSBzZWxmLWNvbnRhaW5lZFxuICogXHUyMDE0IGV2ZXJ5IGBsaWJgIGFuZCBpbnRlcm5hbCBjcm9zcy1yZWZlcmVuY2UgdGhleSByZWx5IG9uIHJlc29sdmVzIG9uIGl0cyBvd24sIGluZGVwZW5kZW50IG9mIHRoZVxuICogY29uc3VtZXIncyBgdHNjb25maWdgLlxuICpcbiAqIFRoZSBsaWJyYXJ5IGRvZXMgbm90IG93biB0aGUgdHlwZXMgb2YgdGhlIHRoaXJkLXBhcnR5IHBhY2thZ2VzIGl0cyBkZWNsYXJhdGlvbnMgaW1wb3J0IChlLmcuXG4gKiBgdHlwZS1mZXN0YCwgYG9ic2lkaWFuYCwgYG1hcmtkb3dubGludGApLiBDcm9zcy1tb2R1bGUtZm9ybWF0IGludGVyb3AgZGlhZ25vc3RpY3MgY2F1c2VkIGJ5IHRob3NlXG4gKiBpbXBvcnRzIFx1MjAxNCBmb3IgZXhhbXBsZSBhIENvbW1vbkpTIGAuZC5jdHNgIGltcG9ydGluZyBhbiBFU00tb25seSBwYWNrYWdlIHdpdGhvdXQgYVxuICogYHJlc29sdXRpb24tbW9kZWAgYXR0cmlidXRlIChgVFMxNTQxYCAvIGBUUzE1NDJgIC8gYFRTMTQ3OWApIFx1MjAxNCBkZXNjcmliZSB0aGUgdGhpcmQtcGFydHkgcGFja2FnZSdzXG4gKiBzaGFwZSwgbm90IGEgZmxhdyBpbiBvdXIgZGVjbGFyYXRpb25zLCBhbmQgYXJlIHRoZSBjb25zdW1lcidzIGNvbmNlcm4uIFRoZXkgYXJlIHRoZXJlZm9yZSBpZ25vcmVkLlxuICogT25seSBkaWFnbm9zdGljcyBhYm91dCB0aGUgbGlicmFyeSdzIG93biBkZWNsYXJhdGlvbnMgYXJlIHJlcG9ydGVkLlxuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgRGlhZ25vc3RpYyxcbiAgTm9kZSxcbiAgU291cmNlRmlsZVxufSBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtcbiAgZm9yRWFjaENoaWxkLFxuICBpc0V4cG9ydERlY2xhcmF0aW9uLFxuICBpc0ltcG9ydERlY2xhcmF0aW9uLFxuICBpc0ltcG9ydFR5cGVOb2RlLFxuICBpc0xpdGVyYWxUeXBlTm9kZSxcbiAgaXNTdHJpbmdMaXRlcmFsXG59IGZyb20gJ3R5cGVzY3JpcHQnO1xuXG5pbXBvcnQgeyBqb2luIH0gZnJvbSAnLi4vcGF0aC50cyc7XG5pbXBvcnQge1xuICBjaGVja1Byb2plY3RUeXBlcyxcbiAgcGFyc2VUc0NvbmZpZyxcbiAgdG9DYW5vbmljYWxcbn0gZnJvbSAnLi9jaGVjay1wcm9qZWN0LXR5cGVzLnRzJztcbmltcG9ydCB7IE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMgfSBmcm9tICcuL29ic2lkaWFuLWRldi11dGlscy1yZXBvLXBhdGhzLnRzJztcbmltcG9ydCB7IGdldFJvb3RGb2xkZXIgfSBmcm9tICcuL3Jvb3QudHMnO1xuXG5jb25zdCBOT0RFX01PRFVMRVNfU0VHTUVOVCA9ICcvbm9kZV9tb2R1bGVzLyc7XG5jb25zdCBSRUxBVElWRV9TUEVDSUZJRVJfUFJFRklYID0gJy4nO1xuXG5jb25zdCBWQUxJREFURV9ERUNMQVJBVElPTlNfVFNfQ09ORklHX0ZJTEVfTkFNRVMgPSBbXG4gIE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMuVHNDb25maWdWYWxpZGF0ZURlY2xhcmF0aW9uc0pzb24sXG4gIE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMuVHNDb25maWdWYWxpZGF0ZURlY2xhcmF0aW9uc0Nqc0pzb25cbl07XG5cbi8qKlxuICogVmFsaWRhdGVzIHRoZSBnZW5lcmF0ZWQgZGVjbGFyYXRpb24gZmlsZXMgYWdhaW5zdCB0aGUgYHRzY29uZmlnLnZhbGlkYXRlLWRlY2xhcmF0aW9ucyouanNvbmBcbiAqIGNvbmZpZ3MsIHJlcG9ydGluZyBvbmx5IGRpYWdub3N0aWNzIHRoYXQgY29uY2VybiB0aGUgbGlicmFyeSdzIG93biBkZWNsYXJhdGlvbnMgYW5kIGlnbm9yaW5nIHRob3NlXG4gKiBjYXVzZWQgYnkgaW1wb3J0aW5nIHRoaXJkLXBhcnR5IHBhY2thZ2VzLlxuICpcbiAqIEByZXR1cm5zIGB0cnVlYCB3aGVuIHRoZSBsaWJyYXJ5J3Mgb3duIGRlY2xhcmF0aW9ucyBoYXZlIG5vIHR5cGUgZXJyb3JzLCBgZmFsc2VgIG90aGVyd2lzZS5cbiAqIEB0aHJvd3MgSWYgdGhlIHJvb3QgZm9sZGVyIGNhbm5vdCBiZSBmb3VuZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlRGVjbGFyYXRpb25zKCk6IGJvb2xlYW4ge1xuICBjb25zdCByb290ID0gZ2V0Um9vdEZvbGRlcigpO1xuXG4gIGlmICghcm9vdCkge1xuICAgIHRocm93IG5ldyBFcnJvcignQ291bGQgbm90IGZpbmQgcm9vdCBmb2xkZXInKTtcbiAgfVxuXG4gIGNvbnN0IHJvb3RDYW5vbmljYWwgPSB0b0Nhbm9uaWNhbChyb290KTtcblxuICBsZXQgaXNWYWxpZCA9IHRydWU7XG5cbiAgZm9yIChjb25zdCB0c0NvbmZpZ0ZpbGVOYW1lIG9mIFZBTElEQVRFX0RFQ0xBUkFUSU9OU19UU19DT05GSUdfRklMRV9OQU1FUykge1xuICAgIGNvbnN0IHsgZmlsZU5hbWVzLCBvcHRpb25zIH0gPSBwYXJzZVRzQ29uZmlnKGpvaW4ocm9vdCwgdHNDb25maWdGaWxlTmFtZSkpO1xuICAgIGNvbnN0IGlzQ29uZmlnVmFsaWQgPSBjaGVja1Byb2plY3RUeXBlcyh7XG4gICAgICBvcHRpb25zLFxuICAgICAgcm9vdE5hbWVzOiBmaWxlTmFtZXMsXG4gICAgICBzaG91bGRLZWVwRGlhZ25vc3RpYzogKGRpYWdub3N0aWMpID0+ICFpc1RoaXJkUGFydHlNb2R1bGVJbXBvcnREaWFnbm9zdGljKGRpYWdub3N0aWMpLFxuICAgICAgc2hvdWxkS2VlcEZpbGU6IChmaWxlTmFtZSkgPT4gc2hvdWxkS2VlcFByb2plY3RGaWxlKGZpbGVOYW1lLCByb290Q2Fub25pY2FsKVxuICAgIH0pO1xuICAgIGlzVmFsaWQgJiY9IGlzQ29uZmlnVmFsaWQ7XG4gIH1cblxuICByZXR1cm4gaXNWYWxpZDtcbn1cblxuZnVuY3Rpb24gZmluZEVuY2xvc2luZ01vZHVsZVNwZWNpZmllcihzb3VyY2VGaWxlOiBTb3VyY2VGaWxlLCBwb3NpdGlvbjogbnVtYmVyKTogbnVsbCB8IHN0cmluZyB7XG4gIGxldCBzcGVjaWZpZXI6IG51bGwgfCBzdHJpbmcgPSBudWxsO1xuICB2aXNpdChzb3VyY2VGaWxlKTtcbiAgcmV0dXJuIHNwZWNpZmllcjtcblxuICBmdW5jdGlvbiB2aXNpdChub2RlOiBOb2RlKTogdm9pZCB7XG4gICAgaWYgKHBvc2l0aW9uIDwgbm9kZS5nZXRTdGFydChzb3VyY2VGaWxlKSB8fCBwb3NpdGlvbiA+PSBub2RlLmdldEVuZCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgbm9kZVNwZWNpZmllciA9IGdldE1vZHVsZVNwZWNpZmllcihub2RlKTtcbiAgICBpZiAobm9kZVNwZWNpZmllciAhPT0gbnVsbCkge1xuICAgICAgc3BlY2lmaWVyID0gbm9kZVNwZWNpZmllcjtcbiAgICB9XG5cbiAgICBmb3JFYWNoQ2hpbGQobm9kZSwgdmlzaXQpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdldE1vZHVsZVNwZWNpZmllcihub2RlOiBOb2RlKTogbnVsbCB8IHN0cmluZyB7XG4gIGlmIChpc0ltcG9ydERlY2xhcmF0aW9uKG5vZGUpIHx8IGlzRXhwb3J0RGVjbGFyYXRpb24obm9kZSkpIHtcbiAgICByZXR1cm4gZ2V0U3RyaW5nTGl0ZXJhbFRleHQobm9kZS5tb2R1bGVTcGVjaWZpZXIpO1xuICB9XG5cbiAgaWYgKGlzSW1wb3J0VHlwZU5vZGUobm9kZSkpIHtcbiAgICByZXR1cm4gaXNMaXRlcmFsVHlwZU5vZGUobm9kZS5hcmd1bWVudCkgPyBnZXRTdHJpbmdMaXRlcmFsVGV4dChub2RlLmFyZ3VtZW50LmxpdGVyYWwpIDogbnVsbDtcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG5mdW5jdGlvbiBnZXRTdHJpbmdMaXRlcmFsVGV4dChub2RlOiBOb2RlIHwgdW5kZWZpbmVkKTogbnVsbCB8IHN0cmluZyB7XG4gIHJldHVybiBub2RlICYmIGlzU3RyaW5nTGl0ZXJhbChub2RlKSA/IG5vZGUudGV4dCA6IG51bGw7XG59XG5cbmZ1bmN0aW9uIGlzVGhpcmRQYXJ0eU1vZHVsZUltcG9ydERpYWdub3N0aWMoZGlhZ25vc3RpYzogRGlhZ25vc3RpYyk6IGJvb2xlYW4ge1xuICBjb25zdCBmaWxlID0gZGlhZ25vc3RpYy5maWxlO1xuICBpZiAoIWZpbGUgfHwgZGlhZ25vc3RpYy5zdGFydCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3Qgc3BlY2lmaWVyID0gZmluZEVuY2xvc2luZ01vZHVsZVNwZWNpZmllcihmaWxlLCBkaWFnbm9zdGljLnN0YXJ0KTtcbiAgcmV0dXJuIHNwZWNpZmllciAhPT0gbnVsbCAmJiAhc3BlY2lmaWVyLnN0YXJ0c1dpdGgoUkVMQVRJVkVfU1BFQ0lGSUVSX1BSRUZJWCk7XG59XG5cbmZ1bmN0aW9uIHNob3VsZEtlZXBQcm9qZWN0RmlsZShmaWxlTmFtZTogc3RyaW5nLCByb290Q2Fub25pY2FsOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcmV0dXJuIGZpbGVOYW1lLnN0YXJ0c1dpdGgoYCR7cm9vdENhbm9uaWNhbH0vYCkgJiYgIWZpbGVOYW1lLmluY2x1ZGVzKE5PREVfTU9EVUxFU19TRUdNRU5UKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBcUJBO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUVQLFNBQVMsWUFBWTtBQUNyQjtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUCxTQUFTLGlDQUFpQztBQUMxQyxTQUFTLHFCQUFxQjtBQUU5QixNQUFNLHVCQUF1QjtBQUM3QixNQUFNLDRCQUE0QjtBQUVsQyxNQUFNLDZDQUE2QztBQUFBLEVBQ2pELDBCQUEwQjtBQUFBLEVBQzFCLDBCQUEwQjtBQUM1QjtBQVVPLFNBQVMsdUJBQWdDO0FBQzlDLFFBQU0sT0FBTyxjQUFjO0FBRTNCLE1BQUksQ0FBQyxNQUFNO0FBQ1QsVUFBTSxJQUFJLE1BQU0sNEJBQTRCO0FBQUEsRUFDOUM7QUFFQSxRQUFNLGdCQUFnQixZQUFZLElBQUk7QUFFdEMsTUFBSSxVQUFVO0FBRWQsYUFBVyxvQkFBb0IsNENBQTRDO0FBQ3pFLFVBQU0sRUFBRSxXQUFXLFFBQVEsSUFBSSxjQUFjLEtBQUssTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxVQUFNLGdCQUFnQixrQkFBa0I7QUFBQSxNQUN0QztBQUFBLE1BQ0EsV0FBVztBQUFBLE1BQ1gsc0JBQXNCLENBQUMsZUFBZSxDQUFDLG1DQUFtQyxVQUFVO0FBQUEsTUFDcEYsZ0JBQWdCLENBQUMsYUFBYSxzQkFBc0IsVUFBVSxhQUFhO0FBQUEsSUFDN0UsQ0FBQztBQUNELGdCQUFZO0FBQUEsRUFDZDtBQUVBLFNBQU87QUFDVDtBQUVBLFNBQVMsNkJBQTZCLFlBQXdCLFVBQWlDO0FBQzdGLE1BQUksWUFBMkI7QUFDL0IsUUFBTSxVQUFVO0FBQ2hCLFNBQU87QUFFUCxXQUFTLE1BQU0sTUFBa0I7QUFDL0IsUUFBSSxXQUFXLEtBQUssU0FBUyxVQUFVLEtBQUssWUFBWSxLQUFLLE9BQU8sR0FBRztBQUNyRTtBQUFBLElBQ0Y7QUFFQSxVQUFNLGdCQUFnQixtQkFBbUIsSUFBSTtBQUM3QyxRQUFJLGtCQUFrQixNQUFNO0FBQzFCLGtCQUFZO0FBQUEsSUFDZDtBQUVBLGlCQUFhLE1BQU0sS0FBSztBQUFBLEVBQzFCO0FBQ0Y7QUFFQSxTQUFTLG1CQUFtQixNQUEyQjtBQUNyRCxNQUFJLG9CQUFvQixJQUFJLEtBQUssb0JBQW9CLElBQUksR0FBRztBQUMxRCxXQUFPLHFCQUFxQixLQUFLLGVBQWU7QUFBQSxFQUNsRDtBQUVBLE1BQUksaUJBQWlCLElBQUksR0FBRztBQUMxQixXQUFPLGtCQUFrQixLQUFLLFFBQVEsSUFBSSxxQkFBcUIsS0FBSyxTQUFTLE9BQU8sSUFBSTtBQUFBLEVBQzFGO0FBRUEsU0FBTztBQUNUO0FBRUEsU0FBUyxxQkFBcUIsTUFBdUM7QUFDbkUsU0FBTyxRQUFRLGdCQUFnQixJQUFJLElBQUksS0FBSyxPQUFPO0FBQ3JEO0FBRUEsU0FBUyxtQ0FBbUMsWUFBaUM7QUFDM0UsUUFBTSxPQUFPLFdBQVc7QUFDeEIsTUFBSSxDQUFDLFFBQVEsV0FBVyxVQUFVLFFBQVc7QUFDM0MsV0FBTztBQUFBLEVBQ1Q7QUFFQSxRQUFNLFlBQVksNkJBQTZCLE1BQU0sV0FBVyxLQUFLO0FBQ3JFLFNBQU8sY0FBYyxRQUFRLENBQUMsVUFBVSxXQUFXLHlCQUF5QjtBQUM5RTtBQUVBLFNBQVMsc0JBQXNCLFVBQWtCLGVBQWdDO0FBQy9FLFNBQU8sU0FBUyxXQUFXLEdBQUcsYUFBYSxHQUFHLEtBQUssQ0FBQyxTQUFTLFNBQVMsb0JBQW9CO0FBQzVGOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -35,4 +35,4 @@ function typeAsserter() {
35
35
  export {
36
36
  typeAsserter
37
37
  };
38
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3R5cGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBUeXBlIHV0aWxpdGllcy5cbiAqL1xuXG5pbXBvcnQgeyBjYXN0VG8gfSBmcm9tICcuL29iamVjdC11dGlscy50cyc7XG5cbi8qKlxuICogQSB0eXBlIHRoYXQgcmVwcmVzZW50cyB0aGUga2V5cyBvZiBhbiBvYmplY3QgYXMgc3RyaW5ncyBhbmQgYXNzZXJ0cyB0aGF0IGFsbCBrZXlzIGFyZSBwcmVzZW50IGluIGEgbGlzdCBvZiBrZXlzLlxuICpcbiAqIEB0eXBlUGFyYW0gVHlwZSAtIFRoZSB0eXBlIG9mIHRoZSBvYmplY3QuXG4gKiBAdHlwZVBhcmFtIEtleXMgLSBUaGUgbGlzdCBvZiBrZXlzIHRvIGFzc2VydC5cbiAqL1xuZXhwb3J0IHR5cGUgRXhhY3RLZXlzPFR5cGUgZXh0ZW5kcyBvYmplY3QsIEtleXMgZXh0ZW5kcyByZWFkb25seSBzdHJpbmdbXT4gPSBFeGFjdE1lbWJlcnM8U3RyaW5nS2V5czxUeXBlPiwgS2V5cz47XG5cbi8qKlxuICogQSB0eXBlIHRoYXQgcmVwcmVzZW50cyB0aGUgbWVtYmVycyBvZiBhIHR5cGUuXG4gKlxuICogQHR5cGVQYXJhbSBUeXBlIC0gVGhlIHR5cGUgdG8gYXNzZXJ0IHRoZSBtZW1iZXJzIG9mLlxuICogQHR5cGVQYXJhbSBLZXlzIC0gVGhlIGxpc3Qgb2YgbWVtYmVycyB0byBhc3NlcnQuXG4gKi9cbmV4cG9ydCB0eXBlIEV4YWN0TWVtYmVyczxcbiAgVHlwZSBleHRlbmRzIExpdGVyYWxLZXksXG4gIEtleXMgZXh0ZW5kcyByZWFkb25seSBMaXRlcmFsS2V5W11cbj4gPSBFeGNsdWRlPEtleXNbbnVtYmVyXSwgVHlwZT4gZXh0ZW5kcyBuZXZlciA/IEV4Y2x1ZGU8VHlwZSwgS2V5c1tudW1iZXJdPiBleHRlbmRzIG5ldmVyID8gRHVwbGljYXRlczxLZXlzPiBleHRlbmRzIFtdID8gS2V5c1xuICAgIDogYEVSUk9SOiBEdXBsaWNhdGUgbWVtYmVyczogJHtUdXBsZVRvQ1NWPER1cGxpY2F0ZXM8S2V5cz4+fWBcbiAgOiBgRVJST1I6IE1pc3NpbmcgbWVtYmVyczogJHtUdXBsZVRvQ1NWPFVuaW9uVG9UdXBsZTxFeGNsdWRlPFR5cGUsIEtleXNbbnVtYmVyXT4+Pn1gXG4gIDogYEVSUk9SOiBJbnZhbGlkIG1lbWJlcnM6ICR7VHVwbGVUb0NTVjxVbmlvblRvVHVwbGU8RXhjbHVkZTxLZXlzW251bWJlcl0sIFR5cGU+Pj59YDtcblxuLyoqXG4gKiBBIHR5cGUgdGhhdCByZXByZXNlbnRzIGEgcmV0dXJuIHZhbHVlIHRoYXQgbWF5IGJlIGB2b2lkYC5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBUaGUgdHlwZSBvZiB0aGUgdmFsdWUgdGhhdCBtYXkgYmUgcmV0dXJuZWQuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8taW52YWxpZC12b2lkLXR5cGUgLS0gV2UgbmVlZCB0byB1c2UgdGhlIGB2b2lkYCByZXR1cm4gdHlwZS5cbmV4cG9ydCB0eXBlIE1heWJlUmV0dXJuPFQ+ID0gVCB8IHZvaWQ7XG5cbi8qKlxuICogQSB0eXBlIHRoYXQgcmVwcmVzZW50cyB0aGUgdmFsdWVzIG9mIGFuIG9iamVjdC5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBUaGUgdHlwZSBvZiB0aGUgb2JqZWN0LlxuICovXG5leHBvcnQgdHlwZSBQcm9wZXJ0eVZhbHVlczxUIGV4dGVuZHMgb2JqZWN0PiA9IFRbU3RyaW5nS2V5czxUPl07XG5cbi8qKlxuICogQSB0eXBlIHRoYXQgcmVwcmVzZW50cyB0aGUga2V5cyBvZiBhbiBvYmplY3QgYXMgc3RyaW5ncy5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBUaGUgdHlwZSBvZiB0aGUgb2JqZWN0LlxuICovXG5leHBvcnQgdHlwZSBTdHJpbmdLZXlzPFQgZXh0ZW5kcyBvYmplY3Q+ID0gRXh0cmFjdDxrZXlvZiBULCBzdHJpbmc+O1xuXG4vKipcbiAqIEEgaGVscGVyIHRoYXQgY2FwdHVyZXMgYSB0eXBlIHBhcmFtZXRlciBhbmQgcHJvdmlkZXMgbWV0aG9kcyBmb3IgY29tcGlsZS10aW1lIGV4aGF1c3RpdmVuZXNzIGNoZWNrcy5cbiAqXG4gKiBAdHlwZVBhcmFtIFR5cGUgLSBUaGUgY2FwdHVyZWQgdHlwZS5cbiAqXG4gKiBAcmVtYXJrc1xuICogLSBgYXNzZXJ0QWxsS2V5c2AgaXMgYXZhaWxhYmxlIHdoZW4gYFR5cGVgIGlzIGFuIG9iamVjdCB0eXBlLlxuICogLSBgYXNzZXJ0QWxsTWVtYmVyc2AgaXMgYXZhaWxhYmxlIHdoZW4gYFR5cGVgIGlzIGEgbGl0ZXJhbCBrZXkgdW5pb24gKGBzdHJpbmcgfCBudW1iZXJgKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIHR5cGUgQSA9IHsgYTogMSwgYjogMiwgYzogMyB9O1xuICogdHlwZUFzc2VydGVyPEE+KCkuYXNzZXJ0QWxsS2V5cyhbJ2EnLCAnYicsICdjJ10pOyAvLyBPS1xuICogdHlwZUFzc2VydGVyPEE+KCkuYXNzZXJ0QWxsS2V5cyhbJ2MnLCAnYScsICdiJ10pOyAvLyBPSywgb3JkZXIgaXMgaWdub3JlZFxuICogdHlwZUFzc2VydGVyPEE+KCkuYXNzZXJ0QWxsS2V5cyhbJ2EnLCAnYicsICdjJywgJ2QnXSk7IC8vIEVycm9yOiBJbnZhbGlkIG1lbWJlcnM6IGRcbiAqIHR5cGVBc3NlcnRlcjxBPigpLmFzc2VydEFsbEtleXMoWydhJywgJ2InXSk7IC8vIEVycm9yOiBNaXNzaW5nIG1lbWJlcnM6IGNcbiAqXG4gKiB0eXBlIEIgPSAxIHwgMiB8IDMgfCAnYSc7XG4gKiB0eXBlQXNzZXJ0ZXI8Qj4oKS5hc3NlcnRBbGxNZW1iZXJzKFsxLCAyLCAzLCAnYSddKTsgLy8gT0tcbiAqIHR5cGVBc3NlcnRlcjxCPigpLmFzc2VydEFsbE1lbWJlcnMoWzEsIDIsIDMsICdhJywgNF0pOyAvLyBFcnJvcjogSW52YWxpZCBtZW1iZXJzOiA0XG4gKiB0eXBlQXNzZXJ0ZXI8Qj4oKS5hc3NlcnRBbGxNZW1iZXJzKFsxLCAyLCAzXSk7IC8vIEVycm9yOiBNaXNzaW5nIG1lbWJlcnM6IGFcbiAqIGBgYFxuICovXG5leHBvcnQgaW50ZXJmYWNlIFR5cGVBc3NlcnRlcjxUeXBlPiB7XG4gIC8qKlxuICAgKiBBc3NlcnRzIHRoYXQgYWxsIGtleXMgb2YgYW4gb2JqZWN0IHR5cGUgYXJlIHByZXNlbnQgaW4gYSBsaXN0IG9mIGtleXMuXG4gICAqXG4gICAqIEByZW1hcmtzIE9ubHkgYXZhaWxhYmxlIHdoZW4gYFtUeXBlXSBleHRlbmRzIFtvYmplY3RdYC5cbiAgICovXG4gIGFzc2VydEFsbEtleXM6IFtUeXBlXSBleHRlbmRzIFtvYmplY3RdID8gPGNvbnN0IEtleXMgZXh0ZW5kcyByZWFkb25seSBzdHJpbmdbXT4oXG4gICAgICBrZXlzOiBFeGFjdE1lbWJlcnM8U3RyaW5nS2V5czxUeXBlPiwgS2V5cz5cbiAgICApID0+IHJlYWRvbmx5IChrZXlvZiBUeXBlKVtdXG4gICAgOiBuZXZlcjtcblxuICAvKipcbiAgICogQXNzZXJ0cyB0aGF0IGFsbCBtZW1iZXJzIG9mIGEgdW5pb24gdHlwZSBhcmUgcHJlc2VudCBpbiBhIGxpc3Qgb2YgbWVtYmVycy5cbiAgICpcbiAgICogQHJlbWFya3MgT25seSBhdmFpbGFibGUgd2hlbiBgW1R5cGVdIGV4dGVuZHMgW0xpdGVyYWxLZXldYC5cbiAgICovXG4gIGFzc2VydEFsbE1lbWJlcnM6IFtUeXBlXSBleHRlbmRzIFtMaXRlcmFsS2V5XSA/IDxjb25zdCBLZXlzIGV4dGVuZHMgcmVhZG9ubHkgTGl0ZXJhbEtleVtdPihcbiAgICAgIGtleXM6IEV4YWN0TWVtYmVyczxUeXBlLCBLZXlzPlxuICAgICkgPT4gcmVhZG9ubHkgVHlwZVtdXG4gICAgOiBuZXZlcjtcbn1cblxudHlwZSBEdXBsaWNhdGVzPFxuICBUIGV4dGVuZHMgcmVhZG9ubHkgdW5rbm93bltdLFxuICBTZWVuIGV4dGVuZHMgcmVhZG9ubHkgdW5rbm93bltdID0gW10sXG4gIEFkZGVkIGV4dGVuZHMgcmVhZG9ubHkgdW5rbm93bltdID0gW10sXG4gIE91dCBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXSA9IFtdXG4+ID0gVCBleHRlbmRzIHJlYWRvbmx5IFtpbmZlciBGaXJzdCwgLi4uaW5mZXIgUmVzdF1cbiAgPyBJbmNsdWRlczxTZWVuLCBGaXJzdD4gZXh0ZW5kcyB0cnVlID8gSW5jbHVkZXM8QWRkZWQsIEZpcnN0PiBleHRlbmRzIHRydWUgPyBEdXBsaWNhdGVzPFJlc3QsIFNlZW4sIEFkZGVkLCBPdXQ+XG4gICAgOiBEdXBsaWNhdGVzPFJlc3QsIFNlZW4sIFsuLi5BZGRlZCwgRmlyc3RdLCBbLi4uT3V0LCBGaXJzdF0+XG4gIDogRHVwbGljYXRlczxSZXN0LCBbLi4uU2VlbiwgRmlyc3RdLCBBZGRlZCwgT3V0PlxuICA6IE91dDtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bm5lY2Vzc2FyeS10eXBlLXBhcmFtZXRlcnMsbm8tbWFnaWMtbnVtYmVycyAtLSBXZSBuZWVkIHRvIHVzZSB0aGUgZHVtbXkgcGFyYW1ldGVyIHRvIGdldCB0eXBlIGluZmVyZW5jZS5cbnR5cGUgRXF1YWw8WCwgWT4gPSAoPFQ+KCkgPT4gVCBleHRlbmRzIFggPyAxIDogMikgZXh0ZW5kcyAoPFQ+KCkgPT4gVCBleHRlbmRzIFkgPyAxIDogMikgPyB0cnVlIDogZmFsc2U7XG5cbnR5cGUgSW5jbHVkZXM8VHlwZSBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXSwgTWVtYmVyPiA9IFR5cGUgZXh0ZW5kcyByZWFkb25seSBbaW5mZXIgRmlyc3QsIC4uLmluZmVyIFJlc3RdXG4gID8gRXF1YWw8Rmlyc3QsIE1lbWJlcj4gZXh0ZW5kcyB0cnVlID8gdHJ1ZSA6IEluY2x1ZGVzPFJlc3QsIE1lbWJlcj5cbiAgOiBmYWxzZTtcblxudHlwZSBMYXN0SW5VbmlvbjxVbmlvbj4gPSBVbmlvblRvSW50ZXJzZWN0aW9uPFVuaW9uIGV4dGVuZHMgdW5rbm93biA/ICgpID0+IFVuaW9uIDogbmV2ZXI+IGV4dGVuZHMgKCkgPT4gaW5mZXIgTGFzdCA/IExhc3QgOiBuZXZlcjtcblxudHlwZSBMaXRlcmFsS2V5ID0gbnVtYmVyIHwgc3RyaW5nO1xuXG50eXBlIFRvU3RyaW5nPFQ+ID0gVCBleHRlbmRzIG51bWJlciB8IHN0cmluZyA/IGAke1R9YCA6IG5ldmVyO1xuXG50eXBlIFR1cGxlVG9DU1Y8VHVwbGUgZXh0ZW5kcyByZWFkb25seSB1bmtub3duW10+ID0gVHVwbGUgZXh0ZW5kcyByZWFkb25seSBbaW5mZXIgRmlyc3QsIC4uLmluZmVyIFJlc3RdXG4gID8gRmlyc3QgZXh0ZW5kcyBMaXRlcmFsS2V5ID8gUmVzdCBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXSA/IFJlc3RbJ2xlbmd0aCddIGV4dGVuZHMgMCA/IFRvU3RyaW5nPEZpcnN0PiA6IGAke1RvU3RyaW5nPEZpcnN0Pn0sJHtUdXBsZVRvQ1NWPFJlc3Q+fWBcbiAgICA6IG5ldmVyXG4gIDogbmV2ZXJcbiAgOiAnJztcblxudHlwZSBVbmlvblRvSW50ZXJzZWN0aW9uPFVuaW9uPiA9IChVbmlvbiBleHRlbmRzIHVua25vd24gPyAoa2V5OiBVbmlvbikgPT4gdm9pZCA6IG5ldmVyKSBleHRlbmRzIChrZXk6IGluZmVyIEludGVyc2VjdGlvbikgPT4gdm9pZCA/IEludGVyc2VjdGlvbiA6IG5ldmVyO1xuXG50eXBlIFVuaW9uVG9UdXBsZTxVbmlvbiwgTGFzdCA9IExhc3RJblVuaW9uPFVuaW9uPj4gPSBbVW5pb25dIGV4dGVuZHMgW25ldmVyXSA/IFtdIDogWy4uLlVuaW9uVG9UdXBsZTxFeGNsdWRlPFVuaW9uLCBMYXN0Pj4sIExhc3RdO1xuXG4vKipcbiAqIENyZWF0ZXMgYSB0eXBlIGhlbHBlciB0aGF0IGNhcHR1cmVzIGEgdHlwZSBwYXJhbWV0ZXIgZm9yIGNvbXBpbGUtdGltZSBleGhhdXN0aXZlbmVzcyBjaGVja3MuXG4gKlxuICogQHR5cGVQYXJhbSBUeXBlIC0gVGhlIHR5cGUgdG8gY2FwdHVyZS5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFR5cGVBc3NlcnRlcn0gd2l0aCBgYXNzZXJ0QWxsS2V5c2AgYW5kIGBhc3NlcnRBbGxNZW1iZXJzYCBtZXRob2RzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogdHlwZSBBID0geyBhOiAxLCBiOiAyLCBjOiAzIH07XG4gKiB0eXBlQXNzZXJ0ZXI8QT4oKS5hc3NlcnRBbGxLZXlzKFsnYScsICdiJywgJ2MnXSk7IC8vIE9LXG4gKiB0eXBlQXNzZXJ0ZXI8QT4oKS5hc3NlcnRBbGxLZXlzKFsnYycsICdhJywgJ2InXSk7IC8vIE9LLCBvcmRlciBpcyBpZ25vcmVkXG4gKlxuICogdHlwZSBCID0gMSB8IDIgfCAzIHwgJ2EnO1xuICogdHlwZUFzc2VydGVyPEI+KCkuYXNzZXJ0QWxsTWVtYmVycyhbMSwgMiwgMywgJ2EnXSk7IC8vIE9LXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHR5cGVBc3NlcnRlcjxUeXBlPigpOiBUeXBlQXNzZXJ0ZXI8VHlwZT4ge1xuICByZXR1cm4gY2FzdFRvPFR5cGVBc3NlcnRlcjxUeXBlPj4oe1xuICAgIGFzc2VydEFsbEtleXM8Y29uc3QgS2V5cyBleHRlbmRzIHJlYWRvbmx5IHN0cmluZ1tdPihcbiAgICAgIGtleXM6IEV4YWN0TWVtYmVyczxTdHJpbmdLZXlzPG9iamVjdCAmIFR5cGU+LCBLZXlzPlxuICAgICk6IHJlYWRvbmx5IChrZXlvZiAob2JqZWN0ICYgVHlwZSkpW10ge1xuICAgICAgcmV0dXJuIE9iamVjdC5mcmVlemUoa2V5cy5zbGljZSgpIGFzIChrZXlvZiAob2JqZWN0ICYgVHlwZSkpW10pO1xuICAgIH0sXG4gICAgYXNzZXJ0QWxsTWVtYmVyczxjb25zdCBLZXlzIGV4dGVuZHMgcmVhZG9ubHkgTGl0ZXJhbEtleVtdPihcbiAgICAgIGtleXM6IEV4YWN0TWVtYmVyczxMaXRlcmFsS2V5ICYgVHlwZSwgS2V5cz5cbiAgICApOiByZWFkb25seSAoTGl0ZXJhbEtleSAmIFR5cGUpW10ge1xuICAgICAgcmV0dXJuIE9iamVjdC5mcmVlemUoa2V5cy5zbGljZSgpIGFzIChMaXRlcmFsS2V5ICYgVHlwZSlbXSk7XG4gICAgfVxuICB9KTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsU0FBUyxjQUFjO0FBNkloQixTQUFTLGVBQXlDO0FBQ3ZELFNBQU8sT0FBMkI7QUFBQSxJQUNoQyxjQUNFLE1BQ29DO0FBQ3BDLGFBQU8sT0FBTyxPQUFPLEtBQUssTUFBTSxDQUE4QjtBQUFBLElBQ2hFO0FBQUEsSUFDQSxpQkFDRSxNQUNnQztBQUNoQyxhQUFPLE9BQU8sT0FBTyxLQUFLLE1BQU0sQ0FBMEI7QUFBQSxJQUM1RDtBQUFBLEVBQ0YsQ0FBQztBQUNIOyIsCiAgIm5hbWVzIjogW10KfQo=
38
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3R5cGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBUeXBlIHV0aWxpdGllcy5cbiAqL1xuXG5pbXBvcnQgeyBjYXN0VG8gfSBmcm9tICcuL29iamVjdC11dGlscy50cyc7XG5cbi8qKlxuICogQSB0eXBlIHRoYXQgcmVwcmVzZW50cyB0aGUga2V5cyBvZiBhbiBvYmplY3QgYXMgc3RyaW5ncyBhbmQgYXNzZXJ0cyB0aGF0IGFsbCBrZXlzIGFyZSBwcmVzZW50IGluIGEgbGlzdCBvZiBrZXlzLlxuICpcbiAqIEB0eXBlUGFyYW0gVHlwZSAtIFRoZSB0eXBlIG9mIHRoZSBvYmplY3QuXG4gKiBAdHlwZVBhcmFtIEtleXMgLSBUaGUgbGlzdCBvZiBrZXlzIHRvIGFzc2VydC5cbiAqL1xuZXhwb3J0IHR5cGUgRXhhY3RLZXlzPFR5cGUgZXh0ZW5kcyBvYmplY3QsIEtleXMgZXh0ZW5kcyByZWFkb25seSBzdHJpbmdbXT4gPSBFeGFjdE1lbWJlcnM8U3RyaW5nS2V5czxUeXBlPiwgS2V5cz47XG5cbi8qKlxuICogQSB0eXBlIHRoYXQgcmVwcmVzZW50cyB0aGUgbWVtYmVycyBvZiBhIHR5cGUuXG4gKlxuICogQHR5cGVQYXJhbSBUeXBlIC0gVGhlIHR5cGUgdG8gYXNzZXJ0IHRoZSBtZW1iZXJzIG9mLlxuICogQHR5cGVQYXJhbSBLZXlzIC0gVGhlIGxpc3Qgb2YgbWVtYmVycyB0byBhc3NlcnQuXG4gKi9cbmV4cG9ydCB0eXBlIEV4YWN0TWVtYmVyczxcbiAgVHlwZSBleHRlbmRzIExpdGVyYWxLZXksXG4gIEtleXMgZXh0ZW5kcyByZWFkb25seSBMaXRlcmFsS2V5W11cbj4gPSBFeGNsdWRlPEtleXNbbnVtYmVyXSwgVHlwZT4gZXh0ZW5kcyBuZXZlciA/IEV4Y2x1ZGU8VHlwZSwgS2V5c1tudW1iZXJdPiBleHRlbmRzIG5ldmVyID8gRHVwbGljYXRlczxLZXlzPiBleHRlbmRzIFtdID8gS2V5c1xuICAgIDogYEVSUk9SOiBEdXBsaWNhdGUgbWVtYmVyczogJHtUdXBsZVRvQ1NWPER1cGxpY2F0ZXM8S2V5cz4+fWBcbiAgOiBgRVJST1I6IE1pc3NpbmcgbWVtYmVyczogJHtUdXBsZVRvQ1NWPFVuaW9uVG9UdXBsZTxFeGNsdWRlPFR5cGUsIEtleXNbbnVtYmVyXT4+Pn1gXG4gIDogYEVSUk9SOiBJbnZhbGlkIG1lbWJlcnM6ICR7VHVwbGVUb0NTVjxVbmlvblRvVHVwbGU8RXhjbHVkZTxLZXlzW251bWJlcl0sIFR5cGU+Pj59YDtcblxuLyoqXG4gKiBBIHR5cGUgdGhhdCByZXByZXNlbnRzIGEgcmV0dXJuIHZhbHVlIHRoYXQgbWF5IGJlIGB2b2lkYC5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBUaGUgdHlwZSBvZiB0aGUgdmFsdWUgdGhhdCBtYXkgYmUgcmV0dXJuZWQuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8taW52YWxpZC12b2lkLXR5cGUgLS0gV2UgbmVlZCB0byB1c2UgdGhlIGB2b2lkYCByZXR1cm4gdHlwZS5cbmV4cG9ydCB0eXBlIE1heWJlUmV0dXJuPFQ+ID0gVCB8IHZvaWQ7XG5cbi8qKlxuICogQSB0eXBlIHRoYXQgcmVwcmVzZW50cyB0aGUgdmFsdWVzIG9mIGFuIG9iamVjdC5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBUaGUgdHlwZSBvZiB0aGUgb2JqZWN0LlxuICovXG5leHBvcnQgdHlwZSBQcm9wZXJ0eVZhbHVlczxUIGV4dGVuZHMgb2JqZWN0PiA9IFRbU3RyaW5nS2V5czxUPl07XG5cbi8qKlxuICogQSB0eXBlIHRoYXQgcmVwcmVzZW50cyB0aGUga2V5cyBvZiBhbiBvYmplY3QgYXMgc3RyaW5ncy5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBUaGUgdHlwZSBvZiB0aGUgb2JqZWN0LlxuICovXG5leHBvcnQgdHlwZSBTdHJpbmdLZXlzPFQgZXh0ZW5kcyBvYmplY3Q+ID0gRXh0cmFjdDxrZXlvZiBULCBzdHJpbmc+O1xuXG4vKipcbiAqIEEgaGVscGVyIHRoYXQgY2FwdHVyZXMgYSB0eXBlIHBhcmFtZXRlciBhbmQgcHJvdmlkZXMgbWV0aG9kcyBmb3IgY29tcGlsZS10aW1lIGV4aGF1c3RpdmVuZXNzIGNoZWNrcy5cbiAqXG4gKiBAdHlwZVBhcmFtIFR5cGUgLSBUaGUgY2FwdHVyZWQgdHlwZS5cbiAqXG4gKiBAcmVtYXJrc1xuICogLSBgYXNzZXJ0QWxsS2V5c2AgaXMgYXZhaWxhYmxlIHdoZW4gYFR5cGVgIGlzIGFuIG9iamVjdCB0eXBlLlxuICogLSBgYXNzZXJ0QWxsTWVtYmVyc2AgaXMgYXZhaWxhYmxlIHdoZW4gYFR5cGVgIGlzIGEgbGl0ZXJhbCBrZXkgdW5pb24gKGBzdHJpbmcgfCBudW1iZXJgKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIHR5cGUgQSA9IHsgYTogMSwgYjogMiwgYzogMyB9O1xuICogdHlwZUFzc2VydGVyPEE+KCkuYXNzZXJ0QWxsS2V5cyhbJ2EnLCAnYicsICdjJ10pOyAvLyBPS1xuICogdHlwZUFzc2VydGVyPEE+KCkuYXNzZXJ0QWxsS2V5cyhbJ2MnLCAnYScsICdiJ10pOyAvLyBPSywgb3JkZXIgaXMgaWdub3JlZFxuICogdHlwZUFzc2VydGVyPEE+KCkuYXNzZXJ0QWxsS2V5cyhbJ2EnLCAnYicsICdjJywgJ2QnXSk7IC8vIEVycm9yOiBJbnZhbGlkIG1lbWJlcnM6IGRcbiAqIHR5cGVBc3NlcnRlcjxBPigpLmFzc2VydEFsbEtleXMoWydhJywgJ2InXSk7IC8vIEVycm9yOiBNaXNzaW5nIG1lbWJlcnM6IGNcbiAqXG4gKiB0eXBlIEIgPSAxIHwgMiB8IDMgfCAnYSc7XG4gKiB0eXBlQXNzZXJ0ZXI8Qj4oKS5hc3NlcnRBbGxNZW1iZXJzKFsxLCAyLCAzLCAnYSddKTsgLy8gT0tcbiAqIHR5cGVBc3NlcnRlcjxCPigpLmFzc2VydEFsbE1lbWJlcnMoWzEsIDIsIDMsICdhJywgNF0pOyAvLyBFcnJvcjogSW52YWxpZCBtZW1iZXJzOiA0XG4gKiB0eXBlQXNzZXJ0ZXI8Qj4oKS5hc3NlcnRBbGxNZW1iZXJzKFsxLCAyLCAzXSk7IC8vIEVycm9yOiBNaXNzaW5nIG1lbWJlcnM6IGFcbiAqIGBgYFxuICovXG5leHBvcnQgaW50ZXJmYWNlIFR5cGVBc3NlcnRlcjxUeXBlPiB7XG4gIC8qKlxuICAgKiBBc3NlcnRzIHRoYXQgYWxsIGtleXMgb2YgYW4gb2JqZWN0IHR5cGUgYXJlIHByZXNlbnQgaW4gYSBsaXN0IG9mIGtleXMuXG4gICAqXG4gICAqIEByZW1hcmtzIE9ubHkgYXZhaWxhYmxlIHdoZW4gYFtUeXBlXSBleHRlbmRzIFtvYmplY3RdYC5cbiAgICovXG4gIGFzc2VydEFsbEtleXM6IFtUeXBlXSBleHRlbmRzIFtvYmplY3RdID8gPGNvbnN0IEtleXMgZXh0ZW5kcyByZWFkb25seSBzdHJpbmdbXT4oXG4gICAgICBrZXlzOiBFeGFjdE1lbWJlcnM8U3RyaW5nS2V5czxUeXBlPiwgS2V5cz5cbiAgICApID0+IHJlYWRvbmx5IChrZXlvZiBUeXBlKVtdXG4gICAgOiBuZXZlcjtcblxuICAvKipcbiAgICogQXNzZXJ0cyB0aGF0IGFsbCBtZW1iZXJzIG9mIGEgdW5pb24gdHlwZSBhcmUgcHJlc2VudCBpbiBhIGxpc3Qgb2YgbWVtYmVycy5cbiAgICpcbiAgICogQHJlbWFya3MgT25seSBhdmFpbGFibGUgd2hlbiBgW1R5cGVdIGV4dGVuZHMgW0xpdGVyYWxLZXldYC5cbiAgICovXG4gIGFzc2VydEFsbE1lbWJlcnM6IFtUeXBlXSBleHRlbmRzIFtMaXRlcmFsS2V5XSA/IDxjb25zdCBLZXlzIGV4dGVuZHMgcmVhZG9ubHkgTGl0ZXJhbEtleVtdPihcbiAgICAgIGtleXM6IEV4YWN0TWVtYmVyczxUeXBlLCBLZXlzPlxuICAgICkgPT4gcmVhZG9ubHkgVHlwZVtdXG4gICAgOiBuZXZlcjtcbn1cblxudHlwZSBEdXBsaWNhdGVzPFxuICBUIGV4dGVuZHMgcmVhZG9ubHkgdW5rbm93bltdLFxuICBTZWVuIGV4dGVuZHMgcmVhZG9ubHkgdW5rbm93bltdID0gW10sXG4gIEFkZGVkIGV4dGVuZHMgcmVhZG9ubHkgdW5rbm93bltdID0gW10sXG4gIE91dCBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXSA9IFtdXG4+ID0gVCBleHRlbmRzIHJlYWRvbmx5IFtpbmZlciBGaXJzdCwgLi4uaW5mZXIgUmVzdF0gPyBJbmNsdWRlczxTZWVuLCBGaXJzdD4gZXh0ZW5kcyB0cnVlID8gSW5jbHVkZXM8QWRkZWQsIEZpcnN0PiBleHRlbmRzIHRydWUgPyBEdXBsaWNhdGVzPFJlc3QsIFNlZW4sIEFkZGVkLCBPdXQ+XG4gICAgOiBEdXBsaWNhdGVzPFJlc3QsIFNlZW4sIFsuLi5BZGRlZCwgRmlyc3RdLCBbLi4uT3V0LCBGaXJzdF0+XG4gIDogRHVwbGljYXRlczxSZXN0LCBbLi4uU2VlbiwgRmlyc3RdLCBBZGRlZCwgT3V0PlxuICA6IE91dDtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bm5lY2Vzc2FyeS10eXBlLXBhcmFtZXRlcnMsbm8tbWFnaWMtbnVtYmVycyAtLSBXZSBuZWVkIHRvIHVzZSB0aGUgZHVtbXkgcGFyYW1ldGVyIHRvIGdldCB0eXBlIGluZmVyZW5jZS5cbnR5cGUgRXF1YWw8WCwgWT4gPSAoPFQ+KCkgPT4gVCBleHRlbmRzIFggPyAxIDogMikgZXh0ZW5kcyAoPFQ+KCkgPT4gVCBleHRlbmRzIFkgPyAxIDogMikgPyB0cnVlIDogZmFsc2U7XG5cbnR5cGUgSW5jbHVkZXM8VHlwZSBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXSwgTWVtYmVyPiA9IFR5cGUgZXh0ZW5kcyByZWFkb25seSBbaW5mZXIgRmlyc3QsIC4uLmluZmVyIFJlc3RdID8gRXF1YWw8Rmlyc3QsIE1lbWJlcj4gZXh0ZW5kcyB0cnVlID8gdHJ1ZSA6IEluY2x1ZGVzPFJlc3QsIE1lbWJlcj5cbiAgOiBmYWxzZTtcblxudHlwZSBMYXN0SW5VbmlvbjxVbmlvbj4gPSBVbmlvblRvSW50ZXJzZWN0aW9uPFVuaW9uIGV4dGVuZHMgdW5rbm93biA/ICgpID0+IFVuaW9uIDogbmV2ZXI+IGV4dGVuZHMgKCkgPT4gaW5mZXIgTGFzdCA/IExhc3QgOiBuZXZlcjtcblxudHlwZSBMaXRlcmFsS2V5ID0gbnVtYmVyIHwgc3RyaW5nO1xuXG50eXBlIFRvU3RyaW5nPFQ+ID0gVCBleHRlbmRzIG51bWJlciB8IHN0cmluZyA/IGAke1R9YCA6IG5ldmVyO1xuXG50eXBlIFR1cGxlVG9DU1Y8VHVwbGUgZXh0ZW5kcyByZWFkb25seSB1bmtub3duW10+ID0gVHVwbGUgZXh0ZW5kcyByZWFkb25seSBbaW5mZXIgRmlyc3QsIC4uLmluZmVyIFJlc3RdID8gRmlyc3QgZXh0ZW5kcyBMaXRlcmFsS2V5ID8gUmVzdCBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXSA/IFJlc3RbJ2xlbmd0aCddIGV4dGVuZHMgMCA/IFRvU3RyaW5nPEZpcnN0PiA6IGAke1RvU3RyaW5nPEZpcnN0Pn0sJHtUdXBsZVRvQ1NWPFJlc3Q+fWBcbiAgICA6IG5ldmVyXG4gIDogbmV2ZXJcbiAgOiAnJztcblxudHlwZSBVbmlvblRvSW50ZXJzZWN0aW9uPFVuaW9uPiA9IChVbmlvbiBleHRlbmRzIHVua25vd24gPyAoa2V5OiBVbmlvbikgPT4gdm9pZCA6IG5ldmVyKSBleHRlbmRzIChrZXk6IGluZmVyIEludGVyc2VjdGlvbikgPT4gdm9pZCA/IEludGVyc2VjdGlvbiA6IG5ldmVyO1xuXG50eXBlIFVuaW9uVG9UdXBsZTxVbmlvbiwgTGFzdCA9IExhc3RJblVuaW9uPFVuaW9uPj4gPSBbVW5pb25dIGV4dGVuZHMgW25ldmVyXSA/IFtdIDogWy4uLlVuaW9uVG9UdXBsZTxFeGNsdWRlPFVuaW9uLCBMYXN0Pj4sIExhc3RdO1xuXG4vKipcbiAqIENyZWF0ZXMgYSB0eXBlIGhlbHBlciB0aGF0IGNhcHR1cmVzIGEgdHlwZSBwYXJhbWV0ZXIgZm9yIGNvbXBpbGUtdGltZSBleGhhdXN0aXZlbmVzcyBjaGVja3MuXG4gKlxuICogQHR5cGVQYXJhbSBUeXBlIC0gVGhlIHR5cGUgdG8gY2FwdHVyZS5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFR5cGVBc3NlcnRlcn0gd2l0aCBgYXNzZXJ0QWxsS2V5c2AgYW5kIGBhc3NlcnRBbGxNZW1iZXJzYCBtZXRob2RzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogdHlwZSBBID0geyBhOiAxLCBiOiAyLCBjOiAzIH07XG4gKiB0eXBlQXNzZXJ0ZXI8QT4oKS5hc3NlcnRBbGxLZXlzKFsnYScsICdiJywgJ2MnXSk7IC8vIE9LXG4gKiB0eXBlQXNzZXJ0ZXI8QT4oKS5hc3NlcnRBbGxLZXlzKFsnYycsICdhJywgJ2InXSk7IC8vIE9LLCBvcmRlciBpcyBpZ25vcmVkXG4gKlxuICogdHlwZSBCID0gMSB8IDIgfCAzIHwgJ2EnO1xuICogdHlwZUFzc2VydGVyPEI+KCkuYXNzZXJ0QWxsTWVtYmVycyhbMSwgMiwgMywgJ2EnXSk7IC8vIE9LXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHR5cGVBc3NlcnRlcjxUeXBlPigpOiBUeXBlQXNzZXJ0ZXI8VHlwZT4ge1xuICByZXR1cm4gY2FzdFRvPFR5cGVBc3NlcnRlcjxUeXBlPj4oe1xuICAgIGFzc2VydEFsbEtleXM8Y29uc3QgS2V5cyBleHRlbmRzIHJlYWRvbmx5IHN0cmluZ1tdPihcbiAgICAgIGtleXM6IEV4YWN0TWVtYmVyczxTdHJpbmdLZXlzPG9iamVjdCAmIFR5cGU+LCBLZXlzPlxuICAgICk6IHJlYWRvbmx5IChrZXlvZiAob2JqZWN0ICYgVHlwZSkpW10ge1xuICAgICAgcmV0dXJuIE9iamVjdC5mcmVlemUoa2V5cy5zbGljZSgpIGFzIChrZXlvZiAob2JqZWN0ICYgVHlwZSkpW10pO1xuICAgIH0sXG4gICAgYXNzZXJ0QWxsTWVtYmVyczxjb25zdCBLZXlzIGV4dGVuZHMgcmVhZG9ubHkgTGl0ZXJhbEtleVtdPihcbiAgICAgIGtleXM6IEV4YWN0TWVtYmVyczxMaXRlcmFsS2V5ICYgVHlwZSwgS2V5cz5cbiAgICApOiByZWFkb25seSAoTGl0ZXJhbEtleSAmIFR5cGUpW10ge1xuICAgICAgcmV0dXJuIE9iamVjdC5mcmVlemUoa2V5cy5zbGljZSgpIGFzIChMaXRlcmFsS2V5ICYgVHlwZSlbXSk7XG4gICAgfVxuICB9KTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsU0FBUyxjQUFjO0FBMEloQixTQUFTLGVBQXlDO0FBQ3ZELFNBQU8sT0FBMkI7QUFBQSxJQUNoQyxjQUNFLE1BQ29DO0FBQ3BDLGFBQU8sT0FBTyxPQUFPLEtBQUssTUFBTSxDQUE4QjtBQUFBLElBQ2hFO0FBQUEsSUFDQSxpQkFDRSxNQUNnQztBQUNoQyxhQUFPLE9BQU8sT0FBTyxLQUFLLE1BQU0sQ0FBMEI7QUFBQSxJQUM1RDtBQUFBLEVBQ0YsQ0FBQztBQUNIOyIsCiAgIm5hbWVzIjogW10KfQo=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "obsidian-dev-utils",
3
- "version": "70.1.0",
3
+ "version": "70.2.1",
4
4
  "description": "This is the collection of useful functions that you can use for your Obsidian plugin development.",
5
5
  "keywords": [
6
6
  "obsidian"
@@ -607,8 +607,7 @@
607
607
  "dist/",
608
608
  "!dist/*.tgz",
609
609
  "LICENSE",
610
- "README.md",
611
- "scripts/postinstall.mjs"
610
+ "README.md"
612
611
  ],
613
612
  "scripts": {
614
613
  "build": "jiti scripts/build.ts",
@@ -655,14 +654,14 @@
655
654
  "@eslint/config-helpers": "^0.6.0",
656
655
  "@eslint/js": "^10.0.1",
657
656
  "@lezer/common": "1.2.3",
658
- "@obsidian-typings/obsidian-public-latest": "^6.13.0",
657
+ "@obsidian-typings/obsidian-public-latest": "^6.14.0",
659
658
  "@stylistic/eslint-plugin": "^5.10.0",
660
659
  "@tsconfig/strictest": "^2.0.8",
661
660
  "@types/babel__core": "^7.20.5",
662
661
  "@types/doctrine": "^0.0.9",
663
662
  "@types/eslint": "^9.6.1",
664
663
  "@types/luxon": "^3.7.1",
665
- "@types/node": "^25.9.2",
664
+ "@types/node": "^25.9.3",
666
665
  "@types/parsimmon": "^1.10.9",
667
666
  "@types/path-browserify": "^1.0.3",
668
667
  "@types/picomatch": "^4.0.3",
@@ -695,11 +694,11 @@
695
694
  "linkinator": "^7.6.1",
696
695
  "localforage": "^1.10.0",
697
696
  "lru-cache": "^11.5.1",
698
- "markdownlint": "^0.40.0",
697
+ "markdownlint": "^0.41.0",
699
698
  "markdownlint-cli2": "^0.22.1",
700
699
  "markdownlint-rule-relative-links": "^5.1.0",
701
700
  "monkey-around": "^3.0.0",
702
- "obsidian": "^1.13.0",
701
+ "obsidian": "^1.13.1",
703
702
  "path-browserify": "^1.0.1",
704
703
  "postcss": "^8.5.15",
705
704
  "postcss-modules": "^6.0.1",
@@ -709,7 +708,7 @@
709
708
  "remark-parse": "^11.0.0",
710
709
  "remark-wiki-link": "^2.0.1",
711
710
  "sass": "^1.100.0",
712
- "semver": "^7.8.3",
711
+ "semver": "^7.8.4",
713
712
  "shell-quote": "^1.8.4",
714
713
  "svelte-check": "^4.6.0",
715
714
  "svelte-preprocess": "^6.0.5",
@@ -730,13 +729,14 @@
730
729
  "better-typescript-lib": "^2.12.0",
731
730
  "czg": "^1.13.1",
732
731
  "dedent": "^1.7.2",
732
+ "eslint-plugin-n": "^18.1.0",
733
733
  "husky": "^9.1.7",
734
734
  "jsdom": "^29.1.1",
735
735
  "moment": "^2.30.1",
736
736
  "nano-staged": "^1.0.2",
737
737
  "obsidian-integration-testing": "^4.2.3",
738
738
  "obsidian-test-mocks": "^3.1.0",
739
- "patch-package": "^8.0.1",
739
+ "ts-declaration-location": "^1.0.7",
740
740
  "vitest": "^4.1.8",
741
741
  "yaml": "^2.9.0"
742
742
  },
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../../dist/lib/cjs/script-utils/check-project-types.cjs",
3
+ "module": "../../dist/lib/esm/script-utils/check-project-types.mjs",
4
+ "type": "module",
5
+ "types": "../../dist/lib/cjs/script-utils/check-project-types.d.cts"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../../dist/lib/cjs/script-utils/validate-declarations.cjs",
3
+ "module": "../../dist/lib/esm/script-utils/validate-declarations.mjs",
4
+ "type": "module",
5
+ "types": "../../dist/lib/cjs/script-utils/validate-declarations.d.cts"
6
+ }
@@ -1,29 +0,0 @@
1
- import { spawnSync } from 'node:child_process';
2
- import {
3
- join,
4
- relative
5
- } from 'node:path/posix';
6
- import {
7
- cwd,
8
- env
9
- } from 'node:process';
10
-
11
- const isGlobalInstall = env.npm_config_global === 'true';
12
-
13
- if (isGlobalInstall) {
14
- console.log('Global install detected, skipping patch-package...');
15
- process.exit(0);
16
- }
17
-
18
- let pkgDir = cwd().replace(/\\/g, '/');
19
- const patchDir = join(pkgDir, 'patches');
20
- const relativePath = '/node_modules/obsidian-dev-utils';
21
- if (pkgDir.endsWith(relativePath)) {
22
- pkgDir = pkgDir.slice(0, -relativePath.length);
23
- }
24
-
25
- spawnSync(`npx patch-package --patch-dir "${relative(pkgDir, patchDir)}"`, {
26
- shell: true,
27
- stdio: 'inherit',
28
- cwd: pkgDir
29
- });