mirror of
https://github.com/xfarrow/blink
synced 2025-06-27 09:03:02 +02:00
Change endpoint from persons to people
This commit is contained in:
20
backend/apis/nodejs/node_modules/dedent/LICENSE.md
generated
vendored
Normal file
20
backend/apis/nodejs/node_modules/dedent/LICENSE.md
generated
vendored
Normal file
@ -0,0 +1,20 @@
|
||||
# MIT License
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
'Software'), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
183
backend/apis/nodejs/node_modules/dedent/README.md
generated
vendored
Normal file
183
backend/apis/nodejs/node_modules/dedent/README.md
generated
vendored
Normal file
@ -0,0 +1,183 @@
|
||||
<h1 align="center">dedent</h1>
|
||||
|
||||
<p align="center">A string tag that strips indentation from multi-line strings. ⬅️</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="#contributors" target="_blank">
|
||||
<!-- prettier-ignore-start -->
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
||||
<img alt="All Contributors: 18 👪" src="https://img.shields.io/badge/all_contributors-18_👪-21bb42.svg" />
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
||||
<!-- prettier-ignore-end -->
|
||||
</a>
|
||||
<a href="https://codecov.io/gh/dmnd/dedent" target="_blank">
|
||||
<img alt="Codecov Test Coverage" src="https://codecov.io/gh/dmnd/dedent/branch/main/graph/badge.svg"/>
|
||||
</a>
|
||||
<a href="https://github.com/dmnd/dedent/blob/main/.github/CODE_OF_CONDUCT.md" target="_blank">
|
||||
<img alt="Contributor Covenant" src="https://img.shields.io/badge/code_of_conduct-enforced-21bb42" />
|
||||
</a>
|
||||
<a href="https://github.com/dmnd/dedent/blob/main/LICENSE.md" target="_blank">
|
||||
<img alt="License: MIT" src="https://img.shields.io/github/license/dmnd/dedent?color=21bb42">
|
||||
</a>
|
||||
<img alt="Style: Prettier" src="https://img.shields.io/badge/style-prettier-21bb42.svg" />
|
||||
<img alt="TypeScript: Strict" src="https://img.shields.io/badge/typescript-strict-21bb42.svg" />
|
||||
<img alt="npm package version" src="https://img.shields.io/npm/v/dedent?color=21bb42" />
|
||||
<img alt="Contributor Covenant" src="https://img.shields.io/badge/code_of_conduct-enforced-21bb42" />
|
||||
</p>
|
||||
|
||||
## Usage
|
||||
|
||||
```shell
|
||||
npm i dedent
|
||||
```
|
||||
|
||||
```js
|
||||
import dedent from "dedent";
|
||||
|
||||
function usageExample() {
|
||||
const first = dedent`A string that gets so long you need to break it over
|
||||
multiple lines. Luckily dedent is here to keep it
|
||||
readable without lots of spaces ending up in the string
|
||||
itself.`;
|
||||
|
||||
const second = dedent`
|
||||
Leading and trailing lines will be trimmed, so you can write something like
|
||||
this and have it work as you expect:
|
||||
|
||||
* how convenient it is
|
||||
* that I can use an indented list
|
||||
- and still have it do the right thing
|
||||
|
||||
That's all.
|
||||
`;
|
||||
|
||||
const third = dedent(`
|
||||
Wait! I lied. Dedent can also be used as a function.
|
||||
`);
|
||||
|
||||
return first + "\n\n" + second + "\n\n" + third;
|
||||
}
|
||||
|
||||
console.log(usageExample());
|
||||
```
|
||||
|
||||
```plaintext
|
||||
A string that gets so long you need to break it over
|
||||
multiple lines. Luckily dedent is here to keep it
|
||||
readable without lots of spaces ending up in the string
|
||||
itself.
|
||||
|
||||
Leading and trailing lines will be trimmed, so you can write something like
|
||||
this and have it work as you expect:
|
||||
|
||||
* how convenient it is
|
||||
* that I can use an indented list
|
||||
- and still have it do the right thing
|
||||
|
||||
That's all.
|
||||
|
||||
Wait! I lied. Dedent can also be used as a function.
|
||||
```
|
||||
|
||||
## Options
|
||||
|
||||
You can customize the options `dedent` runs with by calling its `withOptions` method with an object:
|
||||
|
||||
<!-- prettier-ignore -->
|
||||
```js
|
||||
import dedent from 'dedent';
|
||||
|
||||
dedent.withOptions({ /* ... */ })`input`;
|
||||
dedent.withOptions({ /* ... */ })(`input`);
|
||||
```
|
||||
|
||||
`options` returns a new `dedent` function, so if you'd like to reuse the same options, you can create a dedicated `dedent` function:
|
||||
|
||||
<!-- prettier-ignore -->
|
||||
```js
|
||||
import dedent from 'dedent';
|
||||
|
||||
const dedenter = dedent.withOptions({ /* ... */ });
|
||||
|
||||
dedenter`input`;
|
||||
dedenter(`input`);
|
||||
```
|
||||
|
||||
### `escapeSpecialCharacters`
|
||||
|
||||
JavaScript string tags by default add an extra `\` escape in front of some special characters such as `$` dollar signs.
|
||||
`dedent` will escape those special characters when called as a string tag.
|
||||
|
||||
If you'd like to change the behavior, an `escapeSpecialCharacters` option is available.
|
||||
It defaults to:
|
||||
|
||||
- `false`: when `dedent` is called as a function
|
||||
- `true`: when `dedent` is called as a string tag
|
||||
|
||||
```js
|
||||
import dedent from "dedent";
|
||||
|
||||
// "$hello!"
|
||||
dedent`
|
||||
$hello!
|
||||
`;
|
||||
|
||||
// "\$hello!"
|
||||
dedent.withOptions({ escapeSpecialCharacters: false })`
|
||||
$hello!
|
||||
`;
|
||||
|
||||
// "$hello!"
|
||||
dedent.withOptions({ escapeSpecialCharacters: true })`
|
||||
$hello!
|
||||
`;
|
||||
```
|
||||
|
||||
For more context, see [🚀 Feature: Add an option to disable special character escaping](https://github.com/dmnd/dedent/issues/63).
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
|
||||
## Contributors
|
||||
|
||||
<!-- spellchecker: disable -->
|
||||
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
|
||||
<!-- prettier-ignore-start -->
|
||||
<!-- markdownlint-disable -->
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://adrianjost.dev/"><img src="https://avatars.githubusercontent.com/u/22987140?v=4?s=100" width="100px;" alt="Adrian Jost"/><br /><sub><b>Adrian Jost</b></sub></a><br /><a href="https://github.com/dmnd/dedent/commits?author=adrianjost" title="Code">💻</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://m811.com/"><img src="https://avatars.githubusercontent.com/u/156837?v=4?s=100" width="100px;" alt="Andri Möll"/><br /><sub><b>Andri Möll</b></sub></a><br /><a href="https://github.com/dmnd/dedent/issues?q=author%3Amoll" title="Bug reports">🐛</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://bennypowers.dev/"><img src="https://avatars.githubusercontent.com/u/1466420?v=4?s=100" width="100px;" alt="Benny Powers - עם ישראל חי!"/><br /><sub><b>Benny Powers - עם ישראל חי!</b></sub></a><br /><a href="#tool-bennypowers" title="Tools">🔧</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/phenomnomnominal"><img src="https://avatars.githubusercontent.com/u/1086286?v=4?s=100" width="100px;" alt="Craig Spence"/><br /><sub><b>Craig Spence</b></sub></a><br /><a href="https://github.com/dmnd/dedent/commits?author=phenomnomnominal" title="Code">💻</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://synthesis.com/"><img src="https://avatars.githubusercontent.com/u/4427?v=4?s=100" width="100px;" alt="Desmond Brand"/><br /><sub><b>Desmond Brand</b></sub></a><br /><a href="https://github.com/dmnd/dedent/issues?q=author%3Admnd" title="Bug reports">🐛</a> <a href="https://github.com/dmnd/dedent/commits?author=dmnd" title="Code">💻</a> <a href="https://github.com/dmnd/dedent/commits?author=dmnd" title="Documentation">📖</a> <a href="#ideas-dmnd" title="Ideas, Planning, & Feedback">🤔</a> <a href="#infra-dmnd" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="#maintenance-dmnd" title="Maintenance">🚧</a> <a href="#projectManagement-dmnd" title="Project Management">📆</a> <a href="#tool-dmnd" title="Tools">🔧</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/G-Rath"><img src="https://avatars.githubusercontent.com/u/3151613?v=4?s=100" width="100px;" alt="Gareth Jones"/><br /><sub><b>Gareth Jones</b></sub></a><br /><a href="https://github.com/dmnd/dedent/commits?author=G-Rath" title="Code">💻</a> <a href="https://github.com/dmnd/dedent/issues?q=author%3AG-Rath" title="Bug reports">🐛</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/otakustay"><img src="https://avatars.githubusercontent.com/u/639549?v=4?s=100" width="100px;" alt="Gray Zhang"/><br /><sub><b>Gray Zhang</b></sub></a><br /><a href="https://github.com/dmnd/dedent/issues?q=author%3Aotakustay" title="Bug reports">🐛</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://haroen.me/"><img src="https://avatars.githubusercontent.com/u/6270048?v=4?s=100" width="100px;" alt="Haroen Viaene"/><br /><sub><b>Haroen Viaene</b></sub></a><br /><a href="https://github.com/dmnd/dedent/commits?author=Haroenv" title="Code">💻</a> <a href="#maintenance-Haroenv" title="Maintenance">🚧</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://blog.cometkim.kr/"><img src="https://avatars.githubusercontent.com/u/9696352?v=4?s=100" width="100px;" alt="Hyeseong Kim"/><br /><sub><b>Hyeseong Kim</b></sub></a><br /><a href="#tool-cometkim" title="Tools">🔧</a> <a href="#infra-cometkim" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/jlarmstrongiv"><img src="https://avatars.githubusercontent.com/u/20903247?v=4?s=100" width="100px;" alt="John L. Armstrong IV"/><br /><sub><b>John L. Armstrong IV</b></sub></a><br /><a href="https://github.com/dmnd/dedent/issues?q=author%3Ajlarmstrongiv" title="Bug reports">🐛</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="http://www.joshuakgoldberg.com/"><img src="https://avatars.githubusercontent.com/u/3335181?v=4?s=100" width="100px;" alt="Josh Goldberg ✨"/><br /><sub><b>Josh Goldberg ✨</b></sub></a><br /><a href="https://github.com/dmnd/dedent/issues?q=author%3AJoshuaKGoldberg" title="Bug reports">🐛</a> <a href="https://github.com/dmnd/dedent/commits?author=JoshuaKGoldberg" title="Code">💻</a> <a href="https://github.com/dmnd/dedent/commits?author=JoshuaKGoldberg" title="Documentation">📖</a> <a href="#ideas-JoshuaKGoldberg" title="Ideas, Planning, & Feedback">🤔</a> <a href="#infra-JoshuaKGoldberg" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="#maintenance-JoshuaKGoldberg" title="Maintenance">🚧</a> <a href="#projectManagement-JoshuaKGoldberg" title="Project Management">📆</a> <a href="#tool-JoshuaKGoldberg" title="Tools">🔧</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://pratapvardhan.com/"><img src="https://avatars.githubusercontent.com/u/3757165?v=4?s=100" width="100px;" alt="Pratap Vardhan"/><br /><sub><b>Pratap Vardhan</b></sub></a><br /><a href="https://github.com/dmnd/dedent/commits?author=pratapvardhan" title="Code">💻</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/lydell"><img src="https://avatars.githubusercontent.com/u/2142817?v=4?s=100" width="100px;" alt="Simon Lydell"/><br /><sub><b>Simon Lydell</b></sub></a><br /><a href="https://github.com/dmnd/dedent/issues?q=author%3Alydell" title="Bug reports">🐛</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/yinm"><img src="https://avatars.githubusercontent.com/u/13295106?v=4?s=100" width="100px;" alt="Yusuke Iinuma"/><br /><sub><b>Yusuke Iinuma</b></sub></a><br /><a href="https://github.com/dmnd/dedent/commits?author=yinm" title="Code">💻</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/yvele"><img src="https://avatars.githubusercontent.com/u/4225430?v=4?s=100" width="100px;" alt="Yves M."/><br /><sub><b>Yves M.</b></sub></a><br /><a href="#tool-yvele" title="Tools">🔧</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/d07RiV"><img src="https://avatars.githubusercontent.com/u/3448203?v=4?s=100" width="100px;" alt="d07riv"/><br /><sub><b>d07riv</b></sub></a><br /><a href="https://github.com/dmnd/dedent/issues?q=author%3Ad07RiV" title="Bug reports">🐛</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://mizdra.net/"><img src="https://avatars.githubusercontent.com/u/9639995?v=4?s=100" width="100px;" alt="mizdra"/><br /><sub><b>mizdra</b></sub></a><br /><a href="https://github.com/dmnd/dedent/commits?author=mizdra" title="Code">💻</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/sirian"><img src="https://avatars.githubusercontent.com/u/897643?v=4?s=100" width="100px;" alt="sirian"/><br /><sub><b>sirian</b></sub></a><br /><a href="https://github.com/dmnd/dedent/issues?q=author%3Asirian" title="Bug reports">🐛</a></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<!-- markdownlint-restore -->
|
||||
<!-- prettier-ignore-end -->
|
||||
|
||||
<!-- ALL-CONTRIBUTORS-LIST:END -->
|
||||
<!-- spellchecker: enable -->
|
||||
|
||||
> 💙 This package was templated with [create-typescript-app](https://github.com/JoshuaKGoldberg/create-typescript-app).
|
13
backend/apis/nodejs/node_modules/dedent/dist/dedent.d.mts
generated
vendored
Normal file
13
backend/apis/nodejs/node_modules/dedent/dist/dedent.d.mts
generated
vendored
Normal file
@ -0,0 +1,13 @@
|
||||
interface DedentOptions {
|
||||
escapeSpecialCharacters?: boolean;
|
||||
}
|
||||
interface Dedent {
|
||||
(literals: string): string;
|
||||
(strings: TemplateStringsArray, ...values: unknown[]): string;
|
||||
withOptions: CreateDedent;
|
||||
}
|
||||
type CreateDedent = (options: DedentOptions) => Dedent;
|
||||
|
||||
declare const dedent: Dedent;
|
||||
|
||||
export { CreateDedent, Dedent, DedentOptions, dedent as default };
|
13
backend/apis/nodejs/node_modules/dedent/dist/dedent.d.ts
generated
vendored
Normal file
13
backend/apis/nodejs/node_modules/dedent/dist/dedent.d.ts
generated
vendored
Normal file
@ -0,0 +1,13 @@
|
||||
interface DedentOptions {
|
||||
escapeSpecialCharacters?: boolean;
|
||||
}
|
||||
interface Dedent {
|
||||
(literals: string): string;
|
||||
(strings: TemplateStringsArray, ...values: unknown[]): string;
|
||||
withOptions: CreateDedent;
|
||||
}
|
||||
type CreateDedent = (options: DedentOptions) => Dedent;
|
||||
|
||||
declare const dedent: Dedent;
|
||||
|
||||
export { CreateDedent, Dedent, DedentOptions, dedent as default };
|
69
backend/apis/nodejs/node_modules/dedent/dist/dedent.js
generated
vendored
Normal file
69
backend/apis/nodejs/node_modules/dedent/dist/dedent.js
generated
vendored
Normal file
@ -0,0 +1,69 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = void 0;
|
||||
const dedent = createDedent({});
|
||||
var _default = exports.default = dedent;
|
||||
function createDedent(options) {
|
||||
dedent.withOptions = newOptions => createDedent({
|
||||
...options,
|
||||
...newOptions
|
||||
});
|
||||
return dedent;
|
||||
function dedent(strings, ...values) {
|
||||
const raw = typeof strings === "string" ? [strings] : strings.raw;
|
||||
const {
|
||||
escapeSpecialCharacters = Array.isArray(strings)
|
||||
} = options;
|
||||
|
||||
// first, perform interpolation
|
||||
let result = "";
|
||||
for (let i = 0; i < raw.length; i++) {
|
||||
let next = raw[i];
|
||||
if (escapeSpecialCharacters) {
|
||||
// handle escaped newlines, backticks, and interpolation characters
|
||||
next = next.replace(/\\\n[ \t]*/g, "").replace(/\\`/g, "`").replace(/\\\$/g, "$").replace(/\\\{/g, "{");
|
||||
}
|
||||
result += next;
|
||||
if (i < values.length) {
|
||||
// eslint-disable-next-line @typescript-eslint/restrict-plus-operands
|
||||
result += values[i];
|
||||
}
|
||||
}
|
||||
|
||||
// now strip indentation
|
||||
const lines = result.split("\n");
|
||||
let mindent = null;
|
||||
for (const l of lines) {
|
||||
const m = l.match(/^(\s+)\S+/);
|
||||
if (m) {
|
||||
const indent = m[1].length;
|
||||
if (!mindent) {
|
||||
// this is the first indented line
|
||||
mindent = indent;
|
||||
} else {
|
||||
mindent = Math.min(mindent, indent);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (mindent !== null) {
|
||||
const m = mindent; // appease TypeScript
|
||||
result = lines
|
||||
// https://github.com/typescript-eslint/typescript-eslint/issues/7140
|
||||
// eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with
|
||||
.map(l => l[0] === " " || l[0] === "\t" ? l.slice(m) : l).join("\n");
|
||||
}
|
||||
|
||||
// dedent eats leading and trailing whitespace too
|
||||
result = result.trim();
|
||||
if (escapeSpecialCharacters) {
|
||||
// handle escaped newlines at the end to ensure they don't get stripped too
|
||||
result = result.replace(/\\n/g, "\n");
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
module.exports = exports.default;
|
||||
module.exports.default = exports.default;
|
63
backend/apis/nodejs/node_modules/dedent/dist/dedent.mjs
generated
vendored
Normal file
63
backend/apis/nodejs/node_modules/dedent/dist/dedent.mjs
generated
vendored
Normal file
@ -0,0 +1,63 @@
|
||||
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
||||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
||||
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
||||
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
||||
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
||||
const dedent = createDedent({});
|
||||
export default dedent;
|
||||
function createDedent(options) {
|
||||
dedent.withOptions = newOptions => createDedent(_objectSpread(_objectSpread({}, options), newOptions));
|
||||
return dedent;
|
||||
function dedent(strings, ...values) {
|
||||
const raw = typeof strings === "string" ? [strings] : strings.raw;
|
||||
const {
|
||||
escapeSpecialCharacters = Array.isArray(strings)
|
||||
} = options;
|
||||
|
||||
// first, perform interpolation
|
||||
let result = "";
|
||||
for (let i = 0; i < raw.length; i++) {
|
||||
let next = raw[i];
|
||||
if (escapeSpecialCharacters) {
|
||||
// handle escaped newlines, backticks, and interpolation characters
|
||||
next = next.replace(/\\\n[ \t]*/g, "").replace(/\\`/g, "`").replace(/\\\$/g, "$").replace(/\\\{/g, "{");
|
||||
}
|
||||
result += next;
|
||||
if (i < values.length) {
|
||||
// eslint-disable-next-line @typescript-eslint/restrict-plus-operands
|
||||
result += values[i];
|
||||
}
|
||||
}
|
||||
|
||||
// now strip indentation
|
||||
const lines = result.split("\n");
|
||||
let mindent = null;
|
||||
for (const l of lines) {
|
||||
const m = l.match(/^(\s+)\S+/);
|
||||
if (m) {
|
||||
const indent = m[1].length;
|
||||
if (!mindent) {
|
||||
// this is the first indented line
|
||||
mindent = indent;
|
||||
} else {
|
||||
mindent = Math.min(mindent, indent);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (mindent !== null) {
|
||||
const m = mindent; // appease TypeScript
|
||||
result = lines
|
||||
// https://github.com/typescript-eslint/typescript-eslint/issues/7140
|
||||
// eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with
|
||||
.map(l => l[0] === " " || l[0] === "\t" ? l.slice(m) : l).join("\n");
|
||||
}
|
||||
|
||||
// dedent eats leading and trailing whitespace too
|
||||
result = result.trim();
|
||||
if (escapeSpecialCharacters) {
|
||||
// handle escaped newlines at the end to ensure they don't get stripped too
|
||||
result = result.replace(/\\n/g, "\n");
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
32
backend/apis/nodejs/node_modules/dedent/macro.js
generated
vendored
Normal file
32
backend/apis/nodejs/node_modules/dedent/macro.js
generated
vendored
Normal file
@ -0,0 +1,32 @@
|
||||
const { MacroError, createMacro } = require("babel-plugin-macros");
|
||||
const dedent = require("./dist/dedent.js").default;
|
||||
|
||||
module.exports = createMacro(prevalMacros);
|
||||
|
||||
function prevalMacros({ babel, references, state }) {
|
||||
references.default.forEach((referencePath) => {
|
||||
if (referencePath.parentPath.type === "TaggedTemplateExpression") {
|
||||
asTag(referencePath.parentPath.get("quasi"), state, babel);
|
||||
} else if (referencePath.parentPath.type === "CallExpression") {
|
||||
asFunction(referencePath.parentPath.get("arguments"), state, babel);
|
||||
} else {
|
||||
throw new MacroError(
|
||||
`dedent.macro can only be used as tagged template expression or function call. You tried ${referencePath.parentPath.type}.`,
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function asTag(quasiPath, _, babel) {
|
||||
const string = quasiPath.parentPath.get("quasi").evaluate().value;
|
||||
const { types: t } = babel;
|
||||
|
||||
quasiPath.parentPath.replaceWith(t.stringLiteral(dedent(string)));
|
||||
}
|
||||
|
||||
function asFunction(argumentsPaths, _, babel) {
|
||||
const string = argumentsPaths[0].evaluate().value;
|
||||
const { types: t } = babel;
|
||||
|
||||
argumentsPaths[0].parentPath.replaceWith(t.stringLiteral(dedent(string)));
|
||||
}
|
119
backend/apis/nodejs/node_modules/dedent/package.json
generated
vendored
Normal file
119
backend/apis/nodejs/node_modules/dedent/package.json
generated
vendored
Normal file
@ -0,0 +1,119 @@
|
||||
{
|
||||
"name": "dedent",
|
||||
"version": "1.5.3",
|
||||
"description": "A string tag that strips indentation from multi-line strings. ⬅️",
|
||||
"keywords": [
|
||||
"dedent",
|
||||
"tag",
|
||||
"multi-line string",
|
||||
"es6"
|
||||
],
|
||||
"homepage": "https://github.com/dmnd/dedent",
|
||||
"bugs": {
|
||||
"url": "https://github.com/dmnd/dedent/issues"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/dmnd/dedent"
|
||||
},
|
||||
"license": "MIT",
|
||||
"author": {
|
||||
"name": "Desmond Brand",
|
||||
"email": "dmnd@desmondbrand.com",
|
||||
"url": "http://desmondbrand.com"
|
||||
},
|
||||
"type": "commonjs",
|
||||
"exports": {
|
||||
".": {
|
||||
"types": {
|
||||
"import": "./dist/dedent.d.mts",
|
||||
"require": "./dist/dedent.d.ts"
|
||||
},
|
||||
"import": "./dist/dedent.mjs",
|
||||
"require": "./dist/dedent.js"
|
||||
}
|
||||
},
|
||||
"main": "./dist/dedent.js",
|
||||
"module": "./dist/dedent.mjs",
|
||||
"types": "./dist/dedent.d.mts",
|
||||
"files": [
|
||||
"dist/",
|
||||
"macro.js",
|
||||
"package.json",
|
||||
"LICENSE.md",
|
||||
"README.md"
|
||||
],
|
||||
"scripts": {
|
||||
"build": "pnpm build:legacy && pnpm build:modern && pnpm build:types",
|
||||
"build:legacy": "BABEL_ENV=legacy babel src/dedent.ts --out-file dist/dedent.js",
|
||||
"build:modern": "BABEL_ENV=modern babel src/dedent.ts --out-file dist/dedent.mjs",
|
||||
"build:types": "tsup src/dedent.ts --dts-only",
|
||||
"format": "prettier \"**/*\" --ignore-unknown",
|
||||
"lint": "eslint . .*js --max-warnings 0 --report-unused-disable-directives",
|
||||
"lint:knip": "knip",
|
||||
"lint:md": "markdownlint \"**/*.md\" \".github/**/*.md\"",
|
||||
"lint:package-json": "npmPkgJsonLint .",
|
||||
"lint:packages": "pnpm dedupe --check",
|
||||
"lint:spelling": "cspell \"**\" \".github/**/*\"",
|
||||
"prepare": "husky install",
|
||||
"should-semantic-release": "should-semantic-release --verbose",
|
||||
"test": "jest",
|
||||
"tsc": "tsc"
|
||||
},
|
||||
"lint-staged": {
|
||||
"*": "prettier --ignore-unknown --write"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/cli": "^7.21.5",
|
||||
"@babel/preset-env": "^7.23.3",
|
||||
"@babel/preset-typescript": "^7.23.3",
|
||||
"@release-it/conventional-changelog": "^8.0.1",
|
||||
"@types/babel-plugin-macros": "^3.1.0",
|
||||
"@types/eslint": "^8.44.7",
|
||||
"@types/jest": "^29.5.3",
|
||||
"@typescript-eslint/eslint-plugin": "^6.10.0",
|
||||
"@typescript-eslint/parser": "^6.10.0",
|
||||
"babel-plugin-add-module-exports": "^1.0.4",
|
||||
"babel-plugin-tester": "^11.0.4",
|
||||
"console-fail-test": "^0.2.3",
|
||||
"cspell": "^8.0.0",
|
||||
"eslint": "^8.53.0",
|
||||
"eslint-plugin-deprecation": "^2.0.0",
|
||||
"eslint-plugin-eslint-comments": "^3.2.0",
|
||||
"eslint-plugin-jest": "^27.6.0",
|
||||
"eslint-plugin-jsdoc": "^46.9.0",
|
||||
"eslint-plugin-jsonc": "^2.10.0",
|
||||
"eslint-plugin-markdown": "^3.0.1",
|
||||
"eslint-plugin-n": "^16.3.1",
|
||||
"eslint-plugin-no-only-tests": "^3.1.0",
|
||||
"eslint-plugin-perfectionist": "^2.3.0",
|
||||
"eslint-plugin-regexp": "^2.1.1",
|
||||
"eslint-plugin-yml": "^1.10.0",
|
||||
"husky": "^8.0.3",
|
||||
"jest": "^29.7.0",
|
||||
"jsonc-eslint-parser": "^2.4.0",
|
||||
"knip": "^2.41.0",
|
||||
"lint-staged": "^15.1.0",
|
||||
"markdownlint": "^0.31.1",
|
||||
"markdownlint-cli": "^0.37.0",
|
||||
"npm-package-json-lint": "^7.1.0",
|
||||
"npm-package-json-lint-config-default": "^6.0.0",
|
||||
"prettier": "^3.0.3",
|
||||
"prettier-plugin-curly": "^0.1.3",
|
||||
"prettier-plugin-packagejson": "^2.4.6",
|
||||
"release-it": "^17.0.0",
|
||||
"should-semantic-release": "^0.2.1",
|
||||
"tsup": "^7.2.0",
|
||||
"typescript": "^5.2.2",
|
||||
"yaml-eslint-parser": "^1.2.2"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"babel-plugin-macros": "^3.1.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"babel-plugin-macros": {
|
||||
"optional": true
|
||||
}
|
||||
},
|
||||
"packageManager": "pnpm@8.7.0"
|
||||
}
|
Reference in New Issue
Block a user