spec-up-t 1.1.55 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/compiled/body.js +59 -8
- package/assets/compiled/head.css +13 -12
- package/assets/css/adjust-font-size.css +11 -0
- package/assets/css/collapse-meta-info.css +27 -8
- package/assets/css/create-term-filter.css +11 -0
- package/assets/css/index.css +15 -0
- package/assets/css/prism.css +176 -153
- package/assets/css/prism.dark.css +157 -0
- package/assets/css/prism.default.css +180 -0
- package/assets/css/terms-and-definitions.1.css +223 -0
- package/assets/css/terms-and-definitions.css +214 -100
- package/assets/js/addAnchorsToTerms.js +1 -1
- package/assets/js/collapse-definitions.js +2 -1
- package/assets/js/collapse-meta-info.js +25 -11
- package/assets/js/create-term-filter.js +61 -0
- package/assets/js/horizontal-scroll-hint.js +159 -0
- package/assets/js/index.1.js +137 -0
- package/assets/js/index.js +2 -1
- package/assets/js/insert-trefs.js +122 -116
- package/assets/js/insert-xrefs.1.js +372 -0
- package/assets/js/{show-commit-hashes.js → insert-xrefs.js} +67 -7
- package/assets/js/prism.dark.js +24 -0
- package/assets/js/prism.default.js +23 -0
- package/assets/js/prism.js +4 -5
- package/assets/js/search.js +1 -1
- package/assets/js/toggle-dense-info.js +40 -0
- package/branches.md +4 -24
- package/index.js +397 -189
- package/index.new.js +662 -0
- package/package.json +1 -2
- package/src/asset-map.json +9 -5
- package/src/collect-external-references.js +16 -9
- package/src/collectExternalReferences/fetchTermsFromIndex.js +328 -0
- package/src/collectExternalReferences/processXTrefsData.js +73 -18
- package/src/create-pdf.js +385 -89
- package/src/health-check/term-references-checker.js +3 -2
- package/src/health-check/tref-term-checker.js +18 -17
- package/src/markdown-it-extensions.js +134 -103
- package/src/prepare-tref.js +61 -24
- package/src/utils/fetch.js +100 -0
- package/templates/template.html +12 -7
- package/assets/js/css-helper.js +0 -30
- package/src/collectExternalReferences/fetchTermsFromGitHubRepository.js +0 -232
- package/src/collectExternalReferences/fetchTermsFromGitHubRepository.test.js +0 -385
- package/src/collectExternalReferences/octokitClient.js +0 -96
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
// Simple wrapper for Octokit functionality
|
|
2
|
-
let octokitClient = null;
|
|
3
|
-
let initPromise = null;
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Initialize the Octokit client (only happens once)
|
|
7
|
-
*/
|
|
8
|
-
async function initializeClient(token) {
|
|
9
|
-
if (initPromise) return initPromise;
|
|
10
|
-
|
|
11
|
-
initPromise = (async () => {
|
|
12
|
-
try {
|
|
13
|
-
const { Octokit } = await import('octokit');
|
|
14
|
-
const { throttling } = await import('@octokit/plugin-throttling');
|
|
15
|
-
|
|
16
|
-
const ThrottledOctokit = Octokit.plugin(throttling);
|
|
17
|
-
octokitClient = new ThrottledOctokit({
|
|
18
|
-
auth: token,
|
|
19
|
-
throttle: {
|
|
20
|
-
onRateLimit: (retryAfter, options) => {
|
|
21
|
-
console.warn(`Request quota exhausted for ${options.method} ${options.url}`);
|
|
22
|
-
return options.request.retryCount <= 1; // retry once
|
|
23
|
-
},
|
|
24
|
-
onSecondaryRateLimit: (retryAfter, options) => {
|
|
25
|
-
console.warn(`Secondary rate limit hit for ${options.method} ${options.url}`);
|
|
26
|
-
return options.request.retryCount <= 1; // retry once
|
|
27
|
-
},
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
console.log("Octokit client initialized successfully");
|
|
32
|
-
return octokitClient;
|
|
33
|
-
} catch (error) {
|
|
34
|
-
console.error("Failed to initialize Octokit:", error);
|
|
35
|
-
initPromise = null; // Reset so we can try again later
|
|
36
|
-
throw error;
|
|
37
|
-
}
|
|
38
|
-
})();
|
|
39
|
-
|
|
40
|
-
return initPromise;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* Get a GitHub search client
|
|
45
|
-
*/
|
|
46
|
-
async function getSearchClient(token) {
|
|
47
|
-
const client = await initializeClient(token);
|
|
48
|
-
return {
|
|
49
|
-
search: async (query, owner, repo, path) => {
|
|
50
|
-
// First check if the repo is a fork
|
|
51
|
-
let isForked = false;
|
|
52
|
-
try {
|
|
53
|
-
const repoInfo = await client.rest.repos.get({
|
|
54
|
-
owner,
|
|
55
|
-
repo
|
|
56
|
-
});
|
|
57
|
-
isForked = repoInfo.data.fork;
|
|
58
|
-
} catch (error) {
|
|
59
|
-
console.warn(`Could not determine fork status: ${error.message}`);
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
// Use appropriate search parameter based on fork status
|
|
63
|
-
const forkParam = isForked ? ' fork:true' : '';
|
|
64
|
-
const searchQuery = `${query} repo:${owner}/${repo} path:${path}${forkParam}`;
|
|
65
|
-
|
|
66
|
-
console.log(`Executing GitHub search: ${searchQuery}`);
|
|
67
|
-
return client.rest.search.code({
|
|
68
|
-
q: searchQuery,
|
|
69
|
-
headers: {
|
|
70
|
-
Accept: "application/vnd.github.v3.text-match+json",
|
|
71
|
-
},
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
};
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* Get a GitHub content client
|
|
79
|
-
*/
|
|
80
|
-
async function getContentClient(token) {
|
|
81
|
-
const client = await initializeClient(token);
|
|
82
|
-
return {
|
|
83
|
-
getContent: async (owner, repo, path) => {
|
|
84
|
-
return client.rest.repos.getContent({
|
|
85
|
-
owner,
|
|
86
|
-
repo,
|
|
87
|
-
path
|
|
88
|
-
});
|
|
89
|
-
}
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
module.exports = {
|
|
94
|
-
getSearchClient,
|
|
95
|
-
getContentClient
|
|
96
|
-
};
|