@flex-development/mlly 1.0.0-alpha.2 → 1.0.0-alpha.20

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 (151) hide show
  1. package/CHANGELOG.md +1058 -119
  2. package/README.md +190 -10
  3. package/dist/index.d.mts +3 -4
  4. package/dist/index.mjs +1 -4
  5. package/dist/interfaces/aliases.d.mts +11 -0
  6. package/dist/interfaces/context-get-source.d.mts +52 -0
  7. package/dist/interfaces/file-system.d.mts +54 -0
  8. package/dist/interfaces/index.d.mts +11 -9
  9. package/dist/interfaces/main-field-map.d.mts +13 -0
  10. package/dist/interfaces/module-format-map.d.mts +17 -0
  11. package/dist/interfaces/options-get-source.d.mts +47 -0
  12. package/dist/interfaces/options-resolve-alias.d.mts +16 -44
  13. package/dist/interfaces/options-resolve-module.d.mts +75 -0
  14. package/dist/interfaces/protocol-map.d.mts +35 -0
  15. package/dist/interfaces/stats.d.mts +28 -0
  16. package/dist/internal/chars.mjs +11 -0
  17. package/dist/internal/check-invalid-segments.mjs +19 -0
  18. package/dist/internal/fs.browser.mjs +36 -0
  19. package/dist/internal/fs.d.mts +7 -0
  20. package/dist/internal/invalid-package-target.mjs +18 -0
  21. package/dist/internal/invalid-subpath.mjs +16 -0
  22. package/dist/internal/process.browser.mjs +7 -0
  23. package/dist/internal/process.d.mts +4 -0
  24. package/dist/lib/can-parse-url.d.mts +21 -0
  25. package/dist/lib/can-parse-url.mjs +12 -0
  26. package/dist/lib/cwd.d.mts +12 -0
  27. package/dist/lib/cwd.mjs +8 -0
  28. package/dist/lib/default-conditions.d.mts +15 -0
  29. package/dist/lib/default-conditions.mjs +5 -0
  30. package/dist/lib/default-extensions.d.mts +14 -0
  31. package/dist/{constants.mjs → lib/default-extensions.mjs} +3 -6
  32. package/dist/lib/default-main-fields.d.mts +14 -0
  33. package/dist/lib/default-main-fields.mjs +5 -0
  34. package/dist/lib/extension-format-map.d.mts +16 -0
  35. package/dist/lib/extension-format-map.mjs +21 -0
  36. package/dist/lib/formats.d.mts +21 -0
  37. package/dist/lib/formats.mjs +14 -0
  38. package/dist/lib/get-source.d.mts +26 -0
  39. package/dist/lib/get-source.mjs +70 -0
  40. package/dist/lib/index.d.mts +37 -17
  41. package/dist/lib/index.mjs +51 -32
  42. package/dist/lib/is-absolute-specifier.d.mts +23 -0
  43. package/dist/lib/is-absolute-specifier.mjs +9 -0
  44. package/dist/lib/is-array-index.d.mts +17 -0
  45. package/dist/lib/is-array-index.mjs +11 -0
  46. package/dist/lib/is-bare-specifier.d.mts +23 -0
  47. package/dist/lib/is-bare-specifier.mjs +11 -0
  48. package/dist/lib/is-directory.d.mts +20 -0
  49. package/dist/lib/is-directory.mjs +13 -0
  50. package/dist/lib/is-file.d.mts +20 -0
  51. package/dist/lib/is-file.mjs +13 -0
  52. package/dist/lib/is-imports-subpath.d.mts +19 -0
  53. package/dist/lib/is-imports-subpath.mjs +8 -0
  54. package/dist/lib/is-relative-specifier.d.mts +21 -0
  55. package/dist/lib/is-relative-specifier.mjs +16 -0
  56. package/dist/lib/lookup-package-scope.d.mts +24 -0
  57. package/dist/lib/lookup-package-scope.mjs +16 -0
  58. package/dist/lib/pattern-key-compare.d.mts +31 -0
  59. package/dist/lib/pattern-key-compare.mjs +18 -0
  60. package/dist/lib/pattern-match.d.mts +19 -0
  61. package/dist/lib/pattern-match.mjs +36 -0
  62. package/dist/lib/read-package-json.d.mts +35 -0
  63. package/dist/lib/read-package-json.mjs +29 -0
  64. package/dist/lib/resolve-alias.d.mts +11 -12
  65. package/dist/lib/resolve-alias.mjs +46 -37
  66. package/dist/lib/resolve-module.d.mts +23 -17
  67. package/dist/lib/resolve-module.mjs +69 -68
  68. package/dist/lib/resolver.d.mts +533 -0
  69. package/dist/lib/resolver.mjs +567 -0
  70. package/dist/lib/root.d.mts +11 -0
  71. package/dist/lib/root.mjs +6 -0
  72. package/dist/lib/to-relative-specifier.d.mts +10 -7
  73. package/dist/lib/to-relative-specifier.mjs +22 -13
  74. package/dist/lib/to-url.d.mts +24 -0
  75. package/dist/lib/to-url.mjs +10 -0
  76. package/dist/types/awaitable.d.mts +14 -0
  77. package/dist/types/change-ext-fn.d.mts +29 -0
  78. package/dist/types/get-source-handler.d.mts +21 -0
  79. package/dist/types/get-source-handlers.d.mts +14 -0
  80. package/dist/types/index.d.mts +12 -6
  81. package/dist/types/main-field.d.mts +13 -0
  82. package/dist/types/module-format.d.mts +13 -0
  83. package/dist/types/module-id.d.mts +11 -0
  84. package/dist/types/numeric.d.mts +9 -0
  85. package/dist/types/pattern-key-compare-result.d.mts +9 -0
  86. package/dist/types/pattern-match.d.mts +10 -0
  87. package/dist/types/protocol.d.mts +13 -0
  88. package/package.json +234 -139
  89. package/changelog.config.cts +0 -204
  90. package/dist/constants.d.mts +0 -19
  91. package/dist/interfaces/import-dynamic.d.mts +0 -23
  92. package/dist/interfaces/import-dynamic.mjs +0 -0
  93. package/dist/interfaces/import-static.d.mts +0 -19
  94. package/dist/interfaces/import-static.mjs +0 -0
  95. package/dist/interfaces/index.mjs +0 -0
  96. package/dist/interfaces/options-resolve-alias.mjs +0 -0
  97. package/dist/interfaces/options-resolve.d.mts +0 -60
  98. package/dist/interfaces/options-resolve.mjs +0 -0
  99. package/dist/interfaces/statement-export.d.mts +0 -31
  100. package/dist/interfaces/statement-export.mjs +0 -0
  101. package/dist/interfaces/statement-import.d.mts +0 -27
  102. package/dist/interfaces/statement-import.mjs +0 -0
  103. package/dist/interfaces/statement-require.d.mts +0 -27
  104. package/dist/interfaces/statement-require.mjs +0 -0
  105. package/dist/interfaces/statement.d.mts +0 -33
  106. package/dist/interfaces/statement.mjs +0 -0
  107. package/dist/internal/compiler-options-json.d.mts +0 -111
  108. package/dist/internal/compiler-options-json.mjs +0 -0
  109. package/dist/internal/constants.d.mts +0 -70
  110. package/dist/internal/constants.mjs +0 -18
  111. package/dist/internal/get-compiler-options.d.mts +0 -21
  112. package/dist/internal/get-compiler-options.mjs +0 -14
  113. package/dist/internal/index.d.mts +0 -7
  114. package/dist/internal/index.mjs +0 -5
  115. package/dist/lib/detect-syntax.d.mts +0 -21
  116. package/dist/lib/detect-syntax.mjs +0 -11
  117. package/dist/lib/extract-statements.d.mts +0 -21
  118. package/dist/lib/extract-statements.mjs +0 -18
  119. package/dist/lib/find-dynamic-imports.d.mts +0 -15
  120. package/dist/lib/find-dynamic-imports.mjs +0 -20
  121. package/dist/lib/find-exports.d.mts +0 -15
  122. package/dist/lib/find-exports.mjs +0 -53
  123. package/dist/lib/find-requires.d.mts +0 -17
  124. package/dist/lib/find-requires.mjs +0 -19
  125. package/dist/lib/find-static-imports.d.mts +0 -15
  126. package/dist/lib/find-static-imports.mjs +0 -20
  127. package/dist/lib/has-cjs-syntax.d.mts +0 -22
  128. package/dist/lib/has-cjs-syntax.mjs +0 -6
  129. package/dist/lib/has-esm-syntax.d.mts +0 -18
  130. package/dist/lib/has-esm-syntax.mjs +0 -6
  131. package/dist/lib/resolve-aliases.d.mts +0 -17
  132. package/dist/lib/resolve-aliases.mjs +0 -34
  133. package/dist/lib/resolve-modules.d.mts +0 -19
  134. package/dist/lib/resolve-modules.mjs +0 -29
  135. package/dist/lib/to-absolute-specifier.d.mts +0 -22
  136. package/dist/lib/to-absolute-specifier.mjs +0 -20
  137. package/dist/lib/to-bare-specifier.d.mts +0 -28
  138. package/dist/lib/to-bare-specifier.mjs +0 -78
  139. package/dist/lib/to-data-url.d.mts +0 -29
  140. package/dist/lib/to-data-url.mjs +0 -7
  141. package/dist/types/declaration.d.mts +0 -9
  142. package/dist/types/declaration.mjs +0 -0
  143. package/dist/types/ext.d.mts +0 -9
  144. package/dist/types/ext.mjs +0 -0
  145. package/dist/types/index.mjs +0 -0
  146. package/dist/types/mime-type.d.mts +0 -11
  147. package/dist/types/mime-type.mjs +0 -0
  148. package/dist/types/specifier-type.d.mts +0 -11
  149. package/dist/types/specifier-type.mjs +0 -0
  150. package/dist/types/statement-type.d.mts +0 -9
  151. package/dist/types/statement-type.mjs +0 -0
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @file Type Aliases - ChangeExtFn
3
+ * @module mlly/types/ChangeExtFn
4
+ */
5
+ /**
6
+ * Get a new file extension of `url`.
7
+ *
8
+ * Returning an empty string (`''`), `null`, or `undefined` will remove the
9
+ * current file extension.
10
+ *
11
+ * ::: info
12
+ * The new file extension need not begin with a dot character (`'.'`).
13
+ * :::
14
+ *
15
+ * @see {@linkcode URL}
16
+ * @see https://github.com/flex-development/pathe/tree/1.0.3#changeextpath-string-ext-nullablestring-string
17
+ *
18
+ * @template {string | null | undefined} Ext
19
+ * File extension
20
+ *
21
+ * @param {URL} url
22
+ * The resolved module URL
23
+ * @param {string} specifier
24
+ * The module specifier being resolved
25
+ * @return {Ext}
26
+ * New file extension, `null`, or `undefined`
27
+ */
28
+ type ChangeExtFn<Ext extends string | null | undefined = string | null | undefined> = (this: void, url: URL, specifier: string) => Ext;
29
+ export type { ChangeExtFn as default };
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @file Type Aliases - GetSourceHandler
3
+ * @module mlly/types/GetSourceHandler
4
+ */
5
+ import type { Awaitable, GetSourceContext } from '@flex-development/mlly';
6
+ /**
7
+ * Get the source code for `url`.
8
+ *
9
+ * @see {@linkcode Awaitable}
10
+ * @see {@linkcode GetSourceContext}
11
+ * @see {@linkcode URL}
12
+ *
13
+ * @this {GetSourceContext}
14
+ *
15
+ * @param {URL} url
16
+ * Module URL
17
+ * @return {Awaitable<Uint8Array | string | null | undefined>}
18
+ * Source code
19
+ */
20
+ type GetSourceHandler = (this: GetSourceContext, url: URL) => Awaitable<Uint8Array | string | null | undefined>;
21
+ export type { GetSourceHandler as default };
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @file Type Aliases - GetSourceHandlers
3
+ * @module mlly/types/GetSourceHandlers
4
+ */
5
+ import type { GetSourceHandler, Protocol } from '@flex-development/mlly';
6
+ /**
7
+ * Map where key is a URL protocol, and each value is `null`, `undefined`, or a
8
+ * source code handler.
9
+ *
10
+ * @see {@linkcode GetSourceHandler}
11
+ * @see {@linkcode Protocol}
12
+ */
13
+ type GetSourceHandlers = Partial<Record<Protocol, GetSourceHandler | null | undefined>>;
14
+ export type { GetSourceHandlers as default };
@@ -1,9 +1,15 @@
1
1
  /**
2
- * @file Type Definitions
2
+ * @file Entry Point - Type Aliases
3
3
  * @module mlly/types
4
4
  */
5
- export type { default as Declaration } from './declaration.mjs';
6
- export type { default as Ext } from './ext.mjs';
7
- export type { default as MIMEType } from './mime-type.mjs';
8
- export type { default as SpecifierType } from './specifier-type.mjs';
9
- export type { default as StatementType } from './statement-type.mjs';
5
+ export type { default as Awaitable } from '#types/awaitable';
6
+ export type { default as ChangeExtFn } from '#types/change-ext-fn';
7
+ export type { default as GetSourceHandler } from '#types/get-source-handler';
8
+ export type { default as GetSourceHandlers } from '#types/get-source-handlers';
9
+ export type { default as MainField } from '#types/main-field';
10
+ export type { default as ModuleFormat } from '#types/module-format';
11
+ export type { default as ModuleId } from '#types/module-id';
12
+ export type { default as Numeric } from '#types/numeric';
13
+ export type { default as PatternKeyCompareResult } from '#types/pattern-key-compare-result';
14
+ export type { default as PatternMatch } from '#types/pattern-match';
15
+ export type { default as Protocol } from '#types/protocol';
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @file Type Aliases - MainField
3
+ * @module mlly/types/MainField
4
+ */
5
+ import type { MainFieldMap } from '@flex-development/mlly';
6
+ /**
7
+ * Union of values that can occur where a main field is expected.
8
+ *
9
+ * To register new fields, augment {@linkcode MainFieldMap}. They will be added
10
+ * to this union automatically.
11
+ */
12
+ type MainField = MainFieldMap[keyof MainFieldMap];
13
+ export type { MainField as default };
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @file Type Aliases - ModuleFormat
3
+ * @module mlly/types/ModuleFormat
4
+ */
5
+ import type { ModuleFormatMap } from '@flex-development/mlly';
6
+ /**
7
+ * Union of values that can occur where a module format is expected.
8
+ *
9
+ * To register new formats, augment {@linkcode ModuleFormatMap}. They will be
10
+ * added to this union automatically.
11
+ */
12
+ type ModuleFormat = ModuleFormatMap[keyof ModuleFormatMap];
13
+ export type { ModuleFormat as default };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @file Type Aliases - ModuleId
3
+ * @module mlly/types/ModuleId
4
+ */
5
+ /**
6
+ * Union of ECMAScript (ES) module identifiers.
7
+ *
8
+ * @see {@linkcode URL}
9
+ */
10
+ type ModuleId = URL | string;
11
+ export type { ModuleId as default };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @file Type Aliases - Numeric
3
+ * @module mlly/types/Numeric
4
+ */
5
+ /**
6
+ * String containing only numbers (not including the leading `-` if negative).
7
+ */
8
+ type Numeric = `${number}`;
9
+ export type { Numeric as default };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @file Type Aliases - PatternKeyCompareResult
3
+ * @module mlly/types/PatternKeyCompareResult
4
+ */
5
+ /**
6
+ * Union of `PATTERN_KEY_COMPARE` algorithm results.
7
+ */
8
+ type PatternKeyCompareResult = -1 | 0 | 1;
9
+ export type { PatternKeyCompareResult as default };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @file Type Aliases - PatternMatch
3
+ * @module mlly/types/PatternMatch
4
+ */
5
+ /**
6
+ * List, where the first item is the key of a package `exports` or `imports`
7
+ * target object, and the last is a subpath pattern match.
8
+ */
9
+ type PatternMatch = [expansionKey: string, patternMatch: string | null];
10
+ export type { PatternMatch as default };
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @file Type Aliases - Protocol
3
+ * @module mlly/types/Protocol
4
+ */
5
+ import type { ProtocolMap } from '@flex-development/mlly';
6
+ /**
7
+ * Union of values that can occur where a URL protocol is expected.
8
+ *
9
+ * To register new protocols, augment {@linkcode ProtocolMap}. They will be
10
+ * added to this union automatically.
11
+ */
12
+ type Protocol = ProtocolMap[keyof ProtocolMap];
13
+ export type { Protocol as default };
package/package.json CHANGED
@@ -1,9 +1,11 @@
1
1
  {
2
2
  "name": "@flex-development/mlly",
3
3
  "description": "ECMAScript module utilities",
4
- "version": "1.0.0-alpha.2",
4
+ "version": "1.0.0-alpha.20",
5
5
  "keywords": [
6
+ "ecmascript",
6
7
  "esm",
8
+ "esmodules",
7
9
  "module",
8
10
  "typescript"
9
11
  ],
@@ -17,181 +19,274 @@
17
19
  },
18
20
  "publishConfig": {
19
21
  "access": "public",
20
- "directory": "./"
22
+ "diff-dst-prefix": "mlly",
23
+ "diff-src-prefix": "mlly",
24
+ "directory": "./",
25
+ "executableFiles": [],
26
+ "node-options": null,
27
+ "pack-destination": ".",
28
+ "parseable": true,
29
+ "prefer-dedupe": true,
30
+ "provenance": true,
31
+ "tag-version-prefix": ""
21
32
  },
22
33
  "type": "module",
23
34
  "files": [
35
+ "CHANGELOG.md",
36
+ "LICENSE.md",
37
+ "README.md",
24
38
  "dist"
25
39
  ],
26
40
  "exports": {
27
- ".": "./dist/index.mjs",
28
- "./lib/*": "./dist/lib/*.mjs",
41
+ ".": {
42
+ "mlly": "./src/index.mts",
43
+ "default": "./dist/index.mjs"
44
+ },
29
45
  "./package.json": "./package.json"
30
46
  },
31
- "module": "./dist/index.mjs",
32
- "types": "./dist/index.d.mts",
33
- "typesVersions": {
34
- "*": {
35
- "./lib/*": [
36
- "./dist/lib/*.d.mts"
37
- ]
47
+ "imports": {
48
+ "#build/*": "./build/*.mts",
49
+ "#fixtures/tsconfig*.json": {
50
+ "types": "./__fixtures__/tsconfig.json.d.mts",
51
+ "default": "./__fixtures__/tsconfig*.json"
52
+ },
53
+ "#fixtures/*": "./__fixtures__/*.mts",
54
+ "#interfaces/*": {
55
+ "mlly": "./src/interfaces/*.mts",
56
+ "default": "./dist/interfaces/*.d.mts"
57
+ },
58
+ "#internal/fs": {
59
+ "types": {
60
+ "mlly": "./src/internal/fs.d.mts",
61
+ "default": "./dist/internal/fs.d.mts"
62
+ },
63
+ "browser": {
64
+ "mlly": "./src/internal/fs.browser.mts",
65
+ "default": "./dist/internal/fs.browser.mjs"
66
+ },
67
+ "node": "fs",
68
+ "default": "fs"
69
+ },
70
+ "#internal/process": {
71
+ "types": {
72
+ "mlly": "./src/internal/process.d.mts",
73
+ "default": "./dist/internal/process.d.mts"
74
+ },
75
+ "browser": {
76
+ "mlly": "./src/internal/process.browser.mts",
77
+ "default": "./dist/internal/process.browser.mjs"
78
+ },
79
+ "node": "process",
80
+ "default": "process"
81
+ },
82
+ "#internal/*": {
83
+ "mlly": "./src/internal/*.mts",
84
+ "default": "./dist/internal/*.mjs"
85
+ },
86
+ "#lib/*": {
87
+ "mlly": "./src/lib/*.mts",
88
+ "default": "./dist/lib/*.mjs"
89
+ },
90
+ "#tests/*": "./__tests__/*.mts",
91
+ "#types/*": {
92
+ "mlly": "./src/types/*.mts",
93
+ "default": "./dist/types/*.d.mts"
38
94
  }
39
95
  },
96
+ "module": "./dist/index.mjs",
97
+ "types": "./dist/index.d.mts",
40
98
  "scripts": {
41
- "build": "mkbuild",
42
- "check:ci": "yarn dedupe --check && yarn check:format && yarn check:lint && yarn check:spelling && yarn check:types && yarn check:types:build && yarn test:cov && NODE_ENV=production yarn pack -o %s-%v.tgz && yarn clean:pack",
43
- "check:format": "prettier --check .",
44
- "check:lint": "eslint --exit-on-fatal-error --ext cjs,cts,gql,json,jsonc,md,mjs,ts,vue,yml --max-warnings 0 .",
99
+ "build": "yarn clean:build; node --conditions development --conditions mlly/build --conditions mlly --experimental-strip-types --experimental-transform-types ./build/build.mts",
100
+ "check:ci": "yarn dedupe --check && yarn check:format && yarn check:lint && yarn check:spelling && yarn typecheck && yarn test:cov && yarn pack && yarn check:types:build && attw package.tgz && yarn clean:pack",
101
+ "check:format": "dprint check --incremental=false",
102
+ "check:lint": "eslint --exit-on-fatal-error --max-warnings 0 .",
45
103
  "check:spelling": "cspell lint --color --no-progress --relative $@ \"**\"",
46
- "check:types": "vue-tsc -p tsconfig.json",
47
- "check:types:build": "vue-tsc -p tsconfig.build.json",
104
+ "check:types": "tsc -p tsconfig.typecheck.json",
105
+ "check:types:attw": "yarn pack && attw package.tgz; yarn clean:pack",
106
+ "check:types:build": "tsc -p tsconfig.build.json",
48
107
  "check:upgrades": "yarn upgrade-interactive",
49
- "clean:build": "trash ./{dist,*.tgz}",
108
+ "clean:build": "trash \"./{dist,*.tgz}\"",
50
109
  "clean:modules": "trash ./.yarn/{cache,*.gz} ./node_modules",
51
- "clean:pack": "trash ./*.tgz",
52
- "clean:test": "trash ./coverage",
53
- "conventional-changelog": "node --loader=./loader.mjs ./node_modules/.bin/conventional-changelog -n ./changelog.config.cts",
54
- "docs:build": "vc pull --environment=preview && vc build",
55
- "docs:build:prod": "vc pull --environment=production && vc build --prod",
56
- "docs:deploy": "yarn docs:build && vc deploy --prebuilt",
57
- "docs:deploy:prod": "yarn docs:build:prod && vc deploy --prebuilt --prod",
58
- "docs:dev": "vc env pull ./docs/.vitepress/.env && vitepress dev docs",
59
- "docs:serve": "vitepress serve docs --port 8080",
110
+ "clean:pack": "trash \"./*.tgz\"",
111
+ "clean:test": "trash ./coverage && trash __tests__/reports",
112
+ "codecov": "yarn test:cov && yarn test:cov:upload",
113
+ "codecov:validate": "cat .codecov.yml | curl --data-binary @- https://codecov.io/validate",
114
+ "commitlint": "commitlint -V",
60
115
  "fix:cg": "yarn fix:format && yarn fix:lint",
61
116
  "fix:dedupe": "yarn dedupe --strategy=highest",
62
- "fix:format": "prettier --cache --write .",
117
+ "fix:format": "dprint fmt",
63
118
  "fix:lint": "yarn check:lint --cache --fix",
64
- "_postinstall": "chmod +x .husky/* && husky install",
119
+ "_postinstall": "[ -f ./node_modules/.bin/husky ] && chmod +x .husky/* && husky || exit 0",
65
120
  "postpack": "toggle-scripts +postinstall",
66
121
  "postpublish": "toggle-scripts +prepack",
67
122
  "prepack": "toggle-scripts -postinstall && yarn build",
68
123
  "prepublishOnly": "toggle-scripts -prepack",
69
- "recommended-bump": "conventional-recommended-bump --preset=conventionalcommits --tag-prefix=$(jq .tagPrefix package.json -r) --verbose",
70
124
  "release": "bash ./scripts/release.sh",
71
- "test": "vitest run",
125
+ "remark": "remark .",
126
+ "test": "yarn clean:build; cross-env NODE_OPTIONS=\"--conditions mlly --experimental-strip-types --experimental-transform-types\" vitest run",
72
127
  "test:cov": "yarn test --coverage",
73
- "test:watch": "vitest"
128
+ "test:cov:reports": "yarn test:cov --merge-reports --mode=reports",
129
+ "test:cov:ui": "yarn test:ui --coverage",
130
+ "test:cov:upload": "./codecov -t $CODECOV_TOKEN -f ./coverage/lcov.info",
131
+ "test:reports": "yarn test --merge-reports --mode=reports",
132
+ "test:ui": "cross-env VITEST_UI=1 NODE_OPTIONS=\"--conditions mlly --experimental-strip-types --experimental-transform-types\" vitest --ui",
133
+ "typecheck": "yarn test --typecheck --mode=typecheck",
134
+ "typecheck:ui": "yarn test:ui --typecheck --mode=typecheck"
74
135
  },
75
136
  "dependencies": {
76
- "@flex-development/is-builtin": "1.0.1",
77
- "@flex-development/tutils": "5.0.1",
78
- "import-meta-resolve": "2.1.0",
79
- "node-package-exports": "1.0.2",
80
- "read-pkg-up": "9.1.0",
81
- "tsconfig-paths": "4.1.0",
82
- "upath": "2.0.1"
137
+ "@flex-development/errnode": "3.1.1",
138
+ "@flex-development/is-builtin": "3.2.0",
139
+ "@flex-development/pathe": "4.0.1",
140
+ "@flex-development/pkg-types": "4.1.0",
141
+ "devlop": "1.1.0"
83
142
  },
84
143
  "devDependencies": {
85
- "@commitlint/cli": "17.2.0",
86
- "@commitlint/config-conventional": "17.2.0",
87
- "@commitlint/types": "17.0.0",
88
- "@faker-js/faker": "7.6.0",
89
- "@flex-development/docast": "github:flex-development/docast",
90
- "@flex-development/mkbuild": "1.0.0-alpha.8",
91
- "@graphql-eslint/eslint-plugin": "3.13.0",
92
- "@sindresorhus/slugify": "2.1.1",
93
- "@types/chai": "4.3.3",
94
- "@types/chai-string": "1.4.2",
95
- "@types/conventional-changelog": "3.1.1",
96
- "@types/conventional-changelog-config-spec": "2.1.2",
97
- "@types/conventional-changelog-writer": "4.0.1",
98
- "@types/conventional-commits-parser": "3.0.2",
99
- "@types/dateformat": "5.0.0",
100
- "@types/dotenv-defaults": "2.0.1",
101
- "@types/eslint": "8.4.9",
102
- "@types/git-raw-commits": "2.0.1",
103
- "@types/is-ci": "3.0.0",
104
- "@types/markdown-it": "12.2.3",
105
- "@types/node": "16.18.3",
106
- "@types/node-notifier": "8.0.2",
107
- "@types/prettier": "2.7.1",
108
- "@types/unist": "2.0.6",
109
- "@typescript-eslint/eslint-plugin": "5.42.0",
110
- "@typescript-eslint/parser": "5.42.0",
144
+ "@arethetypeswrong/cli": "0.17.2",
145
+ "@commitlint/cli": "19.6.1",
146
+ "@commitlint/types": "19.5.0",
147
+ "@eslint/js": "9.17.0",
148
+ "@faker-js/faker": "9.3.0",
149
+ "@flex-development/commitlint-config": "1.0.1",
150
+ "@flex-development/export-regex": "2.0.0",
151
+ "@flex-development/ext-regex": "2.0.0",
152
+ "@flex-development/grease": "3.0.0-alpha.9",
153
+ "@flex-development/import-regex": "3.0.0",
154
+ "@flex-development/mkbuild": "1.0.0-alpha.23",
155
+ "@flex-development/tsconfig-utils": "2.0.2",
156
+ "@flex-development/tutils": "6.0.0-alpha.25",
157
+ "@stylistic/eslint-plugin": "2.12.1",
158
+ "@tsconfig/strictest": "2.0.5",
159
+ "@types/chai": "5.0.0",
160
+ "@types/chai-string": "1.4.5",
161
+ "@types/eslint": "9.6.1",
162
+ "@types/eslint__js": "8.42.3",
163
+ "@types/is-ci": "3.0.4",
164
+ "@types/node": "22.8.6",
165
+ "@types/node-notifier": "8.0.5",
166
+ "@types/rollup": "0.54.0",
167
+ "@typescript-eslint/eslint-plugin": "8.18.3-alpha.5",
168
+ "@typescript-eslint/parser": "8.18.3-alpha.5",
111
169
  "@vates/toggle-scripts": "1.0.0",
112
- "@vitest/coverage-c8": "0.24.5",
113
- "@vitest/ui": "0.24.5",
114
- "@vuedx/typescript-plugin-vue": "0.7.6-next-1666251997.0",
115
- "chai": "4.3.6",
170
+ "@vitest/coverage-v8": "3.0.0-beta.3",
171
+ "@vitest/ui": "3.0.0-beta.3",
172
+ "chai": "5.1.2",
116
173
  "chai-each": "0.0.1",
117
- "chai-quantifiers": "1.0.17",
118
174
  "chai-string": "1.5.0",
119
- "cheerio": "1.0.0-rc.12",
120
- "conventional-changelog-cli": "2.2.2",
121
- "conventional-recommended-bump": "6.1.0",
122
- "cspell": "6.14.0",
123
- "dotenv": "16.0.3",
124
- "esbuild": "0.15.13",
125
- "escape-string-regexp": "5.0.0",
126
- "eslint": "8.26.0",
127
- "eslint-config-prettier": "8.5.0",
128
- "eslint-plugin-chai-expect": "3.0.0",
175
+ "consola": "3.3.3",
176
+ "cross-env": "7.0.3",
177
+ "cspell": "8.17.1",
178
+ "dprint": "0.48.0",
179
+ "editorconfig": "2.0.0",
180
+ "esbuild": "0.24.2",
181
+ "eslint": "9.17.0",
182
+ "eslint-import-resolver-typescript": "3.7.0",
183
+ "eslint-mdx": "3.1.5",
184
+ "eslint-plugin-chai-expect": "3.1.0",
185
+ "eslint-plugin-import": "2.31.0",
129
186
  "eslint-plugin-jest-formatting": "3.1.0",
130
- "eslint-plugin-jsdoc": "39.6.2",
131
- "eslint-plugin-jsonc": "2.5.0",
132
- "eslint-plugin-markdown": "3.0.0",
133
- "eslint-plugin-markdownlint": "0.4.0",
134
- "eslint-plugin-node": "11.1.0",
135
- "eslint-plugin-prettier": "4.2.1",
136
- "eslint-plugin-promise": "6.1.1",
137
- "eslint-plugin-unicorn": "44.0.2",
138
- "eslint-plugin-vue": "9.7.0",
139
- "eslint-plugin-yml": "1.2.0",
140
- "globby": "13.1.2",
141
- "graphql": "16.6.0",
142
- "graphql-config": "4.3.6",
187
+ "eslint-plugin-jsdoc": "50.6.1",
188
+ "eslint-plugin-jsonc": "2.18.2",
189
+ "eslint-plugin-mdx": "3.1.5",
190
+ "eslint-plugin-n": "17.15.1",
191
+ "eslint-plugin-promise": "7.2.1",
192
+ "eslint-plugin-unicorn": "56.0.1",
193
+ "eslint-plugin-yml": "1.16.0",
194
+ "globals": "15.14.0",
143
195
  "growl": "1.10.5",
144
- "husky": "8.0.1",
145
- "is-ci": "3.0.1",
146
- "jsonc-eslint-parser": "2.1.0",
147
- "lint-staged": "13.0.3",
196
+ "husky": "9.1.7",
197
+ "import-meta-resolve": "4.1.0",
198
+ "is-ci": "4.1.0",
199
+ "jsonc-eslint-parser": "2.4.0",
148
200
  "node-notifier": "10.0.1",
149
- "prettier": "2.7.1",
150
- "prettier-plugin-sh": "0.12.8",
151
- "pretty-format": "29.2.1",
152
- "pupa": "3.1.0",
153
- "serve": "14.0.1",
154
- "sitemap": "7.1.1",
155
- "trash-cli": "5.0.0",
201
+ "prettier": "3.4.2",
202
+ "pretty-bytes": "6.1.1",
203
+ "remark": "15.0.1",
204
+ "remark-cli": "12.0.1",
205
+ "remark-directive": "3.0.0",
206
+ "remark-frontmatter": "5.0.0",
207
+ "remark-gfm": "4.0.0",
208
+ "remark-lint": "10.0.0",
209
+ "remark-lint-blockquote-indentation": "4.0.0",
210
+ "remark-lint-checkbox-character-style": "5.0.0",
211
+ "remark-lint-checkbox-content-indent": "5.0.0",
212
+ "remark-lint-code-block-style": "4.0.0",
213
+ "remark-lint-definition-case": "4.0.0",
214
+ "remark-lint-definition-spacing": "4.0.0",
215
+ "remark-lint-emphasis-marker": "4.0.0",
216
+ "remark-lint-fenced-code-flag": "4.0.0",
217
+ "remark-lint-fenced-code-marker": "4.0.0",
218
+ "remark-lint-file-extension": "3.0.0",
219
+ "remark-lint-final-definition": "4.0.1",
220
+ "remark-lint-final-newline": "3.0.0",
221
+ "remark-lint-first-heading-level": "4.0.0",
222
+ "remark-lint-hard-break-spaces": "4.0.0",
223
+ "remark-lint-heading-increment": "4.0.0",
224
+ "remark-lint-heading-style": "4.0.0",
225
+ "remark-lint-linebreak-style": "4.0.0",
226
+ "remark-lint-link-title-style": "4.0.0",
227
+ "remark-lint-list-item-bullet-indent": "5.0.0",
228
+ "remark-lint-list-item-content-indent": "4.0.0",
229
+ "remark-lint-list-item-indent": "4.0.0",
230
+ "remark-lint-list-item-spacing": "5.0.0",
231
+ "remark-lint-maximum-heading-length": "4.0.0",
232
+ "remark-lint-maximum-line-length": "4.0.1",
233
+ "remark-lint-no-blockquote-without-marker": "6.0.0",
234
+ "remark-lint-no-consecutive-blank-lines": "5.0.0",
235
+ "remark-lint-no-duplicate-defined-urls": "3.0.0",
236
+ "remark-lint-no-duplicate-definitions": "4.0.0",
237
+ "remark-lint-no-duplicate-headings-in-section": "4.0.0",
238
+ "remark-lint-no-emphasis-as-heading": "4.0.0",
239
+ "remark-lint-no-empty-url": "4.0.0",
240
+ "remark-lint-no-file-name-articles": "3.0.0",
241
+ "remark-lint-no-file-name-consecutive-dashes": "3.0.0",
242
+ "remark-lint-no-file-name-irregular-characters": "3.0.0",
243
+ "remark-lint-no-file-name-mixed-case": "3.0.0",
244
+ "remark-lint-no-file-name-outer-dashes": "3.0.0",
245
+ "remark-lint-no-heading-content-indent": "5.0.0",
246
+ "remark-lint-no-heading-indent": "5.0.0",
247
+ "remark-lint-no-heading-like-paragraph": "4.0.0",
248
+ "remark-lint-no-heading-punctuation": "4.0.0",
249
+ "remark-lint-no-literal-urls": "4.0.0",
250
+ "remark-lint-no-missing-blank-lines": "4.0.0",
251
+ "remark-lint-no-multiple-toplevel-headings": "4.0.0",
252
+ "remark-lint-no-paragraph-content-indent": "5.0.0",
253
+ "remark-lint-no-shell-dollars": "4.0.0",
254
+ "remark-lint-no-shortcut-reference-image": "4.0.0",
255
+ "remark-lint-no-shortcut-reference-link": "4.0.0",
256
+ "remark-lint-no-table-indentation": "5.0.0",
257
+ "remark-lint-no-tabs": "4.0.0",
258
+ "remark-lint-no-undefined-references": "5.0.0",
259
+ "remark-lint-no-unneeded-full-reference-image": "4.0.0",
260
+ "remark-lint-no-unneeded-full-reference-link": "4.0.0",
261
+ "remark-lint-no-unused-definitions": "4.0.0",
262
+ "remark-lint-ordered-list-marker-style": "4.0.0",
263
+ "remark-lint-ordered-list-marker-value": "4.0.0",
264
+ "remark-lint-rule-style": "4.0.0",
265
+ "remark-lint-strikethrough-marker": "3.0.0",
266
+ "remark-lint-strong-marker": "4.0.0",
267
+ "remark-lint-table-cell-padding": "5.0.0",
268
+ "remark-lint-table-pipe-alignment": "4.0.0",
269
+ "remark-lint-table-pipes": "5.0.0",
270
+ "remark-lint-unordered-list-marker-style": "4.0.0",
271
+ "remark-validate-links": "13.0.2",
272
+ "sh-syntax": "0.4.2",
273
+ "tinyrainbow": "1.2.0",
274
+ "trash-cli": "6.0.0",
156
275
  "ts-dedent": "2.2.0",
157
- "ts-node": "10.9.1",
158
- "typescript": "4.8.4",
159
- "unified": "10.1.2",
160
- "unist-util-remove": "3.1.0",
161
- "unist-util-source": "4.0.1",
162
- "unist-util-visit": "4.1.1",
163
- "vercel": "28.4.14",
164
- "version-bump-prompt": "6.1.0",
165
- "vite": "3.2.2",
166
- "vite-tsconfig-paths": "3.5.2",
167
- "vitepress": "1.0.0-alpha.27",
168
- "vitest": "0.24.5",
169
- "vitest-github-actions-reporter": "0.9.0",
170
- "vue": "3.2.41",
171
- "vue-eslint-parser": "9.1.0",
172
- "vue-tsc": "1.0.9",
173
- "yaml-eslint-parser": "1.1.0"
174
- },
175
- "peerDependencies": {
176
- "typescript": "*"
177
- },
178
- "peerDependenciesMeta": {
179
- "typescript": {
180
- "optional": true
181
- }
276
+ "typescript": "5.7.2",
277
+ "typescript-eslint": "8.18.3-alpha.5",
278
+ "unified": "11.0.5",
279
+ "vfile": "6.0.3",
280
+ "vite": "5.4.11",
281
+ "vitest": "3.0.0-beta.3",
282
+ "yaml-eslint-parser": "1.2.3"
182
283
  },
183
284
  "resolutions": {
184
- "@ardatan/sync-fetch": "larsgw/sync-fetch#head=worker_threads",
185
- "esbuild": "0.15.12",
186
- "vite": "3.2.2",
187
- "vitepress@npm:1.0.0-alpha.27": "patch:vitepress@npm%3A1.0.0-alpha.27#patches/vitepress+1.0.0-alpha.27.dev.patch"
285
+ "vite": "5.4.11"
188
286
  },
189
287
  "engines": {
190
- "node": ">=14.16",
191
- "yarn": "4.0.0-rc.14"
288
+ "node": ">=18.20.4"
192
289
  },
193
- "packageManager": "yarn@4.0.0-rc.14",
194
- "readme": "README.md",
195
- "sideEffects": false,
196
- "tagPrefix": ""
290
+ "packageManager": "yarn@4.5.1",
291
+ "sideEffects": false
197
292
  }