@govtechsg/sgds-web-component 3.10.0-rc.3 → 3.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/components/Checkbox/index.umd.min.js +1 -1
  2. package/components/Checkbox/index.umd.min.js.map +1 -1
  3. package/components/ComboBox/index.umd.min.js +225 -225
  4. package/components/ComboBox/index.umd.min.js.map +1 -1
  5. package/components/Datepicker/index.umd.min.js +1 -1
  6. package/components/Datepicker/index.umd.min.js.map +1 -1
  7. package/components/FileUpload/index.umd.min.js +1 -1
  8. package/components/FileUpload/index.umd.min.js.map +1 -1
  9. package/components/Input/index.umd.min.js +1 -1
  10. package/components/Input/index.umd.min.js.map +1 -1
  11. package/components/QuantityToggle/index.umd.min.js +1 -1
  12. package/components/QuantityToggle/index.umd.min.js.map +1 -1
  13. package/components/Radio/index.umd.min.js +5 -5
  14. package/components/Radio/index.umd.min.js.map +1 -1
  15. package/components/Select/index.umd.min.js +1 -1
  16. package/components/Select/index.umd.min.js.map +1 -1
  17. package/components/SystemBanner/index.umd.min.js +2 -2
  18. package/components/SystemBanner/index.umd.min.js.map +1 -1
  19. package/components/SystemBanner/sgds-system-banner.d.ts +2 -2
  20. package/components/SystemBanner/sgds-system-banner.js +5 -5
  21. package/components/SystemBanner/sgds-system-banner.js.map +1 -1
  22. package/components/Table/index.umd.min.js +62 -17
  23. package/components/Table/index.umd.min.js.map +1 -1
  24. package/components/Table/sgds-table-cell.js +1 -1
  25. package/components/Table/sgds-table-cell.js.map +1 -1
  26. package/components/Table/sgds-table-head.d.ts +2 -5
  27. package/components/Table/sgds-table-head.js +24 -15
  28. package/components/Table/sgds-table-head.js.map +1 -1
  29. package/components/Table/sgds-table.d.ts +41 -6
  30. package/components/Table/sgds-table.js +57 -15
  31. package/components/Table/sgds-table.js.map +1 -1
  32. package/components/Table/table-cell.js +1 -1
  33. package/components/Table/table-context.d.ts +3 -0
  34. package/components/Table/table-context.js +6 -0
  35. package/components/Table/table-context.js.map +1 -0
  36. package/components/Table/table-head.js +1 -1
  37. package/components/Table/table.js +1 -1
  38. package/components/Textarea/index.umd.min.js +6 -6
  39. package/components/Textarea/index.umd.min.js.map +1 -1
  40. package/components/index.umd.min.js +23 -19
  41. package/components/index.umd.min.js.map +1 -1
  42. package/css/fouc.css +1 -1
  43. package/index.umd.min.js +616 -612
  44. package/index.umd.min.js.map +1 -1
  45. package/package.json +1 -1
  46. package/react/components/SystemBanner/sgds-system-banner.cjs.js +5 -5
  47. package/react/components/SystemBanner/sgds-system-banner.cjs.js.map +1 -1
  48. package/react/components/SystemBanner/sgds-system-banner.js +5 -5
  49. package/react/components/SystemBanner/sgds-system-banner.js.map +1 -1
  50. package/react/components/Table/sgds-table-cell.cjs.js +1 -1
  51. package/react/components/Table/sgds-table-cell.cjs.js.map +1 -1
  52. package/react/components/Table/sgds-table-cell.js +1 -1
  53. package/react/components/Table/sgds-table-cell.js.map +1 -1
  54. package/react/components/Table/sgds-table-head.cjs.js +24 -15
  55. package/react/components/Table/sgds-table-head.cjs.js.map +1 -1
  56. package/react/components/Table/sgds-table-head.js +24 -15
  57. package/react/components/Table/sgds-table-head.js.map +1 -1
  58. package/react/components/Table/sgds-table.cjs.js +56 -14
  59. package/react/components/Table/sgds-table.cjs.js.map +1 -1
  60. package/react/components/Table/sgds-table.js +57 -15
  61. package/react/components/Table/sgds-table.js.map +1 -1
  62. package/react/components/Table/table-cell.cjs.js +1 -1
  63. package/react/components/Table/table-cell.js +1 -1
  64. package/react/components/Table/table-context.cjs.js +11 -0
  65. package/react/components/Table/table-context.cjs.js.map +1 -0
  66. package/react/components/Table/table-context.js +7 -0
  67. package/react/components/Table/table-context.js.map +1 -0
  68. package/react/components/Table/table-head.cjs.js +1 -1
  69. package/react/components/Table/table-head.js +1 -1
  70. package/react/components/Table/table.cjs.js +1 -1
  71. package/react/components/Table/table.js +1 -1
  72. package/react/index.cjs.js +8 -8
  73. package/react/index.d.ts +1 -1
  74. package/react/index.js +1 -1
  75. package/react/utils/inputValidationController.cjs.js +2 -2
  76. package/react/utils/inputValidationController.cjs.js.map +1 -1
  77. package/react/utils/inputValidationController.js +2 -2
  78. package/react/utils/inputValidationController.js.map +1 -1
  79. package/react/utils/validatorMixin.cjs.js +9 -13
  80. package/react/utils/validatorMixin.cjs.js.map +1 -1
  81. package/react/utils/validatorMixin.js +9 -13
  82. package/react/utils/validatorMixin.js.map +1 -1
  83. package/utils/inputValidationController.d.ts +1 -1
  84. package/utils/inputValidationController.js +2 -2
  85. package/utils/inputValidationController.js.map +1 -1
  86. package/utils/validatorMixin.js +9 -13
  87. package/utils/validatorMixin.js.map +1 -1
@@ -105,7 +105,7 @@ class extends Ae{constructor(e){if(super(e),e.type!==Be||"class"!==e.name||e.str
105
105
  <slot name="rightIcon"></slot>`}
106
106
 
107
107
  </${t}>
108
- `}}ht.styles=[...st.styles,ct,dt],e([Ve({type:String,reflect:!0})],ht.prototype,"type",void 0),e([Ve({type:String,reflect:!0})],ht.prototype,"form",void 0),e([Ve({type:String,reflect:!0,attribute:"formaction"})],ht.prototype,"formAction",void 0),e([Ve({type:String,reflect:!0,attribute:"formmethod"})],ht.prototype,"formMethod",void 0),e([Ve({attribute:"formnovalidate",type:Boolean,reflect:!0})],ht.prototype,"formNoValidate",void 0),e([Ve({type:String,reflect:!0,attribute:"formtarget"})],ht.prototype,"formTarget",void 0),e([Ve({type:Boolean,reflect:!0})],ht.prototype,"fullWidth",void 0),e([Ve({type:Boolean})],ht.prototype,"hasLeftIconSlot",void 0),e([Ve({type:Boolean})],ht.prototype,"hasRightIconSlot",void 0);var vt=s`.file-upload{display:flex;flex-direction:column;gap:var(--sgds-form-gap-2-xl)}.file-upload-container{display:flex;flex-direction:column;gap:var(--sgds-form-gap-md)}.file-upload-list{display:flex;flex-direction:column;gap:var(--sgds-form-gap-xl);list-style-type:none}.file-upload-list-item{align-items:center;background-color:var(--sgds-form-surface-default);border:var(--sgds-form-border-width-default) solid var(--sgds-border-color-muted);border-radius:var(--sgds-form-border-radius-md);display:flex;gap:var(--sgds-form-gap-lg);padding:var(--sgds-form-padding-y) var(--sgds-form-padding-x)}.file-upload-list-item span:not(:first-of-type){cursor:pointer}ul{margin:0;padding:0}input{display:none}label,sgds-button{cursor:pointer}sgds-close-button{margin-left:auto}sgds-icon.valid{color:var(--sgds-form-success-color-default)}sgds-icon.invalid{color:var(--sgds-color-muted)}`,gt=s`.invalid-feedback-container{display:flex;gap:var(--sgds-form-gap-sm)}.invalid-feedback,.invalid-feedback-container{color:var(--sgds-form-danger-color-default);line-height:var(--sgds-line-height-20)}.invalid-feedback{font-size:var(--sgds-font-size-14);font-weight:var(--sgds-font-weight-regular)}.valid-icon{color:var(--sgds-form-success-color-default)}`,pt=s`.form-text{color:var(--sgds-form-color-subtle);font-size:var(--sgds-font-size-14);line-height:var(--sgds-line-height-20)}.form-text.disabled{opacity:var(--sgds-opacity-50)}`,ut=s`.form-label{color:var(--sgds-form-color-default);margin-bottom:0}.form-label.disabled{opacity:var(--sgds-opacity-50)}.form-check-label{color:var(--sgds-form-color-default)}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{cursor:not-allowed}`,wt=s`.form-control::placeholder{color:var(--sgds-form-color-subtle);font-family:var(--sgds-font-family-brand);font-weight:var(--sgds-font-weight-light);line-height:var(--sgds-line-height-24)}`;function ft(e="",t=""){return`id-${Math.random().toString().substring(2,6)}-sgds-${e}-${t}`}class mt extends We{constructor(){super(...arguments),this.label="",this.hintText="",this.disabled=!1,this.invalid=!1,this._controlId=ft("input"),this._labelId=ft("label")}setInvalid(e){this.invalid=e,e?this.emit("sgds-invalid"):this.emit("sgds-valid")}}mt.styles=[...We.styles,gt,pt,ut,wt],e([Ve({reflect:!0})],mt.prototype,"label",void 0),e([Ve({reflect:!0})],mt.prototype,"hintText",void 0),e([Ve({reflect:!0})],mt.prototype,"name",void 0),e([Ve({type:Boolean,reflect:!0})],mt.prototype,"disabled",void 0),e([Ve({type:Boolean,reflect:!0})],mt.prototype,"invalid",void 0);class Zt{constructor(e,t,l){(this.host=e).addController(this),this._internals=t,this.options=Object.assign({setInvalid:(e,t)=>{e.invalid=t},value:e=>e.value,input:e=>e.input},l)}hostConnected(){this.host.addEventListener("invalid",e=>this.handleInvalid(e))}hostDisconnected(){this.host.removeEventListener("invalid",e=>this.handleInvalid(e))}handleInvalid(e){e.preventDefault(),this.options.setInvalid(this.host,!0)}handleInput(e){const t=e.target;this.options.setInvalid(this.host,!1),this.validateInput(t)}handleChange(e){const t=e.target;this.validateInput(t),this.options.setInvalid(this.host,!this.checkValidity())}get form(){return this._internals.form}get validity(){return this._internals.validity}get validationMessage(){return this._internals.validationMessage}get willValidate(){return this._internals.willValidate}updateInvalidState(){this.options.setInvalid(this.host,!this.checkValidity())}resetValidity(){return this._internals.setValidity({})}checkValidity(){return this._internals.checkValidity()}reportValidity(){return this._internals.reportValidity()}setValidity(e,t,l){return this._internals.setValidity(e,t,l)}setFormValue(){const e=this.options.value(this.host);this._internals.setFormValue(e)}validateInput(e){if(this.options.input(this.host).disabled)return this._internals.setValidity({});const t=e.validity;if(t.valid)this._internals.setValidity({});else for(const l in t)t[l]&&(this.validationError=l.toString(),this._internals.setValidity({[this.validationError]:!0},e.validationMessage,e))}}const xt=t=>{class l extends t{constructor(...e){var t;super(...e),this._isTouched=!1,this._internals=this.attachInternals(),null!==(t=this.inputValidationController)&&void 0!==t||(this.inputValidationController=new Zt(this,this._internals))}async firstUpdated(e){super.firstUpdated(e),this.input=this.shadowRoot.querySelector("input")||await this.sgdsInput||this.shadowRoot.querySelector("textarea")||await this.sgdsDatepickerInput,this._mixinShouldSkipSgdsValidation()||(this._mixinSetFormValue(),this._mixinValidate(this.input))}formResetCallback(){this._mixinResetFormControl?this._mixinResetFormControl():(this.value=this.defaultValue,this._mixinResetValidity(this.input)),this._mixinSetFormValue()}_mixinHandleChange(e){this._mixinSetFormValue(),this.inputValidationController.handleChange(e)}_mixinHandleInputChange(e){this._mixinSetFormValue(),this.inputValidationController.handleInput(e)}_mixinResetValidity(e){this.inputValidationController.resetValidity(),this.inputValidationController.updateInvalidState(),this.inputValidationController.validateInput(e),this._isTouched&&(this._isTouched=!1)}_mixinValidate(e){this.inputValidationController.validateInput(e)}_mixinSetFormValue(){this.inputValidationController.setFormValue()}_mixinCheckValidity(){return this.inputValidationController.checkValidity()}_mixinReportValidity(){return this.inputValidationController.reportValidity()}_mixinGetValidity(){return this.inputValidationController.validity}_mixinGetValidationMessage(){return this.inputValidationController.validationMessage}_mixinSetValidity(e,t,l){return this.inputValidationController.setValidity(e,t,l)}_mixinShouldSkipSgdsValidation(){const e=this.closest("form");return(null==e?void 0:e.noValidate)||this.noValidate}}return l.formAssociated=!0,e([Se("sgds-input")],l.prototype,"sgdsInput",void 0),e([Se("sgds-datepicker-input")],l.prototype,"sgdsDatepickerInput",void 0),l};const Ct={announcement:Q`
108
+ `}}ht.styles=[...st.styles,ct,dt],e([Ve({type:String,reflect:!0})],ht.prototype,"type",void 0),e([Ve({type:String,reflect:!0})],ht.prototype,"form",void 0),e([Ve({type:String,reflect:!0,attribute:"formaction"})],ht.prototype,"formAction",void 0),e([Ve({type:String,reflect:!0,attribute:"formmethod"})],ht.prototype,"formMethod",void 0),e([Ve({attribute:"formnovalidate",type:Boolean,reflect:!0})],ht.prototype,"formNoValidate",void 0),e([Ve({type:String,reflect:!0,attribute:"formtarget"})],ht.prototype,"formTarget",void 0),e([Ve({type:Boolean,reflect:!0})],ht.prototype,"fullWidth",void 0),e([Ve({type:Boolean})],ht.prototype,"hasLeftIconSlot",void 0),e([Ve({type:Boolean})],ht.prototype,"hasRightIconSlot",void 0);var vt=s`.file-upload{display:flex;flex-direction:column;gap:var(--sgds-form-gap-2-xl)}.file-upload-container{display:flex;flex-direction:column;gap:var(--sgds-form-gap-md)}.file-upload-list{display:flex;flex-direction:column;gap:var(--sgds-form-gap-xl);list-style-type:none}.file-upload-list-item{align-items:center;background-color:var(--sgds-form-surface-default);border:var(--sgds-form-border-width-default) solid var(--sgds-border-color-muted);border-radius:var(--sgds-form-border-radius-md);display:flex;gap:var(--sgds-form-gap-lg);padding:var(--sgds-form-padding-y) var(--sgds-form-padding-x)}.file-upload-list-item span:not(:first-of-type){cursor:pointer}ul{margin:0;padding:0}input{display:none}label,sgds-button{cursor:pointer}sgds-close-button{margin-left:auto}sgds-icon.valid{color:var(--sgds-form-success-color-default)}sgds-icon.invalid{color:var(--sgds-color-muted)}`,gt=s`.invalid-feedback-container{display:flex;gap:var(--sgds-form-gap-sm)}.invalid-feedback,.invalid-feedback-container{color:var(--sgds-form-danger-color-default);line-height:var(--sgds-line-height-20)}.invalid-feedback{font-size:var(--sgds-font-size-14);font-weight:var(--sgds-font-weight-regular)}.valid-icon{color:var(--sgds-form-success-color-default)}`,pt=s`.form-text{color:var(--sgds-form-color-subtle);font-size:var(--sgds-font-size-14);line-height:var(--sgds-line-height-20)}.form-text.disabled{opacity:var(--sgds-opacity-50)}`,ut=s`.form-label{color:var(--sgds-form-color-default);margin-bottom:0}.form-label.disabled{opacity:var(--sgds-opacity-50)}.form-check-label{color:var(--sgds-form-color-default)}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{cursor:not-allowed}`,wt=s`.form-control::placeholder{color:var(--sgds-form-color-subtle);font-family:var(--sgds-font-family-brand);font-weight:var(--sgds-font-weight-light);line-height:var(--sgds-line-height-24)}`;function ft(e="",t=""){return`id-${Math.random().toString().substring(2,6)}-sgds-${e}-${t}`}class mt extends We{constructor(){super(...arguments),this.label="",this.hintText="",this.disabled=!1,this.invalid=!1,this._controlId=ft("input"),this._labelId=ft("label")}setInvalid(e){this.invalid=e,e?this.emit("sgds-invalid"):this.emit("sgds-valid")}}mt.styles=[...We.styles,gt,pt,ut,wt],e([Ve({reflect:!0})],mt.prototype,"label",void 0),e([Ve({reflect:!0})],mt.prototype,"hintText",void 0),e([Ve({reflect:!0})],mt.prototype,"name",void 0),e([Ve({type:Boolean,reflect:!0})],mt.prototype,"disabled",void 0),e([Ve({type:Boolean,reflect:!0})],mt.prototype,"invalid",void 0);class Zt{constructor(e,t){(this.host=e).addController(this),this._internals=this.host.attachInternals(),this.options=Object.assign({setInvalid:(e,t)=>{e.invalid=t},value:e=>e.value,input:e=>e.input},t)}hostConnected(){this.host.addEventListener("invalid",e=>this.handleInvalid(e))}hostDisconnected(){this.host.removeEventListener("invalid",e=>this.handleInvalid(e))}handleInvalid(e){e.preventDefault(),this.options.setInvalid(this.host,!0)}handleInput(e){const t=e.target;this.options.setInvalid(this.host,!1),this.validateInput(t)}handleChange(e){const t=e.target;this.validateInput(t),this.options.setInvalid(this.host,!this.checkValidity())}get form(){return this._internals.form}get validity(){return this._internals.validity}get validationMessage(){return this._internals.validationMessage}get willValidate(){return this._internals.willValidate}updateInvalidState(){this.options.setInvalid(this.host,!this.checkValidity())}resetValidity(){return this._internals.setValidity({})}checkValidity(){return this._internals.checkValidity()}reportValidity(){return this._internals.reportValidity()}setValidity(e,t,l){return this._internals.setValidity(e,t,l)}setFormValue(){const e=this.options.value(this.host);this._internals.setFormValue(e)}validateInput(e){if(this.options.input(this.host).disabled)return this._internals.setValidity({});const t=e.validity;if(t.valid)this._internals.setValidity({});else for(const l in t)t[l]&&(this.validationError=l.toString(),this._internals.setValidity({[this.validationError]:!0},e.validationMessage,e))}}const xt=t=>{class l extends t{constructor(){super(...arguments),this._isTouched=!1}connectedCallback(){var e;super.connectedCallback(),this._mixinShouldSkipSgdsValidation()||null!==(e=this.inputValidationController)&&void 0!==e||(this.inputValidationController=new Zt(this))}async firstUpdated(e){super.firstUpdated(e),this.input=this.shadowRoot.querySelector("input")||await this.sgdsInput||this.shadowRoot.querySelector("textarea")||await this.sgdsDatepickerInput,this._mixinShouldSkipSgdsValidation()||(this._mixinSetFormValue(),this._mixinValidate(this.input))}formResetCallback(){this._mixinResetFormControl?this._mixinResetFormControl():(this.value=this.defaultValue,this._mixinResetValidity(this.input)),this._mixinSetFormValue()}_mixinHandleChange(e){this._mixinSetFormValue(),this.inputValidationController.handleChange(e)}_mixinHandleInputChange(e){this._mixinSetFormValue(),this.inputValidationController.handleInput(e)}_mixinResetValidity(e){this.inputValidationController.resetValidity(),this.inputValidationController.updateInvalidState(),this.inputValidationController.validateInput(e),this._isTouched&&(this._isTouched=!1)}_mixinValidate(e){this.inputValidationController.validateInput(e)}_mixinSetFormValue(){this.inputValidationController.setFormValue()}_mixinCheckValidity(){return this.inputValidationController.checkValidity()}_mixinReportValidity(){return this.inputValidationController.reportValidity()}_mixinGetValidity(){return this.inputValidationController.validity}_mixinGetValidationMessage(){return this.inputValidationController.validationMessage}_mixinSetValidity(e,t,l){return this.inputValidationController.setValidity(e,t,l)}_mixinShouldSkipSgdsValidation(){const e=this.closest("form");return(null==e?void 0:e.noValidate)||this.noValidate}}return l.formAssociated=!0,e([Se("sgds-input")],l.prototype,"sgdsInput",void 0),e([Se("sgds-datepicker-input")],l.prototype,"sgdsDatepickerInput",void 0),l};const Ct={announcement:Q`
109
109
  <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" viewBox="0 0 24 24">
110
110
  <path
111
111
  fill="currentColor"