@xplortech/apollo-core 0.5.2 → 1.0.0-beta.0
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/build/style.css +758 -383
- package/dist/apollo-core/apollo-core.css +4 -4
- package/dist/apollo-core/apollo-core.esm.js +1 -1
- package/dist/apollo-core/{p-5854d1e4.entry.js → p-09b2f746.entry.js} +1 -1
- package/dist/apollo-core/p-0bc956c6.entry.js +1 -0
- package/dist/apollo-core/p-1b1e7207.entry.js +1 -0
- package/dist/apollo-core/{p-f167aa05.entry.js → p-20389bb6.entry.js} +1 -1
- package/dist/apollo-core/{p-ee2f4422.entry.js → p-25983fde.entry.js} +1 -1
- package/dist/apollo-core/{p-128a0240.entry.js → p-4a348764.entry.js} +1 -1
- package/dist/apollo-core/{p-eb63b401.entry.js → p-4e2b69e8.entry.js} +1 -1
- package/dist/apollo-core/{p-97cd1f73.entry.js → p-84bf6b2d.entry.js} +1 -1
- package/dist/apollo-core/{p-611536d8.entry.js → p-880c0359.entry.js} +1 -1
- package/dist/apollo-core/p-8e47a5be.entry.js +1 -0
- package/dist/apollo-core/p-93958292.entry.js +1 -0
- package/dist/apollo-core/p-93c27db5.entry.js +1 -0
- package/dist/apollo-core/{p-0b2c612e.entry.js → p-b2327e2c.entry.js} +1 -1
- package/dist/apollo-core/p-c55b5d9c.entry.js +1 -0
- package/dist/apollo-core/p-e369d7af.entry.js +1 -0
- package/dist/apollo-core/p-e60ecaef.entry.js +1 -0
- package/dist/apollo-core/p-f929c958.js +1 -0
- package/dist/cjs/apollo-core.cjs.js +2 -2
- package/dist/cjs/{index-944adb2e.js → index-54ba5804.js} +14 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/xpl-application-shell.cjs.entry.js +58 -0
- package/dist/cjs/xpl-avatar_12.cjs.entry.js +299 -0
- package/dist/cjs/xpl-backdrop.cjs.entry.js +25 -0
- package/dist/cjs/xpl-button-row.cjs.entry.js +2 -4
- package/dist/cjs/xpl-choicelist.cjs.entry.js +21 -14
- package/dist/cjs/xpl-divider.cjs.entry.js +2 -2
- package/dist/cjs/xpl-dropdown-group_3.cjs.entry.js +104 -0
- package/dist/cjs/xpl-dropdown_2.cjs.entry.js +123 -0
- package/dist/cjs/xpl-grid-item.cjs.entry.js +2 -2
- package/dist/cjs/xpl-grid.cjs.entry.js +12 -12
- package/dist/cjs/xpl-input.cjs.entry.js +33 -26
- package/dist/cjs/xpl-list.cjs.entry.js +17 -19
- package/dist/cjs/xpl-main-nav.cjs.entry.js +30 -0
- package/dist/cjs/xpl-pagination.cjs.entry.js +8 -8
- package/dist/cjs/xpl-select.cjs.entry.js +87 -85
- package/dist/cjs/xpl-toggle.cjs.entry.js +13 -13
- package/dist/collection/collection-manifest.json +4 -0
- package/dist/collection/components/xpl-application-shell/xpl-application-shell.js +11 -7
- package/dist/collection/components/xpl-avatar/xpl-avatar.js +7 -7
- package/dist/collection/components/xpl-backdrop/xpl-backdrop.js +1 -1
- package/dist/collection/components/xpl-badge/xpl-badge.js +5 -5
- package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumb-item/xpl-breadcrumb-item.js +0 -2
- package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumbs/xpl-breadcrumbs.js +0 -2
- package/dist/collection/components/xpl-button/xpl-button.js +79 -82
- package/dist/collection/components/xpl-button-row/xpl-button-row.js +7 -9
- package/dist/collection/components/xpl-checkbox/xpl-checkbox.js +11 -11
- package/dist/collection/components/xpl-choicelist/xpl-choicelist.js +22 -15
- package/dist/collection/components/xpl-content-area/xpl-content-area.js +5 -5
- package/dist/collection/components/xpl-divider/xpl-divider.js +1 -1
- package/dist/collection/components/xpl-dropdown/xpl-dropdown-group/xpl-dropdown-group.js +66 -0
- package/dist/collection/components/xpl-dropdown/xpl-dropdown-heading/xpl-dropdown-heading.js +27 -0
- package/dist/collection/components/xpl-dropdown/xpl-dropdown-option/xpl-dropdown-option.js +110 -0
- package/dist/collection/components/xpl-dropdown/xpl-dropdown.js +259 -31
- package/dist/collection/components/xpl-grid/xpl-grid.js +11 -11
- package/dist/collection/components/xpl-grid-item/xpl-grid-item.js +1 -1
- package/dist/collection/components/xpl-input/xpl-input.js +49 -42
- package/dist/collection/components/xpl-list/xpl-list.js +24 -26
- package/dist/collection/components/xpl-main-nav/xpl-main-nav.js +3 -3
- package/dist/collection/components/xpl-nav-item/xpl-nav-item.js +59 -2
- package/dist/collection/components/xpl-pagination/xpl-pagination.js +11 -10
- package/dist/collection/components/xpl-radio/xpl-radio.js +11 -11
- package/dist/collection/components/xpl-select/xpl-select.js +97 -64
- package/dist/collection/components/xpl-table/xpl-table.js +18 -12
- package/dist/collection/components/xpl-toggle/xpl-toggle.js +16 -16
- package/dist/collection/components/xpl-utility-bar/xpl-utility-bar.js +4 -8
- package/dist/custom-elements/index.d.ts +24 -0
- package/dist/custom-elements/index.js +18936 -18694
- package/dist/esm/apollo-core.js +2 -2
- package/dist/esm/{index-899dba3b.js → index-3df6db84.js} +14 -0
- package/dist/esm/loader.js +2 -2
- package/dist/esm/xpl-application-shell.entry.js +54 -0
- package/dist/esm/xpl-avatar_12.entry.js +284 -0
- package/dist/esm/xpl-backdrop.entry.js +21 -0
- package/dist/esm/xpl-button-row.entry.js +2 -4
- package/dist/esm/xpl-choicelist.entry.js +21 -14
- package/dist/esm/xpl-divider.entry.js +2 -2
- package/dist/esm/xpl-dropdown-group_3.entry.js +98 -0
- package/dist/esm/xpl-dropdown_2.entry.js +118 -0
- package/dist/esm/xpl-grid-item.entry.js +2 -2
- package/dist/esm/xpl-grid.entry.js +12 -12
- package/dist/esm/xpl-input.entry.js +33 -26
- package/dist/esm/xpl-list.entry.js +17 -19
- package/dist/esm/xpl-main-nav.entry.js +26 -0
- package/dist/esm/xpl-pagination.entry.js +8 -8
- package/dist/esm/xpl-select.entry.js +87 -85
- package/dist/esm/xpl-toggle.entry.js +13 -13
- package/dist/stories/application-shell.stories.js +31 -30
- package/dist/stories/avatar.stories.js +38 -38
- package/dist/stories/backdrop.stories.js +3 -3
- package/dist/stories/badge.stories.js +16 -16
- package/dist/stories/breadcrumbs.stories.js +18 -16
- package/dist/stories/button-row.stories.js +18 -14
- package/dist/stories/button.stories.js +69 -57
- package/dist/stories/checkbox.stories.js +21 -19
- package/dist/stories/choicelist.stories.js +19 -19
- package/dist/stories/content-area.stories.js +6 -6
- package/dist/stories/divider.stories.js +7 -7
- package/dist/stories/dropdown.stories.js +377 -0
- package/dist/stories/grid.stories.js +19 -19
- package/dist/stories/input.stories.js +93 -77
- package/dist/stories/list.stories.js +72 -52
- package/dist/stories/main-nav.stories.js +8 -8
- package/dist/stories/radio.stories.js +18 -16
- package/dist/stories/secondary-nav.stories.js +5 -5
- package/dist/stories/select.stories.js +54 -46
- package/dist/stories/table.stories.js +29 -29
- package/dist/stories/toggle.stories.js +30 -26
- package/dist/stories/utility-bar.stories.js +4 -4
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/application-shell.stories.d.ts +4 -4
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/avatar.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/backdrop.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/badge.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/breadcrumbs.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/button-row.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/button.stories.d.ts +19 -10
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/checkbox.stories.d.ts +2 -2
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/choicelist.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/content-area.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/divider.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/dropdown.stories.d.ts +134 -0
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/grid.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/input.stories.d.ts +5 -5
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/list.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/main-nav.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/radio.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/secondary-nav.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/select.stories.d.ts +2 -2
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/table.stories.d.ts +1 -1
- package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/toggle.stories.d.ts +2 -2
- package/dist/types/components/xpl-application-shell/xpl-application-shell.d.ts +2 -2
- package/dist/types/components/xpl-avatar/xpl-avatar.d.ts +3 -3
- package/dist/types/components/xpl-badge/xpl-badge.d.ts +1 -1
- package/dist/types/components/xpl-button/xpl-button.d.ts +32 -8
- package/dist/types/components/xpl-button-row/xpl-button-row.d.ts +3 -3
- package/dist/types/components/xpl-checkbox/xpl-checkbox.d.ts +1 -1
- package/dist/types/components/xpl-content-area/xpl-content-area.d.ts +3 -3
- package/dist/types/components/xpl-dropdown/xpl-dropdown-group/xpl-dropdown-group.d.ts +7 -0
- package/dist/types/components/xpl-dropdown/xpl-dropdown-heading/xpl-dropdown-heading.d.ts +5 -0
- package/dist/types/components/xpl-input/xpl-input.d.ts +4 -4
- package/dist/types/components/xpl-list/xpl-list.d.ts +2 -2
- package/dist/types/components/xpl-main-nav/xpl-main-nav.d.ts +1 -1
- package/dist/types/components/xpl-nav-item/xpl-nav-item.d.ts +10 -0
- package/dist/types/components/xpl-pagination/xpl-pagination.d.ts +1 -1
- package/dist/types/components/xpl-radio/xpl-radio.d.ts +1 -1
- package/dist/types/components/xpl-select/xpl-select.d.ts +6 -2
- package/dist/types/components/xpl-table/xpl-table.d.ts +1 -1
- package/dist/types/components/xpl-toggle/xpl-toggle.d.ts +1 -1
- package/dist/types/components.d.ts +264 -40
- package/package.json +10 -4
- package/dist/apollo-core/p-0203d4e8.entry.js +0 -1
- package/dist/apollo-core/p-30003b15.entry.js +0 -1
- package/dist/apollo-core/p-4e56a2ca.entry.js +0 -1
- package/dist/apollo-core/p-7c9fee7e.entry.js +0 -1
- package/dist/apollo-core/p-8b6633c7.js +0 -1
- package/dist/apollo-core/p-9c5ca308.entry.js +0 -1
- package/dist/apollo-core/p-bd4a7e3c.entry.js +0 -1
- package/dist/apollo-core/p-dab8e7a1.entry.js +0 -1
- package/dist/cjs/xpl-application-shell_11.cjs.entry.js +0 -230
- package/dist/cjs/xpl-badge.cjs.entry.js +0 -21
- package/dist/cjs/xpl-checkbox_2.cjs.entry.js +0 -51
- package/dist/cjs/xpl-table.cjs.entry.js +0 -89
- package/dist/cjs/xpl-tag.cjs.entry.js +0 -21
- package/dist/esm/xpl-application-shell_11.entry.js +0 -216
- package/dist/esm/xpl-badge.entry.js +0 -17
- package/dist/esm/xpl-checkbox_2.entry.js +0 -46
- package/dist/esm/xpl-table.entry.js +0 -85
- package/dist/esm/xpl-tag.entry.js +0 -17
- package/dist/types/components/xpl-choicelist/choice.d.ts +0 -6
- package/dist/types/components/xpl-dropdown/dropdownchoice.d.ts +0 -6
- package/dist/types/components/xpl-dropdown/xpl-dropdown.d.ts +0 -10
- package/dist/types/components/xpl-list/listitem.d.ts +0 -16
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as s,c as i,h as t,H as l}from"./p-8b6633c7.js";import{v as e}from"./p-ad90fe4d.js";const h=class{constructor(t){s(this,t),this.checkboxChange=i(this,"checkboxChange",7),this.id=e()}render(){return t(l,{class:{"xpl-checkbox-radio-container":!0,styled:this.styled,disabled:this.disabled}},t("input",{class:"xpl-checkbox",type:"checkbox",checked:this.checked,disabled:this.disabled,id:this.id,indeterminate:this.indeterminate,onChange:()=>this.checkboxChange.emit(this.input.checked),name:this.name,ref:s=>this.input=s,required:this.required,value:this.value}),t("label",{class:{"xpl-label":!0,"xpl-label--disabled":this.disabled},htmlFor:this.id},t("slot",null),this.description&&t("small",{class:{"xpl-description":!0,"xpl-description--disabled":this.disabled}},this.description)))}},a=class{constructor(t){s(this,t),this.radioChange=i(this,"radioChange",7),this.id=e()}render(){return t(l,{class:{"xpl-checkbox-radio-container":!0,styled:this.styled,disabled:this.disabled}},t("input",{class:"xpl-radio",type:"radio",checked:this.checked,disabled:this.disabled,id:this.id,name:this.name,required:this.required,value:this.value,onChange:()=>this.radioChange.emit(!0)}),t("label",{class:{"xpl-label":!0,"xpl-label--disabled":this.disabled},htmlFor:this.id},t("slot",null),this.description&&t("small",{class:{"xpl-description":!0,"xpl-description--disabled":this.disabled}},this.description)))}};export{h as xpl_checkbox,a as xpl_radio}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as t,c as s,h as e,H as i}from"./p-8b6633c7.js";const h=class{constructor(e){t(this,e),this.tableSelect=s(this,"tableSelect",7),this.areAllSelected=!1,this.hasScrolled=!1,this.selectAll=t=>{const{target:s}=t;if(!(s instanceof HTMLInputElement))return;const{checked:e}=s;this.areAllSelected=e,this.selected=this.selected.map((()=>e)),this.onChange()},this.selectOne=(t,s)=>{const{target:e}=t;if(!(e instanceof HTMLInputElement))return;const{checked:i}=e;this.areAllSelected=!1,this.selected=this.selected.map(((t,e)=>e===s?i:t)),this.onChange()},this.onChange=()=>{this.tableSelect.emit({selected:this.selected,areAllSelected:this.areAllSelected})},this.onScroll=()=>{this.hasScrolled=this.container.scrollLeft>0},this.sortBy=(t,s=!0)=>{this.rowData.sort(((e,i)=>{const h=e[t],l=i[t];if("number"==typeof h&&"number"==typeof l){const t=s?1:-1;return h>l?t:-t}return-1})),this.rowData=Array.from(this.rowData),this.render()}}componentWillLoad(){this.areAllSelected=!1,this.rowData=void 0!==this.data?Array.from(this.data):[],this.selected=new Array(this.rowData.length).fill(!1)}render(){let t="xpl-table";return this.striped&&(t+=" xpl-table--striped"),this.freeze&&(t+=" xpl-table--freeze"),this.hasScrolled&&(t+=" xpl-table--has-scrolled"),e(i,null,e("div",{class:"xpl-table-container",onScroll:this.onScroll,ref:t=>this.container=t},e("table",{class:t},this.columns&&e("thead",null,this.columns.map(((t,s)=>e("th",null,this.multiselect&&0===s?e("label",{htmlFor:"__xpl-table-th"},e("input",{checked:this.areAllSelected,id:"__xpl-table-th",indeterminate:!this.areAllSelected&&this.selected.some((t=>t)),onChange:t=>{this.selectAll(t)},type:"checkbox"}),t):t)))),e("tbody",null,this.rowData.map(((t,s)=>e("tr",{class:this.selected&&this.selected[s]?"xpl-table-row-selected":""},t.map(((t,i)=>e("td",null,this.multiselect&&0===i?e("label",{htmlFor:"__xpl-table-row-"+s},e("input",{id:"__xpl-table-row-"+s,checked:this.selected[s],type:"checkbox",onChange:t=>this.selectOne(t,s)}),e("div",{innerHTML:t})):e("div",{innerHTML:t})))))))))))}};export{h as xpl_table}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as s,c as t,h as l,H as c}from"./p-8b6633c7.js";const o=class{constructor(l){s(this,l),this.close=t(this,"close",7)}render(){return l(c,{class:"xpl-tag-container"},l("button",{class:"xpl-tag",onClick:()=>{this.close.emit()}},l("slot",null)),l("button",{class:"xpl-tag__close",onClick:()=>{this.close.emit()}},"×"))}};export{o as xpl_tag}
|
|
@@ -1,230 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
const index = require('./index-944adb2e.js');
|
|
6
|
-
require('./regular-872f5226.js');
|
|
7
|
-
|
|
8
|
-
const XplApplicationShell = class {
|
|
9
|
-
constructor(hostRef) {
|
|
10
|
-
index.registerInstance(this, hostRef);
|
|
11
|
-
/**
|
|
12
|
-
* @property {boolean} - Whether or not the Grid should have space for a secondary (sub) navigation bar
|
|
13
|
-
*/
|
|
14
|
-
this.withSubnav = false;
|
|
15
|
-
/**
|
|
16
|
-
* @property {boolean} - Whether or not the Grid should have space for a utility bar
|
|
17
|
-
*/
|
|
18
|
-
this.withUtility = true;
|
|
19
|
-
/**
|
|
20
|
-
* @property {string} - The width of the main navigation bar, can be passed or updated when nav-width event is emitted.
|
|
21
|
-
*/
|
|
22
|
-
this.navWidth = 'default';
|
|
23
|
-
/**
|
|
24
|
-
* @state {boolean} - Whether or not the main nav is open, updates when the nav-open envent is emitted.
|
|
25
|
-
*/
|
|
26
|
-
this.navOpen = true;
|
|
27
|
-
}
|
|
28
|
-
closeNavOnMobile() {
|
|
29
|
-
if (window.innerWidth <= 640) {
|
|
30
|
-
this.navOpen = false;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
navToggleHandler() {
|
|
34
|
-
this.navOpen = !this.navOpen;
|
|
35
|
-
}
|
|
36
|
-
navWithHandler(event) {
|
|
37
|
-
this.navWidth = event.detail;
|
|
38
|
-
}
|
|
39
|
-
onWindowResize() {
|
|
40
|
-
this.closeNavOnMobile();
|
|
41
|
-
}
|
|
42
|
-
connectedCallback() {
|
|
43
|
-
this.closeNavOnMobile();
|
|
44
|
-
}
|
|
45
|
-
render() {
|
|
46
|
-
let applicationShellClasses = "xpl-application-shell";
|
|
47
|
-
if (this.withUtility)
|
|
48
|
-
applicationShellClasses += " xpl-application-shell--with_utility";
|
|
49
|
-
let navClasses = "xpl-application-shell__nav";
|
|
50
|
-
navClasses += (this.navOpen) ? ` xpl-application-shell__nav--${this.navWidth}--open` : ` xpl-application-shell__nav--${this.navWidth}`;
|
|
51
|
-
return (index.h(index.Host, { class: applicationShellClasses }, index.h("div", { class: navClasses }, index.h("slot", { name: "nav" })), index.h("div", { class: "xpl-application-shell__subnav" }, index.h("slot", { name: "subnav" })), index.h("div", { class: "xpl-application-shell__utility" }, index.h("slot", { name: "utility" })), index.h("div", { class: "xpl-application-shell__content" }, index.h("slot", { name: "content" })), index.h("xpl-backdrop", { onClick: () => this.navToggleHandler(), class: { "xpl-application-shell__backdrop--open": this.navOpen }, relative: true })));
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
const XplAvatar = class {
|
|
56
|
-
constructor(hostRef) {
|
|
57
|
-
index.registerInstance(this, hostRef);
|
|
58
|
-
this.disabled = false;
|
|
59
|
-
}
|
|
60
|
-
render() {
|
|
61
|
-
let className = "xpl-avatar";
|
|
62
|
-
if (this.size)
|
|
63
|
-
className += ` xpl-avatar--${this.size}`;
|
|
64
|
-
if (this.color)
|
|
65
|
-
className += ` xpl-avatar--${this.color}`;
|
|
66
|
-
const inner = (index.h("div", null, this.src ? (index.h("img", { alt: this.name, src: this.src })) : (index.h("div", { class: "xpl-avatar__placeholder" }, index.h("slot", null))), this.status && index.h("div", { class: `xpl-avatar__dot--${this.status}` })));
|
|
67
|
-
return (index.h(index.Host, null, this.href && !this.disabled ? (index.h("a", { href: this.href, class: className, target: this.target }, inner)) : this.href && this.disabled ? (index.h("div", { class: className + " xpl-avatar--disabled" }, inner)) : (index.h("div", { class: className }, inner))));
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
const XplBackdrop = class {
|
|
72
|
-
constructor(hostRef) {
|
|
73
|
-
index.registerInstance(this, hostRef);
|
|
74
|
-
/**
|
|
75
|
-
* @property {boolean} - When true, backdrop will have relative position. This is useful when the backdrop doesn't cover the whole view area.
|
|
76
|
-
* If false, the position will be fixed and cover the whole view area.
|
|
77
|
-
*/
|
|
78
|
-
this.relative = false;
|
|
79
|
-
}
|
|
80
|
-
render() {
|
|
81
|
-
return (index.h(index.Host, { class: {
|
|
82
|
-
'xpl-backdrop': true,
|
|
83
|
-
'xpl-backdrop--fixed': !this.relative,
|
|
84
|
-
'xpl-backdrop--relative': this.relative
|
|
85
|
-
}, "aria-hidden": "true" }));
|
|
86
|
-
}
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
const XplBreadcrumbItem = class {
|
|
90
|
-
constructor(hostRef) {
|
|
91
|
-
index.registerInstance(this, hostRef);
|
|
92
|
-
// This is temporary as we still don't have a xpl-icon component. When that's created we should update this code.
|
|
93
|
-
this.chevron = `<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="chevron-right" class="svg-inline--fa fa-chevron-right fa-w-10" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512">
|
|
94
|
-
<path fill="currentColor" d="M285.476 272.971L91.132 467.314c-9.373 9.373-24.569 9.373-33.941 0l-22.667-22.667c-9.357-9.357-9.375-24.522-.04-33.901L188.505 256 34.484 101.255c-9.335-9.379-9.317-24.544.04-33.901l22.667-22.667c9.373-9.373 24.569-9.373 33.941 0L285.475 239.03c9.373 9.372 9.373 24.568.001 33.941z"></path>
|
|
95
|
-
</svg>
|
|
96
|
-
`;
|
|
97
|
-
}
|
|
98
|
-
render() {
|
|
99
|
-
return (index.h(index.Host, { class: "xpl-breadcrumb-item", role: "listitem" }, index.h("li", { role: "none" }, index.h("slot", null)), index.h("span", { innerHTML: `${this.chevron}` })));
|
|
100
|
-
}
|
|
101
|
-
;
|
|
102
|
-
};
|
|
103
|
-
|
|
104
|
-
const XplBreadcrumbs = class {
|
|
105
|
-
constructor(hostRef) {
|
|
106
|
-
index.registerInstance(this, hostRef);
|
|
107
|
-
}
|
|
108
|
-
render() {
|
|
109
|
-
return (index.h(index.Host, null, index.h("nav", { class: "xpl-breadcrumbs", "aria-label": "Breadcrumb" }, index.h("ol", { role: "list" }, index.h("slot", null)))));
|
|
110
|
-
}
|
|
111
|
-
;
|
|
112
|
-
};
|
|
113
|
-
|
|
114
|
-
const XplButton = class {
|
|
115
|
-
constructor(hostRef) {
|
|
116
|
-
index.registerInstance(this, hostRef);
|
|
117
|
-
this.size = "default";
|
|
118
|
-
this.variant = "primary";
|
|
119
|
-
}
|
|
120
|
-
render() {
|
|
121
|
-
let className = "xpl-button";
|
|
122
|
-
if (this.variant === "secondary")
|
|
123
|
-
className += " xpl-button--secondary";
|
|
124
|
-
if (this.variant === "subtle")
|
|
125
|
-
className += " xpl-button--subtle";
|
|
126
|
-
if (this.variant === "warning")
|
|
127
|
-
className += " xpl-button--warning";
|
|
128
|
-
if (this.size === "sm")
|
|
129
|
-
className += " xpl-button--sm";
|
|
130
|
-
if (this.size === "xs")
|
|
131
|
-
className += " xpl-button--xs";
|
|
132
|
-
if (this.iconOnly)
|
|
133
|
-
className += " xpl-button--icon-only";
|
|
134
|
-
const icon = this.icon ? (index.h("i", { class: `far fa-${this.icon} ${this.iconTrailing ? "trailing" : this.iconOnly ? "" : "leading"}` })) : null;
|
|
135
|
-
return (index.h(index.Host, { role: "button" },
|
|
136
|
-
/**
|
|
137
|
-
* Conditionally render either an <a> or <button> element
|
|
138
|
-
* depending on if there's an `href` or not
|
|
139
|
-
*/
|
|
140
|
-
this.href ? (index.h("a", { class: className, href: this.href, role: "button" }, !this.iconTrailing && icon, this.iconOnly ? (index.h("span", { class: "sr-only" }, index.h("slot", null))) : (index.h("slot", null)), this.iconTrailing && icon)) : (index.h("button", { class: className, disabled: this.disabled, name: this.name, type: this.type, value: this.value }, !this.iconTrailing && icon, this.iconOnly ? (index.h("span", { class: "sr-only" }, index.h("slot", null))) : (index.h("slot", null)), this.iconTrailing && icon))));
|
|
141
|
-
}
|
|
142
|
-
};
|
|
143
|
-
|
|
144
|
-
const XplContentArea = class {
|
|
145
|
-
constructor(hostRef) {
|
|
146
|
-
index.registerInstance(this, hostRef);
|
|
147
|
-
/**
|
|
148
|
-
* @property {string} size - The content-area size.
|
|
149
|
-
*/
|
|
150
|
-
this.size = "wide";
|
|
151
|
-
}
|
|
152
|
-
render() {
|
|
153
|
-
return (index.h(index.Host, null, index.h("main", { class: `xpl-content-area-wrapper xpl-content-area-wrapper__${this.size}` }, index.h("div", { class: "xpl-content-area" }, index.h("slot", null)))));
|
|
154
|
-
}
|
|
155
|
-
};
|
|
156
|
-
|
|
157
|
-
const XplMainNav = class {
|
|
158
|
-
constructor(hostRef) {
|
|
159
|
-
index.registerInstance(this, hostRef);
|
|
160
|
-
this.navWidth = index.createEvent(this, "navWidth", 7);
|
|
161
|
-
/**
|
|
162
|
-
* @property {string} width - The width of the Main Nav.
|
|
163
|
-
*/
|
|
164
|
-
this.width = "default";
|
|
165
|
-
}
|
|
166
|
-
navWidthHandler() {
|
|
167
|
-
this.navWidth.emit(this.width);
|
|
168
|
-
}
|
|
169
|
-
connectedCallback() {
|
|
170
|
-
this.navWidthHandler();
|
|
171
|
-
}
|
|
172
|
-
componentDidUpdate() {
|
|
173
|
-
this.navWidthHandler();
|
|
174
|
-
}
|
|
175
|
-
render() {
|
|
176
|
-
return (index.h(index.Host, { class: `xpl-main-nav xpl-main-nav--${this.width}`, "aria-label": "Sidebar" }, index.h("nav", null, index.h("header", { "aria-label": "Sidebar Header" }, index.h("slot", { name: "logo" }), index.h("slot", { name: "brand-name" })), index.h("div", { class: "xpl-main-nav__main_section" }, index.h("slot", { name: "navigation" })), index.h("footer", { class: "xpl-main-nav__footer", "aria-label": "Sidebar Footer" }, index.h("slot", { name: "footer" })))));
|
|
177
|
-
}
|
|
178
|
-
};
|
|
179
|
-
|
|
180
|
-
const XplNavItem = class {
|
|
181
|
-
constructor(hostRef) {
|
|
182
|
-
index.registerInstance(this, hostRef);
|
|
183
|
-
}
|
|
184
|
-
render() {
|
|
185
|
-
return (index.h(index.Host, { class: "xpl-nav-item", role: "listitem" }, index.h("slot", { name: "link" }, index.h("slot", { name: "icon" }), index.h("slot", null))));
|
|
186
|
-
}
|
|
187
|
-
};
|
|
188
|
-
|
|
189
|
-
const XplSecondaryNav = class {
|
|
190
|
-
constructor(hostRef) {
|
|
191
|
-
index.registerInstance(this, hostRef);
|
|
192
|
-
}
|
|
193
|
-
render() {
|
|
194
|
-
return (index.h(index.Host, { class: "xpl-secondary-nav" }, index.h("nav", { "aria-label": "Secondary Nav" }, index.h("slot", null))));
|
|
195
|
-
}
|
|
196
|
-
};
|
|
197
|
-
|
|
198
|
-
const XplUtilityBar = class {
|
|
199
|
-
constructor(hostRef) {
|
|
200
|
-
index.registerInstance(this, hostRef);
|
|
201
|
-
this.navOpen = index.createEvent(this, "navOpen", 7);
|
|
202
|
-
this.open = true;
|
|
203
|
-
this.bars = `
|
|
204
|
-
<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="bars" class="svg-inline--fa fa-bars fa-w-14 xpl-utility-nav__bars" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"></path></svg>
|
|
205
|
-
`;
|
|
206
|
-
}
|
|
207
|
-
onNavToggle() {
|
|
208
|
-
this.open = !this.open;
|
|
209
|
-
this.navOpen.emit(this.open);
|
|
210
|
-
}
|
|
211
|
-
render() {
|
|
212
|
-
return (index.h(index.Host, null, index.h("nav", { "aria-label": "utility navigation bar", class: "xpl-utility-bar" }, this.navControl
|
|
213
|
-
?
|
|
214
|
-
index.h("div", null, index.h("button", { onClick: () => this.onNavToggle(), innerHTML: `${this.bars}` }), index.h("slot", { name: "aside" }))
|
|
215
|
-
:
|
|
216
|
-
index.h("slot", { name: "aside" }), index.h("slot", { name: "main" }))));
|
|
217
|
-
}
|
|
218
|
-
};
|
|
219
|
-
|
|
220
|
-
exports.xpl_application_shell = XplApplicationShell;
|
|
221
|
-
exports.xpl_avatar = XplAvatar;
|
|
222
|
-
exports.xpl_backdrop = XplBackdrop;
|
|
223
|
-
exports.xpl_breadcrumb_item = XplBreadcrumbItem;
|
|
224
|
-
exports.xpl_breadcrumbs = XplBreadcrumbs;
|
|
225
|
-
exports.xpl_button = XplButton;
|
|
226
|
-
exports.xpl_content_area = XplContentArea;
|
|
227
|
-
exports.xpl_main_nav = XplMainNav;
|
|
228
|
-
exports.xpl_nav_item = XplNavItem;
|
|
229
|
-
exports.xpl_secondary_nav = XplSecondaryNav;
|
|
230
|
-
exports.xpl_utility_bar = XplUtilityBar;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
const index = require('./index-944adb2e.js');
|
|
6
|
-
|
|
7
|
-
const XplBadge = class {
|
|
8
|
-
constructor(hostRef) {
|
|
9
|
-
index.registerInstance(this, hostRef);
|
|
10
|
-
}
|
|
11
|
-
render() {
|
|
12
|
-
let className = "xpl-badge";
|
|
13
|
-
if (this.dot)
|
|
14
|
-
className += " xpl-badge--dot";
|
|
15
|
-
if (this.variant)
|
|
16
|
-
className += " xpl-badge--" + this.variant;
|
|
17
|
-
return (index.h(index.Host, null, index.h("div", { class: className }, index.h("slot", null))));
|
|
18
|
-
}
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
exports.xpl_badge = XplBadge;
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
const index = require('./index-944adb2e.js');
|
|
6
|
-
const v4 = require('./v4-14140ff3.js');
|
|
7
|
-
|
|
8
|
-
const XplCheckbox = class {
|
|
9
|
-
constructor(hostRef) {
|
|
10
|
-
index.registerInstance(this, hostRef);
|
|
11
|
-
this.checkboxChange = index.createEvent(this, "checkboxChange", 7);
|
|
12
|
-
this.id = v4.v4();
|
|
13
|
-
}
|
|
14
|
-
render() {
|
|
15
|
-
return (index.h(index.Host, { class: {
|
|
16
|
-
"xpl-checkbox-radio-container": true,
|
|
17
|
-
"styled": this.styled,
|
|
18
|
-
"disabled": this.disabled,
|
|
19
|
-
} }, index.h("input", { class: "xpl-checkbox", type: "checkbox", checked: this.checked, disabled: this.disabled, id: this.id, indeterminate: this.indeterminate, onChange: () => this.checkboxChange.emit(this.input.checked), name: this.name, ref: (el) => (this.input = el), required: this.required, value: this.value }), index.h("label", { class: {
|
|
20
|
-
"xpl-label": true,
|
|
21
|
-
"xpl-label--disabled": this.disabled
|
|
22
|
-
}, htmlFor: this.id }, index.h("slot", null), this.description && index.h("small", { class: {
|
|
23
|
-
"xpl-description": true,
|
|
24
|
-
"xpl-description--disabled": this.disabled
|
|
25
|
-
} }, this.description))));
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
const XplRadio = class {
|
|
30
|
-
constructor(hostRef) {
|
|
31
|
-
index.registerInstance(this, hostRef);
|
|
32
|
-
this.radioChange = index.createEvent(this, "radioChange", 7);
|
|
33
|
-
this.id = v4.v4();
|
|
34
|
-
}
|
|
35
|
-
render() {
|
|
36
|
-
return (index.h(index.Host, { class: {
|
|
37
|
-
"xpl-checkbox-radio-container": true,
|
|
38
|
-
"styled": this.styled,
|
|
39
|
-
"disabled": this.disabled,
|
|
40
|
-
} }, index.h("input", { class: "xpl-radio", type: "radio", checked: this.checked, disabled: this.disabled, id: this.id, name: this.name, required: this.required, value: this.value, onChange: () => this.radioChange.emit(true) }), index.h("label", { class: {
|
|
41
|
-
"xpl-label": true,
|
|
42
|
-
"xpl-label--disabled": this.disabled
|
|
43
|
-
}, htmlFor: this.id }, index.h("slot", null), this.description && index.h("small", { class: {
|
|
44
|
-
"xpl-description": true,
|
|
45
|
-
"xpl-description--disabled": this.disabled
|
|
46
|
-
} }, this.description))));
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
exports.xpl_checkbox = XplCheckbox;
|
|
51
|
-
exports.xpl_radio = XplRadio;
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
const index = require('./index-944adb2e.js');
|
|
6
|
-
|
|
7
|
-
const XplTable = class {
|
|
8
|
-
constructor(hostRef) {
|
|
9
|
-
index.registerInstance(this, hostRef);
|
|
10
|
-
this.tableSelect = index.createEvent(this, "tableSelect", 7);
|
|
11
|
-
this.areAllSelected = false;
|
|
12
|
-
this.hasScrolled = false;
|
|
13
|
-
this.selectAll = (e) => {
|
|
14
|
-
const { target } = e;
|
|
15
|
-
if (!(target instanceof HTMLInputElement))
|
|
16
|
-
return;
|
|
17
|
-
const { checked } = target;
|
|
18
|
-
this.areAllSelected = checked;
|
|
19
|
-
this.selected = this.selected.map(() => checked);
|
|
20
|
-
this.onChange();
|
|
21
|
-
};
|
|
22
|
-
this.selectOne = (e, i) => {
|
|
23
|
-
const { target } = e;
|
|
24
|
-
if (!(target instanceof HTMLInputElement))
|
|
25
|
-
return;
|
|
26
|
-
const { checked } = target;
|
|
27
|
-
this.areAllSelected = false;
|
|
28
|
-
this.selected = this.selected.map((v, _i) => (_i === i ? checked : v));
|
|
29
|
-
this.onChange();
|
|
30
|
-
};
|
|
31
|
-
this.onChange = () => {
|
|
32
|
-
this.tableSelect.emit({
|
|
33
|
-
selected: this.selected,
|
|
34
|
-
areAllSelected: this.areAllSelected,
|
|
35
|
-
});
|
|
36
|
-
};
|
|
37
|
-
this.onScroll = () => {
|
|
38
|
-
this.hasScrolled = this.container.scrollLeft > 0;
|
|
39
|
-
};
|
|
40
|
-
/**
|
|
41
|
-
* TODO: Need to figure out how this interplays with data
|
|
42
|
-
* received from an API/server
|
|
43
|
-
*/
|
|
44
|
-
this.sortBy = (col, ascending = true) => {
|
|
45
|
-
this.rowData.sort((a, b) => {
|
|
46
|
-
const A = a[col];
|
|
47
|
-
const B = b[col];
|
|
48
|
-
if (typeof A === "number" && typeof B === "number") {
|
|
49
|
-
const f = ascending ? 1 : -1;
|
|
50
|
-
return A > B ? f : -f;
|
|
51
|
-
}
|
|
52
|
-
return -1;
|
|
53
|
-
});
|
|
54
|
-
this.rowData = Array.from(this.rowData);
|
|
55
|
-
this.render();
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
componentWillLoad() {
|
|
59
|
-
this.areAllSelected = false;
|
|
60
|
-
this.rowData = this.data !== undefined ? Array.from(this.data) : [];
|
|
61
|
-
this.selected = new Array(this.rowData.length).fill(false);
|
|
62
|
-
}
|
|
63
|
-
render() {
|
|
64
|
-
let className = "xpl-table";
|
|
65
|
-
if (this.striped)
|
|
66
|
-
className += " xpl-table--striped";
|
|
67
|
-
if (this.freeze)
|
|
68
|
-
className += " xpl-table--freeze";
|
|
69
|
-
if (this.hasScrolled)
|
|
70
|
-
className += " xpl-table--has-scrolled";
|
|
71
|
-
return (index.h(index.Host, null, index.h("div", { class: "xpl-table-container", onScroll: this.onScroll, ref: (el) => (this.container = el) }, index.h("table", { class: className }, this.columns && (index.h("thead", null, this.columns.map((column, i) => {
|
|
72
|
-
return (index.h("th", null, this.multiselect && i === 0 ? (index.h("label", { htmlFor: "__xpl-table-th" }, index.h("input", { checked: this.areAllSelected, id: "__xpl-table-th",
|
|
73
|
-
// appear indeterminate when at least one but not all
|
|
74
|
-
// are selected
|
|
75
|
-
indeterminate: !this.areAllSelected &&
|
|
76
|
-
this.selected.some((a) => a), onChange: (e) => {
|
|
77
|
-
this.selectAll(e);
|
|
78
|
-
}, type: "checkbox" }), column)) : (column)));
|
|
79
|
-
}))), index.h("tbody", null, this.rowData.map((row, rowNum) => {
|
|
80
|
-
return (index.h("tr", { class: this.selected && this.selected[rowNum]
|
|
81
|
-
? "xpl-table-row-selected"
|
|
82
|
-
: "" }, row.map((cell, i) => {
|
|
83
|
-
return (index.h("td", null, this.multiselect && i === 0 ? (index.h("label", { htmlFor: "__xpl-table-row-" + rowNum }, index.h("input", { id: "__xpl-table-row-" + rowNum, checked: this.selected[rowNum], type: "checkbox", onChange: (e) => this.selectOne(e, rowNum) }), index.h("div", { innerHTML: cell }))) : (index.h("div", { innerHTML: cell }))));
|
|
84
|
-
})));
|
|
85
|
-
}))))));
|
|
86
|
-
}
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
exports.xpl_table = XplTable;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
const index = require('./index-944adb2e.js');
|
|
6
|
-
|
|
7
|
-
const XplTag = class {
|
|
8
|
-
constructor(hostRef) {
|
|
9
|
-
index.registerInstance(this, hostRef);
|
|
10
|
-
this.close = index.createEvent(this, "close", 7);
|
|
11
|
-
}
|
|
12
|
-
render() {
|
|
13
|
-
return (index.h(index.Host, { class: "xpl-tag-container" }, index.h("button", { class: "xpl-tag", onClick: () => {
|
|
14
|
-
this.close.emit();
|
|
15
|
-
} }, index.h("slot", null)), index.h("button", { class: "xpl-tag__close", onClick: () => {
|
|
16
|
-
this.close.emit();
|
|
17
|
-
} }, "\u00D7")));
|
|
18
|
-
}
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
exports.xpl_tag = XplTag;
|
|
@@ -1,216 +0,0 @@
|
|
|
1
|
-
import { r as registerInstance, h, H as Host, c as createEvent } from './index-899dba3b.js';
|
|
2
|
-
import './regular-86225e9d.js';
|
|
3
|
-
|
|
4
|
-
const XplApplicationShell = class {
|
|
5
|
-
constructor(hostRef) {
|
|
6
|
-
registerInstance(this, hostRef);
|
|
7
|
-
/**
|
|
8
|
-
* @property {boolean} - Whether or not the Grid should have space for a secondary (sub) navigation bar
|
|
9
|
-
*/
|
|
10
|
-
this.withSubnav = false;
|
|
11
|
-
/**
|
|
12
|
-
* @property {boolean} - Whether or not the Grid should have space for a utility bar
|
|
13
|
-
*/
|
|
14
|
-
this.withUtility = true;
|
|
15
|
-
/**
|
|
16
|
-
* @property {string} - The width of the main navigation bar, can be passed or updated when nav-width event is emitted.
|
|
17
|
-
*/
|
|
18
|
-
this.navWidth = 'default';
|
|
19
|
-
/**
|
|
20
|
-
* @state {boolean} - Whether or not the main nav is open, updates when the nav-open envent is emitted.
|
|
21
|
-
*/
|
|
22
|
-
this.navOpen = true;
|
|
23
|
-
}
|
|
24
|
-
closeNavOnMobile() {
|
|
25
|
-
if (window.innerWidth <= 640) {
|
|
26
|
-
this.navOpen = false;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
navToggleHandler() {
|
|
30
|
-
this.navOpen = !this.navOpen;
|
|
31
|
-
}
|
|
32
|
-
navWithHandler(event) {
|
|
33
|
-
this.navWidth = event.detail;
|
|
34
|
-
}
|
|
35
|
-
onWindowResize() {
|
|
36
|
-
this.closeNavOnMobile();
|
|
37
|
-
}
|
|
38
|
-
connectedCallback() {
|
|
39
|
-
this.closeNavOnMobile();
|
|
40
|
-
}
|
|
41
|
-
render() {
|
|
42
|
-
let applicationShellClasses = "xpl-application-shell";
|
|
43
|
-
if (this.withUtility)
|
|
44
|
-
applicationShellClasses += " xpl-application-shell--with_utility";
|
|
45
|
-
let navClasses = "xpl-application-shell__nav";
|
|
46
|
-
navClasses += (this.navOpen) ? ` xpl-application-shell__nav--${this.navWidth}--open` : ` xpl-application-shell__nav--${this.navWidth}`;
|
|
47
|
-
return (h(Host, { class: applicationShellClasses }, h("div", { class: navClasses }, h("slot", { name: "nav" })), h("div", { class: "xpl-application-shell__subnav" }, h("slot", { name: "subnav" })), h("div", { class: "xpl-application-shell__utility" }, h("slot", { name: "utility" })), h("div", { class: "xpl-application-shell__content" }, h("slot", { name: "content" })), h("xpl-backdrop", { onClick: () => this.navToggleHandler(), class: { "xpl-application-shell__backdrop--open": this.navOpen }, relative: true })));
|
|
48
|
-
}
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
const XplAvatar = class {
|
|
52
|
-
constructor(hostRef) {
|
|
53
|
-
registerInstance(this, hostRef);
|
|
54
|
-
this.disabled = false;
|
|
55
|
-
}
|
|
56
|
-
render() {
|
|
57
|
-
let className = "xpl-avatar";
|
|
58
|
-
if (this.size)
|
|
59
|
-
className += ` xpl-avatar--${this.size}`;
|
|
60
|
-
if (this.color)
|
|
61
|
-
className += ` xpl-avatar--${this.color}`;
|
|
62
|
-
const inner = (h("div", null, this.src ? (h("img", { alt: this.name, src: this.src })) : (h("div", { class: "xpl-avatar__placeholder" }, h("slot", null))), this.status && h("div", { class: `xpl-avatar__dot--${this.status}` })));
|
|
63
|
-
return (h(Host, null, this.href && !this.disabled ? (h("a", { href: this.href, class: className, target: this.target }, inner)) : this.href && this.disabled ? (h("div", { class: className + " xpl-avatar--disabled" }, inner)) : (h("div", { class: className }, inner))));
|
|
64
|
-
}
|
|
65
|
-
};
|
|
66
|
-
|
|
67
|
-
const XplBackdrop = class {
|
|
68
|
-
constructor(hostRef) {
|
|
69
|
-
registerInstance(this, hostRef);
|
|
70
|
-
/**
|
|
71
|
-
* @property {boolean} - When true, backdrop will have relative position. This is useful when the backdrop doesn't cover the whole view area.
|
|
72
|
-
* If false, the position will be fixed and cover the whole view area.
|
|
73
|
-
*/
|
|
74
|
-
this.relative = false;
|
|
75
|
-
}
|
|
76
|
-
render() {
|
|
77
|
-
return (h(Host, { class: {
|
|
78
|
-
'xpl-backdrop': true,
|
|
79
|
-
'xpl-backdrop--fixed': !this.relative,
|
|
80
|
-
'xpl-backdrop--relative': this.relative
|
|
81
|
-
}, "aria-hidden": "true" }));
|
|
82
|
-
}
|
|
83
|
-
};
|
|
84
|
-
|
|
85
|
-
const XplBreadcrumbItem = class {
|
|
86
|
-
constructor(hostRef) {
|
|
87
|
-
registerInstance(this, hostRef);
|
|
88
|
-
// This is temporary as we still don't have a xpl-icon component. When that's created we should update this code.
|
|
89
|
-
this.chevron = `<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="chevron-right" class="svg-inline--fa fa-chevron-right fa-w-10" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512">
|
|
90
|
-
<path fill="currentColor" d="M285.476 272.971L91.132 467.314c-9.373 9.373-24.569 9.373-33.941 0l-22.667-22.667c-9.357-9.357-9.375-24.522-.04-33.901L188.505 256 34.484 101.255c-9.335-9.379-9.317-24.544.04-33.901l22.667-22.667c9.373-9.373 24.569-9.373 33.941 0L285.475 239.03c9.373 9.372 9.373 24.568.001 33.941z"></path>
|
|
91
|
-
</svg>
|
|
92
|
-
`;
|
|
93
|
-
}
|
|
94
|
-
render() {
|
|
95
|
-
return (h(Host, { class: "xpl-breadcrumb-item", role: "listitem" }, h("li", { role: "none" }, h("slot", null)), h("span", { innerHTML: `${this.chevron}` })));
|
|
96
|
-
}
|
|
97
|
-
;
|
|
98
|
-
};
|
|
99
|
-
|
|
100
|
-
const XplBreadcrumbs = class {
|
|
101
|
-
constructor(hostRef) {
|
|
102
|
-
registerInstance(this, hostRef);
|
|
103
|
-
}
|
|
104
|
-
render() {
|
|
105
|
-
return (h(Host, null, h("nav", { class: "xpl-breadcrumbs", "aria-label": "Breadcrumb" }, h("ol", { role: "list" }, h("slot", null)))));
|
|
106
|
-
}
|
|
107
|
-
;
|
|
108
|
-
};
|
|
109
|
-
|
|
110
|
-
const XplButton = class {
|
|
111
|
-
constructor(hostRef) {
|
|
112
|
-
registerInstance(this, hostRef);
|
|
113
|
-
this.size = "default";
|
|
114
|
-
this.variant = "primary";
|
|
115
|
-
}
|
|
116
|
-
render() {
|
|
117
|
-
let className = "xpl-button";
|
|
118
|
-
if (this.variant === "secondary")
|
|
119
|
-
className += " xpl-button--secondary";
|
|
120
|
-
if (this.variant === "subtle")
|
|
121
|
-
className += " xpl-button--subtle";
|
|
122
|
-
if (this.variant === "warning")
|
|
123
|
-
className += " xpl-button--warning";
|
|
124
|
-
if (this.size === "sm")
|
|
125
|
-
className += " xpl-button--sm";
|
|
126
|
-
if (this.size === "xs")
|
|
127
|
-
className += " xpl-button--xs";
|
|
128
|
-
if (this.iconOnly)
|
|
129
|
-
className += " xpl-button--icon-only";
|
|
130
|
-
const icon = this.icon ? (h("i", { class: `far fa-${this.icon} ${this.iconTrailing ? "trailing" : this.iconOnly ? "" : "leading"}` })) : null;
|
|
131
|
-
return (h(Host, { role: "button" },
|
|
132
|
-
/**
|
|
133
|
-
* Conditionally render either an <a> or <button> element
|
|
134
|
-
* depending on if there's an `href` or not
|
|
135
|
-
*/
|
|
136
|
-
this.href ? (h("a", { class: className, href: this.href, role: "button" }, !this.iconTrailing && icon, this.iconOnly ? (h("span", { class: "sr-only" }, h("slot", null))) : (h("slot", null)), this.iconTrailing && icon)) : (h("button", { class: className, disabled: this.disabled, name: this.name, type: this.type, value: this.value }, !this.iconTrailing && icon, this.iconOnly ? (h("span", { class: "sr-only" }, h("slot", null))) : (h("slot", null)), this.iconTrailing && icon))));
|
|
137
|
-
}
|
|
138
|
-
};
|
|
139
|
-
|
|
140
|
-
const XplContentArea = class {
|
|
141
|
-
constructor(hostRef) {
|
|
142
|
-
registerInstance(this, hostRef);
|
|
143
|
-
/**
|
|
144
|
-
* @property {string} size - The content-area size.
|
|
145
|
-
*/
|
|
146
|
-
this.size = "wide";
|
|
147
|
-
}
|
|
148
|
-
render() {
|
|
149
|
-
return (h(Host, null, h("main", { class: `xpl-content-area-wrapper xpl-content-area-wrapper__${this.size}` }, h("div", { class: "xpl-content-area" }, h("slot", null)))));
|
|
150
|
-
}
|
|
151
|
-
};
|
|
152
|
-
|
|
153
|
-
const XplMainNav = class {
|
|
154
|
-
constructor(hostRef) {
|
|
155
|
-
registerInstance(this, hostRef);
|
|
156
|
-
this.navWidth = createEvent(this, "navWidth", 7);
|
|
157
|
-
/**
|
|
158
|
-
* @property {string} width - The width of the Main Nav.
|
|
159
|
-
*/
|
|
160
|
-
this.width = "default";
|
|
161
|
-
}
|
|
162
|
-
navWidthHandler() {
|
|
163
|
-
this.navWidth.emit(this.width);
|
|
164
|
-
}
|
|
165
|
-
connectedCallback() {
|
|
166
|
-
this.navWidthHandler();
|
|
167
|
-
}
|
|
168
|
-
componentDidUpdate() {
|
|
169
|
-
this.navWidthHandler();
|
|
170
|
-
}
|
|
171
|
-
render() {
|
|
172
|
-
return (h(Host, { class: `xpl-main-nav xpl-main-nav--${this.width}`, "aria-label": "Sidebar" }, h("nav", null, h("header", { "aria-label": "Sidebar Header" }, h("slot", { name: "logo" }), h("slot", { name: "brand-name" })), h("div", { class: "xpl-main-nav__main_section" }, h("slot", { name: "navigation" })), h("footer", { class: "xpl-main-nav__footer", "aria-label": "Sidebar Footer" }, h("slot", { name: "footer" })))));
|
|
173
|
-
}
|
|
174
|
-
};
|
|
175
|
-
|
|
176
|
-
const XplNavItem = class {
|
|
177
|
-
constructor(hostRef) {
|
|
178
|
-
registerInstance(this, hostRef);
|
|
179
|
-
}
|
|
180
|
-
render() {
|
|
181
|
-
return (h(Host, { class: "xpl-nav-item", role: "listitem" }, h("slot", { name: "link" }, h("slot", { name: "icon" }), h("slot", null))));
|
|
182
|
-
}
|
|
183
|
-
};
|
|
184
|
-
|
|
185
|
-
const XplSecondaryNav = class {
|
|
186
|
-
constructor(hostRef) {
|
|
187
|
-
registerInstance(this, hostRef);
|
|
188
|
-
}
|
|
189
|
-
render() {
|
|
190
|
-
return (h(Host, { class: "xpl-secondary-nav" }, h("nav", { "aria-label": "Secondary Nav" }, h("slot", null))));
|
|
191
|
-
}
|
|
192
|
-
};
|
|
193
|
-
|
|
194
|
-
const XplUtilityBar = class {
|
|
195
|
-
constructor(hostRef) {
|
|
196
|
-
registerInstance(this, hostRef);
|
|
197
|
-
this.navOpen = createEvent(this, "navOpen", 7);
|
|
198
|
-
this.open = true;
|
|
199
|
-
this.bars = `
|
|
200
|
-
<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="bars" class="svg-inline--fa fa-bars fa-w-14 xpl-utility-nav__bars" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"></path></svg>
|
|
201
|
-
`;
|
|
202
|
-
}
|
|
203
|
-
onNavToggle() {
|
|
204
|
-
this.open = !this.open;
|
|
205
|
-
this.navOpen.emit(this.open);
|
|
206
|
-
}
|
|
207
|
-
render() {
|
|
208
|
-
return (h(Host, null, h("nav", { "aria-label": "utility navigation bar", class: "xpl-utility-bar" }, this.navControl
|
|
209
|
-
?
|
|
210
|
-
h("div", null, h("button", { onClick: () => this.onNavToggle(), innerHTML: `${this.bars}` }), h("slot", { name: "aside" }))
|
|
211
|
-
:
|
|
212
|
-
h("slot", { name: "aside" }), h("slot", { name: "main" }))));
|
|
213
|
-
}
|
|
214
|
-
};
|
|
215
|
-
|
|
216
|
-
export { XplApplicationShell as xpl_application_shell, XplAvatar as xpl_avatar, XplBackdrop as xpl_backdrop, XplBreadcrumbItem as xpl_breadcrumb_item, XplBreadcrumbs as xpl_breadcrumbs, XplButton as xpl_button, XplContentArea as xpl_content_area, XplMainNav as xpl_main_nav, XplNavItem as xpl_nav_item, XplSecondaryNav as xpl_secondary_nav, XplUtilityBar as xpl_utility_bar };
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { r as registerInstance, h, H as Host } from './index-899dba3b.js';
|
|
2
|
-
|
|
3
|
-
const XplBadge = class {
|
|
4
|
-
constructor(hostRef) {
|
|
5
|
-
registerInstance(this, hostRef);
|
|
6
|
-
}
|
|
7
|
-
render() {
|
|
8
|
-
let className = "xpl-badge";
|
|
9
|
-
if (this.dot)
|
|
10
|
-
className += " xpl-badge--dot";
|
|
11
|
-
if (this.variant)
|
|
12
|
-
className += " xpl-badge--" + this.variant;
|
|
13
|
-
return (h(Host, null, h("div", { class: className }, h("slot", null))));
|
|
14
|
-
}
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
export { XplBadge as xpl_badge };
|