@sota1235/remark-link-bookmark 0.0.1 → 0.0.2
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/.envrc +1 -0
- package/README.md +74 -9
- package/dist/convert.test.js +13 -14
- package/dist/index.d.ts +5 -1
- package/dist/index.js +2 -3
- package/dist/ogp.d.ts +13 -0
- package/dist/ogp.js +44 -0
- package/dist/plugin.d.ts +17 -4
- package/dist/plugin.js +40 -7
- package/dist/sample.test.js +3 -5
- package/dist/url.d.ts +1 -0
- package/dist/url.js +4 -0
- package/dist/view.d.ts +3 -0
- package/dist/view.js +58 -0
- package/package.json +6 -2
- package/.idea/codeStyles/Project.xml +0 -57
- package/.idea/codeStyles/codeStyleConfig.xml +0 -5
- package/.idea/inspectionProfiles/Project_Default.xml +0 -6
- package/.idea/misc.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/remark-link-bookmark.iml +0 -9
- package/.idea/vcs.xml +0 -6
- package/aqua-checksums.json +0 -69
- package/aqua.yaml +0 -12
- package/eslint.config.mjs +0 -10
package/.envrc
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export NODE_AUTH_TOKEN=
|
package/README.md
CHANGED
|
@@ -1,21 +1,86 @@
|
|
|
1
|
-
|
|
1
|
+
@sota1235/remark-link-bookmark
|
|
2
2
|
====
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
Remark plugin to convert link to bookmark component.
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
### Usage
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
```shell
|
|
9
|
+
npm i -E @sota1235/remark-link-bookmark
|
|
10
|
+
```
|
|
9
11
|
|
|
10
|
-
|
|
12
|
+
Then use like this.
|
|
11
13
|
|
|
12
|
-
|
|
14
|
+
```javascript
|
|
15
|
+
import { remark } from 'remark';
|
|
16
|
+
import { remarkLinkBookmark } from './dist/index.js';
|
|
17
|
+
|
|
18
|
+
const exampleMarkdown = `
|
|
19
|
+
# remark-link-bookmark
|
|
20
|
+
|
|
21
|
+
https://example.com/
|
|
22
|
+
`;
|
|
23
|
+
|
|
24
|
+
const result = await remark()
|
|
25
|
+
.use(remarkLinkBookmark, {})
|
|
26
|
+
.process(exampleMarkdown);
|
|
27
|
+
|
|
28
|
+
console.log(result.toString());
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
You will get the following output.
|
|
32
|
+
|
|
33
|
+
```markdown
|
|
34
|
+
# remark-link-bookmark
|
|
13
35
|
|
|
14
|
-
|
|
36
|
+
<div class="rlb-container">
|
|
37
|
+
<div class="rlb-content">
|
|
38
|
+
<div class="rlb-info">
|
|
39
|
+
<h2 class="rlb-title">
|
|
40
|
+
<a rel="noopener noreferrer" href="https://example.com/" class="rlb-title-link">
|
|
41
|
+
Example Domain
|
|
42
|
+
</a>
|
|
43
|
+
</h2>
|
|
44
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
<div class="rlb-footer">
|
|
47
|
+
<a rel="noopener noreferrer" href="https://example.com/" class="rlb-footer-link">
|
|
48
|
+
<img alt="example.com" src="https://www.google.com/s2/favicons?domain=https://example.com/" class="rlb-favicon">
|
|
49
|
+
example.com
|
|
50
|
+
</a>
|
|
51
|
+
</div>
|
|
52
|
+
</div>
|
|
53
|
+
```
|
|
15
54
|
|
|
16
|
-
|
|
55
|
+
#### Options
|
|
17
56
|
|
|
18
|
-
|
|
57
|
+
```typescript
|
|
58
|
+
export type Options = {
|
|
59
|
+
// class prefix for all each element
|
|
60
|
+
classPrefix?: string;
|
|
61
|
+
// class names for each element
|
|
62
|
+
// for example, if you want to add extra class names for some compoentns, you can use this option.
|
|
63
|
+
mergeClassNames?: {
|
|
64
|
+
container?: string;
|
|
65
|
+
content?: string;
|
|
66
|
+
info?: string;
|
|
67
|
+
title?: string;
|
|
68
|
+
titleLink?: string;
|
|
69
|
+
description?: string;
|
|
70
|
+
image?: string;
|
|
71
|
+
footer?: string;
|
|
72
|
+
footerLink?: string;
|
|
73
|
+
favicon?: string;
|
|
74
|
+
};
|
|
75
|
+
// cache options
|
|
76
|
+
cache?: {
|
|
77
|
+
// cache directory path
|
|
78
|
+
cacheFilePath?: string;
|
|
79
|
+
// cache file name
|
|
80
|
+
cacheFileName?: string;
|
|
81
|
+
};
|
|
82
|
+
};
|
|
83
|
+
```
|
|
19
84
|
|
|
20
85
|
### Licence
|
|
21
86
|
|
package/dist/convert.test.js
CHANGED
|
@@ -1,17 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const vitest_1 = require("vitest");
|
|
7
|
-
const remark_1 = require("remark");
|
|
8
|
-
const plugin_js_1 = __importDefault(require("./plugin.js"));
|
|
9
|
-
(0, vitest_1.test)('Input markdown should be expected', async () => {
|
|
1
|
+
import { expect, test } from 'vitest';
|
|
2
|
+
import { remark } from 'remark';
|
|
3
|
+
import { remarkLinkBookmark } from './plugin.js';
|
|
4
|
+
test('Input markdown should be expected', async () => {
|
|
10
5
|
const document = `
|
|
11
|
-
# Sample
|
|
6
|
+
# Sample
|
|
12
7
|
|
|
13
|
-
https://example.com
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
8
|
+
https://example.com
|
|
9
|
+
|
|
10
|
+
[example](https://example.com/) is inline link
|
|
11
|
+
|
|
12
|
+
[remark-link-card](https://www.npmjs.com/package/remark-link-card) is inline link
|
|
13
|
+
`.trim();
|
|
14
|
+
const file = await remark().use(remarkLinkBookmark, {}).process(document);
|
|
15
|
+
expect(file.toString()).toMatchFileSnapshot('snapshots/output.md');
|
|
17
16
|
});
|
package/dist/index.d.ts
CHANGED
|
@@ -1 +1,5 @@
|
|
|
1
|
-
import '
|
|
1
|
+
import type { Plugin } from 'unified';
|
|
2
|
+
import type { Root } from 'mdast';
|
|
3
|
+
import type { Options } from './plugin.js';
|
|
4
|
+
export type RemarkLinkBookmarkOptions = Options;
|
|
5
|
+
export declare const remarkLinkBookmark: Plugin<[options: Options], Root>;
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
require("./script.js");
|
|
1
|
+
import { remarkLinkBookmark as plugin } from './plugin.js';
|
|
2
|
+
export const remarkLinkBookmark = plugin;
|
package/dist/ogp.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type OgpInfo = {
|
|
2
|
+
title: string;
|
|
3
|
+
description?: string;
|
|
4
|
+
faviconSrc: string;
|
|
5
|
+
ogImageSrc?: string;
|
|
6
|
+
ogImageAlt?: string;
|
|
7
|
+
url: string;
|
|
8
|
+
};
|
|
9
|
+
export type CacheOption = {
|
|
10
|
+
cacheFilePath?: string;
|
|
11
|
+
cacheFileName?: string;
|
|
12
|
+
};
|
|
13
|
+
export declare function fetchOgpInfo(url: string, { cacheFilePath, cacheFileName }: CacheOption): Promise<OgpInfo | undefined>;
|
package/dist/ogp.js
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import ogs from 'open-graph-scraper';
|
|
2
|
+
import * as fs from 'node:fs';
|
|
3
|
+
function isError(result) {
|
|
4
|
+
return result.error;
|
|
5
|
+
}
|
|
6
|
+
export async function fetchOgpInfo(url, { cacheFilePath, cacheFileName }) {
|
|
7
|
+
const cacheEnabled = cacheFilePath !== undefined && cacheFileName !== undefined;
|
|
8
|
+
if (cacheEnabled) {
|
|
9
|
+
const cacheData = await fs.promises.readFile(`${cacheFilePath}/${cacheFileName}`, 'utf-8');
|
|
10
|
+
const cache = JSON.parse(cacheData);
|
|
11
|
+
if (cache[url] !== undefined) {
|
|
12
|
+
console.log(`Cache hit: ${url}`);
|
|
13
|
+
return cache[url];
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
const data = await ogs({ url });
|
|
17
|
+
if (isError(data)) {
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
const ogImage = {
|
|
21
|
+
src: undefined,
|
|
22
|
+
alt: undefined,
|
|
23
|
+
};
|
|
24
|
+
if (data.result.ogImage !== undefined) {
|
|
25
|
+
ogImage.src = data.result.ogImage[0].url;
|
|
26
|
+
ogImage.alt = data.result.ogImage[0].alt;
|
|
27
|
+
}
|
|
28
|
+
const result = {
|
|
29
|
+
title: data.result.ogTitle || url,
|
|
30
|
+
description: data.result.ogDescription,
|
|
31
|
+
faviconSrc: `https://www.google.com/s2/favicons?domain=${url}`,
|
|
32
|
+
ogImageSrc: ogImage.src,
|
|
33
|
+
ogImageAlt: ogImage.alt,
|
|
34
|
+
url,
|
|
35
|
+
};
|
|
36
|
+
if (cacheEnabled) {
|
|
37
|
+
const cacheData = await fs.promises.readFile(`${cacheFilePath}/${cacheFileName}`, 'utf-8');
|
|
38
|
+
const cache = JSON.parse(cacheData);
|
|
39
|
+
cache[url] = result;
|
|
40
|
+
await fs.promises.writeFile(`${cacheFilePath}/${cacheFileName}`, JSON.stringify(cache, null, 2));
|
|
41
|
+
console.log(`Cache updated: ${url}`);
|
|
42
|
+
}
|
|
43
|
+
return result;
|
|
44
|
+
}
|
package/dist/plugin.d.ts
CHANGED
|
@@ -1,7 +1,20 @@
|
|
|
1
1
|
import type { Root } from 'mdast';
|
|
2
2
|
import type { Plugin } from 'unified';
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
import { CacheOption } from './ogp.js';
|
|
4
|
+
export type Options = {
|
|
5
|
+
classPrefix?: string;
|
|
6
|
+
mergeClassNames?: {
|
|
7
|
+
container?: string;
|
|
8
|
+
content?: string;
|
|
9
|
+
info?: string;
|
|
10
|
+
title?: string;
|
|
11
|
+
titleLink?: string;
|
|
12
|
+
description?: string;
|
|
13
|
+
image?: string;
|
|
14
|
+
footer?: string;
|
|
15
|
+
footerLink?: string;
|
|
16
|
+
favicon?: string;
|
|
17
|
+
};
|
|
18
|
+
cache?: CacheOption;
|
|
5
19
|
};
|
|
6
|
-
declare const remarkLinkBookmark: Plugin<[options: Options], Root>;
|
|
7
|
-
export default remarkLinkBookmark;
|
|
20
|
+
export declare const remarkLinkBookmark: Plugin<[options: Options], Root>;
|
package/dist/plugin.js
CHANGED
|
@@ -1,9 +1,42 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { visit } from 'unist-util-visit';
|
|
2
|
+
import { isUrl } from './url.js';
|
|
3
|
+
import { fetchOgpInfo } from './ogp.js';
|
|
4
|
+
import { buildBookmarkHtml } from './view.js';
|
|
5
|
+
export const remarkLinkBookmark = (options) => {
|
|
6
|
+
return async (tree) => {
|
|
7
|
+
const transformers = [];
|
|
8
|
+
visit(tree, 'paragraph', (node, index) => {
|
|
9
|
+
if (index === undefined) {
|
|
10
|
+
console.log('index is undefined');
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
if (node.children.length !== 1) {
|
|
14
|
+
console.log('node children length is not 1');
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const child = node.children[0];
|
|
18
|
+
if (child.type !== 'text') {
|
|
19
|
+
console.log('child type is not text');
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
const text = child.value;
|
|
23
|
+
if (!isUrl(text)) {
|
|
24
|
+
console.log('text is not url');
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
transformers.push(async () => {
|
|
28
|
+
const ogpInfo = await fetchOgpInfo(text, options.cache ?? {});
|
|
29
|
+
if (ogpInfo === undefined) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
const linkCardNode = {
|
|
33
|
+
type: 'html',
|
|
34
|
+
value: buildBookmarkHtml(ogpInfo, options),
|
|
35
|
+
};
|
|
36
|
+
tree.children.splice(index, 1, linkCardNode);
|
|
37
|
+
});
|
|
38
|
+
return;
|
|
39
|
+
}, undefined);
|
|
40
|
+
await Promise.all(transformers.map((transformer) => transformer()));
|
|
7
41
|
};
|
|
8
42
|
};
|
|
9
|
-
exports.default = remarkLinkBookmark;
|
package/dist/sample.test.js
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
(0, vitest_1.test)('1 + 1 = 2', () => {
|
|
5
|
-
(0, vitest_1.expect)(1 + 1).toBe(2);
|
|
1
|
+
import { expect, test } from 'vitest';
|
|
2
|
+
test('1 + 1 = 2', () => {
|
|
3
|
+
expect(1 + 1).toBe(2);
|
|
6
4
|
});
|
package/dist/url.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isUrl(url: string): boolean;
|
package/dist/url.js
ADDED
package/dist/view.d.ts
ADDED
package/dist/view.js
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import createDOMPurify from 'dompurify';
|
|
2
|
+
import clsx from 'clsx';
|
|
3
|
+
import { JSDOM } from 'jsdom';
|
|
4
|
+
function buildDescriptionHtml(description, className) {
|
|
5
|
+
return description !== undefined
|
|
6
|
+
? `<p class="${className}">${description}</p>`
|
|
7
|
+
: '';
|
|
8
|
+
}
|
|
9
|
+
function buildOgpImageHtml(ogImageSrc, ogImageAlt, className) {
|
|
10
|
+
return ogImageSrc !== undefined
|
|
11
|
+
? `<img class="${className}" src="${ogImageSrc}" alt="${ogImageAlt}" />`
|
|
12
|
+
: '';
|
|
13
|
+
}
|
|
14
|
+
export const buildBookmarkHtml = ({ title, description, faviconSrc, ogImageSrc, ogImageAlt, url }, { classPrefix = 'rlb', mergeClassNames }) => {
|
|
15
|
+
const host = new URL(url).host;
|
|
16
|
+
const dompurify = createDOMPurify(new JSDOM('').window);
|
|
17
|
+
const containerClassName = clsx(`${classPrefix}-container`, mergeClassNames?.container);
|
|
18
|
+
const contentClassName = clsx(`${classPrefix}-content`, mergeClassNames?.content);
|
|
19
|
+
const infoClassName = clsx(`${classPrefix}-info`, mergeClassNames?.info);
|
|
20
|
+
const titleClassName = clsx(`${classPrefix}-title`, mergeClassNames?.title);
|
|
21
|
+
const titleLinkClassName = clsx(`${classPrefix}-title-link`, mergeClassNames?.titleLink);
|
|
22
|
+
const descriptionClassName = clsx(`${classPrefix}-description`, mergeClassNames?.description);
|
|
23
|
+
const imageClassName = clsx(`${classPrefix}-image`, mergeClassNames?.image);
|
|
24
|
+
const footerClassName = clsx(`${classPrefix}-footer`, mergeClassNames?.footer);
|
|
25
|
+
const footerLinkClassName = clsx(`${classPrefix}-footer-link`, mergeClassNames?.footerLink);
|
|
26
|
+
const faviconImageClassName = clsx(`${classPrefix}-favicon`, mergeClassNames?.favicon);
|
|
27
|
+
return dompurify
|
|
28
|
+
.sanitize(`
|
|
29
|
+
<div class="${containerClassName}">
|
|
30
|
+
<div class="${contentClassName}">
|
|
31
|
+
<div class="${infoClassName}">
|
|
32
|
+
<h2 class="${titleClassName}">
|
|
33
|
+
<a
|
|
34
|
+
class="${titleLinkClassName}"
|
|
35
|
+
href="${url}"
|
|
36
|
+
target="_blank"
|
|
37
|
+
rel="noopener noreferrer"
|
|
38
|
+
>
|
|
39
|
+
${title}
|
|
40
|
+
</a>
|
|
41
|
+
</h2>${buildDescriptionHtml(description, descriptionClassName)}
|
|
42
|
+
</div>${buildOgpImageHtml(ogImageSrc, ogImageAlt, imageClassName)}
|
|
43
|
+
</div>
|
|
44
|
+
<div class="${footerClassName}">
|
|
45
|
+
<a
|
|
46
|
+
class="${footerLinkClassName}"
|
|
47
|
+
href="${url}"
|
|
48
|
+
target="_blank"
|
|
49
|
+
rel="noopener noreferrer"
|
|
50
|
+
>
|
|
51
|
+
<img class="${faviconImageClassName}" src="${faviconSrc}" alt="${host}" />
|
|
52
|
+
${host}
|
|
53
|
+
</a>
|
|
54
|
+
</div>
|
|
55
|
+
</div>
|
|
56
|
+
`)
|
|
57
|
+
.trim();
|
|
58
|
+
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sota1235/remark-link-bookmark",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.2",
|
|
4
4
|
"description": "Remark plugin to convert link to bookmark component",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -32,6 +32,10 @@
|
|
|
32
32
|
],
|
|
33
33
|
"author": "@sota1235",
|
|
34
34
|
"license": "MIT",
|
|
35
|
+
"repository": "https://github.com/sota1235/remark-link-bookmark",
|
|
36
|
+
"bugs": {
|
|
37
|
+
"url": "https://github.com/sota1235/remark-link-bookmark/issues"
|
|
38
|
+
},
|
|
35
39
|
"lint-staged": {
|
|
36
40
|
"*.ts": [
|
|
37
41
|
"npm run fix"
|
|
@@ -40,7 +44,7 @@
|
|
|
40
44
|
"scripts": {
|
|
41
45
|
"build": "tsc -p ./tsconfig.publish.json",
|
|
42
46
|
"build:publish": "tsc -p ./tsconfig.publish.json",
|
|
43
|
-
"watch": "tsc --watch",
|
|
47
|
+
"watch": "tsc -p ./tsconfig.publish.json --watch",
|
|
44
48
|
"fix": "npm run prettier && npm run eslint:fix",
|
|
45
49
|
"lint": "npm run eslint",
|
|
46
50
|
"eslint": "eslint 'src/**/*.ts'",
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
<component name="ProjectCodeStyleConfiguration">
|
|
2
|
-
<code_scheme name="Project" version="173">
|
|
3
|
-
<HTMLCodeStyleSettings>
|
|
4
|
-
<option name="HTML_SPACE_INSIDE_EMPTY_TAG" value="true" />
|
|
5
|
-
</HTMLCodeStyleSettings>
|
|
6
|
-
<JSCodeStyleSettings version="0">
|
|
7
|
-
<option name="FORCE_SEMICOLON_STYLE" value="true" />
|
|
8
|
-
<option name="SPACE_BEFORE_FUNCTION_LEFT_PARENTH" value="false" />
|
|
9
|
-
<option name="FORCE_QUOTE_STYlE" value="true" />
|
|
10
|
-
<option name="ENFORCE_TRAILING_COMMA" value="Remove" />
|
|
11
|
-
<option name="SPACES_WITHIN_OBJECT_LITERAL_BRACES" value="true" />
|
|
12
|
-
<option name="SPACES_WITHIN_IMPORTS" value="true" />
|
|
13
|
-
</JSCodeStyleSettings>
|
|
14
|
-
<TypeScriptCodeStyleSettings version="0">
|
|
15
|
-
<option name="FORCE_SEMICOLON_STYLE" value="true" />
|
|
16
|
-
<option name="SPACE_BEFORE_FUNCTION_LEFT_PARENTH" value="false" />
|
|
17
|
-
<option name="FORCE_QUOTE_STYlE" value="true" />
|
|
18
|
-
<option name="ENFORCE_TRAILING_COMMA" value="Remove" />
|
|
19
|
-
<option name="SPACES_WITHIN_OBJECT_LITERAL_BRACES" value="true" />
|
|
20
|
-
<option name="SPACES_WITHIN_IMPORTS" value="true" />
|
|
21
|
-
</TypeScriptCodeStyleSettings>
|
|
22
|
-
<VueCodeStyleSettings>
|
|
23
|
-
<option name="INTERPOLATION_NEW_LINE_AFTER_START_DELIMITER" value="false" />
|
|
24
|
-
<option name="INTERPOLATION_NEW_LINE_BEFORE_END_DELIMITER" value="false" />
|
|
25
|
-
</VueCodeStyleSettings>
|
|
26
|
-
<codeStyleSettings language="HTML">
|
|
27
|
-
<option name="SOFT_MARGINS" value="80" />
|
|
28
|
-
<indentOptions>
|
|
29
|
-
<option name="INDENT_SIZE" value="2" />
|
|
30
|
-
<option name="CONTINUATION_INDENT_SIZE" value="2" />
|
|
31
|
-
<option name="TAB_SIZE" value="2" />
|
|
32
|
-
</indentOptions>
|
|
33
|
-
</codeStyleSettings>
|
|
34
|
-
<codeStyleSettings language="JavaScript">
|
|
35
|
-
<option name="SOFT_MARGINS" value="80" />
|
|
36
|
-
<indentOptions>
|
|
37
|
-
<option name="INDENT_SIZE" value="2" />
|
|
38
|
-
<option name="CONTINUATION_INDENT_SIZE" value="2" />
|
|
39
|
-
<option name="TAB_SIZE" value="2" />
|
|
40
|
-
</indentOptions>
|
|
41
|
-
</codeStyleSettings>
|
|
42
|
-
<codeStyleSettings language="TypeScript">
|
|
43
|
-
<option name="SOFT_MARGINS" value="80" />
|
|
44
|
-
<indentOptions>
|
|
45
|
-
<option name="INDENT_SIZE" value="2" />
|
|
46
|
-
<option name="CONTINUATION_INDENT_SIZE" value="2" />
|
|
47
|
-
<option name="TAB_SIZE" value="2" />
|
|
48
|
-
</indentOptions>
|
|
49
|
-
</codeStyleSettings>
|
|
50
|
-
<codeStyleSettings language="Vue">
|
|
51
|
-
<option name="SOFT_MARGINS" value="80" />
|
|
52
|
-
<indentOptions>
|
|
53
|
-
<option name="CONTINUATION_INDENT_SIZE" value="2" />
|
|
54
|
-
</indentOptions>
|
|
55
|
-
</codeStyleSettings>
|
|
56
|
-
</code_scheme>
|
|
57
|
-
</component>
|
package/.idea/misc.xml
DELETED
package/.idea/modules.xml
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="ProjectModuleManager">
|
|
4
|
-
<modules>
|
|
5
|
-
<module fileurl="file://$PROJECT_DIR$/.idea/remark-link-bookmark.iml" filepath="$PROJECT_DIR$/.idea/remark-link-bookmark.iml" />
|
|
6
|
-
</modules>
|
|
7
|
-
</component>
|
|
8
|
-
</project>
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<module type="JAVA_MODULE" version="4">
|
|
3
|
-
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
|
4
|
-
<exclude-output />
|
|
5
|
-
<content url="file://$MODULE_DIR$" />
|
|
6
|
-
<orderEntry type="inheritedJdk" />
|
|
7
|
-
<orderEntry type="sourceFolder" forTests="false" />
|
|
8
|
-
</component>
|
|
9
|
-
</module>
|
package/.idea/vcs.xml
DELETED
package/aqua-checksums.json
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"checksums": [
|
|
3
|
-
{
|
|
4
|
-
"id": "github_release/github.com/rhysd/actionlint/v1.7.3/actionlint_1.7.3_darwin_amd64.tar.gz",
|
|
5
|
-
"checksum": "33E960B719C87ECC0C807CF4945FD4078980CD2E626B27DED0E9551C757FA8F6",
|
|
6
|
-
"algorithm": "sha256"
|
|
7
|
-
},
|
|
8
|
-
{
|
|
9
|
-
"id": "github_release/github.com/rhysd/actionlint/v1.7.3/actionlint_1.7.3_darwin_arm64.tar.gz",
|
|
10
|
-
"checksum": "B4E8DAB8DDA48ECEFF6AFEA67D0FE4A14B8D4EA7191CF233C1E1AF8A62F37C24",
|
|
11
|
-
"algorithm": "sha256"
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"id": "github_release/github.com/rhysd/actionlint/v1.7.3/actionlint_1.7.3_linux_amd64.tar.gz",
|
|
15
|
-
"checksum": "37252B4D440B56374B0FC1726E05FD7452D30D6D774F6E9B52E65BB64475F9DB",
|
|
16
|
-
"algorithm": "sha256"
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
"id": "github_release/github.com/rhysd/actionlint/v1.7.3/actionlint_1.7.3_linux_arm64.tar.gz",
|
|
20
|
-
"checksum": "5FD82142C39208BFDC51B929FF9BD84C38BCC10B4362EF2261A5D70D38E68E05",
|
|
21
|
-
"algorithm": "sha256"
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
"id": "github_release/github.com/rhysd/actionlint/v1.7.3/actionlint_1.7.3_windows_amd64.zip",
|
|
25
|
-
"checksum": "E364347719ACCD53A7BB2E5B370E42E7262D6CEE7C496738A08E319BEFDA38E6",
|
|
26
|
-
"algorithm": "sha256"
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
"id": "github_release/github.com/rhysd/actionlint/v1.7.3/actionlint_1.7.3_windows_arm64.zip",
|
|
30
|
-
"checksum": "71B50372A72E1F07CEC38C82783873CEBDDF3EC194BB80119B652A80F9F5447F",
|
|
31
|
-
"algorithm": "sha256"
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
"id": "github_release/github.com/suzuki-shunsuke/ghalint/v1.0.0/ghalint_1.0.0_darwin_amd64.tar.gz",
|
|
35
|
-
"checksum": "707BB2D6D4564A950F7AD3A5B3340B0B5BC666FE82B32BD51A5FE0FEF7268804",
|
|
36
|
-
"algorithm": "sha256"
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
"id": "github_release/github.com/suzuki-shunsuke/ghalint/v1.0.0/ghalint_1.0.0_darwin_arm64.tar.gz",
|
|
40
|
-
"checksum": "3E3FDA71FFAE83CF713295DF2BEF09FC268811DEAB11DEA58D8CAA287642C9DC",
|
|
41
|
-
"algorithm": "sha256"
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
"id": "github_release/github.com/suzuki-shunsuke/ghalint/v1.0.0/ghalint_1.0.0_linux_amd64.tar.gz",
|
|
45
|
-
"checksum": "E9006FF212A3B27A99AF43DB687DED78173BAA2F9816B2E2A9BED03A2ED2F954",
|
|
46
|
-
"algorithm": "sha256"
|
|
47
|
-
},
|
|
48
|
-
{
|
|
49
|
-
"id": "github_release/github.com/suzuki-shunsuke/ghalint/v1.0.0/ghalint_1.0.0_linux_arm64.tar.gz",
|
|
50
|
-
"checksum": "73D110480FB94DB4F5F46980659FCAFB8146ACC0B49D0D3AA6D79EE161C97917",
|
|
51
|
-
"algorithm": "sha256"
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
"id": "github_release/github.com/suzuki-shunsuke/ghalint/v1.0.0/ghalint_1.0.0_windows_amd64.zip",
|
|
55
|
-
"checksum": "F91596B58827BBBBAA6EFD8B5220D2C49547D60E30E7CF797E02A9107A39FF11",
|
|
56
|
-
"algorithm": "sha256"
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
"id": "github_release/github.com/suzuki-shunsuke/ghalint/v1.0.0/ghalint_1.0.0_windows_arm64.zip",
|
|
60
|
-
"checksum": "77FB1B80BFEFECB2C43098C9BD76BB335435A56E362961E3BD6ED5E18FA471E6",
|
|
61
|
-
"algorithm": "sha256"
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
"id": "registries/github_content/github.com/aquaproj/aqua-registry/v4.246.0/registry.yaml",
|
|
65
|
-
"checksum": "153438D21A059F716E695701D3A0E41AF537024C25AB8B6852EE6B996E313C93",
|
|
66
|
-
"algorithm": "sha256"
|
|
67
|
-
}
|
|
68
|
-
]
|
|
69
|
-
}
|
package/aqua.yaml
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
# aqua - Declarative CLI Version Manager
|
|
3
|
-
# https://aquaproj.github.io/
|
|
4
|
-
checksum:
|
|
5
|
-
enabled: true
|
|
6
|
-
require_checksum: true
|
|
7
|
-
registries:
|
|
8
|
-
- type: standard
|
|
9
|
-
ref: v4.246.0 # renovate: depName=aquaproj/aqua-registry
|
|
10
|
-
packages:
|
|
11
|
-
- name: rhysd/actionlint@v1.7.3
|
|
12
|
-
- name: suzuki-shunsuke/ghalint@v1.0.0
|