Remove with Text

Remove GetEngineeringSpcReview
Better error message
EnforceCodeStyleInBuild
NginxFileSystem
Remove Reactors and Working Directory
AppSettings
Delete self contained Thunder Tests
Back to .net8.0
api/v4/InfinityQS
ApiExplorerSettings
Wafer Counter
This commit is contained in:
2024-04-15 13:13:55 -07:00
parent 7e16ee7f98
commit 5c9f0d1aff
974 changed files with 205399 additions and 1385 deletions

View File

@ -0,0 +1,42 @@
@charset "UTF-8";
.list-group-item {
display: flex;
align-items: center;
justify-content: space-between;
height: 40px;
width: 350px;
padding: 8px 16px;
background-color: #FFFFFF;
border: 1px solid #EEEDED;
border-radius: 1px 1px 0px 0px;
font-style: normal;
font-weight: 400;
font-size: 1rem;
line-height: 1.5rem;
font-family: var(--ifx-font-family);
}
.list-group-item.flush {
border: none;
border-bottom: 1px solid #EEEDED;
}
.list-group-item.flush.bulletpoint {
padding: 8px;
}
.list-group-item.bulletpoint .list-group-item-content::before {
content: "•";
display: inline-block;
font-size: 1.125rem;
padding-right: 10px;
}
.list-group-item:hover:not(.show) {
background-color: #EEEDED;
}
.list-group-item:active:not(.show) {
background-color: #0A8276;
color: #FFFFFF;
}
.list-group-item.show {
display: block;
height: 88px;
padding: 16px;
}

View File

@ -0,0 +1,104 @@
import { h } from "@stencil/core";
export class ListGroupItem {
constructor() {
this.isFlush = false;
this.hasBulletpoint = false;
this.badge = false;
this.badgeValue = 0;
}
componentWillLoad() {
const ifxListGroup = this.el.closest('ifx-list-group');
if (ifxListGroup.flush) {
this.isFlush = true;
}
else
this.isFlush = false;
if (ifxListGroup.bulletpoint && !this.badge) {
this.hasBulletpoint = true;
}
else
this.hasBulletpoint = false;
}
render() {
return (h("div", { class: `list-group-item
${this.isFlush ? 'flush' : ""}
${this.hasBulletpoint ? 'bulletpoint' : ""}` }, h("div", { class: "list-group-item-content" }, h("slot", null)), this.badge && h("ifx-number-indicator", null, this.badgeValue)));
}
static get is() { return "ifx-list-item"; }
static get encapsulation() { return "shadow"; }
static get originalStyleUrls() {
return {
"$": ["list-group-item.scss"]
};
}
static get styleUrls() {
return {
"$": ["list-group-item.css"]
};
}
static get properties() {
return {
"isFlush": {
"type": "boolean",
"mutable": true,
"complexType": {
"original": "boolean",
"resolved": "boolean",
"references": {}
},
"required": false,
"optional": false,
"docs": {
"tags": [],
"text": ""
},
"attribute": "is-flush",
"reflect": false,
"defaultValue": "false"
},
"badge": {
"type": "boolean",
"mutable": false,
"complexType": {
"original": "boolean",
"resolved": "boolean",
"references": {}
},
"required": false,
"optional": false,
"docs": {
"tags": [],
"text": ""
},
"attribute": "badge",
"reflect": false,
"defaultValue": "false"
},
"badgeValue": {
"type": "number",
"mutable": false,
"complexType": {
"original": "number",
"resolved": "number",
"references": {}
},
"required": false,
"optional": false,
"docs": {
"tags": [],
"text": ""
},
"attribute": "badge-value",
"reflect": false,
"defaultValue": "0"
}
};
}
static get states() {
return {
"hasBulletpoint": {}
};
}
static get elementRef() { return "el"; }
}
//# sourceMappingURL=list-group-item.js.map

View File

@ -0,0 +1 @@
{"version":3,"file":"list-group-item.js","sourceRoot":"","sources":["../../../src/components/list-group/list-group-item.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAQnE,MAAM,OAAO,aAAa;;mBAEoB,KAAK;0BACd,KAAK;iBACf,KAAK;sBACD,CAAC;;EAE9B,iBAAiB;IACf,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACtD,IAAI,YAAY,CAAC,KAAK,EAAE;MACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;KACrB;;MAAM,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IAE5B,IAAI,YAAY,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;MAC3C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;KAC5B;;MAAM,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;EACrC,CAAC;EAED,MAAM;IACJ,OAAO,CACL,WAAK,KAAK,EACR;UACE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;UAC3B,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE;MAC5C,WAAK,KAAK,EAAC,yBAAyB;QAClC,eAAQ,CACJ;MACL,IAAI,CAAC,KAAK,IAAI,gCAAuB,IAAI,CAAC,UAAU,CAAwB,CACzE,CACP,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, h, Element, Prop, State } from '@stencil/core';\n\n@Component({\n tag: 'ifx-list-item',\n styleUrl: 'list-group-item.scss',\n shadow: true,\n})\n\nexport class ListGroupItem {\n @Element() el;\n @Prop({ mutable: true }) isFlush: boolean = false;\n @State() hasBulletpoint: boolean = false;\n @Prop() badge: boolean = false;\n @Prop() badgeValue: number = 0;\n\n componentWillLoad() {\n const ifxListGroup = this.el.closest('ifx-list-group')\n if (ifxListGroup.flush) {\n this.isFlush = true;\n } else this.isFlush = false;\n\n if (ifxListGroup.bulletpoint && !this.badge) {\n this.hasBulletpoint = true;\n } else this.hasBulletpoint = false;\n }\n\n render() {\n return (\n <div class={\n `list-group-item \n ${this.isFlush ? 'flush' : \"\"}\n ${this.hasBulletpoint ? 'bulletpoint' : \"\"}`}>\n <div class=\"list-group-item-content\">\n <slot />\n </div>\n {this.badge && <ifx-number-indicator>{this.badgeValue}</ifx-number-indicator>}\n </div>\n );\n }\n}\n"]}

View File

@ -0,0 +1,50 @@
.list-group-notification {
width: 350px;
height: 88px;
padding: 16px;
margin-bottom: 8px;
background-color: #FFFFFF;
border: 1px solid #EEEDED;
font-family: var(--ifx-font-family);
}
.list-group-notification .description__section {
display: -webkit-box;
-webkit-line-clamp: 1;
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
}
.list-group-notification.flush {
border: none;
border-bottom: 1px solid #EEEDED;
}
.list-group-notification .heading__section {
display: flex;
justify-content: space-between;
margin-bottom: 8px;
color: #0A8276;
}
.list-group-notification .heading__section-title {
flex: 1;
margin: 0;
font-weight: 600;
line-height: 1.2;
font-size: 1rem;
display: -webkit-box;
-webkit-line-clamp: 1;
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
}
.list-group-notification .heading__section-time {
flex: none;
margin-left: 2px;
font-size: 0.875rem;
line-height: 1.25rem;
font-weight: 400;
display: -webkit-box;
-webkit-line-clamp: 1;
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
}

View File

@ -0,0 +1,149 @@
import { h } from "@stencil/core";
export class ListGroupNotification {
constructor() {
this.titleText = "";
this.isFlush = false;
this.creationTime = undefined;
this.postTime = undefined;
this.shownTime = undefined;
}
setDisplayTime(seconds, minutes, hours, days) {
if (seconds <= 60) {
this.shownTime = `Just now`;
}
else if (minutes <= 60) {
this.shownTime = `${minutes} min. ago`;
}
else if (hours <= 24) {
this.shownTime = hours > 1 ? `${hours} hr. ago` : `${hours} hrs. ago`;
}
else if (days) {
this.shownTime = hours < 48 ? `1 day ago` : `${days} days ago`;
if (hours > 168) {
this.shownTime = `${new Date().getDay()}.${new Date().getMonth()}.${new Date().getFullYear()}`;
}
}
}
stringToDate(dataString) {
if (!dataString)
return null;
let dateParts = dataString.split("/");
if (dateParts[2]) {
if (dateParts[2].split(" ")[1]) {
let timeParts = dateParts[2].split(" ")[1].split(":");
dateParts[2] = dateParts[2].split(" ")[0];
return new Date(+dateParts[2], dateParts[1] - 1, +dateParts[0], timeParts[0], timeParts[1], timeParts[2]);
}
}
}
getElapsedTime(time) {
let date = this.stringToDate(time);
if (date) {
let miliseconds = Date.now() - date.getTime();
let seconds = Math.floor(miliseconds / 1000);
let minutes = Math.floor(miliseconds / 60000);
let hours = Math.floor(minutes / 60);
let days = Math.floor(hours / 24);
this.setDisplayTime(seconds, minutes, hours, days);
}
}
setTimeInterval(time) {
this.postTime = window.setInterval(() => {
this.getElapsedTime(time);
}, 1000);
}
;
componentWillLoad() {
this.getElapsedTime(this.creationTime);
this.setTimeInterval(this.creationTime); //if time update on refresh, delete this & clear interval
const ifxListGroup = this.el.closest('ifx-list-group');
if (ifxListGroup.flush) {
this.isFlush = true;
}
else
this.isFlush = false;
}
disconnectedCallback() {
window.clearInterval(this.postTime);
}
render() {
return (h("div", { class: `list-group-notification ${this.isFlush ? 'flush' : ""}` }, h("div", { class: "heading__section" }, h("h6", { class: "heading__section-title" }, this.titleText), h("div", { class: "heading__section-time" }, this.shownTime)), h("div", { class: "description__section" }, h("slot", null))));
}
static get is() { return "ifx-list-notification"; }
static get encapsulation() { return "shadow"; }
static get originalStyleUrls() {
return {
"$": ["list-group-notification.scss"]
};
}
static get styleUrls() {
return {
"$": ["list-group-notification.css"]
};
}
static get properties() {
return {
"titleText": {
"type": "string",
"mutable": false,
"complexType": {
"original": "string",
"resolved": "string",
"references": {}
},
"required": false,
"optional": false,
"docs": {
"tags": [],
"text": ""
},
"attribute": "title-text",
"reflect": false,
"defaultValue": "\"\""
},
"isFlush": {
"type": "boolean",
"mutable": false,
"complexType": {
"original": "boolean",
"resolved": "boolean",
"references": {}
},
"required": false,
"optional": false,
"docs": {
"tags": [],
"text": ""
},
"attribute": "is-flush",
"reflect": false,
"defaultValue": "false"
},
"creationTime": {
"type": "any",
"mutable": false,
"complexType": {
"original": "any",
"resolved": "any",
"references": {}
},
"required": false,
"optional": false,
"docs": {
"tags": [],
"text": ""
},
"attribute": "creation-time",
"reflect": false
}
};
}
static get states() {
return {
"postTime": {},
"shownTime": {}
};
}
static get elementRef() { return "el"; }
}
//# sourceMappingURL=list-group-notification.js.map

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,9 @@
:host {
display: inline-flex;
}
.list-group-container {
display: inline-flex;
flex-direction: column;
gap: 3px;
}

View File

@ -0,0 +1,85 @@
import { h, Host } from "@stencil/core";
export class ListGroup {
constructor() {
this.flush = false;
this.bulletpoint = false;
this.notification = false;
}
render() {
return (h(Host, null, h("div", { class: `list-group-container
${this.flush ? 'flush' : ""}
${this.bulletpoint ? 'bulletpoint' : ""}` }, h("slot", { name: 'list-item' }), h("slot", { name: "list-notification" }))));
}
static get is() { return "ifx-list-group"; }
static get encapsulation() { return "shadow"; }
static get originalStyleUrls() {
return {
"$": ["list-group.scss"]
};
}
static get styleUrls() {
return {
"$": ["list-group.css"]
};
}
static get properties() {
return {
"flush": {
"type": "boolean",
"mutable": false,
"complexType": {
"original": "boolean",
"resolved": "boolean",
"references": {}
},
"required": false,
"optional": false,
"docs": {
"tags": [],
"text": ""
},
"attribute": "flush",
"reflect": false,
"defaultValue": "false"
},
"bulletpoint": {
"type": "boolean",
"mutable": false,
"complexType": {
"original": "boolean",
"resolved": "boolean",
"references": {}
},
"required": false,
"optional": false,
"docs": {
"tags": [],
"text": ""
},
"attribute": "bulletpoint",
"reflect": false,
"defaultValue": "false"
},
"notification": {
"type": "boolean",
"mutable": false,
"complexType": {
"original": "boolean",
"resolved": "boolean",
"references": {}
},
"required": false,
"optional": false,
"docs": {
"tags": [],
"text": ""
},
"attribute": "notification",
"reflect": false,
"defaultValue": "false"
}
};
}
static get elementRef() { return "el"; }
}
//# sourceMappingURL=list-group.js.map

View File

@ -0,0 +1 @@
{"version":3,"file":"list-group.js","sourceRoot":"","sources":["../../../src/components/list-group/list-group.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAQlE,MAAM,OAAO,SAAS;;iBAEK,KAAK;uBACC,KAAK;wBACJ,KAAK;;EAErC,MAAM;IACJ,OAAO,CACL,EAAC,IAAI;MACH,WAAK,KAAK,EACR;UACA,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;UACzB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE;QAEvC,YAAM,IAAI,EAAC,WAAW,GAAG;QACzB,YAAM,IAAI,EAAC,mBAAmB,GAAG,CAC7B,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, h, Element, Prop, Host } from '@stencil/core';\n\n@Component({\n tag: 'ifx-list-group',\n styleUrl: 'list-group.scss',\n shadow: true,\n})\n\nexport class ListGroup {\n @Element() el;\n @Prop() flush: boolean = false;\n @Prop() bulletpoint: boolean = false;\n @Prop() notification: boolean = false;\n\n render() {\n return (\n <Host>\n <div class={\n `list-group-container \n ${this.flush ? 'flush' : \"\"} \n ${this.bulletpoint ? 'bulletpoint' : \"\"}`\n }>\n <slot name='list-item' />\n <slot name=\"list-notification\" />\n </div>\n </Host>\n );\n }\n}\n"]}