@j2inn/resolvable-ui-elements 2.0.0 → 2.1.0-beta.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,66 +1,66 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.useResolveSection = void 0;
7
- const react_1 = require("react");
8
- const FunctionElement_1 = require("../elements/function/FunctionElement");
9
- const ResolvableSectionElement_1 = require("../elements/section/ResolvableSectionElement");
10
- const resolveSection_1 = require("../elements/section/resolveSection");
11
- const useResolverContext_1 = require("./useResolverContext");
12
- /**
13
- * Resolves a section UI element.
14
- * IMPORTANT: This hook requires a resolver react context defined. @See `ResolverProvider`.
15
- * @param sectionData section data object
16
- * @param parameters parameters for the resolution
17
- * @returns the resolved result of the section that will be updated and force rendering when a subvalue changes.
18
- */
19
- function useResolveSection(sectionData, parameters) {
20
- const [, update] = (0, react_1.useReducer)((count) => count + 1, 0);
21
- const resolver = (0, useResolverContext_1.useResolverContext)();
22
- const [refreshes, refresh] = (0, react_1.useReducer)((count) => count + 1, 0);
23
- const [loads, setLoads] = (0, react_1.useState)(0);
24
- const [isLoading, setLoading] = (0, react_1.useState)(false);
25
- const ref = (0, react_1.useRef)();
26
- if (!ref.current) {
27
- ref.current = new ResolvableSectionElement_1.ResolvableSectionElement({
28
- element: sectionData,
29
- resolver,
30
- onUpdate: update,
31
- });
32
- }
33
- const parametersDict = (0, FunctionElement_1.makeParametersDict)(parameters);
34
- (0, react_1.useEffect)(() => {
35
- if ((0, resolveSection_1.areParametersValid)(parameters)) {
36
- ref.current = new ResolvableSectionElement_1.ResolvableSectionElement({
37
- element: sectionData,
38
- resolver,
39
- onUpdate: update,
40
- });
41
- setLoading(true);
42
- const promise = ref.current
43
- .initialize(parametersDict)
44
- .then(() => setLoads(loads + 1))
45
- .finally(() => setLoading(false));
46
- return () => {
47
- const sectionElement = ref.current;
48
- promise.finally(() => {
49
- sectionElement?.close();
50
- });
51
- };
52
- }
53
- return;
54
- }, [sectionData, resolver, refreshes, parametersDict.toAxon()]);
55
- return [
56
- (ref.current.value ?? {}),
57
- {
58
- refresh: refresh,
59
- element: ref.current,
60
- loads,
61
- isLoading,
62
- },
63
- ];
64
- }
65
- exports.useResolveSection = useResolveSection;
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.useResolveSection = void 0;
7
+ const react_1 = require("react");
8
+ const FunctionElement_1 = require("../elements/function/FunctionElement");
9
+ const ResolvableSectionElement_1 = require("../elements/section/ResolvableSectionElement");
10
+ const resolveSection_1 = require("../elements/section/resolveSection");
11
+ const useResolverContext_1 = require("./useResolverContext");
12
+ /**
13
+ * Resolves a section UI element.
14
+ * IMPORTANT: This hook requires a resolver react context defined. @See `ResolverProvider`.
15
+ * @param sectionData section data object
16
+ * @param parameters parameters for the resolution
17
+ * @returns the resolved result of the section that will be updated and force rendering when a subvalue changes.
18
+ */
19
+ function useResolveSection(sectionData, parameters) {
20
+ const [, update] = (0, react_1.useReducer)((count) => count + 1, 0);
21
+ const resolver = (0, useResolverContext_1.useResolverContext)();
22
+ const [refreshes, refresh] = (0, react_1.useReducer)((count) => count + 1, 0);
23
+ const [loads, setLoads] = (0, react_1.useState)(0);
24
+ const [isLoading, setLoading] = (0, react_1.useState)(false);
25
+ const ref = (0, react_1.useRef)();
26
+ if (!ref.current) {
27
+ ref.current = new ResolvableSectionElement_1.ResolvableSectionElement({
28
+ element: sectionData,
29
+ resolver,
30
+ onUpdate: update,
31
+ });
32
+ }
33
+ const parametersDict = (0, FunctionElement_1.makeParametersDict)(parameters);
34
+ (0, react_1.useEffect)(() => {
35
+ if ((0, resolveSection_1.areParametersValid)(parameters)) {
36
+ ref.current = new ResolvableSectionElement_1.ResolvableSectionElement({
37
+ element: sectionData,
38
+ resolver,
39
+ onUpdate: update,
40
+ });
41
+ setLoading(true);
42
+ const promise = ref.current
43
+ .initialize(parametersDict)
44
+ .then(() => setLoads(loads + 1))
45
+ .finally(() => setLoading(false));
46
+ return () => {
47
+ const sectionElement = ref.current;
48
+ promise.finally(() => {
49
+ sectionElement?.close();
50
+ });
51
+ };
52
+ }
53
+ return;
54
+ }, [sectionData, resolver, refreshes, parametersDict.toAxon()]);
55
+ return [
56
+ (ref.current.value ?? {}),
57
+ {
58
+ refresh: refresh,
59
+ element: ref.current,
60
+ loads,
61
+ isLoading,
62
+ },
63
+ ];
64
+ }
65
+ exports.useResolveSection = useResolveSection;
66
66
  //# sourceMappingURL=useResolveSection.js.map
@@ -1,9 +1,9 @@
1
- import React, { PropsWithChildren } from 'react';
2
- import { Resolver } from '../Resolver';
3
- export declare function useResolverContext(): Resolver;
4
- interface ResolverProviderProps extends PropsWithChildren {
5
- userRoleTagName?: string;
6
- evalFuncName?: string;
7
- }
8
- export declare const ResolverProvider: React.FC<ResolverProviderProps>;
9
- export {};
1
+ import React, { PropsWithChildren } from 'react';
2
+ import { Resolver } from '../Resolver';
3
+ export declare function useResolverContext(): Resolver;
4
+ interface ResolverProviderProps extends PropsWithChildren {
5
+ userRoleTagName?: string;
6
+ evalFuncName?: string;
7
+ }
8
+ export declare const ResolverProvider: React.FC<ResolverProviderProps>;
9
+ export {};
@@ -1,67 +1,67 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
- Object.defineProperty(o, "default", { enumerable: true, value: v });
18
- }) : function(o, v) {
19
- o["default"] = v;
20
- });
21
- var __importStar = (this && this.__importStar) || function (mod) {
22
- if (mod && mod.__esModule) return mod;
23
- var result = {};
24
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
- __setModuleDefault(result, mod);
26
- return result;
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.ResolverProvider = exports.useResolverContext = void 0;
30
- const haystack_nclient_1 = require("haystack-nclient");
31
- const haystack_react_1 = require("haystack-react");
32
- const react_1 = __importStar(require("react"));
33
- const useCurrentUser_1 = require("../../useCurrentUser");
34
- const Resolver_1 = require("../Resolver");
35
- const ResolverContext = react_1.default.createContext(new Resolver_1.Resolver({
36
- client: new haystack_nclient_1.Client({
37
- base: new URL(window.location.href),
38
- }),
39
- }));
40
- ResolverContext.displayName = 'ResolverContext';
41
- function useResolverContext() {
42
- return (0, react_1.useContext)(ResolverContext);
43
- }
44
- exports.useResolverContext = useResolverContext;
45
- const ResolverProvider = ({ userRoleTagName, evalFuncName, children, }) => {
46
- const client = (0, haystack_react_1.useClient)();
47
- const user = (0, useCurrentUser_1.useCurrentUser)();
48
- const [resolver, setResolver] = (0, react_1.useState)(() => new Resolver_1.Resolver({
49
- client,
50
- user,
51
- userRoleTagName,
52
- evalFuncName,
53
- }));
54
- (0, react_1.useEffect)(() => {
55
- setResolver(new Resolver_1.Resolver({
56
- client,
57
- user,
58
- userRoleTagName,
59
- evalFuncName,
60
- }));
61
- }, [client, user, userRoleTagName, evalFuncName]);
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || function (mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
+ __setModuleDefault(result, mod);
26
+ return result;
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.ResolverProvider = exports.useResolverContext = void 0;
30
+ const haystack_nclient_1 = require("haystack-nclient");
31
+ const haystack_react_1 = require("haystack-react");
32
+ const react_1 = __importStar(require("react"));
33
+ const useCurrentUser_1 = require("../../useCurrentUser");
34
+ const Resolver_1 = require("../Resolver");
35
+ const ResolverContext = react_1.default.createContext(new Resolver_1.Resolver({
36
+ client: new haystack_nclient_1.Client({
37
+ base: new URL(window.location.href),
38
+ }),
39
+ }));
40
+ ResolverContext.displayName = 'ResolverContext';
41
+ function useResolverContext() {
42
+ return (0, react_1.useContext)(ResolverContext);
43
+ }
44
+ exports.useResolverContext = useResolverContext;
45
+ const ResolverProvider = ({ userRoleTagName, evalFuncName, children, }) => {
46
+ const client = (0, haystack_react_1.useClient)();
47
+ const user = (0, useCurrentUser_1.useCurrentUser)();
48
+ const [resolver, setResolver] = (0, react_1.useState)(() => new Resolver_1.Resolver({
49
+ client,
50
+ user,
51
+ userRoleTagName,
52
+ evalFuncName,
53
+ }));
54
+ (0, react_1.useEffect)(() => {
55
+ setResolver(new Resolver_1.Resolver({
56
+ client,
57
+ user,
58
+ userRoleTagName,
59
+ evalFuncName,
60
+ }));
61
+ }, [client, user, userRoleTagName, evalFuncName]);
62
62
  return (<ResolverContext.Provider value={resolver}>
63
63
  {children}
64
- </ResolverContext.Provider>);
65
- };
66
- exports.ResolverProvider = ResolverProvider;
64
+ </ResolverContext.Provider>);
65
+ };
66
+ exports.ResolverProvider = ResolverProvider;
67
67
  //# 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,44 +1,44 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.replaceTemplateVariables = exports.resolveTemplateExpression = exports.REG_EXPR_MATCHING_TEMPLATE = void 0;
7
- const haystack_core_1 = require("haystack-core");
8
- exports.REG_EXPR_MATCHING_TEMPLATE = new RegExp(/{{([^{}?]*)(\??)}}/, 'g');
9
- /**
10
- * Replaces variables (defined as {{parameterName}}) in an expression with the values given in the parameters dict.
11
- * The HVal.toAxon function is used for conversion to a string. Optional parameters can be marked using a '?'
12
- * after the parameter name. They can safely be omitted in the parameters Dict.
13
- * @example
14
- * resolveTemplatedExpression("func({{num}})", HDict.make({num: HNum.make(22)})) => "func(22)"
15
- * @example
16
- * resolveTemplatedExpression("func({{num}}, {{unit?}})", HDict.make({num: HNum.make(22)})) => "func(22, null)"
17
- * @param expr the axon expression
18
- * @param params the parameters expressed as dict
19
- * @returns the axon expression resolved with the specified params
20
- */
21
- const resolveTemplateExpression = (expr, parameters) => {
22
- const paramDict = parameters;
23
- return (0, exports.replaceTemplateVariables)(expr, (_substring, match, optional) => {
24
- const isOptional = optional === '?';
25
- const parameter = paramDict?.get(match)?.toAxon();
26
- if (parameter != null) {
27
- return parameter;
28
- }
29
- else if (isOptional) {
30
- return haystack_core_1.AXON_NULL;
31
- }
32
- throw new Error(`ERROR: Missing parameter: ${match} in ${paramDict?.toAxon()}`);
33
- });
34
- };
35
- exports.resolveTemplateExpression = resolveTemplateExpression;
36
- /**
37
- * Replaces template variable found in the given string using a given replacer function
38
- * @param templateString
39
- * @param replacer
40
- * @returns a new string containing the compiled template string
41
- */
42
- const replaceTemplateVariables = (templateString, replacer) => templateString.replace(exports.REG_EXPR_MATCHING_TEMPLATE, replacer);
43
- exports.replaceTemplateVariables = replaceTemplateVariables;
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.replaceTemplateVariables = exports.resolveTemplateExpression = exports.REG_EXPR_MATCHING_TEMPLATE = void 0;
7
+ const haystack_core_1 = require("haystack-core");
8
+ exports.REG_EXPR_MATCHING_TEMPLATE = new RegExp(/{{([^{}?]*)(\??)}}/, 'g');
9
+ /**
10
+ * Replaces variables (defined as {{parameterName}}) in an expression with the values given in the parameters dict.
11
+ * The HVal.toAxon function is used for conversion to a string. Optional parameters can be marked using a '?'
12
+ * after the parameter name. They can safely be omitted in the parameters Dict.
13
+ * @example
14
+ * resolveTemplatedExpression("func({{num}})", HDict.make({num: HNum.make(22)})) => "func(22)"
15
+ * @example
16
+ * resolveTemplatedExpression("func({{num}}, {{unit?}})", HDict.make({num: HNum.make(22)})) => "func(22, null)"
17
+ * @param expr the axon expression
18
+ * @param params the parameters expressed as dict
19
+ * @returns the axon expression resolved with the specified params
20
+ */
21
+ const resolveTemplateExpression = (expr, parameters) => {
22
+ const paramDict = parameters;
23
+ return (0, exports.replaceTemplateVariables)(expr, (_substring, match, optional) => {
24
+ const isOptional = optional === '?';
25
+ const parameter = paramDict?.get(match)?.toAxon();
26
+ if (parameter != null) {
27
+ return parameter;
28
+ }
29
+ else if (isOptional) {
30
+ return haystack_core_1.AXON_NULL;
31
+ }
32
+ throw new Error(`ERROR: Missing parameter: ${match} in ${paramDict?.toAxon()}`);
33
+ });
34
+ };
35
+ exports.resolveTemplateExpression = resolveTemplateExpression;
36
+ /**
37
+ * Replaces template variable found in the given string using a given replacer function
38
+ * @param templateString
39
+ * @param replacer
40
+ * @returns a new string containing the compiled template string
41
+ */
42
+ const replaceTemplateVariables = (templateString, replacer) => templateString.replace(exports.REG_EXPR_MATCHING_TEMPLATE, replacer);
43
+ exports.replaceTemplateVariables = replaceTemplateVariables;
44
44
  //# 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,51 +1,51 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
- Object.defineProperty(o, "default", { enumerable: true, value: v });
18
- }) : function(o, v) {
19
- o["default"] = v;
20
- });
21
- var __importStar = (this && this.__importStar) || function (mod) {
22
- if (mod && mod.__esModule) return mod;
23
- var result = {};
24
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
- __setModuleDefault(result, mod);
26
- return result;
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.UserContextProvider = exports.useCurrentUser = void 0;
30
- const haystack_react_1 = require("haystack-react");
31
- const react_1 = __importStar(require("react"));
32
- const UserContext = react_1.default.createContext(undefined);
33
- UserContext.displayName = 'CurrentUser';
34
- /**
35
- * User context retrieval hook.
36
- */
37
- function useCurrentUser() {
38
- return (0, react_1.useContext)(UserContext);
39
- }
40
- exports.useCurrentUser = useCurrentUser;
41
- /**
42
- * User context provider for FIN 5.
43
- */
44
- const UserContextProvider = ({ children, }) => {
45
- const { grid, isLoading } = (0, haystack_react_1.useEval)('finGetCurrentUser()');
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || function (mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
+ __setModuleDefault(result, mod);
26
+ return result;
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.UserContextProvider = exports.useCurrentUser = void 0;
30
+ const haystack_react_1 = require("haystack-react");
31
+ const react_1 = __importStar(require("react"));
32
+ const UserContext = react_1.default.createContext(undefined);
33
+ UserContext.displayName = 'CurrentUser';
34
+ /**
35
+ * User context retrieval hook.
36
+ */
37
+ function useCurrentUser() {
38
+ return (0, react_1.useContext)(UserContext);
39
+ }
40
+ exports.useCurrentUser = useCurrentUser;
41
+ /**
42
+ * User context provider for FIN 5.
43
+ */
44
+ const UserContextProvider = ({ children, }) => {
45
+ const { grid, isLoading } = (0, haystack_react_1.useEval)('finGetCurrentUser()');
46
46
  return (<UserContext.Provider value={isLoading ? undefined : grid[0]}>
47
47
  {children}
48
- </UserContext.Provider>);
49
- };
50
- exports.UserContextProvider = UserContextProvider;
48
+ </UserContext.Provider>);
49
+ };
50
+ exports.UserContextProvider = UserContextProvider;
51
51
  //# sourceMappingURL=useCurrentUser.jsx.map
@@ -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_es/index.js CHANGED
@@ -1,21 +1,21 @@
1
- /*
2
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
- */
4
- //////////////////////////////////////////////////////////////////////////
5
- // Elements
6
- //////////////////////////////////////////////////////////////////////////
7
- export * from './resolvableElements/elements/section/resolveSection';
8
- export * from './resolvableElements/Resolver';
9
- export { isSectionData, } from './resolvableElements/elements/section/SectionElementMeta';
10
- export { resolveTemplateExpression } from './resolvableElements/resolveTemplatedExpression';
11
- //////////////////////////////////////////////////////////////////////////
12
- // React
13
- //////////////////////////////////////////////////////////////////////////
14
- export * from './resolvableElements/react/SectionChecker';
15
- export * from './resolvableElements/react/useResolveSection';
16
- export * from './resolvableElements/react/useResolverContext';
17
- //////////////////////////////////////////////////////////////////////////
18
- // Other
19
- //////////////////////////////////////////////////////////////////////////
20
- export * from './useCurrentUser';
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
4
+ //////////////////////////////////////////////////////////////////////////
5
+ // Elements
6
+ //////////////////////////////////////////////////////////////////////////
7
+ export * from './resolvableElements/elements/section/resolveSection';
8
+ export * from './resolvableElements/Resolver';
9
+ export { isSectionData, } from './resolvableElements/elements/section/SectionElementMeta';
10
+ export { resolveTemplateExpression } from './resolvableElements/resolveTemplatedExpression';
11
+ //////////////////////////////////////////////////////////////////////////
12
+ // React
13
+ //////////////////////////////////////////////////////////////////////////
14
+ export * from './resolvableElements/react/SectionChecker';
15
+ export * from './resolvableElements/react/useResolveSection';
16
+ export * from './resolvableElements/react/useResolverContext';
17
+ //////////////////////////////////////////////////////////////////////////
18
+ // Other
19
+ //////////////////////////////////////////////////////////////////////////
20
+ export * from './useCurrentUser';
21
21
  //# sourceMappingURL=index.js.map