diff --git a/README.md b/README.md index da24c56b7..e1e639aa9 100644 --- a/README.md +++ b/README.md @@ -24,6 +24,14 @@ Component controls specification with typescript definitions Typescript definitions of the component-controls specification. +Includes definitions for: + +- [Story](#story) +- [Stories](#stories) +- [ControlTypes](#controltypes) +- [ComponentControl](#componentcontrol-1) +- [PropTypes](#proptypes) +- and more... diff --git a/core/specification/README.md b/core/specification/README.md index bdea527d9..525233dba 100644 --- a/core/specification/README.md +++ b/core/specification/README.md @@ -3,13 +3,57 @@ - [Overview](#overview) - [Installation](#installation) - [API](#api) - - [NodePath](#nodepath) - - [Scope](#scope) - - [ParserPluginWithOptions](#parserpluginwithoptions) + - [ArgUsageLocation](#argusagelocation) + - [SourceIdentifier](#sourceidentifier) + - [Stories](#stories) + - [StoriesKind](#storieskind) + - [StoriesStore](#storiesstore) + - [Story](#story) + - [StoryArgument](#storyargument) + - [StoryParameters](#storyparameters) + - [StoryArguments](#storyarguments) + - [ControlTypes](#controltypes) + - [ComponentControlArray](#componentcontrolarray) + - [ComponentControlBase](#componentcontrolbase) + - [ComponentControlBoolean](#componentcontrolboolean) + - [ComponentControlButton](#componentcontrolbutton) + - [ComponentControlColor](#componentcontrolcolor) + - [ComponentControlData](#componentcontroldata) + - [ComponentControlDate](#componentcontroldate) + - [ComponentControlFiles](#componentcontrolfiles) + - [ComponentControlNumber](#componentcontrolnumber) + - [ComponentControlObject](#componentcontrolobject) + - [ComponentControlOptions](#componentcontroloptions) + - [ComponentControlText](#componentcontroltext) + - [ComponentControls](#componentcontrols) + - [ComponentControl](#componentcontrol) + - [OptionsListType](#optionslisttype) + - [OptionsValueType](#optionsvaluetype) + - [ComponentInfo](#componentinfo) + - [PropType](#proptype) + - [PropTypes](#proptypes) + - [StoryComponent](#storycomponent) + - [TypeInformation](#typeinformation) + - [TypeValue](#typevalue) + - [PropsInfoExtractorFunction](#propsinfoextractorfunction) + - [CodeLocation](#codelocation) + - [CodePosition](#codeposition) + - [Repository](#repository) + - [StoryArguments](#storyarguments-1) + - [ComponentControl](#componentcontrol-1) + - [TypeValue](#typevalue-1) # Overview Typescript definitions of the component-controls specification. +Includes definitions for: + +- [Story](#story) +- [Stories](#stories) +- [ControlTypes](#controltypes) +- [ComponentControl](#componentcontrol-1) +- [PropTypes](#proptypes) +- and more... # Installation @@ -21,40 +65,631 @@ $ npm install @component-controls/specification --save-dev # API - + -## NodePath +## ArgUsageLocation + +_defined in [@component-controls/specification/src/stories.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/stories.ts#L12)_ + + + +### properties + +| Name | Type | Description | +| ------ | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `loc*` | [CodeLocation](#codelocation) | where in the story source code is the argument used code location is relative to the start of the story | +| `name` | [SourceIdentifier](#sourceidentifier) | optional name for the usage of the argument example: export const story = ({ value }) => <Story value={{ age: value }} />; in this example the name will be 'age' | + +## SourceIdentifier + +an identifier/variable.argument in the source code + +_defined in [@component-controls/specification/src/stories.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/stories.ts#L8)_ + + + +### properties + +| Name | Type | Description | +| ------- | ----------------------------- | ----------- | +| `loc` | [CodeLocation](#codelocation) | | +| `name*` | string | | + +## Stories + +map of stories. The id is compatible with CSF story ids + +_defined in [@component-controls/specification/src/stories.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/stories.ts#L132)_ + +`id`\*: string: [Story](#story) + +## StoriesKind + +a group of stories. Usually multiple stories are in one csf file +and the 'group' is the default export +in the case of MDX stories, the kind is crated using a <Meta /> tag + +_defined in [@component-controls/specification/src/stories.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/stories.ts#L141)_ + +`name`\*: string: any + +### properties + +| Name | Type | Description | +| ---------------- | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | +| `component` | string \| object | id for component associated with the stories file | +| `components*` | | lookup into the global store.components since multiple components of the same name can be used example: \['Button']: 'c:/myapp/Button.tsx' | +| `controls` | [ComponentControls](#componentcontrols) | object of key/value pairs specifying the controls for the stories file this will apply to all the stories in the file | +| `excludeStories` | string\[] \| [RegExp](#regexp) | list of stories to exclude from the stories file can also use regexp match | +| `fileName` | string | file name of the file of stories | +| `includeStories` | string\[] \| [RegExp](#regexp) | list of stories to include in the stories file can also use regexp match | +| `parameters` | [StoryParameters](#storyparameters) | configuration parameters passed to the story groups configured either as CSF default export or MDX <Meta /> tag | +| `repository` | [Repository](#repository) | project repository information | +| `source` | string | source code of the entire file of stories | +| `stories` | string\[] | list of stories contained in the file/groups | +| `subcomponents` | string\[] \| object\[] | multiple components option | +| `title*` | string | title of the groups of stories (or kind). used to generate CSF story ids | + +## StoriesStore + +store of stories information in memory afte the loader is applied + +_defined in [@component-controls/specification/src/stories.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/stories.ts#L218)_ + + + +### properties + +| Name | Type | Description | +| ------------- | ---- | ----------- | +| `components*` | | | +| `kinds*` | | | +| `stories*` | | | + +## Story + +Story interface - usually extracted by the AST instrumenting loader + +_defined in [@component-controls/specification/src/stories.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/stories.ts#L67)_ + + + +### properties + +| Name | Type | Description | +| --------------- | --------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `arguments` | [StoryArguments](#storyarguments) | arguments pass to a CSF story eg \`export const story = props => <Story {...props} />;\` | +| `component` | string \| object | id for component associated with the story | +| `controls` | [ComponentControls](#componentcontrols) | object of key/value pairs specifying the controls for the story | +| `id` | string | csf id of the story | +| `kind` | string | title of the file/group of stories | +| `loc` | [CodeLocation](#codelocation) | location in the source file of the story definition | +| `name*` | string | name of the Story. | +| `parameters` | [StoryParameters](#storyparameters) | configuration parameters passed to the story - either CSF or MDX | +| `renderFn` | **function** (`controls`\*: **context**: any): any; | render function for the story | +| `source` | string | the source code of the story, extracted byt the AST instrumenting loaders | +| `subcomponents` | | multiple components option | +| `subtitle` | string | optional story subtitle property | + +## StoryArgument + +arguments passed to the 'story' function, extracted by an AST loader + +_defined in [@component-controls/specification/src/stories.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/stories.ts#L30)_ + + + +### properties + +| Name | Type | Description | +| -------- | ------------------------------------------- | ------------------------------------------------------------------------------------------ | +| `loc` | [CodeLocation](#codelocation) | location of the argument declaration, relative to the story source code | +| `name` | string | the original name of the argument | +| `usage` | [ArgUsageLocation](#argusagelocation)\[] | list of locations where the argument is used in the body of the story | +| `value*` | string \| [StoryArguments](#storyarguments) | either the name used (or a variable alias), or an array of sub-arguments ({ name: alias }) | + +## StoryParameters + +list of configuration parameters for stories and 'kinds' +can be specified either through CSF or MDX tags + +_defined in [@component-controls/specification/src/stories.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/stories.ts#L60)_ + +`name`\*: string: any + +## StoryArguments + +list of story arguments. Each argument can be a deconstructed argument of itself +the first argument are the control 'values' + +_defined in [@component-controls/specification/src/stories.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/stories.ts#L54)_ + +[StoryArgument](#storyargument)\[] + +## ControlTypes + +Control field types +examples are provided for the different types: + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L6)_ + + + +### properties + +| Name | Type | Description | +| ---------- | -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `ARRAY*` | **function** ARRAY | items: { type: csf.ControlTypes.ARRAY, label: 'Items', value: \['Laptop', 'Book', 'Whiskey'], }, | +| `BOOLEAN*` | **function** BOOLEAN | nice: { type: csf.ControlTypes.BOOLEAN, label: 'Nice', value: true, }, | +| `BUTTON*` | **function** BUTTON | button: { type: csf.ControlTypes.BUTTON, onClick: () => { ... code to modify some variables } }, | +| `COLOR*` | **function** COLOR | color: { type: 'color', value: '#000000', }, | +| `DATE*` | **function** DATE | birthday: { type: csf.ControlTypes.DATE, label: 'Birthday', value: new Date(), }, | +| `FILES*` | **function** FILES | images: { type: csf.ControlTypes.FILES, label: 'Happy Picture', accept: 'image/\*', value: \[ 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QA/4ePzL8AAAAHdElNRQfiARwMCyEWcOFPAAAAP0lEQVQoz8WQMQoAIAwDL/7/z3GwghSp4KDZyiUpBMCYUgd8rehtH16/l3XewgU2KAzapjXBbNFaPS6lDMlKB6OiDv3iAH1OAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE4LTAxLTI4VDEyOjExOjMzLTA3OjAwlAHQBgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxOC0wMS0yOFQxMjoxMTozMy0wNzowMOVcaLoAAAAASUVORK5CYII=', ], }, | +| `NUMBER*` | **function** NUMBER | age: { type: csf.ControlTypes.NUMBER, label: 'Age', value: 78, range: true, min: 0, max: 90, step: 5, }, | +| `OBJECT*` | **function** OBJECT | otherStyles: { type: csf.ControlTypes.OBJECT, label: 'Styles', value: { border: '2px dashed silver', borderRadius: 10, padding: 10, }, }, | +| `OPTIONS*` | **function** OPTIONS | fruit: { type: csf.ControlTypes.OPTIONS, label: 'Fruit', value: 'apple', options: { Apple: 'apple', Banana: 'banana', Cherry: 'cherry', }, }, | +| `TEXT*` | **function** TEXT | userName: { type: csf.ControlTypes.TEXT, label: 'Name', value: 'Storyteller', }, | + +## ComponentControlArray + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L241)_ + +** extends ComponentControlBase<string\[]>** + +### properties + +| Name | Type | Description | +| ----------- | -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| `data` | [ComponentControlData](#componentcontroldata) \| null \| false | helper information to generate random data will be used in conjunction with faker.js datacan be set to false, if the control should not be randomized | +| `groupId` | string | allows grouping of the properties in a property editor for example different editor tabs | +| `hidden` | boolean | hide the property editor for this property will only use the value | +| `hideLabel` | boolean | hide the label from the property editor | +| `label` | string | label to display next to the field editor by default uses the property name itself | +| `order` | number | allows custom sorting of the properties if 'order' is not provided, the props will be sorted by the order/key of the object (unreliable) | +| `separator` | string | the array items separator, by default comma | +| `type*` | [ARRAY](#array) | | +| `value` | string\[] | a default value for the property | + +## ComponentControlBase + +Base inteface for creating control types +All new property typs should extend this interface and support + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L136)_ + + + +### properties + +| Name | Type | Description | +| ----------- | -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| `data` | [ComponentControlData](#componentcontroldata) \| null \| false | helper information to generate random data will be used in conjunction with faker.js datacan be set to false, if the control should not be randomized | +| `groupId` | string | allows grouping of the properties in a property editor for example different editor tabs | +| `hidden` | boolean | hide the property editor for this property will only use the value | +| `hideLabel` | boolean | hide the label from the property editor | +| `label` | string | label to display next to the field editor by default uses the property name itself | +| `order` | number | allows custom sorting of the properties if 'order' is not provided, the props will be sorted by the order/key of the object (unreliable) | +| `type*` | [ControlTypes](#controltypes) | | +| `value` | | a default value for the property | + +## ComponentControlBoolean + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L208)_ + +** extends ComponentControlBase<boolean>** + +### properties + +| Name | Type | Description | +| ----------- | -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| `data` | [ComponentControlData](#componentcontroldata) \| null \| false | helper information to generate random data will be used in conjunction with faker.js datacan be set to false, if the control should not be randomized | +| `groupId` | string | allows grouping of the properties in a property editor for example different editor tabs | +| `hidden` | boolean | hide the property editor for this property will only use the value | +| `hideLabel` | boolean | hide the label from the property editor | +| `label` | string | label to display next to the field editor by default uses the property name itself | +| `order` | number | allows custom sorting of the properties if 'order' is not provided, the props will be sorted by the order/key of the object (unreliable) | +| `type*` | [BOOLEAN](#boolean) | | +| `value` | boolean | a default value for the property | + +## ComponentControlButton + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L254)_ + +** extends ComponentControlBase<>** + +### properties + +| Name | Type | Description | +| ----------- | --------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| `data` | [ComponentControlData](#componentcontroldata) \| null \| false | helper information to generate random data will be used in conjunction with faker.js datacan be set to false, if the control should not be randomized | +| `groupId` | string | allows grouping of the properties in a property editor for example different editor tabs | +| `hidden` | boolean | hide the property editor for this property will only use the value | +| `hideLabel` | boolean | hide the label from the property editor | +| `label` | string | label to display next to the field editor by default uses the property name itself | +| `onClick` | **function** (`prop`\*: [ComponentControlButton](#componentcontrolbutton)): void; | for button type fields, an onClick handler | +| `order` | number | allows custom sorting of the properties if 'order' is not provided, the props will be sorted by the order/key of the object (unreliable) | +| `type*` | [BUTTON](#button) | | +| `value` | | a default value for the property | + +## ComponentControlColor + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L212)_ + +** extends ComponentControlBase<string>** + +### properties + +| Name | Type | Description | +| ----------- | -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| `data` | [ComponentControlData](#componentcontroldata) \| null \| false | helper information to generate random data will be used in conjunction with faker.js datacan be set to false, if the control should not be randomized | +| `groupId` | string | allows grouping of the properties in a property editor for example different editor tabs | +| `hidden` | boolean | hide the property editor for this property will only use the value | +| `hideLabel` | boolean | hide the label from the property editor | +| `label` | string | label to display next to the field editor by default uses the property name itself | +| `order` | number | allows custom sorting of the properties if 'order' is not provided, the props will be sorted by the order/key of the object (unreliable) | +| `type*` | [COLOR](#color) | | +| `value` | string | a default value for the property | + +## ComponentControlData + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L114)_ + + + +### properties + +| Name | Type | Description | +| --------- | ------ | ------------------------------------------------------------------------------------------------------------------------------ | +| `name*` | string | 'name' for generating random data from faker.js usually comprised of two parts, separated by a dot example 'internet.avatar' | +| `options` | | options to be passe to the random data generators example { min: 10, max: 20 } | + +## ComponentControlDate + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L216)_ + +** extends ComponentControlBase<[Date](#date)>** + +### properties + +| Name | Type | Description | +| ------------ | -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| `data` | [ComponentControlData](#componentcontroldata) \| null \| false | helper information to generate random data will be used in conjunction with faker.js datacan be set to false, if the control should not be randomized | +| `datePicker` | boolean | whether to display a date picker (calendar). default: true | +| `groupId` | string | allows grouping of the properties in a property editor for example different editor tabs | +| `hidden` | boolean | hide the property editor for this property will only use the value | +| `hideLabel` | boolean | hide the label from the property editor | +| `label` | string | label to display next to the field editor by default uses the property name itself | +| `order` | number | allows custom sorting of the properties if 'order' is not provided, the props will be sorted by the order/key of the object (unreliable) | +| `timePicker` | boolean | whether to display a time picker (calendar). default: true | +| `type*` | [DATE](#date) | | +| `value` | [Date](#date) | a default value for the property | + +## ComponentControlFiles + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L232)_ + +** extends ComponentControlBase<string\[]>** + +### properties + +| Name | Type | Description | +| ----------- | -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| `accept` | string | type of files to accept user to open ex 'image/\*', | +| `data` | [ComponentControlData](#componentcontroldata) \| null \| false | helper information to generate random data will be used in conjunction with faker.js datacan be set to false, if the control should not be randomized | +| `groupId` | string | allows grouping of the properties in a property editor for example different editor tabs | +| `hidden` | boolean | hide the property editor for this property will only use the value | +| `hideLabel` | boolean | hide the label from the property editor | +| `label` | string | label to display next to the field editor by default uses the property name itself | +| `order` | number | allows custom sorting of the properties if 'order' is not provided, the props will be sorted by the order/key of the object (unreliable) | +| `type*` | [FILES](#files) | | +| `value` | string\[] | a default value for the property | + +## ComponentControlNumber + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L304)_ + +** extends ComponentControlBase<number>** + +### properties + +| Name | Type | Description | +| ----------- | -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| `data` | [ComponentControlData](#componentcontroldata) \| null \| false | helper information to generate random data will be used in conjunction with faker.js datacan be set to false, if the control should not be randomized | +| `groupId` | string | allows grouping of the properties in a property editor for example different editor tabs | +| `hidden` | boolean | hide the property editor for this property will only use the value | +| `hideLabel` | boolean | hide the label from the property editor | +| `label` | string | label to display next to the field editor by default uses the property name itself | +| `max` | number | maximum allowed value for numeric property | +| `min` | number | minimum allowed value for numeric property | +| `order` | number | allows custom sorting of the properties if 'order' is not provided, the props will be sorted by the order/key of the object (unreliable) | +| `range` | boolean | if true, will display a range type slider editor | +| `step` | number | stepper for numeric editor /i nc/dec value | +| `type*` | [NUMBER](#number) | | +| `value` | number | a default value for the property | + +## ComponentControlObject + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L249)_ + +** extends ComponentControlBase<[ComponentControls](#componentcontrols)>** + +### properties + +| Name | Type | Description | +| ----------- | -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| `data` | [ComponentControlData](#componentcontroldata) \| null \| false | helper information to generate random data will be used in conjunction with faker.js datacan be set to false, if the control should not be randomized | +| `groupId` | string | allows grouping of the properties in a property editor for example different editor tabs | +| `hidden` | boolean | hide the property editor for this property will only use the value | +| `hideLabel` | boolean | hide the label from the property editor | +| `label` | string | label to display next to the field editor by default uses the property name itself | +| `order` | number | allows custom sorting of the properties if 'order' is not provided, the props will be sorted by the order/key of the object (unreliable) | +| `type*` | [OBJECT](#object) | | +| `value` | [ComponentControls](#componentcontrols) | a default value for the property | + +## ComponentControlOptions + +list of options can be +1\. key-value pair object: in format { label: value } +2\. array of strings +3\. array of key-value pair objects + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L285)_ + +** extends ComponentControlBase<OptionsValueType<>>** + +### properties + +| Name | Type | Description | +| ----------- | ------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| `data` | [ComponentControlData](#componentcontroldata) \| null \| false | helper information to generate random data will be used in conjunction with faker.js datacan be set to false, if the control should not be randomized | +| `display` | 'select' \| 'multi-select' \| 'radio' \| 'inline-radio' \| 'check' \| 'inline-check' | how to render selecting the options: default is 'select' | +| `groupId` | string | allows grouping of the properties in a property editor for example different editor tabs | +| `hidden` | boolean | hide the property editor for this property will only use the value | +| `hideLabel` | boolean | hide the label from the property editor | +| `label` | string | label to display next to the field editor by default uses the property name itself | +| `options*` | OptionsListType<> | | +| `order` | number | allows custom sorting of the properties if 'order' is not provided, the props will be sorted by the order/key of the object (unreliable) | +| `type*` | [OPTIONS](#options) | | +| `value` | OptionsValueType<> | a default value for the property | + +## ComponentControlText + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L183)_ + +** extends ComponentControlBase<string>** + +### properties + +| Name | Type | Description | +| ------------- | -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| `data` | [ComponentControlData](#componentcontroldata) \| null \| false | helper information to generate random data will be used in conjunction with faker.js datacan be set to false, if the control should not be randomized | +| `escapeValue` | boolean | allows to receive escaped string values to help prevent XSS attacks by default - false | +| `groupId` | string | allows grouping of the properties in a property editor for example different editor tabs | +| `hidden` | boolean | hide the property editor for this property will only use the value | +| `hideLabel` | boolean | hide the label from the property editor | +| `label` | string | label to display next to the field editor by default uses the property name itself | +| `order` | number | allows custom sorting of the properties if 'order' is not provided, the props will be sorted by the order/key of the object (unreliable) | +| `placeholder` | string | placeholder for empty properties either undefined initial value or user clears the field | +| `rows` | number | number of rows for a TextArea field for longer text by default, only 1 row = means a Input field \> 1 rows = an area field | +| `type*` | [TEXT](#text) | | +| `value` | string | a default value for the property | + +## ComponentControls + +ComponentControls are defined in key value pairs +the name of the property is the key +and the value is the ComponentControl + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L357)_ + +`name`\*: string: [ComponentControl](#componentcontrol) + +## ComponentControl + +ComponentControl is a either an object of property settings +or a shortcut can be used: + properties: { + text: 'Hello', +}, + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L340)_ + +[ComponentControlText](#componentcontroltext) \| [ComponentControlBoolean](#componentcontrolboolean) \| [ComponentControlColor](#componentcontrolcolor) \| [ComponentControlDate](#componentcontroldate) \| [ComponentControlObject](#componentcontrolobject) \| [ComponentControlButton](#componentcontrolbutton) \| [ComponentControlOptions](#componentcontroloptions) \| [ComponentControlNumber](#componentcontrolnumber) \| [ComponentControlArray](#componentcontrolarray) \| [ComponentControlFiles](#componentcontrolfiles) + +## OptionsListType + +value/label pairs or array of OptionsValueType + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L274)_ + + \| OptionsValueType<>\[] + +## OptionsValueType + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L264)_ + + | number | string\[] \| number\[] \| **label**: string**value**: any + +## ComponentInfo + +DocGen type onfo generated for a compoennt + +_defined in [@component-controls/specification/src/components.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/components.ts#L76)_ + + + +### properties + +| Name | Type | Description | +| -------------- | ----------------------- | --------------------- | +| `description` | string | optional description | +| `displayName*` | string | name of the component | +| `props*` | [PropTypes](#proptypes) | component props | -_defined in [@component-controls/specification/src/test.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/test.ts#L6)_ +## PropType + +docgen generated property types +mapped to common types to be consumed by component-controls +check props-info packages for implementations + +_defined in [@component-controls/specification/src/components.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/components.ts#L47)_ + + + +### properties + +| Name | Type | Description | +| -------------- | ----------------------------------- | ------------------------------------- | +| `defaultValue` | any | default value for the property | +| `description` | string | description of the property | +| `parentName` | string | name of the parent/inherited property | +| `type*` | [TypeInformation](#typeinformation) | propertty type | + +## PropTypes + +list of properties of the component + +_defined in [@component-controls/specification/src/components.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/components.ts#L69)_ + +`key`\*: string: [PropType](#proptype) + +## StoryComponent + +component specified for stories or story files + +_defined in [@component-controls/specification/src/components.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/components.ts#L96)_ ### properties -| Name | Type | Description | -| ------------- | --------------------- | ----------- | -| `parentPath*` | [NodePath](#nodepath) | | -| `scope*` | [Scope](#scope) | | +| Name | Type | Description | +| -------------- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `from` | string | imported from | +| `importedName` | 'default' \| 'namespace' \| string | imported name ex: \- default import import Button from 'buttons'; \- namespace import import \* as Button from 'buttons'; \- named import import { Button } from 'buttons'; \- named alias import import { Btn as Button } from 'buttons'; | +| `info` | [ComponentInfo](#componentinfo) | docgen generated component info | +| `loc` | [CodeLocation](#codelocation) | location of the import statement in the source code file | +| `name*` | string | name of the component as used in the fiel | +| `repository` | [Repository](#repository) | component project repository information | +| `request` | string | resolved import request | +| `source` | string | the source code of the component file, extracted byt the AST instrumenting loaders | -## Scope +## TypeInformation -_defined in [@component-controls/specification/src/test.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/test.ts#L1)_ +_defined in [@component-controls/specification/src/components.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/components.ts#L17)_ ### properties -| Name | Type | Description | -| --------- | -------------------------------------------------------------- | ----------- | -| `lookup*` | **function** (`name`\*: string): [Scope](#scope) \| undefined; | | -| `node*` | [NodePath](#nodepath) | | +| Name | Type | Description | +| ----------- | --------------------------------------------- | ----------------------------------------------------------------------------- | +| `arguments` | [TypeInformation](#typeinformation)\[] \| any | argument types of function | +| `name*` | [TypeValue](#typevalue) | | +| `raw` | string | raw type code | +| `required` | boolean | is the property required | +| `value` | [TypeInformation](#typeinformation)\[] \| any | type value elements of enum, array, fields of object return value of function | + +## TypeValue + +_defined in [@component-controls/specification/src/components.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/components.ts#L3)_ + +'any' | 'boolean' | 'number' | 'string' | 'array' | 'object' | 'enum' | 'union' | 'literal' | 'symbol' | 'function' | string + +## PropsInfoExtractorFunction + +callback function to extract props info table - ie docgen type libraries +used to extract displayName, and props tables for a component + +_defined in [@component-controls/specification/src/propsInfo.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/propsInfo.ts#L13)_ + +**function** (`fileName`\*: string, `componentName`: string, `source`: string): Promise<[ComponentInfo](#componentinfo) | undefined> | [ComponentInfo](#componentinfo) | undefined; + +### parameters + +| Name | Type | Description | +| --------------- | -------------------------------------------------------------------------------------------------------- | ----------- | +| `fileName*` | string | | +| `componentName` | string | | +| `source` | string | | +| `returns` | Promise<[ComponentInfo](#componentinfo) \| undefined> \| [ComponentInfo](#componentinfo) \| undefined | | + +## CodeLocation + +location in the source code of a story or part of it +ie. arguments, usage of arguments + +_defined in [@component-controls/specification/src/utility.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/utility.ts#L16)_ + + + +### properties + +| Name | Type | Description | +| -------- | ----------------------------- | ----------- | +| `end*` | [CodePosition](#codeposition) | | +| `start*` | [CodePosition](#codeposition) | | + +## CodePosition + +position in the stories source code +usually taken from AST traverse loaders + +_defined in [@component-controls/specification/src/utility.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/utility.ts#L6)_ + + + +### properties + +| Name | Type | Description | +| --------- | ------ | ----------- | +| `column*` | number | | +| `line*` | number | | + +## Repository + +information about the repository of the stories and components + +_defined in [@component-controls/specification/src/utility.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/utility.ts#L25)_ + + + +### properties + +| Name | Type | Description | +| -------- | ------ | --------------------------------------- | +| `browse` | string | link for browsing the file | +| `docs` | string | link for project readme | +| `issues` | string | link for filing issues with the project | +| `name` | string | package name | + +## StoryArguments + +list of story arguments. Each argument can be a deconstructed argument of itself +the first argument are the control 'values' + +_defined in [@component-controls/specification/src/stories.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/stories.ts#L54)_ + +[StoryArgument](#storyargument)\[] + +## ComponentControl + +ComponentControl is a either an object of property settings +or a shortcut can be used: + properties: { + text: 'Hello', +}, + +_defined in [@component-controls/specification/src/controls.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/controls.ts#L340)_ + +[ComponentControlText](#componentcontroltext) \| [ComponentControlBoolean](#componentcontrolboolean) \| [ComponentControlColor](#componentcontrolcolor) \| [ComponentControlDate](#componentcontroldate) \| [ComponentControlObject](#componentcontrolobject) \| [ComponentControlButton](#componentcontrolbutton) \| [ComponentControlOptions](#componentcontroloptions) \| [ComponentControlNumber](#componentcontrolnumber) \| [ComponentControlArray](#componentcontrolarray) \| [ComponentControlFiles](#componentcontrolfiles) -## ParserPluginWithOptions +## TypeValue -_defined in [@component-controls/specification/src/test.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/test.ts#L11)_ +_defined in [@component-controls/specification/src/components.ts](https://github.com/ccontrols/component-controls/tree/master/core/specification/src/components.ts#L3)_ -\['decorators', [NodePath](#nodepath)] \| \['pipelineOperator', [Scope](#scope)] +'any' | 'boolean' | 'number' | 'string' | 'array' | 'object' | 'enum' | 'union' | 'literal' | 'symbol' | 'function' | string diff --git a/core/specification/tmp-out-typedoc.json b/core/specification/tmp-out-typedoc.json index dc048d8a1..efd1d7573 100644 --- a/core/specification/tmp-out-typedoc.json +++ b/core/specification/tmp-out-typedoc.json @@ -5,28 +5,7134 @@ "flags": {}, "originalName": "", "children": [ + { + "id": 13, + "name": "\"components\"", + "kind": 1, + "kindString": "Module", + "flags": { + "isExported": true + }, + "originalName": "/Users/atanasster/component-controls/core/specification/src/components.ts", + "children": [ + { + "id": 28, + "name": "ComponentInfo", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "DocGen type onfo generated for a compoennt" + }, + "children": [ + { + "id": 30, + "name": "description", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "optional description" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 85, + "character": 13 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 29, + "name": "displayName", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "name of the component" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 80, + "character": 13 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 31, + "name": "props", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "component props" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 90, + "character": 7 + } + ], + "type": { + "type": "reference", + "id": 25, + "name": "PropTypes" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 30, + 29, + 31 + ] + } + ], + "sources": [ + { + "fileName": "components.ts", + "line": 76, + "character": 30 + } + ] + }, + { + "id": 20, + "name": "PropType", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "docgen generated property types\nmapped to common types to be consumed by component-controls\ncheck props-info packages for implementations" + }, + "children": [ + { + "id": 21, + "name": "defaultValue", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "default value for the property" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 51, + "character": 14 + } + ], + "type": { + "type": "intrinsic", + "name": "any" + } + }, + { + "id": 23, + "name": "description", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "description of the property" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 59, + "character": 13 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 24, + "name": "parentName", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "name of the parent/inherited property" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 63, + "character": 12 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 22, + "name": "type", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "propertty type" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 55, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 14, + "name": "TypeInformation" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 21, + 23, + 24, + 22 + ] + } + ], + "sources": [ + { + "fileName": "components.ts", + "line": 47, + "character": 25 + } + ] + }, + { + "id": 25, + "name": "PropTypes", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "list of properties of the component" + }, + "indexSignature": [ + { + "id": 26, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "list of properties of the component" + }, + "parameters": [ + { + "id": 27, + "name": "key", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "reference", + "id": 20, + "name": "PropType" + } + } + ], + "sources": [ + { + "fileName": "components.ts", + "line": 69, + "character": 26 + } + ] + }, + { + "id": 32, + "name": "StoryComponent", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "component specified for stories or story files" + }, + "children": [ + { + "id": 35, + "name": "from", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "imported from" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 113, + "character": 6 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 34, + "name": "importedName", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "imported name ex:\n- default import import Button from 'buttons';\n- namespace import import * as Button from 'buttons';\n- named import import { Button } from 'buttons';\n- named alias import import { Btn as Button } from 'buttons';" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 108, + "character": 14 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "stringLiteral", + "value": "default" + }, + { + "type": "stringLiteral", + "value": "namespace" + }, + { + "type": "intrinsic", + "name": "string" + } + ] + } + }, + { + "id": 40, + "name": "info", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "docgen generated component info" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 136, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 28, + "name": "ComponentInfo" + } + }, + { + "id": 37, + "name": "loc", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "location of the import statement in the source code file" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 123, + "character": 5 + } + ], + "type": { + "type": "reference", + "id": 5, + "name": "CodeLocation" + } + }, + { + "id": 33, + "name": "name", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "name of the component as used in the fiel" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 100, + "character": 6 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 38, + "name": "repository", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "component project repository information" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 128, + "character": 12 + } + ], + "type": { + "type": "reference", + "id": 8, + "name": "Repository" + } + }, + { + "id": 36, + "name": "request", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "resolved import request" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 118, + "character": 9 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 39, + "name": "source", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "the source code of the component file, extracted byt the AST instrumenting loaders" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 132, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 35, + 34, + 40, + 37, + 33, + 38, + 36, + 39 + ] + } + ], + "sources": [ + { + "fileName": "components.ts", + "line": 96, + "character": 31 + } + ] + }, + { + "id": 14, + "name": "TypeInformation", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "children": [ + { + "id": 18, + "name": "arguments", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "argument types of function" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 35, + "character": 11 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "array", + "elementType": { + "type": "reference", + "id": 14, + "name": "TypeInformation" + } + }, + { + "type": "intrinsic", + "name": "any" + } + ] + } + }, + { + "id": 15, + "name": "name", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "components.ts", + "line": 18, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 41, + "name": "TypeValue" + } + }, + { + "id": 17, + "name": "raw", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "raw type code" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 30, + "character": 5 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 19, + "name": "required", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "is the property required" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 39, + "character": 10 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + } + }, + { + "id": 16, + "name": "value", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "type value\nelements of enum, array, fields of object\nreturn value of function" + }, + "sources": [ + { + "fileName": "components.ts", + "line": 25, + "character": 7 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "array", + "elementType": { + "type": "reference", + "id": 14, + "name": "TypeInformation" + } + }, + { + "type": "intrinsic", + "name": "any" + } + ] + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 18, + 15, + 17, + 19, + 16 + ] + } + ], + "sources": [ + { + "fileName": "components.ts", + "line": 17, + "character": 32 + } + ] + }, + { + "id": 41, + "name": "TypeValue", + "kind": 4194304, + "kindString": "Type alias", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "components.ts", + "line": 3, + "character": 21 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "stringLiteral", + "value": "any" + }, + { + "type": "stringLiteral", + "value": "boolean" + }, + { + "type": "stringLiteral", + "value": "number" + }, + { + "type": "stringLiteral", + "value": "string" + }, + { + "type": "stringLiteral", + "value": "array" + }, + { + "type": "stringLiteral", + "value": "object" + }, + { + "type": "stringLiteral", + "value": "enum" + }, + { + "type": "stringLiteral", + "value": "union" + }, + { + "type": "stringLiteral", + "value": "literal" + }, + { + "type": "stringLiteral", + "value": "symbol" + }, + { + "type": "stringLiteral", + "value": "function" + }, + { + "type": "intrinsic", + "name": "string" + } + ] + } + } + ], + "groups": [ + { + "title": "Interfaces", + "kind": 256, + "children": [ + 28, + 20, + 25, + 32, + 14 + ] + }, + { + "title": "Type aliases", + "kind": 4194304, + "children": [ + 41 + ] + } + ], + "sources": [ + { + "fileName": "components.ts", + "line": 1, + "character": 0 + } + ] + }, + { + "id": 42, + "name": "\"controls\"", + "kind": 1, + "kindString": "Module", + "flags": { + "isExported": true + }, + "originalName": "/Users/atanasster/component-controls/core/specification/src/controls.ts", + "children": [ + { + "id": 43, + "name": "ControlTypes", + "kind": 4, + "kindString": "Enumeration", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Control field types\nexamples are provided for the different types:" + }, + "children": [ + { + "id": 52, + "name": "ARRAY", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "items: {\n type: csf.ControlTypes.ARRAY,\n label: 'Items',\n value: ['Laptop', 'Book', 'Whiskey'],\n}," + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 99, + "character": 7 + } + ], + "defaultValue": "\"array\"" + }, + { + "id": 46, + "name": "BOOLEAN", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "nice: {\n type: csf.ControlTypes.BOOLEAN,\n label: 'Nice',\n value: true,\n}," + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 36, + "character": 9 + } + ], + "defaultValue": "\"boolean\"" + }, + { + "id": 50, + "name": "BUTTON", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "button: {\n type: csf.ControlTypes.BUTTON,\n onClick: () => {\n ... code to modify some variables\n }\n}," + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 77, + "character": 8 + } + ], + "defaultValue": "\"button\"" + }, + { + "id": 49, + "name": "COLOR", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "color: {\n type: 'color',\n value: '#000000',\n}," + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 67, + "character": 7 + } + ], + "defaultValue": "\"color\"" + }, + { + "id": 48, + "name": "DATE", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": " birthday: {\n type: csf.ControlTypes.DATE,\n label: 'Birthday',\n value: new Date(),\n }," + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 59, + "character": 6 + } + ], + "defaultValue": "\"date\"" + }, + { + "id": 53, + "name": "FILES", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "images: {\n type: csf.ControlTypes.FILES,\n label: 'Happy Picture',\n accept: 'image/*',\n value: [\n 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QA/4ePzL8AAAAHdElNRQfiARwMCyEWcOFPAAAAP0lEQVQoz8WQMQoAIAwDL/7/z3GwghSp4KDZyiUpBMCYUgd8rehtH16/l3XewgU2KAzapjXBbNFaPS6lDMlKB6OiDv3iAH1OAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE4LTAxLTI4VDEyOjExOjMzLTA3OjAwlAHQBgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxOC0wMS0yOFQxMjoxMTozMy0wNzowMOVcaLoAAAAASUVORK5CYII=',\n ],\n}," + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 111, + "character": 7 + } + ], + "defaultValue": "\"files\"" + }, + { + "id": 45, + "name": "NUMBER", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": " age: {\n type: csf.ControlTypes.NUMBER,\n label: 'Age',\n value: 78,\n range: true,\n min: 0,\n max: 90,\n step: 5,\n}," + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 27, + "character": 8 + } + ], + "defaultValue": "\"number\"" + }, + { + "id": 51, + "name": "OBJECT", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "otherStyles: {\n type: csf.ControlTypes.OBJECT,\n label: 'Styles',\n value: {\n border: '2px dashed silver',\n borderRadius: 10,\n padding: 10,\n },\n}," + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 90, + "character": 8 + } + ], + "defaultValue": "\"object\"" + }, + { + "id": 47, + "name": "OPTIONS", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "fruit: {\n type: csf.ControlTypes.OPTIONS,\n label: 'Fruit',\n value: 'apple',\n options: {\n Apple: 'apple',\n Banana: 'banana',\n Cherry: 'cherry',\n },\n}," + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 50, + "character": 9 + } + ], + "defaultValue": "\"options\"" + }, + { + "id": 44, + "name": "TEXT", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "userName: {\n type: csf.ControlTypes.TEXT,\n label: 'Name',\n value: 'Storyteller',\n}," + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 14, + "character": 6 + } + ], + "defaultValue": "\"text\"" + } + ], + "groups": [ + { + "title": "Enumeration members", + "kind": 16, + "children": [ + 52, + 46, + 50, + 49, + 48, + 53, + 45, + 51, + 47, + 44 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 6, + "character": 24 + } + ] + }, + { + "id": 121, + "name": "ComponentControlArray", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "children": [ + { + "id": 130, + "name": "data", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "helper information to generate random data\nwill be used in conjunction with faker.js\ndatacan be set to false, if the control should not be randomized" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 180, + "character": 6 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 54, + "name": "ComponentControlData" + }, + { + "type": "intrinsic", + "name": "null" + }, + { + "type": "intrinsic", + "name": "false" + } + ] + }, + "inheritedFrom": { + "type": "reference", + "id": 69, + "name": "ComponentControlBase.data" + } + }, + { + "id": 128, + "name": "groupId", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows grouping of the properties\nin a property editor\nfor example different editor tabs" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 166, + "character": 9 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 67, + "name": "ComponentControlBase.groupId" + } + }, + { + "id": 127, + "name": "hidden", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the property editor for this property\nwill only use the value" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 160, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 66, + "name": "ComponentControlBase.hidden" + } + }, + { + "id": 126, + "name": "hideLabel", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the label from the property editor" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 154, + "character": 11 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 65, + "name": "ComponentControlBase.hideLabel" + } + }, + { + "id": 124, + "name": "label", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "label to display next to the field editor\nby default uses the property name itself" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 144, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 63, + "name": "ComponentControlBase.label" + } + }, + { + "id": 129, + "name": "order", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows custom sorting of the properties\nif 'order' is not provided, the props\nwill be sorted by the order/key of the object (unreliable)" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 173, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 68, + "name": "ComponentControlBase.order" + } + }, + { + "id": 123, + "name": "separator", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "the array items separator, by default comma" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 246, + "character": 11 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 122, + "name": "type", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 242, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 52, + "name": "ARRAY" + }, + "overwrites": { + "type": "reference", + "id": 62, + "name": "ComponentControlBase.type" + } + }, + { + "id": 125, + "name": "value", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "a default value for the property" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 149, + "character": 7 + } + ], + "type": { + "type": "array", + "elementType": { + "type": "intrinsic", + "name": "string" + } + }, + "inheritedFrom": { + "type": "reference", + "id": 64, + "name": "ComponentControlBase.value" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 130, + 128, + 127, + 126, + 124, + 129, + 123, + 122, + 125 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 241, + "character": 38 + } + ], + "extendedTypes": [ + { + "type": "reference", + "id": 60, + "typeArguments": [ + { + "type": "array", + "elementType": { + "type": "intrinsic", + "name": "string" + } + } + ], + "name": "ComponentControlBase" + } + ] + }, + { + "id": 60, + "name": "ComponentControlBase", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Base inteface for creating control types\nAll new property typs should extend this interface and support" + }, + "typeParameter": [ + { + "id": 61, + "name": "T", + "kind": 131072, + "kindString": "Type parameter", + "flags": { + "isExported": true + } + } + ], + "children": [ + { + "id": 69, + "name": "data", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "helper information to generate random data\nwill be used in conjunction with faker.js\ndatacan be set to false, if the control should not be randomized" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 180, + "character": 6 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 54, + "name": "ComponentControlData" + }, + { + "type": "intrinsic", + "name": "null" + }, + { + "type": "intrinsic", + "name": "false" + } + ] + } + }, + { + "id": 67, + "name": "groupId", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows grouping of the properties\nin a property editor\nfor example different editor tabs" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 166, + "character": 9 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 66, + "name": "hidden", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the property editor for this property\nwill only use the value" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 160, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + } + }, + { + "id": 65, + "name": "hideLabel", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the label from the property editor" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 154, + "character": 11 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + } + }, + { + "id": 63, + "name": "label", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "label to display next to the field editor\nby default uses the property name itself" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 144, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 68, + "name": "order", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows custom sorting of the properties\nif 'order' is not provided, the props\nwill be sorted by the order/key of the object (unreliable)" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 173, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 62, + "name": "type", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 137, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 43, + "name": "ControlTypes" + } + }, + { + "id": 64, + "name": "value", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "a default value for the property" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 149, + "character": 7 + } + ], + "type": { + "type": "typeParameter", + "name": "T" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 69, + 67, + 66, + 65, + 63, + 68, + 62, + 64 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 136, + "character": 37 + } + ], + "extendedBy": [ + { + "type": "reference", + "id": 70, + "name": "ComponentControlText" + }, + { + "type": "reference", + "id": 82, + "name": "ComponentControlBoolean" + }, + { + "type": "reference", + "id": 91, + "name": "ComponentControlColor" + }, + { + "type": "reference", + "id": 100, + "name": "ComponentControlDate" + }, + { + "type": "reference", + "id": 111, + "name": "ComponentControlFiles" + }, + { + "type": "reference", + "id": 121, + "name": "ComponentControlArray" + }, + { + "type": "reference", + "id": 131, + "name": "ComponentControlObject" + }, + { + "type": "reference", + "id": 140, + "name": "ComponentControlButton" + }, + { + "type": "reference", + "id": 154, + "name": "ComponentControlOptions" + }, + { + "type": "reference", + "id": 166, + "name": "ComponentControlNumber" + } + ] + }, + { + "id": 82, + "name": "ComponentControlBoolean", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "children": [ + { + "id": 90, + "name": "data", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "helper information to generate random data\nwill be used in conjunction with faker.js\ndatacan be set to false, if the control should not be randomized" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 180, + "character": 6 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 54, + "name": "ComponentControlData" + }, + { + "type": "intrinsic", + "name": "null" + }, + { + "type": "intrinsic", + "name": "false" + } + ] + }, + "inheritedFrom": { + "type": "reference", + "id": 69, + "name": "ComponentControlBase.data" + } + }, + { + "id": 88, + "name": "groupId", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows grouping of the properties\nin a property editor\nfor example different editor tabs" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 166, + "character": 9 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 67, + "name": "ComponentControlBase.groupId" + } + }, + { + "id": 87, + "name": "hidden", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the property editor for this property\nwill only use the value" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 160, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 66, + "name": "ComponentControlBase.hidden" + } + }, + { + "id": 86, + "name": "hideLabel", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the label from the property editor" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 154, + "character": 11 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 65, + "name": "ComponentControlBase.hideLabel" + } + }, + { + "id": 84, + "name": "label", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "label to display next to the field editor\nby default uses the property name itself" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 144, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 63, + "name": "ComponentControlBase.label" + } + }, + { + "id": 89, + "name": "order", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows custom sorting of the properties\nif 'order' is not provided, the props\nwill be sorted by the order/key of the object (unreliable)" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 173, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 68, + "name": "ComponentControlBase.order" + } + }, + { + "id": 83, + "name": "type", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 209, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 46, + "name": "BOOLEAN" + }, + "overwrites": { + "type": "reference", + "id": 62, + "name": "ComponentControlBase.type" + } + }, + { + "id": 85, + "name": "value", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "a default value for the property" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 149, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 64, + "name": "ComponentControlBase.value" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 90, + 88, + 87, + 86, + 84, + 89, + 83, + 85 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 208, + "character": 40 + } + ], + "extendedTypes": [ + { + "type": "reference", + "id": 60, + "typeArguments": [ + { + "type": "intrinsic", + "name": "boolean" + } + ], + "name": "ComponentControlBase" + } + ] + }, + { + "id": 140, + "name": "ComponentControlButton", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "typeParameter": [ + { + "id": 141, + "name": "ClickEvent", + "kind": 131072, + "kindString": "Type parameter", + "flags": { + "isExported": true + } + } + ], + "children": [ + { + "id": 153, + "name": "data", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "helper information to generate random data\nwill be used in conjunction with faker.js\ndatacan be set to false, if the control should not be randomized" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 180, + "character": 6 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 54, + "name": "ComponentControlData" + }, + { + "type": "intrinsic", + "name": "null" + }, + { + "type": "intrinsic", + "name": "false" + } + ] + }, + "inheritedFrom": { + "type": "reference", + "id": 69, + "name": "ComponentControlBase.data" + } + }, + { + "id": 151, + "name": "groupId", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows grouping of the properties\nin a property editor\nfor example different editor tabs" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 166, + "character": 9 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 67, + "name": "ComponentControlBase.groupId" + } + }, + { + "id": 150, + "name": "hidden", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the property editor for this property\nwill only use the value" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 160, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 66, + "name": "ComponentControlBase.hidden" + } + }, + { + "id": 149, + "name": "hideLabel", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the label from the property editor" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 154, + "character": 11 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 65, + "name": "ComponentControlBase.hideLabel" + } + }, + { + "id": 147, + "name": "label", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "label to display next to the field editor\nby default uses the property name itself" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 144, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 63, + "name": "ComponentControlBase.label" + } + }, + { + "id": 143, + "name": "onClick", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "for button type fields, an onClick handler" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 261, + "character": 9 + } + ], + "type": { + "type": "reflection", + "declaration": { + "id": 144, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 145, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 146, + "name": "prop", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 140, + "name": "ComponentControlButton" + } + } + ], + "type": { + "type": "intrinsic", + "name": "void" + } + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 261, + "character": 11 + } + ] + } + } + }, + { + "id": 152, + "name": "order", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows custom sorting of the properties\nif 'order' is not provided, the props\nwill be sorted by the order/key of the object (unreliable)" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 173, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 68, + "name": "ComponentControlBase.order" + } + }, + { + "id": 142, + "name": "type", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 256, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 50, + "name": "BUTTON" + }, + "overwrites": { + "type": "reference", + "id": 62, + "name": "ComponentControlBase.type" + } + }, + { + "id": 148, + "name": "value", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "a default value for the property" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 149, + "character": 7 + } + ], + "type": { + "type": "typeParameter", + "name": "ClickEvent" + }, + "inheritedFrom": { + "type": "reference", + "id": 64, + "name": "ComponentControlBase.value" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 153, + 151, + 150, + 149, + 147, + 143, + 152, + 142, + 148 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 254, + "character": 39 + } + ], + "extendedTypes": [ + { + "type": "reference", + "id": 60, + "typeArguments": [ + { + "type": "typeParameter", + "name": "ClickEvent" + } + ], + "name": "ComponentControlBase" + } + ] + }, + { + "id": 91, + "name": "ComponentControlColor", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "children": [ + { + "id": 99, + "name": "data", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "helper information to generate random data\nwill be used in conjunction with faker.js\ndatacan be set to false, if the control should not be randomized" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 180, + "character": 6 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 54, + "name": "ComponentControlData" + }, + { + "type": "intrinsic", + "name": "null" + }, + { + "type": "intrinsic", + "name": "false" + } + ] + }, + "inheritedFrom": { + "type": "reference", + "id": 69, + "name": "ComponentControlBase.data" + } + }, + { + "id": 97, + "name": "groupId", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows grouping of the properties\nin a property editor\nfor example different editor tabs" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 166, + "character": 9 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 67, + "name": "ComponentControlBase.groupId" + } + }, + { + "id": 96, + "name": "hidden", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the property editor for this property\nwill only use the value" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 160, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 66, + "name": "ComponentControlBase.hidden" + } + }, + { + "id": 95, + "name": "hideLabel", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the label from the property editor" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 154, + "character": 11 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 65, + "name": "ComponentControlBase.hideLabel" + } + }, + { + "id": 93, + "name": "label", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "label to display next to the field editor\nby default uses the property name itself" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 144, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 63, + "name": "ComponentControlBase.label" + } + }, + { + "id": 98, + "name": "order", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows custom sorting of the properties\nif 'order' is not provided, the props\nwill be sorted by the order/key of the object (unreliable)" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 173, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 68, + "name": "ComponentControlBase.order" + } + }, + { + "id": 92, + "name": "type", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 213, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 49, + "name": "COLOR" + }, + "overwrites": { + "type": "reference", + "id": 62, + "name": "ComponentControlBase.type" + } + }, + { + "id": 94, + "name": "value", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "a default value for the property" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 149, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 64, + "name": "ComponentControlBase.value" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 99, + 97, + 96, + 95, + 93, + 98, + 92, + 94 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 212, + "character": 38 + } + ], + "extendedTypes": [ + { + "type": "reference", + "id": 60, + "typeArguments": [ + { + "type": "intrinsic", + "name": "string" + } + ], + "name": "ComponentControlBase" + } + ] + }, + { + "id": 54, + "name": "ComponentControlData", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "children": [ + { + "id": 55, + "name": "name", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "'name' for generating random data from faker.js\n usually comprised of two parts, separated by a dot\n example 'internet.avatar'" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 120, + "character": 6 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 56, + "name": "options", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "options to be passe to the random data generators\nexample {\n min: 10, max: 20\n}" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 128, + "character": 9 + } + ], + "type": { + "type": "reflection", + "declaration": { + "id": 57, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "indexSignature": [ + { + "id": 58, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 59, + "name": "key", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 128, + "character": 11 + } + ] + } + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 55, + 56 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 114, + "character": 37 + } + ] + }, + { + "id": 100, + "name": "ComponentControlDate", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "children": [ + { + "id": 110, + "name": "data", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "helper information to generate random data\nwill be used in conjunction with faker.js\ndatacan be set to false, if the control should not be randomized" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 180, + "character": 6 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 54, + "name": "ComponentControlData" + }, + { + "type": "intrinsic", + "name": "null" + }, + { + "type": "intrinsic", + "name": "false" + } + ] + }, + "inheritedFrom": { + "type": "reference", + "id": 69, + "name": "ComponentControlBase.data" + } + }, + { + "id": 102, + "name": "datePicker", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "whether to display a date picker (calendar).\ndefault: true" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 222, + "character": 12 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + } + }, + { + "id": 108, + "name": "groupId", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows grouping of the properties\nin a property editor\nfor example different editor tabs" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 166, + "character": 9 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 67, + "name": "ComponentControlBase.groupId" + } + }, + { + "id": 107, + "name": "hidden", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the property editor for this property\nwill only use the value" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 160, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 66, + "name": "ComponentControlBase.hidden" + } + }, + { + "id": 106, + "name": "hideLabel", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the label from the property editor" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 154, + "character": 11 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 65, + "name": "ComponentControlBase.hideLabel" + } + }, + { + "id": 104, + "name": "label", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "label to display next to the field editor\nby default uses the property name itself" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 144, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 63, + "name": "ComponentControlBase.label" + } + }, + { + "id": 109, + "name": "order", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows custom sorting of the properties\nif 'order' is not provided, the props\nwill be sorted by the order/key of the object (unreliable)" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 173, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 68, + "name": "ComponentControlBase.order" + } + }, + { + "id": 103, + "name": "timePicker", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "whether to display a time picker (calendar).\ndefault: true" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 229, + "character": 12 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + } + }, + { + "id": 101, + "name": "type", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 217, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 48, + "name": "DATE" + }, + "overwrites": { + "type": "reference", + "id": 62, + "name": "ComponentControlBase.type" + } + }, + { + "id": 105, + "name": "value", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "a default value for the property" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 149, + "character": 7 + } + ], + "type": { + "type": "reference", + "name": "Date" + }, + "inheritedFrom": { + "type": "reference", + "id": 64, + "name": "ComponentControlBase.value" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 110, + 102, + 108, + 107, + 106, + 104, + 109, + 103, + 101, + 105 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 216, + "character": 37 + } + ], + "extendedTypes": [ + { + "type": "reference", + "id": 60, + "typeArguments": [ + { + "type": "reference", + "name": "Date" + } + ], + "name": "ComponentControlBase" + } + ] + }, + { + "id": 111, + "name": "ComponentControlFiles", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "children": [ + { + "id": 113, + "name": "accept", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "type of files to accept user to open\nex 'image/*'," + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 238, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 120, + "name": "data", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "helper information to generate random data\nwill be used in conjunction with faker.js\ndatacan be set to false, if the control should not be randomized" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 180, + "character": 6 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 54, + "name": "ComponentControlData" + }, + { + "type": "intrinsic", + "name": "null" + }, + { + "type": "intrinsic", + "name": "false" + } + ] + }, + "inheritedFrom": { + "type": "reference", + "id": 69, + "name": "ComponentControlBase.data" + } + }, + { + "id": 118, + "name": "groupId", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows grouping of the properties\nin a property editor\nfor example different editor tabs" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 166, + "character": 9 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 67, + "name": "ComponentControlBase.groupId" + } + }, + { + "id": 117, + "name": "hidden", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the property editor for this property\nwill only use the value" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 160, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 66, + "name": "ComponentControlBase.hidden" + } + }, + { + "id": 116, + "name": "hideLabel", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the label from the property editor" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 154, + "character": 11 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 65, + "name": "ComponentControlBase.hideLabel" + } + }, + { + "id": 114, + "name": "label", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "label to display next to the field editor\nby default uses the property name itself" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 144, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 63, + "name": "ComponentControlBase.label" + } + }, + { + "id": 119, + "name": "order", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows custom sorting of the properties\nif 'order' is not provided, the props\nwill be sorted by the order/key of the object (unreliable)" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 173, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 68, + "name": "ComponentControlBase.order" + } + }, + { + "id": 112, + "name": "type", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 233, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 53, + "name": "FILES" + }, + "overwrites": { + "type": "reference", + "id": 62, + "name": "ComponentControlBase.type" + } + }, + { + "id": 115, + "name": "value", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "a default value for the property" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 149, + "character": 7 + } + ], + "type": { + "type": "array", + "elementType": { + "type": "intrinsic", + "name": "string" + } + }, + "inheritedFrom": { + "type": "reference", + "id": 64, + "name": "ComponentControlBase.value" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 113, + 120, + 118, + 117, + 116, + 114, + 119, + 112, + 115 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 232, + "character": 38 + } + ], + "extendedTypes": [ + { + "type": "reference", + "id": 60, + "typeArguments": [ + { + "type": "array", + "elementType": { + "type": "intrinsic", + "name": "string" + } + } + ], + "name": "ComponentControlBase" + } + ] + }, + { + "id": 166, + "name": "ComponentControlNumber", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "children": [ + { + "id": 178, + "name": "data", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "helper information to generate random data\nwill be used in conjunction with faker.js\ndatacan be set to false, if the control should not be randomized" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 180, + "character": 6 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 54, + "name": "ComponentControlData" + }, + { + "type": "intrinsic", + "name": "null" + }, + { + "type": "intrinsic", + "name": "false" + } + ] + }, + "inheritedFrom": { + "type": "reference", + "id": 69, + "name": "ComponentControlBase.data" + } + }, + { + "id": 176, + "name": "groupId", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows grouping of the properties\nin a property editor\nfor example different editor tabs" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 166, + "character": 9 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 67, + "name": "ComponentControlBase.groupId" + } + }, + { + "id": 175, + "name": "hidden", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the property editor for this property\nwill only use the value" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 160, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 66, + "name": "ComponentControlBase.hidden" + } + }, + { + "id": 174, + "name": "hideLabel", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the label from the property editor" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 154, + "character": 11 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 65, + "name": "ComponentControlBase.hideLabel" + } + }, + { + "id": 172, + "name": "label", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "label to display next to the field editor\nby default uses the property name itself" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 144, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 63, + "name": "ComponentControlBase.label" + } + }, + { + "id": 170, + "name": "max", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "maximum allowed value for numeric property" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 323, + "character": 5 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 169, + "name": "min", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "minimum allowed value for numeric property" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 318, + "character": 5 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 177, + "name": "order", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows custom sorting of the properties\nif 'order' is not provided, the props\nwill be sorted by the order/key of the object (unreliable)" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 173, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 68, + "name": "ComponentControlBase.order" + } + }, + { + "id": 168, + "name": "range", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "if true, will display a range type slider editor" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 313, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + } + }, + { + "id": 171, + "name": "step", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "stepper for numeric editor /i nc/dec value" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 329, + "character": 6 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 167, + "name": "type", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 305, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 45, + "name": "NUMBER" + }, + "overwrites": { + "type": "reference", + "id": 62, + "name": "ComponentControlBase.type" + } + }, + { + "id": 173, + "name": "value", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "a default value for the property" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 149, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 64, + "name": "ComponentControlBase.value" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 178, + 176, + 175, + 174, + 172, + 170, + 169, + 177, + 168, + 171, + 167, + 173 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 304, + "character": 39 + } + ], + "extendedTypes": [ + { + "type": "reference", + "id": 60, + "typeArguments": [ + { + "type": "intrinsic", + "name": "number" + } + ], + "name": "ComponentControlBase" + } + ] + }, + { + "id": 131, + "name": "ComponentControlObject", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "children": [ + { + "id": 139, + "name": "data", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "helper information to generate random data\nwill be used in conjunction with faker.js\ndatacan be set to false, if the control should not be randomized" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 180, + "character": 6 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 54, + "name": "ComponentControlData" + }, + { + "type": "intrinsic", + "name": "null" + }, + { + "type": "intrinsic", + "name": "false" + } + ] + }, + "inheritedFrom": { + "type": "reference", + "id": 69, + "name": "ComponentControlBase.data" + } + }, + { + "id": 137, + "name": "groupId", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows grouping of the properties\nin a property editor\nfor example different editor tabs" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 166, + "character": 9 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 67, + "name": "ComponentControlBase.groupId" + } + }, + { + "id": 136, + "name": "hidden", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the property editor for this property\nwill only use the value" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 160, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 66, + "name": "ComponentControlBase.hidden" + } + }, + { + "id": 135, + "name": "hideLabel", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the label from the property editor" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 154, + "character": 11 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 65, + "name": "ComponentControlBase.hideLabel" + } + }, + { + "id": 133, + "name": "label", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "label to display next to the field editor\nby default uses the property name itself" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 144, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 63, + "name": "ComponentControlBase.label" + } + }, + { + "id": 138, + "name": "order", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows custom sorting of the properties\nif 'order' is not provided, the props\nwill be sorted by the order/key of the object (unreliable)" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 173, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 68, + "name": "ComponentControlBase.order" + } + }, + { + "id": 132, + "name": "type", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 251, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 51, + "name": "OBJECT" + }, + "overwrites": { + "type": "reference", + "id": 62, + "name": "ComponentControlBase.type" + } + }, + { + "id": 134, + "name": "value", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "a default value for the property" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 149, + "character": 7 + } + ], + "type": { + "type": "reference", + "id": 179, + "name": "ComponentControls" + }, + "inheritedFrom": { + "type": "reference", + "id": 64, + "name": "ComponentControlBase.value" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 139, + 137, + 136, + 135, + 133, + 138, + 132, + 134 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 249, + "character": 39 + } + ], + "extendedTypes": [ + { + "type": "reference", + "id": 60, + "typeArguments": [ + { + "type": "reference", + "id": 179, + "name": "ComponentControls" + } + ], + "name": "ComponentControlBase" + } + ] + }, + { + "id": 154, + "name": "ComponentControlOptions", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "list of options can be\n1. key-value pair object: in format { label: value }\n2. array of strings\n3. array of key-value pair objects" + }, + "typeParameter": [ + { + "id": 155, + "name": "T", + "kind": 131072, + "kindString": "Type parameter", + "flags": { + "isExported": true + } + } + ], + "children": [ + { + "id": 165, + "name": "data", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "helper information to generate random data\nwill be used in conjunction with faker.js\ndatacan be set to false, if the control should not be randomized" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 180, + "character": 6 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 54, + "name": "ComponentControlData" + }, + { + "type": "intrinsic", + "name": "null" + }, + { + "type": "intrinsic", + "name": "false" + } + ] + }, + "inheritedFrom": { + "type": "reference", + "id": 69, + "name": "ComponentControlBase.data" + } + }, + { + "id": 158, + "name": "display", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "how to render selecting the options:\ndefault is 'select'" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 295, + "character": 9 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "stringLiteral", + "value": "select" + }, + { + "type": "stringLiteral", + "value": "multi-select" + }, + { + "type": "stringLiteral", + "value": "radio" + }, + { + "type": "stringLiteral", + "value": "inline-radio" + }, + { + "type": "stringLiteral", + "value": "check" + }, + { + "type": "stringLiteral", + "value": "inline-check" + } + ] + } + }, + { + "id": 163, + "name": "groupId", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows grouping of the properties\nin a property editor\nfor example different editor tabs" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 166, + "character": 9 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 67, + "name": "ComponentControlBase.groupId" + } + }, + { + "id": 162, + "name": "hidden", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the property editor for this property\nwill only use the value" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 160, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 66, + "name": "ComponentControlBase.hidden" + } + }, + { + "id": 161, + "name": "hideLabel", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the label from the property editor" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 154, + "character": 11 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 65, + "name": "ComponentControlBase.hideLabel" + } + }, + { + "id": 159, + "name": "label", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "label to display next to the field editor\nby default uses the property name itself" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 144, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 63, + "name": "ComponentControlBase.label" + } + }, + { + "id": 157, + "name": "options", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 289, + "character": 9 + } + ], + "type": { + "type": "reference", + "id": 187, + "typeArguments": [ + { + "type": "typeParameter", + "name": "T" + } + ], + "name": "OptionsListType" + } + }, + { + "id": 164, + "name": "order", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows custom sorting of the properties\nif 'order' is not provided, the props\nwill be sorted by the order/key of the object (unreliable)" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 173, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 68, + "name": "ComponentControlBase.order" + } + }, + { + "id": 156, + "name": "type", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 287, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 47, + "name": "OPTIONS" + }, + "overwrites": { + "type": "reference", + "id": 62, + "name": "ComponentControlBase.type" + } + }, + { + "id": 160, + "name": "value", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "a default value for the property" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 149, + "character": 7 + } + ], + "type": { + "type": "reference", + "id": 182, + "typeArguments": [ + { + "type": "typeParameter", + "name": "T" + } + ], + "name": "OptionsValueType" + }, + "inheritedFrom": { + "type": "reference", + "id": 64, + "name": "ComponentControlBase.value" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 165, + 158, + 163, + 162, + 161, + 159, + 157, + 164, + 156, + 160 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 285, + "character": 40 + } + ], + "extendedTypes": [ + { + "type": "reference", + "id": 60, + "typeArguments": [ + { + "type": "reference", + "id": 182, + "typeArguments": [ + { + "type": "typeParameter", + "name": "T" + } + ], + "name": "OptionsValueType" + } + ], + "name": "ComponentControlBase" + } + ] + }, + { + "id": 70, + "name": "ComponentControlText", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "children": [ + { + "id": 81, + "name": "data", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "helper information to generate random data\nwill be used in conjunction with faker.js\ndatacan be set to false, if the control should not be randomized" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 180, + "character": 6 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 54, + "name": "ComponentControlData" + }, + { + "type": "intrinsic", + "name": "null" + }, + { + "type": "intrinsic", + "name": "false" + } + ] + }, + "inheritedFrom": { + "type": "reference", + "id": 69, + "name": "ComponentControlBase.data" + } + }, + { + "id": 74, + "name": "escapeValue", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows to receive escaped string values\nto help prevent XSS attacks\nby default - false" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 205, + "character": 13 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + } + }, + { + "id": 79, + "name": "groupId", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows grouping of the properties\nin a property editor\nfor example different editor tabs" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 166, + "character": 9 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 67, + "name": "ComponentControlBase.groupId" + } + }, + { + "id": 78, + "name": "hidden", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the property editor for this property\nwill only use the value" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 160, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 66, + "name": "ComponentControlBase.hidden" + } + }, + { + "id": 77, + "name": "hideLabel", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "hide the label from the property editor" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 154, + "character": 11 + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 65, + "name": "ComponentControlBase.hideLabel" + } + }, + { + "id": 75, + "name": "label", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "label to display next to the field editor\nby default uses the property name itself" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 144, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 63, + "name": "ComponentControlBase.label" + } + }, + { + "id": 80, + "name": "order", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "allows custom sorting of the properties\nif 'order' is not provided, the props\nwill be sorted by the order/key of the object (unreliable)" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 173, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 68, + "name": "ComponentControlBase.order" + } + }, + { + "id": 72, + "name": "placeholder", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "placeholder for empty properties\neither undefined initial value\nor user clears the field" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 191, + "character": 13 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 73, + "name": "rows", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "number of rows for a TextArea field for longer text\nby default, only 1 row = means a Input field\n> 1 rows = an area field" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 198, + "character": 6 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 71, + "name": "type", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 184, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 44, + "name": "TEXT" + }, + "overwrites": { + "type": "reference", + "id": 62, + "name": "ComponentControlBase.type" + } + }, + { + "id": 76, + "name": "value", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "a default value for the property" + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 149, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 64, + "name": "ComponentControlBase.value" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 81, + 74, + 79, + 78, + 77, + 75, + 80, + 72, + 73, + 71, + 76 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 183, + "character": 37 + } + ], + "extendedTypes": [ + { + "type": "reference", + "id": 60, + "typeArguments": [ + { + "type": "intrinsic", + "name": "string" + } + ], + "name": "ComponentControlBase" + } + ] + }, + { + "id": 179, + "name": "ComponentControls", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "ComponentControls are defined in key value pairs\nthe name of the property is the key\nand the value is the ComponentControl" + }, + "indexSignature": [ + { + "id": 180, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "ComponentControls are defined in key value pairs\nthe name of the property is the key\nand the value is the ComponentControl" + }, + "parameters": [ + { + "id": 181, + "name": "name", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "reference", + "id": 192, + "name": "ComponentControl" + } + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 357, + "character": 34 + } + ] + }, + { + "id": 192, + "name": "ComponentControl", + "kind": 4194304, + "kindString": "Type alias", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "ComponentControl is a either an object of property settings\nor a shortcut can be used:\n properties: {\n text: 'Hello',\n}," + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 340, + "character": 28 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 70, + "name": "ComponentControlText" + }, + { + "type": "reference", + "id": 82, + "name": "ComponentControlBoolean" + }, + { + "type": "reference", + "id": 91, + "name": "ComponentControlColor" + }, + { + "type": "reference", + "id": 100, + "name": "ComponentControlDate" + }, + { + "type": "reference", + "id": 131, + "name": "ComponentControlObject" + }, + { + "type": "reference", + "id": 140, + "name": "ComponentControlButton" + }, + { + "type": "reference", + "id": 154, + "name": "ComponentControlOptions" + }, + { + "type": "reference", + "id": 166, + "name": "ComponentControlNumber" + }, + { + "type": "reference", + "id": 121, + "name": "ComponentControlArray" + }, + { + "type": "reference", + "id": 111, + "name": "ComponentControlFiles" + } + ] + } + }, + { + "id": 187, + "name": "OptionsListType", + "kind": 4194304, + "kindString": "Type alias", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "value/label pairs or array of OptionsValueType" + }, + "typeParameter": [ + { + "id": 188, + "name": "T", + "kind": 131072, + "kindString": "Type parameter", + "flags": { + "isExported": true + } + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 274, + "character": 27 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reflection", + "declaration": { + "id": 189, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "indexSignature": [ + { + "id": 190, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 191, + "name": "key", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "typeParameter", + "name": "T" + } + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 275, + "character": 3 + } + ] + } + }, + { + "type": "array", + "elementType": { + "type": "reference", + "id": 182, + "typeArguments": [ + { + "type": "typeParameter", + "name": "T" + } + ], + "name": "OptionsValueType" + } + } + ] + } + }, + { + "id": 182, + "name": "OptionsValueType", + "kind": 4194304, + "kindString": "Type alias", + "flags": { + "isExported": true + }, + "typeParameter": [ + { + "id": 183, + "name": "T", + "kind": 131072, + "kindString": "Type parameter", + "flags": { + "isExported": true + } + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 264, + "character": 28 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "typeParameter", + "name": "T" + }, + { + "type": "intrinsic", + "name": "number" + }, + { + "type": "array", + "elementType": { + "type": "intrinsic", + "name": "string" + } + }, + { + "type": "array", + "elementType": { + "type": "intrinsic", + "name": "number" + } + }, + { + "type": "reflection", + "declaration": { + "id": 184, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "children": [ + { + "id": 185, + "name": "label", + "kind": 32, + "kindString": "Variable", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 269, + "character": 11 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 186, + "name": "value", + "kind": 32, + "kindString": "Variable", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "controls.ts", + "line": 269, + "character": 26 + } + ], + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "groups": [ + { + "title": "Variables", + "kind": 32, + "children": [ + 185, + 186 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 269, + "character": 3 + } + ] + } + } + ] + } + } + ], + "groups": [ + { + "title": "Enumerations", + "kind": 4, + "children": [ + 43 + ] + }, + { + "title": "Interfaces", + "kind": 256, + "children": [ + 121, + 60, + 82, + 140, + 91, + 54, + 100, + 111, + 166, + 131, + 154, + 70, + 179 + ] + }, + { + "title": "Type aliases", + "kind": 4194304, + "children": [ + 192, + 187, + 182 + ] + } + ], + "sources": [ + { + "fileName": "controls.ts", + "line": 1, + "character": 0 + } + ] + }, + { + "id": 266, + "name": "\"propsInfo\"", + "kind": 1, + "kindString": "Module", + "flags": { + "isExported": true + }, + "originalName": "/Users/atanasster/component-controls/core/specification/src/propsInfo.ts", + "children": [ + { + "id": 267, + "name": "PropsInfoExtractorFunction", + "kind": 4194304, + "kindString": "Type alias", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "callback function to extract props info table - ie docgen type libraries\nused to extract displayName, and props tables for a component", + "tags": [ + { + "tag": "param", + "text": "full name and path of the component path react-docgen needs it to extract babel configurations.", + "param": "fileName" + }, + { + "tag": "param", + "text": "optional component name react-docgen-typescript supports multiple exports for a file react-docgne does not use it.", + "param": "componentName" + }, + { + "tag": "param", + "text": "optional soure, saves time if its already loaded react-docgen accepts source as input parameter react-docgen-typescript does not use it.\n", + "param": "source" + }, + { + "tag": "returns", + "text": "async or normal function that loads ComponentInfo props info.\n" + } + ] + }, + "sources": [ + { + "fileName": "propsInfo.ts", + "line": 13, + "character": 38 + } + ], + "type": { + "type": "reflection", + "declaration": { + "id": 268, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 269, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 270, + "name": "fileName", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 271, + "name": "componentName", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 272, + "name": "source", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "typeArguments": [ + { + "type": "union", + "types": [ + { + "type": "reference", + "id": 28, + "name": "ComponentInfo" + }, + { + "type": "intrinsic", + "name": "undefined" + } + ] + } + ], + "name": "Promise" + }, + { + "type": "reference", + "id": 28, + "name": "ComponentInfo" + }, + { + "type": "intrinsic", + "name": "undefined" + } + ] + } + } + ], + "sources": [ + { + "fileName": "propsInfo.ts", + "line": 13, + "character": 40 + } + ] + } + } + } + ], + "groups": [ + { + "title": "Type aliases", + "kind": 4194304, + "children": [ + 267 + ] + } + ], + "sources": [ + { + "fileName": "propsInfo.ts", + "line": 1, + "character": 0 + } + ] + }, + { + "id": 193, + "name": "\"stories\"", + "kind": 1, + "kindString": "Module", + "flags": { + "isExported": true + }, + "originalName": "/Users/atanasster/component-controls/core/specification/src/stories.ts", + "children": [ + { + "id": 197, + "name": "ArgUsageLocation", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "children": [ + { + "id": 198, + "name": "loc", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "where in the story source code is the argument used\ncode location is relative to the start of the story" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 17, + "character": 5 + } + ], + "type": { + "type": "reference", + "id": 5, + "name": "CodeLocation" + } + }, + { + "id": 199, + "name": "name", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "optional name for the usage of the argument\nexample: export const story = ({ value }) => ;\nin this example the name will be 'age'" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 24, + "character": 6 + } + ], + "type": { + "type": "reference", + "id": 194, + "name": "SourceIdentifier" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 198, + 199 + ] + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 12, + "character": 33 + } + ] + }, + { + "id": 194, + "name": "SourceIdentifier", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "an identifier/variable.argument in the source code" + }, + "children": [ + { + "id": 196, + "name": "loc", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 10, + "character": 5 + } + ], + "type": { + "type": "reference", + "id": 5, + "name": "CodeLocation" + } + }, + { + "id": 195, + "name": "name", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 9, + "character": 6 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 196, + 195 + ] + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 8, + "character": 33 + } + ] + }, + { + "id": 231, + "name": "Stories", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "map of stories. The id is compatible with CSF story ids" + }, + "indexSignature": [ + { + "id": 232, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "map of stories. The id is compatible with CSF story ids" + }, + "parameters": [ + { + "id": 233, + "name": "id", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "reference", + "id": 208, + "name": "Story" + } + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 132, + "character": 24 + } + ] + }, + { + "id": 234, + "name": "StoriesKind", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "a group of stories. Usually multiple stories are in one csf file\nand the 'group' is the default export\nin the case of MDX stories, the kind is crated using a tag" + }, + "indexSignature": [ + { + "id": 250, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "a group of stories. Usually multiple stories are in one csf file\nand the 'group' is the default export\nin the case of MDX stories, the kind is crated using a tag" + }, + "parameters": [ + { + "id": 251, + "name": "name", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "children": [ + { + "id": 239, + "name": "component", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "id for component associated with the stories file" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 167, + "character": 11 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "intrinsic", + "name": "string" + }, + { + "type": "intrinsic", + "name": "object" + } + ] + } + }, + { + "id": 243, + "name": "components", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "lookup into the global store.components\nsince multiple components of the same name can be used\nexample: ['Button']: 'c:/myapp/Button.tsx'" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 189, + "character": 12 + } + ], + "type": { + "type": "reflection", + "declaration": { + "id": 244, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "indexSignature": [ + { + "id": 245, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 246, + "name": "name", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 189, + "character": 13 + } + ] + } + } + }, + { + "id": 249, + "name": "controls", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "object of key/value pairs specifying the controls for the stories file\nthis will apply to all the stories in the file" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 210, + "character": 10 + } + ], + "type": { + "type": "reference", + "id": 179, + "name": "ComponentControls" + } + }, + { + "id": 247, + "name": "excludeStories", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "list of stories to exclude from the stories file\ncan also use regexp match" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 197, + "character": 16 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "array", + "elementType": { + "type": "intrinsic", + "name": "string" + } + }, + { + "type": "reference", + "name": "RegExp" + } + ] + } + }, + { + "id": 241, + "name": "fileName", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "file name of the file of stories" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 177, + "character": 10 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 248, + "name": "includeStories", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "list of stories to include in the stories file\ncan also use regexp match" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 204, + "character": 16 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "array", + "elementType": { + "type": "intrinsic", + "name": "string" + } + }, + { + "type": "reference", + "name": "RegExp" + } + ] + } + }, + { + "id": 237, + "name": "parameters", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "configuration parameters passed to the story groups\nconfigured either as CSF default export\nor MDX tag" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 157, + "character": 12 + } + ], + "type": { + "type": "reference", + "id": 205, + "name": "StoryParameters" + } + }, + { + "id": 242, + "name": "repository", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "project repository information" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 182, + "character": 12 + } + ], + "type": { + "type": "reference", + "id": 8, + "name": "Repository" + } + }, + { + "id": 238, + "name": "source", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "source code of the entire file of stories" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 162, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 236, + "name": "stories", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "list of stories contained in the file/groups" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 150, + "character": 9 + } + ], + "type": { + "type": "array", + "elementType": { + "type": "intrinsic", + "name": "string" + } + } + }, + { + "id": 240, + "name": "subcomponents", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "multiple components option" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 172, + "character": 15 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "array", + "elementType": { + "type": "intrinsic", + "name": "string" + } + }, + { + "type": "array", + "elementType": { + "type": "intrinsic", + "name": "object" + } + } + ] + } + }, + { + "id": 235, + "name": "title", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "title of the groups of stories (or kind). used to generate CSF story ids" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 145, + "character": 7 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 239, + 243, + 249, + 247, + 241, + 248, + 237, + 242, + 238, + 236, + 240, + 235 + ] + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 141, + "character": 28 + } + ] + }, + { + "id": 252, + "name": "StoriesStore", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "store of stories information in memory afte the loader is applied" + }, + "children": [ + { + "id": 261, + "name": "components", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 225, + "character": 12 + } + ], + "type": { + "type": "reflection", + "declaration": { + "id": 262, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "indexSignature": [ + { + "id": 263, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 264, + "name": "fileName", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "reference", + "id": 32, + "name": "StoryComponent" + } + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 225, + "character": 13 + } + ] + } + } + }, + { + "id": 253, + "name": "kinds", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 219, + "character": 7 + } + ], + "type": { + "type": "reflection", + "declaration": { + "id": 254, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "indexSignature": [ + { + "id": 255, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 256, + "name": "title", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "reference", + "id": 234, + "name": "StoriesKind" + } + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 219, + "character": 8 + } + ] + } + } + }, + { + "id": 257, + "name": "stories", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 222, + "character": 9 + } + ], + "type": { + "type": "reflection", + "declaration": { + "id": 258, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "indexSignature": [ + { + "id": 259, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 260, + "name": "id", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "reference", + "id": 208, + "name": "Story" + } + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 222, + "character": 10 + } + ] + } + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 261, + 253, + 257 + ] + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 218, + "character": 29 + } + ] + }, + { + "id": 208, + "name": "Story", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Story interface - usually extracted by the AST instrumenting loader" + }, + "children": [ + { + "id": 220, + "name": "arguments", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "arguments pass to a CSF story\neg `export const story = props => ;`" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 92, + "character": 11 + } + ], + "type": { + "type": "reference", + "id": 265, + "name": "StoryArguments" + } + }, + { + "id": 225, + "name": "component", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "id for component associated with the story" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 114, + "character": 11 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "intrinsic", + "name": "string" + }, + { + "type": "intrinsic", + "name": "object" + } + ] + } + }, + { + "id": 230, + "name": "controls", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "object of key/value pairs specifying the controls for the story" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 126, + "character": 10 + } + ], + "type": { + "type": "reference", + "id": 179, + "name": "ComponentControls" + } + }, + { + "id": 210, + "name": "id", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "csf id of the story" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 76, + "character": 4 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 211, + "name": "kind", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "title of the file/group of stories" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 81, + "character": 6 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 222, + "name": "loc", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "location in the source file of the story definition" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 100, + "character": 5 + } + ], + "type": { + "type": "reference", + "id": 5, + "name": "CodeLocation" + } + }, + { + "id": 209, + "name": "name", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "name of the Story." + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 71, + "character": 6 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 221, + "name": "parameters", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "configuration parameters passed to the story - either CSF or MDX" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 96, + "character": 12 + } + ], + "type": { + "type": "reference", + "id": 205, + "name": "StoryParameters" + } + }, + { + "id": 212, + "name": "renderFn", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "render function for the story" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 86, + "character": 10 + } + ], + "type": { + "type": "reflection", + "declaration": { + "id": 213, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 214, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 215, + "name": "controls", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reflection", + "declaration": { + "id": 216, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "indexSignature": [ + { + "id": 217, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 218, + "name": "key", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "children": [ + { + "id": 219, + "name": "context", + "kind": 32, + "kindString": "Variable", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 86, + "character": 53 + } + ], + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "groups": [ + { + "title": "Variables", + "kind": 32, + "children": [ + 219 + ] + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 86, + "character": 23 + } + ] + } + } + } + ], + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 86, + "character": 12 + } + ] + } + } + }, + { + "id": 223, + "name": "source", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "the source code of the story, extracted byt the AST instrumenting loaders" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 104, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 226, + "name": "subcomponents", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "multiple components option" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 119, + "character": 15 + } + ], + "type": { + "type": "reflection", + "declaration": { + "id": 227, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "indexSignature": [ + { + "id": 228, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 229, + "name": "key", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "intrinsic", + "name": "string" + }, + { + "type": "intrinsic", + "name": "object" + } + ] + } + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 119, + "character": 17 + } + ] + } + } + }, + { + "id": 224, + "name": "subtitle", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "optional story subtitle property" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 109, + "character": 10 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 220, + 225, + 230, + 210, + 211, + 222, + 209, + 221, + 212, + 223, + 226, + 224 + ] + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 67, + "character": 22 + } + ] + }, + { + "id": 200, + "name": "StoryArgument", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "arguments passed to the 'story' function, extracted by an AST loader" + }, + "children": [ + { + "id": 203, + "name": "loc", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "location of the argument declaration, relative to the story source code" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 43, + "character": 5 + } + ], + "type": { + "type": "reference", + "id": 5, + "name": "CodeLocation" + } + }, + { + "id": 202, + "name": "name", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "the original name of the argument" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 39, + "character": 6 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 204, + "name": "usage", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "list of locations where the argument is used in the body of the story" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 47, + "character": 7 + } + ], + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 197, + "name": "ArgUsageLocation" + } + } + }, + { + "id": 201, + "name": "value", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "either the name used (or a variable alias), or an array of sub-arguments\n({ name: alias })" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 35, + "character": 7 + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "intrinsic", + "name": "string" + }, + { + "type": "reference", + "id": 265, + "name": "StoryArguments" + } + ] + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 203, + 202, + 204, + 201 + ] + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 30, + "character": 30 + } + ] + }, + { + "id": 205, + "name": "StoryParameters", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "list of configuration parameters for stories and 'kinds'\ncan be specified either through CSF or MDX tags" + }, + "indexSignature": [ + { + "id": 206, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "list of configuration parameters for stories and 'kinds'\ncan be specified either through CSF or MDX tags" + }, + "parameters": [ + { + "id": 207, + "name": "name", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 60, + "character": 32 + } + ] + }, + { + "id": 265, + "name": "StoryArguments", + "kind": 4194304, + "kindString": "Type alias", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "list of story arguments. Each argument can be a deconstructed argument of itself\nthe first argument are the control 'values'" + }, + "sources": [ + { + "fileName": "stories.ts", + "line": 54, + "character": 26 + } + ], + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 200, + "name": "StoryArgument" + } + } + } + ], + "groups": [ + { + "title": "Interfaces", + "kind": 256, + "children": [ + 197, + 194, + 231, + 234, + 252, + 208, + 200, + 205 + ] + }, + { + "title": "Type aliases", + "kind": 4194304, + "children": [ + 265 + ] + } + ], + "sources": [ + { + "fileName": "stories.ts", + "line": 1, + "character": 0 + } + ] + }, { "id": 1, - "name": "\"test\"", + "name": "\"utility\"", "kind": 1, "kindString": "Module", "flags": { "isExported": true }, - "originalName": "/Users/atanasster/component-controls/core/specification/src/test.ts", + "originalName": "/Users/atanasster/component-controls/core/specification/src/utility.ts", "children": [ { - "id": 8, - "name": "NodePath", + "id": 5, + "name": "CodeLocation", "kind": 256, "kindString": "Interface", "flags": { "isExported": true }, + "comment": { + "shortText": "location in the source code of a story or part of it\nie. arguments, usage of arguments" + }, "children": [ { - "id": 9, - "name": "parentPath", + "id": 7, + "name": "end", "kind": 1024, "kindString": "Property", "flags": { @@ -34,20 +7140,20 @@ }, "sources": [ { - "fileName": "test.ts", - "line": 7, - "character": 12 + "fileName": "utility.ts", + "line": 18, + "character": 5 } ], "type": { "type": "reference", - "id": 8, - "name": "NodePath" + "id": 2, + "name": "CodePosition" } }, { - "id": 10, - "name": "scope", + "id": 6, + "name": "start", "kind": 1024, "kindString": "Property", "flags": { @@ -55,15 +7161,15 @@ }, "sources": [ { - "fileName": "test.ts", - "line": 8, + "fileName": "utility.ts", + "line": 17, "character": 7 } ], "type": { "type": "reference", "id": 2, - "name": "Scope" + "name": "CodePosition" } } ], @@ -72,31 +7178,34 @@ "title": "Properties", "kind": 1024, "children": [ - 9, - 10 + 7, + 6 ] } ], "sources": [ { - "fileName": "test.ts", - "line": 6, - "character": 25 + "fileName": "utility.ts", + "line": 16, + "character": 29 } ] }, { "id": 2, - "name": "Scope", + "name": "CodePosition", "kind": 256, "kindString": "Interface", "flags": { "isExported": true }, + "comment": { + "shortText": "position in the stories source code\nusually taken from AST traverse loaders" + }, "children": [ { - "id": 3, - "name": "lookup", + "id": 4, + "name": "column", "kind": 1024, "kindString": "Property", "flags": { @@ -104,74 +7213,19 @@ }, "sources": [ { - "fileName": "test.ts", - "line": 2, + "fileName": "utility.ts", + "line": 8, "character": 8 } ], "type": { - "type": "reflection", - "declaration": { - "id": 4, - "name": "__type", - "kind": 65536, - "kindString": "Type literal", - "flags": { - "isExported": true - }, - "signatures": [ - { - "id": 5, - "name": "__call", - "kind": 4096, - "kindString": "Call signature", - "flags": { - "isExported": true - }, - "parameters": [ - { - "id": 6, - "name": "name", - "kind": 32768, - "kindString": "Parameter", - "flags": { - "isExported": true - }, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "reference", - "id": 2, - "name": "Scope" - }, - { - "type": "intrinsic", - "name": "undefined" - } - ] - } - } - ], - "sources": [ - { - "fileName": "test.ts", - "line": 2, - "character": 9 - } - ] - } + "type": "intrinsic", + "name": "number" } }, { - "id": 7, - "name": "node", + "id": 3, + "name": "line", "kind": 1024, "kindString": "Property", "flags": { @@ -179,15 +7233,14 @@ }, "sources": [ { - "fileName": "test.ts", - "line": 3, + "fileName": "utility.ts", + "line": 7, "character": 6 } ], "type": { - "type": "reference", - "id": 8, - "name": "NodePath" + "type": "intrinsic", + "name": "number" } } ], @@ -196,67 +7249,147 @@ "title": "Properties", "kind": 1024, "children": [ - 3, - 7 + 4, + 3 ] } ], "sources": [ { - "fileName": "test.ts", - "line": 1, - "character": 22 + "fileName": "utility.ts", + "line": 6, + "character": 29 } ] }, { - "id": 11, - "name": "ParserPluginWithOptions", - "kind": 4194304, - "kindString": "Type alias", + "id": 8, + "name": "Repository", + "kind": 256, + "kindString": "Interface", "flags": { "isExported": true }, - "sources": [ + "comment": { + "shortText": "information about the repository of the stories and components" + }, + "children": [ { - "fileName": "test.ts", - "line": 11, - "character": 35 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "tuple", - "elements": [ - { - "type": "stringLiteral", - "value": "decorators" - }, - { - "type": "reference", - "id": 8, - "name": "NodePath" - } - ] + "id": 10, + "name": "browse", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true }, - { - "type": "tuple", - "elements": [ - { - "type": "stringLiteral", - "value": "pipelineOperator" - }, - { - "type": "reference", - "id": 2, - "name": "Scope" - } - ] + "comment": { + "shortText": "link for browsing the file" + }, + "sources": [ + { + "fileName": "utility.ts", + "line": 33, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "string" } - ] - } + }, + { + "id": 11, + "name": "docs", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "link for project readme" + }, + "sources": [ + { + "fileName": "utility.ts", + "line": 38, + "character": 6 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 12, + "name": "issues", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "link for filing issues with the project" + }, + "sources": [ + { + "fileName": "utility.ts", + "line": 43, + "character": 8 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 9, + "name": "name", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "shortText": "package name" + }, + "sources": [ + { + "fileName": "utility.ts", + "line": 29, + "character": 6 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 10, + 11, + 12, + 9 + ] + } + ], + "sources": [ + { + "fileName": "utility.ts", + "line": 25, + "character": 27 + } + ] } ], "groups": [ @@ -264,21 +7397,15 @@ "title": "Interfaces", "kind": 256, "children": [ - 8, - 2 - ] - }, - { - "title": "Type aliases", - "kind": 4194304, - "children": [ - 11 + 5, + 2, + 8 ] } ], "sources": [ { - "fileName": "test.ts", + "fileName": "utility.ts", "line": 1, "character": 0 } @@ -290,6 +7417,10 @@ "title": "Modules", "kind": 1, "children": [ + 13, + 42, + 266, + 193, 1 ] }