@decaf-ts/ui-decorators 0.17.11 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/README.md +15 -1
  2. package/dist/ui-decorators.cjs +1 -1
  3. package/dist/ui-decorators.cjs.map +1 -1
  4. package/dist/ui-decorators.js +1 -1
  5. package/dist/ui-decorators.js.map +1 -1
  6. package/lib/cjs/graph/constants.cjs +28 -1
  7. package/lib/cjs/graph/constants.cjs.map +1 -1
  8. package/lib/cjs/index.cjs +3 -3
  9. package/lib/cjs/ui/Rendering.cjs +36 -6
  10. package/lib/cjs/ui/Rendering.cjs.map +1 -1
  11. package/lib/cjs/ui/constants.cjs +3 -0
  12. package/lib/cjs/ui/constants.cjs.map +1 -1
  13. package/lib/cjs/ui/decorators.cjs +28 -0
  14. package/lib/cjs/ui/decorators.cjs.map +1 -1
  15. package/lib/cjs/user-requests/UserRequestHandler.cjs +190 -0
  16. package/lib/cjs/user-requests/UserRequestHandler.cjs.map +1 -0
  17. package/lib/cjs/user-requests/constants.cjs +22 -0
  18. package/lib/cjs/user-requests/constants.cjs.map +1 -0
  19. package/lib/cjs/user-requests/decorators.cjs +41 -0
  20. package/lib/cjs/user-requests/decorators.cjs.map +1 -0
  21. package/lib/cjs/user-requests/errors.cjs +26 -0
  22. package/lib/cjs/user-requests/errors.cjs.map +1 -0
  23. package/lib/cjs/user-requests/index.cjs +33 -0
  24. package/lib/cjs/user-requests/index.cjs.map +1 -0
  25. package/lib/cjs/user-requests/types.cjs +4 -0
  26. package/lib/cjs/user-requests/types.cjs.map +1 -0
  27. package/lib/esm/graph/constants.js +26 -0
  28. package/lib/esm/graph/constants.js.map +1 -1
  29. package/lib/esm/index.js +3 -3
  30. package/lib/esm/ui/Rendering.js +36 -6
  31. package/lib/esm/ui/Rendering.js.map +1 -1
  32. package/lib/esm/ui/constants.js +3 -0
  33. package/lib/esm/ui/constants.js.map +1 -1
  34. package/lib/esm/ui/decorators.js +25 -0
  35. package/lib/esm/ui/decorators.js.map +1 -1
  36. package/lib/esm/user-requests/UserRequestHandler.js +185 -0
  37. package/lib/esm/user-requests/UserRequestHandler.js.map +1 -0
  38. package/lib/esm/user-requests/constants.js +18 -0
  39. package/lib/esm/user-requests/constants.js.map +1 -0
  40. package/lib/esm/user-requests/decorators.js +37 -0
  41. package/lib/esm/user-requests/decorators.js.map +1 -0
  42. package/lib/esm/user-requests/errors.js +21 -0
  43. package/lib/esm/user-requests/errors.js.map +1 -0
  44. package/lib/esm/user-requests/index.js +16 -0
  45. package/lib/esm/user-requests/index.js.map +1 -0
  46. package/lib/esm/user-requests/types.js +8 -0
  47. package/lib/esm/user-requests/types.js.map +1 -0
  48. package/lib/types/graph/constants.d.cts +66 -0
  49. package/lib/types/graph/constants.d.mts +66 -0
  50. package/lib/types/index.d.cts +3 -3
  51. package/lib/types/index.d.mts +3 -3
  52. package/lib/types/ui/constants.d.cts +3 -0
  53. package/lib/types/ui/constants.d.mts +3 -0
  54. package/lib/types/ui/decorators.d.cts +15 -0
  55. package/lib/types/ui/decorators.d.mts +15 -0
  56. package/lib/types/user-requests/UserRequestHandler.d.cts +117 -0
  57. package/lib/types/user-requests/UserRequestHandler.d.mts +117 -0
  58. package/lib/types/user-requests/constants.d.cts +17 -0
  59. package/lib/types/user-requests/constants.d.mts +17 -0
  60. package/lib/types/user-requests/decorators.d.cts +22 -0
  61. package/lib/types/user-requests/decorators.d.mts +22 -0
  62. package/lib/types/user-requests/errors.d.cts +18 -0
  63. package/lib/types/user-requests/errors.d.mts +18 -0
  64. package/lib/types/user-requests/index.d.cts +15 -0
  65. package/lib/types/user-requests/index.d.mts +15 -0
  66. package/lib/types/user-requests/types.d.cts +36 -0
  67. package/lib/types/user-requests/types.d.mts +36 -0
  68. package/package.json +22 -4
package/README.md CHANGED
@@ -224,7 +224,7 @@ You can control when properties are visible using the `@hideOn` and `@hidden` de
224
224
 
225
225
  ```typescript
226
226
  import { Model } from '@decaf-ts/decorator-validation';
227
- import { uimodel, uielement, hideOn, hidden } from '@decaf-ts/ui-decorators';
227
+ import { uimodel, uielement, hideOn, hidden, hideFor, showFor, renderIf } from '@decaf-ts/ui-decorators';
228
228
  import { OperationKeys } from '@decaf-ts/db-decorators';
229
229
 
230
230
  @uimodel()
@@ -239,9 +239,23 @@ class User extends Model {
239
239
  @uielement('input', { type: 'text' })
240
240
  @hidden() // Completely hidden in all operations
241
241
  internalId: string;
242
+
243
+ @uielement('input', { type: 'text' })
244
+ @hideFor('tenant:beta') // Hide for a specific namespace
245
+ betaOnlyNotes: string;
246
+
247
+ @uielement('input', { type: 'text' })
248
+ @showFor('tenant:alpha') // Only show for a specific namespace
249
+ alphaOnlyNotes: string;
250
+
251
+ @uielement('input', { type: 'text' })
252
+ @renderIf('tenant:alpha') // Alias for showFor
253
+ alphaOnlyNotesCopy: string;
242
254
  }
243
255
  ```
244
256
 
257
+ When rendering, pass the active namespace as `globalProps.namespace` or `globalProps.namespaces`. The rendering engine filters fields that use `hideFor`, `showFor`, or `renderIf` against those namespaces.
258
+
245
259
  ### Rendering Lists of Models
246
260
 
247
261
  You can render lists of models using the `@uilistmodel` and `@uilistprop` decorators:
@@ -1,2 +1,2 @@
1
- var e,t;e=this,t=function(e,t,r,a,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",[r.OperationKeys.CREATE]:r.OperationKeys.CREATE,[r.OperationKeys.READ]:r.OperationKeys.READ,[r.OperationKeys.UPDATE]:r.OperationKeys.UPDATE,[r.OperationKeys.DELETE]:r.OperationKeys.DELETE};class u extends r.InternalError{constructor(e){super(e,u.name)}}const f=e=>"function"==typeof e&&/^class\s/.test(e+"");function h(e,t){return a.Metadata.key(n.REFLECT,a.DecorationKeys.PROPERTIES,e,t)}function y(e,r,...a){if(e===n.DATE){if(!r)return"";const e=a.shift()||l;return t.formatDate(new Date(r),e)}return r}function M(e){if("number"==typeof e&&!isNaN(e))return e;const t=Number(e);return isNaN(t)?void 0:t}function T(e){if(!e)return e;const t={"&":"&amp;","<":"&lt;",">":"&gt;"};return(""+e).replace(/[&<>]/g,e=>t[e]||e)}function m(e){let r=Date.now();try{t.Model.pk(e.constructor)&&(r=e[t.Model.pk(e.constructor)])}catch(e){}return`${e.constructor.name}-${r}`}class R{static{this.cache={}}constructor(e){this.flavour=e,this.initialized=!1,R.register(this)}translate(e,r=!0){if(r)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((r,a)=>{const o=r.props?.order??0,s=a.props?.order??0,i=r=>r===n.FIRST?0:typeof r===t.Primitives.NUMBER?1:r===n.LAST?e.length+e.indexOf(a):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 u(`No ui definitions set for model ${e.constructor.name}. Did you use @uimodel?`);const E=Object.assign({},...p,i||{}),{tag:f,props:h,item:M,handlers:T}=E,R=t.Model.uiPropertiesOf(e.constructor);let O,L=M?.props||{},g={};const A=(e,t)=>e?[e,t].join("."):t;if(R){const s=a.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 r.NotFoundError))throw e}if(t.Model.uiIsHidden(e.constructor,i)&&!t.Model.uiElementOf(e.constructor,i))throw new u(`@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(r=>{if(!r)throw new u("No decorator found");switch(r.key){case n.PROP:L[i]=r.props;break;case n.CHILD:{const a=r.props?.props?.name||i;try{if(!t.Model.isModel(t.Model.build({},a))&&!t.Model.isPropertyModel(e,a))throw new u(`Child "${a}" must be a model.`)}catch(e){throw new u(`Child "${a}" must be a model.`)}let s;const n=e[i];if("object"!=typeof n||null===n||Array.isArray(n)){const e=r.props.props?.name;s=new(t.Model.get(e))}O=O||[];const d=Object.assign({},o||{},{model:s},{inheritProps:r.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:{g=g||{};const e=r.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||{},M?.props||{},e?.props||{},o);L={tag:M?.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=r.props,d=Object.assign({},L?.props,t.props||{},t?.props?.name?{path:A(o?.childOf,t.props.name),childOf:void 0}:{},o,{name:t.props?.name||i});if(r.key===n.ELEMENT){const r={tag:t.tag||L?.tag||f||"",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)?r.props[this.translate(e.key)]=this.toAttributeValue(e.key,e.props):this.isValidatableByType(e.key)?(e.key===c.DATE&&(r.props[n.FORMAT]=e.props.format||l),r.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(!r.props[n.TYPE]){const t=a.Metadata.type(e.constructor,i).name;r.props[n.TYPE]=this.translate(t.toLowerCase(),!0)}r.props.value=y(r.props[n.TYPE],e[i],r.props[n.FORMAT]),O.push(r)}else{const e=O.find(e=>e.props?.name===i||[n.UILAYOUTPROP,n.PAGE,n.EVENTS].includes(r.key)&&(e.props?.childOf===i||e.props?.childOf?.endsWith("."+i)));if(e)if(r.key!==n.UILAYOUTPROP)e.props=Object.assign({},e.props,{[r.key]:t});else{const{row:t,col:a,props:o}=r.props;e.props=Object.assign({},o||{},e.props,t,a)}}break}default:throw new u("Invalid key: "+r.key)}})}}o=Object.assign({},h,o,{handlers:T||{}});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 I={tag:f,item:L,props:o,children:O?.length?O:void 0};return s&&(I.rendererId=m(e)),I}static register(e){if(e.flavour in this.cache)throw new r.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 r.InternalError(`Rendering engine under ${e} does not exist`);return this.getOrBoot(this.cache[e])}static render(e,...a){if(!t.Model.get(e.constructor.name)&&!t.Model.fromObject(e))throw new r.InternalError("No model registered found");const o=t.Model.renderedBy(e.constructor);return R.get(o).render(e,...a)}}function O(...e){return(t,r)=>a.propMetadata(h(r,n.HIDDEN),e)(t,r)}function L(e,t){return(r,o)=>{a.propMetadata(h(o,n.EVENTS),{..."object"==typeof e?e:{[e]:t}})(r,o)}}class g extends t.Validator{getMessage(e,...t){return g.translateService?g.translateService.translate(e,...t):super.getMessage(e,...t)}}class A extends o.LoggedClass{constructor(){super(),this.enableDarkMode=!0,this.isDarkMode=!1,this.item={tag:""},this.props={},this.route="",this.borders=!1,this.OperationKeys=r.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 r={};return Object.entries(e).forEach(([e,a])=>{if(f(a)){const o=new a,s=e in o?o[e]:o.handle;r[e]=s,t.handlers[e]=s}else r[e]=a,t.handlers[e]=a}),r}parseEvents(e,t){const r={};return Object.entries(e).forEach(([e,a])=>{const o=e,s=a();if(f(s)){const a=(new s)[e];a&&(r[o]=a,t.events[o]=a)}else r[o]=a,t.events[o]=a}),r}}class D 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||{})}`)}}function I(e,t){return(r,o)=>{const s={tag:e||r.name,props:t};return a.metadata(a.Metadata.key(n.REFLECT,n.UIMODEL),s)(r)}}function N(e){return a.apply(a.metadata(a.Metadata.key(n.REFLECT,n.RENDERED_BY),e))}function C(e,t){return(r,o)=>{const s={item:{tag:e||r.name,props:t}};return a.metadata(a.Metadata.key(n.REFLECT,n.UILISTMODEL),s)(r)}}function b(e){return t=>{const r={handlers:e};return a.metadata(a.Metadata.key(n.REFLECT,n.HANDLERS),r)(t)}}function S(t,r=1,o=1,s={}){const i=Object.assign({..."boolean"==typeof r?{flexMode:r,cols:1}:{flexMode:!1,cols:r},rows:o,...Object.assign({breakpoint:e.UIMediaBreakPoints.LARGE},s)});return(e,r)=>(a.metadata(a.Metadata.key(n.REFLECT,n.UILAYOUT),i)(e),I(t,i)(e,r))}function P(e,t=1,r=!1,a={}){let o=[];return"object"==typeof t&&(o=t,t=o.length),I(e,{pages:t,paginated:r,pageTitles:o,props:a})}t.Model.prototype.render=function(...e){return R.render(this,...e)},t.Model.renderedBy=(e=>a.Metadata.get(e,a.Metadata.key(n.REFLECT,n.RENDERED_BY))).bind(t.Model),t.Model.uiPropertiesOf=(e=>{const t=a.Metadata.get(e,a.Metadata.key(n.REFLECT,a.DecorationKeys.PROPERTIES));if(t)return Object.keys(t)}).bind(t.Model),t.Model.uiDecorationOf=(e,t,r)=>{const o=a.Metadata.get(e,a.Metadata.key(n.REFLECT,a.DecorationKeys.PROPERTIES,t));if(o)return r?o[r]:o},t.Model.uiModelOf=e=>a.Metadata.get(e,a.Metadata.key(n.REFLECT,n.UIMODEL)),t.Model.uiElementOf=(e,t)=>a.Metadata.get(e,h(t,n.ELEMENT)),t.Model.uiListModelOf=e=>a.Metadata.get(e,a.Metadata.key(n.REFLECT,n.UILISTMODEL)),t.Model.uiHandlersFor=e=>a.Metadata.get(e,a.Metadata.key(n.REFLECT,n.HANDLERS)),t.Model.uiLayoutOf=e=>a.Metadata.get(e,a.Metadata.key(n.REFLECT,n.UILAYOUT)),t.Model.uiIsHidden=(e,t)=>!!a.Metadata.get(e,h(t,n.HIDDEN)),t.Model.uiIsHiddenOn=(e,t,r)=>{const o=a.Metadata.get(e,h(t,n.HIDDEN));return!!o&&(r?o.includes(r):o)},t.Model.uiTypeOf=(e,t)=>{const o=a.Metadata.get(e,a.Metadata.key(n.REFLECT,a.DecorationKeys.PROPERTIES,t));if(!o)throw new r.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 r.NotFoundError(`No UI type metadata found for property '${t}' on model '${e.name}'`);if(s.length>1)throw new u("Only one type of decoration is allowed. Please choose between @uiprop, @uichild or @uielement");return o[s[0]]},t.Model.uiListItems=(e=>{const t=a.Metadata.get(e,a.Metadata.key(n.REFLECT,a.DecorationKeys.PROPERTIES));if(t)return Object.keys(t)}).bind(t.Model);const U=t.ModelBuilder.prototype;U.decorateClass||(U.decorateClass=function(e){return this._classDecorators||(this._classDecorators=[]),this._classDecorators.push(e),this}),U.uimodel=function(e,t){return this.decorateClass(I(e,t))},U.renderedBy=function(e){return this.decorateClass(N(e))},U.uilistmodel=function(e,t){return this.decorateClass(C(e,t))},U.uihandlers=function(e){return this.decorateClass(b(e))},U.uilayout=function(e,t,r,a){return this.decorateClass(S(e,t,r,a))},U.uisteppedmodel=function(e,t,r,a){return this.decorateClass(P(e,t,r,a))};const k="##VERSION##",w="##PACKAGE##";a.Metadata.registerLibrary(w,k),e.ActionRoles=E,e.COMMIT="382e32c",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.DecafTranslateService=D,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",half:"half",full:"full"},e.FULL_VERSION="0.17.10-382e32c",e.HTML5CheckTypes=p,e.HTML5DateFormat=l,e.HTML5InputTypes=c,e.LayoutGridGaps={small:"small",medium:"medium",large:"large",collapse:"collapse",none:""},e.PACKAGE_NAME=w,e.RenderingEngine=R,e.RenderingError=u,e.TransactionHooks={BeforeRead:"beforeRead",AfterRead:"afterRead",BeforeCreate:"beforeCreate",AfterCreate:"afterCreate",BeforeUpdate:"beforeUpdate",AfterUpdate:"afterUpdate",BeforeDelete:"beforeDelete",AfterDelete:"afterDelete"},e.UIKeys=n,e.UIValidator=g,e.VERSION=k,e.ValidatableByAttribute=d,e.ValidatableByType=i,e.WindowColorSchemes={light:"light",dark:"dark",undefined:"undefined"},e.escapeHtml=T,e.formatByType=y,e.generateUIModelID=m,e.getUIAttributeKey=h,e.hidden=()=>O(r.OperationKeys.CREATE,r.OperationKeys.READ,r.OperationKeys.UPDATE,r.OperationKeys.DELETE),e.hideOn=O,e.isClassConstructor=f,e.parseToNumber=M,e.parseValueByType=function e(a,o,s){let n;switch(a){case Array.name:n=(Array.isArray(o)?o.map(r=>e(t.ReservedModels.STRING.name.toLowerCase(),r,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()?T(o):n}if(void 0===n)throw new r.InternalError(`Failed to parse value of type ${a} from ${typeof o} - ${o}`);return n},e.renderedBy=N,e.revertHtml=e=>{const t={"&amp;":"&","&lt;":"<","&gt;":">"};return(""+e).replace(/&lt;|&gt;|&amp;/g,e=>t[e]||e)},e.uichild=(e,t,r={},o=!1,s=!1)=>(i,d)=>{const l={tag:t,serialize:s,props:Object.assign({},r||{},{name:e||d},o?{customTypes:[Array.name],multiple:!0}:{multiple:r?.multiple||!1})};a.propMetadata(h(d,n.CHILD),l)(i,d)},e.uielement=(e,t,r=!1)=>(o,s)=>{"object"==typeof e&&(t=e,e="");const i={tag:e,serialize:r,props:Object.assign({},t||{},{name:s})};return a.propMetadata(h(s,n.ELEMENT),i)(o,s)},e.uihandlers=b,e.uilayout=S,e.uilayoutprop=(e=1,t=1)=>(r,o)=>{const s={name:o,props:Object.assign({},{row:t,col:e})};a.propMetadata(h(o,n.UILAYOUTPROP),s)(r,o)},e.uilistmodel=C,e.uilistprop=(e=void 0,t)=>(r,o)=>{const s={name:e||o,props:t||{}};a.propMetadata(h(o,n.UILISTPROP),s)(r,o)},e.uimodel=I,e.uion=L,e.uionclick=e=>L("handleClick",e),e.uionrender=e=>L("render",e),e.uiorder=(e=n.FIRST)=>(t,r)=>a.propMetadata(h(r,n.ORDER),e)(t,r),e.uipageprop=(e=1)=>(t,r)=>a.propMetadata(h(r,n.PAGE),e)(t,r),e.uiprop=(e=void 0,t=!1)=>(r,o)=>{const s={name:e||o,stringify:t};a.propMetadata(h(o,n.PROP),s)(r,o)},e.uisteppedmodel=P,e.uitablecol=(e=n.LAST,t)=>(r,o)=>{const s={name:o,props:{sequence:e,...t?{valueParserFn:t}:{}}};a.propMetadata(h(o,n.UILISTPROP),s)(r,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);
1
+ var e,t;e=this,t=function(e,t,r,a,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",HIDE_FOR:"hide-for",SHOW_FOR:"show-for",RENDER_IF:"render-if",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",[r.OperationKeys.CREATE]:r.OperationKeys.CREATE,[r.OperationKeys.READ]:r.OperationKeys.READ,[r.OperationKeys.UPDATE]:r.OperationKeys.UPDATE,[r.OperationKeys.DELETE]:r.OperationKeys.DELETE};class u extends r.InternalError{constructor(e){super(e,u.name)}}const f=e=>"function"==typeof e&&/^class\s/.test(e+"");function h(e,t){return a.Metadata.key(n.REFLECT,a.DecorationKeys.PROPERTIES,e,t)}function y(e,r,...a){if(e===n.DATE){if(!r)return"";const e=a.shift()||l;return t.formatDate(new Date(r),e)}return r}function M(e){if("number"==typeof e&&!isNaN(e))return e;const t=Number(e);return isNaN(t)?void 0:t}function R(e){if(!e)return e;const t={"&":"&amp;","<":"&lt;",">":"&gt;"};return(""+e).replace(/[&<>]/g,e=>t[e]||e)}function T(e){let r=Date.now();try{t.Model.pk(e.constructor)&&(r=e[t.Model.pk(e.constructor)])}catch(e){}return`${e.constructor.name}-${r}`}class m{static{this.cache={}}constructor(e){this.flavour=e,this.initialized=!1,m.register(this)}translate(e,r=!0){if(r)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((r,a)=>{const o=r.props?.order??0,s=a.props?.order??0,i=r=>r===n.FIRST?0:typeof r===t.Primitives.NUMBER?1:r===n.LAST?e.length+e.indexOf(a):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 u(`No ui definitions set for model ${e.constructor.name}. Did you use @uimodel?`);const E=Object.assign({},...p,i||{}),{tag:f,props:h,item:M,handlers:R}=E,m=t.Model.uiPropertiesOf(e.constructor);let O,g=M?.props||{},L={};const A=(e,t)=>e?[e,t].join("."):t;if(m){const s=a.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 r.NotFoundError))throw e}if(t.Model.uiIsHidden(e.constructor,i)&&!t.Model.uiElementOf(e.constructor,i))throw new u(`@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(r=>{if(!r)throw new u("No decorator found");switch(r.key){case n.PROP:g[i]=r.props;break;case n.CHILD:{const a=r.props?.props?.name||i;try{if(!t.Model.isModel(t.Model.build({},a))&&!t.Model.isPropertyModel(e,a))throw new u(`Child "${a}" must be a model.`)}catch(e){throw new u(`Child "${a}" must be a model.`)}let s;const n=e[i];if("object"!=typeof n||null===n||Array.isArray(n)){const e=r.props.props?.name;s=new(t.Model.get(e))}O=O||[];const d=Object.assign({},o||{},{model:s},{inheritProps:r.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=r.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||{},M?.props||{},e?.props||{},o);g={tag:M?.tag||t.render||"",props:Object.assign({},g?.props,{mapper:L},t)};break}case n.EVENTS:case n.HIDDEN:case n.HIDE_FOR:case n.SHOW_FOR:case n.PAGE:case n.ORDER:case n.UILAYOUTPROP:case n.ELEMENT:{O=O||[];const t=r.props,d=r.key===n.HIDE_FOR?{hideFor:r.props}:r.key===n.SHOW_FOR?{showFor:r.props}:{},p=Object.assign({},g?.props,t.props||{},d,t?.props?.name?{path:A(o?.childOf,t.props.name),childOf:void 0}:{},o,{name:t.props?.name||i});if(r.key===n.ELEMENT){const r={tag:t.tag||g?.tag||f||"",props:p},o=s[i];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===c.DATE&&(r.props[n.FORMAT]=e.props.format||l),r.props[n.TYPE]=e.key):this.isCustomValidator(e.key)&&(p[n.SUB_TYPE]=e.key,e.props?.message&&(p[n.VALIDATION_MESSAGE]=e.props.message));if(!r.props[n.TYPE]){const t=a.Metadata.type(e.constructor,i).name;r.props[n.TYPE]=this.translate(t.toLowerCase(),!0)}r.props.value=y(r.props[n.TYPE],e[i],r.props[n.FORMAT]),O.push(r)}else{const e=O.find(e=>e.props?.name===i||[n.UILAYOUTPROP,n.PAGE,n.EVENTS].includes(r.key)&&(e.props?.childOf===i||e.props?.childOf?.endsWith("."+i)));if(e)if(r.key===n.HIDE_FOR||r.key===n.SHOW_FOR)e.props=Object.assign({},e.props,d);else if(r.key!==n.UILAYOUTPROP)e.props=Object.assign({},e.props,{[r.key]:t});else{const{row:t,col:a,props:o}=r.props;e.props=Object.assign({},o||{},e.props,t,a)}}break}default:throw new u("Invalid key: "+r.key)}})}}o=Object.assign({},h,o,{handlers:R||{}});const D=new Set([...Array.isArray(o?.namespaces)?o.namespaces:[],..."string"==typeof o?.namespace?[o.namespace]:[]].filter(Boolean)),I=o?.operation;O=this.sortChildrenByOrder(O).filter(e=>{const t=e?.props?.hidden||[];if(t.length>0&&t.includes(I))return!1;const r=e?.props?.hideFor||[],a=e?.props?.showFor||[];return!(r.length>0&&[...D].some(e=>r.includes(e))||a.length>0&&![...D].some(e=>a.includes(e)))});const N={tag:f,item:g,props:o,children:O?.length?O:void 0};return s&&(N.rendererId=T(e)),N}static register(e){if(e.flavour in this.cache)throw new r.InternalError(`Rendering engine under ${e.flavour} already exists`);this.cache[e.flavour]=e,this.current=e}static getOrBoot(e){if(e instanceof m)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 r.InternalError(`Rendering engine under ${e} does not exist`);return this.getOrBoot(this.cache[e])}static render(e,...a){if(!t.Model.get(e.constructor.name)&&!t.Model.fromObject(e))throw new r.InternalError("No model registered found");const o=t.Model.renderedBy(e.constructor);return m.get(o).render(e,...a)}}function O(...e){return(t,r)=>a.propMetadata(h(r,n.HIDDEN),e)(t,r)}function g(...e){return(t,r)=>a.propMetadata(h(r,n.SHOW_FOR),e)(t,r)}function L(e,t){return(r,o)=>{a.propMetadata(h(o,n.EVENTS),{..."object"==typeof e?e:{[e]:t}})(r,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=r.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 r={};return Object.entries(e).forEach(([e,a])=>{if(f(a)){const o=new a,s=e in o?o[e]:o.handle;r[e]=s,t.handlers[e]=s}else r[e]=a,t.handlers[e]=a}),r}parseEvents(e,t){const r={};return Object.entries(e).forEach(([e,a])=>{const o=e,s=a();if(f(s)){const a=(new s)[e];a&&(r[o]=a,t.events[o]=a)}else r[o]=a,t.events[o]=a}),r}}class I 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||{})}`)}}function N(e,t){return(r,o)=>{const s={tag:e||r.name,props:t};return a.metadata(a.Metadata.key(n.REFLECT,n.UIMODEL),s)(r)}}function b(e){return a.apply(a.metadata(a.Metadata.key(n.REFLECT,n.RENDERED_BY),e))}function C(e,t){return(r,o)=>{const s={item:{tag:e||r.name,props:t}};return a.metadata(a.Metadata.key(n.REFLECT,n.UILISTMODEL),s)(r)}}function S(e){return t=>{const r={handlers:e};return a.metadata(a.Metadata.key(n.REFLECT,n.HANDLERS),r)(t)}}function P(t,r=1,o=1,s={}){const i=Object.assign({..."boolean"==typeof r?{flexMode:r,cols:1}:{flexMode:!1,cols:r},rows:o,...Object.assign({breakpoint:e.UIMediaBreakPoints.LARGE},s)});return(e,r)=>(a.metadata(a.Metadata.key(n.REFLECT,n.UILAYOUT),i)(e),N(t,i)(e,r))}function k(e,t=1,r=!1,a={}){let o=[];return"object"==typeof t&&(o=t,t=o.length),N(e,{pages:t,paginated:r,pageTitles:o,props:a})}t.Model.prototype.render=function(...e){return m.render(this,...e)},t.Model.renderedBy=(e=>a.Metadata.get(e,a.Metadata.key(n.REFLECT,n.RENDERED_BY))).bind(t.Model),t.Model.uiPropertiesOf=(e=>{const t=a.Metadata.get(e,a.Metadata.key(n.REFLECT,a.DecorationKeys.PROPERTIES));if(t)return Object.keys(t)}).bind(t.Model),t.Model.uiDecorationOf=(e,t,r)=>{const o=a.Metadata.get(e,a.Metadata.key(n.REFLECT,a.DecorationKeys.PROPERTIES,t));if(o)return r?o[r]:o},t.Model.uiModelOf=e=>a.Metadata.get(e,a.Metadata.key(n.REFLECT,n.UIMODEL)),t.Model.uiElementOf=(e,t)=>a.Metadata.get(e,h(t,n.ELEMENT)),t.Model.uiListModelOf=e=>a.Metadata.get(e,a.Metadata.key(n.REFLECT,n.UILISTMODEL)),t.Model.uiHandlersFor=e=>a.Metadata.get(e,a.Metadata.key(n.REFLECT,n.HANDLERS)),t.Model.uiLayoutOf=e=>a.Metadata.get(e,a.Metadata.key(n.REFLECT,n.UILAYOUT)),t.Model.uiIsHidden=(e,t)=>!!a.Metadata.get(e,h(t,n.HIDDEN)),t.Model.uiIsHiddenOn=(e,t,r)=>{const o=a.Metadata.get(e,h(t,n.HIDDEN));return!!o&&(r?o.includes(r):o)},t.Model.uiTypeOf=(e,t)=>{const o=a.Metadata.get(e,a.Metadata.key(n.REFLECT,a.DecorationKeys.PROPERTIES,t));if(!o)throw new r.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 r.NotFoundError(`No UI type metadata found for property '${t}' on model '${e.name}'`);if(s.length>1)throw new u("Only one type of decoration is allowed. Please choose between @uiprop, @uichild or @uielement");return o[s[0]]},t.Model.uiListItems=(e=>{const t=a.Metadata.get(e,a.Metadata.key(n.REFLECT,a.DecorationKeys.PROPERTIES));if(t)return Object.keys(t)}).bind(t.Model);const U=t.ModelBuilder.prototype;U.decorateClass||(U.decorateClass=function(e){return this._classDecorators||(this._classDecorators=[]),this._classDecorators.push(e),this}),U.uimodel=function(e,t){return this.decorateClass(N(e,t))},U.renderedBy=function(e){return this.decorateClass(b(e))},U.uilistmodel=function(e,t){return this.decorateClass(C(e,t))},U.uihandlers=function(e){return this.decorateClass(S(e))},U.uilayout=function(e,t,r,a){return this.decorateClass(P(e,t,r,a))},U.uisteppedmodel=function(e,t,r,a){return this.decorateClass(k(e,t,r,a))};const w="##VERSION##",v="##PACKAGE##";a.Metadata.registerLibrary(v,w),e.ActionRoles=E,e.COMMIT="23dcb33",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=I,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",half:"half",full:"full"},e.FULL_VERSION="0.18.0-23dcb33",e.HTML5CheckTypes=p,e.HTML5DateFormat=l,e.HTML5InputTypes=c,e.LayoutGridGaps={small:"small",medium:"medium",large:"large",collapse:"collapse",none:""},e.PACKAGE_NAME=v,e.RenderingEngine=m,e.RenderingError=u,e.TransactionHooks={BeforeRead:"beforeRead",AfterRead:"afterRead",BeforeCreate:"beforeCreate",AfterCreate:"afterCreate",BeforeUpdate:"beforeUpdate",AfterUpdate:"afterUpdate",BeforeDelete:"beforeDelete",AfterDelete:"afterDelete"},e.UIKeys=n,e.UIValidator=A,e.VERSION=w,e.ValidatableByAttribute=d,e.ValidatableByType=i,e.WindowColorSchemes={light:"light",dark:"dark",undefined:"undefined"},e.escapeHtml=R,e.formatByType=y,e.generateUIModelID=T,e.getUIAttributeKey=h,e.hidden=()=>O(r.OperationKeys.CREATE,r.OperationKeys.READ,r.OperationKeys.UPDATE,r.OperationKeys.DELETE),e.hideFor=(...e)=>(t,r)=>a.propMetadata(h(r,n.HIDE_FOR),e)(t,r),e.hideOn=O,e.isClassConstructor=f,e.parseToNumber=M,e.parseValueByType=function e(a,o,s){let n;switch(a){case Array.name:n=(Array.isArray(o)?o.map(r=>e(t.ReservedModels.STRING.name.toLowerCase(),r,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()?R(o):n}if(void 0===n)throw new r.InternalError(`Failed to parse value of type ${a} from ${typeof o} - ${o}`);return n},e.renderIf=(...e)=>g(...e),e.renderedBy=b,e.revertHtml=e=>{const t={"&amp;":"&","&lt;":"<","&gt;":">"};return(""+e).replace(/&lt;|&gt;|&amp;/g,e=>t[e]||e)},e.showFor=g,e.uichild=(e,t,r={},o=!1,s=!1)=>(i,d)=>{const l={tag:t,serialize:s,props:Object.assign({},r||{},{name:e||d},o?{customTypes:[Array.name],multiple:!0}:{multiple:r?.multiple||!1})};a.propMetadata(h(d,n.CHILD),l)(i,d)},e.uielement=(e,t,r=!1)=>(o,s)=>{"object"==typeof e&&(t=e,e="");const i={tag:e,serialize:r,props:Object.assign({},t||{},{name:s})};return a.propMetadata(h(s,n.ELEMENT),i)(o,s)},e.uihandlers=S,e.uilayout=P,e.uilayoutprop=(e=1,t=1)=>(r,o)=>{const s={name:o,props:Object.assign({},{row:t,col:e})};a.propMetadata(h(o,n.UILAYOUTPROP),s)(r,o)},e.uilistmodel=C,e.uilistprop=(e=void 0,t)=>(r,o)=>{const s={name:e||o,props:t||{}};a.propMetadata(h(o,n.UILISTPROP),s)(r,o)},e.uimodel=N,e.uion=L,e.uionclick=e=>L("handleClick",e),e.uionrender=e=>L("render",e),e.uiorder=(e=n.FIRST)=>(t,r)=>a.propMetadata(h(r,n.ORDER),e)(t,r),e.uipageprop=(e=1)=>(t,r)=>a.propMetadata(h(r,n.PAGE),e)(t,r),e.uiprop=(e=void 0,t=!1)=>(r,o)=>{const s={name:e||o,stringify:t};a.propMetadata(h(o,n.PROP),s)(r,o)},e.uisteppedmodel=k,e.uitablecol=(e=n.LAST,t)=>(r,o)=>{const s={name:o,props:{sequence:e,...t?{valueParserFn:t}:{}}};a.propMetadata(h(o,n.UILISTPROP),s)(r,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/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/decorators.ts","../src/model/overrides.ts","../src/overrides/ModelBuilderExtensions.ts","../src/index.ts","../src/ui/DecafEventHandler.ts"],"sourcesContent":[null,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","ActionRoles","cancel","confirm","submit","clear","back","OperationKeys","CREATE","READ","UPDATE","DELETE","RenderingError","InternalError","constructor","msg","super","name","isClassConstructor","fn","test","String","getUIAttributeKey","prop","key","Metadata","DecorationKeys","PROPERTIES","formatByType","type","value","args","format","shift","formatDate","Date","parseToNumber","isNaN","parsed","Number","escapeHtml","tagsToReplace","replace","tag","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","props","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","isModel","build","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","propertyKey","propMetadata","uion","event","handler","original","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","uimodel","meta","metadata","apply","uilistmodel","uihandlers","uilayout","colsMode","rows","config","flexMode","cols","breakpoint","LARGE","uisteppedmodel","pages","paginated","pageTitles","prototype","bind","uiIsHiddenOn","op","uiListItems","ModelBuilder","decorateClass","decorator","_classDecorators","VERSION","PACKAGE_NAME","registerLibrary","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","half","full","collapse","none","BeforeRead","AfterRead","BeforeCreate","AfterCreate","BeforeUpdate","AfterUpdate","BeforeDelete","AfterDelete","light","dark","parseValueByType","fieldProps","trim","parseDate","OBJECT","serialize","target","customTypes","multiple","propName","page","sequence","valueParserFn"],"mappings":"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"}
1
+ {"version":3,"file":"ui-decorators.cjs","sources":["../src/ui/constants.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/decorators.ts","../src/model/overrides.ts","../src/overrides/ModelBuilderExtensions.ts","../src/index.ts","../src/ui/DecafEventHandler.ts"],"sourcesContent":[null,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","HIDE_FOR","SHOW_FOR","RENDER_IF","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","RenderingError","InternalError","constructor","msg","super","name","isClassConstructor","fn","test","String","getUIAttributeKey","prop","key","Metadata","DecorationKeys","PROPERTIES","formatByType","type","value","args","format","shift","formatDate","Date","parseToNumber","isNaN","parsed","Number","escapeHtml","tagsToReplace","replace","tag","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","props","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","isModel","build","isPropertyModel","Clazz","submodel","Array","isArray","clazzName","childrenGlobalProps","childOf","childDefinition","push","decProps","render","uiProps","visibilityProps","hideFor","showFor","path","undefined","validationDecs","message","basicType","child","find","c","endsWith","row","col","currentNamespaces","Set","namespaces","namespace","operation","hiddenOn","hidden","some","result","rendererId","engine","current","getOrBoot","obj","initialize","fromObject","renderedBy","hideOn","operations","object","propertyKey","propMetadata","uion","event","handler","original","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","uimodel","meta","metadata","apply","uilistmodel","uihandlers","uilayout","colsMode","rows","config","flexMode","cols","breakpoint","LARGE","uisteppedmodel","pages","paginated","pageTitles","prototype","bind","uiIsHiddenOn","op","uiListItems","ModelBuilder","decorateClass","decorator","_classDecorators","VERSION","PACKAGE_NAME","registerLibrary","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","half","full","collapse","none","BeforeRead","AfterRead","BeforeCreate","AfterCreate","BeforeUpdate","AfterUpdate","BeforeDelete","AfterDelete","light","dark","parseValueByType","fieldProps","trim","parseDate","OBJECT","serialize","target","customTypes","multiple","propName","page","sequence","valueParserFn"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{ValidationKeys as e,PasswordValidator as t,DateValidator as r,URLValidator as n,EmailValidator as o,GreaterThanOrEqualValidator as s,GreaterThanValidator as i,LessThanOrEqualValidator as a,LessThanValidator as c,DiffValidator as E,EqualsValidator as l,PatternValidator as u,MaxLengthValidator as p,MinLengthValidator as d,StepValidator as f,MaxValidator as h,MinValidator as T,RequiredValidator as m,formatDate as R,Model as O,ReservedModels as A,parseDate as L,Primitives as g,Validator as y,ModelBuilder as N}from"@decaf-ts/decorator-validation";import{OperationKeys as D,InternalError as I,NotFoundError as C}from"@decaf-ts/db-decorators";import{Metadata as b,DecorationKeys as S,propMetadata as M,metadata as P,apply as w}from"@decaf-ts/decoration";import{LoggedClass as U}from"@decaf-ts/logging";var k;(e=>{e.SMALL="small",e.MEDIUM="medium",e.LARGE="large",e.XLARGE="xlarge"})(k||(k={}));const _={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},B={[_.EMAIL]:o,[_.URL]:n,[_.DATE]:r,[_.PASSWORD]:t},H={[_.REQUIRED]:m,[_.MIN]:T,[_.MAX]:h,[_.STEP]:f,[_.MIN_LENGTH]:d,[_.MAX_LENGTH]:p,[_.PATTERN]:u,[_.EQUALS]:l,[_.DIFF]:E,[_.LESS_THAN]:c,[_.LESS_THAN_OR_EQUAL]:a,[_.GREATER_THAN]:i,[_.GREATER_THAN_OR_EQUAL]:s},v="yyyy-MM-dd",F={BUTTON:"button",CHECKBOX:"checkbox",COLOR:"color",DATE:_.DATE,DATETIME_LOCAL:"datetime-local",EMAIL:_.EMAIL,FILE:"file",HIDDEN:"hidden",IMAGE:"image",MONTH:"month",NUMBER:"number",PASSWORD:_.PASSWORD,RADIO:"radio",RANGE:"range",RESET:"reset",SEARCH:"search",SUBMIT:"submit",TEL:"tel",TEXT:"text",TEXTAREA:"textarea",SELECT:"select",TIME:"time",URL:_.URL,WEEK:"week"},j=[F.CHECKBOX,F.RADIO],$={Render:"render",BackButtonClickEvent:"backButtonNavigationEndEvent",Refresh:"RefreshEvent",Click:"ClickEvent",Change:"ChangeEvent",Submit:"SubmitEvent",ValidationError:"validationErrorEvent",ThemeChange:"themeChangeEvent",FormGroupLoaded:"formGroupLoadedEvent"},G={BeforeRead:"beforeRead",AfterRead:"afterRead",BeforeCreate:"beforeCreate",AfterCreate:"afterCreate",BeforeUpdate:"beforeUpdate",AfterUpdate:"afterUpdate",BeforeDelete:"beforeDelete",AfterDelete:"afterDelete"},x={xsmall:"xsmall",small:"small",medium:"medium",default:"default",large:"large",xLarge:"xlarge","2xLarge":"2xlarge",auto:"auto",expand:"expand",block:"block",half:"half",full:"full"},Y={left:"left",center:"center",right:"right",top:"top",bottom:"bottom"},V={small:"small",medium:"medium",large:"large",collapse:"collapse",none:""},X={cancel:"cancel",confirm:"confirm",submit:"submit",clear:"clear",back:"back",[D.CREATE]:D.CREATE,[D.READ]:D.READ,[D.UPDATE]:D.UPDATE,[D.DELETE]:D.DELETE},Q={light:"light",dark:"dark",undefined:"undefined"};class J extends I{constructor(e){super(e,J.name)}}const W=e=>"function"==typeof e&&/^class\s/.test(e+"");function z(e,t){return b.key(_.REFLECT,S.PROPERTIES,e,t)}function K(e,t,...r){if(e===_.DATE){if(!t)return"";const e=r.shift()||v;return R(new Date(t),e)}return t}function q(e,t,r){let n;switch(e){case Array.name:n=(Array.isArray(t)?t.map(e=>q(A.STRING.name.toLowerCase(),e,r)):[t]).join(",");break;case F.NUMBER:n=Z(t);break;case F.DATE:{const e=r.format;t&&(""+t).trim().length&&(n=typeof t===A.NUMBER.name.toLowerCase()?new Date(t):t?e?L(e,t):new Date(t):void 0);break}default:n=typeof t===A.OBJECT.name.toLowerCase()?Array.isArray(t)?t.join(","):JSON.stringify(t):typeof t===A.BOOLEAN.name.toLowerCase()?t:typeof t===A.STRING.name.toLowerCase()?ee(t):n}if(void 0===n)throw new I(`Failed to parse value of type ${e} from ${typeof t} - ${t}`);return n}function Z(e){if("number"==typeof e&&!isNaN(e))return e;const t=Number(e);return isNaN(t)?void 0:t}function ee(e){if(!e)return e;const t={"&":"&amp;","<":"&lt;",">":"&gt;"};return(""+e).replace(/[&<>]/g,e=>t[e]||e)}function te(e){const t={"&amp;":"&","&lt;":"<","&gt;":">"};return(""+e).replace(/&lt;|&gt;|&amp;/g,e=>t[e]||e)}function re(e){let t=Date.now();try{O.pk(e.constructor)&&(t=e[O.pk(e.constructor)])}catch(e){}return`${e.constructor.name}-${t}`}class ne{static{this.cache={}}constructor(e){this.flavour=e,this.initialized=!1,ne.register(this)}translate(e,t=!0){if(t)switch(e){case A.STRING.name.toLowerCase():return F.TEXT;case A.NUMBER.name.toLowerCase():case A.BIGINT.name.toLowerCase():return F.NUMBER;case A.BOOLEAN.name.toLowerCase():return F.CHECKBOX;case A.DATE.name.toLowerCase():return F.DATE}else switch(e){case F.SELECT:case F.TEXT:case F.EMAIL:case F.COLOR:case F.PASSWORD:case F.TEL:case F.URL:case F.SEARCH:case F.HIDDEN:case F.TEXTAREA:case F.RADIO:return A.STRING.name.toLowerCase();case F.NUMBER:return A.NUMBER.name.toLowerCase();case F.CHECKBOX:return A.BOOLEAN.name.toLowerCase();case F.DATE:case F.DATETIME_LOCAL:case F.TIME:return A.DATE.name.toLowerCase()}return e}getClassDecoratorsMetadata(e){return[O.uiModelOf(e.constructor),O.uiListModelOf(e.constructor),O.uiHandlersFor(e.constructor),O.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===_.FIRST?0:typeof t===g.NUMBER?1:t===_.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(_).includes(t)}isValidatableByType(e){return Object.keys(B).includes(e)}isValidatableByAttribute(e){return Object.keys(H).includes(e)}toAttributeValue(e,t){if(!Object.keys(H).includes(e))throw Error(`Invalid attribute key "${e}". Expected one of: ${Object.keys(H).join(", ")}.`);return e===_.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 J(`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=O.uiPropertiesOf(t.constructor);let d,f=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=O.uiDecorationOf(t.constructor,e);let s;try{s=O.uiTypeOf(t.constructor,e)}catch(e){if(!(e instanceof C))throw e}if(O.uiIsHidden(t.constructor,e)&&!O.uiElementOf(t.constructor,e))throw new J(`@uielement no found in "${e}". It is required to use hiddenOn decorator.`);Object.entries(o).map(([e,t])=>({key:e,props:t})).sort(e=>[_.ELEMENT,_.CHILD].includes(e.key)?-1:1).forEach(o=>{if(!o)throw new J("No decorator found");switch(o.key){case _.PROP:f[e]=o.props;break;case _.CHILD:{const n=o.props?.props?.name||e;try{if(!O.isModel(O.build({},n))&&!O.isPropertyModel(t,n))throw new J(`Child "${n}" must be a model.`)}catch(e){throw new J(`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(O.get(e))}d=d||[];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||{})),d.push(c);break}case _.UILISTPROP:{h=h||{};const t=o.props;t.name&&(h[t.name]="object"==typeof t?.props&&_.SEQUENCE in t.props?t.props:e);const n=Object.assign({},a.props?.item||{},l?.props||{},t?.props||{},r);f={tag:l?.tag||n.render||"",props:Object.assign({},f?.props,{mapper:h},n)};break}case _.EVENTS:case _.HIDDEN:case _.PAGE:case _.ORDER:case _.UILAYOUTPROP:case _.ELEMENT:{d=d||[];const s=o.props,i=Object.assign({},f?.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===_.ELEMENT){const r={tag:s.tag||f?.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===F.DATE&&(r.props[_.FORMAT]=e.props.format||v),r.props[_.TYPE]=e.key):this.isCustomValidator(e.key)&&(i[_.SUB_TYPE]=e.key,e.props?.message&&(i[_.VALIDATION_MESSAGE]=e.props.message));if(!r.props[_.TYPE]){const n=b.type(t.constructor,e).name;r.props[_.TYPE]=this.translate(n.toLowerCase(),!0)}r.props.value=K(r.props[_.TYPE],t[e],r.props[_.FORMAT]),d.push(r)}else{const t=d.find(t=>t.props?.name===e||[_.UILAYOUTPROP,_.PAGE,_.EVENTS].includes(o.key)&&(t.props?.childOf===e||t.props?.childOf?.endsWith("."+e)));if(t)if(o.key!==_.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 J("Invalid key: "+o.key)}})}}r=Object.assign({},E,r,{handlers:u||{}});const m=r?.operation;d=this.sortChildrenByOrder(d).filter(e=>{const t=e?.props?.hidden||[];return t?.length&&t.includes(m)?void 0:e});const R={tag:c,item:f,props:r,children:d?.length?d:void 0};return n&&(R.rendererId=re(t)),R}static register(e){if(e.flavour in this.cache)throw new I(`Rendering engine under ${e.flavour} already exists`);this.cache[e.flavour]=e,this.current=e}static getOrBoot(e){if(e instanceof ne)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 I(`Rendering engine under ${e} does not exist`);return this.getOrBoot(this.cache[e])}static render(e,...t){if(!O.get(e.constructor.name)&&!O.fromObject(e))throw new I("No model registered found");const r=O.renderedBy(e.constructor);return ne.get(r).render(e,...t)}}function oe(...e){return(t,r)=>M(z(r,_.HIDDEN),e)(t,r)}function se(e=_.FIRST){return(t,r)=>M(z(r,_.ORDER),e)(t,r)}function ie(){return oe(D.CREATE,D.READ,D.UPDATE,D.DELETE)}function ae(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 M(z(o,_.ELEMENT),s)(n,o)}}function ce(e=void 0,t=!1){return(r,n)=>{const o={name:e||n,stringify:t};M(z(n,_.PROP),o)(r,n)}}function Ee(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})};M(z(i,_.CHILD),a)(s,i)}}function le(e=void 0,t){return(r,n)=>{const o={name:e||n,props:t||{}};M(z(n,_.UILISTPROP),o)(r,n)}}function ue(e=1,t=1){return(r,n)=>{const o={name:n,props:Object.assign({},{row:t,col:e})};M(z(n,_.UILAYOUTPROP),o)(r,n)}}function pe(e=1){return(t,r)=>M(z(r,_.PAGE),e)(t,r)}function de(e,t){return(r,n)=>{M(z(n,_.EVENTS),{..."object"==typeof e?e:{[e]:t}})(r,n)}}function fe(e){return de("handleClick",e)}function he(e){return de("render",e)}function Te(e=_.LAST,t){return(r,n)=>{const o={name:n,props:{sequence:e,...t?{valueParserFn:t}:{}}};M(z(n,_.UILISTPROP),o)(r,n)}}class me extends y{getMessage(e,...t){return me.translateService?me.translateService.translate(e,...t):super.getMessage(e,...t)}}class Re extends U{constructor(){super(),this.enableDarkMode=!0,this.isDarkMode=!1,this.item={tag:""},this.props={},this.route="",this.borders=!1,this.OperationKeys=D,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(W(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(W(s)){const n=(new s)[e];n&&(r[o]=n,t.events[o]=n)}else r[o]=n,t.events[o]=n}),r}}class Oe extends Re{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 Ae extends U{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||{})}`)}}function Le(e,t){return(r,n)=>{const o={tag:e||r.name,props:t};return P(b.key(_.REFLECT,_.UIMODEL),o)(r)}}function ge(e){return w(P(b.key(_.REFLECT,_.RENDERED_BY),e))}function ye(e,t){return(r,n)=>{const o={item:{tag:e||r.name,props:t}};return P(b.key(_.REFLECT,_.UILISTMODEL),o)(r)}}function Ne(e){return t=>{const r={handlers:e};return P(b.key(_.REFLECT,_.HANDLERS),r)(t)}}function De(e,t=1,r=1,n={}){const o=Object.assign({..."boolean"==typeof t?{flexMode:t,cols:1}:{flexMode:!1,cols:t},rows:r,...Object.assign({breakpoint:k.LARGE},n)});return(t,r)=>(P(b.key(_.REFLECT,_.UILAYOUT),o)(t),Le(e,o)(t,r))}function Ie(e,t=1,r=!1,n={}){let o=[];return"object"==typeof t&&(o=t,t=o.length),Le(e,{pages:t,paginated:r,pageTitles:o,props:n})}O.prototype.render=function(...e){return ne.render(this,...e)},O.renderedBy=(e=>b.get(e,b.key(_.REFLECT,_.RENDERED_BY))).bind(O),O.uiPropertiesOf=(e=>{const t=b.get(e,b.key(_.REFLECT,S.PROPERTIES));if(t)return Object.keys(t)}).bind(O),O.uiDecorationOf=(e,t,r)=>{const n=b.get(e,b.key(_.REFLECT,S.PROPERTIES,t));if(n)return r?n[r]:n},O.uiModelOf=e=>b.get(e,b.key(_.REFLECT,_.UIMODEL)),O.uiElementOf=(e,t)=>b.get(e,z(t,_.ELEMENT)),O.uiListModelOf=e=>b.get(e,b.key(_.REFLECT,_.UILISTMODEL)),O.uiHandlersFor=e=>b.get(e,b.key(_.REFLECT,_.HANDLERS)),O.uiLayoutOf=e=>b.get(e,b.key(_.REFLECT,_.UILAYOUT)),O.uiIsHidden=(e,t)=>!!b.get(e,z(t,_.HIDDEN)),O.uiIsHiddenOn=(e,t,r)=>{const n=b.get(e,z(t,_.HIDDEN));return!!n&&(r?n.includes(r):n)},O.uiTypeOf=(e,t)=>{const r=b.get(e,b.key(_.REFLECT,S.PROPERTIES,t));if(!r)throw new C(`No metadata found for property '${t}' on model '${e.name}'`);const n=Object.keys(r).filter(e=>[_.PROP,_.ELEMENT,_.CHILD].includes(e));if(0===n.length)throw new C(`No UI type metadata found for property '${t}' on model '${e.name}'`);if(n.length>1)throw new J("Only one type of decoration is allowed. Please choose between @uiprop, @uichild or @uielement");return r[n[0]]},O.uiListItems=(e=>{const t=b.get(e,b.key(_.REFLECT,S.PROPERTIES));if(t)return Object.keys(t)}).bind(O);const Ce=N.prototype;Ce.decorateClass||(Ce.decorateClass=function(e){return this._classDecorators||(this._classDecorators=[]),this._classDecorators.push(e),this}),Ce.uimodel=function(e,t){return this.decorateClass(Le(e,t))},Ce.renderedBy=function(e){return this.decorateClass(ge(e))},Ce.uilistmodel=function(e,t){return this.decorateClass(ye(e,t))},Ce.uihandlers=function(e){return this.decorateClass(Ne(e))},Ce.uilayout=function(e,t,r,n){return this.decorateClass(De(e,t,r,n))},Ce.uisteppedmodel=function(e,t,r,n){return this.decorateClass(Ie(e,t,r,n))};const be="##VERSION##",Se="##COMMIT##",Me="##FULL_VERSION##",Pe="##PACKAGE##";b.registerLibrary(Pe,be);export{X as ActionRoles,Se as COMMIT,$ as ComponentEventNames,Re as DecafComponent,Oe as DecafEventHandler,Ae as DecafTranslateService,Y as ElementPositions,x as ElementSizes,Me as FULL_VERSION,j as HTML5CheckTypes,v as HTML5DateFormat,F as HTML5InputTypes,V as LayoutGridGaps,Pe as PACKAGE_NAME,ne as RenderingEngine,J as RenderingError,G as TransactionHooks,_ as UIKeys,k as UIMediaBreakPoints,me as UIValidator,be as VERSION,H as ValidatableByAttribute,B as ValidatableByType,Q as WindowColorSchemes,ee as escapeHtml,K as formatByType,re as generateUIModelID,z as getUIAttributeKey,ie as hidden,oe as hideOn,W as isClassConstructor,Z as parseToNumber,q as parseValueByType,ge as renderedBy,te as revertHtml,Ee as uichild,ae as uielement,Ne as uihandlers,De as uilayout,ue as uilayoutprop,ye as uilistmodel,le as uilistprop,Le as uimodel,de as uion,fe as uionclick,he as uionrender,se as uiorder,pe as uipageprop,ce as uiprop,Ie as uisteppedmodel,Te as uitablecol};
1
+ import{ValidationKeys as e,PasswordValidator as t,DateValidator as r,URLValidator as n,EmailValidator as o,GreaterThanOrEqualValidator as s,GreaterThanValidator as i,LessThanOrEqualValidator as a,LessThanValidator as c,DiffValidator as E,EqualsValidator as l,PatternValidator as u,MaxLengthValidator as p,MinLengthValidator as d,StepValidator as f,MaxValidator as h,MinValidator as R,RequiredValidator as m,formatDate as O,Model as T,ReservedModels as A,parseDate as L,Primitives as y,Validator as g,ModelBuilder as N}from"@decaf-ts/decorator-validation";import{OperationKeys as D,InternalError as I,NotFoundError as S}from"@decaf-ts/db-decorators";import{Metadata as C,DecorationKeys as b,propMetadata as M,metadata as w,apply as k}from"@decaf-ts/decoration";import{LoggedClass as P}from"@decaf-ts/logging";var U;(e=>{e.SMALL="small",e.MEDIUM="medium",e.LARGE="large",e.XLARGE="xlarge"})(U||(U={}));const _={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",HIDE_FOR:"hide-for",SHOW_FOR:"show-for",RENDER_IF:"render-if",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={[_.EMAIL]:o,[_.URL]:n,[_.DATE]:r,[_.PASSWORD]:t},F={[_.REQUIRED]:m,[_.MIN]:R,[_.MAX]:h,[_.STEP]:f,[_.MIN_LENGTH]:d,[_.MAX_LENGTH]:p,[_.PATTERN]:u,[_.EQUALS]:l,[_.DIFF]:E,[_.LESS_THAN]:c,[_.LESS_THAN_OR_EQUAL]:a,[_.GREATER_THAN]:i,[_.GREATER_THAN_OR_EQUAL]:s},B="yyyy-MM-dd",v={BUTTON:"button",CHECKBOX:"checkbox",COLOR:"color",DATE:_.DATE,DATETIME_LOCAL:"datetime-local",EMAIL:_.EMAIL,FILE:"file",HIDDEN:"hidden",IMAGE:"image",MONTH:"month",NUMBER:"number",PASSWORD:_.PASSWORD,RADIO:"radio",RANGE:"range",RESET:"reset",SEARCH:"search",SUBMIT:"submit",TEL:"tel",TEXT:"text",TEXTAREA:"textarea",SELECT:"select",TIME:"time",URL:_.URL,WEEK:"week"},j=[v.CHECKBOX,v.RADIO],$={Render:"render",BackButtonClickEvent:"backButtonNavigationEndEvent",Refresh:"RefreshEvent",Click:"ClickEvent",Change:"ChangeEvent",Submit:"SubmitEvent",ValidationError:"validationErrorEvent",ThemeChange:"themeChangeEvent",FormGroupLoaded:"formGroupLoadedEvent"},G={BeforeRead:"beforeRead",AfterRead:"afterRead",BeforeCreate:"beforeCreate",AfterCreate:"afterCreate",BeforeUpdate:"beforeUpdate",AfterUpdate:"afterUpdate",BeforeDelete:"beforeDelete",AfterDelete:"afterDelete"},x={xsmall:"xsmall",small:"small",medium:"medium",default:"default",large:"large",xLarge:"xlarge","2xLarge":"2xlarge",auto:"auto",expand:"expand",block:"block",half:"half",full:"full"},Y={left:"left",center:"center",right:"right",top:"top",bottom:"bottom"},V={small:"small",medium:"medium",large:"large",collapse:"collapse",none:""},X={cancel:"cancel",confirm:"confirm",submit:"submit",clear:"clear",back:"back",[D.CREATE]:D.CREATE,[D.READ]:D.READ,[D.UPDATE]:D.UPDATE,[D.DELETE]:D.DELETE},Q={light:"light",dark:"dark",undefined:"undefined"};class W extends I{constructor(e){super(e,W.name)}}const J=e=>"function"==typeof e&&/^class\s/.test(e+"");function z(e,t){return C.key(_.REFLECT,b.PROPERTIES,e,t)}function K(e,t,...r){if(e===_.DATE){if(!t)return"";const e=r.shift()||B;return O(new Date(t),e)}return t}function q(e,t,r){let n;switch(e){case Array.name:n=(Array.isArray(t)?t.map(e=>q(A.STRING.name.toLowerCase(),e,r)):[t]).join(",");break;case v.NUMBER:n=Z(t);break;case v.DATE:{const e=r.format;t&&(""+t).trim().length&&(n=typeof t===A.NUMBER.name.toLowerCase()?new Date(t):t?e?L(e,t):new Date(t):void 0);break}default:n=typeof t===A.OBJECT.name.toLowerCase()?Array.isArray(t)?t.join(","):JSON.stringify(t):typeof t===A.BOOLEAN.name.toLowerCase()?t:typeof t===A.STRING.name.toLowerCase()?ee(t):n}if(void 0===n)throw new I(`Failed to parse value of type ${e} from ${typeof t} - ${t}`);return n}function Z(e){if("number"==typeof e&&!isNaN(e))return e;const t=Number(e);return isNaN(t)?void 0:t}function ee(e){if(!e)return e;const t={"&":"&amp;","<":"&lt;",">":"&gt;"};return(""+e).replace(/[&<>]/g,e=>t[e]||e)}function te(e){const t={"&amp;":"&","&lt;":"<","&gt;":">"};return(""+e).replace(/&lt;|&gt;|&amp;/g,e=>t[e]||e)}function re(e){let t=Date.now();try{T.pk(e.constructor)&&(t=e[T.pk(e.constructor)])}catch(e){}return`${e.constructor.name}-${t}`}class ne{static{this.cache={}}constructor(e){this.flavour=e,this.initialized=!1,ne.register(this)}translate(e,t=!0){if(t)switch(e){case A.STRING.name.toLowerCase():return v.TEXT;case A.NUMBER.name.toLowerCase():case A.BIGINT.name.toLowerCase():return v.NUMBER;case A.BOOLEAN.name.toLowerCase():return v.CHECKBOX;case A.DATE.name.toLowerCase():return v.DATE}else switch(e){case v.SELECT:case v.TEXT:case v.EMAIL:case v.COLOR:case v.PASSWORD:case v.TEL:case v.URL:case v.SEARCH:case v.HIDDEN:case v.TEXTAREA:case v.RADIO:return A.STRING.name.toLowerCase();case v.NUMBER:return A.NUMBER.name.toLowerCase();case v.CHECKBOX:return A.BOOLEAN.name.toLowerCase();case v.DATE:case v.DATETIME_LOCAL:case v.TIME:return A.DATE.name.toLowerCase()}return e}getClassDecoratorsMetadata(e){return[T.uiModelOf(e.constructor),T.uiListModelOf(e.constructor),T.uiHandlersFor(e.constructor),T.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===_.FIRST?0:typeof t===y.NUMBER?1:t===_.LAST?e.length+e.indexOf(r):1,i=s(n),a=s(o);return i!==a?i-a:1===i&&typeof n===y.NUMBER&&typeof o===y.NUMBER?n-o:0})}isCustomValidator(t){return!Object.values(e).includes(t)&&!Object.values(_).includes(t)}isValidatableByType(e){return Object.keys(H).includes(e)}isValidatableByAttribute(e){return Object.keys(F).includes(e)}toAttributeValue(e,t){if(!Object.keys(F).includes(e))throw Error(`Invalid attribute key "${e}". Expected one of: ${Object.keys(F).join(", ")}.`);return e===_.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 W(`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=T.uiPropertiesOf(t.constructor);let d,f=l?.props||{},h={};const R=(e,t)=>e?[e,t].join("."):t;if(p){const n=C.get(t.constructor,e.REFLECT)||{};for(const e of p){const o=T.uiDecorationOf(t.constructor,e);let s;try{s=T.uiTypeOf(t.constructor,e)}catch(e){if(!(e instanceof S))throw e}if(T.uiIsHidden(t.constructor,e)&&!T.uiElementOf(t.constructor,e))throw new W(`@uielement no found in "${e}". It is required to use hiddenOn decorator.`);Object.entries(o).map(([e,t])=>({key:e,props:t})).sort(e=>[_.ELEMENT,_.CHILD].includes(e.key)?-1:1).forEach(o=>{if(!o)throw new W("No decorator found");switch(o.key){case _.PROP:f[e]=o.props;break;case _.CHILD:{const n=o.props?.props?.name||e;try{if(!T.isModel(T.build({},n))&&!T.isPropertyModel(t,n))throw new W(`Child "${n}" must be a model.`)}catch(e){throw new W(`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(T.get(e))}d=d||[];const a=Object.assign({},r||{},{model:s},{inheritProps:o.props,childOf:R(r?.childOf,e)}),c=this.toFieldDefinition(i||s,a,!1),{inheritProps:E}=a;E&&(c.props=Object.assign({},c.props,E.props||{})),d.push(c);break}case _.UILISTPROP:{h=h||{};const t=o.props;t.name&&(h[t.name]="object"==typeof t?.props&&_.SEQUENCE in t.props?t.props:e);const n=Object.assign({},a.props?.item||{},l?.props||{},t?.props||{},r);f={tag:l?.tag||n.render||"",props:Object.assign({},f?.props,{mapper:h},n)};break}case _.EVENTS:case _.HIDDEN:case _.HIDE_FOR:case _.SHOW_FOR:case _.PAGE:case _.ORDER:case _.UILAYOUTPROP:case _.ELEMENT:{d=d||[];const s=o.props,i=o.key===_.HIDE_FOR?{hideFor:o.props}:o.key===_.SHOW_FOR?{showFor:o.props}:{},a=Object.assign({},f?.props,s.props||{},i,s?.props?.name?{path:R(r?.childOf,s.props.name),childOf:void 0}:{},r,{name:s.props?.name||e});if(o.key===_.ELEMENT){const r={tag:s.tag||f?.tag||c||"",props:a},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===v.DATE&&(r.props[_.FORMAT]=e.props.format||B),r.props[_.TYPE]=e.key):this.isCustomValidator(e.key)&&(a[_.SUB_TYPE]=e.key,e.props?.message&&(a[_.VALIDATION_MESSAGE]=e.props.message));if(!r.props[_.TYPE]){const n=C.type(t.constructor,e).name;r.props[_.TYPE]=this.translate(n.toLowerCase(),!0)}r.props.value=K(r.props[_.TYPE],t[e],r.props[_.FORMAT]),d.push(r)}else{const t=d.find(t=>t.props?.name===e||[_.UILAYOUTPROP,_.PAGE,_.EVENTS].includes(o.key)&&(t.props?.childOf===e||t.props?.childOf?.endsWith("."+e)));if(t)if(o.key===_.HIDE_FOR||o.key===_.SHOW_FOR)t.props=Object.assign({},t.props,i);else if(o.key!==_.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 W("Invalid key: "+o.key)}})}}r=Object.assign({},E,r,{handlers:u||{}});const m=new Set([...Array.isArray(r?.namespaces)?r.namespaces:[],..."string"==typeof r?.namespace?[r.namespace]:[]].filter(Boolean)),O=r?.operation;d=this.sortChildrenByOrder(d).filter(e=>{const t=e?.props?.hidden||[];if(t.length>0&&t.includes(O))return!1;const r=e?.props?.hideFor||[],n=e?.props?.showFor||[];return!(r.length>0&&[...m].some(e=>r.includes(e))||n.length>0&&![...m].some(e=>n.includes(e)))});const A={tag:c,item:f,props:r,children:d?.length?d:void 0};return n&&(A.rendererId=re(t)),A}static register(e){if(e.flavour in this.cache)throw new I(`Rendering engine under ${e.flavour} already exists`);this.cache[e.flavour]=e,this.current=e}static getOrBoot(e){if(e instanceof ne)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 I(`Rendering engine under ${e} does not exist`);return this.getOrBoot(this.cache[e])}static render(e,...t){if(!T.get(e.constructor.name)&&!T.fromObject(e))throw new I("No model registered found");const r=T.renderedBy(e.constructor);return ne.get(r).render(e,...t)}}function oe(...e){return(t,r)=>M(z(r,_.HIDDEN),e)(t,r)}function se(...e){return(t,r)=>M(z(r,_.HIDE_FOR),e)(t,r)}function ie(...e){return(t,r)=>M(z(r,_.SHOW_FOR),e)(t,r)}function ae(...e){return ie(...e)}function ce(e=_.FIRST){return(t,r)=>M(z(r,_.ORDER),e)(t,r)}function Ee(){return oe(D.CREATE,D.READ,D.UPDATE,D.DELETE)}function le(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 M(z(o,_.ELEMENT),s)(n,o)}}function ue(e=void 0,t=!1){return(r,n)=>{const o={name:e||n,stringify:t};M(z(n,_.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})};M(z(i,_.CHILD),a)(s,i)}}function de(e=void 0,t){return(r,n)=>{const o={name:e||n,props:t||{}};M(z(n,_.UILISTPROP),o)(r,n)}}function fe(e=1,t=1){return(r,n)=>{const o={name:n,props:Object.assign({},{row:t,col:e})};M(z(n,_.UILAYOUTPROP),o)(r,n)}}function he(e=1){return(t,r)=>M(z(r,_.PAGE),e)(t,r)}function Re(e,t){return(r,n)=>{M(z(n,_.EVENTS),{..."object"==typeof e?e:{[e]:t}})(r,n)}}function me(e){return Re("handleClick",e)}function Oe(e){return Re("render",e)}function Te(e=_.LAST,t){return(r,n)=>{const o={name:n,props:{sequence:e,...t?{valueParserFn:t}:{}}};M(z(n,_.UILISTPROP),o)(r,n)}}class Ae extends g{getMessage(e,...t){return Ae.translateService?Ae.translateService.translate(e,...t):super.getMessage(e,...t)}}class Le extends P{constructor(){super(),this.enableDarkMode=!0,this.isDarkMode=!1,this.item={tag:""},this.props={},this.route="",this.borders=!1,this.OperationKeys=D,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(J(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(J(s)){const n=(new s)[e];n&&(r[o]=n,t.events[o]=n)}else r[o]=n,t.events[o]=n}),r}}class ye 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)}`)}}class ge extends P{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||{})}`)}}function Ne(e,t){return(r,n)=>{const o={tag:e||r.name,props:t};return w(C.key(_.REFLECT,_.UIMODEL),o)(r)}}function De(e){return k(w(C.key(_.REFLECT,_.RENDERED_BY),e))}function Ie(e,t){return(r,n)=>{const o={item:{tag:e||r.name,props:t}};return w(C.key(_.REFLECT,_.UILISTMODEL),o)(r)}}function Se(e){return t=>{const r={handlers:e};return w(C.key(_.REFLECT,_.HANDLERS),r)(t)}}function Ce(e,t=1,r=1,n={}){const o=Object.assign({..."boolean"==typeof t?{flexMode:t,cols:1}:{flexMode:!1,cols:t},rows:r,...Object.assign({breakpoint:U.LARGE},n)});return(t,r)=>(w(C.key(_.REFLECT,_.UILAYOUT),o)(t),Ne(e,o)(t,r))}function be(e,t=1,r=!1,n={}){let o=[];return"object"==typeof t&&(o=t,t=o.length),Ne(e,{pages:t,paginated:r,pageTitles:o,props:n})}T.prototype.render=function(...e){return ne.render(this,...e)},T.renderedBy=(e=>C.get(e,C.key(_.REFLECT,_.RENDERED_BY))).bind(T),T.uiPropertiesOf=(e=>{const t=C.get(e,C.key(_.REFLECT,b.PROPERTIES));if(t)return Object.keys(t)}).bind(T),T.uiDecorationOf=(e,t,r)=>{const n=C.get(e,C.key(_.REFLECT,b.PROPERTIES,t));if(n)return r?n[r]:n},T.uiModelOf=e=>C.get(e,C.key(_.REFLECT,_.UIMODEL)),T.uiElementOf=(e,t)=>C.get(e,z(t,_.ELEMENT)),T.uiListModelOf=e=>C.get(e,C.key(_.REFLECT,_.UILISTMODEL)),T.uiHandlersFor=e=>C.get(e,C.key(_.REFLECT,_.HANDLERS)),T.uiLayoutOf=e=>C.get(e,C.key(_.REFLECT,_.UILAYOUT)),T.uiIsHidden=(e,t)=>!!C.get(e,z(t,_.HIDDEN)),T.uiIsHiddenOn=(e,t,r)=>{const n=C.get(e,z(t,_.HIDDEN));return!!n&&(r?n.includes(r):n)},T.uiTypeOf=(e,t)=>{const r=C.get(e,C.key(_.REFLECT,b.PROPERTIES,t));if(!r)throw new S(`No metadata found for property '${t}' on model '${e.name}'`);const n=Object.keys(r).filter(e=>[_.PROP,_.ELEMENT,_.CHILD].includes(e));if(0===n.length)throw new S(`No UI type metadata found for property '${t}' on model '${e.name}'`);if(n.length>1)throw new W("Only one type of decoration is allowed. Please choose between @uiprop, @uichild or @uielement");return r[n[0]]},T.uiListItems=(e=>{const t=C.get(e,C.key(_.REFLECT,b.PROPERTIES));if(t)return Object.keys(t)}).bind(T);const Me=N.prototype;Me.decorateClass||(Me.decorateClass=function(e){return this._classDecorators||(this._classDecorators=[]),this._classDecorators.push(e),this}),Me.uimodel=function(e,t){return this.decorateClass(Ne(e,t))},Me.renderedBy=function(e){return this.decorateClass(De(e))},Me.uilistmodel=function(e,t){return this.decorateClass(Ie(e,t))},Me.uihandlers=function(e){return this.decorateClass(Se(e))},Me.uilayout=function(e,t,r,n){return this.decorateClass(Ce(e,t,r,n))},Me.uisteppedmodel=function(e,t,r,n){return this.decorateClass(be(e,t,r,n))};const we="##VERSION##",ke="##COMMIT##",Pe="##FULL_VERSION##",Ue="##PACKAGE##";C.registerLibrary(Ue,we);export{X as ActionRoles,ke as COMMIT,$ as ComponentEventNames,Le as DecafComponent,ye as DecafEventHandler,ge as DecafTranslateService,Y as ElementPositions,x as ElementSizes,Pe as FULL_VERSION,j as HTML5CheckTypes,B as HTML5DateFormat,v as HTML5InputTypes,V as LayoutGridGaps,Ue as PACKAGE_NAME,ne as RenderingEngine,W as RenderingError,G as TransactionHooks,_ as UIKeys,U as UIMediaBreakPoints,Ae as UIValidator,we as VERSION,F as ValidatableByAttribute,H as ValidatableByType,Q as WindowColorSchemes,ee as escapeHtml,K as formatByType,re as generateUIModelID,z as getUIAttributeKey,Ee as hidden,se as hideFor,oe as hideOn,J as isClassConstructor,Z as parseToNumber,q as parseValueByType,ae as renderIf,De as renderedBy,te as revertHtml,ie as showFor,pe as uichild,le as uielement,Se as uihandlers,Ce as uilayout,fe as uilayoutprop,Ie as uilistmodel,de as uilistprop,Ne as uimodel,Re as uion,me as uionclick,Oe as uionrender,ce as uiorder,he as uipageprop,ue as uiprop,be as uisteppedmodel,Te as uitablecol};
2
2
  //# sourceMappingURL=ui-decorators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui-decorators.js","sources":["../src/ui/constants.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/decorators.ts","../src/model/overrides.ts","../src/overrides/ModelBuilderExtensions.ts","../src/index.ts"],"sourcesContent":[null,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","BeforeRead","AfterRead","BeforeCreate","AfterCreate","BeforeUpdate","AfterUpdate","BeforeDelete","AfterDelete","ElementSizes","xsmall","small","medium","default","large","xLarge","auto","expand","block","half","full","ElementPositions","left","center","right","top","bottom","LayoutGridGaps","collapse","none","ActionRoles","cancel","confirm","submit","clear","back","OperationKeys","CREATE","READ","UPDATE","DELETE","WindowColorSchemes","light","dark","undefined","RenderingError","InternalError","constructor","msg","super","name","isClassConstructor","fn","test","String","getUIAttributeKey","prop","key","Metadata","DecorationKeys","PROPERTIES","formatByType","type","value","args","format","shift","formatDate","Date","parseValueByType","fieldProps","result","Array","isArray","map","v","ReservedModels","STRING","toLowerCase","join","parseToNumber","trim","length","parseDate","OBJECT","JSON","stringify","BOOLEAN","escapeHtml","isNaN","parsed","Number","tagsToReplace","replace","tag","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","props","order","bOrder","weight","Primitives","indexOf","aWeight","bWeight","isCustomValidator","Object","values","includes","isValidatableByType","keys","isValidatableByAttribute","toAttributeValue","Error","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","k","forEach","dec","modelName","isModel","build","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","engine","current","getOrBoot","obj","initialize","fromObject","renderedBy","hideOn","operations","object","propertyKey","propMetadata","uiorder","uielement","serialize","original","metadata","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","uimodel","meta","apply","uilistmodel","uihandlers","uilayout","colsMode","rows","config","flexMode","cols","breakpoint","LARGE","uisteppedmodel","pages","paginated","pageTitles","prototype","bind","uiIsHiddenOn","op","uiListItems","ModelBuilder","decorateClass","decorator","_classDecorators","VERSION","COMMIT","FULL_VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
1
+ {"version":3,"file":"ui-decorators.js","sources":["../src/ui/constants.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/decorators.ts","../src/model/overrides.ts","../src/overrides/ModelBuilderExtensions.ts","../src/index.ts"],"sourcesContent":[null,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","HIDE_FOR","SHOW_FOR","RENDER_IF","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","BeforeRead","AfterRead","BeforeCreate","AfterCreate","BeforeUpdate","AfterUpdate","BeforeDelete","AfterDelete","ElementSizes","xsmall","small","medium","default","large","xLarge","auto","expand","block","half","full","ElementPositions","left","center","right","top","bottom","LayoutGridGaps","collapse","none","ActionRoles","cancel","confirm","submit","clear","back","OperationKeys","CREATE","READ","UPDATE","DELETE","WindowColorSchemes","light","dark","undefined","RenderingError","InternalError","constructor","msg","super","name","isClassConstructor","fn","test","String","getUIAttributeKey","prop","key","Metadata","DecorationKeys","PROPERTIES","formatByType","type","value","args","format","shift","formatDate","Date","parseValueByType","fieldProps","result","Array","isArray","map","v","ReservedModels","STRING","toLowerCase","join","parseToNumber","trim","length","parseDate","OBJECT","JSON","stringify","BOOLEAN","escapeHtml","isNaN","parsed","Number","tagsToReplace","replace","tag","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","props","order","bOrder","weight","Primitives","indexOf","aWeight","bWeight","isCustomValidator","Object","values","includes","isValidatableByType","keys","isValidatableByAttribute","toAttributeValue","Error","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","k","forEach","dec","modelName","isModel","build","isPropertyModel","Clazz","submodel","clazzName","childrenGlobalProps","childOf","childDefinition","push","decProps","render","uiProps","visibilityProps","hideFor","showFor","path","validationDecs","message","basicType","child","find","c","endsWith","row","col","currentNamespaces","Set","namespaces","namespace","operation","hiddenOn","hidden","some","rendererId","engine","current","getOrBoot","obj","initialize","fromObject","renderedBy","hideOn","operations","object","propertyKey","propMetadata","renderIf","uiorder","uielement","serialize","original","metadata","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","uimodel","meta","apply","uilistmodel","uihandlers","uilayout","colsMode","rows","config","flexMode","cols","breakpoint","LARGE","uisteppedmodel","pages","paginated","pageTitles","prototype","bind","uiIsHiddenOn","op","uiListItems","ModelBuilder","decorateClass","decorator","_classDecorators","VERSION","COMMIT","FULL_VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GRAPH_DEFAULT_CATEGORY_STYLE = exports.PortDirection = exports.GraphKeys = void 0;
3
+ exports.GRAPH_DEFAULT_CATEGORY_STYLE = exports.GRAPH_VISUAL_STATE_STYLES = exports.PortDirection = exports.GraphKeys = void 0;
4
+ exports.graphVisualStyleOf = graphVisualStyleOf;
4
5
  exports.registerGraphCategoryStyle = registerGraphCategoryStyle;
5
6
  exports.graphCategoryStyleOf = graphCategoryStyleOf;
6
7
  exports.resolveEffectiveColor = resolveEffectiveColor;
@@ -16,6 +17,32 @@ exports.resolveEffectiveIcon = resolveEffectiveIcon;
16
17
  PortDirection["OUTPUT"] = "output";
17
18
  PortDirection["CONNECTION"] = "connection";
18
19
  })(exports.PortDirection || (exports.PortDirection = {}));
20
+ /**
21
+ * The default visual-state → overlay mapping contract (DECAF-48 §4.4):
22
+ * running=faded green, blocked=yellow, errored=red; succeeded keeps the
23
+ * node's own accent; unexecuted-after-failure fades/disabled. This is the
24
+ * shared, framework-neutral source of truth that supersedes the DECAF-32
25
+ * §21.9 running colour for the live run-feedback overlay (§4.5).
26
+ */
27
+ exports.GRAPH_VISUAL_STATE_STYLES = {
28
+ idle: { opacity: 1 },
29
+ running: { glow: "#22c55e", opacity: 0.85 },
30
+ blocked: { glow: "#eab308", opacity: 0.85 },
31
+ succeeded: { opacity: 1 },
32
+ failed: { glow: "#ef4444", opacity: 1 },
33
+ skipped: { opacity: 0.35 },
34
+ };
35
+ /**
36
+ * Resolves the visual style overlay for a node/edge execution state, falling
37
+ * back to a neutral default when the state is unknown or unregistered.
38
+ *
39
+ * @param state - The visual state string (as defined by the shared
40
+ * `GraphVisualState` values, e.g. `"running"`, `"blocked"`).
41
+ * @returns The style overlay for the given state.
42
+ */
43
+ function graphVisualStyleOf(state) {
44
+ return exports.GRAPH_VISUAL_STATE_STYLES[state] ?? exports.GRAPH_VISUAL_STATE_STYLES.idle;
45
+ }
19
46
  /**
20
47
  * Registry mapping category names to their default style (color + icon).
21
48
  * Consumers register categories via {@link registerGraphCategoryStyle}.
@@ -1 +1 @@
1
- {"version":3,"file":"graph/constants.cjs","sourceRoot":"","sources":["graph/constants.js"],"names":[],"mappings":";;;AAmCA,gEAEC;AAID,oDAKC;AAKD,sDAIC;AAKD,oDAIC;AA/DD,CAAC,UAAU,SAAS;IAChB,SAAS,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IAC7B,SAAS,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC;IACjC,SAAS,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC;IACjC,SAAS,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC;AACrC,CAAC,CAAC,CAAC,iBAAS,IAAI,CAAC,iBAAS,GAAG,EAAE,CAAC,CAAC,CAAC;AAElC,CAAC,UAAU,aAAa;IACpB,aAAa,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IACjC,aAAa,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;IACnC,aAAa,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;AAC/C,CAAC,CAAC,CAAC,qBAAa,IAAI,CAAC,qBAAa,GAAG,EAAE,CAAC,CAAC,CAAC;AAC1C;;;;;;;GAOG;AACH,MAAM,6BAA6B,GAAG,EAAE,CAAC;AACzC;;;GAGG;AACU,QAAA,4BAA4B,GAAG;IACxC,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,YAAY;CACrB,CAAC;AACF;;;;GAIG;AACH,SAAgB,0BAA0B,CAAC,QAAQ,EAAE,KAAK;IACtD,6BAA6B,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;AACpD,CAAC;AACD;;GAEG;AACH,SAAgB,oBAAoB,CAAC,QAAQ;IACzC,IAAI,QAAQ,IAAI,6BAA6B,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtD,OAAO,6BAA6B,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,oCAA4B,CAAC;AACxC,CAAC;AACD;;;GAGG;AACH,SAAgB,qBAAqB,CAAC,aAAa,EAAE,QAAQ;IACzD,IAAI,aAAa;QACb,OAAO,aAAa,CAAC;IACzB,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;AAChD,CAAC;AACD;;;GAGG;AACH,SAAgB,oBAAoB,CAAC,YAAY,EAAE,QAAQ;IACvD,IAAI,YAAY;QACZ,OAAO,YAAY,CAAC;IACxB,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,oCAA4B,CAAC,IAAI,CAAC;AACpF,CAAC;AACD,qCAAqC"}
1
+ {"version":3,"file":"graph/constants.cjs","sourceRoot":"","sources":["graph/constants.js"],"names":[],"mappings":";;;AAoCA,gDAEC;AAuBD,gEAEC;AAID,oDAKC;AAKD,sDAIC;AAKD,oDAIC;AAzFD,CAAC,UAAU,SAAS;IAChB,SAAS,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IAC7B,SAAS,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC;IACjC,SAAS,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC;IACjC,SAAS,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC;AACrC,CAAC,CAAC,CAAC,iBAAS,IAAI,CAAC,iBAAS,GAAG,EAAE,CAAC,CAAC,CAAC;AAElC,CAAC,UAAU,aAAa;IACpB,aAAa,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IACjC,aAAa,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;IACnC,aAAa,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;AAC/C,CAAC,CAAC,CAAC,qBAAa,IAAI,CAAC,qBAAa,GAAG,EAAE,CAAC,CAAC,CAAC;AAC1C;;;;;;GAMG;AACU,QAAA,yBAAyB,GAAG;IACrC,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;IACpB,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;IAC3C,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;IAC3C,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;IACzB,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE;IACvC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;CAC7B,CAAC;AACF;;;;;;;GAOG;AACH,SAAgB,kBAAkB,CAAC,KAAK;IACpC,OAAO,iCAAyB,CAAC,KAAK,CAAC,IAAI,iCAAyB,CAAC,IAAI,CAAC;AAC9E,CAAC;AACD;;;;;;;GAOG;AACH,MAAM,6BAA6B,GAAG,EAAE,CAAC;AACzC;;;GAGG;AACU,QAAA,4BAA4B,GAAG;IACxC,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,YAAY;CACrB,CAAC;AACF;;;;GAIG;AACH,SAAgB,0BAA0B,CAAC,QAAQ,EAAE,KAAK;IACtD,6BAA6B,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;AACpD,CAAC;AACD;;GAEG;AACH,SAAgB,oBAAoB,CAAC,QAAQ;IACzC,IAAI,QAAQ,IAAI,6BAA6B,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtD,OAAO,6BAA6B,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,oCAA4B,CAAC;AACxC,CAAC;AACD;;;GAGG;AACH,SAAgB,qBAAqB,CAAC,aAAa,EAAE,QAAQ;IACzD,IAAI,aAAa;QACb,OAAO,aAAa,CAAC;IACzB,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;AAChD,CAAC;AACD;;;GAGG;AACH,SAAgB,oBAAoB,CAAC,YAAY,EAAE,QAAQ;IACvD,IAAI,YAAY;QACZ,OAAO,YAAY,CAAC;IACxB,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,oCAA4B,CAAC,IAAI,CAAC;AACpF,CAAC;AACD,qCAAqC"}
package/lib/cjs/index.cjs CHANGED
@@ -33,21 +33,21 @@ __exportStar(require("./ui/index.cjs"), exports);
33
33
  * @const VERSION
34
34
  * @memberOf module:ui-decorators
35
35
  */
36
- exports.VERSION = "0.17.10";
36
+ exports.VERSION = "0.18.0";
37
37
  /**
38
38
  * @description Represents the current commit hash of the module build.
39
39
  * @summary Stores the current git commit hash for the package. The build replaces
40
40
  * the placeholder with the actual commit hash at publish time.
41
41
  * @const COMMIT
42
42
  */
43
- exports.COMMIT = "382e32c";
43
+ exports.COMMIT = "23dcb33";
44
44
  /**
45
45
  * @description Represents the full version string of the module.
46
46
  * @summary Stores the semver version and commit hash for the package.
47
47
  * The build replaces the placeholder with the actual `<version>-<commit>` value at publish time.
48
48
  * @const FULL_VERSION
49
49
  */
50
- exports.FULL_VERSION = "0.17.10-382e32c";
50
+ exports.FULL_VERSION = "0.18.0-23dcb33";
51
51
  exports.PACKAGE_NAME = "@decaf-ts/ui-decorators";
52
52
  decoration_1.Metadata.registerLibrary(exports.PACKAGE_NAME, exports.VERSION);
53
53
  //# sourceMappingURL=index.js.map