@j2inn/resolvable-ui-elements 1.1.3-beta.0 → 2.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 (99) hide show
  1. package/dist/index.d.ts +12 -12
  2. package/dist/index.js +39 -39
  3. package/dist/resolvableElements/Resolver.d.ts +47 -47
  4. package/dist/resolvableElements/Resolver.js +57 -57
  5. package/dist/resolvableElements/elements/ResolvableElement.d.ts +14 -14
  6. package/dist/resolvableElements/elements/ResolvableElement.js +29 -29
  7. package/dist/resolvableElements/elements/ResolvableValueElement.d.ts +16 -16
  8. package/dist/resolvableElements/elements/ResolvableValueElement.js +38 -38
  9. package/dist/resolvableElements/elements/UiElement.d.ts +31 -31
  10. package/dist/resolvableElements/elements/UiElement.js +56 -56
  11. package/dist/resolvableElements/elements/expr/ResolvableExprElement.d.ts +26 -26
  12. package/dist/resolvableElements/elements/expr/ResolvableExprElement.js +105 -105
  13. package/dist/resolvableElements/elements/expr/ResolvableExprElementMeta.d.ts +10 -10
  14. package/dist/resolvableElements/elements/expr/ResolvableExprElementMeta.js +14 -14
  15. package/dist/resolvableElements/elements/function/FunctionElement.d.ts +12 -12
  16. package/dist/resolvableElements/elements/function/FunctionElement.js +41 -41
  17. package/dist/resolvableElements/elements/function/FunctionElementMeta.d.ts +9 -9
  18. package/dist/resolvableElements/elements/function/FunctionElementMeta.js +14 -14
  19. package/dist/resolvableElements/elements/list/ListElementMeta.d.ts +12 -12
  20. package/dist/resolvableElements/elements/list/ListElementMeta.js +14 -14
  21. package/dist/resolvableElements/elements/list/ResolvableListElement.d.ts +16 -16
  22. package/dist/resolvableElements/elements/list/ResolvableListElement.js +102 -102
  23. package/dist/resolvableElements/elements/makeElement.d.ts +7 -7
  24. package/dist/resolvableElements/elements/makeElement.js +40 -40
  25. package/dist/resolvableElements/elements/section/ResolvableSectionElement.d.ts +24 -24
  26. package/dist/resolvableElements/elements/section/ResolvableSectionElement.js +122 -122
  27. package/dist/resolvableElements/elements/section/SectionElementMeta.d.ts +16 -16
  28. package/dist/resolvableElements/elements/section/SectionElementMeta.js +11 -11
  29. package/dist/resolvableElements/elements/section/resolveSection.d.ts +12 -12
  30. package/dist/resolvableElements/elements/section/resolveSection.js +41 -41
  31. package/dist/resolvableElements/elements/tag/ResolvableTagElement.d.ts +16 -16
  32. package/dist/resolvableElements/elements/tag/ResolvableTagElement.js +105 -105
  33. package/dist/resolvableElements/elements/tag/TagElementMeta.d.ts +12 -12
  34. package/dist/resolvableElements/elements/tag/TagElementMeta.js +14 -14
  35. package/dist/resolvableElements/interfacesGeneration/generateInterfaces.d.ts +17 -17
  36. package/dist/resolvableElements/interfacesGeneration/generateInterfaces.js +135 -134
  37. package/dist/resolvableElements/interfacesGeneration/generateInterfaces.js.map +1 -1
  38. package/dist/resolvableElements/interfacesGeneration/generateTypescriptInterfacesFile.d.ts +4 -4
  39. package/dist/resolvableElements/interfacesGeneration/generateTypescriptInterfacesFile.js +41 -41
  40. package/dist/resolvableElements/react/SectionChecker.d.ts +24 -24
  41. package/dist/resolvableElements/react/SectionChecker.jsx +27 -27
  42. package/dist/resolvableElements/react/useResolveSection.d.ts +21 -21
  43. package/dist/resolvableElements/react/useResolveSection.js +65 -65
  44. package/dist/resolvableElements/react/useResolverContext.d.ts +9 -9
  45. package/dist/resolvableElements/react/useResolverContext.jsx +64 -64
  46. package/dist/resolvableElements/resolveTemplatedExpression.d.ts +22 -22
  47. package/dist/resolvableElements/resolveTemplatedExpression.js +43 -43
  48. package/dist/useCurrentUser.d.ts +10 -10
  49. package/dist/useCurrentUser.jsx +48 -48
  50. package/dist_es/index.d.ts +12 -12
  51. package/dist_es/index.js +20 -20
  52. package/dist_es/resolvableElements/Resolver.d.ts +47 -47
  53. package/dist_es/resolvableElements/Resolver.js +53 -53
  54. package/dist_es/resolvableElements/elements/ResolvableElement.d.ts +14 -14
  55. package/dist_es/resolvableElements/elements/ResolvableElement.js +25 -25
  56. package/dist_es/resolvableElements/elements/ResolvableValueElement.d.ts +16 -16
  57. package/dist_es/resolvableElements/elements/ResolvableValueElement.js +32 -32
  58. package/dist_es/resolvableElements/elements/UiElement.d.ts +31 -31
  59. package/dist_es/resolvableElements/elements/UiElement.js +52 -52
  60. package/dist_es/resolvableElements/elements/expr/ResolvableExprElement.d.ts +26 -26
  61. package/dist_es/resolvableElements/elements/expr/ResolvableExprElement.js +101 -101
  62. package/dist_es/resolvableElements/elements/expr/ResolvableExprElementMeta.d.ts +10 -10
  63. package/dist_es/resolvableElements/elements/expr/ResolvableExprElementMeta.js +9 -9
  64. package/dist_es/resolvableElements/elements/function/FunctionElement.d.ts +12 -12
  65. package/dist_es/resolvableElements/elements/function/FunctionElement.js +36 -36
  66. package/dist_es/resolvableElements/elements/function/FunctionElementMeta.d.ts +9 -9
  67. package/dist_es/resolvableElements/elements/function/FunctionElementMeta.js +9 -9
  68. package/dist_es/resolvableElements/elements/list/ListElementMeta.d.ts +12 -12
  69. package/dist_es/resolvableElements/elements/list/ListElementMeta.js +9 -9
  70. package/dist_es/resolvableElements/elements/list/ResolvableListElement.d.ts +16 -16
  71. package/dist_es/resolvableElements/elements/list/ResolvableListElement.js +98 -98
  72. package/dist_es/resolvableElements/elements/makeElement.d.ts +7 -7
  73. package/dist_es/resolvableElements/elements/makeElement.js +36 -36
  74. package/dist_es/resolvableElements/elements/section/ResolvableSectionElement.d.ts +24 -24
  75. package/dist_es/resolvableElements/elements/section/ResolvableSectionElement.js +117 -117
  76. package/dist_es/resolvableElements/elements/section/SectionElementMeta.d.ts +16 -16
  77. package/dist_es/resolvableElements/elements/section/SectionElementMeta.js +6 -6
  78. package/dist_es/resolvableElements/elements/section/resolveSection.d.ts +12 -12
  79. package/dist_es/resolvableElements/elements/section/resolveSection.js +36 -36
  80. package/dist_es/resolvableElements/elements/tag/ResolvableTagElement.d.ts +16 -16
  81. package/dist_es/resolvableElements/elements/tag/ResolvableTagElement.js +101 -101
  82. package/dist_es/resolvableElements/elements/tag/TagElementMeta.d.ts +12 -12
  83. package/dist_es/resolvableElements/elements/tag/TagElementMeta.js +9 -9
  84. package/dist_es/resolvableElements/interfacesGeneration/generateInterfaces.d.ts +17 -17
  85. package/dist_es/resolvableElements/interfacesGeneration/generateInterfaces.js +129 -128
  86. package/dist_es/resolvableElements/interfacesGeneration/generateInterfaces.js.map +1 -1
  87. package/dist_es/resolvableElements/interfacesGeneration/generateTypescriptInterfacesFile.d.ts +4 -4
  88. package/dist_es/resolvableElements/interfacesGeneration/generateTypescriptInterfacesFile.js +15 -15
  89. package/dist_es/resolvableElements/react/SectionChecker.d.ts +24 -24
  90. package/dist_es/resolvableElements/react/SectionChecker.jsx +20 -20
  91. package/dist_es/resolvableElements/react/useResolveSection.d.ts +21 -21
  92. package/dist_es/resolvableElements/react/useResolveSection.js +61 -61
  93. package/dist_es/resolvableElements/react/useResolverContext.d.ts +9 -9
  94. package/dist_es/resolvableElements/react/useResolverContext.jsx +36 -36
  95. package/dist_es/resolvableElements/resolveTemplatedExpression.d.ts +22 -22
  96. package/dist_es/resolvableElements/resolveTemplatedExpression.js +38 -38
  97. package/dist_es/useCurrentUser.d.ts +10 -10
  98. package/dist_es/useCurrentUser.jsx +20 -20
  99. package/package.json +5 -5
package/dist/index.d.ts CHANGED
@@ -1,12 +1,12 @@
1
- export * from './resolvableElements/elements/section/resolveSection';
2
- export * from './resolvableElements/Resolver';
3
- export { type ResolvableValueElementMeta } from './resolvableElements/elements/ResolvableValueElement';
4
- export { type UiElementData } from './resolvableElements/elements/UiElement';
5
- export { type ResolvableExprElementMeta } from './resolvableElements/elements/expr/ResolvableExprElementMeta';
6
- export { type FunctionResult } from './resolvableElements/elements/function/FunctionElement';
7
- export { isSectionData, type ParametersOfSection, type ResolvedSection, } from './resolvableElements/elements/section/SectionElementMeta';
8
- export { resolveTemplateExpression } from './resolvableElements/resolveTemplatedExpression';
9
- export * from './resolvableElements/react/SectionChecker';
10
- export * from './resolvableElements/react/useResolveSection';
11
- export * from './resolvableElements/react/useResolverContext';
12
- export * from './useCurrentUser';
1
+ export * from './resolvableElements/elements/section/resolveSection';
2
+ export * from './resolvableElements/Resolver';
3
+ export { type ResolvableValueElementMeta } from './resolvableElements/elements/ResolvableValueElement';
4
+ export { type UiElementData } from './resolvableElements/elements/UiElement';
5
+ export { type ResolvableExprElementMeta } from './resolvableElements/elements/expr/ResolvableExprElementMeta';
6
+ export { type FunctionResult } from './resolvableElements/elements/function/FunctionElement';
7
+ export { isSectionData, type ParametersOfSection, type ResolvedSection, } from './resolvableElements/elements/section/SectionElementMeta';
8
+ export { resolveTemplateExpression } from './resolvableElements/resolveTemplatedExpression';
9
+ export * from './resolvableElements/react/SectionChecker';
10
+ export * from './resolvableElements/react/useResolveSection';
11
+ export * from './resolvableElements/react/useResolverContext';
12
+ export * from './useCurrentUser';
package/dist/index.js CHANGED
@@ -1,40 +1,40 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
- */
5
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- var desc = Object.getOwnPropertyDescriptor(m, k);
8
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
- desc = { enumerable: true, get: function() { return m[k]; } };
10
- }
11
- Object.defineProperty(o, k2, desc);
12
- }) : (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- o[k2] = m[k];
15
- }));
16
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
- };
19
- Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.resolveTemplateExpression = exports.isSectionData = void 0;
21
- //////////////////////////////////////////////////////////////////////////
22
- // Elements
23
- //////////////////////////////////////////////////////////////////////////
24
- __exportStar(require("./resolvableElements/elements/section/resolveSection"), exports);
25
- __exportStar(require("./resolvableElements/Resolver"), exports);
26
- var SectionElementMeta_1 = require("./resolvableElements/elements/section/SectionElementMeta");
27
- Object.defineProperty(exports, "isSectionData", { enumerable: true, get: function () { return SectionElementMeta_1.isSectionData; } });
28
- var resolveTemplatedExpression_1 = require("./resolvableElements/resolveTemplatedExpression");
29
- Object.defineProperty(exports, "resolveTemplateExpression", { enumerable: true, get: function () { return resolveTemplatedExpression_1.resolveTemplateExpression; } });
30
- //////////////////////////////////////////////////////////////////////////
31
- // React
32
- //////////////////////////////////////////////////////////////////////////
33
- __exportStar(require("./resolvableElements/react/SectionChecker"), exports);
34
- __exportStar(require("./resolvableElements/react/useResolveSection"), exports);
35
- __exportStar(require("./resolvableElements/react/useResolverContext"), exports);
36
- //////////////////////////////////////////////////////////////////////////
37
- // Other
38
- //////////////////////////////////////////////////////////////////////////
39
- __exportStar(require("./useCurrentUser"), exports);
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.resolveTemplateExpression = exports.isSectionData = void 0;
21
+ //////////////////////////////////////////////////////////////////////////
22
+ // Elements
23
+ //////////////////////////////////////////////////////////////////////////
24
+ __exportStar(require("./resolvableElements/elements/section/resolveSection"), exports);
25
+ __exportStar(require("./resolvableElements/Resolver"), exports);
26
+ var SectionElementMeta_1 = require("./resolvableElements/elements/section/SectionElementMeta");
27
+ Object.defineProperty(exports, "isSectionData", { enumerable: true, get: function () { return SectionElementMeta_1.isSectionData; } });
28
+ var resolveTemplatedExpression_1 = require("./resolvableElements/resolveTemplatedExpression");
29
+ Object.defineProperty(exports, "resolveTemplateExpression", { enumerable: true, get: function () { return resolveTemplatedExpression_1.resolveTemplateExpression; } });
30
+ //////////////////////////////////////////////////////////////////////////
31
+ // React
32
+ //////////////////////////////////////////////////////////////////////////
33
+ __exportStar(require("./resolvableElements/react/SectionChecker"), exports);
34
+ __exportStar(require("./resolvableElements/react/useResolveSection"), exports);
35
+ __exportStar(require("./resolvableElements/react/useResolverContext"), exports);
36
+ //////////////////////////////////////////////////////////////////////////
37
+ // Other
38
+ //////////////////////////////////////////////////////////////////////////
39
+ __exportStar(require("./useCurrentUser"), exports);
40
40
  //# sourceMappingURL=index.js.map
@@ -1,47 +1,47 @@
1
- import { HDict, HGrid } from 'haystack-core';
2
- import { Client, Watch } from 'haystack-nclient';
3
- export declare const DEFAULT_USER_ROLE_TAG_NAME = "uiElementPermissions";
4
- export interface ResolverData {
5
- /**
6
- * Haystack client for network communication
7
- */
8
- client: Client;
9
- /**
10
- * Current user dict, used to check permissions
11
- */
12
- user?: HDict;
13
- /**
14
- * Name of the tag that is expected on the user dict to define its role
15
- */
16
- userRoleTagName?: string;
17
- /**
18
- * Function name to be used for expressions eval,
19
- * used to enable custom backend permission check using elements path
20
- * @example
21
- * customEval(\`page/section/elementName\`, parametersDict)
22
- */
23
- evalFuncName?: string;
24
- }
25
- /**
26
- * Resolver is a mediator for the network interactions during the resolution process,
27
- * in order to enable future optimizations and extra features
28
- */
29
- export declare class Resolver implements ResolverData {
30
- constructor({ client, user, userRoleTagName, evalFuncName, }: ResolverData);
31
- client: Client;
32
- user?: HDict;
33
- userRoleTagName?: string;
34
- evalFuncName?: string;
35
- read(filter: string): Promise<HGrid<HDict>>;
36
- makeWatch(dis: string, grid: HGrid<HDict>): Promise<Watch>;
37
- /**
38
- * Eval an expression using either the provided path or otherwse directly the expression
39
- * Providing the path allows for whitelisting of certain functions to specific user roles
40
- */
41
- evalExprElement(expr: string, parameters: HDict, path?: string): Promise<HGrid<HDict>>;
42
- private _buildExpression;
43
- /**
44
- * Evaluate an expression
45
- */
46
- private _eval;
47
- }
1
+ import { HDict, HGrid } from 'haystack-core';
2
+ import { Client, Watch } from 'haystack-nclient';
3
+ export declare const DEFAULT_USER_ROLE_TAG_NAME = "uiElementPermissions";
4
+ export interface ResolverData {
5
+ /**
6
+ * Haystack client for network communication
7
+ */
8
+ client: Client;
9
+ /**
10
+ * Current user dict, used to check permissions
11
+ */
12
+ user?: HDict;
13
+ /**
14
+ * Name of the tag that is expected on the user dict to define its role
15
+ */
16
+ userRoleTagName?: string;
17
+ /**
18
+ * Function name to be used for expressions eval,
19
+ * used to enable custom backend permission check using elements path
20
+ * @example
21
+ * customEval(\`page/section/elementName\`, parametersDict)
22
+ */
23
+ evalFuncName?: string;
24
+ }
25
+ /**
26
+ * Resolver is a mediator for the network interactions during the resolution process,
27
+ * in order to enable future optimizations and extra features
28
+ */
29
+ export declare class Resolver implements ResolverData {
30
+ constructor({ client, user, userRoleTagName, evalFuncName, }: ResolverData);
31
+ client: Client;
32
+ user?: HDict;
33
+ userRoleTagName?: string;
34
+ evalFuncName?: string;
35
+ read(filter: string): Promise<HGrid<HDict>>;
36
+ makeWatch(dis: string, grid: HGrid<HDict>): Promise<Watch>;
37
+ /**
38
+ * Eval an expression using either the provided path or otherwse directly the expression
39
+ * Providing the path allows for whitelisting of certain functions to specific user roles
40
+ */
41
+ evalExprElement(expr: string, parameters: HDict, path?: string): Promise<HGrid<HDict>>;
42
+ private _buildExpression;
43
+ /**
44
+ * Evaluate an expression
45
+ */
46
+ private _eval;
47
+ }
@@ -1,58 +1,58 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Resolver = exports.DEFAULT_USER_ROLE_TAG_NAME = void 0;
7
- const haystack_core_1 = require("haystack-core");
8
- const resolveTemplatedExpression_1 = require("./resolveTemplatedExpression");
9
- exports.DEFAULT_USER_ROLE_TAG_NAME = 'uiElementPermissions';
10
- /**
11
- * Resolver is a mediator for the network interactions during the resolution process,
12
- * in order to enable future optimizations and extra features
13
- */
14
- class Resolver {
15
- constructor({ client, user, userRoleTagName = exports.DEFAULT_USER_ROLE_TAG_NAME, evalFuncName, }) {
16
- this.client = client;
17
- this.user = user;
18
- this.userRoleTagName = userRoleTagName;
19
- this.evalFuncName = evalFuncName;
20
- }
21
- client;
22
- user;
23
- userRoleTagName;
24
- evalFuncName;
25
- read(filter) {
26
- return this.client.ext.read(filter);
27
- }
28
- makeWatch(dis, grid) {
29
- return this.client.ops.watch.make(dis, grid);
30
- }
31
- /**
32
- * Eval an expression using either the provided path or otherwse directly the expression
33
- * Providing the path allows for whitelisting of certain functions to specific user roles
34
- */
35
- evalExprElement(expr, parameters, path) {
36
- return this._eval(this._buildExpression(expr, parameters, path));
37
- }
38
- _buildExpression(expr, parameters, path) {
39
- if (!!path && this.evalFuncName) {
40
- return `${this.evalFuncName}(${haystack_core_1.HUri.make(path).toAxon()}, ${parameters.toAxon()})`;
41
- }
42
- else {
43
- return (0, resolveTemplatedExpression_1.resolveTemplateExpression)(expr, parameters);
44
- }
45
- }
46
- /**
47
- * Evaluate an expression
48
- */
49
- async _eval(expr) {
50
- const grid = await this.client.ext.eval(expr);
51
- if (grid.isError()) {
52
- console.error('Empty grid result for expression: \n', expr, grid.getError());
53
- }
54
- return grid;
55
- }
56
- }
57
- exports.Resolver = Resolver;
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Resolver = exports.DEFAULT_USER_ROLE_TAG_NAME = void 0;
7
+ const haystack_core_1 = require("haystack-core");
8
+ const resolveTemplatedExpression_1 = require("./resolveTemplatedExpression");
9
+ exports.DEFAULT_USER_ROLE_TAG_NAME = 'uiElementPermissions';
10
+ /**
11
+ * Resolver is a mediator for the network interactions during the resolution process,
12
+ * in order to enable future optimizations and extra features
13
+ */
14
+ class Resolver {
15
+ constructor({ client, user, userRoleTagName = exports.DEFAULT_USER_ROLE_TAG_NAME, evalFuncName, }) {
16
+ this.client = client;
17
+ this.user = user;
18
+ this.userRoleTagName = userRoleTagName;
19
+ this.evalFuncName = evalFuncName;
20
+ }
21
+ client;
22
+ user;
23
+ userRoleTagName;
24
+ evalFuncName;
25
+ read(filter) {
26
+ return this.client.ext.read(filter);
27
+ }
28
+ makeWatch(dis, grid) {
29
+ return this.client.ops.watch.make(dis, grid);
30
+ }
31
+ /**
32
+ * Eval an expression using either the provided path or otherwse directly the expression
33
+ * Providing the path allows for whitelisting of certain functions to specific user roles
34
+ */
35
+ evalExprElement(expr, parameters, path) {
36
+ return this._eval(this._buildExpression(expr, parameters, path));
37
+ }
38
+ _buildExpression(expr, parameters, path) {
39
+ if (!!path && this.evalFuncName) {
40
+ return `${this.evalFuncName}(${haystack_core_1.HUri.make(path).toAxon()}, ${parameters.toAxon()})`;
41
+ }
42
+ else {
43
+ return (0, resolveTemplatedExpression_1.resolveTemplateExpression)(expr, parameters);
44
+ }
45
+ }
46
+ /**
47
+ * Evaluate an expression
48
+ */
49
+ async _eval(expr) {
50
+ const grid = await this.client.ext.eval(expr);
51
+ if (grid.isError()) {
52
+ console.error('Empty grid result for expression: \n', expr, grid.getError());
53
+ }
54
+ return grid;
55
+ }
56
+ }
57
+ exports.Resolver = Resolver;
58
58
  //# sourceMappingURL=Resolver.js.map
@@ -1,14 +1,14 @@
1
- import { HDict } from 'haystack-core';
2
- import { UiElement, UiElementConstructorData, UiElementData } from './UiElement';
3
- /**
4
- * base class for elements that can be resolved
5
- */
6
- export declare abstract class ResolvableElement<T extends UiElementData> extends UiElement<T> {
7
- #private;
8
- constructor(data: UiElementConstructorData<T>);
9
- initialize: (parameters: HDict) => Promise<void>;
10
- protected abstract doInitialize: (parameters: HDict) => Promise<void>;
11
- close: () => Promise<void>;
12
- protected abstract doClose: () => Promise<void>;
13
- abstract getParameterList: () => string[];
14
- }
1
+ import { HDict } from 'haystack-core';
2
+ import { UiElement, UiElementConstructorData, UiElementData } from './UiElement';
3
+ /**
4
+ * base class for elements that can be resolved
5
+ */
6
+ export declare abstract class ResolvableElement<T extends UiElementData> extends UiElement<T> {
7
+ #private;
8
+ constructor(data: UiElementConstructorData<T>);
9
+ initialize: (parameters: HDict) => Promise<void>;
10
+ protected abstract doInitialize: (parameters: HDict) => Promise<void>;
11
+ close: () => Promise<void>;
12
+ protected abstract doClose: () => Promise<void>;
13
+ abstract getParameterList: () => string[];
14
+ }
@@ -1,30 +1,30 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ResolvableElement = void 0;
7
- const UiElement_1 = require("./UiElement");
8
- /**
9
- * base class for elements that can be resolved
10
- */
11
- class ResolvableElement extends UiElement_1.UiElement {
12
- constructor(data) {
13
- super(data);
14
- }
15
- #initialized = false;
16
- initialize = async (parameters) => {
17
- if (this.isAccessAllowed(this._meta) && !this.#initialized) {
18
- this.#initialized = true;
19
- return await this.doInitialize(parameters);
20
- }
21
- };
22
- close = async () => {
23
- if (this.#initialized) {
24
- await this.doClose();
25
- this.#initialized = false;
26
- }
27
- };
28
- }
29
- exports.ResolvableElement = ResolvableElement;
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ResolvableElement = void 0;
7
+ const UiElement_1 = require("./UiElement");
8
+ /**
9
+ * base class for elements that can be resolved
10
+ */
11
+ class ResolvableElement extends UiElement_1.UiElement {
12
+ constructor(data) {
13
+ super(data);
14
+ }
15
+ #initialized = false;
16
+ initialize = async (parameters) => {
17
+ if (this.isAccessAllowed(this._meta) && !this.#initialized) {
18
+ this.#initialized = true;
19
+ return await this.doInitialize(parameters);
20
+ }
21
+ };
22
+ close = async () => {
23
+ if (this.#initialized) {
24
+ await this.doClose();
25
+ this.#initialized = false;
26
+ }
27
+ };
28
+ }
29
+ exports.ResolvableElement = ResolvableElement;
30
30
  //# sourceMappingURL=ResolvableElement.js.map
@@ -1,16 +1,16 @@
1
- import { ResolvableElement } from './ResolvableElement';
2
- import { UiElementConstructorData, UiElementData, UiElementMeta } from './UiElement';
3
- export interface ResolvableValueElementMeta extends UiElementMeta {
4
- resolutionType: string;
5
- resolvedType: string;
6
- defaultValue: string;
7
- }
8
- export declare const isResolvableValueElement: (element: UiElementData) => element is UiElementData<ResolvableValueElementMeta>;
9
- export declare const isResolvableValueElementMeta: (meta: UiElementMeta) => meta is ResolvableValueElementMeta;
10
- /**
11
- * base class for leaf resolvable elements that are resolved into a value defined by the resolvedType property in the metadata
12
- */
13
- export declare abstract class ResolvableValueElement<T extends UiElementData = UiElementData> extends ResolvableElement<T> {
14
- #private;
15
- constructor(data: UiElementConstructorData<T>);
16
- }
1
+ import { ResolvableElement } from './ResolvableElement';
2
+ import { UiElementConstructorData, UiElementData, UiElementMeta } from './UiElement';
3
+ export interface ResolvableValueElementMeta extends UiElementMeta {
4
+ resolutionType: string;
5
+ resolvedType: string;
6
+ defaultValue: string;
7
+ }
8
+ export declare const isResolvableValueElement: (element: UiElementData) => element is UiElementData<ResolvableValueElementMeta>;
9
+ export declare const isResolvableValueElementMeta: (meta: UiElementMeta) => meta is ResolvableValueElementMeta;
10
+ /**
11
+ * base class for leaf resolvable elements that are resolved into a value defined by the resolvedType property in the metadata
12
+ */
13
+ export declare abstract class ResolvableValueElement<T extends UiElementData = UiElementData> extends ResolvableElement<T> {
14
+ #private;
15
+ constructor(data: UiElementConstructorData<T>);
16
+ }
@@ -1,39 +1,39 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ResolvableValueElement = exports.isResolvableValueElementMeta = exports.isResolvableValueElement = void 0;
7
- const haystack_core_1 = require("haystack-core");
8
- const ResolvableElement_1 = require("./ResolvableElement");
9
- const isResolvableValueElement = (element) => {
10
- return !!element?._meta && (0, exports.isResolvableValueElementMeta)(element._meta);
11
- };
12
- exports.isResolvableValueElement = isResolvableValueElement;
13
- const isResolvableValueElementMeta = (meta) => {
14
- return (!!meta.resolutionType &&
15
- !!meta.resolvedType);
16
- };
17
- exports.isResolvableValueElementMeta = isResolvableValueElementMeta;
18
- /**
19
- * base class for leaf resolvable elements that are resolved into a value defined by the resolvedType property in the metadata
20
- */
21
- class ResolvableValueElement extends ResolvableElement_1.ResolvableElement {
22
- constructor(data) {
23
- super(data);
24
- this.#setDefaultValue();
25
- }
26
- #setDefaultValue() {
27
- const { defaultValue } = this._meta;
28
- if (defaultValue) {
29
- try {
30
- this.value = haystack_core_1.ZincReader.readValue(defaultValue);
31
- }
32
- catch (e) {
33
- console.error('Failed to parse element default value from: ', JSON.stringify(this._meta), e);
34
- }
35
- }
36
- }
37
- }
38
- exports.ResolvableValueElement = ResolvableValueElement;
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ResolvableValueElement = exports.isResolvableValueElementMeta = exports.isResolvableValueElement = void 0;
7
+ const haystack_core_1 = require("haystack-core");
8
+ const ResolvableElement_1 = require("./ResolvableElement");
9
+ const isResolvableValueElement = (element) => {
10
+ return !!element?._meta && (0, exports.isResolvableValueElementMeta)(element._meta);
11
+ };
12
+ exports.isResolvableValueElement = isResolvableValueElement;
13
+ const isResolvableValueElementMeta = (meta) => {
14
+ return (!!meta.resolutionType &&
15
+ !!meta.resolvedType);
16
+ };
17
+ exports.isResolvableValueElementMeta = isResolvableValueElementMeta;
18
+ /**
19
+ * base class for leaf resolvable elements that are resolved into a value defined by the resolvedType property in the metadata
20
+ */
21
+ class ResolvableValueElement extends ResolvableElement_1.ResolvableElement {
22
+ constructor(data) {
23
+ super(data);
24
+ this.#setDefaultValue();
25
+ }
26
+ #setDefaultValue() {
27
+ const { defaultValue } = this._meta;
28
+ if (defaultValue) {
29
+ try {
30
+ this.value = haystack_core_1.ZincReader.readValue(defaultValue);
31
+ }
32
+ catch (e) {
33
+ console.error('Failed to parse element default value from: ', JSON.stringify(this._meta), e);
34
+ }
35
+ }
36
+ }
37
+ }
38
+ exports.ResolvableValueElement = ResolvableValueElement;
39
39
  //# sourceMappingURL=ResolvableValueElement.js.map
@@ -1,31 +1,31 @@
1
- import { Resolver } from '../Resolver';
2
- export interface UiElementData<Meta extends UiElementMeta = UiElementMeta> {
3
- _meta?: Meta;
4
- }
5
- export interface UiElementMeta {
6
- access?: string[];
7
- }
8
- export interface UiElementConstructorData<T extends UiElementData> {
9
- resolver: Resolver;
10
- onUpdate: (value: unknown | undefined) => void;
11
- element: T;
12
- name?: string;
13
- }
14
- /**
15
- * Base UiElement class
16
- */
17
- export declare abstract class UiElement<T extends UiElementData = UiElementData> {
18
- #private;
19
- constructor({ name, element, resolver, onUpdate, }: UiElementConstructorData<T>);
20
- resolver: Resolver;
21
- _meta?: UiElementMeta;
22
- name?: string;
23
- toJSON(): Record<string, unknown>;
24
- inspect(): void;
25
- isAccessAllowed(meta?: UiElementMeta): boolean;
26
- protected _value?: unknown;
27
- get value(): unknown | undefined;
28
- set value(value: unknown | undefined);
29
- onUpdate: (value: unknown | undefined) => void;
30
- static joinFilters(...filter: (string | undefined)[]): string;
31
- }
1
+ import { Resolver } from '../Resolver';
2
+ export interface UiElementData<Meta extends UiElementMeta = UiElementMeta> {
3
+ _meta?: Meta;
4
+ }
5
+ export interface UiElementMeta {
6
+ access?: string[];
7
+ }
8
+ export interface UiElementConstructorData<T extends UiElementData> {
9
+ resolver: Resolver;
10
+ onUpdate: (value: unknown | undefined) => void;
11
+ element: T;
12
+ name?: string;
13
+ }
14
+ /**
15
+ * Base UiElement class
16
+ */
17
+ export declare abstract class UiElement<T extends UiElementData = UiElementData> {
18
+ #private;
19
+ constructor({ name, element, resolver, onUpdate, }: UiElementConstructorData<T>);
20
+ resolver: Resolver;
21
+ _meta?: UiElementMeta;
22
+ name?: string;
23
+ toJSON(): Record<string, unknown>;
24
+ inspect(): void;
25
+ isAccessAllowed(meta?: UiElementMeta): boolean;
26
+ protected _value?: unknown;
27
+ get value(): unknown | undefined;
28
+ set value(value: unknown | undefined);
29
+ onUpdate: (value: unknown | undefined) => void;
30
+ static joinFilters(...filter: (string | undefined)[]): string;
31
+ }