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} |
|||
.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} |
|||
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)} |
|||
.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} |
|||
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-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-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} |
|||
.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-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)} |
|||
.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-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} |
|||
.root.svelte-bv289q{padding:10px}.option-container.svelte-bv289q{border-style:dotted;border-width:1px;border-color:var(--primary75);padding:3px;margin-right:5px} |
|||
input.svelte-66516k{margin-right:7px} |
|||
.info-text.svelte-um9cf7{font-size:0.8em;color:var(--slate)} |
|||
.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} |
|||
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} |
|||
.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 */ |
|||
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