eslint-plugin-use-agnostic 1.2.3 → 1.3.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.
- package/README.md +4 -0
- package/comments.config.js +8 -14
- package/jscomments/_commons/constants/bases.js +9 -94
- package/jscomments/agnostic20/comments.js +79 -0
- package/jscomments/agnostic20/modules-comments.js +199 -0
- package/jscomments/directive21/comments.js +105 -0
- package/jscomments/directive21/modules-comments.js +353 -0
- package/jscomments/jsdoc/alias-variables.js +6 -0
- package/jscomments/jsdoc/comments.js +331 -0
- package/jscomments/jsdoc/composed-variables.js +99 -0
- package/jscomments/tests/comments.js +27 -0
- package/library/_commons/utilities/helpers.js +21 -21
- package/library/agnostic20/_commons/constants/bases.js +68 -59
- package/library/agnostic20/_commons/utilities/flows.js +17 -17
- package/library/agnostic20/_commons/utilities/helpers.js +43 -43
- package/library/agnostic20/config.js +3 -3
- package/library/directive21/_commons/constants/bases.js +91 -87
- package/library/directive21/_commons/utilities/flows.js +18 -18
- package/library/directive21/_commons/utilities/helpers.js +86 -86
- package/library/directive21/config.js +3 -3
- package/package.json +1 -1
- package/jscomments/agnostic20/constants/bases.js +0 -29
- package/jscomments/agnostic20/constants/modules-comments.js +0 -143
- package/jscomments/directive21/constants/bases.js +0 -38
- package/jscomments/directive21/constants/modules-comments.js +0 -228
|
@@ -11,7 +11,11 @@ import {
|
|
|
11
11
|
|
|
12
12
|
import { makeIntroForSpecificViolationMessage } from "../../../_commons/utilities/helpers.js";
|
|
13
13
|
|
|
14
|
-
import {
|
|
14
|
+
import { resolvedConfigData } from "../../../../jscomments/_commons/constants/bases.js";
|
|
15
|
+
|
|
16
|
+
// const resolvedConfigData = await import("../../../../comments.config.json", {
|
|
17
|
+
// assert: { type: "json" },
|
|
18
|
+
// });
|
|
15
19
|
|
|
16
20
|
/**
|
|
17
21
|
* @typedef {import('../../../../types/agnostic20/_commons/typedefs.js').Directive} Directive
|
|
@@ -89,12 +93,12 @@ const SUGGEST_USE_AGNOSTIC =
|
|
|
89
93
|
"If the module you're trying to import does not possess any server-side code however, please mark it with this plugin's own and eponymous 'use agnostic' directive to signal its compatibility across all environments.";
|
|
90
94
|
|
|
91
95
|
/**
|
|
92
|
-
*
|
|
96
|
+
* $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#MAKEBLOCKEDIMPORT
|
|
93
97
|
* @template {EffectiveDirective} T
|
|
94
98
|
* @template {EffectiveDirective} U
|
|
95
|
-
* @param {T} currentFileEffectiveDirective
|
|
96
|
-
* @param {U} importedFileEffectiveDirective
|
|
97
|
-
* @returns
|
|
99
|
+
* @param {T} currentFileEffectiveDirective $COMMENT#JSDOC#PARAMS#AGNOSTIC20#CURRENTFILEEFFECTIVEDIRECTIVE
|
|
100
|
+
* @param {U} importedFileEffectiveDirective $COMMENT#JSDOC#PARAMS#AGNOSTIC20#IMPORTEDFILEEFFECTIVEDIRECTIVE
|
|
101
|
+
* @returns $COMMENT#JSDOC#RETURNS#AGNOSTIC20#MAKEBLOCKEDIMPORT
|
|
98
102
|
*/
|
|
99
103
|
export const makeBlockedImport = (
|
|
100
104
|
currentFileEffectiveDirective,
|
|
@@ -106,7 +110,7 @@ export const makeBlockedImport = (
|
|
|
106
110
|
currentFileEffectiveDirective,
|
|
107
111
|
importedFileEffectiveDirective
|
|
108
112
|
)} ${
|
|
109
|
-
|
|
113
|
+
resolvedConfigData[agnostic20ConfigName][currentFileEffectiveDirective][
|
|
110
114
|
importedFileEffectiveDirective
|
|
111
115
|
]
|
|
112
116
|
}`,
|
|
@@ -114,12 +118,12 @@ export const makeBlockedImport = (
|
|
|
114
118
|
};
|
|
115
119
|
|
|
116
120
|
/**
|
|
117
|
-
*
|
|
121
|
+
* $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#MAKEBLOCKEDIMPORTSUGGESTINGUSEAGNOSTIC
|
|
118
122
|
* @template {EffectiveDirective} T
|
|
119
123
|
* @template {EffectiveDirective} U
|
|
120
|
-
* @param {T} currentFileEffectiveDirective
|
|
121
|
-
* @param {U} importedFileEffectiveDirective
|
|
122
|
-
* @returns
|
|
124
|
+
* @param {T} currentFileEffectiveDirective $COMMENT#JSDOC#PARAMS#AGNOSTIC20#CURRENTFILEEFFECTIVEDIRECTIVE
|
|
125
|
+
* @param {U} importedFileEffectiveDirective $COMMENT#JSDOC#PARAMS#AGNOSTIC20#IMPORTEDFILEEFFECTIVEDIRECTIVE
|
|
126
|
+
* @returns $COMMENT#JSDOC#RETURNS#AGNOSTIC20#MAKEBLOCKEDIMPORTSUGGESTINGUSEAGNOSTIC
|
|
123
127
|
*/
|
|
124
128
|
const makeBlockedImportSuggestingUseAgnostic = (
|
|
125
129
|
currentFileEffectiveDirective,
|
|
@@ -138,125 +142,130 @@ const makeBlockedImportSuggestingUseAgnostic = (
|
|
|
138
142
|
});
|
|
139
143
|
};
|
|
140
144
|
|
|
145
|
+
// The final boss is going to be to building this from the config.
|
|
146
|
+
// Probably in the blocked import thing.
|
|
147
|
+
// But so that means I'm going to need using resolveConfig, or maybe I could give resolveConfig an option that allows it to return the actual config data with all values recursively resolved.
|
|
148
|
+
// That's what I would do, then I would just need to use the object of the config data instead of `jscommentsConfig[agnostic20ConfigName]` for makeBlockedImport.
|
|
149
|
+
// const jscommentsConfigData = makeResolvedConfig(configPath)
|
|
141
150
|
export const effectiveDirectives_blockedImports = Object.freeze({
|
|
142
151
|
[USE_SERVER_LOGICS]: Object.freeze([
|
|
143
|
-
// USE_SERVER_LOGICS
|
|
144
|
-
// USE_SERVER_COMPONENTS
|
|
145
|
-
// USE_SERVER_FUNCTIONS
|
|
152
|
+
// USE_SERVER_LOGICS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_SERVER_LOGICS#USE_SERVER_LOGICS
|
|
153
|
+
// USE_SERVER_COMPONENTS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_SERVER_LOGICS#USE_SERVER_COMPONENTS
|
|
154
|
+
// USE_SERVER_FUNCTIONS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_SERVER_LOGICS#USE_SERVER_FUNCTIONS
|
|
146
155
|
makeBlockedImport(
|
|
147
156
|
USE_SERVER_LOGICS,
|
|
148
157
|
USE_CLIENT_LOGICS
|
|
149
|
-
) /*
|
|
158
|
+
) /* $COMMENT#AGNOSTIC20#FORALIASVARIABLES#CLIENTNEVERSERVER */,
|
|
150
159
|
makeBlockedImport(
|
|
151
160
|
USE_SERVER_LOGICS,
|
|
152
161
|
USE_CLIENT_COMPONENTS
|
|
153
|
-
) /*
|
|
154
|
-
// USE_AGNOSTIC_LOGICS
|
|
155
|
-
// USE_AGNOSTIC_COMPONENTS
|
|
162
|
+
) /* $COMMENT#AGNOSTIC20#USE_SERVER_LOGICS#USE_CLIENT_COMPONENTS */,
|
|
163
|
+
// USE_AGNOSTIC_LOGICS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#FORALIASVARIABLES#AGNOSTICCANSERVERCLIENT
|
|
164
|
+
// USE_AGNOSTIC_COMPONENTS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_SERVER_LOGICS#USE_AGNOSTIC_COMPONENTS
|
|
156
165
|
]),
|
|
157
166
|
[USE_SERVER_COMPONENTS]: Object.freeze([
|
|
158
|
-
// USE_SERVER_LOGICS
|
|
159
|
-
// USE_SERVER_COMPONENTS
|
|
160
|
-
// USE_SERVER_FUNCTIONS
|
|
167
|
+
// USE_SERVER_LOGICS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_SERVER_COMPONENTS#USE_SERVER_LOGICS
|
|
168
|
+
// USE_SERVER_COMPONENTS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_SERVER_COMPONENTS#USE_SERVER_COMPONENTS
|
|
169
|
+
// USE_SERVER_FUNCTIONS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_SERVER_COMPONENTS#USE_SERVER_FUNCTIONS
|
|
161
170
|
makeBlockedImport(
|
|
162
171
|
USE_SERVER_COMPONENTS,
|
|
163
172
|
USE_CLIENT_LOGICS
|
|
164
|
-
) /*
|
|
165
|
-
// USE_CLIENT_COMPONENTS
|
|
166
|
-
// USE_AGNOSTIC_LOGICS
|
|
167
|
-
// USE_AGNOSTIC_COMPONENTS
|
|
173
|
+
) /* $COMMENT#AGNOSTIC20#FORALIASVARIABLES#CLIENTNEVERSERVER */,
|
|
174
|
+
// USE_CLIENT_COMPONENTS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_SERVER_COMPONENTS#USE_CLIENT_COMPONENTS
|
|
175
|
+
// USE_AGNOSTIC_LOGICS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#FORALIASVARIABLES#AGNOSTICCANSERVERCLIENT
|
|
176
|
+
// USE_AGNOSTIC_COMPONENTS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_SERVER_COMPONENTS#USE_AGNOSTIC_COMPONENTS
|
|
168
177
|
]),
|
|
169
178
|
[USE_SERVER_FUNCTIONS]: Object.freeze([
|
|
170
|
-
// USE_SERVER_LOGICS
|
|
179
|
+
// USE_SERVER_LOGICS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_SERVER_FUNCTIONS#USE_SERVER_LOGICS
|
|
171
180
|
makeBlockedImport(
|
|
172
181
|
USE_SERVER_FUNCTIONS,
|
|
173
182
|
USE_SERVER_COMPONENTS
|
|
174
|
-
) /*
|
|
175
|
-
// USE_SERVER_FUNCTIONS
|
|
183
|
+
) /* $COMMENT#AGNOSTIC20#USE_SERVER_FUNCTIONS#USE_SERVER_COMPONENTS */,
|
|
184
|
+
// USE_SERVER_FUNCTIONS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_SERVER_FUNCTIONS#USE_SERVER_FUNCTIONS
|
|
176
185
|
makeBlockedImport(
|
|
177
186
|
USE_SERVER_FUNCTIONS,
|
|
178
187
|
USE_CLIENT_LOGICS
|
|
179
|
-
) /*
|
|
188
|
+
) /* $COMMENT#AGNOSTIC20#FORALIASVARIABLES#CLIENTNEVERSERVER */,
|
|
180
189
|
makeBlockedImport(
|
|
181
190
|
USE_SERVER_FUNCTIONS,
|
|
182
191
|
USE_CLIENT_COMPONENTS
|
|
183
|
-
) /*
|
|
184
|
-
// USE_AGNOSTIC_LOGICS
|
|
192
|
+
) /* $COMMENT#AGNOSTIC20#USE_SERVER_FUNCTIONS#USE_CLIENT_COMPONENTS */,
|
|
193
|
+
// USE_AGNOSTIC_LOGICS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#FORALIASVARIABLES#AGNOSTICCANSERVERCLIENT
|
|
185
194
|
makeBlockedImport(
|
|
186
195
|
USE_SERVER_FUNCTIONS,
|
|
187
196
|
USE_AGNOSTIC_COMPONENTS
|
|
188
|
-
) /*
|
|
197
|
+
) /* $COMMENT#AGNOSTIC20#USE_SERVER_FUNCTIONS#USE_AGNOSTIC_COMPONENTS */,
|
|
189
198
|
]),
|
|
190
199
|
[USE_CLIENT_LOGICS]: Object.freeze([
|
|
191
200
|
makeBlockedImportSuggestingUseAgnostic(
|
|
192
201
|
USE_CLIENT_LOGICS,
|
|
193
202
|
USE_SERVER_LOGICS
|
|
194
|
-
) /*
|
|
203
|
+
) /* $COMMENT#AGNOSTIC20#FORALIASVARIABLES#SERVERNEVERCLIENT */,
|
|
195
204
|
makeBlockedImportSuggestingUseAgnostic(
|
|
196
205
|
USE_CLIENT_LOGICS,
|
|
197
206
|
USE_SERVER_COMPONENTS
|
|
198
|
-
) /*
|
|
199
|
-
// USE_SERVER_FUNCTIONS
|
|
200
|
-
// USE_CLIENT_LOGICS
|
|
201
|
-
// USE_CLIENT_COMPONENTS
|
|
202
|
-
// USE_AGNOSTIC_LOGICS
|
|
203
|
-
// USE_AGNOSTIC_COMPONENTS
|
|
207
|
+
) /* $COMMENT#AGNOSTIC20#USE_CLIENT_LOGICS#USE_SERVER_COMPONENTS */,
|
|
208
|
+
// USE_SERVER_FUNCTIONS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_CLIENT_LOGICS#USE_SERVER_FUNCTIONS
|
|
209
|
+
// USE_CLIENT_LOGICS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_CLIENT_LOGICS#USE_CLIENT_LOGICS
|
|
210
|
+
// USE_CLIENT_COMPONENTS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_CLIENT_LOGICS#USE_CLIENT_COMPONENTS
|
|
211
|
+
// USE_AGNOSTIC_LOGICS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#FORALIASVARIABLES#AGNOSTICCANCLIENTSERVER
|
|
212
|
+
// USE_AGNOSTIC_COMPONENTS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_CLIENT_LOGICS#USE_AGNOSTIC_COMPONENTS
|
|
204
213
|
]),
|
|
205
214
|
[USE_CLIENT_COMPONENTS]: Object.freeze([
|
|
206
215
|
makeBlockedImportSuggestingUseAgnostic(
|
|
207
216
|
USE_CLIENT_LOGICS,
|
|
208
217
|
USE_SERVER_LOGICS
|
|
209
|
-
) /*
|
|
218
|
+
) /* $COMMENT#AGNOSTIC20#FORALIASVARIABLES#SERVERNEVERCLIENT */,
|
|
210
219
|
makeBlockedImportSuggestingUseAgnostic(
|
|
211
220
|
USE_CLIENT_LOGICS,
|
|
212
221
|
USE_SERVER_COMPONENTS
|
|
213
|
-
) /*
|
|
214
|
-
// USE_SERVER_FUNCTIONS
|
|
215
|
-
// USE_CLIENT_LOGICS
|
|
216
|
-
// USE_CLIENT_COMPONENTS
|
|
217
|
-
// USE_AGNOSTIC_LOGICS
|
|
218
|
-
// USE_AGNOSTIC_COMPONENTS
|
|
222
|
+
) /* $COMMENT#AGNOSTIC20#USE_CLIENT_LOGICS#USE_SERVER_COMPONENTS */,
|
|
223
|
+
// USE_SERVER_FUNCTIONS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_CLIENT_COMPONENTS#USE_SERVER_FUNCTIONS
|
|
224
|
+
// USE_CLIENT_LOGICS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_CLIENT_COMPONENTS#USE_CLIENT_LOGICS
|
|
225
|
+
// USE_CLIENT_COMPONENTS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_CLIENT_COMPONENTS#USE_CLIENT_COMPONENTS
|
|
226
|
+
// USE_AGNOSTIC_LOGICS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#FORALIASVARIABLES#AGNOSTICCANCLIENTSERVER
|
|
227
|
+
// USE_AGNOSTIC_COMPONENTS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_CLIENT_COMPONENTS#USE_AGNOSTIC_COMPONENTS
|
|
219
228
|
]),
|
|
220
229
|
[USE_AGNOSTIC_LOGICS]: Object.freeze([
|
|
221
230
|
makeBlockedImportSuggestingUseAgnostic(
|
|
222
231
|
USE_AGNOSTIC_LOGICS,
|
|
223
232
|
USE_SERVER_LOGICS
|
|
224
|
-
) /*
|
|
233
|
+
) /* $COMMENT#AGNOSTIC20#FORALIASVARIABLES#SERVERLOGICSCANTBOTH */,
|
|
225
234
|
makeBlockedImportSuggestingUseAgnostic(
|
|
226
235
|
USE_AGNOSTIC_LOGICS,
|
|
227
236
|
USE_SERVER_COMPONENTS
|
|
228
|
-
) /*
|
|
237
|
+
) /* $COMMENT#AGNOSTIC20#USE_AGNOSTIC_LOGICS#USE_SERVER_COMPONENTS */,
|
|
229
238
|
makeBlockedImport(
|
|
230
239
|
USE_AGNOSTIC_LOGICS,
|
|
231
240
|
USE_SERVER_FUNCTIONS
|
|
232
|
-
) /*
|
|
241
|
+
) /* $COMMENT#AGNOSTIC20#USE_AGNOSTIC_LOGICS#USE_SERVER_FUNCTIONS */,
|
|
233
242
|
makeBlockedImport(
|
|
234
243
|
USE_AGNOSTIC_LOGICS,
|
|
235
244
|
USE_CLIENT_LOGICS
|
|
236
|
-
) /*
|
|
245
|
+
) /* $COMMENT#AGNOSTIC20#FORALIASVARIABLES#CLIENTLOGICSCANTBOTH */,
|
|
237
246
|
makeBlockedImport(
|
|
238
247
|
USE_AGNOSTIC_LOGICS,
|
|
239
248
|
USE_CLIENT_COMPONENTS
|
|
240
|
-
) /*
|
|
241
|
-
// USE_AGNOSTIC_LOGICS
|
|
242
|
-
// USE_AGNOSTIC_COMPONENTS
|
|
249
|
+
) /* $COMMENT#AGNOSTIC20#USE_AGNOSTIC_LOGICS#USE_CLIENT_COMPONENTS */,
|
|
250
|
+
// USE_AGNOSTIC_LOGICS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_AGNOSTIC_LOGICS#USE_AGNOSTIC_LOGICS
|
|
251
|
+
// USE_AGNOSTIC_COMPONENTS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_AGNOSTIC_LOGICS#USE_AGNOSTIC_COMPONENTS
|
|
243
252
|
]),
|
|
244
253
|
[USE_AGNOSTIC_COMPONENTS]: Object.freeze([
|
|
245
254
|
makeBlockedImportSuggestingUseAgnostic(
|
|
246
255
|
USE_AGNOSTIC_COMPONENTS,
|
|
247
256
|
USE_SERVER_LOGICS
|
|
248
|
-
) /*
|
|
257
|
+
) /* $COMMENT#AGNOSTIC20#FORALIASVARIABLES#SERVERLOGICSCANTBOTH */,
|
|
249
258
|
makeBlockedImportSuggestingUseAgnostic(
|
|
250
259
|
USE_AGNOSTIC_COMPONENTS,
|
|
251
260
|
USE_SERVER_COMPONENTS
|
|
252
|
-
) /*
|
|
253
|
-
// USE_SERVER_FUNCTIONS
|
|
261
|
+
) /* $COMMENT#AGNOSTIC20#USE_AGNOSTIC_COMPONENTS#USE_SERVER_COMPONENTS */,
|
|
262
|
+
// USE_SERVER_FUNCTIONS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_AGNOSTIC_COMPONENTS#USE_SERVER_FUNCTIONS
|
|
254
263
|
makeBlockedImport(
|
|
255
264
|
USE_AGNOSTIC_COMPONENTS,
|
|
256
265
|
USE_CLIENT_LOGICS
|
|
257
|
-
) /*
|
|
258
|
-
// USE_CLIENT_COMPONENTS
|
|
259
|
-
// USE_AGNOSTIC_LOGICS
|
|
260
|
-
// USE_AGNOSTIC_COMPONENTS
|
|
266
|
+
) /* $COMMENT#AGNOSTIC20#FORALIASVARIABLES#CLIENTLOGICSCANTBOTH */,
|
|
267
|
+
// USE_CLIENT_COMPONENTS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_AGNOSTIC_COMPONENTS#USE_CLIENT_COMPONENTS
|
|
268
|
+
// USE_AGNOSTIC_LOGICS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_AGNOSTIC_COMPONENTS#USE_AGNOSTIC_LOGICS
|
|
269
|
+
// USE_AGNOSTIC_COMPONENTS $COMMENT#AGNOSTIC20#FORCOMPOSEDVARIABLES#ALLOWEDBECAUSE $COMMENT#AGNOSTIC20#USE_AGNOSTIC_COMPONENTS#USE_AGNOSTIC_COMPONENTS
|
|
261
270
|
]),
|
|
262
271
|
});
|
|
@@ -39,9 +39,9 @@ import {
|
|
|
39
39
|
/* currentFileFlow */
|
|
40
40
|
|
|
41
41
|
/**
|
|
42
|
-
*
|
|
43
|
-
* @param {Context} context
|
|
44
|
-
* @returns
|
|
42
|
+
* $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#CURRENTFILEFLOW
|
|
43
|
+
* @param {Context} context $COMMENT#JSDOC#PARAMS#CONTEXTB
|
|
44
|
+
* @returns $COMMENT#JSDOC#RETURNS#AGNOSTIC20#CURRENTFILEFLOW
|
|
45
45
|
*/
|
|
46
46
|
export const currentFileFlow = (context) => {
|
|
47
47
|
const skipTrue = { ...skip, currentFileEffectiveDirective: undefined };
|
|
@@ -94,10 +94,10 @@ export const currentFileFlow = (context) => {
|
|
|
94
94
|
/* importedFileFlow */
|
|
95
95
|
|
|
96
96
|
/**
|
|
97
|
-
*
|
|
98
|
-
* @param {Context} context
|
|
99
|
-
* @param {ImportDeclaration} node
|
|
100
|
-
* @returns
|
|
97
|
+
* $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#IMPORTEDFILEFLOW
|
|
98
|
+
* @param {Context} context $COMMENT#JSDOC#PARAMS#CONTEXTB
|
|
99
|
+
* @param {ImportDeclaration} node $COMMENT#JSDOC#PARAMS#NODE
|
|
100
|
+
* @returns $COMMENT#JSDOC#RETURNS#AGNOSTIC20#IMPORTEDFILEFLOW
|
|
101
101
|
*/
|
|
102
102
|
const importedFileFlow = (context, node) => {
|
|
103
103
|
const skipTrue = { ...skip, importedFileEffectiveDirective: undefined };
|
|
@@ -143,11 +143,11 @@ const importedFileFlow = (context, node) => {
|
|
|
143
143
|
|
|
144
144
|
/* importsFlow */
|
|
145
145
|
|
|
146
|
-
/**
|
|
147
|
-
* @param {Context} context
|
|
148
|
-
* @param {ImportDeclaration} node
|
|
149
|
-
* @param {EffectiveDirective} currentFileEffectiveDirective
|
|
150
|
-
* @returns
|
|
146
|
+
/** $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#IMPORTSFLOW
|
|
147
|
+
* @param {Context} context $COMMENT#JSDOC#PARAMS#CONTEXTB
|
|
148
|
+
* @param {ImportDeclaration} node $COMMENT#JSDOC#PARAMS#NODE
|
|
149
|
+
* @param {EffectiveDirective} currentFileEffectiveDirective $COMMENT#JSDOC#PARAMS#AGNOSTIC20#CURRENTFILEEFFECTIVEDIRECTIVE
|
|
150
|
+
* @returns $COMMENT#JSDOC#RETURNS#AGNOSTIC20#IMPORTSFLOW
|
|
151
151
|
*/
|
|
152
152
|
export const importsFlow = (context, node, currentFileEffectiveDirective) => {
|
|
153
153
|
// does not operate on `import type`
|
|
@@ -183,11 +183,11 @@ export const importsFlow = (context, node, currentFileEffectiveDirective) => {
|
|
|
183
183
|
|
|
184
184
|
/* reExportsFlow */
|
|
185
185
|
|
|
186
|
-
/**
|
|
187
|
-
* @param {Context} context
|
|
188
|
-
* @param {ExportNamedDeclaration | ExportAllDeclaration} node
|
|
189
|
-
* @param {EffectiveDirective} currentFileEffectiveDirective
|
|
190
|
-
* @returns
|
|
186
|
+
/** $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#REEXPORTSFLOW
|
|
187
|
+
* @param {Context} context $COMMENT#JSDOC#PARAMS#CONTEXTB
|
|
188
|
+
* @param {ExportNamedDeclaration | ExportAllDeclaration} node $COMMENT#JSDOC#PARAMS#NODE
|
|
189
|
+
* @param {EffectiveDirective} currentFileEffectiveDirective $COMMENT#JSDOC#PARAMS#AGNOSTIC20#CURRENTFILEEFFECTIVEDIRECTIVE
|
|
190
|
+
* @returns $COMMENT#JSDOC#RETURNS#AGNOSTIC20#IMPORTSFLOW
|
|
191
191
|
*/
|
|
192
192
|
export const reExportsFlow = (context, node, currentFileEffectiveDirective) => {
|
|
193
193
|
// does not operate on `export type`
|
|
@@ -28,13 +28,13 @@ import {
|
|
|
28
28
|
/* getDirectiveFromModule */
|
|
29
29
|
|
|
30
30
|
/**
|
|
31
|
-
*
|
|
32
|
-
* -
|
|
33
|
-
* -
|
|
34
|
-
* -
|
|
35
|
-
* -
|
|
36
|
-
* @param {AST} ast
|
|
37
|
-
* @returns
|
|
31
|
+
* $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#GETDIRECTIVEFROMMODULE
|
|
32
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#NULLDIRECTIVE
|
|
33
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USESERVER
|
|
34
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USECLIENT
|
|
35
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USEAGNOSTIC
|
|
36
|
+
* @param {AST} ast $COMMENT#JSDOC#PARAMS#AGNOSTIC20#AST
|
|
37
|
+
* @returns $COMMENT#JSDOC#RETURNS#AGNOSTIC20#GETDIRECTIVEFROMMODULE
|
|
38
38
|
*/
|
|
39
39
|
export const getDirectiveFromModule = (ast) => {
|
|
40
40
|
// the AST body to check for the top-of-the-file directive
|
|
@@ -63,13 +63,13 @@ export const getDirectiveFromModule = (ast) => {
|
|
|
63
63
|
/* getDirectiveFromCurrentModule */
|
|
64
64
|
|
|
65
65
|
/**
|
|
66
|
-
*
|
|
67
|
-
* -
|
|
68
|
-
* -
|
|
69
|
-
* -
|
|
70
|
-
* -
|
|
71
|
-
* @param {Context} context
|
|
72
|
-
* @returns
|
|
66
|
+
* $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#GETDIRECTIVEFROMCURRENTMODULE
|
|
67
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#NULLDIRECTIVE
|
|
68
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USESERVER
|
|
69
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USECLIENT
|
|
70
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USEAGNOSTIC
|
|
71
|
+
* @param {Context} context $COMMENT#JSDOC#PARAMS#CONTEXTB
|
|
72
|
+
* @returns $COMMENT#JSDOC#RETURNS#AGNOSTIC20#GETDIRECTIVEFROMMODULE
|
|
73
73
|
*/
|
|
74
74
|
export const getDirectiveFromCurrentModule = (context) => {
|
|
75
75
|
// the AST of the current module
|
|
@@ -81,13 +81,13 @@ export const getDirectiveFromCurrentModule = (context) => {
|
|
|
81
81
|
/* getDirectiveFromImportedModule */
|
|
82
82
|
|
|
83
83
|
/**
|
|
84
|
-
*
|
|
85
|
-
* -
|
|
86
|
-
* -
|
|
87
|
-
* -
|
|
88
|
-
* -
|
|
89
|
-
* @param {string} resolvedPath
|
|
90
|
-
* @returns
|
|
84
|
+
* $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#GETDIRECTIVEFROMIMPORTEDMODULE
|
|
85
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#NULLDIRECTIVE
|
|
86
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USESERVER
|
|
87
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USECLIENT
|
|
88
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USEAGNOSTIC
|
|
89
|
+
* @param {string} resolvedPath $COMMENT#JSDOC#PARAMS#RESOLVEDPATH
|
|
90
|
+
* @returns $COMMENT#JSDOC#RETURNS#AGNOSTIC20#GETDIRECTIVEFROMMODULE
|
|
91
91
|
*/
|
|
92
92
|
export const getDirectiveFromImportedModule = (resolvedPath) => {
|
|
93
93
|
// the AST of the imported module
|
|
@@ -99,17 +99,17 @@ export const getDirectiveFromImportedModule = (resolvedPath) => {
|
|
|
99
99
|
/* getEffectiveDirective */
|
|
100
100
|
|
|
101
101
|
/**
|
|
102
|
-
*
|
|
103
|
-
* -
|
|
104
|
-
* -
|
|
105
|
-
* -
|
|
106
|
-
* -
|
|
107
|
-
* -
|
|
108
|
-
* -
|
|
109
|
-
* -
|
|
110
|
-
* @param {Directive | NoDirective} directive
|
|
111
|
-
* @param {Extension} extension
|
|
112
|
-
* @returns
|
|
102
|
+
* $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#GETEFFECTIVEDIRECTIVE
|
|
103
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USESERVERLOGICS
|
|
104
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USESERVERCOMPONENTS
|
|
105
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USESERVERFUNCTIONS
|
|
106
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USECLIENTLOGICS
|
|
107
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USECLIENTCOMPONENTS
|
|
108
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USEAGNOSTICLOGICS
|
|
109
|
+
* - $COMMENT#JSDOC#DETAILS#AGNOSTIC20#USEAGNOSTICCOMPONENTS
|
|
110
|
+
* @param {Directive | NoDirective} directive $COMMENT#JSDOC#PARAMS#AGNOSTIC20#DIRECTIVE
|
|
111
|
+
* @param {Extension} extension $COMMENT#JSDOC#PARAMS#EXTENSION
|
|
112
|
+
* @returns $COMMENT#JSDOC#RETURNS#AGNOSTIC20#GETEFFECTIVEDIRECTIVE
|
|
113
113
|
*/
|
|
114
114
|
export const getEffectiveDirective = (directive, extension) => {
|
|
115
115
|
const moduleKind = extension.endsWith("x")
|
|
@@ -124,10 +124,10 @@ export const getEffectiveDirective = (directive, extension) => {
|
|
|
124
124
|
/* isImportBlocked */
|
|
125
125
|
|
|
126
126
|
/**
|
|
127
|
-
*
|
|
128
|
-
* @param {EffectiveDirective} currentFileEffectiveDirective
|
|
129
|
-
* @param {EffectiveDirective} importedFileEffectiveDirective
|
|
130
|
-
* @returns
|
|
127
|
+
* $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#ISIMPORTBLOCKED
|
|
128
|
+
* @param {EffectiveDirective} currentFileEffectiveDirective $COMMENT#JSDOC#PARAMS#AGNOSTIC20#CURRENTFILEEFFECTIVEDIRECTIVE
|
|
129
|
+
* @param {EffectiveDirective} importedFileEffectiveDirective $COMMENT#JSDOC#PARAMS#AGNOSTIC20#IMPORTEDFILEEFFECTIVEDIRECTIVE
|
|
130
|
+
* @returns $COMMENT#JSDOC#RETURNS#AGNOSTIC20#ISIMPORTBLOCKED
|
|
131
131
|
*/
|
|
132
132
|
export const isImportBlocked = (
|
|
133
133
|
currentFileEffectiveDirective,
|
|
@@ -142,9 +142,9 @@ export const isImportBlocked = (
|
|
|
142
142
|
/* makeMessageFromCurrentFileEffectiveDirective */
|
|
143
143
|
|
|
144
144
|
/**
|
|
145
|
-
*
|
|
146
|
-
* @param {EffectiveDirective} effectiveDirective
|
|
147
|
-
* @returns
|
|
145
|
+
* $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#MAKEMESSAGEFROMCURRENTFILEEFFECTIVEDIRECTIVE
|
|
146
|
+
* @param {EffectiveDirective} effectiveDirective $COMMENT#JSDOC#PARAMS#AGNOSTIC20#EFFECTIVEDIRECTIVE
|
|
147
|
+
* @returns $COMMENT#JSDOC#RETURNS#AGNOSTIC20#MAKEMESSAGEFROMCURRENTFILEEFFECTIVEDIRECTIVE
|
|
148
148
|
*/
|
|
149
149
|
export const makeMessageFromCurrentFileEffectiveDirective = (
|
|
150
150
|
effectiveDirective
|
|
@@ -157,10 +157,10 @@ export const makeMessageFromCurrentFileEffectiveDirective = (
|
|
|
157
157
|
/* findSpecificViolationMessage */
|
|
158
158
|
|
|
159
159
|
/**
|
|
160
|
-
*
|
|
161
|
-
* @param {EffectiveDirective} currentFileEffectiveDirective
|
|
162
|
-
* @param {EffectiveDirective} importedFileEffectiveDirective
|
|
163
|
-
* @returns
|
|
160
|
+
* $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#FINDSPECIFICVIOLATIONMESSAGE
|
|
161
|
+
* @param {EffectiveDirective} currentFileEffectiveDirective $COMMENT#JSDOC#PARAMS#AGNOSTIC20#CURRENTFILEEFFECTIVEDIRECTIVE
|
|
162
|
+
* @param {EffectiveDirective} importedFileEffectiveDirective $COMMENT#JSDOC#PARAMS#AGNOSTIC20#IMPORTEDFILEEFFECTIVEDIRECTIVE
|
|
163
|
+
* @returns $COMMENT#JSDOC#RETURNS#FINDSPECIFICVIOLATIONMESSAGE
|
|
164
164
|
*/
|
|
165
165
|
export const findSpecificViolationMessage = (
|
|
166
166
|
currentFileEffectiveDirective,
|
|
@@ -12,9 +12,9 @@ import {
|
|
|
12
12
|
*/
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
|
-
*
|
|
16
|
-
* @param {Plugin} plugin
|
|
17
|
-
* @returns
|
|
15
|
+
* $COMMENT#JSDOC#DEFINITIONS#AGNOSTIC20#MAKEAGNOSTIC20CONFIG
|
|
16
|
+
* @param {Plugin} plugin $COMMENT#JSDOC#PARAMS#PLUGIN
|
|
17
|
+
* @returns $COMMENT#JSDOC#RETURNS#AGNOSTIC20#MAKEAGNOSTIC20CONFIG
|
|
18
18
|
*/
|
|
19
19
|
export const makeAgnostic20Config = (plugin) => ({
|
|
20
20
|
[agnostic20ConfigName]: defineConfig([
|