ngx-dynamic-entity 0.0.1 → 1.0.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 (84) hide show
  1. package/README.md +139 -0
  2. package/esm2022/lib/field-types/array-field.component.mjs +160 -0
  3. package/esm2022/lib/field-types/boolean-field.component.mjs +100 -0
  4. package/esm2022/lib/field-types/checkbox-field.component.mjs +49 -41
  5. package/esm2022/lib/field-types/currency-field.component.mjs +101 -0
  6. package/esm2022/lib/field-types/date-field.component.mjs +47 -39
  7. package/esm2022/lib/field-types/dropdown-field.component.mjs +145 -54
  8. package/esm2022/lib/field-types/email-field.component.mjs +101 -0
  9. package/esm2022/lib/field-types/entity-ref-field.component.mjs +134 -70
  10. package/esm2022/lib/field-types/file-field.component.mjs +156 -0
  11. package/esm2022/lib/field-types/group-field.component.mjs +89 -0
  12. package/esm2022/lib/field-types/image-field.component.mjs +168 -0
  13. package/esm2022/lib/field-types/month-year-field.component.mjs +151 -0
  14. package/esm2022/lib/field-types/multi-select-field.component.mjs +110 -56
  15. package/esm2022/lib/field-types/number-field.component.mjs +84 -41
  16. package/esm2022/lib/field-types/password-field.component.mjs +109 -0
  17. package/esm2022/lib/field-types/radio-field.component.mjs +152 -0
  18. package/esm2022/lib/field-types/text-field.component.mjs +82 -42
  19. package/esm2022/lib/field-types/textarea-field.component.mjs +52 -41
  20. package/esm2022/lib/form/dynamic-field/dynamic-field.component.mjs +44 -26
  21. package/esm2022/lib/form/dynamic-form.component.mjs +501 -67
  22. package/esm2022/lib/form/dynamic-record-form.component.mjs +469 -0
  23. package/esm2022/lib/providers/provide-field-types.mjs +72 -0
  24. package/esm2022/lib/providers/provide-ngx-dynamic-entity.mjs +3 -5
  25. package/esm2022/lib/services/cascade-data.service.mjs +129 -0
  26. package/esm2022/lib/services/config-source.service.mjs +67 -0
  27. package/esm2022/lib/services/entity-ref-cache.mjs +20 -0
  28. package/esm2022/lib/services/entity-ref-registry.service.mjs +3 -3
  29. package/esm2022/lib/services/entity-ref-selection.service.mjs +27 -0
  30. package/esm2022/lib/services/entity-reference.service.mjs +168 -0
  31. package/esm2022/lib/services/field-registry.service.mjs +35 -30
  32. package/esm2022/lib/services/file-upload.service.mjs +89 -0
  33. package/esm2022/lib/services/lookup-registry.service.mjs +246 -0
  34. package/esm2022/lib/services/rbac.service.mjs +5 -11
  35. package/esm2022/lib/services/rules-evaluation.service.mjs +27 -0
  36. package/esm2022/lib/services/validator-registry.service.mjs +24 -7
  37. package/esm2022/lib/tokens/injection-tokens.mjs +88 -7
  38. package/esm2022/public-api.mjs +14 -5
  39. package/fesm2022/ngx-dynamic-entity.mjs +3985 -876
  40. package/fesm2022/ngx-dynamic-entity.mjs.map +1 -1
  41. package/lib/field-types/array-field.component.d.ts +22 -0
  42. package/lib/field-types/boolean-field.component.d.ts +18 -0
  43. package/lib/field-types/checkbox-field.component.d.ts +3 -2
  44. package/lib/field-types/currency-field.component.d.ts +17 -0
  45. package/lib/field-types/date-field.component.d.ts +3 -2
  46. package/lib/field-types/dropdown-field.component.d.ts +24 -4
  47. package/lib/field-types/email-field.component.d.ts +15 -0
  48. package/lib/field-types/entity-ref-field.component.d.ts +24 -11
  49. package/lib/field-types/file-field.component.d.ts +25 -0
  50. package/lib/field-types/group-field.component.d.ts +17 -0
  51. package/lib/field-types/image-field.component.d.ts +30 -0
  52. package/lib/field-types/month-year-field.component.d.ts +28 -0
  53. package/lib/field-types/multi-select-field.component.d.ts +18 -4
  54. package/lib/field-types/number-field.component.d.ts +5 -2
  55. package/lib/field-types/password-field.component.d.ts +17 -0
  56. package/lib/field-types/radio-field.component.d.ts +33 -0
  57. package/lib/field-types/text-field.component.d.ts +5 -3
  58. package/lib/field-types/textarea-field.component.d.ts +4 -2
  59. package/lib/form/dynamic-field/dynamic-field.component.d.ts +20 -7
  60. package/lib/form/dynamic-form.component.d.ts +111 -19
  61. package/lib/form/dynamic-record-form.component.d.ts +169 -0
  62. package/lib/providers/provide-field-types.d.ts +24 -0
  63. package/lib/providers/provide-ngx-dynamic-entity.d.ts +12 -7
  64. package/lib/services/cascade-data.service.d.ts +45 -0
  65. package/lib/services/config-source.service.d.ts +14 -0
  66. package/lib/services/entity-ref-cache.d.ts +27 -0
  67. package/lib/services/entity-ref-registry.service.d.ts +4 -3
  68. package/lib/services/entity-ref-selection.service.d.ts +24 -0
  69. package/lib/services/entity-reference.service.d.ts +49 -0
  70. package/lib/services/field-registry.service.d.ts +17 -7
  71. package/lib/services/file-upload.service.d.ts +27 -0
  72. package/lib/services/lookup-registry.service.d.ts +94 -0
  73. package/lib/services/rbac.service.d.ts +4 -9
  74. package/lib/services/rules-evaluation.service.d.ts +17 -0
  75. package/lib/services/validator-registry.service.d.ts +5 -4
  76. package/lib/tokens/injection-tokens.d.ts +90 -7
  77. package/package.json +14 -3
  78. package/public-api.d.ts +11 -4
  79. package/esm2022/lib/services/config.service.mjs +0 -58
  80. package/esm2022/lib/services/version.service.mjs +0 -40
  81. package/esm2022/lib/table/dynamic-table.component.mjs +0 -160
  82. package/lib/services/config.service.d.ts +0 -25
  83. package/lib/services/version.service.d.ts +0 -26
  84. package/lib/table/dynamic-table.component.d.ts +0 -56
@@ -2,18 +2,24 @@
2
2
  export * from './lib/tokens/injection-tokens';
3
3
  // Providers
4
4
  export * from './lib/providers/provide-ngx-dynamic-entity';
5
+ export * from './lib/providers/provide-field-types';
5
6
  // Services
6
- export * from './lib/services/config.service';
7
7
  export * from './lib/services/field-registry.service';
8
8
  export * from './lib/services/hook-registry.service';
9
9
  export * from './lib/services/validator-registry.service';
10
10
  export * from './lib/services/entity-ref-registry.service';
11
- export * from './lib/services/version.service';
11
+ export * from './lib/services/entity-ref-selection.service';
12
+ export * from './lib/services/cascade-data.service';
13
+ export * from './lib/services/entity-reference.service';
14
+ export * from './lib/services/entity-ref-cache';
15
+ export * from './lib/services/lookup-registry.service';
12
16
  export * from './lib/services/rbac.service';
13
- // Components
17
+ export * from './lib/services/rules-evaluation.service';
18
+ export * from './lib/services/config-source.service';
19
+ // Components — the library ships form UI only; rendering a data table is the consumer's choice.
14
20
  export * from './lib/form/dynamic-form.component';
21
+ export * from './lib/form/dynamic-record-form.component';
15
22
  export * from './lib/form/dynamic-field/dynamic-field.component';
16
- export * from './lib/table/dynamic-table.component';
17
23
  // Field type components (individually importable — reusability rule)
18
24
  export * from './lib/field-types/text-field.component';
19
25
  export * from './lib/field-types/textarea-field.component';
@@ -23,4 +29,7 @@ export * from './lib/field-types/date-field.component';
23
29
  export * from './lib/field-types/dropdown-field.component';
24
30
  export * from './lib/field-types/multi-select-field.component';
25
31
  export * from './lib/field-types/entity-ref-field.component';
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFNBQVM7QUFDVCxjQUFjLCtCQUErQixDQUFDO0FBRTlDLFlBQVk7QUFDWixjQUFjLDRDQUE0QyxDQUFDO0FBRTNELFdBQVc7QUFDWCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLDZCQUE2QixDQUFDO0FBRTVDLGFBQWE7QUFDYixjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxxQ0FBcUMsQ0FBQztBQUVwRCxxRUFBcUU7QUFDckUsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDhDQUE4QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gVG9rZW5zXG5leHBvcnQgKiBmcm9tICcuL2xpYi90b2tlbnMvaW5qZWN0aW9uLXRva2Vucyc7XG5cbi8vIFByb3ZpZGVyc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcHJvdmlkZXJzL3Byb3ZpZGUtbmd4LWR5bmFtaWMtZW50aXR5JztcblxuLy8gU2VydmljZXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2NvbmZpZy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2ZpZWxkLXJlZ2lzdHJ5LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvaG9vay1yZWdpc3RyeS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3ZhbGlkYXRvci1yZWdpc3RyeS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2VudGl0eS1yZWYtcmVnaXN0cnkuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy92ZXJzaW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvcmJhYy5zZXJ2aWNlJztcblxuLy8gQ29tcG9uZW50c1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZm9ybS9keW5hbWljLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Zvcm0vZHluYW1pYy1maWVsZC9keW5hbWljLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90YWJsZS9keW5hbWljLXRhYmxlLmNvbXBvbmVudCc7XG5cbi8vIEZpZWxkIHR5cGUgY29tcG9uZW50cyAoaW5kaXZpZHVhbGx5IGltcG9ydGFibGUg4oCUIHJldXNhYmlsaXR5IHJ1bGUpXG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWVsZC10eXBlcy90ZXh0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWVsZC10eXBlcy90ZXh0YXJlYS1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZmllbGQtdHlwZXMvbnVtYmVyLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWVsZC10eXBlcy9jaGVja2JveC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZmllbGQtdHlwZXMvZGF0ZS1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZmllbGQtdHlwZXMvZHJvcGRvd24tZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZpZWxkLXR5cGVzL211bHRpLXNlbGVjdC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZmllbGQtdHlwZXMvZW50aXR5LXJlZi1maWVsZC5jb21wb25lbnQnO1xuXG4vLyBSZS1leHBvcnQgY29yZSB0eXBlcyBzbyBjb25zdW1lcnMgbmVlZCBvbmx5IG9uZSBpbXBvcnRcbmV4cG9ydCB0eXBlIHtcbiAgRW50aXR5Q29uZmlnLFxuICBGaWVsZENvbmZpZyxcbiAgVGFiQ29uZmlnLFxuICBEcm9wZG93bk9wdGlvbixcbiAgRmllbGREZXBlbmRlbmN5LFxuICBFbnRpdHlIb29rcyxcbiAgVmVyc2lvbmVkUmVjb3JkLFxuICBFbnRpdHlQZXJtaXNzaW9ucyxcbiAgUmJhY0NvbnRleHQsXG4gIE1pZ3JhdGlvblN0cmF0ZWd5LFxuICBRdWVyeU9wdGlvbnMsXG4gIFBhZ2luYXRlZFJlc3VsdCxcbn0gZnJvbSAnQGR5bmFtaWMtZW50aXR5L2NvcmUnO1xuIl19
32
+ // Value helpers — a dropdown value is now a language-keyed object, so a consumer rendering
33
+ // record values needs these. Re-exported so they don't have to depend on core directly.
34
+ export { resolveLabel, resolveOptionLabel, resolveOptionValue, formatDisplayValue, valuesMatch, normalizeOption, normalizeConfig, } from '@dynamic-entity/core';
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFNBQVM7QUFDVCxjQUFjLCtCQUErQixDQUFDO0FBRTlDLFlBQVk7QUFDWixjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMscUNBQXFDLENBQUM7QUFFcEQsV0FBVztBQUNYLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHNDQUFzQyxDQUFDO0FBRXJELGdHQUFnRztBQUNoRyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxrREFBa0QsQ0FBQztBQUVqRSxxRUFBcUU7QUFDckUsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDhDQUE4QyxDQUFDO0FBRTdELDJGQUEyRjtBQUMzRix3RkFBd0Y7QUFDeEYsT0FBTyxFQUNMLFlBQVksRUFDWixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLGtCQUFrQixFQUNsQixXQUFXLEVBQ1gsZUFBZSxFQUNmLGVBQWUsR0FDaEIsTUFBTSxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFRva2Vuc1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi90b2tlbnMvaW5qZWN0aW9uLXRva2Vucyc7XHJcblxyXG4vLyBQcm92aWRlcnNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcHJvdmlkZXJzL3Byb3ZpZGUtbmd4LWR5bmFtaWMtZW50aXR5JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcHJvdmlkZXJzL3Byb3ZpZGUtZmllbGQtdHlwZXMnO1xyXG5cclxuLy8gU2VydmljZXNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZmllbGQtcmVnaXN0cnkuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2hvb2stcmVnaXN0cnkuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3ZhbGlkYXRvci1yZWdpc3RyeS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZW50aXR5LXJlZi1yZWdpc3RyeS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZW50aXR5LXJlZi1zZWxlY3Rpb24uc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2Nhc2NhZGUtZGF0YS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZW50aXR5LXJlZmVyZW5jZS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZW50aXR5LXJlZi1jYWNoZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2xvb2t1cC1yZWdpc3RyeS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvcmJhYy5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvcnVsZXMtZXZhbHVhdGlvbi5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvY29uZmlnLXNvdXJjZS5zZXJ2aWNlJztcclxuXHJcbi8vIENvbXBvbmVudHMg4oCUIHRoZSBsaWJyYXJ5IHNoaXBzIGZvcm0gVUkgb25seTsgcmVuZGVyaW5nIGEgZGF0YSB0YWJsZSBpcyB0aGUgY29uc3VtZXIncyBjaG9pY2UuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Zvcm0vZHluYW1pYy1mb3JtLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Zvcm0vZHluYW1pYy1yZWNvcmQtZm9ybS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb3JtL2R5bmFtaWMtZmllbGQvZHluYW1pYy1maWVsZC5jb21wb25lbnQnO1xyXG5cclxuLy8gRmllbGQgdHlwZSBjb21wb25lbnRzIChpbmRpdmlkdWFsbHkgaW1wb3J0YWJsZSDigJQgcmV1c2FiaWxpdHkgcnVsZSlcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZmllbGQtdHlwZXMvdGV4dC1maWVsZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWVsZC10eXBlcy90ZXh0YXJlYS1maWVsZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWVsZC10eXBlcy9udW1iZXItZmllbGQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZmllbGQtdHlwZXMvY2hlY2tib3gtZmllbGQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZmllbGQtdHlwZXMvZGF0ZS1maWVsZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWVsZC10eXBlcy9kcm9wZG93bi1maWVsZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWVsZC10eXBlcy9tdWx0aS1zZWxlY3QtZmllbGQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZmllbGQtdHlwZXMvZW50aXR5LXJlZi1maWVsZC5jb21wb25lbnQnO1xyXG5cclxuLy8gVmFsdWUgaGVscGVycyDigJQgYSBkcm9wZG93biB2YWx1ZSBpcyBub3cgYSBsYW5ndWFnZS1rZXllZCBvYmplY3QsIHNvIGEgY29uc3VtZXIgcmVuZGVyaW5nXHJcbi8vIHJlY29yZCB2YWx1ZXMgbmVlZHMgdGhlc2UuIFJlLWV4cG9ydGVkIHNvIHRoZXkgZG9uJ3QgaGF2ZSB0byBkZXBlbmQgb24gY29yZSBkaXJlY3RseS5cclxuZXhwb3J0IHtcclxuICByZXNvbHZlTGFiZWwsXHJcbiAgcmVzb2x2ZU9wdGlvbkxhYmVsLFxyXG4gIHJlc29sdmVPcHRpb25WYWx1ZSxcclxuICBmb3JtYXREaXNwbGF5VmFsdWUsXHJcbiAgdmFsdWVzTWF0Y2gsXHJcbiAgbm9ybWFsaXplT3B0aW9uLFxyXG4gIG5vcm1hbGl6ZUNvbmZpZyxcclxufSBmcm9tICdAZHluYW1pYy1lbnRpdHkvY29yZSc7XHJcblxyXG4vLyBSZS1leHBvcnQgY29yZSB0eXBlcyBzbyBjb25zdW1lcnMgbmVlZCBvbmx5IG9uZSBpbXBvcnRcclxuZXhwb3J0IHR5cGUge1xyXG4gIEVudGl0eUZvcm1Db25maWcsXHJcbiAgTmVzdGVkVGFiQ29uZmlnLFxyXG4gIE5lc3RlZEZpZWxkQ29uZmlnLFxyXG4gIEZpZWxkVGFibGVDb25maWcsXHJcbiAgUmljaEZpZWxkVHlwZSxcclxuICBMb2NhbGl6ZWRUZXh0LFxyXG4gIERyb3Bkb3duT3B0aW9uLFxyXG4gIFZlcnNpb25lZFJlY29yZCxcclxuICBFbnRpdHlQZXJtaXNzaW9ucyxcclxuICBSYmFjQ29udGV4dCxcclxuICBGaWVsZFZhbGlkYXRvcnMsXHJcbiAgRW50aXR5UmVmZXJlbmNlQ29uZmlnLFxyXG4gIEVudGl0eVJlZmVyZW5jZUxvYWRlcixcclxuICBSZWZlcmVuY2VPcHRpb24sXHJcbiAgUmVmZXJlbmNlTG9hZGVyQ29udGV4dCxcclxuICBBdXRvUGF0Y2hDb25maWcsXHJcbiAgUGF0Y2hPblRydWVNYXBwaW5nLFxyXG4gIEZpbGVSZWYsXHJcbiAgRm9ybVJ1bGUsXHJcbiAgUnVsZUNvbmRpdGlvbixcclxuICBSdWxlQWN0aW9uLFxyXG4gIFJ1bGVFdmFsdWF0aW9uUmVzdWx0LFxyXG4gIENvbW1vbk1vZHVsZUVudHJ5LFxyXG59IGZyb20gJ0BkeW5hbWljLWVudGl0eS9jb3JlJztcclxuIl19