@powerlines/plugin-alloy 0.26.15 → 0.26.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -343,7 +343,7 @@ function TSDocAttributesTags(props) {
343
343
  }),
344
344
  (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Show, {
345
345
  get when() {
346
- return (0, _alloy_js_core_jsx_runtime.memo)(() => !!!(0, _stryke_type_checks_is_undefined.isUndefined)(type))() && !(0, _stryke_type_checks_is_undefined.isUndefined)(defaultValue);
346
+ return (0, _alloy_js_core_jsx_runtime.memo)(() => !!(runtime !== true && !(0, _stryke_type_checks_is_undefined.isUndefined)(type)))() && !(0, _stryke_type_checks_is_undefined.isUndefined)(defaultValue);
347
347
  },
348
348
  get children() {
349
349
  return (0, _alloy_js_core_jsx_runtime.createComponent)(TSDocDefaultValue, {
@@ -1 +1 @@
1
- {"version":3,"file":"tsdoc.d.cts","names":[],"sources":["../../../src/typescript/components/tsdoc.tsx"],"mappings":";;;;;;UAyCiB,UAAA,SAAmB,cAAA;EAClC,OAAA,GAAU,QAAA;AAAA;;;;iBAMI,KAAA,CAAM,KAAA,EAAO,UAAA,GAAU,QAAA;AAAA,UA6BtB,aAAA,SAAsB,cAAA;EACrC,GAAA;AAAA;;AA9BF;;iBAoCgB,QAAA,CAAS,KAAA,EAAO,aAAA,GAAa,QAAA;AAAA,UAgB5B,gBAAA;EACf,UAAA,EAAY,mBAAA;AAAA;;;;iBAME,WAAA,CAAY,KAAA,EAAO,gBAAA,GAAgB,QAAA;;;;iBA2BnC,UAAA,CAAW,KAAA,EAAO,cAAA,GAAc,QAAA;AAlDhD;;;AAAA,iBA+DgB,WAAA,CAAY,KAAA,EAAO,cAAA,GAAc,QAAA;;;;iBAajC,UAAA,CAAW,KAAA,EAAO,cAAA,GAAc,QAAA;;AA5DhD;;iBAyEgB,eAAA,CAAgB,KAAA,EAAO,cAAA,GAAc,QAAA;AAAA,UAUpC,sBAAA,SAA+B,cAAA;EAC9C,IAAA,EAAM,cAAA,GAAiB,kBAAA,GAAqB,mBAAA;EAC5C,YAAA;AAAA;;;;iBAMc,iBAAA,CAAkB,KAAA,EAAO,sBAAA,GAAsB,QAAA;;;;iBAkB/C,YAAA,CAAa,KAAA,EAAO,cAAA,GAAc,QAAA;;;;iBAelC,SAAA,CAAU,KAAA,EAAO,cAAA,GAAc,QAAA;AAAA,UAI9B,iBAAA,SAA0B,iBAAA;EA9FK;;;AAahD;;EAuFE,GAAA;AAAA;;;;iBAMc,YAAA,CAAa,KAAA,EAAO,iBAAA,GAAiB,QAAA;;AAhFrD;;iBA4GgB,aAAA,CAAA,GAAa,QAAA;;;;iBAOb,aAAA,CAAA,GAAa,QAAA;;;AAtG7B;iBA6GgB,WAAA,CAAA,GAAW,QAAA;;;;iBAOX,WAAA,CAAA,GAAW,QAAA;;;;iBAOX,YAAA,CAAA,GAAY,QAAA;AAAA,UAIX,wBAAA;EACf,IAAA,GAAO,cAAA,GAAiB,kBAAA,GAAqB,mBAAA;EAC7C,KAAA;EACA,KAAA;EACA,UAAA;EACA,MAAA;EACA,QAAA;EACA,QAAA;EACA,MAAA;EACA,MAAA;EACA,OAAA;EACA,YAAA;AAAA;;;;iBAMc,mBAAA,CAAoB,KAAA,EAAO,wBAAA,GAAwB,QAAA;AAAA,UAmFlD,eAAA;EACf,IAAA,EAAM,QAAA;EACN,QAAA,GAAW,QAAA;EACX,QAAA;EACA,YAAA,GAAe,QAAA;AAAA;;;AAnMjB;iBAyMgB,UAAA,CAAW,KAAA,EAAO,eAAA,GAAe,QAAA;;;;iBAiDjC,YAAA,CAAa,KAAA,EAAO,cAAA,GAAc,QAAA;;;;iBAOlC,WAAA,CAAY,KAAA,EAAO,cAAA,GAAc,QAAA;AAAA,UAIhC,gBAAA,SAAyB,cAAA;;;;;;;;AAlP1C;;;;;AAYA;EAoPE,MAAA;;;;;;;;AAxNF;;;;EAqOE,IAAA,EAAM,QAAA;AAAA;;;;iBAMQ,WAAA,CAAY,KAAA,EAAO,gBAAA,GAAgB,QAAA"}
1
+ {"version":3,"file":"tsdoc.d.cts","names":[],"sources":["../../../src/typescript/components/tsdoc.tsx"],"mappings":";;;;;;UAyCiB,UAAA,SAAmB,cAAA;EAClC,OAAA,GAAU,QAAA;AAAA;;;;iBAMI,KAAA,CAAM,KAAA,EAAO,UAAA,GAAU,QAAA;AAAA,UA6BtB,aAAA,SAAsB,cAAA;EACrC,GAAA;AAAA;;AA9BF;;iBAoCgB,QAAA,CAAS,KAAA,EAAO,aAAA,GAAa,QAAA;AAAA,UAgB5B,gBAAA;EACf,UAAA,EAAY,mBAAA;AAAA;;;;iBAME,WAAA,CAAY,KAAA,EAAO,gBAAA,GAAgB,QAAA;;;;iBA2BnC,UAAA,CAAW,KAAA,EAAO,cAAA,GAAc,QAAA;AAlDhD;;;AAAA,iBA+DgB,WAAA,CAAY,KAAA,EAAO,cAAA,GAAc,QAAA;;;;iBAajC,UAAA,CAAW,KAAA,EAAO,cAAA,GAAc,QAAA;;AA5DhD;;iBAyEgB,eAAA,CAAgB,KAAA,EAAO,cAAA,GAAc,QAAA;AAAA,UAUpC,sBAAA,SAA+B,cAAA;EAC9C,IAAA,EAAM,cAAA,GAAiB,kBAAA,GAAqB,mBAAA;EAC5C,YAAA;AAAA;;;;iBAMc,iBAAA,CAAkB,KAAA,EAAO,sBAAA,GAAsB,QAAA;;;;iBAkB/C,YAAA,CAAa,KAAA,EAAO,cAAA,GAAc,QAAA;;;;iBAelC,SAAA,CAAU,KAAA,EAAO,cAAA,GAAc,QAAA;AAAA,UAI9B,iBAAA,SAA0B,iBAAA;EA9FK;;;AAahD;;EAuFE,GAAA;AAAA;;;;iBAMc,YAAA,CAAa,KAAA,EAAO,iBAAA,GAAiB,QAAA;;AAhFrD;;iBA4GgB,aAAA,CAAA,GAAa,QAAA;;;;iBAOb,aAAA,CAAA,GAAa,QAAA;;;AAtG7B;iBA6GgB,WAAA,CAAA,GAAW,QAAA;;;;iBAOX,WAAA,CAAA,GAAW,QAAA;;;;iBAOX,YAAA,CAAA,GAAY,QAAA;AAAA,UAIX,wBAAA;EACf,IAAA,GAAO,cAAA,GAAiB,kBAAA,GAAqB,mBAAA;EAC7C,KAAA;EACA,KAAA;EACA,UAAA;EACA,MAAA;EACA,QAAA;EACA,QAAA;EACA,MAAA;EACA,MAAA;EACA,OAAA;EACA,YAAA;AAAA;;;;iBAMc,mBAAA,CAAoB,KAAA,EAAO,wBAAA,GAAwB,QAAA;AAAA,UAsFlD,eAAA;EACf,IAAA,EAAM,QAAA;EACN,QAAA,GAAW,QAAA;EACX,QAAA;EACA,YAAA,GAAe,QAAA;AAAA;;;AAtMjB;iBA4MgB,UAAA,CAAW,KAAA,EAAO,eAAA,GAAe,QAAA;;;;iBAiDjC,YAAA,CAAa,KAAA,EAAO,cAAA,GAAc,QAAA;;;;iBAOlC,WAAA,CAAY,KAAA,EAAO,cAAA,GAAc,QAAA;AAAA,UAIhC,gBAAA,SAAyB,cAAA;;;;;;;;AArP1C;;;;;AAYA;EAuPE,MAAA;;;;;;;;AA3NF;;;;EAwOE,IAAA,EAAM,QAAA;AAAA;;;;iBAMQ,WAAA,CAAY,KAAA,EAAO,gBAAA,GAAgB,QAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"tsdoc.d.mts","names":[],"sources":["../../../src/typescript/components/tsdoc.tsx"],"mappings":";;;;;;UAyCiB,UAAA,SAAmB,cAAA;EAClC,OAAA,GAAU,QAAA;AAAA;;;;iBAMI,KAAA,CAAM,KAAA,EAAO,UAAA,GAAU,QAAA;AAAA,UA6BtB,aAAA,SAAsB,cAAA;EACrC,GAAA;AAAA;;AA9BF;;iBAoCgB,QAAA,CAAS,KAAA,EAAO,aAAA,GAAa,QAAA;AAAA,UAgB5B,gBAAA;EACf,UAAA,EAAY,mBAAA;AAAA;;;;iBAME,WAAA,CAAY,KAAA,EAAO,gBAAA,GAAgB,QAAA;;;;iBA2BnC,UAAA,CAAW,KAAA,EAAO,cAAA,GAAc,QAAA;AAlDhD;;;AAAA,iBA+DgB,WAAA,CAAY,KAAA,EAAO,cAAA,GAAc,QAAA;;;;iBAajC,UAAA,CAAW,KAAA,EAAO,cAAA,GAAc,QAAA;;AA5DhD;;iBAyEgB,eAAA,CAAgB,KAAA,EAAO,cAAA,GAAc,QAAA;AAAA,UAUpC,sBAAA,SAA+B,cAAA;EAC9C,IAAA,EAAM,cAAA,GAAiB,kBAAA,GAAqB,mBAAA;EAC5C,YAAA;AAAA;;;;iBAMc,iBAAA,CAAkB,KAAA,EAAO,sBAAA,GAAsB,QAAA;;;;iBAkB/C,YAAA,CAAa,KAAA,EAAO,cAAA,GAAc,QAAA;;;;iBAelC,SAAA,CAAU,KAAA,EAAO,cAAA,GAAc,QAAA;AAAA,UAI9B,iBAAA,SAA0B,iBAAA;EA9FK;;;AAahD;;EAuFE,GAAA;AAAA;;;;iBAMc,YAAA,CAAa,KAAA,EAAO,iBAAA,GAAiB,QAAA;;AAhFrD;;iBA4GgB,aAAA,CAAA,GAAa,QAAA;;;;iBAOb,aAAA,CAAA,GAAa,QAAA;;;AAtG7B;iBA6GgB,WAAA,CAAA,GAAW,QAAA;;;;iBAOX,WAAA,CAAA,GAAW,QAAA;;;;iBAOX,YAAA,CAAA,GAAY,QAAA;AAAA,UAIX,wBAAA;EACf,IAAA,GAAO,cAAA,GAAiB,kBAAA,GAAqB,mBAAA;EAC7C,KAAA;EACA,KAAA;EACA,UAAA;EACA,MAAA;EACA,QAAA;EACA,QAAA;EACA,MAAA;EACA,MAAA;EACA,OAAA;EACA,YAAA;AAAA;;;;iBAMc,mBAAA,CAAoB,KAAA,EAAO,wBAAA,GAAwB,QAAA;AAAA,UAmFlD,eAAA;EACf,IAAA,EAAM,QAAA;EACN,QAAA,GAAW,QAAA;EACX,QAAA;EACA,YAAA,GAAe,QAAA;AAAA;;;AAnMjB;iBAyMgB,UAAA,CAAW,KAAA,EAAO,eAAA,GAAe,QAAA;;;;iBAiDjC,YAAA,CAAa,KAAA,EAAO,cAAA,GAAc,QAAA;;;;iBAOlC,WAAA,CAAY,KAAA,EAAO,cAAA,GAAc,QAAA;AAAA,UAIhC,gBAAA,SAAyB,cAAA;;;;;;;;AAlP1C;;;;;AAYA;EAoPE,MAAA;;;;;;;;AAxNF;;;;EAqOE,IAAA,EAAM,QAAA;AAAA;;;;iBAMQ,WAAA,CAAY,KAAA,EAAO,gBAAA,GAAgB,QAAA"}
1
+ {"version":3,"file":"tsdoc.d.mts","names":[],"sources":["../../../src/typescript/components/tsdoc.tsx"],"mappings":";;;;;;UAyCiB,UAAA,SAAmB,cAAA;EAClC,OAAA,GAAU,QAAA;AAAA;;;;iBAMI,KAAA,CAAM,KAAA,EAAO,UAAA,GAAU,QAAA;AAAA,UA6BtB,aAAA,SAAsB,cAAA;EACrC,GAAA;AAAA;;AA9BF;;iBAoCgB,QAAA,CAAS,KAAA,EAAO,aAAA,GAAa,QAAA;AAAA,UAgB5B,gBAAA;EACf,UAAA,EAAY,mBAAA;AAAA;;;;iBAME,WAAA,CAAY,KAAA,EAAO,gBAAA,GAAgB,QAAA;;;;iBA2BnC,UAAA,CAAW,KAAA,EAAO,cAAA,GAAc,QAAA;AAlDhD;;;AAAA,iBA+DgB,WAAA,CAAY,KAAA,EAAO,cAAA,GAAc,QAAA;;;;iBAajC,UAAA,CAAW,KAAA,EAAO,cAAA,GAAc,QAAA;;AA5DhD;;iBAyEgB,eAAA,CAAgB,KAAA,EAAO,cAAA,GAAc,QAAA;AAAA,UAUpC,sBAAA,SAA+B,cAAA;EAC9C,IAAA,EAAM,cAAA,GAAiB,kBAAA,GAAqB,mBAAA;EAC5C,YAAA;AAAA;;;;iBAMc,iBAAA,CAAkB,KAAA,EAAO,sBAAA,GAAsB,QAAA;;;;iBAkB/C,YAAA,CAAa,KAAA,EAAO,cAAA,GAAc,QAAA;;;;iBAelC,SAAA,CAAU,KAAA,EAAO,cAAA,GAAc,QAAA;AAAA,UAI9B,iBAAA,SAA0B,iBAAA;EA9FK;;;AAahD;;EAuFE,GAAA;AAAA;;;;iBAMc,YAAA,CAAa,KAAA,EAAO,iBAAA,GAAiB,QAAA;;AAhFrD;;iBA4GgB,aAAA,CAAA,GAAa,QAAA;;;;iBAOb,aAAA,CAAA,GAAa,QAAA;;;AAtG7B;iBA6GgB,WAAA,CAAA,GAAW,QAAA;;;;iBAOX,WAAA,CAAA,GAAW,QAAA;;;;iBAOX,YAAA,CAAA,GAAY,QAAA;AAAA,UAIX,wBAAA;EACf,IAAA,GAAO,cAAA,GAAiB,kBAAA,GAAqB,mBAAA;EAC7C,KAAA;EACA,KAAA;EACA,UAAA;EACA,MAAA;EACA,QAAA;EACA,QAAA;EACA,MAAA;EACA,MAAA;EACA,OAAA;EACA,YAAA;AAAA;;;;iBAMc,mBAAA,CAAoB,KAAA,EAAO,wBAAA,GAAwB,QAAA;AAAA,UAsFlD,eAAA;EACf,IAAA,EAAM,QAAA;EACN,QAAA,GAAW,QAAA;EACX,QAAA;EACA,YAAA,GAAe,QAAA;AAAA;;;AAtMjB;iBA4MgB,UAAA,CAAW,KAAA,EAAO,eAAA,GAAe,QAAA;;;;iBAiDjC,YAAA,CAAa,KAAA,EAAO,cAAA,GAAc,QAAA;;;;iBAOlC,WAAA,CAAY,KAAA,EAAO,cAAA,GAAc,QAAA;AAAA,UAIhC,gBAAA,SAAyB,cAAA;;;;;;;;AArP1C;;;;;AAYA;EAuPE,MAAA;;;;;;;;AA3NF;;;;EAwOE,IAAA,EAAM,QAAA;AAAA;;;;iBAMQ,WAAA,CAAY,KAAA,EAAO,gBAAA,GAAgB,QAAA"}
@@ -341,7 +341,7 @@ function TSDocAttributesTags(props) {
341
341
  }),
342
342
  createComponent(Show, {
343
343
  get when() {
344
- return memo(() => !!!isUndefined(type))() && !isUndefined(defaultValue);
344
+ return memo(() => !!(runtime !== true && !isUndefined(type)))() && !isUndefined(defaultValue);
345
345
  },
346
346
  get children() {
347
347
  return createComponent(TSDocDefaultValue, {
@@ -1 +1 @@
1
- {"version":3,"file":"tsdoc.mjs","names":[],"sources":["../../../src/typescript/components/tsdoc.tsx"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport {\n Children,\n childrenArray,\n computed,\n For,\n List,\n Prose,\n Show,\n splitProps\n} from \"@alloy-js/core\";\nimport { JSDocExampleProps, ParameterDescriptor } from \"@alloy-js/typescript\";\nimport { stringifyDefaultValue } from \"@powerlines/deepkit/utilities\";\nimport {\n ReflectionKind,\n ReflectionParameter,\n ReflectionProperty\n} from \"@powerlines/deepkit/vendor/type\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { isUndefined } from \"@stryke/type-checks/is-undefined\";\nimport { Spacing } from \"../../core/components/spacing\";\nimport { usePowerlinesSafe } from \"../../core/contexts/context\";\nimport { ComponentProps } from \"../../types/components\";\n\nexport interface TSDocProps extends ComponentProps {\n heading?: Children;\n}\n\n/**\n * Generates a TypeScript interface for the given reflection class.\n */\nexport function TSDoc(props: TSDocProps) {\n const [{ children, heading }] = splitProps(props, [\"children\", \"heading\"]);\n\n return (\n <>\n /**\n <align string=\" * \">\n <hbr />\n <Show when={!isUndefined(heading)}>{heading}</Show>\n <Show\n when={\n !isUndefined(children) &&\n childrenArray(() => children).filter(Boolean).length > 0\n }>\n <Show when={!isUndefined(heading)}>\n <Spacing />\n </Show>\n <List hardline={false} softline={true}>\n {childrenArray(() => children)}\n </List>\n </Show>\n </align>\n <hbr />\n {`*/`}\n <hbr />\n </>\n );\n}\n\nexport interface TSDocTagProps extends ComponentProps {\n tag: string;\n}\n\n/**\n * Create a TSDoc `@<props.tag>` tag.\n */\nexport function TSDocTag(props: TSDocTagProps) {\n const [{ children, tag }] = splitProps(props, [\"children\", \"tag\"]);\n\n return (\n <>\n {`@${tag} `}\n <Show when={Boolean(children)}>\n <align width={2}>\n <Prose>{children}</Prose>\n </align>\n </Show>\n <sbr />\n </>\n );\n}\n\nexport interface TSDocParamsProps {\n parameters: ParameterDescriptor[] | string[];\n}\n\n/**\n * A component that creates a TSDoc block with `@param` tags for each parameter.\n */\nexport function TSDocParams(props: TSDocParamsProps) {\n const parameters = normalizeParametersForDoc(props.parameters);\n\n return (\n <For each={parameters}>\n {param => (\n <TSDocParam name={param.name} optional={param.optional}>\n {param.doc}\n </TSDocParam>\n )}\n </For>\n );\n}\n\nfunction normalizeParametersForDoc(\n parameters: ParameterDescriptor[] | string[]\n): ParameterDescriptor[] {\n if (parameters.some(p => typeof p === \"string\")) {\n return [];\n }\n\n return parameters as ParameterDescriptor[];\n}\n\n/**\n * Create a TSDoc `@title` tag.\n */\nexport function TSDocTitle(props: ComponentProps) {\n const [{ children }, rest] = splitProps(props, [\"children\"]);\n\n return (\n <TSDocTag {...rest} tag=\"title\">\n {children}\n </TSDocTag>\n );\n}\n\n/**\n * Create a TSDoc `@domain` tag.\n */\nexport function TSDocDomain(props: ComponentProps) {\n const [{ children }, rest] = splitProps(props, [\"children\"]);\n\n return (\n <TSDocTag {...rest} tag=\"domain\">\n {children}\n </TSDocTag>\n );\n}\n\n/**\n * Create a TSDoc `@alias` tag.\n */\nexport function TSDocAlias(props: ComponentProps) {\n const [{ children }, rest] = splitProps(props, [\"children\"]);\n\n return (\n <TSDocTag {...rest} tag=\"alias\">\n {children}\n </TSDocTag>\n );\n}\n\n/**\n * Create a TSDoc `@permission` tag.\n */\nexport function TSDocPermission(props: ComponentProps) {\n const [{ children }, rest] = splitProps(props, [\"children\"]);\n\n return (\n <TSDocTag {...rest} tag=\"permission\">\n {children}\n </TSDocTag>\n );\n}\n\nexport interface TSDocDefaultValueProps extends ComponentProps {\n type: ReflectionKind | ReflectionProperty | ReflectionParameter;\n defaultValue: any;\n}\n\n/**\n * Create a TSDoc `@defaultValue` tag.\n */\nexport function TSDocDefaultValue(props: TSDocDefaultValueProps) {\n const [{ type, defaultValue }] = splitProps(props, [\"type\", \"defaultValue\"]);\n\n return (\n <>\n {\"@defaultValue \"}\n <Show when={!isUndefined(defaultValue)}>\n <align width={2}>\n <Prose>{stringifyDefaultValue(type, defaultValue)}</Prose>\n </align>\n </Show>\n </>\n );\n}\n\n/**\n * Create a TSDoc `@remarks` tag.\n */\nexport function TSDocRemarks(props: ComponentProps) {\n return (\n <>\n {\"@remarks \"}\n <hbr />\n <List hardline={false} softline={true}>\n {childrenArray(() => props.children)}\n </List>\n </>\n );\n}\n\n/**\n * Create a TSDoc `@see` tag.\n */\nexport function TSDocLink(props: ComponentProps) {\n return <TSDocTag {...props} tag=\"see\" />;\n}\n\nexport interface TSDocExampleProps extends JSDocExampleProps {\n /**\n * Whether the file is a TSX file.\n *\n * @defaultValue false\n */\n tsx?: boolean;\n}\n\n/**\n * Create a TSDoc `@example` tag.\n */\nexport function TSDocExample(props: TSDocExampleProps) {\n const [{ tsx, fenced = true, language, children }] = splitProps(props, [\n \"tsx\",\n \"fenced\",\n \"language\",\n \"children\"\n ]);\n\n return (\n <>\n {\"@example \"}\n <hbr />\n <Show when={fenced}>\n ```{language || (tsx ? \"tsx\" : \"ts\")}\n <hbr />\n </Show>\n {children}\n <Show when={fenced}>\n <hbr />\n ```\n </Show>\n </>\n );\n}\n\n/**\n * Create a TSDoc `@readonly` tag.\n */\nexport function TSDocReadonly() {\n return <TSDocTag tag=\"readonly\" />;\n}\n\n/**\n * Create a TSDoc `@internal` tag.\n */\nexport function TSDocInternal() {\n return <TSDocTag tag=\"internal\" />;\n}\n\n/**\n * Create a TSDoc `@ignore` tag.\n */\nexport function TSDocIgnore() {\n return <TSDocTag tag=\"ignore\" />;\n}\n\n/**\n * Create a TSDoc `@hidden` tag.\n */\nexport function TSDocHidden() {\n return <TSDocTag tag=\"hidden\" />;\n}\n\n/**\n * Create a TSDoc `@runtime` tag.\n */\nexport function TSDocRuntime() {\n return <TSDocTag tag=\"runtime\" />;\n}\n\nexport interface TSDocAttributesTagsProps {\n type?: ReflectionKind | ReflectionProperty | ReflectionParameter;\n title?: string;\n alias?: string[];\n permission?: string[];\n domain?: string;\n readonly?: boolean;\n internal?: boolean;\n ignore?: boolean;\n hidden?: boolean;\n runtime?: boolean;\n defaultValue?: any;\n}\n\n/**\n * Generates a TypeScript interface property for the given reflection class.\n */\nexport function TSDocAttributesTags(props: TSDocAttributesTagsProps) {\n const [\n {\n type,\n alias,\n permission,\n readonly,\n internal,\n ignore,\n hidden,\n runtime,\n defaultValue\n }\n ] = splitProps(props, [\n \"type\",\n \"alias\",\n \"permission\",\n \"readonly\",\n \"internal\",\n \"ignore\",\n \"hidden\",\n \"runtime\",\n \"defaultValue\"\n ]);\n\n const title = computed(() => props.title?.trim() || \"\");\n const domain = computed(() => props.domain?.trim() || \"\");\n\n return (\n <>\n <Show when={isSetString(title.value)}>\n <TSDocTitle>{title.value}</TSDocTitle>\n </Show>\n <Show\n when={\n !isUndefined(alias) &&\n alias.length > 0 &&\n alias.some(a => isSetString(a?.trim()))\n }>\n <For each={alias?.filter(a => isSetString(a?.trim())) ?? []}>\n {alias => <TSDocAlias>{alias}</TSDocAlias>}\n </For>\n </Show>\n <Show when={isSetString(domain.value)}>\n <TSDocDomain>{domain.value}</TSDocDomain>\n </Show>\n <Show\n when={\n !isUndefined(permission) &&\n permission.length > 0 &&\n permission.some(p => isSetString(p?.trim()))\n }>\n <For each={permission?.filter(p => isSetString(p?.trim())) ?? []}>\n {permission => <TSDocPermission>{permission}</TSDocPermission>}\n </For>\n </Show>\n <Show when={readonly === true}>\n <TSDocReadonly />\n </Show>\n <Show when={internal === true}>\n <TSDocInternal />\n </Show>\n <Show when={ignore === true}>\n <TSDocIgnore />\n </Show>\n <Show when={hidden === true}>\n <TSDocHidden />\n </Show>\n <Show when={runtime === true}>\n <TSDocRuntime />\n </Show>\n <Show when={!isUndefined(type) && !isUndefined(defaultValue)}>\n <TSDocDefaultValue\n type={\n type as ReflectionKind | ReflectionProperty | ReflectionParameter\n }\n defaultValue={defaultValue}\n />\n </Show>\n </>\n );\n}\n\nexport interface TSDocParamProps {\n name: Children;\n children?: Children;\n optional?: boolean;\n defaultValue?: Children;\n}\n\n/**\n * Create a TSDoc parameter set off with `@param`.\n */\nexport function TSDocParam(props: TSDocParamProps) {\n return (\n <>\n {\"@param \"}\n <TSDocParamName\n name={props.name}\n optional={props.optional}\n defaultValue={props.defaultValue}\n />\n <TSDocParamDescription children={props.children} />\n </>\n );\n}\n\ninterface TSDocParamNameProps {\n name: Children;\n optional?: boolean;\n defaultValue?: Children;\n}\n\nfunction TSDocParamName(props: TSDocParamNameProps) {\n return (\n <>\n <Show when={props.optional}>{\"[\"}</Show>\n {props.name}\n <Show when={Boolean(props.defaultValue)}>={props.defaultValue}</Show>\n <Show when={props.optional}>{\"]\"}</Show>\n </>\n );\n}\n\ninterface TSDocParamDescriptionProps {\n children?: Children;\n}\n\nfunction TSDocParamDescription(props: TSDocParamDescriptionProps) {\n return (\n <Show when={Boolean(props.children)}>\n {\" - \"}\n <align width={2}>\n <Prose>{props.children}</Prose>\n </align>\n </Show>\n );\n}\n\n/**\n * Create a TSDoc `@returns` tag.\n */\nexport function TSDocReturns(props: ComponentProps) {\n return <TSDocTag {...props} tag=\"returns\" />;\n}\n\n/**\n * Create a TSDoc `@throws` tag.\n */\nexport function TSDocThrows(props: ComponentProps) {\n return <TSDocTag {...props} tag=\"throws\" />;\n}\n\nexport interface TSDocModuleProps extends ComponentProps {\n /**\n * The prefix for the builtin module name\n *\n * @remarks\n * This value is populated from the Powerlines configuration output builtin prefix by default.\n *\n * @example\n * ```ts\n * /**\n * @module powerlines:my-module\n * \\/\n * ```\n */\n prefix?: string;\n\n /**\n * The name of the module\n *\n * @remarks\n * This will be used in the `@module` tag as well as the import path for the module, e.g. `storm:<name>`.\n *\n * @example\n * ```ts\n * import { MyModule } from \"powerlines:my-module\";\n * ```\n */\n name: Children;\n}\n\n/**\n * Generates a TSDoc `@module` tag for the given module name.\n */\nexport function TSDocModule(props: TSDocModuleProps) {\n const [{ children, name, prefix }] = splitProps(props, [\n \"children\",\n \"name\",\n \"prefix\"\n ]);\n\n const context = usePowerlinesSafe();\n\n return (\n <>\n /**\n <align string=\" * \">\n <hbr />\n <Show when={Boolean(children)}>\n <List hardline={false} softline={true}>\n {childrenArray(() => children)}\n </List>\n <Spacing />\n </Show>\n {\"@module \"}\n {prefix || context?.config?.framework || \"powerlines\"}:{name}\n </align>\n <hbr />\n {` */`}\n </>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"tsdoc.mjs","names":[],"sources":["../../../src/typescript/components/tsdoc.tsx"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport {\n Children,\n childrenArray,\n computed,\n For,\n List,\n Prose,\n Show,\n splitProps\n} from \"@alloy-js/core\";\nimport { JSDocExampleProps, ParameterDescriptor } from \"@alloy-js/typescript\";\nimport { stringifyDefaultValue } from \"@powerlines/deepkit/utilities\";\nimport {\n ReflectionKind,\n ReflectionParameter,\n ReflectionProperty\n} from \"@powerlines/deepkit/vendor/type\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { isUndefined } from \"@stryke/type-checks/is-undefined\";\nimport { Spacing } from \"../../core/components/spacing\";\nimport { usePowerlinesSafe } from \"../../core/contexts/context\";\nimport { ComponentProps } from \"../../types/components\";\n\nexport interface TSDocProps extends ComponentProps {\n heading?: Children;\n}\n\n/**\n * Generates a TypeScript interface for the given reflection class.\n */\nexport function TSDoc(props: TSDocProps) {\n const [{ children, heading }] = splitProps(props, [\"children\", \"heading\"]);\n\n return (\n <>\n /**\n <align string=\" * \">\n <hbr />\n <Show when={!isUndefined(heading)}>{heading}</Show>\n <Show\n when={\n !isUndefined(children) &&\n childrenArray(() => children).filter(Boolean).length > 0\n }>\n <Show when={!isUndefined(heading)}>\n <Spacing />\n </Show>\n <List hardline={false} softline={true}>\n {childrenArray(() => children)}\n </List>\n </Show>\n </align>\n <hbr />\n {`*/`}\n <hbr />\n </>\n );\n}\n\nexport interface TSDocTagProps extends ComponentProps {\n tag: string;\n}\n\n/**\n * Create a TSDoc `@<props.tag>` tag.\n */\nexport function TSDocTag(props: TSDocTagProps) {\n const [{ children, tag }] = splitProps(props, [\"children\", \"tag\"]);\n\n return (\n <>\n {`@${tag} `}\n <Show when={Boolean(children)}>\n <align width={2}>\n <Prose>{children}</Prose>\n </align>\n </Show>\n <sbr />\n </>\n );\n}\n\nexport interface TSDocParamsProps {\n parameters: ParameterDescriptor[] | string[];\n}\n\n/**\n * A component that creates a TSDoc block with `@param` tags for each parameter.\n */\nexport function TSDocParams(props: TSDocParamsProps) {\n const parameters = normalizeParametersForDoc(props.parameters);\n\n return (\n <For each={parameters}>\n {param => (\n <TSDocParam name={param.name} optional={param.optional}>\n {param.doc}\n </TSDocParam>\n )}\n </For>\n );\n}\n\nfunction normalizeParametersForDoc(\n parameters: ParameterDescriptor[] | string[]\n): ParameterDescriptor[] {\n if (parameters.some(p => typeof p === \"string\")) {\n return [];\n }\n\n return parameters as ParameterDescriptor[];\n}\n\n/**\n * Create a TSDoc `@title` tag.\n */\nexport function TSDocTitle(props: ComponentProps) {\n const [{ children }, rest] = splitProps(props, [\"children\"]);\n\n return (\n <TSDocTag {...rest} tag=\"title\">\n {children}\n </TSDocTag>\n );\n}\n\n/**\n * Create a TSDoc `@domain` tag.\n */\nexport function TSDocDomain(props: ComponentProps) {\n const [{ children }, rest] = splitProps(props, [\"children\"]);\n\n return (\n <TSDocTag {...rest} tag=\"domain\">\n {children}\n </TSDocTag>\n );\n}\n\n/**\n * Create a TSDoc `@alias` tag.\n */\nexport function TSDocAlias(props: ComponentProps) {\n const [{ children }, rest] = splitProps(props, [\"children\"]);\n\n return (\n <TSDocTag {...rest} tag=\"alias\">\n {children}\n </TSDocTag>\n );\n}\n\n/**\n * Create a TSDoc `@permission` tag.\n */\nexport function TSDocPermission(props: ComponentProps) {\n const [{ children }, rest] = splitProps(props, [\"children\"]);\n\n return (\n <TSDocTag {...rest} tag=\"permission\">\n {children}\n </TSDocTag>\n );\n}\n\nexport interface TSDocDefaultValueProps extends ComponentProps {\n type: ReflectionKind | ReflectionProperty | ReflectionParameter;\n defaultValue: any;\n}\n\n/**\n * Create a TSDoc `@defaultValue` tag.\n */\nexport function TSDocDefaultValue(props: TSDocDefaultValueProps) {\n const [{ type, defaultValue }] = splitProps(props, [\"type\", \"defaultValue\"]);\n\n return (\n <>\n {\"@defaultValue \"}\n <Show when={!isUndefined(defaultValue)}>\n <align width={2}>\n <Prose>{stringifyDefaultValue(type, defaultValue)}</Prose>\n </align>\n </Show>\n </>\n );\n}\n\n/**\n * Create a TSDoc `@remarks` tag.\n */\nexport function TSDocRemarks(props: ComponentProps) {\n return (\n <>\n {\"@remarks \"}\n <hbr />\n <List hardline={false} softline={true}>\n {childrenArray(() => props.children)}\n </List>\n </>\n );\n}\n\n/**\n * Create a TSDoc `@see` tag.\n */\nexport function TSDocLink(props: ComponentProps) {\n return <TSDocTag {...props} tag=\"see\" />;\n}\n\nexport interface TSDocExampleProps extends JSDocExampleProps {\n /**\n * Whether the file is a TSX file.\n *\n * @defaultValue false\n */\n tsx?: boolean;\n}\n\n/**\n * Create a TSDoc `@example` tag.\n */\nexport function TSDocExample(props: TSDocExampleProps) {\n const [{ tsx, fenced = true, language, children }] = splitProps(props, [\n \"tsx\",\n \"fenced\",\n \"language\",\n \"children\"\n ]);\n\n return (\n <>\n {\"@example \"}\n <hbr />\n <Show when={fenced}>\n ```{language || (tsx ? \"tsx\" : \"ts\")}\n <hbr />\n </Show>\n {children}\n <Show when={fenced}>\n <hbr />\n ```\n </Show>\n </>\n );\n}\n\n/**\n * Create a TSDoc `@readonly` tag.\n */\nexport function TSDocReadonly() {\n return <TSDocTag tag=\"readonly\" />;\n}\n\n/**\n * Create a TSDoc `@internal` tag.\n */\nexport function TSDocInternal() {\n return <TSDocTag tag=\"internal\" />;\n}\n\n/**\n * Create a TSDoc `@ignore` tag.\n */\nexport function TSDocIgnore() {\n return <TSDocTag tag=\"ignore\" />;\n}\n\n/**\n * Create a TSDoc `@hidden` tag.\n */\nexport function TSDocHidden() {\n return <TSDocTag tag=\"hidden\" />;\n}\n\n/**\n * Create a TSDoc `@runtime` tag.\n */\nexport function TSDocRuntime() {\n return <TSDocTag tag=\"runtime\" />;\n}\n\nexport interface TSDocAttributesTagsProps {\n type?: ReflectionKind | ReflectionProperty | ReflectionParameter;\n title?: string;\n alias?: string[];\n permission?: string[];\n domain?: string;\n readonly?: boolean;\n internal?: boolean;\n ignore?: boolean;\n hidden?: boolean;\n runtime?: boolean;\n defaultValue?: any;\n}\n\n/**\n * Generates a TypeScript interface property for the given reflection class.\n */\nexport function TSDocAttributesTags(props: TSDocAttributesTagsProps) {\n const [\n {\n type,\n alias,\n permission,\n readonly,\n internal,\n ignore,\n hidden,\n runtime,\n defaultValue\n }\n ] = splitProps(props, [\n \"type\",\n \"alias\",\n \"permission\",\n \"readonly\",\n \"internal\",\n \"ignore\",\n \"hidden\",\n \"runtime\",\n \"defaultValue\"\n ]);\n\n const title = computed(() => props.title?.trim() || \"\");\n const domain = computed(() => props.domain?.trim() || \"\");\n\n return (\n <>\n <Show when={isSetString(title.value)}>\n <TSDocTitle>{title.value}</TSDocTitle>\n </Show>\n <Show\n when={\n !isUndefined(alias) &&\n alias.length > 0 &&\n alias.some(a => isSetString(a?.trim()))\n }>\n <For each={alias?.filter(a => isSetString(a?.trim())) ?? []}>\n {alias => <TSDocAlias>{alias}</TSDocAlias>}\n </For>\n </Show>\n <Show when={isSetString(domain.value)}>\n <TSDocDomain>{domain.value}</TSDocDomain>\n </Show>\n <Show\n when={\n !isUndefined(permission) &&\n permission.length > 0 &&\n permission.some(p => isSetString(p?.trim()))\n }>\n <For each={permission?.filter(p => isSetString(p?.trim())) ?? []}>\n {permission => <TSDocPermission>{permission}</TSDocPermission>}\n </For>\n </Show>\n <Show when={readonly === true}>\n <TSDocReadonly />\n </Show>\n <Show when={internal === true}>\n <TSDocInternal />\n </Show>\n <Show when={ignore === true}>\n <TSDocIgnore />\n </Show>\n <Show when={hidden === true}>\n <TSDocHidden />\n </Show>\n <Show when={runtime === true}>\n <TSDocRuntime />\n </Show>\n <Show\n when={\n runtime !== true && !isUndefined(type) && !isUndefined(defaultValue)\n }>\n <TSDocDefaultValue\n type={\n type as ReflectionKind | ReflectionProperty | ReflectionParameter\n }\n defaultValue={defaultValue}\n />\n </Show>\n </>\n );\n}\n\nexport interface TSDocParamProps {\n name: Children;\n children?: Children;\n optional?: boolean;\n defaultValue?: Children;\n}\n\n/**\n * Create a TSDoc parameter set off with `@param`.\n */\nexport function TSDocParam(props: TSDocParamProps) {\n return (\n <>\n {\"@param \"}\n <TSDocParamName\n name={props.name}\n optional={props.optional}\n defaultValue={props.defaultValue}\n />\n <TSDocParamDescription children={props.children} />\n </>\n );\n}\n\ninterface TSDocParamNameProps {\n name: Children;\n optional?: boolean;\n defaultValue?: Children;\n}\n\nfunction TSDocParamName(props: TSDocParamNameProps) {\n return (\n <>\n <Show when={props.optional}>{\"[\"}</Show>\n {props.name}\n <Show when={Boolean(props.defaultValue)}>={props.defaultValue}</Show>\n <Show when={props.optional}>{\"]\"}</Show>\n </>\n );\n}\n\ninterface TSDocParamDescriptionProps {\n children?: Children;\n}\n\nfunction TSDocParamDescription(props: TSDocParamDescriptionProps) {\n return (\n <Show when={Boolean(props.children)}>\n {\" - \"}\n <align width={2}>\n <Prose>{props.children}</Prose>\n </align>\n </Show>\n );\n}\n\n/**\n * Create a TSDoc `@returns` tag.\n */\nexport function TSDocReturns(props: ComponentProps) {\n return <TSDocTag {...props} tag=\"returns\" />;\n}\n\n/**\n * Create a TSDoc `@throws` tag.\n */\nexport function TSDocThrows(props: ComponentProps) {\n return <TSDocTag {...props} tag=\"throws\" />;\n}\n\nexport interface TSDocModuleProps extends ComponentProps {\n /**\n * The prefix for the builtin module name\n *\n * @remarks\n * This value is populated from the Powerlines configuration output builtin prefix by default.\n *\n * @example\n * ```ts\n * /**\n * @module powerlines:my-module\n * \\/\n * ```\n */\n prefix?: string;\n\n /**\n * The name of the module\n *\n * @remarks\n * This will be used in the `@module` tag as well as the import path for the module, e.g. `storm:<name>`.\n *\n * @example\n * ```ts\n * import { MyModule } from \"powerlines:my-module\";\n * ```\n */\n name: Children;\n}\n\n/**\n * Generates a TSDoc `@module` tag for the given module name.\n */\nexport function TSDocModule(props: TSDocModuleProps) {\n const [{ children, name, prefix }] = splitProps(props, [\n \"children\",\n \"name\",\n \"prefix\"\n ]);\n\n const context = usePowerlinesSafe();\n\n return (\n <>\n /**\n <align string=\" * \">\n <hbr />\n <Show when={Boolean(children)}>\n <List hardline={false} softline={true}>\n {childrenArray(() => children)}\n </List>\n <Spacing />\n </Show>\n {\"@module \"}\n {prefix || context?.config?.framework || \"powerlines\"}:{name}\n </align>\n <hbr />\n {` */`}\n </>\n );\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@powerlines/plugin-alloy",
3
- "version": "0.26.15",
3
+ "version": "0.26.16",
4
4
  "type": "module",
5
5
  "description": "A package containing various Alloy framework components and helper utilities.",
6
6
  "repository": {
@@ -893,8 +893,8 @@
893
893
  "@alloy-js/json": "0.23.0-dev.2",
894
894
  "@alloy-js/markdown": "0.23.0-dev.1",
895
895
  "@alloy-js/typescript": "0.23.0-dev.4",
896
- "@powerlines/deepkit": "^0.8.0",
897
- "@powerlines/plugin-babel": "^0.12.392",
896
+ "@powerlines/deepkit": "^0.8.1",
897
+ "@powerlines/plugin-babel": "^0.12.393",
898
898
  "@storm-software/config-tools": "^1.189.75",
899
899
  "@stryke/capnp": "^0.12.92",
900
900
  "@stryke/convert": "^0.6.58",
@@ -907,14 +907,14 @@
907
907
  "@stryke/types": "^0.11.3",
908
908
  "@stryke/unique-id": "^0.3.77",
909
909
  "defu": "^6.1.7",
910
- "powerlines": "^0.42.37",
910
+ "powerlines": "^0.42.38",
911
911
  "prettier": "^3.8.2",
912
912
  "unctx": "^2.5.0"
913
913
  },
914
914
  "devDependencies": {
915
- "@powerlines/plugin-plugin": "^0.12.347",
915
+ "@powerlines/plugin-plugin": "^0.12.348",
916
916
  "@types/node": "^25.6.0"
917
917
  },
918
918
  "publishConfig": { "access": "public" },
919
- "gitHead": "9104f99f87d0f09319d19a8eb8e1b8ac2def7cd0"
919
+ "gitHead": "9cec72510580fd8ee2cafc64ccae8ca65e7746a4"
920
920
  }