@openremote/or-components 1.2.0-snapshot.20240512154942
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -0
- package/lib/or-ace-editor.d.ts +44 -0
- package/lib/or-ace-editor.js +25 -0
- package/lib/or-ace-editor.js.map +1 -0
- package/lib/or-collapsible-panel.d.ts +9 -0
- package/lib/or-collapsible-panel.js +95 -0
- package/lib/or-collapsible-panel.js.map +1 -0
- package/lib/or-file-uploader.d.ts +15 -0
- package/lib/or-file-uploader.js +77 -0
- package/lib/or-file-uploader.js.map +1 -0
- package/lib/or-form.d.ts +15 -0
- package/lib/or-form.js +12 -0
- package/lib/or-form.js.map +1 -0
- package/lib/or-loading-indicator.d.ts +6 -0
- package/lib/or-loading-indicator.js +73 -0
- package/lib/or-loading-indicator.js.map +1 -0
- package/lib/or-loading-wrapper.d.ts +13 -0
- package/lib/or-loading-wrapper.js +32 -0
- package/lib/or-loading-wrapper.js.map +1 -0
- package/lib/or-panel.d.ts +8 -0
- package/lib/or-panel.js +57 -0
- package/lib/or-panel.js.map +1 -0
- package/package.json +36 -0
package/README.md
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# @openremote/or-components
|
|
2
|
+
[![NPM Version][npm-image]][npm-url]
|
|
3
|
+
[![Linux Build][travis-image]][travis-url]
|
|
4
|
+
[![Test Coverage][coveralls-image]][coveralls-url]
|
|
5
|
+
|
|
6
|
+
Contains basic UI components
|
|
7
|
+
|
|
8
|
+
## Install
|
|
9
|
+
```bash
|
|
10
|
+
npm i @openremote/or-components
|
|
11
|
+
yarn add @openremote/or-components
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Usage
|
|
15
|
+
For a full list of properties, methods and options refer to the TypeDoc generated [documentation]().
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
## Supported Browsers
|
|
19
|
+
The last 2 versions of all modern browsers are supported, including Chrome, Safari, Opera, Firefox, Edge. In addition,
|
|
20
|
+
Internet Explorer 11 is also supported.
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
## License
|
|
24
|
+
[GNU AGPL](https://www.gnu.org/licenses/agpl-3.0.en.html)
|
|
25
|
+
|
|
26
|
+
[npm-image]: https://img.shields.io/npm/v/live-xxx.svg
|
|
27
|
+
[npm-url]: https://npmjs.org/package/@openremote/or-components
|
|
28
|
+
[travis-image]: https://img.shields.io/travis/live-js/live-xxx/master.svg
|
|
29
|
+
[travis-url]: https://travis-ci.org/live-js/live-xxx
|
|
30
|
+
[coveralls-image]: https://img.shields.io/coveralls/live-js/live-xxx/master.svg
|
|
31
|
+
[coveralls-url]: https://coveralls.io/r/live-js/live-xxx?branch=master
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/// <reference types="ace-builds/ace-modules" />
|
|
2
|
+
import { LitElement, PropertyValues, TemplateResult } from "lit";
|
|
3
|
+
import { Ace } from "ace-builds";
|
|
4
|
+
import "ace-builds/src-noconflict/mode-javascript";
|
|
5
|
+
import "ace-builds/src-noconflict/mode-json";
|
|
6
|
+
import "ace-builds/src-noconflict/mode-groovy";
|
|
7
|
+
import "ace-builds/webpack-resolver";
|
|
8
|
+
export declare class OrAceEditorChangedEvent extends CustomEvent<{
|
|
9
|
+
value: string;
|
|
10
|
+
valid: boolean;
|
|
11
|
+
}> {
|
|
12
|
+
static readonly NAME = "or-ace-editor-changed";
|
|
13
|
+
constructor(value: string, valid: boolean);
|
|
14
|
+
}
|
|
15
|
+
export declare class OrAceEditorEditEvent extends CustomEvent<void> {
|
|
16
|
+
static readonly NAME = "or-ace-editor-edit";
|
|
17
|
+
constructor();
|
|
18
|
+
}
|
|
19
|
+
declare global {
|
|
20
|
+
export interface HTMLElementEventMap {
|
|
21
|
+
[OrAceEditorChangedEvent.NAME]: OrAceEditorChangedEvent;
|
|
22
|
+
[OrAceEditorEditEvent.NAME]: OrAceEditorEditEvent;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export declare class OrAceEditor extends LitElement {
|
|
26
|
+
static get styles(): import("lit").CSSResult;
|
|
27
|
+
readonly?: boolean;
|
|
28
|
+
value?: any;
|
|
29
|
+
mode: string;
|
|
30
|
+
protected _aceElem?: HTMLElement;
|
|
31
|
+
protected _aceEditor?: Ace.Editor;
|
|
32
|
+
protected _lastValue: string;
|
|
33
|
+
protected _editing: boolean;
|
|
34
|
+
protected _changeTimer?: number;
|
|
35
|
+
disconnectedCallback(): void;
|
|
36
|
+
updated(_changedProperties: PropertyValues): void;
|
|
37
|
+
render(): TemplateResult | void;
|
|
38
|
+
protected destroyEditor(): void;
|
|
39
|
+
protected initEditor(): void;
|
|
40
|
+
protected _onEditorEdit(): void;
|
|
41
|
+
protected _onEditorChange(): void;
|
|
42
|
+
getValue(): string | undefined;
|
|
43
|
+
validate(): boolean;
|
|
44
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
var __decorate=this&&this.__decorate||function(t,e,i,o){var r,d=arguments.length,s=d<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,i,o);else for(var a=t.length-1;a>=0;a--)(r=t[a])&&(s=(d<3?r(s):d>3?r(e,i,s):r(e,i))||s);return d>3&&s&&Object.defineProperty(e,i,s),s};import{css,html,LitElement}from"lit";import{customElement,property,query}from"lit/decorators.js";import ace from"ace-builds";import"ace-builds/src-noconflict/mode-javascript";import"ace-builds/src-noconflict/mode-json";import"ace-builds/src-noconflict/mode-groovy";import"ace-builds/webpack-resolver";export class OrAceEditorChangedEvent extends CustomEvent{constructor(t,e){super(OrAceEditorChangedEvent.NAME,{bubbles:!0,composed:!0,detail:{value:t,valid:e}})}}OrAceEditorChangedEvent.NAME="or-ace-editor-changed";export class OrAceEditorEditEvent extends CustomEvent{constructor(){super(OrAceEditorEditEvent.NAME,{bubbles:!0,composed:!0})}}OrAceEditorEditEvent.NAME="or-ace-editor-edit";let OrAceEditor=class extends LitElement{constructor(){super(...arguments),this.mode="ace/mode/json",this._lastValue="",this._editing=!1}static get styles(){return css`
|
|
2
|
+
:host {
|
|
3
|
+
display: block;
|
|
4
|
+
width: 100%;
|
|
5
|
+
height: 100%;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
#ace-editor {
|
|
9
|
+
position: relative;
|
|
10
|
+
height: 100%;
|
|
11
|
+
width: 100%;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
@media screen and (max-width: 1400px) {
|
|
15
|
+
:host > * {
|
|
16
|
+
flex-grow: 0;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
:host {
|
|
20
|
+
flex-direction: column;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
`}disconnectedCallback(){this.destroyEditor(),super.disconnectedCallback()}updated(t){super.updated(t),t.has("mode")&&(this.destroyEditor(),this.initEditor()),t.has("value")&&this._aceEditor&&(this._lastValue=void 0!==this.value?"string"==typeof this.value?this.value:JSON.stringify(this.value,null,2):"",this._aceEditor.setValue(this._lastValue))}render(){return html`
|
|
24
|
+
<div id="ace-editor"></div>
|
|
25
|
+
`}destroyEditor(){this._aceEditor&&(this._aceEditor.destroy(),this._aceEditor=void 0)}initEditor(){this._aceElem&&(this._aceEditor=ace.edit(this._aceElem,{mode:this.mode,value:this._lastValue,useSoftTabs:!0,tabSize:2,readOnly:this.readonly,showPrintMargin:!1}),this._aceEditor.renderer.attachToShadowRoot(),this._aceEditor.getSession().on("changeAnnotation",(()=>this._onEditorChange())),this._aceEditor.on("change",(()=>this._onEditorEdit())))}_onEditorEdit(){this._editing||(this.dispatchEvent(new OrAceEditorEditEvent),this._editing=!0),this._changeTimer&&window.clearTimeout(this._changeTimer),this._changeTimer=window.setTimeout((()=>{this._changeTimer=void 0,this._editing&&this._onEditorChange()}),600)}_onEditorChange(){this._editing=!1;const t=this.getValue()||"";if(this._lastValue!==t){this._lastValue=t;const e=this.validate();this.dispatchEvent(new OrAceEditorChangedEvent(t,e))}}getValue(){if(this._aceEditor)return this._aceEditor.getValue()}validate(){if(!this._aceEditor)return!1;const t=this._aceEditor.getSession().getAnnotations();return!t||0===t.length}};__decorate([property({type:Boolean,attribute:!1})],OrAceEditor.prototype,"readonly",void 0),__decorate([property({attribute:!1})],OrAceEditor.prototype,"value",void 0),__decorate([property({type:String,attribute:!1})],OrAceEditor.prototype,"mode",void 0),__decorate([query("#ace-editor")],OrAceEditor.prototype,"_aceElem",void 0),OrAceEditor=__decorate([customElement("or-ace-editor")],OrAceEditor);export{OrAceEditor};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"or-ace-editor.js","sourceRoot":"","sources":["../src/or-ace-editor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { LitElement } from "lit";
|
|
2
|
+
export declare class OrCollapsiblePanel extends LitElement {
|
|
3
|
+
static get styles(): import("lit").CSSResult[];
|
|
4
|
+
expanded: boolean;
|
|
5
|
+
expandable: boolean;
|
|
6
|
+
protected headerElem: HTMLDivElement;
|
|
7
|
+
protected _onHeaderClicked(ev: MouseEvent): void;
|
|
8
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
var __decorate=this&&this.__decorate||function(e,t,i,o){var r,n=arguments.length,a=n<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,i,o);else for(var l=e.length-1;l>=0;l--)(r=e[l])&&(a=(n<3?r(a):n>3?r(t,i,a):r(t,i))||a);return n>3&&a&&Object.defineProperty(t,i,a),a};import{css,html,LitElement,unsafeCSS}from"lit";import{customElement,property,query}from"lit/decorators.js";import{DefaultColor5}from"@openremote/core";const style=css`
|
|
2
|
+
|
|
3
|
+
:host {
|
|
4
|
+
display: block;
|
|
5
|
+
box-sizing: content-box;
|
|
6
|
+
margin: 0;
|
|
7
|
+
overflow: hidden;
|
|
8
|
+
transition: margin 225ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
|
|
9
|
+
position: relative;
|
|
10
|
+
border-color: var(--or-app-color5, ${unsafeCSS(DefaultColor5)});
|
|
11
|
+
background-color: var(--or-collapisble-panel-background-color);
|
|
12
|
+
border-radius: 4px;
|
|
13
|
+
border-width: 1px;
|
|
14
|
+
border-style: solid;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
:host([hidden]) {
|
|
18
|
+
display: none;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
#header {
|
|
22
|
+
display: flex;
|
|
23
|
+
height: 48px;
|
|
24
|
+
flex-direction: row;
|
|
25
|
+
font-family: Roboto,Helvetica Neue,sans-serif;
|
|
26
|
+
font-size: 15px;
|
|
27
|
+
font-weight: 400;
|
|
28
|
+
align-items: center;
|
|
29
|
+
padding: 0 24px 0 16px;
|
|
30
|
+
border-radius: inherit;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
#header.expandable {
|
|
34
|
+
cursor: pointer;
|
|
35
|
+
transition: height 225ms cubic-bezier(0.4, 0, 0.2, 1);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
#header.expanded {
|
|
39
|
+
height: 64px;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
#header.expanded > #indicator {
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
#header-content {
|
|
46
|
+
flex: 1;
|
|
47
|
+
display: flex;
|
|
48
|
+
flex-direction: row;
|
|
49
|
+
overflow: hidden;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
#header-title, #header-description {
|
|
53
|
+
display: inline-flex;
|
|
54
|
+
align-items: center;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
#header-description {
|
|
58
|
+
flex-grow: 2;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
#indicator {
|
|
62
|
+
align-self: center;
|
|
63
|
+
margin-right: 6px;
|
|
64
|
+
margin-left: -5px;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
#content {
|
|
68
|
+
height: 0;
|
|
69
|
+
visibility: hidden;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
#content.expanded {
|
|
73
|
+
height: unset;
|
|
74
|
+
visibility: visible;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
or-icon {
|
|
78
|
+
vertical-align: middle;
|
|
79
|
+
--or-icon-width: 20px;
|
|
80
|
+
--or-icon-height: 20px;
|
|
81
|
+
margin-right: 2px;
|
|
82
|
+
margin-left: -5px;
|
|
83
|
+
}
|
|
84
|
+
`;let OrCollapsiblePanel=class extends LitElement{constructor(){super(...arguments),this.expanded=!1,this.expandable=!0}static get styles(){return[style]}_onHeaderClicked(e){this.expandable&&(e.preventDefault(),this.expanded=!this.expanded)}render(){return html`
|
|
85
|
+
<div id="header" class="${this.expandable?"expandable":""} ${this.expandable&&this.expanded?"expanded":""}" @click="${e=>this._onHeaderClicked(e)}">
|
|
86
|
+
${this.expandable?html`<or-icon icon="chevron-${this.expanded?"down":"right"}"></or-icon>`:""}
|
|
87
|
+
<span id="header-content">
|
|
88
|
+
<span id="header-title"><slot name="header"></slot></span>
|
|
89
|
+
<span id="header-description"><slot name="header-description"></slot></span>
|
|
90
|
+
</span>
|
|
91
|
+
</div>
|
|
92
|
+
<div id="content" class="${this.expandable&&this.expanded?"expanded":""}">
|
|
93
|
+
<slot name="content"></slot>
|
|
94
|
+
</div>
|
|
95
|
+
`}};__decorate([property({type:Boolean})],OrCollapsiblePanel.prototype,"expanded",void 0),__decorate([property({type:Boolean})],OrCollapsiblePanel.prototype,"expandable",void 0),__decorate([query("#header")],OrCollapsiblePanel.prototype,"headerElem",void 0),OrCollapsiblePanel=__decorate([customElement("or-collapsible-panel")],OrCollapsiblePanel);export{OrCollapsiblePanel};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"or-collapsible-panel.js","sourceRoot":"","sources":["../src/or-collapsible-panel.ts"],"names":[],"mappings":";;;;;;AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,eAAe;AACf,MAAM,KAAK,GAAG,GAAG,CAAA;;;;;;;;;6CAS4B,SAAS,CAAC,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0EpE,CAAC;AAGK,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,UAAU;IAA3C;;QASH,aAAQ,GAAY,KAAK,CAAC;QAE1B,eAAU,GAAY,IAAI,CAAC;IA2B/B,CAAC;IApCG,MAAM,KAAK,MAAM;QACb,OAAO;YACH,KAAK;SACR,CAAC;IACN,CAAC;IASS,gBAAgB,CAAC,EAAc;QACrC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,OAAO;QACX,CAAC;QACD,EAAE,CAAC,cAAc,EAAE,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;IACnC,CAAC;IAED,MAAM;QAEF,OAAO,IAAI,CAAA;sCACmB,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,EAAa,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;kBACtK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAA,0BAA0B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC,EAAE;;;;;;uCAM9E,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;;;SAGhF,CAAC;IACN,CAAC;CACJ,CAAA;AA7BG;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;oDACA;AAE1B;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;sDACC;AAEjB;IADT,KAAK,CAAC,SAAS,CAAC;sDACqB;AAb7B,kBAAkB;IAD9B,aAAa,CAAC,sBAAsB,CAAC;GACzB,kBAAkB,CAsC9B"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { LitElement, PropertyValues } from "lit";
|
|
2
|
+
import { FileInfo } from "@openremote/model";
|
|
3
|
+
import "./or-loading-indicator";
|
|
4
|
+
export declare class OrFileUploader extends LitElement {
|
|
5
|
+
readonly src: string;
|
|
6
|
+
readonly title: string;
|
|
7
|
+
readonly accept: string;
|
|
8
|
+
private loading;
|
|
9
|
+
private files;
|
|
10
|
+
get Files(): FileInfo[];
|
|
11
|
+
static get styles(): import("lit").CSSResult;
|
|
12
|
+
protected firstUpdated(_changedProperties: PropertyValues): void;
|
|
13
|
+
_onChange(e: any): Promise<void>;
|
|
14
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
15
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
var __decorate=this&&this.__decorate||function(e,t,i,o){var r,n=arguments.length,a=n<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,i,o);else for(var l=e.length-1;l>=0;l--)(r=e[l])&&(a=(n<3?r(a):n>3?r(t,i,a):r(t,i))||a);return n>3&&a&&Object.defineProperty(t,i,a),a},__awaiter=this&&this.__awaiter||function(e,t,i,o){return new(i||(i=Promise))((function(r,n){function a(e){try{c(o.next(e))}catch(e){n(e)}}function l(e){try{c(o.throw(e))}catch(e){n(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(a,l)}c((o=o.apply(e,t||[])).next())}))};import{css,html,LitElement}from"lit";import{customElement,property}from"lit/decorators.js";import{i18next}from"@openremote/or-translate";import"./or-loading-indicator";let OrFileUploader=class extends LitElement{constructor(){super(...arguments),this.src="",this.title="",this.accept="image/png,image/jpeg,image/vnd.microsoft.icon,image/svg+xml",this.loading=!1,this.files=[]}get Files(){return this.files}static get styles(){return css`
|
|
2
|
+
#imageContainer {
|
|
3
|
+
position: relative;
|
|
4
|
+
max-width: 150px;
|
|
5
|
+
background-color: whitesmoke;
|
|
6
|
+
border: 1px solid var(--or-app-color5, #CCC);;
|
|
7
|
+
cursor: pointer;
|
|
8
|
+
border-radius: 4px;
|
|
9
|
+
padding: 4px;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
#imageContainer img {
|
|
13
|
+
max-width: 100%;
|
|
14
|
+
max-height: 100%;
|
|
15
|
+
border-radius: 2px;
|
|
16
|
+
margin: unset;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
input {
|
|
20
|
+
display: none;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.placeholder-container {
|
|
24
|
+
text-align: center;
|
|
25
|
+
width: 100%;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.placeholder-container or-icon {
|
|
29
|
+
font-size: 24px;
|
|
30
|
+
margin: 16px 0;
|
|
31
|
+
max-height: 24px;
|
|
32
|
+
width: 100%;
|
|
33
|
+
text-align: center;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
#imageContainer:hover .pencil-container{
|
|
37
|
+
display: flex;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
#imageContainer .pencil-container {
|
|
41
|
+
position: absolute;
|
|
42
|
+
top: 0;
|
|
43
|
+
bottom: 0;
|
|
44
|
+
left: 0;
|
|
45
|
+
right: 0;
|
|
46
|
+
background: rgba(0,0,0,.4);
|
|
47
|
+
color: var(--or-app-color4);
|
|
48
|
+
display: none;
|
|
49
|
+
justify-content: center;
|
|
50
|
+
align-items: center;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.container {
|
|
54
|
+
position: relative;
|
|
55
|
+
}
|
|
56
|
+
`}firstUpdated(e){var t,i;super.firstUpdated(e);const o=null===(t=this.shadowRoot)||void 0===t?void 0:t.getElementById("fileInput"),r=null===(i=this.shadowRoot)||void 0===i?void 0:i.getElementById("imageContainer");null==o||o.addEventListener("input",(e=>{this._onChange(e)})),null==r||r.addEventListener("click",(e=>{null==o||o.click()}))}_onChange(e){var t;return __awaiter(this,void 0,void 0,(function*(){this.files=null===(t=null==e?void 0:e.target)||void 0===t?void 0:t.files,this.loading=!0,this.requestUpdate(),this.dispatchEvent(new CustomEvent("change",{detail:{value:this.files}})),this.loading=!1,this.requestUpdate()}))}render(){return html`
|
|
57
|
+
<div class="container">
|
|
58
|
+
${this.loading?html`
|
|
59
|
+
<or-loading-indicator .overlay="${!0}"></or-loading-indicator>`:""}
|
|
60
|
+
<div class="title">${this.title}</div>
|
|
61
|
+
<div id="imageContainer">
|
|
62
|
+
|
|
63
|
+
${this.src?html`
|
|
64
|
+
<img src="${this.src}" alt="OR-File-Uploader">
|
|
65
|
+
<div class="pencil-container">
|
|
66
|
+
<or-icon icon="pencil-circle"></or-icon>
|
|
67
|
+
</div>
|
|
68
|
+
`:html`
|
|
69
|
+
<div class="placeholder-container">
|
|
70
|
+
<or-icon icon="upload"></or-icon>
|
|
71
|
+
${i18next.t("uploadFile")}
|
|
72
|
+
</div>
|
|
73
|
+
`}
|
|
74
|
+
</div>
|
|
75
|
+
<input type="file" id="fileInput" accept="${this.accept}">
|
|
76
|
+
</div>
|
|
77
|
+
`}};__decorate([property({attribute:!1})],OrFileUploader.prototype,"src",void 0),__decorate([property()],OrFileUploader.prototype,"title",void 0),__decorate([property({attribute:!1})],OrFileUploader.prototype,"accept",void 0),OrFileUploader=__decorate([customElement("or-file-uploader")],OrFileUploader);export{OrFileUploader};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"or-file-uploader.js","sourceRoot":"","sources":["../src/or-file-uploader.ts"],"names":[],"mappings":"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"}
|
package/lib/or-form.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { LitElement, PropertyValues } from "lit";
|
|
2
|
+
/**
|
|
3
|
+
* This is a form element that supports any element that has a value property
|
|
4
|
+
*/
|
|
5
|
+
export declare class OrForm extends LitElement {
|
|
6
|
+
protected formNodes: Node[];
|
|
7
|
+
protected firstUpdated(_changedProperties: PropertyValues): void;
|
|
8
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
9
|
+
checkValidity(): boolean;
|
|
10
|
+
reportValidity(): boolean;
|
|
11
|
+
submit(): {
|
|
12
|
+
[key: string]: any;
|
|
13
|
+
};
|
|
14
|
+
reset(): void;
|
|
15
|
+
}
|
package/lib/or-form.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
var __decorate=this&&this.__decorate||function(e,t,r,o){var n,s=arguments.length,c=s<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)c=Reflect.decorate(e,t,r,o);else for(var i=e.length-1;i>=0;i--)(n=e[i])&&(c=(s<3?n(c):s>3?n(t,r,c):n(t,r))||c);return s>3&&c&&Object.defineProperty(t,r,c),c};import{css,html,LitElement}from"lit";import{customElement,queryAssignedElements}from"lit/decorators.js";import{OrMwcInput}from"@openremote/or-mwc-components/or-mwc-input";const style=css`
|
|
2
|
+
|
|
3
|
+
:host {
|
|
4
|
+
display: block;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
:host([hidden]) {
|
|
8
|
+
display: none;
|
|
9
|
+
}
|
|
10
|
+
`;let OrForm=class extends LitElement{firstUpdated(e){super.firstUpdated(e)}render(){return html`
|
|
11
|
+
<slot></slot>
|
|
12
|
+
`}checkValidity(){let e=!1;return this.formNodes.filter((e=>e instanceof OrMwcInput&&e.name)).map((e=>e)).forEach((t=>{const r=t.checkValidity();e=e&&r})),e}reportValidity(){let e=!0;return this.formNodes.filter((e=>e instanceof OrMwcInput&&e.name)).map((e=>e)).forEach((t=>{const r=t.reportValidity();e=e&&r})),e}submit(){const e={};return this.formNodes.filter((e=>e instanceof OrMwcInput&&e.name)).map((e=>e)).forEach((t=>{e[t.name]=t.value})),e}reset(){this.formNodes.filter((e=>e instanceof OrMwcInput&&e.name)).map((e=>e)).forEach((e=>{e.value=void 0}))}};__decorate([queryAssignedElements()],OrForm.prototype,"formNodes",void 0),OrForm=__decorate([customElement("or-form")],OrForm);export{OrForm};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"or-form.js","sourceRoot":"","sources":["../src/or-form.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAE,UAAU,EAA4B,MAAM,KAAK,CAAC;AACrE,OAAO,EAAC,aAAa,EAAmB,qBAAqB,EAAC,MAAM,mBAAmB,CAAC;AAExF,OAAO,EAAC,UAAU,EAAC,MAAM,4CAA4C,CAAC;AAEtE,eAAe;AACf,MAAM,KAAK,GAAG,GAAG,CAAA;;;;;;;;;CAShB,CAAC;AAEF;;GAEG;AACH,iCAAiC;AAE1B,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,UAAU;IAKxB,YAAY,CAAC,kBAAkC;QACrD,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;QAIvC,qBAAqB;QACrB,mCAAmC;QACnC,mCAAmC;QACnC,wBAAwB;QACxB,0CAA0C;QAC1C,UAAU;QACV,IAAI;IACR,CAAC;IAED,MAAM;QAEF,OAAO,IAAI,CAAA;;SAEV,CAAC;IACN,CAAC;IAEM,aAAa;QAChB,IAAI,KAAK,GAAG,KAAK,CAAC;QAElB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAkB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YACxH,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,EAAE,CAAC;YAC9C,KAAK,GAAG,KAAK,IAAI,UAAU,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,cAAc;QACjB,IAAI,KAAK,GAAG,IAAI,CAAC;QAEjB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAkB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YACxH,MAAM,UAAU,GAAG,UAAU,CAAC,cAAc,EAAE,CAAC;YAC/C,KAAK,GAAG,KAAK,IAAI,UAAU,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,MAAM;QACT,MAAM,IAAI,GAAyB,EAAE,CAAC;QACtC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAkB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YACxH,IAAI,CAAC,UAAU,CAAC,IAAe,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC;QACxD,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAkB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YACxH,UAAU,CAAC,KAAK,GAAG,SAAS,CAAC;QACjC,CAAC,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AA1Da;IADT,qBAAqB,EAAE;yCACK;AAHpB,MAAM;IADlB,aAAa,CAAC,SAAS,CAAC;GACZ,MAAM,CA6DlB"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
var __decorate=this&&this.__decorate||function(t,e,r,o){var i,a=arguments.length,n=a<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(t,e,r,o);else for(var c=t.length-1;c>=0;c--)(i=t[c])&&(n=(a<3?i(n):a>3?i(e,r,n):i(e,r))||n);return a>3&&n&&Object.defineProperty(e,r,n),n};import{css,html,LitElement}from"lit";import{customElement,property}from"lit/decorators.js";let OrLoadingIndicator=class extends LitElement{constructor(){super(...arguments),this.overlay=!1}static get styles(){return css`
|
|
2
|
+
.loader-container {
|
|
3
|
+
position: absolute;
|
|
4
|
+
top: 0;
|
|
5
|
+
left: 0;
|
|
6
|
+
right: 0;
|
|
7
|
+
bottom: 0;
|
|
8
|
+
background-color: rgba(0, 0, 0, .2);
|
|
9
|
+
z-index: 1000;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.loader {
|
|
13
|
+
position: absolute;
|
|
14
|
+
left: 50%;
|
|
15
|
+
transform: translate(-50%, -50%);
|
|
16
|
+
top: 50%;
|
|
17
|
+
z-index: 1010;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.loader svg {
|
|
21
|
+
height: 60px;
|
|
22
|
+
width: 60px;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
@-webkit-keyframes rotate-right {
|
|
26
|
+
from {
|
|
27
|
+
-webkit-transform: rotate(0deg);
|
|
28
|
+
}
|
|
29
|
+
to {
|
|
30
|
+
-webkit-transform: rotate(360deg);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
@-webkit-keyframes rotate-left {
|
|
34
|
+
from {
|
|
35
|
+
-webkit-transform: rotate(0deg);
|
|
36
|
+
}
|
|
37
|
+
to {
|
|
38
|
+
-webkit-transform: rotate(-360deg);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.loader #circle1 {
|
|
43
|
+
-webkit-transform: translate3d(0, 0, 0);
|
|
44
|
+
-webkit-transform-origin: 54.1px 53.6px;
|
|
45
|
+
-webkit-animation: rotate-right 7s linear 0s infinite;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.loader #circle2 {
|
|
49
|
+
-webkit-transform: translate3d(0, 0, 0);
|
|
50
|
+
-webkit-transform-origin: 54.1px 53.6px;
|
|
51
|
+
-webkit-animation: rotate-left 6s linear 0s infinite;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.loader #circle3 {
|
|
55
|
+
-webkit-transform: translate3d(0, 0, 0);
|
|
56
|
+
-webkit-transform-origin: 54.1px 53.6px;
|
|
57
|
+
-webkit-animation: rotate-right 5s linear 0s infinite;
|
|
58
|
+
}
|
|
59
|
+
`}render(){const t=html`
|
|
60
|
+
<div class="loader">
|
|
61
|
+
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 110 110"
|
|
62
|
+
xml:space="preserve">
|
|
63
|
+
<path fill="#d2d2d2" id="circle1"
|
|
64
|
+
d="M53.648,107.296C24.068,107.296,0,83.236,0,53.646h11.234c0,23.391,19.025,42.42,42.414,42.42 c23.385,0,42.416-19.029,42.416-42.42c0-23.382-19.031-42.408-42.416-42.408V0c29.582,0,53.65,24.068,53.65,53.646 C107.299,83.236,83.23,107.296,53.648,107.296L53.648,107.296z" />
|
|
65
|
+
<path fill="#a5a5a5" id="circle2"
|
|
66
|
+
d="M45.525,92.57c-10.395-2.166-19.324-8.262-25.145-17.137c-5.814-8.884-7.826-19.511-5.654-29.906 c2.174-10.399,8.258-19.325,17.141-25.145c8.889-5.815,19.506-7.825,29.906-5.655c21.463,4.479,35.281,25.582,30.803,47.041 L81.58,59.478c3.207-15.397-6.703-30.539-22.105-33.751c-7.461-1.56-15.078-0.119-21.455,4.06 c-6.369,4.169-10.736,10.58-12.299,18.039c-1.555,7.458-0.113,15.075,4.064,21.453c4.17,6.37,10.576,10.744,18.041,12.297 L45.525,92.57L45.525,92.57z" />
|
|
67
|
+
<path fill="#878787" id="circle3"
|
|
68
|
+
d="M53.682,79.428c-0.432,0-0.871-0.012-1.309-0.032c-6.869-0.342-13.205-3.344-17.83-8.439 c-4.621-5.108-6.982-11.705-6.639-18.582l11.215,0.553c-0.188,3.879,1.141,7.609,3.75,10.488c2.604,2.879,6.186,4.568,10.059,4.761 c3.869,0.179,7.607-1.142,10.48-3.748c2.887-2.603,4.576-6.179,4.773-10.057c0.391-8.012-5.803-14.854-13.816-15.248l0.559-11.222 c14.201,0.71,25.178,12.823,24.475,27.021c-0.344,6.883-3.336,13.212-8.441,17.831C66.174,77.086,60.084,79.428,53.682,79.428 L53.682,79.428z" />
|
|
69
|
+
</svg>
|
|
70
|
+
</div>`;return this.overlay?html`
|
|
71
|
+
<div class="loader-container">
|
|
72
|
+
${t}
|
|
73
|
+
</div>`:t}};__decorate([property({attribute:!0})],OrLoadingIndicator.prototype,"overlay",void 0),OrLoadingIndicator=__decorate([customElement("or-loading-indicator")],OrLoadingIndicator);export{OrLoadingIndicator};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"or-loading-indicator.js","sourceRoot":"","sources":["../src/or-loading-indicator.ts"],"names":[],"mappings":";;;;;;AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAGrD,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,UAAU;IAA3C;;QAGE,YAAO,GAAY,KAAK,CAAC;IAwFlC,CAAC;IAtFC,MAAM,KAAK,MAAM;QACf,OAAO,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA0DT,CAAC;IACJ,CAAC;IAGD,MAAM;QACJ,MAAM,MAAM,GAAG,IAAI,CAAA;;;;;;;;;;;aAWV,CAAC;QAGV,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,IAAI,CAAA;;YAEL,MAAM;eACH,CAAC;QACZ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;AAxFQ;IADN,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;mDACE;AAHrB,kBAAkB;IAD9B,aAAa,CAAC,sBAAsB,CAAC;GACzB,kBAAkB,CA2F9B"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { LitElement, TemplateResult } from "lit";
|
|
2
|
+
/**
|
|
3
|
+
* A simple loading wrapper around some other content that will hide the content whilst loading property is true
|
|
4
|
+
*/
|
|
5
|
+
export declare class OrLoadingWrapper extends LitElement {
|
|
6
|
+
loadingHeight?: number;
|
|
7
|
+
loadDom: boolean;
|
|
8
|
+
fadeContent: boolean;
|
|
9
|
+
loading: boolean;
|
|
10
|
+
content?: TemplateResult;
|
|
11
|
+
static get styles(): import("lit").CSSResult;
|
|
12
|
+
render(): TemplateResult<1>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
var __decorate=this&&this.__decorate||function(e,t,o,r){var i,p=arguments.length,a=p<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,o):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,o,r);else for(var d=e.length-1;d>=0;d--)(i=e[d])&&(a=(p<3?i(a):p>3?i(t,o,a):i(t,o))||a);return p>3&&a&&Object.defineProperty(t,o,a),a};import{css,html,LitElement}from"lit";import{customElement,property}from"lit/decorators.js";let OrLoadingWrapper=class extends LitElement{constructor(){super(...arguments),this.loadDom=!0,this.fadeContent=!1,this.loading=!1}static get styles(){return css`
|
|
2
|
+
:host {
|
|
3
|
+
display: block;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.hidden {
|
|
7
|
+
display: none;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.faded {
|
|
11
|
+
opacity: 0.5;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
#wrapper {
|
|
15
|
+
position: relative;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
#loader {
|
|
19
|
+
position: absolute;
|
|
20
|
+
width: 100%;
|
|
21
|
+
height: 100%;
|
|
22
|
+
}
|
|
23
|
+
`}render(){return html`
|
|
24
|
+
<div id="wrapper">
|
|
25
|
+
${this.loading?html`<div id="loader">LOADING</div>`:""}
|
|
26
|
+
${this.loadDom||!this.loading?html`
|
|
27
|
+
<div id="content-wrapper" class="${this.loading?this.fadeContent?"faded":"hidden":""}">
|
|
28
|
+
<slot></slot>
|
|
29
|
+
${this.content||""}
|
|
30
|
+
</div>`:""}
|
|
31
|
+
</div>
|
|
32
|
+
`}};__decorate([property({type:Number})],OrLoadingWrapper.prototype,"loadingHeight",void 0),__decorate([property({type:Boolean})],OrLoadingWrapper.prototype,"loadDom",void 0),__decorate([property({type:Boolean})],OrLoadingWrapper.prototype,"fadeContent",void 0),__decorate([property({type:Boolean})],OrLoadingWrapper.prototype,"loading",void 0),__decorate([property({type:Object,attribute:!1})],OrLoadingWrapper.prototype,"content",void 0),OrLoadingWrapper=__decorate([customElement("or-loading-wrapper")],OrLoadingWrapper);export{OrLoadingWrapper};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"or-loading-wrapper.js","sourceRoot":"","sources":["../src/or-loading-wrapper.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAE,UAAU,EAAkB,MAAM,KAAK,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE5D;;GAEG;AAEI,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,UAAU;IAAzC;;QAMI,YAAO,GAAY,IAAI,CAAC;QAGxB,gBAAW,GAAY,KAAK,CAAC;QAG7B,YAAO,GAAY,KAAK,CAAC;IA4CpC,CAAC;IAvCG,eAAe;IACR,MAAM,KAAK,MAAM;QACpB,OAAO,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;SAsBT,CAAC;IACN,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAA;;kBAED,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA,gCAAgC,CAAC,CAAC,CAAC,EAAE;kBACxD,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAA,CAAC,CAAC,IAAI,CAAA;uDACE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;;0BAEtF,IAAI,CAAC,OAAO,IAAI,EAAE;2BACjB,CAAC,CAAC,CAAC,EAAE;;SAEvB,CAAC;IACN,CAAC;CACJ,CAAA;AArDU;IADN,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;uDACK;AAGvB;IADN,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;iDACK;AAGxB;IADN,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;qDACU;AAG7B;IADN,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;iDACM;AAGzB;IADN,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAC,CAAC;iDACX;AAfvB,gBAAgB;IAD5B,aAAa,CAAC,oBAAoB,CAAC;GACvB,gBAAgB,CAwD5B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { LitElement, TemplateResult } from "lit";
|
|
2
|
+
export declare class OrPanel extends LitElement {
|
|
3
|
+
static get styles(): import("lit").CSSResult[];
|
|
4
|
+
zLevel?: number;
|
|
5
|
+
heading?: string | TemplateResult;
|
|
6
|
+
protected _panel: HTMLDivElement;
|
|
7
|
+
render(): TemplateResult<1>;
|
|
8
|
+
}
|
package/lib/or-panel.js
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
var __decorate=this&&this.__decorate||function(e,r,n,a){var o,t=arguments.length,i=t<3?r:null===a?a=Object.getOwnPropertyDescriptor(r,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,r,n,a);else for(var l=e.length-1;l>=0;l--)(o=e[l])&&(i=(t<3?o(i):t>3?o(r,n,i):o(r,n))||i);return t>3&&i&&Object.defineProperty(r,n,i),i};import{css,html,LitElement,unsafeCSS}from"lit";import{customElement,property,query}from"lit/decorators.js";import{DefaultColor2,DefaultColor3}from"@openremote/core";import{when}from"lit/directives/when.js";const simpleBarStyle=require("simplebar/dist/simplebar.css"),elevationStyle=require("@material/elevation/dist/mdc.elevation.css"),style=css`
|
|
2
|
+
|
|
3
|
+
:host {
|
|
4
|
+
--internal-or-panel-background-color: var(--or-panel-background-color, var(--or-app-color2, ${unsafeCSS(DefaultColor2)}));
|
|
5
|
+
--internal-or-panel-padding: var(--or-panel-padding, 10px);
|
|
6
|
+
--internal-or-panel-border: var(--or-panel-border, 1px solid #e5e5e5);
|
|
7
|
+
--internal-or-panel-border-radius: var(--or-panel-border-radius, 5px);
|
|
8
|
+
--internal-or-panel-heading-margin: var(--or-panel-heading-margin, 0 0 10px 7px);
|
|
9
|
+
--internal-or-panel-heading-min-height: var(--or-panel-heading-min-height, 36px);
|
|
10
|
+
--internal-or-panel-heading-color: var(--or-panel-heading-color, var(--or-app-color3, ${unsafeCSS(DefaultColor3)}));
|
|
11
|
+
--internal-or-panel-heading-font-size: var(--or-panel-heading-font-size, larger);
|
|
12
|
+
--internal-or-panel-heading-font-weight: var(--or-panel-heading-font-weight, bolder);
|
|
13
|
+
|
|
14
|
+
display: block;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
:host([hidden]) {
|
|
18
|
+
display: none;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
#wrapper {
|
|
22
|
+
height: 100%;
|
|
23
|
+
flex: 1;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
#panel {
|
|
27
|
+
padding: var(--internal-or-panel-padding);
|
|
28
|
+
background-color: var(--internal-or-panel-background-color);
|
|
29
|
+
border: var(--internal-or-panel-border);
|
|
30
|
+
border-radius: var(--internal-or-panel-border-radius);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
#heading {
|
|
34
|
+
display: flex;
|
|
35
|
+
align-items: center;
|
|
36
|
+
margin: var(--internal-or-panel-heading-margin);
|
|
37
|
+
min-height: var(--internal-or-panel-heading-min-height);
|
|
38
|
+
font-size: var(--internal-or-panel-heading-font-size);
|
|
39
|
+
font-weight: var(--internal-or-panel-heading-font-weight);
|
|
40
|
+
color: var(--internal-or-panel-heading-color);
|
|
41
|
+
}
|
|
42
|
+
`;let OrPanel=class extends LitElement{static get styles(){return[css`${unsafeCSS(elevationStyle)}`,css`${unsafeCSS(simpleBarStyle)}`,style]}render(){return html`
|
|
43
|
+
<div id="wrapper">
|
|
44
|
+
<div id="panel">
|
|
45
|
+
${this.heading?html`
|
|
46
|
+
${when(!("string"==typeof this.heading),(()=>html`
|
|
47
|
+
${this.heading}
|
|
48
|
+
`),(()=>html`
|
|
49
|
+
<div id="heading">
|
|
50
|
+
<span>${this.heading}</span>
|
|
51
|
+
</div>
|
|
52
|
+
`))}
|
|
53
|
+
`:""}
|
|
54
|
+
<slot></slot>
|
|
55
|
+
</div>
|
|
56
|
+
</div>
|
|
57
|
+
`}};__decorate([property({type:Number})],OrPanel.prototype,"zLevel",void 0),__decorate([property({type:String})],OrPanel.prototype,"heading",void 0),__decorate([query("#panel")],OrPanel.prototype,"_panel",void 0),OrPanel=__decorate([customElement("or-panel")],OrPanel);export{OrPanel};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"or-panel.js","sourceRoot":"","sources":["../src/or-panel.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAE,UAAU,EAAkB,SAAS,EAAC,MAAM,KAAK,CAAC;AACrE,OAAO,EAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAC,MAAM,mBAAmB,CAAC;AACjE,OAAO,EAAC,aAAa,EAAE,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAC,IAAI,EAAC,MAAM,wBAAwB,CAAC;AAE5C,uFAAuF;AACvF,MAAM,cAAc,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;AAC/D,MAAM,cAAc,GAAG,OAAO,CAAC,4CAA4C,CAAC,CAAC;AAE7E,eAAe;AACf,MAAM,KAAK,GAAG,GAAG,CAAA;;;sGAGqF,SAAS,CAAC,aAAa,CAAC;;;;;;gGAM9B,SAAS,CAAC,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCvH,CAAC;AAGK,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,UAAU;IAEnC,MAAM,KAAK,MAAM;QACb,OAAO;YACH,GAAG,CAAC,GAAG,SAAS,CAAC,cAAc,CAAC,EAAE;YAClC,GAAG,CAAC,GAAG,SAAS,CAAC,cAAc,CAAC,EAAE;YAClC,KAAK;SACR,CAAC;IACN,CAAC;IAWD,MAAM;QACF,OAAO,IAAI,CAAA;;;sBAGG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;0BACf,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA;8BAChD,IAAI,CAAC,OAAO;yBACjB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA;;wCAEG,IAAI,CAAC,OAAO;;yBAE3B,CAAC;qBACL,CAAC,CAAC,CAAC,EAAE;;;;SAIjB,CAAC;IACN,CAAC;CACJ,CAAA;AA1BG;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;uCACT;AAGT;IADN,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;wCACgB;AAG/B;IADT,KAAK,CAAC,QAAQ,CAAC;uCACkB;AAjBzB,OAAO;IADnB,aAAa,CAAC,UAAU,CAAC;GACb,OAAO,CAqCnB"}
|
package/package.json
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@openremote/or-components",
|
|
3
|
+
"version": "1.2.0-snapshot.20240512154942",
|
|
4
|
+
"description": "OpenRemote basic UI components",
|
|
5
|
+
"main": "dist/umd/index.bundle.js",
|
|
6
|
+
"module": "lib/index.js",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": "./lib/index.js",
|
|
9
|
+
"./*": "./lib/*.js"
|
|
10
|
+
},
|
|
11
|
+
"typesVersions": {
|
|
12
|
+
"*": {
|
|
13
|
+
"*": [
|
|
14
|
+
"lib/*"
|
|
15
|
+
]
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"scripts": {
|
|
19
|
+
"test": "echo \"No tests\" && exit 0",
|
|
20
|
+
"prepublishOnly": "npx webpack"
|
|
21
|
+
},
|
|
22
|
+
"author": "OpenRemote",
|
|
23
|
+
"license": "AGPL-3.0-or-later",
|
|
24
|
+
"dependencies": {
|
|
25
|
+
"@material/elevation": "^9.0.0",
|
|
26
|
+
"@openremote/core": "1.2.0-snapshot.20240512154942",
|
|
27
|
+
"lit": "^2.0.2",
|
|
28
|
+
"simplebar": "^5.3.6"
|
|
29
|
+
},
|
|
30
|
+
"devDependencies": {
|
|
31
|
+
"@openremote/util": "1.2.0-snapshot.20240512154942"
|
|
32
|
+
},
|
|
33
|
+
"publishConfig": {
|
|
34
|
+
"access": "public"
|
|
35
|
+
}
|
|
36
|
+
}
|