mirror of https://github.com/Budibase/budibase.git
30 changed files with 5658 additions and 1759 deletions
@ -0,0 +1,15 @@ |
|||||
|
import { map } from "lodash/fp"; |
||||
|
|
||||
|
export const loadLibs = async (appName, appPackage) => { |
||||
|
|
||||
|
const makeUrl = l => |
||||
|
`/_builder/api/${appName}/componentlibrary?lib=${encodeURI(l)}` |
||||
|
|
||||
|
const allLibraries = {}; |
||||
|
for(let lib of appPackage.pages.componentLibraries) { |
||||
|
const libModule = await import(makeUrl(lib)); |
||||
|
allLibraries[lib] = libModule; |
||||
|
} |
||||
|
|
||||
|
return allLibraries; |
||||
|
} |
||||
@ -0,0 +1,53 @@ |
|||||
|
<script> |
||||
|
import { store } from "../builderStore"; |
||||
|
import { |
||||
|
last, |
||||
|
split |
||||
|
} from "lodash/fp"; |
||||
|
import { pipe } from "../common/core"; |
||||
|
import { splitName } from "./pagesParsing/splitRootComponentName" |
||||
|
|
||||
|
let component; |
||||
|
|
||||
|
store.subscribe(s => { |
||||
|
const {componentName, libName} = splitName( |
||||
|
s.currentComponentInfo.rootComponent.name); |
||||
|
|
||||
|
component = s.libraries[libName][componentName]; |
||||
|
}); |
||||
|
|
||||
|
</script> |
||||
|
|
||||
|
<div class="component-preview" > |
||||
|
<div class="component-container"> |
||||
|
<iframe title="componentPreview"> |
||||
|
|
||||
|
<head> |
||||
|
{#each $store.pages.stylesheets as stylesheet} |
||||
|
<link rel="stylesheet" href="{stylesheet}"/> |
||||
|
{/each} |
||||
|
</head> |
||||
|
<body> |
||||
|
<svelte:component this={component} {...$store.currentComponentInfo.fullProps}/> |
||||
|
</body> |
||||
|
|
||||
|
</iframe> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
<style> |
||||
|
.component-preview { |
||||
|
display: grid; |
||||
|
grid-template-rows: [top] 1fr [middle] auto [bottom] 1fr; |
||||
|
grid-template-columns: [left] 1fr [middle] auto [right] 1fr; |
||||
|
grid-column-start: preview; |
||||
|
height:100%; |
||||
|
} |
||||
|
|
||||
|
.component-container { |
||||
|
grid-row-start: middle; |
||||
|
grid-column-start: middle; |
||||
|
} |
||||
|
|
||||
|
</style> |
||||
@ -0,0 +1,145 @@ |
|||||
|
<script> |
||||
|
|
||||
|
import { store } from "../builderStore"; |
||||
|
import Textbox from "../common/Textbox.svelte"; |
||||
|
import Button from "../common/Button.svelte"; |
||||
|
import IconButton from "../common/IconButton.svelte"; |
||||
|
import { libraryDependencies } from "./pagesParsing/findDependencies"; |
||||
|
import UIkit from "uikit"; |
||||
|
|
||||
|
let addNewLib = ""; |
||||
|
let addNewStylesheet = ""; |
||||
|
let addComponentError = ""; |
||||
|
let modalElement; |
||||
|
let allComponents; |
||||
|
|
||||
|
store.subscribe(s => { |
||||
|
allComponents = s.allComponents; |
||||
|
}) |
||||
|
|
||||
|
const removeLibrary = lib => { |
||||
|
const dependencies = libraryDependencies(allComponents, lib); |
||||
|
if(dependencies.length > 0) return; |
||||
|
store.removeComponentLibrary(lib); |
||||
|
} |
||||
|
|
||||
|
const addLib = () => { |
||||
|
store.addComponentLibrary(addNewLib) |
||||
|
.then(() => { |
||||
|
addNewLib = ""; |
||||
|
}); |
||||
|
} |
||||
|
|
||||
|
const removeStylesheet = stylesheet => { |
||||
|
store.removeStylesheet(stylesheet); |
||||
|
} |
||||
|
|
||||
|
const addStylesheet = () => { |
||||
|
if(addNewStylesheet) |
||||
|
store.addStylesheet(addNewStylesheet); |
||||
|
} |
||||
|
|
||||
|
export const close = () => { |
||||
|
UIkit.modal(modalElement).hide(); |
||||
|
} |
||||
|
|
||||
|
export const show = () => { |
||||
|
UIkit.modal(modalElement).show(); |
||||
|
} |
||||
|
|
||||
|
</script> |
||||
|
|
||||
|
<div bind:this={modalElement} id="new-component-modal" uk-modal> |
||||
|
<div class="uk-modal-dialog"> |
||||
|
|
||||
|
<div class="uk-modal-header header"> |
||||
|
<div>Settings</div> |
||||
|
<div> |
||||
|
<IconButton icon="x" |
||||
|
on:click={close}/> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="uk-modal-body uk-form-horizontal"> |
||||
|
|
||||
|
<div class="section-container"> |
||||
|
<p>Component Libraries |
||||
|
<span> |
||||
|
<input bind:value={addNewLib} /> |
||||
|
<Button color="primary-outline" |
||||
|
on:click={addLib}>Add</Button> |
||||
|
</span> |
||||
|
</p> |
||||
|
{#each $store.pages.componentLibraries as lib} |
||||
|
<div> |
||||
|
<span class="row-text">{lib}</span> |
||||
|
<IconButton icon="x" |
||||
|
on:click={() => removeLibrary(lib)}/> |
||||
|
</div> |
||||
|
{/each} |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
<div class="section-container"> |
||||
|
<p>Stylesheets |
||||
|
<span> |
||||
|
<input bind:value={addNewStylesheet} /> |
||||
|
<Button color="primary-outline" |
||||
|
on:click={addStylesheet} >Add</Button> |
||||
|
</span> |
||||
|
</p> |
||||
|
{#each $store.pages.stylesheets as stylesheet} |
||||
|
<div> |
||||
|
<span class="row-text">{stylesheet}</span> |
||||
|
<IconButton icon="x" |
||||
|
on:click={() => removeStylesheet(stylesheet)}/> |
||||
|
</div> |
||||
|
{/each} |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<style> |
||||
|
|
||||
|
.section-container { |
||||
|
padding: 15px; |
||||
|
border-style: dotted; |
||||
|
border-width: 1px; |
||||
|
border-color: var(--lightslate); |
||||
|
border-radius: 2px; |
||||
|
} |
||||
|
|
||||
|
.section-container:nth-child(1) { |
||||
|
margin-bottom: 15px; |
||||
|
} |
||||
|
|
||||
|
.row-text { |
||||
|
margin-right: 15px; |
||||
|
color: var(--primary100); |
||||
|
} |
||||
|
|
||||
|
input { |
||||
|
margin-right: 15px; |
||||
|
} |
||||
|
|
||||
|
p > span { |
||||
|
margin-left: 30px; |
||||
|
} |
||||
|
|
||||
|
.header { |
||||
|
display: grid; |
||||
|
grid-template-columns: [title] 1fr [icon] auto; |
||||
|
} |
||||
|
|
||||
|
.header > div:nth-child(1) { |
||||
|
grid-column-start: title; |
||||
|
} |
||||
|
|
||||
|
.header > div:nth-child(2) { |
||||
|
grid-column-start: icon; |
||||
|
} |
||||
|
|
||||
|
</style> |
||||
@ -0,0 +1,24 @@ |
|||||
|
import { splitName } from "./splitRootComponentName"; |
||||
|
import { |
||||
|
find, |
||||
|
filter |
||||
|
} from "lodash/fp"; |
||||
|
import { isRootComponent } from "./searchComponents"; |
||||
|
|
||||
|
export const libraryDependencies = (allComponents, lib) => { |
||||
|
|
||||
|
const componentDependsOnLibrary = comp => { |
||||
|
if(isRootComponent(comp)) { |
||||
|
const {libName} = splitName(component.name); |
||||
|
return (libName === lib); |
||||
|
} |
||||
|
return componentDependsOnLibrary( |
||||
|
find(c => c.name === comp.inherits)(allComponents) |
||||
|
); |
||||
|
} |
||||
|
|
||||
|
return filter(c => !isRootComponent(c) |
||||
|
&& componentDependsOnLibrary(c))( |
||||
|
allComponents |
||||
|
); |
||||
|
} |
||||
@ -0,0 +1,18 @@ |
|||||
|
import { |
||||
|
split, |
||||
|
last |
||||
|
} from "lodash/fp"; |
||||
|
|
||||
|
import { pipe } from "../../common/core"; |
||||
|
|
||||
|
export const splitName = fullname => { |
||||
|
const componentName = pipe(fullname, [ |
||||
|
split("/"), |
||||
|
last |
||||
|
]); |
||||
|
|
||||
|
const libName =fullname.substring( |
||||
|
0, fullname.length - componentName.length - 1); |
||||
|
|
||||
|
return {libName, componentName}; |
||||
|
} |
||||
@ -1 +1,75 @@ |
|||||
{"levels":[{"name":"owner","permissions":[{"type":"create record","nodeKey":"/customers/1-{id}"},{"type":"delete record","nodeKey":"/customers/1-{id}"},{"type":"update record","nodeKey":"/customers/1-{id}"},{"type":"read record","nodeKey":"/customers/1-{id}"},{"type":"create record","nodeKey":"/customers/1-{id}/invoices/2-{id}"},{"type":"update record","nodeKey":"/customers/1-{id}/invoices/2-{id}"},{"type":"delete record","nodeKey":"/customers/1-{id}/invoices/2-{id}"},{"type":"read record","nodeKey":"/customers/1-{id}/invoices/2-{id}"},{"type":"write templates"},{"type":"create user"},{"type":"set password"},{"type":"create temporary access"},{"type":"enable or disable user"},{"type":"write access levels"},{"type":"list users"},{"type":"list access levels"},{"type":"manage index"},{"type":"set user access levels"},{"type":"manage collection"}]}],"version":0} |
{ |
||||
|
"levels": [ |
||||
|
{ |
||||
|
"name": "owner", |
||||
|
"permissions": [ |
||||
|
{ |
||||
|
"type": "create record", |
||||
|
"nodeKey": "/customers/1-{id}" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "delete record", |
||||
|
"nodeKey": "/customers/1-{id}" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "update record", |
||||
|
"nodeKey": "/customers/1-{id}" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "read record", |
||||
|
"nodeKey": "/customers/1-{id}" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "create record", |
||||
|
"nodeKey": "/customers/1-{id}/invoices/2-{id}" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "update record", |
||||
|
"nodeKey": "/customers/1-{id}/invoices/2-{id}" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "delete record", |
||||
|
"nodeKey": "/customers/1-{id}/invoices/2-{id}" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "read record", |
||||
|
"nodeKey": "/customers/1-{id}/invoices/2-{id}" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "write templates" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "create user" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "set password" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "create temporary access" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "enable or disable user" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "write access levels" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "list users" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "list access levels" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "manage index" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "set user access levels" |
||||
|
}, |
||||
|
{ |
||||
|
"type": "manage collection" |
||||
|
} |
||||
|
] |
||||
|
} |
||||
|
], |
||||
|
"version": 0 |
||||
|
} |
||||
|
|||||
@ -0,0 +1,13 @@ |
|||||
|
{ |
||||
|
"name": "Primary Button", |
||||
|
"description": "", |
||||
|
"inherits": "./standard-components/button", |
||||
|
"props": { |
||||
|
"className": "btn btn-secondary", |
||||
|
"_component": "Primary Button", |
||||
|
"disabled": false |
||||
|
}, |
||||
|
"tags": [ |
||||
|
"button" |
||||
|
] |
||||
|
} |
||||
@ -1,9 +0,0 @@ |
|||||
{ |
|
||||
"inherits": "./customComponents/textbox", |
|
||||
"name": "myTextBox", |
|
||||
"tags": [], |
|
||||
"description": "A text input, with a label", |
|
||||
"props" : { |
|
||||
"label": "hello" |
|
||||
} |
|
||||
} |
|
||||
@ -1,9 +0,0 @@ |
|||||
{ |
|
||||
"inherits": "./moreCustomComponents/textbox", |
|
||||
"name":"subfolder/otherTextBox.json", |
|
||||
"tags": [], |
|
||||
"description": "A text input, with a label", |
|
||||
"props" : { |
|
||||
"label": "hello" |
|
||||
} |
|
||||
} |
|
||||
@ -0,0 +1,6 @@ |
|||||
|
.DS_Store |
||||
|
node_modules |
||||
|
yarn.lock |
||||
|
package-lock.json |
||||
|
index.js |
||||
|
index.mjs |
||||
@ -0,0 +1,33 @@ |
|||||
|
*Psst — looking for an app template? Go here --> [sveltejs/template](https://github.com/sveltejs/template)* |
||||
|
|
||||
|
--- |
||||
|
|
||||
|
# component-template |
||||
|
|
||||
|
A base for building shareable Svelte components. Clone it with [degit](https://github.com/Rich-Harris/degit): |
||||
|
|
||||
|
```bash |
||||
|
npx degit sveltejs/component-template my-new-component |
||||
|
cd my-new-component |
||||
|
npm install # or yarn |
||||
|
``` |
||||
|
|
||||
|
Your component's source code lives in `src/index.html`. |
||||
|
|
||||
|
TODO |
||||
|
|
||||
|
* [ ] some firm opinions about the best way to test components |
||||
|
* [ ] update `degit` so that it automates some of the setup work |
||||
|
|
||||
|
|
||||
|
## Setting up |
||||
|
|
||||
|
* Run `npm init` (or `yarn init`) |
||||
|
* Replace this README with your own |
||||
|
|
||||
|
|
||||
|
## Consuming components |
||||
|
|
||||
|
Your package.json has a `"svelte"` field pointing to `src/index.html`, which allows Svelte apps to import the source code directly, if they are using a bundler plugin like [rollup-plugin-svelte](https://github.com/rollup/rollup-plugin-svelte) or [svelte-loader](https://github.com/sveltejs/svelte-loader) (where [`resolve.mainFields`](https://webpack.js.org/configuration/resolve/#resolve-mainfields) in your webpack config includes `"svelte"`). **This is recommended.** |
||||
|
|
||||
|
For everyone else, `npm run build` will bundle your component's source code into a plain JavaScript module (`index.mjs`) and a UMD script (`index.js`). This will happen automatically when you publish your component to npm, courtesy of the `prepublishOnly` hook in package.json. |
||||
@ -0,0 +1,17 @@ |
|||||
|
{ |
||||
|
"_lib": { |
||||
|
"path":"./dist/index.js" |
||||
|
}, |
||||
|
"button" : { |
||||
|
"importPath": "button", |
||||
|
"name": "Button", |
||||
|
"description": "an html <button />", |
||||
|
"props": { |
||||
|
"contentText": { "type": "string", "default": "Button" }, |
||||
|
"contentComponent": "component", |
||||
|
"className": "string", |
||||
|
"disabled": "bool" |
||||
|
}, |
||||
|
"tags": ["button"] |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,23 @@ |
|||||
|
{ |
||||
|
"name": "budibase-standard-components", |
||||
|
"svelte": "src/index.svelte", |
||||
|
"main": "index.js", |
||||
|
"scripts": { |
||||
|
"build": "rollup -c", |
||||
|
"prepublishOnly": "npm run build" |
||||
|
}, |
||||
|
"devDependencies": { |
||||
|
"rollup": "^1.11.0", |
||||
|
"rollup-plugin-node-resolve": "^4.0.0", |
||||
|
"rollup-plugin-svelte": "^5.0.0", |
||||
|
"svelte": "^3.0.0" |
||||
|
}, |
||||
|
"keywords": [ |
||||
|
"svelte" |
||||
|
], |
||||
|
"files": [ |
||||
|
"dist" |
||||
|
], |
||||
|
"version": "1.0.0", |
||||
|
"license": "MIT" |
||||
|
} |
||||
@ -0,0 +1,13 @@ |
|||||
|
import svelte from 'rollup-plugin-svelte'; |
||||
|
import resolve from 'rollup-plugin-node-resolve'; |
||||
|
|
||||
|
export default { |
||||
|
input: 'src/index.js', |
||||
|
output: [ |
||||
|
{ file: "dist/index.js", 'format': 'esm', name:"budibaseStandardComponents" } |
||||
|
], |
||||
|
plugins: [ |
||||
|
svelte(), |
||||
|
resolve() |
||||
|
] |
||||
|
}; |
||||
@ -0,0 +1,15 @@ |
|||||
|
<script> |
||||
|
export let className = ""; |
||||
|
export let disabled = false; |
||||
|
export let contentText = ""; |
||||
|
export let contentComponent = {}; |
||||
|
</script> |
||||
|
|
||||
|
|
||||
|
<button class={className} {disabled} on:click> |
||||
|
{#if contentComponent} |
||||
|
{contentText} |
||||
|
{:else} |
||||
|
<div>Props..</div> |
||||
|
{/if} |
||||
|
</button> |
||||
@ -1,31 +1,39 @@ |
|||||
main.svelte-j8mzr7{height:100%;width:100%;font-family:"Lato", Helvetica, Arial, sans-serif} |
main.svelte-j8mzr7{height:100%;width:100%;font-family:"Lato", Helvetica, Arial, sans-serif} |
||||
.root.svelte-e4n7zy{position:fixed;margin:0 auto;text-align:center;top:20%;width:100%}.inner.svelte-e4n7zy{display:inline-block;margin:auto}.logo.svelte-e4n7zy{width:300px;margin-bottom:40px}.root.svelte-e4n7zy .option{width:250px}.app-link.svelte-e4n7zy{margin-top:10px;display:block} |
.root.svelte-e4n7zy{position:fixed;margin:0 auto;text-align:center;top:20%;width:100%}.inner.svelte-e4n7zy{display:inline-block;margin:auto}.logo.svelte-e4n7zy{width:300px;margin-bottom:40px}.root.svelte-e4n7zy .option{width:250px}.app-link.svelte-e4n7zy{margin-top:10px;display:block} |
||||
.root.svelte-i0dstr{height:100%}.content.svelte-i0dstr{position:fixed;height:100%;background-color:var(--white);margin:0} |
.root.svelte-i0dstr{height:100%}.content.svelte-i0dstr{position:fixed;height:100%;background-color:var(--white);margin:0} |
||||
h4.svelte-o0id5a{margin-top:20px} |
|
||||
.border-normal.svelte-7rfkdx{border-radius:var(--borderradiusall)}.border-left.svelte-7rfkdx{border-radius:var(--borderradius) 0 0 var(--borderradius)}.border-right.svelte-7rfkdx{border-radius:0 var(--borderradius) var(--borderradius) 0}.border-middle.svelte-7rfkdx{border-radius:0}button.svelte-7rfkdx{border-style:solid;padding:7px 15px;cursor:pointer}.primary.svelte-7rfkdx{background-color:var(--primary100);border-color:var(--primary100);color:var(--white)}.primary.svelte-7rfkdx:hover{background-color:var(--primary75);border-color:var(--primary75)}.primary.svelte-7rfkdx:active{background-color:var(--primarydark);border-color:var(--primarydark)}.primary-outline.svelte-7rfkdx{background-color:var(--white);border-color:var(--primary100);color:var(--primary100)}.primary-outline.svelte-7rfkdx:hover{background-color:var(--primary10)}.primary-outline.svelte-7rfkdx:pressed{background-color:var(--primary25)}.secondary.svelte-7rfkdx{background-color:var(--secondary100);border-color:var(--secondary100);color:var(--white)}.secondary.svelte-7rfkdx:hover{background-color:var(--secondary75);border-color:var(--secondary75)}.secondary.svelte-7rfkdx:pressed{background-color:var(--secondarydark);border-color:var(--secondarydark)}.secondary-outline.svelte-7rfkdx{background-color:var(--white);border-color:var(--secondary100);color:var(--secondary100)}.secondary-outline.svelte-7rfkdx:hover{background-color:var(--secondary10)}.secondary-outline.svelte-7rfkdx:pressed{background-color:var(--secondary25)}.success.svelte-7rfkdx{background-color:var(--success100);border-color:var(--success100);color:var(--white)}.success.svelte-7rfkdx:hover{background-color:var(--success75);border-color:var(--success75)}.success.svelte-7rfkdx:pressed{background-color:var(--successdark);border-color:var(--successdark)}.success-outline.svelte-7rfkdx{background-color:var(--white);border-color:var(--success100);color:var(--success100)}.success-outline.svelte-7rfkdx:hover{background-color:var(--success10)}.success-outline.svelte-7rfkdx:pressed{background-color:var(--success25)}.deletion.svelte-7rfkdx{background-color:var(--deletion100);border-color:var(--deletion100);color:var(--white)}.deletion.svelte-7rfkdx:hover{background-color:var(--deletion75);border-color:var(--deletion75)}.deletion.svelte-7rfkdx:pressed{background-color:var(--deletiondark);border-color:var(--deletiondark)}.deletion-outline.svelte-7rfkdx{background-color:var(--white);border-color:var(--deletion100);color:var(--deletion100)}.deletion-outline.svelte-7rfkdx:hover{background-color:var(--deletion10)}.deletion-outline.svelte-7rfkdx:pressed{background-color:var(--deletion25)} |
.border-normal.svelte-7rfkdx{border-radius:var(--borderradiusall)}.border-left.svelte-7rfkdx{border-radius:var(--borderradius) 0 0 var(--borderradius)}.border-right.svelte-7rfkdx{border-radius:0 var(--borderradius) var(--borderradius) 0}.border-middle.svelte-7rfkdx{border-radius:0}button.svelte-7rfkdx{border-style:solid;padding:7px 15px;cursor:pointer}.primary.svelte-7rfkdx{background-color:var(--primary100);border-color:var(--primary100);color:var(--white)}.primary.svelte-7rfkdx:hover{background-color:var(--primary75);border-color:var(--primary75)}.primary.svelte-7rfkdx:active{background-color:var(--primarydark);border-color:var(--primarydark)}.primary-outline.svelte-7rfkdx{background-color:var(--white);border-color:var(--primary100);color:var(--primary100)}.primary-outline.svelte-7rfkdx:hover{background-color:var(--primary10)}.primary-outline.svelte-7rfkdx:pressed{background-color:var(--primary25)}.secondary.svelte-7rfkdx{background-color:var(--secondary100);border-color:var(--secondary100);color:var(--white)}.secondary.svelte-7rfkdx:hover{background-color:var(--secondary75);border-color:var(--secondary75)}.secondary.svelte-7rfkdx:pressed{background-color:var(--secondarydark);border-color:var(--secondarydark)}.secondary-outline.svelte-7rfkdx{background-color:var(--white);border-color:var(--secondary100);color:var(--secondary100)}.secondary-outline.svelte-7rfkdx:hover{background-color:var(--secondary10)}.secondary-outline.svelte-7rfkdx:pressed{background-color:var(--secondary25)}.success.svelte-7rfkdx{background-color:var(--success100);border-color:var(--success100);color:var(--white)}.success.svelte-7rfkdx:hover{background-color:var(--success75);border-color:var(--success75)}.success.svelte-7rfkdx:pressed{background-color:var(--successdark);border-color:var(--successdark)}.success-outline.svelte-7rfkdx{background-color:var(--white);border-color:var(--success100);color:var(--success100)}.success-outline.svelte-7rfkdx:hover{background-color:var(--success10)}.success-outline.svelte-7rfkdx:pressed{background-color:var(--success25)}.deletion.svelte-7rfkdx{background-color:var(--deletion100);border-color:var(--deletion100);color:var(--white)}.deletion.svelte-7rfkdx:hover{background-color:var(--deletion75);border-color:var(--deletion75)}.deletion.svelte-7rfkdx:pressed{background-color:var(--deletiondark);border-color:var(--deletiondark)}.deletion-outline.svelte-7rfkdx{background-color:var(--white);border-color:var(--deletion100);color:var(--deletion100)}.deletion-outline.svelte-7rfkdx:hover{background-color:var(--deletion10)}.deletion-outline.svelte-7rfkdx:pressed{background-color:var(--deletion25)} |
||||
.nav.svelte-lgepe1{height:100%;position:fixed;left:0px;background-color:var(--secondary100);color:var(--darkslate)}.nav.svelte-lgepe1>img.svelte-lgepe1{width:100%;margin-bottom:30px;margin-top:5px;margin-left:0px} |
|
||||
.root.svelte-ui57a{display:flex;height:100%;position:relative}.hierarchy.svelte-ui57a{flex:0 1 auto;background-color:var(--primary10);overflow-y:auto;height:100%}.node-container.svelte-ui57a{flex:1 1 auto;display:flex;flex-direction:column}.actions-header.svelte-ui57a{flex:0 1 auto}.node-view.svelte-ui57a{overflow-y:auto;flex:1 1 auto}.hierarchy-title-row.svelte-ui57a{padding:15px 7px;font-size:11pt;display:flex;font-weight:bold}.hierarchy-title.svelte-ui57a{flex:auto 1 1} |
.root.svelte-ui57a{display:flex;height:100%;position:relative}.hierarchy.svelte-ui57a{flex:0 1 auto;background-color:var(--primary10);overflow-y:auto;height:100%}.node-container.svelte-ui57a{flex:1 1 auto;display:flex;flex-direction:column}.actions-header.svelte-ui57a{flex:0 1 auto}.node-view.svelte-ui57a{overflow-y:auto;flex:1 1 auto}.hierarchy-title-row.svelte-ui57a{padding:15px 7px;font-size:11pt;display:flex;font-weight:bold}.hierarchy-title.svelte-ui57a{flex:auto 1 1} |
||||
|
h4.svelte-o0id5a{margin-top:20px} |
||||
|
.root.svelte-1dih19s{display:grid;grid-template-columns:[uiNav] 250px [preview] auto [properties] 300px;height:100%;width:100%}.ui-nav.svelte-1dih19s{grid-column-start:uiNav;background-color:var(--primary10);height:100%}.properties-pane.svelte-1dih19s{grid-column-start:properties;background-color:var(--primary10);height:100%}.pages-list-container.svelte-1dih19s{padding-top:20px}.nav-group-header.svelte-1dih19s{font-size:10pt;padding-left:10px}.nav-items-container.svelte-1dih19s{padding-top:10px}.nav-group-header.svelte-1dih19s{display:grid;grid-template-columns:[icon] auto [title] 1fr [button] auto;padding:10px 2px 0px 7px}.nav-group-header.svelte-1dih19s>div.svelte-1dih19s:nth-child(1){padding:0px 7px 0px 0px;vertical-align:bottom;grid-column-start:icon;margin-right:5px}.nav-group-header.svelte-1dih19s>span.svelte-1dih19s:nth-child(2){margin-left:5px;vertical-align:bottom;grid-column-start:title;margin-top:auto}.nav-group-header.svelte-1dih19s>div.svelte-1dih19s:nth-child(3){vertical-align:bottom;grid-column-start:button;cursor:pointer;color:var(--slate)}.nav-group-header.svelte-1dih19s>div.svelte-1dih19s:nth-child(3):hover{color:var(--primary75)} |
||||
|
.nav.svelte-lgepe1{height:100%;position:fixed;left:0px;background-color:var(--secondary100);color:var(--darkslate)}.nav.svelte-lgepe1>img.svelte-lgepe1{width:100%;margin-bottom:30px;margin-top:5px;margin-left:0px} |
||||
.root.svelte-zzs4qg{padding:10px} |
.root.svelte-zzs4qg{padding:10px} |
||||
.root.svelte-179wat4{display:grid;grid-template-columns:[uiNav] 250px [preview] auto [properties] 250px;height:100%;width:100%}.ui-nav.svelte-179wat4{grid-column-start:uiNav;background-color:var(--primary10);height:100%}.component-preview.svelte-179wat4{display:grid;grid-template-rows:[top] 1fr [middle] auto [bottom] 1fr;grid-template-columns:[left] 1fr [middle] auto [right] 1fr;grid-column-start:preview}.component-container.svelte-179wat4{grid-row-start:middle;grid-column-start:middle}.properties-pane.svelte-179wat4{grid-column-start:properties;background-color:var(--primary10);height:100%}.pages-list-container.svelte-179wat4{padding-top:20px}.nav-group-header.svelte-179wat4{font-size:10pt;padding-left:10px}.nav-items-container.svelte-179wat4{padding-top:10px}.nav-group-header.svelte-179wat4{display:grid;grid-template-columns:[icon] auto [title] 1fr [button] auto;padding:10px 2px 0px 7px}.nav-group-header.svelte-179wat4>div.svelte-179wat4:nth-child(1){padding:0px 7px 0px 0px;vertical-align:bottom;grid-column-start:icon;margin-right:5px}.nav-group-header.svelte-179wat4>span.svelte-179wat4:nth-child(2){margin-left:5px;vertical-align:bottom;grid-column-start:title;margin-top:auto}.nav-group-header.svelte-179wat4>div.svelte-179wat4:nth-child(3){vertical-align:bottom;grid-column-start:button;cursor:pointer;color:var(--slate)}.nav-group-header.svelte-179wat4>div.svelte-179wat4:nth-child(3):hover{color:var(--primary75)} |
|
||||
.root.svelte-1qmjs65{padding:10px}.edit-button.svelte-1qmjs65{cursor:pointer;color:var(--white)}tr.svelte-1qmjs65:hover .edit-button.svelte-1qmjs65{color:var(--secondary75)} |
.root.svelte-1qmjs65{padding:10px}.edit-button.svelte-1qmjs65{cursor:pointer;color:var(--white)}tr.svelte-1qmjs65:hover .edit-button.svelte-1qmjs65{color:var(--secondary75)} |
||||
.root.svelte-1q40nqm{display:block;font-size:13pt;width:100%;cursor:pointer}.title.svelte-1q40nqm{font:var(--bodytext);padding-top:10px;padding-right:5px;padding-bottom:10px;color:var(--secondary100)}.title.svelte-1q40nqm:hover{background-color:var(--secondary10)} |
.root.svelte-pq2tmv{height:100%;padding:15px}.allowed-records.svelte-pq2tmv{margin:20px 0px}.allowed-records.svelte-pq2tmv>span.svelte-pq2tmv{margin-right:30px} |
||||
.root.svelte-kswv5p{height:100%;padding:15px}.fields-table.svelte-kswv5p{margin:10px;border-collapse:collapse}.add-field-button.svelte-kswv5p{margin-left:15px;cursor:pointer}.edit-button.svelte-kswv5p{cursor:pointer;color:var(--white)}.edit-button.svelte-kswv5p:hover{color:var(--secondary75)}th.svelte-kswv5p{text-align:left}td.svelte-kswv5p{padding:5px 30px 5px 0px;margin:0}thead.svelte-kswv5p>tr.svelte-kswv5p{border-width:0px 0px 1px 0px;border-style:solid;border-color:var(--secondary75);margin-bottom:20px}tbody.svelte-kswv5p>tr.svelte-kswv5p{border-width:0px 0px 1px 0px;border-style:solid;border-color:var(--primary10)}tbody.svelte-kswv5p>tr.svelte-kswv5p:hover{background-color:var(--primary10)}tbody.svelte-kswv5p>tr:hover .edit-button.svelte-kswv5p{color:var(--secondary75)}.index-container.svelte-kswv5p{border-style:solid;border-width:0 0 1px 0;border-color:var(--secondary25);padding:10px;margin-bottom:5px}.index-label.svelte-kswv5p{color:var(--slate)}.index-name.svelte-kswv5p{font-weight:bold;color:var(--primary100)}.index-container.svelte-kswv5p code.svelte-kswv5p{margin:0;display:inline;background-color:var(--primary10);color:var(--secondary100);padding:3px}.index-field-row.svelte-kswv5p{margin-top:7px} |
.root.svelte-kswv5p{height:100%;padding:15px}.fields-table.svelte-kswv5p{margin:10px;border-collapse:collapse}.add-field-button.svelte-kswv5p{margin-left:15px;cursor:pointer}.edit-button.svelte-kswv5p{cursor:pointer;color:var(--white)}.edit-button.svelte-kswv5p:hover{color:var(--secondary75)}th.svelte-kswv5p{text-align:left}td.svelte-kswv5p{padding:5px 30px 5px 0px;margin:0}thead.svelte-kswv5p>tr.svelte-kswv5p{border-width:0px 0px 1px 0px;border-style:solid;border-color:var(--secondary75);margin-bottom:20px}tbody.svelte-kswv5p>tr.svelte-kswv5p{border-width:0px 0px 1px 0px;border-style:solid;border-color:var(--primary10)}tbody.svelte-kswv5p>tr.svelte-kswv5p:hover{background-color:var(--primary10)}tbody.svelte-kswv5p>tr:hover .edit-button.svelte-kswv5p{color:var(--secondary75)}.index-container.svelte-kswv5p{border-style:solid;border-width:0 0 1px 0;border-color:var(--secondary25);padding:10px;margin-bottom:5px}.index-label.svelte-kswv5p{color:var(--slate)}.index-name.svelte-kswv5p{font-weight:bold;color:var(--primary100)}.index-container.svelte-kswv5p code.svelte-kswv5p{margin:0;display:inline;background-color:var(--primary10);color:var(--secondary100);padding:3px}.index-field-row.svelte-kswv5p{margin-top:7px} |
||||
.nav-item.svelte-5cf6ht{padding:0px 5px;display:block;padding:10px;color:var(--slate);cursor:pointer}.inner.svelte-5cf6ht{padding:0px 20px 10px 0px;display:inline-block;width:100%}.nav-item.svelte-5cf6ht:hover{background-color:var(--primary25)}.icon.svelte-5cf6ht{font-size:0.9em;display:inline-block;position:relative;top:5px;margin-right:5px;width:100%}.active.svelte-5cf6ht>div.svelte-5cf6ht{background-color:var(--primary10);color:var(--secondary100)}.active.svelte-5cf6ht>div.svelte-5cf6ht:hover{background-color:var(--slate);color:var(--secondary100)}.active.svelte-5cf6ht{background-color:white} |
|
||||
.root.svelte-1tilbnf{padding:5px;top:0;width:100%} |
.root.svelte-1tilbnf{padding:5px;top:0;width:100%} |
||||
|
.root.svelte-1q40nqm{display:block;font-size:13pt;width:100%;cursor:pointer}.title.svelte-1q40nqm{font:var(--bodytext);padding-top:10px;padding-right:5px;padding-bottom:10px;color:var(--secondary100)}.title.svelte-1q40nqm:hover{background-color:var(--secondary10)} |
||||
.dropdown-background.svelte-179p8ge{position:fixed;top:0;left:0;width:100vw;height:100vh}.root.svelte-179p8ge{cursor:pointer;z-index:1}.dropdown-content.svelte-179p8ge{position:absolute;background-color:var(--white);min-width:160px;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);z-index:1;font-weight:normal;border-style:solid;border-width:1px;border-color:var(--secondary10)}.dropdown-content.svelte-179p8ge:not(:focus){display:none}.action-row.svelte-179p8ge{padding:7px 10px;cursor:pointer}.action-row.svelte-179p8ge:hover{background-color:var(--primary100);color:var(--white)} |
.dropdown-background.svelte-179p8ge{position:fixed;top:0;left:0;width:100vw;height:100vh}.root.svelte-179p8ge{cursor:pointer;z-index:1}.dropdown-content.svelte-179p8ge{position:absolute;background-color:var(--white);min-width:160px;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);z-index:1;font-weight:normal;border-style:solid;border-width:1px;border-color:var(--secondary10)}.dropdown-content.svelte-179p8ge:not(:focus){display:none}.action-row.svelte-179p8ge{padding:7px 10px;cursor:pointer}.action-row.svelte-179p8ge:hover{background-color:var(--primary100);color:var(--white)} |
||||
.root.svelte-d6wwkb{display:flex}.root.svelte-d6wwkb:last-child{border-radius:0 var(--borderradius) var(--borderradius) 0}.root.svelte-d6wwkb:first-child{border-radius:var(--borderradius) 0 0 var(--borderradius)}.root.svelte-d6wwkb:not(:first-child):not(:last-child){border-radius:0} |
|
||||
.root.svelte-pq2tmv{height:100%;padding:15px}.allowed-records.svelte-pq2tmv{margin:20px 0px}.allowed-records.svelte-pq2tmv>span.svelte-pq2tmv{margin-right:30px} |
|
||||
.edit-button.svelte-neetem{cursor:pointer;color:var(--white)}tr.svelte-neetem:hover .edit-button.svelte-neetem{color:var(--secondary75)} |
|
||||
.edit-button.svelte-9z4fqi{cursor:pointer;color:var(--white)}tr.svelte-9z4fqi:hover .edit-button.svelte-9z4fqi{color:var(--secondary75)} |
|
||||
button.svelte-6dbfug{border-style:none;background-color:rgba(0,0,0,0);cursor:pointer} |
|
||||
.root.svelte-1hxxti1{padding:10px;font-size:10pt}.title.svelte-1hxxti1{font:var(--smallheavybodytext)}.prop-row.svelte-1hxxti1{padding:7px 3px}.component-description.svelte-1hxxti1{font:var(--lightbodytext)} |
|
||||
.root.svelte-ffb307{padding-bottom:10px;padding-left:10px;font-size:16px;color:var(--secondary50)}.hierarchy-item.svelte-ffb307{cursor:pointer;padding:5px 0px}.hierarchy-item.svelte-ffb307:hover{color:var(--secondary75)}.component.svelte-ffb307{margin-left:5px}.selected.svelte-ffb307{color:var(--primary100)}.title.svelte-ffb307{margin-left:10px} |
.root.svelte-ffb307{padding-bottom:10px;padding-left:10px;font-size:16px;color:var(--secondary50)}.hierarchy-item.svelte-ffb307{cursor:pointer;padding:5px 0px}.hierarchy-item.svelte-ffb307:hover{color:var(--secondary75)}.component.svelte-ffb307{margin-left:5px}.selected.svelte-ffb307{color:var(--primary100)}.title.svelte-ffb307{margin-left:10px} |
||||
.root.svelte-1cnqtw{color:var(--secondary50)}.hierarchy-item.svelte-1cnqtw{cursor:pointer;padding:5px 0px}.hierarchy-item.svelte-1cnqtw:hover{color:var(--secondary75)}.component.svelte-1cnqtw{margin-left:5px}.currentfolder.svelte-1cnqtw{color:var(--secondary100)}.selected.svelte-1cnqtw{color:var(--primary100)}.title.svelte-1cnqtw{margin-left:10px} |
.root.svelte-1cnqtw{color:var(--secondary50)}.hierarchy-item.svelte-1cnqtw{cursor:pointer;padding:5px 0px}.hierarchy-item.svelte-1cnqtw:hover{color:var(--secondary75)}.component.svelte-1cnqtw{margin-left:5px}.currentfolder.svelte-1cnqtw{color:var(--secondary100)}.selected.svelte-1cnqtw{color:var(--primary100)}.title.svelte-1cnqtw{margin-left:10px} |
||||
.error-container.svelte-jwy920{padding:10px;border-style:solid;border-color:var(--deletion100);border-radius:var(--borderradiusall);background:var(--deletion75)}.error-row.svelte-jwy920{padding:5px 0px} |
.root.svelte-xai2hc{height:100%;border-style:solid;border-color:var(--lightslate);border-width:0px 0px 0px 1px}.padding.svelte-xai2hc{padding:0px 5px 0px 10px}.title.svelte-xai2hc{background-color:white;padding:3px;display:grid;grid-template-columns:[name] 1fr [actions] auto}.title.svelte-xai2hc>div.svelte-xai2hc:nth-child(1){grid-column-start:name;color:var(--secondary100)}.title.svelte-xai2hc>div.svelte-xai2hc:nth-child(2){grid-column-start:actions}.section-header.svelte-xai2hc{font-style:italic;color:var(--slate);border-style:solid;border-color:var(--lightslate);border-width:0px 0px 1px 0px}.section-header.svelte-xai2hc{vertical-align:middle;margin-top:20px} |
||||
|
button.svelte-4po3k2{border-style:none;background-color:rgba(0,0,0,0);cursor:pointer;outline:none}button.svelte-4po3k2:hover{color:var(--hovercolor)}button.svelte-4po3k2:active{outline:none} |
||||
|
.nav-item.svelte-5cf6ht{padding:0px 5px;display:block;padding:10px;color:var(--slate);cursor:pointer}.inner.svelte-5cf6ht{padding:0px 20px 10px 0px;display:inline-block;width:100%}.nav-item.svelte-5cf6ht:hover{background-color:var(--primary25)}.icon.svelte-5cf6ht{font-size:0.9em;display:inline-block;position:relative;top:5px;margin-right:5px;width:100%}.active.svelte-5cf6ht>div.svelte-5cf6ht{background-color:var(--primary10);color:var(--secondary100)}.active.svelte-5cf6ht>div.svelte-5cf6ht:hover{background-color:var(--slate);color:var(--secondary100)}.active.svelte-5cf6ht{background-color:white} |
||||
|
h1.svelte-2ukyrk{font-size:1.2em} |
||||
|
.root.svelte-d6wwkb{display:flex}.root.svelte-d6wwkb:last-child{border-radius:0 var(--borderradius) var(--borderradius) 0}.root.svelte-d6wwkb:first-child{border-radius:var(--borderradius) 0 0 var(--borderradius)}.root.svelte-d6wwkb:not(:first-child):not(:last-child){border-radius:0} |
||||
|
.edit-button.svelte-9z4fqi{cursor:pointer;color:var(--white)}tr.svelte-9z4fqi:hover .edit-button.svelte-9z4fqi{color:var(--secondary75)} |
||||
|
.edit-button.svelte-neetem{cursor:pointer;color:var(--white)}tr.svelte-neetem:hover .edit-button.svelte-neetem{color:var(--secondary75)} |
||||
textarea.svelte-1ooq0hh{padding:3px;background:var(--darkslate);color:var(--white);font-family:'Courier New', Courier, monospace;width:95%;height:100px} |
textarea.svelte-1ooq0hh{padding:3px;background:var(--darkslate);color:var(--white);font-family:'Courier New', Courier, monospace;width:95%;height:100px} |
||||
.root.svelte-bv289q{padding:10px}.option-container.svelte-bv289q{border-style:dotted;border-width:1px;border-color:var(--primary75);padding:3px;margin-right:5px} |
.info-text.svelte-um9cf7{font-size:0.8em;color:var(--slate)} |
||||
input.svelte-66516k{margin-right:7px} |
.error-container.svelte-jwy920{padding:10px;border-style:solid;border-color:var(--deletion100);border-radius:var(--borderradiusall);background:var(--deletion75)}.error-row.svelte-jwy920{padding:5px 0px} |
||||
|
.root.svelte-1sxai5n{font-size:10pt}.padding.svelte-1sxai5n{padding:0 10px}.inherited-title.svelte-1sxai5n{margin-top:40px;display:grid;grid-template-columns:[name] 1fr [actions] auto;border-style:solid;border-width:0px 0px 1px 0px;border-color:var(--lightslate);font-style:italic}.inherited-title.svelte-1sxai5n>div.svelte-1sxai5n:nth-child(1){grid-column-start:name;color:var(--slate)}.inherited-title.svelte-1sxai5n>div.svelte-1sxai5n:nth-child(2){grid-column-start:actions;color:var(--secondary100)} |
||||
|
.title.svelte-1pp53c5{padding:3px;background-color:white;color:var(--secondary100);border-style:solid;border-width:1px 0 0 0;border-color:var(--lightslate)}.title.svelte-1pp53c5>span.svelte-1pp53c5{margin-left:10px} |
||||
.component.svelte-13tuzj8{padding:5px;border-style:solid;border-width:0 0 1px 0;border-color:var(--lightslate);cursor:pointer}.component.svelte-13tuzj8:hover{background-color:var(--primary10)}.component.svelte-13tuzj8>.title.svelte-13tuzj8{font-size:13pt;color:var(--secondary100)}.component.svelte-13tuzj8>.description.svelte-13tuzj8{font-size:10pt;color:var(--primary75);font-style:italic} |
.component.svelte-13tuzj8{padding:5px;border-style:solid;border-width:0 0 1px 0;border-color:var(--lightslate);cursor:pointer}.component.svelte-13tuzj8:hover{background-color:var(--primary10)}.component.svelte-13tuzj8>.title.svelte-13tuzj8{font-size:13pt;color:var(--secondary100)}.component.svelte-13tuzj8>.description.svelte-13tuzj8{font-size:10pt;color:var(--primary75);font-style:italic} |
||||
|
input.svelte-66516k{margin-right:7px} |
||||
|
.root.svelte-bv289q{padding:10px}.option-container.svelte-bv289q{border-style:dotted;border-width:1px;border-color:var(--primary75);padding:3px;margin-right:5px} |
||||
textarea.svelte-1wfv4cc{width:300px;height:200px} |
textarea.svelte-1wfv4cc{width:300px;height:200px} |
||||
|
.root.svelte-woqcuf{display:grid;grid-template-columns:[name] 1fr [actions] auto}.root.svelte-woqcuf>div.svelte-woqcuf:nth-child(1){grid-column-start:name;color:var(--secondary50)}.root.svelte-woqcuf>div.svelte-woqcuf:nth-child(2){grid-column-start:actions}.selectedname.svelte-woqcuf{font-weight:bold;color:var(--secondary)} |
||||
|
.root.svelte-w5on8s{padding:3px 5px 7px 10px;border-style:dotted;border-width:0 0 1px 0;border-color:var(--primary25)} |
||||
|
.component-preview.svelte-1rf8xuh{display:grid;grid-template-rows:[top] 1fr [middle] auto [bottom] 1fr;grid-template-columns:[left] 1fr [middle] auto [right] 1fr;grid-column-start:preview;height:100%}.component-container.svelte-1rf8xuh{grid-row-start:middle;grid-column-start:middle} |
||||
|
.section-container.svelte-1t0x31f{padding:15px;border-style:dotted;border-width:1px;border-color:var(--lightslate);border-radius:2px}.section-container.svelte-1t0x31f:nth-child(1){margin-bottom:15px}.row-text.svelte-1t0x31f{margin-right:15px;color:var(--primary100)}input.svelte-1t0x31f{margin-right:15px}p.svelte-1t0x31f>span.svelte-1t0x31f{margin-left:30px}.header.svelte-1t0x31f{display:grid;grid-template-columns:[title] 1fr [icon] auto}.header.svelte-1t0x31f>div.svelte-1t0x31f:nth-child(1){grid-column-start:title}.header.svelte-1t0x31f>div.svelte-1t0x31f:nth-child(2){grid-column-start:icon} |
||||
|
|
||||
/*# sourceMappingURL=bundle.css.map */ |
/*# sourceMappingURL=bundle.css.map */ |
||||
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
File diff suppressed because one or more lines are too long
Loading…
Reference in new issue