@j2inn/resolvable-ui-elements 2.0.0 → 2.1.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 (107) 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 +133 -122
  27. package/dist/resolvableElements/elements/section/ResolvableSectionElement.js.map +1 -1
  28. package/dist/resolvableElements/elements/section/SectionElementMeta.d.ts +16 -16
  29. package/dist/resolvableElements/elements/section/SectionElementMeta.js +11 -11
  30. package/dist/resolvableElements/elements/section/resolveSection.d.ts +12 -12
  31. package/dist/resolvableElements/elements/section/resolveSection.js +41 -41
  32. package/dist/resolvableElements/elements/tag/ResolvableTagElement.d.ts +18 -16
  33. package/dist/resolvableElements/elements/tag/ResolvableTagElement.js +113 -105
  34. package/dist/resolvableElements/elements/tag/ResolvableTagElement.js.map +1 -1
  35. package/dist/resolvableElements/elements/tag/ResolvableTagElementBatchProcessor.d.ts +25 -0
  36. package/dist/resolvableElements/elements/tag/ResolvableTagElementBatchProcessor.js +68 -0
  37. package/dist/resolvableElements/elements/tag/ResolvableTagElementBatchProcessor.js.map +1 -0
  38. package/dist/resolvableElements/elements/tag/TagElementMeta.d.ts +12 -12
  39. package/dist/resolvableElements/elements/tag/TagElementMeta.js +14 -14
  40. package/dist/resolvableElements/interfacesGeneration/generateInterfaces.d.ts +17 -17
  41. package/dist/resolvableElements/interfacesGeneration/generateInterfaces.js +134 -134
  42. package/dist/resolvableElements/interfacesGeneration/generateTypescriptInterfacesFile.d.ts +4 -4
  43. package/dist/resolvableElements/interfacesGeneration/generateTypescriptInterfacesFile.js +41 -41
  44. package/dist/resolvableElements/react/SectionChecker.d.ts +24 -24
  45. package/dist/resolvableElements/react/SectionChecker.jsx +27 -27
  46. package/dist/resolvableElements/react/useResolveSection.d.ts +21 -21
  47. package/dist/resolvableElements/react/useResolveSection.js +65 -65
  48. package/dist/resolvableElements/react/useResolverContext.d.ts +9 -9
  49. package/dist/resolvableElements/react/useResolverContext.jsx +64 -64
  50. package/dist/resolvableElements/resolveTemplatedExpression.d.ts +22 -22
  51. package/dist/resolvableElements/resolveTemplatedExpression.js +43 -43
  52. package/dist/useCurrentUser.d.ts +10 -10
  53. package/dist/useCurrentUser.jsx +48 -48
  54. package/dist_es/index.d.ts +12 -12
  55. package/dist_es/index.js +20 -20
  56. package/dist_es/resolvableElements/Resolver.d.ts +47 -47
  57. package/dist_es/resolvableElements/Resolver.js +53 -53
  58. package/dist_es/resolvableElements/elements/ResolvableElement.d.ts +14 -14
  59. package/dist_es/resolvableElements/elements/ResolvableElement.js +25 -25
  60. package/dist_es/resolvableElements/elements/ResolvableValueElement.d.ts +16 -16
  61. package/dist_es/resolvableElements/elements/ResolvableValueElement.js +32 -32
  62. package/dist_es/resolvableElements/elements/UiElement.d.ts +31 -31
  63. package/dist_es/resolvableElements/elements/UiElement.js +52 -52
  64. package/dist_es/resolvableElements/elements/expr/ResolvableExprElement.d.ts +26 -26
  65. package/dist_es/resolvableElements/elements/expr/ResolvableExprElement.js +101 -101
  66. package/dist_es/resolvableElements/elements/expr/ResolvableExprElementMeta.d.ts +10 -10
  67. package/dist_es/resolvableElements/elements/expr/ResolvableExprElementMeta.js +9 -9
  68. package/dist_es/resolvableElements/elements/function/FunctionElement.d.ts +12 -12
  69. package/dist_es/resolvableElements/elements/function/FunctionElement.js +36 -36
  70. package/dist_es/resolvableElements/elements/function/FunctionElementMeta.d.ts +9 -9
  71. package/dist_es/resolvableElements/elements/function/FunctionElementMeta.js +9 -9
  72. package/dist_es/resolvableElements/elements/list/ListElementMeta.d.ts +12 -12
  73. package/dist_es/resolvableElements/elements/list/ListElementMeta.js +9 -9
  74. package/dist_es/resolvableElements/elements/list/ResolvableListElement.d.ts +16 -16
  75. package/dist_es/resolvableElements/elements/list/ResolvableListElement.js +98 -98
  76. package/dist_es/resolvableElements/elements/makeElement.d.ts +7 -7
  77. package/dist_es/resolvableElements/elements/makeElement.js +36 -36
  78. package/dist_es/resolvableElements/elements/section/ResolvableSectionElement.d.ts +24 -24
  79. package/dist_es/resolvableElements/elements/section/ResolvableSectionElement.js +128 -117
  80. package/dist_es/resolvableElements/elements/section/ResolvableSectionElement.js.map +1 -1
  81. package/dist_es/resolvableElements/elements/section/SectionElementMeta.d.ts +16 -16
  82. package/dist_es/resolvableElements/elements/section/SectionElementMeta.js +6 -6
  83. package/dist_es/resolvableElements/elements/section/resolveSection.d.ts +12 -12
  84. package/dist_es/resolvableElements/elements/section/resolveSection.js +36 -36
  85. package/dist_es/resolvableElements/elements/tag/ResolvableTagElement.d.ts +18 -16
  86. package/dist_es/resolvableElements/elements/tag/ResolvableTagElement.js +109 -101
  87. package/dist_es/resolvableElements/elements/tag/ResolvableTagElement.js.map +1 -1
  88. package/dist_es/resolvableElements/elements/tag/ResolvableTagElementBatchProcessor.d.ts +25 -0
  89. package/dist_es/resolvableElements/elements/tag/ResolvableTagElementBatchProcessor.js +64 -0
  90. package/dist_es/resolvableElements/elements/tag/ResolvableTagElementBatchProcessor.js.map +1 -0
  91. package/dist_es/resolvableElements/elements/tag/TagElementMeta.d.ts +12 -12
  92. package/dist_es/resolvableElements/elements/tag/TagElementMeta.js +9 -9
  93. package/dist_es/resolvableElements/interfacesGeneration/generateInterfaces.d.ts +17 -17
  94. package/dist_es/resolvableElements/interfacesGeneration/generateInterfaces.js +128 -128
  95. package/dist_es/resolvableElements/interfacesGeneration/generateTypescriptInterfacesFile.d.ts +4 -4
  96. package/dist_es/resolvableElements/interfacesGeneration/generateTypescriptInterfacesFile.js +15 -15
  97. package/dist_es/resolvableElements/react/SectionChecker.d.ts +24 -24
  98. package/dist_es/resolvableElements/react/SectionChecker.jsx +20 -20
  99. package/dist_es/resolvableElements/react/useResolveSection.d.ts +21 -21
  100. package/dist_es/resolvableElements/react/useResolveSection.js +61 -61
  101. package/dist_es/resolvableElements/react/useResolverContext.d.ts +9 -9
  102. package/dist_es/resolvableElements/react/useResolverContext.jsx +36 -36
  103. package/dist_es/resolvableElements/resolveTemplatedExpression.d.ts +22 -22
  104. package/dist_es/resolvableElements/resolveTemplatedExpression.js +38 -38
  105. package/dist_es/useCurrentUser.d.ts +10 -10
  106. package/dist_es/useCurrentUser.jsx +20 -20
  107. package/package.json +2 -2
@@ -1,39 +1,39 @@
1
- /*
2
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
- */
4
- import { Client } from 'haystack-nclient';
5
- import { useClient } from 'haystack-react';
6
- import React, { useContext, useEffect, useState, } from 'react';
7
- import { useCurrentUser } from '../../useCurrentUser';
8
- import { Resolver } from '../Resolver';
9
- const ResolverContext = React.createContext(new Resolver({
10
- client: new Client({
11
- base: new URL(window.location.href),
12
- }),
13
- }));
14
- ResolverContext.displayName = 'ResolverContext';
15
- export function useResolverContext() {
16
- return useContext(ResolverContext);
17
- }
18
- export const ResolverProvider = ({ userRoleTagName, evalFuncName, children, }) => {
19
- const client = useClient();
20
- const user = useCurrentUser();
21
- const [resolver, setResolver] = useState(() => new Resolver({
22
- client,
23
- user,
24
- userRoleTagName,
25
- evalFuncName,
26
- }));
27
- useEffect(() => {
28
- setResolver(new Resolver({
29
- client,
30
- user,
31
- userRoleTagName,
32
- evalFuncName,
33
- }));
34
- }, [client, user, userRoleTagName, evalFuncName]);
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
4
+ import { Client } from 'haystack-nclient';
5
+ import { useClient } from 'haystack-react';
6
+ import React, { useContext, useEffect, useState, } from 'react';
7
+ import { useCurrentUser } from '../../useCurrentUser';
8
+ import { Resolver } from '../Resolver';
9
+ const ResolverContext = React.createContext(new Resolver({
10
+ client: new Client({
11
+ base: new URL(window.location.href),
12
+ }),
13
+ }));
14
+ ResolverContext.displayName = 'ResolverContext';
15
+ export function useResolverContext() {
16
+ return useContext(ResolverContext);
17
+ }
18
+ export const ResolverProvider = ({ userRoleTagName, evalFuncName, children, }) => {
19
+ const client = useClient();
20
+ const user = useCurrentUser();
21
+ const [resolver, setResolver] = useState(() => new Resolver({
22
+ client,
23
+ user,
24
+ userRoleTagName,
25
+ evalFuncName,
26
+ }));
27
+ useEffect(() => {
28
+ setResolver(new Resolver({
29
+ client,
30
+ user,
31
+ userRoleTagName,
32
+ evalFuncName,
33
+ }));
34
+ }, [client, user, userRoleTagName, evalFuncName]);
35
35
  return (<ResolverContext.Provider value={resolver}>
36
36
  {children}
37
- </ResolverContext.Provider>);
38
- };
37
+ </ResolverContext.Provider>);
38
+ };
39
39
  //# sourceMappingURL=useResolverContext.jsx.map
@@ -1,22 +1,22 @@
1
- import { HDict } from 'haystack-core';
2
- export declare const REG_EXPR_MATCHING_TEMPLATE: RegExp;
3
- /**
4
- * Replaces variables (defined as {{parameterName}}) in an expression with the values given in the parameters dict.
5
- * The HVal.toAxon function is used for conversion to a string. Optional parameters can be marked using a '?'
6
- * after the parameter name. They can safely be omitted in the parameters Dict.
7
- * @example
8
- * resolveTemplatedExpression("func({{num}})", HDict.make({num: HNum.make(22)})) => "func(22)"
9
- * @example
10
- * resolveTemplatedExpression("func({{num}}, {{unit?}})", HDict.make({num: HNum.make(22)})) => "func(22, null)"
11
- * @param expr the axon expression
12
- * @param params the parameters expressed as dict
13
- * @returns the axon expression resolved with the specified params
14
- */
15
- export declare const resolveTemplateExpression: (expr: string, parameters?: HDict) => string;
16
- /**
17
- * Replaces template variable found in the given string using a given replacer function
18
- * @param templateString
19
- * @param replacer
20
- * @returns a new string containing the compiled template string
21
- */
22
- export declare const replaceTemplateVariables: (templateString: string, replacer: (substring: string, match: string, optional: string) => string) => string;
1
+ import { HDict } from 'haystack-core';
2
+ export declare const REG_EXPR_MATCHING_TEMPLATE: RegExp;
3
+ /**
4
+ * Replaces variables (defined as {{parameterName}}) in an expression with the values given in the parameters dict.
5
+ * The HVal.toAxon function is used for conversion to a string. Optional parameters can be marked using a '?'
6
+ * after the parameter name. They can safely be omitted in the parameters Dict.
7
+ * @example
8
+ * resolveTemplatedExpression("func({{num}})", HDict.make({num: HNum.make(22)})) => "func(22)"
9
+ * @example
10
+ * resolveTemplatedExpression("func({{num}}, {{unit?}})", HDict.make({num: HNum.make(22)})) => "func(22, null)"
11
+ * @param expr the axon expression
12
+ * @param params the parameters expressed as dict
13
+ * @returns the axon expression resolved with the specified params
14
+ */
15
+ export declare const resolveTemplateExpression: (expr: string, parameters?: HDict) => string;
16
+ /**
17
+ * Replaces template variable found in the given string using a given replacer function
18
+ * @param templateString
19
+ * @param replacer
20
+ * @returns a new string containing the compiled template string
21
+ */
22
+ export declare const replaceTemplateVariables: (templateString: string, replacer: (substring: string, match: string, optional: string) => string) => string;
@@ -1,39 +1,39 @@
1
- /*
2
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
- */
4
- import { AXON_NULL } from 'haystack-core';
5
- export const REG_EXPR_MATCHING_TEMPLATE = new RegExp(/{{([^{}?]*)(\??)}}/, 'g');
6
- /**
7
- * Replaces variables (defined as {{parameterName}}) in an expression with the values given in the parameters dict.
8
- * The HVal.toAxon function is used for conversion to a string. Optional parameters can be marked using a '?'
9
- * after the parameter name. They can safely be omitted in the parameters Dict.
10
- * @example
11
- * resolveTemplatedExpression("func({{num}})", HDict.make({num: HNum.make(22)})) => "func(22)"
12
- * @example
13
- * resolveTemplatedExpression("func({{num}}, {{unit?}})", HDict.make({num: HNum.make(22)})) => "func(22, null)"
14
- * @param expr the axon expression
15
- * @param params the parameters expressed as dict
16
- * @returns the axon expression resolved with the specified params
17
- */
18
- export const resolveTemplateExpression = (expr, parameters) => {
19
- const paramDict = parameters;
20
- return replaceTemplateVariables(expr, (_substring, match, optional) => {
21
- const isOptional = optional === '?';
22
- const parameter = paramDict?.get(match)?.toAxon();
23
- if (parameter != null) {
24
- return parameter;
25
- }
26
- else if (isOptional) {
27
- return AXON_NULL;
28
- }
29
- throw new Error(`ERROR: Missing parameter: ${match} in ${paramDict?.toAxon()}`);
30
- });
31
- };
32
- /**
33
- * Replaces template variable found in the given string using a given replacer function
34
- * @param templateString
35
- * @param replacer
36
- * @returns a new string containing the compiled template string
37
- */
38
- export const replaceTemplateVariables = (templateString, replacer) => templateString.replace(REG_EXPR_MATCHING_TEMPLATE, replacer);
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
4
+ import { AXON_NULL } from 'haystack-core';
5
+ export const REG_EXPR_MATCHING_TEMPLATE = new RegExp(/{{([^{}?]*)(\??)}}/, 'g');
6
+ /**
7
+ * Replaces variables (defined as {{parameterName}}) in an expression with the values given in the parameters dict.
8
+ * The HVal.toAxon function is used for conversion to a string. Optional parameters can be marked using a '?'
9
+ * after the parameter name. They can safely be omitted in the parameters Dict.
10
+ * @example
11
+ * resolveTemplatedExpression("func({{num}})", HDict.make({num: HNum.make(22)})) => "func(22)"
12
+ * @example
13
+ * resolveTemplatedExpression("func({{num}}, {{unit?}})", HDict.make({num: HNum.make(22)})) => "func(22, null)"
14
+ * @param expr the axon expression
15
+ * @param params the parameters expressed as dict
16
+ * @returns the axon expression resolved with the specified params
17
+ */
18
+ export const resolveTemplateExpression = (expr, parameters) => {
19
+ const paramDict = parameters;
20
+ return replaceTemplateVariables(expr, (_substring, match, optional) => {
21
+ const isOptional = optional === '?';
22
+ const parameter = paramDict?.get(match)?.toAxon();
23
+ if (parameter != null) {
24
+ return parameter;
25
+ }
26
+ else if (isOptional) {
27
+ return AXON_NULL;
28
+ }
29
+ throw new Error(`ERROR: Missing parameter: ${match} in ${paramDict?.toAxon()}`);
30
+ });
31
+ };
32
+ /**
33
+ * Replaces template variable found in the given string using a given replacer function
34
+ * @param templateString
35
+ * @param replacer
36
+ * @returns a new string containing the compiled template string
37
+ */
38
+ export const replaceTemplateVariables = (templateString, replacer) => templateString.replace(REG_EXPR_MATCHING_TEMPLATE, replacer);
39
39
  //# sourceMappingURL=resolveTemplatedExpression.js.map
@@ -1,10 +1,10 @@
1
- import { HDict } from 'haystack-core';
2
- import React, { PropsWithChildren } from 'react';
3
- /**
4
- * User context retrieval hook.
5
- */
6
- export declare function useCurrentUser(): HDict | undefined;
7
- /**
8
- * User context provider for FIN 5.
9
- */
10
- export declare const UserContextProvider: React.FC<PropsWithChildren>;
1
+ import { HDict } from 'haystack-core';
2
+ import React, { PropsWithChildren } from 'react';
3
+ /**
4
+ * User context retrieval hook.
5
+ */
6
+ export declare function useCurrentUser(): HDict | undefined;
7
+ /**
8
+ * User context provider for FIN 5.
9
+ */
10
+ export declare const UserContextProvider: React.FC<PropsWithChildren>;
@@ -1,23 +1,23 @@
1
- /*
2
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
- */
4
- import { useEval } from 'haystack-react';
5
- import React, { useContext } from 'react';
6
- const UserContext = React.createContext(undefined);
7
- UserContext.displayName = 'CurrentUser';
8
- /**
9
- * User context retrieval hook.
10
- */
11
- export function useCurrentUser() {
12
- return useContext(UserContext);
13
- }
14
- /**
15
- * User context provider for FIN 5.
16
- */
17
- export const UserContextProvider = ({ children, }) => {
18
- const { grid, isLoading } = useEval('finGetCurrentUser()');
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
4
+ import { useEval } from 'haystack-react';
5
+ import React, { useContext } from 'react';
6
+ const UserContext = React.createContext(undefined);
7
+ UserContext.displayName = 'CurrentUser';
8
+ /**
9
+ * User context retrieval hook.
10
+ */
11
+ export function useCurrentUser() {
12
+ return useContext(UserContext);
13
+ }
14
+ /**
15
+ * User context provider for FIN 5.
16
+ */
17
+ export const UserContextProvider = ({ children, }) => {
18
+ const { grid, isLoading } = useEval('finGetCurrentUser()');
19
19
  return (<UserContext.Provider value={isLoading ? undefined : grid[0]}>
20
20
  {children}
21
- </UserContext.Provider>);
22
- };
21
+ </UserContext.Provider>);
22
+ };
23
23
  //# sourceMappingURL=useCurrentUser.jsx.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@j2inn/resolvable-ui-elements",
3
- "version": "2.0.0",
3
+ "version": "2.1.0",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -44,7 +44,7 @@
44
44
  "eslint-plugin-react": "^7.29.4",
45
45
  "prettier": "^2.6.1",
46
46
  "prettier-eslint": "^13.0.0",
47
- "prettier-eslint-cli": "^5.0.1",
47
+ "prettier-eslint-cli": "^8.0.1",
48
48
  "rimraf": "^3.0.2",
49
49
  "ts-jest": "^28.0.8",
50
50
  "typescript": "^4.8.2"