chore: improve JS Client TSDoc comments (#5582)
* add oas schema to tsdoc parser * add tsdoc (part 1) * Finished tsdoc in js client * general fixes * added tsdoc in core medusa package * parse schema tags in model files * added maxlevel option * added more tsdoc * added tsdoc in core * added TSDoc in core package * generated client types * support featureFlag and expandable tags * added support for resource feature flag note * fix api ignore plugin * added eslint plugin * support feature flag and expandable badges * adjusted overview page + generated reference * revert generated files * added changeset * add details about new typedoc options * fix broken link
This commit is contained in:
1 parent
c68da6d685
commit
91615f9c45
748 files changed
+12354
-1684
No files matched your search
@@ -0,0 +1,13 @@
|
|||||||
|
---
|
||||||
|
"@medusajs/client-types": patch
|
||||||
|
"medusa-react": patch
|
||||||
|
"@medusajs/medusa-js": patch
|
||||||
|
"@medusajs/medusa": patch
|
||||||
|
"@medusajs/types": patch
|
||||||
|
---
|
||||||
|
|
||||||
|
fix(@medusajs/client-types): Fix types and TSDocs
|
||||||
|
fix(medusa-react): Fix response type of Publishable API Key's list sales channels.
|
||||||
|
fix(@medusajs/medusa-js): Fix incorrect parameter and response types.
|
||||||
|
fix(@medusajs/medusa): Fix incorrect types and add TSDocs
|
||||||
|
fix(@medusajs/types): Fix incorrect types and add TSDocs
|
||||||
@@ -25,12 +25,12 @@
|
|||||||
"typedoc": "0.25.1",
|
"typedoc": "0.25.1",
|
||||||
"typedoc-config": "*",
|
"typedoc-config": "*",
|
||||||
"typedoc-monorepo-link-types": "^0.0.2",
|
"typedoc-monorepo-link-types": "^0.0.2",
|
||||||
|
"typedoc-plugin-custom": "*",
|
||||||
"typedoc-plugin-frontmatter": "*",
|
"typedoc-plugin-frontmatter": "*",
|
||||||
"typedoc-plugin-markdown": "3.16.0",
|
"typedoc-plugin-markdown": "3.16.0",
|
||||||
"typedoc-plugin-markdown-medusa": "*",
|
"typedoc-plugin-markdown-medusa": "*",
|
||||||
"typedoc-plugin-merge-modules": "5.1.0",
|
"typedoc-plugin-merge-modules": "5.1.0",
|
||||||
"typedoc-plugin-missing-exports": "^2.1.0",
|
"typedoc-plugin-missing-exports": "^2.1.0",
|
||||||
"typedoc-plugin-modules": "*",
|
|
||||||
"typedoc-plugin-reference-excluder": "1.1.3",
|
"typedoc-plugin-reference-excluder": "1.1.3",
|
||||||
"typedoc-plugin-rename-defaults": "^0.6.6",
|
"typedoc-plugin-rename-defaults": "^0.6.6",
|
||||||
"typescript": "^5.2.2"
|
"typescript": "^5.2.2"
|
||||||
|
|||||||
@@ -1,4 +1,18 @@
|
|||||||
|
/* eslint-disable @typescript-eslint/no-var-requires */
|
||||||
|
const path = require("path")
|
||||||
|
|
||||||
|
const pathPrefix = path.join(__dirname, "..", "..", "..")
|
||||||
|
|
||||||
|
/** @type {import('typedoc').TypeDocOptions} */
|
||||||
module.exports = {
|
module.exports = {
|
||||||
|
// extends: [typedocConfig],
|
||||||
plugin: ["typedoc-plugin-markdown-medusa"],
|
plugin: ["typedoc-plugin-markdown-medusa"],
|
||||||
readme: "none",
|
readme: "none",
|
||||||
|
eslintPathName: path.join(
|
||||||
|
pathPrefix,
|
||||||
|
"www/packages/eslint-config-docs/content.js"
|
||||||
|
),
|
||||||
|
pluginsResolvePath: path.join(pathPrefix, "www"),
|
||||||
|
// Uncomment this when debugging
|
||||||
|
// showConfig: true,
|
||||||
}
|
}
|
||||||
@@ -70,10 +70,9 @@ module.exports = ({
|
|||||||
...globalTypedocOptions,
|
...globalTypedocOptions,
|
||||||
entryPoints: [path.join(pathPrefix, entryPointPath)],
|
entryPoints: [path.join(pathPrefix, entryPointPath)],
|
||||||
out: [path.join(pathPrefix, outPath)],
|
out: [path.join(pathPrefix, outPath)],
|
||||||
tsconfig: path.join(
|
tsconfig: tsconfigPath.length
|
||||||
pathPrefix,
|
? path.join(pathPrefix, tsconfigPath)
|
||||||
tsconfigPath || "packages/types/tsconfig.json"
|
: path.join(__dirname, "extended-tsconfig", "types.json"),
|
||||||
),
|
|
||||||
name: `${moduleName} Reference`,
|
name: `${moduleName} Reference`,
|
||||||
indexTitle: `${moduleName} Reference`,
|
indexTitle: `${moduleName} Reference`,
|
||||||
entryDocument: "index.md",
|
entryDocument: "index.md",
|
||||||
@@ -82,7 +81,7 @@ module.exports = ({
|
|||||||
hideBreadcrumbs: true,
|
hideBreadcrumbs: true,
|
||||||
plugin: [
|
plugin: [
|
||||||
...globalTypedocOptions.plugin,
|
...globalTypedocOptions.plugin,
|
||||||
"typedoc-plugin-modules",
|
"typedoc-plugin-custom",
|
||||||
"typedoc-plugin-rename-defaults",
|
"typedoc-plugin-rename-defaults",
|
||||||
"typedoc-plugin-frontmatter",
|
"typedoc-plugin-frontmatter",
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ module.exports = {
|
|||||||
...globalTypedocOptions,
|
...globalTypedocOptions,
|
||||||
entryPoints: [path.join(pathPrefix, "packages/medusa/src/models/index.ts")],
|
entryPoints: [path.join(pathPrefix, "packages/medusa/src/models/index.ts")],
|
||||||
out: [path.join(pathPrefix, "www/apps/docs/content/references/entities")],
|
out: [path.join(pathPrefix, "www/apps/docs/content/references/entities")],
|
||||||
tsconfig: path.join(pathPrefix, "packages/medusa/tsconfig.json"),
|
tsconfig: path.join(__dirname, "extended-tsconfig", "medusa.json"),
|
||||||
name: "Entities Reference",
|
name: "Entities Reference",
|
||||||
indexTitle: "Entities Reference",
|
indexTitle: "Entities Reference",
|
||||||
entryDocument: "_index.mdx",
|
entryDocument: "_index.mdx",
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"$schema": "http://json.schemastore.org/tsconfig",
|
||||||
|
"extends": [
|
||||||
|
"../../../../packages/medusa-js/tsconfig.json"
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"$schema": "http://json.schemastore.org/tsconfig",
|
||||||
|
"extends": [
|
||||||
|
"../../../../packages/medusa/tsconfig.json"
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://developer.microsoft.com/json-schemas/tsdoc/v0/tsdoc.schema.json",
|
||||||
|
"extends": ["typedoc/tsdoc.json"],
|
||||||
|
"tagDefinitions": [
|
||||||
|
{
|
||||||
|
"tagName": "@featureFlag",
|
||||||
|
"syntaxKind": "block"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"tagName": "@expandable",
|
||||||
|
"syntaxKind": "modifier"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"tagName": "@schema",
|
||||||
|
"syntaxKind": "block"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"tagName": "@apiIgnore",
|
||||||
|
"syntaxKind": "modifier"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"$schema": "http://json.schemastore.org/tsconfig",
|
||||||
|
"extends": [
|
||||||
|
"../../../../packages/types/tsconfig.json"
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -4,12 +4,35 @@ const globalTypedocOptions = require("./_base")
|
|||||||
|
|
||||||
const pathPrefix = path.join(__dirname, "..", "..", "..")
|
const pathPrefix = path.join(__dirname, "..", "..", "..")
|
||||||
|
|
||||||
|
const defaultFormattingOptions = {
|
||||||
|
showCommentsAsHeader: true,
|
||||||
|
sections: {
|
||||||
|
member_sources_definedIn: false,
|
||||||
|
reflection_hierarchy: false,
|
||||||
|
member_signature_typeParameters: false,
|
||||||
|
member_signature_sources: false,
|
||||||
|
member_signature_title: false,
|
||||||
|
member_signature_returns: false,
|
||||||
|
},
|
||||||
|
parameterStyle: "component",
|
||||||
|
parameterComponent: "ParameterTypes",
|
||||||
|
mdxImports: [
|
||||||
|
`import ParameterTypes from "@site/src/components/ParameterTypes"`,
|
||||||
|
],
|
||||||
|
reflectionGroups: {
|
||||||
|
Constructors: false,
|
||||||
|
},
|
||||||
|
frontmatterData: {
|
||||||
|
displayed_sidebar: "jsClientSidebar",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
/** @type {import('typedoc').TypeDocOptions} */
|
||||||
module.exports = {
|
module.exports = {
|
||||||
...globalTypedocOptions,
|
...globalTypedocOptions,
|
||||||
entryPoints: [path.join(pathPrefix, "packages/medusa-js/src/resources")],
|
entryPoints: [path.join(pathPrefix, "packages/medusa-js/src/resources")],
|
||||||
entryPointStrategy: "expand",
|
|
||||||
out: [path.join(pathPrefix, "www/apps/docs/content/references/js-client")],
|
out: [path.join(pathPrefix, "www/apps/docs/content/references/js-client")],
|
||||||
tsconfig: path.join(pathPrefix, "packages/medusa-js/tsconfig.json"),
|
tsconfig: path.join(__dirname, "extended-tsconfig", "js-client.json"),
|
||||||
name: "JS Client Reference",
|
name: "JS Client Reference",
|
||||||
indexTitle: "JS Client Reference",
|
indexTitle: "JS Client Reference",
|
||||||
entryDocument: "_index.mdx",
|
entryDocument: "_index.mdx",
|
||||||
@@ -17,35 +40,26 @@ module.exports = {
|
|||||||
hideBreadcrumbs: true,
|
hideBreadcrumbs: true,
|
||||||
plugin: [
|
plugin: [
|
||||||
...globalTypedocOptions.plugin,
|
...globalTypedocOptions.plugin,
|
||||||
"typedoc-plugin-reference-excluder",
|
|
||||||
"typedoc-plugin-frontmatter",
|
|
||||||
"typedoc-plugin-rename-defaults",
|
"typedoc-plugin-rename-defaults",
|
||||||
"typedoc-plugin-modules",
|
"typedoc-plugin-custom",
|
||||||
],
|
],
|
||||||
exclude: [
|
exclude: [
|
||||||
path.join(pathPrefix, "packages/medusa-js/src/resources/base.ts"),
|
path.join(pathPrefix, "packages/medusa-js/src/resources/base.ts"),
|
||||||
path.join(pathPrefix, "node_modules/**"),
|
path.join(pathPrefix, "node_modules/**"),
|
||||||
path.join(pathPrefix, "packages/**/node_modules"),
|
|
||||||
],
|
],
|
||||||
excludeConstructors: true,
|
|
||||||
frontmatterData: {
|
|
||||||
displayed_sidebar: "jsClientSidebar",
|
|
||||||
},
|
|
||||||
internalModule: "internal",
|
internalModule: "internal",
|
||||||
formatting: {
|
formatting: {
|
||||||
"*": {
|
"*": defaultFormattingOptions,
|
||||||
showCommentsAsHeader: true,
|
"^classes/": {
|
||||||
sections: {
|
...defaultFormattingOptions,
|
||||||
member_sources_definedIn: false,
|
frontmatterData: {
|
||||||
reflection_hierarchy: false,
|
...defaultFormattingOptions.frontmatterData,
|
||||||
|
slug: "/references/js-client/{{alias}}",
|
||||||
},
|
},
|
||||||
parameterStyle: "component",
|
|
||||||
parameterComponent: "ParameterTypes",
|
|
||||||
mdxImports: [
|
|
||||||
`import ParameterTypes from "@site/src/components/ParameterTypes"`,
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
objectLiteralTypeDeclarationStyle: "component",
|
objectLiteralTypeDeclarationStyle: "component",
|
||||||
mdxOutput: true,
|
mdxOutput: true,
|
||||||
|
maxLevel: 4,
|
||||||
|
ignoreApi: true,
|
||||||
}
|
}
|
||||||
@@ -5,6 +5,9 @@
|
|||||||
"publishConfig": {
|
"publishConfig": {
|
||||||
"access": "public"
|
"access": "public"
|
||||||
},
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"typedoc": "0.25.x"
|
||||||
|
},
|
||||||
"main": "_base.js",
|
"main": "_base.js",
|
||||||
"version": "0.0.0"
|
"version": "0.0.0"
|
||||||
}
|
}
|
||||||
@@ -8,7 +8,7 @@ module.exports = {
|
|||||||
...globalTypedocOptions,
|
...globalTypedocOptions,
|
||||||
entryPoints: [path.join(pathPrefix, "packages/medusa/src/services/index.ts")],
|
entryPoints: [path.join(pathPrefix, "packages/medusa/src/services/index.ts")],
|
||||||
out: [path.join(pathPrefix, "www/apps/docs/content/references/services")],
|
out: [path.join(pathPrefix, "www/apps/docs/content/references/services")],
|
||||||
tsconfig: path.join(pathPrefix, "packages/medusa/tsconfig.json"),
|
tsconfig: path.join(__dirname, "extended-tsconfig", "medusa.json"),
|
||||||
name: "Services Reference",
|
name: "Services Reference",
|
||||||
indexTitle: "Services Reference",
|
indexTitle: "Services Reference",
|
||||||
entryDocument: "index.md",
|
entryDocument: "index.md",
|
||||||
|
|||||||
File renamed without changes.
@@ -0,0 +1,44 @@
|
|||||||
|
# typedoc-plugin-custom
|
||||||
|
|
||||||
|
A Typedoc plugin that combines utility plugins for documenting references.
|
||||||
|
|
||||||
|
## Configurations
|
||||||
|
|
||||||
|
### Resolve Reference Configurations
|
||||||
|
|
||||||
|
The [`resolve-reference-plugin`](./src/resolve-references-plugin.ts) imitates the [`typedoc-plugin-missing-exports`](https://www.npmjs.com/package/typedoc-plugin-missing-exports) plugin. So, it accepts the same options as the [`typedoc-plugin-missing-exports`](https://www.npmjs.com/package/typedoc-plugin-missing-exports) plugin.
|
||||||
|
|
||||||
|
### Frontmatter
|
||||||
|
|
||||||
|
`frontmatterData` is an object of key-value pairs. If none provided, no frontmatter variables will be added to the Markdown files.
|
||||||
|
|
||||||
|
An example of passing it in a JavaScript configuration file:
|
||||||
|
|
||||||
|
```js
|
||||||
|
frontmatterData: {
|
||||||
|
displayed_sidebar: "jsClientSidebar",
|
||||||
|
},
|
||||||
|
```
|
||||||
|
|
||||||
|
### API Ignore
|
||||||
|
|
||||||
|
The `ignoreApi` option is a boolean that indicates whether reflections with the `@apiIgnore` tag should be ignored. If enabled, reflections having this tag are removed from the generated documentation. If disabled (which is the default), the `@apiIgnore` tag is removed from the reflection to ensure it's not shown in the generated documentation.
|
||||||
|
|
||||||
|
### ESLint
|
||||||
|
|
||||||
|
If the `eslintPathName` option is set, code snippets provided in `@example` tag are linted based on the documentation's ESLint rules.
|
||||||
|
|
||||||
|
The following options are useful for linting:
|
||||||
|
|
||||||
|
- `eslintPathName`: The path to the ESLint configuration file.
|
||||||
|
- `pluginsResolvePath`: The path to resolve plugins used in the ESLint configuration files.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Build the Plugin
|
||||||
|
|
||||||
|
Before using any command that makes use of this plugin, make sure to run the `build` command:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
yarn build
|
||||||
|
```
|
||||||
+5
-2
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"name": "typedoc-plugin-modules",
|
"name": "typedoc-plugin-custom",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "0.0.0",
|
"version": "0.0.0",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
@@ -32,7 +32,10 @@
|
|||||||
"typedoc"
|
"typedoc"
|
||||||
],
|
],
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"eslint": "^8.53.0",
|
||||||
"glob": "^10.3.10",
|
"glob": "^10.3.10",
|
||||||
"typedoc-plugin-markdown": "^3.16.0"
|
"typedoc-plugin-markdown": "^3.16.0",
|
||||||
|
"utils": "*",
|
||||||
|
"yaml": "^2.3.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
import {
|
||||||
|
Application,
|
||||||
|
Context,
|
||||||
|
Converter,
|
||||||
|
ParameterType,
|
||||||
|
ReflectionKind,
|
||||||
|
} from "typedoc"
|
||||||
|
|
||||||
|
export function load(app: Application) {
|
||||||
|
app.options.addDeclaration({
|
||||||
|
name: "ignoreApi",
|
||||||
|
help: "Whether to ignore items with the `@apiIgnore` tag.",
|
||||||
|
type: ParameterType.Boolean, // The default
|
||||||
|
defaultValue: false,
|
||||||
|
})
|
||||||
|
|
||||||
|
app.converter.on(Converter.EVENT_RESOLVE_BEGIN, (context: Context) => {
|
||||||
|
for (const reflection of context.project.getReflectionsByKind(
|
||||||
|
ReflectionKind.All
|
||||||
|
)) {
|
||||||
|
if (reflection.comment?.hasModifier("@apiIgnore")) {
|
||||||
|
if (app.options.getValue("ignoreApi")) {
|
||||||
|
context.project.removeReflection(reflection)
|
||||||
|
} else {
|
||||||
|
reflection.comment.removeModifier(`@apiIgnore`)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
@@ -0,0 +1,65 @@
|
|||||||
|
import { ESLint } from "eslint"
|
||||||
|
import {
|
||||||
|
Application,
|
||||||
|
Context,
|
||||||
|
Converter,
|
||||||
|
ParameterType,
|
||||||
|
ReflectionKind,
|
||||||
|
} from "typedoc"
|
||||||
|
|
||||||
|
export function load(app: Application) {
|
||||||
|
app.options.addDeclaration({
|
||||||
|
name: "eslintPathName",
|
||||||
|
help: "The path to the ESLint configurations to apply.",
|
||||||
|
type: ParameterType.String,
|
||||||
|
})
|
||||||
|
app.options.addDeclaration({
|
||||||
|
name: "pluginsResolvePath",
|
||||||
|
help: "The path to resolve plugins used in the ESLint configurations.",
|
||||||
|
type: ParameterType.String,
|
||||||
|
})
|
||||||
|
app.converter.on(Converter.EVENT_RESOLVE_BEGIN, async (context: Context) => {
|
||||||
|
const eslintConfigPath = app.options.getValue("eslintPathName") as string
|
||||||
|
const pluginsResolvePath = app.options.getValue(
|
||||||
|
"pluginsResolvePath"
|
||||||
|
) as string
|
||||||
|
if (!eslintConfigPath) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const eslint = new ESLint({
|
||||||
|
overrideConfigFile: eslintConfigPath,
|
||||||
|
resolvePluginsRelativeTo: pluginsResolvePath,
|
||||||
|
fix: true,
|
||||||
|
})
|
||||||
|
for (const reflection of context.project.getReflectionsByKind(
|
||||||
|
ReflectionKind.All
|
||||||
|
)) {
|
||||||
|
const example = reflection.comment?.getTag(`@example`)
|
||||||
|
if (example) {
|
||||||
|
await Promise.all(
|
||||||
|
example.content
|
||||||
|
.filter((exampleContent) => exampleContent.kind === "code")
|
||||||
|
.map(async (exampleContent) => {
|
||||||
|
const matchedCodeSnippets = exampleContent.text.matchAll(
|
||||||
|
/```ts(?<code>[\s\S.]*)```/g
|
||||||
|
)
|
||||||
|
for (const matchedCodeSnippet of matchedCodeSnippets) {
|
||||||
|
if (!matchedCodeSnippet.groups?.code) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
const result = await eslint.lintText(
|
||||||
|
matchedCodeSnippet.groups.code
|
||||||
|
)
|
||||||
|
|
||||||
|
exampleContent.text =
|
||||||
|
result.length > 0 && result[0].output
|
||||||
|
? "```ts\n" + result[0].output + "```"
|
||||||
|
: exampleContent.text
|
||||||
|
}
|
||||||
|
})
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
File renamed without changes.
@@ -0,0 +1,14 @@
|
|||||||
|
import { Application } from "typedoc"
|
||||||
|
import { load as resolveReferencesPluginLoad } from "./resolve-references-plugin"
|
||||||
|
import { load as frontmatterPlugin } from "./frontmatter-plugin"
|
||||||
|
import { load as parseOasSchemaPlugin } from "./parse-oas-schema-plugin"
|
||||||
|
import { load as apiIgnorePlugin } from "./api-ignore"
|
||||||
|
import { load as eslintExamplePlugin } from "./eslint-example"
|
||||||
|
|
||||||
|
export function load(app: Application) {
|
||||||
|
resolveReferencesPluginLoad(app)
|
||||||
|
frontmatterPlugin(app)
|
||||||
|
parseOasSchemaPlugin(app)
|
||||||
|
apiIgnorePlugin(app)
|
||||||
|
eslintExamplePlugin(app)
|
||||||
|
}
|
||||||
@@ -0,0 +1,234 @@
|
|||||||
|
import {
|
||||||
|
Application,
|
||||||
|
Comment,
|
||||||
|
CommentDisplayPart,
|
||||||
|
CommentTag,
|
||||||
|
Context,
|
||||||
|
Converter,
|
||||||
|
DeclarationReflection,
|
||||||
|
Reflection,
|
||||||
|
ReflectionKind,
|
||||||
|
SomeType,
|
||||||
|
} from "typedoc"
|
||||||
|
import { parse } from "yaml"
|
||||||
|
import { getTypeChildren } from "utils"
|
||||||
|
|
||||||
|
// a simplified schema type
|
||||||
|
// mainly focusing on properties used
|
||||||
|
// within this plugin
|
||||||
|
type Schema = {
|
||||||
|
description?: string
|
||||||
|
properties?: SchemaProperties
|
||||||
|
allOf?: SchemaProperty[]
|
||||||
|
oneOf?: SchemaProperty[]
|
||||||
|
}
|
||||||
|
|
||||||
|
type SchemaProperties = {
|
||||||
|
[k: string]: SchemaProperty
|
||||||
|
}
|
||||||
|
|
||||||
|
type SchemaProperty = {
|
||||||
|
description?: string
|
||||||
|
"x-expandable"?: string
|
||||||
|
"x-featureFlag"?: string
|
||||||
|
default?: string
|
||||||
|
items?: Schema
|
||||||
|
properties?: SchemaProperties
|
||||||
|
allOf?: SchemaProperty[]
|
||||||
|
oneOf?: SchemaProperty[]
|
||||||
|
}
|
||||||
|
|
||||||
|
export function load(app: Application) {
|
||||||
|
const definedSchemas = new Map<string, Schema>()
|
||||||
|
|
||||||
|
// Since some files, such as models, include the
|
||||||
|
// `@schema` declaration at the end of the file, i.e. not
|
||||||
|
// before the related class/type/interface, this extracts
|
||||||
|
// those schemas and applies them to reflections having the same
|
||||||
|
// name, if those reflections don't have a schema comment of their own.
|
||||||
|
const origConvertSymbol = app.converter.convertSymbol
|
||||||
|
app.converter.convertSymbol = (context, symbol, exportSymbol) => {
|
||||||
|
if (symbol.valueDeclaration) {
|
||||||
|
const sourceFile = symbol.valueDeclaration?.getSourceFile()
|
||||||
|
// find block comments
|
||||||
|
const blockCommentMatch = sourceFile.text.matchAll(
|
||||||
|
/\/\*[\s\S]*?\*\/|([^\\:]|^)\/\/.*$/gm
|
||||||
|
)
|
||||||
|
for (const blockMatch of blockCommentMatch) {
|
||||||
|
blockMatch.forEach((matched) => {
|
||||||
|
if (!matched) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const schemaStartIndex = matched.indexOf("@schema")
|
||||||
|
if (schemaStartIndex === -1) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
// find end index
|
||||||
|
let schemaEndIndex = matched.indexOf(" * @", schemaStartIndex)
|
||||||
|
|
||||||
|
if (schemaEndIndex === -1) {
|
||||||
|
schemaEndIndex = matched.length
|
||||||
|
}
|
||||||
|
|
||||||
|
const schemaText = matched
|
||||||
|
.substring(schemaStartIndex, schemaEndIndex)
|
||||||
|
.replaceAll(" */", "")
|
||||||
|
.replaceAll("*/", "")
|
||||||
|
.replaceAll(" * ", "")
|
||||||
|
const { name: schemaName = "" } =
|
||||||
|
/@schema (?<name>\w+)/.exec(schemaText)?.groups || {}
|
||||||
|
|
||||||
|
if (!schemaName || definedSchemas.has(schemaName)) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// attempt to parse schema and save it
|
||||||
|
try {
|
||||||
|
const parsedSchema = parse(
|
||||||
|
schemaText.replace("@schema", "schema:")
|
||||||
|
) as Schema
|
||||||
|
|
||||||
|
definedSchemas.set(schemaName, parsedSchema)
|
||||||
|
} catch (e) {
|
||||||
|
// ignore errors as the schema may be malformed.
|
||||||
|
console.error(`Error parsing schema ${schemaName}: ${e}`)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return origConvertSymbol(context, symbol, exportSymbol)
|
||||||
|
}
|
||||||
|
|
||||||
|
app.converter.on(Converter.EVENT_RESOLVE_BEGIN, (context: Context) => {
|
||||||
|
for (const reflection of context.project.getReflectionsByKind(
|
||||||
|
ReflectionKind.All
|
||||||
|
)) {
|
||||||
|
let schema: Schema | undefined
|
||||||
|
let { comment } = reflection
|
||||||
|
const schemaTags = comment?.getTags(`@schema`)
|
||||||
|
|
||||||
|
if (schemaTags?.length) {
|
||||||
|
schemaTags.forEach((part) => {
|
||||||
|
if (part.content.length) {
|
||||||
|
const schemaComment = prepareSchemaComment(part.content)
|
||||||
|
schema = parse(schemaComment)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
reflection.comment?.removeTags("@schema")
|
||||||
|
} else if (!comment) {
|
||||||
|
if (definedSchemas.has(reflection.name)) {
|
||||||
|
schema = definedSchemas.get(reflection.name)
|
||||||
|
comment = new Comment()
|
||||||
|
} else if ("type" in reflection && reflection.type) {
|
||||||
|
const reflectionType = reflection.type as SomeType
|
||||||
|
|
||||||
|
if (
|
||||||
|
"name" in reflectionType &&
|
||||||
|
definedSchemas.has(reflectionType.name)
|
||||||
|
) {
|
||||||
|
schema = definedSchemas.get(reflectionType.name)
|
||||||
|
comment = new Comment()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (schema) {
|
||||||
|
if (schema.description) {
|
||||||
|
comment?.summary.push({
|
||||||
|
kind: "text",
|
||||||
|
text: schema.description,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
if (reflection.kind === ReflectionKind.TypeAlias) {
|
||||||
|
comment?.modifierTags.add(`@interface`)
|
||||||
|
}
|
||||||
|
|
||||||
|
addComments(schema, reflection)
|
||||||
|
|
||||||
|
if (!reflection.comment && comment) {
|
||||||
|
reflection.comment = comment
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
function prepareSchemaComment(commentParts: CommentDisplayPart[]) {
|
||||||
|
let result = `schema: `
|
||||||
|
commentParts.forEach((commentPart) => {
|
||||||
|
result += commentPart.text
|
||||||
|
})
|
||||||
|
return result
|
||||||
|
}
|
||||||
|
|
||||||
|
function addComments(schema: Schema, reflection: Reflection) {
|
||||||
|
if (!schema.properties) {
|
||||||
|
if (schema.allOf) {
|
||||||
|
schema.allOf.forEach((valueChild) => {
|
||||||
|
addComments(valueChild, reflection)
|
||||||
|
})
|
||||||
|
} else if (schema.oneOf) {
|
||||||
|
schema.oneOf.forEach((valueChild) => {
|
||||||
|
addComments(valueChild, reflection)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const children =
|
||||||
|
"type" in reflection
|
||||||
|
? getTypeChildren(reflection.type as SomeType, reflection.project)
|
||||||
|
: "children" in reflection
|
||||||
|
? (reflection.children as DeclarationReflection[])
|
||||||
|
: []
|
||||||
|
|
||||||
|
Object.entries(schema.properties).forEach(([key, value]) => {
|
||||||
|
const childItem =
|
||||||
|
children.find((child) => child.name === key) ||
|
||||||
|
reflection.getChildByName(key)
|
||||||
|
|
||||||
|
if (childItem) {
|
||||||
|
if (!childItem.comment) {
|
||||||
|
const comment = new Comment()
|
||||||
|
comment.summary.push({
|
||||||
|
kind: "text",
|
||||||
|
text: value.description || "",
|
||||||
|
})
|
||||||
|
childItem.comment = comment
|
||||||
|
}
|
||||||
|
|
||||||
|
if (
|
||||||
|
value.default !== undefined &&
|
||||||
|
"defaultValue" in childItem &&
|
||||||
|
!childItem.defaultValue
|
||||||
|
) {
|
||||||
|
childItem.defaultValue = value.default
|
||||||
|
}
|
||||||
|
|
||||||
|
if (value["x-expandable"]) {
|
||||||
|
childItem.comment.modifierTags.add(`@expandable`)
|
||||||
|
}
|
||||||
|
|
||||||
|
if (value["x-featureFlag"]) {
|
||||||
|
childItem.comment.blockTags.push(
|
||||||
|
new CommentTag(`@featureFlag`, [
|
||||||
|
{
|
||||||
|
kind: `inline-tag`,
|
||||||
|
text: value["x-featureFlag"],
|
||||||
|
tag: `@featureFlag`,
|
||||||
|
},
|
||||||
|
])
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
if (value.items) {
|
||||||
|
addComments(value.items, childItem)
|
||||||
|
}
|
||||||
|
|
||||||
|
if (value.properties || value.allOf || value.oneOf) {
|
||||||
|
addComments(value, childItem)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
File renamed without changes.
File renamed without changes.
@@ -1,45 +0,0 @@
|
|||||||
# typedoc-plugin-frontmatter
|
|
||||||
|
|
||||||
A Typedoc plugin that allows inserting frontmatter key-value pairs at the top of the exported Markdown files.
|
|
||||||
|
|
||||||
> For more flexibility in what pages to apply the frontmatter data to, for example, to specify different frontmatter for different pages, ues the [`typedoc-plugin-markdown-medusa` plugin's `frontmatterData` option](../typedoc-plugin-markdown-medusa/README.md#configurations)
|
|
||||||
|
|
||||||
## Configurations
|
|
||||||
|
|
||||||
The following options are optional and can be used to customize the configurations of the plugin.
|
|
||||||
|
|
||||||
### frontmatterData
|
|
||||||
|
|
||||||
`frontmatterData` is an object of key-value pairs. If none provided, no frontmatter variables will be added to the Markdown files.
|
|
||||||
|
|
||||||
An example of passing it in a JavaScript configuration file:
|
|
||||||
|
|
||||||
```js
|
|
||||||
frontmatterData: {
|
|
||||||
displayed_sidebar: "jsClientSidebar",
|
|
||||||
},
|
|
||||||
```
|
|
||||||
|
|
||||||
If passing the option in the command line the value should be a JSON object.
|
|
||||||
|
|
||||||
### pagesPattern
|
|
||||||
|
|
||||||
`pagesPattern` is a string that contains a regular expression. This allows you to limit the pages the frontmatter variables should be added to.
|
|
||||||
|
|
||||||
By default, the frontmatter variables will be added to all files.
|
|
||||||
|
|
||||||
An example of passing it in a JavaScript configuration file:
|
|
||||||
|
|
||||||
```js
|
|
||||||
frontmatterData: {
|
|
||||||
pagesPattern: "internal\\.",
|
|
||||||
},
|
|
||||||
```
|
|
||||||
|
|
||||||
## Build the Plugin
|
|
||||||
|
|
||||||
Before using any command that makes use of this plugin, make sure to run the `build` command:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
yarn build
|
|
||||||
```
|
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "typedoc-plugin-frontmatter",
|
|
||||||
"private": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"publishConfig": {
|
|
||||||
"access": "public"
|
|
||||||
},
|
|
||||||
"version": "0.0.0",
|
|
||||||
"description": "Plugin to add frontmatter key-values at the top of pages",
|
|
||||||
"main": "./dist/index.js",
|
|
||||||
"exports": "./dist/index.js",
|
|
||||||
"files": [
|
|
||||||
"dist"
|
|
||||||
],
|
|
||||||
"author": "Shahed Nasser",
|
|
||||||
"scripts": {
|
|
||||||
"build": "tsc",
|
|
||||||
"watch": "tsc --watch",
|
|
||||||
"lint": "eslint --ext .ts src"
|
|
||||||
},
|
|
||||||
"peerDependencies": {
|
|
||||||
"typedoc": "0.25.x"
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
|
||||||
"@types/node": "^16.11.10",
|
|
||||||
"typescript": "^4.6"
|
|
||||||
},
|
|
||||||
"keywords": [
|
|
||||||
"typedocplugin",
|
|
||||||
"packages",
|
|
||||||
"monorepo",
|
|
||||||
"typedoc"
|
|
||||||
],
|
|
||||||
"dependencies": {
|
|
||||||
"yaml": "^2.3.2"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -23,6 +23,7 @@ Aside from the options detailed in [typedoc-plugin-markdown](https://github.com/
|
|||||||
- `frontmatterData`: (optional) an object that will be injected as frontmatter to the pages matching specified pattern.
|
- `frontmatterData`: (optional) an object that will be injected as frontmatter to the pages matching specified pattern.
|
||||||
- `parameterComponent`: (optional) a string indicating the name of a React component to pass the parameters as an object to. This is only used if the `parameterStyle` option is set to `component`. This also must be used with the `mdxOutput` option enabled, and an import string for the component passed to the `mdxImports` option. The React component will receive a `parameters` prop, which is an array of type [Parameter](./src/types.ts#L95).
|
- `parameterComponent`: (optional) a string indicating the name of a React component to pass the parameters as an object to. This is only used if the `parameterStyle` option is set to `component`. This also must be used with the `mdxOutput` option enabled, and an import string for the component passed to the `mdxImports` option. The React component will receive a `parameters` prop, which is an array of type [Parameter](./src/types.ts#L95).
|
||||||
- `mdxImports`: (optional) an array of strings, each holding an import statement that will be added to the beginning of each page. For example, `["import ParameterTypes from "@site/src/components/ParameterTypes""]`. Must be used along with the `mdxOutput` option enabled.
|
- `mdxImports`: (optional) an array of strings, each holding an import statement that will be added to the beginning of each page. For example, `["import ParameterTypes from "@site/src/components/ParameterTypes""]`. Must be used along with the `mdxOutput` option enabled.
|
||||||
|
- `maxLevel`: (optional) a number indicating the maximum level parameters and return types are expanded. Default is `3`.
|
||||||
|
|
||||||
## Build Plugin
|
## Build Plugin
|
||||||
|
|
||||||
|
|||||||
@@ -23,7 +23,8 @@
|
|||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/node": "^16.11.10",
|
"@types/node": "^16.11.10",
|
||||||
"copyfiles": "^2.4.1",
|
"copyfiles": "^2.4.1",
|
||||||
"typescript": "^4.6"
|
"typescript": "^4.6",
|
||||||
|
"utils": "*"
|
||||||
},
|
},
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"typedocplugin",
|
"typedocplugin",
|
||||||
|
|||||||
@@ -109,5 +109,12 @@ export function load(app: Application) {
|
|||||||
type: ParameterType.Boolean,
|
type: ParameterType.Boolean,
|
||||||
defaultValue: false,
|
defaultValue: false,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
app.options.addDeclaration({
|
||||||
|
help: "[Markdown Plugin] The maximum level to expand when retrieving reflection types.",
|
||||||
|
name: "maxLevel",
|
||||||
|
type: ParameterType.Number,
|
||||||
|
defaultValue: 3,
|
||||||
|
})
|
||||||
}
|
}
|
||||||
export { MarkdownTheme }
|
export { MarkdownTheme }
|
||||||
@@ -43,6 +43,8 @@ import typeParameterComponentHelper from "./resources/helpers/type-parameter-com
|
|||||||
import showPropertiesAsComponentHelper from "./resources/helpers/show-properties-as-component"
|
import showPropertiesAsComponentHelper from "./resources/helpers/show-properties-as-component"
|
||||||
import commentTagHelper from "./resources/helpers/comment-tag"
|
import commentTagHelper from "./resources/helpers/comment-tag"
|
||||||
import exampleHelper from "./resources/helpers/example"
|
import exampleHelper from "./resources/helpers/example"
|
||||||
|
import ifFeatureFlagHelper from "./resources/helpers/if-feature-flag"
|
||||||
|
import featureFlagHelper from "./resources/helpers/feature-flag"
|
||||||
import { MarkdownTheme } from "./theme"
|
import { MarkdownTheme } from "./theme"
|
||||||
|
|
||||||
// test
|
// test
|
||||||
@@ -116,4 +118,6 @@ export function registerHelpers(theme: MarkdownTheme) {
|
|||||||
showPropertiesAsComponentHelper(theme)
|
showPropertiesAsComponentHelper(theme)
|
||||||
commentTagHelper(theme)
|
commentTagHelper(theme)
|
||||||
exampleHelper()
|
exampleHelper()
|
||||||
|
ifFeatureFlagHelper()
|
||||||
|
featureFlagHelper()
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,8 @@
|
|||||||
import * as Handlebars from "handlebars"
|
import * as Handlebars from "handlebars"
|
||||||
import { Comment } from "typedoc"
|
import { Comment } from "typedoc"
|
||||||
|
|
||||||
|
const EXCLUDED_TAGS = ["@returns", "@example", "@featureFlag"]
|
||||||
|
|
||||||
export default function () {
|
export default function () {
|
||||||
Handlebars.registerHelper(
|
Handlebars.registerHelper(
|
||||||
"comments",
|
"comments",
|
||||||
@@ -18,9 +20,9 @@ export default function () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (showTags && comment.blockTags?.length) {
|
if (showTags && comment.blockTags?.length) {
|
||||||
const filteredTags = comment.blockTags
|
const filteredTags = comment.blockTags.filter(
|
||||||
.filter((tag) => tag.tag !== "@returns")
|
(tag) => !EXCLUDED_TAGS.includes(tag.tag)
|
||||||
.filter((tag) => tag.tag !== "@example")
|
)
|
||||||
const tags = filteredTags.map((tag) => {
|
const tags = filteredTags.map((tag) => {
|
||||||
return Handlebars.helpers.commentTag(
|
return Handlebars.helpers.commentTag(
|
||||||
tag,
|
tag,
|
||||||
|
|||||||
+21
@@ -0,0 +1,21 @@
|
|||||||
|
import * as Handlebars from "handlebars"
|
||||||
|
import { Comment } from "typedoc"
|
||||||
|
|
||||||
|
export default function () {
|
||||||
|
Handlebars.registerHelper(
|
||||||
|
"featureFlag",
|
||||||
|
function (comment: Comment | undefined) {
|
||||||
|
if (!comment) {
|
||||||
|
return undefined
|
||||||
|
}
|
||||||
|
const featureFlagTag = comment.getTag("@featureFlag")
|
||||||
|
if (!featureFlagTag) {
|
||||||
|
return undefined
|
||||||
|
}
|
||||||
|
|
||||||
|
return featureFlagTag.content
|
||||||
|
.map((tagContent) => tagContent.text)
|
||||||
|
.join("")
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
+13
@@ -0,0 +1,13 @@
|
|||||||
|
import * as Handlebars from "handlebars"
|
||||||
|
import { Reflection } from "typedoc"
|
||||||
|
|
||||||
|
export default function () {
|
||||||
|
Handlebars.registerHelper(
|
||||||
|
"ifFeatureFlag",
|
||||||
|
function (this: Reflection, options: Handlebars.HelperOptions) {
|
||||||
|
return this.comment?.getTag("@featureFlag") !== undefined
|
||||||
|
? options.fn(this)
|
||||||
|
: options.inverse(this)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
+13
@@ -0,0 +1,13 @@
|
|||||||
|
{{#with model}}
|
||||||
|
|
||||||
|
{{#ifFeatureFlag}}
|
||||||
|
|
||||||
|
:::note
|
||||||
|
|
||||||
|
To use this resource, make sure to [enable its feature flag: {{{featureFlag comment}}}](https://docs.medusajs.com/development/feature-flags/toggle)
|
||||||
|
|
||||||
|
:::
|
||||||
|
|
||||||
|
{{/ifFeatureFlag}}
|
||||||
|
|
||||||
|
{{/with}}
|
||||||
@@ -4,6 +4,8 @@
|
|||||||
|
|
||||||
{{/ifShowPageTitle}}
|
{{/ifShowPageTitle}}
|
||||||
|
|
||||||
|
{{> feature-flag}}
|
||||||
|
|
||||||
{{#with model}}
|
{{#with model}}
|
||||||
|
|
||||||
{{{reflectionDescription}}}
|
{{{reflectionDescription}}}
|
||||||
|
|||||||
@@ -56,6 +56,8 @@ export class MarkdownTheme extends Theme {
|
|||||||
|
|
||||||
static URL_PREFIX = /^(http|ftp)s?:\/\//
|
static URL_PREFIX = /^(http|ftp)s?:\/\//
|
||||||
|
|
||||||
|
static MAX_LEVEL = 3
|
||||||
|
|
||||||
constructor(renderer: Renderer) {
|
constructor(renderer: Renderer) {
|
||||||
super(renderer)
|
super(renderer)
|
||||||
|
|
||||||
@@ -85,6 +87,7 @@ export class MarkdownTheme extends Theme {
|
|||||||
"formatting"
|
"formatting"
|
||||||
) as FormattingOptionsType
|
) as FormattingOptionsType
|
||||||
this.mdxOutput = this.getOption("mdxOutput") as boolean
|
this.mdxOutput = this.getOption("mdxOutput") as boolean
|
||||||
|
MarkdownTheme.MAX_LEVEL = this.getOption("maxLevel") as number
|
||||||
|
|
||||||
this.listenTo(this.owner, {
|
this.listenTo(this.owner, {
|
||||||
[RendererEvent.BEGIN]: this.onBeginRenderer,
|
[RendererEvent.BEGIN]: this.onBeginRenderer,
|
||||||
|
|||||||
@@ -74,6 +74,7 @@ export type FormattingOptionType = {
|
|||||||
frontmatterData?: Record<string, unknown>
|
frontmatterData?: Record<string, unknown>
|
||||||
parameterComponent?: string
|
parameterComponent?: string
|
||||||
mdxImports?: string[]
|
mdxImports?: string[]
|
||||||
|
maxLevel?: number
|
||||||
}
|
}
|
||||||
|
|
||||||
export type FormattingOptionsType = {
|
export type FormattingOptionsType = {
|
||||||
@@ -98,6 +99,8 @@ export type Parameter = {
|
|||||||
optional?: boolean
|
optional?: boolean
|
||||||
defaultValue?: string
|
defaultValue?: string
|
||||||
description?: string
|
description?: string
|
||||||
|
featureFlag?: string
|
||||||
|
expandable: boolean
|
||||||
children?: Parameter[]
|
children?: Parameter[]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -64,6 +64,10 @@ export function stripLineBreaks(str: string) {
|
|||||||
: ""
|
: ""
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function stripCode(str: string) {
|
||||||
|
return stripLineBreaks(str.replace("```ts", "").replace("```", ""))
|
||||||
|
}
|
||||||
|
|
||||||
export function camelToTitleCase(text: string) {
|
export function camelToTitleCase(text: string) {
|
||||||
return (
|
return (
|
||||||
text.substring(0, 1).toUpperCase() +
|
text.substring(0, 1).toUpperCase() +
|
||||||
|
|||||||
+42
-46
@@ -1,17 +1,21 @@
|
|||||||
import {
|
import { Comment, ReflectionKind, ReflectionType } from "typedoc"
|
||||||
Comment,
|
|
||||||
DeclarationReflection,
|
|
||||||
ReflectionKind,
|
|
||||||
ProjectReflection,
|
|
||||||
ReflectionType,
|
|
||||||
SomeType,
|
|
||||||
} from "typedoc"
|
|
||||||
import * as Handlebars from "handlebars"
|
import * as Handlebars from "handlebars"
|
||||||
import { stripLineBreaks } from "../utils"
|
import { stripCode, stripLineBreaks } from "../utils"
|
||||||
import { Parameter, ParameterStyle, ReflectionParameterType } from "../types"
|
import { Parameter, ParameterStyle, ReflectionParameterType } from "../types"
|
||||||
import getType, { getReflectionType } from "./type-utils"
|
import getType, { getReflectionType } from "./type-utils"
|
||||||
|
import { getTypeChildren } from "utils"
|
||||||
|
import { MarkdownTheme } from "../theme"
|
||||||
|
|
||||||
const MAX_LEVEL = 3
|
const ALLOWED_KINDS: ReflectionKind[] = [
|
||||||
|
ReflectionKind.EnumMember,
|
||||||
|
ReflectionKind.TypeParameter,
|
||||||
|
ReflectionKind.Property,
|
||||||
|
ReflectionKind.Parameter,
|
||||||
|
ReflectionKind.TypeAlias,
|
||||||
|
ReflectionKind.TypeLiteral,
|
||||||
|
ReflectionKind.Variable,
|
||||||
|
ReflectionKind.Reference,
|
||||||
|
]
|
||||||
|
|
||||||
export default function reflectionFormatter(
|
export default function reflectionFormatter(
|
||||||
reflection: ReflectionParameterType,
|
reflection: ReflectionParameterType,
|
||||||
@@ -57,7 +61,10 @@ export function reflectionListFormatter(
|
|||||||
|
|
||||||
const hasChildren = "children" in reflection && reflection.children?.length
|
const hasChildren = "children" in reflection && reflection.children?.length
|
||||||
|
|
||||||
if ((reflection.type || hasChildren) && level + 1 <= MAX_LEVEL) {
|
if (
|
||||||
|
(reflection.type || hasChildren) &&
|
||||||
|
level + 1 <= MarkdownTheme.MAX_LEVEL
|
||||||
|
) {
|
||||||
const children = hasChildren
|
const children = hasChildren
|
||||||
? reflection.children
|
? reflection.children
|
||||||
: getTypeChildren(reflection.type!, reflection.project)
|
: getTypeChildren(reflection.type!, reflection.project)
|
||||||
@@ -94,24 +101,32 @@ export function reflectionComponentFormatter(
|
|||||||
? getType(reflection.type, "object")
|
? getType(reflection.type, "object")
|
||||||
: getReflectionType(reflection, "object"),
|
: getReflectionType(reflection, "object"),
|
||||||
description: comments
|
description: comments
|
||||||
? stripLineBreaks(Handlebars.helpers.comments(comments))
|
? stripLineBreaks(Handlebars.helpers.comments(comments, true, false))
|
||||||
: "",
|
: "",
|
||||||
optional,
|
optional,
|
||||||
defaultValue,
|
defaultValue,
|
||||||
|
expandable: reflection.comment?.hasModifier(`@expandable`) || false,
|
||||||
|
featureFlag: Handlebars.helpers.featureFlag(reflection.comment),
|
||||||
children: [],
|
children: [],
|
||||||
}
|
}
|
||||||
|
|
||||||
const hasChildren = "children" in reflection && reflection.children?.length
|
const hasChildren = "children" in reflection && reflection.children?.length
|
||||||
|
|
||||||
if ((reflection.type || hasChildren) && level + 1 <= MAX_LEVEL) {
|
if (
|
||||||
|
(reflection.type || hasChildren) &&
|
||||||
|
level + 1 <= MarkdownTheme.MAX_LEVEL
|
||||||
|
) {
|
||||||
const children = hasChildren
|
const children = hasChildren
|
||||||
? reflection.children
|
? reflection.children
|
||||||
: getTypeChildren(reflection.type!, reflection.project)
|
: getTypeChildren(reflection.type!, reflection.project)
|
||||||
children?.forEach((childItem) => {
|
|
||||||
componentItem.children?.push(
|
children
|
||||||
reflectionComponentFormatter(childItem, level + 1)
|
?.filter((childItem) => childItem.kindOf(ALLOWED_KINDS))
|
||||||
)
|
.forEach((childItem) => {
|
||||||
})
|
componentItem.children?.push(
|
||||||
|
reflectionComponentFormatter(childItem, level + 1)
|
||||||
|
)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
return componentItem
|
return componentItem
|
||||||
@@ -195,11 +210,17 @@ export function getTableHeaders(
|
|||||||
export function getDefaultValue(
|
export function getDefaultValue(
|
||||||
parameter: ReflectionParameterType
|
parameter: ReflectionParameterType
|
||||||
): string | null {
|
): string | null {
|
||||||
if (!("defaultValue" in parameter)) {
|
const defaultComment = parameter.comment?.getTag(`@defaultValue`)
|
||||||
|
if (!("defaultValue" in parameter) && !defaultComment) {
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
return parameter.defaultValue && parameter.defaultValue !== "..."
|
|
||||||
? `\`${parameter.defaultValue}\``
|
return "defaultValue" in parameter &&
|
||||||
|
parameter.defaultValue !== undefined &&
|
||||||
|
parameter.defaultValue !== "..."
|
||||||
|
? `${parameter.defaultValue}`
|
||||||
|
: defaultComment
|
||||||
|
? defaultComment.content.map((content) => stripCode(content.text)).join()
|
||||||
: null
|
: null
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -246,28 +267,3 @@ function getItemExpandText(
|
|||||||
return "It accepts the following properties"
|
return "It accepts the following properties"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export function getTypeChildren(
|
|
||||||
reflectionType: SomeType,
|
|
||||||
project: ProjectReflection
|
|
||||||
) {
|
|
||||||
let children: DeclarationReflection[] = []
|
|
||||||
|
|
||||||
switch (reflectionType.type) {
|
|
||||||
case "reference":
|
|
||||||
// eslint-disable-next-line no-case-declarations
|
|
||||||
const referencedReflection = project?.getChildByName(reflectionType.name)
|
|
||||||
|
|
||||||
if (
|
|
||||||
referencedReflection instanceof DeclarationReflection &&
|
|
||||||
referencedReflection.children
|
|
||||||
) {
|
|
||||||
children = referencedReflection.children
|
|
||||||
}
|
|
||||||
break
|
|
||||||
case "array":
|
|
||||||
children = getTypeChildren(reflectionType.elementType, project)
|
|
||||||
}
|
|
||||||
|
|
||||||
return children
|
|
||||||
}
|
|
||||||
+15
-5
@@ -12,8 +12,7 @@ import {
|
|||||||
getDefaultValue,
|
getDefaultValue,
|
||||||
reflectionComponentFormatter,
|
reflectionComponentFormatter,
|
||||||
} from "./reflection-formatter"
|
} from "./reflection-formatter"
|
||||||
|
import { MarkdownTheme } from "../theme"
|
||||||
const MAX_LEVEL = 3
|
|
||||||
|
|
||||||
export function returnReflectionComponentFormatter(
|
export function returnReflectionComponentFormatter(
|
||||||
reflectionType: SomeType,
|
reflectionType: SomeType,
|
||||||
@@ -41,9 +40,14 @@ export function returnReflectionComponentFormatter(
|
|||||||
) || ""
|
) || ""
|
||||||
: "",
|
: "",
|
||||||
description: comment ? getReturnComment(comment) : "",
|
description: comment ? getReturnComment(comment) : "",
|
||||||
|
expandable: comment?.hasModifier(`@expandable`) || false,
|
||||||
|
featureFlag: Handlebars.helpers.featureFlag(comment),
|
||||||
children: [],
|
children: [],
|
||||||
})
|
})
|
||||||
if (!isOnlyVoid(reflectionType.typeArguments) && level + 1 <= MAX_LEVEL) {
|
if (
|
||||||
|
!isOnlyVoid(reflectionType.typeArguments) &&
|
||||||
|
level + 1 <= MarkdownTheme.MAX_LEVEL
|
||||||
|
) {
|
||||||
reflectionType.typeArguments.forEach((typeArg) => {
|
reflectionType.typeArguments.forEach((typeArg) => {
|
||||||
const typeArgComponent = returnReflectionComponentFormatter(
|
const typeArgComponent = returnReflectionComponentFormatter(
|
||||||
typeArg,
|
typeArg,
|
||||||
@@ -95,9 +99,11 @@ export function returnReflectionComponentFormatter(
|
|||||||
) || ""
|
) || ""
|
||||||
: "",
|
: "",
|
||||||
description: comment ? getReturnComment(comment) : "",
|
description: comment ? getReturnComment(comment) : "",
|
||||||
|
expandable: comment?.hasModifier(`@expandable`) || false,
|
||||||
|
featureFlag: Handlebars.helpers.featureFlag(comment),
|
||||||
children: [],
|
children: [],
|
||||||
})
|
})
|
||||||
if (level + 1 <= MAX_LEVEL) {
|
if (level + 1 <= MarkdownTheme.MAX_LEVEL) {
|
||||||
const elementTypeItem = returnReflectionComponentFormatter(
|
const elementTypeItem = returnReflectionComponentFormatter(
|
||||||
reflectionType.elementType,
|
reflectionType.elementType,
|
||||||
project,
|
project,
|
||||||
@@ -126,13 +132,15 @@ export function returnReflectionComponentFormatter(
|
|||||||
) || ""
|
) || ""
|
||||||
: "",
|
: "",
|
||||||
description: comment ? getReturnComment(comment) : "",
|
description: comment ? getReturnComment(comment) : "",
|
||||||
|
expandable: comment?.hasModifier(`@expandable`) || false,
|
||||||
|
featureFlag: Handlebars.helpers.featureFlag(comment),
|
||||||
children: [],
|
children: [],
|
||||||
})
|
})
|
||||||
pushTo = componentItem[parentKey - 1].children!
|
pushTo = componentItem[parentKey - 1].children!
|
||||||
} else {
|
} else {
|
||||||
pushTo = componentItem
|
pushTo = componentItem
|
||||||
}
|
}
|
||||||
if (level + 1 <= MAX_LEVEL) {
|
if (level + 1 <= MarkdownTheme.MAX_LEVEL) {
|
||||||
reflectionType.elements.forEach((element) => {
|
reflectionType.elements.forEach((element) => {
|
||||||
const elementTypeItem = returnReflectionComponentFormatter(
|
const elementTypeItem = returnReflectionComponentFormatter(
|
||||||
element,
|
element,
|
||||||
@@ -159,6 +167,8 @@ export function returnReflectionComponentFormatter(
|
|||||||
? getDefaultValue(reflectionType.declaration) || ""
|
? getDefaultValue(reflectionType.declaration) || ""
|
||||||
: "",
|
: "",
|
||||||
description: comment ? getReturnComment(comment) : "",
|
description: comment ? getReturnComment(comment) : "",
|
||||||
|
expandable: comment?.hasModifier(`@expandable`) || false,
|
||||||
|
featureFlag: Handlebars.helpers.featureFlag(comment),
|
||||||
children: [],
|
children: [],
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,2 +0,0 @@
|
|||||||
dist
|
|
||||||
.yarn
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
# typedoc-plugin-modules
|
|
||||||
|
|
||||||
A Typedoc plugin that includes helper plugins for documenting modules. The `resolve-reference-plugin` imitates the [`typedoc-plugin-missing-exports`](https://www.npmjs.com/package/typedoc-plugin-missing-exports) plugin.
|
|
||||||
|
|
||||||
## Configurations
|
|
||||||
|
|
||||||
Accepts the same options as the [`typedoc-plugin-missing-exports`](https://www.npmjs.com/package/typedoc-plugin-missing-exports) plugin.
|
|
||||||
|
|
||||||
## Build the Plugin
|
|
||||||
|
|
||||||
Before using any command that makes use of this plugin, make sure to run the `build` command:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
yarn build
|
|
||||||
```
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
import { Application } from "typedoc"
|
|
||||||
import { load as resolveReferencesPluginLoad } from "./resolve-references-plugin"
|
|
||||||
|
|
||||||
export function load(app: Application) {
|
|
||||||
resolveReferencesPluginLoad(app)
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
{
|
||||||
|
"name": "utils",
|
||||||
|
"private": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"publishConfig": {
|
||||||
|
"access": "public"
|
||||||
|
},
|
||||||
|
"main": "./dist/index.js",
|
||||||
|
"types": "./dist/index.d.ts",
|
||||||
|
"version": "0.0.0",
|
||||||
|
"scripts": {
|
||||||
|
"build": "yarn clean && tsc",
|
||||||
|
"lint": "eslint --ext .ts src",
|
||||||
|
"clean": "rimraf dist"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"typedoc": "0.25.x"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@types/node": "^16.11.10",
|
||||||
|
"typescript": "^4.6"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"rimraf": "^5.0.5"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
import {
|
||||||
|
DeclarationReflection,
|
||||||
|
ProjectReflection,
|
||||||
|
ReflectionKind,
|
||||||
|
} from "typedoc"
|
||||||
|
|
||||||
|
export function getProjectChild(
|
||||||
|
project: ProjectReflection,
|
||||||
|
childName: string
|
||||||
|
): DeclarationReflection | undefined {
|
||||||
|
let reflection: DeclarationReflection | undefined = project.getChildByName(
|
||||||
|
childName
|
||||||
|
) as DeclarationReflection
|
||||||
|
const splitChildName = childName.split(".")
|
||||||
|
|
||||||
|
if (!reflection && splitChildName.length > 1) {
|
||||||
|
reflection = getProjectChild(
|
||||||
|
project,
|
||||||
|
splitChildName[splitChildName.length - 1]
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
if (
|
||||||
|
!reflection &&
|
||||||
|
project.parent &&
|
||||||
|
project.parent instanceof ProjectReflection
|
||||||
|
) {
|
||||||
|
reflection = getProjectChild(project.parent, childName)
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!reflection) {
|
||||||
|
const modules = project.getChildrenByKind(ReflectionKind.Module)
|
||||||
|
for (const module of modules) {
|
||||||
|
reflection = module.getChildByName(childName) as DeclarationReflection
|
||||||
|
|
||||||
|
if (reflection) {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return reflection
|
||||||
|
}
|
||||||
@@ -0,0 +1,76 @@
|
|||||||
|
import { DeclarationReflection, ProjectReflection, SomeType } from "typedoc"
|
||||||
|
import { getProjectChild } from "./get-project-child"
|
||||||
|
|
||||||
|
export function getTypeChildren(
|
||||||
|
reflectionType: SomeType,
|
||||||
|
project: ProjectReflection | undefined
|
||||||
|
): DeclarationReflection[] {
|
||||||
|
let children: DeclarationReflection[] = []
|
||||||
|
|
||||||
|
switch (reflectionType.type) {
|
||||||
|
case "intersection":
|
||||||
|
reflectionType.types.forEach((intersectionType) => {
|
||||||
|
children.push(...getTypeChildren(intersectionType, project))
|
||||||
|
})
|
||||||
|
break
|
||||||
|
case "reference":
|
||||||
|
// eslint-disable-next-line no-case-declarations
|
||||||
|
const referencedReflection =
|
||||||
|
reflectionType.reflection && "children" in reflectionType.reflection
|
||||||
|
? reflectionType.reflection
|
||||||
|
: project
|
||||||
|
? getProjectChild(project, reflectionType.name)
|
||||||
|
: undefined
|
||||||
|
|
||||||
|
if (referencedReflection instanceof DeclarationReflection) {
|
||||||
|
if (referencedReflection.children) {
|
||||||
|
children = referencedReflection.children
|
||||||
|
} else if (reflectionType.typeArguments?.length) {
|
||||||
|
reflectionType.typeArguments.forEach((typeArgument, index) => {
|
||||||
|
if (reflectionType.name === "Omit" && index > 0) {
|
||||||
|
switch (typeArgument.type) {
|
||||||
|
case "literal":
|
||||||
|
removeChild(typeArgument.value?.toString(), children)
|
||||||
|
break
|
||||||
|
case "union":
|
||||||
|
typeArgument.types.forEach((childItem) => {
|
||||||
|
if (childItem.type === "literal") {
|
||||||
|
removeChild(childItem.value?.toString(), children)
|
||||||
|
} else {
|
||||||
|
getTypeChildren(childItem, project).forEach((child) => {
|
||||||
|
removeChild(child.name, children)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
const typeArgumentChildren = getTypeChildren(
|
||||||
|
typeArgument,
|
||||||
|
project
|
||||||
|
)
|
||||||
|
children.push(...typeArgumentChildren)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else if (referencedReflection.type) {
|
||||||
|
children = getTypeChildren(referencedReflection.type, project)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break
|
||||||
|
case "reflection":
|
||||||
|
children = reflectionType.declaration.children || [
|
||||||
|
reflectionType.declaration,
|
||||||
|
]
|
||||||
|
break
|
||||||
|
case "array":
|
||||||
|
children = getTypeChildren(reflectionType.elementType, project)
|
||||||
|
}
|
||||||
|
|
||||||
|
return children
|
||||||
|
}
|
||||||
|
|
||||||
|
function removeChild(name: unknown, children: DeclarationReflection[]) {
|
||||||
|
const childIndex = children.findIndex((child) => child.name === name)
|
||||||
|
if (childIndex !== -1) {
|
||||||
|
children.splice(childIndex, 1)
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
export * from "./get-type-children"
|
||||||
|
export * from "./get-project-child"
|
||||||
+4
-1
@@ -2,7 +2,10 @@
|
|||||||
"extends": "../../tsconfig",
|
"extends": "../../tsconfig",
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"outDir": "./dist",
|
"outDir": "./dist",
|
||||||
"rootDir": "./src"
|
"rootDir": "./src",
|
||||||
|
"declaration": true,
|
||||||
|
"declarationMap": true,
|
||||||
|
"esModuleInterop": true
|
||||||
},
|
},
|
||||||
"include": ["src"]
|
"include": ["src"]
|
||||||
}
|
}
|
||||||
+145
-22
@@ -325,6 +325,23 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"@eslint/eslintrc@npm:^2.1.3":
|
||||||
|
version: 2.1.3
|
||||||
|
resolution: "@eslint/eslintrc@npm:2.1.3"
|
||||||
|
dependencies:
|
||||||
|
ajv: ^6.12.4
|
||||||
|
debug: ^4.3.2
|
||||||
|
espree: ^9.6.0
|
||||||
|
globals: ^13.19.0
|
||||||
|
ignore: ^5.2.0
|
||||||
|
import-fresh: ^3.2.1
|
||||||
|
js-yaml: ^4.1.0
|
||||||
|
minimatch: ^3.1.2
|
||||||
|
strip-json-comments: ^3.1.1
|
||||||
|
checksum: f4103f4346126292eb15581c5a1d12bef03410fd3719dedbdb92e1f7031d46a5a2d60de8566790445d5d4b70b75ba050876799a11f5fff8265a91ee3fa77dab0
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"@eslint/js@npm:8.50.0":
|
"@eslint/js@npm:8.50.0":
|
||||||
version: 8.50.0
|
version: 8.50.0
|
||||||
resolution: "@eslint/js@npm:8.50.0"
|
resolution: "@eslint/js@npm:8.50.0"
|
||||||
@@ -332,6 +349,13 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"@eslint/js@npm:8.53.0":
|
||||||
|
version: 8.53.0
|
||||||
|
resolution: "@eslint/js@npm:8.53.0"
|
||||||
|
checksum: d29f6c207b2f6dc4ef174d16a3c07b0d3a17ca3d805680496ff267edd773e3bac41db4e7dcab622ca1970d892535bd19671e2a756d4eac75e96fd8c8dcdb619b
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"@fastify/busboy@npm:^2.0.0":
|
"@fastify/busboy@npm:^2.0.0":
|
||||||
version: 2.0.0
|
version: 2.0.0
|
||||||
resolution: "@fastify/busboy@npm:2.0.0"
|
resolution: "@fastify/busboy@npm:2.0.0"
|
||||||
@@ -359,6 +383,17 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"@humanwhocodes/config-array@npm:^0.11.13":
|
||||||
|
version: 0.11.13
|
||||||
|
resolution: "@humanwhocodes/config-array@npm:0.11.13"
|
||||||
|
dependencies:
|
||||||
|
"@humanwhocodes/object-schema": ^2.0.1
|
||||||
|
debug: ^4.1.1
|
||||||
|
minimatch: ^3.0.5
|
||||||
|
checksum: d76ca802d853366094d0e98ff0d0994117fc8eff96649cd357b15e469e428228f597cd2e929d54ab089051684949955f16ee905bb19f7b2f0446fb377157be7a
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"@humanwhocodes/module-importer@npm:^1.0.1":
|
"@humanwhocodes/module-importer@npm:^1.0.1":
|
||||||
version: 1.0.1
|
version: 1.0.1
|
||||||
resolution: "@humanwhocodes/module-importer@npm:1.0.1"
|
resolution: "@humanwhocodes/module-importer@npm:1.0.1"
|
||||||
@@ -373,6 +408,13 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"@humanwhocodes/object-schema@npm:^2.0.1":
|
||||||
|
version: 2.0.1
|
||||||
|
resolution: "@humanwhocodes/object-schema@npm:2.0.1"
|
||||||
|
checksum: 9dba24e59fdb4041829d92b693aacb778add3b6f612aaa9c0774f3b650c11a378cc64f042a59da85c11dae33df456580a3c36837b953541aed6ff94294f97fac
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"@isaacs/cliui@npm:^8.0.2":
|
"@isaacs/cliui@npm:^8.0.2":
|
||||||
version: 8.0.2
|
version: 8.0.2
|
||||||
resolution: "@isaacs/cliui@npm:8.0.2"
|
resolution: "@isaacs/cliui@npm:8.0.2"
|
||||||
@@ -777,6 +819,13 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"@ungap/structured-clone@npm:^1.2.0":
|
||||||
|
version: 1.2.0
|
||||||
|
resolution: "@ungap/structured-clone@npm:1.2.0"
|
||||||
|
checksum: 8209c937cb39119f44eb63cf90c0b73e7c754209a6411c707be08e50e29ee81356dca1a848a405c8bdeebfe2f5e4f831ad310ae1689eeef65e7445c090c6657d
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"acorn-jsx@npm:^5.3.2":
|
"acorn-jsx@npm:^5.3.2":
|
||||||
version: 5.3.2
|
version: 5.3.2
|
||||||
resolution: "acorn-jsx@npm:5.3.2"
|
resolution: "acorn-jsx@npm:5.3.2"
|
||||||
@@ -1360,6 +1409,54 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"eslint@npm:^8.53.0":
|
||||||
|
version: 8.53.0
|
||||||
|
resolution: "eslint@npm:8.53.0"
|
||||||
|
dependencies:
|
||||||
|
"@eslint-community/eslint-utils": ^4.2.0
|
||||||
|
"@eslint-community/regexpp": ^4.6.1
|
||||||
|
"@eslint/eslintrc": ^2.1.3
|
||||||
|
"@eslint/js": 8.53.0
|
||||||
|
"@humanwhocodes/config-array": ^0.11.13
|
||||||
|
"@humanwhocodes/module-importer": ^1.0.1
|
||||||
|
"@nodelib/fs.walk": ^1.2.8
|
||||||
|
"@ungap/structured-clone": ^1.2.0
|
||||||
|
ajv: ^6.12.4
|
||||||
|
chalk: ^4.0.0
|
||||||
|
cross-spawn: ^7.0.2
|
||||||
|
debug: ^4.3.2
|
||||||
|
doctrine: ^3.0.0
|
||||||
|
escape-string-regexp: ^4.0.0
|
||||||
|
eslint-scope: ^7.2.2
|
||||||
|
eslint-visitor-keys: ^3.4.3
|
||||||
|
espree: ^9.6.1
|
||||||
|
esquery: ^1.4.2
|
||||||
|
esutils: ^2.0.2
|
||||||
|
fast-deep-equal: ^3.1.3
|
||||||
|
file-entry-cache: ^6.0.1
|
||||||
|
find-up: ^5.0.0
|
||||||
|
glob-parent: ^6.0.2
|
||||||
|
globals: ^13.19.0
|
||||||
|
graphemer: ^1.4.0
|
||||||
|
ignore: ^5.2.0
|
||||||
|
imurmurhash: ^0.1.4
|
||||||
|
is-glob: ^4.0.0
|
||||||
|
is-path-inside: ^3.0.3
|
||||||
|
js-yaml: ^4.1.0
|
||||||
|
json-stable-stringify-without-jsonify: ^1.0.1
|
||||||
|
levn: ^0.4.1
|
||||||
|
lodash.merge: ^4.6.2
|
||||||
|
minimatch: ^3.1.2
|
||||||
|
natural-compare: ^1.4.0
|
||||||
|
optionator: ^0.9.3
|
||||||
|
strip-ansi: ^6.0.1
|
||||||
|
text-table: ^0.2.0
|
||||||
|
bin:
|
||||||
|
eslint: bin/eslint.js
|
||||||
|
checksum: c5cd0049488c0463dab7d97466767ca5a1d0b3b59d0a223122683dc8039ecea30b27867fb9e38906b4c1ab9d09ece8a802a6c540d8905016f1cc4b4bb27329af
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"espree@npm:^9.6.0, espree@npm:^9.6.1":
|
"espree@npm:^9.6.0, espree@npm:^9.6.1":
|
||||||
version: 9.6.1
|
version: 9.6.1
|
||||||
resolution: "espree@npm:9.6.1"
|
resolution: "espree@npm:9.6.1"
|
||||||
@@ -1596,7 +1693,7 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"glob@npm:^10.3.10":
|
"glob@npm:^10.3.10, glob@npm:^10.3.7":
|
||||||
version: 10.3.10
|
version: 10.3.10
|
||||||
resolution: "glob@npm:10.3.10"
|
resolution: "glob@npm:10.3.10"
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -2443,6 +2540,17 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"rimraf@npm:^5.0.5":
|
||||||
|
version: 5.0.5
|
||||||
|
resolution: "rimraf@npm:5.0.5"
|
||||||
|
dependencies:
|
||||||
|
glob: ^10.3.7
|
||||||
|
bin:
|
||||||
|
rimraf: dist/esm/bin.mjs
|
||||||
|
checksum: d50dbe724f33835decd88395b25ed35995077c60a50ae78ded06e0185418914e555817aad1b4243edbff2254548c2f6ad6f70cc850040bebb4da9e8cc016f586
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"run-applescript@npm:^5.0.0":
|
"run-applescript@npm:^5.0.0":
|
||||||
version: 5.0.0
|
version: 5.0.0
|
||||||
resolution: "run-applescript@npm:5.0.0"
|
resolution: "run-applescript@npm:5.0.0"
|
||||||
@@ -2484,12 +2592,12 @@ __metadata:
|
|||||||
typedoc: 0.25.1
|
typedoc: 0.25.1
|
||||||
typedoc-config: "*"
|
typedoc-config: "*"
|
||||||
typedoc-monorepo-link-types: ^0.0.2
|
typedoc-monorepo-link-types: ^0.0.2
|
||||||
|
typedoc-plugin-custom: "*"
|
||||||
typedoc-plugin-frontmatter: "*"
|
typedoc-plugin-frontmatter: "*"
|
||||||
typedoc-plugin-markdown: 3.16.0
|
typedoc-plugin-markdown: 3.16.0
|
||||||
typedoc-plugin-markdown-medusa: "*"
|
typedoc-plugin-markdown-medusa: "*"
|
||||||
typedoc-plugin-merge-modules: 5.1.0
|
typedoc-plugin-merge-modules: 5.1.0
|
||||||
typedoc-plugin-missing-exports: ^2.1.0
|
typedoc-plugin-missing-exports: ^2.1.0
|
||||||
typedoc-plugin-modules: "*"
|
|
||||||
typedoc-plugin-reference-excluder: 1.1.3
|
typedoc-plugin-reference-excluder: 1.1.3
|
||||||
typedoc-plugin-rename-defaults: ^0.6.6
|
typedoc-plugin-rename-defaults: ^0.6.6
|
||||||
typescript: ^5.2.2
|
typescript: ^5.2.2
|
||||||
@@ -2875,6 +2983,8 @@ __metadata:
|
|||||||
"typedoc-config@*, typedoc-config@workspace:packages/typedoc-config":
|
"typedoc-config@*, typedoc-config@workspace:packages/typedoc-config":
|
||||||
version: 0.0.0-use.local
|
version: 0.0.0-use.local
|
||||||
resolution: "typedoc-config@workspace:packages/typedoc-config"
|
resolution: "typedoc-config@workspace:packages/typedoc-config"
|
||||||
|
peerDependencies:
|
||||||
|
typedoc: 0.25.x
|
||||||
languageName: unknown
|
languageName: unknown
|
||||||
linkType: soft
|
linkType: soft
|
||||||
|
|
||||||
@@ -2887,18 +2997,31 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"typedoc-plugin-frontmatter@*, typedoc-plugin-frontmatter@workspace:packages/typedoc-plugin-frontmatter":
|
"typedoc-plugin-custom@*, typedoc-plugin-custom@workspace:packages/typedoc-plugin-custom":
|
||||||
version: 0.0.0-use.local
|
version: 0.0.0-use.local
|
||||||
resolution: "typedoc-plugin-frontmatter@workspace:packages/typedoc-plugin-frontmatter"
|
resolution: "typedoc-plugin-custom@workspace:packages/typedoc-plugin-custom"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@types/node": ^16.11.10
|
"@types/node": ^16.11.10
|
||||||
|
eslint: ^8.53.0
|
||||||
|
glob: ^10.3.10
|
||||||
|
typedoc-plugin-markdown: ^3.16.0
|
||||||
typescript: ^4.6
|
typescript: ^4.6
|
||||||
yaml: ^2.3.2
|
utils: "*"
|
||||||
|
yaml: ^2.3.3
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
typedoc: 0.25.x
|
typedoc: 0.25.x
|
||||||
languageName: unknown
|
languageName: unknown
|
||||||
linkType: soft
|
linkType: soft
|
||||||
|
|
||||||
|
"typedoc-plugin-frontmatter@npm:*":
|
||||||
|
version: 0.0.2
|
||||||
|
resolution: "typedoc-plugin-frontmatter@npm:0.0.2"
|
||||||
|
dependencies:
|
||||||
|
yaml: ^2.2.2
|
||||||
|
checksum: bd14645bf613dc58828c69004e53ce141a448e137a3deb5f8994a105d484c9b118731ed5ae3907541dda6cc034b30ab6e665b5d7b16cb9eb222df1c871d2fb21
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"typedoc-plugin-markdown-medusa@*, typedoc-plugin-markdown-medusa@workspace:packages/typedoc-plugin-markdown-medusa":
|
"typedoc-plugin-markdown-medusa@*, typedoc-plugin-markdown-medusa@workspace:packages/typedoc-plugin-markdown-medusa":
|
||||||
version: 0.0.0-use.local
|
version: 0.0.0-use.local
|
||||||
resolution: "typedoc-plugin-markdown-medusa@workspace:packages/typedoc-plugin-markdown-medusa"
|
resolution: "typedoc-plugin-markdown-medusa@workspace:packages/typedoc-plugin-markdown-medusa"
|
||||||
@@ -2907,6 +3030,7 @@ __metadata:
|
|||||||
copyfiles: ^2.4.1
|
copyfiles: ^2.4.1
|
||||||
handlebars: ^4.7.8
|
handlebars: ^4.7.8
|
||||||
typescript: ^4.6
|
typescript: ^4.6
|
||||||
|
utils: "*"
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
typedoc: 0.25.x
|
typedoc: 0.25.x
|
||||||
languageName: unknown
|
languageName: unknown
|
||||||
@@ -2941,19 +3065,6 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"typedoc-plugin-modules@*, typedoc-plugin-modules@workspace:packages/typedoc-plugin-modules":
|
|
||||||
version: 0.0.0-use.local
|
|
||||||
resolution: "typedoc-plugin-modules@workspace:packages/typedoc-plugin-modules"
|
|
||||||
dependencies:
|
|
||||||
"@types/node": ^16.11.10
|
|
||||||
glob: ^10.3.10
|
|
||||||
typedoc-plugin-markdown: ^3.16.0
|
|
||||||
typescript: ^4.6
|
|
||||||
peerDependencies:
|
|
||||||
typedoc: 0.25.x
|
|
||||||
languageName: unknown
|
|
||||||
linkType: soft
|
|
||||||
|
|
||||||
"typedoc-plugin-reference-excluder@npm:1.1.3":
|
"typedoc-plugin-reference-excluder@npm:1.1.3":
|
||||||
version: 1.1.3
|
version: 1.1.3
|
||||||
resolution: "typedoc-plugin-reference-excluder@npm:1.1.3"
|
resolution: "typedoc-plugin-reference-excluder@npm:1.1.3"
|
||||||
@@ -3097,6 +3208,18 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"utils@*, utils@workspace:packages/utils":
|
||||||
|
version: 0.0.0-use.local
|
||||||
|
resolution: "utils@workspace:packages/utils"
|
||||||
|
dependencies:
|
||||||
|
"@types/node": ^16.11.10
|
||||||
|
rimraf: ^5.0.5
|
||||||
|
typescript: ^4.6
|
||||||
|
peerDependencies:
|
||||||
|
typedoc: 0.25.x
|
||||||
|
languageName: unknown
|
||||||
|
linkType: soft
|
||||||
|
|
||||||
"uuid@npm:^8.3.2":
|
"uuid@npm:^8.3.2":
|
||||||
version: 8.3.2
|
version: 8.3.2
|
||||||
resolution: "uuid@npm:8.3.2"
|
resolution: "uuid@npm:8.3.2"
|
||||||
@@ -3219,10 +3342,10 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"yaml@npm:^2.3.2":
|
"yaml@npm:^2.2.2, yaml@npm:^2.3.3":
|
||||||
version: 2.3.2
|
version: 2.3.3
|
||||||
resolution: "yaml@npm:2.3.2"
|
resolution: "yaml@npm:2.3.3"
|
||||||
checksum: c2aac464015f037911c5b819475e81e52119e5495e3d43fe7cb82b5a84d59d66a86049dc85d8e90658636c1c04dde177ae196818deaf76c1bda4d34209d5c087
|
checksum: a0c56bf682159b0567e9cbbddf23efc2f6806f6450716d9be6ec5eb1af1b941e95c8d3dc9c47da20d1b6883a9d6c61e31cf98bb4b77ebca4396bf772657f2f00
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
|||||||
@@ -19,6 +19,9 @@ export interface AddressPayload {
|
|||||||
* Phone Number
|
* Phone Number
|
||||||
*/
|
*/
|
||||||
phone?: string
|
phone?: string
|
||||||
|
/**
|
||||||
|
* Company
|
||||||
|
*/
|
||||||
company?: string
|
company?: string
|
||||||
/**
|
/**
|
||||||
* Address line 1
|
* Address line 1
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { User } from "./User"
|
import type { User } from "./User"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The user's details.
|
||||||
|
*/
|
||||||
export interface AdminAuthRes {
|
export interface AdminAuthRes {
|
||||||
/**
|
/**
|
||||||
* User details.
|
* User details.
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { BatchJob } from "./BatchJob"
|
import type { BatchJob } from "./BatchJob"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The batch job's details.
|
||||||
|
*/
|
||||||
export interface AdminBatchJobRes {
|
export interface AdminBatchJobRes {
|
||||||
/**
|
/**
|
||||||
* Batch job details.
|
* Batch job details.
|
||||||
|
|||||||
@@ -3,6 +3,9 @@
|
|||||||
/* eslint-disable */
|
/* eslint-disable */
|
||||||
import { SetRelation, Merge } from "../core/ModelUtils"
|
import { SetRelation, Merge } from "../core/ModelUtils"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The access token of the user, if they're authenticated successfully.
|
||||||
|
*/
|
||||||
export interface AdminBearerAuthRes {
|
export interface AdminBearerAuthRes {
|
||||||
/**
|
/**
|
||||||
* Access token that can be used to send authenticated requests.
|
* Access token that can be used to send authenticated requests.
|
||||||
|
|||||||
@@ -5,6 +5,12 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { ProductCollection } from "./ProductCollection"
|
import type { ProductCollection } from "./ProductCollection"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The collection's details.
|
||||||
|
*/
|
||||||
export interface AdminCollectionsRes {
|
export interface AdminCollectionsRes {
|
||||||
|
/**
|
||||||
|
* Product Collection details.
|
||||||
|
*/
|
||||||
collection: SetRelation<ProductCollection, "products">
|
collection: SetRelation<ProductCollection, "products">
|
||||||
}
|
}
|
||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { Currency } from "./Currency"
|
import type { Currency } from "./Currency"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* List of currencies with pagination fields.
|
||||||
|
*/
|
||||||
export interface AdminCurrenciesListRes {
|
export interface AdminCurrenciesListRes {
|
||||||
/**
|
/**
|
||||||
* An array of currency details.
|
* An array of currency details.
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { Currency } from "./Currency"
|
import type { Currency } from "./Currency"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A currency's details.
|
||||||
|
*/
|
||||||
export interface AdminCurrenciesRes {
|
export interface AdminCurrenciesRes {
|
||||||
/**
|
/**
|
||||||
* Currency details.
|
* Currency details.
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { CustomerGroup } from "./CustomerGroup"
|
import type { CustomerGroup } from "./CustomerGroup"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The customer group's details.
|
||||||
|
*/
|
||||||
export interface AdminCustomerGroupsRes {
|
export interface AdminCustomerGroupsRes {
|
||||||
/**
|
/**
|
||||||
* Customer group details.
|
* Customer group details.
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { Customer } from "./Customer"
|
import type { Customer } from "./Customer"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of customers with pagination fields.
|
||||||
|
*/
|
||||||
export interface AdminCustomersListRes {
|
export interface AdminCustomersListRes {
|
||||||
/**
|
/**
|
||||||
* An array of customer details.
|
* An array of customer details.
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { Customer } from "./Customer"
|
import type { Customer } from "./Customer"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The customer's details.
|
||||||
|
*/
|
||||||
export interface AdminCustomersRes {
|
export interface AdminCustomersRes {
|
||||||
/**
|
/**
|
||||||
* Customer details.
|
* Customer details.
|
||||||
|
|||||||
+3
@@ -3,6 +3,9 @@
|
|||||||
/* eslint-disable */
|
/* eslint-disable */
|
||||||
import { SetRelation, Merge } from "../core/ModelUtils"
|
import { SetRelation, Merge } from "../core/ModelUtils"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The resources to remove.
|
||||||
|
*/
|
||||||
export interface AdminDeleteDiscountsDiscountConditionsConditionBatchReq {
|
export interface AdminDeleteDiscountsDiscountConditionsConditionBatchReq {
|
||||||
/**
|
/**
|
||||||
* The resources to be removed from the discount condition
|
* The resources to be removed from the discount condition
|
||||||
|
|||||||
@@ -3,6 +3,9 @@
|
|||||||
/* eslint-disable */
|
/* eslint-disable */
|
||||||
import { SetRelation, Merge } from "../core/ModelUtils"
|
import { SetRelation, Merge } from "../core/ModelUtils"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Deletion operation details
|
||||||
|
*/
|
||||||
export interface AdminDeleteProductsFromCollectionRes {
|
export interface AdminDeleteProductsFromCollectionRes {
|
||||||
/**
|
/**
|
||||||
* The ID of the collection
|
* The ID of the collection
|
||||||
|
|||||||
+3
@@ -3,6 +3,9 @@
|
|||||||
/* eslint-disable */
|
/* eslint-disable */
|
||||||
import { SetRelation, Merge } from "../core/ModelUtils"
|
import { SetRelation, Merge } from "../core/ModelUtils"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Product types to remove from the tax rates.
|
||||||
|
*/
|
||||||
export interface AdminDeleteTaxRatesTaxRateProductTypesReq {
|
export interface AdminDeleteTaxRatesTaxRateProductTypesReq {
|
||||||
/**
|
/**
|
||||||
* The IDs of the product types to remove their association with this tax rate.
|
* The IDs of the product types to remove their association with this tax rate.
|
||||||
|
|||||||
@@ -6,7 +6,13 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
import type { Discount } from "./Discount"
|
import type { Discount } from "./Discount"
|
||||||
import type { DiscountRule } from "./DiscountRule"
|
import type { DiscountRule } from "./DiscountRule"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of discounts with pagination fields.
|
||||||
|
*/
|
||||||
export interface AdminDiscountsListRes {
|
export interface AdminDiscountsListRes {
|
||||||
|
/**
|
||||||
|
* The list of discounts.
|
||||||
|
*/
|
||||||
discounts: Array<
|
discounts: Array<
|
||||||
Merge<
|
Merge<
|
||||||
SetRelation<Discount, "parent_discount" | "regions" | "rule">,
|
SetRelation<Discount, "parent_discount" | "regions" | "rule">,
|
||||||
|
|||||||
@@ -7,6 +7,9 @@ import type { Discount } from "./Discount"
|
|||||||
import type { DiscountRule } from "./DiscountRule"
|
import type { DiscountRule } from "./DiscountRule"
|
||||||
import type { Region } from "./Region"
|
import type { Region } from "./Region"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The discount's details.
|
||||||
|
*/
|
||||||
export interface AdminDiscountsRes {
|
export interface AdminDiscountsRes {
|
||||||
/**
|
/**
|
||||||
* Discount details.
|
* Discount details.
|
||||||
|
|||||||
@@ -7,6 +7,9 @@ import type { Cart } from "./Cart"
|
|||||||
import type { DraftOrder } from "./DraftOrder"
|
import type { DraftOrder } from "./DraftOrder"
|
||||||
import type { LineItem } from "./LineItem"
|
import type { LineItem } from "./LineItem"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of draft orders with pagination fields.
|
||||||
|
*/
|
||||||
export interface AdminDraftOrdersListRes {
|
export interface AdminDraftOrdersListRes {
|
||||||
/**
|
/**
|
||||||
* An array of draft order's details.
|
* An array of draft order's details.
|
||||||
|
|||||||
@@ -12,6 +12,9 @@ import type { ProductVariant } from "./ProductVariant"
|
|||||||
import type { Region } from "./Region"
|
import type { Region } from "./Region"
|
||||||
import type { ShippingMethod } from "./ShippingMethod"
|
import type { ShippingMethod } from "./ShippingMethod"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of draft orders.
|
||||||
|
*/
|
||||||
export interface AdminDraftOrdersRes {
|
export interface AdminDraftOrdersRes {
|
||||||
/**
|
/**
|
||||||
* Draft order's details.
|
* Draft order's details.
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { ExtendedStoreDTO } from "./ExtendedStoreDTO"
|
import type { ExtendedStoreDTO } from "./ExtendedStoreDTO"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The store's details with additional details like payment and tax providers.
|
||||||
|
*/
|
||||||
export interface AdminExtendedStoresRes {
|
export interface AdminExtendedStoresRes {
|
||||||
/**
|
/**
|
||||||
* Store details.
|
* Store details.
|
||||||
|
|||||||
+3
@@ -3,6 +3,9 @@
|
|||||||
/* eslint-disable */
|
/* eslint-disable */
|
||||||
import { SetRelation, Merge } from "../core/ModelUtils"
|
import { SetRelation, Merge } from "../core/ModelUtils"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of fulfillment options in a region.
|
||||||
|
*/
|
||||||
export interface AdminGetRegionsRegionFulfillmentOptionsRes {
|
export interface AdminGetRegionsRegionFulfillmentOptionsRes {
|
||||||
/**
|
/**
|
||||||
* Fulfillment providers details.
|
* Fulfillment providers details.
|
||||||
|
|||||||
+4
-1
@@ -5,9 +5,12 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { VariantInventory } from "./VariantInventory"
|
import type { VariantInventory } from "./VariantInventory"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The variant's inventory details.
|
||||||
|
*/
|
||||||
export interface AdminGetVariantsVariantInventoryRes {
|
export interface AdminGetVariantsVariantInventoryRes {
|
||||||
/**
|
/**
|
||||||
* The product variant's.
|
* The product variant's inventory details.
|
||||||
*/
|
*/
|
||||||
variant?: VariantInventory
|
variant?: VariantInventory
|
||||||
}
|
}
|
||||||
@@ -6,7 +6,13 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
import type { GiftCard } from "./GiftCard"
|
import type { GiftCard } from "./GiftCard"
|
||||||
import type { Region } from "./Region"
|
import type { Region } from "./Region"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of gift cards with pagination fields.
|
||||||
|
*/
|
||||||
export interface AdminGiftCardsListRes {
|
export interface AdminGiftCardsListRes {
|
||||||
|
/**
|
||||||
|
* The list of gift cards.
|
||||||
|
*/
|
||||||
gift_cards: Array<
|
gift_cards: Array<
|
||||||
Merge<
|
Merge<
|
||||||
SetRelation<GiftCard, "order" | "region">,
|
SetRelation<GiftCard, "order" | "region">,
|
||||||
|
|||||||
@@ -6,6 +6,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
import type { GiftCard } from "./GiftCard"
|
import type { GiftCard } from "./GiftCard"
|
||||||
import type { Region } from "./Region"
|
import type { Region } from "./Region"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The gift card's details.
|
||||||
|
*/
|
||||||
export interface AdminGiftCardsRes {
|
export interface AdminGiftCardsRes {
|
||||||
/**
|
/**
|
||||||
* A gift card's details.
|
* A gift card's details.
|
||||||
|
|||||||
+7
-1
@@ -5,12 +5,18 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { InventoryLevelDTO } from "./InventoryLevelDTO"
|
import type { InventoryLevelDTO } from "./InventoryLevelDTO"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Details of inventory items and their associated location levels.
|
||||||
|
*/
|
||||||
export interface AdminInventoryItemsLocationLevelsRes {
|
export interface AdminInventoryItemsLocationLevelsRes {
|
||||||
|
/**
|
||||||
|
* An inventory item's ID and associated location levels.
|
||||||
|
*/
|
||||||
inventory_item: {
|
inventory_item: {
|
||||||
/**
|
/**
|
||||||
* The id of the location
|
* The id of the location
|
||||||
*/
|
*/
|
||||||
id: any
|
id: string
|
||||||
/**
|
/**
|
||||||
* List of stock levels at a given location
|
* List of stock levels at a given location
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { InventoryItemDTO } from "./InventoryItemDTO"
|
import type { InventoryItemDTO } from "./InventoryItemDTO"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The inventory item's details.
|
||||||
|
*/
|
||||||
export interface AdminInventoryItemsRes {
|
export interface AdminInventoryItemsRes {
|
||||||
/**
|
/**
|
||||||
* Inventory Item details
|
* Inventory Item details
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { Invite } from "./Invite"
|
import type { Invite } from "./Invite"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of invites.
|
||||||
|
*/
|
||||||
export interface AdminListInvitesRes {
|
export interface AdminListInvitesRes {
|
||||||
/**
|
/**
|
||||||
* An array of invites
|
* An array of invites
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { Note } from "./Note"
|
import type { Note } from "./Note"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of notes with pagination fields.
|
||||||
|
*/
|
||||||
export interface AdminNotesListRes {
|
export interface AdminNotesListRes {
|
||||||
/**
|
/**
|
||||||
* An array of notes
|
* An array of notes
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { Note } from "./Note"
|
import type { Note } from "./Note"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The note's details.
|
||||||
|
*/
|
||||||
export interface AdminNotesRes {
|
export interface AdminNotesRes {
|
||||||
/**
|
/**
|
||||||
* Note details.
|
* Note details.
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { Notification } from "./Notification"
|
import type { Notification } from "./Notification"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The notification's details.
|
||||||
|
*/
|
||||||
export interface AdminNotificationsRes {
|
export interface AdminNotificationsRes {
|
||||||
/**
|
/**
|
||||||
* Notification details
|
* Notification details
|
||||||
|
|||||||
@@ -3,6 +3,9 @@
|
|||||||
/* eslint-disable */
|
/* eslint-disable */
|
||||||
import { SetRelation, Merge } from "../core/ModelUtils"
|
import { SetRelation, Merge } from "../core/ModelUtils"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The details of deleting order edit item changes.
|
||||||
|
*/
|
||||||
export interface AdminOrderEditItemChangeDeleteRes {
|
export interface AdminOrderEditItemChangeDeleteRes {
|
||||||
/**
|
/**
|
||||||
* The ID of the deleted Order Edit Item Change.
|
* The ID of the deleted Order Edit Item Change.
|
||||||
|
|||||||
@@ -7,6 +7,9 @@ import type { LineItem } from "./LineItem"
|
|||||||
import type { OrderEdit } from "./OrderEdit"
|
import type { OrderEdit } from "./OrderEdit"
|
||||||
import type { OrderItemChange } from "./OrderItemChange"
|
import type { OrderItemChange } from "./OrderItemChange"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of order edits with pagination fields.
|
||||||
|
*/
|
||||||
export interface AdminOrderEditsListRes {
|
export interface AdminOrderEditsListRes {
|
||||||
/**
|
/**
|
||||||
* An array of order edit details
|
* An array of order edit details
|
||||||
|
|||||||
@@ -7,6 +7,9 @@ import type { LineItem } from "./LineItem"
|
|||||||
import type { OrderEdit } from "./OrderEdit"
|
import type { OrderEdit } from "./OrderEdit"
|
||||||
import type { OrderItemChange } from "./OrderItemChange"
|
import type { OrderItemChange } from "./OrderItemChange"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The order edit details.
|
||||||
|
*/
|
||||||
export interface AdminOrderEditsRes {
|
export interface AdminOrderEditsRes {
|
||||||
/**
|
/**
|
||||||
* Order edit details
|
* Order edit details
|
||||||
|
|||||||
@@ -18,6 +18,9 @@ import type { ReturnItem } from "./ReturnItem"
|
|||||||
import type { ShippingMethod } from "./ShippingMethod"
|
import type { ShippingMethod } from "./ShippingMethod"
|
||||||
import type { Swap } from "./Swap"
|
import type { Swap } from "./Swap"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of orders with pagination fields.
|
||||||
|
*/
|
||||||
export interface AdminOrdersListRes {
|
export interface AdminOrdersListRes {
|
||||||
/**
|
/**
|
||||||
* An array of order details.
|
* An array of order details.
|
||||||
|
|||||||
@@ -18,6 +18,9 @@ import type { ReturnItem } from "./ReturnItem"
|
|||||||
import type { ShippingMethod } from "./ShippingMethod"
|
import type { ShippingMethod } from "./ShippingMethod"
|
||||||
import type { Swap } from "./Swap"
|
import type { Swap } from "./Swap"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The order's details.
|
||||||
|
*/
|
||||||
export interface AdminOrdersRes {
|
export interface AdminOrdersRes {
|
||||||
/**
|
/**
|
||||||
* Order details.
|
* Order details.
|
||||||
|
|||||||
@@ -3,6 +3,9 @@
|
|||||||
/* eslint-disable */
|
/* eslint-disable */
|
||||||
import { SetRelation, Merge } from "../core/ModelUtils"
|
import { SetRelation, Merge } from "../core/ModelUtils"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The details of deleting a payment collection.
|
||||||
|
*/
|
||||||
export interface AdminPaymentCollectionDeleteRes {
|
export interface AdminPaymentCollectionDeleteRes {
|
||||||
/**
|
/**
|
||||||
* The ID of the deleted Payment Collection.
|
* The ID of the deleted Payment Collection.
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { PaymentProvider } from "./PaymentProvider"
|
import type { PaymentProvider } from "./PaymentProvider"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of payment providers in a store.
|
||||||
|
*/
|
||||||
export interface AdminPaymentProvidersList {
|
export interface AdminPaymentProvidersList {
|
||||||
/**
|
/**
|
||||||
* An array of payment providers details.
|
* An array of payment providers details.
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { Payment } from "./Payment"
|
import type { Payment } from "./Payment"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The payment's details.
|
||||||
|
*/
|
||||||
export interface AdminPaymentRes {
|
export interface AdminPaymentRes {
|
||||||
/**
|
/**
|
||||||
* Payment details
|
* Payment details
|
||||||
|
|||||||
+1
-1
@@ -9,7 +9,7 @@ export interface AdminPostDiscountsDiscountConditionsConditionBatchReq {
|
|||||||
*/
|
*/
|
||||||
resources: Array<{
|
resources: Array<{
|
||||||
/**
|
/**
|
||||||
* The id of the item
|
* The ID of the item
|
||||||
*/
|
*/
|
||||||
id: string
|
id: string
|
||||||
}>
|
}>
|
||||||
|
|||||||
+3
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { Order } from "./Order"
|
import type { Order } from "./Order"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The order's details.
|
||||||
|
*/
|
||||||
export interface AdminPostDraftOrdersDraftOrderRegisterPaymentRes {
|
export interface AdminPostDraftOrdersDraftOrderRegisterPaymentRes {
|
||||||
/**
|
/**
|
||||||
* Order's details.
|
* Order's details.
|
||||||
|
|||||||
+15
@@ -3,6 +3,9 @@
|
|||||||
/* eslint-disable */
|
/* eslint-disable */
|
||||||
import { SetRelation, Merge } from "../core/ModelUtils"
|
import { SetRelation, Merge } from "../core/ModelUtils"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The attributes to update in an inventory item.
|
||||||
|
*/
|
||||||
export interface AdminPostInventoryItemsInventoryItemReq {
|
export interface AdminPostInventoryItemsInventoryItemReq {
|
||||||
/**
|
/**
|
||||||
* The Harmonized System code of the Inventory Item. May be used by Fulfillment Providers to pass customs information to shipping carriers.
|
* The Harmonized System code of the Inventory Item. May be used by Fulfillment Providers to pass customs information to shipping carriers.
|
||||||
@@ -36,6 +39,18 @@ export interface AdminPostInventoryItemsInventoryItemReq {
|
|||||||
* The length of the Inventory Item. May be used in shipping rate calculations.
|
* The length of the Inventory Item. May be used in shipping rate calculations.
|
||||||
*/
|
*/
|
||||||
length?: number
|
length?: number
|
||||||
|
/**
|
||||||
|
* The inventory item's title.
|
||||||
|
*/
|
||||||
|
title?: string
|
||||||
|
/**
|
||||||
|
* The inventory item's description.
|
||||||
|
*/
|
||||||
|
description?: string
|
||||||
|
/**
|
||||||
|
* The inventory item's thumbnail.
|
||||||
|
*/
|
||||||
|
thumbnail?: string
|
||||||
/**
|
/**
|
||||||
* Whether the item requires shipping.
|
* Whether the item requires shipping.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -68,6 +68,18 @@ export interface AdminPostInventoryItemsReq {
|
|||||||
* The material and composition that the Inventory Item is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.
|
* The material and composition that the Inventory Item is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.
|
||||||
*/
|
*/
|
||||||
material?: string
|
material?: string
|
||||||
|
/**
|
||||||
|
* The inventory item's title.
|
||||||
|
*/
|
||||||
|
title?: string
|
||||||
|
/**
|
||||||
|
* The inventory item's description.
|
||||||
|
*/
|
||||||
|
description?: string
|
||||||
|
/**
|
||||||
|
* The inventory item's thumbnail.
|
||||||
|
*/
|
||||||
|
thumbnail?: string
|
||||||
/**
|
/**
|
||||||
* An optional set of key-value pairs with additional information.
|
* An optional set of key-value pairs with additional information.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -3,6 +3,9 @@
|
|||||||
/* eslint-disable */
|
/* eslint-disable */
|
||||||
import { SetRelation, Merge } from "../core/ModelUtils"
|
import { SetRelation, Merge } from "../core/ModelUtils"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The details of the invite to be accepted.
|
||||||
|
*/
|
||||||
export interface AdminPostInvitesInviteAcceptReq {
|
export interface AdminPostInvitesInviteAcceptReq {
|
||||||
/**
|
/**
|
||||||
* The token of the invite to accept. This is a unique token generated when the invite was created or resent.
|
* The token of the invite to accept. This is a unique token generated when the invite was created or resent.
|
||||||
|
|||||||
+4
@@ -12,4 +12,8 @@ export interface AdminPostOrdersOrderClaimsClaimFulfillmentsReq {
|
|||||||
* If set to `true`, no notification will be sent to the customer related to this Claim.
|
* If set to `true`, no notification will be sent to the customer related to this Claim.
|
||||||
*/
|
*/
|
||||||
no_notification?: boolean
|
no_notification?: boolean
|
||||||
|
/**
|
||||||
|
* The ID of the fulfillment's location.
|
||||||
|
*/
|
||||||
|
location_id?: string
|
||||||
}
|
}
|
||||||
@@ -5,6 +5,9 @@ import { SetRelation, Merge } from "../core/ModelUtils"
|
|||||||
|
|
||||||
import type { AddressPayload } from "./AddressPayload"
|
import type { AddressPayload } from "./AddressPayload"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The details of the claim to be created.
|
||||||
|
*/
|
||||||
export interface AdminPostOrdersOrderClaimsReq {
|
export interface AdminPostOrdersOrderClaimsReq {
|
||||||
/**
|
/**
|
||||||
* The type of the Claim. This will determine how the Claim is treated: `replace` Claims will result in a Fulfillment with new items being created, while a `refund` Claim will refund the amount paid for the claimed items.
|
* The type of the Claim. This will determine how the Claim is treated: `replace` Claims will result in a Fulfillment with new items being created, while a `refund` Claim will refund the amount paid for the claimed items.
|
||||||
@@ -98,6 +101,10 @@ export interface AdminPostOrdersOrderClaimsReq {
|
|||||||
* If set to true no notification will be send related to this Claim.
|
* If set to true no notification will be send related to this Claim.
|
||||||
*/
|
*/
|
||||||
no_notification?: boolean
|
no_notification?: boolean
|
||||||
|
/**
|
||||||
|
* The ID of the location used for the associated return.
|
||||||
|
*/
|
||||||
|
return_location_id?: string
|
||||||
/**
|
/**
|
||||||
* An optional set of key-value pairs to hold additional information.
|
* An optional set of key-value pairs to hold additional information.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -3,6 +3,9 @@
|
|||||||
/* eslint-disable */
|
/* eslint-disable */
|
||||||
import { SetRelation, Merge } from "../core/ModelUtils"
|
import { SetRelation, Merge } from "../core/ModelUtils"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The details of the fulfillment to be created.
|
||||||
|
*/
|
||||||
export interface AdminPostOrdersOrderFulfillmentsReq {
|
export interface AdminPostOrdersOrderFulfillmentsReq {
|
||||||
/**
|
/**
|
||||||
* The Line Items to include in the Fulfillment.
|
* The Line Items to include in the Fulfillment.
|
||||||
@@ -17,6 +20,10 @@ export interface AdminPostOrdersOrderFulfillmentsReq {
|
|||||||
*/
|
*/
|
||||||
quantity: number
|
quantity: number
|
||||||
}>
|
}>
|
||||||
|
/**
|
||||||
|
* The ID of the location where the items will be fulfilled from.
|
||||||
|
*/
|
||||||
|
location_id?: string
|
||||||
/**
|
/**
|
||||||
* If set to `true`, no notification will be sent to the customer related to this fulfillment.
|
* If set to `true`, no notification will be sent to the customer related to this fulfillment.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import type { LineItem } from "./LineItem"
|
|||||||
|
|
||||||
export interface AdminPostOrdersOrderReq {
|
export interface AdminPostOrdersOrderReq {
|
||||||
/**
|
/**
|
||||||
* the email associated with the order
|
* The email associated with the order
|
||||||
*/
|
*/
|
||||||
email?: string
|
email?: string
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -54,4 +54,8 @@ export interface AdminPostOrdersOrderReturnsReq {
|
|||||||
* The amount to refund.
|
* The amount to refund.
|
||||||
*/
|
*/
|
||||||
refund?: number
|
refund?: number
|
||||||
|
/**
|
||||||
|
* The ID of the location used for the return.
|
||||||
|
*/
|
||||||
|
location_id?: string
|
||||||
}
|
}
|
||||||
+4
-1
@@ -3,6 +3,9 @@
|
|||||||
/* eslint-disable */
|
/* eslint-disable */
|
||||||
import { SetRelation, Merge } from "../core/ModelUtils"
|
import { SetRelation, Merge } from "../core/ModelUtils"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The shipping method's details.
|
||||||
|
*/
|
||||||
export interface AdminPostOrdersOrderShippingMethodsReq {
|
export interface AdminPostOrdersOrderShippingMethodsReq {
|
||||||
/**
|
/**
|
||||||
* The price (excluding VAT) that should be charged for the Shipping Method
|
* The price (excluding VAT) that should be charged for the Shipping Method
|
||||||
@@ -15,5 +18,5 @@ export interface AdminPostOrdersOrderShippingMethodsReq {
|
|||||||
/**
|
/**
|
||||||
* The data required for the Shipping Option to create a Shipping Method. This depends on the Fulfillment Provider.
|
* The data required for the Shipping Option to create a Shipping Method. This depends on the Fulfillment Provider.
|
||||||
*/
|
*/
|
||||||
date?: Record<string, any>
|
data?: Record<string, any>
|
||||||
}
|
}
|
||||||
@@ -51,6 +51,10 @@ export interface AdminPostOrdersOrderSwapsReq {
|
|||||||
*/
|
*/
|
||||||
quantity: number
|
quantity: number
|
||||||
}>
|
}>
|
||||||
|
/**
|
||||||
|
* The ID of the sales channel associated with the swap.
|
||||||
|
*/
|
||||||
|
sales_channel_id?: string
|
||||||
/**
|
/**
|
||||||
* An array of custom shipping options to potentially create a Shipping Method from to send the additional items.
|
* An array of custom shipping options to potentially create a Shipping Method from to send the additional items.
|
||||||
*/
|
*/
|
||||||
@@ -68,6 +72,10 @@ export interface AdminPostOrdersOrderSwapsReq {
|
|||||||
* If set to `true`, no notification will be sent to the customer related to this Swap.
|
* If set to `true`, no notification will be sent to the customer related to this Swap.
|
||||||
*/
|
*/
|
||||||
no_notification?: boolean
|
no_notification?: boolean
|
||||||
|
/**
|
||||||
|
* The ID of the location used for the associated return.
|
||||||
|
*/
|
||||||
|
return_location_id?: string
|
||||||
/**
|
/**
|
||||||
* If set to `true`, swaps can be completed with items out of stock
|
* If set to `true`, swaps can be completed with items out of stock
|
||||||
*/
|
*/
|
||||||
|
|||||||
+4
@@ -12,4 +12,8 @@ export interface AdminPostOrdersOrderSwapsSwapFulfillmentsReq {
|
|||||||
* If set to `true`, no notification will be sent to the customer related to this swap.
|
* If set to `true`, no notification will be sent to the customer related to this swap.
|
||||||
*/
|
*/
|
||||||
no_notification?: boolean
|
no_notification?: boolean
|
||||||
|
/**
|
||||||
|
* The ID of the fulfillment's location.
|
||||||
|
*/
|
||||||
|
location_id?: string
|
||||||
}
|
}
|
||||||
@@ -214,6 +214,10 @@ export interface AdminPostProductsProductReq {
|
|||||||
* The width of the Product.
|
* The width of the Product.
|
||||||
*/
|
*/
|
||||||
width?: number
|
width?: number
|
||||||
|
/**
|
||||||
|
* The Harmonized System code of the product variant.
|
||||||
|
*/
|
||||||
|
hs_code?: string
|
||||||
/**
|
/**
|
||||||
* The country of origin of the Product.
|
* The country of origin of the Product.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -20,6 +20,10 @@ export interface AdminPostReservationsReq {
|
|||||||
* The quantity to reserve.
|
* The quantity to reserve.
|
||||||
*/
|
*/
|
||||||
quantity: number
|
quantity: number
|
||||||
|
/**
|
||||||
|
* The reservation's description.
|
||||||
|
*/
|
||||||
|
description?: string
|
||||||
/**
|
/**
|
||||||
* An optional set of key-value pairs with additional information.
|
* An optional set of key-value pairs with additional information.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -12,6 +12,10 @@ export interface AdminPostReservationsReservationReq {
|
|||||||
* The quantity to reserve.
|
* The quantity to reserve.
|
||||||
*/
|
*/
|
||||||
quantity?: number
|
quantity?: number
|
||||||
|
/**
|
||||||
|
* The reservation's description.
|
||||||
|
*/
|
||||||
|
description?: string
|
||||||
/**
|
/**
|
||||||
* An optional set of key-value pairs with additional information.
|
* An optional set of key-value pairs with additional information.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -21,4 +21,8 @@ export interface AdminPostReturnsReturnReceiveReq {
|
|||||||
* The amount to refund.
|
* The amount to refund.
|
||||||
*/
|
*/
|
||||||
refund?: number
|
refund?: number
|
||||||
|
/**
|
||||||
|
* The ID of the location to return items from.
|
||||||
|
*/
|
||||||
|
location_id?: string
|
||||||
}
|
}
|
||||||
Loaded 100 of 748 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user