Work on the docs

This commit is contained in:
Benjamin Bädorf 2022-03-15 20:58:11 +01:00
parent 5b9e531efc
commit ada6cbf461
No known key found for this signature in database
GPG key ID: 4406E80E13CD656C
41 changed files with 16498 additions and 935 deletions

View file

@ -0,0 +1,298 @@
[
{
"displayName": "sb-block",
"description": "Displays a Schlechtenburg block either the mode of the schlechtenburg instance.\nYou can use this to display child blocks inside your own blocks.",
"tags": {},
"exportName": "SbBlock",
"props": [
{
"name": "block",
"description": "The state for the block.",
"type": {
"name": "IBlockData<any>"
},
"required": true
},
{
"name": "onUpdate",
"description": "Called when the block should be updated.",
"type": {
"name": "OnUpdateBlockCb"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
},
{
"name": "onPrependBlock",
"description": "Called when a sibling block should be inserted before the block",
"type": {
"name": "OnPrependBlockCb"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
},
{
"name": "onAppendBlock",
"description": "Called when a sibling block should be inserted after the block",
"type": {
"name": "OnAppendBlockCb"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
},
{
"name": "onRemoveSelf",
"description": "Called when the block should be removed",
"type": {
"name": "OnRemoveSelfCb"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
},
{
"name": "onActivatePrevious",
"description": "Called when the previous sibling block should be activated",
"type": {
"name": "OnActivatePreviousCb"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
},
{
"name": "onActivateNext",
"description": "Called when the next sibling block should be activated",
"type": {
"name": "OnActivateNextCb"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
}
]
},
{
"displayName": "sb-block-ordering",
"exportName": "SbBlockOrdering",
"description": "",
"tags": {},
"props": [
{
"name": "orientation",
"type": {
"name": "string"
},
"defaultValue": {
"func": false,
"value": "null"
}
},
{
"name": "onRemove",
"type": {
"name": "func"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
},
{
"name": "onMoveBackward",
"type": {
"name": "func"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
},
{
"name": "onMoveForward",
"type": {
"name": "func"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
}
]
},
{
"displayName": "sb-block-picker",
"exportName": "SbBlockPicker",
"description": "",
"tags": {},
"props": [
{
"name": "onPickedBlock",
"type": {
"name": "func"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
}
]
},
{
"displayName": "sb-block-placeholder",
"description": "A placeholder for a block.\nDisplays a placeholder for a block, allowing the user to select a block to insert.",
"tags": {
"sbui": [
{
"description": true,
"title": "sbui"
}
]
},
"exportName": "SbBlockPlaceholder",
"props": [
{
"name": "onInsertBlock",
"description": "Called when the user picked a block that should be inserted here.",
"type": {
"name": "func"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
}
]
},
{
"displayName": "sb-block-toolbar",
"exportName": "SbBlockToolbar",
"description": "",
"tags": {}
},
{
"displayName": "sb-button",
"description": "A button in the schlechtenburg theme",
"tags": {
"sbui": [
{
"description": true,
"title": "sbui"
}
]
},
"exportName": "SbButton"
},
{
"displayName": "sb-context-menu",
"exportName": "SbContextMenu",
"description": "",
"tags": {},
"props": [
{
"name": "onClose",
"type": {
"name": "func"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
},
{
"name": "onOpen",
"type": {
"name": "func"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
}
]
},
{
"displayName": "sb-main-menu",
"exportName": "SbMainMenu",
"description": "",
"tags": {},
"props": [
{
"name": "block",
"type": {
"name": "IBlockData<any>"
},
"required": true
}
]
},
{
"displayName": "sb-modal",
"exportName": "SbModal",
"description": "",
"tags": {},
"props": [
{
"name": "open",
"type": {
"name": "boolean"
},
"defaultValue": {
"func": false,
"value": "false"
}
},
{
"name": "onClose",
"type": {
"name": "func"
},
"defaultValue": {
"func": true,
"value": "() => {}"
}
}
]
},
{
"displayName": "sb-select",
"description": "A select input in the schlechtenburg theme",
"tags": {
"sbui": [
{
"description": true,
"title": "sbui"
}
]
},
"exportName": "SbSelect"
},
{
"displayName": "sb-toolbar",
"description": "Toolbar in the schlechtenburg theme",
"tags": {
"sbui": [
{
"description": true,
"title": "sbui"
}
]
},
"exportName": "SbToolbar"
},
{
"displayName": "sb-main-menu",
"exportName": "SbTreeBlockSelect",
"description": "",
"tags": {}
}
]

5561
packages/core/docs/lib.json Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,242 +0,0 @@
/**
* The **ResizeObserver** interface reports changes to the dimensions of an
* [Element](https://developer.mozilla.org/en-US/docs/Web/API/Element)'s content
* or border box, or the bounding box of an
* [SVGElement](https://developer.mozilla.org/en-US/docs/Web/API/SVGElement).
*
* > **Note**: The content box is the box in which content can be placed,
* > meaning the border box minus the padding and border width. The border box
* > encompasses the content, padding, and border. See
* > [The box model](https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/The_box_model)
* > for further explanation.
*
* `ResizeObserver` avoids infinite callback loops and cyclic dependencies that
* are often created when resizing via a callback function. It does this by only
* processing elements deeper in the DOM in subsequent frames. Implementations
* should, if they follow the specification, invoke resize events before paint
* and after layout.
*
* @see https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserver
*/
declare class ResizeObserver {
/**
* The **ResizeObserver** constructor creates a new `ResizeObserver` object,
* which can be used to report changes to the content or border box of an
* `Element` or the bounding box of an `SVGElement`.
*
* @example
* var ResizeObserver = new ResizeObserver(callback)
*
* @param callback
* The function called whenever an observed resize occurs. The function is
* called with two parameters:
* * **entries**
* An array of
* [ResizeObserverEntry](https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserverEntry)
* objects that can be used to access the new dimensions of the element
* after each change.
* * **observer**
* A reference to the `ResizeObserver` itself, so it will definitely be
* accessible from inside the callback, should you need it. This could be
* used for example to automatically unobserve the observer when a certain
* condition is reached, but you can omit it if you don't need it.
*
* The callback will generally follow a pattern along the lines of:
* ```js
* function(entries, observer) {
* for (let entry of entries) {
* // Do something to each entry
* // and possibly something to the observer itself
* }
* }
* ```
*
* The following snippet is taken from the
* [resize-observer-text.html](https://mdn.github.io/dom-examples/resize-observer/resize-observer-text.html)
* ([see source](https://github.com/mdn/dom-examples/blob/master/resize-observer/resize-observer-text.html))
* example:
* @example
* const resizeObserver = new ResizeObserver(entries => {
* for (let entry of entries) {
* if(entry.contentBoxSize) {
* h1Elem.style.fontSize = Math.max(1.5, entry.contentBoxSize.inlineSize/200) + 'rem';
* pElem.style.fontSize = Math.max(1, entry.contentBoxSize.inlineSize/600) + 'rem';
* } else {
* h1Elem.style.fontSize = Math.max(1.5, entry.contentRect.width/200) + 'rem';
* pElem.style.fontSize = Math.max(1, entry.contentRect.width/600) + 'rem';
* }
* }
* });
*
* resizeObserver.observe(divElem);
*/
constructor(callback: ResizeObserverCallback);
/**
* The **disconnect()** method of the
* [ResizeObserver](https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserver)
* interface unobserves all observed
* [Element](https://developer.mozilla.org/en-US/docs/Web/API/Element) or
* [SVGElement](https://developer.mozilla.org/en-US/docs/Web/API/SVGElement)
* targets.
*/
disconnect: () => void;
/**
* The `observe()` method of the
* [ResizeObserver](https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserver)
* interface starts observing the specified
* [Element](https://developer.mozilla.org/en-US/docs/Web/API/Element) or
* [SVGElement](https://developer.mozilla.org/en-US/docs/Web/API/SVGElement).
*
* @example
* resizeObserver.observe(target, options);
*
* @param target
* A reference to an
* [Element](https://developer.mozilla.org/en-US/docs/Web/API/Element) or
* [SVGElement](https://developer.mozilla.org/en-US/docs/Web/API/SVGElement)
* to be observed.
*
* @param options
* An options object allowing you to set options for the observation.
* Currently this only has one possible option that can be set.
*/
observe: (target: Element, options?: ResizeObserverObserveOptions) => void;
/**
* The **unobserve()** method of the
* [ResizeObserver](https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserver)
* interface ends the observing of a specified
* [Element](https://developer.mozilla.org/en-US/docs/Web/API/Element) or
* [SVGElement](https://developer.mozilla.org/en-US/docs/Web/API/SVGElement).
*/
unobserve: (target: Element) => void;
}
interface ResizeObserverObserveOptions {
/**
* Sets which box model the observer will observe changes to. Possible values
* are `content-box` (the default), and `border-box`.
*
* @default "content-box"
*/
box?: "content-box" | "border-box";
}
/**
* The function called whenever an observed resize occurs. The function is
* called with two parameters:
*
* @param entries
* An array of
* [ResizeObserverEntry](https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserverEntry)
* objects that can be used to access the new dimensions of the element after
* each change.
*
* @param observer
* A reference to the `ResizeObserver` itself, so it will definitely be
* accessible from inside the callback, should you need it. This could be used
* for example to automatically unobserve the observer when a certain condition
* is reached, but you can omit it if you don't need it.
*
* The callback will generally follow a pattern along the lines of:
* @example
* function(entries, observer) {
* for (let entry of entries) {
* // Do something to each entry
* // and possibly something to the observer itself
* }
* }
*
* @example
* const resizeObserver = new ResizeObserver(entries => {
* for (let entry of entries) {
* if(entry.contentBoxSize) {
* h1Elem.style.fontSize = Math.max(1.5, entry.contentBoxSize.inlineSize/200) + 'rem';
* pElem.style.fontSize = Math.max(1, entry.contentBoxSize.inlineSize/600) + 'rem';
* } else {
* h1Elem.style.fontSize = Math.max(1.5, entry.contentRect.width/200) + 'rem';
* pElem.style.fontSize = Math.max(1, entry.contentRect.width/600) + 'rem';
* }
* }
* });
*
* resizeObserver.observe(divElem);
*/
type ResizeObserverCallback = (
entries: ResizeObserverEntry[],
observer: ResizeObserver,
) => void;
/**
* The **ResizeObserverEntry** interface represents the object passed to the
* [ResizeObserver()](https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserver/ResizeObserver)
* constructor's callback function, which allows you to access the new
* dimensions of the
* [Element](https://developer.mozilla.org/en-US/docs/Web/API/Element) or
* [SVGElement](https://developer.mozilla.org/en-US/docs/Web/API/SVGElement)
* being observed.
*/
interface ResizeObserverEntry {
/**
* An object containing the new border box size of the observed element when
* the callback is run.
*/
readonly borderBoxSize: ResizeObserverEntryBoxSize;
/**
* An object containing the new content box size of the observed element when
* the callback is run.
*/
readonly contentBoxSize: ResizeObserverEntryBoxSize;
/**
* A [DOMRectReadOnly](https://developer.mozilla.org/en-US/docs/Web/API/DOMRectReadOnly)
* object containing the new size of the observed element when the callback is
* run. Note that this is better supported than the above two properties, but
* it is left over from an earlier implementation of the Resize Observer API,
* is still included in the spec for web compat reasons, and may be deprecated
* in future versions.
*/
// node_modules/typescript/lib/lib.dom.d.ts
readonly contentRect: DOMRectReadOnly;
/**
* A reference to the
* [Element](https://developer.mozilla.org/en-US/docs/Web/API/Element) or
* [SVGElement](https://developer.mozilla.org/en-US/docs/Web/API/SVGElement)
* being observed.
*/
readonly target: Element;
}
/**
* The **borderBoxSize** read-only property of the
* [ResizeObserverEntry](https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserverEntry)
* interface returns an object containing the new border box size of the
* observed element when the callback is run.
*/
interface ResizeObserverEntryBoxSize {
/**
* The length of the observed element's border box in the block dimension. For
* boxes with a horizontal
* [writing-mode](https://developer.mozilla.org/en-US/docs/Web/CSS/writing-mode),
* this is the vertical dimension, or height; if the writing-mode is vertical,
* this is the horizontal dimension, or width.
*/
blockSize: number;
/**
* The length of the observed element's border box in the inline dimension.
* For boxes with a horizontal
* [writing-mode](https://developer.mozilla.org/en-US/docs/Web/CSS/writing-mode),
* this is the horizontal dimension, or width; if the writing-mode is
* vertical, this is the vertical dimension, or height.
*/
inlineSize: number;
}
interface Window {
ResizeObserver: typeof ResizeObserver;
}

View file

@ -1,5 +1,3 @@
/// <reference types="resize-observer-browser" />
import { import {
Ref, Ref,
ref, ref,

View file

@ -39,12 +39,6 @@
"@types/lodash": "*" "@types/lodash": "*"
} }
}, },
"@types/resize-observer-browser": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/@types/resize-observer-browser/-/resize-observer-browser-0.1.5.tgz",
"integrity": "sha512-8k/67Z95Goa6Lznuykxkfhq9YU3l1Qe6LNZmwde1u7802a3x8v44oq0j91DICclxatTr0rNnhXx7+VTIetSrSQ==",
"dev": true
},
"@types/uuid": { "@types/uuid": {
"version": "8.3.0", "version": "8.3.0",
"resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.0.tgz", "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.0.tgz",

View file

@ -6,12 +6,16 @@
"homepage": "", "homepage": "",
"license": "GPL-3.0-or-later", "license": "GPL-3.0-or-later",
"main": "lib/index.ts", "main": "lib/index.ts",
"scripts": {
"docgen": "docgen"
},
"directories": { "directories": {
"lib": "lib", "lib": "lib",
"test": "__tests__" "test": "__tests__"
}, },
"files": [ "files": [
"lib" "lib",
"docs"
], ],
"publishConfig": { "publishConfig": {
"access": "public" "access": "public"
@ -21,13 +25,14 @@
"url": "git@git.b12f.io:b12f/schlechtenburg.git" "url": "git@git.b12f.io:b12f/schlechtenburg.git"
}, },
"dependencies": { "dependencies": {
"@schlechtenburg/docgen": "^0.0.0",
"lodash-es": "^4.17.21", "lodash-es": "^4.17.21",
"uuid": "^8.3.2", "uuid": "^8.3.2",
"vue": "^3.0.7" "vue": "^3.0.7"
}, },
"devDependencies": { "devDependencies": {
"@schlechtenburg/docgen": "^0.0.0",
"@types/lodash-es": "^4.17.4", "@types/lodash-es": "^4.17.4",
"@types/resize-observer-browser": "^0.1.5",
"@types/uuid": "^8.3.0" "@types/uuid": "^8.3.0"
} }
} }

View file

@ -0,0 +1,7 @@
{
"extends": "../../tsconfig.json",
"typedocOptions": {
"entryPoints": ["lib/index.ts"],
"json": "docs"
}
}

View file

@ -1,17 +0,0 @@
{
"tags": {
"allowUnknownTags": true,
"dictionaries": ["jsdoc", "closure"]
},
"source": {
"include": ["./lib"],
"includePattern": ".(jsx|js|ts|tsx)$"
},
"sourceType": "module",
"plugins": [
"jsdoc-plugin-typescript"
],
"typescript": {
"moduleRoot": "src"
}
}

File diff suppressed because it is too large Load diff

View file

@ -1,21 +1,35 @@
{ {
"name": "@schlechtenburg/docgen", "name": "@schlechtenburg/docgen",
"version": "1.0.0", "version": "0.0.0",
"description": "", "description": "",
"main": "index.js", "bin": {
"docgen": "parse.mjs"
},
"main": "parse.mjs",
"files": [
"parse.mjs"
],
"scripts": { "scripts": {
"test": "echo \"Error: no test specified\" && exit 1" "test": "echo \"Error: no test specified\" && exit 1"
}, },
"author": "", "publishConfig": {
"license": "ISC", "access": "public"
"devDependencies": { },
"jsdoc": "^3.6.10", "repository": {
"jsdoc-plugin-typescript": "^2.0.6", "type": "git",
"url": "git@git.b12f.io:b12f/schlechtenburg.git"
},
"author": "Benjamin Bädorf <hello@benjaminbaedorf.eu>",
"license": "GPL-3.0-or-later",
"dependencies": {
"glob": "^7.2.0",
"glob-promise": "^4.2.2",
"typedoc": "^0.22.13",
"typescript": "^4.6.2",
"vue": "^3.2.31", "vue": "^3.2.31",
"vue-docgen-api": "^4.44.18" "vue-docgen-api": "^4.44.18"
}, },
"dependencies": { "devDependencies": {
"glob": "^7.2.0", "@types/pug": "^2.0.6"
"glob-promise": "^4.2.2"
} }
} }

42
packages/docgen/parse.mjs Normal file → Executable file
View file

@ -1,17 +1,27 @@
#!/usr/bin/env node
import { parse } from 'vue-docgen-api' import { parse } from 'vue-docgen-api'
import { join } from 'path' import { join } from 'path'
import glob from 'glob-promise' import glob from 'glob-promise'
import TypeDoc from 'typedoc'
import { writeFile } from 'fs/promises'
(async () => { const DOCS_PATH = join(process.cwd(), process.argv[2] || './docs');
const files = (await Promise.all(process.argv.slice(2) const LIB_PATH = join(process.cwd(), process.argv[3] || './lib');
.map(
(path) => glob(path) const getTSDocs = (outputFile) => {
.then( const app = new TypeDoc.Application();
(found_paths) => found_paths app.options.addReader(new TypeDoc.TSConfigReader());
.map(found_path => join(process.cwd(), found_path))
) app.bootstrap();
) const project = app.convert();
)).flat(); return app.generateJson(project, outputFile);
};
const getVueComponentDocs = async (dir) => {
const found = await glob(join(dir, '/**/*'));
const files = found
.filter(found_path => found_path.match(/\.(tsx|jsx|vue)$/));
const vueParsed = await Promise.all(files const vueParsed = await Promise.all(files
.map(file => parse(file) .map(file => parse(file)
@ -23,5 +33,15 @@ import glob from 'glob-promise'
) )
); );
const vueFiltered = vueParsed.filter(p => p); const vueFiltered = vueParsed.filter(p => p);
console.log(JSON.stringify(vueFiltered, null, 2)); return vueFiltered;
};
(async () => {
const tsDocsOutput = join(DOCS_PATH, 'lib.json');
await getTSDocs(tsDocsOutput);
const vueComponents = await getVueComponentDocs(LIB_PATH);
const componentJsonPath = join(DOCS_PATH, 'components.json');
console.log(`Info: JSON written to ${componentJsonPath}`);
await writeFile(componentJsonPath, JSON.stringify(vueComponents, null, 2));
})(); })();

View file

@ -1,17 +1,8 @@
import { import {
onBeforeMount,
computed,
defineComponent, defineComponent,
reactive,
ref,
} from 'vue'; } from 'vue';
import { RouterView } from 'vue-router';
import { SbMain, IBlockData, SbMode } from '@schlechtenburg/core'; import SideMenu from './Sidemenu';
import SbLayout from '@schlechtenburg/layout';
import SbHeading from '@schlechtenburg/heading';
import SbParagraph from '@schlechtenburg/paragraph';
import SbImage from '@schlechtenburg/image';
import './App.scss'; import './App.scss';
@ -19,70 +10,9 @@ export default defineComponent({
name: 'App', name: 'App',
setup() { setup() {
const activeTab = ref('edit'); return () => <div class="app">
const block: IBlockData<any> = reactive({ <SideMenu></SideMenu>
name: 'none', <RouterView></RouterView>
id: '0',
data: null,
});
onBeforeMount(async () => {
const res = await fetch('./initial-data.json');
const data = await res.json();
block.name = data.name;
block.id = data.id;
block.data = data.data;
});
const displayedElement = computed(() => {
switch (activeTab.value) {
case SbMode.Edit:
return <SbMain
block={block}
onUpdate={(newBlock: IBlockData<any>) => {
block.data = newBlock.data;
}}
availableBlocks={[
SbLayout,
SbHeading,
SbImage,
SbParagraph,
]}
key="edit"
mode={SbMode.Edit}
/>;
case SbMode.Display:
return <SbMain
block={block}
availableBlocks={[
SbLayout,
SbHeading,
SbImage,
SbParagraph,
]}
key="display"
mode={SbMode.Display}
/>;
case 'data':
return <pre><code>{ JSON.stringify(block, null, 2) }</code></pre>;
}
});
return () => {
return <div class="app">
<select
class="app--mode"
value={activeTab.value}
onChange={($event: Event) => {
activeTab.value = ($event.target as HTMLSelectElement).value;
}}
>
<option>edit</option>
<option>display</option>
<option>data</option>
</select>
{displayedElement.value}
</div>; </div>;
};
}, },
}); });

View file

@ -0,0 +1,88 @@
import {
onBeforeMount,
computed,
defineComponent,
reactive,
ref,
} from 'vue';
import { SbMain, IBlockData, SbMode } from '@schlechtenburg/core';
import SbLayout from '@schlechtenburg/layout';
import SbHeading from '@schlechtenburg/heading';
import SbParagraph from '@schlechtenburg/paragraph';
import SbImage from '@schlechtenburg/image';
import './App.scss';
export default defineComponent({
name: 'App',
setup() {
const activeTab = ref('edit');
const block: IBlockData<any> = reactive({
name: 'none',
id: '0',
data: null,
});
onBeforeMount(async () => {
const res = await fetch('./initial-data.json');
const data = await res.json();
block.name = data.name;
block.id = data.id;
block.data = data.data;
});
const displayedElement = computed(() => {
switch (activeTab.value) {
case SbMode.Edit:
return <SbMain
block={block}
onUpdate={(newBlock: IBlockData<any>) => {
block.data = newBlock.data;
}}
availableBlocks={[
SbLayout,
SbHeading,
SbImage,
SbParagraph,
]}
key="edit"
mode={SbMode.Edit}
/>;
case SbMode.Display:
return <SbMain
block={block}
availableBlocks={[
SbLayout,
SbHeading,
SbImage,
SbParagraph,
]}
key="display"
mode={SbMode.Display}
/>;
case 'data':
return <pre><code>{ JSON.stringify(block, null, 2) }</code></pre>;
}
});
return () => {
return <div class="app">
<select
class="app--mode"
value={activeTab.value}
onChange={($event: Event) => {
activeTab.value = ($event.target as HTMLSelectElement).value;
}}
>
<option>edit</option>
<option>display</option>
<option>data</option>
</select>
{displayedElement.value}
</div>;
};
},
});

View file

View file

@ -0,0 +1,11 @@
import { defineComponent } from 'vue';
import './Introduction.scss';
export default defineComponent({
name: 'Introduction',
setup() {
return () => <div class="introduction">Introduction</div>;
},
});

View file

View file

@ -0,0 +1,12 @@
import { defineComponent } from 'vue';
import './Sidemenu.scss';
export default defineComponent({
name: 'Sidemenu',
setup() {
return () => <div class="sidemenu">
</div>;
},
});

View file

@ -1,7 +0,0 @@
'use strict';
module.exports = docs;
function docs() {
// TODO
}

15
packages/docs/lib/docs.ts Normal file
View file

@ -0,0 +1,15 @@
import { ComponentDoc } from 'vue-docgen-api';
import { ProjectReflection } from 'typedoc';
import coreComponents from '@schlechtenburg/core/docs/components.json';
import coreLib from '@schlechtenburg/core/docs/lib.json';
export interface IDocs {
components: ComponentDoc;
lib: ProjectReflection;
};
export const core = {
lib: coreLib,
components: coreComponents,
};

View file

@ -1,5 +1,14 @@
import { createApp } from 'vue' import { createApp } from 'vue'
import { createRouter, createWebHistory } from 'vue-router';
import routes from './routes';
import App from './App'; import App from './App';
import './main.scss'; import './main.scss';
createApp(App).mount('#app'); const router = createRouter({
routes,
history: createWebHistory(),
});
const app = createApp(App);
app.use(router);
app.mount('#app');

View file

@ -0,0 +1,11 @@
export default [
{
path: '/',
component: () => import('./Introduction').then(d => d.default),
},
{
path: '/example',
component: () => import('./Example').then(d => d.default),
},
]

File diff suppressed because it is too large Load diff

View file

@ -32,17 +32,21 @@
"@schlechtenburg/layout": "^0.0.0", "@schlechtenburg/layout": "^0.0.0",
"@schlechtenburg/paragraph": "^0.0.0", "@schlechtenburg/paragraph": "^0.0.0",
"lodash-es": "^4.17.21", "lodash-es": "^4.17.21",
"vue": "^3.0.7" "vue": "^3.0.7",
"vue-router": "4"
}, },
"devDependencies": { "devDependencies": {
"@types/pug": "^2.0.6",
"@vitejs/plugin-vue-jsx": "^1.1.2", "@vitejs/plugin-vue-jsx": "^1.1.2",
"@vue/compiler-sfc": "^3.0.7", "@vue/compiler-sfc": "^3.0.7",
"@vuedx/typecheck": "^0.6.3", "@vuedx/typecheck": "^0.6.3",
"@vuedx/typescript-plugin-vue": "^0.6.3", "@vuedx/typescript-plugin-vue": "^0.6.3",
"concurrently": "^6.0.0", "concurrently": "^6.0.0",
"sass": "^1.32.8", "sass": "^1.32.8",
"typedoc": "^0.22.13",
"typescript": "^4.2.3", "typescript": "^4.2.3",
"vite": "^2.0.5", "vite": "^2.0.5",
"vite-plugin-md2vue": "^1.1.1",
"vue-docgen-api": "^4.44.18" "vue-docgen-api": "^4.44.18"
} }
} }

View file

@ -1,12 +1,15 @@
import { defineConfig } from 'vite';
import vueJsx from '@vitejs/plugin-vue-jsx'; import vueJsx from '@vitejs/plugin-vue-jsx';
import vitePluginMd2Vue from 'vite-plugin-md2vue';
export default { export default defineConfig({
base: './', base: './',
resolve: { resolve: {
dedupe: [ 'vue' ], dedupe: [ 'vue' ],
}, },
plugins: [ plugins: [
vueJsx({}), vueJsx({}),
vitePluginMd2Vue(),
], ],
esbuild: { esbuild: {
jsxFactory: 'h', jsxFactory: 'h',
@ -16,4 +19,4 @@ export default {
sourcemap: true, sourcemap: true,
outDir: 'docs', outDir: 'docs',
}, },
}; });

View file

@ -0,0 +1 @@
[]

File diff suppressed because it is too large Load diff

View file

@ -21,11 +21,16 @@
"url": "git@git.b12f.io:b12f/schlechtenburg.git" "url": "git@git.b12f.io:b12f/schlechtenburg.git"
}, },
"scripts": { "scripts": {
"docgen": "docgen",
"test": "echo \"Error: run tests from root\" && exit 1" "test": "echo \"Error: run tests from root\" && exit 1"
}, },
"dependencies": { "dependencies": {
"@schlechtenburg/core": "^0.0.0", "@schlechtenburg/core": "^0.0.0",
"@schlechtenburg/docgen": "^0.0.0",
"@schlechtenburg/paragraph": "^0.0.0", "@schlechtenburg/paragraph": "^0.0.0",
"vue": "^3.0.7" "vue": "^3.0.7"
},
"devDependencies": {
"@schlechtenburg/docgen": "^0.0.0"
} }
} }

View file

@ -0,0 +1,7 @@
{
"extends": "../../tsconfig.json",
"typedocOptions": {
"entryPoints": ["lib/index.ts"],
"json": "docs"
}
}

View file

@ -0,0 +1 @@
[]

View file

@ -0,0 +1,975 @@
{
"id": 0,
"name": "@schlechtenburg/image",
"kind": 1,
"kindString": "Project",
"flags": {},
"originalName": "",
"children": [
{
"id": 50,
"name": "IImageData",
"kind": 256,
"kindString": "Interface",
"flags": {},
"children": [
{
"id": 52,
"name": "alt",
"kind": 1024,
"kindString": "Property",
"flags": {},
"sources": [
{
"fileName": "util.ts",
"line": 13,
"character": 2
}
],
"type": {
"type": "intrinsic",
"name": "string"
}
},
{
"id": 53,
"name": "description",
"kind": 1024,
"kindString": "Property",
"flags": {},
"sources": [
{
"fileName": "util.ts",
"line": 14,
"character": 2
}
],
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reference",
"name": "IParagraphData"
}
],
"name": "IBlockData"
}
},
{
"id": 51,
"name": "src",
"kind": 1024,
"kindString": "Property",
"flags": {},
"sources": [
{
"fileName": "util.ts",
"line": 12,
"character": 2
}
],
"type": {
"type": "intrinsic",
"name": "string"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
52,
53,
51
]
}
],
"sources": [
{
"fileName": "util.ts",
"line": 11,
"character": 17
}
]
},
{
"id": 2,
"name": "default",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 3,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 33,
"name": "display",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reflection",
"declaration": {
"id": 34,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 35,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 36,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 38,
"name": "default",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 39,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 40,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "IImageData"
}
}
]
}
},
"defaultValue": "getDefaultData"
},
{
"id": 37,
"name": "type",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reference",
"id": 50,
"name": "IImageData"
}
],
"qualifiedName": "PropType",
"package": "@vue/runtime-core",
"name": "PropType"
},
"defaultValue": "..."
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
38,
37
]
}
]
}
},
"defaultValue": "..."
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
35
]
}
]
}
},
{
"type": "reflection",
"declaration": {
"id": 41,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 42,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "reference",
"qualifiedName": "global.JSX.Element",
"package": "@vue/runtime-dom",
"name": "Element"
}
}
]
}
},
{
"type": "intrinsic",
"name": "unknown"
},
{
"type": "reflection",
"declaration": {
"id": 43,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {}
}
},
{
"type": "reflection",
"declaration": {
"id": 44,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {}
}
},
{
"type": "reference",
"qualifiedName": "ComponentOptionsMixin",
"package": "@vue/runtime-core",
"name": "ComponentOptionsMixin"
},
{
"type": "reference",
"qualifiedName": "ComponentOptionsMixin",
"package": "@vue/runtime-core",
"name": "ComponentOptionsMixin"
},
{
"type": "reference",
"typeArguments": [
{
"type": "intrinsic",
"name": "string"
},
{
"type": "intrinsic",
"name": "any"
}
],
"qualifiedName": "Record",
"package": "typescript",
"name": "Record"
},
{
"type": "intrinsic",
"name": "string"
},
{
"type": "reference",
"qualifiedName": "PublicProps",
"package": "@vue/runtime-core",
"name": "PublicProps"
},
{
"type": "reference",
"typeArguments": [
{
"type": "intersection",
"types": [
{
"type": "reflection",
"declaration": {
"id": 45,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 46,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "IImageData"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
46
]
}
]
}
},
{
"type": "reflection",
"declaration": {
"id": 47,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {}
}
}
]
}
],
"qualifiedName": "Readonly",
"package": "typescript",
"name": "Readonly"
},
{
"type": "reflection",
"declaration": {
"id": 48,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 49,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "IImageData"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
49
]
}
]
}
}
],
"qualifiedName": "DefineComponent",
"package": "@vue/runtime-core",
"name": "DefineComponent"
},
"defaultValue": "..."
},
{
"id": 8,
"name": "edit",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reflection",
"declaration": {
"id": 9,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 16,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 17,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 19,
"name": "default",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 20,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 21,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "IImageData"
}
}
]
}
},
"defaultValue": "getDefaultData"
},
{
"id": 18,
"name": "type",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reference",
"id": 50,
"name": "IImageData"
}
],
"qualifiedName": "PropType",
"package": "@vue/runtime-core",
"name": "PropType"
},
"defaultValue": "..."
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
19,
18
]
}
]
}
},
"defaultValue": "..."
},
{
"id": 10,
"name": "onUpdate",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 11,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 13,
"name": "default",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 14,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 15,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "intrinsic",
"name": "void"
}
}
]
}
},
"defaultValue": "..."
},
{
"id": 12,
"name": "type",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reference",
"typeArguments": [
{
"type": "reference",
"id": 50,
"name": "IImageData"
}
],
"name": "OnUpdateSelfCb"
}
],
"qualifiedName": "PropType",
"package": "@vue/runtime-core",
"name": "PropType"
},
"defaultValue": "..."
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
13,
12
]
}
]
}
},
"defaultValue": "..."
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
16,
10
]
}
]
}
},
{
"type": "reflection",
"declaration": {
"id": 22,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 23,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "reference",
"qualifiedName": "global.JSX.Element",
"package": "@vue/runtime-dom",
"name": "Element"
}
}
]
}
},
{
"type": "intrinsic",
"name": "unknown"
},
{
"type": "reflection",
"declaration": {
"id": 24,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {}
}
},
{
"type": "reflection",
"declaration": {
"id": 25,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {}
}
},
{
"type": "reference",
"qualifiedName": "ComponentOptionsMixin",
"package": "@vue/runtime-core",
"name": "ComponentOptionsMixin"
},
{
"type": "reference",
"qualifiedName": "ComponentOptionsMixin",
"package": "@vue/runtime-core",
"name": "ComponentOptionsMixin"
},
{
"type": "reference",
"typeArguments": [
{
"type": "intrinsic",
"name": "string"
},
{
"type": "intrinsic",
"name": "any"
}
],
"qualifiedName": "Record",
"package": "typescript",
"name": "Record"
},
{
"type": "intrinsic",
"name": "string"
},
{
"type": "reference",
"qualifiedName": "PublicProps",
"package": "@vue/runtime-core",
"name": "PublicProps"
},
{
"type": "reference",
"typeArguments": [
{
"type": "intersection",
"types": [
{
"type": "reflection",
"declaration": {
"id": 26,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 28,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "IImageData"
}
},
{
"id": 27,
"name": "onUpdate",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reference",
"id": 50,
"name": "IImageData"
}
],
"name": "OnUpdateSelfCb"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
28,
27
]
}
]
}
},
{
"type": "reflection",
"declaration": {
"id": 29,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {}
}
}
]
}
],
"qualifiedName": "Readonly",
"package": "typescript",
"name": "Readonly"
},
{
"type": "reflection",
"declaration": {
"id": 30,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 32,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "IImageData"
}
},
{
"id": 31,
"name": "onUpdate",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reference",
"id": 50,
"name": "IImageData"
}
],
"name": "OnUpdateSelfCb"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
32,
31
]
}
]
}
}
],
"qualifiedName": "DefineComponent",
"package": "@vue/runtime-core",
"name": "DefineComponent"
},
"defaultValue": "..."
},
{
"id": 5,
"name": "getDefaultData",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 6,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 7,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "IImageData"
}
}
]
}
}
},
{
"id": 4,
"name": "name",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "intrinsic",
"name": "string"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
33,
8,
5,
4
]
}
]
}
}
},
{
"id": 1,
"name": "name",
"kind": 32,
"kindString": "Variable",
"flags": {
"isConst": true
},
"sources": [
{
"fileName": "index.ts",
"line": 5,
"character": 13
}
],
"type": {
"type": "literal",
"value": "sb-image"
},
"defaultValue": "'sb-image'"
},
{
"id": 54,
"name": "getDefaultData",
"kind": 64,
"kindString": "Function",
"flags": {},
"sources": [
{
"fileName": "util.ts",
"line": 17,
"character": 13
}
],
"signatures": [
{
"id": 55,
"name": "getDefaultData",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "IImageData"
}
}
]
}
],
"groups": [
{
"title": "Interfaces",
"kind": 256,
"children": [
50
]
},
{
"title": "Properties",
"kind": 1024,
"children": [
2
]
},
{
"title": "Variables",
"kind": 32,
"children": [
1
]
},
{
"title": "Functions",
"kind": 64,
"children": [
54
]
}
],
"sources": [
{
"fileName": "index.ts",
"line": 1,
"character": 0
}
]
}

View file

@ -21,11 +21,16 @@
"url": "git@git.b12f.io:b12f/schlechtenburg.git" "url": "git@git.b12f.io:b12f/schlechtenburg.git"
}, },
"scripts": { "scripts": {
"docgen": "docgen",
"test": "echo \"Error: run tests from root\" && exit 1" "test": "echo \"Error: run tests from root\" && exit 1"
}, },
"dependencies": { "dependencies": {
"@schlechtenburg/core": "^0.0.0", "@schlechtenburg/core": "^0.0.0",
"@schlechtenburg/docgen": "^0.0.0",
"@schlechtenburg/paragraph": "^0.0.0", "@schlechtenburg/paragraph": "^0.0.0",
"vue": "^3.0.7" "vue": "^3.0.7"
},
"devDependencies": {
"@schlechtenburg/docgen": "^0.0.0"
} }
} }

View file

@ -0,0 +1,7 @@
{
"extends": "../../tsconfig.json",
"typedocOptions": {
"entryPoints": ["lib/index.ts"],
"json": "docs"
}
}

View file

@ -0,0 +1 @@
[]

View file

@ -0,0 +1,959 @@
{
"id": 0,
"name": "@schlechtenburg/layout",
"kind": 1,
"kindString": "Project",
"flags": {},
"originalName": "",
"children": [
{
"id": 50,
"name": "ILayoutData",
"kind": 256,
"kindString": "Interface",
"flags": {},
"children": [
{
"id": 52,
"name": "children",
"kind": 1024,
"kindString": "Property",
"flags": {},
"sources": [
{
"fileName": "util.ts",
"line": 5,
"character": 2
}
],
"type": {
"type": "array",
"elementType": {
"type": "reference",
"typeArguments": [
{
"type": "intrinsic",
"name": "any"
}
],
"name": "IBlockData"
}
}
},
{
"id": 51,
"name": "orientation",
"kind": 1024,
"kindString": "Property",
"flags": {},
"sources": [
{
"fileName": "util.ts",
"line": 4,
"character": 2
}
],
"type": {
"type": "intrinsic",
"name": "string"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
52,
51
]
}
],
"sources": [
{
"fileName": "util.ts",
"line": 3,
"character": 17
}
]
},
{
"id": 2,
"name": "default",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 3,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 33,
"name": "display",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reflection",
"declaration": {
"id": 34,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 35,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 36,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 38,
"name": "default",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 39,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 40,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "ILayoutData"
}
}
]
}
},
"defaultValue": "getDefaultData"
},
{
"id": 37,
"name": "type",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reference",
"id": 50,
"name": "ILayoutData"
}
],
"qualifiedName": "PropType",
"package": "@vue/runtime-core",
"name": "PropType"
},
"defaultValue": "..."
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
38,
37
]
}
]
}
},
"defaultValue": "..."
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
35
]
}
]
}
},
{
"type": "reflection",
"declaration": {
"id": 41,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 42,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "reference",
"qualifiedName": "global.JSX.Element",
"package": "@vue/runtime-dom",
"name": "Element"
}
}
]
}
},
{
"type": "intrinsic",
"name": "unknown"
},
{
"type": "reflection",
"declaration": {
"id": 43,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {}
}
},
{
"type": "reflection",
"declaration": {
"id": 44,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {}
}
},
{
"type": "reference",
"qualifiedName": "ComponentOptionsMixin",
"package": "@vue/runtime-core",
"name": "ComponentOptionsMixin"
},
{
"type": "reference",
"qualifiedName": "ComponentOptionsMixin",
"package": "@vue/runtime-core",
"name": "ComponentOptionsMixin"
},
{
"type": "reference",
"typeArguments": [
{
"type": "intrinsic",
"name": "string"
},
{
"type": "intrinsic",
"name": "any"
}
],
"qualifiedName": "Record",
"package": "typescript",
"name": "Record"
},
{
"type": "intrinsic",
"name": "string"
},
{
"type": "reference",
"qualifiedName": "PublicProps",
"package": "@vue/runtime-core",
"name": "PublicProps"
},
{
"type": "reference",
"typeArguments": [
{
"type": "intersection",
"types": [
{
"type": "reflection",
"declaration": {
"id": 45,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 46,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "ILayoutData"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
46
]
}
]
}
},
{
"type": "reflection",
"declaration": {
"id": 47,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {}
}
}
]
}
],
"qualifiedName": "Readonly",
"package": "typescript",
"name": "Readonly"
},
{
"type": "reflection",
"declaration": {
"id": 48,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 49,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "ILayoutData"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
49
]
}
]
}
}
],
"qualifiedName": "DefineComponent",
"package": "@vue/runtime-core",
"name": "DefineComponent"
},
"defaultValue": "..."
},
{
"id": 8,
"name": "edit",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reflection",
"declaration": {
"id": 9,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 16,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 17,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 19,
"name": "default",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 20,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 21,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "ILayoutData"
}
}
]
}
},
"defaultValue": "getDefaultData"
},
{
"id": 18,
"name": "type",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reference",
"id": 50,
"name": "ILayoutData"
}
],
"qualifiedName": "PropType",
"package": "@vue/runtime-core",
"name": "PropType"
},
"defaultValue": "..."
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
19,
18
]
}
]
}
},
"defaultValue": "..."
},
{
"id": 10,
"name": "onUpdate",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 11,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 13,
"name": "default",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 14,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 15,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "intrinsic",
"name": "void"
}
}
]
}
},
"defaultValue": "..."
},
{
"id": 12,
"name": "type",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reference",
"typeArguments": [
{
"type": "reference",
"id": 50,
"name": "ILayoutData"
}
],
"name": "OnUpdateSelfCb"
}
],
"qualifiedName": "PropType",
"package": "@vue/runtime-core",
"name": "PropType"
},
"defaultValue": "..."
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
13,
12
]
}
]
}
},
"defaultValue": "..."
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
16,
10
]
}
]
}
},
{
"type": "reflection",
"declaration": {
"id": 22,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 23,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "reference",
"qualifiedName": "global.JSX.Element",
"package": "@vue/runtime-dom",
"name": "Element"
}
}
]
}
},
{
"type": "intrinsic",
"name": "unknown"
},
{
"type": "reflection",
"declaration": {
"id": 24,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {}
}
},
{
"type": "reflection",
"declaration": {
"id": 25,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {}
}
},
{
"type": "reference",
"qualifiedName": "ComponentOptionsMixin",
"package": "@vue/runtime-core",
"name": "ComponentOptionsMixin"
},
{
"type": "reference",
"qualifiedName": "ComponentOptionsMixin",
"package": "@vue/runtime-core",
"name": "ComponentOptionsMixin"
},
{
"type": "reference",
"typeArguments": [
{
"type": "intrinsic",
"name": "string"
},
{
"type": "intrinsic",
"name": "any"
}
],
"qualifiedName": "Record",
"package": "typescript",
"name": "Record"
},
{
"type": "intrinsic",
"name": "string"
},
{
"type": "reference",
"qualifiedName": "PublicProps",
"package": "@vue/runtime-core",
"name": "PublicProps"
},
{
"type": "reference",
"typeArguments": [
{
"type": "intersection",
"types": [
{
"type": "reflection",
"declaration": {
"id": 26,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 28,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "ILayoutData"
}
},
{
"id": 27,
"name": "onUpdate",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reference",
"id": 50,
"name": "ILayoutData"
}
],
"name": "OnUpdateSelfCb"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
28,
27
]
}
]
}
},
{
"type": "reflection",
"declaration": {
"id": 29,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {}
}
}
]
}
],
"qualifiedName": "Readonly",
"package": "typescript",
"name": "Readonly"
},
{
"type": "reflection",
"declaration": {
"id": 30,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 32,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "ILayoutData"
}
},
{
"id": 31,
"name": "onUpdate",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reference",
"id": 50,
"name": "ILayoutData"
}
],
"name": "OnUpdateSelfCb"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
32,
31
]
}
]
}
}
],
"qualifiedName": "DefineComponent",
"package": "@vue/runtime-core",
"name": "DefineComponent"
},
"defaultValue": "..."
},
{
"id": 5,
"name": "getDefaultData",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 6,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 7,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "ILayoutData"
}
}
]
}
}
},
{
"id": 4,
"name": "name",
"kind": 1024,
"kindString": "Property",
"flags": {},
"type": {
"type": "intrinsic",
"name": "string"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [
33,
8,
5,
4
]
}
]
}
}
},
{
"id": 1,
"name": "name",
"kind": 32,
"kindString": "Variable",
"flags": {
"isConst": true
},
"sources": [
{
"fileName": "index.ts",
"line": 5,
"character": 13
}
],
"type": {
"type": "literal",
"value": "sb-layout"
},
"defaultValue": "'sb-layout'"
},
{
"id": 53,
"name": "getDefaultData",
"kind": 64,
"kindString": "Function",
"flags": {},
"sources": [
{
"fileName": "util.ts",
"line": 8,
"character": 13
}
],
"signatures": [
{
"id": 54,
"name": "getDefaultData",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"type": {
"type": "reference",
"id": 50,
"name": "ILayoutData"
}
}
]
}
],
"groups": [
{
"title": "Interfaces",
"kind": 256,
"children": [
50
]
},
{
"title": "Properties",
"kind": 1024,
"children": [
2
]
},
{
"title": "Variables",
"kind": 32,
"children": [
1
]
},
{
"title": "Functions",
"kind": 64,
"children": [
53
]
}
],
"sources": [
{
"fileName": "index.ts",
"line": 1,
"character": 0
}
]
}

View file

@ -21,10 +21,15 @@
"url": "git@git.b12f.io:b12f/schlechtenburg.git" "url": "git@git.b12f.io:b12f/schlechtenburg.git"
}, },
"scripts": { "scripts": {
"docgen": "docgen",
"test": "echo \"Error: run tests from root\" && exit 1" "test": "echo \"Error: run tests from root\" && exit 1"
}, },
"dependencies": { "dependencies": {
"@schlechtenburg/core": "^0.0.0", "@schlechtenburg/core": "^0.0.0",
"@schlechtenburg/docgen": "^0.0.0",
"vue": "^3.0.7" "vue": "^3.0.7"
},
"devDependencies": {
"@schlechtenburg/docgen": "^0.0.0"
} }
} }

View file

@ -0,0 +1,7 @@
{
"extends": "../../tsconfig.json",
"typedocOptions": {
"entryPoints": ["lib/index.ts"],
"json": "docs"
}
}

View file

@ -0,0 +1 @@
[]

File diff suppressed because it is too large Load diff

View file

@ -21,10 +21,15 @@
"url": "git@git.b12f.io:b12f/schlechtenburg.git" "url": "git@git.b12f.io:b12f/schlechtenburg.git"
}, },
"scripts": { "scripts": {
"docgen": "docgen",
"test": "echo \"Error: run tests from root\" && exit 1" "test": "echo \"Error: run tests from root\" && exit 1"
}, },
"dependencies": { "dependencies": {
"@schlechtenburg/core": "^0.0.0", "@schlechtenburg/core": "^0.0.0",
"@schlechtenburg/docgen": "^0.0.0",
"vue": "^3.0.7" "vue": "^3.0.7"
},
"devDependencies": {
"@schlechtenburg/docgen": "^0.0.0"
} }
} }

View file

@ -0,0 +1,7 @@
{
"extends": "../../tsconfig.json",
"typedocOptions": {
"entryPoints": ["lib/index.ts"],
"json": "docs"
}
}

View file

@ -10,13 +10,10 @@
"plugins": [ { "name": "@vuedx/typescript-plugin-vue" } ], "plugins": [ { "name": "@vuedx/typescript-plugin-vue" } ],
"resolveJsonModule": true, "resolveJsonModule": true,
// "noErrorTruncation": true, // "noErrorTruncation": true,
"allowSyntheticDefaultImports": true,
"paths": {} "paths": {}
}, },
"include": [ "include": [
"src/**/*.ts",
"src/**/*.d.ts",
"src/**/*.tsx",
"src/**/*.vue",
"packages/**/lib/**/*.ts", "packages/**/lib/**/*.ts",
"packages/**lib/**/*.d.ts", "packages/**lib/**/*.d.ts",
"packages/**lib/**/*.tsx", "packages/**lib/**/*.tsx",