@linkdlab/funcnodes_react_flow 0.1.1 → 0.1.3

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 (158) hide show
  1. package/module/dist/css/style.css +43 -0
  2. package/module/dist/frontend/datarenderer/images.d.ts +12 -0
  3. package/module/dist/frontend/datarenderer/images.d.ts.map +1 -0
  4. package/module/dist/frontend/datarenderer/index.d.ts +17 -0
  5. package/module/dist/frontend/datarenderer/index.d.ts.map +1 -0
  6. package/module/dist/frontend/datarenderer/plotly.d.ts +15 -0
  7. package/module/dist/frontend/datarenderer/plotly.d.ts.map +1 -0
  8. package/module/dist/frontend/dialog.d.ts +18 -0
  9. package/module/dist/frontend/dialog.d.ts.map +1 -0
  10. package/module/dist/frontend/edge.d.ts +6 -0
  11. package/module/dist/frontend/edge.d.ts.map +1 -0
  12. package/module/dist/frontend/funcnodesreactflow/index.d.ts +7 -0
  13. package/module/dist/frontend/funcnodesreactflow/index.d.ts.map +1 -0
  14. package/module/dist/frontend/funcnodesreactflow/react_flow_layer.d.ts +6 -0
  15. package/module/dist/frontend/funcnodesreactflow/react_flow_layer.d.ts.map +1 -0
  16. package/module/dist/frontend/header/index.d.ts +5 -0
  17. package/module/dist/frontend/header/index.d.ts.map +1 -0
  18. package/module/dist/frontend/index.d.ts +4 -0
  19. package/module/dist/frontend/index.d.ts.map +1 -0
  20. package/module/dist/frontend/lib.d.ts +11 -0
  21. package/module/dist/frontend/lib.d.ts.map +1 -0
  22. package/module/{src/frontend/node/index.tsx → dist/frontend/node/index.d.ts} +3 -3
  23. package/module/dist/frontend/node/index.d.ts.map +1 -0
  24. package/module/dist/frontend/node/io/default_input_renderer.d.ts +12 -0
  25. package/module/dist/frontend/node/io/default_input_renderer.d.ts.map +1 -0
  26. package/module/dist/frontend/node/io/default_output_render.d.ts +7 -0
  27. package/module/dist/frontend/node/io/default_output_render.d.ts.map +1 -0
  28. package/module/dist/frontend/node/io/handle_renderer.d.ts +6 -0
  29. package/module/dist/frontend/node/io/handle_renderer.d.ts.map +1 -0
  30. package/module/{src/frontend/node/io/index.tsx → dist/frontend/node/io/index.d.ts} +4 -4
  31. package/module/dist/frontend/node/io/index.d.ts.map +1 -0
  32. package/module/dist/frontend/node/io/io.d.ts +17 -0
  33. package/module/dist/frontend/node/io/io.d.ts.map +1 -0
  34. package/module/dist/frontend/node/io/nodeinput.d.ts +7 -0
  35. package/module/dist/frontend/node/io/nodeinput.d.ts.map +1 -0
  36. package/module/dist/frontend/node/io/nodeoutput.d.ts +7 -0
  37. package/module/dist/frontend/node/io/nodeoutput.d.ts.map +1 -0
  38. package/module/dist/frontend/node/node.d.ts +21 -0
  39. package/module/dist/frontend/node/node.d.ts.map +1 -0
  40. package/module/dist/frontend/utils/colorpicker.d.ts +20 -0
  41. package/module/dist/frontend/utils/colorpicker.d.ts.map +1 -0
  42. package/module/dist/frontend/utils/jsondata.d.ts +7 -0
  43. package/module/dist/frontend/utils/jsondata.d.ts.map +1 -0
  44. package/module/dist/frontend/utils/table.d.ts +12 -0
  45. package/module/dist/frontend/utils/table.d.ts.map +1 -0
  46. package/module/dist/funcnodes/funcnodesworker.d.ts +73 -0
  47. package/module/dist/funcnodes/funcnodesworker.d.ts.map +1 -0
  48. package/module/{src/funcnodes/index.ts → dist/funcnodes/index.d.ts} +5 -4
  49. package/module/dist/funcnodes/index.d.ts.map +1 -0
  50. package/module/dist/funcnodes/websocketworker.d.ts +28 -0
  51. package/module/dist/funcnodes/websocketworker.d.ts.map +1 -0
  52. package/module/dist/funcnodes/workermanager.d.ts +33 -0
  53. package/module/dist/funcnodes/workermanager.d.ts.map +1 -0
  54. package/module/dist/index.d.ts +3 -0
  55. package/module/dist/index.d.ts.map +1 -0
  56. package/module/dist/index.js +4673 -0
  57. package/module/dist/states/edge.d.ts +8 -0
  58. package/module/dist/states/edge.d.ts.map +1 -0
  59. package/module/{src/states/edge.t.ts → dist/states/edge.t.d.ts} +17 -20
  60. package/module/dist/states/edge.t.d.ts.map +1 -0
  61. package/module/dist/states/fnrfzst.d.ts +11 -0
  62. package/module/dist/states/fnrfzst.d.ts.map +1 -0
  63. package/module/dist/states/fnrfzst.t.d.ts +101 -0
  64. package/module/dist/states/fnrfzst.t.d.ts.map +1 -0
  65. package/module/{src/states/index.ts → dist/states/index.d.ts} +8 -7
  66. package/module/dist/states/index.d.ts.map +1 -0
  67. package/module/dist/states/lib.d.ts +4 -0
  68. package/module/dist/states/lib.d.ts.map +1 -0
  69. package/module/dist/states/lib.t.d.ts +25 -0
  70. package/module/dist/states/lib.t.d.ts.map +1 -0
  71. package/module/dist/states/node.d.ts +5 -0
  72. package/module/dist/states/node.d.ts.map +1 -0
  73. package/module/{src/states/node.t.ts → dist/states/node.t.d.ts} +74 -98
  74. package/module/dist/states/node.t.d.ts.map +1 -0
  75. package/module/dist/states/nodeio.t.d.ts +68 -0
  76. package/module/dist/states/nodeio.t.d.ts.map +1 -0
  77. package/module/dist/states/nodespace.d.ts +4 -0
  78. package/module/dist/states/nodespace.d.ts.map +1 -0
  79. package/module/dist/states/nodespace.t.d.ts +17 -0
  80. package/module/dist/states/nodespace.t.d.ts.map +1 -0
  81. package/module/dist/states/reactflow.d.ts +9 -0
  82. package/module/dist/states/reactflow.d.ts.map +1 -0
  83. package/module/dist/states/reactflow.t.d.ts +12 -0
  84. package/module/dist/states/reactflow.t.d.ts.map +1 -0
  85. package/module/{src/types/rendering.t.ts → dist/types/rendering.t.d.ts} +11 -13
  86. package/module/dist/types/rendering.t.d.ts.map +1 -0
  87. package/module/{src/utils/index.ts → dist/utils/index.d.ts} +4 -4
  88. package/module/dist/utils/index.d.ts.map +1 -0
  89. package/module/dist/utils/objects.d.ts +20 -0
  90. package/module/dist/utils/objects.d.ts.map +1 -0
  91. package/package.json +32 -23
  92. package/app/public/favicon.ico +0 -0
  93. package/app/public/index.html +0 -43
  94. package/app/public/logo192.png +0 -0
  95. package/app/public/logo512.png +0 -0
  96. package/app/public/manifest.json +0 -25
  97. package/app/public/robots.txt +0 -3
  98. package/app/public/worker_manager +0 -1
  99. package/app/src/App.css +0 -38
  100. package/app/src/App.test.tsx +0 -9
  101. package/app/src/App.tsx +0 -22
  102. package/app/src/index.css +0 -13
  103. package/app/src/index.tsx +0 -19
  104. package/app/src/react-app-env.d.ts +0 -1
  105. package/app/src/reportWebVitals.ts +0 -15
  106. package/app/src/setupTests.ts +0 -5
  107. package/app/tsconfig.app.json +0 -10
  108. package/app/webpack.config.js +0 -143
  109. package/module/src/frontend/datarenderer/images.tsx +0 -28
  110. package/module/src/frontend/datarenderer/index.tsx +0 -54
  111. package/module/src/frontend/datarenderer/plotly.tsx +0 -82
  112. package/module/src/frontend/dialog.scss +0 -88
  113. package/module/src/frontend/dialog.tsx +0 -71
  114. package/module/src/frontend/edge.scss +0 -15
  115. package/module/src/frontend/edge.tsx +0 -32
  116. package/module/src/frontend/funcnodesreactflow/funcnodesreactflow.scss +0 -63
  117. package/module/src/frontend/funcnodesreactflow/index.tsx +0 -68
  118. package/module/src/frontend/funcnodesreactflow/react_flow_layer.tsx +0 -212
  119. package/module/src/frontend/header/header.scss +0 -48
  120. package/module/src/frontend/header/index.tsx +0 -269
  121. package/module/src/frontend/index.tsx +0 -4
  122. package/module/src/frontend/layout/htmlelements.scss +0 -63
  123. package/module/src/frontend/lib.scss +0 -157
  124. package/module/src/frontend/lib.tsx +0 -199
  125. package/module/src/frontend/node/io/default_input_renderer.tsx +0 -329
  126. package/module/src/frontend/node/io/default_output_render.tsx +0 -25
  127. package/module/src/frontend/node/io/handle_renderer.tsx +0 -94
  128. package/module/src/frontend/node/io/io.scss +0 -91
  129. package/module/src/frontend/node/io/io.tsx +0 -115
  130. package/module/src/frontend/node/io/nodeinput.tsx +0 -127
  131. package/module/src/frontend/node/io/nodeoutput.tsx +0 -43
  132. package/module/src/frontend/node/node.scss +0 -265
  133. package/module/src/frontend/node/node.tsx +0 -209
  134. package/module/src/frontend/utils/colorpicker.scss +0 -37
  135. package/module/src/frontend/utils/colorpicker.tsx +0 -342
  136. package/module/src/frontend/utils/jsondata.tsx +0 -19
  137. package/module/src/frontend/utils/table.scss +0 -22
  138. package/module/src/frontend/utils/table.tsx +0 -160
  139. package/module/src/funcnodes/funcnodesworker.ts +0 -456
  140. package/module/src/funcnodes/websocketworker.ts +0 -152
  141. package/module/src/funcnodes/workermanager.ts +0 -233
  142. package/module/src/index.tsx +0 -4
  143. package/module/src/states/edge.ts +0 -15
  144. package/module/src/states/fnrfzst.t.ts +0 -117
  145. package/module/src/states/fnrfzst.ts +0 -415
  146. package/module/src/states/lib.t.ts +0 -30
  147. package/module/src/states/lib.ts +0 -16
  148. package/module/src/states/node.ts +0 -46
  149. package/module/src/states/nodeio.t.ts +0 -103
  150. package/module/src/states/nodespace.t.ts +0 -57
  151. package/module/src/states/nodespace.ts +0 -90
  152. package/module/src/states/reactflow.t.ts +0 -27
  153. package/module/src/states/reactflow.ts +0 -49
  154. package/module/src/types/funcnodesreactflow.d.ts +0 -1
  155. package/module/src/utils/objects.ts +0 -131
  156. package/module/tsconfig.module.json +0 -15
  157. package/module/webpack.config.js +0 -140
  158. package/tsconfig.json +0 -18
@@ -1,90 +0,0 @@
1
- import { NodeStore } from "./node.t";
2
- import {
3
- NodeSpaceZustandInterface,
4
- NodeSpaceZustandProps,
5
- } from "./nodespace.t";
6
- const NodeSpaceZustand =
7
- ({}: NodeSpaceZustandProps): NodeSpaceZustandInterface => {
8
- const nodesstates = new Map<string, NodeStore>();
9
-
10
- // const update_node = ({
11
- // nid,
12
- // node,
13
- // from_remote,
14
- // }: {
15
- // nid: string;
16
- // node: PartialNodeType;
17
- // from_remote: boolean;
18
- // }) => {};
19
- // const add_node = ({
20
- // node,
21
- // from_remote,
22
- // }: {
23
- // node: NodeType;
24
- // from_remote: boolean;
25
- // }) => {
26
- // node = assert_full_node(node);
27
- // const store = nodesstates.get(node.id);
28
-
29
- // if (store) {
30
- // update_node({ nid: node.id, node: node, from_remote });
31
- // } else {
32
- // nodesstates.set(node.id, createNodeStore(node));
33
-
34
- // _on_node_action({
35
- // type: "add",
36
- // node: node,
37
- // id: node.id,
38
- // from_remote: from_remote,
39
- // });
40
- // }
41
- // };
42
-
43
- // const set_value = ({
44
- // node,
45
- // io,
46
- // value,
47
- // set_default,
48
- // }: {
49
- // node: string;
50
- // io: string;
51
- // value: any;
52
- // set_default?: boolean;
53
- // }) => {
54
- // const store = nodesstates.get(node);
55
- // if (store) {
56
- // const state = store.getState();
57
- // if (!state.io[io]) {
58
- // throw new Error(`IO ${io} not found in node ${node}`);
59
- // }
60
- // const new_state: PartialNodeType = {
61
- // io: {
62
- // [io]: {
63
- // value: value,
64
- // },
65
- // },
66
- // };
67
-
68
- // update_node({ nid: node, node: new_state, from_remote: false });
69
- // }
70
- // };
71
-
72
- return {
73
- nodesstates: nodesstates,
74
- get_node: (nid: string, raise: boolean = true) => {
75
- const store = nodesstates.get(nid);
76
- if (!store && raise) {
77
- const keys = nodesstates.keys();
78
- throw new Error(
79
- `Node ${nid} not found, available nodes: ${Array.from(keys)}`
80
- );
81
- }
82
- return store;
83
- },
84
- // add_node: add_node,
85
- // update_node: update_node,
86
- // set_value: set_value,
87
- };
88
- };
89
-
90
- export default NodeSpaceZustand;
@@ -1,27 +0,0 @@
1
- import { create, UseBoundStore, StoreApi } from "zustand";
2
- import {
3
- Connection,
4
- Edge,
5
- EdgeChange,
6
- Node,
7
- NodeChange,
8
- addEdge,
9
- OnNodesChange,
10
- OnEdgesChange,
11
- OnConnect,
12
- applyNodeChanges,
13
- applyEdgeChanges,
14
- } from "reactflow";
15
-
16
- type RFState = {
17
- nodes: Node[];
18
- edges: Edge[];
19
- onNodesChange: OnNodesChange;
20
- onEdgesChange: OnEdgesChange;
21
- onConnect: OnConnect;
22
- };
23
-
24
- // this is our useStore hook that we can use in our components to get parts of the store and call actions
25
- type RFStore = UseBoundStore<StoreApi<RFState>>;
26
-
27
- export type { RFState, RFStore };
@@ -1,49 +0,0 @@
1
- import { create } from "zustand";
2
- import {
3
- Connection,
4
- EdgeChange,
5
- NodeChange,
6
- applyNodeChanges,
7
- applyEdgeChanges,
8
- } from "reactflow";
9
- import { RFState, RFStore } from "./reactflow.t";
10
-
11
- const reactflowstore = ({
12
- on_node_change,
13
- on_edge_change,
14
- on_connect,
15
- }: {
16
- on_node_change?: (changes: NodeChange[]) => void;
17
- on_edge_change?: (changes: EdgeChange[]) => void;
18
- on_connect?: (connection: Connection) => void;
19
- }): RFStore => {
20
- const _on_node_change = on_node_change || ((changes: NodeChange[]) => {});
21
- const _on_edge_change = on_edge_change || ((changes: EdgeChange[]) => {});
22
- const _on_connect = on_connect || ((connection: Connection) => {});
23
- const useStore = create<RFState>((set, get) => ({
24
- nodes: [],
25
- edges: [],
26
- onNodesChange: (changes: NodeChange[]) => {
27
- set({
28
- nodes: applyNodeChanges(changes, get().nodes),
29
- });
30
- _on_node_change(changes);
31
- },
32
- onEdgesChange: (changes: EdgeChange[]) => {
33
- set({
34
- edges: applyEdgeChanges(changes, get().edges),
35
- });
36
- _on_edge_change(changes);
37
- },
38
- onConnect: (connection: Connection) => {
39
- if (connection.source == null || connection.target == null) {
40
- return;
41
- }
42
-
43
- _on_connect(connection);
44
- },
45
- }));
46
- return useStore;
47
- };
48
-
49
- export default reactflowstore;
@@ -1,131 +0,0 @@
1
- // Type alias for DeepPartial. It makes all properties of T optional and recursive.
2
- type DeepPartial<T> = T extends object
3
- ? {
4
- [P in keyof T]?: DeepPartial<T[P]>;
5
- }
6
- : T;
7
-
8
- /**
9
- * Checks if the given item is a plain object.
10
- * @param item The item to check.
11
- * @returns true if the item is a plain object, false otherwise.
12
- */
13
- function isPlainObject(item: any): boolean {
14
- return Object.prototype.toString.call(item) === "[object Object]";
15
- }
16
-
17
- function deep_compare_objects(a: any, b: any): boolean {
18
- // Check for strict equality first
19
- if (a === b) return true;
20
-
21
- // If either is null or not an object, they're not equal (strict equality would have caught `a === b` if both were null)
22
- if (
23
- typeof a !== "object" ||
24
- a === null ||
25
- typeof b !== "object" ||
26
- b === null
27
- )
28
- return false;
29
-
30
- // If they're not the same type of object, they're not equal
31
- if (a.constructor !== b.constructor) return false;
32
-
33
- if (a.constructor === Object || a.constructor === Array) {
34
- const keysA = Object.keys(a);
35
- const keysB = Object.keys(b);
36
-
37
- // If their property lengths are different, they're different objects
38
- if (keysA.length !== keysB.length) return false;
39
-
40
- // Check each key in 'a' to ensure it exists in 'b' and is equal; recurse if value is an object
41
- for (const key of keysA) {
42
- if (!keysB.includes(key)) return false;
43
- if (!deep_compare_objects(a[key], b[key])) return false;
44
- }
45
- }
46
-
47
- // Dates comparison
48
- if (a instanceof Date && b instanceof Date)
49
- return a.getTime() === b.getTime();
50
-
51
- // If we've made it this far, objects must be considered equal
52
- return true;
53
- }
54
-
55
- /**
56
- *
57
- * function to deeply merge two objects of type T.
58
- *
59
- * @param {T} target - The target object to be merged.
60
- * @param {DeepPartial<T>} source - The source object to merge into the target. All properties of this object are optional.
61
- *
62
- * @returns {T} An object containing the merged object (new_obj) and a boolean indicating if there was a change (change).
63
- */
64
- const deep_merge = <T extends {}>(
65
- target: T,
66
- source: DeepPartial<T>
67
- ): {
68
- new_obj: T;
69
- change: boolean;
70
- } => {
71
- let change = false;
72
- if (!isPlainObject(target)) {
73
- throw new Error("Target must be a plain object");
74
- }
75
- if (!isPlainObject(source)) {
76
- throw new Error("Source must be a plain object");
77
- }
78
- const new_obj: T = { ...target };
79
-
80
- Object.keys(source).forEach((key) => {
81
- // @ts-ignore: Type 'string' cannot be used to index type 'T
82
- const sourceValue = source[key];
83
- // @ts-ignore: Type 'string' cannot be used to index type 'T
84
- const targetValue = target[key];
85
-
86
- if (isPlainObject(sourceValue) && isPlainObject(targetValue)) {
87
- // If both the target and source values are plain objects, merge them
88
- const { new_obj: mergedObj, change: didChange } = deep_merge(
89
- targetValue,
90
- sourceValue
91
- );
92
- if (didChange) {
93
- change = true;
94
- // @ts-ignore: Type 'string' cannot be used to index type 'T
95
- new_obj[key] = mergedObj;
96
- }
97
- } else if (!deep_compare_objects(targetValue, sourceValue)) {
98
- change = true;
99
- // @ts-ignore: Type 'string' cannot be used to index type 'T
100
- new_obj[key] = sourceValue;
101
- }
102
- });
103
-
104
- return { new_obj, change };
105
-
106
- // for (const key in source) {
107
- // // @ts-ignore: Type 'string' cannot be used to index type 'T
108
- // if (typeof source[key] === "object" && target[key]) {
109
- // const { new_obj: new_obj2, change: change2 } = deep_merge(
110
- // // @ts-ignore: Type 'string' cannot be used to index type 'T
111
- // target[key],
112
- // source[key]
113
- // );
114
- // if (change2) {
115
- // change = true;
116
- // // @ts-ignore: Type 'string' cannot be used to index type 'T
117
- // new_obj[key] = new_obj2;
118
- // }
119
- // } else {
120
- // // @ts-ignore: Type 'string' cannot be used to index type 'T'
121
- // if (target[key] !== source[key]) {
122
- // change = true;
123
- // }
124
- // // @ts-ignore: Type 'string' cannot be used to index type 'T'
125
- // new_obj[key] = source[key];
126
- // }
127
- // }
128
- // return { new_obj, change };
129
- };
130
- export { deep_merge, deep_compare_objects };
131
- export type { DeepPartial };
@@ -1,15 +0,0 @@
1
- {
2
- "extends": "../tsconfig.json",
3
- "compilerOptions": {
4
- "module": "es2015" /* Specify what module code is generated. */,
5
- "declaration": true /* Generate .d.ts files from TypeScript and JavaScript files in your project. */,
6
- "outDir": "./dist/tsc",
7
- "esModuleInterop": true /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */,
8
- "forceConsistentCasingInFileNames": true /* Ensure that casing is correct in imports. */,
9
- "strict": true /* Enable all strict type-checking options. */,
10
- "skipLibCheck": true /* Skip type checking all .d.ts files. */,
11
- "noEmit": false,
12
- "declarationMap": true
13
- },
14
- "include": ["src/**/*"]
15
- }
@@ -1,140 +0,0 @@
1
- // webpack.config.js
2
- const path = require("path");
3
- const MiniCssExtractPlugin = require("mini-css-extract-plugin");
4
- const glob = require("glob");
5
- const { PurgeCSSPlugin } = require("purgecss-webpack-plugin");
6
-
7
- const PATHS = {
8
- src: path.join(__dirname, "src"),
9
- };
10
-
11
- module.exports = {
12
- context: __dirname,
13
- entry: "./src/index.tsx",
14
-
15
- output: {
16
- path: path.resolve(__dirname, "dist"),
17
- filename: "index.js",
18
- libraryTarget: "umd",
19
- library: "ModuleName",
20
- },
21
- performance: {
22
- maxEntrypointSize: 5 * 1024 * 1024, // 5mb
23
- maxAssetSize: 5 * 1024 * 1024, // 5mb
24
- },
25
- mode: "development",
26
- module: {
27
- rules: [
28
- //typescript
29
- {
30
- test: /\.(tsx|ts)$/,
31
- use: [
32
- {
33
- loader: "ts-loader",
34
- options: {
35
- configFile: "tsconfig.module.json",
36
- },
37
- },
38
- ],
39
- exclude: /node_modules/,
40
- },
41
- //css
42
- {
43
- test: /\.css$/,
44
- use: [
45
- // "style-loader",
46
- MiniCssExtractPlugin.loader,
47
- { loader: "css-loader", options: { importLoaders: 5 } },
48
- {
49
- loader: "postcss-loader",
50
- options: {
51
- postcssOptions: {
52
- plugins: [require("autoprefixer"), require("cssnano")],
53
- },
54
- },
55
- },
56
- ],
57
- sideEffects: true,
58
- },
59
- //javascript
60
- {
61
- test: /\.js$/,
62
- use: "babel-loader",
63
- },
64
- //scss
65
- {
66
- test: /\.scss$/,
67
- sideEffects: true,
68
- use: [
69
- MiniCssExtractPlugin.loader,
70
- // "style-loader",
71
- {
72
- loader: "css-loader",
73
- options: {
74
- importLoaders: 5,
75
- url: true, // Ensure CSS loader handles URL() paths
76
- },
77
- },
78
-
79
- {
80
- loader: "postcss-loader",
81
- options: {
82
- postcssOptions: {
83
- plugins: [require("autoprefixer"), require("cssnano")],
84
- },
85
- },
86
- },
87
- {
88
- loader: "sass-loader",
89
- },
90
- ],
91
- },
92
- //images
93
- {
94
- test: /\.(png|svg|jpg|jpeg|gif|webp)$/i,
95
- type: "asset/resource",
96
- generator: {
97
- filename: "img/[name][ext][query]",
98
- },
99
- },
100
- //fonts
101
- {
102
- test: /\.(woff|woff2|eot|ttf|otf)$/i,
103
- type: "asset/resource",
104
- generator: {
105
- filename: "fonts/[name][ext][query]",
106
- },
107
- },
108
- ],
109
- },
110
-
111
- devServer: {
112
- static: "./public",
113
- historyApiFallback: true,
114
- },
115
- plugins: [
116
- new MiniCssExtractPlugin({
117
- // Options similar to the same options in webpackOptions.output
118
- // both options are optional
119
- filename: "css/style.css",
120
- chunkFilename: "css/[name].css",
121
- }),
122
- new PurgeCSSPlugin({
123
- paths: glob.sync(`${PATHS.src}/**/*`, { nodir: true }),
124
- whitelistPatterns: [/sm:/, /md:/, /lg:/, /xl:/, /2xl:/, /bg-/, /text-/],
125
- defaultExtractor: (content) => content.match(/[\w-/:.!]+(?<!:)/g) || [],
126
- }),
127
- ],
128
- resolve: {
129
- extensions: [
130
- ".js",
131
- ".jsx",
132
- ".tsx",
133
- ".ts",
134
- ".html",
135
- ".scss",
136
- ".css",
137
- ".ttf",
138
- ],
139
- },
140
- };
package/tsconfig.json DELETED
@@ -1,18 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "es5",
4
- "lib": ["dom", "dom.iterable", "esnext"],
5
- "allowJs": true,
6
- "skipLibCheck": true,
7
- "esModuleInterop": true,
8
- "allowSyntheticDefaultImports": true,
9
- "strict": true,
10
- "forceConsistentCasingInFileNames": true,
11
- "noFallthroughCasesInSwitch": true,
12
- "moduleResolution": "node",
13
- "resolveJsonModule": true,
14
- "isolatedModules": true,
15
- "jsx": "react-jsx",
16
- },
17
- "include": ["./src/**/*"]
18
- }