@modular-component/core 0.1.7 → 0.2.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 (67) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/index.d.ts +31 -354
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +53 -157
  5. package/dist/index.js.map +1 -1
  6. package/package.json +2 -2
  7. package/src/index.ts +155 -240
  8. package/dist/types/arguments.d.ts +0 -33
  9. package/dist/types/arguments.d.ts.map +0 -1
  10. package/dist/types/arguments.js +0 -6
  11. package/dist/types/arguments.js.map +0 -1
  12. package/dist/types/methods/add.d.ts +0 -23
  13. package/dist/types/methods/add.d.ts.map +0 -1
  14. package/dist/types/methods/add.js +0 -8
  15. package/dist/types/methods/add.js.map +0 -1
  16. package/dist/types/methods/at.d.ts +0 -22
  17. package/dist/types/methods/at.d.ts.map +0 -1
  18. package/dist/types/methods/at.js +0 -7
  19. package/dist/types/methods/at.js.map +0 -1
  20. package/dist/types/methods/before.d.ts +0 -22
  21. package/dist/types/methods/before.d.ts.map +0 -1
  22. package/dist/types/methods/before.js +0 -7
  23. package/dist/types/methods/before.js.map +0 -1
  24. package/dist/types/methods/hook.d.ts +0 -14
  25. package/dist/types/methods/hook.d.ts.map +0 -1
  26. package/dist/types/methods/hook.js +0 -7
  27. package/dist/types/methods/hook.js.map +0 -1
  28. package/dist/types/methods/mock.d.ts +0 -26
  29. package/dist/types/methods/mock.d.ts.map +0 -1
  30. package/dist/types/methods/mock.js +0 -6
  31. package/dist/types/methods/mock.js.map +0 -1
  32. package/dist/types/methods/with.d.ts +0 -52
  33. package/dist/types/methods/with.d.ts.map +0 -1
  34. package/dist/types/methods/with.js +0 -8
  35. package/dist/types/methods/with.js.map +0 -1
  36. package/dist/types/methods.d.ts +0 -10
  37. package/dist/types/methods.d.ts.map +0 -1
  38. package/dist/types/methods.js +0 -5
  39. package/dist/types/methods.js.map +0 -1
  40. package/dist/types/modular-component.d.ts +0 -16
  41. package/dist/types/modular-component.d.ts.map +0 -1
  42. package/dist/types/modular-component.js +0 -5
  43. package/dist/types/modular-component.js.map +0 -1
  44. package/dist/types/stage.d.ts +0 -41
  45. package/dist/types/stage.d.ts.map +0 -1
  46. package/dist/types/stage.js +0 -5
  47. package/dist/types/stage.js.map +0 -1
  48. package/dist/types/utils.d.ts +0 -24
  49. package/dist/types/utils.d.ts.map +0 -1
  50. package/dist/types/utils.js +0 -5
  51. package/dist/types/utils.js.map +0 -1
  52. package/dist/types/validation.d.ts +0 -4
  53. package/dist/types/validation.d.ts.map +0 -1
  54. package/dist/types/validation.js +0 -2
  55. package/dist/types/validation.js.map +0 -1
  56. package/src/types/arguments.ts +0 -57
  57. package/src/types/methods/add.ts +0 -52
  58. package/src/types/methods/at.ts +0 -64
  59. package/src/types/methods/before.ts +0 -64
  60. package/src/types/methods/hook.ts +0 -27
  61. package/src/types/methods/mock.ts +0 -90
  62. package/src/types/methods/with.ts +0 -173
  63. package/src/types/methods.ts +0 -11
  64. package/src/types/modular-component.ts +0 -27
  65. package/src/types/stage.ts +0 -91
  66. package/src/types/utils.ts +0 -63
  67. package/src/types/validation.ts +0 -13
package/dist/index.js CHANGED
@@ -1,162 +1,58 @@
1
- import { forwardRef, memo } from 'react';
2
- function ModularFactory(methods) {
3
- return {
4
- build: (stages = []) => {
5
- const factory = (displayName, options) => {
6
- const generateAsHook = (ref, field) => () => (props = {}) => {
7
- // Prepare the shared arguments object, prefilling it with the props
8
- // and an empty render result
9
- let args = {
10
- props,
11
- children: props?.children,
12
- render: null,
13
- ref,
14
- };
15
- const methodsArray = Object.values(methods);
16
- // Run each stage in order, replacing the arguments by the response
17
- // from the last stage
18
- for (const stage of stages) {
19
- const method = methodsArray.find((method) => method.symbol === stage.stage);
20
- let useTransform =
21
- // Never transform mocked stages
22
- (stage.mocked ? undefined : method?.transform) ??
23
- (() => stage.value);
24
- args = {
25
- ...args,
26
- [method?.field]: useTransform(args, stage.value),
27
- };
28
- }
29
- // Finally, return the args
30
- return field ? args[field] : args;
31
- };
32
- // Create the actual Component. This is a simple React Functional Component
33
- // that will call the hooks for each registered stages in order.
34
- const Component = forwardRef((props, ref) => {
35
- // Prepare the shared arguments object, prefilling it with the props
36
- // and an empty render result
37
- const useComponent = generateAsHook(ref)();
38
- const args = useComponent(props);
39
- return args.render ?? null;
40
- });
41
- // Set the debug display name if provided
42
- Component.displayName = displayName;
43
- // Add an asHook system to get the components args as a reusable hook
44
- Component.asHook = generateAsHook();
45
- // Add each configured stage methods to the component
46
- Object.keys(methods).forEach((method) => {
47
- // Check if a stage of the same key already exists
48
- const stageIndices = stages
49
- // Map all stages to an [index, stage] tuple
50
- .map((record, index) => [index, record])
51
- // Remove all tuples not matching our stage
52
- .filter(([, record]) => record.stage === methods[method].symbol)
53
- // Get the index
54
- .map(([index]) => index);
55
- const lastIndex = [...stageIndices].pop();
56
- // @ts-ignore
57
- Component[`with${method}`] = (value, forceIndex) => {
58
- // Prepare the new stage
59
- const stage = { stage: methods[method].symbol, value };
60
- // Check if a stage of the same key already exists
61
- const stageIndex = (forceIndex !== undefined
62
- ? stageIndices[forceIndex]
63
- : lastIndex) ?? -1;
64
- // If so, copy the stages and replace the previous record
65
- if (stageIndex > -1) {
66
- const nextStages = [...stages];
67
- nextStages[stageIndex] = stage;
68
- return ModularFactory(methods).build(nextStages)(displayName);
69
- }
70
- // Otherwise, append the stage
71
- return ModularFactory(methods).build([...stages, stage])(displayName);
72
- };
73
- // @ts-ignore
74
- Component[`add${method}`] =
75
- stageIndices.length < 1
76
- ? undefined
77
- : (value) => {
78
- // Prepare the new stage
79
- const stage = {
80
- stage: methods[method].symbol,
81
- value,
82
- };
83
- // Append the stage as in multiple mode
84
- return ModularFactory(methods).build([
85
- ...stages,
86
- stage,
87
- ])(displayName);
88
- };
89
- // @ts-ignore
90
- Component[`at${method}`] =
91
- stageIndices.length < 1
92
- ? undefined
93
- : (forceIndex) => {
94
- // Find the needed stage
95
- const stageIndex = (forceIndex !== undefined
96
- ? stageIndices[forceIndex]
97
- : lastIndex) ?? lastIndex;
98
- // Otherwise, keep all stages up to and including the found stage
99
- return ModularFactory(methods).build(stages.slice(0, stageIndex + 1))(displayName);
100
- };
101
- // @ts-ignore
102
- Component[`before${method}`] =
103
- stageIndices.length < 1
104
- ? undefined
105
- : (forceIndex) => {
106
- // Find the needed stage
107
- const stageIndex = (forceIndex !== undefined
108
- ? stageIndices[forceIndex]
109
- : lastIndex) ?? lastIndex;
110
- // Otherwise, keep all stages up to but excluding the found stage
111
- return ModularFactory(methods).build(stages.slice(0, stageIndex))(displayName);
112
- };
113
- // @ts-ignore
114
- Component[`mock${method}`] =
115
- stageIndices.length < 1
116
- ? () => Component
117
- : (value, forceIndex) => {
118
- // Prepare the mocked stage
119
- const stage = {
120
- stage: methods[method].symbol,
121
- value,
122
- mocked: true,
123
- };
124
- // Find the needed stage
125
- const stageIndex = (forceIndex !== undefined
126
- ? stageIndices[forceIndex]
127
- : lastIndex) ?? lastIndex;
128
- // Replace the stage with its mock
129
- const nextStages = [...stages];
130
- nextStages[stageIndex] = stage;
131
- return ModularFactory(methods).build(nextStages)(displayName);
132
- };
133
- const capitalize = (str) => str[0].toUpperCase() + str.slice(1);
134
- // @ts-ignore
135
- Component[`asUse${capitalize(methods[method].field)}`] =
136
- generateAsHook(undefined, methods[method].field);
137
- });
138
- return (options?.memo ? memo(Component) : Component);
139
- };
140
- factory.memo = (displayName) => factory(displayName, { memo: true });
141
- return factory;
142
- },
143
- extend: (_methods) => {
144
- return ModularFactory({
145
- ...methods,
146
- ..._methods,
147
- });
148
- },
1
+ function InternalFactory(stages) {
2
+ const useComponent = function (props, ref) {
3
+ if (!stages.some((stage) => stage.field === 'render')) {
4
+ stages = [...stages, render(() => null)];
5
+ }
6
+ return useComponent.use('render')(props, ref);
7
+ };
8
+ useComponent.with = (stage) => {
9
+ const index = stages.findIndex((s) => s.field === stage.field);
10
+ if (index !== -1) {
11
+ const next = [...stages];
12
+ next[index] = stage;
13
+ return InternalFactory(next);
14
+ }
15
+ return InternalFactory([...stages, stage]);
16
+ };
17
+ useComponent.force = useComponent.with;
18
+ useComponent.use =
19
+ (field) => (props, ref) => {
20
+ const args = { props };
21
+ const index = field
22
+ ? stages.findIndex((stage) => stage.field === field)
23
+ : false;
24
+ if (index === false) {
25
+ for (let stage of stages) {
26
+ args[stage.field] = stage.useStage(args, ref);
27
+ }
28
+ return args;
29
+ }
30
+ const argStages = index === -1 ? stages.slice(0) : stages.slice(0, index + 1);
31
+ const returnStage = argStages.pop();
32
+ for (let stage of argStages) {
33
+ args[stage.field] = stage.useStage(args, ref);
34
+ }
35
+ return returnStage?.useStage(args, ref) ?? null;
36
+ };
37
+ useComponent.stage = (field) => {
38
+ const stage = stages.find((stage) => stage.field === field);
39
+ return stage?.useStage ?? (() => null);
40
+ };
41
+ useComponent.setDisplayName = (displayName) => {
42
+ ;
43
+ useComponent.displayName = displayName;
149
44
  };
45
+ return useComponent;
150
46
  }
151
- const withRender = Symbol();
152
- export const modularFactory = ModularFactory({
153
- Render: {
154
- symbol: withRender,
47
+ export function ModularComponent(displayName) {
48
+ const useComponent = InternalFactory([]);
49
+ useComponent.displayName = displayName;
50
+ return useComponent;
51
+ }
52
+ export function render(render) {
53
+ return {
155
54
  field: 'render',
156
- transform: (args, useStage) => useStage(args),
157
- },
158
- });
159
- export function createMethodRecord(record) {
160
- return record;
55
+ useStage: render,
56
+ };
161
57
  }
162
58
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "Factory",
8
8
  "Test"
9
9
  ],
10
- "version": "0.1.7",
10
+ "version": "0.2.0",
11
11
  "type": "module",
12
12
  "license": "MIT",
13
13
  "publishConfig": {
@@ -28,7 +28,7 @@
28
28
  },
29
29
  "devDependencies": {
30
30
  "@types/react": "^18.0.17",
31
- "typescript": "^4.6.4"
31
+ "typescript": "^5.2.2"
32
32
  },
33
33
  "main": "dist/index.js",
34
34
  "types": "dist/index.d.ts"