@decaf-ts/ui-decorators 0.6.13 → 0.6.15

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 (71) hide show
  1. package/dist/ui-decorators.cjs +1 -1
  2. package/dist/ui-decorators.cjs.map +1 -1
  3. package/dist/ui-decorators.js +1 -1
  4. package/dist/ui-decorators.js.map +1 -1
  5. package/lib/esm/index.d.ts +1 -1
  6. package/lib/esm/index.js +1 -1
  7. package/lib/esm/ui/DecafComponent.d.ts +11 -3
  8. package/lib/esm/ui/DecafComponent.js +1 -3
  9. package/lib/esm/ui/DecafComponent.js.map +1 -1
  10. package/lib/esm/ui/DecafTranslateService.d.ts +5 -0
  11. package/lib/esm/ui/DecafTranslateService.js +14 -0
  12. package/lib/esm/ui/DecafTranslateService.js.map +1 -0
  13. package/lib/esm/ui/Rendering.d.ts +16 -0
  14. package/lib/esm/ui/Rendering.js +53 -5
  15. package/lib/esm/ui/Rendering.js.map +1 -1
  16. package/lib/esm/ui/UIValidator.d.ts +6 -0
  17. package/lib/esm/ui/UIValidator.js +9 -0
  18. package/lib/esm/ui/UIValidator.js.map +1 -0
  19. package/lib/esm/ui/constants.d.ts +3 -1
  20. package/lib/esm/ui/constants.js +4 -2
  21. package/lib/esm/ui/constants.js.map +1 -1
  22. package/lib/esm/ui/decorators.d.ts +3 -2
  23. package/lib/esm/ui/decorators.js +2 -2
  24. package/lib/esm/ui/decorators.js.map +1 -1
  25. package/lib/esm/ui/index.d.ts +2 -0
  26. package/lib/esm/ui/index.js +4 -0
  27. package/lib/esm/ui/index.js.map +1 -1
  28. package/lib/esm/ui/overrides.d.ts +1 -0
  29. package/lib/esm/ui/overrides.js +8 -0
  30. package/lib/esm/ui/overrides.js.map +1 -0
  31. package/lib/esm/ui/types.d.ts +1 -0
  32. package/lib/esm/ui/utils.d.ts +14 -1
  33. package/lib/esm/ui/utils.js +14 -0
  34. package/lib/esm/ui/utils.js.map +1 -1
  35. package/lib/esm/ui/validator.d.ts +9 -0
  36. package/lib/esm/ui/validator.js +2 -0
  37. package/lib/esm/ui/validator.js.map +1 -0
  38. package/lib/index.cjs +1 -1
  39. package/lib/index.d.ts +1 -1
  40. package/lib/ui/DecafComponent.cjs +4 -7
  41. package/lib/ui/DecafComponent.d.ts +11 -3
  42. package/lib/ui/DecafComponent.js.map +1 -1
  43. package/lib/ui/DecafTranslateService.cjs +18 -0
  44. package/lib/ui/DecafTranslateService.d.ts +5 -0
  45. package/lib/ui/DecafTranslateService.js.map +1 -0
  46. package/lib/ui/Rendering.cjs +52 -4
  47. package/lib/ui/Rendering.d.ts +16 -0
  48. package/lib/ui/Rendering.js.map +1 -1
  49. package/lib/ui/UIValidator.cjs +13 -0
  50. package/lib/ui/UIValidator.d.ts +6 -0
  51. package/lib/ui/UIValidator.js.map +1 -0
  52. package/lib/ui/constants.cjs +4 -2
  53. package/lib/ui/constants.d.ts +3 -1
  54. package/lib/ui/constants.js.map +1 -1
  55. package/lib/ui/decorators.cjs +2 -2
  56. package/lib/ui/decorators.d.ts +3 -2
  57. package/lib/ui/decorators.js.map +1 -1
  58. package/lib/ui/index.cjs +4 -0
  59. package/lib/ui/index.d.ts +2 -0
  60. package/lib/ui/index.js.map +1 -1
  61. package/lib/ui/overrides.cjs +10 -0
  62. package/lib/ui/overrides.d.ts +1 -0
  63. package/lib/ui/overrides.js.map +1 -0
  64. package/lib/ui/types.d.ts +1 -0
  65. package/lib/ui/utils.cjs +16 -0
  66. package/lib/ui/utils.d.ts +14 -1
  67. package/lib/ui/utils.js.map +1 -1
  68. package/lib/ui/validator.cjs +3 -0
  69. package/lib/ui/validator.d.ts +9 -0
  70. package/lib/ui/validator.js.map +1 -0
  71. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- var e,t;e=this,t=function(e,t,o,r,a){"use strict";var s;e.UIMediaBreakPoints=void 0,(s=e.UIMediaBreakPoints||(e.UIMediaBreakPoints={})).SMALL="small",s.MEDIUM="medium",s.LARGE="large",s.XLARGE="xlarge";const n={REFLECT:"ui",UIMODEL:"uimodel",RENDERED_BY:"rendered-by",ELEMENT:"uielement",PROP:"uiprop",CHILD:"uichild",NAME:"name",NAME_PREFIX:"input-",CUSTOM_PROPS:"customValidationProps",UILISTMODEL:"uilistmodel",UILISTPROP:"uilistprop",UILAYOUT:"uilayout",UILAYOUTPROP:"uilayoutprop",HANDLERS:"handlers",TYPE:"type",SUB_TYPE:"subtype",HIDDEN:"hidden",FORMAT:"format",ORDER:"order",PAGE:"page",EVENTS:"events",READ_ONLY:"readonly",SEQUENCE:"sequence",REQUIRED:t.ValidationKeys.REQUIRED,MIN:t.ValidationKeys.MIN,MIN_LENGTH:t.ValidationKeys.MIN_LENGTH,MAX:t.ValidationKeys.MAX,MAX_LENGTH:t.ValidationKeys.MAX_LENGTH,PATTERN:t.ValidationKeys.PATTERN,URL:t.ValidationKeys.URL,STEP:t.ValidationKeys.STEP,DATE:t.ValidationKeys.DATE,EMAIL:t.ValidationKeys.EMAIL,PASSWORD:t.ValidationKeys.PASSWORD,EQUALS:t.ValidationKeys.EQUALS,DIFF:t.ValidationKeys.DIFF,LESS_THAN:t.ValidationKeys.LESS_THAN,LESS_THAN_OR_EQUAL:t.ValidationKeys.LESS_THAN_OR_EQUAL,GREATER_THAN:t.ValidationKeys.GREATER_THAN,GREATER_THAN_OR_EQUAL:t.ValidationKeys.GREATER_THAN_OR_EQUAL},i={[n.EMAIL]:t.EmailValidator,[n.URL]:t.URLValidator,[n.DATE]:t.DateValidator,[n.PASSWORD]:t.PasswordValidator},d={[n.REQUIRED]:t.RequiredValidator,[n.MIN]:t.MinValidator,[n.MAX]:t.MaxValidator,[n.STEP]:t.StepValidator,[n.MIN_LENGTH]:t.MinLengthValidator,[n.MAX_LENGTH]:t.MaxLengthValidator,[n.PATTERN]:t.PatternValidator,[n.EQUALS]:t.EqualsValidator,[n.DIFF]:t.DiffValidator,[n.LESS_THAN]:t.LessThanValidator,[n.LESS_THAN_OR_EQUAL]:t.LessThanOrEqualValidator,[n.GREATER_THAN]:t.GreaterThanValidator,[n.GREATER_THAN_OR_EQUAL]:t.GreaterThanOrEqualValidator},l="yyyy-MM-dd",c={BUTTON:"button",CHECKBOX:"checkbox",COLOR:"color",DATE:n.DATE,DATETIME_LOCAL:"datetime-local",EMAIL:n.EMAIL,FILE:"file",HIDDEN:"hidden",IMAGE:"image",MONTH:"month",NUMBER:"number",PASSWORD:n.PASSWORD,RADIO:"radio",RANGE:"range",RESET:"reset",SEARCH:"search",SUBMIT:"submit",TEL:"tel",TEXT:"text",TEXTAREA:"textarea",SELECT:"select",TIME:"time",URL:n.URL,WEEK:"week"},p=[c.CHECKBOX,c.RADIO],E={cancel:"cancel",confirm:"confirm",submit:"submit",clear:"clear",back:"back",[o.OperationKeys.CREATE]:o.OperationKeys.CREATE,[o.OperationKeys.READ]:o.OperationKeys.READ,[o.OperationKeys.UPDATE]:o.OperationKeys.UPDATE,[o.OperationKeys.DELETE]:o.OperationKeys.DELETE};function u(e,t){return(o,a)=>{const s={tag:e||o.name,props:t};return r.metadata(r.Metadata.key(n.REFLECT,n.UIMODEL),s)(o)}}class f extends o.InternalError{constructor(e){super(e,f.name)}}function y(e,t){return r.Metadata.key(n.REFLECT,r.DecorationKeys.PROPERTIES,e,t)}function h(e,o,...r){if(e===n.DATE){if(!o)return"";const e=r.shift()||l;return t.formatDate(new Date(o),e)}return o}function T(e){if("number"==typeof e&&!isNaN(e))return e;const t=Number(e);return isNaN(t)?void 0:t}function M(e){if(!e)return e;const t={"&":"&amp;","<":"&lt;",">":"&gt;"};return(""+e).replace(/[&<>]/g,e=>t[e]||e)}function m(e){let o=Date.now();try{t.Model.pk(e.constructor)&&(o=e[t.Model.pk(e.constructor)])}catch(e){}return`${e.constructor.name}-${o}`}class R{static{this.cache={}}constructor(e){this.flavour=e,this.initialized=!1,R.register(this)}translate(e,o=!0){if(o)switch(e){case t.ReservedModels.STRING.name.toLowerCase():return c.TEXT;case t.ReservedModels.NUMBER.name.toLowerCase():case t.ReservedModels.BIGINT.name.toLowerCase():return c.NUMBER;case t.ReservedModels.BOOLEAN.name.toLowerCase():return c.CHECKBOX;case t.ReservedModels.DATE.name.toLowerCase():return c.DATE}else switch(e){case c.SELECT:case c.TEXT:case c.EMAIL:case c.COLOR:case c.PASSWORD:case c.TEL:case c.URL:case c.SEARCH:case c.HIDDEN:case c.TEXTAREA:case c.RADIO:return t.ReservedModels.STRING.name.toLowerCase();case c.NUMBER:return t.ReservedModels.NUMBER.name.toLowerCase();case c.CHECKBOX:return t.ReservedModels.BOOLEAN.name.toLowerCase();case c.DATE:case c.DATETIME_LOCAL:case c.TIME:return t.ReservedModels.DATE.name.toLowerCase()}return e}getClassDecoratorsMetadata(e){return[t.Model.uiModelOf(e.constructor),t.Model.uiListModelOf(e.constructor),t.Model.uiHandlersFor(e.constructor),t.Model.uiLayoutOf(e.constructor)].filter(Boolean)}isValidatableByType(e){return Object.keys(i).includes(e)}isValidatableByAttribute(e){return Object.keys(d).includes(e)}toAttributeValue(e,t){if(!Object.keys(d).includes(e))throw Error(`Invalid attribute key "${e}". Expected one of: ${Object.keys(d).join(", ")}.`);return e===n.REQUIRED||t[e]}toFieldDefinition(e,a={},s=!0){const{inheritProps:i,...d}=a;a=d;const p=this.getClassDecoratorsMetadata(e);if(!p.length)throw new f(`No ui definitions set for model ${e.constructor.name}. Did you use @uimodel?`);const E=Object.assign({},...p,i||{}),{tag:u,props:y,item:T,handlers:M}=E,R=t.Model.uiPropertiesOf(e.constructor);let O,L=T?.props||{},g={};const A=(e,t)=>e?[e,t].join("."):t;if(R){const s=r.Metadata.get(e.constructor,t.ValidationKeys.REFLECT)||{};for(const i of R){const d=t.Model.uiDecorationOf(e.constructor,i);let p;try{p=t.Model.uiTypeOf(e.constructor,i)}catch(e){if(!(e instanceof o.NotFoundError))throw e}if(t.Model.uiIsHidden(e.constructor,i)&&!t.Model.uiElementOf(e.constructor,i))throw new f(`@uielement no found in "${i}". It is required to use hiddenOn decorator.`);Object.entries(d).map(([e,t])=>({key:e,props:t})).sort(e=>[n.ELEMENT,n.CHILD].includes(e.key)?-1:1).forEach(o=>{if(!o)throw new f("No decorator found");switch(o.key){case n.PROP:L[i]=o.props;break;case n.CHILD:{const r=o.props?.name||i;if(!t.Model.isPropertyModel(e,r))throw new f(`Child "${r}" must be a model.`);let s;const n=e[i];if("object"!=typeof n||null===n||Array.isArray(n)){const e=o.props.props?.name;s=new(t.Model.get(e))}O=O||[];const d=Object.assign({},a||{},{model:s},{inheritProps:o.props,childOf:A(a?.childOf,i)}),l=this.toFieldDefinition(n||s,d,!1),{inheritProps:c}=d;c&&(l.props=Object.assign({},l.props,c.props||{})),O.push(l);break}case n.UILISTPROP:{g=g||{};const e=o.props;e.name&&(g[e.name]="object"==typeof e?.props&&n.SEQUENCE in e.props?e.props:i);const t=Object.assign({},E.props?.item||{},T?.props||{},e?.props||{},a);L={tag:T?.tag||t.render||"",props:Object.assign({},L?.props,{mapper:g},t)};break}case n.EVENTS:case n.HIDDEN:case n.PAGE:case n.ORDER:case n.UILAYOUTPROP:case n.ELEMENT:{O=O||[];const t=o.props,d=Object.assign({},L?.props,t.props||{},t?.props?.name?{path:A(a?.childOf,t.props.name),childOf:void 0}:{},a,{name:t.props?.name||i});if(o.key===n.ELEMENT){const o={tag:t.tag||L?.tag||u||"",props:d},a=s[i];if(a)for(const e of Object.entries(a).map(([e,t])=>({key:e,props:t})))this.isValidatableByAttribute(e.key)?o.props[this.translate(e.key)]=this.toAttributeValue(e.key,e.props):this.isValidatableByType(e.key)&&(e.key===c.DATE&&(o.props[n.FORMAT]=e.props.format||l),o.props[n.TYPE]=e.key);if(!o.props[n.TYPE]){const t=r.Metadata.type(e.constructor,i).name;o.props[n.TYPE]=this.translate(t.toLowerCase(),!0)}o.props.value=h(o.props[n.TYPE],e[i],o.props[n.FORMAT]),O.push(o)}else{const e=O.find(e=>e.props?.name===i||[n.UILAYOUTPROP,n.PAGE,n.EVENTS].includes(o.key)&&(e.props?.childOf===i||e.props?.childOf?.endsWith("."+i)));if(e)if(o.key!==n.UILAYOUTPROP)e.props=Object.assign({},e.props,{[o.key]:t});else{const{row:t,col:r,props:a}=o.props;e.props=Object.assign({},a||{},e.props,t,r)}}break}default:throw new f("Invalid key: "+o.key)}})}}a=Object.assign({},y,a,{handlers:M||{}});const D=a?.operation;O=O?.sort((e,t)=>(e?.props?.order??0)-(t?.props?.order??0)).filter(e=>{const t=e?.props?.hidden||[];return t?.length&&t.includes(D)?void 0:e});const N={tag:u,item:L,props:a,children:O};return s&&(N.rendererId=m(e)),N}static register(e){if(e.flavour in this.cache)throw new o.InternalError(`Rendering engine under ${e.flavour} already exists`);this.cache[e.flavour]=e,this.current=e}static getOrBoot(e){if(e instanceof R)return e;const t=new e;return t.initialize(),t}static get(e){if(!e)return this.getOrBoot(this.current);if(!(e in this.cache))throw new o.InternalError(`Rendering engine under ${e} does not exist`);return this.getOrBoot(this.cache[e])}static render(e,...r){if(!t.Model.get(e.constructor.name)&&!t.Model.fromObject(e))throw new o.InternalError("No model registered found");const a=t.Model.renderedBy(e.constructor);return R.get(a).render(e,...r)}}function O(...e){return(t,o)=>r.propMetadata(y(o,n.HIDDEN),e)(t,o)}function L(e,t){return(o,a)=>{r.propMetadata(y(a,n.EVENTS),{..."object"==typeof e?e:{[e]:t}})(o,a)}}const g=e=>"function"==typeof e&&/^class\s/.test(e+"");class A extends a.LoggedClass{constructor(){super(),this.enableDarkMode=!0,this.isDarkMode=!1,this.item={tag:""},this.props={},this.route="",this.borders=!1,this.OperationKeys=o.OperationKeys,this.initialized=!1,this.events={},this.handlers={}}get repository(){return this._repository}set repository(e){this._repository=e}async render(...e){this.log.for(this.render).info(`render for ${this.componentName} with ${JSON.stringify(e)}`)}async refresh(...e){this.log.for(this.refresh).info("Refresh called with args: "+e)}async initialize(...e){this.initialized=!0}async translate(...e){this.log.for(this.translate).info(`translate for ${this.componentName} with ${JSON.stringify(e)}`)}async preview(...e){this.log.for(this.preview).debug("Preview called with args: "+e)}async submit(...e){this.log.for(this.submit).info(`submit for ${this.componentName} with ${JSON.stringify(e)}`)}parseHandlers(e,t){const o={};return Object.entries(e).forEach(([e,r])=>{if(g(r)){const a=new r,s=e in a?a[e]:a.handle;o[e]=s,t.handlers[e]=s}else o[e]=r,t.handlers[e]=r}),o}parseEvents(e,t){const o={};return Object.entries(e).forEach(([e,r])=>{const a=e,s=r();if(g(s)){const r=(new s)[e];r&&(o[a]=r,t.events[a]=r)}else o[a]=r,t.events[a]=r}),o}}t.Model.prototype.render=function(...e){return R.render(this,...e)},t.Model.renderedBy=(e=>r.Metadata.get(e,r.Metadata.key(n.REFLECT,n.RENDERED_BY))).bind(t.Model),t.Model.uiPropertiesOf=(e=>{const t=r.Metadata.get(e,r.Metadata.key(n.REFLECT,r.DecorationKeys.PROPERTIES));if(t)return Object.keys(t)}).bind(t.Model),t.Model.uiDecorationOf=(e,t,o)=>{const a=r.Metadata.get(e,r.Metadata.key(n.REFLECT,r.DecorationKeys.PROPERTIES,t));if(a)return o?a[o]:a},t.Model.uiModelOf=e=>r.Metadata.get(e,r.Metadata.key(n.REFLECT,n.UIMODEL)),t.Model.uiElementOf=(e,t)=>r.Metadata.get(e,y(t,n.ELEMENT)),t.Model.uiListModelOf=e=>r.Metadata.get(e,r.Metadata.key(n.REFLECT,n.UILISTMODEL)),t.Model.uiHandlersFor=e=>r.Metadata.get(e,r.Metadata.key(n.REFLECT,n.HANDLERS)),t.Model.uiLayoutOf=e=>r.Metadata.get(e,r.Metadata.key(n.REFLECT,n.UILAYOUT)),t.Model.uiIsHidden=(e,t)=>!!r.Metadata.get(e,y(t,n.HIDDEN)),t.Model.uiIsHiddenOn=(e,t,o)=>{const a=r.Metadata.get(e,y(t,n.HIDDEN));return!!a&&(o?a.includes(o):a)},t.Model.uiTypeOf=(e,t)=>{const a=r.Metadata.get(e,r.Metadata.key(n.REFLECT,r.DecorationKeys.PROPERTIES,t));if(!a)throw new o.NotFoundError(`No metadata found for property '${t}' on model '${e.name}'`);const s=Object.keys(a).filter(e=>[n.PROP,n.ELEMENT,n.CHILD].includes(e));if(0===s.length)throw new o.NotFoundError(`No UI type metadata found for property '${t}' on model '${e.name}'`);if(s.length>1)throw new f("Only one type of decoration is allowed. Please choose between @uiprop, @uichild or @uielement");return a[s[0]]},t.Model.uiListItems=(e=>{const t=r.Metadata.get(e,r.Metadata.key(n.REFLECT,r.DecorationKeys.PROPERTIES));if(t)return Object.keys(t)}).bind(t.Model),e.ActionRoles=E,e.ComponentEventNames={Render:"render",BackButtonClickEvent:"backButtonNavigationEndEvent",Refresh:"RefreshEvent",Click:"ClickEvent",Change:"ChangeEvent",Submit:"SubmitEvent",ValidationError:"validationErrorEvent",ThemeChange:"themeChangeEvent",FormGroupLoaded:"formGroupLoadedEvent"},e.DecafComponent=A,e.DecafEventHandler=class extends A{constructor(){super()}handle(...e){this.log.for(this.handle).info(`component ${this.componentName} handling ${JSON.stringify(e)}`)}handleClick(...e){this.log.for(this.handleClick).info(`component ${this.componentName} handling click ${JSON.stringify(e)}`)}handleAction(...e){this.log.for(this.handleAction).info(`component ${this.componentName} handling action ${JSON.stringify(e)}`)}},e.ElementPositions={left:"left",center:"center",right:"right",top:"top",bottom:"bottom"},e.ElementSizes={xsmall:"xsmall",small:"small",medium:"medium",default:"default",large:"large",xLarge:"xlarge","2xLarge":"2xlarge",auto:"auto",expand:"expand",block:"block"},e.HTML5CheckTypes=p,e.HTML5DateFormat=l,e.HTML5InputTypes=c,e.LayoutGridGaps={small:"small",medium:"medium",large:"large",collapse:"collapse",none:""},e.RenderingEngine=R,e.RenderingError=f,e.TransactionHooks={BeforeCreate:"beforeCreate",AfterCreate:"afterCreate",BeforeUpdate:"beforeUpdate",AfterUpdate:"afterUpdate",BeforeDelete:"beforeDelete",AfterDelete:"afterDelete"},e.UIKeys=n,e.VERSION="##VERSION##",e.ValidatableByAttribute=d,e.ValidatableByType=i,e.WindowColorSchemes={light:"light",dark:"dark",undefined:"undefined"},e.escapeHtml=M,e.formatByType=h,e.generateUIModelID=m,e.getUIAttributeKey=y,e.hidden=()=>O(o.OperationKeys.CREATE,o.OperationKeys.READ,o.OperationKeys.UPDATE,o.OperationKeys.DELETE),e.hideOn=O,e.isClassConstructor=g,e.parseToNumber=T,e.parseValueByType=function e(r,a,s){let n;switch(r){case Array.name:n=(Array.isArray(a)?a.map(o=>e(t.ReservedModels.STRING.name.toLowerCase(),o,s)):[a]).join(",");break;case c.NUMBER:n=T(a);break;case c.DATE:{const e=s.format;a&&(""+a).trim().length&&(n=typeof a===t.ReservedModels.NUMBER.name.toLowerCase()?new Date(a):a?e?t.parseDate(e,a):new Date(a):void 0);break}default:n=typeof a===t.ReservedModels.OBJECT.name.toLowerCase()?Array.isArray(a)?a.join(","):JSON.stringify(a):typeof a===t.ReservedModels.BOOLEAN.name.toLowerCase()?a:typeof a===t.ReservedModels.STRING.name.toLowerCase()?M(a):n}if(void 0===n)throw new o.InternalError(`Failed to parse value of type ${r} from ${typeof a} - ${a}`);return n},e.renderedBy=e=>r.apply(r.metadata(r.Metadata.key(n.REFLECT,n.RENDERED_BY),e)),e.revertHtml=e=>{const t={"&amp;":"&","&lt;":"<","&gt;":">"};return(""+e).replace(/&lt;|&gt;|&amp;/g,e=>t[e]||e)},e.uichild=(e,t,o={},a=!1,s=!1)=>(i,d)=>{const l={tag:t,serialize:s,props:Object.assign({},o||{},{name:e||d},a?{customTypes:[Array.name],multiple:!0}:{multiple:o?.multiple||!1})};r.propMetadata(y(d,n.CHILD),l)(i,d)},e.uielement=(e,t,o=!1)=>(a,s)=>{"object"==typeof e&&(t=e,e="");const i={tag:e,serialize:o,props:Object.assign({},t||{},{name:s})};return r.propMetadata(y(s,n.ELEMENT),i)(a,s)},e.uihandlers=e=>t=>{const o={handlers:e};return r.metadata(r.Metadata.key(n.REFLECT,n.HANDLERS),o)(t)},e.uilayout=(t,o=1,r=1,a={})=>(s,n)=>u(t,Object.assign({..."boolean"==typeof o?{flexMode:o,cols:1}:{flexMode:!1,cols:o},rows:r,...Object.assign({breakpoint:e.UIMediaBreakPoints.LARGE},a)}))(s,n),e.uilayoutprop=(e=1,t=1)=>(o,a)=>{const s={name:a,props:Object.assign({},{row:t,col:e})};r.propMetadata(y(a,n.UILAYOUTPROP),s)(o,a)},e.uilistmodel=(e,t)=>(o,a)=>{const s={item:{tag:e||o.name,props:t}};return r.metadata(r.Metadata.key(n.REFLECT,n.UILISTMODEL),s)(o)},e.uilistprop=(e=void 0,t)=>(o,a)=>{const s={name:e||a,props:t||{}};r.propMetadata(y(a,n.UILISTPROP),s)(o,a)},e.uimodel=u,e.uion=L,e.uionclick=e=>L("handleClick",e),e.uionrender=e=>L("render",e),e.uiorder=(e=1)=>(t,o)=>r.propMetadata(y(o,n.ORDER),e)(t,o),e.uipageprop=(e=1)=>(t,o)=>r.propMetadata(y(o,n.PAGE),e)(t,o),e.uiprop=(e=void 0,t=!1)=>(o,a)=>{const s={name:e||a,stringify:t};r.propMetadata(y(a,n.PROP),s)(o,a)},e.uisteppedmodel=(e,t=1,o=!1,r={})=>{let a=[];return"object"==typeof t&&(a=t,t=a.length),u(e,{pages:t,paginated:o,pageTitles:a,props:r})},e.uitablecol=(e,t)=>(o,a)=>{const s={name:a,props:{sequence:e,...t?{valueParserFn:t}:{}}};r.propMetadata(y(a,n.UILISTPROP),s)(o,a)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/decorator-validation"),require("@decaf-ts/db-decorators"),require("@decaf-ts/decoration"),require("@decaf-ts/logging")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/decorator-validation","@decaf-ts/db-decorators","@decaf-ts/decoration","@decaf-ts/logging"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["ui-decorators"]={},e.decafTsDecoratorValidation,e.decafTsDbDecorators,e.decafTsDecoration,e.decafTsLogging);
1
+ var e,t;e=this,t=function(e,t,a,r,o){"use strict";var s;e.UIMediaBreakPoints=void 0,(s=e.UIMediaBreakPoints||(e.UIMediaBreakPoints={})).SMALL="small",s.MEDIUM="medium",s.LARGE="large",s.XLARGE="xlarge";const n={REFLECT:"ui",UIMODEL:"uimodel",RENDERED_BY:"rendered-by",ELEMENT:"uielement",PROP:"uiprop",CHILD:"uichild",NAME:"name",NAME_PREFIX:"input-",VALIDATION_MESSAGE:"validationMessage",UILISTMODEL:"uilistmodel",UILISTPROP:"uilistprop",UILAYOUT:"uilayout",UILAYOUTPROP:"uilayoutprop",HANDLERS:"handlers",TYPE:"type",SUB_TYPE:"subType",HIDDEN:"hidden",FORMAT:"format",ORDER:"order",PAGE:"page",EVENTS:"events",FIRST:"first",LAST:"last",READ_ONLY:"readonly",SEQUENCE:"sequence",REQUIRED:t.ValidationKeys.REQUIRED,MIN:t.ValidationKeys.MIN,MIN_LENGTH:t.ValidationKeys.MIN_LENGTH,MAX:t.ValidationKeys.MAX,MAX_LENGTH:t.ValidationKeys.MAX_LENGTH,PATTERN:t.ValidationKeys.PATTERN,URL:t.ValidationKeys.URL,STEP:t.ValidationKeys.STEP,DATE:t.ValidationKeys.DATE,EMAIL:t.ValidationKeys.EMAIL,PASSWORD:t.ValidationKeys.PASSWORD,EQUALS:t.ValidationKeys.EQUALS,DIFF:t.ValidationKeys.DIFF,LESS_THAN:t.ValidationKeys.LESS_THAN,LESS_THAN_OR_EQUAL:t.ValidationKeys.LESS_THAN_OR_EQUAL,GREATER_THAN:t.ValidationKeys.GREATER_THAN,GREATER_THAN_OR_EQUAL:t.ValidationKeys.GREATER_THAN_OR_EQUAL},i={[n.EMAIL]:t.EmailValidator,[n.URL]:t.URLValidator,[n.DATE]:t.DateValidator,[n.PASSWORD]:t.PasswordValidator},d={[n.REQUIRED]:t.RequiredValidator,[n.MIN]:t.MinValidator,[n.MAX]:t.MaxValidator,[n.STEP]:t.StepValidator,[n.MIN_LENGTH]:t.MinLengthValidator,[n.MAX_LENGTH]:t.MaxLengthValidator,[n.PATTERN]:t.PatternValidator,[n.EQUALS]:t.EqualsValidator,[n.DIFF]:t.DiffValidator,[n.LESS_THAN]:t.LessThanValidator,[n.LESS_THAN_OR_EQUAL]:t.LessThanOrEqualValidator,[n.GREATER_THAN]:t.GreaterThanValidator,[n.GREATER_THAN_OR_EQUAL]:t.GreaterThanOrEqualValidator},l="yyyy-MM-dd",c={BUTTON:"button",CHECKBOX:"checkbox",COLOR:"color",DATE:n.DATE,DATETIME_LOCAL:"datetime-local",EMAIL:n.EMAIL,FILE:"file",HIDDEN:"hidden",IMAGE:"image",MONTH:"month",NUMBER:"number",PASSWORD:n.PASSWORD,RADIO:"radio",RANGE:"range",RESET:"reset",SEARCH:"search",SUBMIT:"submit",TEL:"tel",TEXT:"text",TEXTAREA:"textarea",SELECT:"select",TIME:"time",URL:n.URL,WEEK:"week"},p=[c.CHECKBOX,c.RADIO],E={cancel:"cancel",confirm:"confirm",submit:"submit",clear:"clear",back:"back",[a.OperationKeys.CREATE]:a.OperationKeys.CREATE,[a.OperationKeys.READ]:a.OperationKeys.READ,[a.OperationKeys.UPDATE]:a.OperationKeys.UPDATE,[a.OperationKeys.DELETE]:a.OperationKeys.DELETE};function u(e,t){return(a,o)=>{const s={tag:e||a.name,props:t};return r.metadata(r.Metadata.key(n.REFLECT,n.UIMODEL),s)(a)}}class f extends a.InternalError{constructor(e){super(e,f.name)}}const h=e=>"function"==typeof e&&/^class\s/.test(e+"");function y(e,t){return r.Metadata.key(n.REFLECT,r.DecorationKeys.PROPERTIES,e,t)}function T(e,a,...r){if(e===n.DATE){if(!a)return"";const e=r.shift()||l;return t.formatDate(new Date(a),e)}return a}function M(e){if("number"==typeof e&&!isNaN(e))return e;const t=Number(e);return isNaN(t)?void 0:t}function m(e){if(!e)return e;const t={"&":"&amp;","<":"&lt;",">":"&gt;"};return(""+e).replace(/[&<>]/g,e=>t[e]||e)}function R(e){let a=Date.now();try{t.Model.pk(e.constructor)&&(a=e[t.Model.pk(e.constructor)])}catch(e){}return`${e.constructor.name}-${a}`}class O{static{this.cache={}}constructor(e){this.flavour=e,this.initialized=!1,O.register(this)}translate(e,a=!0){if(a)switch(e){case t.ReservedModels.STRING.name.toLowerCase():return c.TEXT;case t.ReservedModels.NUMBER.name.toLowerCase():case t.ReservedModels.BIGINT.name.toLowerCase():return c.NUMBER;case t.ReservedModels.BOOLEAN.name.toLowerCase():return c.CHECKBOX;case t.ReservedModels.DATE.name.toLowerCase():return c.DATE}else switch(e){case c.SELECT:case c.TEXT:case c.EMAIL:case c.COLOR:case c.PASSWORD:case c.TEL:case c.URL:case c.SEARCH:case c.HIDDEN:case c.TEXTAREA:case c.RADIO:return t.ReservedModels.STRING.name.toLowerCase();case c.NUMBER:return t.ReservedModels.NUMBER.name.toLowerCase();case c.CHECKBOX:return t.ReservedModels.BOOLEAN.name.toLowerCase();case c.DATE:case c.DATETIME_LOCAL:case c.TIME:return t.ReservedModels.DATE.name.toLowerCase()}return e}getClassDecoratorsMetadata(e){return[t.Model.uiModelOf(e.constructor),t.Model.uiListModelOf(e.constructor),t.Model.uiHandlersFor(e.constructor),t.Model.uiLayoutOf(e.constructor)].filter(Boolean)}sortChildrenByOrder(e=[]){return e.sort((a,r)=>{const o=a.props?.order??0,s=r.props?.order??0,i=a=>a===n.FIRST?0:typeof a===t.Primitives.NUMBER?1:a===n.LAST?e.length+e.indexOf(r):1,d=i(o),l=i(s);return d!==l?d-l:1===d&&typeof o===t.Primitives.NUMBER&&typeof s===t.Primitives.NUMBER?o-s:0})}isCustomValidator(e){return!Object.values(t.ValidationKeys).includes(e)&&!Object.values(n).includes(e)}isValidatableByType(e){return Object.keys(i).includes(e)}isValidatableByAttribute(e){return Object.keys(d).includes(e)}toAttributeValue(e,t){if(!Object.keys(d).includes(e))throw Error(`Invalid attribute key "${e}". Expected one of: ${Object.keys(d).join(", ")}.`);return e===n.REQUIRED||t[e]}toFieldDefinition(e,o={},s=!0){const{inheritProps:i,...d}=o;o=d;const p=this.getClassDecoratorsMetadata(e);if(!p.length)throw new f(`No ui definitions set for model ${e.constructor.name}. Did you use @uimodel?`);const E=Object.assign({},...p,i||{}),{tag:u,props:h,item:y,handlers:M}=E,m=t.Model.uiPropertiesOf(e.constructor);let O,g=y?.props||{},L={};const A=(e,t)=>e?[e,t].join("."):t;if(m){const s=r.Metadata.get(e.constructor,t.ValidationKeys.REFLECT)||{};for(const i of m){const d=t.Model.uiDecorationOf(e.constructor,i);let p;try{p=t.Model.uiTypeOf(e.constructor,i)}catch(e){if(!(e instanceof a.NotFoundError))throw e}if(t.Model.uiIsHidden(e.constructor,i)&&!t.Model.uiElementOf(e.constructor,i))throw new f(`@uielement no found in "${i}". It is required to use hiddenOn decorator.`);Object.entries(d).map(([e,t])=>({key:e,props:t})).sort(e=>[n.ELEMENT,n.CHILD].includes(e.key)?-1:1).forEach(a=>{if(!a)throw new f("No decorator found");switch(a.key){case n.PROP:g[i]=a.props;break;case n.CHILD:{const r=a.props?.name||i;if(!t.Model.isPropertyModel(e,r))throw new f(`Child "${r}" must be a model.`);let s;const n=e[i];if("object"!=typeof n||null===n||Array.isArray(n)){const e=a.props.props?.name;s=new(t.Model.get(e))}O=O||[];const d=Object.assign({},o||{},{model:s},{inheritProps:a.props,childOf:A(o?.childOf,i)}),l=this.toFieldDefinition(n||s,d,!1),{inheritProps:c}=d;c&&(l.props=Object.assign({},l.props,c.props||{})),O.push(l);break}case n.UILISTPROP:{L=L||{};const e=a.props;e.name&&(L[e.name]="object"==typeof e?.props&&n.SEQUENCE in e.props?e.props:i);const t=Object.assign({},E.props?.item||{},y?.props||{},e?.props||{},o);g={tag:y?.tag||t.render||"",props:Object.assign({},g?.props,{mapper:L},t)};break}case n.EVENTS:case n.HIDDEN:case n.PAGE:case n.ORDER:case n.UILAYOUTPROP:case n.ELEMENT:{O=O||[];const t=a.props,d=Object.assign({},g?.props,t.props||{},t?.props?.name?{path:A(o?.childOf,t.props.name),childOf:void 0}:{},o,{name:t.props?.name||i});if(a.key===n.ELEMENT){const a={tag:t.tag||g?.tag||u||"",props:d},o=s[i];if(o)for(const e of Object.entries(o).map(([e,t])=>({key:e,props:t})))this.isValidatableByAttribute(e.key)?a.props[this.translate(e.key)]=this.toAttributeValue(e.key,e.props):this.isValidatableByType(e.key)?(e.key===c.DATE&&(a.props[n.FORMAT]=e.props.format||l),a.props[n.TYPE]=e.key):this.isCustomValidator(e.key)&&(d[n.SUB_TYPE]=e.key,e.props?.message&&(d[n.VALIDATION_MESSAGE]=e.props.message));if(!a.props[n.TYPE]){const t=r.Metadata.type(e.constructor,i).name;a.props[n.TYPE]=this.translate(t.toLowerCase(),!0)}a.props.value=T(a.props[n.TYPE],e[i],a.props[n.FORMAT]),O.push(a)}else{const e=O.find(e=>e.props?.name===i||[n.UILAYOUTPROP,n.PAGE,n.EVENTS].includes(a.key)&&(e.props?.childOf===i||e.props?.childOf?.endsWith("."+i)));if(e)if(a.key!==n.UILAYOUTPROP)e.props=Object.assign({},e.props,{[a.key]:t});else{const{row:t,col:r,props:o}=a.props;e.props=Object.assign({},o||{},e.props,t,r)}}break}default:throw new f("Invalid key: "+a.key)}})}}o=Object.assign({},h,o,{handlers:M||{}});const D=o?.operation;O=this.sortChildrenByOrder(O).filter(e=>{const t=e?.props?.hidden||[];return t?.length&&t.includes(D)?void 0:e});const N={tag:u,item:g,props:o,children:O?.length?O:void 0};return s&&(N.rendererId=R(e)),N}static register(e){if(e.flavour in this.cache)throw new a.InternalError(`Rendering engine under ${e.flavour} already exists`);this.cache[e.flavour]=e,this.current=e}static getOrBoot(e){if(e instanceof O)return e;const t=new e;return t.initialize(),t}static get(e){if(!e)return this.getOrBoot(this.current);if(!(e in this.cache))throw new a.InternalError(`Rendering engine under ${e} does not exist`);return this.getOrBoot(this.cache[e])}static render(e,...r){if(!t.Model.get(e.constructor.name)&&!t.Model.fromObject(e))throw new a.InternalError("No model registered found");const o=t.Model.renderedBy(e.constructor);return O.get(o).render(e,...r)}}function g(...e){return(t,a)=>r.propMetadata(y(a,n.HIDDEN),e)(t,a)}function L(e,t){return(a,o)=>{r.propMetadata(y(o,n.EVENTS),{..."object"==typeof e?e:{[e]:t}})(a,o)}}class A extends t.Validator{getMessage(e,...t){return A.translateService?A.translateService.translate(e,...t):super.getMessage(e,...t)}}class D extends o.LoggedClass{constructor(){super(),this.enableDarkMode=!0,this.isDarkMode=!1,this.item={tag:""},this.props={},this.route="",this.borders=!1,this.OperationKeys=a.OperationKeys,this.initialized=!1,this.events={},this.handlers={}}get repository(){return this._repository}set repository(e){this._repository=e}async render(...e){this.log.for(this.render).info(`render for ${this.componentName} with ${JSON.stringify(e)}`)}async refresh(...e){this.log.for(this.refresh).info("Refresh called with args: "+e)}async initialize(...e){this.initialized=!0}async translate(...e){this.log.for(this.translate).info(`translate for ${this.componentName} with ${JSON.stringify(e)}`)}async preview(...e){this.log.for(this.preview).debug("Preview called with args: "+e)}async submit(...e){this.log.for(this.submit).info(`submit for ${this.componentName} with ${JSON.stringify(e)}`)}parseHandlers(e,t){const a={};return Object.entries(e).forEach(([e,r])=>{if(h(r)){const o=new r,s=e in o?o[e]:o.handle;a[e]=s,t.handlers[e]=s}else a[e]=r,t.handlers[e]=r}),a}parseEvents(e,t){const a={};return Object.entries(e).forEach(([e,r])=>{const o=e,s=r();if(h(s)){const r=(new s)[e];r&&(a[o]=r,t.events[o]=r)}else a[o]=r,t.events[o]=r}),a}}class N extends o.LoggedClass{translate(e,t){this.log.for(this.translate).info(`Must translate ${e} with params ${JSON.stringify(t||{})}`)}instant(e,t){this.log.for(this.instant).info(`Must translate ${e} with params ${JSON.stringify(t||{})}`)}}t.Model.prototype.render=function(...e){return O.render(this,...e)},t.Model.renderedBy=(e=>r.Metadata.get(e,r.Metadata.key(n.REFLECT,n.RENDERED_BY))).bind(t.Model),t.Model.uiPropertiesOf=(e=>{const t=r.Metadata.get(e,r.Metadata.key(n.REFLECT,r.DecorationKeys.PROPERTIES));if(t)return Object.keys(t)}).bind(t.Model),t.Model.uiDecorationOf=(e,t,a)=>{const o=r.Metadata.get(e,r.Metadata.key(n.REFLECT,r.DecorationKeys.PROPERTIES,t));if(o)return a?o[a]:o},t.Model.uiModelOf=e=>r.Metadata.get(e,r.Metadata.key(n.REFLECT,n.UIMODEL)),t.Model.uiElementOf=(e,t)=>r.Metadata.get(e,y(t,n.ELEMENT)),t.Model.uiListModelOf=e=>r.Metadata.get(e,r.Metadata.key(n.REFLECT,n.UILISTMODEL)),t.Model.uiHandlersFor=e=>r.Metadata.get(e,r.Metadata.key(n.REFLECT,n.HANDLERS)),t.Model.uiLayoutOf=e=>r.Metadata.get(e,r.Metadata.key(n.REFLECT,n.UILAYOUT)),t.Model.uiIsHidden=(e,t)=>!!r.Metadata.get(e,y(t,n.HIDDEN)),t.Model.uiIsHiddenOn=(e,t,a)=>{const o=r.Metadata.get(e,y(t,n.HIDDEN));return!!o&&(a?o.includes(a):o)},t.Model.uiTypeOf=(e,t)=>{const o=r.Metadata.get(e,r.Metadata.key(n.REFLECT,r.DecorationKeys.PROPERTIES,t));if(!o)throw new a.NotFoundError(`No metadata found for property '${t}' on model '${e.name}'`);const s=Object.keys(o).filter(e=>[n.PROP,n.ELEMENT,n.CHILD].includes(e));if(0===s.length)throw new a.NotFoundError(`No UI type metadata found for property '${t}' on model '${e.name}'`);if(s.length>1)throw new f("Only one type of decoration is allowed. Please choose between @uiprop, @uichild or @uielement");return o[s[0]]},t.Model.uiListItems=(e=>{const t=r.Metadata.get(e,r.Metadata.key(n.REFLECT,r.DecorationKeys.PROPERTIES));if(t)return Object.keys(t)}).bind(t.Model),e.ActionRoles=E,e.ComponentEventNames={Render:"render",BackButtonClickEvent:"backButtonNavigationEndEvent",Refresh:"RefreshEvent",Click:"ClickEvent",Change:"ChangeEvent",Submit:"SubmitEvent",ValidationError:"validationErrorEvent",ThemeChange:"themeChangeEvent",FormGroupLoaded:"formGroupLoadedEvent"},e.DecafComponent=D,e.DecafEventHandler=class extends D{constructor(){super()}handle(...e){this.log.for(this.handle).info(`component ${this.componentName} handling ${JSON.stringify(e)}`)}handleClick(...e){this.log.for(this.handleClick).info(`component ${this.componentName} handling click ${JSON.stringify(e)}`)}handleAction(...e){this.log.for(this.handleAction).info(`component ${this.componentName} handling action ${JSON.stringify(e)}`)}},e.DecafTranslateService=N,e.ElementPositions={left:"left",center:"center",right:"right",top:"top",bottom:"bottom"},e.ElementSizes={xsmall:"xsmall",small:"small",medium:"medium",default:"default",large:"large",xLarge:"xlarge","2xLarge":"2xlarge",auto:"auto",expand:"expand",block:"block"},e.HTML5CheckTypes=p,e.HTML5DateFormat=l,e.HTML5InputTypes=c,e.LayoutGridGaps={small:"small",medium:"medium",large:"large",collapse:"collapse",none:""},e.RenderingEngine=O,e.RenderingError=f,e.TransactionHooks={BeforeCreate:"beforeCreate",AfterCreate:"afterCreate",BeforeUpdate:"beforeUpdate",AfterUpdate:"afterUpdate",BeforeDelete:"beforeDelete",AfterDelete:"afterDelete"},e.UIKeys=n,e.UIValidator=A,e.VERSION="##VERSION##",e.ValidatableByAttribute=d,e.ValidatableByType=i,e.WindowColorSchemes={light:"light",dark:"dark",undefined:"undefined"},e.escapeHtml=m,e.formatByType=T,e.generateUIModelID=R,e.getUIAttributeKey=y,e.hidden=()=>g(a.OperationKeys.CREATE,a.OperationKeys.READ,a.OperationKeys.UPDATE,a.OperationKeys.DELETE),e.hideOn=g,e.isClassConstructor=h,e.parseToNumber=M,e.parseValueByType=function e(r,o,s){let n;switch(r){case Array.name:n=(Array.isArray(o)?o.map(a=>e(t.ReservedModels.STRING.name.toLowerCase(),a,s)):[o]).join(",");break;case c.NUMBER:n=M(o);break;case c.DATE:{const e=s.format;o&&(""+o).trim().length&&(n=typeof o===t.ReservedModels.NUMBER.name.toLowerCase()?new Date(o):o?e?t.parseDate(e,o):new Date(o):void 0);break}default:n=typeof o===t.ReservedModels.OBJECT.name.toLowerCase()?Array.isArray(o)?o.join(","):JSON.stringify(o):typeof o===t.ReservedModels.BOOLEAN.name.toLowerCase()?o:typeof o===t.ReservedModels.STRING.name.toLowerCase()?m(o):n}if(void 0===n)throw new a.InternalError(`Failed to parse value of type ${r} from ${typeof o} - ${o}`);return n},e.renderedBy=e=>r.apply(r.metadata(r.Metadata.key(n.REFLECT,n.RENDERED_BY),e)),e.revertHtml=e=>{const t={"&amp;":"&","&lt;":"<","&gt;":">"};return(""+e).replace(/&lt;|&gt;|&amp;/g,e=>t[e]||e)},e.uichild=(e,t,a={},o=!1,s=!1)=>(i,d)=>{const l={tag:t,serialize:s,props:Object.assign({},a||{},{name:e||d},o?{customTypes:[Array.name],multiple:!0}:{multiple:a?.multiple||!1})};r.propMetadata(y(d,n.CHILD),l)(i,d)},e.uielement=(e,t,a=!1)=>(o,s)=>{"object"==typeof e&&(t=e,e="");const i={tag:e,serialize:a,props:Object.assign({},t||{},{name:s})};return r.propMetadata(y(s,n.ELEMENT),i)(o,s)},e.uihandlers=e=>t=>{const a={handlers:e};return r.metadata(r.Metadata.key(n.REFLECT,n.HANDLERS),a)(t)},e.uilayout=(t,a=1,r=1,o={})=>(s,n)=>u(t,Object.assign({..."boolean"==typeof a?{flexMode:a,cols:1}:{flexMode:!1,cols:a},rows:r,...Object.assign({breakpoint:e.UIMediaBreakPoints.LARGE},o)}))(s,n),e.uilayoutprop=(e=1,t=1)=>(a,o)=>{const s={name:o,props:Object.assign({},{row:t,col:e})};r.propMetadata(y(o,n.UILAYOUTPROP),s)(a,o)},e.uilistmodel=(e,t)=>(a,o)=>{const s={item:{tag:e||a.name,props:t}};return r.metadata(r.Metadata.key(n.REFLECT,n.UILISTMODEL),s)(a)},e.uilistprop=(e=void 0,t)=>(a,o)=>{const s={name:e||o,props:t||{}};r.propMetadata(y(o,n.UILISTPROP),s)(a,o)},e.uimodel=u,e.uion=L,e.uionclick=e=>L("handleClick",e),e.uionrender=e=>L("render",e),e.uiorder=(e=n.FIRST)=>(t,a)=>r.propMetadata(y(a,n.ORDER),e)(t,a),e.uipageprop=(e=1)=>(t,a)=>r.propMetadata(y(a,n.PAGE),e)(t,a),e.uiprop=(e=void 0,t=!1)=>(a,o)=>{const s={name:e||o,stringify:t};r.propMetadata(y(o,n.PROP),s)(a,o)},e.uisteppedmodel=(e,t=1,a=!1,r={})=>{let o=[];return"object"==typeof t&&(o=t,t=o.length),u(e,{pages:t,paginated:a,pageTitles:o,props:r})},e.uitablecol=(e=n.LAST,t)=>(a,o)=>{const s={name:o,props:{sequence:e,...t?{valueParserFn:t}:{}}};r.propMetadata(y(o,n.UILISTPROP),s)(a,o)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/decorator-validation"),require("@decaf-ts/db-decorators"),require("@decaf-ts/decoration"),require("@decaf-ts/logging")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/decorator-validation","@decaf-ts/db-decorators","@decaf-ts/decoration","@decaf-ts/logging"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["ui-decorators"]={},e.decafTsDecoratorValidation,e.decafTsDbDecorators,e.decafTsDecoration,e.decafTsLogging);
2
2
  //# sourceMappingURL=ui-decorators.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui-decorators.cjs","sources":["../src/ui/constants.ts","../src/model/decorators.ts","../src/ui/errors.ts","../src/ui/utils.ts","../src/ui/Rendering.ts","../src/ui/decorators.ts","../src/ui/DecafComponent.ts","../src/model/overrides.ts","../src/ui/DecafEventHandler.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null],"names":["UIMediaBreakPoints","exports","UIKeys","REFLECT","UIMODEL","RENDERED_BY","ELEMENT","PROP","CHILD","NAME","NAME_PREFIX","CUSTOM_PROPS","UILISTMODEL","UILISTPROP","UILAYOUT","UILAYOUTPROP","HANDLERS","TYPE","SUB_TYPE","HIDDEN","FORMAT","ORDER","PAGE","EVENTS","READ_ONLY","SEQUENCE","REQUIRED","ValidationKeys","MIN","MIN_LENGTH","MAX","MAX_LENGTH","PATTERN","URL","STEP","DATE","EMAIL","PASSWORD","EQUALS","DIFF","LESS_THAN","LESS_THAN_OR_EQUAL","GREATER_THAN","GREATER_THAN_OR_EQUAL","ValidatableByType","EmailValidator","URLValidator","DateValidator","PasswordValidator","ValidatableByAttribute","RequiredValidator","MinValidator","MaxValidator","StepValidator","MinLengthValidator","MaxLengthValidator","PatternValidator","EqualsValidator","DiffValidator","LessThanValidator","LessThanOrEqualValidator","GreaterThanValidator","GreaterThanOrEqualValidator","HTML5DateFormat","HTML5InputTypes","BUTTON","CHECKBOX","COLOR","DATETIME_LOCAL","FILE","IMAGE","MONTH","NUMBER","RADIO","RANGE","RESET","SEARCH","SUBMIT","TEL","TEXT","TEXTAREA","SELECT","TIME","WEEK","HTML5CheckTypes","ActionRoles","cancel","confirm","submit","clear","back","OperationKeys","CREATE","READ","UPDATE","DELETE","uimodel","tag","props","original","propertyKey","meta","name","metadata","Metadata","key","RenderingError","InternalError","constructor","msg","super","getUIAttributeKey","prop","DecorationKeys","PROPERTIES","formatByType","type","value","args","format","shift","formatDate","Date","parseToNumber","isNaN","parsed","Number","escapeHtml","tagsToReplace","replace","generateUIModelID","model","id","now","Model","pk","e","RenderingEngine","this","cache","flavour","initialized","register","translate","toView","ReservedModels","STRING","toLowerCase","BIGINT","BOOLEAN","getClassDecoratorsMetadata","uiModelOf","uiListModelOf","uiHandlersFor","uiLayoutOf","filter","Boolean","isValidatableByType","Object","keys","includes","isValidatableByAttribute","toAttributeValue","Error","join","toFieldDefinition","globalProps","generateId","inheritProps","globalPropsWithoutInherits","classDecorators","length","classDecorator","assign","item","handlers","uiDecorators","uiPropertiesOf","children","childProps","mapper","getPath","parent","validationDecorators","get","decs","uiDecorationOf","uiTypeOf","NotFoundError","uiIsHidden","uiElementOf","entries","map","k","v","sort","a","forEach","dec","modelName","isPropertyModel","Clazz","submodel","Array","isArray","clazzName","childrenGlobalProps","childOf","childDefinition","push","decProps","render","uiProps","path","undefined","validationDecs","basicType","child","find","c","endsWith","row","col","operation","b","order","hiddenOn","hidden","result","rendererId","engine","current","getOrBoot","obj","initialize","fromObject","renderedBy","hideOn","operations","object","propMetadata","uion","event","handler","isClassConstructor","test","String","DecafComponent","LoggedClass","enableDarkMode","isDarkMode","route","borders","events","repository","_repository","log","for","info","componentName","JSON","stringify","refresh","preview","debug","parseHandlers","instance","fn","clazz","handle","parseEvents","evt","decoratorValidation","prototype","bind","uiIsHiddenOn","op","uiListItems","Render","BackButtonClickEvent","Refresh","Click","Change","Submit","ValidationError","ThemeChange","FormGroupLoaded","handleClick","handleAction","left","center","right","top","bottom","xsmall","small","medium","default","large","xLarge","auto","expand","block","collapse","none","BeforeCreate","AfterCreate","BeforeUpdate","AfterUpdate","BeforeDelete","AfterDelete","light","dark","parseValueByType","fieldProps","trim","parseDate","OBJECT","apply","serialize","target","customTypes","multiple","colsMode","rows","flexMode","cols","breakpoint","LARGE","propName","page","pages","paginated","pageTitles","sequence","valueParserFn"],"mappings":"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"}
1
+ {"version":3,"file":"ui-decorators.cjs","sources":["../src/ui/constants.ts","../src/model/decorators.ts","../src/ui/errors.ts","../src/ui/utils.ts","../src/ui/Rendering.ts","../src/ui/decorators.ts","../src/ui/UIValidator.ts","../src/ui/DecafComponent.ts","../src/ui/DecafTranslateService.ts","../src/model/overrides.ts","../src/ui/DecafEventHandler.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null],"names":["UIMediaBreakPoints","exports","UIKeys","REFLECT","UIMODEL","RENDERED_BY","ELEMENT","PROP","CHILD","NAME","NAME_PREFIX","VALIDATION_MESSAGE","UILISTMODEL","UILISTPROP","UILAYOUT","UILAYOUTPROP","HANDLERS","TYPE","SUB_TYPE","HIDDEN","FORMAT","ORDER","PAGE","EVENTS","FIRST","LAST","READ_ONLY","SEQUENCE","REQUIRED","ValidationKeys","MIN","MIN_LENGTH","MAX","MAX_LENGTH","PATTERN","URL","STEP","DATE","EMAIL","PASSWORD","EQUALS","DIFF","LESS_THAN","LESS_THAN_OR_EQUAL","GREATER_THAN","GREATER_THAN_OR_EQUAL","ValidatableByType","EmailValidator","URLValidator","DateValidator","PasswordValidator","ValidatableByAttribute","RequiredValidator","MinValidator","MaxValidator","StepValidator","MinLengthValidator","MaxLengthValidator","PatternValidator","EqualsValidator","DiffValidator","LessThanValidator","LessThanOrEqualValidator","GreaterThanValidator","GreaterThanOrEqualValidator","HTML5DateFormat","HTML5InputTypes","BUTTON","CHECKBOX","COLOR","DATETIME_LOCAL","FILE","IMAGE","MONTH","NUMBER","RADIO","RANGE","RESET","SEARCH","SUBMIT","TEL","TEXT","TEXTAREA","SELECT","TIME","WEEK","HTML5CheckTypes","ActionRoles","cancel","confirm","submit","clear","back","OperationKeys","CREATE","READ","UPDATE","DELETE","uimodel","tag","props","original","propertyKey","meta","name","metadata","Metadata","key","RenderingError","InternalError","constructor","msg","super","isClassConstructor","fn","test","String","getUIAttributeKey","prop","DecorationKeys","PROPERTIES","formatByType","type","value","args","format","shift","formatDate","Date","parseToNumber","isNaN","parsed","Number","escapeHtml","tagsToReplace","replace","generateUIModelID","model","id","now","Model","pk","e","RenderingEngine","this","cache","flavour","initialized","register","translate","toView","ReservedModels","STRING","toLowerCase","BIGINT","BOOLEAN","getClassDecoratorsMetadata","uiModelOf","uiListModelOf","uiHandlersFor","uiLayoutOf","filter","Boolean","sortChildrenByOrder","children","sort","a","b","aOrder","order","bOrder","weight","v","Primitives","length","indexOf","aWeight","bWeight","isCustomValidator","Object","values","includes","isValidatableByType","keys","isValidatableByAttribute","toAttributeValue","Error","join","toFieldDefinition","globalProps","generateId","inheritProps","globalPropsWithoutInherits","classDecorators","classDecorator","assign","item","handlers","uiDecorators","uiPropertiesOf","childProps","mapper","getPath","parent","validationDecorators","get","decs","uiDecorationOf","uiTypeOf","NotFoundError","uiIsHidden","uiElementOf","entries","map","k","forEach","dec","modelName","isPropertyModel","Clazz","submodel","Array","isArray","clazzName","childrenGlobalProps","childOf","childDefinition","push","decProps","render","uiProps","path","undefined","validationDecs","message","basicType","child","find","c","endsWith","row","col","operation","hiddenOn","hidden","result","rendererId","engine","current","getOrBoot","obj","initialize","fromObject","renderedBy","hideOn","operations","object","propMetadata","uion","event","handler","UIValidator","Validator","getMessage","translateService","DecafComponent","LoggedClass","enableDarkMode","isDarkMode","route","borders","events","repository","_repository","log","for","info","componentName","JSON","stringify","refresh","preview","debug","parseHandlers","instance","clazz","handle","parseEvents","evt","DecafTranslateService","params","instant","decoratorValidation","prototype","bind","uiIsHiddenOn","op","uiListItems","Render","BackButtonClickEvent","Refresh","Click","Change","Submit","ValidationError","ThemeChange","FormGroupLoaded","handleClick","handleAction","left","center","right","top","bottom","xsmall","small","medium","default","large","xLarge","auto","expand","block","collapse","none","BeforeCreate","AfterCreate","BeforeUpdate","AfterUpdate","BeforeDelete","AfterDelete","light","dark","parseValueByType","fieldProps","trim","parseDate","OBJECT","apply","serialize","target","customTypes","multiple","colsMode","rows","flexMode","cols","breakpoint","LARGE","propName","page","pages","paginated","pageTitles","sequence","valueParserFn"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{ValidationKeys as e,EmailValidator as t,URLValidator as r,DateValidator as n,PasswordValidator as o,RequiredValidator as s,MinValidator as i,MaxValidator as a,StepValidator as c,MinLengthValidator as E,MaxLengthValidator as u,PatternValidator as p,EqualsValidator as l,DiffValidator as f,LessThanValidator as d,LessThanOrEqualValidator as h,GreaterThanValidator as T,GreaterThanOrEqualValidator as m,formatDate as R,ReservedModels as O,parseDate as L,Model as A}from"@decaf-ts/decorator-validation";import{OperationKeys as g,InternalError as y,NotFoundError as N}from"@decaf-ts/db-decorators";import{metadata as D,Metadata as I,apply as b,DecorationKeys as C,propMetadata as S}from"@decaf-ts/decoration";import{LoggedClass as P}from"@decaf-ts/logging";var k;(e=>{e.SMALL="small",e.MEDIUM="medium",e.LARGE="large",e.XLARGE="xlarge"})(k||(k={}));const w={REFLECT:"ui",UIMODEL:"uimodel",RENDERED_BY:"rendered-by",ELEMENT:"uielement",PROP:"uiprop",CHILD:"uichild",NAME:"name",NAME_PREFIX:"input-",CUSTOM_PROPS:"customValidationProps",UILISTMODEL:"uilistmodel",UILISTPROP:"uilistprop",UILAYOUT:"uilayout",UILAYOUTPROP:"uilayoutprop",HANDLERS:"handlers",TYPE:"type",SUB_TYPE:"subtype",HIDDEN:"hidden",FORMAT:"format",ORDER:"order",PAGE:"page",EVENTS:"events",READ_ONLY:"readonly",SEQUENCE:"sequence",REQUIRED:e.REQUIRED,MIN:e.MIN,MIN_LENGTH:e.MIN_LENGTH,MAX:e.MAX,MAX_LENGTH:e.MAX_LENGTH,PATTERN:e.PATTERN,URL:e.URL,STEP:e.STEP,DATE:e.DATE,EMAIL:e.EMAIL,PASSWORD:e.PASSWORD,EQUALS:e.EQUALS,DIFF:e.DIFF,LESS_THAN:e.LESS_THAN,LESS_THAN_OR_EQUAL:e.LESS_THAN_OR_EQUAL,GREATER_THAN:e.GREATER_THAN,GREATER_THAN_OR_EQUAL:e.GREATER_THAN_OR_EQUAL},M={[w.EMAIL]:t,[w.URL]:r,[w.DATE]:n,[w.PASSWORD]:o},U={[w.REQUIRED]:s,[w.MIN]:i,[w.MAX]:a,[w.STEP]:c,[w.MIN_LENGTH]:E,[w.MAX_LENGTH]:u,[w.PATTERN]:p,[w.EQUALS]:l,[w.DIFF]:f,[w.LESS_THAN]:d,[w.LESS_THAN_OR_EQUAL]:h,[w.GREATER_THAN]:T,[w.GREATER_THAN_OR_EQUAL]:m},H="yyyy-MM-dd",_={BUTTON:"button",CHECKBOX:"checkbox",COLOR:"color",DATE:w.DATE,DATETIME_LOCAL:"datetime-local",EMAIL:w.EMAIL,FILE:"file",HIDDEN:"hidden",IMAGE:"image",MONTH:"month",NUMBER:"number",PASSWORD:w.PASSWORD,RADIO:"radio",RANGE:"range",RESET:"reset",SEARCH:"search",SUBMIT:"submit",TEL:"tel",TEXT:"text",TEXTAREA:"textarea",SELECT:"select",TIME:"time",URL:w.URL,WEEK:"week"},B=[_.CHECKBOX,_.RADIO],v={Render:"render",BackButtonClickEvent:"backButtonNavigationEndEvent",Refresh:"RefreshEvent",Click:"ClickEvent",Change:"ChangeEvent",Submit:"SubmitEvent",ValidationError:"validationErrorEvent",ThemeChange:"themeChangeEvent",FormGroupLoaded:"formGroupLoadedEvent"},j={BeforeCreate:"beforeCreate",AfterCreate:"afterCreate",BeforeUpdate:"beforeUpdate",AfterUpdate:"afterUpdate",BeforeDelete:"beforeDelete",AfterDelete:"afterDelete"},F={xsmall:"xsmall",small:"small",medium:"medium",default:"default",large:"large",xLarge:"xlarge","2xLarge":"2xlarge",auto:"auto",expand:"expand",block:"block"},G={left:"left",center:"center",right:"right",top:"top",bottom:"bottom"},$={small:"small",medium:"medium",large:"large",collapse:"collapse",none:""},x={cancel:"cancel",confirm:"confirm",submit:"submit",clear:"clear",back:"back",[g.CREATE]:g.CREATE,[g.READ]:g.READ,[g.UPDATE]:g.UPDATE,[g.DELETE]:g.DELETE},X={light:"light",dark:"dark",undefined:"undefined"};function Y(e,t){return(r,n)=>{const o={tag:e||r.name,props:t};return D(I.key(w.REFLECT,w.UIMODEL),o)(r)}}function Q(e){return b(D(I.key(w.REFLECT,w.RENDERED_BY),e))}function V(e,t){return(r,n)=>{const o={item:{tag:e||r.name,props:t}};return D(I.key(w.REFLECT,w.UILISTMODEL),o)(r)}}function J(e){return t=>{const r={handlers:e};return D(I.key(w.REFLECT,w.HANDLERS),r)(t)}}function W(e,t=1,r=1,n={}){return(o,s)=>Y(e,Object.assign({..."boolean"==typeof t?{flexMode:t,cols:1}:{flexMode:!1,cols:t},rows:r,...Object.assign({breakpoint:k.LARGE},n)}))(o,s)}function z(e,t=1,r=!1,n={}){let o=[];return"object"==typeof t&&(o=t,t=o.length),Y(e,{pages:t,paginated:r,pageTitles:o,props:n})}class K extends y{constructor(e){super(e,K.name)}}function q(e,t){return I.key(w.REFLECT,C.PROPERTIES,e,t)}function Z(e,t,...r){if(e===w.DATE){if(!t)return"";const e=r.shift()||H;return R(new Date(t),e)}return t}function ee(e,t,r){let n;switch(e){case Array.name:n=(Array.isArray(t)?t.map(e=>ee(O.STRING.name.toLowerCase(),e,r)):[t]).join(",");break;case _.NUMBER:n=te(t);break;case _.DATE:{const e=r.format;t&&(""+t).trim().length&&(n=typeof t===O.NUMBER.name.toLowerCase()?new Date(t):t?e?L(e,t):new Date(t):void 0);break}default:n=typeof t===O.OBJECT.name.toLowerCase()?Array.isArray(t)?t.join(","):JSON.stringify(t):typeof t===O.BOOLEAN.name.toLowerCase()?t:typeof t===O.STRING.name.toLowerCase()?re(t):n}if(void 0===n)throw new y(`Failed to parse value of type ${e} from ${typeof t} - ${t}`);return n}function te(e){if("number"==typeof e&&!isNaN(e))return e;const t=Number(e);return isNaN(t)?void 0:t}function re(e){if(!e)return e;const t={"&":"&amp;","<":"&lt;",">":"&gt;"};return(""+e).replace(/[&<>]/g,e=>t[e]||e)}function ne(e){const t={"&amp;":"&","&lt;":"<","&gt;":">"};return(""+e).replace(/&lt;|&gt;|&amp;/g,e=>t[e]||e)}function oe(e){let t=Date.now();try{A.pk(e.constructor)&&(t=e[A.pk(e.constructor)])}catch(e){}return`${e.constructor.name}-${t}`}class se{static{this.cache={}}constructor(e){this.flavour=e,this.initialized=!1,se.register(this)}translate(e,t=!0){if(t)switch(e){case O.STRING.name.toLowerCase():return _.TEXT;case O.NUMBER.name.toLowerCase():case O.BIGINT.name.toLowerCase():return _.NUMBER;case O.BOOLEAN.name.toLowerCase():return _.CHECKBOX;case O.DATE.name.toLowerCase():return _.DATE}else switch(e){case _.SELECT:case _.TEXT:case _.EMAIL:case _.COLOR:case _.PASSWORD:case _.TEL:case _.URL:case _.SEARCH:case _.HIDDEN:case _.TEXTAREA:case _.RADIO:return O.STRING.name.toLowerCase();case _.NUMBER:return O.NUMBER.name.toLowerCase();case _.CHECKBOX:return O.BOOLEAN.name.toLowerCase();case _.DATE:case _.DATETIME_LOCAL:case _.TIME:return O.DATE.name.toLowerCase()}return e}getClassDecoratorsMetadata(e){return[A.uiModelOf(e.constructor),A.uiListModelOf(e.constructor),A.uiHandlersFor(e.constructor),A.uiLayoutOf(e.constructor)].filter(Boolean)}isValidatableByType(e){return Object.keys(M).includes(e)}isValidatableByAttribute(e){return Object.keys(U).includes(e)}toAttributeValue(e,t){if(!Object.keys(U).includes(e))throw Error(`Invalid attribute key "${e}". Expected one of: ${Object.keys(U).join(", ")}.`);return e===w.REQUIRED||t[e]}toFieldDefinition(t,r={},n=!0){const{inheritProps:o,...s}=r;r=s;const i=this.getClassDecoratorsMetadata(t);if(!i.length)throw new K(`No ui definitions set for model ${t.constructor.name}. Did you use @uimodel?`);const a=Object.assign({},...i,o||{}),{tag:c,props:E,item:u,handlers:p}=a,l=A.uiPropertiesOf(t.constructor);let f,d=u?.props||{},h={};const T=(e,t)=>e?[e,t].join("."):t;if(l){const n=I.get(t.constructor,e.REFLECT)||{};for(const e of l){const o=A.uiDecorationOf(t.constructor,e);let s;try{s=A.uiTypeOf(t.constructor,e)}catch(e){if(!(e instanceof N))throw e}if(A.uiIsHidden(t.constructor,e)&&!A.uiElementOf(t.constructor,e))throw new K(`@uielement no found in "${e}". It is required to use hiddenOn decorator.`);Object.entries(o).map(([e,t])=>({key:e,props:t})).sort(e=>[w.ELEMENT,w.CHILD].includes(e.key)?-1:1).forEach(o=>{if(!o)throw new K("No decorator found");switch(o.key){case w.PROP:d[e]=o.props;break;case w.CHILD:{const n=o.props?.name||e;if(!A.isPropertyModel(t,n))throw new K(`Child "${n}" must be a model.`);let s;const i=t[e];if("object"!=typeof i||null===i||Array.isArray(i)){const e=o.props.props?.name;s=new(A.get(e))}f=f||[];const a=Object.assign({},r||{},{model:s},{inheritProps:o.props,childOf:T(r?.childOf,e)}),c=this.toFieldDefinition(i||s,a,!1),{inheritProps:E}=a;E&&(c.props=Object.assign({},c.props,E.props||{})),f.push(c);break}case w.UILISTPROP:{h=h||{};const t=o.props;t.name&&(h[t.name]="object"==typeof t?.props&&w.SEQUENCE in t.props?t.props:e);const n=Object.assign({},a.props?.item||{},u?.props||{},t?.props||{},r);d={tag:u?.tag||n.render||"",props:Object.assign({},d?.props,{mapper:h},n)};break}case w.EVENTS:case w.HIDDEN:case w.PAGE:case w.ORDER:case w.UILAYOUTPROP:case w.ELEMENT:{f=f||[];const s=o.props,i=Object.assign({},d?.props,s.props||{},s?.props?.name?{path:T(r?.childOf,s.props.name),childOf:void 0}:{},r,{name:s.props?.name||e});if(o.key===w.ELEMENT){const r={tag:s.tag||d?.tag||c||"",props:i},o=n[e];if(o)for(const e of Object.entries(o).map(([e,t])=>({key:e,props:t})))this.isValidatableByAttribute(e.key)?r.props[this.translate(e.key)]=this.toAttributeValue(e.key,e.props):this.isValidatableByType(e.key)&&(e.key===_.DATE&&(r.props[w.FORMAT]=e.props.format||H),r.props[w.TYPE]=e.key);if(!r.props[w.TYPE]){const n=I.type(t.constructor,e).name;r.props[w.TYPE]=this.translate(n.toLowerCase(),!0)}r.props.value=Z(r.props[w.TYPE],t[e],r.props[w.FORMAT]),f.push(r)}else{const t=f.find(t=>t.props?.name===e||[w.UILAYOUTPROP,w.PAGE,w.EVENTS].includes(o.key)&&(t.props?.childOf===e||t.props?.childOf?.endsWith("."+e)));if(t)if(o.key!==w.UILAYOUTPROP)t.props=Object.assign({},t.props,{[o.key]:s});else{const{row:e,col:r,props:n}=o.props;t.props=Object.assign({},n||{},t.props,e,r)}}break}default:throw new K("Invalid key: "+o.key)}})}}r=Object.assign({},E,r,{handlers:p||{}});const m=r?.operation;f=f?.sort((e,t)=>(e?.props?.order??0)-(t?.props?.order??0)).filter(e=>{const t=e?.props?.hidden||[];return t?.length&&t.includes(m)?void 0:e});const R={tag:c,item:d,props:r,children:f};return n&&(R.rendererId=oe(t)),R}static register(e){if(e.flavour in this.cache)throw new y(`Rendering engine under ${e.flavour} already exists`);this.cache[e.flavour]=e,this.current=e}static getOrBoot(e){if(e instanceof se)return e;const t=new e;return t.initialize(),t}static get(e){if(!e)return this.getOrBoot(this.current);if(!(e in this.cache))throw new y(`Rendering engine under ${e} does not exist`);return this.getOrBoot(this.cache[e])}static render(e,...t){if(!A.get(e.constructor.name)&&!A.fromObject(e))throw new y("No model registered found");const r=A.renderedBy(e.constructor);return se.get(r).render(e,...t)}}function ie(...e){return(t,r)=>S(q(r,w.HIDDEN),e)(t,r)}function ae(e=1){return(t,r)=>S(q(r,w.ORDER),e)(t,r)}function ce(){return ie(g.CREATE,g.READ,g.UPDATE,g.DELETE)}function Ee(e,t,r=!1){return(n,o)=>{"object"==typeof e&&(t=e,e="");const s={tag:e,serialize:r,props:Object.assign({},t||{},{name:o})};return S(q(o,w.ELEMENT),s)(n,o)}}function ue(e=void 0,t=!1){return(r,n)=>{const o={name:e||n,stringify:t};S(q(n,w.PROP),o)(r,n)}}function pe(e,t,r={},n=!1,o=!1){return(s,i)=>{const a={tag:t,serialize:o,props:Object.assign({},r||{},{name:e||i},n?{customTypes:[Array.name],multiple:!0}:{multiple:r?.multiple||!1})};S(q(i,w.CHILD),a)(s,i)}}function le(e=void 0,t){return(r,n)=>{const o={name:e||n,props:t||{}};S(q(n,w.UILISTPROP),o)(r,n)}}function fe(e=1,t=1){return(r,n)=>{const o={name:n,props:Object.assign({},{row:t,col:e})};S(q(n,w.UILAYOUTPROP),o)(r,n)}}function de(e=1){return(t,r)=>S(q(r,w.PAGE),e)(t,r)}function he(e,t){return(r,n)=>{S(q(n,w.EVENTS),{..."object"==typeof e?e:{[e]:t}})(r,n)}}function Te(e){return he("handleClick",e)}function me(e){return he("render",e)}function Re(e,t){return(r,n)=>{const o={name:n,props:{sequence:e,...t?{valueParserFn:t}:{}}};S(q(n,w.UILISTPROP),o)(r,n)}}const Oe=e=>"function"==typeof e&&/^class\s/.test(e+"");class Le extends P{constructor(){super(),this.enableDarkMode=!0,this.isDarkMode=!1,this.item={tag:""},this.props={},this.route="",this.borders=!1,this.OperationKeys=g,this.initialized=!1,this.events={},this.handlers={}}get repository(){return this._repository}set repository(e){this._repository=e}async render(...e){this.log.for(this.render).info(`render for ${this.componentName} with ${JSON.stringify(e)}`)}async refresh(...e){this.log.for(this.refresh).info("Refresh called with args: "+e)}async initialize(...e){this.initialized=!0}async translate(...e){this.log.for(this.translate).info(`translate for ${this.componentName} with ${JSON.stringify(e)}`)}async preview(...e){this.log.for(this.preview).debug("Preview called with args: "+e)}async submit(...e){this.log.for(this.submit).info(`submit for ${this.componentName} with ${JSON.stringify(e)}`)}parseHandlers(e,t){const r={};return Object.entries(e).forEach(([e,n])=>{if(Oe(n)){const o=new n,s=e in o?o[e]:o.handle;r[e]=s,t.handlers[e]=s}else r[e]=n,t.handlers[e]=n}),r}parseEvents(e,t){const r={};return Object.entries(e).forEach(([e,n])=>{const o=e,s=n();if(Oe(s)){const n=(new s)[e];n&&(r[o]=n,t.events[o]=n)}else r[o]=n,t.events[o]=n}),r}}class Ae extends Le{constructor(){super()}handle(...e){this.log.for(this.handle).info(`component ${this.componentName} handling ${JSON.stringify(e)}`)}handleClick(...e){this.log.for(this.handleClick).info(`component ${this.componentName} handling click ${JSON.stringify(e)}`)}handleAction(...e){this.log.for(this.handleAction).info(`component ${this.componentName} handling action ${JSON.stringify(e)}`)}}A.prototype.render=function(...e){return se.render(this,...e)},A.renderedBy=(e=>I.get(e,I.key(w.REFLECT,w.RENDERED_BY))).bind(A),A.uiPropertiesOf=(e=>{const t=I.get(e,I.key(w.REFLECT,C.PROPERTIES));if(t)return Object.keys(t)}).bind(A),A.uiDecorationOf=(e,t,r)=>{const n=I.get(e,I.key(w.REFLECT,C.PROPERTIES,t));if(n)return r?n[r]:n},A.uiModelOf=e=>I.get(e,I.key(w.REFLECT,w.UIMODEL)),A.uiElementOf=(e,t)=>I.get(e,q(t,w.ELEMENT)),A.uiListModelOf=e=>I.get(e,I.key(w.REFLECT,w.UILISTMODEL)),A.uiHandlersFor=e=>I.get(e,I.key(w.REFLECT,w.HANDLERS)),A.uiLayoutOf=e=>I.get(e,I.key(w.REFLECT,w.UILAYOUT)),A.uiIsHidden=(e,t)=>!!I.get(e,q(t,w.HIDDEN)),A.uiIsHiddenOn=(e,t,r)=>{const n=I.get(e,q(t,w.HIDDEN));return!!n&&(r?n.includes(r):n)},A.uiTypeOf=(e,t)=>{const r=I.get(e,I.key(w.REFLECT,C.PROPERTIES,t));if(!r)throw new N(`No metadata found for property '${t}' on model '${e.name}'`);const n=Object.keys(r).filter(e=>[w.PROP,w.ELEMENT,w.CHILD].includes(e));if(0===n.length)throw new N(`No UI type metadata found for property '${t}' on model '${e.name}'`);if(n.length>1)throw new K("Only one type of decoration is allowed. Please choose between @uiprop, @uichild or @uielement");return r[n[0]]},A.uiListItems=(e=>{const t=I.get(e,I.key(w.REFLECT,C.PROPERTIES));if(t)return Object.keys(t)}).bind(A);const ge="##VERSION##";export{x as ActionRoles,v as ComponentEventNames,Le as DecafComponent,Ae as DecafEventHandler,G as ElementPositions,F as ElementSizes,B as HTML5CheckTypes,H as HTML5DateFormat,_ as HTML5InputTypes,$ as LayoutGridGaps,se as RenderingEngine,K as RenderingError,j as TransactionHooks,w as UIKeys,k as UIMediaBreakPoints,ge as VERSION,U as ValidatableByAttribute,M as ValidatableByType,X as WindowColorSchemes,re as escapeHtml,Z as formatByType,oe as generateUIModelID,q as getUIAttributeKey,ce as hidden,ie as hideOn,Oe as isClassConstructor,te as parseToNumber,ee as parseValueByType,Q as renderedBy,ne as revertHtml,pe as uichild,Ee as uielement,J as uihandlers,W as uilayout,fe as uilayoutprop,V as uilistmodel,le as uilistprop,Y as uimodel,he as uion,Te as uionclick,me as uionrender,ae as uiorder,de as uipageprop,ue as uiprop,z as uisteppedmodel,Re as uitablecol};
1
+ import{ValidationKeys as e,EmailValidator as t,URLValidator as r,DateValidator as n,PasswordValidator as o,RequiredValidator as s,MinValidator as i,MaxValidator as a,StepValidator as c,MinLengthValidator as E,MaxLengthValidator as l,PatternValidator as u,EqualsValidator as p,DiffValidator as f,LessThanValidator as d,LessThanOrEqualValidator as h,GreaterThanValidator as T,GreaterThanOrEqualValidator as m,formatDate as R,ReservedModels as O,parseDate as A,Model as L,Primitives as g,Validator as y}from"@decaf-ts/decorator-validation";import{OperationKeys as N,InternalError as D,NotFoundError as I}from"@decaf-ts/db-decorators";import{metadata as S,Metadata as b,apply as C,DecorationKeys as M,propMetadata as P}from"@decaf-ts/decoration";import{LoggedClass as k}from"@decaf-ts/logging";var w;(e=>{e.SMALL="small",e.MEDIUM="medium",e.LARGE="large",e.XLARGE="xlarge"})(w||(w={}));const U={REFLECT:"ui",UIMODEL:"uimodel",RENDERED_BY:"rendered-by",ELEMENT:"uielement",PROP:"uiprop",CHILD:"uichild",NAME:"name",NAME_PREFIX:"input-",VALIDATION_MESSAGE:"validationMessage",UILISTMODEL:"uilistmodel",UILISTPROP:"uilistprop",UILAYOUT:"uilayout",UILAYOUTPROP:"uilayoutprop",HANDLERS:"handlers",TYPE:"type",SUB_TYPE:"subType",HIDDEN:"hidden",FORMAT:"format",ORDER:"order",PAGE:"page",EVENTS:"events",FIRST:"first",LAST:"last",READ_ONLY:"readonly",SEQUENCE:"sequence",REQUIRED:e.REQUIRED,MIN:e.MIN,MIN_LENGTH:e.MIN_LENGTH,MAX:e.MAX,MAX_LENGTH:e.MAX_LENGTH,PATTERN:e.PATTERN,URL:e.URL,STEP:e.STEP,DATE:e.DATE,EMAIL:e.EMAIL,PASSWORD:e.PASSWORD,EQUALS:e.EQUALS,DIFF:e.DIFF,LESS_THAN:e.LESS_THAN,LESS_THAN_OR_EQUAL:e.LESS_THAN_OR_EQUAL,GREATER_THAN:e.GREATER_THAN,GREATER_THAN_OR_EQUAL:e.GREATER_THAN_OR_EQUAL},H={[U.EMAIL]:t,[U.URL]:r,[U.DATE]:n,[U.PASSWORD]:o},B={[U.REQUIRED]:s,[U.MIN]:i,[U.MAX]:a,[U.STEP]:c,[U.MIN_LENGTH]:E,[U.MAX_LENGTH]:l,[U.PATTERN]:u,[U.EQUALS]:p,[U.DIFF]:f,[U.LESS_THAN]:d,[U.LESS_THAN_OR_EQUAL]:h,[U.GREATER_THAN]:T,[U.GREATER_THAN_OR_EQUAL]:m},v="yyyy-MM-dd",_={BUTTON:"button",CHECKBOX:"checkbox",COLOR:"color",DATE:U.DATE,DATETIME_LOCAL:"datetime-local",EMAIL:U.EMAIL,FILE:"file",HIDDEN:"hidden",IMAGE:"image",MONTH:"month",NUMBER:"number",PASSWORD:U.PASSWORD,RADIO:"radio",RANGE:"range",RESET:"reset",SEARCH:"search",SUBMIT:"submit",TEL:"tel",TEXT:"text",TEXTAREA:"textarea",SELECT:"select",TIME:"time",URL:U.URL,WEEK:"week"},j=[_.CHECKBOX,_.RADIO],F={Render:"render",BackButtonClickEvent:"backButtonNavigationEndEvent",Refresh:"RefreshEvent",Click:"ClickEvent",Change:"ChangeEvent",Submit:"SubmitEvent",ValidationError:"validationErrorEvent",ThemeChange:"themeChangeEvent",FormGroupLoaded:"formGroupLoadedEvent"},$={BeforeCreate:"beforeCreate",AfterCreate:"afterCreate",BeforeUpdate:"beforeUpdate",AfterUpdate:"afterUpdate",BeforeDelete:"beforeDelete",AfterDelete:"afterDelete"},G={xsmall:"xsmall",small:"small",medium:"medium",default:"default",large:"large",xLarge:"xlarge","2xLarge":"2xlarge",auto:"auto",expand:"expand",block:"block"},x={left:"left",center:"center",right:"right",top:"top",bottom:"bottom"},Y={small:"small",medium:"medium",large:"large",collapse:"collapse",none:""},X={cancel:"cancel",confirm:"confirm",submit:"submit",clear:"clear",back:"back",[N.CREATE]:N.CREATE,[N.READ]:N.READ,[N.UPDATE]:N.UPDATE,[N.DELETE]:N.DELETE},V={light:"light",dark:"dark",undefined:"undefined"};function Q(e,t){return(r,n)=>{const o={tag:e||r.name,props:t};return S(b.key(U.REFLECT,U.UIMODEL),o)(r)}}function J(e){return C(S(b.key(U.REFLECT,U.RENDERED_BY),e))}function W(e,t){return(r,n)=>{const o={item:{tag:e||r.name,props:t}};return S(b.key(U.REFLECT,U.UILISTMODEL),o)(r)}}function z(e){return t=>{const r={handlers:e};return S(b.key(U.REFLECT,U.HANDLERS),r)(t)}}function K(e,t=1,r=1,n={}){return(o,s)=>Q(e,Object.assign({..."boolean"==typeof t?{flexMode:t,cols:1}:{flexMode:!1,cols:t},rows:r,...Object.assign({breakpoint:w.LARGE},n)}))(o,s)}function q(e,t=1,r=!1,n={}){let o=[];return"object"==typeof t&&(o=t,t=o.length),Q(e,{pages:t,paginated:r,pageTitles:o,props:n})}class Z extends D{constructor(e){super(e,Z.name)}}const ee=e=>"function"==typeof e&&/^class\s/.test(e+"");function te(e,t){return b.key(U.REFLECT,M.PROPERTIES,e,t)}function re(e,t,...r){if(e===U.DATE){if(!t)return"";const e=r.shift()||v;return R(new Date(t),e)}return t}function ne(e,t,r){let n;switch(e){case Array.name:n=(Array.isArray(t)?t.map(e=>ne(O.STRING.name.toLowerCase(),e,r)):[t]).join(",");break;case _.NUMBER:n=oe(t);break;case _.DATE:{const e=r.format;t&&(""+t).trim().length&&(n=typeof t===O.NUMBER.name.toLowerCase()?new Date(t):t?e?A(e,t):new Date(t):void 0);break}default:n=typeof t===O.OBJECT.name.toLowerCase()?Array.isArray(t)?t.join(","):JSON.stringify(t):typeof t===O.BOOLEAN.name.toLowerCase()?t:typeof t===O.STRING.name.toLowerCase()?se(t):n}if(void 0===n)throw new D(`Failed to parse value of type ${e} from ${typeof t} - ${t}`);return n}function oe(e){if("number"==typeof e&&!isNaN(e))return e;const t=Number(e);return isNaN(t)?void 0:t}function se(e){if(!e)return e;const t={"&":"&amp;","<":"&lt;",">":"&gt;"};return(""+e).replace(/[&<>]/g,e=>t[e]||e)}function ie(e){const t={"&amp;":"&","&lt;":"<","&gt;":">"};return(""+e).replace(/&lt;|&gt;|&amp;/g,e=>t[e]||e)}function ae(e){let t=Date.now();try{L.pk(e.constructor)&&(t=e[L.pk(e.constructor)])}catch(e){}return`${e.constructor.name}-${t}`}class ce{static{this.cache={}}constructor(e){this.flavour=e,this.initialized=!1,ce.register(this)}translate(e,t=!0){if(t)switch(e){case O.STRING.name.toLowerCase():return _.TEXT;case O.NUMBER.name.toLowerCase():case O.BIGINT.name.toLowerCase():return _.NUMBER;case O.BOOLEAN.name.toLowerCase():return _.CHECKBOX;case O.DATE.name.toLowerCase():return _.DATE}else switch(e){case _.SELECT:case _.TEXT:case _.EMAIL:case _.COLOR:case _.PASSWORD:case _.TEL:case _.URL:case _.SEARCH:case _.HIDDEN:case _.TEXTAREA:case _.RADIO:return O.STRING.name.toLowerCase();case _.NUMBER:return O.NUMBER.name.toLowerCase();case _.CHECKBOX:return O.BOOLEAN.name.toLowerCase();case _.DATE:case _.DATETIME_LOCAL:case _.TIME:return O.DATE.name.toLowerCase()}return e}getClassDecoratorsMetadata(e){return[L.uiModelOf(e.constructor),L.uiListModelOf(e.constructor),L.uiHandlersFor(e.constructor),L.uiLayoutOf(e.constructor)].filter(Boolean)}sortChildrenByOrder(e=[]){return e.sort((t,r)=>{const n=t.props?.order??0,o=r.props?.order??0,s=t=>t===U.FIRST?0:typeof t===g.NUMBER?1:t===U.LAST?e.length+e.indexOf(r):1,i=s(n),a=s(o);return i!==a?i-a:1===i&&typeof n===g.NUMBER&&typeof o===g.NUMBER?n-o:0})}isCustomValidator(t){return!Object.values(e).includes(t)&&!Object.values(U).includes(t)}isValidatableByType(e){return Object.keys(H).includes(e)}isValidatableByAttribute(e){return Object.keys(B).includes(e)}toAttributeValue(e,t){if(!Object.keys(B).includes(e))throw Error(`Invalid attribute key "${e}". Expected one of: ${Object.keys(B).join(", ")}.`);return e===U.REQUIRED||t[e]}toFieldDefinition(t,r={},n=!0){const{inheritProps:o,...s}=r;r=s;const i=this.getClassDecoratorsMetadata(t);if(!i.length)throw new Z(`No ui definitions set for model ${t.constructor.name}. Did you use @uimodel?`);const a=Object.assign({},...i,o||{}),{tag:c,props:E,item:l,handlers:u}=a,p=L.uiPropertiesOf(t.constructor);let f,d=l?.props||{},h={};const T=(e,t)=>e?[e,t].join("."):t;if(p){const n=b.get(t.constructor,e.REFLECT)||{};for(const e of p){const o=L.uiDecorationOf(t.constructor,e);let s;try{s=L.uiTypeOf(t.constructor,e)}catch(e){if(!(e instanceof I))throw e}if(L.uiIsHidden(t.constructor,e)&&!L.uiElementOf(t.constructor,e))throw new Z(`@uielement no found in "${e}". It is required to use hiddenOn decorator.`);Object.entries(o).map(([e,t])=>({key:e,props:t})).sort(e=>[U.ELEMENT,U.CHILD].includes(e.key)?-1:1).forEach(o=>{if(!o)throw new Z("No decorator found");switch(o.key){case U.PROP:d[e]=o.props;break;case U.CHILD:{const n=o.props?.name||e;if(!L.isPropertyModel(t,n))throw new Z(`Child "${n}" must be a model.`);let s;const i=t[e];if("object"!=typeof i||null===i||Array.isArray(i)){const e=o.props.props?.name;s=new(L.get(e))}f=f||[];const a=Object.assign({},r||{},{model:s},{inheritProps:o.props,childOf:T(r?.childOf,e)}),c=this.toFieldDefinition(i||s,a,!1),{inheritProps:E}=a;E&&(c.props=Object.assign({},c.props,E.props||{})),f.push(c);break}case U.UILISTPROP:{h=h||{};const t=o.props;t.name&&(h[t.name]="object"==typeof t?.props&&U.SEQUENCE in t.props?t.props:e);const n=Object.assign({},a.props?.item||{},l?.props||{},t?.props||{},r);d={tag:l?.tag||n.render||"",props:Object.assign({},d?.props,{mapper:h},n)};break}case U.EVENTS:case U.HIDDEN:case U.PAGE:case U.ORDER:case U.UILAYOUTPROP:case U.ELEMENT:{f=f||[];const s=o.props,i=Object.assign({},d?.props,s.props||{},s?.props?.name?{path:T(r?.childOf,s.props.name),childOf:void 0}:{},r,{name:s.props?.name||e});if(o.key===U.ELEMENT){const r={tag:s.tag||d?.tag||c||"",props:i},o=n[e];if(o)for(const e of Object.entries(o).map(([e,t])=>({key:e,props:t})))this.isValidatableByAttribute(e.key)?r.props[this.translate(e.key)]=this.toAttributeValue(e.key,e.props):this.isValidatableByType(e.key)?(e.key===_.DATE&&(r.props[U.FORMAT]=e.props.format||v),r.props[U.TYPE]=e.key):this.isCustomValidator(e.key)&&(i[U.SUB_TYPE]=e.key,e.props?.message&&(i[U.VALIDATION_MESSAGE]=e.props.message));if(!r.props[U.TYPE]){const n=b.type(t.constructor,e).name;r.props[U.TYPE]=this.translate(n.toLowerCase(),!0)}r.props.value=re(r.props[U.TYPE],t[e],r.props[U.FORMAT]),f.push(r)}else{const t=f.find(t=>t.props?.name===e||[U.UILAYOUTPROP,U.PAGE,U.EVENTS].includes(o.key)&&(t.props?.childOf===e||t.props?.childOf?.endsWith("."+e)));if(t)if(o.key!==U.UILAYOUTPROP)t.props=Object.assign({},t.props,{[o.key]:s});else{const{row:e,col:r,props:n}=o.props;t.props=Object.assign({},n||{},t.props,e,r)}}break}default:throw new Z("Invalid key: "+o.key)}})}}r=Object.assign({},E,r,{handlers:u||{}});const m=r?.operation;f=this.sortChildrenByOrder(f).filter(e=>{const t=e?.props?.hidden||[];return t?.length&&t.includes(m)?void 0:e});const R={tag:c,item:d,props:r,children:f?.length?f:void 0};return n&&(R.rendererId=ae(t)),R}static register(e){if(e.flavour in this.cache)throw new D(`Rendering engine under ${e.flavour} already exists`);this.cache[e.flavour]=e,this.current=e}static getOrBoot(e){if(e instanceof ce)return e;const t=new e;return t.initialize(),t}static get(e){if(!e)return this.getOrBoot(this.current);if(!(e in this.cache))throw new D(`Rendering engine under ${e} does not exist`);return this.getOrBoot(this.cache[e])}static render(e,...t){if(!L.get(e.constructor.name)&&!L.fromObject(e))throw new D("No model registered found");const r=L.renderedBy(e.constructor);return ce.get(r).render(e,...t)}}function Ee(...e){return(t,r)=>P(te(r,U.HIDDEN),e)(t,r)}function le(e=U.FIRST){return(t,r)=>P(te(r,U.ORDER),e)(t,r)}function ue(){return Ee(N.CREATE,N.READ,N.UPDATE,N.DELETE)}function pe(e,t,r=!1){return(n,o)=>{"object"==typeof e&&(t=e,e="");const s={tag:e,serialize:r,props:Object.assign({},t||{},{name:o})};return P(te(o,U.ELEMENT),s)(n,o)}}function fe(e=void 0,t=!1){return(r,n)=>{const o={name:e||n,stringify:t};P(te(n,U.PROP),o)(r,n)}}function de(e,t,r={},n=!1,o=!1){return(s,i)=>{const a={tag:t,serialize:o,props:Object.assign({},r||{},{name:e||i},n?{customTypes:[Array.name],multiple:!0}:{multiple:r?.multiple||!1})};P(te(i,U.CHILD),a)(s,i)}}function he(e=void 0,t){return(r,n)=>{const o={name:e||n,props:t||{}};P(te(n,U.UILISTPROP),o)(r,n)}}function Te(e=1,t=1){return(r,n)=>{const o={name:n,props:Object.assign({},{row:t,col:e})};P(te(n,U.UILAYOUTPROP),o)(r,n)}}function me(e=1){return(t,r)=>P(te(r,U.PAGE),e)(t,r)}function Re(e,t){return(r,n)=>{P(te(n,U.EVENTS),{..."object"==typeof e?e:{[e]:t}})(r,n)}}function Oe(e){return Re("handleClick",e)}function Ae(e){return Re("render",e)}function Le(e=U.LAST,t){return(r,n)=>{const o={name:n,props:{sequence:e,...t?{valueParserFn:t}:{}}};P(te(n,U.UILISTPROP),o)(r,n)}}class ge extends y{getMessage(e,...t){return ge.translateService?ge.translateService.translate(e,...t):super.getMessage(e,...t)}}class ye extends k{constructor(){super(),this.enableDarkMode=!0,this.isDarkMode=!1,this.item={tag:""},this.props={},this.route="",this.borders=!1,this.OperationKeys=N,this.initialized=!1,this.events={},this.handlers={}}get repository(){return this._repository}set repository(e){this._repository=e}async render(...e){this.log.for(this.render).info(`render for ${this.componentName} with ${JSON.stringify(e)}`)}async refresh(...e){this.log.for(this.refresh).info("Refresh called with args: "+e)}async initialize(...e){this.initialized=!0}async translate(...e){this.log.for(this.translate).info(`translate for ${this.componentName} with ${JSON.stringify(e)}`)}async preview(...e){this.log.for(this.preview).debug("Preview called with args: "+e)}async submit(...e){this.log.for(this.submit).info(`submit for ${this.componentName} with ${JSON.stringify(e)}`)}parseHandlers(e,t){const r={};return Object.entries(e).forEach(([e,n])=>{if(ee(n)){const o=new n,s=e in o?o[e]:o.handle;r[e]=s,t.handlers[e]=s}else r[e]=n,t.handlers[e]=n}),r}parseEvents(e,t){const r={};return Object.entries(e).forEach(([e,n])=>{const o=e,s=n();if(ee(s)){const n=(new s)[e];n&&(r[o]=n,t.events[o]=n)}else r[o]=n,t.events[o]=n}),r}}class Ne extends ye{constructor(){super()}handle(...e){this.log.for(this.handle).info(`component ${this.componentName} handling ${JSON.stringify(e)}`)}handleClick(...e){this.log.for(this.handleClick).info(`component ${this.componentName} handling click ${JSON.stringify(e)}`)}handleAction(...e){this.log.for(this.handleAction).info(`component ${this.componentName} handling action ${JSON.stringify(e)}`)}}class De extends k{translate(e,t){this.log.for(this.translate).info(`Must translate ${e} with params ${JSON.stringify(t||{})}`)}instant(e,t){this.log.for(this.instant).info(`Must translate ${e} with params ${JSON.stringify(t||{})}`)}}L.prototype.render=function(...e){return ce.render(this,...e)},L.renderedBy=(e=>b.get(e,b.key(U.REFLECT,U.RENDERED_BY))).bind(L),L.uiPropertiesOf=(e=>{const t=b.get(e,b.key(U.REFLECT,M.PROPERTIES));if(t)return Object.keys(t)}).bind(L),L.uiDecorationOf=(e,t,r)=>{const n=b.get(e,b.key(U.REFLECT,M.PROPERTIES,t));if(n)return r?n[r]:n},L.uiModelOf=e=>b.get(e,b.key(U.REFLECT,U.UIMODEL)),L.uiElementOf=(e,t)=>b.get(e,te(t,U.ELEMENT)),L.uiListModelOf=e=>b.get(e,b.key(U.REFLECT,U.UILISTMODEL)),L.uiHandlersFor=e=>b.get(e,b.key(U.REFLECT,U.HANDLERS)),L.uiLayoutOf=e=>b.get(e,b.key(U.REFLECT,U.UILAYOUT)),L.uiIsHidden=(e,t)=>!!b.get(e,te(t,U.HIDDEN)),L.uiIsHiddenOn=(e,t,r)=>{const n=b.get(e,te(t,U.HIDDEN));return!!n&&(r?n.includes(r):n)},L.uiTypeOf=(e,t)=>{const r=b.get(e,b.key(U.REFLECT,M.PROPERTIES,t));if(!r)throw new I(`No metadata found for property '${t}' on model '${e.name}'`);const n=Object.keys(r).filter(e=>[U.PROP,U.ELEMENT,U.CHILD].includes(e));if(0===n.length)throw new I(`No UI type metadata found for property '${t}' on model '${e.name}'`);if(n.length>1)throw new Z("Only one type of decoration is allowed. Please choose between @uiprop, @uichild or @uielement");return r[n[0]]},L.uiListItems=(e=>{const t=b.get(e,b.key(U.REFLECT,M.PROPERTIES));if(t)return Object.keys(t)}).bind(L);const Ie="##VERSION##";export{X as ActionRoles,F as ComponentEventNames,ye as DecafComponent,Ne as DecafEventHandler,De as DecafTranslateService,x as ElementPositions,G as ElementSizes,j as HTML5CheckTypes,v as HTML5DateFormat,_ as HTML5InputTypes,Y as LayoutGridGaps,ce as RenderingEngine,Z as RenderingError,$ as TransactionHooks,U as UIKeys,w as UIMediaBreakPoints,ge as UIValidator,Ie as VERSION,B as ValidatableByAttribute,H as ValidatableByType,V as WindowColorSchemes,se as escapeHtml,re as formatByType,ae as generateUIModelID,te as getUIAttributeKey,ue as hidden,Ee as hideOn,ee as isClassConstructor,oe as parseToNumber,ne as parseValueByType,J as renderedBy,ie as revertHtml,de as uichild,pe as uielement,z as uihandlers,K as uilayout,Te as uilayoutprop,W as uilistmodel,he as uilistprop,Q as uimodel,Re as uion,Oe as uionclick,Ae as uionrender,le as uiorder,me as uipageprop,fe as uiprop,q as uisteppedmodel,Le as uitablecol};
2
2
  //# sourceMappingURL=ui-decorators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui-decorators.js","sources":["../src/ui/constants.ts","../src/model/decorators.ts","../src/ui/errors.ts","../src/ui/utils.ts","../src/ui/Rendering.ts","../src/ui/decorators.ts","../src/ui/DecafComponent.ts","../src/ui/DecafEventHandler.ts","../src/model/overrides.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null],"names":["UIMediaBreakPoints","UIKeys","REFLECT","UIMODEL","RENDERED_BY","ELEMENT","PROP","CHILD","NAME","NAME_PREFIX","CUSTOM_PROPS","UILISTMODEL","UILISTPROP","UILAYOUT","UILAYOUTPROP","HANDLERS","TYPE","SUB_TYPE","HIDDEN","FORMAT","ORDER","PAGE","EVENTS","READ_ONLY","SEQUENCE","REQUIRED","ValidationKeys","MIN","MIN_LENGTH","MAX","MAX_LENGTH","PATTERN","URL","STEP","DATE","EMAIL","PASSWORD","EQUALS","DIFF","LESS_THAN","LESS_THAN_OR_EQUAL","GREATER_THAN","GREATER_THAN_OR_EQUAL","ValidatableByType","EmailValidator","URLValidator","DateValidator","PasswordValidator","ValidatableByAttribute","RequiredValidator","MinValidator","MaxValidator","StepValidator","MinLengthValidator","MaxLengthValidator","PatternValidator","EqualsValidator","DiffValidator","LessThanValidator","LessThanOrEqualValidator","GreaterThanValidator","GreaterThanOrEqualValidator","HTML5DateFormat","HTML5InputTypes","BUTTON","CHECKBOX","COLOR","DATETIME_LOCAL","FILE","IMAGE","MONTH","NUMBER","RADIO","RANGE","RESET","SEARCH","SUBMIT","TEL","TEXT","TEXTAREA","SELECT","TIME","WEEK","HTML5CheckTypes","ComponentEventNames","Render","BackButtonClickEvent","Refresh","Click","Change","Submit","ValidationError","ThemeChange","FormGroupLoaded","TransactionHooks","BeforeCreate","AfterCreate","BeforeUpdate","AfterUpdate","BeforeDelete","AfterDelete","ElementSizes","xsmall","small","medium","default","large","xLarge","auto","expand","block","ElementPositions","left","center","right","top","bottom","LayoutGridGaps","collapse","none","ActionRoles","cancel","confirm","submit","clear","back","OperationKeys","CREATE","READ","UPDATE","DELETE","WindowColorSchemes","light","dark","undefined","uimodel","tag","props","original","propertyKey","meta","name","metadata","Metadata","key","renderedBy","engine","apply","uilistmodel","item","uihandlers","handlers","uilayout","colsMode","rows","Object","assign","flexMode","cols","breakpoint","LARGE","uisteppedmodel","pages","paginated","pageTitles","length","RenderingError","InternalError","constructor","msg","super","getUIAttributeKey","prop","DecorationKeys","PROPERTIES","formatByType","type","value","args","format","shift","formatDate","Date","parseValueByType","fieldProps","result","Array","isArray","map","v","ReservedModels","STRING","toLowerCase","join","parseToNumber","trim","parseDate","OBJECT","JSON","stringify","BOOLEAN","escapeHtml","isNaN","parsed","Number","tagsToReplace","replace","revertHtml","generateUIModelID","model","id","now","Model","pk","e","RenderingEngine","this","cache","flavour","initialized","register","translate","toView","BIGINT","getClassDecoratorsMetadata","uiModelOf","uiListModelOf","uiHandlersFor","uiLayoutOf","filter","Boolean","isValidatableByType","keys","includes","isValidatableByAttribute","toAttributeValue","Error","toFieldDefinition","globalProps","generateId","inheritProps","globalPropsWithoutInherits","classDecorators","classDecorator","uiDecorators","uiPropertiesOf","children","childProps","mapper","getPath","parent","validationDecorators","get","decs","uiDecorationOf","uiTypeOf","NotFoundError","uiIsHidden","uiElementOf","entries","k","sort","a","forEach","dec","modelName","isPropertyModel","Clazz","submodel","clazzName","childrenGlobalProps","childOf","childDefinition","push","decProps","render","uiProps","path","validationDecs","basicType","child","find","c","endsWith","row","col","operation","b","order","hiddenOn","hidden","rendererId","current","getOrBoot","obj","initialize","fromObject","hideOn","operations","object","propMetadata","uiorder","uielement","serialize","uiprop","propName","target","uichild","clazz","customTypes","multiple","uilistprop","uilayoutprop","uipageprop","page","uion","event","handler","uionclick","uionrender","uitablecol","sequence","valueParserFn","isClassConstructor","test","String","DecafComponent","LoggedClass","enableDarkMode","isDarkMode","route","borders","events","repository","_repository","log","for","info","componentName","refresh","preview","debug","parseHandlers","instance","fn","handle","parseEvents","evt","DecafEventHandler","handleClick","handleAction","prototype","bind","uiIsHiddenOn","op","uiListItems","VERSION"],"mappings":"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"}
1
+ {"version":3,"file":"ui-decorators.js","sources":["../src/ui/constants.ts","../src/model/decorators.ts","../src/ui/errors.ts","../src/ui/utils.ts","../src/ui/Rendering.ts","../src/ui/decorators.ts","../src/ui/UIValidator.ts","../src/ui/DecafComponent.ts","../src/ui/DecafEventHandler.ts","../src/ui/DecafTranslateService.ts","../src/model/overrides.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null],"names":["UIMediaBreakPoints","UIKeys","REFLECT","UIMODEL","RENDERED_BY","ELEMENT","PROP","CHILD","NAME","NAME_PREFIX","VALIDATION_MESSAGE","UILISTMODEL","UILISTPROP","UILAYOUT","UILAYOUTPROP","HANDLERS","TYPE","SUB_TYPE","HIDDEN","FORMAT","ORDER","PAGE","EVENTS","FIRST","LAST","READ_ONLY","SEQUENCE","REQUIRED","ValidationKeys","MIN","MIN_LENGTH","MAX","MAX_LENGTH","PATTERN","URL","STEP","DATE","EMAIL","PASSWORD","EQUALS","DIFF","LESS_THAN","LESS_THAN_OR_EQUAL","GREATER_THAN","GREATER_THAN_OR_EQUAL","ValidatableByType","EmailValidator","URLValidator","DateValidator","PasswordValidator","ValidatableByAttribute","RequiredValidator","MinValidator","MaxValidator","StepValidator","MinLengthValidator","MaxLengthValidator","PatternValidator","EqualsValidator","DiffValidator","LessThanValidator","LessThanOrEqualValidator","GreaterThanValidator","GreaterThanOrEqualValidator","HTML5DateFormat","HTML5InputTypes","BUTTON","CHECKBOX","COLOR","DATETIME_LOCAL","FILE","IMAGE","MONTH","NUMBER","RADIO","RANGE","RESET","SEARCH","SUBMIT","TEL","TEXT","TEXTAREA","SELECT","TIME","WEEK","HTML5CheckTypes","ComponentEventNames","Render","BackButtonClickEvent","Refresh","Click","Change","Submit","ValidationError","ThemeChange","FormGroupLoaded","TransactionHooks","BeforeCreate","AfterCreate","BeforeUpdate","AfterUpdate","BeforeDelete","AfterDelete","ElementSizes","xsmall","small","medium","default","large","xLarge","auto","expand","block","ElementPositions","left","center","right","top","bottom","LayoutGridGaps","collapse","none","ActionRoles","cancel","confirm","submit","clear","back","OperationKeys","CREATE","READ","UPDATE","DELETE","WindowColorSchemes","light","dark","undefined","uimodel","tag","props","original","propertyKey","meta","name","metadata","Metadata","key","renderedBy","engine","apply","uilistmodel","item","uihandlers","handlers","uilayout","colsMode","rows","Object","assign","flexMode","cols","breakpoint","LARGE","uisteppedmodel","pages","paginated","pageTitles","length","RenderingError","InternalError","constructor","msg","super","isClassConstructor","fn","test","String","getUIAttributeKey","prop","DecorationKeys","PROPERTIES","formatByType","type","value","args","format","shift","formatDate","Date","parseValueByType","fieldProps","result","Array","isArray","map","v","ReservedModels","STRING","toLowerCase","join","parseToNumber","trim","parseDate","OBJECT","JSON","stringify","BOOLEAN","escapeHtml","isNaN","parsed","Number","tagsToReplace","replace","revertHtml","generateUIModelID","model","id","now","Model","pk","e","RenderingEngine","this","cache","flavour","initialized","register","translate","toView","BIGINT","getClassDecoratorsMetadata","uiModelOf","uiListModelOf","uiHandlersFor","uiLayoutOf","filter","Boolean","sortChildrenByOrder","children","sort","a","b","aOrder","order","bOrder","weight","Primitives","indexOf","aWeight","bWeight","isCustomValidator","values","includes","isValidatableByType","keys","isValidatableByAttribute","toAttributeValue","Error","toFieldDefinition","globalProps","generateId","inheritProps","globalPropsWithoutInherits","classDecorators","classDecorator","uiDecorators","uiPropertiesOf","childProps","mapper","getPath","parent","validationDecorators","get","decs","uiDecorationOf","uiTypeOf","NotFoundError","uiIsHidden","uiElementOf","entries","k","forEach","dec","modelName","isPropertyModel","Clazz","submodel","clazzName","childrenGlobalProps","childOf","childDefinition","push","decProps","render","uiProps","path","validationDecs","message","basicType","child","find","c","endsWith","row","col","operation","hiddenOn","hidden","rendererId","current","getOrBoot","obj","initialize","fromObject","hideOn","operations","object","propMetadata","uiorder","uielement","serialize","uiprop","propName","target","uichild","clazz","customTypes","multiple","uilistprop","uilayoutprop","uipageprop","page","uion","event","handler","uionclick","uionrender","uitablecol","sequence","valueParserFn","UIValidator","Validator","getMessage","translateService","DecafComponent","LoggedClass","enableDarkMode","isDarkMode","route","borders","events","repository","_repository","log","for","info","componentName","refresh","preview","debug","parseHandlers","instance","handle","parseEvents","evt","DecafEventHandler","handleClick","handleAction","DecafTranslateService","params","instant","prototype","bind","uiIsHiddenOn","op","uiListItems","VERSION"],"mappings":"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"}
@@ -13,4 +13,4 @@ export * from "./ui";
13
13
  * @const VERSION
14
14
  * @memberOf module:ui-decorators
15
15
  */
16
- export declare const VERSION = "0.6.13";
16
+ export declare const VERSION = "0.6.15";
package/lib/esm/index.js CHANGED
@@ -13,5 +13,5 @@ export * from "./ui/index.js";
13
13
  * @const VERSION
14
14
  * @memberOf module:ui-decorators
15
15
  */
16
- export const VERSION = "0.6.13";
16
+ export const VERSION = "0.6.15";
17
17
  //# sourceMappingURL=index.js.map
@@ -1,11 +1,10 @@
1
1
  import { LoggedClass } from "@decaf-ts/logging";
2
- import { CrudOperationKeys, UIEventProperty, UIFunctionLike } from "./types";
2
+ import { CrudOperationKeys, UIEventProperty } from "./types";
3
3
  import { Model } from "@decaf-ts/decorator-validation";
4
4
  import { IRepository, OperationKeys } from "@decaf-ts/db-decorators";
5
- import { Constructor } from "@decaf-ts/decoration";
6
5
  import { DecafEventHandler } from "./DecafEventHandler";
6
+ import { DecafTranslateService } from "./DecafTranslateService";
7
7
  type PrimaryKeyType = string | number | bigint;
8
- export declare const isClassConstructor: <C>(value: UIFunctionLike | Constructor<C>) => value is Constructor<C>;
9
8
  /**
10
9
  * Base class for all Decaf UI components, providing common state management,
11
10
  * logging, localization, navigation hooks, CRUD context metadata, and
@@ -97,6 +96,15 @@ export declare abstract class DecafComponent<M extends Model> extends LoggedClas
97
96
  * @type {string}
98
97
  1 */
99
98
  pk: string;
99
+ /**
100
+ * @description Translation service for application internationalization.
101
+ * @summary Injected service that provides translation capabilities for UI text.
102
+ * Used to translate button labels, validation messages, and other text content based
103
+ * on the current locale setting, enabling multilingual support throughout the application.
104
+ * @protected
105
+ * @type {DecafTranslateService}
106
+ */
107
+ translateService: DecafTranslateService;
100
108
  /**
101
109
  * @description Angular change detection service for manual change detection control.
102
110
  * @summary Injected service that provides manual control over change detection cycles.
@@ -1,8 +1,6 @@
1
1
  import { LoggedClass } from "@decaf-ts/logging";
2
2
  import { OperationKeys } from "@decaf-ts/db-decorators";
3
- export const isClassConstructor = (value) => {
4
- return typeof value === "function" && /^class\s/.test(String(value));
5
- };
3
+ import { isClassConstructor } from "./utils.js";
6
4
  /**
7
5
  * Base class for all Decaf UI components, providing common state management,
8
6
  * logging, localization, navigation hooks, CRUD context metadata, and
@@ -1 +1 @@
1
- {"version":3,"file":"DecafComponent.js","sourceRoot":"","sources":["../../../src/ui/DecafComponent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DecafComponent.js","sourceRoot":"","sources":["../../../src/ui/DecafComponent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { LoggedClass } from "@decaf-ts/logging";
2
+ export declare class DecafTranslateService extends LoggedClass {
3
+ translate(key: string, params?: Record<string, any>): any;
4
+ instant(key: string, params?: Record<string, any>): any;
5
+ }
@@ -0,0 +1,14 @@
1
+ import { LoggedClass } from "@decaf-ts/logging";
2
+ export class DecafTranslateService extends LoggedClass {
3
+ translate(key, params) {
4
+ this.log
5
+ .for(this.translate)
6
+ .info(`Must translate ${key} with params ${JSON.stringify(params || {})}`);
7
+ }
8
+ instant(key, params) {
9
+ this.log
10
+ .for(this.instant)
11
+ .info(`Must translate ${key} with params ${JSON.stringify(params || {})}`);
12
+ }
13
+ }
14
+ //# sourceMappingURL=DecafTranslateService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DecafTranslateService.js","sourceRoot":"","sources":["../../../src/ui/DecafTranslateService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,OAAO,qBAAsB,SAAQ,WAAW;IACpD,SAAS,CAAC,GAAW,EAAE,MAA4B;QACjD,IAAI,CAAC,GAAG;aACL,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;aACnB,IAAI,CACH,kBAAkB,GAAG,gBAAgB,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CACpE,CAAC;IACN,CAAC;IAED,OAAO,CAAC,GAAW,EAAE,MAA4B;QAC/C,IAAI,CAAC,GAAG;aACL,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;aACjB,IAAI,CACH,kBAAkB,GAAG,gBAAgB,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CACpE,CAAC;IACN,CAAC;CACF"}
@@ -13,6 +13,12 @@ import { Model, ValidationMetadata } from "@decaf-ts/decorator-validation";
13
13
  *
14
14
  * @class RenderingEngine
15
15
  */
16
+ /**
17
+ * Represents the base abstraction for decaf rendering engines, handling engine registration,
18
+ * initialization, model-to-field translation, and runtime rendering orchestration.
19
+ * Implementations must provide initialization and rendering logic while leveraging the shared
20
+ * metadata-driven conversion utilities supplied here.
21
+ */
16
22
  export declare abstract class RenderingEngine<T = void, R = FieldDefinition<T>> {
17
23
  readonly flavour: string;
18
24
  /**
@@ -64,6 +70,16 @@ export declare abstract class RenderingEngine<T = void, R = FieldDefinition<T>>
64
70
  * @private
65
71
  */
66
72
  private getClassDecoratorsMetadata;
73
+ private sortChildrenByOrder;
74
+ /**
75
+ * @description Checks if a validation key represents a custom validator (i.e., not a built-in validation or UI key).
76
+ * @summary Determines whether the provided key corresponds to a user-defined validator by excluding all built-in ValidationKeys and UIKeys.
77
+ *
78
+ * @param {string} key - The validation key to check.
79
+ * @returns {boolean} True if the key is a custom validator, false otherwise.
80
+ * @returns {boolean} True if the key is not a built-in validation key or UI key (i.e. is custom), false otherwise.
81
+ */
82
+ protected isCustomValidator(key: string): boolean;
67
83
  /**
68
84
  * @description Checks if a type is validatable by its nature.
69
85
  * @summary Determines if a given UI key represents a type that is inherently validatable.