@3t-transform/threeteeui 0.0.23 → 0.0.25

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.
Files changed (61) hide show
  1. package/dist/cjs/{index-2943e8f8.js → index-451f61dd.js} +54 -88
  2. package/dist/cjs/loader.cjs.js +3 -4
  3. package/dist/cjs/tttx-button.cjs.entry.js +1 -1
  4. package/dist/cjs/tttx-form.cjs.entry.js +377 -0
  5. package/dist/cjs/tttx-icon.cjs.entry.js +1 -1
  6. package/dist/cjs/tttx-keyvalue-block.cjs.entry.js +1 -1
  7. package/dist/cjs/tttx-list.cjs.entry.js +1704 -0
  8. package/dist/cjs/tttx-loading-spinner.cjs.entry.js +1 -1
  9. package/dist/cjs/tttx-standalone-input.cjs.entry.js +1 -1
  10. package/dist/cjs/tttx.cjs.js +3 -7
  11. package/dist/collection/collection-manifest.json +5 -3
  12. package/dist/collection/components/molecules/tttx-form/lib/setErrorState.js +35 -0
  13. package/dist/collection/components/molecules/tttx-form/lib/validityCheck.js +58 -0
  14. package/dist/collection/components/molecules/tttx-form/tttx-form.css +314 -0
  15. package/dist/collection/components/molecules/tttx-form/tttx-form.js +364 -0
  16. package/dist/collection/components/molecules/tttx-form/tttx-form.stories.js +127 -0
  17. package/dist/collection/components/molecules/tttx-list/tttx-list.css +59 -0
  18. package/dist/collection/components/molecules/tttx-list/tttx-list.js +105 -0
  19. package/dist/collection/components/molecules/tttx-list/tttx-list.stories.js +71 -0
  20. package/dist/collection/shared/domsanitiser.options.js +14 -0
  21. package/dist/components/index.d.ts +2 -9
  22. package/dist/components/index.js +3 -1
  23. package/dist/components/tttx-form.d.ts +11 -0
  24. package/dist/components/tttx-form.js +394 -0
  25. package/dist/components/tttx-list.d.ts +11 -0
  26. package/dist/components/tttx-list.js +1727 -0
  27. package/dist/esm/{index-058a3cd0.js → index-0350f122.js} +55 -88
  28. package/dist/esm/loader.js +3 -4
  29. package/dist/esm/polyfills/css-shim.js +1 -1
  30. package/dist/esm/tttx-button.entry.js +1 -1
  31. package/dist/esm/tttx-form.entry.js +373 -0
  32. package/dist/esm/tttx-icon.entry.js +1 -1
  33. package/dist/esm/tttx-keyvalue-block.entry.js +1 -1
  34. package/dist/esm/tttx-list.entry.js +1700 -0
  35. package/dist/esm/tttx-loading-spinner.entry.js +1 -1
  36. package/dist/esm/tttx-standalone-input.entry.js +1 -1
  37. package/dist/esm/tttx.js +3 -4
  38. package/dist/tttx/{p-1adb2b75.entry.js → p-1b015a9d.entry.js} +1 -1
  39. package/dist/tttx/p-4ec3aee3.entry.js +1 -0
  40. package/dist/tttx/p-62869344.js +2 -0
  41. package/dist/tttx/{p-046868d9.entry.js → p-92465671.entry.js} +1 -1
  42. package/dist/tttx/{p-ad637dde.entry.js → p-a0179cb1.entry.js} +1 -1
  43. package/dist/tttx/{p-495cf4b3.entry.js → p-ae71c5ef.entry.js} +1 -1
  44. package/dist/tttx/p-cd1565e0.entry.js +3 -0
  45. package/dist/tttx/{p-a4d9929a.entry.js → p-f36c611b.entry.js} +1 -1
  46. package/dist/tttx/tttx.esm.js +1 -1
  47. package/dist/types/components/molecules/tttx-form/lib/setErrorState.d.ts +13 -0
  48. package/dist/types/components/molecules/tttx-form/lib/validityCheck.d.ts +17 -0
  49. package/dist/types/components/molecules/tttx-form/tttx-form.d.ts +114 -0
  50. package/dist/types/components/molecules/tttx-form/tttx-form.stories.d.ts +13 -0
  51. package/dist/types/components/molecules/tttx-list/interfaces.d.ts +6 -0
  52. package/dist/types/components/molecules/tttx-list/tttx-list.d.ts +11 -0
  53. package/dist/types/components/molecules/tttx-list/tttx-list.stories.d.ts +14 -0
  54. package/dist/types/components/molecules/tttx-standalone-input/tttx-standalone-input.d.ts +6 -6
  55. package/dist/types/components.d.ts +46 -0
  56. package/dist/types/shared/domsanitiser.options.d.ts +10 -0
  57. package/dist/types/stencil-public-runtime.d.ts +3 -59
  58. package/loader/index.d.ts +0 -9
  59. package/package.json +2 -1
  60. package/readme.md +20 -0
  61. package/dist/tttx/p-bbb7dbf7.js +0 -2
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-058a3cd0.js';
1
+ import { r as registerInstance, h } from './index-0350f122.js';
2
2
 
3
3
  const tttxLoadingSpinnerCss = ".material-symbols-rounded{font-variation-settings:\"FILL\" 1, \"wght\" 400, \"GRAD\" 0, \"opsz\" 24}.spinner-container{position:absolute}.loading-box{display:flex;align-items:center;justify-content:center}.loading-text{font-size:16px;font-weight:400;padding-top:10px;text-align:center}.spinner{border:solid #1479c6;border-bottom-color:#d5d5d5;border-radius:50%;position:relative;box-sizing:border-box;animation:rotation 1s linear infinite}.spinner.small{height:20px;width:20px;border-width:4px}.spinner.large{height:60px;width:60px;border-width:8px}@keyframes rotation{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}";
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host } from './index-058a3cd0.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-0350f122.js';
2
2
 
3
3
  const tttxStandaloneInputCss = ".material-symbols-rounded.sc-tttx-standalone-input{font-variation-settings:\"FILL\" 1, \"wght\" 400, \"GRAD\" 0, \"opsz\" 24}.material-symbols-rounded.sc-tttx-standalone-input{font-family:\"Material Symbols Rounded\", sans-serif;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color:#9e9e9e}.icon-left.sc-tttx-standalone-input,.icon-right.sc-tttx-standalone-input{flex-basis:24px}.icon-left.sc-tttx-standalone-input span.sc-tttx-standalone-input,.icon-right.sc-tttx-standalone-input span.sc-tttx-standalone-input{font-size:24px;line-height:24px;text-align:center;display:block;width:24px;height:24px;margin-top:4px}.icon-left.sc-tttx-standalone-input span.sc-tttx-standalone-input{margin-left:4px}.icon-right.sc-tttx-standalone-input span.sc-tttx-standalone-input{margin-right:4px}.icon-right.sc-tttx-standalone-input{margin-top:5px;margin-right:4px}.icon-left.sc-tttx-standalone-input{margin-top:5px;margin-left:4px}.iconleft.sc-tttx-standalone-input .input.sc-tttx-standalone-input{padding-left:4px}.iconright.sc-tttx-standalone-input .input.sc-tttx-standalone-input{padding-right:4px}.focused.sc-tttx-standalone-input{border-color:#1479c6}.errormsg.sc-tttx-standalone-input{display:flex;justify-content:center;align-items:center;float:left;margin-bottom:16px;box-sizing:border-box;background-color:transparent;height:26px;font-size:14px;border-radius:none;z-index:2;color:#dc0000}.errormsg.sc-tttx-standalone-input .validationicon.sc-tttx-standalone-input{width:16px;height:16px;font-size:16px;margin-right:4px;vertical-align:middle;color:#dc0000}.danger.sc-tttx-standalone-input{color:#dc0000}.optional.sc-tttx-standalone-input{color:#757575;font-weight:normal}label.inputBlock.sc-tttx-standalone-input{display:block;position:relative;line-height:21px}label.sc-tttx-standalone-input{font-weight:500;font-size:16px}input.sc-tttx-standalone-input:not([type=submit]){font-family:\"Roboto\", serif;box-sizing:border-box;width:100%;height:36px;padding:0 16px;font-size:16px;border:1px solid #d5d5d5;border-radius:4px;margin-top:4px}input[type=date].sc-tttx-standalone-input{background:white;display:block;min-width:calc(100% - 18px);line-height:37px}input.invalid.sc-tttx-standalone-input:invalid,input.standalone.invalid.sc-tttx-standalone-input{border:1px solid #dc0000}input.sc-tttx-standalone-input~.errorBubble.sc-tttx-standalone-input{min-height:27px;position:relative;font-size:14px;font-weight:normal;width:100%;font-family:\"Roboto\", sans-serif;color:#dc0000;display:flex;align-content:center;align-items:center;justify-items:center}input.sc-tttx-standalone-input~.errorBubble.sc-tttx-standalone-input:not(.visible){visibility:hidden}input.sc-tttx-standalone-input~.errorBubble.sc-tttx-standalone-input span.sc-tttx-standalone-input{color:#dc0000;font-size:16px;margin-right:4px;height:16px}input.invalid.sc-tttx-standalone-input:invalid~.errorBubble.sc-tttx-standalone-input{position:relative;font-size:14px;font-weight:normal;width:100%;font-family:\"Roboto\", sans-serif;color:#dc0000;visibility:visible}input.sc-tttx-standalone-input:focus{border-color:#1479c6}.sc-tttx-standalone-input-h{display:block}";
4
4
 
package/dist/esm/tttx.js CHANGED
@@ -1,8 +1,7 @@
1
- import { p as promiseResolve, b as bootstrapLazy } from './index-058a3cd0.js';
2
- export { s as setNonce } from './index-058a3cd0.js';
1
+ import { p as promiseResolve, b as bootstrapLazy } from './index-0350f122.js';
3
2
 
4
3
  /*
5
- Stencil Client Patch Browser v2.22.3 | MIT Licensed | https://stenciljs.com
4
+ Stencil Client Patch Browser v2.20.0 | MIT Licensed | https://stenciljs.com
6
5
  */
7
6
  const patchBrowser = () => {
8
7
  const importMeta = import.meta.url;
@@ -14,5 +13,5 @@ const patchBrowser = () => {
14
13
  };
15
14
 
16
15
  patchBrowser().then(options => {
17
- return bootstrapLazy([["tttx-button",[[1,"tttx-button",{"notext":[4],"icon":[1],"iconposition":[1],"design":[1]}]]],["tttx-standalone-input",[[2,"tttx-standalone-input",{"label":[1],"showerrormsg":[4],"errormsg":[1],"iconleft":[1],"iconright":[1],"inputAutocapitalize":[1,"input-autocapitalize"],"inputAutofocus":[4,"input-autofocus"],"inputKeyhint":[1,"input-keyhint"],"inputIndex":[8,"input-index"],"inputTitle":[1,"input-title"],"autocomplete":[1],"checked":[4],"disabled":[4],"max":[8],"maxlength":[8],"min":[8],"minlength":[8],"name":[1],"pattern":[1],"placeholder":[1],"readonly":[8],"required":[4],"step":[8],"type":[1],"value":[1032]}]]],["tttx-keyvalue-block",[[1,"tttx-keyvalue-block",{"keyvalues":[8],"horizontal":[4]}]]],["tttx-loading-spinner",[[1,"tttx-loading-spinner",{"loadingMessage":[1028,"loading-message"],"size":[1025]}]]],["tttx-icon",[[1,"tttx-icon",{"icon":[1],"color":[1]}]]]], options);
16
+ return bootstrapLazy([["tttx-button",[[1,"tttx-button",{"notext":[4],"icon":[1],"iconposition":[1],"design":[1]}]]],["tttx-list",[[1,"tttx-list",{"data":[1025],"name":[1]}]]],["tttx-standalone-input",[[2,"tttx-standalone-input",{"label":[1],"showerrormsg":[4],"errormsg":[1],"iconleft":[1],"iconright":[1],"inputAutocapitalize":[1,"input-autocapitalize"],"inputAutofocus":[4,"input-autofocus"],"inputKeyhint":[1,"input-keyhint"],"inputIndex":[8,"input-index"],"inputTitle":[1,"input-title"],"autocomplete":[1],"checked":[4],"disabled":[4],"max":[8],"maxlength":[8],"min":[8],"minlength":[8],"name":[1],"pattern":[1],"placeholder":[1],"readonly":[8],"required":[4],"step":[8],"type":[1],"value":[1032]}]]],["tttx-form",[[1,"tttx-form",{"formschema":[1032],"submitValue":[1032,"submit-value"]}]]],["tttx-keyvalue-block",[[1,"tttx-keyvalue-block",{"keyvalues":[8],"horizontal":[4]}]]],["tttx-loading-spinner",[[1,"tttx-loading-spinner",{"loadingMessage":[1028,"loading-message"],"size":[1025]}]]],["tttx-icon",[[1,"tttx-icon",{"icon":[1],"color":[1]}]]]], options);
18
17
  });
@@ -1 +1 @@
1
- import{r as t,h as i}from"./p-bbb7dbf7.js";const e=class{constructor(i){t(this,i),this.loadingMessage=void 0,this.size="large"}renderLoadingMessage(){return this.loadingMessage?i("div",{class:"loading-text"},"Loading, please wait..."):""}render(){return i("div",{class:"spinner-container"},i("div",{class:"loading-box"},i("span",{class:`spinner ${this.size}`})),this.renderLoadingMessage())}};e.style='.material-symbols-rounded{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.spinner-container{position:absolute}.loading-box{display:flex;align-items:center;justify-content:center}.loading-text{font-size:16px;font-weight:400;padding-top:10px;text-align:center}.spinner{border:solid #1479c6;border-bottom-color:#d5d5d5;border-radius:50%;position:relative;box-sizing:border-box;animation:rotation 1s linear infinite}.spinner.small{height:20px;width:20px;border-width:4px}.spinner.large{height:60px;width:60px;border-width:8px}@keyframes rotation{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}';export{e as tttx_loading_spinner}
1
+ import{r as t,h as i}from"./p-62869344.js";const e=class{constructor(i){t(this,i),this.loadingMessage=void 0,this.size="large"}renderLoadingMessage(){return this.loadingMessage?i("div",{class:"loading-text"},"Loading, please wait..."):""}render(){return i("div",{class:"spinner-container"},i("div",{class:"loading-box"},i("span",{class:`spinner ${this.size}`})),this.renderLoadingMessage())}};e.style='.material-symbols-rounded{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.spinner-container{position:absolute}.loading-box{display:flex;align-items:center;justify-content:center}.loading-text{font-size:16px;font-weight:400;padding-top:10px;text-align:center}.spinner{border:solid #1479c6;border-bottom-color:#d5d5d5;border-radius:50%;position:relative;box-sizing:border-box;animation:rotation 1s linear infinite}.spinner.small{height:20px;width:20px;border-width:4px}.spinner.large{height:60px;width:60px;border-width:8px}@keyframes rotation{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}';export{e as tttx_loading_spinner}
@@ -0,0 +1 @@
1
+ import{r as t,c as i,h as o,H as e}from"./p-62869344.js";const n=class{constructor(o){t(this,o),this.dataSubmitted=i(this,"dataSubmitted",7),this.dataChanged=i(this,"dataChanged",7),this.template=document.createElement("template"),this.formschema=void 0,this.submitValue=void 0}onFormSchemaChange(t){this._formSchema="string"==typeof t?JSON.parse(t):t}fieldChanged(t){this.dataChanged.emit({name:t.target.name,value:t.target.value})}doSubmit(t){t.preventDefault();const i=new FormData(t.target);this.dataSubmitted.emit(i)}componentWillLoad(){this.onFormSchemaChange(this.formschema)}componentWillRender(){this.template=document.createElement("template"),this.populateFormFromSchema()}createInput(t,i){var o;const e=document.createElement("input");return e.name=t,e.type=i.type,e.placeholder=null!==(o=i.placeholder)&&void 0!==o?o:"",e.autocomplete="off",e.autocapitalize="off",e}applyValidation(t,i){var o,e;i.required&&(t.setAttribute("required",""),t.setAttribute("data-required",null!==(o=i.required.message)&&void 0!==o?o:"")),i.pattern&&(t.setAttribute("pattern",i.pattern.pattern),t.setAttribute("data-pattern",null!==(e=i.pattern.message)&&void 0!==e?e:"")),i.badInput&&t.setAttribute("data-badinput",i.badInput.message),i.minmax&&(t.setAttribute("min",i.minmax.min),t.setAttribute("max",i.minmax.max),t.setAttribute("data-range",i.minmax.message)),i.maxlength&&t.setAttribute("maxlength",i.maxlength)}createErrorBubble(){const t=document.createElement("div");return t.className="errorBubble",t}createLabel(t,i,o){const e=document.createElement("label");if(e.className="inputBlock",e.innerText=t.label,!t.validation){const t=document.createElement("span");t.className="optional",t.innerHTML=" (optional)",e.appendChild(t)}return e.appendChild(i),e.appendChild(o),e}createSubmitButton(){const t=document.createElement("input");return t.type="submit",t.className="button primary-blue",t.value="Save",t}populateFormFromSchema(){if(!this._formSchema)return;const t=this._formSchema.properties;Object.keys(t).forEach((i=>{const o=t[i].form,e=this.createInput(i,o);o.validation&&this.applyValidation(e,o.validation);const n=this.createErrorBubble(),r=this.createLabel(o,e,n);this.template.content.append(r)}));const i=this.createSubmitButton();this.template.content.append(i)}componentDidRender(){if(!this._formSchema)return;const t=this.template.content.cloneNode(!0);Object.keys(this._formSchema.properties).forEach((i=>{const o=t.querySelector(`[name=${i}]`);o.oninvalid=this.validityCheckWrapper.bind(this),o.onblur=this.validityCheckWrapper.bind(this),o.onkeyup=this.fieldChanged.bind(this),o.onchange=this.fieldChanged.bind(this)})),this.fieldset.appendChild(t)}validityCheckWrapper(t){const{target:i,hasError:o,errorMessage:e}=function(t){var i,o,e,n;t.preventDefault();const r=t.target;let a=!0,s="";switch(!0){case r.validity.valueMissing:s=null!==(i=r.dataset.required)&&void 0!==i?i:"This field is required";break;case r.validity.patternMismatch:s=null!==(o=r.dataset.pattern)&&void 0!==o?o:"Incorrect format";break;case r.validity.badInput:s=null!==(e=r.dataset.badinput)&&void 0!==e?e:"Wrong input type";break;case r.validity.rangeOverflow||r.validity.rangeUnderflow:s=null!==(n=r.dataset.range)&&void 0!==n?n:"Invalid value";break;default:a=!1}return{target:r,hasError:a,errorMessage:s}}(t);!function(t,i,o){const e=t.parentElement.querySelector(".errorBubble");if(i){t.className="invalid";const i=document.createElement("span");i.className="material-symbols-rounded",i.textContent="warning",e.innerHTML="",e.append(i),e.append(o)}else t.className="",e.innerHTML=""}(i,o,e)}render(){return o(e,null,o("form",{onSubmit:this.doSubmit.bind(this)},o("fieldset",{ref:t=>this.fieldset=t})))}static get watchers(){return{formschema:["onFormSchemaChange"]}}};n.style='.material-symbols-rounded{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.material-symbols-rounded{font-family:"Material Symbols Rounded", sans-serif;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color:#9e9e9e}.icon-left,.icon-right{flex-basis:24px}.icon-left span,.icon-right span{font-size:24px;line-height:24px;text-align:center;display:block;width:24px;height:24px;margin-top:4px}.icon-left span{margin-left:4px}.icon-right span{margin-right:4px}.icon-right{margin-top:5px;margin-right:4px}.icon-left{margin-top:5px;margin-left:4px}.iconleft .input{padding-left:4px}.iconright .input{padding-right:4px}.focused{border-color:#1479c6}.errormsg{display:flex;justify-content:center;align-items:center;float:left;margin-bottom:16px;box-sizing:border-box;background-color:transparent;height:26px;font-size:14px;border-radius:none;z-index:2;color:#dc0000}.errormsg .validationicon{width:16px;height:16px;font-size:16px;margin-right:4px;vertical-align:middle;color:#dc0000}.danger{color:#dc0000}.optional{color:#757575;font-weight:normal}label.inputBlock{display:block;position:relative;line-height:21px}label{font-weight:500;font-size:16px}input:not([type=submit]){font-family:"Roboto", serif;box-sizing:border-box;width:100%;height:36px;padding:0 16px;font-size:16px;border:1px solid #d5d5d5;border-radius:4px;margin-top:4px}input[type=date]{background:white;display:block;min-width:calc(100% - 18px);line-height:37px}input.invalid:invalid,input.standalone.invalid{border:1px solid #dc0000}input~.errorBubble{min-height:27px;position:relative;font-size:14px;font-weight:normal;width:100%;font-family:"Roboto", sans-serif;color:#dc0000;display:flex;align-content:center;align-items:center;justify-items:center}input~.errorBubble:not(.visible){visibility:hidden}input~.errorBubble span{color:#dc0000;font-size:16px;margin-right:4px;height:16px}input.invalid:invalid~.errorBubble{position:relative;font-size:14px;font-weight:normal;width:100%;font-family:"Roboto", sans-serif;color:#dc0000;visibility:visible}input:focus{border-color:#1479c6}.button{font-family:Roboto, serif;box-sizing:border-box;height:36px;min-width:36px;padding:0;margin:0;background:transparent;color:#212121;border:1px solid #c8c8c8;border-radius:4px;text-transform:uppercase;display:flex;justify-content:left;align-items:center;font-size:14px;font-weight:400}.button-content{display:block;padding:0 16px}.icon-left,.icon-right{margin-top:4px}.iconleft{padding-left:8px}.iconleft .button-content{padding-left:4px}.iconright{padding-right:8px}.iconright .button-content{padding-right:4px}.notext{padding:0 6px}.button:hover{background:rgba(17, 17, 17, 0.1);border:1px solid #D5D5D5}.button:active{background:rgba(17, 17, 17, 0.2);border:1px solid #D5D5D5}.primary{background:#1479c6;border:1px solid #1479c6;color:white}.primary:hover{background:#146EB3;border:1px solid #146EB3}.primary:active{background:#1464A2;border:1px solid #1464A2}.borderless{background:transparent;border:none;color:#212121}.borderless:hover{background:rgba(17, 17, 17, 0.1);border:none}.borderless:active{background:rgba(17, 17, 17, 0.2);border:none}.danger{background:#DC0000;border:1px solid #DC0000;color:white}.danger:hover{background:#C60000;border:1px solid #C60000}.danger:active{background:#B00000;border:1px solid #B00000}.disabled{background:#aeaeae;border:none;color:#4c4c4c;cursor:not-allowed}.disabled:hover{background:#aeaeae;border:none;color:#4c4c4c;cursor:not-allowed}.disabled:active{background:#aeaeae;border:none;color:#4c4c4c;cursor:not-allowed}:host{display:block}fieldset{margin:0;padding:0;border:none}input[type=submit]{margin-left:auto}';export{n as tttx_form}
@@ -0,0 +1,2 @@
1
+ let e,t,n=!1;const l={},s=e=>"object"==(e=typeof e)||"function"===e,o=(e,t,...n)=>{let l=null,o=!1,r=!1;const i=[],u=t=>{for(let n=0;n<t.length;n++)l=t[n],Array.isArray(l)?u(l):null!=l&&"boolean"!=typeof l&&((o="function"!=typeof e&&!s(l))&&(l+=""),o&&r?i[i.length-1].t+=l:i.push(o?c(null,l):l),r=o)};if(u(n),t){const e=t.className||t.class;e&&(t.class="object"!=typeof e?e:Object.keys(e).filter((t=>e[t])).join(" "))}const a=c(e,null);return a.l=t,i.length>0&&(a.o=i),a},c=(e,t)=>({i:0,u:e,t,$:null,o:null,l:null}),r={},i=(e,t,n)=>{const l=(e=>T(e).h)(e);return{emit:e=>u(l,t,{bubbles:!!(4&n),composed:!!(2&n),cancelable:!!(1&n),detail:e})}},u=(e,t,n)=>{const l=B.ce(t,n);return e.dispatchEvent(l),l},a=new WeakMap,f=e=>"sc-"+e.m,d=(e,t,n,l,o,c)=>{if(n!==l){let r=U(e,t),i=t.toLowerCase();if("class"===t){const t=e.classList,s=h(n),o=h(l);t.remove(...s.filter((e=>e&&!o.includes(e)))),t.add(...o.filter((e=>e&&!s.includes(e))))}else if("ref"===t)l&&l(e);else if(r||"o"!==t[0]||"n"!==t[1]){const i=s(l);if((r||i&&null!==l)&&!o)try{if(e.tagName.includes("-"))e[t]=l;else{const s=null==l?"":l;"list"===t?r=!1:null!=n&&e[t]==s||(e[t]=s)}}catch(e){}null==l||!1===l?!1===l&&""!==e.getAttribute(t)||e.removeAttribute(t):(!r||4&c||o)&&!i&&e.setAttribute(t,l=!0===l?"":l)}else t="-"===t[2]?t.slice(3):U(_,i)?i.slice(2):i[2]+t.slice(3),n&&B.rel(e,t,n,!1),l&&B.ael(e,t,l,!1)}},$=/\s/,h=e=>e?e.split($):[],m=(e,t,n,s)=>{const o=11===t.$.nodeType&&t.$.host?t.$.host:t.$,c=e&&e.l||l,r=t.l||l;for(s in c)s in r||d(o,s,c[s],void 0,n,t.i);for(s in r)d(o,s,c[s],r[s],n,t.i)},p=(t,n,l)=>{const s=n.o[l];let o,c,r=0;if(null!==s.t)o=s.$=z.createTextNode(s.t);else if(o=s.$=z.createElement(s.u),m(null,s,!1),null!=e&&o["s-si"]!==e&&o.classList.add(o["s-si"]=e),s.o)for(r=0;r<s.o.length;++r)c=p(t,s,r),c&&o.appendChild(c);return o},y=(e,n,l,s,o,c)=>{let r,i=e;for(i.shadowRoot&&i.tagName===t&&(i=i.shadowRoot);o<=c;++o)s[o]&&(r=p(null,l,o),r&&(s[o].$=r,i.insertBefore(r,n)))},b=(e,t,n,l,s)=>{for(;t<=n;++t)(l=e[t])&&(s=l.$,g(l),s.remove())},w=(e,t)=>e.u===t.u,S=(e,t)=>{const n=t.$=e.$,l=e.o,s=t.o,o=t.t;null===o?("slot"===t.u||m(e,t,!1),null!==l&&null!==s?((e,t,n,l)=>{let s,o=0,c=0,r=t.length-1,i=t[0],u=t[r],a=l.length-1,f=l[0],d=l[a];for(;o<=r&&c<=a;)null==i?i=t[++o]:null==u?u=t[--r]:null==f?f=l[++c]:null==d?d=l[--a]:w(i,f)?(S(i,f),i=t[++o],f=l[++c]):w(u,d)?(S(u,d),u=t[--r],d=l[--a]):w(i,d)?(S(i,d),e.insertBefore(i.$,u.$.nextSibling),i=t[++o],d=l[--a]):w(u,f)?(S(u,f),e.insertBefore(u.$,i.$),u=t[--r],f=l[++c]):(s=p(t&&t[c],n,c),f=l[++c],s&&i.$.parentNode.insertBefore(s,i.$));o>r?y(e,null==l[a+1]?null:l[a+1].$,n,l,c,a):c>a&&b(t,o,r)})(n,l,t,s):null!==s?(null!==e.t&&(n.textContent=""),y(n,null,t,s,0,s.length-1)):null!==l&&b(l,0,l.length-1)):e.t!==o&&(n.data=o)},g=e=>{e.l&&e.l.ref&&e.l.ref(null),e.o&&e.o.map(g)},j=(e,t)=>{t&&!e.p&&t["s-p"]&&t["s-p"].push(new Promise((t=>e.p=t)))},M=(e,t)=>{if(e.i|=16,!(4&e.i))return j(e,e.S),ee((()=>v(e,t)));e.i|=512},v=(e,t)=>{const n=e.g;let l;return t&&(l=P(n,"componentWillLoad")),l=R(l,(()=>P(n,"componentWillRender"))),R(l,(()=>k(e,n,t)))},k=async(e,t,n)=>{const l=e.h,s=l["s-rc"];n&&(e=>{const t=e.j,n=e.h,l=t.i,s=((e,t)=>{let n=f(t);const l=V.get(n);if(e=11===e.nodeType?e:z,l)if("string"==typeof l){let t,s=a.get(e=e.head||e);s||a.set(e,s=new Set),s.has(n)||(t=z.createElement("style"),t.innerHTML=l,e.insertBefore(t,e.querySelector("link")),s&&s.add(n))}else e.adoptedStyleSheets.includes(l)||(e.adoptedStyleSheets=[...e.adoptedStyleSheets,l]);return n})(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);10&l&&(n["s-sc"]=s,n.classList.add(s+"-h"),2&l&&n.classList.add(s+"-s"))})(e);C(e,t),s&&(s.map((e=>e())),l["s-rc"]=void 0);{const t=l["s-p"],n=()=>O(e);0===t.length?n():(Promise.all(t).then(n),e.i|=4,t.length=0)}},C=(n,l)=>{try{l=l.render(),n.i&=-17,n.i|=2,((n,l)=>{const s=n.h,i=n.M||c(null,null),u=(e=>e&&e.u===r)(l)?l:o(null,null,l);t=s.tagName,u.u=null,u.i|=4,n.M=u,u.$=i.$=s.shadowRoot||s,e=s["s-sc"],S(i,u)})(n,l)}catch(e){q(e,n.h)}return null},O=e=>{const t=e.h,n=e.S;P(e.g,"componentDidRender"),64&e.i||(e.i|=64,W(t),e.v(t),n||x()),e.p&&(e.p(),e.p=void 0),512&e.i&&Z((()=>M(e,!1))),e.i&=-517},x=()=>{W(z.documentElement),Z((()=>u(_,"appload",{detail:{namespace:"tttx"}})))},P=(e,t,n)=>{if(e&&e[t])try{return e[t](n)}catch(e){q(e)}},R=(e,t)=>e&&e.then?e.then(t):t(),W=e=>e.classList.add("hydrated"),E=(e,t,n)=>{if(t.k){e.watchers&&(t.C=e.watchers);const l=Object.entries(t.k),o=e.prototype;if(l.map((([e,[l]])=>{(31&l||2&n&&32&l)&&Object.defineProperty(o,e,{get(){return((e,t)=>T(this).O.get(t))(0,e)},set(n){((e,t,n,l)=>{const o=T(e),c=o.h,r=o.O.get(t),i=o.i,u=o.g;if(n=((e,t)=>null==e||s(e)?e:4&t?"false"!==e&&(""===e||!!e):1&t?e+"":e)(n,l.k[t][0]),(!(8&i)||void 0===r)&&n!==r&&(!Number.isNaN(r)||!Number.isNaN(n))&&(o.O.set(t,n),u)){if(l.C&&128&i){const e=l.C[t];e&&e.map((e=>{try{u[e](n,r,t)}catch(e){q(e,c)}}))}2==(18&i)&&M(o,!1)}})(this,e,n,t)},configurable:!0,enumerable:!0})})),1&n){const t=new Map;o.attributeChangedCallback=function(e,n,l){B.jmp((()=>{const n=t.get(e);if(this.hasOwnProperty(n))l=this[n],delete this[n];else if(o.hasOwnProperty(n)&&"number"==typeof this[n]&&this[n]==l)return;this[n]=(null!==l||"boolean"!=typeof this[n])&&l}))},e.observedAttributes=l.filter((([e,t])=>15&t[0])).map((([e,n])=>{const l=n[1]||e;return t.set(l,e),l}))}}return e},L=(e,t={})=>{const n=[],l=t.exclude||[],s=_.customElements,o=z.head,c=o.querySelector("meta[charset]"),r=z.createElement("style"),i=[];let u,a=!0;Object.assign(B,t),B.P=new URL(t.resourcesUrl||"./",z.baseURI).href,e.map((e=>{e[1].map((t=>{const o={i:t[0],m:t[1],k:t[2],R:t[3]};o.k=t[2],o.C={};const c=o.m,r=class extends HTMLElement{constructor(e){super(e),H(e=this,o),1&o.i&&e.attachShadow({mode:"open"})}connectedCallback(){u&&(clearTimeout(u),u=null),a?i.push(this):B.jmp((()=>(e=>{if(0==(1&B.i)){const t=T(e),n=t.j,l=()=>{};if(!(1&t.i)){t.i|=1;{let n=e;for(;n=n.parentNode||n.host;)if(n["s-p"]){j(t,t.S=n);break}}n.k&&Object.entries(n.k).map((([t,[n]])=>{if(31&n&&e.hasOwnProperty(t)){const n=e[t];delete e[t],e[t]=n}})),(async(e,t,n,l,s)=>{if(0==(32&t.i)){{if(t.i|=32,(s=F(n)).then){const e=()=>{};s=await s,e()}s.isProxied||(n.C=s.watchers,E(s,n,2),s.isProxied=!0);const e=()=>{};t.i|=8;try{new s(t)}catch(e){q(e)}t.i&=-9,t.i|=128,e()}if(s.style){let e=s.style;const t=f(n);if(!V.has(t)){const l=()=>{};((e,t,n)=>{let l=V.get(e);I&&n?(l=l||new CSSStyleSheet,"string"==typeof l?l=t:l.replaceSync(t)):l=t,V.set(e,l)})(t,e,!!(1&n.i)),l()}}}const o=t.S,c=()=>M(t,!0);o&&o["s-rc"]?o["s-rc"].push(c):c()})(0,t,n)}l()}})(this)))}disconnectedCallback(){B.jmp((()=>{}))}componentOnReady(){return T(this).W}};o.L=e[0],l.includes(c)||s.get(c)||(n.push(c),s.define(c,E(r,o,1)))}))})),r.innerHTML=n+"{visibility:hidden}.hydrated{visibility:inherit}",r.setAttribute("data-styles",""),o.insertBefore(r,c?c.nextSibling:o.firstChild),a=!1,i.length?i.map((e=>e.connectedCallback())):B.jmp((()=>u=setTimeout(x,30)))},N=new WeakMap,T=e=>N.get(e),A=(e,t)=>N.set(t.g=e,t),H=(e,t)=>{const n={i:0,h:e,j:t,O:new Map};return n.W=new Promise((e=>n.v=e)),e["s-p"]=[],e["s-rc"]=[],N.set(e,n)},U=(e,t)=>t in e,q=(e,t)=>(0,console.error)(e,t),D=new Map,F=e=>{const t=e.m.replace(/-/g,"_"),n=e.L,l=D.get(n);return l?l[t]:import(`./${n}.entry.js`).then((e=>(D.set(n,e),e[t])),q)
2
+ /*!__STENCIL_STATIC_IMPORT_SWITCH__*/},V=new Map,_="undefined"!=typeof window?window:{},z=_.document||{head:{}},B={i:0,P:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,l)=>e.addEventListener(t,n,l),rel:(e,t,n,l)=>e.removeEventListener(t,n,l),ce:(e,t)=>new CustomEvent(e,t)},G=e=>Promise.resolve(e),I=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(e){}return!1})(),J=[],K=[],Q=(e,t)=>l=>{e.push(l),n||(n=!0,t&&4&B.i?Z(Y):B.raf(Y))},X=e=>{for(let t=0;t<e.length;t++)try{e[t](performance.now())}catch(e){q(e)}e.length=0},Y=()=>{X(J),X(K),(n=J.length>0)&&B.raf(Y)},Z=e=>G().then(e),ee=Q(K,!0);export{r as H,L as b,i as c,o as h,G as p,A as r}
@@ -1 +1 @@
1
- import{r as o,h as t,H as r}from"./p-bbb7dbf7.js";const i=class{constructor(t){o(this,t),this._iconcolor="black",this.notext=void 0,this.icon=void 0,this.iconposition="left",this.design="default"}componentWillLoad(){this._design=this.design,["primary","default","disabled","danger","borderless"].includes(this.design)||(this._design="default"),"primary"!==this._design&&"danger"!==this._design||(this._iconcolor="white")}render(){return t(r,null,t("button",{class:`button ${this._design} ${this.icon?"withicon":""} ${this.icon&&this.iconposition?"icon"+this.iconposition:""} ${this.notext?"notext":""}`},this.icon&&"left"===this.iconposition&&t("div",{class:"icon-left"},t("tttx-icon",{icon:this.icon,color:this._iconcolor})),!this.notext&&t("div",{class:"button-content"},t("slot",null)),this.icon&&"right"===this.iconposition&&t("div",{class:"icon-right"},t("tttx-icon",{icon:this.icon,color:this._iconcolor}))))}};i.style='.material-symbols-rounded{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.button{font-family:Roboto, serif;box-sizing:border-box;height:36px;min-width:36px;padding:0;margin:0;background:transparent;color:#212121;border:1px solid #c8c8c8;border-radius:4px;text-transform:uppercase;display:flex;justify-content:left;align-items:center;font-size:14px;font-weight:400}.button-content{display:block;padding:0 16px}.icon-left,.icon-right{margin-top:4px}.iconleft{padding-left:8px}.iconleft .button-content{padding-left:4px}.iconright{padding-right:8px}.iconright .button-content{padding-right:4px}.notext{padding:0 6px}.button:hover{background:rgba(17, 17, 17, 0.1);border:1px solid #D5D5D5}.button:active{background:rgba(17, 17, 17, 0.2);border:1px solid #D5D5D5}.primary{background:#1479c6;border:1px solid #1479c6;color:white}.primary:hover{background:#146EB3;border:1px solid #146EB3}.primary:active{background:#1464A2;border:1px solid #1464A2}.borderless{background:transparent;border:none;color:#212121}.borderless:hover{background:rgba(17, 17, 17, 0.1);border:none}.borderless:active{background:rgba(17, 17, 17, 0.2);border:none}.danger{background:#DC0000;border:1px solid #DC0000;color:white}.danger:hover{background:#C60000;border:1px solid #C60000}.danger:active{background:#B00000;border:1px solid #B00000}.disabled{background:#aeaeae;border:none;color:#4c4c4c;cursor:not-allowed}.disabled:hover{background:#aeaeae;border:none;color:#4c4c4c;cursor:not-allowed}.disabled:active{background:#aeaeae;border:none;color:#4c4c4c;cursor:not-allowed}:host{display:inline-block}.spacingleft{margin-left:8px}';export{i as tttx_button}
1
+ import{r as o,h as t,H as r}from"./p-62869344.js";const i=class{constructor(t){o(this,t),this._iconcolor="black",this.notext=void 0,this.icon=void 0,this.iconposition="left",this.design="default"}componentWillLoad(){this._design=this.design,["primary","default","disabled","danger","borderless"].includes(this.design)||(this._design="default"),"primary"!==this._design&&"danger"!==this._design||(this._iconcolor="white")}render(){return t(r,null,t("button",{class:`button ${this._design} ${this.icon?"withicon":""} ${this.icon&&this.iconposition?"icon"+this.iconposition:""} ${this.notext?"notext":""}`},this.icon&&"left"===this.iconposition&&t("div",{class:"icon-left"},t("tttx-icon",{icon:this.icon,color:this._iconcolor})),!this.notext&&t("div",{class:"button-content"},t("slot",null)),this.icon&&"right"===this.iconposition&&t("div",{class:"icon-right"},t("tttx-icon",{icon:this.icon,color:this._iconcolor}))))}};i.style='.material-symbols-rounded{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.button{font-family:Roboto, serif;box-sizing:border-box;height:36px;min-width:36px;padding:0;margin:0;background:transparent;color:#212121;border:1px solid #c8c8c8;border-radius:4px;text-transform:uppercase;display:flex;justify-content:left;align-items:center;font-size:14px;font-weight:400}.button-content{display:block;padding:0 16px}.icon-left,.icon-right{margin-top:4px}.iconleft{padding-left:8px}.iconleft .button-content{padding-left:4px}.iconright{padding-right:8px}.iconright .button-content{padding-right:4px}.notext{padding:0 6px}.button:hover{background:rgba(17, 17, 17, 0.1);border:1px solid #D5D5D5}.button:active{background:rgba(17, 17, 17, 0.2);border:1px solid #D5D5D5}.primary{background:#1479c6;border:1px solid #1479c6;color:white}.primary:hover{background:#146EB3;border:1px solid #146EB3}.primary:active{background:#1464A2;border:1px solid #1464A2}.borderless{background:transparent;border:none;color:#212121}.borderless:hover{background:rgba(17, 17, 17, 0.1);border:none}.borderless:active{background:rgba(17, 17, 17, 0.2);border:none}.danger{background:#DC0000;border:1px solid #DC0000;color:white}.danger:hover{background:#C60000;border:1px solid #C60000}.danger:active{background:#B00000;border:1px solid #B00000}.disabled{background:#aeaeae;border:none;color:#4c4c4c;cursor:not-allowed}.disabled:hover{background:#aeaeae;border:none;color:#4c4c4c;cursor:not-allowed}.disabled:active{background:#aeaeae;border:none;color:#4c4c4c;cursor:not-allowed}:host{display:inline-block}.spacingleft{margin-left:8px}';export{i as tttx_button}
@@ -1 +1 @@
1
- import{r as t,h as l,H as i}from"./p-bbb7dbf7.js";const d=class{constructor(l){t(this,l),this.keyvalues=void 0,this.horizontal=void 0}renderSingleElements(t){const i=Object.keys(t),d=[];for(let o=0;o<i.length;o++)this.horizontal?d.push(l("div",null,l("dt",null,i[o]),l("dd",null,t[i[o]]))):(d.push(l("dt",null,i[o])),d.push(l("dd",null,t[i[o]])));return d}renderArrayElements(t){const i=[];for(let d=0;d<t.length;d++){const o=t[d];this.horizontal?i.push(l("div",null,l("dt",{class:"mainTitle"},o.title),l("dt",{class:"subTitle"},o.subTitle),l("dd",null,o.data))):(i.push(l("dt",{class:"mainTitle"},o.title)),i.push(l("dt",{class:"subTitle"},o.subTitle)),i.push(l("dd",null,o.data)))}return i}render(){if(!this.keyvalues)return;let t,d;return t="string"==typeof this.keyvalues?JSON.parse(this.keyvalues):this.keyvalues,d=Array.isArray(t)?this.renderArrayElements(t):this.renderSingleElements(t),l(i,null,l("dl",{class:this.horizontal?"horizontal":null},d))}};d.style=':host{display:block}dl{margin:0;padding:0;font-family:"Roboto", sans-serif;cursor:default}dt{font-weight:400;line-height:21px;font-size:16px}dt,dt.subTitle{color:#757575}dt.mainTitle{color:#212121}dd{margin:0;font-weight:400;font-size:16px;color:#212121;line-height:21px;margin-bottom:18px}dl.horizontal{display:flex;flex-direction:row;width:100%}dl.horizontal div{flex-grow:1}@media (max-width: 769px){dl.horizontal{flex-wrap:wrap}dl.horizontal div{width:50%}}@media (max-width: 600px){dl.horizontal div{width:100%}}';export{d as tttx_keyvalue_block}
1
+ import{r as t,h as l,H as i}from"./p-62869344.js";const d=class{constructor(l){t(this,l),this.keyvalues=void 0,this.horizontal=void 0}renderSingleElements(t){const i=Object.keys(t),d=[];for(let o=0;o<i.length;o++)this.horizontal?d.push(l("div",null,l("dt",null,i[o]),l("dd",null,t[i[o]]))):(d.push(l("dt",null,i[o])),d.push(l("dd",null,t[i[o]])));return d}renderArrayElements(t){const i=[];for(let d=0;d<t.length;d++){const o=t[d];this.horizontal?i.push(l("div",null,l("dt",{class:"mainTitle"},o.title),l("dt",{class:"subTitle"},o.subTitle),l("dd",null,o.data))):(i.push(l("dt",{class:"mainTitle"},o.title)),i.push(l("dt",{class:"subTitle"},o.subTitle)),i.push(l("dd",null,o.data)))}return i}render(){if(!this.keyvalues)return;let t,d;return t="string"==typeof this.keyvalues?JSON.parse(this.keyvalues):this.keyvalues,d=Array.isArray(t)?this.renderArrayElements(t):this.renderSingleElements(t),l(i,null,l("dl",{class:this.horizontal?"horizontal":null},d))}};d.style=':host{display:block}dl{margin:0;padding:0;font-family:"Roboto", sans-serif;cursor:default}dt{font-weight:400;line-height:21px;font-size:16px}dt,dt.subTitle{color:#757575}dt.mainTitle{color:#212121}dd{margin:0;font-weight:400;font-size:16px;color:#212121;line-height:21px;margin-bottom:18px}dl.horizontal{display:flex;flex-direction:row;width:100%}dl.horizontal div{flex-grow:1}@media (max-width: 769px){dl.horizontal{flex-wrap:wrap}dl.horizontal div{width:50%}}@media (max-width: 600px){dl.horizontal div{width:100%}}';export{d as tttx_keyvalue_block}
@@ -1 +1 @@
1
- import{r as o,h as t,H as e}from"./p-bbb7dbf7.js";const r=class{constructor(t){o(this,t),this.icon=void 0,this.color="grey"}render(){return t(e,null,t("span",{class:`material-symbols-rounded ${this.color?this.color:""}`},this.icon))}};r.style='.material-symbols-rounded{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.material-symbols-rounded{font-family:"Material Symbols Rounded", sans-serif;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color:#9e9e9e}:host{display:inline-block;cursor:default;user-select:none}.icon-size{width:24px;height:24px}.tooltip{background:#ffffff;color:#343434;font-weight:bold;padding:8px 16px;font-size:13px;border-radius:4px;box-shadow:0 0 5px 1px rgba(0, 0, 0, 0.3);display:none}.tooltip[data-show]{display:block}.arrow,.arrow::before{position:absolute;width:8px;height:8px;background:inherit}.arrow{visibility:hidden}.arrow::before{visibility:visible;content:"";transform:rotate(45deg)}.tooltip[data-popper-placement^=top]>.arrow{bottom:-4px}.tooltip[data-popper-placement^=bottom]>.arrow{top:-4px}.tooltip[data-popper-placement^=left]>.arrow{right:-4px}.tooltip[data-popper-placement^=right]>.arrow{left:-4px}.red{color:#dc0000}.orange{color:#f59500}.blue{color:#1479c6}.green{color:#a2bb31}.gray{color:#757575}.black{color:#212121}.white{color:white}';export{r as tttx_icon}
1
+ import{r as o,h as t,H as e}from"./p-62869344.js";const r=class{constructor(t){o(this,t),this.icon=void 0,this.color="grey"}render(){return t(e,null,t("span",{class:`material-symbols-rounded ${this.color?this.color:""}`},this.icon))}};r.style='.material-symbols-rounded{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.material-symbols-rounded{font-family:"Material Symbols Rounded", sans-serif;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color:#9e9e9e}:host{display:inline-block;cursor:default;user-select:none}.icon-size{width:24px;height:24px}.tooltip{background:#ffffff;color:#343434;font-weight:bold;padding:8px 16px;font-size:13px;border-radius:4px;box-shadow:0 0 5px 1px rgba(0, 0, 0, 0.3);display:none}.tooltip[data-show]{display:block}.arrow,.arrow::before{position:absolute;width:8px;height:8px;background:inherit}.arrow{visibility:hidden}.arrow::before{visibility:visible;content:"";transform:rotate(45deg)}.tooltip[data-popper-placement^=top]>.arrow{bottom:-4px}.tooltip[data-popper-placement^=bottom]>.arrow{top:-4px}.tooltip[data-popper-placement^=left]>.arrow{right:-4px}.tooltip[data-popper-placement^=right]>.arrow{left:-4px}.red{color:#dc0000}.orange{color:#f59500}.blue{color:#1479c6}.green{color:#a2bb31}.gray{color:#757575}.black{color:#212121}.white{color:white}';export{r as tttx_icon}
@@ -0,0 +1,3 @@
1
+ import{r as t,c as e,h as n}from"./p-62869344.js";"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var i,o=(function(t){
2
+ /*! @license DOMPurify 3.0.3 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.0.3/LICENSE */
3
+ t.exports=function(){const{entries:t,setPrototypeOf:e,isFrozen:n,getPrototypeOf:i,getOwnPropertyDescriptor:o}=Object;let{freeze:r,seal:a,create:l}=Object,{apply:s,construct:c}="undefined"!=typeof Reflect&&Reflect;s||(s=function(t,e,n){return t.apply(e,n)}),r||(r=function(t){return t}),a||(a=function(t){return t}),c||(c=function(t,e){return new t(...e)});const f=k(Array.prototype.forEach),u=k(Array.prototype.pop),m=k(Array.prototype.push),p=k(String.prototype.toLowerCase),d=k(String.prototype.toString),h=k(String.prototype.match),g=k(String.prototype.replace),y=k(String.prototype.indexOf),b=k(String.prototype.trim),w=k(RegExp.prototype.test),x=(v=TypeError,function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return c(v,e)});var v;function k(t){return function(e){for(var n=arguments.length,i=new Array(n>1?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];return s(t,e,i)}}function T(t,i,o){var r;o=null!==(r=o)&&void 0!==r?r:p,e&&e(t,null);let a=i.length;for(;a--;){let e=i[a];if("string"==typeof e){const t=o(e);t!==e&&(n(i)||(i[a]=t),e=t)}t[e]=!0}return t}function A(e){const n=l(null);for(const[i,o]of t(e))n[i]=o;return n}function E(t,e){for(;null!==t;){const n=o(t,e);if(n){if(n.get)return k(n.get);if("function"==typeof n.value)return k(n.value)}t=i(t)}return function(t){return console.warn("fallback value for",t),null}}const R=r(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),S=r(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),_=r(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),L=r(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),D=r(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),z=r(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),I=r(["#text"]),O=r(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","xmlns","slot"]),M=r(["accent-height","accumulate","additive","alignment-baseline","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),N=r(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),C=r(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),F=a(/\{\{[\w\W]*|[\w\W]*\}\}/gm),P=a(/<%[\w\W]*|[\w\W]*%>/gm),j=a(/\${[\w\W]*}/gm),B=a(/^data-[\-\w.\u00B7-\uFFFF]/),U=a(/^aria-[\-\w]+$/),H=a(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),W=a(/^(?:\w+script|data):/i),q=a(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),G=a(/^html$/i);var Y=Object.freeze({__proto__:null,MUSTACHE_EXPR:F,ERB_EXPR:P,TMPLIT_EXPR:j,DATA_ATTR:B,ARIA_ATTR:U,IS_ALLOWED_URI:H,IS_SCRIPT_OR_DATA:W,ATTR_WHITESPACE:q,DOCTYPE_NAME:G});const X=()=>"undefined"==typeof window?null:window,$=function(t,e){if("object"!=typeof t||"function"!=typeof t.createPolicy)return null;let n=null;const i="data-tt-policy-suffix";e&&e.hasAttribute(i)&&(n=e.getAttribute(i));const o="dompurify"+(n?"#"+n:"");try{return t.createPolicy(o,{createHTML:t=>t,createScriptURL:t=>t})}catch(t){return console.warn("TrustedTypes policy "+o+" could not be created."),null}};return function e(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:X();const i=t=>e(t);if(i.version="3.0.3",i.removed=[],!n||!n.document||9!==n.document.nodeType)return i.isSupported=!1,i;const o=n.document,a=o.currentScript;let{document:l}=n;const{DocumentFragment:s,HTMLTemplateElement:c,Node:v,Element:k,NodeFilter:F,NamedNodeMap:P=n.NamedNodeMap||n.MozNamedAttrMap,HTMLFormElement:j,DOMParser:B,trustedTypes:U}=n,W=k.prototype,q=E(W,"cloneNode"),J=E(W,"nextSibling"),V=E(W,"childNodes"),K=E(W,"parentNode");if("function"==typeof c){const t=l.createElement("template");t.content&&t.content.ownerDocument&&(l=t.content.ownerDocument)}let Q,Z="";const{implementation:tt,createNodeIterator:et,createDocumentFragment:nt,getElementsByTagName:it}=l,{importNode:ot}=o;let rt={};i.isSupported="function"==typeof t&&"function"==typeof K&&tt&&void 0!==tt.createHTMLDocument;const{MUSTACHE_EXPR:at,ERB_EXPR:lt,TMPLIT_EXPR:st,DATA_ATTR:ct,ARIA_ATTR:ft,IS_SCRIPT_OR_DATA:ut,ATTR_WHITESPACE:mt}=Y;let{IS_ALLOWED_URI:pt}=Y,dt=null;const ht=T({},[...R,...S,..._,...D,...I]);let gt=null;const yt=T({},[...O,...M,...N,...C]);let bt=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),wt=null,xt=null,vt=!0,kt=!0,Tt=!1,At=!0,Et=!1,Rt=!1,St=!1,_t=!1,Lt=!1,Dt=!1,zt=!1,It=!0,Ot=!1;const Mt="user-content-";let Nt=!0,Ct=!1,Ft={},Pt=null;const jt=T({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Bt=null;const Ut=T({},["audio","video","img","source","image","track"]);let Ht=null;const Wt=T({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),qt="http://www.w3.org/1998/Math/MathML",Gt="http://www.w3.org/2000/svg",Yt="http://www.w3.org/1999/xhtml";let Xt=Yt,$t=!1,Jt=null;const Vt=T({},[qt,Gt,Yt],d);let Kt;const Qt=["application/xhtml+xml","text/html"],Zt="text/html";let te,ee=null;const ne=l.createElement("form"),ie=function(t){return t instanceof RegExp||t instanceof Function},oe=function(t){if(!ee||ee!==t){if(t&&"object"==typeof t||(t={}),t=A(t),Kt=Kt=-1===Qt.indexOf(t.PARSER_MEDIA_TYPE)?Zt:t.PARSER_MEDIA_TYPE,te="application/xhtml+xml"===Kt?d:p,dt="ALLOWED_TAGS"in t?T({},t.ALLOWED_TAGS,te):ht,gt="ALLOWED_ATTR"in t?T({},t.ALLOWED_ATTR,te):yt,Jt="ALLOWED_NAMESPACES"in t?T({},t.ALLOWED_NAMESPACES,d):Vt,Ht="ADD_URI_SAFE_ATTR"in t?T(A(Wt),t.ADD_URI_SAFE_ATTR,te):Wt,Bt="ADD_DATA_URI_TAGS"in t?T(A(Ut),t.ADD_DATA_URI_TAGS,te):Ut,Pt="FORBID_CONTENTS"in t?T({},t.FORBID_CONTENTS,te):jt,wt="FORBID_TAGS"in t?T({},t.FORBID_TAGS,te):{},xt="FORBID_ATTR"in t?T({},t.FORBID_ATTR,te):{},Ft="USE_PROFILES"in t&&t.USE_PROFILES,vt=!1!==t.ALLOW_ARIA_ATTR,kt=!1!==t.ALLOW_DATA_ATTR,Tt=t.ALLOW_UNKNOWN_PROTOCOLS||!1,At=!1!==t.ALLOW_SELF_CLOSE_IN_ATTR,Et=t.SAFE_FOR_TEMPLATES||!1,Rt=t.WHOLE_DOCUMENT||!1,Lt=t.RETURN_DOM||!1,Dt=t.RETURN_DOM_FRAGMENT||!1,zt=t.RETURN_TRUSTED_TYPE||!1,_t=t.FORCE_BODY||!1,It=!1!==t.SANITIZE_DOM,Ot=t.SANITIZE_NAMED_PROPS||!1,Nt=!1!==t.KEEP_CONTENT,Ct=t.IN_PLACE||!1,pt=t.ALLOWED_URI_REGEXP||H,Xt=t.NAMESPACE||Yt,bt=t.CUSTOM_ELEMENT_HANDLING||{},t.CUSTOM_ELEMENT_HANDLING&&ie(t.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(bt.tagNameCheck=t.CUSTOM_ELEMENT_HANDLING.tagNameCheck),t.CUSTOM_ELEMENT_HANDLING&&ie(t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(bt.attributeNameCheck=t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),t.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(bt.allowCustomizedBuiltInElements=t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Et&&(kt=!1),Dt&&(Lt=!0),Ft&&(dt=T({},[...I]),gt=[],!0===Ft.html&&(T(dt,R),T(gt,O)),!0===Ft.svg&&(T(dt,S),T(gt,M),T(gt,C)),!0===Ft.svgFilters&&(T(dt,_),T(gt,M),T(gt,C)),!0===Ft.mathMl&&(T(dt,D),T(gt,N),T(gt,C))),t.ADD_TAGS&&(dt===ht&&(dt=A(dt)),T(dt,t.ADD_TAGS,te)),t.ADD_ATTR&&(gt===yt&&(gt=A(gt)),T(gt,t.ADD_ATTR,te)),t.ADD_URI_SAFE_ATTR&&T(Ht,t.ADD_URI_SAFE_ATTR,te),t.FORBID_CONTENTS&&(Pt===jt&&(Pt=A(Pt)),T(Pt,t.FORBID_CONTENTS,te)),Nt&&(dt["#text"]=!0),Rt&&T(dt,["html","head","body"]),dt.table&&(T(dt,["tbody"]),delete wt.tbody),t.TRUSTED_TYPES_POLICY){if("function"!=typeof t.TRUSTED_TYPES_POLICY.createHTML)throw x('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof t.TRUSTED_TYPES_POLICY.createScriptURL)throw x('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');Q=t.TRUSTED_TYPES_POLICY,Z=Q.createHTML("")}else void 0===Q&&(Q=$(U,a)),null!==Q&&"string"==typeof Z&&(Z=Q.createHTML(""));r&&r(t),ee=t}},re=T({},["mi","mo","mn","ms","mtext"]),ae=T({},["foreignobject","desc","title","annotation-xml"]),le=T({},["title","style","font","a","script"]),se=T({},S);T(se,_),T(se,L);const ce=T({},D);T(ce,z);const fe=function(t){let e=K(t);e&&e.tagName||(e={namespaceURI:Xt,tagName:"template"});const n=p(t.tagName),i=p(e.tagName);return!!Jt[t.namespaceURI]&&(t.namespaceURI===Gt?e.namespaceURI===Yt?"svg"===n:e.namespaceURI===qt?"svg"===n&&("annotation-xml"===i||re[i]):Boolean(se[n]):t.namespaceURI===qt?e.namespaceURI===Yt?"math"===n:e.namespaceURI===Gt?"math"===n&&ae[i]:Boolean(ce[n]):t.namespaceURI===Yt?!(e.namespaceURI===Gt&&!ae[i])&&!(e.namespaceURI===qt&&!re[i])&&!ce[n]&&(le[n]||!se[n]):!("application/xhtml+xml"!==Kt||!Jt[t.namespaceURI]))},ue=function(t){m(i.removed,{element:t});try{t.parentNode.removeChild(t)}catch(e){t.remove()}},me=function(t,e){try{m(i.removed,{attribute:e.getAttributeNode(t),from:e})}catch(t){m(i.removed,{attribute:null,from:e})}if(e.removeAttribute(t),"is"===t&&!gt[t])if(Lt||Dt)try{ue(e)}catch(t){}else try{e.setAttribute(t,"")}catch(t){}},pe=function(t){let e,n;if(_t)t="<remove></remove>"+t;else{const e=h(t,/^[\r\n\t ]+/);n=e&&e[0]}"application/xhtml+xml"===Kt&&Xt===Yt&&(t='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+t+"</body></html>");const i=Q?Q.createHTML(t):t;if(Xt===Yt)try{e=(new B).parseFromString(i,Kt)}catch(t){}if(!e||!e.documentElement){e=tt.createDocument(Xt,"template",null);try{e.documentElement.innerHTML=$t?Z:i}catch(t){}}const o=e.body||e.documentElement;return t&&n&&o.insertBefore(l.createTextNode(n),o.childNodes[0]||null),Xt===Yt?it.call(e,Rt?"html":"body")[0]:Rt?e.documentElement:o},de=function(t){return et.call(t.ownerDocument||t,t,F.SHOW_ELEMENT|F.SHOW_COMMENT|F.SHOW_TEXT,null,!1)},he=function(t){return t instanceof j&&("string"!=typeof t.nodeName||"string"!=typeof t.textContent||"function"!=typeof t.removeChild||!(t.attributes instanceof P)||"function"!=typeof t.removeAttribute||"function"!=typeof t.setAttribute||"string"!=typeof t.namespaceURI||"function"!=typeof t.insertBefore||"function"!=typeof t.hasChildNodes)},ge=function(t){return"object"==typeof v?t instanceof v:t&&"object"==typeof t&&"number"==typeof t.nodeType&&"string"==typeof t.nodeName},ye=function(t,e,n){rt[t]&&f(rt[t],(t=>{t.call(i,e,n,ee)}))},be=function(t){let e;if(ye("beforeSanitizeElements",t,null),he(t))return ue(t),!0;const n=te(t.nodeName);if(ye("uponSanitizeElement",t,{tagName:n,allowedTags:dt}),t.hasChildNodes()&&!ge(t.firstElementChild)&&(!ge(t.content)||!ge(t.content.firstElementChild))&&w(/<[/\w]/g,t.innerHTML)&&w(/<[/\w]/g,t.textContent))return ue(t),!0;if(!dt[n]||wt[n]){if(!wt[n]&&xe(n)){if(bt.tagNameCheck instanceof RegExp&&w(bt.tagNameCheck,n))return!1;if(bt.tagNameCheck instanceof Function&&bt.tagNameCheck(n))return!1}if(Nt&&!Pt[n]){const e=K(t)||t.parentNode,n=V(t)||t.childNodes;if(n&&e)for(let i=n.length-1;i>=0;--i)e.insertBefore(q(n[i],!0),J(t))}return ue(t),!0}return t instanceof k&&!fe(t)?(ue(t),!0):"noscript"!==n&&"noembed"!==n||!w(/<\/no(script|embed)/i,t.innerHTML)?(Et&&3===t.nodeType&&(e=t.textContent,e=g(e,at," "),e=g(e,lt," "),e=g(e,st," "),t.textContent!==e&&(m(i.removed,{element:t.cloneNode()}),t.textContent=e)),ye("afterSanitizeElements",t,null),!1):(ue(t),!0)},we=function(t,e,n){if(It&&("id"===e||"name"===e)&&(n in l||n in ne))return!1;if(kt&&!xt[e]&&w(ct,e));else if(vt&&w(ft,e));else if(!gt[e]||xt[e]){if(!(xe(t)&&(bt.tagNameCheck instanceof RegExp&&w(bt.tagNameCheck,t)||bt.tagNameCheck instanceof Function&&bt.tagNameCheck(t))&&(bt.attributeNameCheck instanceof RegExp&&w(bt.attributeNameCheck,e)||bt.attributeNameCheck instanceof Function&&bt.attributeNameCheck(e))||"is"===e&&bt.allowCustomizedBuiltInElements&&(bt.tagNameCheck instanceof RegExp&&w(bt.tagNameCheck,n)||bt.tagNameCheck instanceof Function&&bt.tagNameCheck(n))))return!1}else if(Ht[e]);else if(w(pt,g(n,mt,"")));else if("src"!==e&&"xlink:href"!==e&&"href"!==e||"script"===t||0!==y(n,"data:")||!Bt[t])if(Tt&&!w(ut,g(n,mt,"")));else if(n)return!1;return!0},xe=function(t){return t.indexOf("-")>0},ve=function(t){let e,n,o,r;ye("beforeSanitizeAttributes",t,null);const{attributes:a}=t;if(!a)return;const l={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:gt};for(r=a.length;r--;){e=a[r];const{name:s,namespaceURI:c}=e;if(n="value"===s?e.value:b(e.value),o=te(s),l.attrName=o,l.attrValue=n,l.keepAttr=!0,l.forceKeepAttr=void 0,ye("uponSanitizeAttribute",t,l),n=l.attrValue,l.forceKeepAttr)continue;if(me(s,t),!l.keepAttr)continue;if(!At&&w(/\/>/i,n)){me(s,t);continue}Et&&(n=g(n,at," "),n=g(n,lt," "),n=g(n,st," "));const f=te(t.nodeName);if(we(f,o,n)){if(!Ot||"id"!==o&&"name"!==o||(me(s,t),n=Mt+n),Q&&"object"==typeof U&&"function"==typeof U.getAttributeType)if(c);else switch(U.getAttributeType(f,o)){case"TrustedHTML":n=Q.createHTML(n);break;case"TrustedScriptURL":n=Q.createScriptURL(n)}try{c?t.setAttributeNS(c,s,n):t.setAttribute(s,n),u(i.removed)}catch(t){}}}ye("afterSanitizeAttributes",t,null)},ke=function t(e){let n;const i=de(e);for(ye("beforeSanitizeShadowDOM",e,null);n=i.nextNode();)ye("uponSanitizeShadowNode",n,null),be(n)||(n.content instanceof s&&t(n.content),ve(n));ye("afterSanitizeShadowDOM",e,null)};return i.sanitize=function(t){let e,n,r,a,l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if($t=!t,$t&&(t="\x3c!--\x3e"),"string"!=typeof t&&!ge(t)){if("function"!=typeof t.toString)throw x("toString is not a function");if("string"!=typeof(t=t.toString()))throw x("dirty is not a string, aborting")}if(!i.isSupported)return t;if(St||oe(l),i.removed=[],"string"==typeof t&&(Ct=!1),Ct){if(t.nodeName){const e=te(t.nodeName);if(!dt[e]||wt[e])throw x("root node is forbidden and cannot be sanitized in-place")}}else if(t instanceof v)e=pe("\x3c!----\x3e"),n=e.ownerDocument.importNode(t,!0),1===n.nodeType&&"BODY"===n.nodeName||"HTML"===n.nodeName?e=n:e.appendChild(n);else{if(!Lt&&!Et&&!Rt&&-1===t.indexOf("<"))return Q&&zt?Q.createHTML(t):t;if(e=pe(t),!e)return Lt?null:zt?Z:""}e&&_t&&ue(e.firstChild);const c=de(Ct?t:e);for(;r=c.nextNode();)be(r)||(r.content instanceof s&&ke(r.content),ve(r));if(Ct)return t;if(Lt){if(Dt)for(a=nt.call(e.ownerDocument);e.firstChild;)a.appendChild(e.firstChild);else a=e;return(gt.shadowroot||gt.shadowrootmod)&&(a=ot.call(o,a,!0)),a}let f=Rt?e.outerHTML:e.innerHTML;return Rt&&dt["!doctype"]&&e.ownerDocument&&e.ownerDocument.doctype&&e.ownerDocument.doctype.name&&w(G,e.ownerDocument.doctype.name)&&(f="<!DOCTYPE "+e.ownerDocument.doctype.name+">\n"+f),Et&&(f=g(f,at," "),f=g(f,lt," "),f=g(f,st," ")),Q&&zt?Q.createHTML(f):f},i.setConfig=function(t){oe(t),St=!0},i.clearConfig=function(){ee=null,St=!1},i.isValidAttribute=function(t,e,n){ee||oe({});const i=te(t),o=te(e);return we(i,o,n)},i.addHook=function(t,e){"function"==typeof e&&(rt[t]=rt[t]||[],m(rt[t],e))},i.removeHook=function(t){if(rt[t])return u(rt[t])},i.removeHooks=function(t){rt[t]&&(rt[t]=[])},i.removeAllHooks=function(){rt={}},i}()}()}(i={path:undefined,exports:{},require:function(){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}()}}),i.exports);const r={CUSTOM_ELEMENT_HANDLING:{tagNameCheck:function(t){return RegExp(/^tttx-/).exec(t)},attributeNameCheck:function(){return!0},allowCustomizedBuiltInElements:!1}},a=class{constructor(n){t(this,n),this.rowClick=e(this,"listRowClick",7),this.data=void 0,this.name=void 0}onRowClickHandler(t){t.clickable&&t.rowData&&this.rowClick.emit({name:this.name,data:t.rowData})}renderListItem(t){const e=o.sanitize(t.element,r);return n("li",{class:"item "+(t.clickable?"clickable":""),onClick:()=>{this.onRowClickHandler(t)}},t.element&&n("span",{class:"item-content",innerHTML:e}),t.icon&&n("tttx-icon",{class:"align-right ",icon:t.icon}))}render(){if(this.data)return this._data="string"==typeof this.data?JSON.parse(this.data):this.data,n("ul",{class:"list"},this._data.map((t=>this.renderListItem(t))))}};a.style='.material-symbols-rounded{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.material-symbols-rounded{font-family:"Material Symbols Rounded", sans-serif;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color:#9e9e9e}:host{display:flex;flex-direction:column}.list{margin:0;padding:0}.item{list-style:none;margin:0;padding:8px;border-bottom:1px solid #d5d5d5;min-height:36px;display:flex;align-items:center}.item:first-of-type{border-top:1px solid #d5d5d5}.item.clickable:hover{cursor:pointer}.item.clickable:active{background-color:#e6e6e6}.align-right{margin-left:auto}.item-content{display:flex;align-items:center}';export{a as tttx_list}
@@ -1 +1 @@
1
- import{r as t,c as i,h as n,H as s}from"./p-bbb7dbf7.js";const o=class{constructor(n){t(this,n),this.valueChanged=i(this,"valueChanged",7),this.focusChanged=i(this,"focusChanged",7),this.blurChanged=i(this,"blurChanged",7),this.invalidChanged=i(this,"invalidChanged",7),this.label=void 0,this.showerrormsg=void 0,this.errormsg=void 0,this.iconleft=void 0,this.iconright=void 0,this.inputAutocapitalize=void 0,this.inputAutofocus=void 0,this.inputKeyhint=void 0,this.inputIndex=void 0,this.inputTitle=void 0,this.autocomplete=void 0,this.checked=void 0,this.disabled=void 0,this.max=void 0,this.maxlength=void 0,this.min=void 0,this.minlength=void 0,this.name=void 0,this.pattern=void 0,this.placeholder=void 0,this.readonly=void 0,this.required=void 0,this.step=void 0,this.type="text",this.value=void 0}handleChange(t){const i=t.target;this.value=i.value,this.valueChanged.emit(i.value)}handleFocus(t){this.focusChanged.emit(t.target.value)}handleBlur(t){this.blurChanged.emit(t.target.value)}handleInvalid(t){t.preventDefault(),this.invalidChanged.emit(t.target.value)}render(){const t=["standalone",this.showerrormsg?"invalid":""].join(" ");return n(s,null,n("label",{class:"inputBlock"},this.label,this.required?"":n("span",{class:"optional"}," (optional)"),this.iconleft&&n("div",{class:"icon-left"},n("tttx-icon",{icon:this.iconleft,color:"grey"})),n("input",{class:t,autocapitalize:this.inputAutocapitalize,autofocus:this.inputAutofocus,enterkeyhint:this.inputKeyhint,tabindex:this.inputIndex,title:this.inputTitle,autocomplete:this.autocomplete,checked:this.checked,disabled:this.disabled,max:this.max,maxlength:this.maxlength,min:this.min,minlength:this.minlength,name:this.name,pattern:this.pattern,placeholder:this.placeholder,readonly:this.readonly,required:this.required,step:this.step,type:this.type,value:this.value,onBlur:this.handleBlur.bind(this),onFocus:this.handleFocus.bind(this),onInput:this.handleChange.bind(this),onInvalid:this.handleInvalid.bind(this)}),this.iconright&&n("div",{class:"icon-right"},n("tttx-icon",{icon:this.iconright,color:"grey"})),n("span",{class:["errorBubble",this.showerrormsg&&this.errormsg?"visible":""].join(" ")},n("span",{class:"material-symbols-rounded validationicon"},"warning")," ",this.errormsg)))}};o.style='.material-symbols-rounded.sc-tttx-standalone-input{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.material-symbols-rounded.sc-tttx-standalone-input{font-family:"Material Symbols Rounded", sans-serif;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color:#9e9e9e}.icon-left.sc-tttx-standalone-input,.icon-right.sc-tttx-standalone-input{flex-basis:24px}.icon-left.sc-tttx-standalone-input span.sc-tttx-standalone-input,.icon-right.sc-tttx-standalone-input span.sc-tttx-standalone-input{font-size:24px;line-height:24px;text-align:center;display:block;width:24px;height:24px;margin-top:4px}.icon-left.sc-tttx-standalone-input span.sc-tttx-standalone-input{margin-left:4px}.icon-right.sc-tttx-standalone-input span.sc-tttx-standalone-input{margin-right:4px}.icon-right.sc-tttx-standalone-input{margin-top:5px;margin-right:4px}.icon-left.sc-tttx-standalone-input{margin-top:5px;margin-left:4px}.iconleft.sc-tttx-standalone-input .input.sc-tttx-standalone-input{padding-left:4px}.iconright.sc-tttx-standalone-input .input.sc-tttx-standalone-input{padding-right:4px}.focused.sc-tttx-standalone-input{border-color:#1479c6}.errormsg.sc-tttx-standalone-input{display:flex;justify-content:center;align-items:center;float:left;margin-bottom:16px;box-sizing:border-box;background-color:transparent;height:26px;font-size:14px;border-radius:none;z-index:2;color:#dc0000}.errormsg.sc-tttx-standalone-input .validationicon.sc-tttx-standalone-input{width:16px;height:16px;font-size:16px;margin-right:4px;vertical-align:middle;color:#dc0000}.danger.sc-tttx-standalone-input{color:#dc0000}.optional.sc-tttx-standalone-input{color:#757575;font-weight:normal}label.inputBlock.sc-tttx-standalone-input{display:block;position:relative;line-height:21px}label.sc-tttx-standalone-input{font-weight:500;font-size:16px}input.sc-tttx-standalone-input:not([type=submit]){font-family:"Roboto", serif;box-sizing:border-box;width:100%;height:36px;padding:0 16px;font-size:16px;border:1px solid #d5d5d5;border-radius:4px;margin-top:4px}input[type=date].sc-tttx-standalone-input{background:white;display:block;min-width:calc(100% - 18px);line-height:37px}input.invalid.sc-tttx-standalone-input:invalid,input.standalone.invalid.sc-tttx-standalone-input{border:1px solid #dc0000}input.sc-tttx-standalone-input~.errorBubble.sc-tttx-standalone-input{min-height:27px;position:relative;font-size:14px;font-weight:normal;width:100%;font-family:"Roboto", sans-serif;color:#dc0000;display:flex;align-content:center;align-items:center;justify-items:center}input.sc-tttx-standalone-input~.errorBubble.sc-tttx-standalone-input:not(.visible){visibility:hidden}input.sc-tttx-standalone-input~.errorBubble.sc-tttx-standalone-input span.sc-tttx-standalone-input{color:#dc0000;font-size:16px;margin-right:4px;height:16px}input.invalid.sc-tttx-standalone-input:invalid~.errorBubble.sc-tttx-standalone-input{position:relative;font-size:14px;font-weight:normal;width:100%;font-family:"Roboto", sans-serif;color:#dc0000;visibility:visible}input.sc-tttx-standalone-input:focus{border-color:#1479c6}.sc-tttx-standalone-input-h{display:block}';export{o as tttx_standalone_input}
1
+ import{r as t,c as i,h as n,H as s}from"./p-62869344.js";const o=class{constructor(n){t(this,n),this.valueChanged=i(this,"valueChanged",7),this.focusChanged=i(this,"focusChanged",7),this.blurChanged=i(this,"blurChanged",7),this.invalidChanged=i(this,"invalidChanged",7),this.label=void 0,this.showerrormsg=void 0,this.errormsg=void 0,this.iconleft=void 0,this.iconright=void 0,this.inputAutocapitalize=void 0,this.inputAutofocus=void 0,this.inputKeyhint=void 0,this.inputIndex=void 0,this.inputTitle=void 0,this.autocomplete=void 0,this.checked=void 0,this.disabled=void 0,this.max=void 0,this.maxlength=void 0,this.min=void 0,this.minlength=void 0,this.name=void 0,this.pattern=void 0,this.placeholder=void 0,this.readonly=void 0,this.required=void 0,this.step=void 0,this.type="text",this.value=void 0}handleChange(t){const i=t.target;this.value=i.value,this.valueChanged.emit(i.value)}handleFocus(t){this.focusChanged.emit(t.target.value)}handleBlur(t){this.blurChanged.emit(t.target.value)}handleInvalid(t){t.preventDefault(),this.invalidChanged.emit(t.target.value)}render(){const t=["standalone",this.showerrormsg?"invalid":""].join(" ");return n(s,null,n("label",{class:"inputBlock"},this.label,this.required?"":n("span",{class:"optional"}," (optional)"),this.iconleft&&n("div",{class:"icon-left"},n("tttx-icon",{icon:this.iconleft,color:"grey"})),n("input",{class:t,autocapitalize:this.inputAutocapitalize,autofocus:this.inputAutofocus,enterkeyhint:this.inputKeyhint,tabindex:this.inputIndex,title:this.inputTitle,autocomplete:this.autocomplete,checked:this.checked,disabled:this.disabled,max:this.max,maxlength:this.maxlength,min:this.min,minlength:this.minlength,name:this.name,pattern:this.pattern,placeholder:this.placeholder,readonly:this.readonly,required:this.required,step:this.step,type:this.type,value:this.value,onBlur:this.handleBlur.bind(this),onFocus:this.handleFocus.bind(this),onInput:this.handleChange.bind(this),onInvalid:this.handleInvalid.bind(this)}),this.iconright&&n("div",{class:"icon-right"},n("tttx-icon",{icon:this.iconright,color:"grey"})),n("span",{class:["errorBubble",this.showerrormsg&&this.errormsg?"visible":""].join(" ")},n("span",{class:"material-symbols-rounded validationicon"},"warning")," ",this.errormsg)))}};o.style='.material-symbols-rounded.sc-tttx-standalone-input{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.material-symbols-rounded.sc-tttx-standalone-input{font-family:"Material Symbols Rounded", sans-serif;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color:#9e9e9e}.icon-left.sc-tttx-standalone-input,.icon-right.sc-tttx-standalone-input{flex-basis:24px}.icon-left.sc-tttx-standalone-input span.sc-tttx-standalone-input,.icon-right.sc-tttx-standalone-input span.sc-tttx-standalone-input{font-size:24px;line-height:24px;text-align:center;display:block;width:24px;height:24px;margin-top:4px}.icon-left.sc-tttx-standalone-input span.sc-tttx-standalone-input{margin-left:4px}.icon-right.sc-tttx-standalone-input span.sc-tttx-standalone-input{margin-right:4px}.icon-right.sc-tttx-standalone-input{margin-top:5px;margin-right:4px}.icon-left.sc-tttx-standalone-input{margin-top:5px;margin-left:4px}.iconleft.sc-tttx-standalone-input .input.sc-tttx-standalone-input{padding-left:4px}.iconright.sc-tttx-standalone-input .input.sc-tttx-standalone-input{padding-right:4px}.focused.sc-tttx-standalone-input{border-color:#1479c6}.errormsg.sc-tttx-standalone-input{display:flex;justify-content:center;align-items:center;float:left;margin-bottom:16px;box-sizing:border-box;background-color:transparent;height:26px;font-size:14px;border-radius:none;z-index:2;color:#dc0000}.errormsg.sc-tttx-standalone-input .validationicon.sc-tttx-standalone-input{width:16px;height:16px;font-size:16px;margin-right:4px;vertical-align:middle;color:#dc0000}.danger.sc-tttx-standalone-input{color:#dc0000}.optional.sc-tttx-standalone-input{color:#757575;font-weight:normal}label.inputBlock.sc-tttx-standalone-input{display:block;position:relative;line-height:21px}label.sc-tttx-standalone-input{font-weight:500;font-size:16px}input.sc-tttx-standalone-input:not([type=submit]){font-family:"Roboto", serif;box-sizing:border-box;width:100%;height:36px;padding:0 16px;font-size:16px;border:1px solid #d5d5d5;border-radius:4px;margin-top:4px}input[type=date].sc-tttx-standalone-input{background:white;display:block;min-width:calc(100% - 18px);line-height:37px}input.invalid.sc-tttx-standalone-input:invalid,input.standalone.invalid.sc-tttx-standalone-input{border:1px solid #dc0000}input.sc-tttx-standalone-input~.errorBubble.sc-tttx-standalone-input{min-height:27px;position:relative;font-size:14px;font-weight:normal;width:100%;font-family:"Roboto", sans-serif;color:#dc0000;display:flex;align-content:center;align-items:center;justify-items:center}input.sc-tttx-standalone-input~.errorBubble.sc-tttx-standalone-input:not(.visible){visibility:hidden}input.sc-tttx-standalone-input~.errorBubble.sc-tttx-standalone-input span.sc-tttx-standalone-input{color:#dc0000;font-size:16px;margin-right:4px;height:16px}input.invalid.sc-tttx-standalone-input:invalid~.errorBubble.sc-tttx-standalone-input{position:relative;font-size:14px;font-weight:normal;width:100%;font-family:"Roboto", sans-serif;color:#dc0000;visibility:visible}input.sc-tttx-standalone-input:focus{border-color:#1479c6}.sc-tttx-standalone-input-h{display:block}';export{o as tttx_standalone_input}
@@ -1 +1 @@
1
- import{p as t,b as e}from"./p-bbb7dbf7.js";export{s as setNonce}from"./p-bbb7dbf7.js";(()=>{const e=import.meta.url,n={};return""!==e&&(n.resourcesUrl=new URL(".",e).href),t(n)})().then((t=>e([["p-046868d9",[[1,"tttx-button",{notext:[4],icon:[1],iconposition:[1],design:[1]}]]],["p-a4d9929a",[[2,"tttx-standalone-input",{label:[1],showerrormsg:[4],errormsg:[1],iconleft:[1],iconright:[1],inputAutocapitalize:[1,"input-autocapitalize"],inputAutofocus:[4,"input-autofocus"],inputKeyhint:[1,"input-keyhint"],inputIndex:[8,"input-index"],inputTitle:[1,"input-title"],autocomplete:[1],checked:[4],disabled:[4],max:[8],maxlength:[8],min:[8],minlength:[8],name:[1],pattern:[1],placeholder:[1],readonly:[8],required:[4],step:[8],type:[1],value:[1032]}]]],["p-ad637dde",[[1,"tttx-keyvalue-block",{keyvalues:[8],horizontal:[4]}]]],["p-1adb2b75",[[1,"tttx-loading-spinner",{loadingMessage:[1028,"loading-message"],size:[1025]}]]],["p-495cf4b3",[[1,"tttx-icon",{icon:[1],color:[1]}]]]],t)));
1
+ import{p as t,b as e}from"./p-62869344.js";(()=>{const e=import.meta.url,i={};return""!==e&&(i.resourcesUrl=new URL(".",e).href),t(i)})().then((t=>e([["p-92465671",[[1,"tttx-button",{notext:[4],icon:[1],iconposition:[1],design:[1]}]]],["p-cd1565e0",[[1,"tttx-list",{data:[1025],name:[1]}]]],["p-f36c611b",[[2,"tttx-standalone-input",{label:[1],showerrormsg:[4],errormsg:[1],iconleft:[1],iconright:[1],inputAutocapitalize:[1,"input-autocapitalize"],inputAutofocus:[4,"input-autofocus"],inputKeyhint:[1,"input-keyhint"],inputIndex:[8,"input-index"],inputTitle:[1,"input-title"],autocomplete:[1],checked:[4],disabled:[4],max:[8],maxlength:[8],min:[8],minlength:[8],name:[1],pattern:[1],placeholder:[1],readonly:[8],required:[4],step:[8],type:[1],value:[1032]}]]],["p-4ec3aee3",[[1,"tttx-form",{formschema:[1032],submitValue:[1032,"submit-value"]}]]],["p-a0179cb1",[[1,"tttx-keyvalue-block",{keyvalues:[8],horizontal:[4]}]]],["p-1b015a9d",[[1,"tttx-loading-spinner",{loadingMessage:[1028,"loading-message"],size:[1025]}]]],["p-ae71c5ef",[[1,"tttx-icon",{icon:[1],color:[1]}]]]],t)));
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Sets the error state of an input field by updating its class and error message.
3
+ * If an error was detected, it sets the input field's class to "invalid" and
4
+ * displays the error message in an error bubble. If no error was detected,
5
+ * it removes the "invalid" class from the input field and clears the error bubble.
6
+ *
7
+ * @param {HTMLInputElement} target - The input field to update.
8
+ * @param {boolean} hasError - Whether an error was detected in the field.
9
+ * @param {string} errorMessage - The error message to display (if any).
10
+ * @return {void}
11
+ */
12
+ declare function setErrorState(target: any, hasError: any, errorMessage: any): void;
13
+ export default setErrorState;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Validates the input field on focusout event by checking its validity state,
3
+ * sets an error message if there's an issue, and emits a "dataChanged" event to
4
+ * the parent component with the field name and its new value.
5
+ *
6
+ * @param {Event} event - The focusout event triggered by the input field.
7
+ * @return {void}
8
+ */
9
+ declare function validityCheck(event: {
10
+ target: any;
11
+ preventDefault: Function;
12
+ }): {
13
+ target: any;
14
+ hasError: boolean;
15
+ errorMessage: string;
16
+ };
17
+ export default validityCheck;
@@ -0,0 +1,114 @@
1
+ import { EventEmitter } from '../../../stencil-public-runtime';
2
+ import { ChangeEvent } from 'react';
3
+ export declare class TttxForm {
4
+ private fieldset;
5
+ private template;
6
+ private _formSchema;
7
+ formschema: any;
8
+ submitValue: any;
9
+ dataSubmitted: EventEmitter<FormData>;
10
+ dataChanged: EventEmitter<{
11
+ name: string;
12
+ value: any;
13
+ }>;
14
+ onFormSchemaChange(newValue: any): void;
15
+ /**
16
+ * Handles the focus event for a form field and emits a "dataChanged" event
17
+ * to the parent component with the field name and its new value.
18
+ *
19
+ * @param {ChangeEvent} event - The focus event triggered by the field.
20
+ * @return {void}
21
+ */
22
+ fieldChanged(event: ChangeEvent): void;
23
+ /**
24
+ * Submits the form data to the server.
25
+ *
26
+ * @param {SubmitEvent} event - The event object for the form submission.
27
+ * @returns {void}
28
+ *
29
+ * @example
30
+ * const form = document.getElementById('myForm');
31
+ * form.addEventListener('submit', (event) => {
32
+ * doSubmit(event);
33
+ * });
34
+ */
35
+ doSubmit(event: SubmitEvent): void;
36
+ componentWillLoad(): void;
37
+ componentWillRender(): void;
38
+ /**
39
+ * Creates a new HTMLInputElement with the specified name, type, and placeholder (if any),
40
+ * and sets its autocomplete and autocapitalization properties to off.
41
+ *
42
+ * @param {string} formKey - The name of the input field, as specified in the form schema.
43
+ * @param {Object} formProperties - An object containing additional properties for the input field, such as its type and placeholder value.
44
+ * @param {string} formProperties.type - The type of the input field (e.g., "text", "email", "number", etc.).
45
+ * @param {string} [formProperties.placeholder] - An optional placeholder value to display in the input field.
46
+ * @return {HTMLInputElement} - The new input element.
47
+ */
48
+ createInput(formKey: any, formProperties: any): HTMLInputElement;
49
+ /**
50
+ * Applies validation attributes to an input element based on the specified validation object.
51
+ * If a certain property is present in the object, it will set the corresponding attribute on
52
+ * the input element (e.g., "required" will set the "required" and "data-required" attributes,
53
+ * "pattern" will set the "pattern" and "data-pattern" attributes, etc.).
54
+ *
55
+ * @param {HTMLInputElement} input - The input element to apply validation attributes to.
56
+ * @param {Object} validation - An object containing the validation rules for the input field.
57
+ * @param {Object} [validation.required] - An object containing a "message" property to display if the field is required.
58
+ * @param {Object} [validation.pattern] - An object containing a "pattern" property to match against the field value, and a "message" property to display if the pattern doesn't match.
59
+ * @param {Object} [validation.badInput] - An object containing a "message" property to display if the field value is invalid.
60
+ * @param {Object} [validation.minmax] - An object containing "min" and "max" properties to validate the field value against, and a "message" property to display if the value is out of range.
61
+ * @param {string} [validation.maxlength] - The maximum length of the input field.
62
+ * @return {void}
63
+ */
64
+ applyValidation(input: any, validation: any): void;
65
+ createErrorBubble(): HTMLDivElement;
66
+ /**
67
+ * Creates a new <label> element with the "inputBlock" class and the specified label text,
68
+ * and appends the input element and error bubble element to it. If the form property has
69
+ * no validation object, it adds an "optional" span element to the label.
70
+ *
71
+ * @param {Object} formProperties - An object containing properties for the form field, including its label text and validation rules.
72
+ * @param {HTMLInputElement} input - The input element to associate with the label.
73
+ * @param {HTMLDivElement} errorBubble - The error bubble element to display error messages in.
74
+ * @return {HTMLLabelElement} - The new label element.
75
+ */
76
+ createLabel(formProperties: any, input: any, errorBubble: any): HTMLLabelElement;
77
+ /**
78
+ * Creates a new <input> element with the "submit" type, the "primary-blue" class, and the
79
+ * specified label text (i.e., "Save" by default), and returns the new submit button element.
80
+ *
81
+ * @return {HTMLInputElement} - The new submit button element.
82
+ */
83
+ createSubmitButton(): HTMLInputElement;
84
+ /**
85
+ * Populates the form template with input fields and labels based on the properties of the
86
+ * current form schema. For each property in the schema, it creates an input element, applies
87
+ * any validation rules to it, creates an error bubble and label element, and appends them
88
+ * to the form template. Finally, it creates and appends a submit button element to the form.
89
+ *
90
+ * @return {void}
91
+ */
92
+ populateFormFromSchema(): void;
93
+ /**
94
+ * Clones the form template and binds event listeners to its input elements. First, it checks if
95
+ * there is a form schema present. If so, it clones the template's content, binds events to form
96
+ * input elements, and appends the cloned form elements to the fieldset. The event listeners include
97
+ * "oninvalid" (to check input validity on submit), "onblur" (to check input validity on blur),
98
+ * "onkeyup" (to handle changes in input fields), and "onchange" (to handle changes in select fields).
99
+ *
100
+ * @return {void}
101
+ */
102
+ componentDidRender(): void;
103
+ validityCheckWrapper(event: any): void;
104
+ /**
105
+ * Renders the component's template as a form element with a fieldset container. The form's
106
+ * "onSubmit" event is bound to the "doSubmit" function, which handles the form submission
107
+ * and emits a "dataSubmitted" event with the form data. The fieldset element is assigned
108
+ * to the "fieldset" instance variable using a ref, so it can be populated with form elements
109
+ * later on.
110
+ *
111
+ * @return {JSX.Element} - The rendered form template as a JSX element.
112
+ */
113
+ render(): any;
114
+ }
@@ -0,0 +1,13 @@
1
+ declare const _default: {
2
+ title: string;
3
+ component: string;
4
+ parameters: {
5
+ actions: {
6
+ handles: string[];
7
+ };
8
+ };
9
+ decorators: import("@storybook/types").Addon_DecoratorFunction<unknown>[];
10
+ };
11
+ export default _default;
12
+ export declare const ExampleFormFromJSON: () => string;
13
+ export declare const SingleFormItem: () => string;
@@ -0,0 +1,6 @@
1
+ export interface ListItem {
2
+ element: string;
3
+ icon: string;
4
+ clickable: boolean;
5
+ rowData: any;
6
+ }
@@ -0,0 +1,11 @@
1
+ import { EventEmitter } from '../../../stencil-public-runtime';
2
+ import { ListItem } from './interfaces';
3
+ export declare class TttxList {
4
+ data: string | ListItem[];
5
+ name: string;
6
+ rowClick: EventEmitter;
7
+ private _data;
8
+ onRowClickHandler(item: ListItem): void;
9
+ renderListItem(item: ListItem): any;
10
+ render(): any;
11
+ }
@@ -0,0 +1,14 @@
1
+ declare const _default: {
2
+ title: string;
3
+ component: string;
4
+ parameters: {
5
+ actions: {
6
+ handles: string[];
7
+ };
8
+ };
9
+ decorators: import("@storybook/types").Addon_DecoratorFunction<unknown>[];
10
+ };
11
+ export default _default;
12
+ export declare const BasicStringList: any;
13
+ export declare const BasicObjectList: any;
14
+ export declare const BasicClickableList: any;
@@ -1,10 +1,10 @@
1
1
  import { EventEmitter } from '../../../stencil-public-runtime';
2
- export type DateSyntax = `${number}${number}${number}${number}-${number}${number}-${number}${number}`;
3
- export type MonthSyntax = `${number}${number}${number}${number}-${number}${number}`;
4
- export type WeekSyntax = `${number}${number}${number}${number}-W${number}${number}`;
5
- export type TimeSyntax = `${number}${number}:${number}${number}`;
6
- export type DateTimeLocalSyntax = `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}`;
7
- export type MinMaxDates = DateSyntax | MonthSyntax | WeekSyntax | TimeSyntax | DateTimeLocalSyntax;
2
+ export declare type DateSyntax = `${number}${number}${number}${number}-${number}${number}-${number}${number}`;
3
+ export declare type MonthSyntax = `${number}${number}${number}${number}-${number}${number}`;
4
+ export declare type WeekSyntax = `${number}${number}${number}${number}-W${number}${number}`;
5
+ export declare type TimeSyntax = `${number}${number}:${number}${number}`;
6
+ export declare type DateTimeLocalSyntax = `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}`;
7
+ export declare type MinMaxDates = DateSyntax | MonthSyntax | WeekSyntax | TimeSyntax | DateTimeLocalSyntax;
8
8
  export declare class TttxInput {
9
9
  label: string;
10
10
  showerrormsg: boolean;
@@ -5,6 +5,7 @@
5
5
  * It contains typing information for all components that exist in this project.
6
6
  */
7
7
  import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
+ import { ListItem } from "./components/molecules/tttx-list/interfaces";
8
9
  import { MinMaxDates } from "./components/molecules/tttx-standalone-input/tttx-standalone-input";
9
10
  export namespace Components {
10
11
  interface TttxButton {
@@ -13,6 +14,10 @@ export namespace Components {
13
14
  "iconposition": 'left' | 'right';
14
15
  "notext": boolean;
15
16
  }
17
+ interface TttxForm {
18
+ "formschema": any;
19
+ "submitValue": any;
20
+ }
16
21
  interface TttxIcon {
17
22
  "color": string;
18
23
  "icon": string;
@@ -21,6 +26,10 @@ export namespace Components {
21
26
  "horizontal": boolean;
22
27
  "keyvalues": any | any[] | string;
23
28
  }
29
+ interface TttxList {
30
+ "data": string | ListItem[];
31
+ "name": string;
32
+ }
24
33
  interface TttxLoadingSpinner {
25
34
  "loadingMessage": boolean;
26
35
  "size": 'small' | 'large';
@@ -61,6 +70,14 @@ export namespace Components {
61
70
  "value": string | number;
62
71
  }
63
72
  }
73
+ export interface TttxFormCustomEvent<T> extends CustomEvent<T> {
74
+ detail: T;
75
+ target: HTMLTttxFormElement;
76
+ }
77
+ export interface TttxListCustomEvent<T> extends CustomEvent<T> {
78
+ detail: T;
79
+ target: HTMLTttxListElement;
80
+ }
64
81
  export interface TttxStandaloneInputCustomEvent<T> extends CustomEvent<T> {
65
82
  detail: T;
66
83
  target: HTMLTttxStandaloneInputElement;
@@ -72,6 +89,12 @@ declare global {
72
89
  prototype: HTMLTttxButtonElement;
73
90
  new (): HTMLTttxButtonElement;
74
91
  };
92
+ interface HTMLTttxFormElement extends Components.TttxForm, HTMLStencilElement {
93
+ }
94
+ var HTMLTttxFormElement: {
95
+ prototype: HTMLTttxFormElement;
96
+ new (): HTMLTttxFormElement;
97
+ };
75
98
  interface HTMLTttxIconElement extends Components.TttxIcon, HTMLStencilElement {
76
99
  }
77
100
  var HTMLTttxIconElement: {
@@ -84,6 +107,12 @@ declare global {
84
107
  prototype: HTMLTttxKeyvalueBlockElement;
85
108
  new (): HTMLTttxKeyvalueBlockElement;
86
109
  };
110
+ interface HTMLTttxListElement extends Components.TttxList, HTMLStencilElement {
111
+ }
112
+ var HTMLTttxListElement: {
113
+ prototype: HTMLTttxListElement;
114
+ new (): HTMLTttxListElement;
115
+ };
87
116
  interface HTMLTttxLoadingSpinnerElement extends Components.TttxLoadingSpinner, HTMLStencilElement {
88
117
  }
89
118
  var HTMLTttxLoadingSpinnerElement: {
@@ -98,8 +127,10 @@ declare global {
98
127
  };
99
128
  interface HTMLElementTagNameMap {
100
129
  "tttx-button": HTMLTttxButtonElement;
130
+ "tttx-form": HTMLTttxFormElement;
101
131
  "tttx-icon": HTMLTttxIconElement;
102
132
  "tttx-keyvalue-block": HTMLTttxKeyvalueBlockElement;
133
+ "tttx-list": HTMLTttxListElement;
103
134
  "tttx-loading-spinner": HTMLTttxLoadingSpinnerElement;
104
135
  "tttx-standalone-input": HTMLTttxStandaloneInputElement;
105
136
  }
@@ -111,6 +142,12 @@ declare namespace LocalJSX {
111
142
  "iconposition"?: 'left' | 'right';
112
143
  "notext"?: boolean;
113
144
  }
145
+ interface TttxForm {
146
+ "formschema"?: any;
147
+ "onDataChanged"?: (event: TttxFormCustomEvent<{ name: string, value: any }>) => void;
148
+ "onDataSubmitted"?: (event: TttxFormCustomEvent<FormData>) => void;
149
+ "submitValue"?: any;
150
+ }
114
151
  interface TttxIcon {
115
152
  "color"?: string;
116
153
  "icon"?: string;
@@ -119,6 +156,11 @@ declare namespace LocalJSX {
119
156
  "horizontal"?: boolean;
120
157
  "keyvalues"?: any | any[] | string;
121
158
  }
159
+ interface TttxList {
160
+ "data"?: string | ListItem[];
161
+ "name"?: string;
162
+ "onListRowClick"?: (event: TttxListCustomEvent<any>) => void;
163
+ }
122
164
  interface TttxLoadingSpinner {
123
165
  "loadingMessage"?: boolean;
124
166
  "size"?: 'small' | 'large';
@@ -164,8 +206,10 @@ declare namespace LocalJSX {
164
206
  }
165
207
  interface IntrinsicElements {
166
208
  "tttx-button": TttxButton;
209
+ "tttx-form": TttxForm;
167
210
  "tttx-icon": TttxIcon;
168
211
  "tttx-keyvalue-block": TttxKeyvalueBlock;
212
+ "tttx-list": TttxList;
169
213
  "tttx-loading-spinner": TttxLoadingSpinner;
170
214
  "tttx-standalone-input": TttxStandaloneInput;
171
215
  }
@@ -175,8 +219,10 @@ declare module "@stencil/core" {
175
219
  export namespace JSX {
176
220
  interface IntrinsicElements {
177
221
  "tttx-button": LocalJSX.TttxButton & JSXBase.HTMLAttributes<HTMLTttxButtonElement>;
222
+ "tttx-form": LocalJSX.TttxForm & JSXBase.HTMLAttributes<HTMLTttxFormElement>;
178
223
  "tttx-icon": LocalJSX.TttxIcon & JSXBase.HTMLAttributes<HTMLTttxIconElement>;
179
224
  "tttx-keyvalue-block": LocalJSX.TttxKeyvalueBlock & JSXBase.HTMLAttributes<HTMLTttxKeyvalueBlockElement>;
225
+ "tttx-list": LocalJSX.TttxList & JSXBase.HTMLAttributes<HTMLTttxListElement>;
180
226
  "tttx-loading-spinner": LocalJSX.TttxLoadingSpinner & JSXBase.HTMLAttributes<HTMLTttxLoadingSpinnerElement>;
181
227
  "tttx-standalone-input": LocalJSX.TttxStandaloneInput & JSXBase.HTMLAttributes<HTMLTttxStandaloneInputElement>;
182
228
  }
@@ -0,0 +1,10 @@
1
+ declare function tagRegXp(tagName: string): RegExpExecArray;
2
+ declare function attributeNameCheck(): boolean;
3
+ declare const domSanitiserOptions: {
4
+ CUSTOM_ELEMENT_HANDLING: {
5
+ tagNameCheck: typeof tagRegXp;
6
+ attributeNameCheck: typeof attributeNameCheck;
7
+ allowCustomizedBuiltInElements: boolean;
8
+ };
9
+ };
10
+ export default domSanitiserOptions;